summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES-1.5.txt312
-rw-r--r--CHANGES-IPPTOOL.txt128
-rw-r--r--CHANGES.txt396
-rw-r--r--CREDITS.txt10
-rw-r--r--INSTALL.txt6
-rw-r--r--IPPTOOL.txt91
-rw-r--r--LICENSE.txt12
-rw-r--r--Makedefs.in65
-rw-r--r--Makefile22
-rw-r--r--README.txt4
-rw-r--r--backend/Dependencies177
-rw-r--r--backend/Makefile72
-rw-r--r--backend/backend-private.h20
-rw-r--r--backend/dnssd.c782
-rw-r--r--backend/ipp.c128
-rw-r--r--backend/lpd.c36
-rw-r--r--backend/network.c38
-rw-r--r--backend/parallel.c676
-rw-r--r--backend/runloop.c20
-rw-r--r--backend/serial.c1327
-rw-r--r--backend/snmp-supplies.c103
-rw-r--r--backend/snmp.c6
-rw-r--r--backend/socket.c10
-rw-r--r--backend/testbackend.c53
-rw-r--r--backend/usb-darwin.c16
-rw-r--r--backend/usb-libusb.c8
-rw-r--r--backend/usb-unix.c18
-rw-r--r--backend/usb.c4
-rw-r--r--berkeley/Dependencies59
-rw-r--r--berkeley/Makefile8
-rw-r--r--berkeley/lpc.c4
-rw-r--r--berkeley/lpq.c6
-rw-r--r--berkeley/lpr.c4
-rw-r--r--cgi-bin/Dependencies157
-rw-r--r--cgi-bin/Makefile8
-rw-r--r--cgi-bin/admin.c261
-rw-r--r--cgi-bin/cgi-private.h7
-rw-r--r--cgi-bin/classes.c12
-rw-r--r--cgi-bin/help-index.c61
-rw-r--r--cgi-bin/ipp-var.c10
-rw-r--r--cgi-bin/jobs.c8
-rw-r--r--cgi-bin/makedocset.c8
-rw-r--r--cgi-bin/printers.c12
-rw-r--r--cgi-bin/var.c4
-rw-r--r--conf/mime.convs.in42
-rw-r--r--config-scripts/cups-3264.m4140
-rw-r--r--config-scripts/cups-common.m448
-rw-r--r--config-scripts/cups-compiler.m4274
-rw-r--r--config-scripts/cups-defaults.m4144
-rw-r--r--config-scripts/cups-directories.m48
-rw-r--r--config-scripts/cups-dnssd.m426
-rw-r--r--config-scripts/cups-gssapi.m49
-rw-r--r--config-scripts/cups-image.m4117
-rw-r--r--config-scripts/cups-ldap.m452
-rw-r--r--config-scripts/cups-manpages.m48
-rw-r--r--config-scripts/cups-pam.m48
-rw-r--r--config-scripts/cups-pdf.m4113
-rw-r--r--config-scripts/cups-scripting.m415
-rw-r--r--config-scripts/cups-sharedlibs.m442
-rw-r--r--config-scripts/cups-slp.m438
-rw-r--r--config-scripts/cups-ssl.m410
-rw-r--r--config.h.in81
-rwxr-xr-xconfigure2068
-rw-r--r--configure.in12
-rwxr-xr-xcups-config.in30
-rw-r--r--cups/Dependencies1073
-rw-r--r--cups/Makefile93
-rw-r--r--cups/adminutil.c177
-rw-r--r--cups/adminutil.h8
-rw-r--r--cups/api-filter.shtml10
-rw-r--r--cups/api-httpipp.shtml100
-rw-r--r--cups/api-ppd.header8
-rw-r--r--cups/api-ppd.shtml6
-rw-r--r--cups/array-private.h4
-rw-r--r--cups/array.c52
-rw-r--r--cups/attr.c10
-rw-r--r--cups/auth.c8
-rw-r--r--cups/backchannel.c14
-rw-r--r--cups/backend.c19
-rw-r--r--cups/conflicts.c12
-rw-r--r--cups/cups-private.h76
-rw-r--r--cups/cups.h418
-rw-r--r--cups/custom.c14
-rw-r--r--cups/debug-private.h4
-rw-r--r--cups/debug.c4
-rw-r--r--cups/dest-job.c358
-rw-r--r--cups/dest-localization.c386
-rw-r--r--cups/dest-options.c1765
-rw-r--r--cups/dest.c1887
-rw-r--r--cups/dir.c22
-rw-r--r--cups/emit.c36
-rw-r--r--cups/encode.c94
-rw-r--r--cups/file.c78
-rw-r--r--cups/file.h30
-rw-r--r--cups/getdevices.c10
-rw-r--r--cups/getputfile.c14
-rw-r--r--cups/globals.c70
-rw-r--r--cups/http-addr.c26
-rw-r--r--cups/http-addrlist.c228
-rw-r--r--cups/http-private.h7
-rw-r--r--cups/http-support.c533
-rw-r--r--cups/http.c743
-rw-r--r--cups/http.h41
-rw-r--r--cups/ipp-private.h19
-rw-r--r--cups/ipp-support.c449
-rw-r--r--cups/ipp.c3579
-rw-r--r--cups/ipp.h419
-rw-r--r--cups/language-private.h15
-rw-r--r--cups/language.c160
-rw-r--r--cups/libcups2.def49
-rw-r--r--cups/libcups_s.exp6
-rw-r--r--cups/localize.c18
-rw-r--r--cups/mark.c10
-rw-r--r--cups/notify.c10
-rw-r--r--cups/options.c8
-rw-r--r--cups/page.c10
-rw-r--r--cups/ppd-cache.c35
-rw-r--r--cups/ppd-private.h19
-rw-r--r--cups/ppd.c240
-rw-r--r--cups/ppd.h146
-rw-r--r--cups/pwg-media.c141
-rw-r--r--cups/pwg-private.h10
-rw-r--r--cups/raster-private.h66
-rw-r--r--cups/raster.h68
-rw-r--r--cups/request.c34
-rw-r--r--cups/sidechannel.c117
-rw-r--r--cups/sidechannel.h12
-rw-r--r--cups/snmp-private.h11
-rw-r--r--cups/snmp.c8
-rw-r--r--cups/string-private.h9
-rw-r--r--cups/tempfile.c8
-rw-r--r--cups/testconflicts.c4
-rw-r--r--cups/testcups.c248
-rw-r--r--cups/testfile.c16
-rw-r--r--cups/testhttp.c4
-rw-r--r--cups/testipp.c10
-rw-r--r--cups/testppd.c26
-rw-r--r--cups/testpwg.c34
-rw-r--r--cups/testsnmp.c8
-rw-r--r--cups/thread-private.h4
-rw-r--r--cups/thread.c4
-rw-r--r--cups/usersys.c366
-rw-r--r--cups/util.c30
-rw-r--r--cups/versioning.h23
-rw-r--r--data/Makefile20
-rw-r--r--data/escp.h34
-rw-r--r--data/media.defs2
-rw-r--r--data/pcl.h38
-rw-r--r--data/psglyphs1051
-rw-r--r--data/utf-840
-rw-r--r--desktop/cups.desktop.in4
-rw-r--r--doc/Makefile4
-rw-r--r--doc/ca/index.html.in107
-rw-r--r--doc/de/index.html.in107
-rw-r--r--doc/es/index.html.in6
-rw-r--r--doc/eu/index.html.in106
-rw-r--r--doc/fr/index.html.in107
-rw-r--r--doc/help/api-array.html48
-rw-r--r--doc/help/api-cups.html384
-rw-r--r--doc/help/api-filedir.html66
-rw-r--r--doc/help/api-filter.html36
-rw-r--r--doc/help/api-httpipp.html1756
-rw-r--r--doc/help/api-ppd.html102
-rw-r--r--doc/help/api-ppdc.html7
-rw-r--r--doc/help/api-raster.html84
-rw-r--r--doc/help/kerberos.html2
-rw-r--r--doc/help/license.html11
-rw-r--r--doc/help/man-ipptool.html157
-rw-r--r--doc/help/man-ipptoolfile.html668
-rw-r--r--doc/help/network.html10
-rw-r--r--doc/help/options.html116
-rw-r--r--doc/help/overview.html2
-rw-r--r--doc/help/policies.html29
-rw-r--r--doc/help/postscript-driver.html16
-rw-r--r--doc/help/ppd-compiler.html12
-rw-r--r--doc/help/raster-driver.html16
-rw-r--r--doc/help/ref-classes-conf.html11
-rw-r--r--doc/help/ref-client-conf.html34
-rw-r--r--doc/help/ref-cupsd-conf.html.in746
-rw-r--r--doc/help/ref-ppdcfile.html24
-rw-r--r--doc/help/ref-printers-conf.html13
-rw-r--r--doc/help/ref-snmp-conf.html5
-rw-r--r--doc/help/sharing.html107
-rw-r--r--doc/help/spec-cmp.html858
-rw-r--r--doc/help/spec-ipp.html271
-rw-r--r--doc/help/spec-postscript.html6
-rw-r--r--doc/help/spec-ppd.html167
-rw-r--r--doc/help/whatsnew.html47
-rwxr-xr-xdoc/hu/index.html.in113
-rw-r--r--doc/id/index.html.in107
-rw-r--r--doc/index.html.in4
-rw-r--r--doc/it/index.html.in107
-rw-r--r--doc/ja/index.html.in20
-rw-r--r--doc/pl/index.html.in107
-rw-r--r--doc/ru/index.html.in103
-rw-r--r--driver/Dependencies75
-rw-r--r--driver/Makefile382
-rw-r--r--driver/api-driver.header34
-rw-r--r--driver/api-driver.shtml18
-rw-r--r--driver/attr.c109
-rw-r--r--driver/check.c111
-rw-r--r--driver/cmyk.c1955
-rw-r--r--driver/commandtoescpx.c245
-rw-r--r--driver/commandtopclx.c172
-rw-r--r--driver/dither.c306
-rw-r--r--driver/driver.h249
-rw-r--r--driver/image.pgmbin152380 -> 0 bytes
-rw-r--r--driver/image.ppmbin457020 -> 0 bytes
-rw-r--r--driver/libcupsdriver.exp30
-rw-r--r--driver/lut.c202
-rw-r--r--driver/pack.c307
-rw-r--r--driver/pcl-common.c272
-rw-r--r--driver/pcl-common.h71
-rw-r--r--driver/rastertoescpx.c1931
-rw-r--r--driver/rastertopclx.c1956
-rw-r--r--driver/rgb.c558
-rw-r--r--driver/srgb.c79
-rw-r--r--driver/testcmyk.c437
-rw-r--r--driver/testdither.c191
-rw-r--r--driver/testdriver.c176
-rw-r--r--driver/testrgb.c347
-rw-r--r--examples/ppdx.c314
-rw-r--r--examples/ppdx.h82
-rw-r--r--examples/testppdx.c117
-rw-r--r--examples/testppdx.ppd121
-rw-r--r--filter/Dependencies592
-rw-r--r--filter/Makefile147
-rw-r--r--filter/api-raster.shtml10
-rw-r--r--filter/bannertops.c1094
-rw-r--r--filter/commandtops.c6
-rw-r--r--filter/error.c11
-rw-r--r--filter/gziptoany.c8
-rw-r--r--filter/image-bmp.c545
-rw-r--r--filter/image-colorspace.c1567
-rw-r--r--filter/image-gif.c696
-rw-r--r--filter/image-jpeg.c322
-rw-r--r--filter/image-photocd.c333
-rw-r--r--filter/image-pix.c240
-rw-r--r--filter/image-png.c315
-rw-r--r--filter/image-pnm.c320
-rw-r--r--filter/image-private.h220
-rw-r--r--filter/image-sgi.c295
-rw-r--r--filter/image-sgi.h86
-rw-r--r--filter/image-sgilib.c890
-rw-r--r--filter/image-sun.c407
-rw-r--r--filter/image-tiff.c1715
-rw-r--r--filter/image-zoom.c361
-rw-r--r--filter/image.c813
-rw-r--r--filter/image.h130
-rw-r--r--filter/imagetops.c1078
-rw-r--r--filter/imagetoraster.c4368
-rw-r--r--filter/interpret.c14
-rw-r--r--filter/pdftops.c621
-rw-r--r--filter/postscript-driver.header6
-rw-r--r--filter/postscript-driver.shtml8
-rw-r--r--filter/ppd-compiler.header10
-rw-r--r--filter/ppd-compiler.shtml2
-rw-r--r--filter/pstext.c511
-rw-r--r--filter/pstext.h74
-rw-r--r--filter/pstops.c131
-rw-r--r--filter/raster-driver.header6
-rw-r--r--filter/raster-driver.shtml8
-rw-r--r--filter/raster.c42
-rw-r--r--filter/rastertoepson.c9
-rw-r--r--filter/rastertohp.c9
-rw-r--r--filter/rastertolabel.c9
-rw-r--r--filter/rastertopwg.c4
-rw-r--r--filter/spec-ppd.shtml158
-rw-r--r--filter/testimage.c99
-rw-r--r--filter/testraster.c12
-rw-r--r--filter/textcommon.c1214
-rw-r--r--filter/textcommon.h114
-rw-r--r--filter/texttops.c1165
-rw-r--r--fonts/Makefile118
-rw-r--r--fonts/Monospace2744
-rw-r--r--fonts/Monospace-Bold2354
-rw-r--r--fonts/Monospace-BoldOblique2445
-rw-r--r--fonts/Monospace-Oblique2706
-rwxr-xr-xinstall-sh2
-rw-r--r--locale/Dependencies50
-rw-r--r--locale/Makefile21
-rw-r--r--locale/cups.pot2684
-rw-r--r--locale/cups.strings209
-rw-r--r--locale/cups_ca.po7285
-rw-r--r--locale/cups_da.po8692
-rw-r--r--locale/cups_de.po8739
-rw-r--r--locale/cups_es.po3376
-rw-r--r--locale/cups_eu.po8895
-rw-r--r--locale/cups_fi.po8710
-rw-r--r--locale/cups_fr.po8821
-rw-r--r--locale/cups_hu.po5835
-rw-r--r--locale/cups_id.po8556
-rw-r--r--locale/cups_it.po8926
-rw-r--r--locale/cups_ja.po7683
-rw-r--r--locale/cups_ko.po8650
-rw-r--r--locale/cups_nl.po8758
-rw-r--r--locale/cups_no.po8659
-rw-r--r--locale/cups_pl.po8717
-rw-r--r--locale/cups_pt.po8733
-rw-r--r--locale/cups_pt_BR.po8742
-rw-r--r--locale/cups_ru.po8709
-rw-r--r--locale/cups_sv.po8673
-rw-r--r--locale/cups_zh.po8592
-rw-r--r--locale/cups_zh_TW.po8590
-rw-r--r--locale/po2strings.c4
-rw-r--r--man/Makefile16
-rw-r--r--man/backend.man160
-rw-r--r--man/cancel.man8
-rw-r--r--man/classes.conf.man8
-rw-r--r--man/client.conf.man.in16
-rw-r--r--man/cups-config.man8
-rw-r--r--man/cups-deviced.man.in8
-rw-r--r--man/cups-driverd.man.in8
-rw-r--r--man/cups-lpd.man.in8
-rw-r--r--man/cups-polld.man38
-rw-r--r--man/cups-snmp.conf.man67
-rw-r--r--man/cups-snmp.man.in59
-rw-r--r--man/cupsaccept.man8
-rw-r--r--man/cupsaddsmb.man.in8
-rw-r--r--man/cupsctl.man17
-rw-r--r--man/cupsd.conf.man.in166
-rw-r--r--man/cupsd.man.in8
-rw-r--r--man/cupsenable.man8
-rw-r--r--man/cupsfilter.man4
-rw-r--r--man/cupstestdsc.man8
-rw-r--r--man/cupstestppd.man8
-rw-r--r--man/filter.man55
-rw-r--r--man/ipptool.man21
-rw-r--r--man/ipptoolfile.man65
-rw-r--r--man/lp.man8
-rw-r--r--man/lpadmin.man17
-rw-r--r--man/lpc.man8
-rw-r--r--man/lpinfo.man8
-rw-r--r--man/lpmove.man8
-rw-r--r--man/lpoptions.man.in8
-rw-r--r--man/lppasswd.man8
-rw-r--r--man/lpq.man8
-rw-r--r--man/lpr.man8
-rw-r--r--man/lprm.man8
-rw-r--r--man/lpstat.man8
-rw-r--r--man/mailto.conf.man8
-rw-r--r--man/mime.convs.man8
-rw-r--r--man/mime.types.man8
-rw-r--r--man/notifier.man8
-rw-r--r--man/ppdc.man13
-rw-r--r--man/ppdcfile.man8
-rw-r--r--man/ppdhtml.man8
-rw-r--r--man/ppdi.man8
-rw-r--r--man/ppdmerge.man8
-rw-r--r--man/ppdpo.man14
-rw-r--r--man/printers.conf.man8
-rw-r--r--man/subscriptions.conf.man8
-rw-r--r--monitor/Dependencies31
-rw-r--r--monitor/Makefile8
-rw-r--r--monitor/bcp.c4
-rw-r--r--notifier/Dependencies45
-rw-r--r--notifier/Makefile8
-rw-r--r--notifier/dbus.c118
-rw-r--r--notifier/mailto.c6
-rw-r--r--notifier/rss.c7
-rw-r--r--notifier/testnotify.c6
-rwxr-xr-xpackaging/InstallationCheck10
-rw-r--r--packaging/cups.list.in192
-rw-r--r--packaging/cups.spec73
-rw-r--r--packaging/cups.spec.in69
-rw-r--r--ppdc/Dependencies437
-rw-r--r--ppdc/Makefile8
-rw-r--r--ppdc/ppdc-catalog.cxx12
-rw-r--r--ppdc/ppdc-file.cxx4
-rw-r--r--ppdc/ppdc-source.cxx64
-rw-r--r--ppdc/ppdc.cxx11
-rw-r--r--ppdc/ppdc.h4
-rw-r--r--ppdc/ppdpo.cxx9
-rw-r--r--ppdc/sample.drv17
-rw-r--r--scheduler/Dependencies690
-rw-r--r--scheduler/Makefile50
-rw-r--r--scheduler/auth.c257
-rw-r--r--scheduler/auth.h7
-rw-r--r--scheduler/cert.c4
-rw-r--r--scheduler/classes.c62
-rw-r--r--scheduler/classes.h7
-rw-r--r--scheduler/client.c1424
-rw-r--r--scheduler/client.h15
-rw-r--r--scheduler/colorman.c1509
-rw-r--r--scheduler/colorman.h28
-rw-r--r--scheduler/conf.c856
-rw-r--r--scheduler/conf.h39
-rw-r--r--scheduler/cups-driverd.cxx1531
-rw-r--r--scheduler/cups-exec.c7
-rw-r--r--scheduler/cups-lpd.c4
-rw-r--r--scheduler/cups-polld.c470
-rw-r--r--scheduler/cups.sh.in4
-rw-r--r--scheduler/cupsd.h23
-rw-r--r--scheduler/cupsfilter.c140
-rw-r--r--scheduler/dirsvc.c5354
-rw-r--r--scheduler/dirsvc.h175
-rw-r--r--scheduler/env.c4
-rw-r--r--scheduler/ipp.c1556
-rw-r--r--scheduler/job.c762
-rw-r--r--scheduler/job.h33
-rw-r--r--scheduler/log.c52
-rw-r--r--scheduler/main.c217
-rw-r--r--scheduler/mime-private.h9
-rw-r--r--scheduler/network.c4
-rw-r--r--scheduler/printers.c509
-rw-r--r--scheduler/printers.h54
-rw-r--r--scheduler/process.c12
-rw-r--r--scheduler/select.c8
-rw-r--r--scheduler/server.c32
-rw-r--r--scheduler/subscriptions.c4
-rw-r--r--scheduler/sysman.c49
-rw-r--r--scheduler/sysman.h14
-rw-r--r--scheduler/testdirsvc.c324
-rw-r--r--scheduler/testlpd.c6
-rw-r--r--scheduler/testspeed.c6
-rw-r--r--scheduler/testsub.c13
-rw-r--r--scheduler/tls-darwin.c570
-rw-r--r--scheduler/tls-gnutls.c292
-rw-r--r--scheduler/tls-openssl.c353
-rw-r--r--scheduler/tls.c30
-rw-r--r--scheduler/util.c8
-rw-r--r--scripting/perl/CUPS.pm144
-rw-r--r--scripting/perl/CUPS.xs270
-rw-r--r--scripting/perl/Makefile.PL17
-rw-r--r--scripting/perl/README35
-rw-r--r--scripting/perl/test.pl17
-rw-r--r--scripting/php/Dependencies7
-rw-r--r--scripting/php/Makefile153
-rw-r--r--scripting/php/README157
-rw-r--r--scripting/php/phpcups.c487
-rw-r--r--scripting/php/phpcups.h67
-rwxr-xr-xscripting/php/phpcups.php60
-rw-r--r--systemv/Dependencies206
-rw-r--r--systemv/Makefile8
-rw-r--r--systemv/cupsaddsmb.c20
-rw-r--r--systemv/cupsctl.c18
-rw-r--r--systemv/cupstestdsc.c6
-rw-r--r--systemv/cupstestppd.c112
-rw-r--r--systemv/lp.c4
-rw-r--r--systemv/lpadmin.c15
-rw-r--r--systemv/lpoptions.c6
-rw-r--r--systemv/lppasswd.c12
-rw-r--r--systemv/lpstat.c4
-rw-r--r--templates/admin.tmpl20
-rw-r--r--templates/ca/add-class.tmpl (renamed from templates/fr/add-class.tmpl)14
-rw-r--r--templates/ca/add-printer.tmpl (renamed from templates/fr/add-printer.tmpl)20
-rw-r--r--templates/ca/add-rss-subscription.tmpl (renamed from templates/id/add-rss-subscription.tmpl)40
-rw-r--r--templates/ca/admin.tmpl102
-rw-r--r--templates/ca/choose-device.tmpl (renamed from templates/hu/choose-device.tmpl)15
-rw-r--r--templates/ca/choose-make.tmpl (renamed from templates/it/choose-make.tmpl)20
-rw-r--r--templates/ca/choose-model.tmpl (renamed from templates/it/choose-model.tmpl)26
-rw-r--r--templates/ca/choose-serial.tmpl (renamed from templates/it/choose-serial.tmpl)28
-rw-r--r--templates/ca/choose-uri.tmpl (renamed from templates/it/choose-uri.tmpl)9
-rw-r--r--templates/ca/class-added.tmpl7
-rw-r--r--templates/ca/class-confirm.tmpl (renamed from templates/pl/class-confirm.tmpl)6
-rw-r--r--templates/ca/class-deleted.tmpl7
-rw-r--r--templates/ca/class-jobs-header.tmpl3
-rw-r--r--templates/ca/class-modified.tmpl (renamed from templates/it/class-modified.tmpl)5
-rw-r--r--templates/ca/class.tmpl44
-rw-r--r--templates/ca/classes-header.tmpl1
-rw-r--r--templates/ca/classes.tmpl (renamed from templates/de/classes.tmpl)4
-rw-r--r--templates/ca/command.tmpl12
-rw-r--r--templates/ca/edit-config.tmpl (renamed from templates/de/edit-config.tmpl)6
-rw-r--r--templates/ca/error-op.tmpl (renamed from templates/de/error-op.tmpl)4
-rw-r--r--templates/ca/error.tmpl (renamed from templates/de/error.tmpl)2
-rw-r--r--templates/ca/header.tmpl.in (renamed from templates/fr/header.tmpl.in)10
-rw-r--r--templates/ca/help-header.tmpl52
-rw-r--r--templates/ca/help-printable.tmpl (renamed from templates/de/help-printable.tmpl)0
-rw-r--r--templates/ca/help-trailer.tmpl (renamed from templates/de/help-trailer.tmpl)0
-rw-r--r--templates/ca/job-cancel.tmpl7
-rw-r--r--templates/ca/job-hold.tmpl7
-rw-r--r--templates/ca/job-move.tmpl (renamed from templates/it/job-move.tmpl)6
-rw-r--r--templates/ca/job-moved.tmpl8
-rw-r--r--templates/ca/job-release.tmpl7
-rw-r--r--templates/ca/job-restart.tmpl7
-rw-r--r--templates/ca/jobs-header.tmpl (renamed from templates/it/jobs-header.tmpl)8
-rw-r--r--templates/ca/jobs.tmpl (renamed from templates/id/jobs.tmpl)26
-rw-r--r--templates/ca/list-available-printers.tmpl (renamed from templates/de/list-available-printers.tmpl)6
-rw-r--r--templates/ca/modify-class.tmpl (renamed from templates/fr/modify-class.tmpl)8
-rw-r--r--templates/ca/modify-printer.tmpl (renamed from templates/de/modify-printer.tmpl)18
-rw-r--r--templates/ca/norestart.tmpl8
-rw-r--r--templates/ca/option-boolean.tmpl (renamed from templates/de/option-boolean.tmpl)0
-rw-r--r--templates/ca/option-conflict.tmpl7
-rw-r--r--templates/ca/option-header.tmpl (renamed from templates/de/option-header.tmpl)0
-rw-r--r--templates/ca/option-pickmany.tmpl (renamed from templates/de/option-pickmany.tmpl)0
-rw-r--r--templates/ca/option-pickone.tmpl (renamed from templates/eu/option-pickone.tmpl)12
-rw-r--r--templates/ca/option-trailer.tmpl5
-rw-r--r--templates/ca/pager.tmpl (renamed from templates/id/pager.tmpl)4
-rw-r--r--templates/ca/printer-accept.tmpl9
-rw-r--r--templates/ca/printer-added.tmpl8
-rw-r--r--templates/ca/printer-configured.tmpl6
-rw-r--r--templates/ca/printer-confirm.tmpl (renamed from templates/id/printer-confirm.tmpl)6
-rw-r--r--templates/ca/printer-default.tmpl12
-rw-r--r--templates/ca/printer-deleted.tmpl7
-rw-r--r--templates/ca/printer-jobs-header.tmpl3
-rw-r--r--templates/ca/printer-modified.tmpl8
-rw-r--r--templates/ca/printer-purge.tmpl8
-rw-r--r--templates/ca/printer-reject.tmpl9
-rw-r--r--templates/ca/printer-start.tmpl9
-rw-r--r--templates/ca/printer-stop.tmpl9
-rw-r--r--templates/ca/printer.tmpl47
-rw-r--r--templates/ca/printers-header.tmpl1
-rw-r--r--templates/ca/printers.tmpl (renamed from templates/id/printers.tmpl)4
-rw-r--r--templates/ca/restart.tmpl8
-rw-r--r--templates/ca/samba-export.tmpl55
-rw-r--r--templates/ca/samba-exported.tmpl1
-rw-r--r--templates/ca/search.tmpl (renamed from templates/it/search.tmpl)6
-rw-r--r--templates/ca/set-printer-options-header.tmpl (renamed from templates/pl/set-printer-options-header.tmpl)4
-rw-r--r--templates/ca/set-printer-options-trailer.tmpl (renamed from templates/de/set-printer-options-trailer.tmpl)0
-rw-r--r--templates/ca/subscription-added.tmpl5
-rw-r--r--templates/ca/subscription-canceled.tmpl5
-rw-r--r--templates/ca/test-page.tmpl8
-rw-r--r--templates/ca/trailer.tmpl8
-rw-r--r--templates/ca/users.tmpl (renamed from templates/it/users.tmpl)10
-rw-r--r--templates/de/add-class.tmpl40
-rw-r--r--templates/de/add-printer.tmpl47
-rw-r--r--templates/de/add-rss-subscription.tmpl44
-rw-r--r--templates/de/admin.tmpl110
-rw-r--r--templates/de/choose-device.tmpl54
-rw-r--r--templates/de/choose-make.tmpl64
-rw-r--r--templates/de/choose-model.tmpl60
-rw-r--r--templates/de/choose-serial.tmpl52
-rw-r--r--templates/de/choose-uri.tmpl44
-rw-r--r--templates/de/class-added.tmpl8
-rw-r--r--templates/de/class-confirm.tmpl10
-rw-r--r--templates/de/class-deleted.tmpl7
-rw-r--r--templates/de/class-jobs-header.tmpl3
-rw-r--r--templates/de/class-modified.tmpl8
-rw-r--r--templates/de/class.tmpl44
-rw-r--r--templates/de/classes-header.tmpl1
-rw-r--r--templates/de/command.tmpl12
-rw-r--r--templates/de/header.tmpl.in29
-rw-r--r--templates/de/help-header.tmpl51
-rw-r--r--templates/de/job-cancel.tmpl7
-rw-r--r--templates/de/job-hold.tmpl7
-rw-r--r--templates/de/job-move.tmpl27
-rw-r--r--templates/de/job-moved.tmpl8
-rw-r--r--templates/de/job-release.tmpl7
-rw-r--r--templates/de/job-restart.tmpl7
-rw-r--r--templates/de/jobs-header.tmpl5
-rw-r--r--templates/de/jobs.tmpl37
-rw-r--r--templates/de/modify-class.tmpl34
-rw-r--r--templates/de/norestart.tmpl8
-rw-r--r--templates/de/option-conflict.tmpl7
-rw-r--r--templates/de/option-pickone.tmpl18
-rw-r--r--templates/de/option-trailer.tmpl5
-rw-r--r--templates/de/pager.tmpl6
-rw-r--r--templates/de/printer-accept.tmpl9
-rw-r--r--templates/de/printer-added.tmpl8
-rw-r--r--templates/de/printer-configured.tmpl8
-rw-r--r--templates/de/printer-confirm.tmpl10
-rw-r--r--templates/de/printer-default.tmpl13
-rw-r--r--templates/de/printer-deleted.tmpl7
-rw-r--r--templates/de/printer-jobs-header.tmpl3
-rw-r--r--templates/de/printer-modified.tmpl8
-rw-r--r--templates/de/printer-purge.tmpl9
-rw-r--r--templates/de/printer-reject.tmpl9
-rw-r--r--templates/de/printer-start.tmpl9
-rw-r--r--templates/de/printer-stop.tmpl9
-rw-r--r--templates/de/printer.tmpl47
-rw-r--r--templates/de/printers-header.tmpl1
-rw-r--r--templates/de/printers.tmpl11
-rw-r--r--templates/de/restart.tmpl8
-rw-r--r--templates/de/samba-export.tmpl55
-rw-r--r--templates/de/samba-exported.tmpl1
-rw-r--r--templates/de/search.tmpl10
-rw-r--r--templates/de/set-printer-options-header.tmpl26
-rw-r--r--templates/de/subscription-added.tmpl5
-rw-r--r--templates/de/subscription-canceled.tmpl5
-rw-r--r--templates/de/test-page.tmpl8
-rw-r--r--templates/de/trailer.tmpl8
-rw-r--r--templates/de/users.tmpl30
-rw-r--r--templates/error.tmpl2
-rw-r--r--templates/es/add-class.tmpl2
-rw-r--r--templates/es/admin.tmpl20
-rw-r--r--templates/es/error.tmpl2
-rw-r--r--templates/es/help-header.tmpl2
-rw-r--r--templates/es/jobs.tmpl2
-rw-r--r--templates/eu/add-class.tmpl40
-rw-r--r--templates/eu/add-printer.tmpl47
-rw-r--r--templates/eu/add-rss-subscription.tmpl44
-rw-r--r--templates/eu/admin.tmpl110
-rw-r--r--templates/eu/choose-device.tmpl54
-rw-r--r--templates/eu/choose-make.tmpl64
-rw-r--r--templates/eu/choose-model.tmpl60
-rw-r--r--templates/eu/choose-serial.tmpl52
-rw-r--r--templates/eu/choose-uri.tmpl43
-rw-r--r--templates/eu/class-added.tmpl7
-rw-r--r--templates/eu/class-confirm.tmpl9
-rw-r--r--templates/eu/class-deleted.tmpl7
-rw-r--r--templates/eu/class-jobs-header.tmpl3
-rw-r--r--templates/eu/class-modified.tmpl7
-rw-r--r--templates/eu/class.tmpl44
-rw-r--r--templates/eu/classes-header.tmpl1
-rw-r--r--templates/eu/classes.tmpl11
-rw-r--r--templates/eu/command.tmpl12
-rw-r--r--templates/eu/edit-config.tmpl24
-rw-r--r--templates/eu/error-op.tmpl9
-rw-r--r--templates/eu/error.tmpl9
-rw-r--r--templates/eu/header.tmpl.in29
-rw-r--r--templates/eu/help-header.tmpl49
-rw-r--r--templates/eu/help-printable.tmpl9
-rw-r--r--templates/eu/help-trailer.tmpl1
-rw-r--r--templates/eu/job-cancel.tmpl7
-rw-r--r--templates/eu/job-hold.tmpl7
-rw-r--r--templates/eu/job-move.tmpl27
-rw-r--r--templates/eu/job-moved.tmpl8
-rw-r--r--templates/eu/job-release.tmpl7
-rw-r--r--templates/eu/job-restart.tmpl7
-rw-r--r--templates/eu/jobs-header.tmpl5
-rw-r--r--templates/eu/jobs.tmpl37
-rw-r--r--templates/eu/list-available-printers.tmpl11
-rw-r--r--templates/eu/modify-class.tmpl34
-rw-r--r--templates/eu/modify-printer.tmpl42
-rw-r--r--templates/eu/norestart.tmpl7
-rw-r--r--templates/eu/option-boolean.tmpl6
-rw-r--r--templates/eu/option-conflict.tmpl7
-rw-r--r--templates/eu/option-header.tmpl5
-rw-r--r--templates/eu/option-pickmany.tmpl6
-rw-r--r--templates/eu/option-trailer.tmpl5
-rw-r--r--templates/eu/pager.tmpl6
-rw-r--r--templates/eu/printer-accept.tmpl8
-rw-r--r--templates/eu/printer-added.tmpl7
-rw-r--r--templates/eu/printer-configured.tmpl8
-rw-r--r--templates/eu/printer-confirm.tmpl9
-rw-r--r--templates/eu/printer-default.tmpl11
-rw-r--r--templates/eu/printer-deleted.tmpl7
-rw-r--r--templates/eu/printer-jobs-header.tmpl3
-rw-r--r--templates/eu/printer-modified.tmpl8
-rw-r--r--templates/eu/printer-purge.tmpl8
-rw-r--r--templates/eu/printer-reject.tmpl8
-rw-r--r--templates/eu/printer-start.tmpl8
-rw-r--r--templates/eu/printer-stop.tmpl8
-rw-r--r--templates/eu/printer.tmpl47
-rw-r--r--templates/eu/printers-header.tmpl1
-rw-r--r--templates/eu/printers.tmpl11
-rw-r--r--templates/eu/restart.tmpl8
-rw-r--r--templates/eu/samba-export.tmpl54
-rw-r--r--templates/eu/samba-exported.tmpl1
-rw-r--r--templates/eu/search.tmpl10
-rw-r--r--templates/eu/set-printer-options-header.tmpl26
-rw-r--r--templates/eu/set-printer-options-trailer.tmpl16
-rw-r--r--templates/eu/subscription-added.tmpl5
-rw-r--r--templates/eu/subscription-canceled.tmpl5
-rw-r--r--templates/eu/test-page.tmpl7
-rw-r--r--templates/eu/trailer.tmpl8
-rw-r--r--templates/eu/users.tmpl30
-rw-r--r--templates/fr/add-rss-subscription.tmpl44
-rw-r--r--templates/fr/admin.tmpl110
-rw-r--r--templates/fr/choose-device.tmpl53
-rw-r--r--templates/fr/choose-make.tmpl64
-rw-r--r--templates/fr/choose-model.tmpl60
-rw-r--r--templates/fr/choose-serial.tmpl52
-rw-r--r--templates/fr/choose-uri.tmpl43
-rw-r--r--templates/fr/class-added.tmpl7
-rw-r--r--templates/fr/class-confirm.tmpl10
-rw-r--r--templates/fr/class-deleted.tmpl7
-rw-r--r--templates/fr/class-jobs-header.tmpl3
-rw-r--r--templates/fr/class-modified.tmpl7
-rw-r--r--templates/fr/class.tmpl44
-rw-r--r--templates/fr/classes-header.tmpl1
-rw-r--r--templates/fr/classes.tmpl11
-rw-r--r--templates/fr/command.tmpl12
-rw-r--r--templates/fr/edit-config.tmpl24
-rw-r--r--templates/fr/error-op.tmpl9
-rw-r--r--templates/fr/error.tmpl9
-rw-r--r--templates/fr/help-header.tmpl51
-rw-r--r--templates/fr/help-printable.tmpl9
-rw-r--r--templates/fr/help-trailer.tmpl1
-rw-r--r--templates/fr/job-cancel.tmpl7
-rw-r--r--templates/fr/job-hold.tmpl7
-rw-r--r--templates/fr/job-move.tmpl27
-rw-r--r--templates/fr/job-moved.tmpl8
-rw-r--r--templates/fr/job-release.tmpl7
-rw-r--r--templates/fr/job-restart.tmpl7
-rw-r--r--templates/fr/jobs-header.tmpl5
-rw-r--r--templates/fr/jobs.tmpl37
-rw-r--r--templates/fr/list-available-printers.tmpl11
-rw-r--r--templates/fr/modify-printer.tmpl42
-rw-r--r--templates/fr/norestart.tmpl8
-rw-r--r--templates/fr/option-boolean.tmpl6
-rw-r--r--templates/fr/option-conflict.tmpl7
-rw-r--r--templates/fr/option-header.tmpl5
-rw-r--r--templates/fr/option-pickmany.tmpl6
-rw-r--r--templates/fr/option-pickone.tmpl18
-rw-r--r--templates/fr/option-trailer.tmpl5
-rw-r--r--templates/fr/pager.tmpl6
-rw-r--r--templates/fr/printer-accept.tmpl9
-rw-r--r--templates/fr/printer-added.tmpl7
-rw-r--r--templates/fr/printer-configured.tmpl8
-rw-r--r--templates/fr/printer-confirm.tmpl10
-rw-r--r--templates/fr/printer-default.tmpl11
-rw-r--r--templates/fr/printer-deleted.tmpl7
-rw-r--r--templates/fr/printer-jobs-header.tmpl3
-rw-r--r--templates/fr/printer-modified.tmpl8
-rw-r--r--templates/fr/printer-purge.tmpl9
-rw-r--r--templates/fr/printer-reject.tmpl9
-rw-r--r--templates/fr/printer-start.tmpl9
-rw-r--r--templates/fr/printer-stop.tmpl9
-rw-r--r--templates/fr/printer.tmpl47
-rw-r--r--templates/fr/printers-header.tmpl1
-rw-r--r--templates/fr/printers.tmpl11
-rw-r--r--templates/fr/restart.tmpl8
-rw-r--r--templates/fr/samba-export.tmpl53
-rw-r--r--templates/fr/samba-exported.tmpl1
-rw-r--r--templates/fr/search.tmpl10
-rw-r--r--templates/fr/set-printer-options-header.tmpl26
-rw-r--r--templates/fr/set-printer-options-trailer.tmpl16
-rw-r--r--templates/fr/subscription-added.tmpl5
-rw-r--r--templates/fr/subscription-canceled.tmpl5
-rw-r--r--templates/fr/test-page.tmpl8
-rw-r--r--templates/fr/trailer.tmpl8
-rw-r--r--templates/fr/users.tmpl30
-rw-r--r--templates/header.tmpl.in12
-rw-r--r--templates/help-header.tmpl2
-rw-r--r--templates/hu/add-class.tmpl41
-rw-r--r--templates/hu/add-printer.tmpl47
-rw-r--r--templates/hu/add-rss-subscription.tmpl58
-rw-r--r--templates/hu/admin.tmpl134
-rw-r--r--templates/hu/choose-make.tmpl65
-rw-r--r--templates/hu/choose-model.tmpl61
-rw-r--r--templates/hu/choose-serial.tmpl53
-rw-r--r--templates/hu/choose-uri.tmpl44
-rw-r--r--templates/hu/class-added.tmpl7
-rw-r--r--templates/hu/class-confirm.tmpl10
-rw-r--r--templates/hu/class-deleted.tmpl6
-rw-r--r--templates/hu/class-jobs-header.tmpl3
-rw-r--r--templates/hu/class-modified.tmpl7
-rw-r--r--templates/hu/class.tmpl48
-rw-r--r--templates/hu/classes-header.tmpl1
-rw-r--r--templates/hu/classes.tmpl15
-rw-r--r--templates/hu/command.tmpl12
-rw-r--r--templates/hu/edit-config.tmpl24
-rw-r--r--templates/hu/error-op.tmpl9
-rw-r--r--templates/hu/error.tmpl9
-rw-r--r--templates/hu/header.tmpl.in34
-rwxr-xr-xtemplates/hu/help-header.tmpl52
-rw-r--r--templates/hu/help-printable.tmpl9
-rw-r--r--templates/hu/help-trailer.tmpl1
-rw-r--r--templates/hu/job-cancel.tmpl6
-rw-r--r--templates/hu/job-hold.tmpl7
-rw-r--r--templates/hu/job-move.tmpl27
-rw-r--r--templates/hu/job-moved.tmpl10
-rw-r--r--templates/hu/job-release.tmpl7
-rw-r--r--templates/hu/job-restart.tmpl6
-rw-r--r--templates/hu/jobs-header.tmpl7
-rw-r--r--templates/hu/jobs.tmpl40
-rw-r--r--templates/hu/list-available-printers.tmpl12
-rw-r--r--templates/hu/modify-class.tmpl34
-rw-r--r--templates/hu/modify-printer.tmpl42
-rw-r--r--templates/hu/norestart.tmpl8
-rw-r--r--templates/hu/option-boolean.tmpl6
-rw-r--r--templates/hu/option-conflict.tmpl7
-rw-r--r--templates/hu/option-header.tmpl5
-rw-r--r--templates/hu/option-pickmany.tmpl6
-rw-r--r--templates/hu/option-pickone.tmpl18
-rw-r--r--templates/hu/option-trailer.tmpl5
-rw-r--r--templates/hu/pager.tmpl6
-rw-r--r--templates/hu/printer-accept.tmpl10
-rw-r--r--templates/hu/printer-added.tmpl7
-rw-r--r--templates/hu/printer-configured.tmpl8
-rw-r--r--templates/hu/printer-confirm.tmpl9
-rw-r--r--templates/hu/printer-default.tmpl13
-rw-r--r--templates/hu/printer-deleted.tmpl6
-rw-r--r--templates/hu/printer-jobs-header.tmpl3
-rw-r--r--templates/hu/printer-modified.tmpl8
-rw-r--r--templates/hu/printer-purge.tmpl9
-rw-r--r--templates/hu/printer-reject.tmpl9
-rw-r--r--templates/hu/printer-start.tmpl9
-rw-r--r--templates/hu/printer-stop.tmpl9
-rw-r--r--templates/hu/printer.tmpl52
-rw-r--r--templates/hu/printers-header.tmpl1
-rw-r--r--templates/hu/printers.tmpl16
-rw-r--r--templates/hu/restart.tmpl8
-rw-r--r--templates/hu/samba-export.tmpl55
-rw-r--r--templates/hu/samba-exported.tmpl1
-rw-r--r--templates/hu/search.tmpl11
-rw-r--r--templates/hu/set-printer-options-header.tmpl26
-rw-r--r--templates/hu/set-printer-options-trailer.tmpl16
-rw-r--r--templates/hu/subscription-added.tmpl5
-rw-r--r--templates/hu/subscription-canceled.tmpl5
-rw-r--r--templates/hu/test-page.tmpl8
-rw-r--r--templates/hu/trailer.tmpl8
-rw-r--r--templates/hu/users.tmpl34
-rw-r--r--templates/id/add-class.tmpl40
-rw-r--r--templates/id/add-printer.tmpl43
-rw-r--r--templates/id/admin.tmpl110
-rw-r--r--templates/id/choose-device.tmpl54
-rw-r--r--templates/id/choose-make.tmpl64
-rw-r--r--templates/id/choose-model.tmpl60
-rw-r--r--templates/id/choose-serial.tmpl52
-rw-r--r--templates/id/choose-uri.tmpl43
-rw-r--r--templates/id/class-added.tmpl7
-rw-r--r--templates/id/class-confirm.tmpl10
-rw-r--r--templates/id/class-deleted.tmpl7
-rw-r--r--templates/id/class-jobs-header.tmpl3
-rw-r--r--templates/id/class-modified.tmpl7
-rw-r--r--templates/id/class.tmpl44
-rw-r--r--templates/id/classes-header.tmpl1
-rw-r--r--templates/id/classes.tmpl11
-rw-r--r--templates/id/command.tmpl12
-rw-r--r--templates/id/edit-config.tmpl24
-rw-r--r--templates/id/error-op.tmpl9
-rw-r--r--templates/id/error.tmpl9
-rw-r--r--templates/id/header.tmpl.in29
-rw-r--r--templates/id/help-header.tmpl47
-rw-r--r--templates/id/help-printable.tmpl9
-rw-r--r--templates/id/help-trailer.tmpl1
-rw-r--r--templates/id/job-cancel.tmpl7
-rw-r--r--templates/id/job-hold.tmpl7
-rw-r--r--templates/id/job-move.tmpl27
-rw-r--r--templates/id/job-moved.tmpl8
-rw-r--r--templates/id/job-release.tmpl7
-rw-r--r--templates/id/job-restart.tmpl7
-rw-r--r--templates/id/jobs-header.tmpl5
-rw-r--r--templates/id/list-available-printers.tmpl11
-rw-r--r--templates/id/modify-class.tmpl34
-rw-r--r--templates/id/modify-printer.tmpl38
-rw-r--r--templates/id/norestart.tmpl7
-rw-r--r--templates/id/option-boolean.tmpl6
-rw-r--r--templates/id/option-conflict.tmpl7
-rw-r--r--templates/id/option-header.tmpl5
-rw-r--r--templates/id/option-pickmany.tmpl6
-rw-r--r--templates/id/option-pickone.tmpl18
-rw-r--r--templates/id/option-trailer.tmpl5
-rw-r--r--templates/id/printer-accept.tmpl9
-rw-r--r--templates/id/printer-added.tmpl7
-rw-r--r--templates/id/printer-configured.tmpl8
-rw-r--r--templates/id/printer-default.tmpl11
-rw-r--r--templates/id/printer-deleted.tmpl7
-rw-r--r--templates/id/printer-jobs-header.tmpl3
-rw-r--r--templates/id/printer-modified.tmpl7
-rw-r--r--templates/id/printer-purge.tmpl9
-rw-r--r--templates/id/printer-reject.tmpl9
-rw-r--r--templates/id/printer-start.tmpl9
-rw-r--r--templates/id/printer-stop.tmpl9
-rw-r--r--templates/id/printer.tmpl47
-rw-r--r--templates/id/printers-header.tmpl1
-rw-r--r--templates/id/restart.tmpl8
-rw-r--r--templates/id/samba-export.tmpl55
-rw-r--r--templates/id/samba-exported.tmpl1
-rw-r--r--templates/id/search.tmpl10
-rw-r--r--templates/id/set-printer-options-header.tmpl26
-rw-r--r--templates/id/set-printer-options-trailer.tmpl16
-rw-r--r--templates/id/subscription-added.tmpl5
-rw-r--r--templates/id/subscription-canceled.tmpl5
-rw-r--r--templates/id/test-page.tmpl8
-rw-r--r--templates/id/trailer.tmpl8
-rw-r--r--templates/id/users.tmpl30
-rw-r--r--templates/it/add-class.tmpl40
-rw-r--r--templates/it/add-printer.tmpl43
-rw-r--r--templates/it/add-rss-subscription.tmpl44
-rw-r--r--templates/it/admin.tmpl110
-rw-r--r--templates/it/choose-device.tmpl54
-rw-r--r--templates/it/class-added.tmpl8
-rw-r--r--templates/it/class-confirm.tmpl10
-rw-r--r--templates/it/class-deleted.tmpl7
-rw-r--r--templates/it/class-jobs-header.tmpl3
-rw-r--r--templates/it/class.tmpl44
-rw-r--r--templates/it/classes-header.tmpl1
-rw-r--r--templates/it/classes.tmpl11
-rw-r--r--templates/it/command.tmpl12
-rw-r--r--templates/it/edit-config.tmpl24
-rw-r--r--templates/it/error-op.tmpl9
-rw-r--r--templates/it/error.tmpl9
-rw-r--r--templates/it/help-header.tmpl50
-rw-r--r--templates/it/help-printable.tmpl9
-rw-r--r--templates/it/help-trailer.tmpl1
-rw-r--r--templates/it/job-cancel.tmpl7
-rw-r--r--templates/it/job-hold.tmpl7
-rw-r--r--templates/it/job-moved.tmpl8
-rw-r--r--templates/it/job-release.tmpl7
-rw-r--r--templates/it/job-restart.tmpl7
-rw-r--r--templates/it/jobs.tmpl37
-rw-r--r--templates/it/list-available-printers.tmpl11
-rw-r--r--templates/it/modify-class.tmpl34
-rw-r--r--templates/it/modify-printer.tmpl38
-rw-r--r--templates/it/norestart.tmpl7
-rw-r--r--templates/it/option-boolean.tmpl6
-rw-r--r--templates/it/option-conflict.tmpl7
-rw-r--r--templates/it/option-header.tmpl5
-rw-r--r--templates/it/option-pickmany.tmpl6
-rw-r--r--templates/it/option-pickone.tmpl18
-rw-r--r--templates/it/option-trailer.tmpl5
-rw-r--r--templates/it/pager.tmpl6
-rw-r--r--templates/it/printer-accept.tmpl9
-rw-r--r--templates/it/printer-added.tmpl7
-rw-r--r--templates/it/printer-configured.tmpl8
-rw-r--r--templates/it/printer-confirm.tmpl10
-rw-r--r--templates/it/printer-default.tmpl12
-rw-r--r--templates/it/printer-deleted.tmpl7
-rw-r--r--templates/it/printer-jobs-header.tmpl3
-rw-r--r--templates/it/printer-modified.tmpl8
-rw-r--r--templates/it/printer-purge.tmpl9
-rw-r--r--templates/it/printer-reject.tmpl9
-rw-r--r--templates/it/printer-start.tmpl9
-rw-r--r--templates/it/printer-stop.tmpl9
-rw-r--r--templates/it/printer.tmpl47
-rw-r--r--templates/it/printers-header.tmpl1
-rw-r--r--templates/it/printers.tmpl11
-rw-r--r--templates/it/restart.tmpl8
-rw-r--r--templates/it/samba-export.tmpl54
-rw-r--r--templates/it/samba-exported.tmpl1
-rw-r--r--templates/it/set-printer-options-header.tmpl26
-rw-r--r--templates/it/set-printer-options-trailer.tmpl16
-rw-r--r--templates/it/subscription-added.tmpl5
-rw-r--r--templates/it/subscription-canceled.tmpl5
-rw-r--r--templates/it/test-page.tmpl8
-rw-r--r--templates/it/trailer.tmpl8
-rw-r--r--templates/ja/add-class.tmpl4
-rw-r--r--templates/ja/add-printer.tmpl4
-rw-r--r--templates/ja/admin.tmpl22
-rw-r--r--templates/ja/choose-device.tmpl21
-rw-r--r--templates/ja/choose-make.tmpl4
-rw-r--r--templates/ja/choose-model.tmpl6
-rw-r--r--templates/ja/choose-uri.tmpl2
-rw-r--r--templates/ja/class-confirm.tmpl2
-rw-r--r--templates/ja/class-deleted.tmpl2
-rw-r--r--templates/ja/class-modified.tmpl4
-rw-r--r--templates/ja/class.tmpl10
-rw-r--r--templates/ja/classes.tmpl4
-rw-r--r--templates/ja/command.tmpl2
-rw-r--r--templates/ja/edit-config.tmpl2
-rw-r--r--templates/ja/error-op.tmpl4
-rw-r--r--templates/ja/error.tmpl4
-rw-r--r--templates/ja/header.tmpl.in12
-rw-r--r--templates/ja/help-header.tmpl22
-rw-r--r--templates/ja/job-cancel.tmpl2
-rw-r--r--templates/ja/job-hold.tmpl1
-rw-r--r--templates/ja/job-moved.tmpl2
-rw-r--r--templates/ja/jobs-header.tmpl2
-rw-r--r--templates/ja/jobs.tmpl15
-rw-r--r--templates/ja/modify-printer.tmpl2
-rw-r--r--templates/ja/printer-configured.tmpl3
-rw-r--r--templates/ja/printer-default.tmpl4
-rw-r--r--templates/ja/printer-deleted.tmpl1
-rw-r--r--templates/ja/printer-modified.tmpl5
-rw-r--r--templates/ja/printer-purge.tmpl6
-rw-r--r--templates/ja/printer-start.tmpl2
-rw-r--r--templates/ja/printer-stop.tmpl3
-rw-r--r--templates/ja/printer.tmpl16
-rw-r--r--templates/ja/printers.tmpl6
-rw-r--r--templates/ja/restart.tmpl2
-rw-r--r--templates/ja/samba-export.tmpl7
-rw-r--r--templates/ja/set-printer-options-header.tmpl2
-rw-r--r--templates/jobs.tmpl2
-rw-r--r--templates/pl/add-class.tmpl40
-rw-r--r--templates/pl/add-printer.tmpl47
-rw-r--r--templates/pl/add-rss-subscription.tmpl44
-rw-r--r--templates/pl/admin.tmpl110
-rw-r--r--templates/pl/choose-device.tmpl54
-rw-r--r--templates/pl/choose-make.tmpl64
-rw-r--r--templates/pl/choose-model.tmpl60
-rw-r--r--templates/pl/choose-serial.tmpl52
-rw-r--r--templates/pl/choose-uri.tmpl44
-rw-r--r--templates/pl/class-added.tmpl8
-rw-r--r--templates/pl/class-deleted.tmpl7
-rw-r--r--templates/pl/class-jobs-header.tmpl3
-rw-r--r--templates/pl/class-modified.tmpl8
-rw-r--r--templates/pl/class.tmpl44
-rw-r--r--templates/pl/classes-header.tmpl1
-rw-r--r--templates/pl/classes.tmpl11
-rw-r--r--templates/pl/command.tmpl12
-rw-r--r--templates/pl/edit-config.tmpl24
-rw-r--r--templates/pl/error-op.tmpl9
-rw-r--r--templates/pl/error.tmpl9
-rw-r--r--templates/pl/header.tmpl.in29
-rw-r--r--templates/pl/help-header.tmpl51
-rw-r--r--templates/pl/help-printable.tmpl9
-rw-r--r--templates/pl/help-trailer.tmpl1
-rw-r--r--templates/pl/job-cancel.tmpl7
-rw-r--r--templates/pl/job-hold.tmpl7
-rw-r--r--templates/pl/job-move.tmpl27
-rw-r--r--templates/pl/job-moved.tmpl8
-rw-r--r--templates/pl/job-release.tmpl7
-rw-r--r--templates/pl/job-restart.tmpl7
-rw-r--r--templates/pl/jobs-header.tmpl5
-rw-r--r--templates/pl/jobs.tmpl37
-rw-r--r--templates/pl/list-available-printers.tmpl11
-rw-r--r--templates/pl/modify-class.tmpl34
-rw-r--r--templates/pl/modify-printer.tmpl42
-rw-r--r--templates/pl/norestart.tmpl8
-rw-r--r--templates/pl/option-boolean.tmpl6
-rw-r--r--templates/pl/option-conflict.tmpl7
-rw-r--r--templates/pl/option-header.tmpl5
-rw-r--r--templates/pl/option-pickmany.tmpl6
-rw-r--r--templates/pl/option-pickone.tmpl18
-rw-r--r--templates/pl/option-trailer.tmpl5
-rw-r--r--templates/pl/pager.tmpl6
-rw-r--r--templates/pl/printer-accept.tmpl9
-rw-r--r--templates/pl/printer-added.tmpl8
-rw-r--r--templates/pl/printer-configured.tmpl8
-rw-r--r--templates/pl/printer-confirm.tmpl10
-rw-r--r--templates/pl/printer-default.tmpl13
-rw-r--r--templates/pl/printer-deleted.tmpl7
-rw-r--r--templates/pl/printer-jobs-header.tmpl3
-rw-r--r--templates/pl/printer-modified.tmpl8
-rw-r--r--templates/pl/printer-purge.tmpl9
-rw-r--r--templates/pl/printer-reject.tmpl9
-rw-r--r--templates/pl/printer-start.tmpl9
-rw-r--r--templates/pl/printer-stop.tmpl9
-rw-r--r--templates/pl/printer.tmpl47
-rw-r--r--templates/pl/printers-header.tmpl1
-rw-r--r--templates/pl/printers.tmpl11
-rw-r--r--templates/pl/restart.tmpl8
-rw-r--r--templates/pl/samba-export.tmpl55
-rw-r--r--templates/pl/samba-exported.tmpl1
-rw-r--r--templates/pl/search.tmpl10
-rw-r--r--templates/pl/set-printer-options-trailer.tmpl16
-rw-r--r--templates/pl/subscription-added.tmpl5
-rw-r--r--templates/pl/subscription-canceled.tmpl5
-rw-r--r--templates/pl/test-page.tmpl8
-rw-r--r--templates/pl/trailer.tmpl8
-rw-r--r--templates/pl/users.tmpl30
-rw-r--r--templates/ru/Makefile201
-rw-r--r--templates/ru/add-class.tmpl40
-rw-r--r--templates/ru/add-printer.tmpl47
-rw-r--r--templates/ru/add-rss-subscription.tmpl44
-rw-r--r--templates/ru/admin.tmpl110
-rw-r--r--templates/ru/choose-device.tmpl54
-rw-r--r--templates/ru/choose-make.tmpl64
-rw-r--r--templates/ru/choose-model.tmpl59
-rw-r--r--templates/ru/choose-serial.tmpl52
-rw-r--r--templates/ru/choose-uri.tmpl43
-rw-r--r--templates/ru/class-added.tmpl7
-rw-r--r--templates/ru/class-confirm.tmpl10
-rw-r--r--templates/ru/class-deleted.tmpl7
-rw-r--r--templates/ru/class-jobs-header.tmpl3
-rw-r--r--templates/ru/class-modified.tmpl7
-rw-r--r--templates/ru/class.tmpl44
-rw-r--r--templates/ru/classes-header.tmpl1
-rw-r--r--templates/ru/classes.tmpl11
-rw-r--r--templates/ru/command.tmpl12
-rw-r--r--templates/ru/edit-config.tmpl24
-rw-r--r--templates/ru/error-op.tmpl9
-rw-r--r--templates/ru/error.tmpl9
-rw-r--r--templates/ru/header.tmpl.in29
-rw-r--r--templates/ru/help-header.tmpl46
-rw-r--r--templates/ru/help-printable.tmpl9
-rw-r--r--templates/ru/help-trailer.tmpl1
-rw-r--r--templates/ru/job-cancel.tmpl7
-rw-r--r--templates/ru/job-hold.tmpl7
-rw-r--r--templates/ru/job-move.tmpl27
-rw-r--r--templates/ru/job-moved.tmpl7
-rw-r--r--templates/ru/job-release.tmpl7
-rw-r--r--templates/ru/job-restart.tmpl7
-rw-r--r--templates/ru/jobs-header.tmpl6
-rw-r--r--templates/ru/jobs.tmpl37
-rw-r--r--templates/ru/list-available-printers.tmpl11
-rw-r--r--templates/ru/modify-class.tmpl34
-rw-r--r--templates/ru/modify-printer.tmpl42
-rw-r--r--templates/ru/norestart.tmpl7
-rw-r--r--templates/ru/option-boolean.tmpl6
-rw-r--r--templates/ru/option-conflict.tmpl7
-rw-r--r--templates/ru/option-header.tmpl5
-rw-r--r--templates/ru/option-pickmany.tmpl6
-rw-r--r--templates/ru/option-pickone.tmpl18
-rw-r--r--templates/ru/option-trailer.tmpl5
-rw-r--r--templates/ru/pager.tmpl6
-rw-r--r--templates/ru/printer-accept.tmpl9
-rw-r--r--templates/ru/printer-added.tmpl8
-rw-r--r--templates/ru/printer-configured.tmpl8
-rw-r--r--templates/ru/printer-confirm.tmpl10
-rw-r--r--templates/ru/printer-default.tmpl12
-rw-r--r--templates/ru/printer-deleted.tmpl7
-rw-r--r--templates/ru/printer-jobs-header.tmpl3
-rw-r--r--templates/ru/printer-modified.tmpl8
-rw-r--r--templates/ru/printer-purge.tmpl9
-rw-r--r--templates/ru/printer-reject.tmpl9
-rw-r--r--templates/ru/printer-start.tmpl9
-rw-r--r--templates/ru/printer-stop.tmpl9
-rw-r--r--templates/ru/printer.tmpl47
-rw-r--r--templates/ru/printers-header.tmpl1
-rw-r--r--templates/ru/printers.tmpl11
-rw-r--r--templates/ru/restart.tmpl8
-rw-r--r--templates/ru/samba-export.tmpl54
-rw-r--r--templates/ru/samba-exported.tmpl1
-rw-r--r--templates/ru/search.tmpl10
-rw-r--r--templates/ru/set-printer-options-header.tmpl26
-rw-r--r--templates/ru/set-printer-options-trailer.tmpl16
-rw-r--r--templates/ru/subscription-added.tmpl5
-rw-r--r--templates/ru/subscription-canceled.tmpl5
-rw-r--r--templates/ru/test-page.tmpl8
-rw-r--r--templates/ru/trailer.tmpl6
-rw-r--r--templates/ru/users.tmpl30
-rw-r--r--test/5.1-lpadmin.sh24
-rw-r--r--test/5.2-lpc.sh6
-rw-r--r--test/5.3-lpq.sh6
-rw-r--r--test/5.4-lpstat.sh10
-rw-r--r--test/5.5-lp.sh20
-rw-r--r--test/5.6-lpr.sh20
-rw-r--r--test/5.7-lprm.sh14
-rw-r--r--test/5.8-cancel.sh12
-rw-r--r--test/5.9-lpinfo.sh12
-rw-r--r--test/Dependencies38
-rw-r--r--test/Makefile23
-rw-r--r--test/cancel-current-job.test65
-rw-r--r--test/document-a4.ps2
-rw-r--r--test/document-letter.ps2
-rw-r--r--test/get-completed-jobs.test8
-rw-r--r--test/get-jobs.test7
-rw-r--r--test/ipp-1.1.test127
-rw-r--r--test/ipp-2.0.test20
-rw-r--r--test/ipp-2.1.test4
-rw-r--r--test/ipp-2.2.test4
-rw-r--r--test/ippserver.c210
-rw-r--r--test/ipptool.c1562
-rw-r--r--test/onepage-a4.ps2
-rw-r--r--test/onepage-letter.ps2
-rwxr-xr-xtest/run-stp-tests.sh158
-rw-r--r--test/str-header.html8
-rw-r--r--test/testfile.pcl60
-rw-r--r--test/testfile.txt120
-rw-r--r--test/xmltotest.c529
-rw-r--r--vcnet/config.h12
-rw-r--r--vcnet/cups.sln32
-rw-r--r--vcnet/cupstestppd.vcproj46
-rw-r--r--vcnet/ipptool-installer.vdproj1669
-rw-r--r--vcnet/ipptool.vcproj78
-rw-r--r--vcnet/libcups2-installer.vdproj2194
-rw-r--r--vcnet/libcups2.vcproj20
-rw-r--r--vcnet/regex.vcproj225
-rw-r--r--vcnet/regex/regex.def7
-rw-r--r--vcnet/setdebug.bat5
-rw-r--r--vcnet/testfile.vcproj12
-rwxr-xr-xvcnet/testhttp.vcproj12
-rw-r--r--xcode/CUPS.xcodeproj/project.pbxproj398
-rw-r--r--xcode/config.h135
1128 files changed, 47060 insertions, 242218 deletions
diff --git a/CHANGES-1.5.txt b/CHANGES-1.5.txt
new file mode 100644
index 00000000..39edb425
--- /dev/null
+++ b/CHANGES-1.5.txt
@@ -0,0 +1,312 @@
+CHANGES-1.5.txt
+---------------
+
+CHANGES IN CUPS V1.5.4
+
+ - Documentation updates (STR #4112, STR #4130, STR #4134)
+ - Fixes for libusb-based USB backend (STR #4128)
+ - The lpq command did not show the owner or title of jobs unless passed
+ a username on the command-line (STR #4135)
+ - Localized empty strings contained the message catalog metadata
+ (STR #4119)
+ - Fixed a crash in the libusb-based USB backend (STR #4099)
+ - The cups-lpd mini-daemon no longer handled jobs with multiple copies
+ (STR #4118)
+ - Multiple libusb backend fixes (STR #4098, STR #4100)
+ - The IPP backend no longer tries to get the job status for printers
+ that do not implement the required operation (STR #4083)
+ - Sending a document in an unsupported format to an IPP printer now
+ automatically cancels the job (STR #4093)
+ - Fix some error reporting issues when printing from /dev/null and
+ other unusual situations (STR #4015)
+ - The scheduler now sets the CUPS_MAX_MESSAGE environment variable for
+ filters (STR #4074)
+ - Fixed a build issue when using older versions of autoconf (STR #4084)
+ - The IPP backend now treats the client-error-not-possible status code
+ as a job history issue, allowing IPP printing to Windows to work
+ (STR #4047)
+ - The IPP backend incorrectly included the document-format and
+ compression attributes in Create-Job requests (STR #4086)
+ - The libusb-based USB backend did not work on non-Linux platforms
+ (STR #4088)
+
+
+CHANGES IN CUPS V1.5.3
+
+ - httpReconnect() did not reset the read/write buffers (STR #4065)
+ - Compiling without threading support failed (STR #4060)
+ - Fixed compile problem with old versions of OpenSSL (STR #4036)
+ - The network backends did not check SNMP supply levels regularly
+ (STR #4040)
+ - The online help always included the "help on help" text (STR #4042)
+ - Fixed a SSL handshake issue on OS X (STR #4045)
+ - The scheduler could crash if a PPD file contained an invalid paper
+ size (STR #4049)
+ - The CUPS polling daemon did not reinitialize its connection to the
+ remote server on errors in all cases (STR #4031)
+ - PostScript auto-configuration was slow and unreliable with some
+ printers (STR #4028)
+ - Missing localizations caused empty output (STR #4033)
+ - The cups-driverd program could temporarily "forget" a PPD file if it
+ was updated in place.
+ - The dnssd backend now prefers IPPS over IPP.
+ - The USB backend now uses and requires LIBUSB 1.0 or later (STR #3477)
+ - The LIBUSB-based USB backend now supports the back-channel (STR #2890)
+ - Changed how timeouts are implemented in the LPD backend (STR #4013)
+ - Added more supported color names for SNMP supplies (STR #3981)
+ - The default InputSlot setting was never used (STR #3957)
+ - POSIX ACLs are now set properly on certificate files (STR #3970)
+ - Supplies with commas in their names were not reported correctly
+ (STR #4020)
+ - The cupsGetPPD3() function created a temporary file when one was not
+ needed (STR #4018)
+ - The scheduler now ensures that job notifications contain a value for
+ the notify-printer-uri attribute (STR #4014)
+ - The lp and lpr commands did not cancel jobs queued from stdin on an
+ error (STR #4015)
+ - Fixed the IPP backend's handling of HTTP/1.0 compatibility (STR #3988)
+ - The IPP backend did not always setup username/password authentication
+ for printers (STR #3985)
+ - The IPP backend no longer re-queues print jobs that are too large for
+ the printer/server (STR #3977)
+ - The RPM spec file did not work (STR #4021, STR #4057)
+ - Encryption did not work when the server name ended with "."
+ (STR #4011)
+ - The multi-purpose tray is now mapped to the IPP "by-pass-tray"
+ (STR #4009)
+ - The correct media size was not always passed to IPP printers
+ (STR #4001)
+ - Finishing options were not passed to IPP printers (STR #3995)
+ - Fixed iCloud-based Back to My Mac printing (STR #3996)
+
+
+CHANGES IN CUPS V1.5.2
+
+ - Reposted what should have been CUPS 1.5.1.
+
+
+CHANGES IN CUPS V1.5.1
+
+ - Documentation updates (STR #3885, STR #3886, STR #3946, STR #3969)
+ - Localization updates (STR #3840, STR #3989, STR #3997)
+ - Build fixes (STR #3956, STR #3999)
+ - The SNMP backend did not validate the device URIs reported by printers
+ (STR #4004)
+ - cupsBackendReport() did not handle newlines in 1284 Device IDs
+ (STR #4005)
+ - USB backend fixes for libusb (STR #3965, STR #3978)
+ - The DBUS notifier did not validate string parameters (STR #3984)
+ - Group quota ACLs did not work with Kerberos (STR #3972)
+ - The IPP backend did not retry when a printer responded with
+ client-error-not-possible (STR #3963)
+ - PostScript PPDs with filters used the wrong command filter (STR #3973)
+ - The scheduler incorrectly used free() on a POSIX ACL value, which
+ could cause a crash (STR #3970)
+ - PPD files using the MacStandard encoding did not work.
+ - The web interface did not work on some platforms (STR #3902)
+ - The lpstat command would crash when then "-u" option was used by a
+ non-administrator (STR #3953)
+ - Japanese supply level reporting did not always work.
+ - The DBUS notifier could crash (STR #3947)
+ - Relaxed some of the page size checks in cupstestppd.
+ - The ipptool program now reports attributes that are repeated within
+ the same attribute group.
+ - Updated the PWG raster support to match the current draft
+ specification.
+ - Fixed some IPP conformance issues in the scheduler.
+ - Added ipptool support for repeating requests.
+ - Added IPP/2.2 conformance tests and greatly improved the IPP/1.1,
+ IPP/2.0, and IPP/2.1 conformance testing.
+ - IPP messages containing mixed integer/rangeOfInteger values did not
+ work (STR #3942)
+ - The ipptool program now provides additional diagnostics for badly-
+ formatted responses (STR #3857)
+ - When possible, the IPP backend now stops sending job data early on a
+ cancel.
+ - cupsSendRequest and cupsWriteRequestData did not properly read all
+ HTTP headers, preventing authentication and encryption upgrades from
+ working in all cases.
+ - The client.conf Server directive is no longer supported on Mac OS X
+ 10.7 and later.
+ - The IPP backend sent the wrong margins in media-col.
+ - The scheduler did not save or restore large Kerberos credentials for
+ jobs.
+ - The dnssd backend did not properly browse for secure IPP printers.
+ - httpAssembleURI* did not properly escape all special characters in the
+ username/password field.
+ - The scheduler now logs config file errors to stderr (STR #3936)
+ - The configure script incorrectly used bundle-based localizations on
+ Linux (STR #3938)
+ - The cups-driverd helper program did not cache .drv files properly,
+ sometimes leading to a crash (STR #3921)
+ - CUPS did not build on stock Mac OS X installations.
+ - Encryption was broken with OpenSSL.
+ - ipptool's XML output used date/time values with timezone offsets,
+ which are not supported by Mac OS X's NSDate class.
+ - Several programs did not support the cupsFilter2 keyword in PPD files.
+ - The IPP backend incorrectly reported spool-area-full states.
+ - cupsMarkOptions() did not protect against a bad PPD that was missing
+ one or more standard Duplex options.
+ - The PostScript filter did not mirror N-up output properly.
+ - The ipptool program did not validate UTF-8 strings in XML output.
+ - Fixed supply level reporting for some printers.
+ - The scheduler no longer automatically logs debug messages for jobs
+ that were held or canceled.
+ - The cupsSendRequest function did not flush remaining response data
+ from a previous request, leading to apparent chunking issues.
+ - The scheduler did not report the correct version in the Server: header
+ (STR #3903)
+ - The scheduler did not support 1284 device IDs reported by driver
+ interface programs longer than 127 characters (STR #3871)
+ - The image filters did not support loading images larger than the
+ RIPCache setting (STR #3901)
+ - "PAGE: total NNN" messages did not get logged properly (STR #3887)
+ - Updated the PWG Raster support to conform to the current draft of the
+ PWG Raster Format specification.
+ - The PWG Raster filter did not always write the correct number of
+ padding lines on the bottom of the page (STR #3904)
+ - When reporting a denial-of-service attack from the domain socket, the
+ address reported does not always contain the correct path (STR #3888)
+ - Badly formed GIF files could cause the image filters to crash
+ (STR #3914)
+ - Jobs canceled at the printer were retried by the IPP backend.
+ - "cupsfilter -u" deleted the input file instead of the PPD file.
+ - The scheduler did not compute the cost of PPD filters defined using
+ the cupsFilter2 keyword properly.
+ - The scheduler did not correctly support the maxsize() attribute for
+ PPD filters.
+
+
+CHANGES IN CUPS V1.5.0
+
+ - Documentation updates.
+ - Localization update (STR #3865)
+ - Needed to limit TLS to v1.0 on some versions of Mac OS X.
+ - The snmp backend did not work with some printers.
+
+
+CHANGES IN CUPS V1.5rc1
+
+ - Compile fixes (STR #3849, STR #3850)
+ - The scheduler didn't check for empty values for several configuration
+ directives (STR #3861)
+ - ipptool didn't generate valid XML when a test was skipped.
+ - Added additional error checking to the 1284 device ID code (STR #3858)
+ - Fixed some compatibility issues migrating from the old usblp backend
+ to the libusb backend (STR #3860)
+ - Fixed the wake-from-sleep printing behavior on Mac OS X.
+ - The scheduler incorrectly allowed jobs to be held from a terminating
+ state.
+ - The cups-driverd program could crash when a PPD was renamed.
+ - The dnssd backend took too long to discover printers on large or busy
+ networks with the new default timeout used by lpinfo and the web
+ interface. This resulted in "lost" printers.
+
+
+CHANGES IN CUPS V1.5b2
+
+ - Documentation updates.
+ - Localization updates (STR #3845)
+ - Compiler warning cleanup.
+ - Fixed PIE support for Linux (STR #3846)
+ - Made httpSetTimeout API public and use it in the IPP backend to avoid
+ timeout errors.
+ - The scheduler incorrectly set the "authenticated" printer-type bit for
+ remote queues using authentication.
+
+
+CHANGES IN CUPS V1.5b1
+
+ - The CUPS library now supports per-connection HTTP timeouts and
+ callbacks.
+ - The CUPS library now supports (limited) SSL/TLS X.509 certificate
+ validation and revocation (STR #1616)
+ - Updated the PostScript filter to support IncludeFeature in more
+ circumstances (STR #3417)
+ - The schedule did not correctly parse some IPv6 addresses and masks in
+ the cupsd.conf file (STR #3533)
+ - Fixed a case-insensitive string comparison issue for locales that do
+ not treat "I" and "i" as equivalent (STR #3800)
+ - The scheduler reported an incorrect job-printer-uri value when sharing
+ was not enabled (STR #3639)
+ - The scheduler now allows the ServerAlias directive to contain multiple
+ hostnames separated by spaces or commas (STR #3813)
+ - The scheduler now sets the process group for child processes and
+ manages the group (STR #2829)
+ - Fixed some minor issues discovered by a Coverity scan (STR #3838)
+ - The scheduler now more carefully creates and removes configuration,
+ cache, and state files (STR #3715)
+ - The lpadmin command now allows default option values to be deleted
+ (STR #2959)
+ - The lpadmin command now allows the cupsIPPSupplies and
+ cupsSNMPSupplies keywords to be set in a PPD file (STR #3825)
+ - Moving a held job no longer releases it (STR #3839)
+ - Restored support for GNU TLS and OpenSSL with threading enabled
+ (STR #3605)
+ - Fixed a confusing error message from cups-polld (STR #3806)
+ - Increased the default RIPCache value to 128MB (STR #3535)
+ - MIME errors are now routed to the error_log file (STR #2410)
+ - Updated PDF filter to support new Ghostscript ps2write device
+ (STR #3766)
+ - Updated PDF filter to support new Poppler option to preserve page
+ sizes in PDF files when the user has not selected a particular media
+ size (STR #3689)
+ - Added new PWG Raster filter for IPP Everywhere printer support.
+ - Added job-uuid, printer-uuid, and subscription-uuid attributes.
+ - Added support for the cupsSingleFile PPD keyword.
+ - Dropped support for the printer-state-history attribute (STR #3654)
+ - Added support for a new cupsIPPSupplies keyword in PPD files to allow
+ drivers to disable IPP supply level reporting.
+ - Added support for a new cupsFilter2 keyword in PPD files to allow for
+ the propagation of the actual MIME media type produced by a filter.
+ - The scheduler did not always get the correct Kerberos username when
+ authenticating (STR #3670)
+ - Added new cupsRasterOpenIO function and CUPS_RASTER_WRITE_PWG to the
+ CUPS imaging library to support printing to IPP Everywhere raster
+ printers.
+ - The scheduler now provides default values for the pages-per-minute and
+ pages-per-minute-color attributes for PPD files that lack a
+ Throughput keyword.
+ - Email notifications did not work on Mac OS X.
+ - The cupstestppd program now shows an error for files missing a
+ CloseGroup keyword (STR #3668)
+ - Name resolution errors no longer cause queues to stop (STR #3719,
+ STR #3753)
+ - Added a new cups-exec helper program that applies security profiles
+ to filters, port monitors, backends, CGI programs, and mini-daemons.
+ - The web interface can now be disabled using the WebInterface directive
+ in cupsd.conf (STR #2625)
+ - The scheduler now provides privacy controls for jobs and subscriptions
+ (STR #2969)
+ - Added new cupsArrayNew3 API which offers memory management of array
+ elements.
+ - Added several new color spaces to the CUPS raster format (STR #3419)
+ - The Validate-Job operation now uses the same policy as Print-Job by
+ default.
+ - CUPS now uses iconv to implement all of its character encoding
+ support (STR #3097)
+ - The scheduler now implements the Cancel-Jobs, Cancel-My-Jobs, and
+ Close-Job operations along with the job-ids operation attribute from
+ PWG 5100.11.
+ - The main CUPS header (<cups/cups.h>) no longer includes the PPD header
+ (<cups/ppd.h>).
+ - The scheduler and CUPS API now support the print-quality job template
+ attribute.
+ - The scheduler no longer supports the old Mac OS X Server quota
+ plugin.
+ - The scheduler now allows writing to /Users/Shared from print filters
+ on Mac OS X.
+ - CUPS no longer supports the old ~/.cupsrc or ~/.lpoptions files from
+ CUPS 1.1.x. The ~/.cups/client.conf and ~/.cups/lpoptions files that
+ were introduced in CUPS 1.2 must now be used.
+ - The ipptest tool is now a first-class user program and has several
+ improvements along with new documentation (STR #3484)
+ - The cupstestppd tool now warns about non-unique filenames and
+ provides a way to ignore all filename warnings.
+ - Dropped support for the recoverable: and recovered: message prefixes.
+ - The scheduler now requires that filters and backends have group write
+ permissions disabled.
+ - The PPD compiler now checks for overlapping filenames when writing
+ PPD files.
+ - The HP-GL/2 filter is no longer included with CUPS (STR #3322)
+ - The SCSI backend is no longer included with CUPS (STR #3500)
diff --git a/CHANGES-IPPTOOL.txt b/CHANGES-IPPTOOL.txt
new file mode 100644
index 00000000..d16bbd5d
--- /dev/null
+++ b/CHANGES-IPPTOOL.txt
@@ -0,0 +1,128 @@
+CHANGES-IPPTOOL.txt - 2012-02-28
+--------------------------------
+
+This file provides a list of changes to the ipptool binary distribution posted
+on cups.org.
+
+
+2012-02-28
+
+ - Changed behavior of WITH-VALUES "/regex/" to not require all values to
+ match.
+ - Added WITH-ALL-VALUES directive for EXPECT predicates that require all
+ values to match.
+ - Updated test files to use WITH-ALL-VALUES where necessary.
+ - Updated test files to use new ABNF for media names from PWG Media
+ Names 2.0.
+
+
+2012-02-06
+
+ - Fixed the packaging of ipptool on Windows (removed unnecessary DLLs)
+ - Fixed an crash in ipptool when mixing DISPLAY with -I and a failed
+ request.
+ - Added a Print-Job test file.
+ - Added a "setdebug" batch file for Windows
+ - Added support for a CUPS_DISABLE_ASYNC_CONNECT environment variable.
+
+
+2012-01-10
+
+ - Fixed an issue with the IPP/1.1 test file where the "waiting for job
+ completion" test did not work.
+ - The attribute groups out of order error was not shown for the
+ operation-attributes-tag group.
+
+
+2011-12-02
+
+ - Fixed a truncated XML output bug that would happen for certain errors.
+ - Fixed the order-of-groups tests.
+ - Fixed "WITH-VALUE >N" for rangeOfInteger attributes.
+ - The Windows installer was missing the get-printer-attributes.test
+ file.
+ - The Linux binaries are now compiled for all LSB 4.x-compliant Linux
+ distributions.
+ - The Linux binaries no longer support SSL or TLS.
+
+
+2011-10-05
+
+ - Fixed a crasher bug that showed up on Windows.
+ - The IPP/1.1 test would hang if the initial Print-Job test failed.
+ - Fixed a typo in the IPP/2.0 test.
+
+
+2011-10-03
+
+ - Using OF-TYPE with the "no-value" or "unknown" out-of-band value tags
+ now works without special WITH-VALUE strings.
+ - ipptool now shows an error when an attribute appears more than once
+ within the same attribute group.
+ - ipptool did not display attributes as specified by the DISPLAY
+ directive when a test error failed.
+ - Fixed one spot where DEFINE-VALUE was still treated as an error when
+ the EXPECT test failed.
+ - uriScheme values were not displayed properly.
+ - Updated the IPP/1.1 tests to properly validate support for
+ job-hold-until-default and job-hold-until-supported when the Hold-Job
+ operation is supported.
+ - Updated the IPP/1.1 tests to properly check for the various standard
+ media sizes for the printing tests.
+ - Updated the IPP/1.1 tests to accept "no-value" for media-default an
+ orientation-requested-default.
+ - Updated the IPP/1.1 tests to accept "unknown" for job-state.
+ - Updated the IPP/1.1 tests to not perform the bogus URI printing tests
+ unless the "document-uri" variable is defined.
+ - Updated the IPP/2.0 tests to properly validate media-col
+ "media-xxx-supported" attributes.
+ - Updated the IPP/2.2 tests to properly validate media-ready and
+ media-col-ready.
+
+
+2011-09-28
+
+ - Test output now includes a summary and overall score at the end.
+ - The MATCH-VALUE predicate now correctly deals with a failed EXPECT
+ condition.
+ - The IPP/1.1 test suite now looks for legacy media names and uses them
+ if the corresponding PWG standard names are not present.
+ - The IPP/1.1 test suite now tests the Print-Job+Release-Job when the
+ printer supports the job-hold-until attribute, Hold-Job operation, and
+ Release-Job operation.
+
+
+2011-09-21
+
+ - Fixes for HTTP chunking, timeout, and encryption issues reported by
+ various users.
+ - Greatly improved IPP tests with added IPP/2.2 tests.
+ - New test documents - 1-page and 4-page mixed A4/Letter PDF/PS and a
+ couple JPEGs.
+ - New REPEAT directives to programmatically repeat tests as needed.
+
+
+2011-08-16
+
+ - The Windows version no longer requires Visual Studio to be installed.
+ - The Windows version now supports SSL.
+ - Added "ipps" URI support.
+ - Added a new "-T" option.
+ - Added support for fractional seconds for the -i option and DELAY
+ directive.
+ - Added support for authentication.
+ - Added DEFINE-MATCH, DEFINE-NO-MATCH, DEFINE-VALUE, IF-NOT-DEFINED,
+ IGNORE-ERRORS, SKIP-IF-DEFINED, SKIP-IF-NOT-DEFINED,
+ SKIP-PREVIOUS-ERROR directives.
+ - WITH-VALUE now supports variable expansion.
+ - Updated the IPP/1.1 conformance test to skip the "my-jobs different
+ user" test if the printer URI contains a username.
+ - Updated the IPP conformance tests to validate media, media-default,
+ and media-supported values.
+ - No longer error out if a Printer returns a different version number in
+ the response when the request contains the version 0.0.
+
+
+2010-10-16
+
+ - Initial release of standalone binary.
diff --git a/CHANGES.txt b/CHANGES.txt
index 6b9d3b7d..52598970 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,312 +1,84 @@
-CHANGES.txt - 2012-07-16
-------------------------
-
-CHANGES IN CUPS V1.5.4
-
- - Documentation updates (STR #4112, STR #4130, STR #4134)
- - Fixes for libusb-based USB backend (STR #4128)
- - The lpq command did not show the owner or title of jobs unless passed
- a username on the command-line (STR #4135)
- - Localized empty strings contained the message catalog metadata
- (STR #4119)
- - Fixed a crash in the libusb-based USB backend (STR #4099)
- - The cups-lpd mini-daemon no longer handled jobs with multiple copies
- (STR #4118)
- - Multiple libusb backend fixes (STR #4098, STR #4100)
- - The IPP backend no longer tries to get the job status for printers
- that do not implement the required operation (STR #4083)
- - Sending a document in an unsupported format to an IPP printer now
- automatically cancels the job (STR #4093)
- - Fix some error reporting issues when printing from /dev/null and
- other unusual situations (STR #4015)
- - The scheduler now sets the CUPS_MAX_MESSAGE environment variable for
- filters (STR #4074)
- - Fixed a build issue when using older versions of autoconf (STR #4084)
- - The IPP backend now treats the client-error-not-possible status code
- as a job history issue, allowing IPP printing to Windows to work
- (STR #4047)
- - The IPP backend incorrectly included the document-format and
- compression attributes in Create-Job requests (STR #4086)
- - The libusb-based USB backend did not work on non-Linux platforms
- (STR #4088)
-
-
-CHANGES IN CUPS V1.5.3
-
- - httpReconnect() did not reset the read/write buffers (STR #4065)
- - Compiling without threading support failed (STR #4060)
- - Fixed compile problem with old versions of OpenSSL (STR #4036)
- - The network backends did not check SNMP supply levels regularly
- (STR #4040)
- - The online help always included the "help on help" text (STR #4042)
- - Fixed a SSL handshake issue on OS X (STR #4045)
- - The scheduler could crash if a PPD file contained an invalid paper
- size (STR #4049)
- - The CUPS polling daemon did not reinitialize its connection to the
- remote server on errors in all cases (STR #4031)
- - PostScript auto-configuration was slow and unreliable with some
- printers (STR #4028)
- - Missing localizations caused empty output (STR #4033)
- - The cups-driverd program could temporarily "forget" a PPD file if it
- was updated in place.
- - The dnssd backend now prefers IPPS over IPP.
- - The USB backend now uses and requires LIBUSB 1.0 or later (STR #3477)
- - The LIBUSB-based USB backend now supports the back-channel (STR #2890)
- - Changed how timeouts are implemented in the LPD backend (STR #4013)
- - Added more supported color names for SNMP supplies (STR #3981)
- - The default InputSlot setting was never used (STR #3957)
- - POSIX ACLs are now set properly on certificate files (STR #3970)
- - Supplies with commas in their names were not reported correctly
- (STR #4020)
- - The cupsGetPPD3() function created a temporary file when one was not
- needed (STR #4018)
- - The scheduler now ensures that job notifications contain a value for
- the notify-printer-uri attribute (STR #4014)
- - The lp and lpr commands did not cancel jobs queued from stdin on an
- error (STR #4015)
- - Fixed the IPP backend's handling of HTTP/1.0 compatibility (STR #3988)
- - The IPP backend did not always setup username/password authentication
- for printers (STR #3985)
- - The IPP backend no longer re-queues print jobs that are too large for
- the printer/server (STR #3977)
- - The RPM spec file did not work (STR #4021, STR #4057)
- - Encryption did not work when the server name ended with "."
- (STR #4011)
- - The multi-purpose tray is now mapped to the IPP "by-pass-tray"
- (STR #4009)
- - The correct media size was not always passed to IPP printers
- (STR #4001)
- - Finishing options were not passed to IPP printers (STR #3995)
- - Fixed iCloud-based Back to My Mac printing (STR #3996)
-
-
-CHANGES IN CUPS V1.5.2
-
- - Reposted what should have been CUPS 1.5.1.
-
-
-CHANGES IN CUPS V1.5.1
-
- - Documentation updates (STR #3885, STR #3886, STR #3946, STR #3969)
- - Localization updates (STR #3840, STR #3989, STR #3997)
- - Build fixes (STR #3956, STR #3999)
- - The SNMP backend did not validate the device URIs reported by printers
- (STR #4004)
- - cupsBackendReport() did not handle newlines in 1284 Device IDs
- (STR #4005)
- - USB backend fixes for libusb (STR #3965, STR #3978)
- - The DBUS notifier did not validate string parameters (STR #3984)
- - Group quota ACLs did not work with Kerberos (STR #3972)
- - The IPP backend did not retry when a printer responded with
- client-error-not-possible (STR #3963)
- - PostScript PPDs with filters used the wrong command filter (STR #3973)
- - The scheduler incorrectly used free() on a POSIX ACL value, which
- could cause a crash (STR #3970)
- - PPD files using the MacStandard encoding did not work.
- - The web interface did not work on some platforms (STR #3902)
- - The lpstat command would crash when then "-u" option was used by a
- non-administrator (STR #3953)
- - Japanese supply level reporting did not always work.
- - The DBUS notifier could crash (STR #3947)
- - Relaxed some of the page size checks in cupstestppd.
- - The ipptool program now reports attributes that are repeated within
- the same attribute group.
- - Updated the PWG raster support to match the current draft
- specification.
- - Fixed some IPP conformance issues in the scheduler.
- - Added ipptool support for repeating requests.
- - Added IPP/2.2 conformance tests and greatly improved the IPP/1.1,
- IPP/2.0, and IPP/2.1 conformance testing.
- - IPP messages containing mixed integer/rangeOfInteger values did not
- work (STR #3942)
- - The ipptool program now provides additional diagnostics for badly-
- formatted responses (STR #3857)
- - When possible, the IPP backend now stops sending job data early on a
- cancel.
- - cupsSendRequest and cupsWriteRequestData did not properly read all
- HTTP headers, preventing authentication and encryption upgrades from
- working in all cases.
- - The client.conf Server directive is no longer supported on Mac OS X
- 10.7 and later.
- - The IPP backend sent the wrong margins in media-col.
- - The scheduler did not save or restore large Kerberos credentials for
- jobs.
- - The dnssd backend did not properly browse for secure IPP printers.
- - httpAssembleURI* did not properly escape all special characters in the
- username/password field.
- - The scheduler now logs config file errors to stderr (STR #3936)
- - The configure script incorrectly used bundle-based localizations on
- Linux (STR #3938)
- - The cups-driverd helper program did not cache .drv files properly,
- sometimes leading to a crash (STR #3921)
- - CUPS did not build on stock Mac OS X installations.
- - Encryption was broken with OpenSSL.
- - ipptool's XML output used date/time values with timezone offsets,
- which are not supported by Mac OS X's NSDate class.
- - Several programs did not support the cupsFilter2 keyword in PPD files.
- - The IPP backend incorrectly reported spool-area-full states.
- - cupsMarkOptions() did not protect against a bad PPD that was missing
- one or more standard Duplex options.
- - The PostScript filter did not mirror N-up output properly.
- - The ipptool program did not validate UTF-8 strings in XML output.
- - Fixed supply level reporting for some printers.
- - The scheduler no longer automatically logs debug messages for jobs
- that were held or canceled.
- - The cupsSendRequest function did not flush remaining response data
- from a previous request, leading to apparent chunking issues.
- - The scheduler did not report the correct version in the Server: header
- (STR #3903)
- - The scheduler did not support 1284 device IDs reported by driver
- interface programs longer than 127 characters (STR #3871)
- - The image filters did not support loading images larger than the
- RIPCache setting (STR #3901)
- - "PAGE: total NNN" messages did not get logged properly (STR #3887)
- - Updated the PWG Raster support to conform to the current draft of the
- PWG Raster Format specification.
- - The PWG Raster filter did not always write the correct number of
- padding lines on the bottom of the page (STR #3904)
- - When reporting a denial-of-service attack from the domain socket, the
- address reported does not always contain the correct path (STR #3888)
- - Badly formed GIF files could cause the image filters to crash
- (STR #3914)
- - Jobs canceled at the printer were retried by the IPP backend.
- - "cupsfilter -u" deleted the input file instead of the PPD file.
- - The scheduler did not compute the cost of PPD filters defined using
- the cupsFilter2 keyword properly.
- - The scheduler did not correctly support the maxsize() attribute for
- PPD filters.
-
-
-CHANGES IN CUPS V1.5.0
-
- - Documentation updates.
- - Localization update (STR #3865)
- - Needed to limit TLS to v1.0 on some versions of Mac OS X.
- - The snmp backend did not work with some printers.
-
-
-CHANGES IN CUPS V1.5rc1
-
- - Compile fixes (STR #3849, STR #3850)
- - The scheduler didn't check for empty values for several configuration
- directives (STR #3861)
- - ipptool didn't generate valid XML when a test was skipped.
- - Added additional error checking to the 1284 device ID code (STR #3858)
- - Fixed some compatibility issues migrating from the old usblp backend
- to the libusb backend (STR #3860)
- - Fixed the wake-from-sleep printing behavior on Mac OS X.
- - The scheduler incorrectly allowed jobs to be held from a terminating
- state.
- - The cups-driverd program could crash when a PPD was renamed.
- - The dnssd backend took too long to discover printers on large or busy
- networks with the new default timeout used by lpinfo and the web
- interface. This resulted in "lost" printers.
-
-
-CHANGES IN CUPS V1.5b2
-
- - Documentation updates.
- - Localization updates (STR #3845)
- - Compiler warning cleanup.
- - Fixed PIE support for Linux (STR #3846)
- - Made httpSetTimeout API public and use it in the IPP backend to avoid
- timeout errors.
- - The scheduler incorrectly set the "authenticated" printer-type bit for
- remote queues using authentication.
-
-
-CHANGES IN CUPS V1.5b1
-
- - The CUPS library now supports per-connection HTTP timeouts and
- callbacks.
- - The CUPS library now supports (limited) SSL/TLS X.509 certificate
- validation and revocation (STR #1616)
- - Updated the PostScript filter to support IncludeFeature in more
- circumstances (STR #3417)
- - The schedule did not correctly parse some IPv6 addresses and masks in
- the cupsd.conf file (STR #3533)
- - Fixed a case-insensitive string comparison issue for locales that do
- not treat "I" and "i" as equivalent (STR #3800)
- - The scheduler reported an incorrect job-printer-uri value when sharing
- was not enabled (STR #3639)
- - The scheduler now allows the ServerAlias directive to contain multiple
- hostnames separated by spaces or commas (STR #3813)
- - The scheduler now sets the process group for child processes and
- manages the group (STR #2829)
- - Fixed some minor issues discovered by a Coverity scan (STR #3838)
- - The scheduler now more carefully creates and removes configuration,
- cache, and state files (STR #3715)
- - The lpadmin command now allows default option values to be deleted
- (STR #2959)
- - The lpadmin command now allows the cupsIPPSupplies and
- cupsSNMPSupplies keywords to be set in a PPD file (STR #3825)
- - Moving a held job no longer releases it (STR #3839)
- - Restored support for GNU TLS and OpenSSL with threading enabled
- (STR #3605)
- - Fixed a confusing error message from cups-polld (STR #3806)
- - Increased the default RIPCache value to 128MB (STR #3535)
- - MIME errors are now routed to the error_log file (STR #2410)
- - Updated PDF filter to support new Ghostscript ps2write device
- (STR #3766)
- - Updated PDF filter to support new Poppler option to preserve page
- sizes in PDF files when the user has not selected a particular media
- size (STR #3689)
- - Added new PWG Raster filter for IPP Everywhere printer support.
- - Added job-uuid, printer-uuid, and subscription-uuid attributes.
- - Added support for the cupsSingleFile PPD keyword.
- - Dropped support for the printer-state-history attribute (STR #3654)
- - Added support for a new cupsIPPSupplies keyword in PPD files to allow
- drivers to disable IPP supply level reporting.
- - Added support for a new cupsFilter2 keyword in PPD files to allow for
- the propagation of the actual MIME media type produced by a filter.
- - The scheduler did not always get the correct Kerberos username when
- authenticating (STR #3670)
- - Added new cupsRasterOpenIO function and CUPS_RASTER_WRITE_PWG to the
- CUPS imaging library to support printing to IPP Everywhere raster
- printers.
- - The scheduler now provides default values for the pages-per-minute and
- pages-per-minute-color attributes for PPD files that lack a
- Throughput keyword.
- - Email notifications did not work on Mac OS X.
- - The cupstestppd program now shows an error for files missing a
- CloseGroup keyword (STR #3668)
- - Name resolution errors no longer cause queues to stop (STR #3719,
- STR #3753)
- - Added a new cups-exec helper program that applies security profiles
- to filters, port monitors, backends, CGI programs, and mini-daemons.
- - The web interface can now be disabled using the WebInterface directive
- in cupsd.conf (STR #2625)
- - The scheduler now provides privacy controls for jobs and subscriptions
- (STR #2969)
- - Added new cupsArrayNew3 API which offers memory management of array
- elements.
- - Added several new color spaces to the CUPS raster format (STR #3419)
- - The Validate-Job operation now uses the same policy as Print-Job by
- default.
- - CUPS now uses iconv to implement all of its character encoding
- support (STR #3097)
- - The scheduler now implements the Cancel-Jobs, Cancel-My-Jobs, and
- Close-Job operations along with the job-ids operation attribute from
- PWG 5100.11.
- - The main CUPS header (<cups/cups.h>) no longer includes the PPD header
- (<cups/ppd.h>).
- - The scheduler and CUPS API now support the print-quality job template
- attribute.
- - The scheduler no longer supports the old Mac OS X Server quota
- plugin.
- - The scheduler now allows writing to /Users/Shared from print filters
- on Mac OS X.
- - CUPS no longer supports the old ~/.cupsrc or ~/.lpoptions files from
- CUPS 1.1.x. The ~/.cups/client.conf and ~/.cups/lpoptions files that
- were introduced in CUPS 1.2 must now be used.
- - The ipptest tool is now a first-class user program and has several
- improvements along with new documentation (STR #3484)
- - The cupstestppd tool now warns about non-unique filenames and
- provides a way to ignore all filename warnings.
- - Dropped support for the recoverable: and recovered: message prefixes.
- - The scheduler now requires that filters and backends have group write
- permissions disabled.
- - The PPD compiler now checks for overlapping filenames when writing
- PPD files.
- - The HP-GL/2 filter is no longer included with CUPS (STR #3322)
- - The SCSI backend is no longer included with CUPS (STR #3500)
+CHANGES.txt - 1.6.0 - 2012-07-16
+--------------------------------
+
+CHANGES IN CUPS V1.6.0
+
+ - Document changes (STR #4131)
+ - Added new Catalan (STR #4107) and Spanish (STR #4137) localizations.
+
+
+CHANGES IN CUPS V1.6rc1
+
+ - Added a new Japanese localization (STR #4122)
+ - The SNMP backend no longer exits if it is unable to obtain an IPv6
+ socket (STR #4109)
+ - The LPD backend incorrectly used "localhost" in the control file
+ instead of the current hostname.
+
+
+CHANGES IN CUPS V1.6b1
+
+ - Documentation updates (STR #3927, STR #3980, STR #4010, STR #4068)
+ - The scheduler now consolidates all PPD updates from filters at the
+ end of the job (STR #4075)
+ - CUPS now supports color management using colord (STR #3808)
+ - CUPS now supports Bonjour using Avahi (STR #3066)
+ - The PreserveJobFiles and PreserveJobHistory directives now support
+ specification of a time interval (STR #3143)
+ - PPD files can now be archived in (gzip'd) tar files to further reduce
+ the disk space used by PPD files (STR #3772)
+ - The network backends now deal with printers that report their levels
+ in percent but do not specify a maximum capacity of 100 (STR #3551)
+ - The network backends now report full/almost-full waste bins in
+ printers along with end-of-life for cleaning pads (STR #4017)
+ - Added a configure option to set the permissions of the installed
+ cupsd (STR #3459)
+ - Added a new WITH-ALL-VALUES directive to ipptool EXPECT predicates
+ (STR #3949)
+ - CUPS now supports a User directive in client.conf and the CUPS_USER
+ environment variable for overriding the default username (STR #3114)
+ - Now set the PJL USERNAME variable as needed (STR #3100)
+ - Added support for usernames and passwords longer than 32 characters
+ (STR #2856)
+ - Added a new MaxHoldTime directive to automatically cancel jobs that
+ have been held indefinitely after a specific number of seconds
+ (STR #2291)
+ - The LPD backend now uses the originating host name when it is not the
+ local system (STR #2053)
+ - CUPS now prefers the suffix "dpcm" when reporting resolution in dots-
+ per-centimeter (STR #4006)
+ - The configure script and build system no longer support building of
+ separate 32-bit and 64-bit libraries.
+ - The "brightness", "columns", "fitplot", "gamma", "hue",
+ "natural-scaling", "penwidth", "position", "ppi", "saturation", and
+ "scaling" options are not longer supported (STR #4010)
+ - The "page-bottom", "page-left", "page-right", "page-top",
+ "prettyprint", and "wrap" options have been deprecated (STR #4010)
+ - The scheduler now reports the standard "number-of-documents" attribute
+ instead of the CUPS-specific "document-count" attribute in
+ job objects.
+ - Added new destination connection and enumeration functions (STR #3924)
+ - Added new option, localization, and job submission functions that do
+ not depend on PPD files (STR #3925)
+ - Added a new MaxJobTime directive for cupsd that specifies the maximum
+ amount of time allowed for a job to complete before it is canceled.
+ - The default password callback now supports passwords up to 127
+ characters.
+ - The scheduler now supports a DefaultAuthType of "auto" to
+ automatically choose between Basic (username/password) and Negotiate
+ (Kerberos) authentication.
+ - cupsSideChannelSNMPGet/Walk now support OIDs and values up to 64k in
+ length.
+ - CUPS no longer supports automatic remote printers or implicit classes
+ via the CUPS, LDAP, or SLP protocols (STR #3922, STR #3923)
+ - The PPD APIs are now deprecated and will be removed in a future
+ version of CUPS (STR #3927)
+ - The default IPP version for requests is now 2.0 (STR #3929)
+ - The IPP APIs no longer expose the ipp_t or ipp_attribute_t structures
+ and instead provide accessor functions (STR #3928)
+ - The scheduler will no longer run programs with group write permission.
+ - The PHP module has been removed (STR #3932)
+ - The bannertops, commandtoescpx, commandtopclx, imagetops,
+ imagetoraster, pdftops, rastertoescpx, rastertopclx, and texttops
+ filters have been removed (STR #3930)
+ - The serial and parallel backends have been removed (STR 3935)
diff --git a/CREDITS.txt b/CREDITS.txt
index a241eef4..b5721c44 100644
--- a/CREDITS.txt
+++ b/CREDITS.txt
@@ -1,4 +1,4 @@
-CREDITS.txt - 2010-03-13
+CREDITS.txt - 2012-07-16
------------------------
Few projects are completed by one person, and CUPS is no exception. We'd
@@ -17,7 +17,7 @@ like to thank the following individuals for their contributions:
Wang Jian - CUPS RPM corrections.
Roderick Johnstone - Beta tester of the millenium.
Till Kamppeter - Bug fixes, beta testing, evangelism.
- I–aki Larra–aga - Basque localization.
+ Iñaki Larrañaga - Basque localization.
Kenshi Muto - Japanese localization, patches, and
testing.
Tomohiro Kato - Japanese localization.
@@ -27,16 +27,18 @@ like to thank the following individuals for their contributions:
Mark Lawrence - Microsoft interoperability testing.
Jeff Licquia - Bug fixes, beta testing, evangelism.
Jason McMullan - Original CUPS RPM distributions.
+ Àngel Mompó - Catalan localization.
Wes Morgan - *BSD fixes.
Daniel Nylander - Swedish localization.
- Niklas 'Nille' kerstršm - Swedish localization.
+ Niklas 'Nille' Åkerström - Swedish localization.
+ Naruiko Ogasawara - Japanese localization.
Giulio Orsero - Bug fixes and testing.
Michal Osowiecki - Polish localization.
Citra Paska - Indonesian localization.
Kurt Pfeifle - Bug fixes, beta testing, evangelism.
Vincenzo Reale - Italian localization.
Petter Reinholdtsen - HP-UX compiler stuff.
- Juan Pablo Gonz‡lez Riopedre - Spanish localization.
+ Juan Pablo González Riopedre - Spanish localization.
Opher Shachar - Hebrew localization.
Stuart Stevens - HP JetDirect IPP information.
Andrea Suatoni - IRIX desktop integration and testing.
diff --git a/INSTALL.txt b/INSTALL.txt
index 69007b4d..7b4d080e 100644
--- a/INSTALL.txt
+++ b/INSTALL.txt
@@ -1,4 +1,4 @@
-INSTALL - CUPS v1.5.4 - 2012-07-16
+INSTALL - CUPS v1.6.0 - 2012-07-16
----------------------------------
This file describes how to compile and install CUPS from source code. For more
@@ -6,7 +6,7 @@ information on CUPS see the file called "README.txt". A complete change log can
be found in "CHANGES.txt".
**** IF YOU HAVE A NON-POSTSCRIPT PRINTER AND ARE NOT ****
-**** RUNNING MAC OS X, YOU WILL ALSO NEED TO INSTALL GPL ****
+**** RUNNING OS X, YOU WILL ALSO NEED TO INSTALL GPL ****
**** GHOSTSCRIPT WITH THE "cups" DRIVER AFTER YOU INSTALL ****
**** CUPS. ****
@@ -34,7 +34,7 @@ BEFORE YOU BEGIN
PostScript filter needed by non-PostScript printers. You *must* download
GPL Ghostscript separately from the CUPS web site if you want to print
PostScript files to non-PostScript printers on operating systems other than
- Mac OS X.
+ OS X.
COMPILING THE SUBVERSION REPOSITORY CODE
diff --git a/IPPTOOL.txt b/IPPTOOL.txt
index db47e273..1d1fce70 100644
--- a/IPPTOOL.txt
+++ b/IPPTOOL.txt
@@ -1,14 +1,16 @@
-IPPTOOL.txt - 2011-09-20
+IPPTOOL.txt - 2012-02-06
------------------------
+See the file CHANGES-IPPTOOL.txt for a list of changes to this software.
+
INTRODUCTION
- Starting with CUPS 1.5, CUPS now installs a user program called ipptool that
- can be used to send arbitrary IPP requests to a CUPS server or IPP printer.
- This tool started life as part of the CUPS automated test suite and has
- grown to support complex conformance tests and a simple way to query
- printer, job, and subscription attributes.
+ CUPS includes a user program called ipptool that can be used to send
+ arbitrary IPP requests to a CUPS server or IPP printer. This tool started
+ life as part of the CUPS automated test suite and has grown to support
+ complex conformance tests and a simple way to query printer, job, and
+ subscription attributes.
BASIC USAGE
@@ -44,6 +46,22 @@ BASIC USAGE
75,pending-held,testfile.txt,msweet
+STANDARD TEST FILES
+
+ The following standard test files are included with ipptool:
+
+ create-printer-subscription.test Creates a printer subscription for
+ state change notifications
+ get-completed-jobs.test Shows a list of completed jobs
+ get-jobs.test Shows a list of pending jobs
+ get-printer-attributes.test Shows printer attributes
+ ipp-1.1.test IPP/1.1 conformance test suite
+ ipp-2.0.test IPP/2.0 conformance test suite
+ ipp-2.1.test IPP/2.1 conformance test suite
+ ipp-2.2.test IPP/2.2 conformance test suite
+ print-job.test Prints a file
+
+
CONFORMANCE TESTS
We provide basic IPP conformance tests for IPP/1.1, IPP/2.0, IPP/2.1, and
@@ -69,6 +87,29 @@ CONFORMANCE TESTS
onepage-a4.ps
onepage-letter.pdf
onepage-letter.ps
+ testfile.jpg
+ testfile.pcl
+ testfile.pdf
+ testfile.ps
+ testfile.txt
+
+ Useful options include the following:
+
+ -4 Connect using IPv4
+ -6 Connect using IPv6
+ -C Send chunked requests (default)
+ -d name=val Define a variable
+ -E Test IPP with HTTP Upgrade to TLS
+ -L Send requests using the Content-Length header (HTTP/1.0)
+ -S Test IPP over HTTPS (default for ipps: URIs)
+ -T seconds Set a timeout for responses in seconds
+ -v Be verbose, showing all attributes sent and received
+
+ The printer-uri must be a URI supported by the printer using the "ipp" or
+ "ipps" scheme, for example:
+
+ ipp://192.168.0.1/ipp
+ ipps://192.168.0.1/ipp/print
Print-by-reference (URL) printing can be tested by defining the document-uri
variable to a URL, for example:
@@ -78,7 +119,9 @@ CONFORMANCE TESTS
The standard test files are available on cups.org under the "test"
directory, for example:
- http://www.cups.org/test/document-a4.pdf
+ ipptool -tf document-a4.pdf \
+ -d document-uri=http://www.cups.org/test/document-a4.pdf \
+ ipp://192.168.0.1/ipp -I -V 2.0 ipp-2.0.test
The "document" test files contain 4 pages each. Doing the IPP conformance
tests will will produce up to 90 pages on various media, depending on the
@@ -88,7 +131,8 @@ CONFORMANCE TESTS
READING THE DOCUMENTATION
The command usage is described in the ipptest(1) man page, while the file
- format is described in the ipptestfile(5) man page.
+ format is described in the ipptestfile(5) man page. Both are provided in
+ HTML format with the standalone releases of ipptool.
GETTING SUPPORT AND OTHER RESOURCES
@@ -101,15 +145,40 @@ GETTING SUPPORT AND OTHER RESOURCES
See the CUPS web site at "http://www.cups.org/" for other resources.
+REPORTING BUGS
+
+ If you believe you have discovered a bug in ipptool, please fill out the
+ bug form at:
+
+ http://www.cups.org/str.php
+
+ Be sure to identify the version of CUPS and ipptool (if you downloaded the
+ standalone version) you are using, the printer (if any) and firmware
+ version, and include any files that apply.
+
+ If you downloaded the standalone version of ipptool, please also re-run the
+ test with debug logging enabled. Run the following commands on Windows to
+ enable debug logging:
+
+ setdebug.bat
+
+ For Linux and Mac OS X use:
+
+ CUPS_DEBUG_LOG=ipptool.log; export CUPS_DEBUG_LOG
+ CUPS_DEBUG_LEVEL=6; export CUPS_DEBUG_LEVEL
+
+ Then when you run the ipptool command a new "ipptool.log" file will be
+ created with detailed information - attach this file to the bug you file
+ as well.
+
+
LEGAL STUFF
- CUPS is Copyright 2007-2011 by Apple Inc. CUPS and the CUPS logo are
+ CUPS is Copyright 2007-2012 by Apple Inc. CUPS and the CUPS logo are
trademarks of Apple Inc.
The MD5 Digest code is Copyright 1999 Aladdin Enterprises.
- This software is based in part on the work of the Independent JPEG Group.
-
CUPS is provided under the terms of version 2 of the GNU General Public
License and GNU Library General Public License. This program is distributed
in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
diff --git a/LICENSE.txt b/LICENSE.txt
index 7d80518a..75c4a376 100644
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -1,6 +1,6 @@
CUPS License Agreement
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
1 Infinite Loop
Cupertino, CA 95014 USA
@@ -68,11 +68,11 @@ the following special exceptions:
source code of the Apple OS-Developed Software.
b. An Apple Operating System means any operating system
- software developed and/or marketed by Apple Computer,
- Inc., including but not limited to all existing
- releases and versions of Apple's Darwin, Mac OS X,
- and Mac OS X Server products and all follow-on
- releases and future versions thereof.
+ software developed and/or marketed by Apple Inc.,
+ including but not limited to all existing releases and
+ versions of Apple's Darwin, OS X, and OS X Server
+ products and all follow-on releases and future
+ versions thereof.
c. This exception is only available for Apple
OS-Developed Software and does not apply to software
diff --git a/Makedefs.in b/Makedefs.in
index db540b4b..95ea1d48 100644
--- a/Makedefs.in
+++ b/Makedefs.in
@@ -1,9 +1,9 @@
#
-# "$Id: Makedefs.in 10317 2012-03-01 00:05:55Z mike $"
+# "$Id: Makedefs.in 10497 2012-05-22 23:58:31Z mike $"
#
# Common makefile definitions for CUPS.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -24,13 +24,12 @@ CHMOD = @CHMOD@
CXX = @LIBTOOL@ @CXX@
DSO = @DSO@
DSOXX = @DSOXX@
-HTMLDOC = @HTMLDOC@
+GZIP = @GZIP@
INSTALL = @INSTALL@
LD = @LD@
LIBTOOL = @LIBTOOL@
LN = @LN@ -sf
MV = @MV@
-PHPCONFIG = @PHPCONFIG@
RANLIB = @RANLIB@
RM = @RM@ -f
RMDIR = @RMDIR@
@@ -42,8 +41,8 @@ SHELL = /bin/sh
#
INSTALL_BIN = $(LIBTOOL) $(INSTALL) -c -m 555 @INSTALL_STRIP@
-INSTALL_CONFIG = $(INSTALL) -c -m @CUPS_CONFIG_FILE_PERM@
INSTALL_COMPDATA = $(INSTALL) -c -m 444 @INSTALL_GZIP@
+INSTALL_CONFIG = $(INSTALL) -c -m @CUPS_CONFIG_FILE_PERM@
INSTALL_DATA = $(INSTALL) -c -m 444
INSTALL_DIR = $(INSTALL) -d
INSTALL_LIB = $(LIBTOOL) $(INSTALL) -c -m 555 @INSTALL_STRIP@
@@ -64,6 +63,7 @@ CUPS_PRIMARY_SYSTEM_GROUP = @CUPS_PRIMARY_SYSTEM_GROUP@
#
CUPS_CONFIG_FILE_PERM = @CUPS_CONFIG_FILE_PERM@
+CUPS_CUPSD_FILE_PERM = @CUPS_CUPSD_FILE_PERM@
CUPS_LOG_FILE_PERM = @CUPS_LOG_FILE_PERM@
#
@@ -80,19 +80,14 @@ UNINSTALL_LANGUAGES = @UNINSTALL_LANGUAGES@
LIBCUPS = @LIBCUPS@
LIBCUPSCGI = @LIBCUPSCGI@
-LIBCUPSDRIVER = @LIBCUPSDRIVER@
LIBCUPSIMAGE = @LIBCUPSIMAGE@
LIBCUPSMIME = @LIBCUPSMIME@
LIBCUPSPPDC = @LIBCUPSPPDC@
LIBCUPSSTATIC = @LIBCUPSSTATIC@
-LIBJPEG = @LIBJPEG@
-LIBLDAP = @LIBLDAP@
+LIBGSSAPI = @LIBGSSAPI@
LIBMALLOC = @LIBMALLOC@
+LIBMXML = @LIBMXML@
LIBPAPER = @LIBPAPER@
-LIBPNG = @LIBPNG@
-LIBSLP = @LIBSLP@
-LIBGSSAPI = @LIBGSSAPI@
-LIBTIFF = @LIBTIFF@
LIBUSB = @LIBUSB@
LIBWRAP = @LIBWRAP@
LIBZ = @LIBZ@
@@ -119,10 +114,6 @@ INSTALLXPC = @INSTALLXPC@
# Program options...
#
# ARCHFLAGS Defines the default architecture build options.
-# ARCH32FLAGS Defines the 32-bit architecture build options, used
-# when compiling separate 32/64-bit libraries.
-# ARCH64FLAGS Defines the 64-bit architecture build options, used
-# when compiling separate 32/64-bit libraries.
# OPTIM Defines the common compiler optimization/debugging options
# for all architectures.
# OPTIONS Defines other compile-time options (currently only -DDEBUG
@@ -136,7 +127,6 @@ ALL_CXXFLAGS = -I.. -D_CUPS_SOURCE $(CXXFLAGS) $(SSLFLAGS) \
ARCHFLAGS = @ARCHFLAGS@
ARFLAGS = @ARFLAGS@
BACKLIBS = @BACKLIBS@
-BANNERTOPS = @BANNERTOPS@
BUILDDIRS = @BUILDDIRS@
CFLAGS = @CPPFLAGS@ @CFLAGS@
COMMONLIBS = @LIBS@
@@ -148,52 +138,23 @@ DNSSD_BACKEND = @DNSSD_BACKEND@
DSOFLAGS = -L../cups @DSOFLAGS@
DSOLIBS = @DSOLIBS@ $(COMMONLIBS)
DNSSDLIBS = @DNSSDLIBS@
-FONTS = @FONTS@
-IMGLIBS = @IMGLIBS@
-IMGFILTERS = @IMGFILTERS@
LAUNCHDLIBS = @LAUNCHDLIBS@
LDFLAGS = -L../cgi-bin -L../cups -L../filter -L../ppdc \
-L../scheduler @LDARCHFLAGS@ \
@LDFLAGS@ @RELROFLAGS@ @PIEFLAGS@ $(OPTIM)
-LEGACY_BACKENDS = @LEGACY_BACKENDS@
LINKCUPS = @LINKCUPS@ $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(LIBZ)
LINKCUPSIMAGE = @LINKCUPSIMAGE@
LIBS = $(LINKCUPS) $(COMMONLIBS)
OPTIM = @OPTIM@
OPTIONS =
PAMLIBS = @PAMLIBS@
-PAP = @PAP@
-PDFTOPS = @PDFTOPS@
-PHPDIR = @PHPDIR@
-PHPOPTIONS = @PHPOPTIONS@ -I../.. `$(PHPCONFIG) --includes`
SERVERLIBS = @SERVERLIBS@
SSLFLAGS = @SSLFLAGS@
SSLLIBS = @SSLLIBS@
-TEXTTOPS = @TEXTTOPS@
UNITTESTS = @UNITTESTS@
#
-# Separate 32/64-bit library support...
-#
-
-ARCH32FLAGS = @ARCH32FLAGS@
-DSO32FLAGS = @DSO32FLAGS@
-INSTALL32 = @INSTALL32@
-LIB32CUPS = @LIB32CUPS@
-LIB32CUPSIMAGE = @LIB32CUPSIMAGE@
-LIB32DIR = $(BUILDROOT)@LIB32DIR@
-UNINSTALL32 = @UNINSTALL32@
-
-ARCH64FLAGS = @ARCH64FLAGS@
-DSO64FLAGS = @DSO64FLAGS@
-INSTALL64 = @INSTALL64@
-LIB64CUPS = @LIB64CUPS@
-LIB64CUPSIMAGE = @LIB64CUPSIMAGE@
-LIB64DIR = $(BUILDROOT)@LIB64DIR@
-UNINSTALL64 = @UNINSTALL64@
-
-#
# Directories...
#
# The first section uses the GNU names (which are *extremely*
@@ -275,20 +236,12 @@ DBUSDIR = @DBUSDIR@
#
.SILENT:
-.SUFFIXES: .1 .1.gz .1m .1m.gz .3 .3.gz .5 .5.gz .7 .7.gz .8 .8.gz .a .c .cxx .h .man .o .32.o .64.o .gz
+.SUFFIXES: .1 .1.gz .1m .1m.gz .3 .3.gz .5 .5.gz .7 .7.gz .8 .8.gz .a .c .cxx .h .man .o .gz
.c.o:
echo Compiling $<...
$(CC) $(ARCHFLAGS) $(OPTIM) $(ALL_CFLAGS) -c -o $@ $<
-.c.32.o:
- echo Compiling 32-bit $<...
- $(CC) $(ARCH32FLAGS) $(OPTIM) $(ALL_CFLAGS) -c -o $@ $<
-
-.c.64.o:
- echo Compiling 64-bit $<...
- $(CC) $(ARCH64FLAGS) $(OPTIM) $(ALL_CFLAGS) -c -o $@ $<
-
.cxx.o:
echo Compiling $<...
$(CXX) $(ARCHFLAGS) $(OPTIM) $(ALL_CXXFLAGS) -c -o $@ $<
@@ -305,5 +258,5 @@ DBUSDIR = @DBUSDIR@
#
-# End of "$Id: Makedefs.in 10317 2012-03-01 00:05:55Z mike $"
+# End of "$Id: Makedefs.in 10497 2012-05-22 23:58:31Z mike $"
#
diff --git a/Makefile b/Makefile
index 42c989b6..c96980c6 100644
--- a/Makefile
+++ b/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 9933 2011-08-29 21:19:27Z mike $"
+# "$Id: Makefile 10507 2012-05-23 22:39:50Z mike $"
#
# Top-level Makefile for CUPS.
#
-# Copyright 2007-2010 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -20,7 +20,7 @@ include Makedefs
# Directories to make...
#
-DIRS = cups test $(BUILDDIRS) $(PHPDIR) $(FONTS)
+DIRS = cups test $(BUILDDIRS)
#
@@ -234,7 +234,11 @@ test: all unittests
check: all unittests
echo Running CUPS test suite with defaults...
- cd test; ./run-stp-tests.sh 1 0 n
+ cd test; ./run-stp-tests.sh 1 0 n n
+
+debugcheck: all unittests
+ echo Running CUPS test suite with debug printfs...
+ cd test; ./run-stp-tests.sh 1 0 n y
#
@@ -242,13 +246,13 @@ check: all unittests
#
apihelp:
- for dir in cgi-bin cups filter driver ppdc scheduler; do\
+ for dir in cgi-bin cups filter ppdc scheduler; do\
echo Generating API help in $$dir... ;\
(cd $$dir; $(MAKE) $(MFLAGS) apihelp) || exit 1;\
done
framedhelp:
- for dir in cgi-bin cups filter driver ppdc scheduler; do\
+ for dir in cgi-bin cups filter ppdc scheduler; do\
echo Generating framed API help in $$dir... ;\
(cd $$dir; $(MAKE) $(MFLAGS) framedhelp) || exit 1;\
done
@@ -271,10 +275,10 @@ docset: apihelp
doc/help/api-*.tokens
$(RM) doc/help/api-*.tokens
echo Indexing docset...
- /Developer/usr/bin/docsetutil index org.cups.docset
+ /Applications/Xcode.app/Contents/Developer/usr/bin/docsetutil index org.cups.docset
echo Generating docset archive and feed...
$(RM) org.cups.docset.atom
- /Developer/usr/bin/docsetutil package --output org.cups.docset.xar \
+ /Applications/Xcode.app/Contents/Developer/usr/bin/docsetutil package --output org.cups.docset.xar \
--atom org.cups.docset.atom \
--download-url http://www.cups.org/org.cups.docset.xar \
org.cups.docset
@@ -326,5 +330,5 @@ dist: all
#
-# End of "$Id: Makefile 9933 2011-08-29 21:19:27Z mike $".
+# End of "$Id: Makefile 10507 2012-05-23 22:39:50Z mike $".
#
diff --git a/README.txt b/README.txt
index 8d786755..adf2f895 100644
--- a/README.txt
+++ b/README.txt
@@ -1,4 +1,4 @@
-README - CUPS v1.5.4 - 2012-07-16
+README - CUPS v1.6.0 - 2012-07-16
---------------------------------
Looking for compile instructions? Read the file "INSTALL.txt"
@@ -8,7 +8,7 @@ instead...
INTRODUCTION
CUPS is a standards-based, open source printing system developed by Apple
- Inc. for Mac OS® X and other UNIX®-like operating systems. CUPS uses the
+ Inc. for OS® X and other UNIX®-like operating systems. CUPS uses the
Internet Printing Protocol ("IPP") and provides System V and Berkeley
command-line interfaces, a web interface, and a C API to manage printers and
print jobs. It supports printing to both local (parallel, serial, USB) and
diff --git a/backend/Dependencies b/backend/Dependencies
index afc21fa9..eeb231a2 100644
--- a/backend/Dependencies
+++ b/backend/Dependencies
@@ -1,107 +1,70 @@
-# DO NOT DELETE THIS LINE -- make depend depends on it.
-
-ipp.o: backend-private.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ipp.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-ipp.o: ../cups/language.h ../cups/string-private.h ../config.h
-ipp.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-ipp.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-ipp.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-ipp.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-ipp.o: ../cups/transcode.h ../cups/thread-private.h ../cups/snmp-private.h
-ipp.o: ../cups/backend.h ../cups/sidechannel.h ../cups/array-private.h
-ipp.o: ../cups/array.h
-lpd.o: ../cups/http-private.h ../config.h ../cups/http.h
-lpd.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-lpd.o: backend-private.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lpd.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lpd.o: ../cups/language.h ../cups/string-private.h ../cups/debug-private.h
-lpd.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-lpd.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-lpd.o: ../cups/language-private.h ../cups/transcode.h
-lpd.o: ../cups/thread-private.h ../cups/snmp-private.h ../cups/backend.h
-lpd.o: ../cups/sidechannel.h
-dnssd.o: backend-private.h ../cups/cups-private.h ../cups/cups.h
-dnssd.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-dnssd.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-dnssd.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-dnssd.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-dnssd.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-dnssd.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-dnssd.o: ../cups/language-private.h ../cups/transcode.h
-dnssd.o: ../cups/thread-private.h ../cups/snmp-private.h ../cups/backend.h
-dnssd.o: ../cups/sidechannel.h ../cups/array.h
-parallel.o: backend-private.h ../cups/cups-private.h ../cups/cups.h
-parallel.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-parallel.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-parallel.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-parallel.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-parallel.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-parallel.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-parallel.o: ../cups/language-private.h ../cups/transcode.h
-parallel.o: ../cups/thread-private.h ../cups/snmp-private.h ../cups/backend.h
-parallel.o: ../cups/sidechannel.h
-serial.o: backend-private.h ../cups/cups-private.h ../cups/cups.h
-serial.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-serial.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-serial.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-serial.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-serial.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-serial.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-serial.o: ../cups/language-private.h ../cups/transcode.h
-serial.o: ../cups/thread-private.h ../cups/snmp-private.h ../cups/backend.h
-serial.o: ../cups/sidechannel.h
-snmp.o: backend-private.h ../cups/cups-private.h ../cups/cups.h
-snmp.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-snmp.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-snmp.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-snmp.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-snmp.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-snmp.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-snmp.o: ../cups/language-private.h ../cups/transcode.h
-snmp.o: ../cups/thread-private.h ../cups/snmp-private.h ../cups/backend.h
-snmp.o: ../cups/sidechannel.h ../cups/array.h ../cups/file.h
-snmp.o: ../cups/http-private.h
-socket.o: ../cups/http-private.h ../config.h ../cups/http.h
-socket.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-socket.o: backend-private.h ../cups/cups-private.h ../cups/cups.h
-socket.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-socket.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-socket.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-socket.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-socket.o: ../cups/http-private.h ../cups/language-private.h
-socket.o: ../cups/transcode.h ../cups/thread-private.h ../cups/snmp-private.h
-socket.o: ../cups/backend.h ../cups/sidechannel.h
-test1284.o: ../cups/string-private.h ../config.h ieee1284.c backend-private.h
-test1284.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-test1284.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-test1284.o: ../cups/language.h ../cups/string-private.h
-test1284.o: ../cups/debug-private.h ../cups/versioning.h
-test1284.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-test1284.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-test1284.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-test1284.o: ../cups/language-private.h ../cups/transcode.h
-test1284.o: ../cups/thread-private.h ../cups/snmp-private.h ../cups/backend.h
-test1284.o: ../cups/sidechannel.h
-testbackend.o: ../cups/string-private.h ../config.h ../cups/cups.h
-testbackend.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-testbackend.o: ../cups/http.h ../cups/array.h ../cups/language.h
-testbackend.o: ../cups/sidechannel.h
-testsupplies.o: backend-private.h ../cups/cups-private.h ../cups/cups.h
-testsupplies.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-testsupplies.o: ../cups/http.h ../cups/array.h ../cups/language.h
-testsupplies.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-testsupplies.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-testsupplies.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-testsupplies.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-testsupplies.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-testsupplies.o: ../cups/thread-private.h ../cups/snmp-private.h
-testsupplies.o: ../cups/backend.h ../cups/sidechannel.h
-usb.o: backend-private.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-usb.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-usb.o: ../cups/language.h ../cups/string-private.h ../config.h
-usb.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-usb.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-usb.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-usb.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-usb.o: ../cups/transcode.h ../cups/thread-private.h ../cups/snmp-private.h
-usb.o: ../cups/backend.h ../cups/sidechannel.h
+ipp.o: ipp.c backend-private.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h \
+ ../cups/array-private.h
+lpd.o: lpd.c ../cups/http-private.h ../config.h ../cups/http.h \
+ ../cups/versioning.h ../cups/array.h ../cups/md5-private.h \
+ ../cups/ipp-private.h ../cups/ipp.h backend-private.h \
+ ../cups/cups-private.h ../cups/string-private.h \
+ ../cups/debug-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h
+dnssd.o: dnssd.c backend-private.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h
+snmp.o: snmp.c backend-private.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h
+socket.o: socket.c ../cups/http-private.h ../config.h ../cups/http.h \
+ ../cups/versioning.h ../cups/array.h ../cups/md5-private.h \
+ ../cups/ipp-private.h ../cups/ipp.h backend-private.h \
+ ../cups/cups-private.h ../cups/string-private.h \
+ ../cups/debug-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h
+test1284.o: test1284.c ../cups/string-private.h ../config.h ieee1284.c \
+ backend-private.h ../cups/cups-private.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h
+testbackend.o: testbackend.c ../cups/string-private.h ../config.h \
+ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/language.h \
+ ../cups/sidechannel.h
+testsupplies.o: testsupplies.c backend-private.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h
+usb.o: usb.c backend-private.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h \
+ usb-darwin.c ../cups/file-private.h
diff --git a/backend/Makefile b/backend/Makefile
index 643ee0cd..e55827df 100644
--- a/backend/Makefile
+++ b/backend/Makefile
@@ -1,5 +1,5 @@
#
-# "$Id: Makefile 10425 2012-04-23 17:42:12Z mike $"
+# "$Id: Makefile 10402 2012-04-12 22:54:51Z mike $"
#
# Backend makefile for CUPS.
#
@@ -21,13 +21,43 @@ include ../Makedefs
# Object files...
#
-RBACKENDS = ipp lpd $(DNSSD_BACKEND)
-UBACKENDS = $(LEGACY_BACKENDS) serial snmp socket usb
-UNITTESTS = test1284 testbackend testsupplies
-TARGETS = libbackend.a $(RBACKENDS) $(UBACKENDS)
-LIBOBJS = ieee1284.o network.o runloop.o snmp-supplies.o
-OBJS = ipp.o lpd.o dnssd.o parallel.o serial.o snmp.o \
- socket.o test1284.o testbackend.o testsupplies.o usb.o
+# RBACKENDS are installed mode 0700 so cupsd will run them as root...
+#
+# UBACKENDS are installed mode 0755 so cupsd will run them as an unprivileged
+# user...
+#
+# See http://www.cups.org/documentation.php/api-filter.html for more info...
+RBACKENDS = \
+ ipp \
+ lpd \
+ $(DNSSD_BACKEND)
+UBACKENDS = \
+ snmp \
+ socket \
+ usb
+UNITTESTS = \
+ test1284 \
+ testbackend \
+ testsupplies
+TARGETS = \
+ libbackend.a \
+ $(RBACKENDS) \
+ $(UBACKENDS)
+LIBOBJS = \
+ ieee1284.o \
+ network.o \
+ runloop.o \
+ snmp-supplies.o
+OBJS = \
+ ipp.o \
+ lpd.o \
+ dnssd.o \
+ snmp.o \
+ socket.o \
+ test1284.o \
+ testbackend.o \
+ testsupplies.o \
+ usb.o
#
@@ -56,7 +86,7 @@ unittests: $(UNITTESTS)
#
clean:
- $(RM) $(OBJS) $(TARGETS) $(UNITTESTS) $(LIBOBJS) http mdns
+ $(RM) $(OBJS) $(TARGETS) $(UNITTESTS) $(LIBOBJS) http https ipps mdns
#
@@ -64,7 +94,7 @@ clean:
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
@@ -98,7 +128,7 @@ install-exec: $(INSTALLXPC)
$(RM) $(SERVERBIN)/backend/$$file; \
$(LN) ipp $(SERVERBIN)/backend/$$file; \
done
- if test "x$(DNSSD_BACKEND)" != x -a `uname` = Darwin; then \
+ if test "x$(DNSSD_BACKEND)" != x; then \
$(RM) $(SERVERBIN)/backend/mdns; \
$(LN) $(DNSSD_BACKEND) $(SERVERBIN)/backend/mdns; \
fi
@@ -227,24 +257,6 @@ lpd: lpd.o ../cups/$(LIBCUPS) libbackend.a
#
-# parallel
-#
-
-parallel: parallel.o ../cups/$(LIBCUPS) libbackend.a
- echo Linking $@...
- $(CC) $(LDFLAGS) -o parallel parallel.o libbackend.a $(LIBS)
-
-
-#
-# serial
-#
-
-serial: serial.o ../cups/$(LIBCUPS) libbackend.a
- echo Linking $@...
- $(CC) $(LDFLAGS) -o serial serial.o libbackend.a $(BACKLIBS) $(LIBS)
-
-
-#
# snmp
#
@@ -281,5 +293,5 @@ include Dependencies
#
-# End of "$Id: Makefile 10425 2012-04-23 17:42:12Z mike $".
+# End of "$Id: Makefile 10402 2012-04-12 22:54:51Z mike $".
#
diff --git a/backend/backend-private.h b/backend/backend-private.h
index d3f8f514..fa829141 100644
--- a/backend/backend-private.h
+++ b/backend/backend-private.h
@@ -1,9 +1,9 @@
/*
- * "$Id: backend-private.h 10064 2011-10-07 21:41:07Z mike $"
+ * "$Id: backend-private.h 10329 2012-03-05 23:18:31Z mike $"
*
* Backend support definitions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -259,6 +259,20 @@ extern "C" {
#define CUPS_TC_inserts 33
#define CUPS_TC_covers 34
+#define CUPS_TC_tenThousandthsOfInches 3
+#define CUPS_TC_micrometers 4
+#define CUPS_TC_impressions 7
+#define CUPS_TC_sheets 8
+#define CUPS_TC_hours 11
+#define CUPS_TC_thousandthsOfOunces 12
+#define CUPS_TC_tenthsOfGrams 13
+#define CUPS_TC_hundrethsOfFluidOunces 14
+#define CUPS_TC_tenthsOfMilliliters 15
+#define CUPS_TC_feet 16
+#define CUPS_TC_meters 17
+#define CUPS_TC_items 18
+#define CUPS_TC_percent 19
+
/* These come from RFC 3808 to define character sets we support */
/* Also see http://www.iana.org/assignments/character-sets */
#define CUPS_TC_csASCII 3
@@ -320,5 +334,5 @@ extern int backendWaitLoop(int snmp_fd, http_addr_t *addr,
/*
- * End of "$Id: backend-private.h 10064 2011-10-07 21:41:07Z mike $".
+ * End of "$Id: backend-private.h 10329 2012-03-05 23:18:31Z mike $".
*/
diff --git a/backend/dnssd.c b/backend/dnssd.c
index 02c78754..1d6eb7ea 100644
--- a/backend/dnssd.c
+++ b/backend/dnssd.c
@@ -1,5 +1,5 @@
/*
- * "$Id: dnssd.c 10379 2012-03-23 22:16:22Z mike $"
+ * "$Id: dnssd.c 10489 2012-05-21 16:05:58Z mike $"
*
* DNS-SD discovery backend for CUPS.
*
@@ -15,16 +15,19 @@
*
* Contents:
*
- * main() - Browse for printers.
- * browse_callback() - Browse devices.
+ * main() - Browse for printers.
+ * browse_callback() - Browse devices.
* browse_local_callback() - Browse local devices.
- * compare_devices() - Compare two devices.
- * exec_backend() - Execute the backend that corresponds to the
- * resolved service name.
- * get_device() - Create or update a device.
- * query_callback() - Process query data.
- * sigterm_handler() - Handle termination signals...
- * unquote() - Unquote a name string.
+ * client_callback() - Avahi client callback function.
+ * compare_devices() - Compare two devices.
+ * exec_backend() - Execute the backend that corresponds to the
+ * resolved service name.
+ * device_type() - Get DNS-SD type enumeration from string.
+ * get_device() - Create or update a device.
+ * query_callback() - Process query data.
+ * find_device() - Find a device from its name and domain.
+ * sigterm_handler() - Handle termination signals.
+ * unquote() - Unquote a name string.
*/
/*
@@ -33,7 +36,18 @@
#include "backend-private.h"
#include <cups/array.h>
-#include <dns_sd.h>
+#ifdef HAVE_DNSSD
+# include <dns_sd.h>
+#endif /* HAVE_DNSSD */
+#ifdef HAVE_AVAHI
+# include <avahi-client/client.h>
+# include <avahi-client/lookup.h>
+# include <avahi-common/simple-watch.h>
+# include <avahi-common/domain.h>
+# include <avahi-common/error.h>
+# include <avahi-common/malloc.h>
+#define kDNSServiceMaxDomainName AVAHI_DOMAIN_NAME_MAX
+#endif /* HAVE_AVAHI */
/*
@@ -53,7 +67,12 @@ typedef enum
typedef struct
{
- DNSServiceRef ref; /* Service reference for resolve */
+#ifdef HAVE_DNSSD
+ DNSServiceRef ref; /* Service reference for query */
+#endif /* HAVE_DNSSD */
+#ifdef HAVE_AVAHI
+ AvahiRecordBrowser *ref; /* Browser for query */
+#endif /* HAVE_AVAHI */
char *name, /* Service name */
*domain, /* Domain name */
*fullName, /* Full name */
@@ -72,12 +91,18 @@ typedef struct
static int job_canceled = 0;
/* Set to 1 on SIGTERM */
+#ifdef HAVE_AVAHI
+static AvahiSimplePoll *simple_poll = NULL;
+ /* Poll information */
+static int got_data = 0; /* Got data from poll? */
+#endif /* HAVE_AVAHI */
/*
* Local functions...
*/
+#ifdef HAVE_DNSSD
static void browse_callback(DNSServiceRef sdRef,
DNSServiceFlags flags,
uint32_t interfaceIndex,
@@ -95,6 +120,22 @@ static void browse_local_callback(DNSServiceRef sdRef,
const char *replyDomain,
void *context)
__attribute__((nonnull(1,5,6,7,8)));
+#endif /* HAVE_DNSSD */
+#ifdef HAVE_AVAHI
+static void browse_callback(AvahiServiceBrowser *browser,
+ AvahiIfIndex interface,
+ AvahiProtocol protocol,
+ AvahiBrowserEvent event,
+ const char *serviceName,
+ const char *regtype,
+ const char *replyDomain,
+ AvahiLookupResultFlags flags,
+ void *context);
+static void client_callback(AvahiClient *client,
+ AvahiClientState state,
+ void *context);
+#endif /* HAVE_AVAHI */
+
static int compare_devices(cups_device_t *a, cups_device_t *b);
static void exec_backend(char **argv);
static cups_device_t *get_device(cups_array_t *devices,
@@ -102,6 +143,7 @@ static cups_device_t *get_device(cups_array_t *devices,
const char *regtype,
const char *replyDomain)
__attribute__((nonnull(1,2,3,4)));
+#ifdef HAVE_DNSSD
static void query_callback(DNSServiceRef sdRef,
DNSServiceFlags flags,
uint32_t interfaceIndex,
@@ -111,6 +153,20 @@ static void query_callback(DNSServiceRef sdRef,
const void *rdata, uint32_t ttl,
void *context)
__attribute__((nonnull(1,5,9,11)));
+#elif defined(HAVE_AVAHI)
+static int poll_callback(struct pollfd *pollfds,
+ unsigned int num_pollfds, int timeout,
+ void *context);
+static void query_callback(AvahiRecordBrowser *browser,
+ AvahiIfIndex interface,
+ AvahiProtocol protocol,
+ AvahiBrowserEvent event,
+ const char *name, uint16_t rrclass,
+ uint16_t rrtype, const void *rdata,
+ size_t rdlen,
+ AvahiLookupResultFlags flags,
+ void *context);
+#endif /* HAVE_DNSSD */
static void sigterm_handler(int sig);
static void unquote(char *dst, const char *src, size_t dstsize)
__attribute__((nonnull(1,2)));
@@ -125,6 +181,13 @@ main(int argc, /* I - Number of command-line args */
char *argv[]) /* I - Command-line arguments */
{
const char *name; /* Backend name */
+ cups_array_t *devices; /* Device array */
+ cups_device_t *device; /* Current device */
+ char uriName[1024]; /* Unquoted fullName for URI */
+#ifdef HAVE_DNSSD
+ int fd; /* Main file descriptor */
+ fd_set input; /* Input set for select() */
+ struct timeval timeout; /* Timeout for select() */
DNSServiceRef main_ref, /* Main service reference */
fax_ipp_ref, /* IPP fax service reference */
ipp_ref, /* IPP service reference */
@@ -138,12 +201,11 @@ main(int argc, /* I - Number of command-line args */
pdl_datastream_ref, /* AppSocket service reference */
printer_ref, /* LPD service reference */
riousbprint_ref; /* Remote IO service reference */
- int fd; /* Main file descriptor */
- fd_set input; /* Input set for select() */
- struct timeval timeout; /* Timeout for select() */
- cups_array_t *devices; /* Device array */
- cups_device_t *device; /* Current device */
- char uriName[1024]; /* Unquoted fullName for URI */
+#endif /* HAVE_DNSSD */
+#ifdef HAVE_AVAHI
+ AvahiClient *client; /* Client information */
+ int error; /* Error code, if any */
+#endif /* HAVE_AVAHI */
#if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
struct sigaction action; /* Actions for POSIX signals */
#endif /* HAVE_SIGACTION && !HAVE_SIGSET */
@@ -203,6 +265,7 @@ main(int argc, /* I - Number of command-line args */
* Browse for different kinds of printers...
*/
+#ifdef HAVE_DNSSD
if (DNSServiceCreateConnection(&main_ref) != kDNSServiceErr_NoError)
{
perror("ERROR: Unable to create service connection");
@@ -263,6 +326,52 @@ main(int argc, /* I - Number of command-line args */
riousbprint_ref = main_ref;
DNSServiceBrowse(&riousbprint_ref, kDNSServiceFlagsShareConnection, 0,
"_riousbprint._tcp", NULL, browse_callback, devices);
+#endif /* HAVE_DNSSD */
+
+#ifdef HAVE_AVAHI
+ if ((simple_poll = avahi_simple_poll_new()) == NULL)
+ {
+ fputs("DEBUG: Unable to create Avahi simple poll object.\n", stderr);
+ return (1);
+ }
+
+ avahi_simple_poll_set_func(simple_poll, poll_callback, NULL);
+
+ client = avahi_client_new(avahi_simple_poll_get(simple_poll),
+ 0, client_callback, simple_poll, &error);
+ if (!client)
+ {
+ fputs("DEBUG: Unable to create Avahi client.\n", stderr);
+ return (1);
+ }
+
+ avahi_service_browser_new(client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC,
+ "_fax-ipp._tcp", NULL, 0,
+ browse_callback, devices);
+ avahi_service_browser_new(client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC,
+ "_ipp._tcp", NULL, 0,
+ browse_callback, devices);
+ avahi_service_browser_new(client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC,
+ "_ipp-tls._tcp", NULL, 0,
+ browse_callback, devices);
+ avahi_service_browser_new(client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC,
+ "_ipps._tcp", NULL, 0,
+ browse_callback, devices);
+ avahi_service_browser_new(client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC,
+ "_pdl-datastream._tcp",
+ NULL, 0,
+ browse_callback,
+ devices);
+ avahi_service_browser_new(client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC,
+ "_printer._tcp", NULL, 0,
+ browse_callback, devices);
+#endif /* HAVE_AVAHI */
/*
* Loop until we are killed...
@@ -270,11 +379,14 @@ main(int argc, /* I - Number of command-line args */
while (!job_canceled)
{
+ int announce = 0; /* Announce printers? */
+
+#ifdef HAVE_DNSSD
FD_ZERO(&input);
FD_SET(fd, &input);
timeout.tv_sec = 0;
- timeout.tv_usec = 250000;
+ timeout.tv_usec = 500000;
if (select(fd + 1, &input, NULL, NULL, &timeout) < 0)
continue;
@@ -288,12 +400,36 @@ main(int argc, /* I - Number of command-line args */
DNSServiceProcessResult(main_ref);
}
else
+ announce = 1;
+
+#elif defined(HAVE_AVAHI)
+ got_data = 0;
+
+ if ((error = avahi_simple_poll_iterate(simple_poll, 500)) > 0)
+ {
+ /*
+ * We've been told to exit the loop. Perhaps the connection to
+ * Avahi failed.
+ */
+
+ break;
+ }
+
+ if (!got_data)
+ announce = 1;
+#endif /* HAVE_DNSSD */
+
+/* fprintf(stderr, "DEBUG: announce=%d\n", announce);*/
+
+ if (announce)
{
/*
* Announce any devices we've found...
*/
+#ifdef HAVE_DNSSD
DNSServiceErrorType status; /* DNS query status */
+#endif /* HAVE_DNSSD */
cups_device_t *best; /* Best matching device */
char device_uri[1024]; /* Device URI */
int count; /* Number of queries */
@@ -316,36 +452,59 @@ main(int argc, /* I - Number of command-line args */
* Found the device, now get the TXT record(s) for it...
*/
- if (count < 20)
+ if (count < 50)
{
- device->ref = main_ref;
-
fprintf(stderr, "DEBUG: Querying \"%s\"...\n", device->fullName);
+#ifdef HAVE_DNSSD
+ device->ref = main_ref;
+
status = DNSServiceQueryRecord(&(device->ref),
kDNSServiceFlagsShareConnection,
0, device->fullName,
kDNSServiceType_TXT,
kDNSServiceClass_IN, query_callback,
- devices);
+ device);
if (status != kDNSServiceErr_NoError)
- {
- fputs("ERROR: Unable to query for TXT records!\n", stderr);
- fprintf(stderr, "DEBUG: DNSServiceQueryRecord returned %d\n",
- status);
- }
+ fprintf(stderr,
+ "ERROR: Unable to query \"%s\" for TXT records: %d\n",
+ device->fullName, status);
+ /* Users never see this */
else
count ++;
+
+#else
+ if ((device->ref = avahi_record_browser_new(client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC,
+ device->fullName,
+ AVAHI_DNS_CLASS_IN,
+ AVAHI_DNS_TYPE_TXT,
+ 0,
+ query_callback,
+ device)) == NULL)
+ fprintf(stderr,
+ "ERROR: Unable to query \"%s\" for TXT records: %s\n",
+ device->fullName,
+ avahi_strerror(avahi_client_errno(client)));
+ /* Users never see this */
+ else
+ count ++;
+#endif /* HAVE_AVAHI */
}
}
else if (!device->sent)
{
+#ifdef HAVE_DNSSD
/*
* Got the TXT records, now report the device...
*/
DNSServiceRefDeallocate(device->ref);
- device->ref = 0;
+#else
+ avahi_record_browser_free(device->ref);
+#endif /* HAVE_DNSSD */
+
+ device->ref = NULL;
if (!best)
best = device;
@@ -397,6 +556,8 @@ main(int argc, /* I - Number of command-line args */
sent ++;
}
+ fprintf(stderr, "DEBUG: sent=%d, count=%d\n", sent, count);
+
if (sent == cupsArrayCount(devices))
break;
}
@@ -406,6 +567,7 @@ main(int argc, /* I - Number of command-line args */
}
+#ifdef HAVE_DNSSD
/*
* 'browse_callback()' - Browse devices.
*/
@@ -425,10 +587,7 @@ browse_callback(
"interfaceIndex=%d, errorCode=%d, serviceName=\"%s\", "
"regtype=\"%s\", replyDomain=\"%s\", context=%p)\n",
sdRef, flags, interfaceIndex, errorCode,
- serviceName ? serviceName : "(null)",
- regtype ? regtype : "(null)",
- replyDomain ? replyDomain : "(null)",
- context);
+ serviceName, regtype, replyDomain, context);
/*
* Only process "add" data...
@@ -467,10 +626,7 @@ browse_local_callback(
"interfaceIndex=%d, errorCode=%d, serviceName=\"%s\", "
"regtype=\"%s\", replyDomain=\"%s\", context=%p)\n",
sdRef, flags, interfaceIndex, errorCode,
- serviceName ? serviceName : "(null)",
- regtype ? regtype : "(null)",
- replyDomain ? replyDomain : "(null)",
- context);
+ serviceName, regtype, replyDomain, context);
/*
* Only process "add" data...
@@ -494,6 +650,97 @@ browse_local_callback(
device->fullName);
device->sent = 1;
}
+#endif /* HAVE_DNSSD */
+
+
+#ifdef HAVE_AVAHI
+/*
+ * 'browse_callback()' - Browse devices.
+ */
+
+static void
+browse_callback(
+ AvahiServiceBrowser *browser, /* I - Browser */
+ AvahiIfIndex interface, /* I - Interface index (unused) */
+ AvahiProtocol protocol, /* I - Network protocol (unused) */
+ AvahiBrowserEvent event, /* I - What happened */
+ const char *name, /* I - Service name */
+ const char *type, /* I - Registration type */
+ const char *domain, /* I - Domain */
+ AvahiLookupResultFlags flags, /* I - Flags */
+ void *context) /* I - Devices array */
+{
+ AvahiClient *client = avahi_service_browser_get_client(browser);
+ /* Client information */
+
+
+ (void)interface;
+ (void)protocol;
+ (void)context;
+
+ switch (event)
+ {
+ case AVAHI_BROWSER_FAILURE:
+ fprintf(stderr, "DEBUG: browse_callback: %s\n",
+ avahi_strerror(avahi_client_errno(client)));
+ avahi_simple_poll_quit(simple_poll);
+ break;
+
+ case AVAHI_BROWSER_NEW:
+ /*
+ * This object is new on the network.
+ */
+
+ if (flags & AVAHI_LOOKUP_RESULT_LOCAL)
+ {
+ /*
+ * This comes from the local machine so ignore it.
+ */
+
+ fprintf(stderr, "DEBUG: Ignoring local service %s.\n", name);
+ }
+ else
+ {
+ /*
+ * Create a device entry for it if it doesn't yet exist.
+ */
+
+ get_device((cups_array_t *)context, name, type, domain);
+ }
+ break;
+
+ case AVAHI_BROWSER_REMOVE:
+ case AVAHI_BROWSER_ALL_FOR_NOW:
+ case AVAHI_BROWSER_CACHE_EXHAUSTED:
+ break;
+ }
+}
+
+
+/*
+ * 'client_callback()' - Avahi client callback function.
+ */
+
+static void
+client_callback(
+ AvahiClient *client, /* I - Client information (unused) */
+ AvahiClientState state, /* I - Current state */
+ void *context) /* I - User data (unused) */
+{
+ (void)client;
+ (void)context;
+
+ /*
+ * If the connection drops, quit.
+ */
+
+ if (state == AVAHI_CLIENT_FAILURE)
+ {
+ fputs("DEBUG: Avahi connection failed.\n", stderr);
+ avahi_simple_poll_quit(simple_poll);
+ }
+}
+#endif /* HAVE_AVAHI */
/*
@@ -574,6 +821,41 @@ exec_backend(char **argv) /* I - Command-line arguments */
/*
+ * 'device_type()' - Get DNS-SD type enumeration from string.
+ */
+
+static int
+device_type(const char *regtype)
+{
+#ifdef HAVE_AVAHI
+ if (!strcmp(regtype, "_ipp._tcp"))
+ return (CUPS_DEVICE_IPP);
+ else if (!strcmp(regtype, "_ipps._tcp") ||
+ !strcmp(regtype, "_ipp-tls._tcp"))
+ return (CUPS_DEVICE_IPPS);
+ else if (!strcmp(regtype, "_fax-ipp._tcp"))
+ return (CUPS_DEVICE_FAX_IPP);
+ else if (!strcmp(regtype, "_printer._tcp"))
+ return (CUPS_DEVICE_PDL_DATASTREAM);
+#else
+ if (!strcmp(regtype, "_ipp._tcp."))
+ return (CUPS_DEVICE_IPP);
+ else if (!strcmp(regtype, "_ipps._tcp.") ||
+ !strcmp(regtype, "_ipp-tls._tcp."))
+ return (CUPS_DEVICE_IPPS);
+ else if (!strcmp(regtype, "_fax-ipp._tcp."))
+ return (CUPS_DEVICE_FAX_IPP);
+ else if (!strcmp(regtype, "_printer._tcp."))
+ return (CUPS_DEVICE_PRINTER);
+ else if (!strcmp(regtype, "_pdl-datastream._tcp."))
+ return (CUPS_DEVICE_PDL_DATASTREAM);
+#endif /* HAVE_AVAHI */
+
+ return (CUPS_DEVICE_RIOUSBPRINT);
+}
+
+
+/*
* 'get_device()' - Create or update a device.
*/
@@ -594,20 +876,7 @@ get_device(cups_array_t *devices, /* I - Device array */
*/
key.name = (char *)serviceName;
-
- if (!strcmp(regtype, "_ipp._tcp."))
- key.type = CUPS_DEVICE_IPP;
- else if (!strcmp(regtype, "_ipps._tcp.") ||
- !strcmp(regtype, "_ipp-tls._tcp."))
- key.type = CUPS_DEVICE_IPPS;
- else if (!strcmp(regtype, "_fax-ipp._tcp."))
- key.type = CUPS_DEVICE_FAX_IPP;
- else if (!strcmp(regtype, "_printer._tcp."))
- key.type = CUPS_DEVICE_PRINTER;
- else if (!strcmp(regtype, "_pdl-datastream._tcp."))
- key.type = CUPS_DEVICE_PDL_DATASTREAM;
- else
- key.type = CUPS_DEVICE_RIOUSBPRINT;
+ key.type = device_type(regtype);
for (device = cupsArrayFind(devices, &key);
device;
@@ -627,8 +896,14 @@ get_device(cups_array_t *devices, /* I - Device array */
free(device->domain);
device->domain = strdup(replyDomain);
+#ifdef HAVE_DNSSD
DNSServiceConstructFullName(fullName, device->name, regtype,
replyDomain);
+#else /* HAVE_AVAHI */
+ avahi_service_name_join(fullName, kDNSServiceMaxDomainName,
+ serviceName, regtype, replyDomain);
+#endif /* HAVE_DNSSD */
+
free(device->fullName);
device->fullName = strdup(fullName);
}
@@ -655,13 +930,55 @@ get_device(cups_array_t *devices, /* I - Device array */
* Set the "full name" of this service, which is used for queries...
*/
+#ifdef HAVE_DNSSD
DNSServiceConstructFullName(fullName, serviceName, regtype, replyDomain);
+#else /* HAVE_AVAHI */
+ avahi_service_name_join(fullName, kDNSServiceMaxDomainName,
+ serviceName, regtype, replyDomain);
+#endif /* HAVE_DNSSD */
+
device->fullName = strdup(fullName);
return (device);
}
+#ifdef HAVE_AVAHI
+/*
+ * 'poll_callback()' - Wait for input on the specified file descriptors.
+ *
+ * Note: This function is needed because avahi_simple_poll_iterate is broken
+ * and always uses a timeout of 0 (!) milliseconds.
+ * (Avahi Ticket #364)
+ */
+
+static int /* O - Number of file descriptors matching */
+poll_callback(
+ struct pollfd *pollfds, /* I - File descriptors */
+ unsigned int num_pollfds, /* I - Number of file descriptors */
+ int timeout, /* I - Timeout in milliseconds (unused) */
+ void *context) /* I - User data (unused) */
+{
+ int val; /* Return value */
+
+
+ (void)timeout;
+ (void)context;
+
+ val = poll(pollfds, num_pollfds, 500);
+
+ if (val < 0)
+ fprintf(stderr, "DEBUG: poll_callback: %s\n", strerror(errno));
+ else if (val > 0)
+ got_data = 1;
+
+ return (val);
+}
+#endif /* HAVE_AVAHI */
+
+
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+# ifdef HAVE_DNSSD
/*
* 'query_callback()' - Process query data.
*/
@@ -678,15 +995,46 @@ query_callback(
uint16_t rdlen, /* I - Length of record data */
const void *rdata, /* I - Record data */
uint32_t ttl, /* I - Time-to-live */
- void *context) /* I - Devices array */
+ void *context) /* I - Device */
{
- cups_array_t *devices; /* Device array */
- char name[1024], /* Service name */
- *ptr; /* Pointer into string */
- cups_device_t dkey, /* Search key */
- *device; /* Device */
-
+# else
+/*
+ * 'query_callback()' - Process query data.
+ */
+static void
+query_callback(
+ AvahiRecordBrowser *browser, /* I - Record browser */
+ AvahiIfIndex interfaceIndex,
+ /* I - Interface index (unused) */
+ AvahiProtocol protocol, /* I - Network protocol (unused) */
+ AvahiBrowserEvent event, /* I - What happened? */
+ const char *fullName, /* I - Service name */
+ uint16_t rrclass, /* I - Record class */
+ uint16_t rrtype, /* I - Record type */
+ const void *rdata, /* I - TXT record */
+ size_t rdlen, /* I - Length of TXT record */
+ AvahiLookupResultFlags flags, /* I - Flags */
+ void *context) /* I - Device */
+{
+ AvahiClient *client = avahi_record_browser_get_client(browser);
+ /* Client information */
+# endif /* HAVE_DNSSD */
+ char *ptr; /* Pointer into string */
+ cups_device_t *device = (cups_device_t *)context;
+ /* Device */
+ const uint8_t *data, /* Pointer into data */
+ *datanext, /* Next key/value pair */
+ *dataend; /* End of entire TXT record */
+ uint8_t datalen; /* Length of current key/value pair */
+ char key[256], /* Key string */
+ value[256], /* Value string */
+ make_and_model[512], /* Manufacturer and model */
+ model[256], /* Model */
+ device_id[2048]; /* 1284 device ID */
+
+
+# ifdef HAVE_DNSSD
fprintf(stderr, "DEBUG2: query_callback(sdRef=%p, flags=%x, "
"interfaceIndex=%d, errorCode=%d, fullName=\"%s\", "
"rrtype=%u, rrclass=%u, rdlen=%u, rdata=%p, ttl=%u, "
@@ -702,221 +1050,183 @@ query_callback(
if (errorCode != kDNSServiceErr_NoError || !(flags & kDNSServiceFlagsAdd))
return;
+# else
+ fprintf(stderr, "DEBUG2: query_callback(browser=%p, interfaceIndex=%d, "
+ "protocol=%d, event=%d, fullName=\"%s\", rrclass=%u, "
+ "rrtype=%u, rdata=%p, rdlen=%u, flags=%x, context=%p)\n",
+ browser, interfaceIndex, protocol, event,
+ fullName ? fullName : "(null)", rrclass, rrtype, rdata,
+ (unsigned)rdlen, flags, context);
+
/*
- * Lookup the service in the devices array.
+ * Only process "add" data...
*/
- devices = (cups_array_t *)context;
- dkey.name = name;
+ if (event != AVAHI_BROWSER_NEW)
+ {
+ if (event == AVAHI_BROWSER_FAILURE)
+ fprintf(stderr, "ERROR: %s\n",
+ avahi_strerror(avahi_client_errno(client)));
- unquote(name, fullName, sizeof(name));
+ return;
+ }
+# endif /* HAVE_DNSSD */
- if ((dkey.domain = strstr(name, "._tcp.")) != NULL)
- dkey.domain += 6;
- else
- dkey.domain = (char *)"local.";
+ /*
+ * Pull out the priority and make and model from the TXT
+ * record and save it...
+ */
- if ((ptr = strstr(name, "._")) != NULL)
- *ptr = '\0';
+ device_id[0] = '\0';
+ make_and_model[0] = '\0';
- if (strstr(fullName, "_ipp._tcp."))
- dkey.type = CUPS_DEVICE_IPP;
- else if (strstr(fullName, "_ipps._tcp.") ||
- strstr(fullName, "_ipp-tls._tcp."))
- dkey.type = CUPS_DEVICE_IPPS;
- else if (strstr(fullName, "_fax-ipp._tcp."))
- dkey.type = CUPS_DEVICE_FAX_IPP;
- else if (strstr(fullName, "_printer._tcp."))
- dkey.type = CUPS_DEVICE_PRINTER;
- else if (strstr(fullName, "_pdl-datastream._tcp."))
- dkey.type = CUPS_DEVICE_PDL_DATASTREAM;
- else
- dkey.type = CUPS_DEVICE_RIOUSBPRINT;
+ strcpy(model, "Unknown");
- for (device = cupsArrayFind(devices, &dkey);
- device;
- device = cupsArrayNext(devices))
+ for (data = rdata, dataend = data + rdlen;
+ data < dataend;
+ data = datanext)
{
- if (_cups_strcasecmp(device->name, dkey.name) ||
- _cups_strcasecmp(device->domain, dkey.domain))
- {
- device = NULL;
+ /*
+ * Read a key/value pair starting with an 8-bit length. Since the
+ * length is 8 bits and the size of the key/value buffers is 256, we
+ * don't need to check for overflow...
+ */
+
+ datalen = *data++;
+
+ if (!datalen || (data + datalen) > dataend)
break;
- }
- else if (device->type == dkey.type)
+
+ datanext = data + datalen;
+
+ for (ptr = key; data < datanext && *data != '='; data ++)
+ *ptr++ = *data;
+ *ptr = '\0';
+
+ if (data < datanext && *data == '=')
{
- /*
- * Found it, pull out the priority and make and model from the TXT
- * record and save it...
- */
+ data ++;
- const uint8_t *data, /* Pointer into data */
- *datanext, /* Next key/value pair */
- *dataend; /* End of entire TXT record */
- uint8_t datalen; /* Length of current key/value pair */
- char key[256], /* Key string */
- value[256], /* Value string */
- make_and_model[512],
- /* Manufacturer and model */
- model[256], /* Model */
- device_id[2048];/* 1284 device ID */
+ if (data < datanext)
+ memcpy(value, data, datanext - data);
+ value[datanext - data] = '\0';
+ fprintf(stderr, "DEBUG2: query_callback: \"%s=%s\".\n",
+ key, value);
+ }
+ else
+ {
+ fprintf(stderr, "DEBUG2: query_callback: \"%s\" with no value.\n",
+ key);
+ continue;
+ }
- device_id[0] = '\0';
- make_and_model[0] = '\0';
+ if (!_cups_strncasecmp(key, "usb_", 4))
+ {
+ /*
+ * Add USB device ID information...
+ */
- strcpy(model, "Unknown");
+ ptr = device_id + strlen(device_id);
+ snprintf(ptr, sizeof(device_id) - (ptr - device_id), "%s:%s;",
+ key + 4, value);
+ }
- for (data = rdata, dataend = data + rdlen;
- data < dataend;
- data = datanext)
+ if (!_cups_strcasecmp(key, "usb_MFG") || !_cups_strcasecmp(key, "usb_MANU") ||
+ !_cups_strcasecmp(key, "usb_MANUFACTURER"))
+ strcpy(make_and_model, value);
+ else if (!_cups_strcasecmp(key, "usb_MDL") || !_cups_strcasecmp(key, "usb_MODEL"))
+ strcpy(model, value);
+ else if (!_cups_strcasecmp(key, "product") && !strstr(value, "Ghostscript"))
+ {
+ if (value[0] == '(')
{
/*
- * Read a key/value pair starting with an 8-bit length. Since the
- * length is 8 bits and the size of the key/value buffers is 256, we
- * don't need to check for overflow...
+ * Strip parenthesis...
*/
- datalen = *data++;
+ if ((ptr = value + strlen(value) - 1) > value && *ptr == ')')
+ *ptr = '\0';
- if (!datalen || (data + datalen) > dataend)
- break;
-
- datanext = data + datalen;
+ strcpy(model, value + 1);
+ }
+ else
+ strcpy(model, value);
+ }
+ else if (!_cups_strcasecmp(key, "ty"))
+ {
+ strcpy(model, value);
- for (ptr = key; data < datanext && *data != '='; data ++)
- *ptr++ = *data;
+ if ((ptr = strchr(model, ',')) != NULL)
*ptr = '\0';
+ }
+ else if (!_cups_strcasecmp(key, "priority"))
+ device->priority = atoi(value);
+ else if ((device->type == CUPS_DEVICE_IPP ||
+ device->type == CUPS_DEVICE_IPPS ||
+ device->type == CUPS_DEVICE_PRINTER) &&
+ !_cups_strcasecmp(key, "printer-type"))
+ {
+ /*
+ * This is a CUPS printer!
+ */
- if (data < datanext && *data == '=')
- {
- data ++;
-
- if (data < datanext)
- memcpy(value, data, datanext - data);
- value[datanext - data] = '\0';
-
- fprintf(stderr, "DEBUG2: query_callback: \"%s=%s\".\n",
- key, value);
- }
- else
- {
- fprintf(stderr, "DEBUG2: query_callback: \"%s\" with no value.\n",
- key);
- continue;
- }
-
- if (!_cups_strncasecmp(key, "usb_", 4))
- {
- /*
- * Add USB device ID information...
- */
-
- ptr = device_id + strlen(device_id);
- snprintf(ptr, sizeof(device_id) - (ptr - device_id), "%s:%s;",
- key + 4, value);
- }
-
- if (!_cups_strcasecmp(key, "usb_MFG") || !_cups_strcasecmp(key, "usb_MANU") ||
- !_cups_strcasecmp(key, "usb_MANUFACTURER"))
- strcpy(make_and_model, value);
- else if (!_cups_strcasecmp(key, "usb_MDL") || !_cups_strcasecmp(key, "usb_MODEL"))
- strcpy(model, value);
- else if (!_cups_strcasecmp(key, "product") && !strstr(value, "Ghostscript"))
- {
- if (value[0] == '(')
- {
- /*
- * Strip parenthesis...
- */
-
- if ((ptr = value + strlen(value) - 1) > value && *ptr == ')')
- *ptr = '\0';
-
- strcpy(model, value + 1);
- }
- else
- strcpy(model, value);
- }
- else if (!_cups_strcasecmp(key, "ty"))
- {
- strcpy(model, value);
-
- if ((ptr = strchr(model, ',')) != NULL)
- *ptr = '\0';
- }
- else if (!_cups_strcasecmp(key, "priority"))
- device->priority = atoi(value);
- else if ((device->type == CUPS_DEVICE_IPP ||
- device->type == CUPS_DEVICE_IPPS ||
- device->type == CUPS_DEVICE_PRINTER) &&
- !_cups_strcasecmp(key, "printer-type"))
- {
- /*
- * This is a CUPS printer!
- */
-
- device->cups_shared = 1;
+ device->cups_shared = 1;
- if (device->type == CUPS_DEVICE_PRINTER)
- device->sent = 1;
- }
- }
+ if (device->type == CUPS_DEVICE_PRINTER)
+ device->sent = 1;
+ }
+ }
- if (device->device_id)
- free(device->device_id);
+ if (device->device_id)
+ free(device->device_id);
- if (!device_id[0] && strcmp(model, "Unknown"))
- {
- if (make_and_model[0])
- snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s;",
- make_and_model, model);
- else if (!_cups_strncasecmp(model, "designjet ", 10))
- snprintf(device_id, sizeof(device_id), "MFG:HP;MDL:%s", model + 10);
- else if (!_cups_strncasecmp(model, "stylus ", 7))
- snprintf(device_id, sizeof(device_id), "MFG:EPSON;MDL:%s", model + 7);
- else if ((ptr = strchr(model, ' ')) != NULL)
- {
- /*
- * Assume the first word is the make...
- */
+ if (!device_id[0] && strcmp(model, "Unknown"))
+ {
+ if (make_and_model[0])
+ snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s;",
+ make_and_model, model);
+ else if (!_cups_strncasecmp(model, "designjet ", 10))
+ snprintf(device_id, sizeof(device_id), "MFG:HP;MDL:%s", model + 10);
+ else if (!_cups_strncasecmp(model, "stylus ", 7))
+ snprintf(device_id, sizeof(device_id), "MFG:EPSON;MDL:%s", model + 7);
+ else if ((ptr = strchr(model, ' ')) != NULL)
+ {
+ /*
+ * Assume the first word is the make...
+ */
- memcpy(make_and_model, model, ptr - model);
- make_and_model[ptr - model] = '\0';
+ memcpy(make_and_model, model, ptr - model);
+ make_and_model[ptr - model] = '\0';
- snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s",
- make_and_model, ptr + 1);
- }
- }
+ snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s",
+ make_and_model, ptr + 1);
+ }
+ }
- if (device_id[0])
- device->device_id = strdup(device_id);
- else
- device->device_id = NULL;
+ if (device_id[0])
+ device->device_id = strdup(device_id);
+ else
+ device->device_id = NULL;
- if (device->make_and_model)
- free(device->make_and_model);
+ if (device->make_and_model)
+ free(device->make_and_model);
- if (make_and_model[0])
- {
- strlcat(make_and_model, " ", sizeof(make_and_model));
- strlcat(make_and_model, model, sizeof(make_and_model));
+ if (make_and_model[0])
+ {
+ strlcat(make_and_model, " ", sizeof(make_and_model));
+ strlcat(make_and_model, model, sizeof(make_and_model));
- device->make_and_model = strdup(make_and_model);
- }
- else
- device->make_and_model = strdup(model);
- break;
- }
+ device->make_and_model = strdup(make_and_model);
}
-
- if (!device)
- fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName);
+ else
+ device->make_and_model = strdup(model);
}
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
/*
- * 'sigterm_handler()' - Handle termination signals...
+ * 'sigterm_handler()' - Handle termination signals.
*/
static void
@@ -966,5 +1276,5 @@ unquote(char *dst, /* I - Destination buffer */
/*
- * End of "$Id: dnssd.c 10379 2012-03-23 22:16:22Z mike $".
+ * End of "$Id: dnssd.c 10489 2012-05-21 16:05:58Z mike $".
*/
diff --git a/backend/ipp.c b/backend/ipp.c
index 91524a82..83074ebd 100644
--- a/backend/ipp.c
+++ b/backend/ipp.c
@@ -1,5 +1,5 @@
/*
- * "$Id: ipp.c 10509 2012-05-23 22:47:10Z mike $"
+ * "$Id: ipp.c 10548 2012-07-16 18:21:43Z mike $"
*
* IPP backend for CUPS.
*
@@ -45,8 +45,12 @@
# define kPMPrintUIToolAgent "com.apple.printuitool.agent"
# define kPMStartJob 100
# define kPMWaitForJob 101
+# ifdef HAVE_XPC_PRIVATE_H
+# include <xpc/private.h>
+# else
extern void xpc_connection_set_target_uid(xpc_connection_t connection,
uid_t uid);
+# endif /* HAVE_XPC_PRIVATE_H */
#endif /* HAVE_GSSAPI && HAVE_XPC */
@@ -165,7 +169,7 @@ static const char *password_cb(const char *);
static void report_attr(ipp_attribute_t *attr);
static void report_printer_state(ipp_t *ipp);
#if defined(HAVE_GSSAPI) && defined(HAVE_XPC)
-static int run_as_user(int argc, char *argv[], uid_t uid,
+static int run_as_user(char *argv[], uid_t uid,
const char *device_uri, int fd);
#endif /* HAVE_GSSAPI && HAVE_XPC */
static void sigterm_handler(int sig);
@@ -344,7 +348,7 @@ main(int argc, /* I - Number of command-line args */
if (uid > 0)
{
if (argc == 6)
- return (run_as_user(argc, argv, uid, device_uri, 0));
+ return (run_as_user(argv, uid, device_uri, 0));
else
{
int status = 0; /* Exit status */
@@ -353,7 +357,7 @@ main(int argc, /* I - Number of command-line args */
{
if ((fd = open(argv[i], O_RDONLY)) >= 0)
{
- status = run_as_user(argc, argv, uid, device_uri, fd);
+ status = run_as_user(argv, uid, device_uri, fd);
close(fd);
}
else
@@ -643,6 +647,9 @@ main(int argc, /* I - Number of command-line args */
update_reasons(NULL, "-connecting-to-device");
return (CUPS_BACKEND_STOP);
}
+
+ if (job_canceled)
+ return (CUPS_BACKEND_OK);
}
http = _httpCreate(hostname, port, addrlist, cupsEncryption(), AF_UNSPEC);
@@ -747,7 +754,7 @@ main(int argc, /* I - Number of command-line args */
case ECONNREFUSED :
default :
_cupsLangPrintFilter(stderr, "WARNING",
- _("The printer is busy."));
+ _("The printer is in use."));
break;
}
@@ -770,7 +777,9 @@ main(int argc, /* I - Number of command-line args */
}
while (http->fd < 0);
- if (job_canceled || !http)
+ if (job_canceled)
+ return (CUPS_BACKEND_OK);
+ else if (!http)
return (CUPS_BACKEND_FAILED);
update_reasons(NULL, "-connecting-to-device");
@@ -862,7 +871,7 @@ main(int argc, /* I - Number of command-line args */
return (CUPS_BACKEND_FAILED);
}
- _cupsLangPrintFilter(stderr, "INFO", _("The printer is busy."));
+ _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use."));
report_printer_state(supported);
@@ -880,14 +889,14 @@ main(int argc, /* I - Number of command-line args */
if (version >= 20)
{
_cupsLangPrintFilter(stderr, "INFO",
- _("Printer does not support IPP/%d.%d, trying "
+ _("The printer does not support IPP/%d.%d, trying "
"IPP/%s."), version / 10, version % 10, "1.1");
version = 11;
}
else
{
_cupsLangPrintFilter(stderr, "INFO",
- _("Printer does not support IPP/%d.%d, trying "
+ _("The printer does not support IPP/%d.%d, trying "
"IPP/%s."), version / 10, version % 10, "1.0");
version = 10;
}
@@ -968,7 +977,7 @@ main(int argc, /* I - Number of command-line args */
if (busy)
{
- _cupsLangPrintFilter(stderr, "INFO", _("The printer is busy."));
+ _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use."));
report_printer_state(supported);
@@ -1071,11 +1080,14 @@ main(int argc, /* I - Number of command-line args */
get_job_attrs = 1;
}
- if (!send_document)
+ if (create_job && !send_document)
{
fputs("DEBUG: Printer supports Create-Job but not Send-Document.\n",
stderr);
create_job = 0;
+
+ update_reasons(NULL, "+cups-ipp-conformance-failure-report,"
+ "cups-ipp-missing-send-document");
}
if (!validate_job)
@@ -1092,7 +1104,10 @@ main(int argc, /* I - Number of command-line args */
report_printer_state(supported);
}
- while (ipp_status > IPP_OK_CONFLICT);
+ while (!job_canceled && ipp_status > IPP_OK_CONFLICT);
+
+ if (job_canceled)
+ return (CUPS_BACKEND_OK);
/*
* See if the printer is accepting jobs and is not stopped; if either
@@ -1143,12 +1158,7 @@ main(int argc, /* I - Number of command-line args */
copies = atoi(argv[4]);
if (copies_sup || argc < 7)
- {
copies_remaining = 1;
-
- if (argc < 7 && !_cups_strncasecmp(final_content_type, "image/", 6))
- copies = 1;
- }
else
copies_remaining = copies;
@@ -1300,7 +1310,7 @@ main(int argc, /* I - Number of command-line args */
if (ipp_status == IPP_SERVICE_UNAVAILABLE || ipp_status == IPP_PRINTER_BUSY)
{
- _cupsLangPrintFilter(stderr, "INFO", _("The printer is busy."));
+ _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use."));
sleep(10);
}
else if (ipp_status == IPP_DOCUMENT_FORMAT)
@@ -1451,7 +1461,7 @@ main(int argc, /* I - Number of command-line args */
ipp_status == IPP_NOT_POSSIBLE ||
ipp_status == IPP_PRINTER_BUSY)
{
- _cupsLangPrintFilter(stderr, "INFO", _("The printer is busy."));
+ _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use."));
sleep(10);
if (num_files == 0)
@@ -1802,7 +1812,7 @@ main(int argc, /* I - Number of command-line args */
* Cancel the job as needed...
*/
- if (job_canceled && job_id)
+ if (job_canceled > 0 && job_id > 0)
cancel_job(http, uri, job_id, resource, argv[2], version);
/*
@@ -1874,23 +1884,22 @@ main(int argc, /* I - Number of command-line args */
else if (ipp_status == IPP_CONFLICT)
return (CUPS_BACKEND_FAILED);
else if (ipp_status == IPP_REQUEST_VALUE ||
- ipp_status == IPP_DOCUMENT_FORMAT)
+ ipp_status == IPP_DOCUMENT_FORMAT || job_canceled < 0)
{
if (ipp_status == IPP_REQUEST_VALUE)
_cupsLangPrintFilter(stderr, "ERROR", _("Print job too large."));
- else
+ else if (ipp_status == IPP_DOCUMENT_FORMAT)
_cupsLangPrintFilter(stderr, "ERROR",
_("Printer cannot print supplied content."));
+ else
+ _cupsLangPrintFilter(stderr, "ERROR", _("Print job canceled at printer."));
return (CUPS_BACKEND_CANCEL);
}
else if (ipp_status > IPP_OK_CONFLICT && ipp_status != IPP_ERROR_JOB_CANCELED)
return (CUPS_BACKEND_RETRY_CURRENT);
else
- {
- _cupsLangPrintFilter(stderr, "INFO", _("Ready to print."));
return (CUPS_BACKEND_OK);
- }
}
@@ -2153,7 +2162,7 @@ monitor_printer(
response = cupsDoRequest(http, request, monitor->resource);
- fprintf(stderr, "DEBUG: %s: %s (%s)\n", ippOpString(job_op),
+ fprintf(stderr, "DEBUG: (monitor) %s: %s (%s)\n", ippOpString(job_op),
ippErrorString(cupsLastError()), cupsLastErrorString());
if (cupsLastError() <= IPP_OK_CONFLICT)
@@ -2217,6 +2226,14 @@ monitor_printer(
ippDelete(response);
+ fprintf(stderr, "DEBUG: (monitor) job-state=%s\n",
+ ippEnumString("job-state", monitor->job_state));
+
+ if (!job_canceled &&
+ (monitor->job_state == IPP_JOB_CANCELED ||
+ monitor->job_state == IPP_JOB_ABORTED))
+ job_canceled = -1;
+
/*
* Disconnect from the printer - we'll reconnect on the next poll...
*/
@@ -2237,7 +2254,7 @@ monitor_printer(
* Cancel the job if necessary...
*/
- if (job_canceled && monitor->job_id > 0)
+ if (job_canceled > 0 && monitor->job_id > 0)
if (!httpReconnect(http))
cancel_job(http, monitor->uri, monitor->job_id, monitor->resource,
monitor->user, monitor->version);
@@ -2465,9 +2482,46 @@ new_request(
NULL, "two-sided-short-edge");
}
- if (doc_handling_sup &&
- (!format || _cups_strncasecmp(format, "image/", 6)) &&
- (keyword = cupsGetOption("collate", num_options, options)) != NULL)
+ if ((keyword = cupsGetOption("multiple-document-handling",
+ num_options, options)) != NULL)
+ {
+ if (strstr(keyword, "uncollated"))
+ keyword = "false";
+ else
+ keyword = "true";
+ }
+ else if ((keyword = cupsGetOption("collate", num_options,
+ options)) == NULL)
+ keyword = "true";
+
+ if (format)
+ {
+ if (!_cups_strcasecmp(format, "image/gif") ||
+ !_cups_strcasecmp(format, "image/jp2") ||
+ !_cups_strcasecmp(format, "image/jpeg") ||
+ !_cups_strcasecmp(format, "image/png") ||
+ !_cups_strcasecmp(format, "image/tiff") ||
+ !_cups_strncasecmp(format, "image/x-", 8))
+ {
+ /*
+ * Collation makes no sense for single page image formats...
+ */
+
+ keyword = "false";
+ }
+ else if (!_cups_strncasecmp(format, "image/", 6) ||
+ !_cups_strcasecmp(format, "application/vnd.cups-raster"))
+ {
+ /*
+ * Multi-page image formats will have copies applied by the upstream
+ * filters...
+ */
+
+ copies = 1;
+ }
+ }
+
+ if (doc_handling_sup)
{
if (!_cups_strcasecmp(keyword, "true"))
collate_str = "separate-documents-collated-copies";
@@ -2481,6 +2535,9 @@ new_request(
"multiple-document-handling", NULL, collate_str);
break;
}
+
+ if (i >= doc_handling_sup->num_values)
+ copies = 1;
}
/*
@@ -2529,7 +2586,7 @@ new_request(
cupsEncodeOptions2(request, num_options, options, IPP_TAG_JOB);
}
- if (copies > 1)
+ if (copies > 1 && (!pc || copies <= pc->max_copies))
ippAddInteger(request, IPP_TAG_JOB, IPP_TAG_INTEGER, "copies", copies);
}
@@ -2782,8 +2839,7 @@ report_printer_state(ipp_t *ipp) /* I - IPP response */
*/
static int /* O - Exit status */
-run_as_user(int argc, /* I - Number of command-line args */
- char *argv[], /* I - Command-line arguments */
+run_as_user(char *argv[], /* I - Command-line arguments */
uid_t uid, /* I - User ID */
const char *device_uri, /* I - Device URI */
int fd) /* I - File to print */
@@ -2974,6 +3030,8 @@ sigterm_handler(int sig) /* I - Signal */
{
(void)sig; /* remove compiler warnings... */
+ write(2, "DEBUG: Got SIGTERM.\n", 20);
+
#if defined(HAVE_GSSAPI) && defined(HAVE_XPC)
if (child_pid)
{
@@ -2988,6 +3046,8 @@ sigterm_handler(int sig) /* I - Signal */
* Flag that the job should be canceled...
*/
+ write(2, "DEBUG: job_canceled = 1.\n", 25);
+
job_canceled = 1;
return;
}
@@ -3217,5 +3277,5 @@ update_reasons(ipp_attribute_t *attr, /* I - printer-state-reasons or NULL */
}
/*
- * End of "$Id: ipp.c 10509 2012-05-23 22:47:10Z mike $".
+ * End of "$Id: ipp.c 10548 2012-07-16 18:21:43Z mike $".
*/
diff --git a/backend/lpd.c b/backend/lpd.c
index 7837b344..160a83ef 100644
--- a/backend/lpd.c
+++ b/backend/lpd.c
@@ -1,5 +1,5 @@
/*
- * "$Id: lpd.c 10265 2012-02-12 07:20:10Z mike $"
+ * "$Id: lpd.c 10520 2012-05-31 02:53:59Z mike $"
*
* Line Printer Daemon backend for CUPS.
*
@@ -92,7 +92,7 @@ static int lpd_queue(const char *hostname, http_addrlist_t *addrlist,
int mode, const char *user, const char *title,
int copies, int banner, int format, int order,
int reserve, int manual_copies, int timeout,
- int contimeout);
+ int contimeout, const char *orighost);
static int lpd_write(int lpd_fd, char *buffer, int length);
#ifndef HAVE_RRESVPORT_AF
static int rresvport_af(int *port, int family);
@@ -144,6 +144,8 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
#if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
struct sigaction action; /* Actions for POSIX signals */
#endif /* HAVE_SIGACTION && !HAVE_SIGSET */
+ int num_jobopts; /* Number of job options */
+ cups_option_t *jobopts = NULL; /* Job options */
/*
@@ -191,6 +193,8 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
return (CUPS_BACKEND_FAILED);
}
+ num_jobopts = cupsParseOptions(argv[5], 0, &jobopts);
+
/*
* Extract the hostname and printer name from the URI...
*/
@@ -525,7 +529,9 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
status = lpd_queue(hostname, addrlist, resource + 1, fd, snmp_fd, mode,
username, title, copies, banner, format, order, reserve,
- manual_copies, timeout, contimeout);
+ manual_copies, timeout, contimeout,
+ cupsGetOption("job-originating-host-name", num_jobopts,
+ jobopts));
if (!status)
fprintf(stderr, "PAGE: 1 %d\n", atoi(argv[4]));
@@ -533,7 +539,9 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
else
status = lpd_queue(hostname, addrlist, resource + 1, fd, snmp_fd, mode,
username, title, 1, banner, format, order, reserve, 1,
- timeout, contimeout);
+ timeout, contimeout,
+ cupsGetOption("job-originating-host-name", num_jobopts,
+ jobopts));
/*
* Remove the temporary file if necessary...
@@ -608,7 +616,7 @@ lpd_command(int fd, /* I - Socket connection to LPD host */
if (recv(fd, &status, 1, 0) < 1)
{
- _cupsLangPrintFilter(stderr, "WARNING", _("Printer did not respond."));
+ _cupsLangPrintFilter(stderr, "WARNING", _("The printer did not respond."));
status = errno;
}
@@ -638,7 +646,8 @@ lpd_queue(const char *hostname, /* I - Host to connect to */
int reserve, /* I - Reserve ports? */
int manual_copies,/* I - Do copies by hand... */
int timeout, /* I - Timeout... */
- int contimeout) /* I - Connection timeout */
+ int contimeout, /* I - Connection timeout */
+ const char *orighost) /* I - job-originating-host-name */
{
char localhost[255]; /* Local host name */
int error; /* Error number */
@@ -816,7 +825,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */
case ECONNREFUSED :
default :
_cupsLangPrintFilter(stderr, "WARNING",
- _("The printer is busy."));
+ _("The printer is in use."));
break;
}
@@ -927,7 +936,10 @@ lpd_queue(const char *hostname, /* I - Host to connect to */
return (CUPS_BACKEND_FAILED);
}
- httpGetHostname(NULL, localhost, sizeof(localhost));
+ if (orighost && _cups_strcasecmp(orighost, "localhost"))
+ strlcpy(localhost, orighost, sizeof(localhost));
+ else
+ httpGetHostname(NULL, localhost, sizeof(localhost));
snprintf(control, sizeof(control),
"H%.31s\n" /* RFC 1179, Section 7.2 - host name <= 31 chars */
@@ -994,7 +1006,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */
if (read(fd, &status, 1) < 1)
{
_cupsLangPrintFilter(stderr, "WARNING",
- _("Printer did not respond."));
+ _("The printer did not respond."));
status = errno;
}
}
@@ -1076,7 +1088,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */
if (recv(fd, &status, 1, 0) < 1)
{
_cupsLangPrintFilter(stderr, "WARNING",
- _("Printer did not respond."));
+ _("The printer did not respond."));
status = 0;
}
}
@@ -1126,7 +1138,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */
if (read(fd, &status, 1) < 1)
{
_cupsLangPrintFilter(stderr, "WARNING",
- _("Printer did not respond."));
+ _("The printer did not respond."));
status = errno;
}
}
@@ -1302,5 +1314,5 @@ sigterm_handler(int sig) /* I - Signal */
/*
- * End of "$Id: lpd.c 10265 2012-02-12 07:20:10Z mike $".
+ * End of "$Id: lpd.c 10520 2012-05-31 02:53:59Z mike $".
*/
diff --git a/backend/network.c b/backend/network.c
index d5827c46..387d5150 100644
--- a/backend/network.c
+++ b/backend/network.c
@@ -1,5 +1,5 @@
/*
- * "$Id: network.c 9578 2011-03-04 18:44:47Z mike $"
+ * "$Id: network.c 10389 2012-03-28 21:57:29Z mike $"
*
* Common backend network APIs for CUPS.
*
@@ -71,7 +71,7 @@ backendNetworkSideCB(
{
cups_sc_command_t command; /* Request command */
cups_sc_status_t status; /* Request/response status */
- char data[2048]; /* Request/response data */
+ char data[65536]; /* Request/response data */
int datalen; /* Request/response data size */
const char *device_id; /* 1284DEVICEID env var */
@@ -92,7 +92,7 @@ backendNetworkSideCB(
status = CUPS_SC_STATUS_NOT_IMPLEMENTED;
else if (backendDrainOutput(print_fd, device_fd))
status = CUPS_SC_STATUS_IO_ERROR;
- else
+ else
status = CUPS_SC_STATUS_OK;
datalen = 0;
@@ -119,8 +119,35 @@ backendNetworkSideCB(
if (snmp_fd >= 0)
{
+ char *dataptr; /* Pointer into data */
cups_snmp_t packet; /* Packet from printer */
+ const char *snmp_value; /* CUPS_SNMP_VALUE env var */
+ if ((snmp_value = getenv("CUPS_SNMP_VALUE")) != NULL)
+ {
+ const char *snmp_count; /* CUPS_SNMP_COUNT env var */
+ int count; /* Repetition count */
+
+ if ((snmp_count = getenv("CUPS_SNMP_COUNT")) != NULL)
+ {
+ if ((count = atoi(snmp_count)) <= 0)
+ count = 1;
+ }
+ else
+ count = 1;
+
+ for (dataptr = data + strlen(data) + 1;
+ count > 0 && dataptr < (data + sizeof(data) - 1);
+ count --, dataptr += strlen(dataptr))
+ strlcpy(dataptr, snmp_value, sizeof(data) - (dataptr - data));
+
+ fprintf(stderr, "DEBUG: Returning %s %s\n", data,
+ data + strlen(data) + 1);
+
+ status = CUPS_SC_STATUS_OK;
+ datalen = dataptr - data;
+ break;
+ }
if (!_cupsSNMPStringToOID(data, packet.object_name, CUPS_SNMP_MAX_OID))
{
@@ -141,7 +168,6 @@ backendNetworkSideCB(
{
if (_cupsSNMPRead(snmp_fd, &packet, 1.0))
{
- char *dataptr; /* Pointer into data */
int i; /* Looping var */
@@ -172,7 +198,7 @@ backendNetworkSideCB(
case CUPS_ASN1_OCTET_STRING :
if (packet.object_value.string.num_bytes < 0)
i = 0;
- else if (packet.object_value.string.num_bytes <
+ else if (packet.object_value.string.num_bytes <
(sizeof(data) - (dataptr - data)))
i = packet.object_value.string.num_bytes;
else
@@ -296,5 +322,5 @@ backendNetworkSideCB(
/*
- * End of "$Id: network.c 9578 2011-03-04 18:44:47Z mike $".
+ * End of "$Id: network.c 10389 2012-03-28 21:57:29Z mike $".
*/
diff --git a/backend/parallel.c b/backend/parallel.c
deleted file mode 100644
index a475f0e9..00000000
--- a/backend/parallel.c
+++ /dev/null
@@ -1,676 +0,0 @@
-/*
- * "$Id: parallel.c 9774 2011-05-12 06:15:14Z mike $"
- *
- * Parallel port backend for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1997-2007 by Easy Software Products, all rights reserved.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * "LICENSE" which should have been included with this file. If this
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * main() - Send a file to the specified parallel port.
- * list_devices() - List all parallel devices.
- * side_cb() - Handle side-channel requests...
- */
-
-/*
- * Include necessary headers.
- */
-
-#include "backend-private.h"
-
-#ifdef __hpux
-# include <sys/time.h>
-#else
-# include <sys/select.h>
-#endif /* __hpux */
-
-#ifdef WIN32
-# include <io.h>
-#else
-# include <unistd.h>
-# include <fcntl.h>
-# include <termios.h>
-# include <sys/socket.h>
-#endif /* WIN32 */
-
-#ifdef __sgi
-# include <invent.h>
-# ifndef INV_EPP_ECP_PLP
-# define INV_EPP_ECP_PLP 6 /* From 6.3/6.4/6.5 sys/invent.h */
-# define INV_ASO_SERIAL 14 /* serial portion of SGI ASO board */
-# define INV_IOC3_DMA 16 /* DMA mode IOC3 serial */
-# define INV_IOC3_PIO 17 /* PIO mode IOC3 serial */
-# define INV_ISA_DMA 19 /* DMA mode ISA serial -- O2 */
-# endif /* !INV_EPP_ECP_PLP */
-#endif /* __sgi */
-
-
-/*
- * Local functions...
- */
-
-static void list_devices(void);
-static int side_cb(int print_fd, int device_fd, int snmp_fd,
- http_addr_t *addr, int use_bc);
-
-
-/*
- * 'main()' - Send a file to the specified parallel port.
- *
- * Usage:
- *
- * printer-uri job-id user title copies options [file]
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments (6 or 7) */
- char *argv[]) /* I - Command-line arguments */
-{
- char method[255], /* Method in URI */
- hostname[1024], /* Hostname */
- username[255], /* Username info (not used) */
- resource[1024], /* Resource info (device and options) */
- *options; /* Pointer to options */
- int port; /* Port number (not used) */
- int print_fd, /* Print file */
- device_fd, /* Parallel device */
- use_bc; /* Read back-channel data? */
- int copies; /* Number of copies to print */
- ssize_t tbytes; /* Total number of bytes written */
- struct termios opts; /* Parallel port options */
-#if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
- struct sigaction action; /* Actions for POSIX signals */
-#endif /* HAVE_SIGACTION && !HAVE_SIGSET */
-
-
- /*
- * Make sure status messages are not buffered...
- */
-
- setbuf(stderr, NULL);
-
- /*
- * Ignore SIGPIPE signals...
- */
-
-#ifdef HAVE_SIGSET
- sigset(SIGPIPE, SIG_IGN);
-#elif defined(HAVE_SIGACTION)
- memset(&action, 0, sizeof(action));
- action.sa_handler = SIG_IGN;
- sigaction(SIGPIPE, &action, NULL);
-#else
- signal(SIGPIPE, SIG_IGN);
-#endif /* HAVE_SIGSET */
-
- /*
- * Check command-line...
- */
-
- if (argc == 1)
- {
- list_devices();
- return (CUPS_BACKEND_OK);
- }
- else if (argc < 6 || argc > 7)
- {
- _cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options [file]"),
- argv[0]);
- return (CUPS_BACKEND_FAILED);
- }
-
- /*
- * If we have 7 arguments, print the file named on the command-line.
- * Otherwise, send stdin instead...
- */
-
- if (argc == 6)
- {
- print_fd = 0;
- copies = 1;
- }
- else
- {
- /*
- * Try to open the print file...
- */
-
- if ((print_fd = open(argv[6], O_RDONLY)) < 0)
- {
- _cupsLangPrintError("ERROR", _("Unable to open print file"));
- return (CUPS_BACKEND_FAILED);
- }
-
- copies = atoi(argv[4]);
- }
-
- /*
- * Extract the device name and options from the URI...
- */
-
- httpSeparateURI(HTTP_URI_CODING_ALL, cupsBackendDeviceURI(argv),
- method, sizeof(method), username, sizeof(username),
- hostname, sizeof(hostname), &port,
- resource, sizeof(resource));
-
- /*
- * See if there are any options...
- */
-
- if ((options = strchr(resource, '?')) != NULL)
- {
- /*
- * Yup, terminate the device name string and move to the first
- * character of the options...
- */
-
- *options++ = '\0';
- }
-
- /*
- * Open the parallel port device...
- */
-
- fputs("STATE: +connecting-to-device\n", stderr);
-
- do
- {
-#if defined(__linux) || defined(__FreeBSD__)
- /*
- * The Linux and FreeBSD parallel port drivers currently are broken WRT
- * select() and bidirection I/O...
- */
-
- device_fd = open(resource, O_WRONLY | O_EXCL);
- use_bc = 0;
-
-#else
- if ((device_fd = open(resource, O_RDWR | O_EXCL)) < 0)
- {
- device_fd = open(resource, O_WRONLY | O_EXCL);
- use_bc = 0;
- }
- else
- use_bc = 1;
-#endif /* __linux || __FreeBSD__ */
-
- if (device_fd == -1)
- {
- if (getenv("CLASS") != NULL)
- {
- /*
- * If the CLASS environment variable is set, the job was submitted
- * to a class and not to a specific queue. In this case, we want
- * to abort immediately so that the job can be requeued on the next
- * available printer in the class.
- */
-
- _cupsLangPrintFilter(stderr, "INFO",
- _("Unable to contact printer, queuing on next "
- "printer in class."));
-
- /*
- * Sleep 5 seconds to keep the job from requeuing too rapidly...
- */
-
- sleep(5);
-
- return (CUPS_BACKEND_FAILED);
- }
-
- if (errno == EBUSY)
- {
- _cupsLangPrintFilter(stderr, "INFO",
- _("Printer busy; will retry in 30 seconds."));
- sleep(30);
- }
- else if (errno == ENXIO || errno == EIO || errno == ENOENT)
- {
- _cupsLangPrintFilter(stderr, "INFO",
- _("Printer not connected; will retry in 30 "
- "seconds."));
- sleep(30);
- }
- else
- {
- _cupsLangPrintError("ERROR", _("Unable to open device file"));
- return (CUPS_BACKEND_FAILED);
- }
- }
- }
- while (device_fd < 0);
-
- fputs("STATE: -connecting-to-device\n", stderr);
-
- /*
- * Set any options provided...
- */
-
- tcgetattr(device_fd, &opts);
-
- opts.c_lflag &= ~(ICANON | ECHO | ISIG); /* Raw mode */
-
- /**** No options supported yet ****/
-
- tcsetattr(device_fd, TCSANOW, &opts);
-
- /*
- * Finally, send the print file...
- */
-
- tbytes = 0;
-
- while (copies > 0 && tbytes >= 0)
- {
- copies --;
-
- if (print_fd != 0)
- {
- fputs("PAGE: 1 1\n", stderr);
- lseek(print_fd, 0, SEEK_SET);
- }
-
- tbytes = backendRunLoop(print_fd, device_fd, -1, NULL, use_bc, 1, side_cb);
-
- if (print_fd != 0 && tbytes >= 0)
- _cupsLangPrintFilter(stderr, "INFO", _("Print file sent."));
- }
-
- /*
- * Close the socket connection and input file and return...
- */
-
- close(device_fd);
-
- if (print_fd != 0)
- close(print_fd);
-
- return (CUPS_BACKEND_OK);
-}
-
-
-/*
- * 'list_devices()' - List all parallel devices.
- */
-
-static void
-list_devices(void)
-{
-#if defined(__hpux) || defined(__sgi) || defined(__sun)
- static char *funky_hex = "0123456789abcdefghijklmnopqrstuvwxyz";
- /* Funky hex numbering used for some devices */
-#endif /* __hpux || __sgi || __sun */
-
-#ifdef __linux
- int i; /* Looping var */
- int fd; /* File descriptor */
- char device[255], /* Device filename */
- basedevice[255], /* Base device filename for ports */
- device_id[1024], /* Device ID string */
- make_model[1024], /* Make and model */
- info[1024], /* Info string */
- uri[1024]; /* Device URI */
-
-
- if (!access("/dev/parallel/", 0))
- strcpy(basedevice, "/dev/parallel/");
- else if (!access("/dev/printers/", 0))
- strcpy(basedevice, "/dev/printers/");
- else
- strcpy(basedevice, "/dev/lp");
-
- for (i = 0; i < 4; i ++)
- {
- /*
- * Open the port, if available...
- */
-
- sprintf(device, "%s%d", basedevice, i);
- if ((fd = open(device, O_RDWR | O_EXCL)) < 0)
- fd = open(device, O_WRONLY);
-
- if (fd >= 0)
- {
- /*
- * Now grab the IEEE 1284 device ID string...
- */
-
- snprintf(uri, sizeof(uri), "parallel:%s", device);
-
- if (!backendGetDeviceID(fd, device_id, sizeof(device_id),
- make_model, sizeof(make_model),
- NULL, uri, sizeof(uri)))
- {
- snprintf(info, sizeof(info), "%s LPT #%d", make_model, i + 1);
- cupsBackendReport("direct", uri, make_model, info, device_id, NULL);
- }
- else
- {
- snprintf(info, sizeof(info), "LPT #%d", i + 1);
- cupsBackendReport("direct", uri, NULL, info, NULL, NULL);
- }
-
- close(fd);
- }
- }
-#elif defined(__sgi)
- int i, j, n; /* Looping vars */
- char device[255]; /* Device filename */
- inventory_t *inv; /* Hardware inventory info */
-
-
- /*
- * IRIX maintains a hardware inventory of most devices...
- */
-
- setinvent();
-
- while ((inv = getinvent()) != NULL)
- {
- if (inv->inv_class == INV_PARALLEL &&
- (inv->inv_type == INV_ONBOARD_PLP ||
- inv->inv_type == INV_EPP_ECP_PLP))
- {
- /*
- * Standard parallel port...
- */
-
- puts("direct parallel:/dev/plp \"Unknown\" \"Onboard Parallel Port\"");
- }
- else if (inv->inv_class == INV_PARALLEL &&
- inv->inv_type == INV_EPC_PLP)
- {
- /*
- * EPC parallel port...
- */
-
- printf("direct parallel:/dev/plp%d \"Unknown\" \"Integral EPC parallel port, Ebus slot %d\"\n",
- inv->inv_controller, inv->inv_controller);
- }
- }
-
- endinvent();
-
- /*
- * Central Data makes serial and parallel "servers" that can be
- * connected in a number of ways. Look for ports...
- */
-
- for (i = 0; i < 10; i ++)
- for (j = 0; j < 8; j ++)
- for (n = 0; n < 32; n ++)
- {
- if (i == 8) /* EtherLite */
- sprintf(device, "/dev/lpn%d%c", j, funky_hex[n]);
- else if (i == 9) /* PCI */
- sprintf(device, "/dev/lpp%d%c", j, funky_hex[n]);
- else /* SCSI */
- sprintf(device, "/dev/lp%d%d%c", i, j, funky_hex[n]);
-
- if (access(device, 0) == 0)
- {
- if (i == 8)
- printf("direct parallel:%s \"Unknown\" \"Central Data EtherLite Parallel Port, ID %d, port %d\"\n",
- device, j, n);
- else if (i == 9)
- printf("direct parallel:%s \"Unknown\" \"Central Data PCI Parallel Port, ID %d, port %d\"\n",
- device, j, n);
- else
- printf("direct parallel:%s \"Unknown\" \"Central Data SCSI Parallel Port, logical bus %d, ID %d, port %d\"\n",
- device, i, j, n);
- }
- }
-#elif defined(__sun)
- int i, j, n; /* Looping vars */
- char device[255]; /* Device filename */
-
-
- /*
- * Standard parallel ports...
- */
-
- for (i = 0; i < 10; i ++)
- {
- sprintf(device, "/dev/ecpp%d", i);
- if (access(device, 0) == 0)
- printf("direct parallel:%s \"Unknown\" \"Sun IEEE-1284 Parallel Port #%d\"\n",
- device, i + 1);
- }
-
- for (i = 0; i < 10; i ++)
- {
- sprintf(device, "/dev/bpp%d", i);
- if (access(device, 0) == 0)
- printf("direct parallel:%s \"Unknown\" \"Sun Standard Parallel Port #%d\"\n",
- device, i + 1);
- }
-
- for (i = 0; i < 3; i ++)
- {
- sprintf(device, "/dev/lp%d", i);
-
- if (access(device, 0) == 0)
- printf("direct parallel:%s \"Unknown\" \"PC Parallel Port #%d\"\n",
- device, i + 1);
- }
-
- /*
- * MAGMA parallel ports...
- */
-
- for (i = 0; i < 40; i ++)
- {
- sprintf(device, "/dev/pm%02d", i);
- if (access(device, 0) == 0)
- printf("direct parallel:%s \"Unknown\" \"MAGMA Parallel Board #%d Port #%d\"\n",
- device, (i / 10) + 1, (i % 10) + 1);
- }
-
- /*
- * Central Data parallel ports...
- */
-
- for (i = 0; i < 9; i ++)
- for (j = 0; j < 8; j ++)
- for (n = 0; n < 32; n ++)
- {
- if (i == 8) /* EtherLite */
- sprintf(device, "/dev/sts/lpN%d%c", j, funky_hex[n]);
- else
- sprintf(device, "/dev/sts/lp%c%d%c", i + 'C', j,
- funky_hex[n]);
-
- if (access(device, 0) == 0)
- {
- if (i == 8)
- printf("direct parallel:%s \"Unknown\" \"Central Data EtherLite Parallel Port, ID %d, port %d\"\n",
- device, j, n);
- else
- printf("direct parallel:%s \"Unknown\" \"Central Data SCSI Parallel Port, logical bus %d, ID %d, port %d\"\n",
- device, i, j, n);
- }
- }
-#elif defined(__hpux)
- int i, j, n; /* Looping vars */
- char device[255]; /* Device filename */
-
-
- /*
- * Standard parallel ports...
- */
-
- if (access("/dev/rlp", 0) == 0)
- puts("direct parallel:/dev/rlp \"Unknown\" \"Standard Parallel Port (/dev/rlp)\"");
-
- for (i = 0; i < 7; i ++)
- for (j = 0; j < 7; j ++)
- {
- sprintf(device, "/dev/c%dt%dd0_lp", i, j);
- if (access(device, 0) == 0)
- printf("direct parallel:%s \"Unknown\" \"Parallel Port #%d,%d\"\n",
- device, i, j);
- }
-
- /*
- * Central Data parallel ports...
- */
-
- for (i = 0; i < 9; i ++)
- for (j = 0; j < 8; j ++)
- for (n = 0; n < 32; n ++)
- {
- if (i == 8) /* EtherLite */
- sprintf(device, "/dev/lpN%d%c", j, funky_hex[n]);
- else
- sprintf(device, "/dev/lp%c%d%c", i + 'C', j,
- funky_hex[n]);
-
- if (access(device, 0) == 0)
- {
- if (i == 8)
- printf("direct parallel:%s \"Unknown\" \"Central Data EtherLite Parallel Port, ID %d, port %d\"\n",
- device, j, n);
- else
- printf("direct parallel:%s \"Unknown\" \"Central Data SCSI Parallel Port, logical bus %d, ID %d, port %d\"\n",
- device, i, j, n);
- }
- }
-#elif defined(__osf__)
- int i; /* Looping var */
- int fd; /* File descriptor */
- char device[255]; /* Device filename */
-
-
- for (i = 0; i < 3; i ++)
- {
- sprintf(device, "/dev/lp%d", i);
- if ((fd = open(device, O_WRONLY)) >= 0)
- {
- close(fd);
- printf("direct parallel:%s \"Unknown\" \"Parallel Port #%d\"\n", device, i + 1);
- }
- }
-#elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__) || defined(__FreeBSD_kernel__)
- int i; /* Looping var */
- int fd; /* File descriptor */
- char device[255]; /* Device filename */
-
-
- for (i = 0; i < 3; i ++)
- {
- sprintf(device, "/dev/lpt%d", i);
- if ((fd = open(device, O_WRONLY)) >= 0)
- {
- close(fd);
- printf("direct parallel:%s \"Unknown\" \"Parallel Port #%d (interrupt-driven)\"\n", device, i + 1);
- }
-
- sprintf(device, "/dev/lpa%d", i);
- if ((fd = open(device, O_WRONLY)) >= 0)
- {
- close(fd);
- printf("direct parallel:%s \"Unknown\" \"Parallel Port #%d (polled)\"\n", device, i + 1);
- }
- }
-#elif defined(_AIX)
- int i; /* Looping var */
- int fd; /* File descriptor */
- char device[255]; /* Device filename */
-
-
- for (i = 0; i < 8; i ++)
- {
- sprintf(device, "/dev/lp%d", i);
- if ((fd = open(device, O_WRONLY)) >= 0)
- {
- close(fd);
- printf("direct parallel:%s \"Unknown\" \"Parallel Port #%d\"\n", device, i + 1);
- }
- }
-#endif
-}
-
-
-/*
- * 'side_cb()' - Handle side-channel requests...
- */
-
-static int /* O - 0 on success, -1 on error */
-side_cb(int print_fd, /* I - Print file */
- int device_fd, /* I - Device file */
- int snmp_fd, /* I - SNMP socket (unused) */
- http_addr_t *addr, /* I - Device address (unused) */
- int use_bc) /* I - Using back-channel? */
-{
- cups_sc_command_t command; /* Request command */
- cups_sc_status_t status; /* Request/response status */
- char data[2048]; /* Request/response data */
- int datalen; /* Request/response data size */
-
-
- (void)snmp_fd;
- (void)addr;
-
- datalen = sizeof(data);
-
- if (cupsSideChannelRead(&command, &status, data, &datalen, 1.0))
- return (-1);
-
- switch (command)
- {
- case CUPS_SC_CMD_DRAIN_OUTPUT :
- if (backendDrainOutput(print_fd, device_fd))
- status = CUPS_SC_STATUS_IO_ERROR;
- else if (tcdrain(device_fd))
- status = CUPS_SC_STATUS_IO_ERROR;
- else
- status = CUPS_SC_STATUS_OK;
-
- datalen = 0;
- break;
-
- case CUPS_SC_CMD_GET_BIDI :
- status = CUPS_SC_STATUS_OK;
- data[0] = use_bc;
- datalen = 1;
- break;
-
- case CUPS_SC_CMD_GET_DEVICE_ID :
- memset(data, 0, sizeof(data));
-
- if (backendGetDeviceID(device_fd, data, sizeof(data) - 1,
- NULL, 0, NULL, NULL, 0))
- {
- status = CUPS_SC_STATUS_NOT_IMPLEMENTED;
- datalen = 0;
- }
- else
- {
- status = CUPS_SC_STATUS_OK;
- datalen = strlen(data);
- }
- break;
-
- default :
- status = CUPS_SC_STATUS_NOT_IMPLEMENTED;
- datalen = 0;
- break;
- }
-
- return (cupsSideChannelWrite(command, status, data, datalen, 1.0));
-}
-
-
-/*
- * End of "$Id: parallel.c 9774 2011-05-12 06:15:14Z mike $".
- */
diff --git a/backend/runloop.c b/backend/runloop.c
index 6cb41783..90bb9558 100644
--- a/backend/runloop.c
+++ b/backend/runloop.c
@@ -1,5 +1,5 @@
/*
- * "$Id: runloop.c 10369 2012-03-21 04:31:19Z mike $"
+ * "$Id: runloop.c 10434 2012-04-23 21:47:41Z mike $"
*
* Common run loop APIs for CUPS backends.
*
@@ -92,7 +92,8 @@ backendDrainOutput(int print_fd, /* I - Print file descriptor */
if (errno != EAGAIN || errno != EINTR)
{
- _cupsLangPrintError("ERROR", _("Unable to read print data"));
+ fprintf(stderr, "DEBUG: Read failed: %s\n", strerror(errno));
+ _cupsLangPrintFilter(stderr, "ERROR", _("Unable to read print data."));
return (-1);
}
@@ -250,7 +251,7 @@ backendRunLoop(
{
fputs("STATE: +offline-report\n", stderr);
_cupsLangPrintFilter(stderr, "INFO",
- _("Printer is not currently connected."));
+ _("The printer is not connected."));
offline = 1;
}
else if (errno == EINTR && total_bytes == 0)
@@ -319,7 +320,9 @@ backendRunLoop(
if (errno != EAGAIN || errno != EINTR)
{
- _cupsLangPrintError("ERROR", _("Unable to read print data"));
+ fprintf(stderr, "DEBUG: Read failed: %s\n", strerror(errno));
+ _cupsLangPrintFilter(stderr, "ERROR",
+ _("Unable to read print data."));
return (-1);
}
@@ -368,7 +371,7 @@ backendRunLoop(
{
fputs("STATE: +offline-report\n", stderr);
_cupsLangPrintFilter(stderr, "INFO",
- _("Printer is not currently connected."));
+ _("The printer is not connected."));
offline = 1;
}
}
@@ -389,7 +392,8 @@ backendRunLoop(
if (offline && update_state)
{
fputs("STATE: -offline-report\n", stderr);
- _cupsLangPrintFilter(stderr, "INFO", _("Printer is now connected."));
+ _cupsLangPrintFilter(stderr, "INFO",
+ _("The printer is now connected."));
offline = 0;
}
@@ -436,7 +440,7 @@ backendWaitLoop(
{
int nfds; /* Number of file descriptors */
fd_set input; /* Input set for reading */
- time_t curtime, /* Current time */
+ time_t curtime = 0, /* Current time */
snmp_update = 0;/* Last SNMP status update */
struct timeval timeout; /* Timeout for select() */
@@ -535,5 +539,5 @@ backendWaitLoop(
/*
- * End of "$Id: runloop.c 10369 2012-03-21 04:31:19Z mike $".
+ * End of "$Id: runloop.c 10434 2012-04-23 21:47:41Z mike $".
*/
diff --git a/backend/serial.c b/backend/serial.c
deleted file mode 100644
index 4f350a1f..00000000
--- a/backend/serial.c
+++ /dev/null
@@ -1,1327 +0,0 @@
-/*
- * "$Id: serial.c 9793 2011-05-20 03:49:49Z mike $"
- *
- * Serial port backend for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1997-2007 by Easy Software Products, all rights reserved.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * "LICENSE" which should have been included with this file. If this
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * main() - Send a file to the printer or server.
- * list_devices() - List all serial devices.
- * side_cb() - Handle side-channel requests...
- */
-
-/*
- * Include necessary headers.
- */
-
-#include "backend-private.h"
-#include <stdio.h>
-
-#ifdef __hpux
-# include <sys/modem.h>
-#endif /* __hpux */
-
-#ifdef WIN32
-# include <io.h>
-#else
-# include <unistd.h>
-# include <fcntl.h>
-# include <termios.h>
-# ifdef __hpux
-# include <sys/time.h>
-# else
-# include <sys/select.h>
-# endif /* __hpux */
-# ifdef HAVE_SYS_IOCTL_H
-# include <sys/ioctl.h>
-# endif /* HAVE_SYS_IOCTL_H */
-#endif /* WIN32 */
-
-#ifdef __sgi
-# include <invent.h>
-# ifndef INV_EPP_ECP_PLP
-# define INV_EPP_ECP_PLP 6 /* From 6.3/6.4/6.5 sys/invent.h */
-# define INV_ASO_SERIAL 14 /* serial portion of SGI ASO board */
-# define INV_IOC3_DMA 16 /* DMA mode IOC3 serial */
-# define INV_IOC3_PIO 17 /* PIO mode IOC3 serial */
-# define INV_ISA_DMA 19 /* DMA mode ISA serial -- O2 */
-# endif /* !INV_EPP_ECP_PLP */
-#endif /* __sgi */
-
-#ifndef CRTSCTS
-# ifdef CNEW_RTSCTS
-# define CRTSCTS CNEW_RTSCTS
-# else
-# define CRTSCTS 0
-# endif /* CNEW_RTSCTS */
-#endif /* !CRTSCTS */
-
-#if defined(__APPLE__)
-# include <CoreFoundation/CoreFoundation.h>
-# include <IOKit/IOKitLib.h>
-# include <IOKit/serial/IOSerialKeys.h>
-# include <IOKit/IOBSD.h>
-#endif /* __APPLE__ */
-
-#if defined(__linux) && defined(TIOCGSERIAL)
-# include <linux/serial.h>
-# include <linux/ioctl.h>
-#endif /* __linux && TIOCGSERIAL */
-
-
-/*
- * Local functions...
- */
-
-static void list_devices(void);
-static int side_cb(int print_fd, int device_fd, int use_bc);
-
-
-/*
- * 'main()' - Send a file to the printer or server.
- *
- * Usage:
- *
- * printer-uri job-id user title copies options [file]
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments (6 or 7) */
- char *argv[]) /* I - Command-line arguments */
-{
- char method[255], /* Method in URI */
- hostname[1024], /* Hostname */
- username[255], /* Username info (not used) */
- resource[1024], /* Resource info (device and options) */
- *options, /* Pointer to options */
- *name, /* Name of option */
- *value, /* Value of option */
- sep; /* Option separator */
- int port; /* Port number (not used) */
- int copies; /* Number of copies to print */
- int side_eof = 0, /* Saw EOF on side-channel? */
- print_fd, /* Print file */
- device_fd; /* Serial device */
- int nfds; /* Maximum file descriptor value + 1 */
- fd_set input, /* Input set for reading */
- output; /* Output set for writing */
- ssize_t print_bytes, /* Print bytes read */
- bc_bytes, /* Backchannel bytes read */
- total_bytes, /* Total bytes written */
- bytes; /* Bytes written */
- int dtrdsr; /* Do dtr/dsr flow control? */
- int print_size; /* Size of output buffer for writes */
- char print_buffer[8192], /* Print data buffer */
- *print_ptr, /* Pointer into print data buffer */
- bc_buffer[1024]; /* Back-channel data buffer */
- struct termios opts; /* Serial port options */
- struct termios origopts; /* Original port options */
-#if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
- struct sigaction action; /* Actions for POSIX signals */
-#endif /* HAVE_SIGACTION && !HAVE_SIGSET */
-
-
- /*
- * Make sure status messages are not buffered...
- */
-
- setbuf(stderr, NULL);
-
- /*
- * Ignore SIGPIPE signals...
- */
-
-#ifdef HAVE_SIGSET
- sigset(SIGPIPE, SIG_IGN);
-#elif defined(HAVE_SIGACTION)
- memset(&action, 0, sizeof(action));
- action.sa_handler = SIG_IGN;
- sigaction(SIGPIPE, &action, NULL);
-#else
- signal(SIGPIPE, SIG_IGN);
-#endif /* HAVE_SIGSET */
-
- /*
- * Check command-line...
- */
-
- if (argc == 1)
- {
- list_devices();
- return (CUPS_BACKEND_OK);
- }
- else if (argc < 6 || argc > 7)
- {
- _cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options [file]"),
- argv[0]);
- return (CUPS_BACKEND_FAILED);
- }
-
- /*
- * If we have 7 arguments, print the file named on the command-line.
- * Otherwise, send stdin instead...
- */
-
- if (argc == 6)
- {
- print_fd = 0;
- copies = 1;
- }
- else
- {
- /*
- * Try to open the print file...
- */
-
- if ((print_fd = open(argv[6], O_RDONLY)) < 0)
- {
- _cupsLangPrintError("ERROR", _("Unable to open print file"));
- return (CUPS_BACKEND_FAILED);
- }
-
- copies = atoi(argv[4]);
- }
-
- /*
- * Extract the device name and options from the URI...
- */
-
- httpSeparateURI(HTTP_URI_CODING_ALL, cupsBackendDeviceURI(argv),
- method, sizeof(method), username, sizeof(username),
- hostname, sizeof(hostname), &port,
- resource, sizeof(resource));
-
- /*
- * See if there are any options...
- */
-
- if ((options = strchr(resource, '?')) != NULL)
- {
- /*
- * Yup, terminate the device name string and move to the first
- * character of the options...
- */
-
- *options++ = '\0';
- }
-
- /*
- * Open the serial port device...
- */
-
- fputs("STATE: +connecting-to-device\n", stderr);
-
- do
- {
- if ((device_fd = open(resource, O_RDWR | O_NOCTTY | O_EXCL |
- O_NDELAY)) == -1)
- {
- if (getenv("CLASS") != NULL)
- {
- /*
- * If the CLASS environment variable is set, the job was submitted
- * to a class and not to a specific queue. In this case, we want
- * to abort immediately so that the job can be requeued on the next
- * available printer in the class.
- */
-
- _cupsLangPrintFilter(stderr, "INFO",
- _("Unable to contact printer, queuing on next "
- "printer in class."));
-
- /*
- * Sleep 5 seconds to keep the job from requeuing too rapidly...
- */
-
- sleep(5);
-
- return (CUPS_BACKEND_FAILED);
- }
-
- if (errno == EBUSY)
- {
- _cupsLangPrintFilter(stderr, "INFO",
- _("Printer busy; will retry in 30 seconds."));
- sleep(30);
- }
- else
- {
- _cupsLangPrintError("ERROR", _("Unable to open device file"));
- return (CUPS_BACKEND_FAILED);
- }
- }
- }
- while (device_fd < 0);
-
- fputs("STATE: -connecting-to-device\n", stderr);
-
- /*
- * Set any options provided...
- */
-
- tcgetattr(device_fd, &origopts);
- tcgetattr(device_fd, &opts);
-
- opts.c_lflag &= ~(ICANON | ECHO | ISIG);
- /* Raw mode */
- opts.c_oflag &= ~OPOST; /* Don't post-process */
-
- print_size = 96; /* 9600 baud / 10 bits/char / 10Hz */
- dtrdsr = 0; /* No dtr/dsr flow control */
-
- if (options)
- {
- while (*options)
- {
- /*
- * Get the name...
- */
-
- name = options;
-
- while (*options && *options != '=' && *options != '+' && *options != '&')
- options ++;
-
- if ((sep = *options) != '\0')
- *options++ = '\0';
-
- if (sep == '=')
- {
- /*
- * Get the value...
- */
-
- value = options;
-
- while (*options && *options != '+' && *options != '&')
- options ++;
-
- if (*options)
- *options++ = '\0';
- }
- else
- value = (char *)"";
-
- /*
- * Process the option...
- */
-
- if (!_cups_strcasecmp(name, "baud"))
- {
- /*
- * Set the baud rate...
- */
-
- print_size = atoi(value) / 100;
-
-#if B19200 == 19200
- cfsetispeed(&opts, atoi(value));
- cfsetospeed(&opts, atoi(value));
-#else
- switch (atoi(value))
- {
- case 1200 :
- cfsetispeed(&opts, B1200);
- cfsetospeed(&opts, B1200);
- break;
- case 2400 :
- cfsetispeed(&opts, B2400);
- cfsetospeed(&opts, B2400);
- break;
- case 4800 :
- cfsetispeed(&opts, B4800);
- cfsetospeed(&opts, B4800);
- break;
- case 9600 :
- cfsetispeed(&opts, B9600);
- cfsetospeed(&opts, B9600);
- break;
- case 19200 :
- cfsetispeed(&opts, B19200);
- cfsetospeed(&opts, B19200);
- break;
- case 38400 :
- cfsetispeed(&opts, B38400);
- cfsetospeed(&opts, B38400);
- break;
-# ifdef B57600
- case 57600 :
- cfsetispeed(&opts, B57600);
- cfsetospeed(&opts, B57600);
- break;
-# endif /* B57600 */
-# ifdef B115200
- case 115200 :
- cfsetispeed(&opts, B115200);
- cfsetospeed(&opts, B115200);
- break;
-# endif /* B115200 */
-# ifdef B230400
- case 230400 :
- cfsetispeed(&opts, B230400);
- cfsetospeed(&opts, B230400);
- break;
-# endif /* B230400 */
- default :
- _cupsLangPrintFilter(stderr, "WARNING",
- _("Unsupported baud rate: %s"), value);
- break;
- }
-#endif /* B19200 == 19200 */
- }
- else if (!_cups_strcasecmp(name, "bits"))
- {
- /*
- * Set number of data bits...
- */
-
- switch (atoi(value))
- {
- case 7 :
- opts.c_cflag &= ~CSIZE;
- opts.c_cflag |= CS7;
- opts.c_cflag |= PARENB;
- opts.c_cflag &= ~PARODD;
- break;
- case 8 :
- opts.c_cflag &= ~CSIZE;
- opts.c_cflag |= CS8;
- opts.c_cflag &= ~PARENB;
- break;
- }
- }
- else if (!_cups_strcasecmp(name, "parity"))
- {
- /*
- * Set parity checking...
- */
-
- if (!_cups_strcasecmp(value, "even"))
- {
- opts.c_cflag |= PARENB;
- opts.c_cflag &= ~PARODD;
- }
- else if (!_cups_strcasecmp(value, "odd"))
- {
- opts.c_cflag |= PARENB;
- opts.c_cflag |= PARODD;
- }
- else if (!_cups_strcasecmp(value, "none"))
- opts.c_cflag &= ~PARENB;
- else if (!_cups_strcasecmp(value, "space"))
- {
- /*
- * Note: we only support space parity with 7 bits per character...
- */
-
- opts.c_cflag &= ~CSIZE;
- opts.c_cflag |= CS8;
- opts.c_cflag &= ~PARENB;
- }
- else if (!_cups_strcasecmp(value, "mark"))
- {
- /*
- * Note: we only support mark parity with 7 bits per character
- * and 1 stop bit...
- */
-
- opts.c_cflag &= ~CSIZE;
- opts.c_cflag |= CS7;
- opts.c_cflag &= ~PARENB;
- opts.c_cflag |= CSTOPB;
- }
- }
- else if (!_cups_strcasecmp(name, "flow"))
- {
- /*
- * Set flow control...
- */
-
- if (!_cups_strcasecmp(value, "none"))
- {
- opts.c_iflag &= ~(IXON | IXOFF);
- opts.c_cflag &= ~CRTSCTS;
- }
- else if (!_cups_strcasecmp(value, "soft"))
- {
- opts.c_iflag |= IXON | IXOFF;
- opts.c_cflag &= ~CRTSCTS;
- }
- else if (!_cups_strcasecmp(value, "hard") ||
- !_cups_strcasecmp(value, "rtscts"))
- {
- opts.c_iflag &= ~(IXON | IXOFF);
- opts.c_cflag |= CRTSCTS;
- }
- else if (!_cups_strcasecmp(value, "dtrdsr"))
- {
- opts.c_iflag &= ~(IXON | IXOFF);
- opts.c_cflag &= ~CRTSCTS;
-
- dtrdsr = 1;
- }
- }
- else if (!_cups_strcasecmp(name, "stop"))
- {
- switch (atoi(value))
- {
- case 1 :
- opts.c_cflag &= ~CSTOPB;
- break;
-
- case 2 :
- opts.c_cflag |= CSTOPB;
- break;
- }
- }
- }
- }
-
- tcsetattr(device_fd, TCSANOW, &opts);
- fcntl(device_fd, F_SETFL, 0);
-
- /*
- * Now that we are "connected" to the port, ignore SIGTERM so that we
- * can finish out any page data the driver sends (e.g. to eject the
- * current page... Only ignore SIGTERM if we are printing data from
- * stdin (otherwise you can't cancel raw jobs...)
- */
-
- if (!print_fd)
- {
-#ifdef HAVE_SIGSET /* Use System V signals over POSIX to avoid bugs */
- sigset(SIGTERM, SIG_IGN);
-#elif defined(HAVE_SIGACTION)
- memset(&action, 0, sizeof(action));
-
- sigemptyset(&action.sa_mask);
- action.sa_handler = SIG_IGN;
- sigaction(SIGTERM, &action, NULL);
-#else
- signal(SIGTERM, SIG_IGN);
-#endif /* HAVE_SIGSET */
- }
-
- /*
- * Figure out the maximum file descriptor value to use with select()...
- */
-
- nfds = (print_fd > device_fd ? print_fd : device_fd) + 1;
-
- /*
- * Finally, send the print file. Ordinarily we would just use the
- * backendRunLoop() function, however since we need to use smaller
- * writes and may need to do DSR/DTR flow control, we duplicate much
- * of the code here instead...
- */
-
- if (print_size > sizeof(print_buffer))
- print_size = sizeof(print_buffer);
-
- total_bytes = 0;
-
- while (copies > 0)
- {
- copies --;
-
- if (print_fd != 0)
- {
- fputs("PAGE: 1 1\n", stderr);
- lseek(print_fd, 0, SEEK_SET);
- }
-
- /*
- * Now loop until we are out of data from print_fd...
- */
-
- for (print_bytes = 0, print_ptr = print_buffer;;)
- {
- /*
- * Use select() to determine whether we have data to copy around...
- */
-
- FD_ZERO(&input);
- if (!print_bytes)
- FD_SET(print_fd, &input);
- FD_SET(device_fd, &input);
- if (!print_bytes && !side_eof)
- FD_SET(CUPS_SC_FD, &input);
-
- FD_ZERO(&output);
- if (print_bytes)
- FD_SET(device_fd, &output);
-
- if (select(nfds, &input, &output, NULL, NULL) < 0)
- continue; /* Ignore errors here */
-
- /*
- * Check if we have a side-channel request ready...
- */
-
- if (FD_ISSET(CUPS_SC_FD, &input))
- {
- /*
- * Do the side-channel request, then start back over in the select
- * loop since it may have read from print_fd...
- */
-
- if (side_cb(print_fd, device_fd, 1))
- side_eof = 1;
- continue;
- }
-
- /*
- * Check if we have back-channel data ready...
- */
-
- if (FD_ISSET(device_fd, &input))
- {
- if ((bc_bytes = read(device_fd, bc_buffer, sizeof(bc_buffer))) > 0)
- {
- fprintf(stderr,
- "DEBUG: Received " CUPS_LLFMT " bytes of back-channel data\n",
- CUPS_LLCAST bc_bytes);
- cupsBackChannelWrite(bc_buffer, bc_bytes, 1.0);
- }
- }
-
- /*
- * Check if we have print data ready...
- */
-
- if (FD_ISSET(print_fd, &input))
- {
- if ((print_bytes = read(print_fd, print_buffer, print_size)) < 0)
- {
- /*
- * Read error - bail if we don't see EAGAIN or EINTR...
- */
-
- if (errno != EAGAIN || errno != EINTR)
- {
- perror("DEBUG: Unable to read print data");
-
- tcsetattr(device_fd, TCSADRAIN, &origopts);
-
- close(device_fd);
-
- if (print_fd != 0)
- close(print_fd);
-
- return (CUPS_BACKEND_FAILED);
- }
-
- print_bytes = 0;
- }
- else if (print_bytes == 0)
- {
- /*
- * End of file, break out of the loop...
- */
-
- break;
- }
-
- print_ptr = print_buffer;
- }
-
- /*
- * Check if the device is ready to receive data and we have data to
- * send...
- */
-
- if (print_bytes && FD_ISSET(device_fd, &output))
- {
- if (dtrdsr)
- {
- /*
- * Check the port and sleep until DSR is set...
- */
-
- int status;
-
-
- if (!ioctl(device_fd, TIOCMGET, &status))
- if (!(status & TIOCM_DSR))
- {
- /*
- * Wait for DSR to go high...
- */
-
- fputs("DEBUG: DSR is low; waiting for device...\n", stderr);
-
- do
- {
- /*
- * Poll every 100ms...
- */
-
- usleep(100000);
-
- if (ioctl(device_fd, TIOCMGET, &status))
- break;
- }
- while (!(status & TIOCM_DSR));
-
- fputs("DEBUG: DSR is high; writing to device...\n", stderr);
- }
- }
-
- if ((bytes = write(device_fd, print_ptr, print_bytes)) < 0)
- {
- /*
- * Write error - bail if we don't see an error we can retry...
- */
-
- if (errno != EAGAIN && errno != EINTR && errno != ENOTTY)
- {
- perror("DEBUG: Unable to write print data");
-
- tcsetattr(device_fd, TCSADRAIN, &origopts);
-
- close(device_fd);
-
- if (print_fd != 0)
- close(print_fd);
-
- return (CUPS_BACKEND_FAILED);
- }
- }
- else
- {
- fprintf(stderr, "DEBUG: Wrote %d bytes...\n", (int)bytes);
-
- print_bytes -= bytes;
- print_ptr += bytes;
- total_bytes += bytes;
- }
- }
- }
- }
-
- /*
- * Close the serial port and input file and return...
- */
-
- tcsetattr(device_fd, TCSADRAIN, &origopts);
-
- close(device_fd);
-
- if (print_fd != 0)
- close(print_fd);
-
- return (CUPS_BACKEND_OK);
-}
-
-
-/*
- * 'list_devices()' - List all serial devices.
- */
-
-static void
-list_devices(void)
-{
-#if defined(__hpux) || defined(__sgi) || defined(__sun) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__FreeBSD_kernel__)
- static char *funky_hex = "0123456789abcdefghijklmnopqrstuvwxyz";
- /* Funky hex numbering used for some *
- * devices */
-#endif /* __hpux || __sgi || __sun || __FreeBSD__ || __OpenBSD__ || __FreeBSD_kernel__ */
-
-
-#ifdef __linux
- int i, j; /* Looping vars */
- int fd; /* File descriptor */
- char device[255]; /* Device filename */
- char info[255]; /* Device info/description */
-# ifdef TIOCGSERIAL
- struct serial_struct serinfo; /* serial port info */
-# endif /* TIOCGSERIAL */
-
-
- for (i = 0; i < 100; i ++)
- {
- sprintf(device, "/dev/ttyS%d", i);
-
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
-# ifdef TIOCGSERIAL
- /*
- * See if this port exists...
- */
-
- serinfo.reserved_char[0] = 0;
-
- if (!ioctl(fd, TIOCGSERIAL, &serinfo))
- {
- if (serinfo.type == PORT_UNKNOWN)
- {
- /*
- * Nope...
- */
-
- close(fd);
- continue;
- }
- }
-# endif /* TIOCGSERIAL */
-
- close(fd);
-
- snprintf(info, sizeof(info),
- _cupsLangString(cupsLangDefault(), _("Serial Port #%d")), i + 1);
-
-# if defined(_ARCH_PPC) || defined(powerpc) || defined(__powerpc)
- printf("serial serial:%s?baud=230400 \"Unknown\" \"%s\"\n", device, info);
-# else
- printf("serial serial:%s?baud=115200 \"Unknown\" \"%s\"\n", device, info);
-# endif /* _ARCH_PPC || powerpc || __powerpc */
- }
- }
-
- for (i = 0; i < 16; i ++)
- {
- snprintf(info, sizeof(info),
- _cupsLangString(cupsLangDefault(), _("USB Serial Port #%d")),
- i + 1);
-
- sprintf(device, "/dev/usb/ttyUSB%d", i);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
- printf("serial serial:%s?baud=230400 \"Unknown\" \"%s\"\n", device, info);
- }
-
- sprintf(device, "/dev/ttyUSB%d", i);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
- printf("serial serial:%s?baud=230400 \"Unknown\" \"%s\"\n", device, info);
- }
- }
-
- for (i = 0; i < 64; i ++)
- {
- for (j = 0; j < 8; j ++)
- {
- sprintf(device, "/dev/ttyQ%02de%d", i, j);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
-
- printf("serial serial:%s?baud=115200 \"Unknown\" "
- "\"Equinox ESP %d Port #%d\"\n", device, i, j + 1);
- }
- }
- }
-#elif defined(__sgi)
- int i, j, n; /* Looping vars */
- char device[255]; /* Device filename */
- inventory_t *inv; /* Hardware inventory info */
-
-
- /*
- * IRIX maintains a hardware inventory of most devices...
- */
-
- setinvent();
-
- while ((inv = getinvent()) != NULL)
- {
- if (inv->inv_class == INV_SERIAL)
- {
- /*
- * Some sort of serial port...
- */
-
- if (inv->inv_type == INV_CDSIO || inv->inv_type == INV_CDSIO_E)
- {
- /*
- * CDSIO port...
- */
-
- for (n = 0; n < 6; n ++)
- printf("serial serial:/dev/ttyd%d?baud=38400 \"Unknown\" \"CDSIO Board %d Serial Port #%d\"\n",
- n + 5 + 8 * inv->inv_controller, inv->inv_controller, n + 1);
- }
- else if (inv->inv_type == INV_EPC_SERIAL)
- {
- /*
- * Everest serial port...
- */
-
- if (inv->inv_unit == 0)
- i = 1;
- else
- i = 41 + 4 * (int)inv->inv_controller;
-
- for (n = 0; n < (int)inv->inv_state; n ++)
- printf("serial serial:/dev/ttyd%d?baud=38400 \"Unknown\" \"EPC Serial Port %d, Ebus slot %d\"\n",
- n + i, n + 1, (int)inv->inv_controller);
- }
- else if (inv->inv_state > 1)
- {
- /*
- * Standard serial port under IRIX 6.4 and earlier...
- */
-
- for (n = 0; n < (int)inv->inv_state; n ++)
- printf("serial serial:/dev/ttyd%d?baud=38400 \"Unknown\" \"Onboard Serial Port %d\"\n",
- n + (int)inv->inv_unit + 1, n + (int)inv->inv_unit + 1);
- }
- else
- {
- /*
- * Standard serial port under IRIX 6.5 and beyond...
- */
-
- printf("serial serial:/dev/ttyd%d?baud=115200 \"Unknown\" \"Onboard Serial Port %d\"\n",
- (int)inv->inv_controller, (int)inv->inv_controller);
- }
- }
- }
-
- endinvent();
-
- /*
- * Central Data makes serial and parallel "servers" that can be
- * connected in a number of ways. Look for ports...
- */
-
- for (i = 0; i < 10; i ++)
- for (j = 0; j < 8; j ++)
- for (n = 0; n < 32; n ++)
- {
- if (i == 8) /* EtherLite */
- sprintf(device, "/dev/ttydn%d%c", j, funky_hex[n]);
- else if (i == 9) /* PCI */
- sprintf(device, "/dev/ttydp%d%c", j, funky_hex[n]);
- else /* SCSI */
- sprintf(device, "/dev/ttyd%d%d%c", i, j, funky_hex[n]);
-
- if (access(device, 0) == 0)
- {
- if (i == 8)
- printf("serial serial:%s?baud=38400 \"Unknown\" \"Central Data EtherLite Serial Port, ID %d, port %d\"\n",
- device, j, n);
- else if (i == 9)
- printf("serial serial:%s?baud=38400 \"Unknown\" \"Central Data PCI Serial Port, ID %d, port %d\"\n",
- device, j, n);
- else
- printf("serial serial:%s?baud=38400 \"Unknown\" \"Central Data SCSI Serial Port, logical bus %d, ID %d, port %d\"\n",
- device, i, j, n);
- }
- }
-#elif defined(__sun)
- int i, j, n; /* Looping vars */
- char device[255]; /* Device filename */
- char info[255]; /* Device info/description */
-
-
- /*
- * Standard serial ports...
- */
-
- for (i = 0; i < 26; i ++)
- {
- sprintf(device, "/dev/cua/%c", 'a' + i);
- if (!access(device, 0))
- {
- snprintf(info, sizeof(info),
- _cupsLangString(cupsLangDefault(), _("Serial Port #%d")), i + 1);
-
-# ifdef B115200
- printf("serial serial:%s?baud=115200 \"Unknown\" \"%s\"\n", device, info);
-# else
- printf("serial serial:%s?baud=38400 \"Unknown\" \"%s\"\n", device, info);
-# endif /* B115200 */
- }
- }
-
- /*
- * MAGMA serial ports...
- */
-
- for (i = 0; i < 40; i ++)
- {
- sprintf(device, "/dev/term/%02d", i);
- if (access(device, 0) == 0)
- printf("serial serial:%s?baud=38400 \"Unknown\" \"MAGMA Serial Board #%d Port #%d\"\n",
- device, (i / 10) + 1, (i % 10) + 1);
- }
-
- /*
- * Central Data serial ports...
- */
-
- for (i = 0; i < 9; i ++)
- for (j = 0; j < 8; j ++)
- for (n = 0; n < 32; n ++)
- {
- if (i == 8) /* EtherLite */
- sprintf(device, "/dev/sts/ttyN%d%c", j, funky_hex[n]);
- else
- sprintf(device, "/dev/sts/tty%c%d%c", i + 'C', j,
- funky_hex[n]);
-
- if (access(device, 0) == 0)
- {
- if (i == 8)
- printf("serial serial:%s?baud=38400 \"Unknown\" \"Central Data EtherLite Serial Port, ID %d, port %d\"\n",
- device, j, n);
- else
- printf("serial serial:%s?baud=38400 \"Unknown\" \"Central Data SCSI Serial Port, logical bus %d, ID %d, port %d\"\n",
- device, i, j, n);
- }
- }
-#elif defined(__hpux)
- int i, j, n; /* Looping vars */
- char device[255]; /* Device filename */
-
-
- /*
- * Standard serial ports...
- */
-
- for (i = 0; i < 10; i ++)
- {
- sprintf(device, "/dev/tty%dp0", i);
- if (access(device, 0) == 0)
- printf("serial serial:%s?baud=38400 \"Unknown\" \"Serial Port #%d\"\n",
- device, i + 1);
- }
-
- /*
- * Central Data serial ports...
- */
-
- for (i = 0; i < 9; i ++)
- for (j = 0; j < 8; j ++)
- for (n = 0; n < 32; n ++)
- {
- if (i == 8) /* EtherLite */
- sprintf(device, "/dev/ttyN%d%c", j, funky_hex[n]);
- else
- sprintf(device, "/dev/tty%c%d%c", i + 'C', j,
- funky_hex[n]);
-
- if (access(device, 0) == 0)
- {
- if (i == 8)
- printf("serial serial:%s?baud=38400 \"Unknown\" \"Central Data EtherLite Serial Port, ID %d, port %d\"\n",
- device, j, n);
- else
- printf("serial serial:%s?baud=38400 \"Unknown\" \"Central Data SCSI Serial Port, logical bus %d, ID %d, port %d\"\n",
- device, i, j, n);
- }
- }
-#elif defined(__osf__)
- int i; /* Looping var */
- char device[255]; /* Device filename */
-
-
- /*
- * Standard serial ports...
- */
-
- for (i = 0; i < 100; i ++)
- {
- sprintf(device, "/dev/tty%02d", i);
- if (access(device, 0) == 0)
- printf("serial serial:%s?baud=38400 \"Unknown\" \"Serial Port #%d\"\n",
- device, i + 1);
- }
-#elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__FreeBSD_kernel__)
- int i, j; /* Looping vars */
- int fd; /* File descriptor */
- char device[255]; /* Device filename */
- char info[255]; /* Device info/description */
-
-
- /*
- * SIO ports...
- */
-
- for (i = 0; i < 32; i ++)
- {
- sprintf(device, "/dev/ttyd%c", funky_hex[i]);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
-
- snprintf(info, sizeof(info),
- _cupsLangString(cupsLangDefault(), _("Serial Port #%d")), i + 1);
-
- printf("serial serial:%s?baud=115200 \"Unknown\" \"%s\"\n", device, info);
- }
- }
-
- /*
- * Cyclades ports...
- */
-
- for (i = 0; i < 16; i ++) /* Should be up to 65536 boards... */
- for (j = 0; j < 32; j ++)
- {
- sprintf(device, "/dev/ttyc%d%c", i, funky_hex[j]);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
- printf("serial serial:%s?baud=115200 \"Unknown\" \"Cyclades #%d Serial Port #%d\"\n",
- device, i, j + 1);
- }
-
- sprintf(device, "/dev/ttyC%d%c", i, funky_hex[j]);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
- printf("serial serial:%s?baud=115200 \"Unknown\" \"Cyclades #%d Serial Port #%d\"\n",
- device, i, j + 1);
- }
- }
-
- /*
- * Digiboard ports...
- */
-
- for (i = 0; i < 16; i ++) /* Should be up to 65536 boards... */
- for (j = 0; j < 32; j ++)
- {
- sprintf(device, "/dev/ttyD%d%c", i, funky_hex[j]);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
- printf("serial serial:%s?baud=115200 \"Unknown\" \"Digiboard #%d Serial Port #%d\"\n",
- device, i, j + 1);
- }
- }
-
- /*
- * Stallion ports...
- */
-
- for (i = 0; i < 32; i ++)
- {
- sprintf(device, "/dev/ttyE%c", funky_hex[i]);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
- printf("serial serial:%s?baud=115200 \"Unknown\" \"Stallion Serial Port #%d\"\n",
- device, i + 1);
- }
- }
-
- /*
- * SX ports...
- */
-
- for (i = 0; i < 128; i ++)
- {
- sprintf(device, "/dev/ttyA%d", i + 1);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
- printf("serial serial:%s?baud=115200 \"Unknown\" \"SX Serial Port #%d\"\n",
- device, i + 1);
- }
- }
-#elif defined(__NetBSD__)
- int i, j; /* Looping vars */
- int fd; /* File descriptor */
- char device[255]; /* Device filename */
- char info[255]; /* Device info/description */
-
-
- /*
- * Standard serial ports...
- */
-
- for (i = 0; i < 4; i ++)
- {
- sprintf(device, "/dev/tty%02d", i);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
-
- snprintf(info, sizeof(info),
- _cupsLangString(cupsLangDefault(), _("Serial Port #%d")), i + 1);
-
- printf("serial serial:%s?baud=115200 \"Unknown\" \"%s\"\n", device, info);
- }
- }
-
- /*
- * Cyclades-Z ports...
- */
-
- for (i = 0; i < 16; i ++) /* Should be up to 65536 boards... */
- for (j = 0; j < 64; j ++)
- {
- sprintf(device, "/dev/ttyCZ%02d%02d", i, j);
- if ((fd = open(device, O_WRONLY | O_NOCTTY | O_NDELAY)) >= 0)
- {
- close(fd);
- printf("serial serial:%s?baud=115200 \"Unknown\" \"Cyclades #%d Serial Prt #%d\"\n",
- device, i, j + 1);
- }
- }
-#elif defined(__APPLE__)
- /*
- * Standard serial ports on MacOS X...
- */
-
- kern_return_t kernResult;
- mach_port_t masterPort;
- io_iterator_t serialPortIterator;
- CFMutableDictionaryRef classesToMatch;
- io_object_t serialService;
-
-
- kernResult = IOMasterPort(MACH_PORT_NULL, &masterPort);
- if (KERN_SUCCESS != kernResult)
- return;
-
- /*
- * Serial devices are instances of class IOSerialBSDClient.
- */
-
- classesToMatch = IOServiceMatching(kIOSerialBSDServiceValue);
- if (classesToMatch != NULL)
- {
- CFDictionarySetValue(classesToMatch, CFSTR(kIOSerialBSDTypeKey),
- CFSTR(kIOSerialBSDRS232Type));
-
- kernResult = IOServiceGetMatchingServices(masterPort, classesToMatch,
- &serialPortIterator);
- if (kernResult == KERN_SUCCESS)
- {
- while ((serialService = IOIteratorNext(serialPortIterator)))
- {
- CFTypeRef serialNameAsCFString;
- CFTypeRef bsdPathAsCFString;
- CFTypeRef hiddenVal;
- char serialName[128];
- char bsdPath[1024];
- Boolean result;
-
-
- /* Check if hidden... */
- hiddenVal = IORegistryEntrySearchCFProperty(serialService,
- kIOServicePlane,
- CFSTR("HiddenPort"),
- kCFAllocatorDefault,
- kIORegistryIterateRecursively |
- kIORegistryIterateParents);
- if (hiddenVal)
- CFRelease(hiddenVal); /* This interface should not be used */
- else
- {
- serialNameAsCFString =
- IORegistryEntryCreateCFProperty(serialService,
- CFSTR(kIOTTYDeviceKey),
- kCFAllocatorDefault, 0);
- if (serialNameAsCFString)
- {
- result = CFStringGetCString(serialNameAsCFString, serialName,
- sizeof(serialName),
- kCFStringEncodingASCII);
- CFRelease(serialNameAsCFString);
-
- if (result)
- {
- bsdPathAsCFString =
- IORegistryEntryCreateCFProperty(serialService,
- CFSTR(kIOCalloutDeviceKey),
- kCFAllocatorDefault, 0);
- if (bsdPathAsCFString)
- {
- result = CFStringGetCString(bsdPathAsCFString, bsdPath,
- sizeof(bsdPath),
- kCFStringEncodingASCII);
- CFRelease(bsdPathAsCFString);
-
- if (result)
- printf("serial serial:%s?baud=115200 \"Unknown\" \"%s\"\n",
- bsdPath, serialName);
- }
- }
- }
- }
-
- IOObjectRelease(serialService);
- }
-
- /*
- * Release the iterator.
- */
-
- IOObjectRelease(serialPortIterator);
- }
- }
-#endif
-}
-
-
-/*
- * 'side_cb()' - Handle side-channel requests...
- */
-
-static int /* O - 0 on success, -1 on error */
-side_cb(int print_fd, /* I - Print file */
- int device_fd, /* I - Device file */
- int use_bc) /* I - Using back-channel? */
-{
- cups_sc_command_t command; /* Request command */
- cups_sc_status_t status; /* Request/response status */
- char data[2048]; /* Request/response data */
- int datalen; /* Request/response data size */
-
-
- datalen = sizeof(data);
-
- if (cupsSideChannelRead(&command, &status, data, &datalen, 1.0))
- return (-1);
-
- switch (command)
- {
- case CUPS_SC_CMD_DRAIN_OUTPUT :
- if (backendDrainOutput(print_fd, device_fd))
- status = CUPS_SC_STATUS_IO_ERROR;
- else if (tcdrain(device_fd))
- status = CUPS_SC_STATUS_IO_ERROR;
- else
- status = CUPS_SC_STATUS_OK;
-
- datalen = 0;
- break;
-
- case CUPS_SC_CMD_GET_BIDI :
- status = CUPS_SC_STATUS_OK;
- data[0] = use_bc;
- datalen = 1;
- break;
-
- default :
- status = CUPS_SC_STATUS_NOT_IMPLEMENTED;
- datalen = 0;
- break;
- }
-
- return (cupsSideChannelWrite(command, status, data, datalen, 1.0));
-}
-
-
-/*
- * End of "$Id: serial.c 9793 2011-05-20 03:49:49Z mike $".
- */
diff --git a/backend/snmp-supplies.c b/backend/snmp-supplies.c
index dc2b3f1a..17128acc 100644
--- a/backend/snmp-supplies.c
+++ b/backend/snmp-supplies.c
@@ -1,5 +1,5 @@
/*
- * "$Id: snmp-supplies.c 10262 2012-02-12 05:48:09Z mike $"
+ * "$Id: snmp-supplies.c 10493 2012-05-21 22:33:19Z mike $"
*
* SNMP supplies functions for CUPS.
*
@@ -36,14 +36,21 @@
#define CUPS_MAX_SUPPLIES 32 /* Maximum number of supplies for a printer */
#define CUPS_SUPPLY_TIMEOUT 2.0 /* Timeout for SNMP lookups */
-#define CUPS_DEVELOPER_LOW 1
-#define CUPS_DEVELOPER_EMPTY 2
-#define CUPS_MARKER_SUPPLY_LOW 4
-#define CUPS_MARKER_SUPPLY_EMPTY 8
-#define CUPS_OPC_NEAR_EOL 16
-#define CUPS_OPC_LIFE_OVER 32
-#define CUPS_TONER_LOW 64
-#define CUPS_TONER_EMPTY 128
+#define CUPS_DEVELOPER_LOW 0x0001
+#define CUPS_DEVELOPER_EMPTY 0x0002
+#define CUPS_MARKER_SUPPLY_LOW 0x0004
+#define CUPS_MARKER_SUPPLY_EMPTY 0x0008
+#define CUPS_OPC_NEAR_EOL 0x0010
+#define CUPS_OPC_LIFE_OVER 0x0020
+#define CUPS_TONER_LOW 0x0040
+#define CUPS_TONER_EMPTY 0x0080
+#define CUPS_WASTE_ALMOST_FULL 0x0100
+#define CUPS_WASTE_FULL 0x0200
+#define CUPS_CLEANER_NEAR_EOL 0x0400 /* Proposed JPS3 */
+#define CUPS_CLEANER_LIFE_OVER 0x0800 /* Proposed JPS3 */
+
+#define CUPS_SNMP_NONE 0x0000
+#define CUPS_SNMP_CAPACITY 0x0001 /* Supply levels reported as percentages */
/*
@@ -75,6 +82,8 @@ static http_addr_t current_addr; /* Current address */
static int current_state = -1;
/* Current device state bits */
static int charset = -1; /* Character set for supply names */
+static unsigned quirks = CUPS_SNMP_NONE;
+ /* Quirks we have to work around */
static int num_supplies = 0;
/* Number of supplies found */
static backend_supplies_t supplies[CUPS_MAX_SUPPLIES];
@@ -146,10 +155,17 @@ static const int prtMarkerSuppliesType[] =
(sizeof(prtMarkerSuppliesType) /
sizeof(prtMarkerSuppliesType[0]));
/* Offset to supply index */
+static const int prtMarkerSuppliesSupplyUnit[] =
+ { CUPS_OID_prtMarkerSuppliesSupplyUnit, -1 },
+ /* Units OID */
+ prtMarkerSuppliesSupplyUnitOffset =
+ (sizeof(prtMarkerSuppliesSupplyUnit) /
+ sizeof(prtMarkerSuppliesSupplyUnit[0]));
+ /* Offset to supply index */
static const backend_state_t const printer_states[] =
{
- { CUPS_TC_lowPaper, "media-low-report" },
+ /* { CUPS_TC_lowPaper, "media-low-report" }, */
{ CUPS_TC_noPaper | CUPS_TC_inputTrayEmpty, "media-empty-warning" },
/* { CUPS_TC_lowToner, "toner-low-report" }, */ /* now use prtMarkerSupplies */
/* { CUPS_TC_noToner, "toner-empty-warning" }, */ /* now use prtMarkerSupplies */
@@ -173,7 +189,11 @@ static const backend_state_t const supply_states[] =
{ CUPS_OPC_NEAR_EOL, "opc-near-eol-report" },
{ CUPS_OPC_LIFE_OVER, "opc-life-over-warning" },
{ CUPS_TONER_LOW, "toner-low-report" },
- { CUPS_TONER_EMPTY, "toner-empty-warning" }
+ { CUPS_TONER_EMPTY, "toner-empty-warning" },
+ { CUPS_WASTE_ALMOST_FULL, "waste-receptacle-almost-full-report" },
+ { CUPS_WASTE_FULL, "waste-receptacle-full-warning" },
+ { CUPS_CLEANER_NEAR_EOL, "cleaner-life-almost-over-report" },
+ { CUPS_CLEANER_LIFE_OVER, "cleaner-life-over-warning" },
};
@@ -231,6 +251,9 @@ backendSNMPSupplies(
{
if (supplies[i].max_capacity > 0 && supplies[i].level >= 0)
percent = 100 * supplies[i].level / supplies[i].max_capacity;
+ else if (supplies[i].level >= 0 && supplies[i].level <= 100 &&
+ (quirks & CUPS_SNMP_CAPACITY))
+ percent = supplies[i].level;
else
percent = 50;
@@ -245,9 +268,6 @@ backendSNMPSupplies(
else
new_supply_state |= CUPS_TONER_LOW;
break;
- case CUPS_TC_wasteToner :
- case CUPS_TC_wasteInk :
- break;
case CUPS_TC_ink :
case CUPS_TC_inkCartridge :
case CUPS_TC_inkRibbon :
@@ -273,13 +293,31 @@ backendSNMPSupplies(
else
new_supply_state |= CUPS_OPC_NEAR_EOL;
break;
+ case CUPS_TC_wasteInk :
+ case CUPS_TC_wastePaper :
+ case CUPS_TC_wasteToner :
+ case CUPS_TC_wasteWater :
+ case CUPS_TC_wasteWax :
+ if (percent <= 1)
+ new_supply_state |= CUPS_WASTE_FULL;
+ else
+ new_supply_state |= CUPS_WASTE_ALMOST_FULL;
+ break;
+ case CUPS_TC_cleanerUnit :
+ case CUPS_TC_fuserCleaningPad :
+ if (percent <= 1)
+ new_supply_state |= CUPS_CLEANER_LIFE_OVER;
+ else
+ new_supply_state |= CUPS_CLEANER_NEAR_EOL;
+ break;
}
}
if (i)
*ptr++ = ',';
- if (supplies[i].max_capacity > 0 && supplies[i].level >= 0)
+ if ((supplies[i].max_capacity > 0 || (quirks & CUPS_SNMP_CAPACITY)) &&
+ supplies[i].level >= 0)
sprintf(ptr, "%d", percent);
else
strcpy(ptr, "-1");
@@ -477,6 +515,12 @@ backend_init_supplies(
return;
}
+ if ((ppdattr = ppdFindAttr(ppd, "cupsSNMPQuirks", NULL)) != NULL)
+ {
+ if (!_cups_strcasecmp(ppdattr->value, "capacity"))
+ quirks |= CUPS_SNMP_CAPACITY;
+ }
+
ppdClose(ppd);
/*
@@ -903,7 +947,8 @@ backend_walk_cb(cups_snmp_t *packet, /* I - SNMP packet */
supplies[i - 1].level = packet->object_value.integer;
}
- else if (_cupsSNMPIsOIDPrefixed(packet, prtMarkerSuppliesMaxCapacity))
+ else if (_cupsSNMPIsOIDPrefixed(packet, prtMarkerSuppliesMaxCapacity) &&
+ !(quirks & CUPS_SNMP_CAPACITY))
{
/*
* Get max capacity...
@@ -920,7 +965,9 @@ backend_walk_cb(cups_snmp_t *packet, /* I - SNMP packet */
if (i > num_supplies)
num_supplies = i;
- supplies[i - 1].max_capacity = packet->object_value.integer;
+ if (supplies[i - 1].max_capacity == 0 &&
+ packet->object_value.integer > 0)
+ supplies[i - 1].max_capacity = packet->object_value.integer;
}
else if (_cupsSNMPIsOIDPrefixed(packet, prtMarkerSuppliesType))
{
@@ -941,6 +988,26 @@ backend_walk_cb(cups_snmp_t *packet, /* I - SNMP packet */
supplies[i - 1].type = packet->object_value.integer;
}
+ else if (_cupsSNMPIsOIDPrefixed(packet, prtMarkerSuppliesSupplyUnit))
+ {
+ /*
+ * Get units for capacity...
+ */
+
+ i = packet->object_name[prtMarkerSuppliesSupplyUnitOffset];
+ if (i < 1 || i > CUPS_MAX_SUPPLIES ||
+ packet->object_type != CUPS_ASN1_INTEGER)
+ return;
+
+ fprintf(stderr, "DEBUG2: prtMarkerSuppliesSupplyUnit.1.%d = %d\n", i,
+ packet->object_value.integer);
+
+ if (i > num_supplies)
+ num_supplies = i;
+
+ if (packet->object_value.integer == CUPS_TC_percent)
+ supplies[i - 1].max_capacity = 100;
+ }
}
@@ -1006,5 +1073,5 @@ utf16_to_utf8(
/*
- * End of "$Id: snmp-supplies.c 10262 2012-02-12 05:48:09Z mike $".
+ * End of "$Id: snmp-supplies.c 10493 2012-05-21 22:33:19Z mike $".
*/
diff --git a/backend/snmp.c b/backend/snmp.c
index fbd236a1..ca3a24fe 100644
--- a/backend/snmp.c
+++ b/backend/snmp.c
@@ -1,5 +1,5 @@
/*
- * "$Id: snmp.c 10209 2012-01-30 22:19:03Z mike $"
+ * "$Id: snmp.c 10535 2012-06-22 03:45:53Z mike $"
*
* SNMP discovery backend for CUPS.
*
@@ -251,7 +251,7 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
#ifdef AF_INET6
if ((ipv6 = _cupsSNMPOpen(AF_INET6)) < 0)
- return (1);
+ perror("DEBUG: Unable to create IPv6 socket");
#else
ipv6 = -1;
#endif /* AF_INET6 */
@@ -1383,5 +1383,5 @@ update_cache(snmp_cache_t *device, /* I - Device */
/*
- * End of "$Id: snmp.c 10209 2012-01-30 22:19:03Z mike $".
+ * End of "$Id: snmp.c 10535 2012-06-22 03:45:53Z mike $".
*/
diff --git a/backend/socket.c b/backend/socket.c
index 5e28fc89..cde27b51 100644
--- a/backend/socket.c
+++ b/backend/socket.c
@@ -1,9 +1,9 @@
/*
- * "$Id: socket.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: socket.c 10431 2012-04-23 19:19:19Z mike $"
*
* AppSocket backend for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -371,7 +371,7 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
case ECONNREFUSED :
default :
_cupsLangPrintFilter(stderr, "WARNING",
- _("The printer is busy."));
+ _("The printer is in use."));
break;
}
@@ -472,8 +472,6 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
if (print_fd != 0)
close(print_fd);
- _cupsLangPrintFilter(stderr, "INFO", _("Ready to print."));
-
return (CUPS_BACKEND_OK);
}
@@ -523,5 +521,5 @@ wait_bc(int device_fd, /* I - Socket */
/*
- * End of "$Id: socket.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: socket.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/backend/testbackend.c b/backend/testbackend.c
index 682b8aa2..ad260701 100644
--- a/backend/testbackend.c
+++ b/backend/testbackend.c
@@ -1,9 +1,9 @@
/*
- * "$Id: testbackend.c 9042 2010-03-24 00:45:34Z mike $"
+ * "$Id: testbackend.c 10389 2012-03-28 21:57:29Z mike $"
*
* Backend test program for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2005 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -47,7 +47,7 @@ static int job_canceled = 0;
*/
static void sigterm_handler(int sig);
-static void usage(void);
+static void usage(void) __attribute__((noreturn));
static void walk_cb(const char *oid, const char *data, int datalen,
void *context);
@@ -57,7 +57,7 @@ static void walk_cb(const char *oid, const char *data, int datalen,
*
* Usage:
*
- * betest [-s] [-t] device-uri job-id user title copies options [file]
+ * testbackend [-s] [-t] device-uri job-id user title copies options [file]
*/
int /* O - Exit status */
@@ -75,7 +75,9 @@ main(int argc, /* I - Number of command-line args */
const char *oid = ".1.3.6.1.2.1.43.10.2.1.4.1.1";
/* OID to lookup or walk */
char scheme[255], /* Scheme in URI == backend */
- backend[1024]; /* Backend path */
+ backend[1024], /* Backend path */
+ libpath[1024], /* Path for libcups */
+ *ptr; /* Pointer into path */
const char *serverbin; /* CUPS_SERVERBIN environment variable */
int fd, /* Temporary file descriptor */
back_fds[2], /* Back-channel pipe */
@@ -88,6 +90,29 @@ main(int argc, /* I - Number of command-line args */
/*
+ * Get the current directory and point the run-time linker at the "cups"
+ * subdirectory...
+ */
+
+ if (getcwd(libpath, sizeof(libpath)) &&
+ (ptr = strrchr(libpath, '/')) != NULL && !strcmp(ptr, "/backend"))
+ {
+ strlcpy(ptr, "/cups", sizeof(libpath) - (ptr - libpath));
+ if (!access(libpath, 0))
+ {
+#ifdef __APPLE__
+ fprintf(stderr, "Setting DYLD_LIBRARY_PATH to \"%s\".\n", libpath);
+ setenv("DYLD_LIBRARY_PATH", libpath, 1);
+#else
+ fprintf(stderr, "Setting LD_LIBRARY_PATH to \"%s\".\n", libpath);
+ setenv("LD_LIBRARY_PATH", libpath, 1);
+#endif /* __APPLE__ */
+ }
+ else
+ perror(libpath);
+ }
+
+ /*
* See if we have side-channel tests to do...
*/
@@ -548,13 +573,13 @@ main(int argc, /* I - Number of command-line args */
length = sizeof(buffer);
scstatus = cupsSideChannelSNMPGet(oid, buffer, &length, 5.0);
- printf("CUPS_SC_CMD_SNMP_GET %s returned %s, %s\n", oid,
- statuses[scstatus], buffer);
+ printf("CUPS_SC_CMD_SNMP_GET %s returned %s, %d bytes (%s)\n", oid,
+ statuses[scstatus], (int)length, buffer);
length = sizeof(buffer);
scstatus = cupsSideChannelSNMPGet(oid, buffer, &length, 5.0);
- printf("CUPS_SC_CMD_SNMP_GET %s returned %s, %s\n", oid,
- statuses[scstatus], buffer);
+ printf("CUPS_SC_CMD_SNMP_GET %s returned %s, %d bytes (%s)\n", oid,
+ statuses[scstatus], (int)length, buffer);
}
length = 0;
@@ -569,7 +594,7 @@ main(int argc, /* I - Number of command-line args */
kill(data_pid, SIGTERM);
kill(back_pid, SIGTERM);
}
-
+
while ((pid = wait(&status)) > 0)
{
if (status)
@@ -613,13 +638,13 @@ sigterm_handler(int sig) /* I - Signal */
static void
usage(void)
{
- puts("Usage: testbackend [-cancel] [-d] [-ps | -pcl] [-s [-oid OID] "
+ puts("Usage: testbackend [-cancel] [-d] [-ps | -pcl] [-s [-get OID] "
"[-walk OID]] [-t] device-uri job-id user title copies options [file]");
puts("");
puts("Options:");
puts(" -cancel Simulate a canceled print job after 2 seconds.");
puts(" -d Show log messages from backend.");
- puts(" -oid OID Lookup the specified SNMP OID.");
+ puts(" -get OID Lookup the specified SNMP OID.");
puts(" (.1.3.6.1.2.1.43.10.2.1.4.1.1 is a good one for printers)");
puts(" -pcl Send PCL+PJL query and test page to backend.");
puts(" -ps Send PostScript query and test page to backend.");
@@ -642,10 +667,10 @@ walk_cb(const char *oid, /* I - OID */
int datalen, /* I - Length of data */
void *context) /* I - Context (unused) */
{
- printf("CUPS_SC_CMD_SNMP_WALK %s=%s (%d bytes)\n", oid, data, datalen);
+ printf("CUPS_SC_CMD_SNMP_WALK %s, %d bytes (%s)\n", oid, datalen, data);
}
/*
- * End of "$Id: testbackend.c 9042 2010-03-24 00:45:34Z mike $".
+ * End of "$Id: testbackend.c 10389 2012-03-28 21:57:29Z mike $".
*/
diff --git a/backend/usb-darwin.c b/backend/usb-darwin.c
index 8b249a9f..fe2ec9f6 100644
--- a/backend/usb-darwin.c
+++ b/backend/usb-darwin.c
@@ -1,7 +1,7 @@
/*
-* "$Id: usb-darwin.c 9887 2011-08-11 22:04:59Z mike $"
+* "$Id: usb-darwin.c 10431 2012-04-23 19:19:19Z mike $"
*
-* Copyright 2005-2011 Apple Inc. All rights reserved.
+* Copyright 2005-2012 Apple Inc. All rights reserved.
*
* IMPORTANT: This Apple software is supplied to you by Apple Computer,
* Inc. ("Apple") in consideration of your agreement to the following
@@ -820,10 +820,10 @@ print_device(const char *uri, /* I - Device URI */
/*
* If it didn't exit abort the pending read and wait an additional second...
*/
-
+
if (!g.read_thread_done)
{
- fputs("DEBUG: Read thread still active, aborting the pending read...\n",
+ fputs("DEBUG: Read thread still active, aborting the pending read...\n",
stderr);
g.wait_eof = 0;
@@ -833,7 +833,7 @@ print_device(const char *uri, /* I - Device URI */
gettimeofday(&tv, NULL);
cond_timeout.tv_sec = tv.tv_sec + 1;
cond_timeout.tv_nsec = tv.tv_usec * 1000;
-
+
while (!g.read_thread_done)
{
if (pthread_cond_timedwait(&g.read_thread_cond, &g.read_thread_mutex,
@@ -1283,7 +1283,7 @@ static Boolean find_device_cb(void *refcon,
if (!keepLooking && g.status_timer != NULL)
{
fputs("STATE: -offline-report\n", stderr);
- _cupsLangPrintFilter(stderr, "INFO", _("Printer is now online."));
+ _cupsLangPrintFilter(stderr, "INFO", _("The printer is now online."));
CFRunLoopRemoveTimer(CFRunLoopGetCurrent(), g.status_timer, kCFRunLoopDefaultMode);
CFRelease(g.status_timer);
g.status_timer = NULL;
@@ -1304,7 +1304,7 @@ static void status_timer_cb(CFRunLoopTimerRef timer,
(void)info;
fputs("STATE: +offline-report\n", stderr);
- _cupsLangPrintFilter(stderr, "INFO", _("Printer is offline."));
+ _cupsLangPrintFilter(stderr, "INFO", _("The printer is offline."));
if (getenv("CLASS") != NULL)
{
@@ -2265,5 +2265,5 @@ static void get_device_id(cups_sc_status_t *status,
/*
- * End of "$Id: usb-darwin.c 9887 2011-08-11 22:04:59Z mike $".
+ * End of "$Id: usb-darwin.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/backend/usb-libusb.c b/backend/usb-libusb.c
index b9e40b25..542a07c4 100644
--- a/backend/usb-libusb.c
+++ b/backend/usb-libusb.c
@@ -1,5 +1,5 @@
/*
- * "$Id: usb-libusb.c 10545 2012-07-16 17:16:46Z mike $"
+ * "$Id: usb-libusb.c 10543 2012-07-16 17:10:55Z mike $"
*
* LIBUSB interface code for CUPS.
*
@@ -13,7 +13,7 @@
*
* Contents:
*
- * list_devices() - List the available printers.
+ * list_devices() - List the available printers.
* print_device() - Print a file to a USB device.
* close_device() - Close the connection to the USB printer.
* find_device() - Find or enumerate USB printers.
@@ -1144,7 +1144,7 @@ make_device_uri(
if ((sern = cupsGetOption("SERIALNUMBER", num_values, values)) == NULL)
if ((sern = cupsGetOption("SERN", num_values, values)) == NULL)
if ((sern = cupsGetOption("SN", num_values, values)) == NULL &&
- ((libusb_get_device_descriptor (printer->device, &devdesc) >= 0) &&
+ ((libusb_get_device_descriptor(printer->device, &devdesc) >= 0) &&
devdesc.iSerialNumber))
{
/*
@@ -1881,6 +1881,6 @@ static void soft_reset(void)
/*
- * End of "$Id: usb-libusb.c 10545 2012-07-16 17:16:46Z mike $".
+ * End of "$Id: usb-libusb.c 10543 2012-07-16 17:10:55Z mike $".
*/
diff --git a/backend/usb-unix.c b/backend/usb-unix.c
index 1c280332..ea23c396 100644
--- a/backend/usb-unix.c
+++ b/backend/usb-unix.c
@@ -1,11 +1,11 @@
/*
- * "$Id: usb-unix.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: usb-unix.c 10431 2012-04-23 19:19:19Z mike $"
*
* USB port backend for CUPS.
*
* This file is included from "usb.c" when compiled on UNIX/Linux.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -128,16 +128,12 @@ print_device(const char *uri, /* I - Device URI */
if (errno == EBUSY)
{
- _cupsLangPrintFilter(stderr, "INFO",
- _("Printer busy, will retry in 10 seconds."));
+ _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use."));
sleep(10);
}
else if (errno == ENXIO || errno == EIO || errno == ENOENT ||
errno == ENODEV)
{
- _cupsLangPrintFilter(stderr, "INFO",
- _("Printer not connected, will retry in 30 "
- "seconds."));
sleep(30);
}
else
@@ -425,8 +421,7 @@ open_device(const char *uri, /* I - Device URI */
*/
if (busy)
- _cupsLangPrintFilter(stderr, "INFO",
- _("Printer is busy, will retry in 5 seconds."));
+ _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use."));
sleep(5);
}
@@ -509,8 +504,7 @@ open_device(const char *uri, /* I - Device URI */
if (busy)
{
- _cupsLangPrintFilter(stderr, "INFO",
- _("Printer is busy, will retry in 5 seconds."));
+ _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use."));
sleep(5);
}
}
@@ -619,5 +613,5 @@ side_cb(int print_fd, /* I - Print file */
/*
- * End of "$Id: usb-unix.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: usb-unix.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/backend/usb.c b/backend/usb.c
index 2cacb744..1cacb82a 100644
--- a/backend/usb.c
+++ b/backend/usb.c
@@ -1,5 +1,5 @@
/*
- * "$Id: usb.c 10265 2012-02-12 07:20:10Z mike $"
+ * "$Id: usb.c 10264 2012-02-12 07:18:31Z mike $"
*
* USB port backend for CUPS.
*
@@ -260,5 +260,5 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
/*
- * End of "$Id: usb.c 10265 2012-02-12 07:20:10Z mike $".
+ * End of "$Id: usb.c 10264 2012-02-12 07:18:31Z mike $".
*/
diff --git a/berkeley/Dependencies b/berkeley/Dependencies
index 9d43ccaf..46b71d92 100644
--- a/berkeley/Dependencies
+++ b/berkeley/Dependencies
@@ -1,34 +1,25 @@
-# DO NOT DELETE THIS LINE -- make depend depends on it.
-
-lpc.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lpc.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lpc.o: ../cups/language.h ../cups/string-private.h ../config.h
-lpc.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-lpc.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-lpc.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-lpc.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-lpc.o: ../cups/transcode.h ../cups/thread-private.h
-lpq.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lpq.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lpq.o: ../cups/language.h ../cups/string-private.h ../config.h
-lpq.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-lpq.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-lpq.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-lpq.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-lpq.o: ../cups/transcode.h ../cups/thread-private.h
-lpr.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lpr.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lpr.o: ../cups/language.h ../cups/string-private.h ../config.h
-lpr.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-lpr.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-lpr.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-lpr.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-lpr.o: ../cups/transcode.h ../cups/thread-private.h
-lprm.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lprm.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lprm.o: ../cups/language.h ../cups/string-private.h ../config.h
-lprm.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-lprm.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-lprm.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-lprm.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-lprm.o: ../cups/transcode.h ../cups/thread-private.h
+lpc.o: lpc.c ../cups/cups-private.h ../cups/string-private.h ../config.h \
+ ../cups/debug-private.h ../cups/versioning.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+lpq.o: lpq.c ../cups/cups-private.h ../cups/string-private.h ../config.h \
+ ../cups/debug-private.h ../cups/versioning.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+lpr.o: lpr.c ../cups/cups-private.h ../cups/string-private.h ../config.h \
+ ../cups/debug-private.h ../cups/versioning.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+lprm.o: lprm.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
diff --git a/berkeley/Makefile b/berkeley/Makefile
index 64aa82d5..b9b0d517 100644
--- a/berkeley/Makefile
+++ b/berkeley/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $"
+# "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $"
#
# Berkeley commands makefile for CUPS.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2006 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -54,7 +54,7 @@ clean:
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
@@ -163,5 +163,5 @@ include Dependencies
#
-# End of "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $".
+# End of "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $".
#
diff --git a/berkeley/lpc.c b/berkeley/lpc.c
index 0460a8fb..8ea68ed9 100644
--- a/berkeley/lpc.c
+++ b/berkeley/lpc.c
@@ -1,5 +1,5 @@
/*
- * "$Id: lpc.c 10379 2012-03-23 22:16:22Z mike $"
+ * "$Id: lpc.c 10378 2012-03-23 21:38:25Z mike $"
*
* "lpc" command for CUPS.
*
@@ -446,5 +446,5 @@ show_status(http_t *http, /* I - HTTP connection to server */
/*
- * End of "$Id: lpc.c 10379 2012-03-23 22:16:22Z mike $".
+ * End of "$Id: lpc.c 10378 2012-03-23 21:38:25Z mike $".
*/
diff --git a/berkeley/lpq.c b/berkeley/lpq.c
index a5285bdd..cdc00147 100644
--- a/berkeley/lpq.c
+++ b/berkeley/lpq.c
@@ -1,5 +1,5 @@
/*
- * "$Id: lpq.c 10545 2012-07-16 17:16:46Z mike $"
+ * "$Id: lpq.c 10540 2012-07-16 16:50:32Z mike $"
*
* "lpq" command for CUPS.
*
@@ -39,7 +39,7 @@ static http_t *connect_server(const char *, http_t *);
static int show_jobs(const char *, http_t *, const char *,
const char *, const int, const int);
static void show_printer(const char *, http_t *, const char *);
-static void usage(void);
+static void usage(void) __attribute__((noreturn));
/*
@@ -678,5 +678,5 @@ usage(void)
/*
- * End of "$Id: lpq.c 10545 2012-07-16 17:16:46Z mike $".
+ * End of "$Id: lpq.c 10540 2012-07-16 16:50:32Z mike $".
*/
diff --git a/berkeley/lpr.c b/berkeley/lpr.c
index 554ea9fa..842e9dc9 100644
--- a/berkeley/lpr.c
+++ b/berkeley/lpr.c
@@ -1,5 +1,5 @@
/*
- * "$Id: lpr.c 10495 2012-05-21 22:40:33Z mike $"
+ * "$Id: lpr.c 10494 2012-05-21 22:39:01Z mike $"
*
* "lpr" command for CUPS.
*
@@ -418,5 +418,5 @@ main(int argc, /* I - Number of command-line arguments */
/*
- * End of "$Id: lpr.c 10495 2012-05-21 22:40:33Z mike $".
+ * End of "$Id: lpr.c 10494 2012-05-21 22:39:01Z mike $".
*/
diff --git a/cgi-bin/Dependencies b/cgi-bin/Dependencies
index 9b7f87e8..ff16e484 100644
--- a/cgi-bin/Dependencies
+++ b/cgi-bin/Dependencies
@@ -1,84 +1,73 @@
-# DO NOT DELETE
-
-help-index.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h
-help-index.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-help-index.o: ../cups/array.h ../cups/language.h ../cups/array.h help-index.h
-help-index.o: ../cups/debug-private.h ../cups/versioning.h
-help-index.o: ../cups/language-private.h ../cups/transcode.h
-help-index.o: ../cups/string-private.h ../config.h ../cups/dir.h
-html.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h
-html.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-html.o: ../cups/language.h ../cups/array.h help-index.h
-html.o: ../cups/debug-private.h ../cups/versioning.h
-html.o: ../cups/language-private.h ../cups/transcode.h
-html.o: ../cups/string-private.h ../config.h
-ipp-var.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h
-ipp-var.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-ipp-var.o: ../cups/language.h ../cups/array.h help-index.h
-ipp-var.o: ../cups/debug-private.h ../cups/versioning.h
-ipp-var.o: ../cups/language-private.h ../cups/transcode.h
-ipp-var.o: ../cups/string-private.h ../config.h
-search.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h
-search.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-search.o: ../cups/language.h ../cups/array.h help-index.h
-search.o: ../cups/debug-private.h ../cups/versioning.h
-search.o: ../cups/language-private.h ../cups/transcode.h
-search.o: ../cups/string-private.h ../config.h
-template.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h
-template.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-template.o: ../cups/language.h ../cups/array.h help-index.h
-template.o: ../cups/debug-private.h ../cups/versioning.h
-template.o: ../cups/language-private.h ../cups/transcode.h
-template.o: ../cups/string-private.h ../config.h
-var.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-var.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-var.o: ../cups/array.h help-index.h ../cups/debug-private.h
-var.o: ../cups/versioning.h ../cups/language-private.h ../cups/transcode.h
-var.o: ../cups/string-private.h ../config.h ../cups/http.h
-var.o: ../cups/md5-private.h
-admin.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h
-admin.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-admin.o: ../cups/language.h ../cups/array.h help-index.h
-admin.o: ../cups/debug-private.h ../cups/versioning.h
-admin.o: ../cups/language-private.h ../cups/transcode.h
-admin.o: ../cups/string-private.h ../config.h ../cups/adminutil.h
-admin.o: ../cups/cups.h ../cups/ppd.h
-classes.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h
-classes.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-classes.o: ../cups/language.h ../cups/array.h help-index.h
-classes.o: ../cups/debug-private.h ../cups/versioning.h
-classes.o: ../cups/language-private.h ../cups/transcode.h
-classes.o: ../cups/string-private.h ../config.h
-help.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h
-help.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-help.o: ../cups/language.h ../cups/array.h help-index.h
-help.o: ../cups/debug-private.h ../cups/versioning.h
-help.o: ../cups/language-private.h ../cups/transcode.h
-help.o: ../cups/string-private.h ../config.h
-jobs.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h
-jobs.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-jobs.o: ../cups/language.h ../cups/array.h help-index.h
-jobs.o: ../cups/debug-private.h ../cups/versioning.h
-jobs.o: ../cups/language-private.h ../cups/transcode.h
-jobs.o: ../cups/string-private.h ../config.h
-makedocset.o: cgi.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-makedocset.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-makedocset.o: ../cups/array.h help-index.h
-printers.o: cgi-private.h cgi.h ../cups/cups.h ../cups/file.h
-printers.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-printers.o: ../cups/language.h ../cups/array.h help-index.h
-printers.o: ../cups/debug-private.h ../cups/versioning.h
-printers.o: ../cups/language-private.h ../cups/transcode.h
-printers.o: ../cups/string-private.h ../config.h
-testcgi.o: cgi.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-testcgi.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-testcgi.o: ../cups/array.h help-index.h
-testhi.o: cgi.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-testhi.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-testhi.o: ../cups/array.h help-index.h
-testtemplate.o: cgi.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-testtemplate.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-testtemplate.o: ../cups/language.h ../cups/array.h help-index.h
-websearch.o: cgi.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-websearch.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-websearch.o: ../cups/array.h help-index.h
+help-index.o: help-index.c cgi-private.h cgi.h ../cups/cups.h \
+ ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \
+ ../cups/array.h ../cups/language.h help-index.h \
+ ../cups/debug-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h \
+ ../cups/dir.h
+html.o: html.c cgi-private.h cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h
+ipp-var.o: ipp-var.c cgi-private.h cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h
+search.o: search.c cgi-private.h cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h
+template.o: template.c cgi-private.h cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h
+var.o: var.c cgi-private.h cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h \
+ ../cups/md5-private.h
+admin.o: admin.c cgi-private.h cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h \
+ ../cups/adminutil.h ../cups/ppd.h
+classes.o: classes.c cgi-private.h cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h
+help.o: help.c cgi-private.h cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h
+jobs.o: jobs.c cgi-private.h cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h
+makedocset.o: makedocset.c cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h
+printers.o: printers.c cgi-private.h cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h
+testcgi.o: testcgi.c cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h
+testhi.o: testhi.c cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h
+testtemplate.o: testtemplate.c cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h
+websearch.o: websearch.c cgi.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h help-index.h
diff --git a/cgi-bin/Makefile b/cgi-bin/Makefile
index 9f20ff6d..b86321fc 100644
--- a/cgi-bin/Makefile
+++ b/cgi-bin/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 8983 2010-02-13 02:20:23Z mike $"
+# "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $"
#
# CGI makefile for CUPS.
#
-# Copyright 2007-2010 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2006 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
@@ -90,7 +90,7 @@ clean:
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
@@ -378,5 +378,5 @@ include Dependencies
#
-# End of "$Id: Makefile 8983 2010-02-13 02:20:23Z mike $".
+# End of "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $".
#
diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c
index a695c618..dac10d48 100644
--- a/cgi-bin/admin.c
+++ b/cgi-bin/admin.c
@@ -1,9 +1,9 @@
/*
- * "$Id: admin.c 9901 2011-08-17 21:01:53Z mike $"
+ * "$Id: admin.c 10431 2012-04-23 19:19:19Z mike $"
*
* Administration CGI for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -523,7 +523,7 @@ do_add_rss_subscription(http_t *http) /* I - HTTP connection */
else if (cupsLastError() > IPP_OK_CONFLICT)
{
cgiStartHTML(_("Add RSS Subscription"));
- cgiShowIPPError(_("Unable to add RSS subscription:"));
+ cgiShowIPPError(_("Unable to add RSS subscription"));
}
else
{
@@ -586,8 +586,7 @@ do_am_class(http_t *http, /* I - HTTP connection */
ippAddInteger(request, IPP_TAG_OPERATION, IPP_TAG_ENUM, "printer-type",
CUPS_PRINTER_LOCAL);
ippAddInteger(request, IPP_TAG_OPERATION, IPP_TAG_ENUM, "printer-type-mask",
- CUPS_PRINTER_CLASS | CUPS_PRINTER_REMOTE |
- CUPS_PRINTER_IMPLICIT);
+ CUPS_PRINTER_CLASS | CUPS_PRINTER_REMOTE);
/*
* Do the request and get back a response...
@@ -811,8 +810,8 @@ do_am_class(http_t *http, /* I - HTTP connection */
else if (cupsLastError() > IPP_OK_CONFLICT)
{
cgiStartHTML(title);
- cgiShowIPPError(modify ? _("Unable to modify class:") :
- _("Unable to add class:"));
+ cgiShowIPPError(modify ? _("Unable to modify class") :
+ _("Unable to add class"));
}
else
{
@@ -1056,8 +1055,8 @@ do_am_printer(http_t *http, /* I - HTTP connection */
else
{
cgiStartHTML(title);
- cgiShowIPPError(modify ? _("Unable to modify printer:") :
- _("Unable to add printer:"));
+ cgiShowIPPError(modify ? _("Unable to modify printer") :
+ _("Unable to add printer"));
cgiEndHTML();
return;
}
@@ -1318,7 +1317,7 @@ do_am_printer(http_t *http, /* I - HTTP connection */
else
{
cgiStartHTML(title);
- cgiShowIPPError(_("Unable to get list of printer drivers:"));
+ cgiShowIPPError(_("Unable to get list of printer drivers"));
cgiCopyTemplateLang("error.tmpl");
cgiEndHTML();
}
@@ -1416,8 +1415,8 @@ do_am_printer(http_t *http, /* I - HTTP connection */
else if (cupsLastError() > IPP_OK_CONFLICT)
{
cgiStartHTML(title);
- cgiShowIPPError(modify ? _("Unable to modify printer:") :
- _("Unable to add printer:"));
+ cgiShowIPPError(modify ? _("Unable to modify printer") :
+ _("Unable to add printer"));
}
else if (modify)
{
@@ -1523,7 +1522,7 @@ do_cancel_subscription(http_t *http)/* I - HTTP connection */
else if (cupsLastError() > IPP_OK_CONFLICT)
{
cgiStartHTML(_("Cancel RSS Subscription"));
- cgiShowIPPError(_("Unable to cancel RSS subscription:"));
+ cgiShowIPPError(_("Unable to cancel RSS subscription"));
}
else
{
@@ -1558,10 +1557,10 @@ do_config_server(http_t *http) /* I - HTTP connection */
int advanced, /* Advanced settings shown? */
changed; /* Have settings changed? */
const char *debug_logging, /* DEBUG_LOGGING value */
+ *preserve_jobs = NULL,
+ /* PRESERVE_JOBS value */
*remote_admin, /* REMOTE_ADMIN value */
*remote_any, /* REMOTE_ANY value */
- *remote_printers,
- /* REMOTE_PRINTERS value */
*share_printers,/* SHARE_PRINTERS value */
*user_cancel_any,
/* USER_CANCEL_ANY value */
@@ -1577,10 +1576,6 @@ do_config_server(http_t *http) /* I - HTTP connection */
/* MaxJobs value */
*max_log_size = NULL;
/* MaxLogSize value */
- char local_protocols[255],
- /* BrowseLocalProtocols */
- remote_protocols[255];
- /* BrowseRemoteProtocols */
const char *current_browse_web_if,
/* BrowseWebIF value */
*current_preserve_job_history,
@@ -1591,12 +1586,8 @@ do_config_server(http_t *http) /* I - HTTP connection */
/* MaxClients value */
*current_max_jobs,
/* MaxJobs value */
- *current_max_log_size,
+ *current_max_log_size;
/* MaxLogSize value */
- *current_local_protocols,
- /* BrowseLocalProtocols */
- *current_remote_protocols;
- /* BrowseRemoteProtocols */
#ifdef HAVE_GSSAPI
char default_auth_type[255];
/* DefaultAuthType value */
@@ -1611,7 +1602,6 @@ do_config_server(http_t *http) /* I - HTTP connection */
debug_logging = cgiGetVariable("DEBUG_LOGGING") ? "1" : "0";
remote_admin = cgiGetVariable("REMOTE_ADMIN") ? "1" : "0";
remote_any = cgiGetVariable("REMOTE_ANY") ? "1" : "0";
- remote_printers = cgiGetVariable("REMOTE_PRINTERS") ? "1" : "0";
share_printers = cgiGetVariable("SHARE_PRINTERS") ? "1" : "0";
user_cancel_any = cgiGetVariable("USER_CANCEL_ANY") ? "1" : "0";
@@ -1623,80 +1613,37 @@ do_config_server(http_t *http) /* I - HTTP connection */
*/
browse_web_if = cgiGetVariable("BROWSE_WEB_IF") ? "Yes" : "No";
- preserve_job_history = cgiGetVariable("PRESERVE_JOB_HISTORY") ? "Yes" : "No";
- preserve_job_files = cgiGetVariable("PRESERVE_JOB_FILES") ? "Yes" : "No";
max_clients = cgiGetVariable("MAX_CLIENTS");
- max_jobs = cgiGetVariable("MAX_JOBS");
max_log_size = cgiGetVariable("MAX_LOG_SIZE");
+ preserve_jobs = cgiGetVariable("PRESERVE_JOBS");
- if (!max_clients || atoi(max_clients) <= 0)
- max_clients = "100";
-
- if (!max_jobs || atoi(max_jobs) <= 0)
- max_jobs = "500";
-
- if (!max_log_size || atof(max_log_size) <= 0.0)
- max_log_size = "1m";
-
- if (cgiGetVariable("BROWSE_LOCAL_CUPS"))
- strcpy(local_protocols, "cups");
- else
- local_protocols[0] = '\0';
-
-#ifdef HAVE_DNSSD
- if (cgiGetVariable("BROWSE_LOCAL_DNSSD"))
+ if (preserve_jobs)
{
- if (local_protocols[0])
- strcat(local_protocols, " dnssd");
- else
- strcat(local_protocols, "dnssd");
- }
-#endif /* HAVE_DNSSD */
+ max_jobs = cgiGetVariable("MAX_JOBS");
+ preserve_job_history = cgiGetVariable("PRESERVE_JOB_HISTORY");
+ preserve_job_files = cgiGetVariable("PRESERVE_JOB_FILES");
-#ifdef HAVE_LDAP
- if (cgiGetVariable("BROWSE_LOCAL_LDAP"))
- {
- if (local_protocols[0])
- strcat(local_protocols, " ldap");
- else
- strcat(local_protocols, "ldap");
- }
-#endif /* HAVE_LDAP */
+ if (!max_jobs || atoi(max_jobs) < 0)
+ max_jobs = "500";
-#ifdef HAVE_LIBSLP
- if (cgiGetVariable("BROWSE_LOCAL_SLP"))
- {
- if (local_protocols[0])
- strcat(local_protocols, " slp");
- else
- strcat(local_protocols, "slp");
- }
-#endif /* HAVE_SLP */
+ if (!preserve_job_history)
+ preserve_job_history = "On";
- if (cgiGetVariable("BROWSE_REMOTE_CUPS"))
- strcpy(remote_protocols, "cups");
+ if (!preserve_job_files)
+ preserve_job_files = "1d";
+ }
else
- remote_protocols[0] = '\0';
-
-#ifdef HAVE_LDAP
- if (cgiGetVariable("BROWSE_REMOTE_LDAP"))
{
- if (remote_protocols[0])
- strcat(remote_protocols, " ldap");
- else
- strcat(remote_protocols, "ldap");
+ max_jobs = "0";
+ preserve_job_history = "No";
+ preserve_job_files = "No";
}
-#endif /* HAVE_LDAP */
-#ifdef HAVE_LIBSLP
- if (cgiGetVariable("BROWSE_REMOTE_SLP"))
- {
- if (remote_protocols[0])
- strcat(remote_protocols, " slp");
- else
- strcat(remote_protocols, "slp");
- }
-#endif /* HAVE_SLP */
+ if (!max_clients || atoi(max_clients) <= 0)
+ max_clients = "100";
+
+ if (!max_log_size || atoi(max_log_size) <= 0.0)
+ max_log_size = "1m";
}
/*
@@ -1707,7 +1654,7 @@ do_config_server(http_t *http) /* I - HTTP connection */
{
cgiStartHTML(cgiText(_("Change Settings")));
cgiSetVariable("MESSAGE",
- cgiText(_("Unable to change server settings:")));
+ cgiText(_("Unable to change server settings")));
cgiSetVariable("ERROR", cupsLastErrorString());
cgiCopyTemplateLang("error.tmpl");
cgiEndHTML();
@@ -1746,7 +1693,7 @@ do_config_server(http_t *http) /* I - HTTP connection */
if ((current_preserve_job_files = cupsGetOption("PreserveJobFiles",
num_settings,
settings)) == NULL)
- current_preserve_job_files = "No";
+ current_preserve_job_files = "1d";
if ((current_max_clients = cupsGetOption("MaxClients", num_settings,
settings)) == NULL)
@@ -1760,16 +1707,6 @@ do_config_server(http_t *http) /* I - HTTP connection */
settings)) == NULL)
current_max_log_size = "1m";
- if ((current_local_protocols = cupsGetOption("BrowseLocalProtocols",
- num_settings,
- settings)) == NULL)
- current_local_protocols = CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS;
-
- if ((current_remote_protocols = cupsGetOption("BrowseRemoteProtocols",
- num_settings,
- settings)) == NULL)
- current_remote_protocols = CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS;
-
/*
* See if the settings have changed...
*/
@@ -1780,8 +1717,6 @@ do_config_server(http_t *http) /* I - HTTP connection */
num_settings, settings)) ||
strcmp(remote_any, cupsGetOption(CUPS_SERVER_REMOTE_ANY,
num_settings, settings)) ||
- strcmp(remote_printers, cupsGetOption(CUPS_SERVER_REMOTE_PRINTERS,
- num_settings, settings)) ||
strcmp(share_printers, cupsGetOption(CUPS_SERVER_SHARE_PRINTERS,
num_settings, settings)) ||
#ifdef HAVE_GSSAPI
@@ -1793,9 +1728,7 @@ do_config_server(http_t *http) /* I - HTTP connection */
num_settings, settings));
if (advanced && !changed)
- changed = _cups_strcasecmp(local_protocols, current_local_protocols) ||
- _cups_strcasecmp(remote_protocols, current_remote_protocols) ||
- _cups_strcasecmp(browse_web_if, current_browse_web_if) ||
+ changed = _cups_strcasecmp(browse_web_if, current_browse_web_if) ||
_cups_strcasecmp(preserve_job_history, current_preserve_job_history) ||
_cups_strcasecmp(preserve_job_files, current_preserve_job_files) ||
_cups_strcasecmp(max_clients, current_max_clients) ||
@@ -1817,8 +1750,6 @@ do_config_server(http_t *http) /* I - HTTP connection */
remote_admin, num_settings, &settings);
num_settings = cupsAddOption(CUPS_SERVER_REMOTE_ANY,
remote_any, num_settings, &settings);
- num_settings = cupsAddOption(CUPS_SERVER_REMOTE_PRINTERS,
- remote_printers, num_settings, &settings);
num_settings = cupsAddOption(CUPS_SERVER_SHARE_PRINTERS,
share_printers, num_settings, &settings);
num_settings = cupsAddOption(CUPS_SERVER_USER_CANCEL_ANY,
@@ -1834,12 +1765,6 @@ do_config_server(http_t *http) /* I - HTTP connection */
* Add advanced settings...
*/
- if (_cups_strcasecmp(local_protocols, current_local_protocols))
- num_settings = cupsAddOption("BrowseLocalProtocols", local_protocols,
- num_settings, &settings);
- if (_cups_strcasecmp(remote_protocols, current_remote_protocols))
- num_settings = cupsAddOption("BrowseRemoteProtocols", remote_protocols,
- num_settings, &settings);
if (_cups_strcasecmp(browse_web_if, current_browse_web_if))
num_settings = cupsAddOption("BrowseWebIF", browse_web_if,
num_settings, &settings);
@@ -1871,14 +1796,15 @@ do_config_server(http_t *http) /* I - HTTP connection */
cgiStartHTML(cgiText(_("Change Settings")));
cgiSetVariable("MESSAGE",
- cgiText(_("Unable to change server settings:")));
+ cgiText(_("Unable to change server settings")));
cgiSetVariable("ERROR", cupsLastErrorString());
cgiCopyTemplateLang("error.tmpl");
}
else
{
if (advanced)
- cgiSetVariable("refresh_page", "5;URL=/admin/?OP=redirect&URL=/admin/?ADVANCEDSETTINGS=YES");
+ cgiSetVariable("refresh_page", "5;URL=/admin/?OP=redirect&"
+ "URL=/admin/?ADVANCEDSETTINGS=YES");
else
cgiSetVariable("refresh_page", "5;URL=/admin/?OP=redirect");
cgiStartHTML(cgiText(_("Change Settings")));
@@ -1921,7 +1847,7 @@ do_config_server(http_t *http) /* I - HTTP connection */
if ((tempfd = cupsTempFd(tempfile, sizeof(tempfile))) < 0)
{
cgiStartHTML(cgiText(_("Edit Configuration File")));
- cgiSetVariable("MESSAGE", cgiText(_("Unable to create temporary file:")));
+ cgiSetVariable("MESSAGE", cgiText(_("Unable to create temporary file")));
cgiSetVariable("ERROR", strerror(errno));
cgiCopyTemplateLang("error.tmpl");
cgiEndHTML();
@@ -1933,7 +1859,7 @@ do_config_server(http_t *http) /* I - HTTP connection */
if ((temp = cupsFileOpenFd(tempfd, "w")) == NULL)
{
cgiStartHTML(cgiText(_("Edit Configuration File")));
- cgiSetVariable("MESSAGE", cgiText(_("Unable to create temporary file:")));
+ cgiSetVariable("MESSAGE", cgiText(_("Unable to create temporary file")));
cgiSetVariable("ERROR", strerror(errno));
cgiCopyTemplateLang("error.tmpl");
cgiEndHTML();
@@ -1983,7 +1909,7 @@ do_config_server(http_t *http) /* I - HTTP connection */
else if (status != HTTP_CREATED)
{
cgiSetVariable("MESSAGE",
- cgiText(_("Unable to upload cupsd.conf file:")));
+ cgiText(_("Unable to upload cupsd.conf file")));
cgiSetVariable("ERROR", httpStatus(status));
cgiStartHTML(cgiText(_("Edit Configuration File")));
@@ -2030,7 +1956,7 @@ do_config_server(http_t *http) /* I - HTTP connection */
{
cgiStartHTML(cgiText(_("Edit Configuration File")));
cgiSetVariable("MESSAGE",
- cgiText(_("Unable to access cupsd.conf file:")));
+ cgiText(_("Unable to access cupsd.conf file")));
cgiSetVariable("ERROR", strerror(errno));
cgiCopyTemplateLang("error.tmpl");
cgiEndHTML();
@@ -2043,7 +1969,7 @@ do_config_server(http_t *http) /* I - HTTP connection */
{
cgiStartHTML(cgiText(_("Edit Configuration File")));
cgiSetVariable("MESSAGE",
- cgiText(_("Unable to access cupsd.conf file:")));
+ cgiText(_("Unable to access cupsd.conf file")));
cgiSetVariable("ERROR",
cgiText(_("Unable to edit cupsd.conf files larger than "
"1MB")));
@@ -2067,7 +1993,7 @@ do_config_server(http_t *http) /* I - HTTP connection */
cgiStartHTML(cgiText(_("Edit Configuration File")));
cgiSetVariable("MESSAGE",
- cgiText(_("Unable to access cupsd.conf file:")));
+ cgiText(_("Unable to access cupsd.conf file")));
cgiSetVariable("ERROR", strerror(errno));
cgiCopyTemplateLang("error.tmpl");
cgiEndHTML();
@@ -2224,7 +2150,7 @@ do_delete_class(http_t *http) /* I - HTTP connection */
cgiStartHTML(cgiText(_("Delete Class")));
if (cupsLastError() > IPP_OK_CONFLICT)
- cgiShowIPPError(_("Unable to delete class:"));
+ cgiShowIPPError(_("Unable to delete class"));
else
cgiCopyTemplateLang("class-deleted.tmpl");
@@ -2309,7 +2235,7 @@ do_delete_printer(http_t *http) /* I - HTTP connection */
cgiStartHTML(cgiText(_("Delete Printer")));
if (cupsLastError() > IPP_OK_CONFLICT)
- cgiShowIPPError(_("Unable to delete printer:"));
+ cgiShowIPPError(_("Unable to delete printer"));
else
cgiCopyTemplateLang("printer-deleted.tmpl");
@@ -2359,8 +2285,7 @@ do_export(http_t *http) /* I - HTTP connection */
"printer-type", 0);
ippAddInteger(request, IPP_TAG_OPERATION, IPP_TAG_ENUM,
- "printer-type-mask", CUPS_PRINTER_CLASS | CUPS_PRINTER_REMOTE |
- CUPS_PRINTER_IMPLICIT);
+ "printer-type-mask", CUPS_PRINTER_CLASS | CUPS_PRINTER_REMOTE);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD,
"requested-attributes", NULL, "printer-name");
@@ -2696,10 +2621,6 @@ do_menu(http_t *http) /* I - HTTP connection */
settings)) != NULL && atoi(val))
cgiSetVariable("REMOTE_ANY", "CHECKED");
- if ((val = cupsGetOption(CUPS_SERVER_REMOTE_PRINTERS, num_settings,
- settings)) != NULL && atoi(val))
- cgiSetVariable("REMOTE_PRINTERS", "CHECKED");
-
if ((val = cupsGetOption(CUPS_SERVER_SHARE_PRINTERS, num_settings,
settings)) != NULL && atoi(val))
cgiSetVariable("SHARE_PRINTERS", "CHECKED");
@@ -2718,53 +2639,6 @@ do_menu(http_t *http) /* I - HTTP connection */
#endif /* HAVE_GSSAPI */
cgiSetVariable("KERBEROS", "");
-#ifdef HAVE_DNSSD
- cgiSetVariable("HAVE_DNSSD", "1");
-#endif /* HAVE_DNSSD */
-
-#ifdef HAVE_LDAP
- cgiSetVariable("HAVE_LDAP", "1");
-#endif /* HAVE_LDAP */
-
-#ifdef HAVE_LIBSLP
- cgiSetVariable("HAVE_LIBSLP", "1");
-#endif /* HAVE_LIBSLP */
-
- if ((val = cupsGetOption("BrowseRemoteProtocols", num_settings,
- settings)) == NULL)
- if ((val = cupsGetOption("BrowseProtocols", num_settings,
- settings)) == NULL)
- val = CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS;
-
- if (strstr(val, "cups") || strstr(val, "CUPS"))
- cgiSetVariable("BROWSE_REMOTE_CUPS", "CHECKED");
-
- if (strstr(val, "ldap") || strstr(val, "LDAP"))
- cgiSetVariable("BROWSE_REMOTE_LDAP", "CHECKED");
-
- if (strstr(val, "slp") || strstr(val, "SLP"))
- cgiSetVariable("BROWSE_REMOTE_SLP", "CHECKED");
-
- if ((val = cupsGetOption("BrowseLocalProtocols", num_settings,
- settings)) == NULL)
- if ((val = cupsGetOption("BrowseProtocols", num_settings,
- settings)) == NULL)
- val = CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS;
-
- if (strstr(val, "cups") || strstr(val, "CUPS"))
- cgiSetVariable("BROWSE_LOCAL_CUPS", "CHECKED");
-
- if (strstr(val, "dnssd") || strstr(val, "DNSSD") ||
- strstr(val, "dns-sd") || strstr(val, "DNS-SD") ||
- strstr(val, "bonjour") || strstr(val, "BONJOUR"))
- cgiSetVariable("BROWSE_LOCAL_DNSSD", "CHECKED");
-
- if (strstr(val, "ldap") || strstr(val, "LDAP"))
- cgiSetVariable("BROWSE_LOCAL_LDAP", "CHECKED");
-
- if (strstr(val, "slp") || strstr(val, "SLP"))
- cgiSetVariable("BROWSE_LOCAL_SLP", "CHECKED");
-
if ((val = cupsGetOption("BrowseWebIF", num_settings,
settings)) == NULL)
val = "No";
@@ -2777,18 +2651,25 @@ do_menu(http_t *http) /* I - HTTP connection */
settings)) == NULL)
val = "Yes";
- if (!_cups_strcasecmp(val, "yes") || !_cups_strcasecmp(val, "on") ||
- !_cups_strcasecmp(val, "true"))
+ if (val &&
+ (!_cups_strcasecmp(val, "0") || !_cups_strcasecmp(val, "no") ||
+ !_cups_strcasecmp(val, "off") || !_cups_strcasecmp(val, "false") ||
+ !_cups_strcasecmp(val, "disabled")))
+ {
+ cgiSetVariable("PRESERVE_JOB_HISTORY", "0");
+ cgiSetVariable("PRESERVE_JOB_FILES", "0");
+ }
+ else
{
- cgiSetVariable("PRESERVE_JOB_HISTORY", "CHECKED");
+ cgiSetVariable("PRESERVE_JOBS", "CHECKED");
+ cgiSetVariable("PRESERVE_JOB_HISTORY", val);
if ((val = cupsGetOption("PreserveJobFiles", num_settings,
settings)) == NULL)
- val = "No";
+ val = "1d";
+
+ cgiSetVariable("PRESERVE_JOB_FILES", val);
- if (!_cups_strcasecmp(val, "yes") || !_cups_strcasecmp(val, "on") ||
- !_cups_strcasecmp(val, "true"))
- cgiSetVariable("PRESERVE_JOB_FILES", "CHECKED");
}
if ((val = cupsGetOption("MaxClients", num_settings, settings)) == NULL)
@@ -2956,7 +2837,7 @@ do_set_allowed_users(http_t *http) /* I - HTTP connection */
exit(0);
}
else if (cupsLastError() > IPP_OK_CONFLICT)
- cgiShowIPPError(_("Unable to get printer attributes:"));
+ cgiShowIPPError(_("Unable to get printer attributes"));
else
cgiCopyTemplateLang("users.tmpl");
@@ -3106,7 +2987,7 @@ do_set_allowed_users(http_t *http) /* I - HTTP connection */
else if (cupsLastError() > IPP_OK_CONFLICT)
{
cgiStartHTML(cgiText(_("Set Allowed Users")));
- cgiShowIPPError(_("Unable to change printer:"));
+ cgiShowIPPError(_("Unable to change printer"));
}
else
{
@@ -3193,7 +3074,7 @@ do_set_default(http_t *http) /* I - HTTP connection */
else if (cupsLastError() > IPP_OK_CONFLICT)
{
cgiStartHTML(title);
- cgiShowIPPError(_("Unable to set server default:"));
+ cgiShowIPPError(_("Unable to set server default"));
}
else
{
@@ -3302,7 +3183,7 @@ do_set_options(http_t *http, /* I - HTTP connection */
if ((ppd = ppdOpenFile(filename)) == NULL)
{
cgiSetVariable("ERROR", ppdErrorString(ppdLastError(&i)));
- cgiSetVariable("MESSAGE", cgiText(_("Unable to open PPD file:")));
+ cgiSetVariable("MESSAGE", cgiText(_("Unable to open PPD file")));
cgiStartHTML(title);
cgiCopyTemplateLang("error.tmpl");
cgiEndHTML();
@@ -3923,7 +3804,7 @@ do_set_options(http_t *http, /* I - HTTP connection */
else if (cupsLastError() > IPP_OK_CONFLICT)
{
cgiStartHTML(title);
- cgiShowIPPError(_("Unable to set options:"));
+ cgiShowIPPError(_("Unable to set options"));
}
else
{
@@ -4022,7 +3903,7 @@ do_set_sharing(http_t *http) /* I - HTTP connection */
else if (cupsLastError() > IPP_OK_CONFLICT)
{
cgiStartHTML(cgiText(_("Set Publishing")));
- cgiShowIPPError(_("Unable to change printer-is-shared attribute:"));
+ cgiShowIPPError(_("Unable to change printer-is-shared attribute"));
}
else
{
@@ -4337,5 +4218,5 @@ get_points(double number, /* I - Original number */
/*
- * End of "$Id: admin.c 9901 2011-08-17 21:01:53Z mike $".
+ * End of "$Id: admin.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/cgi-bin/cgi-private.h b/cgi-bin/cgi-private.h
index 73d80c00..3503ed12 100644
--- a/cgi-bin/cgi-private.h
+++ b/cgi-bin/cgi-private.h
@@ -1,9 +1,9 @@
/*
- * "$Id: cgi-private.h 9042 2010-03-24 00:45:34Z mike $"
+ * "$Id: cgi-private.h 10097 2011-11-02 05:35:38Z mike $"
*
* Private CGI definitions for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2011 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -21,6 +21,7 @@
#include <cups/debug-private.h>
#include <cups/language-private.h>
#include <cups/string-private.h>
+#include <cups/ipp-private.h> /* TODO: Update so we don't need this */
/*
@@ -31,5 +32,5 @@
/*
- * End of "$Id: cgi-private.h 9042 2010-03-24 00:45:34Z mike $".
+ * End of "$Id: cgi-private.h 10097 2011-11-02 05:35:38Z mike $".
*/
diff --git a/cgi-bin/classes.c b/cgi-bin/classes.c
index b8f5e7c6..489d21c9 100644
--- a/cgi-bin/classes.c
+++ b/cgi-bin/classes.c
@@ -1,9 +1,9 @@
/*
- * "$Id: classes.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: classes.c 10431 2012-04-23 19:19:19Z mike $"
*
* Class status CGI for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -257,7 +257,7 @@ do_class_op(http_t *http, /* I - HTTP connection */
else if (cupsLastError() > IPP_OK_CONFLICT)
{
cgiStartHTML(title);
- cgiShowIPPError(_("Unable to do maintenance command:"));
+ cgiShowIPPError(_("Unable to do maintenance command"));
}
else
{
@@ -447,7 +447,7 @@ show_all_classes(http_t *http, /* I - Connection to server */
* Show the error...
*/
- cgiShowIPPError(_("Unable to get class list:"));
+ cgiShowIPPError(_("Unable to get class list"));
}
cgiEndHTML();
@@ -546,7 +546,7 @@ show_class(http_t *http, /* I - Connection to server */
*/
cgiStartHTML(pclass);
- cgiShowIPPError(_("Unable to get class status:"));
+ cgiShowIPPError(_("Unable to get class status"));
}
cgiEndHTML();
@@ -554,5 +554,5 @@ show_class(http_t *http, /* I - Connection to server */
/*
- * End of "$Id: classes.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: classes.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/cgi-bin/help-index.c b/cgi-bin/help-index.c
index ce97be3a..444928e9 100644
--- a/cgi-bin/help-index.c
+++ b/cgi-bin/help-index.c
@@ -1,5 +1,5 @@
/*
- * "$Id: help-index.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: help-index.c 9950 2011-09-01 23:02:24Z mike $"
*
* Online help index routines for CUPS.
*
@@ -161,7 +161,8 @@ static int help_load_file(help_index_t *hi,
static help_node_t *help_new_node(const char *filename, const char *anchor,
const char *section, const char *text,
time_t mtime, off_t offset,
- size_t length);
+ size_t length)
+ __attribute__((nonnull(1,3,4)));
static int help_sort_by_name(help_node_t *p1, help_node_t *p2);
static int help_sort_by_score(help_node_t *p1, help_node_t *p2);
static int help_sort_words(help_word_t *w1, help_word_t *w2);
@@ -177,7 +178,7 @@ helpDeleteIndex(help_index_t *hi) /* I - Help index */
help_node_t *node; /* Current node */
- DEBUG_printf(("helpDeleteIndex(hi=%p)\n", hi));
+ DEBUG_printf(("helpDeleteIndex(hi=%p)", hi));
if (!hi)
return;
@@ -209,8 +210,8 @@ helpFindNode(help_index_t *hi, /* I - Index */
help_node_t key; /* Search key */
- DEBUG_printf(("helpFindNode(hi=%p, filename=\"%s\", anchor=\"%s\")\n",
- hi, filename ? filename : "(nil)", anchor ? anchor : "(nil)"));
+ DEBUG_printf(("helpFindNode(hi=%p, filename=\"%s\", anchor=\"%s\")",
+ hi, filename, anchor));
/*
* Range check input...
@@ -259,7 +260,7 @@ helpLoadIndex(const char *hifile, /* I - Index filename */
help_word_t *word; /* Current word */
- DEBUG_printf(("helpLoadIndex(hifile=\"%s\", directory=\"%s\")\n",
+ DEBUG_printf(("helpLoadIndex(hifile=\"%s\", directory=\"%s\")",
hifile, directory));
/*
@@ -464,7 +465,7 @@ helpSaveIndex(help_index_t *hi, /* I - Index */
help_word_t *word; /* Current word */
- DEBUG_printf(("helpSaveIndex(hi=%p, hifile=\"%s\")\n", hi, hifile));
+ DEBUG_printf(("helpSaveIndex(hi=%p, hifile=\"%s\")", hi, hifile));
/*
* Try creating a new index file...
@@ -545,9 +546,8 @@ helpSearchIndex(help_index_t *hi, /* I - Index */
int matches; /* Number of matches */
- DEBUG_printf(("helpSearchIndex(hi=%p, query=\"%s\", filename=\"%s\")\n",
- hi, query ? query : "(nil)",
- filename ? filename : "(nil)"));
+ DEBUG_printf(("helpSearchIndex(hi=%p, query=\"%s\", filename=\"%s\")",
+ hi, query, filename));
/*
* Range check...
@@ -670,7 +670,7 @@ help_add_word(help_node_t *n, /* I - Node */
key; /* Search key */
- DEBUG_printf(("help_add_word(n=%p, text=\"%s\")\n", n, text));
+ DEBUG_printf(("2help_add_word(n=%p, text=\"%s\")", n, text));
/*
* Create the words array as needed...
@@ -723,7 +723,7 @@ help_delete_node(help_node_t *n) /* I - Node */
help_word_t *w; /* Current word */
- DEBUG_printf(("help_delete_node(n=%p)\n", n));
+ DEBUG_printf(("2help_delete_node(n=%p)", n));
if (!n)
return;
@@ -758,7 +758,7 @@ help_delete_node(help_node_t *n) /* I - Node */
static void
help_delete_word(help_word_t *w) /* I - Word */
{
- DEBUG_printf(("help_delete_word(w=%p)\n", w));
+ DEBUG_printf(("2help_delete_word(w=%p)", w));
if (!w)
return;
@@ -789,8 +789,8 @@ help_load_directory(
help_node_t *node; /* Current node */
- DEBUG_printf(("help_load_directory(hi=%p, directory=\"%s\", relative=\"%s\")\n",
- hi, directory ? directory : "(nil)", relative ? relative : "(nil)"));
+ DEBUG_printf(("2help_load_directory(hi=%p, directory=\"%s\", relative=\"%s\")",
+ hi, directory, relative));
/*
* Open the directory and scan it...
@@ -901,9 +901,8 @@ help_load_file(
int wordlen; /* Length of word */
- DEBUG_printf(("help_load_file(hi=%p, filename=\"%s\", relative=\"%s\", mtime=%ld)\n",
- hi, filename ? filename : "(nil)",
- relative ? relative : "(nil)", mtime));
+ DEBUG_printf(("2help_load_file(hi=%p, filename=\"%s\", relative=\"%s\", "
+ "mtime=%ld)", hi, filename, relative, mtime));
if ((fp = cupsFileOpen(filename, "r")) == NULL)
return (-1);
@@ -1229,11 +1228,9 @@ help_new_node(const char *filename, /* I - Filename */
help_node_t *n; /* Node */
- DEBUG_printf(("help_new_node(filename=\"%s\", anchor=\"%s\", text=\"%s\", "
- "mtime=%ld, offset=%ld, length=%ld)\n",
- filename ? filename : "(nil)", anchor ? anchor : "(nil)",
- text ? text : "(nil)", (long)mtime, (long)offset,
- (long)length));
+ DEBUG_printf(("2help_new_node(filename=\"%s\", anchor=\"%s\", text=\"%s\", "
+ "mtime=%ld, offset=%ld, length=%ld)", filename, anchor, text,
+ (long)mtime, (long)offset, (long)length));
n = (help_node_t *)calloc(1, sizeof(help_node_t));
if (!n)
@@ -1262,9 +1259,9 @@ help_sort_by_name(help_node_t *n1, /* I - First node */
int diff; /* Difference */
- DEBUG_printf(("help_sort_by_name(n1=%p(%s#%s), n2=%p(%s#%s)\n",
- n1, n1->filename, n1->anchor ? n1->anchor : "",
- n2, n2->filename, n2->anchor ? n2->anchor : ""));
+ DEBUG_printf(("2help_sort_by_name(n1=%p(%s#%s), n2=%p(%s#%s)",
+ n1, n1->filename, n1->anchor,
+ n2, n2->filename, n2->anchor));
if ((diff = strcmp(n1->filename, n2->filename)) != 0)
return (diff);
@@ -1291,10 +1288,10 @@ help_sort_by_score(help_node_t *n1, /* I - First node */
int diff; /* Difference */
- DEBUG_printf(("help_sort_by_score(n1=%p(%d \"%s\" \"%s\"), "
- "n2=%p(%d \"%s\" \"%s\")\n",
- n1, n1->score, n1->section ? n1->section : "", n1->text,
- n2, n2->score, n2->section ? n2->section : "", n2->text));
+ DEBUG_printf(("2help_sort_by_score(n1=%p(%d \"%s\" \"%s\"), "
+ "n2=%p(%d \"%s\" \"%s\")",
+ n1, n1->score, n1->section, n1->text,
+ n2, n2->score, n2->section, n2->text));
if (n1->score != n2->score)
return (n2->score - n1->score);
@@ -1319,7 +1316,7 @@ static int /* O - Difference */
help_sort_words(help_word_t *w1, /* I - Second word */
help_word_t *w2) /* I - Second word */
{
- DEBUG_printf(("help_sort_words(w1=%p(\"%s\"), w2=%p(\"%s\"))\n",
+ DEBUG_printf(("2help_sort_words(w1=%p(\"%s\"), w2=%p(\"%s\"))",
w1, w1->text, w2, w2->text));
return (_cups_strcasecmp(w1->text, w2->text));
@@ -1327,5 +1324,5 @@ help_sort_words(help_word_t *w1, /* I - Second word */
/*
- * End of "$Id: help-index.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: help-index.c 9950 2011-09-01 23:02:24Z mike $".
*/
diff --git a/cgi-bin/ipp-var.c b/cgi-bin/ipp-var.c
index 8f13c279..1c7bdb03 100644
--- a/cgi-bin/ipp-var.c
+++ b/cgi-bin/ipp-var.c
@@ -1,9 +1,9 @@
/*
- * "$Id: ipp-var.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: ipp-var.c 10431 2012-04-23 19:19:19Z mike $"
*
* CGI <-> IPP variable routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -792,7 +792,7 @@ cgiPrintTestPage(http_t *http, /* I - Connection to server */
cgiStartHTML(cgiText(_("Print Test Page")));
if (cupsLastError() > IPP_OK_CONFLICT)
- cgiShowIPPError(_("Unable to print test page:"));
+ cgiShowIPPError(_("Unable to print test page"));
else
{
cgiSetVariable("PRINTER_NAME", dest);
@@ -1219,7 +1219,7 @@ cgiSetIPPObjectVars(
"%dx%d%s", attr->values[i].resolution.xres,
attr->values[i].resolution.yres,
attr->values[i].resolution.units == IPP_RES_PER_INCH ?
- "dpi" : "dpc");
+ "dpi" : "dpcm");
break;
case IPP_TAG_URI :
@@ -1588,5 +1588,5 @@ cgiText(const char *message) /* I - Message */
/*
- * End of "$Id: ipp-var.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: ipp-var.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/cgi-bin/jobs.c b/cgi-bin/jobs.c
index 68635057..893d1054 100644
--- a/cgi-bin/jobs.c
+++ b/cgi-bin/jobs.c
@@ -1,9 +1,9 @@
/*
- * "$Id: jobs.c 9771 2011-05-12 05:21:56Z mike $"
+ * "$Id: jobs.c 10431 2012-04-23 19:19:19Z mike $"
*
* Job status CGI for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -195,7 +195,7 @@ do_job_op(http_t *http, /* I - HTTP connection */
cgiStartHTML(cgiText(_("Jobs")));
if (cupsLastError() > IPP_OK_CONFLICT)
- cgiShowIPPError(_("Job operation failed:"));
+ cgiShowIPPError(_("Job operation failed"));
else if (op == IPP_CANCEL_JOB)
cgiCopyTemplateLang("job-cancel.tmpl");
else if (op == IPP_HOLD_JOB)
@@ -210,5 +210,5 @@ do_job_op(http_t *http, /* I - HTTP connection */
/*
- * End of "$Id: jobs.c 9771 2011-05-12 05:21:56Z mike $".
+ * End of "$Id: jobs.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/cgi-bin/makedocset.c b/cgi-bin/makedocset.c
index a87f9cee..4868b879 100644
--- a/cgi-bin/makedocset.c
+++ b/cgi-bin/makedocset.c
@@ -1,9 +1,9 @@
/*
- * "$Id: makedocset.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: makedocset.c 10507 2012-05-23 22:39:50Z mike $"
*
* Xcode documentation set generator.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -31,7 +31,7 @@
* Include necessary headers...
*/
-#include "cgi.h"
+#include "cgi-private.h"
#include <errno.h>
@@ -482,5 +482,5 @@ write_nodes(const char *path, /* I - File to write */
/*
- * End of "$Id: makedocset.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: makedocset.c 10507 2012-05-23 22:39:50Z mike $".
*/
diff --git a/cgi-bin/printers.c b/cgi-bin/printers.c
index 89f2a1b0..0dbb79fc 100644
--- a/cgi-bin/printers.c
+++ b/cgi-bin/printers.c
@@ -1,9 +1,9 @@
/*
- * "$Id: printers.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: printers.c 10431 2012-04-23 19:19:19Z mike $"
*
* Printer status CGI for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -266,7 +266,7 @@ do_printer_op(http_t *http, /* I - HTTP connection */
else if (cupsLastError() > IPP_OK_CONFLICT)
{
cgiStartHTML(title);
- cgiShowIPPError(_("Unable to do maintenance command:"));
+ cgiShowIPPError(_("Unable to do maintenance command"));
}
else
{
@@ -464,7 +464,7 @@ show_all_printers(http_t *http, /* I - Connection to server */
* Show the error...
*/
- cgiShowIPPError(_("Unable to get printer list:"));
+ cgiShowIPPError(_("Unable to get printer list"));
}
cgiEndHTML();
@@ -566,7 +566,7 @@ show_printer(http_t *http, /* I - Connection to server */
*/
cgiStartHTML(printer);
- cgiShowIPPError(_("Unable to get printer status:"));
+ cgiShowIPPError(_("Unable to get printer status"));
}
cgiEndHTML();
@@ -574,5 +574,5 @@ show_printer(http_t *http, /* I - Connection to server */
/*
- * End of "$Id: printers.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: printers.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/cgi-bin/var.c b/cgi-bin/var.c
index 90fbc834..088f3254 100644
--- a/cgi-bin/var.c
+++ b/cgi-bin/var.c
@@ -1,5 +1,5 @@
/*
- * "$Id: var.c 10367 2012-03-21 04:09:04Z mike $"
+ * "$Id: var.c 10346 2012-03-12 15:37:13Z mike $"
*
* CGI form variable and array functions for CUPS.
*
@@ -1307,5 +1307,5 @@ cgi_unlink_file(void)
/*
- * End of "$Id: var.c 10367 2012-03-21 04:09:04Z mike $".
+ * End of "$Id: var.c 10346 2012-03-12 15:37:13Z mike $".
*/
diff --git a/conf/mime.convs.in b/conf/mime.convs.in
index 7a2333d9..ecd127a6 100644
--- a/conf/mime.convs.in
+++ b/conf/mime.convs.in
@@ -1,5 +1,5 @@
#
-# "$Id: mime.convs.in 9750 2011-05-06 22:53:53Z mike $"
+# "$Id: mime.convs.in 9926 2011-08-27 09:23:01Z mike $"
#
# DO NOT EDIT THIS FILE, AS IT IS OVERWRITTEN WHEN YOU INSTALL NEW
# VERSIONS OF CUPS. Instead, create a "local.convs" file that
@@ -38,51 +38,13 @@
# PostScript filters
#
-@DEFAULT_PDFTOPS@application/pdf application/vnd.cups-postscript 66 pdftops
application/postscript application/vnd.cups-postscript 66 pstops
-@DEFAULT_TEXTTOPS@application/x-cshell application/postscript 33 texttops
-@DEFAULT_TEXTTOPS@application/x-csource application/postscript 33 texttops
-@DEFAULT_TEXTTOPS@application/x-perl application/postscript 33 texttops
-@DEFAULT_TEXTTOPS@application/x-shell application/postscript 33 texttops
-@DEFAULT_TEXTTOPS@text/plain application/postscript 33 texttops
-@DEFAULT_TEXTTOPS@text/css application/postscript 33 texttops
-@DEFAULT_TEXTTOPS@text/html application/postscript 33 texttops
-@DEFAULT_IMAGEFILTERS@image/gif application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/png application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/jpeg application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/tiff application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/x-bitmap application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/x-photocd application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/x-portable-anymap application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/x-portable-bitmap application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/x-portable-graymap application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/x-portable-pixmap application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/x-sgi-rgb application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/x-xbitmap application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/x-xpixmap application/vnd.cups-postscript 66 imagetops
-@DEFAULT_IMAGEFILTERS@image/x-sun-raster application/vnd.cups-postscript 66 imagetops
-@DEFAULT_BANNERTOPS@application/vnd.cups-banner application/postscript 33 bannertops
########################################################################
#
# Raster filters...
#
-@DEFAULT_IMAGEFILTERS@image/gif application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/png application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/jpeg application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/tiff application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/x-bitmap application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/x-photocd application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/x-portable-anymap application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/x-portable-bitmap application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/x-portable-graymap application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/x-portable-pixmap application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/x-sgi-rgb application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/x-xbitmap application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/x-xpixmap application/vnd.cups-raster 100 imagetoraster
-@DEFAULT_IMAGEFILTERS@image/x-sun-raster application/vnd.cups-raster 100 imagetoraster
-
# PWG Raster filter for IPP Everywhere...
application/vnd.cups-raster image/pwg-raster 100 rastertopwg
@@ -97,5 +59,5 @@ application/vnd.cups-raster image/pwg-raster 100 rastertopwg
@DEFAULT_RAW_PRINTING@application/octet-stream application/vnd.cups-raw 0 -
#
-# End of "$Id: mime.convs.in 9750 2011-05-06 22:53:53Z mike $".
+# End of "$Id: mime.convs.in 9926 2011-08-27 09:23:01Z mike $".
#
diff --git a/config-scripts/cups-3264.m4 b/config-scripts/cups-3264.m4
deleted file mode 100644
index 107289ab..00000000
--- a/config-scripts/cups-3264.m4
+++ /dev/null
@@ -1,140 +0,0 @@
-dnl
-dnl "$Id: cups-3264.m4 9771 2011-05-12 05:21:56Z mike $"
-dnl
-dnl 32/64-bit library support stuff for CUPS.
-dnl
-dnl Copyright 2007-2011 by Apple Inc.
-dnl Copyright 1997-2006 by Easy Software Products, all rights reserved.
-dnl
-dnl These coded instructions, statements, and computer programs are the
-dnl property of Apple Inc. and are protected by Federal copyright
-dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
-dnl which should have been included with this file. If this file is
-dnl file is missing or damaged, see the license at "http://www.cups.org/".
-dnl
-
-dnl Setup support for separate 32/64-bit library generation...
-AC_ARG_ENABLE(32bit, [ --enable-32bit generate 32-bit libraries on 32/64-bit systems])
-
-INSTALL32=""
-LIB32CUPS=""
-LIB32CUPSIMAGE=""
-LIB32DIR=""
-UNINSTALL32=""
-
-AC_SUBST(INSTALL32)
-AC_SUBST(LIB32CUPS)
-AC_SUBST(LIB32CUPSIMAGE)
-AC_SUBST(LIB32DIR)
-AC_SUBST(UNINSTALL32)
-
-AC_ARG_ENABLE(64bit, [ --enable-64bit generate 64-bit libraries on 32/64-bit systems])
-
-INSTALL64=""
-LIB64CUPS=""
-LIB64CUPSIMAGE=""
-LIB64DIR=""
-UNINSTALL64=""
-
-AC_SUBST(INSTALL64)
-AC_SUBST(LIB64CUPS)
-AC_SUBST(LIB64CUPSIMAGE)
-AC_SUBST(LIB64DIR)
-AC_SUBST(UNINSTALL64)
-
-case "$uname" in
- HP-UX*)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- INSTALL32="install32bit"
- LIB32CUPS="32bit/libcups.so.2"
- LIB32CUPSIMAGE="32bit/libcupsimage.so.2"
- LIB32DIR="$exec_prefix/lib"
- if test -d /usr/lib/hpux32; then
- LIB32DIR="${LIB32DIR}/hpux32"
- fi
- UNINSTALL32="uninstall32bit"
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- INSTALL64="install64bit"
- LIB64CUPS="64bit/libcups.so.2"
- LIB64CUPSIMAGE="64bit/libcupsimage.so.2"
- LIB64DIR="$exec_prefix/lib"
- if test -d /usr/lib/hpux64; then
- LIB64DIR="${LIB64DIR}/hpux64"
- fi
- UNINSTALL64="uninstall64bit"
- fi
- ;;
-
- IRIX)
- if test "x$enable_32bit" = xyes; then
- INSTALL32="install32bit"
- LIB32CUPS="32bit/libcups.so.2"
- LIB32CUPSIMAGE="32bit/libcupsimage.so.2"
- LIB32DIR="$prefix/lib32"
- UNINSTALL32="uninstall32bit"
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- INSTALL64="install64bit"
- LIB64CUPS="64bit/libcups.so.2"
- LIB64CUPSIMAGE="64bit/libcupsimage.so.2"
- LIB64DIR="$prefix/lib64"
- UNINSTALL64="uninstall64bit"
- fi
- ;;
-
- Linux*)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- INSTALL32="install32bit"
- LIB32CUPS="32bit/libcups.so.2"
- LIB32CUPSIMAGE="32bit/libcupsimage.so.2"
- LIB32DIR="$exec_prefix/lib"
- if test -d /usr/lib32; then
- LIB32DIR="${LIB32DIR}32"
- fi
- UNINSTALL32="uninstall32bit"
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- INSTALL64="install64bit"
- LIB64CUPS="64bit/libcups.so.2"
- LIB64CUPSIMAGE="64bit/libcupsimage.so.2"
- LIB64DIR="$exec_prefix/lib"
- if test -d /usr/lib64; then
- LIB64DIR="${LIB64DIR}64"
- fi
- UNINSTALL64="uninstall64bit"
- fi
- ;;
-
- SunOS*)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- INSTALL32="install32bit"
- LIB32CUPS="32bit/libcups.so.2"
- LIB32CUPSIMAGE="32bit/libcupsimage.so.2"
- LIB32DIR="$exec_prefix/lib/32"
- UNINSTALL32="uninstall32bit"
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- INSTALL64="install64bit"
- LIB64CUPS="64bit/libcups.so.2"
- LIB64CUPSIMAGE="64bit/libcupsimage.so.2"
- LIB64DIR="$exec_prefix/lib/64"
- UNINSTALL64="uninstall64bit"
- fi
- ;;
-esac
-
-dnl
-dnl End of "$Id: cups-3264.m4 9771 2011-05-12 05:21:56Z mike $".
-dnl
diff --git a/config-scripts/cups-common.m4 b/config-scripts/cups-common.m4
index 86f65ef8..01439aa5 100644
--- a/config-scripts/cups-common.m4
+++ b/config-scripts/cups-common.m4
@@ -1,5 +1,5 @@
dnl
-dnl "$Id: cups-common.m4 10466 2012-05-15 14:21:57Z mike $"
+dnl "$Id: cups-common.m4 10548 2012-07-16 18:21:43Z mike $"
dnl
dnl Common configuration stuff for CUPS.
dnl
@@ -20,7 +20,7 @@ dnl Set the name of the config header file...
AC_CONFIG_HEADER(config.h)
dnl Version number information...
-CUPS_VERSION=1.5.4
+CUPS_VERSION=1.6.0
CUPS_REVISION=
#if test -z "$CUPS_REVISION" -a -d .svn; then
# CUPS_REVISION="-r`svnversion . | awk -F: '{print $NF}' | sed -e '1,$s/[[a-zA-Z]]*//g'`"
@@ -51,7 +51,6 @@ AC_PROG_RANLIB
AC_PATH_PROG(AR,ar)
AC_PATH_PROG(CHMOD,chmod)
AC_PATH_PROG(GZIP,gzip)
-AC_PATH_PROG(HTMLDOC,htmldoc)
AC_PATH_PROG(LD,ld)
AC_PATH_PROG(LN,ln)
AC_PATH_PROG(MV,mv)
@@ -93,8 +92,9 @@ dnl Check for pkg-config, which is used for some other tests later on...
AC_PATH_PROG(PKGCONFIG, pkg-config)
dnl Check for libraries...
-AC_SEARCH_LIBS(fmod, m)
+AC_SEARCH_LIBS(abs, m, AC_DEFINE(HAVE_ABS))
AC_SEARCH_LIBS(crypt, crypt)
+AC_SEARCH_LIBS(fmod, m)
AC_SEARCH_LIBS(getspent, sec gen)
LIBMALLOC=""
@@ -125,6 +125,7 @@ AC_SUBST(LIBPAPER)
dnl Checks for header files.
AC_HEADER_STDC
+AC_CHECK_HEADER(stdlib.h,AC_DEFINE(HAVE_STDLIB_H))
AC_CHECK_HEADER(crypt.h,AC_DEFINE(HAVE_CRYPT_H))
AC_CHECK_HEADER(langinfo.h,AC_DEFINE(HAVE_LANGINFO_H))
AC_CHECK_HEADER(malloc.h,AC_DEFINE(HAVE_MALLOC_H))
@@ -147,6 +148,16 @@ AC_CHECK_HEADER(iconv.h,
SAVELIBS="$SAVELIBS $LIBS")
LIBS="$SAVELIBS")
+dnl Checks for Mini-XML (www.minixml.org)...
+LIBMXML=""
+AC_CHECK_HEADER(mxml.h,
+ SAVELIBS="$LIBS"
+ AC_SEARCH_LIBS(mmxlNewElement,mxml,
+ AC_DEFINE(HAVE_MXML_H)
+ LIBMXML="-lmxml")
+ LIBS="$SAVELIBS")
+AC_SUBST(LIBMXML)
+
dnl Checks for statfs and its many headers...
AC_CHECK_HEADER(sys/mount.h,AC_DEFINE(HAVE_SYS_MOUNT_H))
AC_CHECK_HEADER(sys/statfs.h,AC_DEFINE(HAVE_SYS_STATFS_H))
@@ -244,6 +255,20 @@ if test x$enable_tcp_wrappers = xyes; then
LIBWRAP="-lwrap")])
fi
+dnl ZLIB
+INSTALL_GZIP=""
+LIBZ=""
+AC_CHECK_HEADER(zlib.h,
+ AC_CHECK_LIB(z, gzgets,
+ AC_DEFINE(HAVE_LIBZ)
+ LIBZ="-lz"
+ LIBS="$LIBS -lz"
+ if test "x$GZIP" != z; then
+ INSTALL_GZIP="-z"
+ fi))
+AC_SUBST(INSTALL_GZIP)
+AC_SUBST(LIBZ)
+
dnl Flags for "ar" command...
case $uname in
Darwin* | *BSD*)
@@ -313,11 +338,9 @@ dnl Extra platform-specific libraries...
CUPS_DEFAULT_PRINTOPERATOR_AUTH="@SYSTEM"
CUPS_SYSTEM_AUTHKEY=""
INSTALLXPC=""
-LEGACY_BACKENDS="parallel"
case $uname in
Darwin*)
- LEGACY_BACKENDS=""
BACKLIBS="$BACKLIBS -framework IOKit"
SERVERLIBS="$SERVERLIBS -framework IOKit -weak_framework ApplicationServices"
LIBS="-framework SystemConfiguration -framework CoreFoundation -framework Security $LIBS"
@@ -332,12 +355,6 @@ case $uname in
dnl Check for dynamic store function...
AC_CHECK_FUNCS(SCDynamicStoreCopyComputerName)
- dnl Check for new ColorSync APIs...
- SAVELIBS="$LIBS"
- LIBS="$LIBS -framework ApplicationServices"
- AC_CHECK_FUNCS(ColorSyncRegisterDevice)
- LIBS="$SAVELIBS"
-
dnl Check for the new membership functions in MacOSX 10.4...
AC_CHECK_HEADER(membership.h,AC_DEFINE(HAVE_MEMBERSHIP_H))
AC_CHECK_HEADER(membershipPriv.h,AC_DEFINE(HAVE_MEMBERSHIPPRIV_H))
@@ -400,6 +417,8 @@ case $uname in
AC_CHECK_HEADER(xpc/xpc.h,
AC_DEFINE(HAVE_XPC)
INSTALLXPC="install-xpc")
+ AC_CHECK_HEADER(xpc/private.h,
+ AC_DEFINE(HAVE_XPC_PRIVATE_H))
;;
esac
@@ -407,7 +426,6 @@ AC_SUBST(CUPS_DEFAULT_PRINTOPERATOR_AUTH)
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_PRINTOPERATOR_AUTH, "$CUPS_DEFAULT_PRINTOPERATOR_AUTH")
AC_SUBST(CUPS_SYSTEM_AUTHKEY)
AC_SUBST(INSTALLXPC)
-AC_SUBST(LEGACY_BACKENDS)
dnl Check for build components
COMPONENTS="all"
@@ -419,7 +437,7 @@ AC_ARG_WITH(components, [ --with-components set components to build:
case "$COMPONENTS" in
all)
- BUILDDIRS="filter backend berkeley cgi-bin driver monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates"
+ BUILDDIRS="filter backend berkeley cgi-bin monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates"
;;
core)
@@ -434,5 +452,5 @@ esac
AC_SUBST(BUILDDIRS)
dnl
-dnl End of "$Id: cups-common.m4 10466 2012-05-15 14:21:57Z mike $".
+dnl End of "$Id: cups-common.m4 10548 2012-07-16 18:21:43Z mike $".
dnl
diff --git a/config-scripts/cups-compiler.m4 b/config-scripts/cups-compiler.m4
index 3714c001..fc415c55 100644
--- a/config-scripts/cups-compiler.m4
+++ b/config-scripts/cups-compiler.m4
@@ -1,9 +1,9 @@
dnl
-dnl "$Id: cups-compiler.m4 9981 2011-09-09 17:28:58Z mike $"
+dnl "$Id: cups-compiler.m4 10190 2012-01-20 16:22:58Z mike $"
dnl
dnl Compiler stuff for CUPS.
dnl
-dnl Copyright 2007-2011 by Apple Inc.
+dnl Copyright 2007-2012 by Apple Inc.
dnl Copyright 1997-2007 by Easy Software Products, all rights reserved.
dnl
dnl These coded instructions, statements, and computer programs are the
@@ -66,8 +66,8 @@ fi
if test -z "$with_ldarchflags"; then
if test "$uname" = Darwin; then
- # Only create 32-bit programs by default
- LDARCHFLAGS="`echo $ARCHFLAGS | sed -e '1,$s/-arch x86_64//' -e '1,$s/-arch ppc64//'`"
+ # Only create Intel programs by default
+ LDARCHFLAGS="`echo $ARCHFLAGS | sed -e '1,$s/-arch ppc64//'`"
else
LDARCHFLAGS="$ARCHFLAGS"
fi
@@ -78,15 +78,6 @@ fi
AC_SUBST(ARCHFLAGS)
AC_SUBST(LDARCHFLAGS)
-dnl Setup support for separate 32/64-bit library generation...
-AC_ARG_WITH(arch32flags, [ --with-arch32flags set 32-bit architecture flags])
-ARCH32FLAGS=""
-AC_SUBST(ARCH32FLAGS)
-
-AC_ARG_WITH(arch64flags, [ --with-arch64flags set 64-bit architecture flags])
-ARCH64FLAGS=""
-AC_SUBST(ARCH64FLAGS)
-
dnl Read-only data/program support on Linux...
AC_ARG_ENABLE(relro, [ --enable-relro build with the GCC relro option])
@@ -100,9 +91,6 @@ AC_SUBST(PIEFLAGS)
RELROFLAGS=""
AC_SUBST(RELROFLAGS)
-PHPOPTIONS=""
-AC_SUBST(PHPOPTIONS)
-
if test -n "$GCC"; then
# Add GCC-specific compiler options...
if test -z "$OPTIM"; then
@@ -157,7 +145,6 @@ if test -n "$GCC"; then
# Additional warning options for development testing...
if test -d .svn; then
OPTIM="-Wshadow -Werror $OPTIM"
- PHPOPTIONS="-Wno-shadow"
else
AC_MSG_CHECKING(if GCC supports -Wno-tautological-compare)
OLDCFLAGS="$CFLAGS"
@@ -180,154 +167,12 @@ if test -n "$GCC"; then
CFLAGS="$CFLAGS -D_FORTIFY_SOURCE=2"
;;
- HP-UX*)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="-milp32"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-mlp64"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="-mlp64"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-milp32"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
- ;;
-
- IRIX)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="-n32 -mips3"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-64 -mips4"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="-64 -mips4"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-n32 -mips3"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
- ;;
-
Linux*)
# The -z relro option is provided by the Linux linker command to
# make relocatable data read-only.
if test x$enable_relro = xyes; then
RELROFLAGS="-Wl,-z,relro"
fi
-
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="-m32"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-m64"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="-m64"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-m32"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
- ;;
-
- SunOS*)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="-m32"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-m64"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="-m64"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-m32"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
;;
esac
else
@@ -356,40 +201,6 @@ else
if test $PICFLAG = 1; then
OPTIM="+z $OPTIM"
fi
-
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="+DD32"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="+DD64"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="+DD64"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="+DD32"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
;;
IRIX)
if test -z "$OPTIM"; then
@@ -403,40 +214,6 @@ else
if test "x$with_optim" = x; then
OPTIM="-fullwarn -woff 1183,1209,1349,1506,3201 $OPTIM"
fi
-
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="-n32 -mips3"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-64 -mips4"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="-64 -mips4"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-n32 -mips3"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
;;
OSF*)
# Tru64 UNIX aka Digital UNIX aka OSF/1
@@ -461,47 +238,6 @@ else
if test $PICFLAG = 1; then
OPTIM="-KPIC $OPTIM"
fi
-
- if test "x$enable_32bit" = xyes; then
- # Compiling on a Solaris system, build 64-bit
- # binaries with separate 32-bit libraries...
- ARCH32FLAGS="-xarch=generic"
-
- if test "x$with_optim" = x; then
- # Suppress all of Sun's questionable
- # warning messages, and default to
- # 64-bit compiles of everything else...
- OPTIM="-w $OPTIM"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-xarch=generic64"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- else
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries...
- ARCH64FLAGS="-xarch=generic64"
- fi
-
- if test "x$with_optim" = x; then
- # Suppress all of Sun's questionable
- # warning messages, and default to
- # 32-bit compiles of everything else...
- OPTIM="-w $OPTIM"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-xarch=generic"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
;;
UNIX_SVR*)
# UnixWare
@@ -559,5 +295,5 @@ case $uname in
esac
dnl
-dnl End of "$Id: cups-compiler.m4 9981 2011-09-09 17:28:58Z mike $".
+dnl End of "$Id: cups-compiler.m4 10190 2012-01-20 16:22:58Z mike $".
dnl
diff --git a/config-scripts/cups-defaults.m4 b/config-scripts/cups-defaults.m4
index f56ca556..58497004 100644
--- a/config-scripts/cups-defaults.m4
+++ b/config-scripts/cups-defaults.m4
@@ -1,9 +1,9 @@
dnl
-dnl "$Id: cups-defaults.m4 9750 2011-05-06 22:53:53Z mike $"
+dnl "$Id: cups-defaults.m4 10424 2012-04-23 17:26:57Z mike $"
dnl
dnl Default cupsd configuration settings for CUPS.
dnl
-dnl Copyright 2007-2011 by Apple Inc.
+dnl Copyright 2007-2012 by Apple Inc.
dnl Copyright 2006-2007 by Easy Software Products, all rights reserved.
dnl
dnl These coded instructions, statements, and computer programs are the
@@ -14,7 +14,7 @@ dnl file is missing or damaged, see the license at "http://www.cups.org/".
dnl
dnl Default languages...
-LANGUAGES="`ls -1 locale/cups_*.po | sed -e '1,$s/locale\/cups_//' -e '1,$s/\.po//' | tr '\n' ' '`"
+LANGUAGES="`ls -1 locale/cups_*.po 2>/dev/null | sed -e '1,$s/locale\/cups_//' -e '1,$s/\.po//' | tr '\n' ' '`"
AC_ARG_WITH(languages, [ --with-languages set installed languages, default=all ],[
case "$withval" in
@@ -24,8 +24,8 @@ AC_ARG_WITH(languages, [ --with-languages set installed languages, defau
esac])
AC_SUBST(LANGUAGES)
-dnl Mac OS X bundle-based localization support
-AC_ARG_WITH(bundledir, [ --with-bundledir set Mac OS X localization bundle directory ],
+dnl OS X bundle-based localization support
+AC_ARG_WITH(bundledir, [ --with-bundledir set OS X localization bundle directory ],
CUPS_BUNDLEDIR="$withval",
if test "x$uname" = xDarwin -a $uversion -ge 100; then
CUPS_BUNDLEDIR="/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A"
@@ -50,6 +50,12 @@ AC_ARG_WITH(config_file_perm, [ --with-config-file-perm set default ConfigFileP
AC_SUBST(CUPS_CONFIG_FILE_PERM)
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_CONFIG_FILE_PERM, 0$CUPS_CONFIG_FILE_PERM)
+dnl Default permissions for cupsd
+AC_ARG_WITH(cupsd_file_perm, [ --with-cupsd-file-perm set default cupsd permissions, default=0500],
+ CUPS_CUPSD_FILE_PERM="$withval",
+ CUPS_CUPSD_FILE_PERM="500")
+AC_SUBST(CUPS_CUPSD_FILE_PERM)
+
dnl Default LogFilePerm
AC_ARG_WITH(log_file_perm, [ --with-log-file-perm set default LogFilePerm value, default=0644],
CUPS_LOG_FILE_PERM="$withval",
@@ -64,7 +70,6 @@ AC_ARG_WITH(fatal_errors, [ --with-fatal-errors set default FatalErrors val
AC_SUBST(CUPS_FATAL_ERRORS)
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_FATAL_ERRORS, "$CUPS_FATAL_ERRORS")
-
dnl Default LogLevel
AC_ARG_WITH(log_level, [ --with-log-level set default LogLevel value, default=warn],
CUPS_LOG_LEVEL="$withval",
@@ -91,16 +96,16 @@ fi
AC_SUBST(CUPS_BROWSING)
dnl Default BrowseLocalProtocols
-AC_ARG_WITH(local_protocols, [ --with-local-protocols set default BrowseLocalProtocols, default="CUPS"],
+AC_ARG_WITH(local_protocols, [ --with-local-protocols set default BrowseLocalProtocols, default=""],
default_local_protocols="$withval",
default_local_protocols="default")
if test x$with_local_protocols != xno; then
if test "x$default_local_protocols" = "xdefault"; then
- if test "x$DNSSDLIBS" != "x"; then
- CUPS_BROWSE_LOCAL_PROTOCOLS="CUPS dnssd"
- else
- CUPS_BROWSE_LOCAL_PROTOCOLS="CUPS"
+ if test "x$DNSSD_BACKEND" != "x"; then
+ CUPS_BROWSE_LOCAL_PROTOCOLS="dnssd"
+ else
+ CUPS_BROWSE_LOCAL_PROTOCOLS=""
fi
else
CUPS_BROWSE_LOCAL_PROTOCOLS="$default_local_protocols"
@@ -113,41 +118,6 @@ AC_SUBST(CUPS_BROWSE_LOCAL_PROTOCOLS)
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS,
"$CUPS_BROWSE_LOCAL_PROTOCOLS")
-dnl Default BrowseRemoteProtocols
-AC_ARG_WITH(remote_protocols, [ --with-remote-protocols set default BrowseRemoteProtocols, default="CUPS"],
- default_remote_protocols="$withval",
- default_remote_protocols="default")
-
-if test x$with_remote_protocols != xno; then
- if test "x$default_remote_protocols" = "xdefault"; then
- if test "$uname" = "Darwin" -a $uversion -ge 90; then
- CUPS_BROWSE_REMOTE_PROTOCOLS=""
- else
- CUPS_BROWSE_REMOTE_PROTOCOLS="CUPS"
- fi
- else
- CUPS_BROWSE_REMOTE_PROTOCOLS="$default_remote_protocols"
- fi
-else
- CUPS_BROWSE_REMOTE_PROTOCOLS=""
-fi
-
-AC_SUBST(CUPS_BROWSE_REMOTE_PROTOCOLS)
-AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS,
- "$CUPS_BROWSE_REMOTE_PROTOCOLS")
-
-dnl Default BrowseShortNames
-AC_ARG_ENABLE(browse_short, [ --disable-browse-short-names
- disable BrowseShortNames by default])
-if test "x$enable_browse_short" = xno; then
- CUPS_BROWSE_SHORT_NAMES="No"
- AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSE_SHORT_NAMES, 0)
-else
- CUPS_BROWSE_SHORT_NAMES="Yes"
- AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSE_SHORT_NAMES, 1)
-fi
-AC_SUBST(CUPS_BROWSE_SHORT_NAMES)
-
dnl Default DefaultShared
AC_ARG_ENABLE(default_shared, [ --disable-default-shared
disable DefaultShared by default])
@@ -160,38 +130,6 @@ else
fi
AC_SUBST(CUPS_DEFAULT_SHARED)
-dnl Default ImplicitClasses
-AC_ARG_ENABLE(implicit, [ --disable-implicit-classes
- disable ImplicitClasses by default])
-if test "x$enable_implicit" = xno; then
- CUPS_IMPLICIT_CLASSES="No"
- AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IMPLICIT_CLASSES, 0)
-else
- CUPS_IMPLICIT_CLASSES="Yes"
- AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IMPLICIT_CLASSES, 1)
-fi
-AC_SUBST(CUPS_IMPLICIT_CLASSES)
-
-dnl Default UseNetworkDefault
-AC_ARG_ENABLE(use_network_default, [ --enable-use-network-default
- set UseNetworkDefault to Yes by default])
-if test "x$enable_use_network_default" != xno; then
- AC_MSG_CHECKING(whether to use network default printers)
- if test "x$enable_use_network_default" = xyes -o $uname != Darwin; then
- CUPS_USE_NETWORK_DEFAULT="Yes"
- AC_DEFINE_UNQUOTED(CUPS_DEFAULT_USE_NETWORK_DEFAULT, 1)
- AC_MSG_RESULT(yes)
- else
- CUPS_USE_NETWORK_DEFAULT="No"
- AC_DEFINE_UNQUOTED(CUPS_DEFAULT_USE_NETWORK_DEFAULT, 0)
- AC_MSG_RESULT(no)
- fi
-else
- CUPS_USE_NETWORK_DEFAULT="No"
- AC_DEFINE_UNQUOTED(CUPS_DEFAULT_USE_NETWORK_DEFAULT, 0)
-fi
-AC_SUBST(CUPS_USE_NETWORK_DEFAULT)
-
dnl Determine the correct username and group for this OS...
AC_ARG_WITH(cups_user, [ --with-cups-user set default user for CUPS],
CUPS_USER="$withval",
@@ -434,54 +372,8 @@ AC_ARG_WITH(ipp-port, [ --with-ipp-port set port number for IPP, defaul
AC_SUBST(DEFAULT_IPP_PORT)
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IPP_PORT,$DEFAULT_IPP_PORT)
-dnl Filters
-AC_ARG_ENABLE(bannertops, [ --enable-bannertops always build the banner filter ])
-AC_ARG_ENABLE(texttops, [ --enable-texttops always build the text filter ])
-
-if test "x$enable_bannertops" = xno; then
- BANNERTOPS=""
- DEFAULT_BANNERTOPS="#"
-elif test "x$enable_bannertops" = xyes; then
- BANNERTOPS="bannertops"
- DEFAULT_BANNERTOPS=""
-elif test $uname = Darwin; then
- BANNERTOPS=""
- DEFAULT_BANNERTOPS="#"
-else
- BANNERTOPS="bannertops"
- DEFAULT_BANNERTOPS=""
-fi
-
-if test "x$enable_texttops" = xno; then
- TEXTTOPS=""
- DEFAULT_TEXTTOPS="#"
-elif test "x$enable_texttops" = xyes; then
- TEXTTOPS="texttops"
- DEFAULT_TEXTTOPS=""
-elif test $uname = Darwin; then
- TEXTTOPS=""
- DEFAULT_TEXTTOPS="#"
-else
- TEXTTOPS="texttops"
- DEFAULT_TEXTTOPS=""
-fi
-
-AC_SUBST(BANNERTOPS)
-AC_SUBST(DEFAULT_BANNERTOPS)
-AC_SUBST(DEFAULT_TEXTTOPS)
-AC_SUBST(TEXTTOPS)
-
-dnl Fonts
-if test "x$BANNERTOPS" = x -a "x$TEXTTOPS" = x; then
- FONTS=""
-else
- FONTS="fonts"
-fi
-
-AC_SUBST(FONTS)
-
dnl Web interface...
-AC_ARG_ENABLE(webif, [ --enable-webif enable the web interface by default, default=no for Mac OS X])
+AC_ARG_ENABLE(webif, [ --enable-webif enable the web interface by default, default=no for OS X])
case "x$enable_webif" in
xno)
CUPS_WEBIF=No
@@ -506,5 +398,5 @@ AC_SUBST(CUPS_WEBIF)
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_WEBIF, $CUPS_DEFAULT_WEBIF)
dnl
-dnl End of "$Id: cups-defaults.m4 9750 2011-05-06 22:53:53Z mike $".
+dnl End of "$Id: cups-defaults.m4 10424 2012-04-23 17:26:57Z mike $".
dnl
diff --git a/config-scripts/cups-directories.m4 b/config-scripts/cups-directories.m4
index 4159f4cf..029c44f9 100644
--- a/config-scripts/cups-directories.m4
+++ b/config-scripts/cups-directories.m4
@@ -1,9 +1,9 @@
dnl
-dnl "$Id: cups-directories.m4 9771 2011-05-12 05:21:56Z mike $"
+dnl "$Id: cups-directories.m4 10424 2012-04-23 17:26:57Z mike $"
dnl
dnl Directory stuff for CUPS.
dnl
-dnl Copyright 2007-2011 by Apple Inc.
+dnl Copyright 2007-2012 by Apple Inc.
dnl Copyright 1997-2007 by Easy Software Products, all rights reserved.
dnl
dnl These coded instructions, statements, and computer programs are the
@@ -424,7 +424,7 @@ AC_SUBST(CUPS_SERVERROOT)
# Transient run-time state
case "$uname" in
Darwin*)
- # Darwin (Mac OS X)
+ # Darwin (OS X)
CUPS_STATEDIR="$CUPS_SERVERROOT"
;;
*)
@@ -436,5 +436,5 @@ AC_DEFINE_UNQUOTED(CUPS_STATEDIR, "$CUPS_STATEDIR")
AC_SUBST(CUPS_STATEDIR)
dnl
-dnl End of "$Id: cups-directories.m4 9771 2011-05-12 05:21:56Z mike $".
+dnl End of "$Id: cups-directories.m4 10424 2012-04-23 17:26:57Z mike $".
dnl
diff --git a/config-scripts/cups-dnssd.m4 b/config-scripts/cups-dnssd.m4
index e6bb8555..b44938d4 100644
--- a/config-scripts/cups-dnssd.m4
+++ b/config-scripts/cups-dnssd.m4
@@ -1,9 +1,9 @@
dnl
-dnl "$Id: cups-dnssd.m4 9771 2011-05-12 05:21:56Z mike $"
+dnl "$Id: cups-dnssd.m4 10471 2012-05-16 22:57:03Z mike $"
dnl
dnl DNS Service Discovery (aka Bonjour) stuff for CUPS.
dnl
-dnl Copyright 2007-2011 by Apple Inc.
+dnl Copyright 2007-2012 by Apple Inc.
dnl
dnl These coded instructions, statements, and computer programs are the
dnl property of Apple Inc. and are protected by Federal copyright
@@ -12,7 +12,8 @@ dnl which should have been included with this file. If this file is
dnl file is missing or damaged, see the license at "http://www.cups.org/".
dnl
-AC_ARG_ENABLE(dnssd, [ --disable-dnssd disable DNS Service Discovery support])
+AC_ARG_ENABLE(avahi, [ --disable-avahi disable DNS Service Discovery support using Avahi])
+AC_ARG_ENABLE(dnssd, [ --disable-dnssd disable DNS Service Discovery support using mDNSResponder])
AC_ARG_WITH(dnssd-libs, [ --with-dnssd-libs set directory for DNS Service Discovery library],
LDFLAGS="-L$withval $LDFLAGS"
DSOFLAGS="-L$withval $DSOFLAGS",)
@@ -23,14 +24,25 @@ AC_ARG_WITH(dnssd-includes, [ --with-dnssd-includes set directory for DNS Ser
DNSSDLIBS=""
DNSSD_BACKEND=""
-if test x$enable_dnssd != xno; then
+if test "x$PKGCONFIG" != x -a x$enable_avahi != xno; then
+ AC_MSG_CHECKING(for Avahi)
+ if $PKGCONFIG --exists avahi-client; then
+ AC_MSG_RESULT(yes)
+ CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`"
+ DNSSDLIBS="`$PKGCONFIG --libs avahi-client`"
+ DNSSD_BACKEND="dnssd"
+ AC_DEFINE(HAVE_AVAHI)
+ else
+ AC_MSG_RESULT(no)
+ fi
+fi
+
+if test "x$DNSSD_BACKEND" = x -a x$enable_dnssd != xno; then
AC_CHECK_HEADER(dns_sd.h, [
case "$uname" in
Darwin*)
# Darwin and MacOS X...
AC_DEFINE(HAVE_DNSSD)
- AC_DEFINE(HAVE_COREFOUNDATION)
- AC_DEFINE(HAVE_SYSTEMCONFIGURATION)
DNSSDLIBS="-framework CoreFoundation -framework SystemConfiguration"
DNSSD_BACKEND="dnssd"
;;
@@ -60,5 +72,5 @@ AC_SUBST(DNSSDLIBS)
AC_SUBST(DNSSD_BACKEND)
dnl
-dnl End of "$Id: cups-dnssd.m4 9771 2011-05-12 05:21:56Z mike $".
+dnl End of "$Id: cups-dnssd.m4 10471 2012-05-16 22:57:03Z mike $".
dnl
diff --git a/config-scripts/cups-gssapi.m4 b/config-scripts/cups-gssapi.m4
index a9b93af7..fa645c2f 100644
--- a/config-scripts/cups-gssapi.m4
+++ b/config-scripts/cups-gssapi.m4
@@ -1,9 +1,9 @@
dnl
-dnl "$Id: cups-gssapi.m4 10083 2011-10-19 20:21:16Z mike $"
+dnl "$Id: cups-gssapi.m4 10424 2012-04-23 17:26:57Z mike $"
dnl
dnl GSSAPI/Kerberos library detection for CUPS.
dnl
-dnl Copyright 2007-2011 by Apple Inc.
+dnl Copyright 2007-2012 by Apple Inc.
dnl Copyright 2006-2007 by Easy Software Products.
dnl
dnl This file contains Kerberos support code, copyright 2006 by
@@ -26,7 +26,7 @@ if test x$enable_gssapi != xno; then
if test "x$KRB5CONFIG" != x; then
case "$uname" in
Darwin)
- # Mac OS X weak-links to the Kerberos framework...
+ # OS X weak-links to the Kerberos framework...
LIBGSSAPI="-weak_framework Kerberos"
AC_MSG_CHECKING(for GSS framework)
if test -d /System/Library/Frameworks/GSS.framework; then
@@ -163,8 +163,9 @@ else
CUPS_DEFAULT_GSSSERVICENAME=""
fi
+AC_SUBST(CUPS_DEFAULT_GSSSERVICENAME)
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_GSSSERVICENAME, "$CUPS_DEFAULT_GSSSERVICENAME")
dnl
-dnl End of "$Id: cups-gssapi.m4 10083 2011-10-19 20:21:16Z mike $".
+dnl End of "$Id: cups-gssapi.m4 10424 2012-04-23 17:26:57Z mike $".
dnl
diff --git a/config-scripts/cups-image.m4 b/config-scripts/cups-image.m4
deleted file mode 100644
index 4a77775a..00000000
--- a/config-scripts/cups-image.m4
+++ /dev/null
@@ -1,117 +0,0 @@
-dnl
-dnl "$Id: cups-image.m4 10317 2012-03-01 00:05:55Z mike $"
-dnl
-dnl Image library/filter stuff for CUPS.
-dnl
-dnl Copyright 2007-2011 by Apple Inc.
-dnl Copyright 1997-2006 by Easy Software Products, all rights reserved.
-dnl
-dnl These coded instructions, statements, and computer programs are the
-dnl property of Apple Inc. and are protected by Federal copyright
-dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
-dnl which should have been included with this file. If this file is
-dnl file is missing or damaged, see the license at "http://www.cups.org/".
-dnl
-
-dnl See if we want the image filters included at all...
-AC_ARG_ENABLE(image, [ --enable-image always build the image filters])
-
-DEFAULT_IMAGEFILTERS="#"
-IMGFILTERS=""
-if test "x$enable_image" != xno; then
- AC_MSG_CHECKING(whether to build image filters)
- if test "x$enable_image" = xyes -o $uname != Darwin; then
- IMGFILTERS="imagetops imagetoraster"
- DEFAULT_IMAGEFILTERS=""
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- fi
-fi
-
-AC_SUBST(DEFAULT_IMAGEFILTERS)
-AC_SUBST(IMGFILTERS)
-
-dnl Check for image libraries...
-AC_ARG_ENABLE(jpeg, [ --disable-jpeg disable JPEG support])
-AC_ARG_ENABLE(png, [ --disable-png disable PNG support])
-AC_ARG_ENABLE(tiff, [ --disable-tiff disable TIFF support])
-
-LIBJPEG=""
-LIBPNG=""
-LIBTIFF=""
-LIBZ=""
-
-AC_SUBST(LIBJPEG)
-AC_SUBST(LIBPNG)
-AC_SUBST(LIBTIFF)
-AC_SUBST(LIBZ)
-
-dnl Image libraries use math library functions...
-AC_SEARCH_LIBS(pow, m)
-
-dnl Save the current libraries since we don't want the image libraries
-dnl included with every program...
-SAVELIBS="$LIBS"
-
-dnl JPEG library...
-if test x$enable_jpeg != xno; then
- AC_CHECK_HEADER(jpeglib.h,
- AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
- AC_DEFINE(HAVE_LIBJPEG)
- LIBJPEG="-ljpeg"
- LIBS="$LIBS -ljpeg"))
-else
- AC_MSG_NOTICE([JPEG support disabled with --disable-jpeg.])
-fi
-
-dnl ZLIB library...
-INSTALL_GZIP=""
-AC_CHECK_HEADER(zlib.h,
- AC_CHECK_LIB(z, gzgets,
- AC_DEFINE(HAVE_LIBZ)
- LIBZ="-lz"
- LIBS="$LIBS -lz"
- if test "x$GZIP" != x; then
- INSTALL_GZIP="-z"
- fi))
-AC_SUBST(INSTALL_GZIP)
-
-dnl PNG library...
-if test x$enable_png != xno; then
- AC_CHECK_HEADER(png.h,
- AC_CHECK_LIB(png, png_create_read_struct,
- AC_DEFINE(HAVE_LIBPNG)
- LIBPNG="-lpng"))
-else
- AC_MSG_NOTICE([PNG support disabled with --disable-png.])
-fi
-
-dnl TIFF library...
-if test x$enable_tiff != xno; then
- AC_CHECK_HEADER(tiff.h,
- AC_CHECK_LIB(tiff, TIFFReadScanline,
- AC_DEFINE(HAVE_LIBTIFF)
- LIBTIFF="-ltiff"))
-else
- AC_MSG_NOTICE([TIFF support disabled with --disable-tiff.])
-fi
-
-dnl Restore original LIBS settings...
-LIBS="$SAVELIBS"
-
-EXPORT_LIBJPEG="$LIBJPEG"
-EXPORT_LIBPNG="$LIBPNG"
-EXPORT_LIBTIFF="$LIBTIFF"
-EXPORT_LIBZ="$LIBZ"
-
-AC_SUBST(EXPORT_LIBJPEG)
-AC_SUBST(EXPORT_LIBPNG)
-AC_SUBST(EXPORT_LIBTIFF)
-AC_SUBST(EXPORT_LIBZ)
-
-AC_CHECK_HEADER(stdlib.h,AC_DEFINE(HAVE_STDLIB_H))
-
-dnl
-dnl End of "$Id: cups-image.m4 10317 2012-03-01 00:05:55Z mike $".
-dnl
diff --git a/config-scripts/cups-ldap.m4 b/config-scripts/cups-ldap.m4
deleted file mode 100644
index 7d68323a..00000000
--- a/config-scripts/cups-ldap.m4
+++ /dev/null
@@ -1,52 +0,0 @@
-dnl
-dnl "$Id: cups-ldap.m4 9771 2011-05-12 05:21:56Z mike $"
-dnl
-dnl LDAP configuration stuff for CUPS.
-dnl
-dnl Copyright 2007-2011 by Apple Inc.
-dnl Copyright 2003-2006 by Easy Software Products, all rights reserved.
-dnl
-dnl These coded instructions, statements, and computer programs are the
-dnl property of Apple Inc. and are protected by Federal copyright
-dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
-dnl which should have been included with this file. If this file is
-dnl file is missing or damaged, see the license at "http://www.cups.org/".
-dnl
-
-AC_ARG_ENABLE(ldap, [ --disable-ldap disable LDAP support])
-AC_ARG_WITH(ldap-libs, [ --with-ldap-libs set directory for LDAP library],
- LDFLAGS="-L$withval $LDFLAGS"
- DSOFLAGS="-L$withval $DSOFLAGS",)
-AC_ARG_WITH(ldap-includes, [ --with-ldap-includes set directory for LDAP includes],
- CFLAGS="-I$withval $CFLAGS"
- CPPFLAGS="-I$withval $CPPFLAGS",)
-
-LIBLDAP=""
-
-if test x$enable_ldap != xno; then
- AC_CHECK_HEADER(ldap.h, [
- AC_CHECK_LIB(ldap, ldap_initialize,
- AC_DEFINE(HAVE_LDAP)
- AC_DEFINE(HAVE_OPENLDAP)
- LIBLDAP="-lldap"
- AC_CHECK_LIB(ldap, ldap_start_tls,
- AC_DEFINE(HAVE_LDAP_SSL)),
-
- AC_CHECK_LIB(ldap, ldap_init,
- AC_DEFINE(HAVE_LDAP)
- AC_DEFINE(HAVE_MOZILLA_LDAP)
- LIBLDAP="-lldap"
- AC_CHECK_HEADER(ldap_ssl.h, AC_DEFINE(HAVE_LDAP_SSL_H),,[#include <ldap.h>])
- AC_CHECK_LIB(ldap, ldapssl_init,
- AC_DEFINE(HAVE_LDAP_SSL)))
- )
- AC_CHECK_LIB(ldap, ldap_set_rebind_proc, AC_DEFINE(HAVE_LDAP_REBIND_PROC))
- ])
-fi
-
-AC_SUBST(LIBLDAP)
-
-
-dnl
-dnl End of "$Id: cups-ldap.m4 9771 2011-05-12 05:21:56Z mike $".
-dnl
diff --git a/config-scripts/cups-manpages.m4 b/config-scripts/cups-manpages.m4
index 3a7afd73..67ab53e8 100644
--- a/config-scripts/cups-manpages.m4
+++ b/config-scripts/cups-manpages.m4
@@ -1,9 +1,9 @@
dnl
-dnl "$Id: cups-manpages.m4 9771 2011-05-12 05:21:56Z mike $"
+dnl "$Id: cups-manpages.m4 10424 2012-04-23 17:26:57Z mike $"
dnl
dnl Manpage stuff for CUPS.
dnl
-dnl Copyright 2007-2011 by Apple Inc.
+dnl Copyright 2007-2012 by Apple Inc.
dnl Copyright 1997-2006 by Easy Software Products, all rights reserved.
dnl
dnl These coded instructions, statements, and computer programs are the
@@ -68,7 +68,7 @@ case "$uname" in
MAN8DIR=1m
;;
Linux* | GNU* | Darwin*)
- # Linux, GNU Hurd, and Mac OS X
+ # Linux, GNU Hurd, and OS X
MAN1EXT=1.gz
MAN5EXT=5.gz
MAN7EXT=7.gz
@@ -92,5 +92,5 @@ AC_SUBST(MAN8EXT)
AC_SUBST(MAN8DIR)
dnl
-dnl End of "$Id: cups-manpages.m4 9771 2011-05-12 05:21:56Z mike $".
+dnl End of "$Id: cups-manpages.m4 10424 2012-04-23 17:26:57Z mike $".
dnl
diff --git a/config-scripts/cups-pam.m4 b/config-scripts/cups-pam.m4
index 9a770bfc..f5d4d4da 100644
--- a/config-scripts/cups-pam.m4
+++ b/config-scripts/cups-pam.m4
@@ -1,9 +1,9 @@
dnl
-dnl "$Id: cups-pam.m4 9771 2011-05-12 05:21:56Z mike $"
+dnl "$Id: cups-pam.m4 10424 2012-04-23 17:26:57Z mike $"
dnl
dnl PAM stuff for CUPS.
dnl
-dnl Copyright 2007-2011 by Apple Inc.
+dnl Copyright 2007-2012 by Apple Inc.
dnl Copyright 1997-2005 by Easy Software Products, all rights reserved.
dnl
dnl These coded instructions, statements, and computer programs are the
@@ -61,7 +61,7 @@ if test x$enable_pam != xno; then
case "$uname" in
Darwin*)
- # Darwin/Mac OS X
+ # Darwin/OS X
if test "x$with_pam_module" != x; then
PAMFILE="pam.$with_pam_module"
elif test -f /usr/lib/pam/pam_opendirectory.so.2; then
@@ -98,5 +98,5 @@ AC_SUBST(PAMMOD)
AC_SUBST(PAMMODAUTH)
dnl
-dnl End of "$Id: cups-pam.m4 9771 2011-05-12 05:21:56Z mike $".
+dnl End of "$Id: cups-pam.m4 10424 2012-04-23 17:26:57Z mike $".
dnl
diff --git a/config-scripts/cups-pdf.m4 b/config-scripts/cups-pdf.m4
deleted file mode 100644
index 5743f799..00000000
--- a/config-scripts/cups-pdf.m4
+++ /dev/null
@@ -1,113 +0,0 @@
-dnl
-dnl "$Id: cups-pdf.m4 9750 2011-05-06 22:53:53Z mike $"
-dnl
-dnl PDF filter configuration stuff for CUPS.
-dnl
-dnl Copyright 2007-2011 by Apple Inc.
-dnl Copyright 2006 by Easy Software Products, all rights reserved.
-dnl
-dnl These coded instructions, statements, and computer programs are the
-dnl property of Apple Inc. and are protected by Federal copyright
-dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
-dnl which should have been included with this file. If this file is
-dnl file is missing or damaged, see the license at "http://www.cups.org/".
-dnl
-
-AC_ARG_WITH(pdftops, [ --with-pdftops set pdftops filter (gs,/path/to/gs,pdftops,/path/to/pdftops,none), default=pdftops ])
-
-PDFTOPS=""
-CUPS_PDFTOPS=""
-CUPS_GHOSTSCRIPT=""
-
-case "x$with_pdftops" in
- x) # Default/auto
- if test $uname != Darwin; then
- AC_PATH_PROG(CUPS_PDFTOPS, pdftops)
- if test "x$CUPS_PDFTOPS" != x; then
- AC_DEFINE(HAVE_PDFTOPS)
- PDFTOPS="pdftops"
- else
- AC_PATH_PROG(CUPS_GHOSTSCRIPT, gs)
- if test "x$CUPS_GHOSTSCRIPT" != x; then
- AC_DEFINE(HAVE_GHOSTSCRIPT)
- PDFTOPS="pdftops"
- fi
- fi
- fi
- ;;
-
- xgs)
- AC_PATH_PROG(CUPS_GHOSTSCRIPT, gs)
- if test "x$CUPS_GHOSTSCRIPT" != x; then
- AC_DEFINE(HAVE_GHOSTSCRIPT)
- PDFTOPS="pdftops"
- else
- AC_MSG_ERROR(Unable to find gs program!)
- exit 1
- fi
- ;;
-
- x/*/gs) # Use /path/to/gs without any check:
- CUPS_GHOSTSCRIPT="$with_pdftops"
- AC_DEFINE(HAVE_GHOSTSCRIPT)
- PDFTOPS="pdftops"
- ;;
-
- xpdftops)
- AC_PATH_PROG(CUPS_PDFTOPS, pdftops)
- if test "x$CUPS_PDFTOPS" != x; then
- AC_DEFINE(HAVE_PDFTOPS)
- PDFTOPS="pdftops"
- else
- AC_MSG_ERROR(Unable to find pdftops program!)
- exit 1
- fi
- ;;
-
- x/*/pdftops) # Use /path/to/pdftops without any check:
- CUPS_PDFTOPS="$with_pdftops"
- AC_DEFINE(HAVE_PDFTOPS)
- PDFTOPS="pdftops"
- ;;
-
- xnone) # Make no pdftops filter if with_pdftops=none:
- ;;
-
- *) # Invalid with_pdftops value:
- AC_MSG_ERROR(Invalid with_pdftops value!)
- exit 1
- ;;
-esac
-
-if test "x$CUPS_PDFTOPS" != x; then
- AC_MSG_CHECKING(whether pdftops supports -origpagesizes)
- if ($CUPS_PDFTOPS -h 2>&1 | grep -q -- -origpagesizes); then
- AC_MSG_RESULT(yes)
- AC_DEFINE(HAVE_PDFTOPS_WITH_ORIGPAGESIZES)
- else
- AC_MSG_RESULT(no)
- fi
-
- DEFAULT_PDFTOPS=""
-elif test "x$CUPS_GHOSTSCRIPT" != x; then
- AC_MSG_CHECKING(whether gs supports the ps2write device)
- if ($CUPS_GHOSTSCRIPT -h 2>&1 | grep -q ps2write); then
- AC_MSG_RESULT(yes)
- AC_DEFINE(HAVE_GHOSTSCRIPT_PS2WRITE)
- else
- AC_MSG_RESULT(no)
- fi
-
- DEFAULT_PDFTOPS=""
-else
- DEFAULT_PDFTOPS="#"
-fi
-
-AC_DEFINE_UNQUOTED(CUPS_PDFTOPS, "$CUPS_PDFTOPS")
-AC_DEFINE_UNQUOTED(CUPS_GHOSTSCRIPT, "$CUPS_GHOSTSCRIPT")
-AC_SUBST(DEFAULT_PDFTOPS)
-AC_SUBST(PDFTOPS)
-
-dnl
-dnl End of "$Id: cups-pdf.m4 9750 2011-05-06 22:53:53Z mike $".
-dnl
diff --git a/config-scripts/cups-scripting.m4 b/config-scripts/cups-scripting.m4
index cfbde74d..75abd7e2 100644
--- a/config-scripts/cups-scripting.m4
+++ b/config-scripts/cups-scripting.m4
@@ -1,5 +1,5 @@
dnl
-dnl "$Id: cups-scripting.m4 9099 2010-04-11 07:16:05Z mike $"
+dnl "$Id: cups-scripting.m4 9927 2011-08-27 09:28:30Z mike $"
dnl
dnl Scripting configuration stuff for CUPS.
dnl
@@ -68,17 +68,6 @@ else
AC_DEFINE(HAVE_PHP)
fi
-PHPDIR=""
-if test "x$CUPS_PHP" != xno; then
- AC_PATH_PROG(PHPCONFIG, php-config)
-
- if test "x$PHPCONFIG" != x; then
- PHPDIR="scripting/php"
- fi
-fi
-
-AC_SUBST(PHPDIR)
-
dnl Do we have Python?
AC_ARG_WITH(python, [ --with-python set Python interpreter for web interfaces ],
CUPS_PYTHON="$withval",
@@ -96,5 +85,5 @@ if test "x$CUPS_PYTHON" != x; then
fi
dnl
-dnl End of "$Id: cups-scripting.m4 9099 2010-04-11 07:16:05Z mike $".
+dnl End of "$Id: cups-scripting.m4 9927 2011-08-27 09:28:30Z mike $".
dnl
diff --git a/config-scripts/cups-sharedlibs.m4 b/config-scripts/cups-sharedlibs.m4
index 75b3e8d1..09084c6f 100644
--- a/config-scripts/cups-sharedlibs.m4
+++ b/config-scripts/cups-sharedlibs.m4
@@ -1,9 +1,9 @@
dnl
-dnl "$Id: cups-sharedlibs.m4 9153 2010-06-16 00:48:25Z mike $"
+dnl "$Id: cups-sharedlibs.m4 10190 2012-01-20 16:22:58Z mike $"
dnl
dnl Shared library support for CUPS.
dnl
-dnl Copyright 2007-2010 by Apple Inc.
+dnl Copyright 2007-2012 by Apple Inc.
dnl Copyright 1997-2005 by Easy Software Products, all rights reserved.
dnl
dnl These coded instructions, statements, and computer programs are the
@@ -27,7 +27,6 @@ if test x$enable_shared != xno; then
SunOS*)
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -38,7 +37,6 @@ if test x$enable_shared != xno; then
UNIX_S*)
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -51,7 +49,6 @@ if test x$enable_shared != xno; then
ia64)
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -62,7 +59,6 @@ if test x$enable_shared != xno; then
*)
LIBCUPS="lib$cupsbase.sl.2"
LIBCUPSCGI="libcupscgi.sl.1"
- LIBCUPSDRIVER="libcupsdriver.sl.1"
LIBCUPSIMAGE="libcupsimage.sl.2"
LIBCUPSMIME="libcupsmime.sl.1"
LIBCUPSPPDC="libcupsppdc.sl.1"
@@ -75,7 +71,6 @@ if test x$enable_shared != xno; then
IRIX)
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -86,7 +81,6 @@ if test x$enable_shared != xno; then
OSF1* | Linux | GNU | *BSD*)
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -97,7 +91,6 @@ if test x$enable_shared != xno; then
Darwin*)
LIBCUPS="lib$cupsbase.2.dylib"
LIBCUPSCGI="libcupscgi.1.dylib"
- LIBCUPSDRIVER="libcupsdriver.1.dylib"
LIBCUPSIMAGE="libcupsimage.2.dylib"
LIBCUPSMIME="libcupsmime.1.dylib"
LIBCUPSPPDC="libcupsppdc.1.dylib"
@@ -109,7 +102,6 @@ if test x$enable_shared != xno; then
LIBCUPS="lib${cupsbase}_s.a"
LIBCUPSBASE="${cupsbase}_s"
LIBCUPSCGI="libcupscgi_s.a"
- LIBCUPSDRIVER="libcupsdriver_s.a"
LIBCUPSIMAGE="libcupsimage_s.a"
LIBCUPSMIME="libcupsmime_s.a"
LIBCUPSPPDC="libcupsppdc_s.a"
@@ -122,7 +114,6 @@ if test x$enable_shared != xno; then
echo " option with compiler."
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -135,7 +126,6 @@ else
PICFLAG=0
LIBCUPS="lib$cupsbase.a"
LIBCUPSCGI="libcupscgi.a"
- LIBCUPSDRIVER="libcupsdriver.a"
LIBCUPSIMAGE="libcupsimage.a"
LIBCUPSMIME="libcupsmime.a"
LIBCUPSPPDC="libcupsppdc.a"
@@ -143,20 +133,12 @@ else
DSOXX=":"
fi
-# 32-bit and 64-bit libraries need variations of the standard
-# DSOFLAGS...
-DSO32FLAGS="$DSOFLAGS"
-DSO64FLAGS="$DSOFLAGS"
-
AC_SUBST(DSO)
AC_SUBST(DSOXX)
AC_SUBST(DSOFLAGS)
-AC_SUBST(DSO32FLAGS)
-AC_SUBST(DSO64FLAGS)
AC_SUBST(LIBCUPS)
AC_SUBST(LIBCUPSBASE)
AC_SUBST(LIBCUPSCGI)
-AC_SUBST(LIBCUPSDRIVER)
AC_SUBST(LIBCUPSIMAGE)
AC_SUBST(LIBCUPSMIME)
AC_SUBST(LIBCUPSPPDC)
@@ -167,7 +149,6 @@ if test x$enable_shared = xno; then
LINKCUPSIMAGE="../filter/libcupsimage.a"
EXTLINKCUPS="-lcups"
- EXTLINKCUPSDRIVER="-lcupsdriver"
EXTLINKCUPSIMAGE="-lcupsimage"
else
if test $uname = AIX; then
@@ -175,20 +156,17 @@ else
LINKCUPSIMAGE="-lcupsimage_s"
EXTLINKCUPS="-lcups_s"
- EXTLINKCUPSDRIVER="-lcupsdriver_s"
EXTLINKCUPSIMAGE="-lcupsimage_s"
else
LINKCUPS="-l${cupsbase}"
LINKCUPSIMAGE="-lcupsimage"
EXTLINKCUPS="-lcups"
- EXTLINKCUPSDRIVER="-lcupsdriver"
EXTLINKCUPSIMAGE="-lcupsimage"
fi
fi
AC_SUBST(EXTLINKCUPS)
-AC_SUBST(EXTLINKCUPSDRIVER)
AC_SUBST(EXTLINKCUPSIMAGE)
AC_SUBST(LINKCUPS)
AC_SUBST(LINKCUPSIMAGE)
@@ -201,7 +179,7 @@ if test "$DSO" != ":"; then
# rather than to the executables. This makes things smaller if you
# are using any static libraries, and it also allows us to distribute
# a single DSO rather than a bunch...
- DSOLIBS="\$(LIBTIFF) \$(LIBPNG) \$(LIBJPEG) \$(LIBZ)"
+ DSOLIBS="\$(LIBZ)"
IMGLIBS=""
# Tell the run-time linkers where to find a DSO. Some platforms
@@ -213,13 +191,9 @@ if test "$DSO" != ":"; then
case "$uarch" in
ia64)
DSOFLAGS="-Wl,+s,+b,$libdir $DSOFLAGS"
- DSO32FLAGS="-Wl,+s,+b,$LIB32DIR $DSO32FLAGS"
- DSO64FLAGS="-Wl,+s,+b,$LIB64DIR $DSO64FLAGS"
;;
*)
DSOFLAGS="+s +b $libdir $DSOFLAGS"
- DSO32FLAGS="+s +b $LIB32DIR $DSO32FLAGS"
- DSO64FLAGS="+s +b $LIB64DIR $DSO64FLAGS"
;;
esac
LDFLAGS="$LDFLAGS -Wl,+s,+b,$libdir"
@@ -229,8 +203,6 @@ if test "$DSO" != ":"; then
# Solaris...
if test $exec_prefix != /usr; then
DSOFLAGS="-R$libdir $DSOFLAGS"
- DSO32FLAGS="-R$LIB32DIR $DSO32FLAGS"
- DSO64FLAGS="-R$LIB64DIR $DSO64FLAGS"
LDFLAGS="$LDFLAGS -R$libdir"
EXPORT_LDFLAGS="-R$libdir"
fi
@@ -239,8 +211,6 @@ if test "$DSO" != ":"; then
# *BSD...
if test $exec_prefix != /usr; then
DSOFLAGS="-Wl,-R$libdir $DSOFLAGS"
- DSO32FLAGS="-Wl,-R$LIB32DIR $DSO32FLAGS"
- DSO64FLAGS="-Wl,-R$LIB64DIR $DSO64FLAGS"
LDFLAGS="$LDFLAGS -Wl,-R$libdir"
EXPORT_LDFLAGS="-Wl,-R$libdir"
fi
@@ -249,8 +219,6 @@ if test "$DSO" != ":"; then
# IRIX, Linux, and HURD...
if test $exec_prefix != /usr; then
DSOFLAGS="-Wl,-rpath,$libdir $DSOFLAGS"
- DSO32FLAGS="-Wl,-rpath,$LIB32DIR $DSO32FLAGS"
- DSO64FLAGS="-Wl,-rpath,$LIB64DIR $DSO64FLAGS"
LDFLAGS="$LDFLAGS -Wl,-rpath,$libdir"
EXPORT_LDFLAGS="-Wl,-rpath,$libdir"
fi
@@ -258,7 +226,7 @@ if test "$DSO" != ":"; then
esac
else
DSOLIBS=""
- IMGLIBS="\$(LIBTIFF) \$(LIBPNG) \$(LIBJPEG) \$(LIBZ)"
+ IMGLIBS="\$(LIBZ)"
fi
AC_SUBST(DSOLIBS)
@@ -266,5 +234,5 @@ AC_SUBST(IMGLIBS)
AC_SUBST(EXPORT_LDFLAGS)
dnl
-dnl End of "$Id: cups-sharedlibs.m4 9153 2010-06-16 00:48:25Z mike $".
+dnl End of "$Id: cups-sharedlibs.m4 10190 2012-01-20 16:22:58Z mike $".
dnl
diff --git a/config-scripts/cups-slp.m4 b/config-scripts/cups-slp.m4
deleted file mode 100644
index c6816245..00000000
--- a/config-scripts/cups-slp.m4
+++ /dev/null
@@ -1,38 +0,0 @@
-dnl
-dnl "$Id: cups-slp.m4 9771 2011-05-12 05:21:56Z mike $"
-dnl
-dnl OpenSLP configuration stuff for CUPS.
-dnl
-dnl Copyright 2007-2011 by Apple Inc.
-dnl Copyright 1997-2005 by Easy Software Products, all rights reserved.
-dnl
-dnl These coded instructions, statements, and computer programs are the
-dnl property of Apple Inc. and are protected by Federal copyright
-dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
-dnl which should have been included with this file. If this file is
-dnl file is missing or damaged, see the license at "http://www.cups.org/".
-dnl
-
-AC_ARG_ENABLE(slp, [ --disable-slp disable SLP support])
-AC_ARG_WITH(openslp-libs, [ --with-openslp-libs set directory for OpenSLP library],
- LDFLAGS="-L$withval $LDFLAGS"
- DSOFLAGS="-L$withval $DSOFLAGS",)
-AC_ARG_WITH(openslp-includes, [ --with-openslp-includes set directory for OpenSLP includes],
- CFLAGS="-I$withval $CFLAGS"
- CPPFLAGS="-I$withval $CPPFLAGS",)
-
-LIBSLP=""
-
-if test x$enable_slp != xno; then
- AC_CHECK_HEADER(slp.h,
- AC_CHECK_LIB(slp, SLPOpen,
- AC_DEFINE(HAVE_LIBSLP)
- LIBSLP="-lslp"))
-fi
-
-AC_SUBST(LIBSLP)
-
-
-dnl
-dnl End of "$Id: cups-slp.m4 9771 2011-05-12 05:21:56Z mike $".
-dnl
diff --git a/config-scripts/cups-ssl.m4 b/config-scripts/cups-ssl.m4
index e52d5962..4ec5c3ea 100644
--- a/config-scripts/cups-ssl.m4
+++ b/config-scripts/cups-ssl.m4
@@ -1,5 +1,5 @@
dnl
-dnl "$Id: cups-ssl.m4 10481 2012-05-18 18:02:10Z mike $"
+dnl "$Id: cups-ssl.m4 10521 2012-06-15 22:23:24Z mike $"
dnl
dnl OpenSSL/GNUTLS stuff for CUPS.
dnl
@@ -56,12 +56,6 @@ if test x$enable_ssl != xno; then
AC_CHECK_HEADER(Security/SecIdentitySearchPriv.h,
AC_DEFINE(HAVE_SECIDENTITYSEARCHPRIV_H))
- dnl Check for SSLSetProtocolVersionMax...
- SAVELIBS="$LIBS"
- LIBS="$LIBS -framework Security"
- AC_CHECK_FUNC(SSLSetProtocolVersionMax)
- LIBS="$SAVELIBS"
-
dnl Check for SecCertificateCopyData..
AC_MSG_CHECKING(for SecCertificateCopyData)
if test $uversion -ge 100; then
@@ -179,5 +173,5 @@ EXPORT_SSLLIBS="$SSLLIBS"
AC_SUBST(EXPORT_SSLLIBS)
dnl
-dnl End of "$Id: cups-ssl.m4 10481 2012-05-18 18:02:10Z mike $".
+dnl End of "$Id: cups-ssl.m4 10521 2012-06-15 22:23:24Z mike $".
dnl
diff --git a/config.h.in b/config.h.in
index 1d1c7f4a..904083e8 100644
--- a/config.h.in
+++ b/config.h.in
@@ -1,9 +1,9 @@
/*
- * "$Id: config.h.in 10371 2012-03-21 04:45:48Z mike $"
+ * "$Id: config.h.in 10548 2012-07-16 18:21:43Z mike $"
*
* Configuration file for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -62,12 +62,8 @@
*/
#define CUPS_DEFAULT_BROWSING 1
-#define CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS "CUPS"
-#define CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS "CUPS"
-#define CUPS_DEFAULT_BROWSE_SHORT_NAMES 1
+#define CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS ""
#define CUPS_DEFAULT_DEFAULT_SHARED 1
-#define CUPS_DEFAULT_IMPLICIT_CLASSES 1
-#define CUPS_DEFAULT_USE_NETWORK_DEFAULT 1
/*
@@ -350,13 +346,6 @@
/*
- * Do we have the SSLSetProtocolVersionMax function?
- */
-
-#undef HAVE_SSLSETPROTOCOLVERSIONMAX
-
-
-/*
* Do we have the cssmErrorString function?
*/
@@ -364,36 +353,24 @@
/*
- * Do we have the SLP library?
+ * Do we have libpaper?
*/
-#undef HAVE_LIBSLP
+#undef HAVE_LIBPAPER
/*
- * Do we have an LDAP library?
+ * Do we have mDNSResponder for DNS Service Discovery (aka Bonjour)?
*/
-#undef HAVE_LDAP
-#undef HAVE_OPENLDAP
-#undef HAVE_MOZILLA_LDAP
-#undef HAVE_LDAP_SSL_H
-#undef HAVE_LDAP_SSL
-#undef HAVE_LDAP_REBIND_PROC
+#undef HAVE_DNSSD
/*
- * Do we have libpaper?
+ * Do we have Avahi for DNS Service Discovery (aka Bonjour)?
*/
-#undef HAVE_LIBPAPER
-
-
-/*
- * Do we have DNS Service Discovery (aka Bonjour)?
- */
-
-#undef HAVE_DNSSD
+#undef HAVE_AVAHI
/*
@@ -535,14 +512,6 @@
/*
- * Do we have Darwin's CoreFoundation and SystemConfiguration frameworks?
- */
-
-#undef HAVE_COREFOUNDATION
-#undef HAVE_SYSTEMCONFIGURATION
-
-
-/*
* Do we have CoreFoundation public and private headers?
*/
@@ -566,7 +535,7 @@
/*
- * Do we have Mac OS X 10.4's mbr_XXX functions?
+ * Do we have OS X 10.4's mbr_XXX functions?
*/
#undef HAVE_MEMBERSHIP_H
@@ -728,28 +697,46 @@
/*
- * Location of Mac OS X localization bundle, if any.
+ * Location of OS X localization bundle, if any.
*/
#undef CUPS_BUNDLEDIR
/*
- * Do we have the ColorSyncRegisterDevice function?
+ * Do we have XPC?
*/
-#undef HAVE_COLORSYNCREGISTERDEVICE
+#undef HAVE_XPC
+#undef HAVE_XPC_PRIVATE_H
/*
- * Do we have XPC?
+ * Do we have Mini-XML?
*/
-#undef HAVE_XPC
+#undef HAVE_MXML_H
+
+
+/*
+ * Do we have the C99 abs() function?
+ */
+#undef HAVE_ABS
+#if !defined(HAVE_ABS) && !defined(abs)
+# if defined(__GNUC__) || __STDC_VERSION__ >= 199901L
+# define abs(x) _cups_abs(x)
+static inline int _cups_abs(int i) { return (i < 0 ? -i : i); }
+# elif defined(_MSC_VER)
+# define abs(x) _cups_abs(x)
+static __inline int _cups_abs(int i) { return (i < 0 ? -i : i); }
+# else
+# define abs(x) ((x) < 0 ? -(x) : (x))
+# endif /* __GNUC__ || __STDC_VERSION__ */
+#endif /* !HAVE_ABS && !abs */
#endif /* !_CUPS_CONFIG_H_ */
/*
- * End of "$Id: config.h.in 10371 2012-03-21 04:45:48Z mike $".
+ * End of "$Id: config.h.in 10548 2012-07-16 18:21:43Z mike $".
*/
diff --git a/configure b/configure
index 4998e2a5..a7381efd 100755
--- a/configure
+++ b/configure
@@ -605,22 +605,11 @@ LIBOBJS
UNINSTALL_LANGUAGES
INSTALL_LANGUAGES
PYTHON
-PHPDIR
-PHPCONFIG
PHP
PHPCGI
PERL
JAVA
-PDFTOPS
-DEFAULT_PDFTOPS
-CUPS_GHOSTSCRIPT
-CUPS_PDFTOPS
CUPS_WEBIF
-FONTS
-TEXTTOPS
-DEFAULT_TEXTTOPS
-DEFAULT_BANNERTOPS
-BANNERTOPS
DEFAULT_IPP_PORT
CUPS_SNMP_COMMUNITY
CUPS_SNMP_ADDRESS
@@ -631,17 +620,14 @@ CUPS_PRIMARY_SYSTEM_GROUP
CUPS_SYSTEM_GROUPS
CUPS_GROUP
CUPS_USER
-CUPS_USE_NETWORK_DEFAULT
-CUPS_IMPLICIT_CLASSES
CUPS_DEFAULT_SHARED
-CUPS_BROWSE_SHORT_NAMES
-CUPS_BROWSE_REMOTE_PROTOCOLS
CUPS_BROWSE_LOCAL_PROTOCOLS
CUPS_BROWSING
CUPS_ACCESS_LOG_LEVEL
CUPS_LOG_LEVEL
CUPS_FATAL_ERRORS
CUPS_LOG_FILE_PERM
+CUPS_CUPSD_FILE_PERM
CUPS_CONFIG_FILE_PERM
CUPS_BUNDLEDIR
LANGUAGES
@@ -662,29 +648,14 @@ IPPALIASES
LIBGCRYPTCONFIG
LIBGNUTLSCONFIG
PTHREAD_FLAGS
-LIBLDAP
+CUPS_DEFAULT_GSSSERVICENAME
KRB5CONFIG
LIBGSSAPI
-LIBSLP
CUPS_LISTEN_DOMAINSOCKET
CUPS_DEFAULT_DOMAINSOCKET
-EXPORT_LIBZ
-EXPORT_LIBTIFF
-EXPORT_LIBPNG
-EXPORT_LIBJPEG
-INSTALL_GZIP
-LIBZ
-LIBTIFF
-LIBPNG
-LIBJPEG
-IMGFILTERS
-DEFAULT_IMAGEFILTERS
-PHPOPTIONS
RELROFLAGS
PIEFLAGS
CXXLIBS
-ARCH64FLAGS
-ARCH32FLAGS
LDARCHFLAGS
ARCHFLAGS
UNITTESTS
@@ -697,31 +668,17 @@ DSOLIBS
LINKCUPSIMAGE
LINKCUPS
EXTLINKCUPSIMAGE
-EXTLINKCUPSDRIVER
EXTLINKCUPS
LIBCUPSSTATIC
LIBCUPSPPDC
LIBCUPSMIME
LIBCUPSIMAGE
-LIBCUPSDRIVER
LIBCUPSCGI
LIBCUPSBASE
LIBCUPS
-DSO64FLAGS
-DSO32FLAGS
DSOFLAGS
DSOXX
DSO
-UNINSTALL64
-LIB64DIR
-LIB64CUPSIMAGE
-LIB64CUPS
-INSTALL64
-UNINSTALL32
-LIB32DIR
-LIB32CUPSIMAGE
-LIB32CUPS
-INSTALL32
MAN8DIR
MAN8EXT
MAN7EXT
@@ -752,7 +709,6 @@ INITDIR
PRIVATEINCLUDE
privateinclude
BUILDDIRS
-LEGACY_BACKENDS
INSTALLXPC
CUPS_SYSTEM_AUTHKEY
CUPS_DEFAULT_PRINTOPERATOR_AUTH
@@ -762,8 +718,11 @@ DBUSDIR
SERVERLIBS
BACKLIBS
ARFLAGS
+LIBZ
+INSTALL_GZIP
LIBWRAP
LIBUSB
+LIBMXML
EGREP
GREP
LIBPAPER
@@ -779,7 +738,6 @@ RM
MV
LN
LD
-HTMLDOC
GZIP
CHMOD
AR
@@ -867,8 +825,6 @@ with_menudir
with_docdir
with_fontpath
with_logdir
-enable_32bit
-enable_64bit
enable_shared
enable_libtool_unsupported
with_optim
@@ -878,22 +834,10 @@ enable_debug_printfs
enable_unit_tests
with_archflags
with_ldarchflags
-with_arch32flags
-with_arch64flags
enable_relro
-enable_image
-enable_jpeg
-enable_png
-enable_tiff
with_domainsocket
-enable_slp
-with_openslp_libs
-with_openslp_includes
enable_gssapi
with_gssservicename
-enable_ldap
-with_ldap_libs
-with_ldap_includes
enable_threads
enable_ssl
enable_cdsassl
@@ -904,6 +848,7 @@ with_openssl_includes
enable_pam
with_pam_module
enable_largefile
+enable_avahi
enable_dnssd
with_dnssd_libs
with_dnssd_includes
@@ -911,17 +856,14 @@ enable_launchd
with_languages
with_bundledir
with_config_file_perm
+with_cupsd_file_perm
with_log_file_perm
with_fatal_errors
with_log_level
with_access_log_level
enable_browsing
with_local_protocols
-with_remote_protocols
-enable_browse_short
enable_default_shared
-enable_implicit
-enable_use_network_default
with_cups_user
with_cups_group
with_system_groups
@@ -933,10 +875,7 @@ enable_raw_printing
with_snmp_address
with_snmp_community
with_ipp_port
-enable_bannertops
-enable_texttops
enable_webif
-with_pdftops
with_java
with_perl
with_php
@@ -1570,8 +1509,6 @@ Optional Features:
--enable-tcp-wrappers use libwrap for TCP wrappers support
--enable-acl build with POSIX ACL support
--enable-dbus build with DBUS support
- --enable-32bit generate 32-bit libraries on 32/64-bit systems
- --enable-64bit generate 64-bit libraries on 32/64-bit systems
--disable-shared do not create shared libraries
--enable-libtool-unsupported
build with libtool (UNSUPPORTED!)
@@ -1580,13 +1517,7 @@ Optional Features:
--enable-debug-printfs build with CUPS_DEBUG_LOG support
--enable-unit-tests build and run unit tests
--enable-relro build with the GCC relro option
- --enable-image always build the image filters
- --disable-jpeg disable JPEG support
- --disable-png disable PNG support
- --disable-tiff disable TIFF support
- --disable-slp disable SLP support
--disable-gssapi disable GSSAPI support
- --disable-ldap disable LDAP support
--disable-threads disable multi-threading support
--disable-ssl disable SSL/TLS support
--enable-cdsassl use CDSA for SSL/TLS support, default=first
@@ -1594,21 +1525,14 @@ Optional Features:
--enable-openssl use OpenSSL for SSL/TLS support, default=third
--disable-pam disable PAM support
--disable-largefile omit support for large files
- --disable-dnssd disable DNS Service Discovery support
+ --disable-avahi disable DNS Service Discovery support using Avahi
+ --disable-dnssd disable DNS Service Discovery support using mDNSResponder
--disable-launchd disable launchd support
--disable-browsing disable Browsing by default
- --disable-browse-short-names
- disable BrowseShortNames by default
--disable-default-shared
disable DefaultShared by default
- --disable-implicit-classes
- disable ImplicitClasses by default
- --enable-use-network-default
- set UseNetworkDefault to Yes by default
--disable-raw-printing do not allow raw printing by default
- --enable-bannertops always build the banner filter
- --enable-texttops always build the text filter
- --enable-webif enable the web interface by default, default=no for Mac OS X
+ --enable-webif enable the web interface by default, default=no for OS X
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@@ -1638,28 +1562,22 @@ Optional Packages:
--with-optim set optimization flags
--with-archflags set default architecture flags
--with-ldarchflags set program architecture flags
- --with-arch32flags set 32-bit architecture flags
- --with-arch64flags set 64-bit architecture flags
--with-domainsocket set unix domain socket name
- --with-openslp-libs set directory for OpenSLP library
- --with-openslp-includes set directory for OpenSLP includes
--with-gssservicename set default gss service name
- --with-ldap-libs set directory for LDAP library
- --with-ldap-includes set directory for LDAP includes
--with-openssl-libs set directory for OpenSSL library
--with-openssl-includes set directory for OpenSSL includes
--with-pam-module specify the PAM module to use
--with-dnssd-libs set directory for DNS Service Discovery library
--with-dnssd-includes set directory for DNS Service Discovery includes
--with-languages set installed languages, default=all
- --with-bundledir set Mac OS X localization bundle directory
+ --with-bundledir set OS X localization bundle directory
--with-config-file-perm set default ConfigFilePerm value, default=0640
+ --with-cupsd-file-perm set default cupsd permissions, default=0500
--with-log-file-perm set default LogFilePerm value, default=0644
--with-fatal-errors set default FatalErrors value, default=config
--with-log-level set default LogLevel value, default=warn
--with-access-log-level set default AccessLogLevel value, default=actions
- --with-local-protocols set default BrowseLocalProtocols, default="CUPS"
- --with-remote-protocols set default BrowseRemoteProtocols, default="CUPS"
+ --with-local-protocols set default BrowseLocalProtocols, default=""
--with-cups-user set default user for CUPS
--with-cups-group set default group for CUPS
--with-system-groups set default system groups for CUPS
@@ -1670,7 +1588,6 @@ Optional Packages:
--with-snmp-address set SNMP query address, default=auto
--with-snmp-community set SNMP community, default=public
--with-ipp-port set port number for IPP, default=631
- --with-pdftops set pdftops filter (gs,/path/to/gs,pdftops,/path/to/pdftops,none), default=pdftops
--with-java set Java interpreter for web interfaces
--with-perl set Perl interpreter for web interfaces
--with-php set PHP interpreter for web interfaces
@@ -2587,7 +2504,7 @@ esac
ac_config_headers="$ac_config_headers config.h"
-CUPS_VERSION=1.5.4
+CUPS_VERSION=1.6.0
CUPS_REVISION=
#if test -z "$CUPS_REVISION" -a -d .svn; then
# CUPS_REVISION="-r`svnversion . | awk -F: '{print $NF}' | sed -e '1,$s/[[a-zA-Z]]*//g'`"
@@ -4056,46 +3973,6 @@ $as_echo "no" >&6; }
fi
-# Extract the first word of "htmldoc", so it can be a program name with args.
-set dummy htmldoc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_HTMLDOC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $HTMLDOC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_HTMLDOC="$HTMLDOC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_HTMLDOC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-HTMLDOC=$ac_cv_path_HTMLDOC
-if test -n "$HTMLDOC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HTMLDOC" >&5
-$as_echo "$HTMLDOC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
# Extract the first word of "ld", so it can be a program name with args.
set dummy ld; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@@ -4453,9 +4330,9 @@ fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fmod" >&5
-$as_echo_n "checking for library containing fmod... " >&6; }
-if ${ac_cv_search_fmod+:} false; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing abs" >&5
+$as_echo_n "checking for library containing abs... " >&6; }
+if ${ac_cv_search_abs+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -4468,11 +4345,11 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#ifdef __cplusplus
extern "C"
#endif
-char fmod ();
+char abs ();
int
main ()
{
-return fmod ();
+return abs ();
;
return 0;
}
@@ -4485,27 +4362,28 @@ for ac_lib in '' m; do
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_fmod=$ac_res
+ ac_cv_search_abs=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_fmod+:} false; then :
+ if ${ac_cv_search_abs+:} false; then :
break
fi
done
-if ${ac_cv_search_fmod+:} false; then :
+if ${ac_cv_search_abs+:} false; then :
else
- ac_cv_search_fmod=no
+ ac_cv_search_abs=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fmod" >&5
-$as_echo "$ac_cv_search_fmod" >&6; }
-ac_res=$ac_cv_search_fmod
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_abs" >&5
+$as_echo "$ac_cv_search_abs" >&6; }
+ac_res=$ac_cv_search_abs
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ $as_echo "#define HAVE_ABS 1" >>confdefs.h
fi
@@ -4565,6 +4443,62 @@ if test "$ac_res" != no; then :
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fmod" >&5
+$as_echo_n "checking for library containing fmod... " >&6; }
+if ${ac_cv_search_fmod+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char fmod ();
+int
+main ()
+{
+return fmod ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' m; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_fmod=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_fmod+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_fmod+:} false; then :
+
+else
+ ac_cv_search_fmod=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fmod" >&5
+$as_echo "$ac_cv_search_fmod" >&6; }
+ac_res=$ac_cv_search_fmod
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+fi
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing getspent" >&5
$as_echo_n "checking for library containing getspent... " >&6; }
if ${ac_cv_search_getspent+:} false; then :
@@ -5011,6 +4945,13 @@ fi
done
+ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_stdlib_h" = xyes; then :
+ $as_echo "#define HAVE_STDLIB_H 1" >>confdefs.h
+
+fi
+
+
ac_fn_c_check_header_mongrel "$LINENO" "crypt.h" "ac_cv_header_crypt_h" "$ac_includes_default"
if test "x$ac_cv_header_crypt_h" = xyes; then :
$as_echo "#define HAVE_CRYPT_H 1" >>confdefs.h
@@ -5163,6 +5104,74 @@ fi
+LIBMXML=""
+ac_fn_c_check_header_mongrel "$LINENO" "mxml.h" "ac_cv_header_mxml_h" "$ac_includes_default"
+if test "x$ac_cv_header_mxml_h" = xyes; then :
+ SAVELIBS="$LIBS"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing mmxlNewElement" >&5
+$as_echo_n "checking for library containing mmxlNewElement... " >&6; }
+if ${ac_cv_search_mmxlNewElement+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char mmxlNewElement ();
+int
+main ()
+{
+return mmxlNewElement ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' mxml; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_mmxlNewElement=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_mmxlNewElement+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_mmxlNewElement+:} false; then :
+
+else
+ ac_cv_search_mmxlNewElement=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_mmxlNewElement" >&5
+$as_echo "$ac_cv_search_mmxlNewElement" >&6; }
+ac_res=$ac_cv_search_mmxlNewElement
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ $as_echo "#define HAVE_MXML_H 1" >>confdefs.h
+
+ LIBMXML="-lmxml"
+fi
+
+ LIBS="$SAVELIBS"
+fi
+
+
+
+
ac_fn_c_check_header_mongrel "$LINENO" "sys/mount.h" "ac_cv_header_sys_mount_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_mount_h" = xyes; then :
$as_echo "#define HAVE_SYS_MOUNT_H 1" >>confdefs.h
@@ -5478,6 +5487,62 @@ fi
fi
+INSTALL_GZIP=""
+LIBZ=""
+ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_zlib_h" = xyes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gzgets in -lz" >&5
+$as_echo_n "checking for gzgets in -lz... " >&6; }
+if ${ac_cv_lib_z_gzgets+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lz $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char gzgets ();
+int
+main ()
+{
+return gzgets ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_z_gzgets=yes
+else
+ ac_cv_lib_z_gzgets=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_gzgets" >&5
+$as_echo "$ac_cv_lib_z_gzgets" >&6; }
+if test "x$ac_cv_lib_z_gzgets" = xyes; then :
+ $as_echo "#define HAVE_LIBZ 1" >>confdefs.h
+
+ LIBZ="-lz"
+ LIBS="$LIBS -lz"
+ if test "x$GZIP" != z; then
+ INSTALL_GZIP="-z"
+ fi
+fi
+
+fi
+
+
+
+
+
case $uname in
Darwin* | *BSD*)
ARFLAGS="-rcv"
@@ -5618,11 +5683,9 @@ fi
CUPS_DEFAULT_PRINTOPERATOR_AUTH="@SYSTEM"
CUPS_SYSTEM_AUTHKEY=""
INSTALLXPC=""
-LEGACY_BACKENDS="parallel"
case $uname in
Darwin*)
- LEGACY_BACKENDS=""
BACKLIBS="$BACKLIBS -framework IOKit"
SERVERLIBS="$SERVERLIBS -framework IOKit -weak_framework ApplicationServices"
LIBS="-framework SystemConfiguration -framework CoreFoundation -framework Security $LIBS"
@@ -5675,21 +5738,6 @@ fi
done
- SAVELIBS="$LIBS"
- LIBS="$LIBS -framework ApplicationServices"
- for ac_func in ColorSyncRegisterDevice
-do :
- ac_fn_c_check_func "$LINENO" "ColorSyncRegisterDevice" "ac_cv_func_ColorSyncRegisterDevice"
-if test "x$ac_cv_func_ColorSyncRegisterDevice" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_COLORSYNCREGISTERDEVICE 1
-_ACEOF
-
-fi
-done
-
- LIBS="$SAVELIBS"
-
ac_fn_c_check_header_mongrel "$LINENO" "membership.h" "ac_cv_header_membership_h" "$ac_includes_default"
if test "x$ac_cv_header_membership_h" = xyes; then :
$as_echo "#define HAVE_MEMBERSHIP_H 1" >>confdefs.h
@@ -5835,6 +5883,13 @@ if test "x$ac_cv_header_xpc_xpc_h" = xyes; then :
fi
+ ac_fn_c_check_header_mongrel "$LINENO" "xpc/private.h" "ac_cv_header_xpc_private_h" "$ac_includes_default"
+if test "x$ac_cv_header_xpc_private_h" = xyes; then :
+ $as_echo "#define HAVE_XPC_PRIVATE_H 1" >>confdefs.h
+
+fi
+
+
;;
esac
@@ -5846,7 +5901,6 @@ _ACEOF
-
COMPONENTS="all"
@@ -5858,7 +5912,7 @@ fi
case "$COMPONENTS" in
all)
- BUILDDIRS="filter backend berkeley cgi-bin driver monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates"
+ BUILDDIRS="filter backend berkeley cgi-bin monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates"
;;
core)
@@ -6419,7 +6473,7 @@ _ACEOF
# Transient run-time state
case "$uname" in
Darwin*)
- # Darwin (Mac OS X)
+ # Darwin (OS X)
CUPS_STATEDIR="$CUPS_SERVERROOT"
;;
*)
@@ -6488,7 +6542,7 @@ case "$uname" in
MAN8DIR=1m
;;
Linux* | GNU* | Darwin*)
- # Linux, GNU Hurd, and Mac OS X
+ # Linux, GNU Hurd, and OS X
MAN1EXT=1.gz
MAN5EXT=5.gz
MAN7EXT=7.gz
@@ -6514,137 +6568,6 @@ esac
-# Check whether --enable-32bit was given.
-if test "${enable_32bit+set}" = set; then :
- enableval=$enable_32bit;
-fi
-
-
-INSTALL32=""
-LIB32CUPS=""
-LIB32CUPSIMAGE=""
-LIB32DIR=""
-UNINSTALL32=""
-
-
-
-
-
-
-
-# Check whether --enable-64bit was given.
-if test "${enable_64bit+set}" = set; then :
- enableval=$enable_64bit;
-fi
-
-
-INSTALL64=""
-LIB64CUPS=""
-LIB64CUPSIMAGE=""
-LIB64DIR=""
-UNINSTALL64=""
-
-
-
-
-
-
-
-case "$uname" in
- HP-UX*)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- INSTALL32="install32bit"
- LIB32CUPS="32bit/libcups.so.2"
- LIB32CUPSIMAGE="32bit/libcupsimage.so.2"
- LIB32DIR="$exec_prefix/lib"
- if test -d /usr/lib/hpux32; then
- LIB32DIR="${LIB32DIR}/hpux32"
- fi
- UNINSTALL32="uninstall32bit"
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- INSTALL64="install64bit"
- LIB64CUPS="64bit/libcups.so.2"
- LIB64CUPSIMAGE="64bit/libcupsimage.so.2"
- LIB64DIR="$exec_prefix/lib"
- if test -d /usr/lib/hpux64; then
- LIB64DIR="${LIB64DIR}/hpux64"
- fi
- UNINSTALL64="uninstall64bit"
- fi
- ;;
-
- IRIX)
- if test "x$enable_32bit" = xyes; then
- INSTALL32="install32bit"
- LIB32CUPS="32bit/libcups.so.2"
- LIB32CUPSIMAGE="32bit/libcupsimage.so.2"
- LIB32DIR="$prefix/lib32"
- UNINSTALL32="uninstall32bit"
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- INSTALL64="install64bit"
- LIB64CUPS="64bit/libcups.so.2"
- LIB64CUPSIMAGE="64bit/libcupsimage.so.2"
- LIB64DIR="$prefix/lib64"
- UNINSTALL64="uninstall64bit"
- fi
- ;;
-
- Linux*)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- INSTALL32="install32bit"
- LIB32CUPS="32bit/libcups.so.2"
- LIB32CUPSIMAGE="32bit/libcupsimage.so.2"
- LIB32DIR="$exec_prefix/lib"
- if test -d /usr/lib32; then
- LIB32DIR="${LIB32DIR}32"
- fi
- UNINSTALL32="uninstall32bit"
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- INSTALL64="install64bit"
- LIB64CUPS="64bit/libcups.so.2"
- LIB64CUPSIMAGE="64bit/libcupsimage.so.2"
- LIB64DIR="$exec_prefix/lib"
- if test -d /usr/lib64; then
- LIB64DIR="${LIB64DIR}64"
- fi
- UNINSTALL64="uninstall64bit"
- fi
- ;;
-
- SunOS*)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- INSTALL32="install32bit"
- LIB32CUPS="32bit/libcups.so.2"
- LIB32CUPSIMAGE="32bit/libcupsimage.so.2"
- LIB32DIR="$exec_prefix/lib/32"
- UNINSTALL32="uninstall32bit"
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- INSTALL64="install64bit"
- LIB64CUPS="64bit/libcups.so.2"
- LIB64CUPSIMAGE="64bit/libcupsimage.so.2"
- LIB64DIR="$exec_prefix/lib/64"
- UNINSTALL64="uninstall64bit"
- fi
- ;;
-esac
-
-
-
PICFLAG=1
DSOFLAGS="${DSOFLAGS:=}"
@@ -6663,7 +6586,6 @@ if test x$enable_shared != xno; then
SunOS*)
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -6674,7 +6596,6 @@ if test x$enable_shared != xno; then
UNIX_S*)
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -6687,7 +6608,6 @@ if test x$enable_shared != xno; then
ia64)
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -6698,7 +6618,6 @@ if test x$enable_shared != xno; then
*)
LIBCUPS="lib$cupsbase.sl.2"
LIBCUPSCGI="libcupscgi.sl.1"
- LIBCUPSDRIVER="libcupsdriver.sl.1"
LIBCUPSIMAGE="libcupsimage.sl.2"
LIBCUPSMIME="libcupsmime.sl.1"
LIBCUPSPPDC="libcupsppdc.sl.1"
@@ -6711,7 +6630,6 @@ if test x$enable_shared != xno; then
IRIX)
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -6722,7 +6640,6 @@ if test x$enable_shared != xno; then
OSF1* | Linux | GNU | *BSD*)
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -6733,7 +6650,6 @@ if test x$enable_shared != xno; then
Darwin*)
LIBCUPS="lib$cupsbase.2.dylib"
LIBCUPSCGI="libcupscgi.1.dylib"
- LIBCUPSDRIVER="libcupsdriver.1.dylib"
LIBCUPSIMAGE="libcupsimage.2.dylib"
LIBCUPSMIME="libcupsmime.1.dylib"
LIBCUPSPPDC="libcupsppdc.1.dylib"
@@ -6745,7 +6661,6 @@ if test x$enable_shared != xno; then
LIBCUPS="lib${cupsbase}_s.a"
LIBCUPSBASE="${cupsbase}_s"
LIBCUPSCGI="libcupscgi_s.a"
- LIBCUPSDRIVER="libcupsdriver_s.a"
LIBCUPSIMAGE="libcupsimage_s.a"
LIBCUPSMIME="libcupsmime_s.a"
LIBCUPSPPDC="libcupsppdc_s.a"
@@ -6758,7 +6673,6 @@ if test x$enable_shared != xno; then
echo " option with compiler."
LIBCUPS="lib$cupsbase.so.2"
LIBCUPSCGI="libcupscgi.so.1"
- LIBCUPSDRIVER="libcupsdriver.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
LIBCUPSMIME="libcupsmime.so.1"
LIBCUPSPPDC="libcupsppdc.so.1"
@@ -6771,7 +6685,6 @@ else
PICFLAG=0
LIBCUPS="lib$cupsbase.a"
LIBCUPSCGI="libcupscgi.a"
- LIBCUPSDRIVER="libcupsdriver.a"
LIBCUPSIMAGE="libcupsimage.a"
LIBCUPSMIME="libcupsmime.a"
LIBCUPSPPDC="libcupsppdc.a"
@@ -6779,14 +6692,6 @@ else
DSOXX=":"
fi
-# 32-bit and 64-bit libraries need variations of the standard
-# DSOFLAGS...
-DSO32FLAGS="$DSOFLAGS"
-DSO64FLAGS="$DSOFLAGS"
-
-
-
-
@@ -6803,7 +6708,6 @@ if test x$enable_shared = xno; then
LINKCUPSIMAGE="../filter/libcupsimage.a"
EXTLINKCUPS="-lcups"
- EXTLINKCUPSDRIVER="-lcupsdriver"
EXTLINKCUPSIMAGE="-lcupsimage"
else
if test $uname = AIX; then
@@ -6811,14 +6715,12 @@ else
LINKCUPSIMAGE="-lcupsimage_s"
EXTLINKCUPS="-lcups_s"
- EXTLINKCUPSDRIVER="-lcupsdriver_s"
EXTLINKCUPSIMAGE="-lcupsimage_s"
else
LINKCUPS="-l${cupsbase}"
LINKCUPSIMAGE="-lcupsimage"
EXTLINKCUPS="-lcups"
- EXTLINKCUPSDRIVER="-lcupsdriver"
EXTLINKCUPSIMAGE="-lcupsimage"
fi
fi
@@ -6828,7 +6730,6 @@ fi
-
EXPORT_LDFLAGS=""
if test "$DSO" != ":"; then
@@ -6836,7 +6737,7 @@ if test "$DSO" != ":"; then
# rather than to the executables. This makes things smaller if you
# are using any static libraries, and it also allows us to distribute
# a single DSO rather than a bunch...
- DSOLIBS="\$(LIBTIFF) \$(LIBPNG) \$(LIBJPEG) \$(LIBZ)"
+ DSOLIBS="\$(LIBZ)"
IMGLIBS=""
# Tell the run-time linkers where to find a DSO. Some platforms
@@ -6848,13 +6749,9 @@ if test "$DSO" != ":"; then
case "$uarch" in
ia64)
DSOFLAGS="-Wl,+s,+b,$libdir $DSOFLAGS"
- DSO32FLAGS="-Wl,+s,+b,$LIB32DIR $DSO32FLAGS"
- DSO64FLAGS="-Wl,+s,+b,$LIB64DIR $DSO64FLAGS"
;;
*)
DSOFLAGS="+s +b $libdir $DSOFLAGS"
- DSO32FLAGS="+s +b $LIB32DIR $DSO32FLAGS"
- DSO64FLAGS="+s +b $LIB64DIR $DSO64FLAGS"
;;
esac
LDFLAGS="$LDFLAGS -Wl,+s,+b,$libdir"
@@ -6864,8 +6761,6 @@ if test "$DSO" != ":"; then
# Solaris...
if test $exec_prefix != /usr; then
DSOFLAGS="-R$libdir $DSOFLAGS"
- DSO32FLAGS="-R$LIB32DIR $DSO32FLAGS"
- DSO64FLAGS="-R$LIB64DIR $DSO64FLAGS"
LDFLAGS="$LDFLAGS -R$libdir"
EXPORT_LDFLAGS="-R$libdir"
fi
@@ -6874,8 +6769,6 @@ if test "$DSO" != ":"; then
# *BSD...
if test $exec_prefix != /usr; then
DSOFLAGS="-Wl,-R$libdir $DSOFLAGS"
- DSO32FLAGS="-Wl,-R$LIB32DIR $DSO32FLAGS"
- DSO64FLAGS="-Wl,-R$LIB64DIR $DSO64FLAGS"
LDFLAGS="$LDFLAGS -Wl,-R$libdir"
EXPORT_LDFLAGS="-Wl,-R$libdir"
fi
@@ -6884,8 +6777,6 @@ if test "$DSO" != ":"; then
# IRIX, Linux, and HURD...
if test $exec_prefix != /usr; then
DSOFLAGS="-Wl,-rpath,$libdir $DSOFLAGS"
- DSO32FLAGS="-Wl,-rpath,$LIB32DIR $DSO32FLAGS"
- DSO64FLAGS="-Wl,-rpath,$LIB64DIR $DSO64FLAGS"
LDFLAGS="$LDFLAGS -Wl,-rpath,$libdir"
EXPORT_LDFLAGS="-Wl,-rpath,$libdir"
fi
@@ -6893,7 +6784,7 @@ if test "$DSO" != ":"; then
esac
else
DSOLIBS=""
- IMGLIBS="\$(LIBTIFF) \$(LIBPNG) \$(LIBJPEG) \$(LIBZ)"
+ IMGLIBS="\$(LIBZ)"
fi
@@ -7003,8 +6894,8 @@ fi
if test -z "$with_ldarchflags"; then
if test "$uname" = Darwin; then
- # Only create 32-bit programs by default
- LDARCHFLAGS="`echo $ARCHFLAGS | sed -e '1,$s/-arch x86_64//' -e '1,$s/-arch ppc64//'`"
+ # Only create Intel programs by default
+ LDARCHFLAGS="`echo $ARCHFLAGS | sed -e '1,$s/-arch ppc64//'`"
else
LDARCHFLAGS="$ARCHFLAGS"
fi
@@ -7015,24 +6906,6 @@ fi
-
-# Check whether --with-arch32flags was given.
-if test "${with_arch32flags+set}" = set; then :
- withval=$with_arch32flags;
-fi
-
-ARCH32FLAGS=""
-
-
-
-# Check whether --with-arch64flags was given.
-if test "${with_arch64flags+set}" = set; then :
- withval=$with_arch64flags;
-fi
-
-ARCH64FLAGS=""
-
-
# Check whether --enable-relro was given.
if test "${enable_relro+set}" = set; then :
enableval=$enable_relro;
@@ -7048,9 +6921,6 @@ PIEFLAGS=""
RELROFLAGS=""
-PHPOPTIONS=""
-
-
if test -n "$GCC"; then
# Add GCC-specific compiler options...
if test -z "$OPTIM"; then
@@ -7140,7 +7010,6 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
# Additional warning options for development testing...
if test -d .svn; then
OPTIM="-Wshadow -Werror $OPTIM"
- PHPOPTIONS="-Wno-shadow"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if GCC supports -Wno-tautological-compare" >&5
$as_echo_n "checking if GCC supports -Wno-tautological-compare... " >&6; }
@@ -7180,154 +7049,12 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
CFLAGS="$CFLAGS -D_FORTIFY_SOURCE=2"
;;
- HP-UX*)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="-milp32"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-mlp64"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="-mlp64"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-milp32"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
- ;;
-
- IRIX)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="-n32 -mips3"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-64 -mips4"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="-64 -mips4"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-n32 -mips3"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
- ;;
-
Linux*)
# The -z relro option is provided by the Linux linker command to
# make relocatable data read-only.
if test x$enable_relro = xyes; then
RELROFLAGS="-Wl,-z,relro"
fi
-
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="-m32"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-m64"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="-m64"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-m32"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
- ;;
-
- SunOS*)
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="-m32"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-m64"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="-m64"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-m32"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
;;
esac
else
@@ -7356,40 +7083,6 @@ else
if test $PICFLAG = 1; then
OPTIM="+z $OPTIM"
fi
-
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="+DD32"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="+DD64"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="+DD64"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="+DD32"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
;;
IRIX)
if test -z "$OPTIM"; then
@@ -7403,40 +7096,6 @@ else
if test "x$with_optim" = x; then
OPTIM="-fullwarn -woff 1183,1209,1349,1506,3201 $OPTIM"
fi
-
- if test "x$enable_32bit" = xyes; then
- # Build 32-bit libraries, 64-bit base...
- if test -z "$with_arch32flags"; then
- ARCH32FLAGS="-n32 -mips3"
- else
- ARCH32FLAGS="$with_arch32flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-64 -mips4"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- fi
-
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries, 32-bit base...
- if test -z "$with_arch64flags"; then
- ARCH64FLAGS="-64 -mips4"
- else
- ARCH64FLAGS="$with_arch64flags"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-n32 -mips3"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
;;
OSF*)
# Tru64 UNIX aka Digital UNIX aka OSF/1
@@ -7461,47 +7120,6 @@ else
if test $PICFLAG = 1; then
OPTIM="-KPIC $OPTIM"
fi
-
- if test "x$enable_32bit" = xyes; then
- # Compiling on a Solaris system, build 64-bit
- # binaries with separate 32-bit libraries...
- ARCH32FLAGS="-xarch=generic"
-
- if test "x$with_optim" = x; then
- # Suppress all of Sun's questionable
- # warning messages, and default to
- # 64-bit compiles of everything else...
- OPTIM="-w $OPTIM"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch64flags"; then
- ARCHFLAGS="-xarch=generic64"
- else
- ARCHFLAGS="$with_arch64flags"
- fi
- fi
- else
- if test "x$enable_64bit" = xyes; then
- # Build 64-bit libraries...
- ARCH64FLAGS="-xarch=generic64"
- fi
-
- if test "x$with_optim" = x; then
- # Suppress all of Sun's questionable
- # warning messages, and default to
- # 32-bit compiles of everything else...
- OPTIM="-w $OPTIM"
- fi
-
- if test -z "$with_archflags"; then
- if test -z "$with_arch32flags"; then
- ARCHFLAGS="-xarch=generic"
- else
- ARCHFLAGS="$with_arch32flags"
- fi
- fi
- fi
;;
UNIX_SVR*)
# UnixWare
@@ -7561,352 +7179,6 @@ esac
-# Check whether --enable-image was given.
-if test "${enable_image+set}" = set; then :
- enableval=$enable_image;
-fi
-
-
-DEFAULT_IMAGEFILTERS="#"
-IMGFILTERS=""
-if test "x$enable_image" != xno; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build image filters" >&5
-$as_echo_n "checking whether to build image filters... " >&6; }
- if test "x$enable_image" = xyes -o $uname != Darwin; then
- IMGFILTERS="imagetops imagetoraster"
- DEFAULT_IMAGEFILTERS=""
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
-fi
-
-
-
-
-# Check whether --enable-jpeg was given.
-if test "${enable_jpeg+set}" = set; then :
- enableval=$enable_jpeg;
-fi
-
-# Check whether --enable-png was given.
-if test "${enable_png+set}" = set; then :
- enableval=$enable_png;
-fi
-
-# Check whether --enable-tiff was given.
-if test "${enable_tiff+set}" = set; then :
- enableval=$enable_tiff;
-fi
-
-
-LIBJPEG=""
-LIBPNG=""
-LIBTIFF=""
-LIBZ=""
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing pow" >&5
-$as_echo_n "checking for library containing pow... " >&6; }
-if ${ac_cv_search_pow+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char pow ();
-int
-main ()
-{
-return pow ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' m; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_pow=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_pow+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_pow+:} false; then :
-
-else
- ac_cv_search_pow=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_pow" >&5
-$as_echo "$ac_cv_search_pow" >&6; }
-ac_res=$ac_cv_search_pow
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-
-fi
-
-
-SAVELIBS="$LIBS"
-
-if test x$enable_jpeg != xno; then
- ac_fn_c_check_header_mongrel "$LINENO" "jpeglib.h" "ac_cv_header_jpeglib_h" "$ac_includes_default"
-if test "x$ac_cv_header_jpeglib_h" = xyes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for jpeg_destroy_decompress in -ljpeg" >&5
-$as_echo_n "checking for jpeg_destroy_decompress in -ljpeg... " >&6; }
-if ${ac_cv_lib_jpeg_jpeg_destroy_decompress+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ljpeg $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char jpeg_destroy_decompress ();
-int
-main ()
-{
-return jpeg_destroy_decompress ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_jpeg_jpeg_destroy_decompress=yes
-else
- ac_cv_lib_jpeg_jpeg_destroy_decompress=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_jpeg_destroy_decompress" >&5
-$as_echo "$ac_cv_lib_jpeg_jpeg_destroy_decompress" >&6; }
-if test "x$ac_cv_lib_jpeg_jpeg_destroy_decompress" = xyes; then :
- $as_echo "#define HAVE_LIBJPEG 1" >>confdefs.h
-
- LIBJPEG="-ljpeg"
- LIBS="$LIBS -ljpeg"
-fi
-
-fi
-
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: JPEG support disabled with --disable-jpeg." >&5
-$as_echo "$as_me: JPEG support disabled with --disable-jpeg." >&6;}
-fi
-
-INSTALL_GZIP=""
-ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_zlib_h" = xyes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gzgets in -lz" >&5
-$as_echo_n "checking for gzgets in -lz... " >&6; }
-if ${ac_cv_lib_z_gzgets+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lz $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char gzgets ();
-int
-main ()
-{
-return gzgets ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_z_gzgets=yes
-else
- ac_cv_lib_z_gzgets=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_gzgets" >&5
-$as_echo "$ac_cv_lib_z_gzgets" >&6; }
-if test "x$ac_cv_lib_z_gzgets" = xyes; then :
- $as_echo "#define HAVE_LIBZ 1" >>confdefs.h
-
- LIBZ="-lz"
- LIBS="$LIBS -lz"
- if test "x$GZIP" != x; then
- INSTALL_GZIP="-z"
- fi
-fi
-
-fi
-
-
-
-
-if test x$enable_png != xno; then
- ac_fn_c_check_header_mongrel "$LINENO" "png.h" "ac_cv_header_png_h" "$ac_includes_default"
-if test "x$ac_cv_header_png_h" = xyes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for png_create_read_struct in -lpng" >&5
-$as_echo_n "checking for png_create_read_struct in -lpng... " >&6; }
-if ${ac_cv_lib_png_png_create_read_struct+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lpng $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char png_create_read_struct ();
-int
-main ()
-{
-return png_create_read_struct ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_png_png_create_read_struct=yes
-else
- ac_cv_lib_png_png_create_read_struct=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_png_png_create_read_struct" >&5
-$as_echo "$ac_cv_lib_png_png_create_read_struct" >&6; }
-if test "x$ac_cv_lib_png_png_create_read_struct" = xyes; then :
- $as_echo "#define HAVE_LIBPNG 1" >>confdefs.h
-
- LIBPNG="-lpng"
-fi
-
-fi
-
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: PNG support disabled with --disable-png." >&5
-$as_echo "$as_me: PNG support disabled with --disable-png." >&6;}
-fi
-
-if test x$enable_tiff != xno; then
- ac_fn_c_check_header_mongrel "$LINENO" "tiff.h" "ac_cv_header_tiff_h" "$ac_includes_default"
-if test "x$ac_cv_header_tiff_h" = xyes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for TIFFReadScanline in -ltiff" >&5
-$as_echo_n "checking for TIFFReadScanline in -ltiff... " >&6; }
-if ${ac_cv_lib_tiff_TIFFReadScanline+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltiff $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char TIFFReadScanline ();
-int
-main ()
-{
-return TIFFReadScanline ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_tiff_TIFFReadScanline=yes
-else
- ac_cv_lib_tiff_TIFFReadScanline=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tiff_TIFFReadScanline" >&5
-$as_echo "$ac_cv_lib_tiff_TIFFReadScanline" >&6; }
-if test "x$ac_cv_lib_tiff_TIFFReadScanline" = xyes; then :
- $as_echo "#define HAVE_LIBTIFF 1" >>confdefs.h
-
- LIBTIFF="-ltiff"
-fi
-
-fi
-
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: TIFF support disabled with --disable-tiff." >&5
-$as_echo "$as_me: TIFF support disabled with --disable-tiff." >&6;}
-fi
-
-LIBS="$SAVELIBS"
-
-EXPORT_LIBJPEG="$LIBJPEG"
-EXPORT_LIBPNG="$LIBPNG"
-EXPORT_LIBTIFF="$LIBTIFF"
-EXPORT_LIBZ="$LIBZ"
-
-
-
-
-
-
-ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdlib_h" = xyes; then :
- $as_echo "#define HAVE_STDLIB_H 1" >>confdefs.h
-
-fi
-
-
-
-
-
ac_fn_c_check_header_mongrel "$LINENO" "resolv.h" "ac_cv_header_resolv_h" "$ac_includes_default"
if test "x$ac_cv_header_resolv_h" = xyes; then :
$as_echo "#define HAVE_RESOLV_H 1" >>confdefs.h
@@ -8582,83 +7854,6 @@ fi
-# Check whether --enable-slp was given.
-if test "${enable_slp+set}" = set; then :
- enableval=$enable_slp;
-fi
-
-
-# Check whether --with-openslp-libs was given.
-if test "${with_openslp_libs+set}" = set; then :
- withval=$with_openslp_libs; LDFLAGS="-L$withval $LDFLAGS"
- DSOFLAGS="-L$withval $DSOFLAGS"
-fi
-
-
-# Check whether --with-openslp-includes was given.
-if test "${with_openslp_includes+set}" = set; then :
- withval=$with_openslp_includes; CFLAGS="-I$withval $CFLAGS"
- CPPFLAGS="-I$withval $CPPFLAGS"
-fi
-
-
-LIBSLP=""
-
-if test x$enable_slp != xno; then
- ac_fn_c_check_header_mongrel "$LINENO" "slp.h" "ac_cv_header_slp_h" "$ac_includes_default"
-if test "x$ac_cv_header_slp_h" = xyes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SLPOpen in -lslp" >&5
-$as_echo_n "checking for SLPOpen in -lslp... " >&6; }
-if ${ac_cv_lib_slp_SLPOpen+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lslp $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char SLPOpen ();
-int
-main ()
-{
-return SLPOpen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_slp_SLPOpen=yes
-else
- ac_cv_lib_slp_SLPOpen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_slp_SLPOpen" >&5
-$as_echo "$ac_cv_lib_slp_SLPOpen" >&6; }
-if test "x$ac_cv_lib_slp_SLPOpen" = xyes; then :
- $as_echo "#define HAVE_LIBSLP 1" >>confdefs.h
-
- LIBSLP="-lslp"
-fi
-
-fi
-
-
-fi
-
-
-
-
-
-
# Check whether --enable-gssapi was given.
if test "${enable_gssapi+set}" = set; then :
enableval=$enable_gssapi;
@@ -8712,7 +7907,7 @@ fi
if test "x$KRB5CONFIG" != x; then
case "$uname" in
Darwin)
- # Mac OS X weak-links to the Kerberos framework...
+ # OS X weak-links to the Kerberos framework...
LIBGSSAPI="-weak_framework Kerberos"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GSS framework" >&5
$as_echo_n "checking for GSS framework... " >&6; }
@@ -9080,6 +8275,7 @@ else
CUPS_DEFAULT_GSSSERVICENAME=""
fi
+
cat >>confdefs.h <<_ACEOF
#define CUPS_DEFAULT_GSSSERVICENAME "$CUPS_DEFAULT_GSSSERVICENAME"
_ACEOF
@@ -9087,264 +8283,6 @@ _ACEOF
-# Check whether --enable-ldap was given.
-if test "${enable_ldap+set}" = set; then :
- enableval=$enable_ldap;
-fi
-
-
-# Check whether --with-ldap-libs was given.
-if test "${with_ldap_libs+set}" = set; then :
- withval=$with_ldap_libs; LDFLAGS="-L$withval $LDFLAGS"
- DSOFLAGS="-L$withval $DSOFLAGS"
-fi
-
-
-# Check whether --with-ldap-includes was given.
-if test "${with_ldap_includes+set}" = set; then :
- withval=$with_ldap_includes; CFLAGS="-I$withval $CFLAGS"
- CPPFLAGS="-I$withval $CPPFLAGS"
-fi
-
-
-LIBLDAP=""
-
-if test x$enable_ldap != xno; then
- ac_fn_c_check_header_mongrel "$LINENO" "ldap.h" "ac_cv_header_ldap_h" "$ac_includes_default"
-if test "x$ac_cv_header_ldap_h" = xyes; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldap_initialize in -lldap" >&5
-$as_echo_n "checking for ldap_initialize in -lldap... " >&6; }
-if ${ac_cv_lib_ldap_ldap_initialize+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lldap $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ldap_initialize ();
-int
-main ()
-{
-return ldap_initialize ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_ldap_ldap_initialize=yes
-else
- ac_cv_lib_ldap_ldap_initialize=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ldap_ldap_initialize" >&5
-$as_echo "$ac_cv_lib_ldap_ldap_initialize" >&6; }
-if test "x$ac_cv_lib_ldap_ldap_initialize" = xyes; then :
- $as_echo "#define HAVE_LDAP 1" >>confdefs.h
-
- $as_echo "#define HAVE_OPENLDAP 1" >>confdefs.h
-
- LIBLDAP="-lldap"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldap_start_tls in -lldap" >&5
-$as_echo_n "checking for ldap_start_tls in -lldap... " >&6; }
-if ${ac_cv_lib_ldap_ldap_start_tls+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lldap $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ldap_start_tls ();
-int
-main ()
-{
-return ldap_start_tls ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_ldap_ldap_start_tls=yes
-else
- ac_cv_lib_ldap_ldap_start_tls=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ldap_ldap_start_tls" >&5
-$as_echo "$ac_cv_lib_ldap_ldap_start_tls" >&6; }
-if test "x$ac_cv_lib_ldap_ldap_start_tls" = xyes; then :
- $as_echo "#define HAVE_LDAP_SSL 1" >>confdefs.h
-
-fi
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldap_init in -lldap" >&5
-$as_echo_n "checking for ldap_init in -lldap... " >&6; }
-if ${ac_cv_lib_ldap_ldap_init+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lldap $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ldap_init ();
-int
-main ()
-{
-return ldap_init ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_ldap_ldap_init=yes
-else
- ac_cv_lib_ldap_ldap_init=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ldap_ldap_init" >&5
-$as_echo "$ac_cv_lib_ldap_ldap_init" >&6; }
-if test "x$ac_cv_lib_ldap_ldap_init" = xyes; then :
- $as_echo "#define HAVE_LDAP 1" >>confdefs.h
-
- $as_echo "#define HAVE_MOZILLA_LDAP 1" >>confdefs.h
-
- LIBLDAP="-lldap"
- ac_fn_c_check_header_compile "$LINENO" "ldap_ssl.h" "ac_cv_header_ldap_ssl_h" "#include <ldap.h>
-"
-if test "x$ac_cv_header_ldap_ssl_h" = xyes; then :
- $as_echo "#define HAVE_LDAP_SSL_H 1" >>confdefs.h
-
-fi
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldapssl_init in -lldap" >&5
-$as_echo_n "checking for ldapssl_init in -lldap... " >&6; }
-if ${ac_cv_lib_ldap_ldapssl_init+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lldap $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ldapssl_init ();
-int
-main ()
-{
-return ldapssl_init ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_ldap_ldapssl_init=yes
-else
- ac_cv_lib_ldap_ldapssl_init=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ldap_ldapssl_init" >&5
-$as_echo "$ac_cv_lib_ldap_ldapssl_init" >&6; }
-if test "x$ac_cv_lib_ldap_ldapssl_init" = xyes; then :
- $as_echo "#define HAVE_LDAP_SSL 1" >>confdefs.h
-
-fi
-
-fi
-
-
-fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldap_set_rebind_proc in -lldap" >&5
-$as_echo_n "checking for ldap_set_rebind_proc in -lldap... " >&6; }
-if ${ac_cv_lib_ldap_ldap_set_rebind_proc+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lldap $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ldap_set_rebind_proc ();
-int
-main ()
-{
-return ldap_set_rebind_proc ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_ldap_ldap_set_rebind_proc=yes
-else
- ac_cv_lib_ldap_ldap_set_rebind_proc=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ldap_ldap_set_rebind_proc" >&5
-$as_echo "$ac_cv_lib_ldap_ldap_set_rebind_proc" >&6; }
-if test "x$ac_cv_lib_ldap_ldap_set_rebind_proc" = xyes; then :
- $as_echo "#define HAVE_LDAP_REBIND_PROC 1" >>confdefs.h
-
-fi
-
-
-fi
-
-
-fi
-
-
-
-
-
-
# Check whether --enable-threads was given.
if test "${enable_threads+set}" = set; then :
enableval=$enable_threads;
@@ -9517,15 +8455,6 @@ fi
- SAVELIBS="$LIBS"
- LIBS="$LIBS -framework Security"
- ac_fn_c_check_func "$LINENO" "SSLSetProtocolVersionMax" "ac_cv_func_SSLSetProtocolVersionMax"
-if test "x$ac_cv_func_SSLSetProtocolVersionMax" = xyes; then :
-
-fi
-
- LIBS="$SAVELIBS"
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SecCertificateCopyData" >&5
$as_echo_n "checking for SecCertificateCopyData... " >&6; }
if test $uversion -ge 100; then
@@ -10020,7 +8949,7 @@ fi
case "$uname" in
Darwin*)
- # Darwin/Mac OS X
+ # Darwin/OS X
if test "x$with_pam_module" != x; then
PAMFILE="pam.$with_pam_module"
elif test -f /usr/lib/pam/pam_opendirectory.so.2; then
@@ -10315,6 +9244,11 @@ fi
+# Check whether --enable-avahi was given.
+if test "${enable_avahi+set}" = set; then :
+ enableval=$enable_avahi;
+fi
+
# Check whether --enable-dnssd was given.
if test "${enable_dnssd+set}" = set; then :
enableval=$enable_dnssd;
@@ -10338,7 +9272,24 @@ fi
DNSSDLIBS=""
DNSSD_BACKEND=""
-if test x$enable_dnssd != xno; then
+if test "x$PKGCONFIG" != x -a x$enable_avahi != xno; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Avahi" >&5
+$as_echo_n "checking for Avahi... " >&6; }
+ if $PKGCONFIG --exists avahi-client; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`"
+ DNSSDLIBS="`$PKGCONFIG --libs avahi-client`"
+ DNSSD_BACKEND="dnssd"
+ $as_echo "#define HAVE_AVAHI 1" >>confdefs.h
+
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+fi
+
+if test "x$DNSSD_BACKEND" = x -a x$enable_dnssd != xno; then
ac_fn_c_check_header_mongrel "$LINENO" "dns_sd.h" "ac_cv_header_dns_sd_h" "$ac_includes_default"
if test "x$ac_cv_header_dns_sd_h" = xyes; then :
@@ -10347,10 +9298,6 @@ if test "x$ac_cv_header_dns_sd_h" = xyes; then :
# Darwin and MacOS X...
$as_echo "#define HAVE_DNSSD 1" >>confdefs.h
- $as_echo "#define HAVE_COREFOUNDATION 1" >>confdefs.h
-
- $as_echo "#define HAVE_SYSTEMCONFIGURATION 1" >>confdefs.h
-
DNSSDLIBS="-framework CoreFoundation -framework SystemConfiguration"
DNSSD_BACKEND="dnssd"
;;
@@ -10443,7 +9390,7 @@ fi
-LANGUAGES="`ls -1 locale/cups_*.po | sed -e '1,$s/locale\/cups_//' -e '1,$s/\.po//' | tr '\n' ' '`"
+LANGUAGES="`ls -1 locale/cups_*.po 2>/dev/null | sed -e '1,$s/locale\/cups_//' -e '1,$s/\.po//' | tr '\n' ' '`"
# Check whether --with-languages was given.
@@ -10499,6 +9446,16 @@ _ACEOF
+# Check whether --with-cupsd_file_perm was given.
+if test "${with_cupsd_file_perm+set}" = set; then :
+ withval=$with_cupsd_file_perm; CUPS_CUPSD_FILE_PERM="$withval"
+else
+ CUPS_CUPSD_FILE_PERM="500"
+fi
+
+
+
+
# Check whether --with-log_file_perm was given.
if test "${with_log_file_perm+set}" = set; then :
withval=$with_log_file_perm; CUPS_LOG_FILE_PERM="$withval"
@@ -10527,7 +9484,6 @@ _ACEOF
-
# Check whether --with-log_level was given.
if test "${with_log_level+set}" = set; then :
withval=$with_log_level; CUPS_LOG_LEVEL="$withval"
@@ -10586,10 +9542,10 @@ fi
if test x$with_local_protocols != xno; then
if test "x$default_local_protocols" = "xdefault"; then
- if test "x$DNSSDLIBS" != "x"; then
- CUPS_BROWSE_LOCAL_PROTOCOLS="CUPS dnssd"
- else
- CUPS_BROWSE_LOCAL_PROTOCOLS="CUPS"
+ if test "x$DNSSD_BACKEND" != "x"; then
+ CUPS_BROWSE_LOCAL_PROTOCOLS="dnssd"
+ else
+ CUPS_BROWSE_LOCAL_PROTOCOLS=""
fi
else
CUPS_BROWSE_LOCAL_PROTOCOLS="$default_local_protocols"
@@ -10604,55 +9560,6 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
-
-# Check whether --with-remote_protocols was given.
-if test "${with_remote_protocols+set}" = set; then :
- withval=$with_remote_protocols; default_remote_protocols="$withval"
-else
- default_remote_protocols="default"
-fi
-
-
-if test x$with_remote_protocols != xno; then
- if test "x$default_remote_protocols" = "xdefault"; then
- if test "$uname" = "Darwin" -a $uversion -ge 90; then
- CUPS_BROWSE_REMOTE_PROTOCOLS=""
- else
- CUPS_BROWSE_REMOTE_PROTOCOLS="CUPS"
- fi
- else
- CUPS_BROWSE_REMOTE_PROTOCOLS="$default_remote_protocols"
- fi
-else
- CUPS_BROWSE_REMOTE_PROTOCOLS=""
-fi
-
-
-cat >>confdefs.h <<_ACEOF
-#define CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS "$CUPS_BROWSE_REMOTE_PROTOCOLS"
-_ACEOF
-
-
-# Check whether --enable-browse_short was given.
-if test "${enable_browse_short+set}" = set; then :
- enableval=$enable_browse_short;
-fi
-
-if test "x$enable_browse_short" = xno; then
- CUPS_BROWSE_SHORT_NAMES="No"
- cat >>confdefs.h <<_ACEOF
-#define CUPS_DEFAULT_BROWSE_SHORT_NAMES 0
-_ACEOF
-
-else
- CUPS_BROWSE_SHORT_NAMES="Yes"
- cat >>confdefs.h <<_ACEOF
-#define CUPS_DEFAULT_BROWSE_SHORT_NAMES 1
-_ACEOF
-
-fi
-
-
# Check whether --enable-default_shared was given.
if test "${enable_default_shared+set}" = set; then :
enableval=$enable_default_shared;
@@ -10673,60 +9580,6 @@ _ACEOF
fi
-# Check whether --enable-implicit was given.
-if test "${enable_implicit+set}" = set; then :
- enableval=$enable_implicit;
-fi
-
-if test "x$enable_implicit" = xno; then
- CUPS_IMPLICIT_CLASSES="No"
- cat >>confdefs.h <<_ACEOF
-#define CUPS_DEFAULT_IMPLICIT_CLASSES 0
-_ACEOF
-
-else
- CUPS_IMPLICIT_CLASSES="Yes"
- cat >>confdefs.h <<_ACEOF
-#define CUPS_DEFAULT_IMPLICIT_CLASSES 1
-_ACEOF
-
-fi
-
-
-# Check whether --enable-use_network_default was given.
-if test "${enable_use_network_default+set}" = set; then :
- enableval=$enable_use_network_default;
-fi
-
-if test "x$enable_use_network_default" != xno; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use network default printers" >&5
-$as_echo_n "checking whether to use network default printers... " >&6; }
- if test "x$enable_use_network_default" = xyes -o $uname != Darwin; then
- CUPS_USE_NETWORK_DEFAULT="Yes"
- cat >>confdefs.h <<_ACEOF
-#define CUPS_DEFAULT_USE_NETWORK_DEFAULT 1
-_ACEOF
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- CUPS_USE_NETWORK_DEFAULT="No"
- cat >>confdefs.h <<_ACEOF
-#define CUPS_DEFAULT_USE_NETWORK_DEFAULT 0
-_ACEOF
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
-else
- CUPS_USE_NETWORK_DEFAULT="No"
- cat >>confdefs.h <<_ACEOF
-#define CUPS_DEFAULT_USE_NETWORK_DEFAULT 0
-_ACEOF
-
-fi
-
-
# Check whether --with-cups_user was given.
if test "${with_cups_user+set}" = set; then :
@@ -11053,58 +9906,6 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
-# Check whether --enable-bannertops was given.
-if test "${enable_bannertops+set}" = set; then :
- enableval=$enable_bannertops;
-fi
-
-# Check whether --enable-texttops was given.
-if test "${enable_texttops+set}" = set; then :
- enableval=$enable_texttops;
-fi
-
-
-if test "x$enable_bannertops" = xno; then
- BANNERTOPS=""
- DEFAULT_BANNERTOPS="#"
-elif test "x$enable_bannertops" = xyes; then
- BANNERTOPS="bannertops"
- DEFAULT_BANNERTOPS=""
-elif test $uname = Darwin; then
- BANNERTOPS=""
- DEFAULT_BANNERTOPS="#"
-else
- BANNERTOPS="bannertops"
- DEFAULT_BANNERTOPS=""
-fi
-
-if test "x$enable_texttops" = xno; then
- TEXTTOPS=""
- DEFAULT_TEXTTOPS="#"
-elif test "x$enable_texttops" = xyes; then
- TEXTTOPS="texttops"
- DEFAULT_TEXTTOPS=""
-elif test $uname = Darwin; then
- TEXTTOPS=""
- DEFAULT_TEXTTOPS="#"
-else
- TEXTTOPS="texttops"
- DEFAULT_TEXTTOPS=""
-fi
-
-
-
-
-
-
-if test "x$BANNERTOPS" = x -a "x$TEXTTOPS" = x; then
- FONTS=""
-else
- FONTS="fonts"
-fi
-
-
-
# Check whether --enable-webif was given.
if test "${enable_webif+set}" = set; then :
enableval=$enable_webif;
@@ -11139,284 +9940,6 @@ _ACEOF
-# Check whether --with-pdftops was given.
-if test "${with_pdftops+set}" = set; then :
- withval=$with_pdftops;
-fi
-
-
-PDFTOPS=""
-CUPS_PDFTOPS=""
-CUPS_GHOSTSCRIPT=""
-
-case "x$with_pdftops" in
- x) # Default/auto
- if test $uname != Darwin; then
- # Extract the first word of "pdftops", so it can be a program name with args.
-set dummy pdftops; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_CUPS_PDFTOPS+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $CUPS_PDFTOPS in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_CUPS_PDFTOPS="$CUPS_PDFTOPS" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_CUPS_PDFTOPS="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-CUPS_PDFTOPS=$ac_cv_path_CUPS_PDFTOPS
-if test -n "$CUPS_PDFTOPS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CUPS_PDFTOPS" >&5
-$as_echo "$CUPS_PDFTOPS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test "x$CUPS_PDFTOPS" != x; then
- $as_echo "#define HAVE_PDFTOPS 1" >>confdefs.h
-
- PDFTOPS="pdftops"
- else
- # Extract the first word of "gs", so it can be a program name with args.
-set dummy gs; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_CUPS_GHOSTSCRIPT+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $CUPS_GHOSTSCRIPT in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_CUPS_GHOSTSCRIPT="$CUPS_GHOSTSCRIPT" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_CUPS_GHOSTSCRIPT="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-CUPS_GHOSTSCRIPT=$ac_cv_path_CUPS_GHOSTSCRIPT
-if test -n "$CUPS_GHOSTSCRIPT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CUPS_GHOSTSCRIPT" >&5
-$as_echo "$CUPS_GHOSTSCRIPT" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test "x$CUPS_GHOSTSCRIPT" != x; then
- $as_echo "#define HAVE_GHOSTSCRIPT 1" >>confdefs.h
-
- PDFTOPS="pdftops"
- fi
- fi
- fi
- ;;
-
- xgs)
- # Extract the first word of "gs", so it can be a program name with args.
-set dummy gs; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_CUPS_GHOSTSCRIPT+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $CUPS_GHOSTSCRIPT in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_CUPS_GHOSTSCRIPT="$CUPS_GHOSTSCRIPT" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_CUPS_GHOSTSCRIPT="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-CUPS_GHOSTSCRIPT=$ac_cv_path_CUPS_GHOSTSCRIPT
-if test -n "$CUPS_GHOSTSCRIPT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CUPS_GHOSTSCRIPT" >&5
-$as_echo "$CUPS_GHOSTSCRIPT" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test "x$CUPS_GHOSTSCRIPT" != x; then
- $as_echo "#define HAVE_GHOSTSCRIPT 1" >>confdefs.h
-
- PDFTOPS="pdftops"
- else
- as_fn_error $? "Unable to find gs program!" "$LINENO" 5
- exit 1
- fi
- ;;
-
- x/*/gs) # Use /path/to/gs without any check:
- CUPS_GHOSTSCRIPT="$with_pdftops"
- $as_echo "#define HAVE_GHOSTSCRIPT 1" >>confdefs.h
-
- PDFTOPS="pdftops"
- ;;
-
- xpdftops)
- # Extract the first word of "pdftops", so it can be a program name with args.
-set dummy pdftops; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_CUPS_PDFTOPS+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $CUPS_PDFTOPS in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_CUPS_PDFTOPS="$CUPS_PDFTOPS" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_CUPS_PDFTOPS="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-CUPS_PDFTOPS=$ac_cv_path_CUPS_PDFTOPS
-if test -n "$CUPS_PDFTOPS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CUPS_PDFTOPS" >&5
-$as_echo "$CUPS_PDFTOPS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test "x$CUPS_PDFTOPS" != x; then
- $as_echo "#define HAVE_PDFTOPS 1" >>confdefs.h
-
- PDFTOPS="pdftops"
- else
- as_fn_error $? "Unable to find pdftops program!" "$LINENO" 5
- exit 1
- fi
- ;;
-
- x/*/pdftops) # Use /path/to/pdftops without any check:
- CUPS_PDFTOPS="$with_pdftops"
- $as_echo "#define HAVE_PDFTOPS 1" >>confdefs.h
-
- PDFTOPS="pdftops"
- ;;
-
- xnone) # Make no pdftops filter if with_pdftops=none:
- ;;
-
- *) # Invalid with_pdftops value:
- as_fn_error $? "Invalid with_pdftops value!" "$LINENO" 5
- exit 1
- ;;
-esac
-
-if test "x$CUPS_PDFTOPS" != x; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pdftops supports -origpagesizes" >&5
-$as_echo_n "checking whether pdftops supports -origpagesizes... " >&6; }
- if ($CUPS_PDFTOPS -h 2>&1 | grep -q -- -origpagesizes); then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- $as_echo "#define HAVE_PDFTOPS_WITH_ORIGPAGESIZES 1" >>confdefs.h
-
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
-
- DEFAULT_PDFTOPS=""
-elif test "x$CUPS_GHOSTSCRIPT" != x; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gs supports the ps2write device" >&5
-$as_echo_n "checking whether gs supports the ps2write device... " >&6; }
- if ($CUPS_GHOSTSCRIPT -h 2>&1 | grep -q ps2write); then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- $as_echo "#define HAVE_GHOSTSCRIPT_PS2WRITE 1" >>confdefs.h
-
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
-
- DEFAULT_PDFTOPS=""
-else
- DEFAULT_PDFTOPS="#"
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define CUPS_PDFTOPS "$CUPS_PDFTOPS"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define CUPS_GHOSTSCRIPT "$CUPS_GHOSTSCRIPT"
-_ACEOF
-
-
-
-
-
-
-
# Check whether --with-java was given.
if test "${with_java+set}" = set; then :
withval=$with_java; CUPS_JAVA="$withval"
@@ -11651,56 +10174,6 @@ else
fi
-PHPDIR=""
-if test "x$CUPS_PHP" != xno; then
- # Extract the first word of "php-config", so it can be a program name with args.
-set dummy php-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PHPCONFIG+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $PHPCONFIG in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PHPCONFIG="$PHPCONFIG" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_PHPCONFIG="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-PHPCONFIG=$ac_cv_path_PHPCONFIG
-if test -n "$PHPCONFIG"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PHPCONFIG" >&5
-$as_echo "$PHPCONFIG" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
- if test "x$PHPCONFIG" != x; then
- PHPDIR="scripting/php"
- fi
-fi
-
-
-
# Check whether --with-python was given.
if test "${with_python+set}" = set; then :
@@ -11789,7 +10262,7 @@ fi
-ac_config_files="$ac_config_files Makedefs conf/cupsd.conf conf/mime.convs conf/pam.std conf/snmp.conf cups-config data/testprint desktop/cups.desktop doc/help/ref-cupsd-conf.html doc/help/standard.html doc/index.html man/client.conf.man man/cups-deviced.man man/cups-driverd.man man/cups-lpd.man man/cupsaddsmb.man man/cupsd.conf.man man/cupsd.man man/lpoptions.man scheduler/cups-lpd.xinetd scheduler/cups.sh scheduler/cups.xml scheduler/org.cups.cups-lpd.plist templates/header.tmpl packaging/cups.list $LANGFILES"
+ac_config_files="$ac_config_files Makedefs conf/cupsd.conf conf/mime.convs conf/pam.std conf/snmp.conf cups-config data/testprint desktop/cups.desktop doc/help/ref-cupsd-conf.html doc/help/standard.html doc/index.html man/client.conf.man man/cups-deviced.man man/cups-driverd.man man/cups-lpd.man man/cups-snmp.man man/cupsaddsmb.man man/cupsd.conf.man man/cupsd.man man/lpoptions.man scheduler/cups-lpd.xinetd scheduler/cups.sh scheduler/cups.xml scheduler/org.cups.cups-lpd.plist templates/header.tmpl packaging/cups.list $LANGFILES"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@@ -12509,6 +10982,7 @@ do
"man/cups-deviced.man") CONFIG_FILES="$CONFIG_FILES man/cups-deviced.man" ;;
"man/cups-driverd.man") CONFIG_FILES="$CONFIG_FILES man/cups-driverd.man" ;;
"man/cups-lpd.man") CONFIG_FILES="$CONFIG_FILES man/cups-lpd.man" ;;
+ "man/cups-snmp.man") CONFIG_FILES="$CONFIG_FILES man/cups-snmp.man" ;;
"man/cupsaddsmb.man") CONFIG_FILES="$CONFIG_FILES man/cupsaddsmb.man" ;;
"man/cupsd.conf.man") CONFIG_FILES="$CONFIG_FILES man/cupsd.conf.man" ;;
"man/cupsd.man") CONFIG_FILES="$CONFIG_FILES man/cupsd.man" ;;
diff --git a/configure.in b/configure.in
index 3ce4064a..95a26c93 100644
--- a/configure.in
+++ b/configure.in
@@ -1,9 +1,9 @@
dnl
-dnl "$Id: configure.in 9939 2011-08-31 01:36:33Z mike $"
+dnl "$Id: configure.in 10424 2012-04-23 17:26:57Z mike $"
dnl
dnl Configuration script for CUPS.
dnl
-dnl Copyright 2007-2010 by Apple Inc.
+dnl Copyright 2007-2012 by Apple Inc.
dnl Copyright 1997-2007 by Easy Software Products, all rights reserved.
dnl
dnl These coded instructions, statements, and computer programs are the
@@ -20,17 +20,13 @@ sinclude(config-scripts/cups-common.m4)
sinclude(config-scripts/cups-directories.m4)
sinclude(config-scripts/cups-manpages.m4)
-sinclude(config-scripts/cups-3264.m4)
sinclude(config-scripts/cups-sharedlibs.m4)
sinclude(config-scripts/cups-libtool.m4)
sinclude(config-scripts/cups-compiler.m4)
-sinclude(config-scripts/cups-image.m4)
sinclude(config-scripts/cups-network.m4)
sinclude(config-scripts/cups-poll.m4)
-sinclude(config-scripts/cups-slp.m4)
sinclude(config-scripts/cups-gssapi.m4)
-sinclude(config-scripts/cups-ldap.m4)
sinclude(config-scripts/cups-threads.m4)
sinclude(config-scripts/cups-ssl.m4)
sinclude(config-scripts/cups-pam.m4)
@@ -38,7 +34,6 @@ sinclude(config-scripts/cups-largefile.m4)
sinclude(config-scripts/cups-dnssd.m4)
sinclude(config-scripts/cups-launchd.m4)
sinclude(config-scripts/cups-defaults.m4)
-sinclude(config-scripts/cups-pdf.m4)
sinclude(config-scripts/cups-scripting.m4)
INSTALL_LANGUAGES=""
@@ -79,6 +74,7 @@ AC_OUTPUT(Makedefs
man/cups-deviced.man
man/cups-driverd.man
man/cups-lpd.man
+ man/cups-snmp.man
man/cupsaddsmb.man
man/cupsd.conf.man
man/cupsd.man
@@ -94,5 +90,5 @@ AC_OUTPUT(Makedefs
chmod +x cups-config
dnl
-dnl End of "$Id: configure.in 9939 2011-08-31 01:36:33Z mike $".
+dnl End of "$Id: configure.in 10424 2012-04-23 17:26:57Z mike $".
dnl
diff --git a/cups-config.in b/cups-config.in
index 2cdeca87..7ba10447 100755
--- a/cups-config.in
+++ b/cups-config.in
@@ -1,10 +1,10 @@
#! /bin/sh
#
-# "$Id: cups-config.in 9153 2010-06-16 00:48:25Z mike $"
-#
+# "$Id: cups-config.in 9926 2011-08-27 09:23:01Z mike $"
+#
# CUPS configuration utility.
#
-# Copyright 2007-2010 by Apple Inc.
+# Copyright 2007-2011 by Apple Inc.
# Copyright 2001-2006 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -15,7 +15,7 @@
#
VERSION="@CUPS_VERSION@"
-APIVERSION="1.5"
+APIVERSION="1.6"
BUILD="@CUPS_BUILD@"
prefix=@prefix@
@@ -35,8 +35,7 @@ INSTALLSTATIC=@INSTALLSTATIC@
# flags for C++ compiler:
CFLAGS=""
LDFLAGS="@EXPORT_LDFLAGS@"
-LIBS="@LIBGSSAPI@ @EXPORT_SSLLIBS@ @EXPORT_LIBZ@ @LIBS@"
-IMGLIBS="@EXPORT_LIBTIFF@ @EXPORT_LIBJPEG@ @EXPORT_LIBPNG@"
+LIBS="@LIBGSSAPI@ @EXPORT_SSLLIBS@ @LIBZ@ @LIBS@"
# Check for local invocation...
selfdir=`dirname $0`
@@ -46,9 +45,6 @@ if test -f "$selfdir/cups/cups.h"; then
LDFLAGS="-L$selfdir/cups -L$selfdir/filter $LDFLAGS"
libdir="$selfdir/cups"
imagelibdir="$selfdir/filter"
- if test ! -f "$selfdir/cups/raster.h"; then
- ln -s ../filter/raster.h "$selfdir/cups"
- fi
else
if test $includedir != /usr/include; then
CFLAGS="$CFLAGS -I$includedir"
@@ -68,7 +64,7 @@ usage ()
echo " cups-config --datadir"
echo " cups-config --help"
echo " cups-config --ldflags"
- echo " cups-config [--driver] [--image] [--static] --libs"
+ echo " cups-config [--image] [--static] --libs"
echo " cups-config --serverbin"
echo " cups-config --serverroot"
echo " cups-config --version"
@@ -83,7 +79,6 @@ fi
# Parse command line options
static=no
image=no
-driver=no
while test $# -gt 0; do
case $1 in
@@ -99,9 +94,6 @@ while test $# -gt 0; do
--datadir)
echo $cups_datadir
;;
- --driver)
- driver=yes
- ;;
--help)
usage 0
;;
@@ -117,16 +109,10 @@ while test $# -gt 0; do
if test $image = yes; then
libs="@EXTLINKCUPSIMAGE@ $libs"
fi
- if test $driver = yes; then
- libs="@EXTLINKCUPSDRIVER@ $libs"
- fi
else
libs="$libdir/libcups.a $LIBS";
if test $image = yes; then
- libs="$libdir/libcupsimage.a $IMGLIBS $libs"
- fi
- if test $driver = yes; then
- libs="$libdir/libcupsdriver.a $libs"
+ libs="$libdir/libcupsimage.a $libs"
fi
fi
echo $libs
@@ -156,5 +142,5 @@ while test $# -gt 0; do
done
#
-# End of "$Id: cups-config.in 9153 2010-06-16 00:48:25Z mike $".
+# End of "$Id: cups-config.in 9926 2011-08-27 09:23:01Z mike $".
#
diff --git a/cups/Dependencies b/cups/Dependencies
index e2d45167..10beea26 100644
--- a/cups/Dependencies
+++ b/cups/Dependencies
@@ -1,813 +1,260 @@
-# DO NOT DELETE
-
-adminutil.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-adminutil.o: array.h language.h string-private.h ../config.h debug-private.h
-adminutil.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-adminutil.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-adminutil.o: ipp-private.h ../cups/ipp.h language-private.h
-adminutil.o: ../cups/transcode.h thread-private.h adminutil.h
-array.o: string-private.h ../config.h debug-private.h ../cups/versioning.h
-array.o: array-private.h ../cups/array.h versioning.h
-attr.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-attr.o: array.h language.h string-private.h ../config.h debug-private.h
-attr.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-attr.o: http-private.h ../cups/http.h md5-private.h ipp-private.h
-attr.o: ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-auth.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-auth.o: array.h language.h string-private.h ../config.h debug-private.h
-auth.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-auth.o: http-private.h ../cups/http.h md5-private.h ipp-private.h
-auth.o: ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-backchannel.o: cups.h
-backend.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-backend.o: array.h language.h string-private.h ../config.h debug-private.h
-backend.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-backend.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-backend.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-backend.o: thread-private.h backend.h
-conflicts.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-conflicts.o: array.h language.h string-private.h ../config.h debug-private.h
-conflicts.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-conflicts.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-conflicts.o: ipp-private.h ../cups/ipp.h language-private.h
-conflicts.o: ../cups/transcode.h thread-private.h
-custom.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-custom.o: array.h language.h string-private.h ../config.h debug-private.h
-custom.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-custom.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-custom.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-custom.o: thread-private.h
-debug.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-debug.o: array.h language.h string-private.h ../config.h debug-private.h
-debug.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-debug.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-debug.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-debug.o: thread-private.h
-dest.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-dest.o: array.h language.h string-private.h ../config.h debug-private.h
-dest.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-dest.o: http-private.h ../cups/http.h md5-private.h ipp-private.h
-dest.o: ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-dir.o: string-private.h ../config.h debug-private.h ../cups/versioning.h
-dir.o: dir.h versioning.h
-emit.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-emit.o: array.h language.h string-private.h ../config.h debug-private.h
-emit.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-emit.o: http-private.h ../cups/http.h md5-private.h ipp-private.h
-emit.o: ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-encode.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-encode.o: array.h language.h string-private.h ../config.h debug-private.h
-encode.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-encode.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-encode.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-encode.o: thread-private.h
-file.o: file-private.h cups-private.h ../cups/cups.h file.h versioning.h
-file.o: ipp.h http.h array.h language.h string-private.h ../config.h
-file.o: debug-private.h ../cups/versioning.h ppd-private.h ../cups/ppd.h
-file.o: cups.h pwg-private.h http-private.h ../cups/http.h md5-private.h
-file.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-file.o: thread-private.h
-getdevices.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-getdevices.o: array.h language.h string-private.h ../config.h debug-private.h
-getdevices.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-getdevices.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-getdevices.o: ipp-private.h ../cups/ipp.h language-private.h
-getdevices.o: ../cups/transcode.h thread-private.h
-getifaddrs.o: http-private.h ../config.h ../cups/http.h md5-private.h
-getifaddrs.o: ipp-private.h ../cups/ipp.h
-getputfile.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-getputfile.o: array.h language.h string-private.h ../config.h debug-private.h
-getputfile.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-getputfile.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-getputfile.o: ipp-private.h ../cups/ipp.h language-private.h
-getputfile.o: ../cups/transcode.h thread-private.h
-globals.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-globals.o: array.h language.h string-private.h ../config.h debug-private.h
-globals.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-globals.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-globals.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-globals.o: thread-private.h
-http.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-http.o: array.h language.h string-private.h ../config.h debug-private.h
-http.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-http.o: http-private.h ../cups/http.h md5-private.h ipp-private.h
-http.o: ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-http-addr.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-http-addr.o: array.h language.h string-private.h ../config.h debug-private.h
-http-addr.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-http-addr.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-http-addr.o: ipp-private.h ../cups/ipp.h language-private.h
-http-addr.o: ../cups/transcode.h thread-private.h
-http-addrlist.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h
-http-addrlist.o: http.h array.h language.h string-private.h ../config.h
-http-addrlist.o: debug-private.h ../cups/versioning.h ppd-private.h
-http-addrlist.o: ../cups/ppd.h cups.h pwg-private.h http-private.h
-http-addrlist.o: ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-http-addrlist.o: language-private.h ../cups/transcode.h thread-private.h
-http-support.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h
-http-support.o: http.h array.h language.h string-private.h ../config.h
-http-support.o: debug-private.h ../cups/versioning.h ppd-private.h
-http-support.o: ../cups/ppd.h cups.h pwg-private.h http-private.h
-http-support.o: ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-http-support.o: language-private.h ../cups/transcode.h thread-private.h
-ipp.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h array.h
-ipp.o: language.h string-private.h ../config.h debug-private.h
-ipp.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-ipp.o: http-private.h ../cups/http.h md5-private.h ipp-private.h
-ipp.o: ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-ipp-support.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-ipp-support.o: array.h language.h string-private.h ../config.h
-ipp-support.o: debug-private.h ../cups/versioning.h ppd-private.h
-ipp-support.o: ../cups/ppd.h cups.h pwg-private.h http-private.h
-ipp-support.o: ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-ipp-support.o: language-private.h ../cups/transcode.h thread-private.h
-langprintf.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-langprintf.o: array.h language.h string-private.h ../config.h debug-private.h
-langprintf.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-langprintf.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-langprintf.o: ipp-private.h ../cups/ipp.h language-private.h
-langprintf.o: ../cups/transcode.h thread-private.h
-language.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-language.o: array.h language.h string-private.h ../config.h debug-private.h
-language.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-language.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-language.o: ipp-private.h ../cups/ipp.h language-private.h
-language.o: ../cups/transcode.h thread-private.h
-localize.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-localize.o: array.h language.h string-private.h ../config.h debug-private.h
-localize.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-localize.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-localize.o: ipp-private.h ../cups/ipp.h language-private.h
-localize.o: ../cups/transcode.h thread-private.h
-mark.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-mark.o: array.h language.h string-private.h ../config.h debug-private.h
-mark.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-mark.o: http-private.h ../cups/http.h md5-private.h ipp-private.h
-mark.o: ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-md5.o: md5-private.h string-private.h ../config.h
-md5passwd.o: http-private.h ../config.h ../cups/http.h md5-private.h
-md5passwd.o: ipp-private.h ../cups/ipp.h string-private.h
-notify.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-notify.o: array.h language.h string-private.h ../config.h debug-private.h
-notify.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-notify.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-notify.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-notify.o: thread-private.h
-options.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-options.o: array.h language.h string-private.h ../config.h debug-private.h
-options.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-options.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-options.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-options.o: thread-private.h
-page.o: string-private.h ../config.h debug-private.h ../cups/versioning.h
-page.o: ppd.h cups.h array.h versioning.h file.h
-ppd.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h array.h
-ppd.o: language.h string-private.h ../config.h debug-private.h
-ppd.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-ppd.o: http-private.h ../cups/http.h md5-private.h ipp-private.h
-ppd.o: ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-ppd-cache.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-ppd-cache.o: array.h language.h string-private.h ../config.h debug-private.h
-ppd-cache.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-ppd-cache.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-ppd-cache.o: ipp-private.h ../cups/ipp.h language-private.h
-ppd-cache.o: ../cups/transcode.h thread-private.h
-pwg-media.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-pwg-media.o: array.h language.h string-private.h ../config.h debug-private.h
-pwg-media.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-pwg-media.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-pwg-media.o: ipp-private.h ../cups/ipp.h language-private.h
-pwg-media.o: ../cups/transcode.h thread-private.h
-request.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-request.o: array.h language.h string-private.h ../config.h debug-private.h
-request.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-request.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-request.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-request.o: thread-private.h
-sidechannel.o: sidechannel.h versioning.h string-private.h ../config.h
-sidechannel.o: debug-private.h ../cups/versioning.h
-snmp.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-snmp.o: array.h language.h string-private.h ../config.h debug-private.h
-snmp.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-snmp.o: http-private.h ../cups/http.h md5-private.h ipp-private.h
-snmp.o: ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-snmp.o: snmp-private.h
-snprintf.o: string-private.h ../config.h
-string.o: string-private.h ../config.h debug-private.h ../cups/versioning.h
-string.o: thread-private.h array.h versioning.h
-tempfile.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-tempfile.o: array.h language.h string-private.h ../config.h debug-private.h
-tempfile.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-tempfile.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-tempfile.o: ipp-private.h ../cups/ipp.h language-private.h
-tempfile.o: ../cups/transcode.h thread-private.h
-thread.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-thread.o: array.h language.h string-private.h ../config.h debug-private.h
-thread.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-thread.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-thread.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-thread.o: thread-private.h
-transcode.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-transcode.o: array.h language.h string-private.h ../config.h debug-private.h
-transcode.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-transcode.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-transcode.o: ipp-private.h ../cups/ipp.h language-private.h
-transcode.o: ../cups/transcode.h thread-private.h
-usersys.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-usersys.o: array.h language.h string-private.h ../config.h debug-private.h
-usersys.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-usersys.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-usersys.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-usersys.o: thread-private.h
-util.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-util.o: array.h language.h string-private.h ../config.h debug-private.h
-util.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-util.o: http-private.h ../cups/http.h md5-private.h ipp-private.h
-util.o: ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-testadmin.o: adminutil.h cups.h string-private.h ../config.h
-testarray.o: string-private.h ../config.h debug-private.h
-testarray.o: ../cups/versioning.h array.h versioning.h dir.h
-testconflicts.o: cups.h ppd.h array.h versioning.h file.h string-private.h
-testconflicts.o: ../config.h
-testcups.o: string-private.h ../config.h cups.h ppd.h array.h versioning.h
-testcups.o: file.h
-testfile.o: string-private.h ../config.h debug-private.h ../cups/versioning.h
-testfile.o: file.h versioning.h
-testhttp.o: string-private.h ../config.h http-private.h ../cups/http.h
-testhttp.o: md5-private.h ipp-private.h ../cups/ipp.h
-testi18n.o: string-private.h ../config.h language-private.h
-testi18n.o: ../cups/transcode.h language.h array.h versioning.h
-testipp.o: file.h versioning.h string-private.h ../config.h ipp-private.h
-testipp.o: ../cups/ipp.h
-testoptions.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testoptions.o: array.h language.h string-private.h ../config.h
-testoptions.o: debug-private.h ../cups/versioning.h ppd-private.h
-testoptions.o: ../cups/ppd.h cups.h pwg-private.h http-private.h
-testoptions.o: ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-testoptions.o: language-private.h ../cups/transcode.h thread-private.h
-testlang.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testlang.o: array.h language.h string-private.h ../config.h debug-private.h
-testlang.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-testlang.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-testlang.o: ipp-private.h ../cups/ipp.h language-private.h
-testlang.o: ../cups/transcode.h thread-private.h
-testppd.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testppd.o: array.h language.h string-private.h ../config.h debug-private.h
-testppd.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-testppd.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-testppd.o: ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-testppd.o: thread-private.h
-testpwg.o: ppd-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testpwg.o: array.h language.h ../cups/ppd.h cups.h pwg-private.h
-testpwg.o: file-private.h cups-private.h string-private.h ../config.h
-testpwg.o: debug-private.h ../cups/versioning.h http-private.h ../cups/http.h
-testpwg.o: md5-private.h ipp-private.h ../cups/ipp.h language-private.h
-testpwg.o: ../cups/transcode.h thread-private.h
-testsnmp.o: cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testsnmp.o: array.h language.h string-private.h ../config.h debug-private.h
-testsnmp.o: ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-testsnmp.o: pwg-private.h http-private.h ../cups/http.h md5-private.h
-testsnmp.o: ipp-private.h ../cups/ipp.h language-private.h
-testsnmp.o: ../cups/transcode.h thread-private.h snmp-private.h
-# DO NOT DELETE
-
-adminutil.32.o: adminutil.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-adminutil.32.o: adminutil.c array.h language.h string-private.h ../config.h debug-private.h
-adminutil.32.o: adminutil.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-adminutil.32.o: adminutil.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-adminutil.32.o: adminutil.c ipp-private.h ../cups/ipp.h language-private.h
-adminutil.32.o: adminutil.c ../cups/transcode.h thread-private.h adminutil.h
-array.32.o: array.c string-private.h ../config.h debug-private.h ../cups/versioning.h
-array.32.o: array.c array-private.h ../cups/array.h versioning.h
-attr.32.o: attr.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-attr.32.o: attr.c array.h language.h string-private.h ../config.h debug-private.h
-attr.32.o: attr.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-attr.32.o: attr.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-attr.32.o: attr.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-auth.32.o: auth.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-auth.32.o: auth.c array.h language.h string-private.h ../config.h debug-private.h
-auth.32.o: auth.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-auth.32.o: auth.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-auth.32.o: auth.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-backchannel.32.o: backchannel.c cups.h
-backend.32.o: backend.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-backend.32.o: backend.c array.h language.h string-private.h ../config.h debug-private.h
-backend.32.o: backend.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-backend.32.o: backend.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-backend.32.o: backend.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-backend.32.o: backend.c thread-private.h backend.h
-conflicts.32.o: conflicts.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-conflicts.32.o: conflicts.c array.h language.h string-private.h ../config.h debug-private.h
-conflicts.32.o: conflicts.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-conflicts.32.o: conflicts.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-conflicts.32.o: conflicts.c ipp-private.h ../cups/ipp.h language-private.h
-conflicts.32.o: conflicts.c ../cups/transcode.h thread-private.h
-custom.32.o: custom.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-custom.32.o: custom.c array.h language.h string-private.h ../config.h debug-private.h
-custom.32.o: custom.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-custom.32.o: custom.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-custom.32.o: custom.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-custom.32.o: custom.c thread-private.h
-debug.32.o: debug.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-debug.32.o: debug.c array.h language.h string-private.h ../config.h debug-private.h
-debug.32.o: debug.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-debug.32.o: debug.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-debug.32.o: debug.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-debug.32.o: debug.c thread-private.h
-dest.32.o: dest.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-dest.32.o: dest.c array.h language.h string-private.h ../config.h debug-private.h
-dest.32.o: dest.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-dest.32.o: dest.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-dest.32.o: dest.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-dir.32.o: dir.c string-private.h ../config.h debug-private.h ../cups/versioning.h
-dir.32.o: dir.c dir.h versioning.h
-emit.32.o: emit.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-emit.32.o: emit.c array.h language.h string-private.h ../config.h debug-private.h
-emit.32.o: emit.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-emit.32.o: emit.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-emit.32.o: emit.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-encode.32.o: encode.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-encode.32.o: encode.c array.h language.h string-private.h ../config.h debug-private.h
-encode.32.o: encode.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-encode.32.o: encode.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-encode.32.o: encode.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-encode.32.o: encode.c thread-private.h
-file.32.o: file.c file-private.h cups-private.h ../cups/cups.h file.h versioning.h
-file.32.o: file.c ipp.h http.h array.h language.h string-private.h ../config.h
-file.32.o: file.c debug-private.h ../cups/versioning.h ppd-private.h ../cups/ppd.h
-file.32.o: file.c cups.h pwg-private.h http-private.h ../cups/http.h md5-private.h
-file.32.o: file.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-file.32.o: file.c thread-private.h
-getdevices.32.o: getdevices.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-getdevices.32.o: getdevices.c array.h language.h string-private.h ../config.h debug-private.h
-getdevices.32.o: getdevices.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-getdevices.32.o: getdevices.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-getdevices.32.o: getdevices.c ipp-private.h ../cups/ipp.h language-private.h
-getdevices.32.o: getdevices.c ../cups/transcode.h thread-private.h
-getifaddrs.32.o: getifaddrs.c http-private.h ../config.h ../cups/http.h md5-private.h
-getifaddrs.32.o: getifaddrs.c ipp-private.h ../cups/ipp.h
-getputfile.32.o: getputfile.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-getputfile.32.o: getputfile.c array.h language.h string-private.h ../config.h debug-private.h
-getputfile.32.o: getputfile.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-getputfile.32.o: getputfile.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-getputfile.32.o: getputfile.c ipp-private.h ../cups/ipp.h language-private.h
-getputfile.32.o: getputfile.c ../cups/transcode.h thread-private.h
-globals.32.o: globals.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-globals.32.o: globals.c array.h language.h string-private.h ../config.h debug-private.h
-globals.32.o: globals.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-globals.32.o: globals.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-globals.32.o: globals.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-globals.32.o: globals.c thread-private.h
-http.32.o: http.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-http.32.o: http.c array.h language.h string-private.h ../config.h debug-private.h
-http.32.o: http.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-http.32.o: http.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-http.32.o: http.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-http-addr.32.o: http-addr.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-http-addr.32.o: http-addr.c array.h language.h string-private.h ../config.h debug-private.h
-http-addr.32.o: http-addr.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-http-addr.32.o: http-addr.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-http-addr.32.o: http-addr.c ipp-private.h ../cups/ipp.h language-private.h
-http-addr.32.o: http-addr.c ../cups/transcode.h thread-private.h
-http-addrlist.32.o: http-addrlist.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h
-http-addrlist.32.o: http-addrlist.c http.h array.h language.h string-private.h ../config.h
-http-addrlist.32.o: http-addrlist.c debug-private.h ../cups/versioning.h ppd-private.h
-http-addrlist.32.o: http-addrlist.c ../cups/ppd.h cups.h pwg-private.h http-private.h
-http-addrlist.32.o: http-addrlist.c ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-http-addrlist.32.o: http-addrlist.c language-private.h ../cups/transcode.h thread-private.h
-http-support.32.o: http-support.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h
-http-support.32.o: http-support.c http.h array.h language.h string-private.h ../config.h
-http-support.32.o: http-support.c debug-private.h ../cups/versioning.h ppd-private.h
-http-support.32.o: http-support.c ../cups/ppd.h cups.h pwg-private.h http-private.h
-http-support.32.o: http-support.c ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-http-support.32.o: http-support.c language-private.h ../cups/transcode.h thread-private.h
-ipp.32.o: ipp.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h array.h
-ipp.32.o: ipp.c language.h string-private.h ../config.h debug-private.h
-ipp.32.o: ipp.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-ipp.32.o: ipp.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-ipp.32.o: ipp.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-ipp-support.32.o: ipp-support.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-ipp-support.32.o: ipp-support.c array.h language.h string-private.h ../config.h
-ipp-support.32.o: ipp-support.c debug-private.h ../cups/versioning.h ppd-private.h
-ipp-support.32.o: ipp-support.c ../cups/ppd.h cups.h pwg-private.h http-private.h
-ipp-support.32.o: ipp-support.c ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-ipp-support.32.o: ipp-support.c language-private.h ../cups/transcode.h thread-private.h
-langprintf.32.o: langprintf.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-langprintf.32.o: langprintf.c array.h language.h string-private.h ../config.h debug-private.h
-langprintf.32.o: langprintf.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-langprintf.32.o: langprintf.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-langprintf.32.o: langprintf.c ipp-private.h ../cups/ipp.h language-private.h
-langprintf.32.o: langprintf.c ../cups/transcode.h thread-private.h
-language.32.o: language.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-language.32.o: language.c array.h language.h string-private.h ../config.h debug-private.h
-language.32.o: language.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-language.32.o: language.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-language.32.o: language.c ipp-private.h ../cups/ipp.h language-private.h
-language.32.o: language.c ../cups/transcode.h thread-private.h
-localize.32.o: localize.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-localize.32.o: localize.c array.h language.h string-private.h ../config.h debug-private.h
-localize.32.o: localize.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-localize.32.o: localize.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-localize.32.o: localize.c ipp-private.h ../cups/ipp.h language-private.h
-localize.32.o: localize.c ../cups/transcode.h thread-private.h
-mark.32.o: mark.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-mark.32.o: mark.c array.h language.h string-private.h ../config.h debug-private.h
-mark.32.o: mark.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-mark.32.o: mark.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-mark.32.o: mark.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-md5.32.o: md5.c md5-private.h string-private.h ../config.h
-md5passwd.32.o: md5passwd.c http-private.h ../config.h ../cups/http.h md5-private.h
-md5passwd.32.o: md5passwd.c ipp-private.h ../cups/ipp.h string-private.h
-notify.32.o: notify.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-notify.32.o: notify.c array.h language.h string-private.h ../config.h debug-private.h
-notify.32.o: notify.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-notify.32.o: notify.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-notify.32.o: notify.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-notify.32.o: notify.c thread-private.h
-options.32.o: options.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-options.32.o: options.c array.h language.h string-private.h ../config.h debug-private.h
-options.32.o: options.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-options.32.o: options.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-options.32.o: options.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-options.32.o: options.c thread-private.h
-page.32.o: page.c string-private.h ../config.h debug-private.h ../cups/versioning.h
-page.32.o: page.c ppd.h cups.h array.h versioning.h file.h
-ppd.32.o: ppd.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h array.h
-ppd.32.o: ppd.c language.h string-private.h ../config.h debug-private.h
-ppd.32.o: ppd.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-ppd.32.o: ppd.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-ppd.32.o: ppd.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-ppd-cache.32.o: ppd-cache.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-ppd-cache.32.o: ppd-cache.c array.h language.h string-private.h ../config.h debug-private.h
-ppd-cache.32.o: ppd-cache.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-ppd-cache.32.o: ppd-cache.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-ppd-cache.32.o: ppd-cache.c ipp-private.h ../cups/ipp.h language-private.h
-ppd-cache.32.o: ppd-cache.c ../cups/transcode.h thread-private.h
-pwg-media.32.o: pwg-media.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-pwg-media.32.o: pwg-media.c array.h language.h string-private.h ../config.h debug-private.h
-pwg-media.32.o: pwg-media.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-pwg-media.32.o: pwg-media.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-pwg-media.32.o: pwg-media.c ipp-private.h ../cups/ipp.h language-private.h
-pwg-media.32.o: pwg-media.c ../cups/transcode.h thread-private.h
-request.32.o: request.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-request.32.o: request.c array.h language.h string-private.h ../config.h debug-private.h
-request.32.o: request.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-request.32.o: request.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-request.32.o: request.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-request.32.o: request.c thread-private.h
-sidechannel.32.o: sidechannel.c sidechannel.h versioning.h string-private.h ../config.h
-sidechannel.32.o: sidechannel.c debug-private.h ../cups/versioning.h
-snmp.32.o: snmp.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-snmp.32.o: snmp.c array.h language.h string-private.h ../config.h debug-private.h
-snmp.32.o: snmp.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-snmp.32.o: snmp.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-snmp.32.o: snmp.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-snmp.32.o: snmp.c snmp-private.h
-snprintf.32.o: snprintf.c string-private.h ../config.h
-string.32.o: string.c string-private.h ../config.h debug-private.h ../cups/versioning.h
-string.32.o: string.c thread-private.h array.h versioning.h
-tempfile.32.o: tempfile.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-tempfile.32.o: tempfile.c array.h language.h string-private.h ../config.h debug-private.h
-tempfile.32.o: tempfile.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-tempfile.32.o: tempfile.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-tempfile.32.o: tempfile.c ipp-private.h ../cups/ipp.h language-private.h
-tempfile.32.o: tempfile.c ../cups/transcode.h thread-private.h
-thread.32.o: thread.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-thread.32.o: thread.c array.h language.h string-private.h ../config.h debug-private.h
-thread.32.o: thread.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-thread.32.o: thread.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-thread.32.o: thread.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-thread.32.o: thread.c thread-private.h
-transcode.32.o: transcode.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-transcode.32.o: transcode.c array.h language.h string-private.h ../config.h debug-private.h
-transcode.32.o: transcode.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-transcode.32.o: transcode.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-transcode.32.o: transcode.c ipp-private.h ../cups/ipp.h language-private.h
-transcode.32.o: transcode.c ../cups/transcode.h thread-private.h
-usersys.32.o: usersys.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-usersys.32.o: usersys.c array.h language.h string-private.h ../config.h debug-private.h
-usersys.32.o: usersys.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-usersys.32.o: usersys.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-usersys.32.o: usersys.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-usersys.32.o: usersys.c thread-private.h
-util.32.o: util.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-util.32.o: util.c array.h language.h string-private.h ../config.h debug-private.h
-util.32.o: util.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-util.32.o: util.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-util.32.o: util.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-testadmin.32.o: testadmin.c adminutil.h cups.h string-private.h ../config.h
-testarray.32.o: testarray.c string-private.h ../config.h debug-private.h
-testarray.32.o: testarray.c ../cups/versioning.h array.h versioning.h dir.h
-testconflicts.32.o: testconflicts.c cups.h ppd.h array.h versioning.h file.h string-private.h
-testconflicts.32.o: testconflicts.c ../config.h
-testcups.32.o: testcups.c string-private.h ../config.h cups.h ppd.h array.h versioning.h
-testcups.32.o: testcups.c file.h
-testfile.32.o: testfile.c string-private.h ../config.h debug-private.h ../cups/versioning.h
-testfile.32.o: testfile.c file.h versioning.h
-testhttp.32.o: testhttp.c string-private.h ../config.h http-private.h ../cups/http.h
-testhttp.32.o: testhttp.c md5-private.h ipp-private.h ../cups/ipp.h
-testi18n.32.o: testi18n.c string-private.h ../config.h language-private.h
-testi18n.32.o: testi18n.c ../cups/transcode.h language.h array.h versioning.h
-testipp.32.o: testipp.c file.h versioning.h string-private.h ../config.h ipp-private.h
-testipp.32.o: testipp.c ../cups/ipp.h
-testoptions.32.o: testoptions.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testoptions.32.o: testoptions.c array.h language.h string-private.h ../config.h
-testoptions.32.o: testoptions.c debug-private.h ../cups/versioning.h ppd-private.h
-testoptions.32.o: testoptions.c ../cups/ppd.h cups.h pwg-private.h http-private.h
-testoptions.32.o: testoptions.c ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-testoptions.32.o: testoptions.c language-private.h ../cups/transcode.h thread-private.h
-testlang.32.o: testlang.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testlang.32.o: testlang.c array.h language.h string-private.h ../config.h debug-private.h
-testlang.32.o: testlang.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-testlang.32.o: testlang.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-testlang.32.o: testlang.c ipp-private.h ../cups/ipp.h language-private.h
-testlang.32.o: testlang.c ../cups/transcode.h thread-private.h
-testppd.32.o: testppd.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testppd.32.o: testppd.c array.h language.h string-private.h ../config.h debug-private.h
-testppd.32.o: testppd.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-testppd.32.o: testppd.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-testppd.32.o: testppd.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-testppd.32.o: testppd.c thread-private.h
-testpwg.32.o: testpwg.c ppd-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testpwg.32.o: testpwg.c array.h language.h ../cups/ppd.h cups.h pwg-private.h
-testpwg.32.o: testpwg.c file-private.h cups-private.h string-private.h ../config.h
-testpwg.32.o: testpwg.c debug-private.h ../cups/versioning.h http-private.h ../cups/http.h
-testpwg.32.o: testpwg.c md5-private.h ipp-private.h ../cups/ipp.h language-private.h
-testpwg.32.o: testpwg.c ../cups/transcode.h thread-private.h
-testsnmp.32.o: testsnmp.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testsnmp.32.o: testsnmp.c array.h language.h string-private.h ../config.h debug-private.h
-testsnmp.32.o: testsnmp.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-testsnmp.32.o: testsnmp.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-testsnmp.32.o: testsnmp.c ipp-private.h ../cups/ipp.h language-private.h
-testsnmp.32.o: testsnmp.c ../cups/transcode.h thread-private.h snmp-private.h
-# DO NOT DELETE
-
-adminutil.64.o: adminutil.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-adminutil.64.o: adminutil.c array.h language.h string-private.h ../config.h debug-private.h
-adminutil.64.o: adminutil.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-adminutil.64.o: adminutil.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-adminutil.64.o: adminutil.c ipp-private.h ../cups/ipp.h language-private.h
-adminutil.64.o: adminutil.c ../cups/transcode.h thread-private.h adminutil.h
-array.64.o: array.c string-private.h ../config.h debug-private.h ../cups/versioning.h
-array.64.o: array.c array-private.h ../cups/array.h versioning.h
-attr.64.o: attr.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-attr.64.o: attr.c array.h language.h string-private.h ../config.h debug-private.h
-attr.64.o: attr.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-attr.64.o: attr.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-attr.64.o: attr.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-auth.64.o: auth.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-auth.64.o: auth.c array.h language.h string-private.h ../config.h debug-private.h
-auth.64.o: auth.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-auth.64.o: auth.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-auth.64.o: auth.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-backchannel.64.o: backchannel.c cups.h
-backend.64.o: backend.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-backend.64.o: backend.c array.h language.h string-private.h ../config.h debug-private.h
-backend.64.o: backend.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-backend.64.o: backend.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-backend.64.o: backend.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-backend.64.o: backend.c thread-private.h backend.h
-conflicts.64.o: conflicts.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-conflicts.64.o: conflicts.c array.h language.h string-private.h ../config.h debug-private.h
-conflicts.64.o: conflicts.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-conflicts.64.o: conflicts.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-conflicts.64.o: conflicts.c ipp-private.h ../cups/ipp.h language-private.h
-conflicts.64.o: conflicts.c ../cups/transcode.h thread-private.h
-custom.64.o: custom.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-custom.64.o: custom.c array.h language.h string-private.h ../config.h debug-private.h
-custom.64.o: custom.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-custom.64.o: custom.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-custom.64.o: custom.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-custom.64.o: custom.c thread-private.h
-debug.64.o: debug.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-debug.64.o: debug.c array.h language.h string-private.h ../config.h debug-private.h
-debug.64.o: debug.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-debug.64.o: debug.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-debug.64.o: debug.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-debug.64.o: debug.c thread-private.h
-dest.64.o: dest.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-dest.64.o: dest.c array.h language.h string-private.h ../config.h debug-private.h
-dest.64.o: dest.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-dest.64.o: dest.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-dest.64.o: dest.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-dir.64.o: dir.c string-private.h ../config.h debug-private.h ../cups/versioning.h
-dir.64.o: dir.c dir.h versioning.h
-emit.64.o: emit.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-emit.64.o: emit.c array.h language.h string-private.h ../config.h debug-private.h
-emit.64.o: emit.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-emit.64.o: emit.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-emit.64.o: emit.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-encode.64.o: encode.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-encode.64.o: encode.c array.h language.h string-private.h ../config.h debug-private.h
-encode.64.o: encode.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-encode.64.o: encode.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-encode.64.o: encode.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-encode.64.o: encode.c thread-private.h
-file.64.o: file.c file-private.h cups-private.h ../cups/cups.h file.h versioning.h
-file.64.o: file.c ipp.h http.h array.h language.h string-private.h ../config.h
-file.64.o: file.c debug-private.h ../cups/versioning.h ppd-private.h ../cups/ppd.h
-file.64.o: file.c cups.h pwg-private.h http-private.h ../cups/http.h md5-private.h
-file.64.o: file.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-file.64.o: file.c thread-private.h
-getdevices.64.o: getdevices.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-getdevices.64.o: getdevices.c array.h language.h string-private.h ../config.h debug-private.h
-getdevices.64.o: getdevices.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-getdevices.64.o: getdevices.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-getdevices.64.o: getdevices.c ipp-private.h ../cups/ipp.h language-private.h
-getdevices.64.o: getdevices.c ../cups/transcode.h thread-private.h
-getifaddrs.64.o: getifaddrs.c http-private.h ../config.h ../cups/http.h md5-private.h
-getifaddrs.64.o: getifaddrs.c ipp-private.h ../cups/ipp.h
-getputfile.64.o: getputfile.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-getputfile.64.o: getputfile.c array.h language.h string-private.h ../config.h debug-private.h
-getputfile.64.o: getputfile.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-getputfile.64.o: getputfile.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-getputfile.64.o: getputfile.c ipp-private.h ../cups/ipp.h language-private.h
-getputfile.64.o: getputfile.c ../cups/transcode.h thread-private.h
-globals.64.o: globals.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-globals.64.o: globals.c array.h language.h string-private.h ../config.h debug-private.h
-globals.64.o: globals.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-globals.64.o: globals.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-globals.64.o: globals.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-globals.64.o: globals.c thread-private.h
-http.64.o: http.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-http.64.o: http.c array.h language.h string-private.h ../config.h debug-private.h
-http.64.o: http.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-http.64.o: http.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-http.64.o: http.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-http-addr.64.o: http-addr.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-http-addr.64.o: http-addr.c array.h language.h string-private.h ../config.h debug-private.h
-http-addr.64.o: http-addr.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-http-addr.64.o: http-addr.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-http-addr.64.o: http-addr.c ipp-private.h ../cups/ipp.h language-private.h
-http-addr.64.o: http-addr.c ../cups/transcode.h thread-private.h
-http-addrlist.64.o: http-addrlist.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h
-http-addrlist.64.o: http-addrlist.c http.h array.h language.h string-private.h ../config.h
-http-addrlist.64.o: http-addrlist.c debug-private.h ../cups/versioning.h ppd-private.h
-http-addrlist.64.o: http-addrlist.c ../cups/ppd.h cups.h pwg-private.h http-private.h
-http-addrlist.64.o: http-addrlist.c ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-http-addrlist.64.o: http-addrlist.c language-private.h ../cups/transcode.h thread-private.h
-http-support.64.o: http-support.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h
-http-support.64.o: http-support.c http.h array.h language.h string-private.h ../config.h
-http-support.64.o: http-support.c debug-private.h ../cups/versioning.h ppd-private.h
-http-support.64.o: http-support.c ../cups/ppd.h cups.h pwg-private.h http-private.h
-http-support.64.o: http-support.c ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-http-support.64.o: http-support.c language-private.h ../cups/transcode.h thread-private.h
-ipp.64.o: ipp.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h array.h
-ipp.64.o: ipp.c language.h string-private.h ../config.h debug-private.h
-ipp.64.o: ipp.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-ipp.64.o: ipp.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-ipp.64.o: ipp.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-ipp-support.64.o: ipp-support.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-ipp-support.64.o: ipp-support.c array.h language.h string-private.h ../config.h
-ipp-support.64.o: ipp-support.c debug-private.h ../cups/versioning.h ppd-private.h
-ipp-support.64.o: ipp-support.c ../cups/ppd.h cups.h pwg-private.h http-private.h
-ipp-support.64.o: ipp-support.c ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-ipp-support.64.o: ipp-support.c language-private.h ../cups/transcode.h thread-private.h
-langprintf.64.o: langprintf.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-langprintf.64.o: langprintf.c array.h language.h string-private.h ../config.h debug-private.h
-langprintf.64.o: langprintf.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-langprintf.64.o: langprintf.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-langprintf.64.o: langprintf.c ipp-private.h ../cups/ipp.h language-private.h
-langprintf.64.o: langprintf.c ../cups/transcode.h thread-private.h
-language.64.o: language.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-language.64.o: language.c array.h language.h string-private.h ../config.h debug-private.h
-language.64.o: language.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-language.64.o: language.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-language.64.o: language.c ipp-private.h ../cups/ipp.h language-private.h
-language.64.o: language.c ../cups/transcode.h thread-private.h
-localize.64.o: localize.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-localize.64.o: localize.c array.h language.h string-private.h ../config.h debug-private.h
-localize.64.o: localize.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-localize.64.o: localize.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-localize.64.o: localize.c ipp-private.h ../cups/ipp.h language-private.h
-localize.64.o: localize.c ../cups/transcode.h thread-private.h
-mark.64.o: mark.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-mark.64.o: mark.c array.h language.h string-private.h ../config.h debug-private.h
-mark.64.o: mark.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-mark.64.o: mark.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-mark.64.o: mark.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-md5.64.o: md5.c md5-private.h string-private.h ../config.h
-md5passwd.64.o: md5passwd.c http-private.h ../config.h ../cups/http.h md5-private.h
-md5passwd.64.o: md5passwd.c ipp-private.h ../cups/ipp.h string-private.h
-notify.64.o: notify.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-notify.64.o: notify.c array.h language.h string-private.h ../config.h debug-private.h
-notify.64.o: notify.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-notify.64.o: notify.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-notify.64.o: notify.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-notify.64.o: notify.c thread-private.h
-options.64.o: options.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-options.64.o: options.c array.h language.h string-private.h ../config.h debug-private.h
-options.64.o: options.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-options.64.o: options.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-options.64.o: options.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-options.64.o: options.c thread-private.h
-page.64.o: page.c string-private.h ../config.h debug-private.h ../cups/versioning.h
-page.64.o: page.c ppd.h cups.h array.h versioning.h file.h
-ppd.64.o: ppd.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h array.h
-ppd.64.o: ppd.c language.h string-private.h ../config.h debug-private.h
-ppd.64.o: ppd.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-ppd.64.o: ppd.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-ppd.64.o: ppd.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-ppd-cache.64.o: ppd-cache.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-ppd-cache.64.o: ppd-cache.c array.h language.h string-private.h ../config.h debug-private.h
-ppd-cache.64.o: ppd-cache.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-ppd-cache.64.o: ppd-cache.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-ppd-cache.64.o: ppd-cache.c ipp-private.h ../cups/ipp.h language-private.h
-ppd-cache.64.o: ppd-cache.c ../cups/transcode.h thread-private.h
-pwg-media.64.o: pwg-media.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-pwg-media.64.o: pwg-media.c array.h language.h string-private.h ../config.h debug-private.h
-pwg-media.64.o: pwg-media.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-pwg-media.64.o: pwg-media.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-pwg-media.64.o: pwg-media.c ipp-private.h ../cups/ipp.h language-private.h
-pwg-media.64.o: pwg-media.c ../cups/transcode.h thread-private.h
-request.64.o: request.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-request.64.o: request.c array.h language.h string-private.h ../config.h debug-private.h
-request.64.o: request.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-request.64.o: request.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-request.64.o: request.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-request.64.o: request.c thread-private.h
-sidechannel.64.o: sidechannel.c sidechannel.h versioning.h string-private.h ../config.h
-sidechannel.64.o: sidechannel.c debug-private.h ../cups/versioning.h
-snmp.64.o: snmp.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-snmp.64.o: snmp.c array.h language.h string-private.h ../config.h debug-private.h
-snmp.64.o: snmp.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-snmp.64.o: snmp.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-snmp.64.o: snmp.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-snmp.64.o: snmp.c snmp-private.h
-snprintf.64.o: snprintf.c string-private.h ../config.h
-string.64.o: string.c string-private.h ../config.h debug-private.h ../cups/versioning.h
-string.64.o: string.c thread-private.h array.h versioning.h
-tempfile.64.o: tempfile.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-tempfile.64.o: tempfile.c array.h language.h string-private.h ../config.h debug-private.h
-tempfile.64.o: tempfile.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-tempfile.64.o: tempfile.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-tempfile.64.o: tempfile.c ipp-private.h ../cups/ipp.h language-private.h
-tempfile.64.o: tempfile.c ../cups/transcode.h thread-private.h
-thread.64.o: thread.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-thread.64.o: thread.c array.h language.h string-private.h ../config.h debug-private.h
-thread.64.o: thread.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-thread.64.o: thread.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-thread.64.o: thread.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-thread.64.o: thread.c thread-private.h
-transcode.64.o: transcode.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-transcode.64.o: transcode.c array.h language.h string-private.h ../config.h debug-private.h
-transcode.64.o: transcode.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-transcode.64.o: transcode.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-transcode.64.o: transcode.c ipp-private.h ../cups/ipp.h language-private.h
-transcode.64.o: transcode.c ../cups/transcode.h thread-private.h
-usersys.64.o: usersys.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-usersys.64.o: usersys.c array.h language.h string-private.h ../config.h debug-private.h
-usersys.64.o: usersys.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-usersys.64.o: usersys.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-usersys.64.o: usersys.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-usersys.64.o: usersys.c thread-private.h
-util.64.o: util.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-util.64.o: util.c array.h language.h string-private.h ../config.h debug-private.h
-util.64.o: util.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h pwg-private.h
-util.64.o: util.c http-private.h ../cups/http.h md5-private.h ipp-private.h
-util.64.o: util.c ../cups/ipp.h language-private.h ../cups/transcode.h thread-private.h
-testadmin.64.o: testadmin.c adminutil.h cups.h string-private.h ../config.h
-testarray.64.o: testarray.c string-private.h ../config.h debug-private.h
-testarray.64.o: testarray.c ../cups/versioning.h array.h versioning.h dir.h
-testconflicts.64.o: testconflicts.c cups.h ppd.h array.h versioning.h file.h string-private.h
-testconflicts.64.o: testconflicts.c ../config.h
-testcups.64.o: testcups.c string-private.h ../config.h cups.h ppd.h array.h versioning.h
-testcups.64.o: testcups.c file.h
-testfile.64.o: testfile.c string-private.h ../config.h debug-private.h ../cups/versioning.h
-testfile.64.o: testfile.c file.h versioning.h
-testhttp.64.o: testhttp.c string-private.h ../config.h http-private.h ../cups/http.h
-testhttp.64.o: testhttp.c md5-private.h ipp-private.h ../cups/ipp.h
-testi18n.64.o: testi18n.c string-private.h ../config.h language-private.h
-testi18n.64.o: testi18n.c ../cups/transcode.h language.h array.h versioning.h
-testipp.64.o: testipp.c file.h versioning.h string-private.h ../config.h ipp-private.h
-testipp.64.o: testipp.c ../cups/ipp.h
-testoptions.64.o: testoptions.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testoptions.64.o: testoptions.c array.h language.h string-private.h ../config.h
-testoptions.64.o: testoptions.c debug-private.h ../cups/versioning.h ppd-private.h
-testoptions.64.o: testoptions.c ../cups/ppd.h cups.h pwg-private.h http-private.h
-testoptions.64.o: testoptions.c ../cups/http.h md5-private.h ipp-private.h ../cups/ipp.h
-testoptions.64.o: testoptions.c language-private.h ../cups/transcode.h thread-private.h
-testlang.64.o: testlang.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testlang.64.o: testlang.c array.h language.h string-private.h ../config.h debug-private.h
-testlang.64.o: testlang.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-testlang.64.o: testlang.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-testlang.64.o: testlang.c ipp-private.h ../cups/ipp.h language-private.h
-testlang.64.o: testlang.c ../cups/transcode.h thread-private.h
-testppd.64.o: testppd.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testppd.64.o: testppd.c array.h language.h string-private.h ../config.h debug-private.h
-testppd.64.o: testppd.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-testppd.64.o: testppd.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-testppd.64.o: testppd.c ipp-private.h ../cups/ipp.h language-private.h ../cups/transcode.h
-testppd.64.o: testppd.c thread-private.h
-testpwg.64.o: testpwg.c ppd-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testpwg.64.o: testpwg.c array.h language.h ../cups/ppd.h cups.h pwg-private.h
-testpwg.64.o: testpwg.c file-private.h cups-private.h string-private.h ../config.h
-testpwg.64.o: testpwg.c debug-private.h ../cups/versioning.h http-private.h ../cups/http.h
-testpwg.64.o: testpwg.c md5-private.h ipp-private.h ../cups/ipp.h language-private.h
-testpwg.64.o: testpwg.c ../cups/transcode.h thread-private.h
-testsnmp.64.o: testsnmp.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h http.h
-testsnmp.64.o: testsnmp.c array.h language.h string-private.h ../config.h debug-private.h
-testsnmp.64.o: testsnmp.c ../cups/versioning.h ppd-private.h ../cups/ppd.h cups.h
-testsnmp.64.o: testsnmp.c pwg-private.h http-private.h ../cups/http.h md5-private.h
-testsnmp.64.o: testsnmp.c ipp-private.h ../cups/ipp.h language-private.h
-testsnmp.64.o: testsnmp.c ../cups/transcode.h thread-private.h snmp-private.h
+adminutil.o: adminutil.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h adminutil.h
+array.o: array.c string-private.h ../config.h debug-private.h \
+ ../cups/versioning.h array-private.h ../cups/array.h
+attr.o: attr.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+auth.o: auth.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+backchannel.o: backchannel.c cups.h file.h versioning.h ipp.h http.h \
+ array.h language.h
+backend.o: backend.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h backend.h
+conflicts.o: conflicts.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+custom.o: custom.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+debug.o: debug.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+dest.o: dest.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+dest-job.o: dest-job.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+dest-localization.o: dest-localization.c cups-private.h string-private.h \
+ ../config.h debug-private.h ../cups/versioning.h ipp-private.h \
+ ../cups/ipp.h http.h array.h http-private.h md5-private.h \
+ language-private.h ../cups/transcode.h language.h pwg-private.h \
+ ../cups/cups.h file.h ppd-private.h ../cups/ppd.h thread-private.h
+dest-options.o: dest-options.c cups-private.h string-private.h \
+ ../config.h debug-private.h ../cups/versioning.h ipp-private.h \
+ ../cups/ipp.h http.h array.h http-private.h md5-private.h \
+ language-private.h ../cups/transcode.h language.h pwg-private.h \
+ ../cups/cups.h file.h ppd-private.h ../cups/ppd.h thread-private.h
+dir.o: dir.c string-private.h ../config.h debug-private.h \
+ ../cups/versioning.h dir.h
+emit.o: emit.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+encode.o: encode.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+file.o: file.c file-private.h cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+getdevices.o: getdevices.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+getifaddrs.o: getifaddrs.c http-private.h ../config.h ../cups/http.h \
+ versioning.h array.h md5-private.h ipp-private.h ../cups/ipp.h
+getputfile.o: getputfile.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+globals.o: globals.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+http.o: http.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+http-addr.o: http-addr.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+http-addrlist.o: http-addrlist.c cups-private.h string-private.h \
+ ../config.h debug-private.h ../cups/versioning.h ipp-private.h \
+ ../cups/ipp.h http.h array.h http-private.h md5-private.h \
+ language-private.h ../cups/transcode.h language.h pwg-private.h \
+ ../cups/cups.h file.h ppd-private.h ../cups/ppd.h thread-private.h
+http-support.o: http-support.c cups-private.h string-private.h \
+ ../config.h debug-private.h ../cups/versioning.h ipp-private.h \
+ ../cups/ipp.h http.h array.h http-private.h md5-private.h \
+ language-private.h ../cups/transcode.h language.h pwg-private.h \
+ ../cups/cups.h file.h ppd-private.h ../cups/ppd.h thread-private.h
+ipp.o: ipp.c cups-private.h string-private.h ../config.h debug-private.h \
+ ../cups/versioning.h ipp-private.h ../cups/ipp.h http.h array.h \
+ http-private.h md5-private.h language-private.h ../cups/transcode.h \
+ language.h pwg-private.h ../cups/cups.h file.h ppd-private.h \
+ ../cups/ppd.h thread-private.h
+ipp-support.o: ipp-support.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+langprintf.o: langprintf.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+language.o: language.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+localize.o: localize.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+mark.o: mark.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+md5.o: md5.c md5-private.h string-private.h ../config.h
+md5passwd.o: md5passwd.c http-private.h ../config.h ../cups/http.h \
+ versioning.h array.h md5-private.h ipp-private.h ../cups/ipp.h \
+ string-private.h
+notify.o: notify.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+options.o: options.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+page.o: page.c string-private.h ../config.h debug-private.h \
+ ../cups/versioning.h ppd.h cups.h file.h ipp.h http.h array.h \
+ language.h
+ppd.o: ppd.c cups-private.h string-private.h ../config.h debug-private.h \
+ ../cups/versioning.h ipp-private.h ../cups/ipp.h http.h array.h \
+ http-private.h md5-private.h language-private.h ../cups/transcode.h \
+ language.h pwg-private.h ../cups/cups.h file.h ppd-private.h \
+ ../cups/ppd.h thread-private.h
+ppd-cache.o: ppd-cache.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+pwg-media.o: pwg-media.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+request.o: request.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+sidechannel.o: sidechannel.c sidechannel.h versioning.h cups-private.h \
+ string-private.h ../config.h debug-private.h ipp-private.h \
+ ../cups/ipp.h http.h array.h http-private.h md5-private.h \
+ language-private.h ../cups/transcode.h language.h pwg-private.h \
+ ../cups/cups.h file.h ppd-private.h ../cups/ppd.h thread-private.h
+snmp.o: snmp.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h snmp-private.h
+snprintf.o: snprintf.c string-private.h ../config.h
+string.o: string.c string-private.h ../config.h debug-private.h \
+ ../cups/versioning.h thread-private.h array.h
+tempfile.o: tempfile.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+thread.o: thread.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+transcode.o: transcode.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+usersys.o: usersys.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+util.o: util.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+testadmin.o: testadmin.c adminutil.h cups.h file.h versioning.h ipp.h \
+ http.h array.h language.h string-private.h ../config.h
+testarray.o: testarray.c string-private.h ../config.h debug-private.h \
+ ../cups/versioning.h array.h dir.h
+testconflicts.o: testconflicts.c cups.h file.h versioning.h ipp.h http.h \
+ array.h language.h ppd.h string-private.h ../config.h
+testcups.o: testcups.c string-private.h ../config.h cups.h file.h \
+ versioning.h ipp.h http.h array.h language.h ppd.h
+testfile.o: testfile.c string-private.h ../config.h debug-private.h \
+ ../cups/versioning.h file.h
+testhttp.o: testhttp.c string-private.h ../config.h http-private.h \
+ ../cups/http.h versioning.h array.h md5-private.h ipp-private.h \
+ ../cups/ipp.h
+testi18n.o: testi18n.c string-private.h ../config.h language-private.h \
+ ../cups/transcode.h language.h array.h versioning.h
+testipp.o: testipp.c file.h versioning.h string-private.h ../config.h \
+ ipp-private.h ../cups/ipp.h http.h array.h
+testoptions.o: testoptions.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+testlang.o: testlang.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+testppd.o: testppd.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h
+testpwg.o: testpwg.c ppd-private.h ../cups/cups.h file.h versioning.h \
+ ipp.h http.h array.h language.h ../cups/ppd.h pwg-private.h \
+ file-private.h cups-private.h string-private.h ../config.h \
+ debug-private.h ipp-private.h http-private.h md5-private.h \
+ language-private.h ../cups/transcode.h thread-private.h
+testsnmp.o: testsnmp.c cups-private.h string-private.h ../config.h \
+ debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \
+ http.h array.h http-private.h md5-private.h language-private.h \
+ ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \
+ ppd-private.h ../cups/ppd.h thread-private.h snmp-private.h
diff --git a/cups/Makefile b/cups/Makefile
index 1789c2c8..ec599784 100644
--- a/cups/Makefile
+++ b/cups/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 9979 2011-09-09 16:34:29Z mike $"
+# "$Id: Makefile 10539 2012-06-25 15:46:35Z mike $"
#
# API library Makefile for CUPS.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2006 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -32,6 +32,9 @@ LIBOBJS = \
custom.o \
debug.o \
dest.o \
+ dest-job.o \
+ dest-localization.o \
+ dest-options.o \
dir.o \
emit.o \
encode.o \
@@ -68,12 +71,7 @@ LIBOBJS = \
transcode.o \
usersys.o \
util.o
-LIB32OBJS = $(LIBOBJS:.o=.32.o)
-LIB64OBJS = $(LIBOBJS:.o=.64.o)
-OBJS = \
- $(LIBOBJS) \
- $(LIB32OBJS) \
- $(LIB64OBJS) \
+TESTOBJS = \
testadmin.o \
testarray.o \
testconflicts.o \
@@ -87,6 +85,9 @@ OBJS = \
testppd.o \
testpwg.o \
testsnmp.o
+OBJS = \
+ $(LIBOBJS) \
+ $(TESTOBJS)
#
@@ -120,6 +121,7 @@ HEADERSPRIV = \
md5-private.h \
ppd-private.h \
pwg-private.h \
+ raster-private.h \
snmp-private.h \
string-private.h \
thread-private.h
@@ -131,9 +133,7 @@ HEADERSPRIV = \
LIBTARGETS = \
$(LIBCUPSSTATIC) \
- $(LIBCUPS) \
- $(LIB32CUPS) \
- $(LIB64CUPS)
+ $(LIBCUPS)
UNITTARGETS = \
testadmin \
@@ -182,7 +182,6 @@ unittests: $(UNITTARGETS)
clean:
$(RM) $(OBJS) $(TARGETS) $(UNITTARGETS)
$(RM) libcups.so libcups.sl libcups.dylib
- $(RM) -r 32bit 64bit
#
@@ -190,13 +189,7 @@ clean:
#
depend:
- touch Dependencies.tmp
- makedepend -Y -I.. -fDependencies.tmp $(OBJS:.o=.c) >/dev/null 2>&1
- $(RM) Dependencies
- cp Dependencies.tmp Dependencies
- sed -E -e '1,$$s/^([^.]+)\.o:/\1\.32.o: \1\.c /' Dependencies.tmp >>Dependencies
- sed -E -e '1,$$s/^([^.]+)\.o:/\1\.64.o: \1\.c /' Dependencies.tmp >>Dependencies
- $(RM) Dependencies.tmp
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
@@ -243,7 +236,7 @@ install-headers:
# Install libraries...
#
-install-libs: $(INSTALLSTATIC) $(INSTALL32) $(INSTALL64)
+install-libs: $(INSTALLSTATIC)
echo Installing libraries in $(LIBDIR)...
$(INSTALL_DIR) -m 755 $(LIBDIR)
$(INSTALL_LIB) $(LIBCUPS) $(LIBDIR)
@@ -266,24 +259,12 @@ installstatic:
$(RANLIB) $(LIBDIR)/$(LIBCUPSSTATIC)
$(CHMOD) 555 $(LIBDIR)/$(LIBCUPSSTATIC)
-install32bit:
- echo Installing libraries in $(LIB32DIR)...
- $(INSTALL_DIR) -m 755 $(LIB32DIR)
- $(INSTALL_LIB) 32bit/libcups.so.2 $(LIB32DIR)/libcups.so.2
- $(LN) libcups.so.2 $(LIB32DIR)/libcups.so
-
-install64bit:
- echo Installing libraries in $(LIB64DIR)...
- $(INSTALL_DIR) -m 755 $(LIB64DIR)
- $(INSTALL_LIB) 64bit/libcups.so.2 $(LIB64DIR)/libcups.so.2
- $(LN) libcups.so.2 $(LIB64DIR)/libcups.so
-
#
# Uninstall object and target files...
#
-uninstall: $(UNINSTALL32) $(UNINSTALL64)
+uninstall:
$(RM) $(LIBDIR)/libcups.2.dylib
$(RM) $(LIBDIR)/$(LIBCUPSSTATIC)
$(RM) $(LIBDIR)/libcups.dylib
@@ -298,16 +279,6 @@ uninstall: $(UNINSTALL32) $(UNINSTALL64)
done
-$(RMDIR) $(INCLUDEDIR)/cups
-uninstall32bit:
- $(RM) $(LIB32DIR)/libcups.so
- $(RM) $(LIB32DIR)/libcups.so.2
- -$(RMDIR) $(LIB32DIR)
-
-uninstall64bit:
- $(RM) $(LIB64DIR)/libcups.so
- $(RM) $(LIB64DIR)/libcups.so.2
- -$(RMDIR) $(LIB64DIR)
-
#
# libcups.so.2, libcups.sl.2
@@ -322,32 +293,6 @@ libcups.so.2 libcups.sl.2: $(LIBOBJS)
#
-# 32bit/libcups.so.2
-#
-
-32bit/libcups.so.2: $(LIB32OBJS)
- echo Linking 32-bit $@...
- -mkdir 32bit
- $(DSO) $(ARCH32FLAGS) $(DSO32FLAGS) -o $@ $(LIB32OBJS) $(LIBGSSAPI) \
- $(DNSSDLIBS) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
- $(RM) 32bit/libcups.so
- $(LN) libcups.so.2 32bit/libcups.so
-
-
-#
-# 64bit/libcups.so.2
-#
-
-64bit/libcups.so.2: $(LIB64OBJS)
- echo Linking 64-bit $@...
- -mkdir 64bit
- $(DSO) $(ARCH64FLAGS) $(DSO64FLAGS) -o $@ $(LIB64OBJS) $(LIBGSSAPI) \
- $(DNSSDLIBS) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
- $(RM) 64bit/libcups.so
- $(LN) libcups.so.2 64bit/libcups.so
-
-
-#
# libcups.2.dylib
#
@@ -359,7 +304,7 @@ libcups.2.dylib: $(LIBOBJS) $(LIBCUPSORDER)
echo Linking $@...
$(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
-install_name $(libdir)/$@ \
- -current_version 2.9.0 \
+ -current_version 2.10.0 \
-compatibility_version 2.0.0 \
-exported_symbols_list t.exp \
$(LIBOBJS) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
@@ -388,7 +333,7 @@ libcups_s.a: $(LIBOBJS) libcups_s.exp
libcups.la: $(LIBOBJS)
echo Linking $@...
$(CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) \
- -rpath $(LIBDIR) -version-info 2:9 $(LIBGSSAPI) $(SSLLIBS) \
+ -rpath $(LIBDIR) -version-info 2:10 $(LIBGSSAPI) $(SSLLIBS) \
$(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
@@ -585,7 +530,7 @@ apihelp:
file.h file.c dir.h dir.c >../doc/help/api-filedir.html
mxmldoc --tokens api-filedir.xml >../doc/help/api-filedir.tokens
$(RM) api-filedir.xml
- mxmldoc --section "Programming" --title "PPD API" \
+ mxmldoc --section "Programming" --title "PPD API (DEPRECATED)" \
--css ../doc/cups-printable.css \
--header api-ppd.header --intro api-ppd.shtml \
api-ppd.xml \
@@ -637,7 +582,7 @@ framedhelp:
--header api-filedir.header --intro api-filedir.shtml \
file.h file.c dir.h dir.c
mxmldoc --framed api-ppd \
- --section "Programming" --title "PPD API" \
+ --section "Programming" --title "PPD API (DEPRECATED)" \
--css ../doc/cups-printable.css \
--header api-ppd.header --intro api-ppd.shtml \
ppd.h attr.c conflicts.c custom.c emit.c localize.c mark.c \
@@ -676,5 +621,5 @@ include Dependencies
#
-# End of "$Id: Makefile 9979 2011-09-09 16:34:29Z mike $".
+# End of "$Id: Makefile 10539 2012-06-25 15:46:35Z mike $".
#
diff --git a/cups/adminutil.c b/cups/adminutil.c
index 995704ec..f634f3a5 100644
--- a/cups/adminutil.c
+++ b/cups/adminutil.c
@@ -1,9 +1,9 @@
/*
- * "$Id: adminutil.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: adminutil.c 10424 2012-04-23 17:26:57Z mike $"
*
* Administration utility API definitions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2001-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -65,7 +65,7 @@ static void write_option(cups_file_t *dstfp, int order,
/*
* 'cupsAdminCreateWindowsPPD()' - Create the Windows PPD file for a printer.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
char * /* O - PPD file or NULL */
@@ -393,7 +393,7 @@ cupsAdminCreateWindowsPPD(
/*
* 'cupsAdminExportSamba()' - Export a printer to Samba.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 1 on success, 0 on failure */
@@ -843,7 +843,7 @@ cupsAdminExportSamba(
* The returned settings should be freed with cupsFreeOptions() when
* you are done with them.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
int /* O - 1 on success, 0 on failure */
@@ -970,8 +970,6 @@ cupsAdminGetServerSettings(
remote_admin = 0, /* Remote administration allowed? */
remote_any = 0, /* Remote access from anywhere allowed? */
browsing = 1, /* Browsing enabled? */
- browse_allow = 1, /* Browse address set? */
- browse_address = 0, /* Browse address set? */
cancel_policy = 1, /* Cancel-job policy set? */
debug_logging = 0; /* LogLevel debug set? */
int linenum = 0, /* Line number in file */
@@ -1020,26 +1018,16 @@ cupsAdminGetServerSettings(
}
else if (!_cups_strcasecmp(line, "Browsing"))
{
- browsing = !_cups_strcasecmp(value, "yes") || !_cups_strcasecmp(value, "on") ||
+ browsing = !_cups_strcasecmp(value, "yes") ||
+ !_cups_strcasecmp(value, "on") ||
!_cups_strcasecmp(value, "true");
}
- else if (!_cups_strcasecmp(line, "BrowseAddress"))
- {
- browse_address = 1;
- }
- else if (!_cups_strcasecmp(line, "BrowseAllow"))
- {
- browse_allow = 1;
- }
- else if (!_cups_strcasecmp(line, "BrowseOrder"))
- {
- browse_allow = !_cups_strncasecmp(value, "deny,", 5);
- }
else if (!_cups_strcasecmp(line, "LogLevel"))
{
debug_logging = !_cups_strncasecmp(value, "debug", 5);
}
- else if (!_cups_strcasecmp(line, "<Policy") && !_cups_strcasecmp(value, "default"))
+ else if (!_cups_strcasecmp(line, "<Policy") &&
+ !_cups_strcasecmp(value, "default"))
{
in_policy = 1;
}
@@ -1063,7 +1051,8 @@ cupsAdminGetServerSettings(
if (*valptr)
*valptr++ = '\0';
- if (!_cups_strcasecmp(value, "cancel-job") || !_cups_strcasecmp(value, "all"))
+ if (!_cups_strcasecmp(value, "cancel-job") ||
+ !_cups_strcasecmp(value, "all"))
{
in_cancel_job = 1;
break;
@@ -1091,7 +1080,8 @@ cupsAdminGetServerSettings(
in_location = 0;
}
else if (!_cups_strcasecmp(line, "Allow") && value &&
- _cups_strcasecmp(value, "localhost") && _cups_strcasecmp(value, "127.0.0.1")
+ _cups_strcasecmp(value, "localhost") &&
+ _cups_strcasecmp(value, "127.0.0.1")
#ifdef AF_LOCAL
&& *value != '/'
#endif /* AF_LOCAL */
@@ -1135,15 +1125,9 @@ cupsAdminGetServerSettings(
cg->cupsd_num_settings,
&(cg->cupsd_settings));
- cg->cupsd_num_settings = cupsAddOption(CUPS_SERVER_REMOTE_PRINTERS,
- (browsing && browse_allow) ?
- "1" : "0",
- cg->cupsd_num_settings,
- &(cg->cupsd_settings));
-
cg->cupsd_num_settings = cupsAddOption(CUPS_SERVER_SHARE_PRINTERS,
- (remote_access && browsing &&
- browse_address) ? "1" : "0",
+ (remote_access && browsing) ? "1" :
+ "0",
cg->cupsd_num_settings,
&(cg->cupsd_settings));
@@ -1175,7 +1159,7 @@ cupsAdminGetServerSettings(
/*
* 'cupsAdminSetServerSettings()' - Set settings on the server.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
int /* O - 1 on success, 0 on failure */
@@ -1204,8 +1188,7 @@ cupsAdminSetServerSettings(
in_conf_location, /* In the /admin/conf location? */
in_root_location; /* In the / location? */
const char *val; /* Setting value */
- int remote_printers, /* Show remote printers */
- share_printers, /* Share local printers */
+ int share_printers, /* Share local printers */
remote_admin, /* Remote administration allowed? */
remote_any, /* Remote access from anywhere? */
user_cancel_any, /* Cancel-job policy set? */
@@ -1219,8 +1202,7 @@ cupsAdminSetServerSettings(
wrote_root_location; /* Wrote the / location? */
int indent; /* Indentation */
int cupsd_num_settings; /* New number of settings */
- int old_remote_printers, /* Show remote printers */
- old_share_printers, /* Share local printers */
+ int old_share_printers, /* Share local printers */
old_remote_admin, /* Remote administration allowed? */
old_user_cancel_any, /* Cancel-job policy set? */
old_debug_logging; /* LogLevel debug set? */
@@ -1294,15 +1276,6 @@ cupsAdminSetServerSettings(
DEBUG_printf(("1cupsAdminSetServerSettings: old remote_any=%d",
remote_any));
- if ((val = cupsGetOption(CUPS_SERVER_REMOTE_PRINTERS, cupsd_num_settings,
- cupsd_settings)) != NULL)
- old_remote_printers = atoi(val);
- else
- old_remote_printers = 1;
-
- DEBUG_printf(("1cupsAdminSetServerSettings: old remote_printers=%d",
- old_remote_printers));
-
if ((val = cupsGetOption(CUPS_SERVER_SHARE_PRINTERS, cupsd_num_settings,
cupsd_settings)) != NULL)
old_share_printers = atoi(val);
@@ -1374,26 +1347,6 @@ cupsAdminSetServerSettings(
DEBUG_printf(("1cupsAdminSetServerSettings: remote_admin=%d",
remote_admin));
- if ((val = cupsGetOption(CUPS_SERVER_REMOTE_PRINTERS, num_settings,
- settings)) != NULL)
- {
- remote_printers = atoi(val);
-
- if (remote_printers == old_remote_printers)
- {
- /*
- * No change to this setting...
- */
-
- remote_printers = -1;
- }
- }
- else
- remote_printers = -1;
-
- DEBUG_printf(("1cupsAdminSetServerSettings: remote_printers=%d",
- remote_printers));
-
if ((val = cupsGetOption(CUPS_SERVER_SHARE_PRINTERS, num_settings,
settings)) != NULL)
{
@@ -1517,80 +1470,33 @@ cupsAdminSetServerSettings(
cupsFilePrintf(temp, "Listen %s\n", value);
}
else if ((!_cups_strcasecmp(line, "Browsing") ||
- !_cups_strcasecmp(line, "BrowseAddress") ||
- !_cups_strcasecmp(line, "BrowseAllow") ||
- !_cups_strcasecmp(line, "BrowseDeny") ||
- !_cups_strcasecmp(line, "BrowseLocalProtocols") ||
- !_cups_strcasecmp(line, "BrowseRemoteProtocols") ||
- !_cups_strcasecmp(line, "BrowseOrder")) &&
- (remote_printers >= 0 || share_printers >= 0))
+ !_cups_strcasecmp(line, "BrowseLocalProtocols")) &&
+ share_printers >= 0)
{
if (!wrote_browsing)
{
- int new_remote_printers = (remote_printers > 0 ||
- (remote_printers == -1 &&
- old_remote_printers > 0));
int new_share_printers = (share_printers > 0 ||
(share_printers == -1 &&
old_share_printers > 0));
wrote_browsing = 1;
- if (new_remote_printers || new_share_printers)
+ if (new_share_printers)
{
const char *localp = cupsGetOption("BrowseLocalProtocols",
num_settings, settings);
- const char *remotep = cupsGetOption("BrowseRemoteProtocols",
- num_settings, settings);
if (!localp || !localp[0])
localp = cupsGetOption("BrowseLocalProtocols", cupsd_num_settings,
cupsd_settings);
- if (!remotep)
- remotep = cupsGetOption("BrowseRemoteProtocols", cupsd_num_settings,
- cupsd_settings);
-
- if (new_remote_printers && new_share_printers)
- cupsFilePuts(temp,
- "# Enable printer sharing and shared printers.\n");
- else if (new_remote_printers)
- cupsFilePuts(temp,
- "# Show shared printers on the local network.\n");
- else
- cupsFilePuts(temp,
- "# Share local printers on the local network.\n");
-
+ cupsFilePuts(temp, "# Share local printers on the local network.\n");
cupsFilePuts(temp, "Browsing On\n");
- cupsFilePuts(temp, "BrowseOrder allow,deny\n");
-
- if (new_remote_printers)
- {
- cupsFilePuts(temp, "BrowseAllow all\n");
-
- if (!remotep)
- remotep = CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS;
-
- cupsFilePrintf(temp, "BrowseRemoteProtocols %s\n", remotep);
- }
- else
- cupsFilePuts(temp, "BrowseRemoteProtocols\n");
- cupsd_num_settings = cupsAddOption("BrowseRemoteProtocols", remotep,
- cupsd_num_settings,
- &cupsd_settings);
+ if (!localp)
+ localp = CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS;
- if (new_share_printers)
- {
- cupsFilePuts(temp, "BrowseAddress @LOCAL\n");
-
- if (!localp)
- localp = CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS;
-
- cupsFilePrintf(temp, "BrowseLocalProtocols %s\n", localp);
- }
- else
- cupsFilePuts(temp, "BrowseLocalProtocols\n");
+ cupsFilePrintf(temp, "BrowseLocalProtocols %s\n", localp);
cupsd_num_settings = cupsAddOption("BrowseLocalProtocols", localp,
cupsd_num_settings,
@@ -1598,8 +1504,7 @@ cupsAdminSetServerSettings(
}
else
{
- cupsFilePuts(temp,
- "# Disable printer sharing and shared printers.\n");
+ cupsFilePuts(temp, "# Disable printer sharing.\n");
cupsFilePuts(temp, "Browsing Off\n");
}
}
@@ -1865,25 +1770,12 @@ cupsAdminSetServerSettings(
* Write any missing info...
*/
- if (!wrote_browsing && (remote_printers >= 0 || share_printers >= 0))
+ if (!wrote_browsing && share_printers >= 0)
{
- if (remote_printers > 0 || share_printers > 0)
+ if (share_printers > 0)
{
- if (remote_printers > 0 && share_printers > 0)
- cupsFilePuts(temp, "# Enable printer sharing and shared printers.\n");
- else if (remote_printers > 0)
- cupsFilePuts(temp, "# Show shared printers on the local network.\n");
- else
- cupsFilePuts(temp, "# Share local printers on the local network.\n");
-
+ cupsFilePuts(temp, "# Share local printers on the local network.\n");
cupsFilePuts(temp, "Browsing On\n");
- cupsFilePuts(temp, "BrowseOrder allow,deny\n");
-
- if (remote_printers > 0)
- cupsFilePuts(temp, "BrowseAllow all\n");
-
- if (share_printers > 0)
- cupsFilePuts(temp, "BrowseAddress @LOCAL\n");
}
else
{
@@ -2090,15 +1982,6 @@ cupsAdminSetServerSettings(
remote_any ? "1" : "0",
cupsd_num_settings, &cupsd_settings);
- if (remote_printers >= 0)
- cupsd_num_settings = cupsAddOption(CUPS_SERVER_REMOTE_PRINTERS,
- remote_printers ? "1" : "0",
- cupsd_num_settings, &cupsd_settings);
- else
- cupsd_num_settings = cupsAddOption(CUPS_SERVER_REMOTE_PRINTERS,
- old_remote_printers ? "1" : "0",
- cupsd_num_settings, &cupsd_settings);
-
if (share_printers >= 0)
cupsd_num_settings = cupsAddOption(CUPS_SERVER_SHARE_PRINTERS,
share_printers ? "1" : "0",
@@ -2454,5 +2337,5 @@ write_option(cups_file_t *dstfp, /* I - PPD file */
/*
- * End of "$Id: adminutil.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: adminutil.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/adminutil.h b/cups/adminutil.h
index ed3e2352..b23a9da6 100644
--- a/cups/adminutil.h
+++ b/cups/adminutil.h
@@ -1,9 +1,9 @@
/*
- * "$Id: adminutil.h 9063 2010-04-01 17:01:09Z mike $"
+ * "$Id: adminutil.h 10104 2011-11-04 06:37:03Z mike $"
*
* Administration utility API definitions for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2011 by Apple Inc.
* Copyright 2001-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -42,7 +42,7 @@ extern "C" {
# define CUPS_SERVER_DEBUG_LOGGING "_debug_logging"
# define CUPS_SERVER_REMOTE_ADMIN "_remote_admin"
# define CUPS_SERVER_REMOTE_ANY "_remote_any"
-# define CUPS_SERVER_REMOTE_PRINTERS "_remote_printers"
+/*# define CUPS_SERVER_REMOTE_PRINTERS "_remote_printers"*/
# define CUPS_SERVER_SHARE_PRINTERS "_share_printers"
# define CUPS_SERVER_USER_CANCEL_ANY "_user_cancel_any"
@@ -74,5 +74,5 @@ extern int cupsAdminSetServerSettings(http_t *http,
#endif /* !_CUPS_ADMINUTIL_H_ */
/*
- * End of "$Id: adminutil.h 9063 2010-04-01 17:01:09Z mike $".
+ * End of "$Id: adminutil.h 10104 2011-11-04 06:37:03Z mike $".
*/
diff --git a/cups/api-filter.shtml b/cups/api-filter.shtml
index edc822cd..a8e52919 100644
--- a/cups/api-filter.shtml
+++ b/cups/api-filter.shtml
@@ -1,9 +1,9 @@
<!--
- "$Id: api-filter.shtml 9799 2011-05-20 18:09:22Z mike $"
+ "$Id: api-filter.shtml 10424 2012-04-23 17:26:57Z mike $"
Filter and backend programming introduction for CUPS.
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2006 by Easy Software Products, all rights reserved.
These coded instructions, statements, and computer programs are the
@@ -81,7 +81,7 @@ directory to write to.</p>
<p>In addition, some operating systems provide additional security mechanisms
that further limit file system access, even for backends running as root. On
-Mac OS X, for example, no backend may write to a user's home directory.</p>
+OS X, for example, no backend may write to a user's home directory.</p>
</blockquote>
<h3><a name="SIGNALS">Canceled Jobs and Signal Handling</a></h3>
@@ -153,7 +153,7 @@ when running print filters and backends:</p>
<dt>APPLE_LANGUAGE</dt>
<dd>The Apple language identifier associated with the job
- (Mac OS X only).</dd>
+ (OS X only).</dd>
<dt>CHARSET</dt>
<dd>The job character set, typically "utf-8".</dd>
@@ -474,7 +474,7 @@ sub-state and not an issue that applies when a job is not printing.</p>
<blockquote><b>Note:</b>
<p>"STATE:" messages often provide visible alerts to the user. For example,
-on Mac OS X setting a printer-state-reason value with an "-error" or
+on OS X setting a printer-state-reason value with an "-error" or
"-warning" suffix will cause the printer's dock item to bounce if the
corresponding reason is localized with a cupsIPPReason keyword in the
printer's PPD file.</p>
diff --git a/cups/api-httpipp.shtml b/cups/api-httpipp.shtml
index 484c00da..a7217a5f 100644
--- a/cups/api-httpipp.shtml
+++ b/cups/api-httpipp.shtml
@@ -1,9 +1,9 @@
<!--
- "$Id: api-httpipp.shtml 9727 2011-04-28 21:20:12Z mike $"
+ "$Id: api-httpipp.shtml 10388 2012-03-26 21:15:41Z mike $"
HTTP and IPP API introduction for CUPS.
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2006 by Easy Software Products, all rights reserved.
These coded instructions, statements, and computer programs are the
@@ -29,35 +29,20 @@ The constant <code>CUPS_HTTP_DEFAULT</code> can be used with all of the
<code>cups</code> functions to refer to the default CUPS server - the functions
create a per-thread <a href='#http_t'><code>http_t</code></a> as needed.</p>
-<p>The IPP APIs use two structures for requests (messages sent to the CUPS
-scheduler) and responses (messages sent back to your application from the
-scheduler). The <a href='#ipp_t'><code>ipp_t</code></a> structure holds a
-complete request or response and is allocated using the
-<a href='#ippNew'><code>ippNew</code></a> or
-<a href='#ippNewRequest'><code>ippNewRequest</code></a> functions and
-freed using the <a href='#ippDelete'><code>ippDelete</code></a> function.</p>
-
-<p>The second structure is called
-<a href='#ipp_attribute_t'><code>ipp_attribute_t</code></a> and holds a
-single IPP attribute which consists of a group tag (<code>group_tag</code>), a
-value type tag (<code>value_tag</code>), the attribute name (<code>name</code>),
-and 1 or more values (<code>values[]</code>). Attributes are added to an
-<a href='#ipp_t'><code>ipp_t</code></a> structure using one of the
-<code>ippAdd</code> functions. For example, use
-<a href='#ippAddString'><code>ippAddString</code></a> to add a
-"requesting-user-name" string attribute to a request:</p>
+<p>The IPP APIs use two opaque structures for requests (messages sent to the CUPS scheduler) and responses (messages sent back to your application from the scheduler). The <a href='#ipp_t'><code>ipp_t</code></a> type holds a complete request or response and is allocated using the <a href='#ippNew'><code>ippNew</code></a> or <a href='#ippNewRequest'><code>ippNewRequest</code></a> functions and freed using the <a href='#ippDelete'><code>ippDelete</code></a> function.</p>
+
+<p>The second opaque structure is called <a href='#ipp_attribute_t'><code>ipp_attribute_t</code></a> and holds a single IPP attribute which consists of a group tag (<a href='#ippGetGroupTag'><code>ippGetGroupTag</code></a>), a value type tag (<a href='#ippGetValueTag'><code>ippGetValueTag</code></a>), the attribute name (<a href='#ippGetName'><code>ippGetName</code></a>), and 1 or more values (<a href='#ippGetCount'><code>ippGetCount</code></a>, <a href='#ippGetBoolean'><code>ippGetBoolean</code></a>, <a href='#ippGetCollection'><code>ippGetCollection</code></a>, <a href='#ippGetDate'><code>ippGetDate</code></a>, <a href='#ippGetInteger'><code>ippGetInteger</code></a>, <a href='#ippGetRange'><code>ippGetRange</code></a>, <a href='#ippGetResolution'><code>ippGetResolution</code></a>, and <a href='#ippGetString'><code>ippGetString</code></a>). Attributes are added to an <a href='#ipp_t'><code>ipp_t</code></a> pointer using one of the <code>ippAdd</code> functions. For example, use <a href='#ippAddString'><code>ippAddString</code></a> to add the "printer-uri" and "requesting-user-name" string attributes to a request:</p>
<pre class='example'>
<a href='#ipp_t'>ipp_t</a> *request = <a href='#ippNewRequest'>ippNewRequest</a>(IPP_GET_JOBS);
+<a href='#ippAddString'>ippAddString</a>(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
+ NULL, "ipp://localhost/printers/");
<a href='#ippAddString'>ippAddString</a>(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name",
NULL, cupsUser());
</pre>
-<p>Once you have created an IPP request, use the <code>cups</code>
-functions to send the request to and read the response from the server.
-For example, the <a href='#cupsDoRequest'><code>cupsDoRequest</code></a>
-function can be used for simple query operations that do not involve files:</p>
+<p>Once you have created an IPP request, use the <code>cups</code> functions to send the request to and read the response from the server. For example, the <a href='#cupsDoRequest'><code>cupsDoRequest</code></a> function can be used for simple query operations that do not involve files:</p>
<pre class='example'>
#include &lt;cups/cups.h&gt;
@@ -67,6 +52,8 @@ function can be used for simple query operations that do not involve files:</p>
{
<a href='#ipp_t'>ipp_t</a> *request = <a href='#ippNewRequest'>ippNewRequest</a>(IPP_GET_JOBS);
+ <a href='#ippAddString'>ippAddString</a>(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
+ NULL, "ipp://localhost/printers/");
<a href='#ippAddString'>ippAddString</a>(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name",
NULL, cupsUser());
@@ -74,13 +61,7 @@ function can be used for simple query operations that do not involve files:</p>
}
</pre>
-<p>The <a href='#cupsDoRequest'><code>cupsDoRequest</code></a> function frees
-the request structure and returns an IPP response structure or NULL pointer if
-the request could not be sent to the server. Once you have a response from
-the server, you can either use the
-<a href='#ippFindAttribute'><code>ippFindAttribute</code></a> and
-<a href='#ippFindNextAttribute'><code>ippFindNextAttribute</code></a> functions
-to find specific attributes, for example:</p>
+<p>The <a href='#cupsDoRequest'><code>cupsDoRequest</code></a> function frees the request and returns an IPP response or <code>NULL</code> pointer if the request could not be sent to the server. Once you have a response from the server, you can either use the <a href='#ippFindAttribute'><code>ippFindAttribute</code></a> and <a href='#ippFindNextAttribute'><code>ippFindNextAttribute</code></a> functions to find specific attributes, for example:</p>
<pre class='example'>
<a href='#ipp_t'>ipp_t</a> *response;
@@ -89,25 +70,20 @@ to find specific attributes, for example:</p>
attr = <a href='#ippFindAttribute'>ippFindAttribute</a>(response, "printer-state", IPP_TAG_ENUM);
</pre>
-<p>You can also walk the list of attributes with a simple <code>for</code> loop
-like this:</p>
+<p>You can also walk the list of attributes with a simple <code>for</code> loop like this:</p>
<pre class='example'>
<a href='#ipp_t'>ipp_t</a> *response;
<a href='#ipp_attribute_t'>ipp_attribute_t</a> *attr;
-for (attr = response->attrs; attr != NULL; attr = attr->next)
- if (attr->name == NULL)
+for (attr = <a href='#ippFirstAttribute'>ippFirstAttribute</a>(response); attr != NULL; attr = <a href='#ippNextAttribute'>ippNextAttribute</a>(response))
+ if (ippGetName(attr) == NULL)
puts("--SEPARATOR--");
else
- puts(attr->name);
+ puts(ippGetName(attr));
</pre>
-<p>The <code>for</code> loop approach is normally used when collecting
-attributes for multiple objects (jobs, printers, etc.) in a response. Attributes
-with <code>NULL</code> names indicate a separator between the attributes of
-each object. For example, the following code will list the jobs returned from
-our previous <a href='#get_jobs'><code>get_jobs</code></a> example code:</p>
+<p>The <code>for</code> loop approach is normally used when collecting attributes for multiple objects (jobs, printers, etc.) in a response. Attributes with <code>NULL</code> names indicate a separator between the attributes of each object. For example, the following code will list the jobs returned from our previous <a href='#get_jobs'><code>get_jobs</code></a> example code:</p>
<pre class='example'>
<a href='#ipp_t'>ipp_t</a> *response = <a href='#get_jobs'>get_jobs</a>();
@@ -115,37 +91,55 @@ our previous <a href='#get_jobs'><code>get_jobs</code></a> example code:</p>
if (response != NULL)
{
<a href='#ipp_attribute_t'>ipp_attribute_t</a> *attr;
+ const char *attrname;
int job_id = 0;
- char *job_name = NULL;
- char *job_originating_user_name = NULL;
+ const char *job_name = NULL;
+ const char *job_originating_user_name = NULL;
puts("Job ID Owner Title");
puts("------ ---------------- ---------------------------------");
- for (attr = response->attrs; attr != NULL; attr = attr->next)
+ for (attr = <a href='#ippFirstAttribute'>ippFirstAttribute</a>(response); attr != NULL; attr = <a href='#ippNextAttribute'>ippNextAttribute</a>(response))
{
/* Attributes without names are separators between jobs */
- if (attr->name == NULL)
+ attrname = ippGetName(attr);
+ if (attrname == NULL)
{
- if (job_id > 0 &amp;&amp; job_name != NULL &amp;&amp; job_originating_user_name != NULL)
+ if (job_id > 0)
+ {
+ if (job_name == NULL)
+ job_name = "(withheld)";
+
+ if (job_originating_user_name == NULL)
+ job_originating_user_name = "(withheld)";
+
printf("%5d %-16s %s\n", job_id, job_originating_user_name, job_name);
+ }
job_id = 0;
job_name = NULL;
job_originating_user_name = NULL;
continue;
}
- else if (!strcmp(attr->name, "job-id") &amp;&amp; attr->value_tag == IPP_TAG_INTEGER)
- job_id = attr->values[0].integer;
- else if (!strcmp(attr->name, "job-name") &amp;&amp; attr->value_tag == IPP_TAG_NAME)
- job_name = attr->values[0].string.text;
- else if (!strcmp(attr->name, "job-originating-user-name") &amp;&amp;
- attr->value_tag == IPP_TAG_NAME)
- job_originating_user_name = attr->values[0].string.text;
+ else if (!strcmp(attrname, "job-id") &amp;&amp; ippGetValueTag(attr) == IPP_TAG_INTEGER)
+ job_id = ippGetInteger(attr, 0);
+ else if (!strcmp(attrname, "job-name") &amp;&amp; ippGetValueTag(attr) == IPP_TAG_NAME)
+ job_name = ippGetString(attr, 0, NULL);
+ else if (!strcmp(attrname, "job-originating-user-name") &amp;&amp;
+ ippGetValueTag(attr) == IPP_TAG_NAME)
+ job_originating_user_name = ippGetString(attr, 0, NULL);
}
- if (job_id > 0 &amp;&amp; job_name != NULL &amp;&amp; job_originating_user_name != NULL)
+ if (job_id > 0)
+ {
+ if (job_name == NULL)
+ job_name = "(withheld)";
+
+ if (job_originating_user_name == NULL)
+ job_originating_user_name = "(withheld)";
+
printf("%5d %-16s %s\n", job_id, job_originating_user_name, job_name);
+ }
}
</pre>
diff --git a/cups/api-ppd.header b/cups/api-ppd.header
index 2dfcb564..62d0a2b3 100644
--- a/cups/api-ppd.header
+++ b/cups/api-ppd.header
@@ -1,9 +1,9 @@
<!--
- "$Id: api-ppd.header 9771 2011-05-12 05:21:56Z mike $"
+ "$Id: api-ppd.header 10424 2012-04-23 17:26:57Z mike $"
PPD API header for CUPS.
- Copyright 2008-2011 by Apple Inc.
+ Copyright 2008-2012 by Apple Inc.
These coded instructions, statements, and computer programs are the
property of Apple Inc. and are protected by Federal copyright
@@ -12,7 +12,9 @@
file is missing or damaged, see the license at "http://www.cups.org/".
-->
-<h1 class='title'>PPD API</h1>
+<h1 class='title'>PPD API (DEPRECATED)</h1>
+
+<blockquote>The PPD API is deprecated starting in CUPS 1.6/OS X 10.8. Please use the new Job Ticket APIs in the <a href="api-cups.html">CUPS API</a> documentation. These functions will be removed in a future release of CUPS.</blockquote>
<div class='summary'><table summary='General Information'>
<thead>
diff --git a/cups/api-ppd.shtml b/cups/api-ppd.shtml
index e9beb9b0..9b2a84f9 100644
--- a/cups/api-ppd.shtml
+++ b/cups/api-ppd.shtml
@@ -1,9 +1,9 @@
<!--
- "$Id: api-ppd.shtml 9727 2011-04-28 21:20:12Z mike $"
+ "$Id: api-ppd.shtml 10424 2012-04-23 17:26:57Z mike $"
PPD API introduction for CUPS.
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2006 by Easy Software Products, all rights reserved.
These coded instructions, statements, and computer programs are the
@@ -15,6 +15,8 @@
<h2 class='title'><a name='OVERVIEW'>Overview</a></h2>
+<blockquote>The PPD API is deprecated starting in CUPS 1.6/OS X 10.8. Please use the new Job Ticket APIs in the <a href="api-cups.html">CUPS API</a> documentation. These functions will be removed in a future release of CUPS.</blockquote>
+
<p>The CUPS PPD API provides read-only access the data in PostScript Printer
Description ("PPD") files which are used for all printers with a driver. With
it you can obtain the data necessary to display printer options to users, mark
diff --git a/cups/array-private.h b/cups/array-private.h
index b1348e71..453aa128 100644
--- a/cups/array-private.h
+++ b/cups/array-private.h
@@ -1,5 +1,5 @@
/*
- * "$Id: array-private.h 10035 2011-09-30 22:52:42Z mike $"
+ * "$Id: array-private.h 10034 2011-09-30 22:52:35Z mike $"
*
* Private array definitions for CUPS.
*
@@ -47,5 +47,5 @@ extern cups_array_t *_cupsArrayNewStrings(const char *s) _CUPS_API_1_5;
#endif /* !_CUPS_ARRAY_PRIVATE_H_ */
/*
- * End of "$Id: array-private.h 10035 2011-09-30 22:52:42Z mike $".
+ * End of "$Id: array-private.h 10034 2011-09-30 22:52:35Z mike $".
*/
diff --git a/cups/array.c b/cups/array.c
index 3ae71e3a..cc8fbd02 100644
--- a/cups/array.c
+++ b/cups/array.c
@@ -1,9 +1,9 @@
/*
- * "$Id: array.c 9772 2011-05-12 05:46:30Z mike $"
+ * "$Id: array.c 10424 2012-04-23 17:26:57Z mike $"
*
* Sorted array routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -110,7 +110,7 @@ static int cups_array_find(cups_array_t *a, void *e, int prev, int *rdiff);
* appended at the end of the run of identical elements. For unsorted arrays,
* the element is appended to the end of the array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 1 on success, 0 on failure */
@@ -202,7 +202,7 @@ _cupsArrayAddStrings(cups_array_t *a, /* I - Array */
* The caller is responsible for freeing the memory used by the
* elements themselves.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void
@@ -244,7 +244,7 @@ cupsArrayClear(cups_array_t *a) /* I - Array */
/*
* 'cupsArrayCount()' - Get the number of elements in the array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - Number of elements */
@@ -271,7 +271,7 @@ cupsArrayCount(cups_array_t *a) /* I - Array */
* The current element is undefined until you call @link cupsArrayFind@,
* @link cupsArrayFirst@, or @link cupsArrayIndex@, or @link cupsArrayLast@.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void * /* O - Element */
@@ -301,7 +301,7 @@ cupsArrayCurrent(cups_array_t *a) /* I - Array */
* The caller is responsible for freeing the memory used by the
* elements themselves.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void
@@ -345,7 +345,7 @@ cupsArrayDelete(cups_array_t *a) /* I - Array */
/*
* 'cupsArrayDup()' - Duplicate the array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_array_t * /* O - Duplicate array */
@@ -430,7 +430,7 @@ cupsArrayDup(cups_array_t *a) /* I - Array */
/*
* 'cupsArrayFind()' - Find an element in the array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void * /* O - Element found or @code NULL@ */
@@ -525,7 +525,7 @@ cupsArrayFind(cups_array_t *a, /* I - Array */
/*
* 'cupsArrayFirst()' - Get the first element in the array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void * /* O - First element or @code NULL@ if the array is empty */
@@ -554,7 +554,7 @@ cupsArrayFirst(cups_array_t *a) /* I - Array */
* The current element is undefined until you call @link cupsArrayFind@,
* @link cupsArrayFirst@, or @link cupsArrayIndex@, or @link cupsArrayLast@.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
int /* O - Index of the current element, starting at 0 */
@@ -570,7 +570,7 @@ cupsArrayGetIndex(cups_array_t *a) /* I - Array */
/*
* 'cupsArrayGetInsert()' - Get the index of the last inserted element.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
int /* O - Index of the last inserted element, starting at 0 */
@@ -586,7 +586,7 @@ cupsArrayGetInsert(cups_array_t *a) /* I - Array */
/*
* 'cupsArrayIndex()' - Get the N-th element in the array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void * /* O - N-th element or @code NULL@ */
@@ -609,7 +609,7 @@ cupsArrayIndex(cups_array_t *a, /* I - Array */
* inserted at the beginning of the run of identical elements. For unsorted
* arrays, the element is inserted at the beginning of the array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 0 on failure, 1 on success */
@@ -639,7 +639,7 @@ cupsArrayInsert(cups_array_t *a, /* I - Array */
/*
* 'cupsArrayLast()' - Get the last element in the array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void * /* O - Last element or @code NULL@ if the array is empty */
@@ -670,7 +670,7 @@ cupsArrayLast(cups_array_t *a) /* I - Array */
* data pointer argument can safely be omitted when not required so functions
* like @code strcmp@ can be used for sorted string arrays.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_array_t * /* O - Array */
@@ -692,7 +692,7 @@ cupsArrayNew(cups_array_func_t f, /* I - Comparison function or @code NULL@ for
* The hash function ("h") is used to implement cached lookups with the
* specified hash size ("hsize").
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
cups_array_t * /* O - Array */
@@ -722,7 +722,7 @@ cupsArrayNew2(cups_array_func_t f, /* I - Comparison function or @code NULL@ fo
* The free function ("cf") is used to automatically free/release elements when
* removed or the array is deleted.
*
- * @since CUPS 1.5/Mac OS X 10.7@
+ * @since CUPS 1.5/OS X 10.7@
*/
cups_array_t * /* O - Array */
@@ -805,7 +805,7 @@ _cupsArrayNewStrings(const char *s) /* I - Comma-delimited strings or NULL */
* @link cupsArrayFirst@, or @link cupsArrayIndex@, or @link cupsArrayLast@
* to set the current element.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void * /* O - Next element or @code NULL@ */
@@ -838,7 +838,7 @@ cupsArrayNext(cups_array_t *a) /* I - Array */
* @link cupsArrayFirst@, or @link cupsArrayIndex@, or @link cupsArrayLast@
* to set the current element.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void * /* O - Previous element or @code NULL@ */
@@ -871,7 +871,7 @@ cupsArrayPrev(cups_array_t *a) /* I - Array */
* The caller is responsible for freeing the memory used by the
* removed element.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 1 on success, 0 on failure */
@@ -936,7 +936,7 @@ cupsArrayRemove(cups_array_t *a, /* I - Array */
/*
* 'cupsArrayRestore()' - Reset the current element to the last @link cupsArraySave@.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void * /* O - New current element */
@@ -967,7 +967,7 @@ cupsArrayRestore(cups_array_t *a) /* I - Array */
*
* The save/restore stack is guaranteed to be at least 32 elements deep.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 1 on success, 0 on failure */
@@ -989,7 +989,7 @@ cupsArraySave(cups_array_t *a) /* I - Array */
/*
* 'cupsArrayUserData()' - Return the user data for an array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void * /* O - User data */
@@ -1005,7 +1005,7 @@ cupsArrayUserData(cups_array_t *a) /* I - Array */
/*
* 'cups_array_add()' - Insert or append an element to the array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
static int /* O - 1 on success, 0 on failure */
@@ -1322,5 +1322,5 @@ cups_array_find(cups_array_t *a, /* I - Array */
/*
- * End of "$Id: array.c 9772 2011-05-12 05:46:30Z mike $".
+ * End of "$Id: array.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/attr.c b/cups/attr.c
index ec00ac4b..ebd41059 100644
--- a/cups/attr.c
+++ b/cups/attr.c
@@ -1,9 +1,9 @@
/*
- * "$Id: attr.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: attr.c 10424 2012-04-23 17:26:57Z mike $"
*
* PPD model-specific attribute routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -30,7 +30,7 @@
/*
* 'ppdFindAttr()' - Find the first matching attribute.
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
ppd_attr_t * /* O - Attribute or @code NULL@ if not found */
@@ -87,7 +87,7 @@ ppdFindAttr(ppd_file_t *ppd, /* I - PPD file data */
/*
* 'ppdFindNextAttr()' - Find the next matching attribute.
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
ppd_attr_t * /* O - Attribute or @code NULL@ if not found */
@@ -331,5 +331,5 @@ _ppdNormalizeMakeAndModel(
/*
- * End of "$Id: attr.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: attr.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/auth.c b/cups/auth.c
index f2fa373a..b60b37ad 100644
--- a/cups/auth.c
+++ b/cups/auth.c
@@ -1,9 +1,9 @@
/*
- * "$Id: auth.c 10288 2012-02-15 19:21:37Z mike $"
+ * "$Id: auth.c 10424 2012-04-23 17:26:57Z mike $"
*
* Authentication functions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* This file contains Kerberos support code, copyright 2006 by
@@ -115,7 +115,7 @@ static int cups_local_auth(http_t *http);
* This function should be called in response to a @code HTTP_UNAUTHORIZED@
* status, prior to resubmitting your request.
*
- * @since CUPS 1.1.20/Mac OS X 10.4@
+ * @since CUPS 1.1.20/OS X 10.4@
*/
int /* O - 0 on success, -1 on error */
@@ -876,5 +876,5 @@ cups_local_auth(http_t *http) /* I - HTTP connection to server */
/*
- * End of "$Id: auth.c 10288 2012-02-15 19:21:37Z mike $".
+ * End of "$Id: auth.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/backchannel.c b/cups/backchannel.c
index bcc4331a..d5b5f82a 100644
--- a/cups/backchannel.c
+++ b/cups/backchannel.c
@@ -1,9 +1,9 @@
/*
- * "$Id: backchannel.c 9042 2010-03-24 00:45:34Z mike $"
+ * "$Id: backchannel.c 10424 2012-04-23 17:26:57Z mike $"
*
* Backchannel functions for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -18,7 +18,7 @@
*
* cupsBackChannelRead() - Read data from the backchannel.
* cupsBackChannelWrite() - Write data to the backchannel.
- * cups_setup() - Setup select()
+ * cups_setup() - Setup select()
*/
/*
@@ -50,7 +50,7 @@ static void cups_setup(fd_set *set, struct timeval *tval,
* parameter controls how many seconds to wait for the data - use 0.0 to
* return immediately if there is no data, -1.0 to wait for data indefinitely.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ssize_t /* O - Bytes read or -1 on error */
@@ -101,7 +101,7 @@ cupsBackChannelRead(char *buffer, /* I - Buffer to read into */
* 0.0 to return immediately if the data cannot be written, -1.0 to wait
* indefinitely.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ssize_t /* O - Bytes written or -1 on error */
@@ -178,7 +178,7 @@ cupsBackChannelWrite(
/*
- * 'cups_setup()' - Setup select()
+ * 'cups_setup()' - Setup select()
*/
static void
@@ -195,5 +195,5 @@ cups_setup(fd_set *set, /* I - Set for select() */
/*
- * End of "$Id: backchannel.c 9042 2010-03-24 00:45:34Z mike $".
+ * End of "$Id: backchannel.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/backend.c b/cups/backend.c
index 49c396e5..45cf60e4 100644
--- a/cups/backend.c
+++ b/cups/backend.c
@@ -1,5 +1,5 @@
/*
- * "$Id: backend.c 10207 2012-01-30 21:50:42Z mike $"
+ * "$Id: backend.c 10437 2012-04-23 22:20:09Z mike $"
*
* Backend functions for CUPS.
*
@@ -44,7 +44,7 @@ static void quote_string(const char *s);
* variable or the device URI passed in argv[0], whichever is found
* first.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
const char * /* O - Device URI or @code NULL@ */
@@ -54,6 +54,8 @@ cupsBackendDeviceURI(char **argv) /* I - Command-line arguments */
*auth_info_required; /* AUTH_INFO_REQUIRED env var */
_cups_globals_t *cg = _cupsGlobals(); /* Global info */
int options; /* Resolve options */
+ ppd_file_t *ppd; /* PPD file */
+ ppd_attr_t *ppdattr; /* PPD attribute */
if ((device_uri = getenv("DEVICE_URI")) == NULL)
@@ -69,6 +71,15 @@ cupsBackendDeviceURI(char **argv) /* I - Command-line arguments */
!strcmp(auth_info_required, "negotiate"))
options |= _HTTP_RESOLVE_FQDN;
+ if ((ppd = ppdOpenFile(getenv("PPD"))) != NULL)
+ {
+ if ((ppdattr = ppdFindAttr(ppd, "cupsIPPFaxOut", NULL)) != NULL &&
+ !_cups_strcasecmp(ppdattr->value, "true"))
+ options |= _HTTP_RESOLVE_FAXOUT;
+
+ ppdClose(ppd);
+ }
+
return (_httpResolveURI(device_uri, cg->resolved_uri,
sizeof(cg->resolved_uri), options, NULL, NULL));
}
@@ -81,7 +92,7 @@ cupsBackendDeviceURI(char **argv) /* I - Command-line arguments */
* It handles quoting of special characters in the device-make-and-model,
* device-info, device-id, and device-location strings.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
void
@@ -139,5 +150,5 @@ quote_string(const char *s) /* I - String to write */
/*
- * End of "$Id: backend.c 10207 2012-01-30 21:50:42Z mike $".
+ * End of "$Id: backend.c 10437 2012-04-23 22:20:09Z mike $".
*/
diff --git a/cups/conflicts.c b/cups/conflicts.c
index bc6bdc01..72dde337 100644
--- a/cups/conflicts.c
+++ b/cups/conflicts.c
@@ -1,9 +1,9 @@
/*
- * "$Id: conflicts.c 9829 2011-06-14 21:01:39Z mike $"
+ * "$Id: conflicts.c 10424 2012-04-23 17:26:57Z mike $"
*
* Option marking routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -79,7 +79,7 @@ static cups_array_t *ppd_test_constraints(ppd_file_t *ppd,
* the conflicting options. The returned option array must be freed using
* @link cupsFreeOptions@.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
int /* O - Number of conflicting options */
@@ -178,7 +178,7 @@ cupsGetConflicts(
* choice for the conflicting option, then iterating over all possible choices
* until a non-conflicting option choice is found.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
int /* O - 1 on success, 0 on failure */
@@ -650,7 +650,7 @@ ppdConflicts(ppd_file_t *ppd) /* I - PPD to check */
* This function tests whether a particular option choice is available based
* on constraints against options in the "InstallableOptions" group.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
int /* O - 1 if conflicting, 0 if not conflicting */
@@ -1210,5 +1210,5 @@ ppd_test_constraints(
/*
- * End of "$Id: conflicts.c 9829 2011-06-14 21:01:39Z mike $".
+ * End of "$Id: conflicts.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/cups-private.h b/cups/cups-private.h
index 5696e6b8..03dae571 100644
--- a/cups/cups-private.h
+++ b/cups/cups-private.h
@@ -1,9 +1,9 @@
/*
- * "$Id: cups-private.h 9734 2011-05-02 23:33:49Z mike $"
+ * "$Id: cups-private.h 10504 2012-05-23 18:20:42Z mike $"
*
* Private definitions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -22,15 +22,15 @@
* Include necessary headers...
*/
-# include <cups/cups.h>
# include "string-private.h"
# include "debug-private.h"
-# include "ppd-private.h"
-# include "http-private.h"
# include "ipp-private.h"
+# include "http-private.h"
# include "language-private.h"
# include "pwg-private.h"
+# include "ppd-private.h"
# include "thread-private.h"
+# include <cups/cups.h>
# ifdef __APPLE__
# include <sys/cdefs.h>
# include <CoreFoundation/CoreFoundation.h>
@@ -50,6 +50,14 @@ extern "C" {
* Types...
*/
+typedef struct _cups_buffer_s /**** Read/write buffer ****/
+{
+ struct _cups_buffer_s *next; /* Next buffer in list */
+ size_t size; /* Size of buffer */
+ char used, /* Is this buffer used? */
+ d[1]; /* Data buffer */
+} _cups_buffer_t;
+
typedef struct _cups_globals_s /**** CUPS global state data ****/
{
/* Multiple places... */
@@ -95,7 +103,7 @@ typedef struct _cups_globals_s /**** CUPS global state data ****/
/* ipp.c */
ipp_uchar_t ipp_date[11]; /* RFC-1903 date/time data */
- _ipp_buffer_t *ipp_buffers; /* Buffer list */
+ _cups_buffer_t *cups_buffers; /* Buffer list */
/* ipp-support.c */
int ipp_port; /* IPP port number */
@@ -138,7 +146,8 @@ typedef struct _cups_globals_s /**** CUPS global state data ****/
http_encryption_t encryption; /* Encryption setting */
char user[65], /* User name */
server[256], /* Server address */
- servername[256];/* Server hostname */
+ servername[256],/* Server hostname */
+ password[128]; /* Password for default callback */
cups_password_cb2_t password_cb; /* Password callback */
void *password_data; /* Password user data */
http_tls_credentials_t tls_credentials;
@@ -160,6 +169,49 @@ typedef struct _cups_globals_s /**** CUPS global state data ****/
/* PPD filename */
} _cups_globals_t;
+typedef struct _cups_media_db_s /* Media database */
+{
+ char *color, /* Media color, if any */
+ *key, /* Media key, if any */
+ *info, /* Media human-readable name, if any */
+ *size_name, /* Media PWG size name, if provided */
+ *source, /* Media source, if any */
+ *type; /* Media type, if any */
+ int width, /* Width in hundredths of millimeters */
+ length, /* Length in hundredths of
+ * millimeters */
+ bottom, /* Bottom margin in hundredths of
+ * millimeters */
+ left, /* Left margin in hundredths of
+ * millimeters */
+ right, /* Right margin in hundredths of
+ * millimeters */
+ top; /* Top margin in hundredths of
+ * millimeters */
+} _cups_media_db_t;
+
+typedef struct _cups_dconstres_s /* Constraint/resolver */
+{
+ char *name; /* Name of resolver */
+ ipp_t *collection; /* Collection containing attrs */
+} _cups_dconstres_t;
+
+struct _cups_dinfo_s /* Destination capability and status
+ * information */
+{
+ const char *uri; /* Printer URI */
+ char *resource; /* Resource path */
+ ipp_t *attrs; /* Printer attributes */
+ int num_defaults; /* Number of default options */
+ cups_option_t *defaults; /* Default options */
+ cups_array_t *constraints; /* Job constraints */
+ cups_array_t *resolvers; /* Job resolvers */
+ cups_array_t *localizations; /* Localization information */
+ cups_array_t *media_db; /* Media database */
+ _cups_media_db_t min_size, /* Minimum size */
+ max_size; /* Maximum size */
+};
+
/*
* Prototypes...
@@ -174,11 +226,17 @@ extern void _cupsAppleSetDefaultPrinter(CFStringRef name);
extern void _cupsAppleSetUseLastPrinter(int uselast);
# endif /* __APPLE__ */
+extern char *_cupsBufferGet(size_t size);
+extern void _cupsBufferRelease(char *b);
+
extern http_t *_cupsConnect(void);
extern int _cupsGet1284Values(const char *device_id,
cups_option_t **values);
+extern const char *_cupsGetDestResource(cups_dest_t *dest, char *resource,
+ size_t resourcesize);
extern int _cupsGetDests(http_t *http, ipp_op_t op,
- const char *name, cups_dest_t **dests);
+ const char *name, cups_dest_t **dests,
+ cups_ptype_t type, cups_ptype_t mask);
extern const char *_cupsGetPassword(const char *prompt);
extern void _cupsGlobalLock(void);
extern _cups_globals_t *_cupsGlobals(void);
@@ -209,5 +267,5 @@ extern char *_cupsUserDefault(char *name, size_t namesize);
#endif /* !_CUPS_CUPS_PRIVATE_H_ */
/*
- * End of "$Id: cups-private.h 9734 2011-05-02 23:33:49Z mike $".
+ * End of "$Id: cups-private.h 10504 2012-05-23 18:20:42Z mike $".
*/
diff --git a/cups/cups.h b/cups/cups.h
index 42a5b899..0718db6f 100644
--- a/cups/cups.h
+++ b/cups/cups.h
@@ -1,9 +1,9 @@
/*
- * "$Id: cups.h 10466 2012-05-15 14:21:57Z mike $"
+ * "$Id: cups.h 10424 2012-04-23 17:26:57Z mike $"
*
* API definitions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -30,24 +30,16 @@
typedef off_t ssize_t; /* @private@ */
# endif /* WIN32 && !__CUPS_SSIZE_T_DEFINED */
+# ifdef __BLOCKS__
+# include <dispatch/dispatch.h>
+# endif /* __BLOCKS__ */
+
# include "file.h"
# include "ipp.h"
# include "language.h"
/*
- * With GCC 3.0 and higher, we can mark old APIs "deprecated" so you get
- * a warning at compile-time.
- */
-
-# if defined(__GNUC__) && __GNUC__ > 2
-# define _CUPS_DEPRECATED __attribute__ ((__deprecated__))
-# else
-# define _CUPS_DEPRECATED
-# endif /* __GNUC__ && __GNUC__ > 2 */
-
-
-/*
* C++ magic...
*/
@@ -60,37 +52,160 @@ extern "C" {
* Constants...
*/
-# define CUPS_VERSION 1.0504
-# define CUPS_VERSION_MAJOR 1
-# define CUPS_VERSION_MINOR 5
-# define CUPS_VERSION_PATCH 4
-
-# define CUPS_BC_FD 3 /* Back-channel file descriptor for select/poll */
-# define CUPS_DATE_ANY (time_t)-1
-# define CUPS_EXCLUDE_NONE (const char *)0
-# define CUPS_FORMAT_AUTO "application/octet-stream"
-# define CUPS_FORMAT_COMMAND "application/vnd.cups-command"
-# define CUPS_FORMAT_PDF "application/pdf"
-# define CUPS_FORMAT_POSTSCRIPT "application/postscript"
-# define CUPS_FORMAT_RAW "application/vnd.cups-raw"
-# define CUPS_FORMAT_TEXT "text/plain"
-# define CUPS_HTTP_DEFAULT (http_t *)0
-# define CUPS_INCLUDE_ALL (const char *)0
-# define CUPS_JOBID_ALL -1
-# define CUPS_JOBID_CURRENT 0
-# define CUPS_LENGTH_VARIABLE (ssize_t)0
-# define CUPS_TIMEOUT_DEFAULT 0
-# define CUPS_WHICHJOBS_ALL -1
-# define CUPS_WHICHJOBS_ACTIVE 0
-# define CUPS_WHICHJOBS_COMPLETED 1
+# define CUPS_VERSION 1.0600
+# define CUPS_VERSION_MAJOR 1
+# define CUPS_VERSION_MINOR 6
+# define CUPS_VERSION_PATCH 0
+
+# define CUPS_BC_FD 3
+ /* Back-channel file descriptor for
+ * select/poll */
+# define CUPS_DATE_ANY (time_t)-1
+# define CUPS_EXCLUDE_NONE (const char *)0
+# define CUPS_FORMAT_AUTO "application/octet-stream"
+# define CUPS_FORMAT_COMMAND "application/vnd.cups-command"
+# define CUPS_FORMAT_JPEG "image/jpeg"
+# define CUPS_FORMAT_PDF "application/pdf"
+# define CUPS_FORMAT_POSTSCRIPT "application/postscript"
+# define CUPS_FORMAT_RAW "application/vnd.cups-raw"
+# define CUPS_FORMAT_TEXT "text/plain"
+# define CUPS_HTTP_DEFAULT (http_t *)0
+# define CUPS_INCLUDE_ALL (const char *)0
+# define CUPS_JOBID_ALL -1
+# define CUPS_JOBID_CURRENT 0
+# define CUPS_LENGTH_VARIABLE (ssize_t)0
+# define CUPS_TIMEOUT_DEFAULT 0
+# define CUPS_WHICHJOBS_ALL -1
+# define CUPS_WHICHJOBS_ACTIVE 0
+# define CUPS_WHICHJOBS_COMPLETED 1
+
+/* Flags for cupsConnectDest and cupsEnumDests */
+# define CUPS_DEST_FLAGS_NONE 0x00
+ /* No flags are set */
+# define CUPS_DEST_FLAGS_UNCONNECTED 0x01
+ /* There is not connection */
+# define CUPS_DEST_FLAGS_MORE 0x02
+ /* There are more destinations */
+# define CUPS_DEST_FLAGS_REMOVED 0x04
+ /* The destination has gone away */
+# define CUPS_DEST_FLAGS_ERROR 0x08
+ /* An error occurred */
+# define CUPS_DEST_FLAGS_RESOLVING 0x10
+ /* The destination address is being
+ * resolved */
+# define CUPS_DEST_FLAGS_CONNECTING 0x20
+ /* A connection is being established */
+# define CUPS_DEST_FLAGS_CANCELED 0x40
+ /* Operation was canceled */
+
+/* Flags for cupsGetDestMediaByName/Size */
+# define CUPS_MEDIA_FLAGS_DEFAULT 0x00
+ /* Find the closest size supported by
+ * the printer */
+# define CUPS_MEDIA_FLAGS_BORDERLESS 0x01
+ /* Find a borderless size */
+# define CUPS_MEDIA_FLAGS_DUPLEX 0x02
+ /* Find a size compatible with 2-sided
+ * printing */
+# define CUPS_MEDIA_FLAGS_EXACT 0x04
+ /* Find an exact match for the size */
+# define CUPS_MEDIA_FLAGS_READY 0x08
+ /* If the printer supports media
+ * sensing, find the size amongst the
+ * "ready" media. */
+
+/* Options and values */
+# define CUPS_COPIES "copies"
+# define CUPS_COPIES_SUPPORTED "copies-supported"
+
+# define CUPS_FINISHINGS "finishings"
+# define CUPS_FINISHINGS_SUPPORTED "finishings-supported"
+
+# define CUPS_FINISHINGS_BIND "7"
+# define CUPS_FINISHINGS_COVER "6"
+# define CUPS_FINISHINGS_FOLD "10"
+# define CUPS_FINISHINGS_NONE "3"
+# define CUPS_FINISHINGS_PUNCH "5"
+# define CUPS_FINISHINGS_STAPLE "4"
+# define CUPS_FINISHINGS_TRIM "11"
+
+# define CUPS_MEDIA "media"
+# define CUPS_MEDIA_READY "media-ready"
+# define CUPS_MEDIA_SUPPORTED "media-supported"
+
+# define CUPS_MEDIA_3X5 "na_index-3x5_3x5in"
+# define CUPS_MEDIA_4X6 "na_index-4x6_4x6in"
+# define CUPS_MEDIA_5X7 "na_5x7_5x7in"
+# define CUPS_MEDIA_8X10 "na_govt-letter_8x10in"
+# define CUPS_MEDIA_A3 "iso_a3_297x420mm"
+# define CUPS_MEDIA_A4 "iso_a4_210x297mm"
+# define CUPS_MEDIA_A5 "iso_a5_148x210mm"
+# define CUPS_MEDIA_A6 "iso_a6_105x148mm"
+# define CUPS_MEDIA_ENV10 "na_number-10_4.125x9.5in"
+# define CUPS_MEDIA_ENVDL "iso_dl_110x220mm"
+# define CUPS_MEDIA_LEGAL "na_legal_8.5x14in"
+# define CUPS_MEDIA_LETTER "na_letter_8.5x11in"
+# define CUPS_MEDIA_PHOTO_L "oe_photo-l_3.5x5in"
+# define CUPS_MEDIA_SUPERBA3 "na_super-b_13x19in"
+# define CUPS_MEDIA_TABLOID "na_ledger_11x17in"
+
+# define CUPS_MEDIA_SOURCE "media-source"
+# define CUPS_MEDIA_SOURCE_SUPPORTED "media-source-supported"
+
+# define CUPS_MEDIA_SOURCE_AUTO "auto"
+# define CUPS_MEDIA_SOURCE_MANUAL "manual"
+
+# define CUPS_MEDIA_TYPE "media-type"
+# define CUPS_MEDIA_TYPE_SUPPORTED "media-type-supported"
+
+# define CUPS_MEDIA_TYPE_AUTO "auto"
+# define CUPS_MEDIA_TYPE_ENVELOPE "envelope"
+# define CUPS_MEDIA_TYPE_LABELS "labels"
+# define CUPS_MEDIA_TYPE_LETTERHEAD "stationery-letterhead"
+# define CUPS_MEDIA_TYPE_PHOTO "photographic"
+# define CUPS_MEDIA_TYPE_PHOTO_GLOSSY "photographic-glossy"
+# define CUPS_MEDIA_TYPE_PHOTO_MATTE "photographic-matte"
+# define CUPS_MEDIA_TYPE_PLAIN "stationery"
+# define CUPS_MEDIA_TYPE_TRANSPARENCY "transparency"
+
+# define CUPS_NUMBER_UP "number-up"
+# define CUPS_NUMBER_UP_SUPPORTED "number-up-supported"
+
+# define CUPS_ORIENTATION "orientation-requested"
+# define CUPS_ORIENTATION_SUPPORTED "orientation-requested-supported"
+
+# define CUPS_ORIENTATION_PORTRAIT "3"
+# define CUPS_ORIENTATION_LANDSCAPE "4"
+
+# define CUPS_PRINT_COLOR_MODE "print-color-mode"
+# define CUPS_PRINT_COLOR_MODE_SUPPORTED "print-color-mode-supported"
+
+# define CUPS_PRINT_COLOR_MODE_AUTO "auto"
+# define CUPS_PRINT_COLOR_MODE_MONOCHROME "monochrome"
+# define CUPS_PRINT_COLOR_MODE_COLOR "color"
+
+# define CUPS_PRINT_QUALITY "print-quality"
+# define CUPS_PRINT_QUALITY_SUPPORTED "print-quality-supported"
+
+# define CUPS_PRINT_QUALITY_DRAFT "3"
+# define CUPS_PRINT_QUALITY_NORMAL "4"
+# define CUPS_PRINT_QUALITY_HIGH "5"
+
+# define CUPS_SIDES "sides"
+# define CUPS_SIDES_SUPPORTED "sides-supported"
+
+# define CUPS_SIDES_ONE_SIDED "one-sided"
+# define CUPS_SIDES_TWO_SIDED_PORTRAIT "two-sided-long-edge"
+# define CUPS_SIDES_TWO_SIDED_LANDSCAPE "two-sided-short-edge"
/*
* Types and structures...
*/
-typedef unsigned cups_ptype_t; /**** Printer type/capability bits ****/
-enum cups_ptype_e /**** Printer type/capability bit constants ****/
+typedef unsigned cups_ptype_t; /* Printer type/capability bits */
+enum cups_ptype_e /* Printer type/capability bit
+ * constants */
{ /* Not a typedef'd enum so we can OR */
CUPS_PRINTER_LOCAL = 0x0000, /* Local printer or class */
CUPS_PRINTER_CLASS = 0x0001, /* Printer class */
@@ -109,36 +224,32 @@ enum cups_ptype_e /**** Printer type/capability bit constants ****/
CUPS_PRINTER_MEDIUM = 0x2000, /* Can do Tabloid/B/C/A3/A2 */
CUPS_PRINTER_LARGE = 0x4000, /* Can do D/E/A1/A0 */
CUPS_PRINTER_VARIABLE = 0x8000, /* Can do variable sizes */
- CUPS_PRINTER_IMPLICIT = 0x10000, /* Implicit class */
+ CUPS_PRINTER_IMPLICIT = 0x10000, /* Implicit class @private@
+ * @since Deprecated@ */
CUPS_PRINTER_DEFAULT = 0x20000, /* Default printer on network */
CUPS_PRINTER_FAX = 0x40000, /* Fax queue */
CUPS_PRINTER_REJECTING = 0x80000, /* Printer is rejecting jobs */
- CUPS_PRINTER_DELETE = 0x100000, /* Delete printer @since CUPS 1.2/Mac OS X 10.5@ */
- CUPS_PRINTER_NOT_SHARED = 0x200000, /* Printer is not shared @since CUPS 1.2/Mac OS X 10.5@ */
- CUPS_PRINTER_AUTHENTICATED = 0x400000,/* Printer requires authentication @since CUPS 1.2/Mac OS X 10.5@ */
- CUPS_PRINTER_COMMANDS = 0x800000, /* Printer supports maintenance commands @since CUPS 1.2/Mac OS X 10.5@ */
- CUPS_PRINTER_DISCOVERED = 0x1000000, /* Printer was automatically discovered and added @since CUPS 1.3/Mac OS X 10.5@ */
- CUPS_PRINTER_SCANNER = 0x2000000, /* Scanner-only device @since CUPS 1.4/Mac OS X 10.6@ */
- CUPS_PRINTER_MFP = 0x4000000, /* Printer with scanning capabilities @since CUPS 1.4/Mac OS X 10.6@ */
- CUPS_PRINTER_OPTIONS = 0x6fffc /* ~(CLASS | REMOTE | IMPLICIT | DEFAULT | FAX | REJECTING | DELETE | NOT_SHARED | AUTHENTICATED | COMMANDS | DISCOVERED) @private@ */
+ CUPS_PRINTER_DELETE = 0x100000, /* Delete printer
+ * @since CUPS 1.2/OS X 10.5@ */
+ CUPS_PRINTER_NOT_SHARED = 0x200000, /* Printer is not shared
+ * @since CUPS 1.2/OS X 10.5@ */
+ CUPS_PRINTER_AUTHENTICATED = 0x400000,/* Printer requires authentication
+ * @since CUPS 1.2/OS X 10.5@ */
+ CUPS_PRINTER_COMMANDS = 0x800000, /* Printer supports maintenance commands
+ * @since CUPS 1.2/OS X 10.5@ */
+ CUPS_PRINTER_DISCOVERED = 0x1000000, /* Printer was automatically discovered
+ * and added @private@
+ * @since Deprecated@ */
+ CUPS_PRINTER_SCANNER = 0x2000000, /* Scanner-only device
+ * @since CUPS 1.4/OS X 10.6@ */
+ CUPS_PRINTER_MFP = 0x4000000, /* Printer with scanning capabilities
+ * @since CUPS 1.4/OS X 10.6@ */
+ CUPS_PRINTER_OPTIONS = 0x6fffc /* ~(CLASS | REMOTE | IMPLICIT |
+ * DEFAULT | FAX | REJECTING | DELETE |
+ * NOT_SHARED | AUTHENTICATED |
+ * COMMANDS | DISCOVERED) @private@ */
};
-typedef const char *(*cups_password_cb_t)(const char *prompt);
- /**** Password callback ****/
-
-typedef const char *(*cups_password_cb2_t)(const char *prompt, http_t *http,
- const char *method,
- const char *resource,
- void *user_data);
- /**** New password callback @since CUPS 1.4/Mac OS X 10.6@ ****/
-
-typedef void (*cups_device_cb_t)(const char *device_class,
- const char *device_id, const char *device_info,
- const char *device_make_and_model,
- const char *device_uri,
- const char *device_location, void *user_data);
- /**** Device callback @since CUPS 1.4/Mac OS X 10.6@ ****/
-
typedef struct cups_option_s /**** Printer Options ****/
{
char *name; /* Name of option */
@@ -154,6 +265,10 @@ typedef struct cups_dest_s /**** Destination ****/
cups_option_t *options; /* Options */
} cups_dest_t;
+typedef struct _cups_dinfo_s cups_dinfo_t;
+ /* Destination capability and status
+ * information @since CUPS 1.6/OS X 10.8@ */
+
typedef struct cups_job_s /**** Job ****/
{
int id; /* The job ID */
@@ -169,14 +284,61 @@ typedef struct cups_job_s /**** Job ****/
time_t processing_time; /* Time the job was processed */
} cups_job_t;
+typedef struct cups_size_s /**** Media Size @since CUPS 1.6/OS X 10.8@ ****/
+{
+ char media[128]; /* Media name to use */
+ int width, /* Width in hundredths of millimeters */
+ length, /* Length in hundredths of
+ * millimeters */
+ bottom, /* Bottom margin in hundredths of
+ * millimeters */
+ left, /* Left margin in hundredths of
+ * millimeters */
+ right, /* Right margin in hundredths of
+ * millimeters */
+ top; /* Top margin in hundredths of
+ * millimeters */
+} cups_size_t;
+
typedef int (*cups_client_cert_cb_t)(http_t *http, void *tls,
cups_array_t *distinguished_names,
void *user_data);
- /**** Client credentials callback @since CUPS 1.5/Mac OS X 10.7@ ****/
+ /* Client credentials callback
+ * @since CUPS 1.5/OS X 10.7@ */
+
+typedef int (*cups_dest_cb_t)(void *user_data, unsigned flags,
+ cups_dest_t *dest);
+ /* Destination enumeration callback
+ * @since CUPS 1.6/OS X 10.8@ */
+
+# ifdef __BLOCKS__
+typedef int (^cups_dest_block_t)(unsigned flags, cups_dest_t *dest);
+ /* Destination enumeration block
+ * @since CUPS 1.6/OS X 10.8@ */
+# endif /* __BLOCKS__ */
+
+typedef void (*cups_device_cb_t)(const char *device_class,
+ const char *device_id, const char *device_info,
+ const char *device_make_and_model,
+ const char *device_uri,
+ const char *device_location, void *user_data);
+ /* Device callback
+ * @since CUPS 1.4/OS X 10.6@ */
+
+typedef const char *(*cups_password_cb_t)(const char *prompt);
+ /* Password callback */
+
+typedef const char *(*cups_password_cb2_t)(const char *prompt, http_t *http,
+ const char *method,
+ const char *resource,
+ void *user_data);
+ /* New password callback
+ * @since CUPS 1.4/OS X 10.6@ */
typedef int (*cups_server_cert_cb_t)(http_t *http, void *tls,
cups_array_t *certs, void *user_data);
- /**** Server credentials callback @since CUPS 1.5/Mac OS X 10.7@ ****/
+ /* Server credentials callback
+ * @since CUPS 1.5/OS X 10.7@ */
/*
@@ -219,7 +381,8 @@ extern int cupsAddOption(const char *name, const char *value,
int num_options, cups_option_t **options);
extern void cupsEncodeOptions(ipp_t *ipp, int num_options,
cups_option_t *options);
-extern void cupsFreeOptions(int num_options, cups_option_t *options);
+extern void cupsFreeOptions(int num_options,
+ cups_option_t *options);
extern const char *cupsGetOption(const char *name, int num_options,
cups_option_t *options);
extern int cupsParseOptions(const char *arg, int num_options,
@@ -235,21 +398,25 @@ extern const char *cupsUser(void);
/**** New in CUPS 1.1.20 ****/
extern int cupsDoAuthentication(http_t *http, const char *method,
- const char *resource) _CUPS_API_1_1_20;
+ const char *resource)
+ _CUPS_API_1_1_20;
extern http_status_t cupsGetFile(http_t *http, const char *resource,
const char *filename) _CUPS_API_1_1_20;
extern http_status_t cupsGetFd(http_t *http, const char *resource, int fd);
extern http_status_t cupsPutFile(http_t *http, const char *resource,
const char *filename) _CUPS_API_1_1_20;
-extern http_status_t cupsPutFd(http_t *http, const char *resource, int fd) _CUPS_API_1_1_20;
+extern http_status_t cupsPutFd(http_t *http, const char *resource, int fd)
+ _CUPS_API_1_1_20;
/**** New in CUPS 1.1.21 ****/
extern const char *cupsGetDefault2(http_t *http) _CUPS_API_1_1_21;
-extern int cupsGetDests2(http_t *http, cups_dest_t **dests) _CUPS_API_1_1_21;
+extern int cupsGetDests2(http_t *http, cups_dest_t **dests)
+ _CUPS_API_1_1_21;
extern int cupsGetJobs2(http_t *http, cups_job_t **jobs,
const char *name, int myjobs,
int whichjobs) _CUPS_API_1_1_21;
-extern const char *cupsGetPPD2(http_t *http, const char *name) _CUPS_API_1_1_21;
+extern const char *cupsGetPPD2(http_t *http, const char *name)
+ _CUPS_API_1_1_21;
extern int cupsPrintFile2(http_t *http, const char *name,
const char *filename,
const char *title, int num_options,
@@ -257,11 +424,12 @@ extern int cupsPrintFile2(http_t *http, const char *name,
extern int cupsPrintFiles2(http_t *http, const char *name,
int num_files, const char **files,
const char *title, int num_options,
- cups_option_t *options) _CUPS_API_1_1_21;
+ cups_option_t *options)
+ _CUPS_API_1_1_21;
extern int cupsSetDests2(http_t *http, int num_dests,
cups_dest_t *dests) _CUPS_API_1_1_21;
-/**** New in CUPS 1.2/Mac OS X 10.5 ****/
+/**** New in CUPS 1.2/OS X 10.5 ****/
extern ssize_t cupsBackChannelRead(char *buffer, size_t bytes,
double timeout) _CUPS_API_1_2;
extern ssize_t cupsBackChannelWrite(const char *buffer, size_t bytes,
@@ -270,26 +438,30 @@ extern void cupsEncodeOptions2(ipp_t *ipp, int num_options,
cups_option_t *options,
ipp_tag_t group_tag) _CUPS_API_1_2;
extern const char *cupsLastErrorString(void) _CUPS_API_1_2;
-extern char *cupsNotifySubject(cups_lang_t *lang, ipp_t *event) _CUPS_API_1_2;
-extern char *cupsNotifyText(cups_lang_t *lang, ipp_t *event) _CUPS_API_1_2;
+extern char *cupsNotifySubject(cups_lang_t *lang, ipp_t *event)
+ _CUPS_API_1_2;
+extern char *cupsNotifyText(cups_lang_t *lang, ipp_t *event)
+ _CUPS_API_1_2;
extern int cupsRemoveOption(const char *name, int num_options,
cups_option_t **options) _CUPS_API_1_2;
extern cups_file_t *cupsTempFile2(char *filename, int len) _CUPS_API_1_2;
-/**** New in CUPS 1.3/Mac OS X 10.5 ****/
+/**** New in CUPS 1.3/OS X 10.5 ****/
extern ipp_t *cupsDoIORequest(http_t *http, ipp_t *request,
const char *resource, int infile,
int outfile) _CUPS_API_1_3;
-extern char *cupsGetServerPPD(http_t *http, const char *name) _CUPS_API_1_3;
+extern char *cupsGetServerPPD(http_t *http, const char *name)
+ _CUPS_API_1_3;
extern int cupsRemoveDest(const char *name,
const char *instance,
- int num_dests, cups_dest_t **dests) _CUPS_API_1_3;
+ int num_dests, cups_dest_t **dests)
+ _CUPS_API_1_3;
extern void cupsSetDefaultDest(const char *name,
const char *instance,
int num_dests,
cups_dest_t *dests) _CUPS_API_1_3;
-/**** New in CUPS 1.4/Mac OS X 10.6 ****/
+/**** New in CUPS 1.4/OS X 10.6 ****/
extern ipp_status_t cupsCancelJob2(http_t *http, const char *name,
int job_id, int purge) _CUPS_API_1_4;
extern int cupsCreateJob(http_t *http, const char *name,
@@ -326,13 +498,97 @@ extern http_status_t cupsStartDocument(http_t *http, const char *name,
extern http_status_t cupsWriteRequestData(http_t *http, const char *buffer,
size_t length) _CUPS_API_1_4;
-/**** New in CUPS 1.5 ****/
+/**** New in CUPS 1.5/OS X 10.7 ****/
extern void cupsSetClientCertCB(cups_client_cert_cb_t cb,
void *user_data) _CUPS_API_1_5;
extern int cupsSetCredentials(cups_array_t *certs) _CUPS_API_1_5;
extern void cupsSetServerCertCB(cups_server_cert_cb_t cb,
void *user_data) _CUPS_API_1_5;
+/**** New in CUPS 1.6/OS X 10.8 ****/
+extern ipp_status_t cupsCancelDestJob(http_t *http, cups_dest_t *dest,
+ int job_id) _CUPS_API_1_6;
+extern int cupsCheckDestSupported(http_t *http, cups_dest_t *dest,
+ cups_dinfo_t *info,
+ const char *option,
+ const char *value) _CUPS_API_1_6;
+extern ipp_status_t cupsCloseDestJob(http_t *http, cups_dest_t *dest,
+ cups_dinfo_t *info, int job_id)
+ _CUPS_API_1_6;
+extern http_t *cupsConnectDest(cups_dest_t *dest, unsigned flags,
+ int msec, int *cancel,
+ char *resource, size_t resourcesize,
+ cups_dest_cb_t cb, void *user_data)
+ _CUPS_API_1_6;
+# ifdef __BLOCKS__
+extern http_t *cupsConnectDestBlock(cups_dest_t *dest,
+ unsigned flags, int msec,
+ int *cancel, char *resource,
+ size_t resourcesize,
+ cups_dest_block_t block)
+ _CUPS_API_1_6;
+# endif /* __BLOCKS__ */
+extern int cupsCopyDest(cups_dest_t *dest, int num_dests,
+ cups_dest_t **dests) _CUPS_API_1_6;
+extern cups_dinfo_t *cupsCopyDestInfo(http_t *http, cups_dest_t *dest)
+ _CUPS_API_1_6;
+extern int cupsCopyDestConflicts(http_t *http, cups_dest_t *dest,
+ cups_dinfo_t *info,
+ int num_options,
+ cups_option_t *options,
+ const char *new_option,
+ const char *new_value,
+ int *num_conflicts,
+ cups_option_t **conflicts,
+ int *num_resolved,
+ cups_option_t **resolved)
+ _CUPS_API_1_6;
+extern ipp_status_t cupsCreateDestJob(http_t *http, cups_dest_t *dest,
+ cups_dinfo_t *info, int *job_id,
+ const char *title, int num_options,
+ cups_option_t *options) _CUPS_API_1_6;
+extern int cupsEnumDests(unsigned flags, int msec, int *cancel,
+ cups_ptype_t type, cups_ptype_t mask,
+ cups_dest_cb_t cb, void *user_data)
+ _CUPS_API_1_6;
+# ifdef __BLOCKS__
+extern int cupsEnumDestsBlock(unsigned flags, int msec,
+ int *cancel, cups_ptype_t type,
+ cups_ptype_t mask,
+ cups_dest_block_t block)
+ _CUPS_API_1_6;
+# endif /* __BLOCKS__ */
+extern ipp_status_t cupsFinishDestDocument(http_t *http,
+ cups_dest_t *dest,
+ cups_dinfo_t *info)
+ _CUPS_API_1_6;
+extern void cupsFreeDestInfo(cups_dinfo_t *dinfo) _CUPS_API_1_6;
+extern int cupsGetDestMediaByName(http_t *http, cups_dest_t *dest,
+ cups_dinfo_t *dinfo,
+ const char *media,
+ unsigned flags,
+ cups_size_t *size) _CUPS_API_1_6;
+extern int cupsGetDestMediaBySize(http_t *http, cups_dest_t *dest,
+ cups_dinfo_t *dinfo,
+ int width, int length,
+ unsigned flags,
+ cups_size_t *size) _CUPS_API_1_6;
+extern const char *cupsLocalizeDestOption(http_t *http, cups_dest_t *dest,
+ cups_dinfo_t *info,
+ const char *option)
+ _CUPS_API_1_6;
+extern const char *cupsLocalizeDestValue(http_t *http, cups_dest_t *dest,
+ cups_dinfo_t *info,
+ const char *option,
+ const char *value)
+ _CUPS_API_1_6;
+extern http_status_t cupsStartDestDocument(http_t *http, cups_dest_t *dest,
+ cups_dinfo_t *info, int job_id,
+ const char *docname,
+ const char *format,
+ int num_options,
+ cups_option_t *options,
+ int last_document) _CUPS_API_1_6;
# ifdef __cplusplus
}
@@ -341,5 +597,5 @@ extern void cupsSetServerCertCB(cups_server_cert_cb_t cb,
#endif /* !_CUPS_CUPS_H_ */
/*
- * End of "$Id: cups.h 10466 2012-05-15 14:21:57Z mike $".
+ * End of "$Id: cups.h 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/custom.c b/cups/custom.c
index ff0960db..e61db475 100644
--- a/cups/custom.c
+++ b/cups/custom.c
@@ -1,9 +1,9 @@
/*
- * "$Id: custom.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: custom.c 10424 2012-04-23 17:26:57Z mike $"
*
* PPD custom option routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -41,7 +41,7 @@
/*
* 'ppdFindCustomOption()' - Find a custom option.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ppd_coption_t * /* O - Custom option or NULL */
@@ -62,7 +62,7 @@ ppdFindCustomOption(ppd_file_t *ppd, /* I - PPD file */
/*
* 'ppdFindCustomParam()' - Find a parameter for a custom option.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ppd_cparam_t * /* O - Custom parameter or NULL */
@@ -88,7 +88,7 @@ ppdFindCustomParam(ppd_coption_t *opt, /* I - Custom option */
/*
* 'ppdFirstCustomParam()' - Return the first parameter for a custom option.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ppd_cparam_t * /* O - Custom parameter or NULL */
@@ -104,7 +104,7 @@ ppdFirstCustomParam(ppd_coption_t *opt) /* I - Custom option */
/*
* 'ppdNextCustomParam()' - Return the next parameter for a custom option.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ppd_cparam_t * /* O - Custom parameter or NULL */
@@ -118,5 +118,5 @@ ppdNextCustomParam(ppd_coption_t *opt) /* I - Custom option */
/*
- * End of "$Id: custom.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: custom.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/debug-private.h b/cups/debug-private.h
index 38328a55..9c06372c 100644
--- a/cups/debug-private.h
+++ b/cups/debug-private.h
@@ -1,5 +1,5 @@
/*
- * "$Id: debug-private.h 10234 2012-02-06 19:35:59Z mike $"
+ * "$Id: debug-private.h 10200 2012-01-27 23:09:26Z mike $"
*
* Private debugging macros for CUPS.
*
@@ -113,5 +113,5 @@ extern int _cups_gettimeofday(struct timeval *tv, void *tz);
#endif /* !_CUPS_DEBUG_PRIVATE_H_ */
/*
- * End of "$Id: debug-private.h 10234 2012-02-06 19:35:59Z mike $".
+ * End of "$Id: debug-private.h 10200 2012-01-27 23:09:26Z mike $".
*/
diff --git a/cups/debug.c b/cups/debug.c
index 4f090244..98303b17 100644
--- a/cups/debug.c
+++ b/cups/debug.c
@@ -1,5 +1,5 @@
/*
- * "$Id: debug.c 10234 2012-02-06 19:35:59Z mike $"
+ * "$Id: debug.c 10224 2012-02-03 21:58:58Z mike $"
*
* Debugging functions for CUPS.
*
@@ -654,5 +654,5 @@ _cups_debug_set(const char *logfile, /* I - Log file or NULL */
/*
- * End of "$Id: debug.c 10234 2012-02-06 19:35:59Z mike $".
+ * End of "$Id: debug.c 10224 2012-02-03 21:58:58Z mike $".
*/
diff --git a/cups/dest-job.c b/cups/dest-job.c
new file mode 100644
index 00000000..63ca4b2c
--- /dev/null
+++ b/cups/dest-job.c
@@ -0,0 +1,358 @@
+/*
+ * "$Id: dest-job.c 10503 2012-05-23 03:30:45Z mike $"
+ *
+ * Destination job support for CUPS.
+ *
+ * Copyright 2012 by Apple Inc.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * This file is subject to the Apple OS-Developed Software exception.
+ *
+ * Contents:
+ *
+ * cupsCancelDestJob() - Cancel a job on a destination.
+ * cupsCloseDestJob() - Close a job and start printing.
+ * cupsCreateDestJob() - Create a job on a destination.
+ * cupsFinishDestDocument() - Finish the current document.
+ * cupsStartDestDocument() - Start a new document.
+ */
+
+/*
+ * Include necessary headers...
+ */
+
+#include "cups-private.h"
+
+
+/*
+ * 'cupsCancelDestJob()' - Cancel a job on a destination.
+ *
+ * The "job_id" is the number returned by cupsCreateDestJob.
+ *
+ * Returns IPP_OK on success and IPP_NOT_AUTHORIZED or IPP_FORBIDDEN on
+ * failure.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_status_t
+cupsCancelDestJob(http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ int job_id) /* I - Job ID */
+{
+ return (IPP_NOT_FOUND);
+}
+
+
+/*
+ * 'cupsCloseDestJob()' - Close a job and start printing.
+ *
+ * Use when the last call to cupsStartDocument passed 0 for "last_document".
+ * "job_id" is the job ID returned by cupsCreateDestJob. Returns @code IPP_OK@
+ * on success.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_status_t /* O - IPP status code */
+cupsCloseDestJob(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ cups_dinfo_t *info, /* I - Destination information */
+ int job_id) /* I - Job ID */
+{
+ int i; /* Looping var */
+ ipp_t *request = NULL;/* Close-Job/Send-Document request */
+ ipp_attribute_t *attr; /* operations-supported attribute */
+
+
+ DEBUG_printf(("cupsCloseDestJob(http=%p, dest=%p(%s/%s), info=%p, job_id=%d)",
+ http, dest, dest ? dest->name : NULL,
+ dest ? dest->instance : NULL, info, job_id));
+
+ /*
+ * Range check input...
+ */
+
+ if (!http || !dest || !info || job_id <= 0)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(EINVAL), 0);
+ DEBUG_puts("1cupsCloseDestJob: Bad arguments.");
+ return (IPP_INTERNAL_ERROR);
+ }
+
+ /*
+ * Build a Close-Job or empty Send-Document request...
+ */
+
+ if ((attr = ippFindAttribute(info->attrs, "operations-supported",
+ IPP_TAG_ENUM)) != NULL)
+ {
+ for (i = 0; i < attr->num_values; i ++)
+ if (attr->values[i].integer == IPP_CLOSE_JOB)
+ {
+ request = ippNewRequest(IPP_CLOSE_JOB);
+ break;
+ }
+ }
+
+ if (!request)
+ request = ippNewRequest(IPP_SEND_DOCUMENT);
+
+ if (!request)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(ENOMEM), 0);
+ DEBUG_puts("1cupsCloseDestJob: Unable to create Close-Job/Send-Document "
+ "request.");
+ return (IPP_INTERNAL_ERROR);
+ }
+
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
+ NULL, info->uri);
+ ippAddInteger(request, IPP_TAG_OPERATION, IPP_TAG_INTEGER, "job-id",
+ job_id);
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name",
+ NULL, cupsUser());
+ if (ippGetOperation(request) == IPP_SEND_DOCUMENT)
+ ippAddBoolean(request, IPP_TAG_OPERATION, "last-document", 1);
+
+ /*
+ * Send the request and return the status...
+ */
+
+ ippDelete(cupsDoRequest(http, request, info->resource));
+
+ DEBUG_printf(("1cupsCloseDestJob: %s (%s)", ippErrorString(cupsLastError()),
+ cupsLastErrorString()));
+
+ return (cupsLastError());
+}
+
+
+/*
+ * 'cupsCreateDestJob()' - Create a job on a destination.
+ *
+ * Returns @code IPP_OK@ or @code IPP_OK_SUBST@ on success, saving the job ID
+ * in the variable pointed to by "job_id".
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_status_t /* O - IPP status code */
+cupsCreateDestJob(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ cups_dinfo_t *info, /* I - Destination information */
+ int *job_id, /* O - Job ID or 0 on error */
+ const char *title, /* I - Job name */
+ int num_options, /* I - Number of job options */
+ cups_option_t *options) /* I - Job options */
+{
+ ipp_t *request, /* Create-Job request */
+ *response; /* Create-Job response */
+ ipp_attribute_t *attr; /* job-id attribute */
+
+
+ DEBUG_printf(("cupsCreateDestJob(http=%p, dest=%p(%s/%s), info=%p, "
+ "job_id=%p, title=\"%s\", num_options=%d, options=%p)",
+ http, dest, dest ? dest->name : NULL,
+ dest ? dest->instance : NULL, info, job_id, title, num_options,
+ options));
+
+ /*
+ * Range check input...
+ */
+
+ if (job_id)
+ *job_id = 0;
+
+ if (!http || !dest || !info || !job_id)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(EINVAL), 0);
+ DEBUG_puts("1cupsCreateDestJob: Bad arguments.");
+ return (IPP_INTERNAL_ERROR);
+ }
+
+ /*
+ * Build a Create-Job request...
+ */
+
+ if ((request = ippNewRequest(IPP_CREATE_JOB)) == NULL)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(ENOMEM), 0);
+ DEBUG_puts("1cupsCreateDestJob: Unable to create Create-Job request.");
+ return (IPP_INTERNAL_ERROR);
+ }
+
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
+ NULL, info->uri);
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name",
+ NULL, cupsUser());
+ if (title)
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "job-name", NULL,
+ title);
+
+ cupsEncodeOptions2(request, num_options, options, IPP_TAG_JOB);
+ cupsEncodeOptions2(request, num_options, options, IPP_TAG_SUBSCRIPTION);
+
+ /*
+ * Send the request and get the job-id...
+ */
+
+ response = cupsDoRequest(http, request, info->resource);
+
+ if ((attr = ippFindAttribute(response, "job-id", IPP_TAG_INTEGER)) != NULL)
+ {
+ *job_id = attr->values[0].integer;
+ DEBUG_printf(("1cupsCreateDestJob: job-id=%d", *job_id));
+ }
+
+ ippDelete(response);
+
+ /*
+ * Return the status code from the Create-Job request...
+ */
+
+ DEBUG_printf(("1cupsCreateDestJob: %s (%s)", ippErrorString(cupsLastError()),
+ cupsLastErrorString()));
+
+ return (cupsLastError());
+}
+
+
+/*
+ * 'cupsFinishDestDocument()' - Finish the current document.
+ *
+ * Returns @code IPP_OK@ or @code IPP_OK_SUBST@ on success.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_status_t /* O - Status of document submission */
+cupsFinishDestDocument(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ cups_dinfo_t *info) /* I - Destination information */
+{
+ DEBUG_printf(("cupsFinishDestDocument(http=%p, dest=%p(%s/%s), info=%p)",
+ http, dest, dest ? dest->name : NULL,
+ dest ? dest->instance : NULL, info));
+
+ /*
+ * Range check input...
+ */
+
+ if (!http || !dest || !info)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(EINVAL), 0);
+ DEBUG_puts("1cupsFinishDestDocument: Bad arguments.");
+ return (IPP_INTERNAL_ERROR);
+ }
+
+ /*
+ * Get the response at the end of the document and return it...
+ */
+
+ ippDelete(cupsGetResponse(http, info->resource));
+
+ DEBUG_printf(("1cupsFinishDestDocument: %s (%s)",
+ ippErrorString(cupsLastError()), cupsLastErrorString()));
+
+ return (cupsLastError());
+}
+
+
+/*
+ * 'cupsStartDestDocument()' - Start a new document.
+ *
+ * "job_id" is the job ID returned by cupsCreateDestJob. "docname" is the name
+ * of the document/file being printed, "format" is the MIME media type for the
+ * document (see CUPS_FORMAT_xxx constants), and "num_options" and "options"
+ * are the options do be applied to the document. "last_document" should be 1
+ * if this is the last document to be submitted in the job. Returns
+ * @code HTTP_CONTINUE@ on success.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+http_status_t /* O - Status of document creation */
+cupsStartDestDocument(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ cups_dinfo_t *info, /* I - Destination information */
+ int job_id, /* I - Job ID */
+ const char *docname, /* I - Document name */
+ const char *format, /* I - Document format */
+ int num_options, /* I - Number of document options */
+ cups_option_t *options, /* I - Document options */
+ int last_document) /* I - 1 if this is the last document */
+{
+ ipp_t *request; /* Send-Document request */
+ http_status_t status; /* HTTP status */
+
+
+ DEBUG_printf(("cupsStartDestDocument(http=%p, dest=%p(%s/%s), info=%p, "
+ "job_id=%d, docname=\"%s\", format=\"%s\", num_options=%d, "
+ "options=%p, last_document=%d)",
+ http, dest, dest ? dest->name : NULL,
+ dest ? dest->instance : NULL, info, job_id, docname, format,
+ num_options, options, last_document));
+
+ /*
+ * Range check input...
+ */
+
+ if (!http || !dest || !info || job_id <= 0)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(EINVAL), 0);
+ DEBUG_puts("1cupsStartDestDocument: Bad arguments.");
+ return (HTTP_ERROR);
+ }
+
+ /*
+ * Create a Send-Document request...
+ */
+
+ if ((request = ippNewRequest(IPP_SEND_DOCUMENT)) == NULL)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(ENOMEM), 0);
+ DEBUG_puts("1cupsStartDestDocument: Unable to create Send-Document "
+ "request.");
+ return (HTTP_ERROR);
+ }
+
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
+ NULL, info->uri);
+ ippAddInteger(request, IPP_TAG_OPERATION, IPP_TAG_INTEGER, "job-id", job_id);
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name",
+ NULL, cupsUser());
+ if (docname)
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "document-name",
+ NULL, docname);
+ if (format)
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_MIMETYPE,
+ "document-format", NULL, format);
+ ippAddBoolean(request, IPP_TAG_OPERATION, "last-document", last_document);
+
+ cupsEncodeOptions2(request, num_options, options, IPP_TAG_DOCUMENT);
+
+ /*
+ * Send and delete the request, then return the status...
+ */
+
+ status = cupsSendRequest(http, request, info->resource, CUPS_LENGTH_VARIABLE);
+
+ ippDelete(request);
+
+ return (status);
+}
+
+
+/*
+ * End of "$Id: dest-job.c 10503 2012-05-23 03:30:45Z mike $".
+ */
diff --git a/cups/dest-localization.c b/cups/dest-localization.c
new file mode 100644
index 00000000..9a86e04d
--- /dev/null
+++ b/cups/dest-localization.c
@@ -0,0 +1,386 @@
+/*
+ * "$Id: dest-localization.c 10506 2012-05-23 20:17:12Z mike $"
+ *
+ * Destination localization support for CUPS.
+ *
+ * Copyright 2012 by Apple Inc.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * This file is subject to the Apple OS-Developed Software exception.
+ *
+ * Contents:
+ *
+ * cupsLocalizeDestOption() - Get the localized string for a destination
+ * option.
+ * cupsLocalizeDestValue() - Get the localized string for a destination
+ * option+value pair.
+ * cups_create_localizations() - Create the localizations array for a
+ * destination.
+ * cups_read_strings() - Read a pair of strings from a .strings file.
+ * cups_scan_strings() - Scan a quoted string.
+ */
+
+/*
+ * Include necessary headers...
+ */
+
+#include "cups-private.h"
+
+
+/*
+ * Local functions...
+ */
+
+static void cups_create_localizations(http_t *http, cups_dinfo_t *dinfo);
+static int cups_read_strings(cups_file_t *fp, char *buffer, size_t bufsize,
+ char **id, char **str);
+static char *cups_scan_strings(char *buffer);
+
+
+/*
+ * 'cupsLocalizeDestOption()' - Get the localized string for a destination
+ * option.
+ *
+ * The returned string is stored in the destination information and will become
+ * invalid if the destination information is deleted.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+const char * /* O - Localized string */
+cupsLocalizeDestOption(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ cups_dinfo_t *dinfo, /* I - Destination information */
+ const char *option) /* I - Option to localize */
+{
+ _cups_message_t key, /* Search key */
+ *match; /* Matching entry */
+
+
+ if (!http || !dest || !dinfo)
+ return (option);
+
+ if (!dinfo->localizations)
+ cups_create_localizations(http, dinfo);
+
+ if (cupsArrayCount(dinfo->localizations) == 0)
+ return (option);
+
+ key.id = (char *)option;
+ if ((match = (_cups_message_t *)cupsArrayFind(dinfo->localizations,
+ &key)) != NULL)
+ return (match->str);
+ else
+ return (option);
+}
+
+
+/*
+ * 'cupsLocalizeDestValue()' - Get the localized string for a destination
+ * option+value pair.
+ *
+ * The returned string is stored in the destination information and will become
+ * invalid if the destination information is deleted.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+const char * /* O - Localized string */
+cupsLocalizeDestValue(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ cups_dinfo_t *dinfo, /* I - Destination information */
+ const char *option, /* I - Option to localize */
+ const char *value) /* I - Value to localize */
+{
+ _cups_message_t key, /* Search key */
+ *match; /* Matching entry */
+ char pair[256]; /* option.value pair */
+
+
+ if (!http || !dest || !dinfo)
+ return (value);
+
+ if (!dinfo->localizations)
+ cups_create_localizations(http, dinfo);
+
+ if (cupsArrayCount(dinfo->localizations) == 0)
+ return (value);
+
+ snprintf(pair, sizeof(pair), "%s.%s", option, value);
+ key.id = pair;
+ if ((match = (_cups_message_t *)cupsArrayFind(dinfo->localizations,
+ &key)) != NULL)
+ return (match->str);
+ else
+ return (value);
+}
+
+
+/*
+ * 'cups_create_localizations()' - Create the localizations array for a
+ * destination.
+ */
+
+static void
+cups_create_localizations(
+ http_t *http, /* I - Connection to destination */
+ cups_dinfo_t *dinfo) /* I - Destination informations */
+{
+ http_t *http2; /* Connection for strings file */
+ http_status_t status; /* Request status */
+ ipp_attribute_t *attr; /* "printer-strings-uri" attribute */
+ char scheme[32], /* URI scheme */
+ userpass[256], /* Username/password info */
+ hostname[256], /* Hostname */
+ resource[1024], /* Resource */
+ http_hostname[256],
+ /* Hostname of connection */
+ tempfile[1024]; /* Temporary filename */
+ int port; /* Port number */
+ http_encryption_t encryption; /* Encryption to use */
+ cups_file_t *temp; /* Temporary file */
+
+
+ /*
+ * Create an empty message catalog...
+ */
+
+ dinfo->localizations = _cupsMessageNew(NULL);
+
+ /*
+ * See if there are any localizations...
+ */
+
+ if ((attr = ippFindAttribute(dinfo->attrs, "printer-strings-uri",
+ IPP_TAG_URI)) == NULL)
+ {
+ /*
+ * Nope...
+ */
+
+ DEBUG_puts("4cups_create_localizations: No printer-strings-uri (uri) "
+ "value.");
+ return; /* Nope */
+ }
+
+ /*
+ * Pull apart the URI and determine whether we need to try a different
+ * server...
+ */
+
+ if (httpSeparateURI(HTTP_URI_CODING_ALL, attr->values[0].string.text,
+ scheme, sizeof(scheme), userpass, sizeof(userpass),
+ hostname, sizeof(hostname), &port, resource,
+ sizeof(resource)) < HTTP_URI_OK)
+ {
+ DEBUG_printf(("4cups_create_localizations: Bad printer-strings-uri value "
+ "\"%s\".", attr->values[0].string.text));
+ return;
+ }
+
+ httpGetHostname(http, http_hostname, sizeof(http_hostname));
+
+ if (!_cups_strcasecmp(http_hostname, hostname) &&
+ port == _httpAddrPort(http->hostaddr))
+ {
+ /*
+ * Use the same connection...
+ */
+
+ http2 = http;
+ }
+ else
+ {
+ /*
+ * Connect to the alternate host...
+ */
+
+ if (!strcmp(scheme, "https"))
+ encryption = HTTP_ENCRYPT_ALWAYS;
+ else
+ encryption = HTTP_ENCRYPT_IF_REQUESTED;
+
+ if ((http2 = httpConnectEncrypt(hostname, port, encryption)) == NULL)
+ {
+ DEBUG_printf(("4cups_create_localizations: Unable to connect to "
+ "%s:%d: %s", hostname, port, cupsLastErrorString()));
+ return;
+ }
+ }
+
+ /*
+ * Get a temporary file...
+ */
+
+ if ((temp = cupsTempFile2(tempfile, sizeof(tempfile))) == NULL)
+ {
+ DEBUG_printf(("4cups_create_localizations: Unable to create temporary "
+ "file: %s", cupsLastErrorString()));
+ if (http2 != http)
+ httpClose(http2);
+ return;
+ }
+
+ status = cupsGetFd(http2, resource, cupsFileNumber(temp));
+
+ DEBUG_printf(("4cups_create_localizations: GET %s = %s", resource,
+ httpStatus(status)));
+
+ if (status == HTTP_OK)
+ {
+ /*
+ * Got the file, read it...
+ */
+
+ char buffer[8192], /* Message buffer */
+ *id, /* ID string */
+ *str; /* Translated message */
+ _cups_message_t *m; /* Current message */
+
+ lseek(cupsFileNumber(temp), 0, SEEK_SET);
+
+ while (cups_read_strings(temp, buffer, sizeof(buffer), &id, &str))
+ {
+ if ((m = malloc(sizeof(_cups_message_t))) == NULL)
+ break;
+
+ m->id = strdup(id);
+ m->str = strdup(str);
+
+ if (m->id && m->str)
+ cupsArrayAdd(dinfo->localizations, m);
+ else
+ {
+ if (m->id)
+ free(m->id);
+
+ if (m->str)
+ free(m->str);
+
+ free(m);
+ break;
+ }
+ }
+ }
+
+ DEBUG_printf(("4cups_create_localizations: %d messages loaded.",
+ cupsArrayCount(dinfo->localizations)));
+
+ /*
+ * Cleanup...
+ */
+
+ unlink(tempfile);
+ cupsFileClose(temp);
+
+ if (http2 != http)
+ httpClose(http2);
+}
+
+
+/*
+ * 'cups_read_strings()' - Read a pair of strings from a .strings file.
+ */
+
+static int /* O - 1 on success, 0 on failure */
+cups_read_strings(cups_file_t *strings, /* I - .strings file */
+ char *buffer, /* I - Line buffer */
+ size_t bufsize, /* I - Size of line buffer */
+ char **id, /* O - Pointer to ID string */
+ char **str) /* O - Pointer to translation string */
+{
+ char *bufptr; /* Pointer into buffer */
+
+
+ while (cupsFileGets(strings, buffer, bufsize))
+ {
+ if (buffer[0] != '\"')
+ continue;
+
+ *id = buffer + 1;
+ bufptr = cups_scan_strings(buffer);
+
+ if (*bufptr != '\"')
+ continue;
+
+ *bufptr++ = '\0';
+
+ while (*bufptr && *bufptr != '\"')
+ bufptr ++;
+
+ if (!*bufptr)
+ continue;
+
+ *str = bufptr + 1;
+ bufptr = cups_scan_strings(bufptr);
+
+ if (*bufptr != '\"')
+ continue;
+
+ *bufptr = '\0';
+
+ return (1);
+ }
+
+ return (0);
+}
+
+
+/*
+ * 'cups_scan_strings()' - Scan a quoted string.
+ */
+
+static char * /* O - End of string */
+cups_scan_strings(char *buffer) /* I - Start of string */
+{
+ char *bufptr; /* Pointer into string */
+
+
+ for (bufptr = buffer + 1; *bufptr && *bufptr != '\"'; bufptr ++)
+ {
+ if (*bufptr == '\\')
+ {
+ if (bufptr[1] >= '0' && bufptr[1] <= '3' &&
+ bufptr[2] >= '0' && bufptr[2] <= '7' &&
+ bufptr[3] >= '0' && bufptr[3] <= '7')
+ {
+ /*
+ * Decode \nnn octal escape...
+ */
+
+ *bufptr = ((((bufptr[1] - '0') << 3) | (bufptr[2] - '0')) << 3) |
+ (bufptr[3] - '0');
+ _cups_strcpy(bufptr + 1, bufptr + 4);
+ }
+ else
+ {
+ /*
+ * Decode \C escape...
+ */
+
+ _cups_strcpy(bufptr, bufptr + 1);
+ if (*bufptr == 'n')
+ *bufptr = '\n';
+ else if (*bufptr == 'r')
+ *bufptr = '\r';
+ else if (*bufptr == 't')
+ *bufptr = '\t';
+ }
+ }
+ }
+
+ return (bufptr);
+}
+
+
+
+/*
+ * End of "$Id: dest-localization.c 10506 2012-05-23 20:17:12Z mike $".
+ */
diff --git a/cups/dest-options.c b/cups/dest-options.c
new file mode 100644
index 00000000..1c7b577d
--- /dev/null
+++ b/cups/dest-options.c
@@ -0,0 +1,1765 @@
+/*
+ * "$Id: dest-options.c 10505 2012-05-23 18:22:11Z mike $"
+ *
+ * Destination option/media support for CUPS.
+ *
+ * Copyright 2012 by Apple Inc.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * This file is subject to the Apple OS-Developed Software exception.
+ *
+ * Contents:
+ *
+ * cupsCheckDestSupported() - Check that the option and value are supported
+ * by the destination.
+ * cupsCopyDestConflicts() - Get conflicts and resolutions for a new
+ * option/value pair.
+ * cupsCopyDestInfo() - Get the supported values/capabilities for the
+ * destination.
+ * cupsFreeDestInfo() - Free destination information obtained using
+ * @link cupsCopyDestInfo@.
+ * cupsGetDestMediaByName() - Get media names, dimensions, and margins.
+ * cupsGetDestMediaBySize() - Get media names, dimensions, and margins.
+ * cups_add_dconstres() - Add a constraint or resolver to an array.
+ * cups_compare_dconstres() - Compare to resolver entries.
+ * cups_compare_media_db() - Compare two media entries.
+ * cups_copy_media_db() - Copy a media entry.
+ * cups_create_constraints() - Create the constraints and resolvers arrays.
+ * cups_create_defaults() - Create the -default option array.
+ * cups_create_media_db() - Create the media database.
+ * cups_free_media_cb() - Free a media entry.
+ * cups_get_media_db() - Lookup the media entry for a given size.
+ * cups_is_close_media_db() - Compare two media entries to see if they are
+ * close to the same size.
+ * cups_test_constraints() - Test constraints.
+ */
+
+/*
+ * Include necessary headers...
+ */
+
+#include "cups-private.h"
+
+
+/*
+ * Local functions...
+ */
+
+static void cups_add_dconstres(cups_array_t *a, ipp_t *collection);
+static int cups_compare_dconstres(_cups_dconstres_t *a,
+ _cups_dconstres_t *b);
+static int cups_compare_media_db(_cups_media_db_t *a,
+ _cups_media_db_t *b);
+static _cups_media_db_t *cups_copy_media_db(_cups_media_db_t *mdb);
+static void cups_create_constraints(cups_dinfo_t *dinfo);
+static void cups_create_defaults(cups_dinfo_t *dinfo);
+static void cups_create_media_db(cups_dinfo_t *dinfo);
+static void cups_free_media_db(_cups_media_db_t *mdb);
+static int cups_get_media_db(cups_dinfo_t *dinfo,
+ _pwg_media_t *pwg, unsigned flags,
+ cups_size_t *size);
+static int cups_is_close_media_db(_cups_media_db_t *a,
+ _cups_media_db_t *b);
+static cups_array_t *cups_test_constraints(cups_dinfo_t *dinfo,
+ const char *new_option,
+ const char *new_value,
+ int num_options,
+ cups_option_t *options,
+ int *num_conflicts,
+ cups_option_t **conflicts);
+
+
+/*
+ * 'cupsCheckDestSupported()' - Check that the option and value are supported
+ * by the destination.
+ *
+ * Returns 1 if supported, 0 otherwise.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 if supported, 0 otherwise */
+cupsCheckDestSupported(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ cups_dinfo_t *dinfo, /* I - Destination information */
+ const char *option, /* I - Option */
+ const char *value) /* I - Value */
+{
+ int i; /* Looping var */
+ char temp[1024]; /* Temporary string */
+ int int_value; /* Integer value */
+ int xres_value, /* Horizontal resolution */
+ yres_value; /* Vertical resolution */
+ ipp_res_t units_value; /* Resolution units */
+ ipp_attribute_t *attr; /* Attribute */
+ _ipp_value_t *attrval; /* Current attribute value */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!http || !dest || !dinfo || !option || !value)
+ return (0);
+
+ /*
+ * Lookup the attribute...
+ */
+
+ if (strstr(option, "-supported"))
+ attr = ippFindAttribute(dinfo->attrs, option, IPP_TAG_ZERO);
+ else
+ {
+ snprintf(temp, sizeof(temp), "%s-supported", option);
+ attr = ippFindAttribute(dinfo->attrs, temp, IPP_TAG_ZERO);
+ }
+
+ if (!attr)
+ return (0);
+
+ /*
+ * Compare values...
+ */
+
+ if (!strcmp(option, "media") && !strncmp(value, "custom_", 7))
+ {
+ /*
+ * Check range of custom media sizes...
+ */
+
+ _pwg_media_t *pwg; /* Current PWG media size info */
+ int min_width, /* Minimum width */
+ min_length, /* Minimum length */
+ max_width, /* Maximum width */
+ max_length; /* Maximum length */
+
+ /*
+ * Get the minimum and maximum size...
+ */
+
+ min_width = min_length = INT_MAX;
+ max_width = max_length = 0;
+
+ for (i = attr->num_values, attrval = attr->values;
+ i > 0;
+ i --, attrval ++)
+ {
+ if (!strncmp(attrval->string.text, "custom_min_", 11) &&
+ (pwg = _pwgMediaForPWG(attrval->string.text)) != NULL)
+ {
+ min_width = pwg->width;
+ min_length = pwg->length;
+ }
+ else if (!strncmp(attrval->string.text, "custom_max_", 11) &&
+ (pwg = _pwgMediaForPWG(attrval->string.text)) != NULL)
+ {
+ max_width = pwg->width;
+ max_length = pwg->length;
+ }
+ }
+
+ /*
+ * Check the range...
+ */
+
+ if (min_width < INT_MAX && max_width > 0 &&
+ (pwg = _pwgMediaForPWG(value)) != NULL &&
+ pwg->width >= min_width && pwg->width <= max_width &&
+ pwg->length >= min_length && pwg->length <= max_length)
+ return (1);
+ }
+ else
+ {
+ /*
+ * Check literal values...
+ */
+
+ switch (attr->value_tag)
+ {
+ case IPP_TAG_INTEGER :
+ case IPP_TAG_ENUM :
+ int_value = atoi(value);
+
+ for (i = 0; i < attr->num_values; i ++)
+ if (attr->values[i].integer == int_value)
+ return (1);
+ break;
+
+ case IPP_TAG_BOOLEAN :
+ return (attr->values[0].boolean);
+
+ case IPP_TAG_RANGE :
+ int_value = atoi(value);
+
+ for (i = 0; i < attr->num_values; i ++)
+ if (int_value >= attr->values[i].range.lower &&
+ int_value <= attr->values[i].range.upper)
+ return (1);
+ break;
+
+ case IPP_TAG_RESOLUTION :
+ if (sscanf(value, "%dx%d%15s", &xres_value, &yres_value, temp) != 3)
+ {
+ if (sscanf(value, "%d%15s", &xres_value, temp) != 2)
+ return (0);
+
+ yres_value = xres_value;
+ }
+
+ if (!strcmp(temp, "dpi"))
+ units_value = IPP_RES_PER_INCH;
+ else if (!strcmp(temp, "dpc") || !strcmp(temp, "dpcm"))
+ units_value = IPP_RES_PER_CM;
+ else
+ return (0);
+
+ for (i = attr->num_values, attrval = attr->values;
+ i > 0;
+ i --, attrval ++)
+ {
+ if (attrval->resolution.xres == xres_value &&
+ attrval->resolution.yres == yres_value &&
+ attrval->resolution.units == units_value)
+ return (1);
+ }
+ break;
+
+ case IPP_TAG_TEXT :
+ case IPP_TAG_NAME :
+ case IPP_TAG_KEYWORD :
+ case IPP_TAG_CHARSET :
+ case IPP_TAG_URI :
+ case IPP_TAG_URISCHEME :
+ case IPP_TAG_MIMETYPE :
+ case IPP_TAG_LANGUAGE :
+ case IPP_TAG_TEXTLANG :
+ case IPP_TAG_NAMELANG :
+ for (i = 0; i < attr->num_values; i ++)
+ if (!strcmp(attr->values[i].string.text, value))
+ return (1);
+ break;
+
+ default :
+ break;
+ }
+ }
+
+ /*
+ * If we get there the option+value is not supported...
+ */
+
+ return (0);
+}
+
+
+/*
+ * 'cupsCopyDestConflicts()' - Get conflicts and resolutions for a new
+ * option/value pair.
+ *
+ * "num_options" and "options" represent the currently selected options by the
+ * user. "new_option" and "new_value" are the setting the user has just
+ * changed.
+ *
+ * Returns 1 if there is a conflict, 0 if there are no conflicts, and -1 if
+ * there was an unrecoverable error such as a resolver loop.
+ *
+ * If "num_conflicts" and "conflicts" are not NULL, they are set to contain the
+ * list of conflicting option/value pairs. Similarly, if "num_resolved" and
+ * "resolved" are not NULL they will be set to the list of changes needed to
+ * resolve the conflict.
+ *
+ * If cupsCopyDestConflicts returns 1 but "num_resolved" and "resolved" are set
+ * to 0 and NULL, respectively, then the conflict cannot be resolved.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 if there is a conflict, 0 if none, -1 on error */
+cupsCopyDestConflicts(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ cups_dinfo_t *dinfo, /* I - Destination information */
+ int num_options, /* I - Number of current options */
+ cups_option_t *options, /* I - Current options */
+ const char *new_option, /* I - New option */
+ const char *new_value, /* I - New value */
+ int *num_conflicts, /* O - Number of conflicting options */
+ cups_option_t **conflicts, /* O - Conflicting options */
+ int *num_resolved, /* O - Number of options to resolve */
+ cups_option_t **resolved) /* O - Resolved options */
+{
+ int i, /* Looping var */
+ have_conflicts = 0, /* Do we have conflicts? */
+ changed, /* Did we change something? */
+ tries, /* Number of tries for resolution */
+ num_myconf = 0, /* My number of conflicting options */
+ num_myres = 0; /* My number of resolved options */
+ cups_option_t *myconf = NULL, /* My conflicting options */
+ *myres = NULL, /* My resolved options */
+ *myoption, /* My current option */
+ *option; /* Current option */
+ cups_array_t *active, /* Active conflicts */
+ *pass = NULL, /* Resolvers for this pass */
+ *resolvers = NULL, /* Resolvers we have used */
+ *test; /* Test array for conflicts */
+ _cups_dconstres_t *c, /* Current constraint */
+ *r; /* Current resolver */
+ ipp_attribute_t *attr; /* Current attribute */
+ char value[2048]; /* Current attribute value as string */
+ const char *myvalue; /* Current value of an option */
+
+
+ /*
+ * Clear returned values...
+ */
+
+ if (num_conflicts)
+ *num_conflicts = 0;
+
+ if (conflicts)
+ *conflicts = NULL;
+
+ if (num_resolved)
+ *num_resolved = 0;
+
+ if (resolved)
+ *resolved = NULL;
+
+ /*
+ * Range check input...
+ */
+
+ if (!http || !dest || !dinfo ||
+ (num_conflicts != NULL) != (conflicts != NULL) ||
+ (num_resolved != NULL) != (resolved != NULL))
+ return (0);
+
+ /*
+ * Load constraints as needed...
+ */
+
+ if (!dinfo->constraints)
+ cups_create_constraints(dinfo);
+
+ if (cupsArrayCount(dinfo->constraints) == 0)
+ return (0);
+
+ if (!dinfo->num_defaults)
+ cups_create_defaults(dinfo);
+
+ /*
+ * If we are resolving, create a shadow array...
+ */
+
+ if (num_resolved)
+ {
+ for (i = num_options, option = options; i > 0; i --, option ++)
+ num_myres = cupsAddOption(option->name, option->value, num_myres, &myres);
+
+ if (new_option && new_value)
+ num_myres = cupsAddOption(new_option, new_value, num_myres, &myres);
+ }
+ else
+ {
+ num_myres = num_options;
+ myres = options;
+ }
+
+ /*
+ * Check for any conflicts...
+ */
+
+ if (num_resolved)
+ pass = cupsArrayNew((cups_array_func_t)cups_compare_dconstres, NULL);
+
+ for (tries = 0; tries < 100; tries ++)
+ {
+ /*
+ * Check for any conflicts...
+ */
+
+ if (num_conflicts || num_resolved)
+ {
+ cupsFreeOptions(num_myconf, myconf);
+
+ num_myconf = 0;
+ myconf = NULL;
+ active = cups_test_constraints(dinfo, new_option, new_value,
+ num_myres, myres, &num_myconf,
+ &myconf);
+ }
+ else
+ active = cups_test_constraints(dinfo, new_option, new_value, num_myres,
+ myres, NULL, NULL);
+
+ have_conflicts = (active != NULL);
+
+ if (!active || !num_resolved)
+ break; /* All done */
+
+ /*
+ * Scan the constraints that were triggered to apply resolvers...
+ */
+
+ if (!resolvers)
+ resolvers = cupsArrayNew((cups_array_func_t)cups_compare_dconstres, NULL);
+
+ for (c = (_cups_dconstres_t *)cupsArrayFirst(active), changed = 0;
+ c;
+ c = (_cups_dconstres_t *)cupsArrayNext(active))
+ {
+ if (cupsArrayFind(pass, c))
+ continue; /* Already applied this resolver... */
+
+ if (cupsArrayFind(resolvers, c))
+ {
+ DEBUG_printf(("1cupsCopyDestConflicts: Resolver loop with %s.",
+ c->name));
+ have_conflicts = -1;
+ goto cleanup;
+ }
+
+ if ((r = cupsArrayFind(dinfo->resolvers, c)) == NULL)
+ {
+ DEBUG_printf(("1cupsCopyDestConflicts: Resolver %s not found.",
+ c->name));
+ have_conflicts = -1;
+ goto cleanup;
+ }
+
+ /*
+ * Add the options from the resolver...
+ */
+
+ cupsArrayAdd(pass, r);
+ cupsArrayAdd(resolvers, r);
+
+ for (attr = ippFirstAttribute(r->collection);
+ attr;
+ attr = ippNextAttribute(r->collection))
+ {
+ if (new_option && !strcmp(attr->name, new_option))
+ continue; /* Ignore this if we just changed it */
+
+ if (ippAttributeString(attr, value, sizeof(value)) >= sizeof(value))
+ continue; /* Ignore if the value is too long */
+
+ if ((test = cups_test_constraints(dinfo, attr->name, value, num_myres,
+ myres, NULL, NULL)) == NULL)
+ {
+ /*
+ * That worked, flag it...
+ */
+
+ changed = 1;
+ }
+ else
+ cupsArrayDelete(test);
+
+ /*
+ * Add the option/value from the resolver regardless of whether it
+ * worked; this makes sure that we can cascade several changes to
+ * make things resolve...
+ */
+
+ num_myres = cupsAddOption(attr->name, value, num_myres, &myres);
+ }
+ }
+
+ if (!changed)
+ {
+ DEBUG_puts("1cupsCopyDestConflicts: Unable to resolve constraints.");
+ have_conflicts = -1;
+ goto cleanup;
+ }
+
+ cupsArrayClear(pass);
+
+ cupsArrayDelete(active);
+ active = NULL;
+ }
+
+ if (tries >= 0)
+ {
+ DEBUG_puts("1cupsCopyDestConflicts: Unable to resolve after 100 tries.");
+ have_conflicts = -1;
+ goto cleanup;
+ }
+
+ /*
+ * Copy resolved options as needed...
+ */
+
+ if (num_resolved)
+ {
+ for (i = num_myres, myoption = myres; i > 0; i --, myoption ++)
+ {
+ if ((myvalue = cupsGetOption(myoption->name, num_options,
+ options)) == NULL ||
+ strcmp(myvalue, myoption->value))
+ {
+ if (new_option && !strcmp(new_option, myoption->name) &&
+ new_value && !strcmp(new_value, myoption->value))
+ continue;
+
+ *num_resolved = cupsAddOption(myoption->name, myoption->value,
+ *num_resolved, resolved);
+ }
+ }
+ }
+
+ /*
+ * Clean up...
+ */
+
+ cleanup:
+
+ cupsArrayDelete(active);
+ cupsArrayDelete(pass);
+ cupsArrayDelete(resolvers);
+
+ if (num_resolved)
+ {
+ /*
+ * Free shadow copy of options...
+ */
+
+ cupsFreeOptions(num_myres, myres);
+ }
+
+ if (num_conflicts)
+ {
+ /*
+ * Return conflicting options to caller...
+ */
+
+ *num_conflicts = num_myconf;
+ *conflicts = myconf;
+ }
+ else
+ {
+ /*
+ * Free conflicting options...
+ */
+
+ cupsFreeOptions(num_myconf, myconf);
+ }
+
+ return (have_conflicts);
+}
+
+
+/*
+ * 'cupsCopyDestInfo()' - Get the supported values/capabilities for the
+ * destination.
+ *
+ * The caller is responsible for calling @link cupsFreeDestInfo@ on the return
+ * value. @code NULL@ is returned on error.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+cups_dinfo_t * /* O - Destination information */
+cupsCopyDestInfo(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest) /* I - Destination */
+{
+ cups_dinfo_t *dinfo; /* Destination information */
+ ipp_t *request, /* Get-Printer-Attributes request */
+ *response; /* Supported attributes */
+ int tries, /* Number of tries so far */
+ delay, /* Current retry delay */
+ prev_delay; /* Next retry delay */
+ const char *uri; /* Printer URI */
+ char resource[1024]; /* Resource path */
+ int version; /* IPP version */
+ ipp_status_t status; /* Status of request */
+ static const char * const requested_attrs[] =
+ { /* Requested attributes */
+ "job-template",
+ "media-col-database",
+ "printer-description"
+ };
+
+
+ DEBUG_printf(("cupsCopyDestSupported(http=%p, dest=%p(%s))", http, dest,
+ dest ? dest->name : ""));
+
+ /*
+ * Range check input...
+ */
+
+ if (!http || !dest)
+ return (NULL);
+
+ /*
+ * Get the printer URI and resource path...
+ */
+
+ if ((uri = _cupsGetDestResource(dest, resource, sizeof(resource))) == NULL)
+ return (NULL);
+
+ /*
+ * Get the supported attributes...
+ */
+
+ delay = 1;
+ prev_delay = 1;
+ tries = 0;
+ version = 20;
+
+ do
+ {
+ /*
+ * Send a Get-Printer-Attributes request...
+ */
+
+ request = ippNewRequest(IPP_GET_PRINTER_ATTRIBUTES);
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL,
+ uri);
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name",
+ NULL, cupsUser());
+ ippAddStrings(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD,
+ "requested-attributes",
+ (int)(sizeof(requested_attrs) / sizeof(requested_attrs[0])),
+ NULL, requested_attrs);
+ response = cupsDoRequest(http, request, resource);
+ status = cupsLastError();
+
+ if (status > IPP_OK_SUBST)
+ {
+ DEBUG_printf(("cupsCopyDestSupported: Get-Printer-Attributes for '%s' "
+ "returned %s (%s)", dest->name, ippErrorString(status),
+ cupsLastErrorString()));
+
+ ippDelete(response);
+ response = NULL;
+
+ if (status == IPP_VERSION_NOT_SUPPORTED && version > 11)
+ version = 11;
+ else if (status == IPP_PRINTER_BUSY)
+ {
+ sleep(delay);
+
+ delay = _cupsNextDelay(delay, &prev_delay);
+ }
+ else
+ return (NULL);
+ }
+
+ tries ++;
+ }
+ while (!response && tries < 10);
+
+ if (!response)
+ return (NULL);
+
+ /*
+ * Allocate a cups_dinfo_t structure and return it...
+ */
+
+ if ((dinfo = calloc(1, sizeof(cups_dinfo_t))) == NULL)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(errno), 0);
+ ippDelete(response);
+ return (NULL);
+ }
+
+ dinfo->uri = uri;
+ dinfo->resource = _cupsStrAlloc(resource);
+ dinfo->attrs = response;
+
+ return (dinfo);
+}
+
+
+/*
+ * 'cupsFreeDestInfo()' - Free destination information obtained using
+ * @link cupsCopyDestInfo@.
+ */
+
+void
+cupsFreeDestInfo(cups_dinfo_t *dinfo) /* I - Destination information */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!dinfo)
+ return;
+
+ /*
+ * Free memory and return...
+ */
+
+ _cupsStrFree(dinfo->resource);
+
+ cupsArrayDelete(dinfo->constraints);
+ cupsArrayDelete(dinfo->resolvers);
+
+ cupsArrayDelete(dinfo->localizations);
+
+ cupsArrayDelete(dinfo->media_db);
+
+ ippDelete(dinfo->attrs);
+
+ free(dinfo);
+}
+
+
+/*
+ * 'cupsGetDestMediaByName()' - Get media names, dimensions, and margins.
+ *
+ * The "media" string is a PWG media name, while "width" and "length" are the
+ * dimensions in hundredths of millimeters. "flags" provides some matching
+ * guidance (multiple flags can be combined):
+ *
+ * CUPS_MEDIA_FLAGS_DEFAULT = find the closest size supported by the printer
+ * CUPS_MEDIA_FLAGS_BORDERLESS = find a borderless size
+ * CUPS_MEDIA_FLAGS_DUPLEX = find a size compatible with 2-sided printing
+ * CUPS_MEDIA_FLAGS_EXACT = find an exact match for the size
+ * CUPS_MEDIA_FLAGS_READY = if the printer supports media sensing, find the
+ * size amongst the "ready" media.
+ *
+ * The matching result (if any) is returned in the "cups_size_t" structure.
+ *
+ * Returns 1 when there is a match and 0 if there is not a match.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on match, 0 on failure */
+cupsGetDestMediaByName(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ cups_dinfo_t *dinfo, /* I - Destination information */
+ const char *media, /* I - Media name */
+ unsigned flags, /* I - Media matching flags */
+ cups_size_t *size) /* O - Media size information */
+{
+ _pwg_media_t *pwg; /* PWG media info */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (size)
+ memset(size, 0, sizeof(cups_size_t));
+
+ if (!http || !dest || !dinfo || !media || !size)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(EINVAL), 0);
+ return (0);
+ }
+
+ /*
+ * Lookup the media size name...
+ */
+
+ if ((pwg = _pwgMediaForPWG(media)) == NULL)
+ if ((pwg = _pwgMediaForLegacy(media)) == NULL)
+ {
+ DEBUG_printf(("1cupsGetDestMediaByName: Unknown size '%s'.", media));
+ _cupsSetError(IPP_INTERNAL_ERROR, _("Unknown media size name."), 1);
+ return (0);
+ }
+
+ /*
+ * Lookup the size...
+ */
+
+ return (cups_get_media_db(dinfo, pwg, flags, size));
+}
+
+
+/*
+ * 'cupsGetDestMediaBySize()' - Get media names, dimensions, and margins.
+ *
+ * The "media" string is a PWG media name, while "width" and "length" are the
+ * dimensions in hundredths of millimeters. "flags" provides some matching
+ * guidance (multiple flags can be combined):
+ *
+ * CUPS_MEDIA_FLAGS_DEFAULT = find the closest size supported by the printer
+ * CUPS_MEDIA_FLAGS_BORDERLESS = find a borderless size
+ * CUPS_MEDIA_FLAGS_DUPLEX = find a size compatible with 2-sided printing
+ * CUPS_MEDIA_FLAGS_EXACT = find an exact match for the size
+ * CUPS_MEDIA_FLAGS_READY = if the printer supports media sensing, find the
+ * size amongst the "ready" media.
+ *
+ * The matching result (if any) is returned in the "cups_size_t" structure.
+ *
+ * Returns 1 when there is a match and 0 if there is not a match.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on match, 0 on failure */
+cupsGetDestMediaBySize(
+ http_t *http, /* I - Connection to destination */
+ cups_dest_t *dest, /* I - Destination */
+ cups_dinfo_t *dinfo, /* I - Destination information */
+ int width, /* I - Media width in hundredths of
+ * of millimeters */
+ int length, /* I - Media length in hundredths of
+ * of millimeters */
+ unsigned flags, /* I - Media matching flags */
+ cups_size_t *size) /* O - Media size information */
+{
+ _pwg_media_t *pwg; /* PWG media info */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (size)
+ memset(size, 0, sizeof(cups_size_t));
+
+ if (!http || !dest || !dinfo || width <= 0 || length <= 0 || !size)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(EINVAL), 0);
+ return (0);
+ }
+
+ /*
+ * Lookup the media size name...
+ */
+
+ if ((pwg = _pwgMediaForSize(width, length)) == NULL)
+ {
+ DEBUG_printf(("1cupsGetDestMediaBySize: Invalid size %dx%d.", width,
+ length));
+ _cupsSetError(IPP_INTERNAL_ERROR, _("Invalid media size."), 1);
+ return (0);
+ }
+
+ /*
+ * Lookup the size...
+ */
+
+ return (cups_get_media_db(dinfo, pwg, flags, size));
+}
+
+
+/*
+ * 'cups_add_dconstres()' - Add a constraint or resolver to an array.
+ */
+
+static void
+cups_add_dconstres(
+ cups_array_t *a, /* I - Array */
+ ipp_t *collection) /* I - Collection value */
+{
+ ipp_attribute_t *attr; /* Attribute */
+ _cups_dconstres_t *temp; /* Current constraint/resolver */
+
+
+ if ((attr = ippFindAttribute(collection, "resolver-name",
+ IPP_TAG_NAME)) == NULL)
+ return;
+
+ if ((temp = calloc(1, sizeof(_cups_dconstres_t))) == NULL)
+ return;
+
+ temp->name = attr->values[0].string.text;
+ temp->collection = collection;
+
+ cupsArrayAdd(a, temp);
+}
+
+
+/*
+ * 'cups_compare_dconstres()' - Compare to resolver entries.
+ */
+
+static int /* O - Result of comparison */
+cups_compare_dconstres(
+ _cups_dconstres_t *a, /* I - First resolver */
+ _cups_dconstres_t *b) /* I - Second resolver */
+{
+ return (strcmp(a->name, b->name));
+}
+
+
+/*
+ * 'cups_compare_media_db()' - Compare two media entries.
+ */
+
+static int /* O - Result of comparison */
+cups_compare_media_db(
+ _cups_media_db_t *a, /* I - First media entries */
+ _cups_media_db_t *b) /* I - Second media entries */
+{
+ int result; /* Result of comparison */
+
+
+ if ((result = a->width - b->width) == 0)
+ result = a->length - b->length;
+
+ return (result);
+}
+
+
+/*
+ * 'cups_copy_media_db()' - Copy a media entry.
+ */
+
+static _cups_media_db_t * /* O - New media entry */
+cups_copy_media_db(
+ _cups_media_db_t *mdb) /* I - Media entry to copy */
+{
+ _cups_media_db_t *temp; /* New media entry */
+
+
+ if ((temp = calloc(1, sizeof(_cups_media_db_t))) == NULL)
+ return (NULL);
+
+ if (mdb->color)
+ temp->color = _cupsStrAlloc(mdb->color);
+ if (mdb->key)
+ temp->key = _cupsStrAlloc(mdb->key);
+ if (mdb->info)
+ temp->info = _cupsStrAlloc(mdb->info);
+ if (mdb->size_name)
+ temp->size_name = _cupsStrAlloc(mdb->size_name);
+ if (mdb->source)
+ temp->source = _cupsStrAlloc(mdb->source);
+ if (mdb->type)
+ temp->type = _cupsStrAlloc(mdb->type);
+
+ temp->width = mdb->width;
+ temp->length = mdb->length;
+ temp->bottom = mdb->bottom;
+ temp->left = mdb->left;
+ temp->right = mdb->right;
+ temp->top = mdb->top;
+
+ return (temp);
+}
+
+
+/*
+ * 'cups_create_constraints()' - Create the constraints and resolvers arrays.
+ */
+
+static void
+cups_create_constraints(
+ cups_dinfo_t *dinfo) /* I - Destination information */
+{
+ int i; /* Looping var */
+ ipp_attribute_t *attr; /* Attribute */
+ _ipp_value_t *val; /* Current value */
+
+
+ dinfo->constraints = cupsArrayNew3(NULL, NULL, NULL, 0, NULL,
+ (cups_afree_func_t)free);
+ dinfo->resolvers = cupsArrayNew3((cups_array_func_t)cups_compare_dconstres,
+ NULL, NULL, 0, NULL,
+ (cups_afree_func_t)free);
+
+ if ((attr = ippFindAttribute(dinfo->attrs, "job-constraints-supported",
+ IPP_TAG_BEGIN_COLLECTION)) != NULL)
+ {
+ for (i = attr->num_values, val = attr->values; i > 0; i --, val ++)
+ cups_add_dconstres(dinfo->constraints, val->collection);
+ }
+
+ if ((attr = ippFindAttribute(dinfo->attrs, "job-resolvers-supported",
+ IPP_TAG_BEGIN_COLLECTION)) != NULL)
+ {
+ for (i = attr->num_values, val = attr->values; i > 0; i --, val ++)
+ cups_add_dconstres(dinfo->resolvers, val->collection);
+ }
+}
+
+
+/*
+ * 'cups_create_defaults()' - Create the -default option array.
+ *
+ * TODO: Need to support collection defaults...
+ */
+
+static void
+cups_create_defaults(
+ cups_dinfo_t *dinfo) /* I - Destination information */
+{
+ ipp_attribute_t *attr; /* Current attribute */
+ char name[IPP_MAX_NAME + 1],
+ /* Current name */
+ *nameptr, /* Pointer into current name */
+ value[2048]; /* Current value */
+
+
+ /*
+ * Iterate through the printer attributes looking for xxx-default and adding
+ * xxx=value to the defaults option array.
+ */
+
+ for (attr = ippFirstAttribute(dinfo->attrs);
+ attr;
+ attr = ippNextAttribute(dinfo->attrs))
+ {
+ if (!attr->name || attr->group_tag != IPP_TAG_PRINTER)
+ continue;
+
+ if (attr->value_tag == IPP_TAG_BEGIN_COLLECTION)
+ continue; /* TODO: STR #4096 */
+
+ if ((nameptr = attr->name + strlen(attr->name) - 8) <= attr->name ||
+ strcmp(nameptr, "-default"))
+ continue;
+
+ strlcpy(name, attr->name, sizeof(name));
+ if ((nameptr = name + strlen(name) - 8) <= name ||
+ strcmp(nameptr, "-default"))
+ continue;
+
+ *nameptr = '\0';
+
+ if (ippAttributeString(attr, value, sizeof(value)) >= sizeof(value))
+ continue;
+
+ dinfo->num_defaults = cupsAddOption(name, value, dinfo->num_defaults,
+ &dinfo->defaults);
+ }
+}
+
+
+/*
+ * 'cups_create_media_db()' - Create the media database.
+ */
+
+static void
+cups_create_media_db(
+ cups_dinfo_t *dinfo) /* I - Destination information */
+{
+ int i; /* Looping var */
+ _ipp_value_t *val; /* Current value */
+ ipp_attribute_t *media_col_db, /* media-col-database */
+ *media_attr, /* media-xxx */
+ *x_dimension, /* x-dimension */
+ *y_dimension; /* y-dimension */
+ _pwg_media_t *pwg; /* PWG media info */
+ _cups_media_db_t mdb; /* Media entry */
+
+
+ dinfo->media_db = cupsArrayNew3((cups_array_func_t)cups_compare_media_db,
+ NULL, NULL, 0,
+ (cups_acopy_func_t)cups_copy_media_db,
+ (cups_afree_func_t)cups_free_media_db);
+ dinfo->min_size.width = INT_MAX;
+ dinfo->min_size.length = INT_MAX;
+ dinfo->max_size.width = 0;
+ dinfo->max_size.length = 0;
+
+ if ((media_col_db = ippFindAttribute(dinfo->attrs, "media-col-database",
+ IPP_TAG_BEGIN_COLLECTION)) != NULL)
+ {
+ _ipp_value_t *custom = NULL; /* Custom size range value */
+
+ for (i = media_col_db->num_values, val = media_col_db->values;
+ i > 0;
+ i --, val ++)
+ {
+ memset(&mdb, 0, sizeof(mdb));
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-size",
+ IPP_TAG_BEGIN_COLLECTION)) != NULL)
+ {
+ ipp_t *media_size = media_attr->values[0].collection;
+ /* media-size collection value */
+
+ if ((x_dimension = ippFindAttribute(media_size, "x-dimension",
+ IPP_TAG_INTEGER)) != NULL &&
+ (y_dimension = ippFindAttribute(media_size, "y-dimension",
+ IPP_TAG_INTEGER)) != NULL)
+ {
+ mdb.width = x_dimension->values[0].integer;
+ mdb.length = y_dimension->values[0].integer;
+ }
+ else if ((x_dimension = ippFindAttribute(media_size, "x-dimension",
+ IPP_TAG_RANGE)) != NULL &&
+ (y_dimension = ippFindAttribute(media_size, "y-dimension",
+ IPP_TAG_RANGE)) != NULL)
+ {
+ /*
+ * Custom size range; save this as the custom size value with default
+ * margins, then continue; we'll capture the real margins below...
+ */
+
+ custom = val;
+
+ dinfo->min_size.width = x_dimension->values[0].range.lower;
+ dinfo->min_size.length = y_dimension->values[0].range.lower;
+ dinfo->min_size.left =
+ dinfo->min_size.right = 635; /* Default 1/4" side margins */
+ dinfo->min_size.top =
+ dinfo->min_size.bottom = 1270; /* Default 1/2" top/bottom margins */
+
+ dinfo->max_size.width = x_dimension->values[0].range.upper;
+ dinfo->max_size.length = y_dimension->values[0].range.upper;
+ dinfo->max_size.left =
+ dinfo->max_size.right = 635; /* Default 1/4" side margins */
+ dinfo->max_size.top =
+ dinfo->max_size.bottom = 1270; /* Default 1/2" top/bottom margins */
+
+ continue;
+ }
+ }
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-color",
+ IPP_TAG_ZERO)) != NULL &&
+ (media_attr->value_tag == IPP_TAG_NAME ||
+ media_attr->value_tag == IPP_TAG_NAMELANG ||
+ media_attr->value_tag == IPP_TAG_KEYWORD))
+ mdb.color = media_attr->values[0].string.text;
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-info",
+ IPP_TAG_TEXT)) != NULL)
+ mdb.info = media_attr->values[0].string.text;
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-key",
+ IPP_TAG_ZERO)) != NULL &&
+ (media_attr->value_tag == IPP_TAG_NAME ||
+ media_attr->value_tag == IPP_TAG_NAMELANG ||
+ media_attr->value_tag == IPP_TAG_KEYWORD))
+ mdb.key = media_attr->values[0].string.text;
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-size-name",
+ IPP_TAG_ZERO)) != NULL &&
+ (media_attr->value_tag == IPP_TAG_NAME ||
+ media_attr->value_tag == IPP_TAG_NAMELANG ||
+ media_attr->value_tag == IPP_TAG_KEYWORD))
+ mdb.size_name = media_attr->values[0].string.text;
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-source",
+ IPP_TAG_ZERO)) != NULL &&
+ (media_attr->value_tag == IPP_TAG_NAME ||
+ media_attr->value_tag == IPP_TAG_NAMELANG ||
+ media_attr->value_tag == IPP_TAG_KEYWORD))
+ mdb.source = media_attr->values[0].string.text;
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-type",
+ IPP_TAG_ZERO)) != NULL &&
+ (media_attr->value_tag == IPP_TAG_NAME ||
+ media_attr->value_tag == IPP_TAG_NAMELANG ||
+ media_attr->value_tag == IPP_TAG_KEYWORD))
+ mdb.type = media_attr->values[0].string.text;
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-bottom-margin",
+ IPP_TAG_INTEGER)) != NULL)
+ mdb.bottom = media_attr->values[0].integer;
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-left-margin",
+ IPP_TAG_INTEGER)) != NULL)
+ mdb.left = media_attr->values[0].integer;
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-right-margin",
+ IPP_TAG_INTEGER)) != NULL)
+ mdb.right = media_attr->values[0].integer;
+
+ if ((media_attr = ippFindAttribute(val->collection, "media-top-margin",
+ IPP_TAG_INTEGER)) != NULL)
+ mdb.top = media_attr->values[0].integer;
+
+ cupsArrayAdd(dinfo->media_db, &mdb);
+ }
+
+ if (custom)
+ {
+ if ((media_attr = ippFindAttribute(custom->collection,
+ "media-bottom-margin",
+ IPP_TAG_INTEGER)) != NULL)
+ {
+ dinfo->min_size.top =
+ dinfo->max_size.top = media_attr->values[0].integer;
+ }
+
+ if ((media_attr = ippFindAttribute(custom->collection,
+ "media-left-margin",
+ IPP_TAG_INTEGER)) != NULL)
+ {
+ dinfo->min_size.left =
+ dinfo->max_size.left = media_attr->values[0].integer;
+ }
+
+ if ((media_attr = ippFindAttribute(custom->collection,
+ "media-right-margin",
+ IPP_TAG_INTEGER)) != NULL)
+ {
+ dinfo->min_size.right =
+ dinfo->max_size.right = media_attr->values[0].integer;
+ }
+
+ if ((media_attr = ippFindAttribute(custom->collection,
+ "media-top-margin",
+ IPP_TAG_INTEGER)) != NULL)
+ {
+ dinfo->min_size.top =
+ dinfo->max_size.top = media_attr->values[0].integer;
+ }
+ }
+ }
+ else if ((media_attr = ippFindAttribute(dinfo->attrs, "media-supported",
+ IPP_TAG_ZERO)) != NULL &&
+ (media_attr->value_tag == IPP_TAG_NAME ||
+ media_attr->value_tag == IPP_TAG_NAMELANG ||
+ media_attr->value_tag == IPP_TAG_KEYWORD))
+ {
+ memset(&mdb, 0, sizeof(mdb));
+
+ mdb.left =
+ mdb.right = 635; /* Default 1/4" side margins */
+ mdb.top =
+ mdb.bottom = 1270; /* Default 1/2" top/bottom margins */
+
+ for (i = media_attr->num_values, val = media_attr->values;
+ i > 0;
+ i --, val ++)
+ {
+ if ((pwg = _pwgMediaForPWG(val->string.text)) == NULL)
+ if ((pwg = _pwgMediaForLegacy(val->string.text)) == NULL)
+ {
+ DEBUG_printf(("3cups_create_media_db: Ignoring unknown size '%s'.",
+ val->string.text));
+ continue;
+ }
+
+ mdb.width = pwg->width;
+ mdb.length = pwg->length;
+
+ if (!strncmp(val->string.text, "custom_min_", 11))
+ {
+ mdb.size_name = NULL;
+ dinfo->min_size = mdb;
+ }
+ else if (!strncmp(val->string.text, "custom_max_", 11))
+ {
+ mdb.size_name = NULL;
+ dinfo->max_size = mdb;
+ }
+ else
+ {
+ mdb.size_name = val->string.text;
+
+ cupsArrayAdd(dinfo->media_db, &mdb);
+ }
+ }
+ }
+}
+
+
+/*
+ * 'cups_free_media_cb()' - Free a media entry.
+ */
+
+static void
+cups_free_media_db(
+ _cups_media_db_t *mdb) /* I - Media entry to free */
+{
+ if (mdb->color)
+ _cupsStrFree(mdb->color);
+ if (mdb->key)
+ _cupsStrFree(mdb->key);
+ if (mdb->info)
+ _cupsStrFree(mdb->info);
+ if (mdb->size_name)
+ _cupsStrFree(mdb->size_name);
+ if (mdb->source)
+ _cupsStrFree(mdb->source);
+ if (mdb->type)
+ _cupsStrFree(mdb->type);
+
+ free(mdb);
+}
+
+
+/*
+ * 'cups_get_media_db()' - Lookup the media entry for a given size.
+ */
+
+static int /* O - 1 on match, 0 on failure */
+cups_get_media_db(cups_dinfo_t *dinfo, /* I - Destination information */
+ _pwg_media_t *pwg, /* I - PWG media info */
+ unsigned flags, /* I - Media matching flags */
+ cups_size_t *size) /* O - Media size/margin/name info */
+{
+ _cups_media_db_t *mdb, /* Current media database entry */
+ *best = NULL, /* Best matching entry */
+ key; /* Search key */
+
+
+ /*
+ * Create the media database as needed...
+ */
+
+ if (!dinfo->media_db)
+ cups_create_media_db(dinfo);
+
+ /*
+ * Find a match...
+ */
+
+ memset(&key, 0, sizeof(key));
+ key.width = pwg->width;
+ key.length = pwg->length;
+
+ if ((mdb = cupsArrayFind(dinfo->media_db, &key)) != NULL)
+ {
+ /*
+ * Found an exact match, let's figure out the best margins for the flags
+ * supplied...
+ */
+
+ best = mdb;
+
+ if (flags & CUPS_MEDIA_FLAGS_BORDERLESS)
+ {
+ /*
+ * Look for the smallest margins...
+ */
+
+ if (best->left != 0 || best->right != 0 || best->top != 0 ||
+ best->bottom != 0)
+ {
+ for (mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db);
+ mdb && !cups_compare_media_db(mdb, &key);
+ mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db))
+ {
+ if (mdb->left <= best->left && mdb->right <= best->right &&
+ mdb->top <= best->top && mdb->bottom <= best->bottom)
+ {
+ best = mdb;
+ if (mdb->left == 0 && mdb->right == 0 && mdb->bottom == 0 &&
+ mdb->top == 0)
+ break;
+ }
+ }
+ }
+
+ /*
+ * If we need an exact match, return no-match if the size is not
+ * borderless.
+ */
+
+ if ((flags & CUPS_MEDIA_FLAGS_EXACT) &&
+ (best->left || best->right || best->top || best->bottom))
+ return (0);
+ }
+ else if (flags & CUPS_MEDIA_FLAGS_DUPLEX)
+ {
+ /*
+ * Look for the largest margins...
+ */
+
+ for (mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db);
+ mdb && !cups_compare_media_db(mdb, &key);
+ mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db))
+ {
+ if (mdb->left >= best->left && mdb->right >= best->right &&
+ mdb->top >= best->top && mdb->bottom >= best->bottom)
+ best = mdb;
+ }
+ }
+ else
+ {
+ /*
+ * Look for the smallest non-zero margins...
+ */
+
+ for (mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db);
+ mdb && !cups_compare_media_db(mdb, &key);
+ mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db))
+ {
+ if (((mdb->left > 0 && mdb->left <= best->left) || best->left == 0) &&
+ ((mdb->right > 0 && mdb->right <= best->right) ||
+ best->right == 0) &&
+ ((mdb->top > 0 && mdb->top <= best->top) || best->top == 0) &&
+ ((mdb->bottom > 0 && mdb->bottom <= best->bottom) ||
+ best->bottom == 0))
+ best = mdb;
+ }
+ }
+ }
+ else if (flags & CUPS_MEDIA_FLAGS_EXACT)
+ {
+ /*
+ * See if we can do this as a custom size...
+ */
+
+ if (pwg->width < dinfo->min_size.width ||
+ pwg->width > dinfo->max_size.width ||
+ pwg->length < dinfo->min_size.length ||
+ pwg->length > dinfo->max_size.length)
+ return (0); /* Out of range */
+
+ if ((flags & CUPS_MEDIA_FLAGS_BORDERLESS) &&
+ (dinfo->min_size.left > 0 || dinfo->min_size.right > 0 ||
+ dinfo->min_size.top > 0 || dinfo->min_size.bottom > 0))
+ return (0); /* Not borderless */
+
+ key.size_name = (char *)pwg->pwg;
+ key.bottom = dinfo->min_size.bottom;
+ key.left = dinfo->min_size.left;
+ key.right = dinfo->min_size.right;
+ key.top = dinfo->min_size.top;
+
+ best = &key;
+ }
+ else if (pwg->width >= dinfo->min_size.width &&
+ pwg->width <= dinfo->max_size.width &&
+ pwg->length >= dinfo->min_size.length &&
+ pwg->length <= dinfo->max_size.length)
+ {
+ /*
+ * Map to custom size...
+ */
+
+ key.size_name = (char *)pwg->pwg;
+ key.bottom = dinfo->min_size.bottom;
+ key.left = dinfo->min_size.left;
+ key.right = dinfo->min_size.right;
+ key.top = dinfo->min_size.top;
+
+ best = &key;
+ }
+ else
+ {
+ /*
+ * Find a close size...
+ */
+
+ for (mdb = (_cups_media_db_t *)cupsArrayFirst(dinfo->media_db);
+ mdb;
+ mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db))
+ if (cups_is_close_media_db(mdb, &key))
+ break;
+
+ if (!mdb)
+ return (0);
+
+ best = mdb;
+
+ if (flags & CUPS_MEDIA_FLAGS_BORDERLESS)
+ {
+ /*
+ * Look for the smallest margins...
+ */
+
+ if (best->left != 0 || best->right != 0 || best->top != 0 ||
+ best->bottom != 0)
+ {
+ for (mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db);
+ mdb && cups_is_close_media_db(mdb, &key);
+ mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db))
+ {
+ if (mdb->left <= best->left && mdb->right <= best->right &&
+ mdb->top <= best->top && mdb->bottom <= best->bottom)
+ {
+ best = mdb;
+ if (mdb->left == 0 && mdb->right == 0 && mdb->bottom == 0 &&
+ mdb->top == 0)
+ break;
+ }
+ }
+ }
+ }
+ else if (flags & CUPS_MEDIA_FLAGS_DUPLEX)
+ {
+ /*
+ * Look for the largest margins...
+ */
+
+ for (mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db);
+ mdb && cups_is_close_media_db(mdb, &key);
+ mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db))
+ {
+ if (mdb->left >= best->left && mdb->right >= best->right &&
+ mdb->top >= best->top && mdb->bottom >= best->bottom)
+ best = mdb;
+ }
+ }
+ else
+ {
+ /*
+ * Look for the smallest non-zero margins...
+ */
+
+ for (mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db);
+ mdb && cups_is_close_media_db(mdb, &key);
+ mdb = (_cups_media_db_t *)cupsArrayNext(dinfo->media_db))
+ {
+ if (((mdb->left > 0 && mdb->left <= best->left) || best->left == 0) &&
+ ((mdb->right > 0 && mdb->right <= best->right) ||
+ best->right == 0) &&
+ ((mdb->top > 0 && mdb->top <= best->top) || best->top == 0) &&
+ ((mdb->bottom > 0 && mdb->bottom <= best->bottom) ||
+ best->bottom == 0))
+ best = mdb;
+ }
+ }
+ }
+
+ if (best)
+ {
+ /*
+ * Return the matching size...
+ */
+
+ if (best->size_name)
+ strlcpy(size->media, best->size_name, sizeof(size->media));
+ else if (best->key)
+ strlcpy(size->media, best->key, sizeof(size->media));
+ else
+ strlcpy(size->media, pwg->pwg, sizeof(size->media));
+
+ size->width = best->width;
+ size->length = best->length;
+ size->bottom = best->bottom;
+ size->left = best->left;
+ size->right = best->right;
+ size->top = best->top;
+
+ return (1);
+ }
+
+ return (0);
+}
+
+
+/*
+ * 'cups_is_close_media_db()' - Compare two media entries to see if they are
+ * close to the same size.
+ *
+ * Currently we use 5 points (from PostScript) as the matching range...
+ */
+
+static int /* O - 1 if the sizes are close */
+cups_is_close_media_db(
+ _cups_media_db_t *a, /* I - First media entries */
+ _cups_media_db_t *b) /* I - Second media entries */
+{
+ int dwidth, /* Difference in width */
+ dlength; /* Difference in length */
+
+
+ dwidth = a->width - b->width;
+ dlength = a->length - b->length;
+
+ return (dwidth >= -176 && dwidth <= 176 &&
+ dlength >= -176 && dlength <= 176);
+}
+
+
+/*
+ * 'cups_test_constraints()' - Test constraints.
+ *
+ * TODO: STR #4096 - Need to properly support media-col contraints...
+ */
+
+static cups_array_t * /* O - Active constraints */
+cups_test_constraints(
+ cups_dinfo_t *dinfo, /* I - Destination information */
+ const char *new_option, /* I - Newly selected option */
+ const char *new_value, /* I - Newly selected value */
+ int num_options, /* I - Number of options */
+ cups_option_t *options, /* I - Options */
+ int *num_conflicts, /* O - Number of conflicting options */
+ cups_option_t **conflicts) /* O - Conflicting options */
+{
+ int i, /* Looping var */
+ match; /* Value matches? */
+ int num_matching; /* Number of matching options */
+ cups_option_t *matching; /* Matching options */
+ _cups_dconstres_t *c; /* Current constraint */
+ cups_array_t *active = NULL; /* Active constraints */
+ ipp_attribute_t *attr; /* Current attribute */
+ _ipp_value_t *attrval; /* Current attribute value */
+ const char *value; /* Current value */
+ char temp[1024]; /* Temporary string */
+ int int_value; /* Integer value */
+ int xres_value, /* Horizontal resolution */
+ yres_value; /* Vertical resolution */
+ ipp_res_t units_value; /* Resolution units */
+
+
+ for (c = (_cups_dconstres_t *)cupsArrayFirst(dinfo->constraints);
+ c;
+ c = (_cups_dconstres_t *)cupsArrayNext(dinfo->constraints))
+ {
+ num_matching = 0;
+ matching = NULL;
+
+ for (attr = ippFirstAttribute(c->collection);
+ attr;
+ attr = ippNextAttribute(c->collection))
+ {
+ if (attr->value_tag == IPP_TAG_BEGIN_COLLECTION)
+ break; /* TODO: STR #4096 */
+
+ /*
+ * Get the value for the current attribute in the constraint...
+ */
+
+ if (new_option && new_value && !strcmp(attr->name, new_option))
+ value = new_value;
+ else if ((value = cupsGetOption(attr->name, num_options,
+ options)) == NULL)
+ value = cupsGetOption(attr->name, dinfo->num_defaults, dinfo->defaults);
+
+ if (!value)
+ {
+ /*
+ * Not set so this constraint does not apply...
+ */
+
+ break;
+ }
+
+ match = 0;
+
+ switch (attr->value_tag)
+ {
+ case IPP_TAG_INTEGER :
+ case IPP_TAG_ENUM :
+ int_value = atoi(value);
+
+ for (i = attr->num_values, attrval = attr->values;
+ i > 0;
+ i --, attrval ++)
+ {
+ if (attrval->integer == int_value)
+ {
+ match = 1;
+ break;
+ }
+ }
+ break;
+
+ case IPP_TAG_BOOLEAN :
+ int_value = !strcmp(value, "true");
+
+ for (i = attr->num_values, attrval = attr->values;
+ i > 0;
+ i --, attrval ++)
+ {
+ if (attrval->boolean == int_value)
+ {
+ match = 1;
+ break;
+ }
+ }
+ break;
+
+ case IPP_TAG_RANGE :
+ int_value = atoi(value);
+
+ for (i = attr->num_values, attrval = attr->values;
+ i > 0;
+ i --, attrval ++)
+ {
+ if (int_value >= attrval->range.lower &&
+ int_value <= attrval->range.upper)
+ {
+ match = 1;
+ break;
+ }
+ }
+ break;
+
+ case IPP_TAG_RESOLUTION :
+ if (sscanf(value, "%dx%d%15s", &xres_value, &yres_value, temp) != 3)
+ {
+ if (sscanf(value, "%d%15s", &xres_value, temp) != 2)
+ break;
+
+ yres_value = xres_value;
+ }
+
+ if (!strcmp(temp, "dpi"))
+ units_value = IPP_RES_PER_INCH;
+ else if (!strcmp(temp, "dpc") || !strcmp(temp, "dpcm"))
+ units_value = IPP_RES_PER_CM;
+ else
+ break;
+
+ for (i = attr->num_values, attrval = attr->values;
+ i > 0;
+ i --, attrval ++)
+ {
+ if (attrval->resolution.xres == xres_value &&
+ attrval->resolution.yres == yres_value &&
+ attrval->resolution.units == units_value)
+ {
+ match = 1;
+ break;
+ }
+ }
+ break;
+
+ case IPP_TAG_TEXT :
+ case IPP_TAG_NAME :
+ case IPP_TAG_KEYWORD :
+ case IPP_TAG_CHARSET :
+ case IPP_TAG_URI :
+ case IPP_TAG_URISCHEME :
+ case IPP_TAG_MIMETYPE :
+ case IPP_TAG_LANGUAGE :
+ case IPP_TAG_TEXTLANG :
+ case IPP_TAG_NAMELANG :
+ for (i = attr->num_values, attrval = attr->values;
+ i > 0;
+ i --, attrval ++)
+ {
+ if (!strcmp(attrval->string.text, value))
+ {
+ match = 1;
+ break;
+ }
+ }
+ break;
+
+ default :
+ break;
+ }
+
+ if (!match)
+ break;
+
+ num_matching = cupsAddOption(attr->name, value, num_matching, &matching);
+ }
+
+ if (!attr)
+ {
+ if (!active)
+ active = cupsArrayNew(NULL, NULL);
+
+ cupsArrayAdd(active, c);
+
+ if (num_conflicts && conflicts)
+ {
+ cups_option_t *moption; /* Matching option */
+
+ for (i = num_matching, moption = matching; i > 0; i --, moption ++)
+ *num_conflicts = cupsAddOption(moption->name, moption->value,
+ *num_conflicts, conflicts);
+ }
+ }
+
+ cupsFreeOptions(num_matching, matching);
+ }
+
+ return (active);
+}
+
+
+/*
+ * End of "$Id: dest-options.c 10505 2012-05-23 18:22:11Z mike $".
+ */
diff --git a/cups/dest.c b/cups/dest.c
index b068f210..0bc2e8de 100644
--- a/cups/dest.c
+++ b/cups/dest.c
@@ -1,9 +1,9 @@
/*
- * "$Id: dest.c 10379 2012-03-23 22:16:22Z mike $"
+ * "$Id: dest.c 10470 2012-05-16 22:33:31Z mike $"
*
* User-defined destination (and option) support for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -16,46 +16,70 @@
*
* Contents:
*
- * cupsAddDest() - Add a destination to the list of
- * destinations.
+ * cupsAddDest() - Add a destination to the list of
+ * destinations.
* _cupsAppleCopyDefaultPaperID() - Get the default paper ID.
* _cupsAppleCopyDefaultPrinter() - Get the default printer at this location.
* _cupsAppleGetUseLastPrinter() - Get whether to use the last used printer.
* _cupsAppleSetDefaultPaperID() - Set the default paper id.
- * _cupsAppleSetDefaultPrinter() - Set the default printer for this location.
+ * _cupsAppleSetDefaultPrinter() - Set the default printer for this
+ * location.
* _cupsAppleSetUseLastPrinter() - Set whether to use the last used printer.
- * cupsFreeDests() - Free the memory used by the list of
- * destinations.
- * cupsGetDest() - Get the named destination from the list.
- * _cupsGetDests() - Get destinations from a server.
- * cupsGetDests() - Get the list of destinations from the
- * default server.
- * cupsGetDests2() - Get the list of destinations from the
- * specified server.
- * cupsGetNamedDest() - Get options for the named destination.
- * cupsRemoveDest() - Remove a destination from the destination
- * list.
- * cupsSetDefaultDest() - Set the default destination.
- * cupsSetDests() - Save the list of destinations for the
- * default server.
- * cupsSetDests2() - Save the list of destinations for the
- * specified server.
- * _cupsUserDefault() - Get the user default printer from
- * environment variables and location
- * information.
- * appleCopyLocations() - Copy the location history array.
- * appleCopyNetwork() - Get the network ID for the current
- * location.
- * appleGetPaperSize() - Get the default paper size.
- * appleGetPrinter() - Get a printer from the history array.
- * cups_add_dest() - Add a destination to the array.
- * cups_compare_dests() - Compare two destinations.
- * cups_find_dest() - Find a destination using a binary search.
- * cups_get_default() - Get the default destination from an
- * lpoptions file.
- * cups_get_dests() - Get destinations from a file.
- * cups_make_string() - Make a comma-separated string of values
- * from an IPP attribute.
+ * cupsConnectDest() - Connect to the server for a destination.
+ * cupsConnectDestBlock() - Connect to the server for a destination.
+ * cupsCopyDest() - Copy a destination.
+ * cupsEnumDests() - Enumerate available destinations with a
+ * callback function.
+ * cupsEnumDestsBlock() - Enumerate available destinations with a
+ * block.
+ * cupsFreeDests() - Free the memory used by the list of
+ * destinations.
+ * cupsGetDest() - Get the named destination from the list.
+ * _cupsGetDestResource() - Get the resource path and URI for a
+ * destination.
+ * _cupsGetDests() - Get destinations from a server.
+ * cupsGetDests() - Get the list of destinations from the
+ * default server.
+ * cupsGetDests2() - Get the list of destinations from the
+ * specified server.
+ * cupsGetNamedDest() - Get options for the named destination.
+ * cupsRemoveDest() - Remove a destination from the destination
+ * list.
+ * cupsSetDefaultDest() - Set the default destination.
+ * cupsSetDests() - Save the list of destinations for the
+ * default server.
+ * cupsSetDests2() - Save the list of destinations for the
+ * specified server.
+ * _cupsUserDefault() - Get the user default printer from
+ * environment variables and location
+ * information.
+ * appleCopyLocations() - Copy the location history array.
+ * appleCopyNetwork() - Get the network ID for the current
+ * location.
+ * appleGetPaperSize() - Get the default paper size.
+ * appleGetPrinter() - Get a printer from the history array.
+ * cups_add_dest() - Add a destination to the array.
+ * cups_block_cb() - Enumeration callback for block API.
+ * cups_compare_dests() - Compare two destinations.
+ * cups_dnssd_browse_cb() - Browse for printers.
+ * cups_dnssd_browse_cb() - Browse for printers.
+ * cups_dnssd_client_cb() - Avahi client callback function.
+ * cups_dnssd_compare_device() - Compare two devices.
+ * cups_dnssd_free_device() - Free the memory used by a device.
+ * cups_dnssd_get_device() - Lookup a device and create it as needed.
+ * cups_dnssd_local_cb() - Browse for local printers.
+ * cups_dnssd_poll_cb() - Wait for input on the specified file
+ * descriptors.
+ * cups_dnssd_query_cb() - Process query data.
+ * cups_dnssd_resolve() - Resolve a Bonjour printer URI.
+ * cups_dnssd_resolve_cb() - See if we should continue resolving.
+ * cups_dnssd_unquote() - Unquote a name string.
+ * cups_find_dest() - Find a destination using a binary search.
+ * cups_get_default() - Get the default destination from an
+ * lpoptions file.
+ * cups_get_dests() - Get destinations from a file.
+ * cups_make_string() - Make a comma-separated string of values
+ * from an IPP attribute.
*/
/*
@@ -69,6 +93,29 @@
# include <notify.h>
#endif /* HAVE_NOTIFY_H */
+#ifdef HAVE_POLL
+# include <poll.h>
+#endif /* HAVE_POLL */
+
+#ifdef HAVE_DNSSD
+# include <dns_sd.h>
+#endif /* HAVE_DNSSD */
+
+#ifdef HAVE_AVAHI
+# include <avahi-client/client.h>
+# include <avahi-client/lookup.h>
+# include <avahi-common/simple-watch.h>
+# include <avahi-common/domain.h>
+# include <avahi-common/error.h>
+# include <avahi-common/malloc.h>
+#define kDNSServiceMaxDomainName AVAHI_DOMAIN_NAME_MAX
+#endif /* HAVE_AVAHI */
+
+
+/*
+ * Constants...
+ */
+
#ifdef __APPLE__
# include <SystemConfiguration/SystemConfiguration.h>
# define kCUPSPrintingPrefs CFSTR("org.cups.PrintingPrefs")
@@ -81,29 +128,159 @@
/*
+ * Types...
+ */
+
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+typedef enum _cups_dnssd_state_e /* Enumerated device state */
+{
+ _CUPS_DNSSD_NEW,
+ _CUPS_DNSSD_QUERY,
+ _CUPS_DNSSD_PENDING,
+ _CUPS_DNSSD_ACTIVE,
+ _CUPS_DNSSD_LOCAL,
+ _CUPS_DNSSD_INCOMPATIBLE,
+ _CUPS_DNSSD_ERROR
+} _cups_dnssd_state_t;
+
+typedef struct _cups_dnssd_data_s /* Enumeration data */
+{
+# ifdef HAVE_DNSSD
+ DNSServiceRef main_ref; /* Main service reference */
+# else /* HAVE_AVAHI */
+ AvahiSimplePoll *simple_poll; /* Polling interface */
+ AvahiClient *client; /* Client information */
+ int got_data; /* Did we get data? */
+# endif /* HAVE_DNSSD */
+ cups_dest_cb_t cb; /* Callback */
+ void *user_data; /* User data pointer */
+ cups_ptype_t type, /* Printer type filter */
+ mask; /* Printer type mask */
+ cups_array_t *devices; /* Devices found so far */
+} _cups_dnssd_data_t;
+
+typedef struct _cups_dnssd_device_s /* Enumerated device */
+{
+ _cups_dnssd_state_t state; /* State of device listing */
+# ifdef HAVE_DNSSD
+ DNSServiceRef ref; /* Service reference for query */
+# else /* HAVE_AVAHI */
+ AvahiRecordBrowser *ref; /* Browser for query */
+# endif /* HAVE_DNSSD */
+ char *domain, /* Domain name */
+ *fullName, /* Full name */
+ *regtype; /* Registration type */
+ cups_ptype_t type; /* Device registration type */
+ cups_dest_t dest; /* Destination record */
+} _cups_dnssd_device_t;
+
+typedef struct _cups_dnssd_resolve_s /* Data for resolving URI */
+{
+ int *cancel; /* Pointer to "cancel" variable */
+ struct timeval end_time; /* Ending time */
+} _cups_dnssd_resolve_t;
+#endif /* HAVE_DNSSD */
+
+
+/*
* Local functions...
*/
#ifdef __APPLE__
-static CFArrayRef appleCopyLocations(void);
-static CFStringRef appleCopyNetwork(void);
-static char *appleGetPaperSize(char *name, int namesize);
-static CFStringRef appleGetPrinter(CFArrayRef locations, CFStringRef network,
- CFIndex *locindex);
+static CFArrayRef appleCopyLocations(void);
+static CFStringRef appleCopyNetwork(void);
+static char *appleGetPaperSize(char *name, int namesize);
+static CFStringRef appleGetPrinter(CFArrayRef locations,
+ CFStringRef network, CFIndex *locindex);
#endif /* __APPLE__ */
-static cups_dest_t *cups_add_dest(const char *name, const char *instance,
- int *num_dests, cups_dest_t **dests);
-static int cups_compare_dests(cups_dest_t *a, cups_dest_t *b);
-static int cups_find_dest(const char *name, const char *instance,
- int num_dests, cups_dest_t *dests, int prev,
- int *rdiff);
-static char *cups_get_default(const char *filename, char *namebuf,
- size_t namesize, const char **instance);
-static int cups_get_dests(const char *filename, const char *match_name,
- const char *match_inst, int user_default_set,
- int num_dests, cups_dest_t **dests);
-static char *cups_make_string(ipp_attribute_t *attr, char *buffer,
- size_t bufsize);
+static cups_dest_t *cups_add_dest(const char *name, const char *instance,
+ int *num_dests, cups_dest_t **dests);
+#ifdef __BLOCKS__
+static int cups_block_cb(cups_dest_block_t block, unsigned flags,
+ cups_dest_t *dest);
+#endif /* __BLOCKS__ */
+static int cups_compare_dests(cups_dest_t *a, cups_dest_t *b);
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+# ifdef HAVE_DNSSD
+static void cups_dnssd_browse_cb(DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceErrorType errorCode,
+ const char *serviceName,
+ const char *regtype,
+ const char *replyDomain,
+ void *context);
+# else /* HAVE_AVAHI */
+static void cups_dnssd_browse_cb(AvahiServiceBrowser *browser,
+ AvahiIfIndex interface,
+ AvahiProtocol protocol,
+ AvahiBrowserEvent event,
+ const char *serviceName,
+ const char *regtype,
+ const char *replyDomain,
+ AvahiLookupResultFlags flags,
+ void *context);
+static void cups_dnssd_client_cb(AvahiClient *client,
+ AvahiClientState state,
+ void *context);
+# endif /* HAVE_DNSSD */
+static int cups_dnssd_compare_devices(_cups_dnssd_device_t *a,
+ _cups_dnssd_device_t *b);
+static void cups_dnssd_free_device(_cups_dnssd_device_t *device,
+ _cups_dnssd_data_t *data);
+static _cups_dnssd_device_t *
+ cups_dnssd_get_device(_cups_dnssd_data_t *data,
+ const char *serviceName,
+ const char *regtype,
+ const char *replyDomain);
+# ifdef HAVE_DNSSD
+static void cups_dnssd_local_cb(DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceErrorType errorCode,
+ const char *serviceName,
+ const char *regtype,
+ const char *replyDomain,
+ void *context);
+static void cups_dnssd_query_cb(DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceErrorType errorCode,
+ const char *fullName,
+ uint16_t rrtype, uint16_t rrclass,
+ uint16_t rdlen, const void *rdata,
+ uint32_t ttl, void *context);
+# else /* HAVE_AVAHI */
+static int cups_dnssd_poll_cb(struct pollfd *pollfds,
+ unsigned int num_pollfds,
+ int timeout, void *context);
+static void cups_dnssd_query_cb(AvahiRecordBrowser *browser,
+ AvahiIfIndex interface,
+ AvahiProtocol protocol,
+ AvahiBrowserEvent event,
+ const char *name, uint16_t rrclass,
+ uint16_t rrtype, const void *rdata,
+ size_t rdlen,
+ AvahiLookupResultFlags flags,
+ void *context);
+# endif /* HAVE_DNSSD */
+static const char *cups_dnssd_resolve(cups_dest_t *dest, const char *uri,
+ int msec, int *cancel,
+ cups_dest_cb_t cb, void *user_data);
+static int cups_dnssd_resolve_cb(void *context);
+static void cups_dnssd_unquote(char *dst, const char *src,
+ size_t dstsize);
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
+static int cups_find_dest(const char *name, const char *instance,
+ int num_dests, cups_dest_t *dests, int prev,
+ int *rdiff);
+static char *cups_get_default(const char *filename, char *namebuf,
+ size_t namesize, const char **instance);
+static int cups_get_dests(const char *filename, const char *match_name,
+ const char *match_inst, int user_default_set,
+ int num_dests, cups_dest_t **dests);
+static char *cups_make_string(ipp_attribute_t *attr, char *buffer,
+ size_t bufsize);
/*
@@ -226,11 +403,6 @@ _cupsAppleCopyDefaultPrinter(void)
return (NULL);
}
-//# ifdef DEBUG
-// CFStringGetCString(network, name, namesize, kCFStringEncodingUTF8);
-// DEBUG_printf(("2_cupsUserDefault: network=\"%s\"", name));
-//# endif /* DEBUG */
-
/*
* Lookup the network in the preferences...
*/
@@ -419,6 +591,611 @@ _cupsAppleSetUseLastPrinter(
/*
+ * 'cupsConnectDest()' - Connect to the server for a destination.
+ *
+ * Connect to the destination, returning a new http_t connection object and
+ * optionally the resource path to use for the destination. These calls will
+ * block until a connection is made, the timeout expires, the integer pointed
+ * to by "cancel" is non-zero, or the callback function (or block) returns 0,
+ * The caller is responsible for calling httpClose() on the returned object.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+http_t * /* O - Connection to server or @code NULL@ */
+cupsConnectDest(
+ cups_dest_t *dest, /* I - Destination */
+ unsigned flags, /* I - Connection flags */
+ int msec, /* I - Timeout in milliseconds */
+ int *cancel, /* I - Pointer to "cancel" variable */
+ char *resource, /* I - Resource buffer */
+ size_t resourcesize, /* I - Size of resource buffer */
+ cups_dest_cb_t cb, /* I - Callback function */
+ void *user_data) /* I - User data pointer */
+{
+ const char *uri; /* Printer URI */
+ char scheme[32], /* URI scheme */
+ userpass[256], /* Username and password (unused) */
+ hostname[256], /* Hostname */
+ tempresource[1024]; /* Temporary resource buffer */
+ int port; /* Port number */
+ char portstr[16]; /* Port number string */
+ http_encryption_t encryption; /* Encryption to use */
+ http_addrlist_t *addrlist; /* Address list for server */
+ http_t *http; /* Connection to server */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!dest)
+ {
+ if (resource)
+ *resource = '\0';
+
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(EINVAL), 0);
+ return (NULL);
+ }
+
+ if (!resource || resourcesize < 1)
+ {
+ resource = tempresource;
+ resourcesize = sizeof(tempresource);
+ }
+
+ /*
+ * Grab the printer URI...
+ */
+
+ if ((uri = cupsGetOption("printer-uri-supported", dest->num_options,
+ dest->options)) == NULL)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(ENOENT), 0);
+
+ if (cb)
+ (*cb)(user_data, CUPS_DEST_FLAGS_UNCONNECTED | CUPS_DEST_FLAGS_ERROR,
+ dest);
+
+ return (NULL);
+ }
+
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ if (strstr(uri, "._tcp"))
+ {
+ if ((uri = cups_dnssd_resolve(dest, uri, msec, cancel, cb,
+ user_data)) == NULL)
+ return (NULL);
+ }
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ if (httpSeparateURI(HTTP_URI_CODING_ALL, uri, scheme, sizeof(scheme),
+ userpass, sizeof(userpass), hostname, sizeof(hostname),
+ &port, resource, resourcesize) < HTTP_URI_OK)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, _("Bad printer URI."), 1);
+
+ if (cb)
+ (*cb)(user_data, CUPS_DEST_FLAGS_UNCONNECTED | CUPS_DEST_FLAGS_ERROR,
+ dest);
+
+ return (NULL);
+ }
+
+ /*
+ * Lookup the address for the server...
+ */
+
+ if (cb)
+ (*cb)(user_data, CUPS_DEST_FLAGS_UNCONNECTED | CUPS_DEST_FLAGS_RESOLVING,
+ dest);
+
+ snprintf(portstr, sizeof(portstr), "%d", port);
+
+ if ((addrlist = httpAddrGetList(hostname, AF_UNSPEC, portstr)) == NULL)
+ {
+ if (cb)
+ (*cb)(user_data, CUPS_DEST_FLAGS_UNCONNECTED | CUPS_DEST_FLAGS_ERROR,
+ dest);
+
+ return (NULL);
+ }
+
+ if (cancel && *cancel)
+ {
+ httpAddrFreeList(addrlist);
+
+ if (cb)
+ (*cb)(user_data, CUPS_DEST_FLAGS_UNCONNECTED | CUPS_DEST_FLAGS_CANCELED,
+ dest);
+
+ return (NULL);
+ }
+
+ /*
+ * Create the HTTP object pointing to the server referenced by the URI...
+ */
+
+ if (!strcmp(scheme, "ipps") || port == 443)
+ encryption = HTTP_ENCRYPT_ALWAYS;
+ else
+ encryption = HTTP_ENCRYPT_IF_REQUESTED;
+
+ http = _httpCreate(hostname, port, addrlist, encryption, AF_UNSPEC);
+
+ /*
+ * Connect if requested...
+ */
+
+ if (flags & CUPS_DEST_FLAGS_UNCONNECTED)
+ {
+ if (cb)
+ (*cb)(user_data, CUPS_DEST_FLAGS_UNCONNECTED, dest);
+ }
+ else
+ {
+ if (cb)
+ (*cb)(user_data, CUPS_DEST_FLAGS_UNCONNECTED | CUPS_DEST_FLAGS_CONNECTING,
+ dest);
+
+ if (!httpReconnect2(http, msec, cancel) && cb)
+ {
+ if (cancel && *cancel)
+ (*cb)(user_data,
+ CUPS_DEST_FLAGS_UNCONNECTED | CUPS_DEST_FLAGS_CONNECTING, dest);
+ else
+ (*cb)(user_data, CUPS_DEST_FLAGS_UNCONNECTED | CUPS_DEST_FLAGS_ERROR,
+ dest);
+ }
+ else if (cb)
+ (*cb)(user_data, CUPS_DEST_FLAGS_NONE, dest);
+ }
+
+ return (http);
+}
+
+
+#ifdef __BLOCKS__
+/*
+ * 'cupsConnectDestBlock()' - Connect to the server for a destination.
+ *
+ * Connect to the destination, returning a new http_t connection object and
+ * optionally the resource path to use for the destination. These calls will
+ * block until a connection is made, the timeout expires, the integer pointed
+ * to by "cancel" is non-zero, or the callback function (or block) returns 0,
+ * The caller is responsible for calling httpClose() on the returned object.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+http_t * /* O - Connection to server or @code NULL@ */
+cupsConnectDestBlock(
+ cups_dest_t *dest, /* I - Destination */
+ unsigned flags, /* I - Connection flags */
+ int msec, /* I - Timeout in milliseconds */
+ int *cancel, /* I - Pointer to "cancel" variable */
+ char *resource, /* I - Resource buffer */
+ size_t resourcesize, /* I - Size of resource buffer */
+ cups_dest_block_t block) /* I - Callback block */
+{
+ return (cupsConnectDest(dest, flags, msec, cancel, resource, resourcesize,
+ (cups_dest_cb_t)cups_block_cb, (void *)block));
+}
+#endif /* __BLOCKS__ */
+
+
+/*
+ * 'cupsCopyDest()' - Copy a destination.
+ *
+ * Make a copy of the destination to an array of destinations (or just a single
+ * copy) - for use with the cupsEnumDests* functions. The caller is responsible
+ * for calling cupsFreeDests() on the returned object(s).
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int
+cupsCopyDest(cups_dest_t *dest,
+ int num_dests,
+ cups_dest_t **dests)
+{
+ int i; /* Looping var */
+ cups_dest_t *new_dest; /* New destination pointer */
+ cups_option_t *new_option, /* Current destination option */
+ *option; /* Current parent option */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!dest || num_dests < 0 || !dests)
+ return (num_dests);
+
+ /*
+ * See if the destination already exists...
+ */
+
+ if ((new_dest = cupsGetDest(dest->name, dest->instance, num_dests,
+ *dests)) != NULL)
+ {
+ /*
+ * Protect against copying destination to itself...
+ */
+
+ if (new_dest == dest)
+ return (num_dests);
+
+ /*
+ * Otherwise, free the options...
+ */
+
+ cupsFreeOptions(new_dest->num_options, new_dest->options);
+
+ new_dest->num_options = 0;
+ new_dest->options = NULL;
+ }
+ else
+ new_dest = cups_add_dest(dest->name, dest->instance, &num_dests, dests);
+
+ if (new_dest)
+ {
+ if ((new_dest->options = calloc(sizeof(cups_option_t),
+ dest->num_options)) == NULL)
+ return (cupsRemoveDest(dest->name, dest->instance, num_dests, dests));
+
+ new_dest->num_options = dest->num_options;
+
+ for (i = dest->num_options, option = dest->options,
+ new_option = new_dest->options;
+ i > 0;
+ i --, option ++, new_option ++)
+ {
+ new_option->name = _cupsStrRetain(option->name);
+ new_option->value = _cupsStrRetain(option->value);
+ }
+ }
+
+ return (num_dests);
+}
+
+
+/*
+ * 'cupsEnumDests()' - Enumerate available destinations with a callback function.
+ *
+ * Destinations are enumerated from one or more sources. The callback function
+ * receives the @code user_data@ pointer, destination name, instance, number of
+ * options, and options which can be used as input to the @link cupsAddDest@
+ * function. The function must return 1 to continue enumeration or 0 to stop.
+ *
+ * Enumeration happens on the current thread and does not return until all
+ * destinations have been enumerated or the callback function returns 0.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+cupsEnumDests(
+ unsigned flags, /* I - Enumeration flags */
+ int msec, /* I - Timeout in milliseconds,
+ * -1 for indefinite */
+ int *cancel, /* I - Pointer to "cancel" variable */
+ cups_ptype_t type, /* I - Printer type bits */
+ cups_ptype_t mask, /* I - Mask for printer type bits */
+ cups_dest_cb_t cb, /* I - Callback function */
+ void *user_data) /* I - User data */
+{
+ int i, /* Looping var */
+ num_dests; /* Number of destinations */
+ cups_dest_t *dests = NULL, /* Destinations */
+ *dest; /* Current destination */
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ int count, /* Number of queries started */
+ remaining; /* Remainder of timeout */
+ _cups_dnssd_data_t data; /* Data for callback */
+ _cups_dnssd_device_t *device; /* Current device */
+# ifdef HAVE_DNSSD
+ int nfds, /* Number of files responded */
+ main_fd; /* File descriptor for lookups */
+ DNSServiceRef ipp_ref, /* IPP browser */
+ local_ipp_ref; /* Local IPP browser */
+# ifdef HAVE_SSL
+ DNSServiceRef ipps_ref, /* IPPS browser */
+ local_ipps_ref; /* Local IPPS browser */
+# endif /* HAVE_SSL */
+# ifdef HAVE_POLL
+ struct pollfd pfd; /* Polling data */
+# else
+ fd_set input; /* Input set for select() */
+ struct timeval timeout; /* Timeout for select() */
+# endif /* HAVE_POLL */
+# else /* HAVE_AVAHI */
+ int error; /* Error value */
+ AvahiServiceBrowser *ipp_ref; /* IPP browser */
+# ifdef HAVE_SSL
+ AvahiServiceBrowser *ipps_ref; /* IPPS browser */
+# endif /* HAVE_SSL */
+# endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ /*
+ * Range check input...
+ */
+
+ (void)flags;
+
+ if (!cb)
+ return (0);
+
+ /*
+ * Get the list of local printers and pass them to the callback function...
+ */
+
+ num_dests = _cupsGetDests(CUPS_HTTP_DEFAULT, CUPS_GET_PRINTERS, NULL, &dests,
+ type, mask);
+
+ for (i = num_dests, dest = dests;
+ i > 0 && (!cancel || !*cancel);
+ i --, dest ++)
+ if (!(*cb)(user_data, i > 1 ? CUPS_DEST_FLAGS_MORE : CUPS_DEST_FLAGS_NONE,
+ dest))
+ break;
+
+ cupsFreeDests(num_dests, dests);
+
+ if (i > 0 || msec == 0)
+ return (1);
+
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ /*
+ * Get Bonjour-shared printers...
+ */
+
+ data.type = type;
+ data.mask = mask;
+ data.devices = cupsArrayNew3((cups_array_func_t)cups_dnssd_compare_devices,
+ NULL, NULL, 0, NULL,
+ (cups_afree_func_t)cups_dnssd_free_device);
+
+# ifdef HAVE_DNSSD
+ if (DNSServiceCreateConnection(&data.main_ref) != kDNSServiceErr_NoError)
+ return (0);
+
+ main_fd = DNSServiceRefSockFD(data.main_ref);
+
+ ipp_ref = data.main_ref;
+ DNSServiceBrowse(&ipp_ref, kDNSServiceFlagsShareConnection, 0,
+ "_ipp._tcp", NULL,
+ (DNSServiceBrowseReply)cups_dnssd_browse_cb, &data);
+
+ local_ipp_ref = data.main_ref;
+ DNSServiceBrowse(&local_ipp_ref, kDNSServiceFlagsShareConnection,
+ kDNSServiceInterfaceIndexLocalOnly,
+ "_ipp._tcp", NULL,
+ (DNSServiceBrowseReply)cups_dnssd_local_cb, &data);
+
+# ifdef HAVE_SSL
+ ipps_ref = data.main_ref;
+ DNSServiceBrowse(&ipps_ref, kDNSServiceFlagsShareConnection, 0,
+ "_ipps._tcp", NULL,
+ (DNSServiceBrowseReply)cups_dnssd_browse_cb, &data);
+
+ local_ipps_ref = data.main_ref;
+ DNSServiceBrowse(&local_ipps_ref, kDNSServiceFlagsShareConnection,
+ kDNSServiceInterfaceIndexLocalOnly,
+ "_ipps._tcp", NULL,
+ (DNSServiceBrowseReply)cups_dnssd_local_cb, &data);
+# endif /* HAVE_SSL */
+
+# else /* HAVE_AVAHI */
+ if ((data.simple_poll = avahi_simple_poll_new()) == NULL)
+ {
+ DEBUG_puts("cupsEnumDests: Unable to create Avahi simple poll object.");
+ return (1);
+ }
+
+ avahi_simple_poll_set_func(data.simple_poll, cups_dnssd_poll_cb, &data);
+
+ data.client = avahi_client_new(avahi_simple_poll_get(data.simple_poll),
+ 0, cups_dnssd_client_cb, &data,
+ &error);
+ if (!data.client)
+ {
+ DEBUG_puts("cupsEnumDests: Unable to create Avahi client.");
+ avahi_simple_poll_free(data.simple_poll);
+ return (1);
+ }
+
+ ipp_ref = avahi_service_browser_new(data.client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC, "_ipp._tcp", NULL,
+ 0, cups_dnssd_browse_cb, &data);
+# ifdef HAVE_SSL
+ ipps_ref = avahi_service_browser_new(data.client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC, "_ipps._tcp", NULL,
+ 0, cups_dnssd_browse_cb, &data);
+# endif /* HAVE_SSL */
+# endif /* HAVE_DNSSD */
+
+ if (msec < 0)
+ remaining = INT_MAX;
+ else
+ remaining = msec;
+
+ while (remaining > 0 && (!cancel || !*cancel))
+ {
+ /*
+ * Check for input...
+ */
+
+# ifdef HAVE_DNSSD
+# ifdef HAVE_POLL
+ pfd.fd = main_fd;
+ pfd.events = POLLIN;
+
+ nfds = poll(&pfd, 1, remaining > 250 ? 250 : remaining);
+
+# else
+ FD_ZERO(&input);
+ FD_SET(main_fd, &input);
+
+ timeout.tv_sec = 0;
+ timeout.tv_usec = remaining > 250 ? 250000 : remaining * 1000;
+
+ nfds = select(main_fd + 1, &input, NULL, NULL, &timeout);
+# endif /* HAVE_POLL */
+
+ if (nfds > 0)
+ DNSServiceProcessResult(data.main_ref);
+ else if (nfds == 0)
+ remaining -= 250;
+
+# else /* HAVE_AVAHI */
+ data.got_data = 0;
+
+ if ((error = avahi_simple_poll_iterate(data.simple_poll, 250)) > 0)
+ {
+ /*
+ * We've been told to exit the loop. Perhaps the connection to
+ * Avahi failed.
+ */
+
+ break;
+ }
+
+ if (!data.got_data)
+ remaining -= 250;
+# endif /* HAVE_DNSSD */
+
+ for (device = (_cups_dnssd_device_t *)cupsArrayFirst(data.devices),
+ count = 0;
+ device;
+ device = (_cups_dnssd_device_t *)cupsArrayNext(data.devices))
+ {
+ if (device->ref)
+ count ++;
+
+ if (!device->ref && device->state == _CUPS_DNSSD_NEW)
+ {
+ DEBUG_printf(("1cupsEnumDests: Querying '%s'.", device->fullName));
+
+# ifdef HAVE_DNSSD
+ device->ref = data.main_ref;
+
+ if (DNSServiceQueryRecord(&(device->ref),
+ kDNSServiceFlagsShareConnection,
+ 0, device->fullName,
+ kDNSServiceType_TXT,
+ kDNSServiceClass_IN,
+ (DNSServiceQueryRecordReply)cups_dnssd_query_cb,
+ &data) == kDNSServiceErr_NoError)
+ {
+ count ++;
+ }
+ else
+ {
+ device->ref = 0;
+ device->state = _CUPS_DNSSD_ERROR;
+
+ DEBUG_puts("1cupsEnumDests: Query failed.");
+ }
+
+# else /* HAVE_AVAHI */
+ if ((device->ref = avahi_record_browser_new(data.client,
+ AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC,
+ device->fullName,
+ AVAHI_DNS_CLASS_IN,
+ AVAHI_DNS_TYPE_TXT,
+ 0,
+ cups_dnssd_query_cb,
+ &data)) != NULL)
+ {
+ count ++;
+ }
+ else
+ {
+ device->state = _CUPS_DNSSD_ERROR;
+
+ DEBUG_printf(("1cupsEnumDests: Query failed: %s",
+ avahi_strerror(avahi_client_errno(data.client))));
+ }
+# endif /* HAVE_DNSSD */
+ }
+ else if (device->ref && device->state == _CUPS_DNSSD_PENDING)
+ {
+ if ((device->type & mask) == type)
+ {
+ if (!(*cb)(user_data, CUPS_DEST_FLAGS_NONE, &device->dest))
+ {
+ remaining = -1;
+ break;
+ }
+ }
+
+ device->state = _CUPS_DNSSD_ACTIVE;
+ }
+ }
+ }
+
+ cupsArrayDelete(data.devices);
+
+# ifdef HAVE_DNSSD
+ DNSServiceRefDeallocate(ipp_ref);
+ DNSServiceRefDeallocate(local_ipp_ref);
+
+# ifdef HAVE_SSL
+ DNSServiceRefDeallocate(ipp_ref);
+ DNSServiceRefDeallocate(local_ipp_ref);
+# endif /* HAVE_SSL */
+
+ DNSServiceRefDeallocate(data.main_ref);
+
+# else /* HAVE_AVAHI */
+ avahi_service_browser_free(ipp_ref);
+# ifdef HAVE_SSL
+ avahi_service_browser_free(ipps_ref);
+# endif /* HAVE_SSL */
+
+ avahi_client_free(data.client);
+ avahi_simple_poll_free(data.simple_poll);
+# endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_DNSSD */
+
+ return (1);
+}
+
+
+# ifdef __BLOCKS__
+/*
+ * 'cupsEnumDestsBlock()' - Enumerate available destinations with a block.
+ *
+ * Destinations are enumerated from one or more sources. The block receives the
+ * destination name, instance, number of options, and options which can be used
+ * as input to the @link cupsAddDest@ function. The block must return 1 to
+ * continue enumeration or 0 to stop.
+ *
+ * Enumeration happens on the current thread and does not return until all
+ * destinations have been enumerated or the block returns 0.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+cupsEnumDestsBlock(
+ unsigned flags, /* I - Enumeration flags */
+ int timeout, /* I - Timeout in milliseconds, 0 for indefinite */
+ int *cancel, /* I - Pointer to "cancel" variable */
+ cups_ptype_t type, /* I - Printer type bits */
+ cups_ptype_t mask, /* I - Mask for printer type bits */
+ cups_dest_block_t block) /* I - Block */
+{
+ return (cupsEnumDests(flags, timeout, cancel, type, mask,
+ (cups_dest_cb_t)cups_block_cb, (void *)block));
+}
+# endif /* __BLOCKS__ */
+
+
+/*
* 'cupsFreeDests()' - Free the memory used by the list of destinations.
*/
@@ -497,6 +1274,72 @@ cupsGetDest(const char *name, /* I - Destination name or @code NULL@ for the d
/*
+ * '_cupsGetDestResource()' - Get the resource path and URI for a destination.
+ */
+
+const char * /* O - Printer URI */
+_cupsGetDestResource(
+ cups_dest_t *dest, /* I - Destination */
+ char *resource, /* I - Resource buffer */
+ size_t resourcesize) /* I - Size of resource buffer */
+{
+ const char *uri; /* Printer URI */
+ char scheme[32], /* URI scheme */
+ userpass[256], /* Username and password (unused) */
+ hostname[256]; /* Hostname */
+ int port; /* Port number */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!dest || !resource || resourcesize < 1)
+ {
+ if (resource)
+ *resource = '\0';
+
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(EINVAL), 0);
+ return (NULL);
+ }
+
+ /*
+ * Grab the printer URI...
+ */
+
+ if ((uri = cupsGetOption("printer-uri-supported", dest->num_options,
+ dest->options)) == NULL)
+ {
+ if (resource)
+ *resource = '\0';
+
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(ENOENT), 0);
+
+ return (NULL);
+ }
+
+#ifdef HAVE_DNSSD
+ if (strstr(uri, "._tcp"))
+ {
+ if ((uri = cups_dnssd_resolve(dest, uri, 5000, NULL, NULL, NULL)) == NULL)
+ return (NULL);
+ }
+#endif /* HAVE_DNSSD */
+
+ if (httpSeparateURI(HTTP_URI_CODING_ALL, uri, scheme, sizeof(scheme),
+ userpass, sizeof(userpass), hostname, sizeof(hostname),
+ &port, resource, resourcesize) < HTTP_URI_OK)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, _("Bad printer URI."), 1);
+
+ return (NULL);
+ }
+
+ return (uri);
+}
+
+
+/*
* '_cupsGetDests()' - Get destinations from a server.
*
* "op" is CUPS_GET_PRINTERS to get a full list, CUPS_GET_DEFAULT to get the
@@ -514,16 +1357,19 @@ cupsGetDest(const char *name, /* I - Destination name or @code NULL@ for the d
* Free the memory used by the destination array using the @link cupsFreeDests@
* function.
*
- * Note: On Mac OS X this function also gets the default paper from the system
+ * Note: On OS X this function also gets the default paper from the system
* preferences (~/L/P/org.cups.PrintingPrefs.plist) and includes it in the
* options array for each destination that supports it.
*/
-int /* O - Number of destinations */
-_cupsGetDests(http_t *http, /* I - Connection to server or CUPS_HTTP_DEFAULT */
- ipp_op_t op, /* I - IPP operation */
- const char *name, /* I - Name of destination */
- cups_dest_t **dests) /* IO - Destinations */
+int /* O - Number of destinations */
+_cupsGetDests(http_t *http, /* I - Connection to server or
+ * @code CUPS_HTTP_DEFAULT@ */
+ ipp_op_t op, /* I - IPP operation */
+ const char *name, /* I - Name of destination */
+ cups_dest_t **dests, /* IO - Destinations */
+ cups_ptype_t type, /* I - Printer type bits */
+ cups_ptype_t mask) /* I - Printer type mask */
{
int num_dests = 0; /* Number of destinations */
cups_dest_t *dest; /* Current destination */
@@ -606,6 +1452,13 @@ _cupsGetDests(http_t *http, /* I - Connection to server or CUPS_HTTP_DEFAUL
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL,
uri);
}
+ else if (mask)
+ {
+ ippAddInteger(request, IPP_TAG_OPERATION, IPP_TAG_ENUM, "printer-type",
+ type);
+ ippAddInteger(request, IPP_TAG_OPERATION, IPP_TAG_ENUM, "printer-type-mask",
+ mask);
+ }
/*
* Do the request and get back a response...
@@ -797,7 +1650,7 @@ cupsGetDests(cups_dest_t **dests) /* O - Destinations */
* Use the @link cupsFreeDests@ function to free the destination list and
* the @link cupsGetDest@ function to find a particular destination.
*
- * @since CUPS 1.1.21/Mac OS X 10.4@
+ * @since CUPS 1.1.21/OS X 10.4@
*/
int /* O - Number of destinations */
@@ -833,7 +1686,7 @@ cupsGetDests2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_
*/
*dests = (cups_dest_t *)0;
- num_dests = _cupsGetDests(http, CUPS_GET_PRINTERS, NULL, dests);
+ num_dests = _cupsGetDests(http, CUPS_GET_PRINTERS, NULL, dests, 0, 0);
if (cupsLastError() >= IPP_REDIRECTION_OTHER_SITE)
{
@@ -980,7 +1833,7 @@ cupsGetDests2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_
* The returned destination must be freed using @link cupsFreeDests@ with a
* "num_dests" value of 1.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
cups_dest_t * /* O - Destination or @code NULL@ */
@@ -1055,7 +1908,7 @@ cupsGetNamedDest(http_t *http, /* I - Connection to server or @code CUPS_HTT
* Get the printer's attributes...
*/
- if (!_cupsGetDests(http, op, name, &dest))
+ if (!_cupsGetDests(http, op, name, &dest, 0, 0))
{
if (op == CUPS_GET_DEFAULT || (name && !set_as_default))
return (NULL);
@@ -1065,7 +1918,7 @@ cupsGetNamedDest(http_t *http, /* I - Connection to server or @code CUPS_HTT
* configuration file does not exist. Find out the real default.
*/
- if (!_cupsGetDests(http, CUPS_GET_DEFAULT, NULL, &dest))
+ if (!_cupsGetDests(http, CUPS_GET_DEFAULT, NULL, &dest, 0, 0))
return (NULL);
}
@@ -1105,7 +1958,7 @@ cupsGetNamedDest(http_t *http, /* I - Connection to server or @code CUPS_HTT
* @link cupsSetDests@ or @link cupsSetDests2@ functions to save the new
* options for the user.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
int /* O - New number of destinations */
@@ -1151,7 +2004,7 @@ cupsRemoveDest(const char *name, /* I - Destination name */
/*
* 'cupsSetDefaultDest()' - Set the default destination.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
void
@@ -1206,7 +2059,7 @@ cupsSetDests(int num_dests, /* I - Number of destinations */
* This function saves the destinations to /etc/cups/lpoptions when run
* as root and ~/.cups/lpoptions when run as a normal user.
*
- * @since CUPS 1.1.21/Mac OS X 10.4@
+ * @since CUPS 1.1.21/OS X 10.4@
*/
int /* O - 0 on success, -1 on error */
@@ -1242,7 +2095,7 @@ cupsSetDests2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_
* Get the server destinations...
*/
- num_temps = _cupsGetDests(http, CUPS_GET_PRINTERS, NULL, &temps);
+ num_temps = _cupsGetDests(http, CUPS_GET_PRINTERS, NULL, &temps, 0, 0);
if (cupsLastError() >= IPP_REDIRECTION_OTHER_SITE)
{
@@ -1731,6 +2584,22 @@ cups_add_dest(const char *name, /* I - Name of destination */
}
+# ifdef __BLOCKS__
+/*
+ * 'cups_block_cb()' - Enumeration callback for block API.
+ */
+
+static int /* O - 1 to continue, 0 to stop */
+cups_block_cb(
+ cups_dest_block_t block, /* I - Block */
+ unsigned flags, /* I - Destination flags */
+ cups_dest_t *dest) /* I - Destination */
+{
+ return ((block)(flags, dest));
+}
+# endif /* __BLOCKS__ */
+
+
/*
* 'cups_compare_dests()' - Compare two destinations.
*/
@@ -1751,6 +2620,872 @@ cups_compare_dests(cups_dest_t *a, /* I - First destination */
}
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+# ifdef HAVE_DNSSD
+/*
+ * 'cups_dnssd_browse_cb()' - Browse for printers.
+ */
+
+static void
+cups_dnssd_browse_cb(
+ DNSServiceRef sdRef, /* I - Service reference */
+ DNSServiceFlags flags, /* I - Option flags */
+ uint32_t interfaceIndex, /* I - Interface number */
+ DNSServiceErrorType errorCode, /* I - Error, if any */
+ const char *serviceName, /* I - Name of service/device */
+ const char *regtype, /* I - Type of service */
+ const char *replyDomain, /* I - Service domain */
+ void *context) /* I - Enumeration data */
+{
+ _cups_dnssd_data_t *data = (_cups_dnssd_data_t *)context;
+ /* Enumeration data */
+
+
+ DEBUG_printf(("5cups_dnssd_browse_cb(sdRef=%p, flags=%x, "
+ "interfaceIndex=%d, errorCode=%d, serviceName=\"%s\", "
+ "regtype=\"%s\", replyDomain=\"%s\", context=%p)",
+ sdRef, flags, interfaceIndex, errorCode, serviceName, regtype,
+ replyDomain, context));
+
+ /*
+ * Don't do anything on error...
+ */
+
+ if (errorCode != kDNSServiceErr_NoError)
+ return;
+
+ /*
+ * Get the device...
+ */
+
+ cups_dnssd_get_device(data, serviceName, regtype, replyDomain);
+}
+
+
+# else /* HAVE_AVAHI */
+/*
+ * 'cups_dnssd_browse_cb()' - Browse for printers.
+ */
+
+static void
+cups_dnssd_browse_cb(
+ AvahiServiceBrowser *browser, /* I - Browser */
+ AvahiIfIndex interface, /* I - Interface index (unused) */
+ AvahiProtocol protocol, /* I - Network protocol (unused) */
+ AvahiBrowserEvent event, /* I - What happened */
+ const char *name, /* I - Service name */
+ const char *type, /* I - Registration type */
+ const char *domain, /* I - Domain */
+ AvahiLookupResultFlags flags, /* I - Flags */
+ void *context) /* I - Devices array */
+{
+ AvahiClient *client = avahi_service_browser_get_client(browser);
+ /* Client information */
+ _cups_dnssd_data_t *data = (_cups_dnssd_data_t *)context;
+ /* Enumeration data */
+
+
+ (void)interface;
+ (void)protocol;
+ (void)context;
+
+ switch (event)
+ {
+ case AVAHI_BROWSER_FAILURE:
+ DEBUG_printf(("cups_dnssd_browse_cb: %s",
+ avahi_strerror(avahi_client_errno(client))));
+ avahi_simple_poll_quit(data->simple_poll);
+ break;
+
+ case AVAHI_BROWSER_NEW:
+ /*
+ * This object is new on the network.
+ */
+
+ if (flags & AVAHI_LOOKUP_RESULT_LOCAL)
+ {
+ /*
+ * This comes from the local machine so ignore it.
+ */
+
+ DEBUG_printf(("cups_dnssd_browse_cb: Ignoring local service \"%s\".",
+ name));
+ }
+ else
+ {
+ /*
+ * Create a device entry for it if it doesn't yet exist.
+ */
+
+ cups_dnssd_get_device(data, name, type, domain);
+ }
+ break;
+
+ case AVAHI_BROWSER_REMOVE:
+ case AVAHI_BROWSER_ALL_FOR_NOW:
+ case AVAHI_BROWSER_CACHE_EXHAUSTED:
+ break;
+ }
+}
+
+
+/*
+ * 'cups_dnssd_client_cb()' - Avahi client callback function.
+ */
+
+static void
+cups_dnssd_client_cb(
+ AvahiClient *client, /* I - Client information (unused) */
+ AvahiClientState state, /* I - Current state */
+ void *context) /* I - User data (unused) */
+{
+ _cups_dnssd_data_t *data = (_cups_dnssd_data_t *)context;
+ /* Enumeration data */
+
+
+ (void)client;
+
+ /*
+ * If the connection drops, quit.
+ */
+
+ if (state == AVAHI_CLIENT_FAILURE)
+ {
+ DEBUG_puts("cups_dnssd_client_cb: Avahi connection failed.");
+ avahi_simple_poll_quit(data->simple_poll);
+ }
+}
+# endif /* HAVE_DNSSD */
+
+
+/*
+ * 'cups_dnssd_compare_device()' - Compare two devices.
+ */
+
+static int /* O - Result of comparison */
+cups_dnssd_compare_devices(
+ _cups_dnssd_device_t *a, /* I - First device */
+ _cups_dnssd_device_t *b) /* I - Second device */
+{
+ return (strcmp(a->dest.name, b->dest.name));
+}
+
+
+/*
+ * 'cups_dnssd_free_device()' - Free the memory used by a device.
+ */
+
+static void
+cups_dnssd_free_device(
+ _cups_dnssd_device_t *device, /* I - Device */
+ _cups_dnssd_data_t *data) /* I - Enumeration data */
+{
+ DEBUG_printf(("5cups_dnssd_free_device(device=%p(%s), data=%p)", device,
+ device->dest.name, data));
+
+# ifdef HAVE_DNSSD
+ if (device->ref)
+ DNSServiceRefDeallocate(device->ref);
+# else /* HAVE_AVAHI */
+ if (device->ref)
+ avahi_record_browser_free(device->ref);
+# endif /* HAVE_DNSSD */
+
+ _cupsStrFree(device->domain);
+ _cupsStrFree(device->fullName);
+ _cupsStrFree(device->regtype);
+ _cupsStrFree(device->dest.name);
+
+ cupsFreeOptions(device->dest.num_options, device->dest.options);
+
+ free(device);
+}
+
+
+/*
+ * 'cups_dnssd_get_device()' - Lookup a device and create it as needed.
+ */
+
+static _cups_dnssd_device_t * /* O - Device */
+cups_dnssd_get_device(
+ _cups_dnssd_data_t *data, /* I - Enumeration data */
+ const char *serviceName, /* I - Service name */
+ const char *regtype, /* I - Registration type */
+ const char *replyDomain) /* I - Domain name */
+{
+ _cups_dnssd_device_t key, /* Search key */
+ *device; /* Device */
+ char fullName[kDNSServiceMaxDomainName];
+ /* Full name for query */
+
+
+ DEBUG_printf(("5cups_dnssd_get_device(data=%p, serviceName=\"%s\", "
+ "regtype=\"%s\", replyDomain=\"%s\")", data, serviceName,
+ regtype, replyDomain));
+
+ /*
+ * See if this is an existing device...
+ */
+
+ key.dest.name = (char *)serviceName;
+
+ if ((device = cupsArrayFind(data->devices, &key)) != NULL)
+ {
+ /*
+ * Yes, see if we need to do anything with this...
+ */
+
+ int update = 0; /* Non-zero if we need to update */
+
+ if (!_cups_strcasecmp(replyDomain, "local.") &&
+ _cups_strcasecmp(device->domain, replyDomain))
+ {
+ /*
+ * Update the "global" listing to use the .local domain name instead.
+ */
+
+ _cupsStrFree(device->domain);
+ device->domain = _cupsStrAlloc(replyDomain);
+
+ DEBUG_printf(("6cups_dnssd_get_device: Updating '%s' to use local "
+ "domain.", device->dest.name));
+
+ update = 1;
+ }
+
+ if (!_cups_strcasecmp(regtype, "_ipps._tcp") &&
+ _cups_strcasecmp(device->regtype, regtype))
+ {
+ /*
+ * Prefer IPPS over IPP.
+ */
+
+ _cupsStrFree(device->regtype);
+ device->regtype = _cupsStrAlloc(regtype);
+
+ DEBUG_printf(("6cups_dnssd_get_device: Updating '%s' to use IPPS.",
+ device->dest.name));
+
+ update = 1;
+ }
+
+ if (!update)
+ {
+ DEBUG_printf(("6cups_dnssd_get_device: No changes to '%s'.",
+ device->dest.name));
+ return (device);
+ }
+ }
+ else
+ {
+ /*
+ * No, add the device...
+ */
+
+ DEBUG_printf(("6cups_dnssd_get_device: Adding '%s' for %s with domain "
+ "'%s'.", serviceName,
+ !strcmp(regtype, "_ipps._tcp") ? "IPPS" : "IPP",
+ replyDomain));
+
+ device = calloc(sizeof(_cups_dnssd_device_t), 1);
+ device->dest.name = _cupsStrAlloc(serviceName);
+ device->domain = _cupsStrAlloc(replyDomain);
+ device->regtype = _cupsStrAlloc(regtype);
+
+ cupsArrayAdd(data->devices, device);
+ }
+
+ /*
+ * Set the "full name" of this service, which is used for queries...
+ */
+
+# ifdef HAVE_DNSSD
+ DNSServiceConstructFullName(fullName, device->dest.name, device->regtype,
+ device->domain);
+# else /* HAVE_AVAHI */
+ avahi_service_name_join(fullName, kDNSServiceMaxDomainName, serviceName,
+ regtype, replyDomain);
+# endif /* HAVE_DNSSD */
+
+ _cupsStrFree(device->fullName);
+ device->fullName = _cupsStrAlloc(fullName);
+
+ if (device->ref)
+ {
+# ifdef HAVE_DNSSD
+ DNSServiceRefDeallocate(device->ref);
+# else /* HAVE_AVAHI */
+ avahi_record_browser_free(device->ref);
+# endif /* HAVE_DNSSD */
+
+ device->ref = 0;
+ }
+
+ if (device->state == _CUPS_DNSSD_ACTIVE)
+ {
+ (*data->cb)(data->user_data, CUPS_DEST_FLAGS_REMOVED, &device->dest);
+ device->state = _CUPS_DNSSD_NEW;
+ }
+
+ return (device);
+}
+
+
+# ifdef HAVE_DNSSD
+/*
+ * 'cups_dnssd_local_cb()' - Browse for local printers.
+ */
+
+static void
+cups_dnssd_local_cb(
+ DNSServiceRef sdRef, /* I - Service reference */
+ DNSServiceFlags flags, /* I - Option flags */
+ uint32_t interfaceIndex, /* I - Interface number */
+ DNSServiceErrorType errorCode, /* I - Error, if any */
+ const char *serviceName, /* I - Name of service/device */
+ const char *regtype, /* I - Type of service */
+ const char *replyDomain, /* I - Service domain */
+ void *context) /* I - Devices array */
+{
+ _cups_dnssd_data_t *data = (_cups_dnssd_data_t *)context;
+ /* Enumeration data */
+ _cups_dnssd_device_t *device; /* Device */
+
+
+ DEBUG_printf(("5cups_dnssd_local_cb(sdRef=%p, flags=%x, "
+ "interfaceIndex=%d, errorCode=%d, serviceName=\"%s\", "
+ "regtype=\"%s\", replyDomain=\"%s\", context=%p)",
+ sdRef, flags, interfaceIndex, errorCode, serviceName,
+ regtype, replyDomain, context));
+
+ /*
+ * Only process "add" data...
+ */
+
+ if (errorCode != kDNSServiceErr_NoError || !(flags & kDNSServiceFlagsAdd))
+ return;
+
+ /*
+ * Get the device...
+ */
+
+ device = cups_dnssd_get_device(data, serviceName, regtype, replyDomain);
+
+ /*
+ * Hide locally-registered devices...
+ */
+
+ DEBUG_printf(("6cups_dnssd_local_cb: Hiding local printer '%s'.",
+ serviceName));
+
+ if (device->ref)
+ {
+ DNSServiceRefDeallocate(device->ref);
+ device->ref = 0;
+ }
+
+ if (device->state == _CUPS_DNSSD_ACTIVE)
+ (*data->cb)(data->user_data, CUPS_DEST_FLAGS_REMOVED, &device->dest);
+
+ device->state = _CUPS_DNSSD_LOCAL;
+}
+# endif /* HAVE_DNSSD */
+
+
+# ifdef HAVE_AVAHI
+/*
+ * 'cups_dnssd_poll_cb()' - Wait for input on the specified file descriptors.
+ *
+ * Note: This function is needed because avahi_simple_poll_iterate is broken
+ * and always uses a timeout of 0 (!) milliseconds.
+ * (Avahi Ticket #364)
+ */
+
+static int /* O - Number of file descriptors matching */
+cups_dnssd_poll_cb(
+ struct pollfd *pollfds, /* I - File descriptors */
+ unsigned int num_pollfds, /* I - Number of file descriptors */
+ int timeout, /* I - Timeout in milliseconds (unused) */
+ void *context) /* I - User data (unused) */
+{
+ _cups_dnssd_data_t *data = (_cups_dnssd_data_t *)context;
+ /* Enumeration data */
+ int val; /* Return value */
+
+
+ (void)timeout;
+
+ val = poll(pollfds, num_pollfds, 250);
+
+ if (val < 0)
+ {
+ DEBUG_printf(("cups_dnssd_poll_cb: %s", strerror(errno)));
+ }
+ else if (val > 0)
+ data->got_data = 1;
+
+ return (val);
+}
+# endif /* HAVE_AVAHI */
+
+
+/*
+ * 'cups_dnssd_query_cb()' - Process query data.
+ */
+
+# ifdef HAVE_DNSSD
+static void
+cups_dnssd_query_cb(
+ DNSServiceRef sdRef, /* I - Service reference */
+ DNSServiceFlags flags, /* I - Data flags */
+ uint32_t interfaceIndex, /* I - Interface */
+ DNSServiceErrorType errorCode, /* I - Error, if any */
+ const char *fullName, /* I - Full service name */
+ uint16_t rrtype, /* I - Record type */
+ uint16_t rrclass, /* I - Record class */
+ uint16_t rdlen, /* I - Length of record data */
+ const void *rdata, /* I - Record data */
+ uint32_t ttl, /* I - Time-to-live */
+ void *context) /* I - Enumeration data */
+{
+# else /* HAVE_AVAHI */
+static void
+cups_dnssd_query_cb(
+ AvahiRecordBrowser *browser, /* I - Record browser */
+ AvahiIfIndex interfaceIndex,
+ /* I - Interface index (unused) */
+ AvahiProtocol protocol, /* I - Network protocol (unused) */
+ AvahiBrowserEvent event, /* I - What happened? */
+ const char *fullName, /* I - Service name */
+ uint16_t rrclass, /* I - Record class */
+ uint16_t rrtype, /* I - Record type */
+ const void *rdata, /* I - TXT record */
+ size_t rdlen, /* I - Length of TXT record */
+ AvahiLookupResultFlags flags, /* I - Flags */
+ void *context) /* I - Enumeration data */
+{
+ AvahiClient *client = avahi_record_browser_get_client(browser);
+ /* Client information */
+# endif /* HAVE_DNSSD */
+ _cups_dnssd_data_t *data = (_cups_dnssd_data_t *)context;
+ /* Enumeration data */
+ char name[1024], /* Service name */
+ *ptr; /* Pointer into string */
+ _cups_dnssd_device_t dkey, /* Search key */
+ *device; /* Device */
+
+
+# ifdef HAVE_DNSSD
+ DEBUG_printf(("5cups_dnssd_query_cb(sdRef=%p, flags=%x, "
+ "interfaceIndex=%d, errorCode=%d, fullName=\"%s\", "
+ "rrtype=%u, rrclass=%u, rdlen=%u, rdata=%p, ttl=%u, "
+ "context=%p)", sdRef, flags, interfaceIndex, errorCode,
+ fullName, rrtype, rrclass, rdlen, rdata, ttl, context));
+
+ /*
+ * Only process "add" data...
+ */
+
+ if (errorCode != kDNSServiceErr_NoError || !(flags & kDNSServiceFlagsAdd))
+ return;
+
+# else /* HAVE_AVAHI */
+ DEBUG_printf(("5cups_dnssd_query_cb(browser=%p, interfaceIndex=%d, "
+ "protocol=%d, event=%d, fullName=\"%s\", rrclass=%u, "
+ "rrtype=%u, rdata=%p, rdlen=%u, flags=%x, context=%p)",
+ browser, interfaceIndex, protocol, event, fullName, rrclass,
+ rrtype, rdata, (unsigned)rdlen, flags, context));
+
+ /*
+ * Only process "add" data...
+ */
+
+ if (event != AVAHI_BROWSER_NEW)
+ {
+ if (event == AVAHI_BROWSER_FAILURE)
+ DEBUG_printf(("cups_dnssd_query_cb: %s",
+ avahi_strerror(avahi_client_errno(client))));
+
+ return;
+ }
+# endif /* HAVE_DNSSD */
+
+ /*
+ * Lookup the service in the devices array.
+ */
+
+ dkey.dest.name = name;
+
+ cups_dnssd_unquote(name, fullName, sizeof(name));
+
+ if ((ptr = strstr(name, "._")) != NULL)
+ *ptr = '\0';
+
+ if ((device = cupsArrayFind(data->devices, &dkey)) != NULL)
+ {
+ /*
+ * Found it, pull out the make and model from the TXT record and save it...
+ */
+
+ const uint8_t *txt, /* Pointer into data */
+ *txtnext, /* Next key/value pair */
+ *txtend; /* End of entire TXT record */
+ uint8_t txtlen; /* Length of current key/value pair */
+ char key[256], /* Key string */
+ value[256], /* Value string */
+ make_and_model[512],
+ /* Manufacturer and model */
+ model[256], /* Model */
+ uriname[1024], /* Name for URI */
+ uri[1024]; /* Printer URI */
+ cups_ptype_t type = CUPS_PRINTER_REMOTE | CUPS_PRINTER_BW;
+ /* Printer type */
+ int saw_printer_type = 0;
+ /* Did we see a printer-type key? */
+
+ device->state = _CUPS_DNSSD_PENDING;
+ make_and_model[0] = '\0';
+
+ strcpy(model, "Unknown");
+
+ for (txt = rdata, txtend = txt + rdlen;
+ txt < txtend;
+ txt = txtnext)
+ {
+ /*
+ * Read a key/value pair starting with an 8-bit length. Since the
+ * length is 8 bits and the size of the key/value buffers is 256, we
+ * don't need to check for overflow...
+ */
+
+ txtlen = *txt++;
+
+ if (!txtlen || (txt + txtlen) > txtend)
+ break;
+
+ txtnext = txt + txtlen;
+
+ for (ptr = key; txt < txtnext && *txt != '='; txt ++)
+ *ptr++ = *txt;
+ *ptr = '\0';
+
+ if (txt < txtnext && *txt == '=')
+ {
+ txt ++;
+
+ if (txt < txtnext)
+ memcpy(value, txt, txtnext - txt);
+ value[txtnext - txt] = '\0';
+
+ DEBUG_printf(("6cups_dnssd_query_cb: %s=%s", key, value));
+ }
+ else
+ {
+ DEBUG_printf(("6cups_dnssd_query_cb: '%s' with no value.", key));
+ continue;
+ }
+
+ if (!_cups_strcasecmp(key, "usb_MFG") ||
+ !_cups_strcasecmp(key, "usb_MANU") ||
+ !_cups_strcasecmp(key, "usb_MANUFACTURER"))
+ strcpy(make_and_model, value);
+ else if (!_cups_strcasecmp(key, "usb_MDL") ||
+ !_cups_strcasecmp(key, "usb_MODEL"))
+ strcpy(model, value);
+ else if (!_cups_strcasecmp(key, "product") && !strstr(value, "Ghostscript"))
+ {
+ if (value[0] == '(')
+ {
+ /*
+ * Strip parenthesis...
+ */
+
+ if ((ptr = value + strlen(value) - 1) > value && *ptr == ')')
+ *ptr = '\0';
+
+ strcpy(model, value + 1);
+ }
+ else
+ strcpy(model, value);
+ }
+ else if (!_cups_strcasecmp(key, "ty"))
+ {
+ strcpy(model, value);
+
+ if ((ptr = strchr(model, ',')) != NULL)
+ *ptr = '\0';
+ }
+ else if (!_cups_strcasecmp(key, "note"))
+ device->dest.num_options = cupsAddOption("printer-location", value,
+ device->dest.num_options,
+ &device->dest.options);
+ else if (!_cups_strcasecmp(key, "pdl"))
+ {
+ /*
+ * Look for PDF-capable printers; only PDF-capable printers are shown.
+ */
+
+ const char *start, *next; /* Pointer into value */
+ int have_pdf = 0; /* Have PDF? */
+
+ for (start = value; start && *start; start = next)
+ {
+ if (!_cups_strncasecmp(start, "application/pdf", 15) &&
+ (!start[15] || start[15] == ','))
+ {
+ have_pdf = 1;
+ break;
+ }
+
+ if ((next = strchr(start, ',')) != NULL)
+ next ++;
+ }
+
+ if (!have_pdf)
+ device->state = _CUPS_DNSSD_INCOMPATIBLE;
+ }
+ else if (!_cups_strcasecmp(key, "printer-type"))
+ {
+ /*
+ * Value is either NNNN or 0xXXXX
+ */
+
+ saw_printer_type = 1;
+ type = strtol(value, NULL, 0);
+ }
+ else if (!saw_printer_type)
+ {
+ if (!_cups_strcasecmp(key, "air") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_AUTHENTICATED;
+ else if (!_cups_strcasecmp(key, "bind") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_BIND;
+ else if (!_cups_strcasecmp(key, "collate") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_COLLATE;
+ else if (!_cups_strcasecmp(key, "color") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_COLOR;
+ else if (!_cups_strcasecmp(key, "copies") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_COPIES;
+ else if (!_cups_strcasecmp(key, "duplex") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_DUPLEX;
+ else if (!_cups_strcasecmp(key, "fax") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_MFP;
+ else if (!_cups_strcasecmp(key, "papercustom") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_VARIABLE;
+ else if (!_cups_strcasecmp(key, "papermax"))
+ {
+ if (!_cups_strcasecmp(value, "legal-a4"))
+ type |= CUPS_PRINTER_SMALL;
+ else if (!_cups_strcasecmp(value, "isoc-a2"))
+ type |= CUPS_PRINTER_MEDIUM;
+ else if (!_cups_strcasecmp(value, ">isoc-a2"))
+ type |= CUPS_PRINTER_LARGE;
+ }
+ else if (!_cups_strcasecmp(key, "punch") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_PUNCH;
+ else if (!_cups_strcasecmp(key, "scan") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_MFP;
+ else if (!_cups_strcasecmp(key, "sort") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_SORT;
+ else if (!_cups_strcasecmp(key, "staple") &&
+ !_cups_strcasecmp(value, "t"))
+ type |= CUPS_PRINTER_STAPLE;
+ }
+ }
+
+ /*
+ * Save the printer-xxx values...
+ */
+
+ device->dest.num_options = cupsAddOption("printer-info", name,
+ device->dest.num_options,
+ &device->dest.options);
+
+ if (make_and_model[0])
+ {
+ strlcat(make_and_model, " ", sizeof(make_and_model));
+ strlcat(make_and_model, model, sizeof(make_and_model));
+
+ device->dest.num_options = cupsAddOption("printer-make-and-model",
+ make_and_model,
+ device->dest.num_options,
+ &device->dest.options);
+ }
+ else
+ device->dest.num_options = cupsAddOption("printer-make-and-model",
+ model,
+ device->dest.num_options,
+ &device->dest.options);
+
+ device->type = type;
+ snprintf(value, sizeof(value), "%u", type);
+ device->dest.num_options = cupsAddOption("printer-type", value,
+ device->dest.num_options,
+ &device->dest.options);
+
+ /*
+ * Save the URI...
+ */
+
+ cups_dnssd_unquote(uriname, device->fullName, sizeof(uriname));
+ httpAssembleURI(HTTP_URI_CODING_ALL, uri, sizeof(uri),
+ !strcmp(device->regtype, "_ipps._tcp") ? "ipps" : "ipp",
+ NULL, uriname, 0, saw_printer_type ? "/cups" : "/");
+
+ DEBUG_printf(("6cups_dnssd_query: printer-uri-supported=\"%s\"", uri));
+
+ device->dest.num_options = cupsAddOption("printer-uri-supported", uri,
+ device->dest.num_options,
+ &device->dest.options);
+ }
+ else
+ DEBUG_printf(("6cups_dnssd_query: Ignoring TXT record for '%s'.",
+ fullName));
+}
+
+
+/*
+ * 'cups_dnssd_resolve()' - Resolve a Bonjour printer URI.
+ */
+
+static const char * /* O - Resolved URI or NULL */
+cups_dnssd_resolve(
+ cups_dest_t *dest, /* I - Destination */
+ const char *uri, /* I - Current printer URI */
+ int msec, /* I - Time in milliseconds */
+ int *cancel, /* I - Pointer to "cancel" variable */
+ cups_dest_cb_t cb, /* I - Callback */
+ void *user_data) /* I - User data for callback */
+{
+ char tempuri[1024]; /* Temporary URI buffer */
+ _cups_dnssd_resolve_t resolve; /* Resolve data */
+
+
+ /*
+ * Resolve the URI...
+ */
+
+ resolve.cancel = cancel;
+ gettimeofday(&resolve.end_time, NULL);
+ if (msec > 0)
+ {
+ resolve.end_time.tv_sec += msec / 1000;
+ resolve.end_time.tv_usec += (msec % 1000) * 1000;
+
+ while (resolve.end_time.tv_usec >= 1000000)
+ {
+ resolve.end_time.tv_sec ++;
+ resolve.end_time.tv_usec -= 1000000;
+ }
+ }
+ else
+ resolve.end_time.tv_sec += 75;
+
+ if (cb)
+ (*cb)(user_data, CUPS_DEST_FLAGS_UNCONNECTED | CUPS_DEST_FLAGS_RESOLVING,
+ dest);
+
+ if ((uri = _httpResolveURI(uri, tempuri, sizeof(tempuri),
+ _HTTP_RESOLVE_FQDN, cups_dnssd_resolve_cb,
+ &resolve)) == NULL)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, _("Unable to resolve printer URI."), 1);
+
+ if (cb)
+ (*cb)(user_data, CUPS_DEST_FLAGS_UNCONNECTED | CUPS_DEST_FLAGS_ERROR,
+ dest);
+
+ return (NULL);
+ }
+
+ /*
+ * Save the resolved URI...
+ */
+
+ dest->num_options = cupsAddOption("printer-uri-supported", uri,
+ dest->num_options, &dest->options);
+
+ return (cupsGetOption("printer-uri-supported", dest->num_options,
+ dest->options));
+}
+
+
+/*
+ * 'cups_dnssd_resolve_cb()' - See if we should continue resolving.
+ */
+
+static int /* O - 1 to continue, 0 to stop */
+cups_dnssd_resolve_cb(void *context) /* I - Resolve data */
+{
+ _cups_dnssd_resolve_t *resolve = (_cups_dnssd_resolve_t *)context;
+ /* Resolve data */
+ struct timeval curtime; /* Current time */
+
+
+ /*
+ * If the cancel variable is set, return immediately.
+ */
+
+ if (*resolve->cancel)
+ return (0);
+
+ /*
+ * Otherwise check the end time...
+ */
+
+ gettimeofday(&curtime, NULL);
+
+ return (curtime.tv_sec > resolve->end_time.tv_sec ||
+ (curtime.tv_sec == resolve->end_time.tv_sec &&
+ curtime.tv_usec > resolve->end_time.tv_usec));
+}
+
+
+/*
+ * 'cups_dnssd_unquote()' - Unquote a name string.
+ */
+
+static void
+cups_dnssd_unquote(char *dst, /* I - Destination buffer */
+ const char *src, /* I - Source string */
+ size_t dstsize) /* I - Size of destination buffer */
+{
+ char *dstend = dst + dstsize - 1; /* End of destination buffer */
+
+
+ while (*src && dst < dstend)
+ {
+ if (*src == '\\')
+ {
+ src ++;
+ if (isdigit(src[0] & 255) && isdigit(src[1] & 255) &&
+ isdigit(src[2] & 255))
+ {
+ *dst++ = ((((src[0] - '0') * 10) + src[1] - '0') * 10) + src[2] - '0';
+ src += 3;
+ }
+ else
+ *dst++ = *src++;
+ }
+ else
+ *dst++ = *src ++;
+ }
+
+ *dst = '\0';
+}
+#endif /* HAVE_DNSSD */
+
+
/*
* 'cups_find_dest()' - Find a destination using a binary search.
*/
@@ -2165,5 +3900,5 @@ cups_make_string(
/*
- * End of "$Id: dest.c 10379 2012-03-23 22:16:22Z mike $".
+ * End of "$Id: dest.c 10470 2012-05-16 22:33:31Z mike $".
*/
diff --git a/cups/dir.c b/cups/dir.c
index e25bd0b1..dab392b6 100644
--- a/cups/dir.c
+++ b/cups/dir.c
@@ -1,11 +1,11 @@
/*
- * "$Id: dir.c 9306 2010-09-16 21:43:57Z mike $"
+ * "$Id: dir.c 10424 2012-04-23 17:26:57Z mike $"
*
* Directory routines for CUPS.
*
* This set of APIs abstracts enumeration of directory entries.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2005 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -79,7 +79,7 @@ _cups_dir_time(FILETIME ft) /* I - File time */
/*
* 'cupsDirClose()' - Close a directory.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void
@@ -110,7 +110,7 @@ cupsDirClose(cups_dir_t *dp) /* I - Directory pointer */
/*
* 'cupsDirOpen()' - Open a directory.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_dir_t * /* O - Directory pointer or @code NULL@ if the directory could not be opened. */
@@ -153,7 +153,7 @@ cupsDirOpen(const char *directory) /* I - Directory name */
/*
* 'cupsDirRead()' - Read the next directory entry.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_dentry_t * /* O - Directory entry or @code NULL@ if there are no more */
@@ -213,7 +213,7 @@ cupsDirRead(cups_dir_t *dp) /* I - Directory pointer */
/*
* 'cupsDirRewind()' - Rewind to the start of the directory.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void
@@ -263,7 +263,7 @@ struct _cups_dir_s /**** Directory data structure ****/
/*
* 'cupsDirClose()' - Close a directory.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void
@@ -290,7 +290,7 @@ cupsDirClose(cups_dir_t *dp) /* I - Directory pointer */
/*
* 'cupsDirOpen()' - Open a directory.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_dir_t * /* O - Directory pointer or @code NULL@ if the directory could not be opened. */
@@ -344,7 +344,7 @@ cupsDirOpen(const char *directory) /* I - Directory name */
/*
* 'cupsDirRead()' - Read the next directory entry.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_dentry_t * /* O - Directory entry or @code NULL@ when there are no more */
@@ -442,7 +442,7 @@ cupsDirRead(cups_dir_t *dp) /* I - Directory pointer */
/*
* 'cupsDirRewind()' - Rewind to the start of the directory.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void
@@ -468,5 +468,5 @@ cupsDirRewind(cups_dir_t *dp) /* I - Directory pointer */
#endif /* WIN32 */
/*
- * End of "$Id: dir.c 9306 2010-09-16 21:43:57Z mike $".
+ * End of "$Id: dir.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/emit.c b/cups/emit.c
index 539a9009..c9db6630 100644
--- a/cups/emit.c
+++ b/cups/emit.c
@@ -1,9 +1,9 @@
/*
- * "$Id: emit.c 9993 2011-09-09 21:55:11Z mike $"
+ * "$Id: emit.c 10424 2012-04-23 17:26:57Z mike $"
*
* PPD code emission routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -87,7 +87,7 @@ ppdCollect(ppd_file_t *ppd, /* I - PPD file data */
* The choices array should be freed using @code free@ when you are
* finished with it.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - Number of options marked */
@@ -260,7 +260,7 @@ ppdEmit(ppd_file_t *ppd, /* I - PPD file record */
*
* When "limit" is zero, this function is identical to ppdEmit().
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 0 on success, -1 on failure */
@@ -519,15 +519,27 @@ ppdEmitJCL(ppd_file_t *ppd, /* I - PPD file record */
*/
if (display && strcmp(display->value, "job"))
- {
fprintf(fp, "@PJL JOB NAME = \"%s\"\n", temp);
-
- if (display && !strcmp(display->value, "rdymsg"))
- fprintf(fp, "@PJL RDYMSG DISPLAY = \"%s\"\n", displaymsg);
- }
+ else if (display && !strcmp(display->value, "rdymsg"))
+ fprintf(fp, "@PJL RDYMSG DISPLAY = \"%s\"\n", displaymsg);
else
fprintf(fp, "@PJL JOB NAME = \"%s\" DISPLAY = \"%s\"\n", temp,
displaymsg);
+
+ /*
+ * Replace double quotes with single quotes and UTF-8 characters with
+ * question marks so that the user does not cause a PJL syntax error.
+ */
+
+ strlcpy(temp, user, sizeof(temp));
+
+ for (ptr = temp; *ptr; ptr ++)
+ if (*ptr == '\"')
+ *ptr = '\'';
+ else if (!charset && (*ptr & 128))
+ *ptr = '?';
+
+ fprintf(fp, "@PJL SET USERNAME = \"%s\"\n", temp);
}
else
fputs(ppd->jcl_begin, fp);
@@ -542,7 +554,7 @@ ppdEmitJCL(ppd_file_t *ppd, /* I - PPD file record */
/*
* 'ppdEmitJCLEnd()' - Emit JCLEnd code to a file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 0 on success, -1 on failure */
@@ -601,7 +613,7 @@ ppdEmitJCLEnd(ppd_file_t *ppd, /* I - PPD file record */
* The return string is allocated on the heap and should be freed using
* @code free@ when you are done with it.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
char * /* O - String containing option code or @code NULL@ if there is no option code */
@@ -1213,5 +1225,5 @@ ppd_handle_media(ppd_file_t *ppd) /* I - PPD file */
/*
- * End of "$Id: emit.c 9993 2011-09-09 21:55:11Z mike $".
+ * End of "$Id: emit.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/encode.c b/cups/encode.c
index adb3d9e3..7cb5dd31 100644
--- a/cups/encode.c
+++ b/cups/encode.c
@@ -1,9 +1,9 @@
/*
- * "$Id: encode.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: encode.c 10424 2012-04-23 17:26:57Z mike $"
*
* Option encoding routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -47,15 +47,22 @@ static const _ipp_option_t ipp_options[] =
{ 0, "columns", IPP_TAG_INTEGER, IPP_TAG_JOB },
{ 0, "columns-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
{ 0, "compression", IPP_TAG_KEYWORD, IPP_TAG_OPERATION },
- { 0, "copies", IPP_TAG_INTEGER, IPP_TAG_JOB },
+ { 0, "copies", IPP_TAG_INTEGER, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "copies-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
{ 0, "device-uri", IPP_TAG_URI, IPP_TAG_PRINTER },
+ { 1, "document-copies", IPP_TAG_RANGE, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "document-format", IPP_TAG_MIMETYPE, IPP_TAG_OPERATION },
{ 0, "document-format-default", IPP_TAG_MIMETYPE, IPP_TAG_PRINTER },
+ { 1, "document-numbers", IPP_TAG_RANGE, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 1, "exclude-schemes", IPP_TAG_NAME, IPP_TAG_OPERATION },
- { 1, "finishings", IPP_TAG_ENUM, IPP_TAG_JOB },
+ { 1, "finishings", IPP_TAG_ENUM, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 1, "finishings-default", IPP_TAG_ENUM, IPP_TAG_PRINTER },
- { 0, "fit-to-page", IPP_TAG_BOOLEAN, IPP_TAG_JOB },
+ { 0, "fit-to-page", IPP_TAG_BOOLEAN, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "fit-to-page-default", IPP_TAG_BOOLEAN, IPP_TAG_PRINTER },
{ 0, "fitplot", IPP_TAG_BOOLEAN, IPP_TAG_JOB },
{ 0, "fitplot-default", IPP_TAG_BOOLEAN, IPP_TAG_PRINTER },
@@ -81,14 +88,20 @@ static const _ipp_option_t ipp_options[] =
{ 0, "marker-message", IPP_TAG_TEXT, IPP_TAG_PRINTER },
{ 1, "marker-names", IPP_TAG_NAME, IPP_TAG_PRINTER },
{ 1, "marker-types", IPP_TAG_KEYWORD, IPP_TAG_PRINTER },
- { 1, "media", IPP_TAG_KEYWORD, IPP_TAG_JOB },
- { 0, "media-col", IPP_TAG_BEGIN_COLLECTION, IPP_TAG_JOB },
+ { 1, "media", IPP_TAG_KEYWORD, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
+ { 0, "media-col", IPP_TAG_BEGIN_COLLECTION, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "media-col-default", IPP_TAG_BEGIN_COLLECTION, IPP_TAG_PRINTER },
- { 0, "media-color", IPP_TAG_KEYWORD, IPP_TAG_JOB },
+ { 0, "media-color", IPP_TAG_KEYWORD, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 1, "media-default", IPP_TAG_KEYWORD, IPP_TAG_PRINTER },
- { 0, "media-key", IPP_TAG_KEYWORD, IPP_TAG_JOB },
- { 0, "media-size", IPP_TAG_BEGIN_COLLECTION, IPP_TAG_JOB },
- { 0, "media-type", IPP_TAG_KEYWORD, IPP_TAG_JOB },
+ { 0, "media-key", IPP_TAG_KEYWORD, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
+ { 0, "media-size", IPP_TAG_BEGIN_COLLECTION, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
+ { 0, "media-type", IPP_TAG_KEYWORD, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "mirror", IPP_TAG_BOOLEAN, IPP_TAG_JOB },
{ 0, "mirror-default", IPP_TAG_BOOLEAN, IPP_TAG_PRINTER },
{ 0, "natural-scaling", IPP_TAG_INTEGER, IPP_TAG_JOB },
@@ -103,20 +116,27 @@ static const _ipp_option_t ipp_options[] =
{ 0, "notify-recipient-uri", IPP_TAG_URI, IPP_TAG_SUBSCRIPTION },
{ 0, "notify-time-interval", IPP_TAG_INTEGER, IPP_TAG_SUBSCRIPTION },
{ 0, "notify-user-data", IPP_TAG_STRING, IPP_TAG_SUBSCRIPTION },
- { 0, "number-up", IPP_TAG_INTEGER, IPP_TAG_JOB },
+ { 0, "number-up", IPP_TAG_INTEGER, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "number-up-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
- { 0, "orientation-requested", IPP_TAG_ENUM, IPP_TAG_JOB },
+ { 0, "orientation-requested", IPP_TAG_ENUM, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "orientation-requested-default", IPP_TAG_ENUM, IPP_TAG_PRINTER },
+ { 1, "overrides", IPP_TAG_BEGIN_COLLECTION, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "page-bottom", IPP_TAG_INTEGER, IPP_TAG_JOB },
{ 0, "page-bottom-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
{ 0, "page-left", IPP_TAG_INTEGER, IPP_TAG_JOB },
{ 0, "page-left-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
- { 1, "page-ranges", IPP_TAG_RANGE, IPP_TAG_JOB },
+ { 1, "page-ranges", IPP_TAG_RANGE, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 1, "page-ranges-default", IPP_TAG_RANGE, IPP_TAG_PRINTER },
{ 0, "page-right", IPP_TAG_INTEGER, IPP_TAG_JOB },
{ 0, "page-right-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
{ 0, "page-top", IPP_TAG_INTEGER, IPP_TAG_JOB },
{ 0, "page-top-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
+ { 1, "pages", IPP_TAG_RANGE, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "penwidth", IPP_TAG_INTEGER, IPP_TAG_JOB },
{ 0, "penwidth-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
{ 0, "port-monitor", IPP_TAG_NAME, IPP_TAG_PRINTER },
@@ -125,7 +145,8 @@ static const _ipp_option_t ipp_options[] =
{ 0, "ppi-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
{ 0, "prettyprint", IPP_TAG_BOOLEAN, IPP_TAG_JOB },
{ 0, "prettyprint-default", IPP_TAG_BOOLEAN, IPP_TAG_PRINTER },
- { 0, "print-quality", IPP_TAG_ENUM, IPP_TAG_JOB },
+ { 0, "print-quality", IPP_TAG_ENUM, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "print-quality-default", IPP_TAG_ENUM, IPP_TAG_PRINTER },
{ 1, "printer-commands", IPP_TAG_KEYWORD, IPP_TAG_PRINTER },
{ 0, "printer-error-policy", IPP_TAG_NAME, IPP_TAG_PRINTER },
@@ -136,7 +157,8 @@ static const _ipp_option_t ipp_options[] =
{ 0, "printer-make-and-model", IPP_TAG_TEXT, IPP_TAG_PRINTER },
{ 0, "printer-more-info", IPP_TAG_URI, IPP_TAG_PRINTER },
{ 0, "printer-op-policy", IPP_TAG_NAME, IPP_TAG_PRINTER },
- { 0, "printer-resolution", IPP_TAG_RESOLUTION, IPP_TAG_JOB },
+ { 0, "printer-resolution", IPP_TAG_RESOLUTION, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "printer-state", IPP_TAG_ENUM, IPP_TAG_PRINTER },
{ 0, "printer-state-change-time", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
{ 1, "printer-state-reasons", IPP_TAG_KEYWORD, IPP_TAG_PRINTER },
@@ -154,12 +176,15 @@ static const _ipp_option_t ipp_options[] =
{ 0, "saturation-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
{ 0, "scaling", IPP_TAG_INTEGER, IPP_TAG_JOB },
{ 0, "scaling-default", IPP_TAG_INTEGER, IPP_TAG_PRINTER },
- { 0, "sides", IPP_TAG_KEYWORD, IPP_TAG_JOB },
+ { 0, "sides", IPP_TAG_KEYWORD, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
{ 0, "sides-default", IPP_TAG_KEYWORD, IPP_TAG_PRINTER },
{ 0, "wrap", IPP_TAG_BOOLEAN, IPP_TAG_JOB },
{ 0, "wrap-default", IPP_TAG_BOOLEAN, IPP_TAG_PRINTER },
- { 0, "x-dimension", IPP_TAG_INTEGER, IPP_TAG_JOB },
- { 0, "y-dimension", IPP_TAG_INTEGER, IPP_TAG_JOB }
+ { 0, "x-dimension", IPP_TAG_INTEGER, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT },
+ { 0, "y-dimension", IPP_TAG_INTEGER, IPP_TAG_JOB,
+ IPP_TAG_DOCUMENT }
};
@@ -202,7 +227,7 @@ cupsEncodeOptions(ipp_t *ipp, /* I - Request to add to */
* function multiple times for each group, or use cupsEncodeOptions()
* to add the standard groups.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void
@@ -282,7 +307,7 @@ cupsEncodeOptions2(
if ((match = _ippFindOption(option->name)) != NULL)
{
- if (match->group_tag != group_tag)
+ if (match->group_tag != group_tag && match->alt_group_tag != group_tag)
continue;
value_tag = match->value_tag;
@@ -294,9 +319,11 @@ cupsEncodeOptions2(
namelen = (int)strlen(option->name);
- if (namelen < 9 || strcmp(option->name + namelen - 8, "-default"))
+ if (namelen < 10 ||
+ (strcmp(option->name + namelen - 8, "-default") &&
+ strcmp(option->name + namelen - 10, "-supported")))
{
- if (group_tag != IPP_TAG_JOB)
+ if (group_tag != IPP_TAG_JOB && group_tag != IPP_TAG_DOCUMENT)
continue;
}
else if (group_tag != IPP_TAG_PRINTER)
@@ -343,7 +370,8 @@ cupsEncodeOptions2(
* Allocate memory for the attribute values...
*/
- if ((attr = _ippAddAttr(ipp, count)) == NULL)
+ if ((attr = ippAddStrings(ipp, group_tag, value_tag, option->name, count,
+ NULL, NULL)) == NULL)
{
/*
* Ran out of memory!
@@ -353,19 +381,6 @@ cupsEncodeOptions2(
return;
}
- /*
- * Now figure out what type of value we have...
- */
-
- attr->group_tag = group_tag;
- attr->value_tag = value_tag;
-
- /*
- * Copy the name over...
- */
-
- attr->name = _cupsStrAlloc(option->name);
-
if (count > 1)
{
/*
@@ -524,7 +539,8 @@ cupsEncodeOptions2(
else
attr->values[j].resolution.yres = attr->values[j].resolution.xres;
- if (!_cups_strcasecmp(s, "dpc"))
+ if (!_cups_strcasecmp(s, "dpc") ||
+ !_cups_strcasecmp(s, "dpcm"))
attr->values[j].resolution.units = IPP_RES_PER_CM;
else
attr->values[j].resolution.units = IPP_RES_PER_INCH;
@@ -632,5 +648,5 @@ compare_ipp_options(_ipp_option_t *a, /* I - First option */
/*
- * End of "$Id: encode.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: encode.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/file.c b/cups/file.c
index 86ad1323..4d1a84ea 100644
--- a/cups/file.c
+++ b/cups/file.c
@@ -1,5 +1,5 @@
/*
- * "$Id: file.c 9993 2011-09-09 21:55:11Z mike $"
+ * "$Id: file.c 10424 2012-04-23 17:26:57Z mike $"
*
* File functions for CUPS.
*
@@ -8,7 +8,7 @@
* our own file functions allows us to provide transparent support of
* gzip'd print files, PPD files, etc.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -168,19 +168,13 @@ _cupsFileCheck(
* Verify permission of the file itself:
*
* 1. Must be owned by root
- * 2. Must not be writable by group unless group is root/wheel/admin
+ * 2. Must not be writable by group
* 3. Must not be setuid
* 4. Must not be writable by others
*/
if (fileinfo.st_uid || /* 1. Must be owned by root */
-#ifdef __APPLE__
- ((fileinfo.st_mode & S_IWGRP) && fileinfo.st_gid &&
- fileinfo.st_gid != 80) || /* 2. Must not be writable by group */
-#else
- ((fileinfo.st_mode & S_IWGRP) && fileinfo.st_gid) ||
- /* 2. Must not be writable by group */
-#endif /* __APPLE__ */
+ (fileinfo.st_mode & S_IWGRP) || /* 2. Must not be writable by group */
(fileinfo.st_mode & S_ISUID) || /* 3. Must not be setuid */
(fileinfo.st_mode & S_IWOTH)) /* 4. Must not be writable by others */
{
@@ -219,13 +213,7 @@ _cupsFileCheck(
}
if (fileinfo.st_uid || /* 1. Must be owned by root */
-#ifdef __APPLE__
- ((fileinfo.st_mode & S_IWGRP) && fileinfo.st_gid &&
- fileinfo.st_gid != 80) || /* 2. Must not be writable by group */
-#else
- ((fileinfo.st_mode & S_IWGRP) && fileinfo.st_gid) ||
- /* 2. Must not be writable by group */
-#endif /* __APPLE__ */
+ (fileinfo.st_mode & S_IWGRP) || /* 2. Must not be writable by group */
(fileinfo.st_mode & S_ISUID) || /* 3. Must not be setuid */
(fileinfo.st_mode & S_IWOTH)) /* 4. Must not be writable by others */
{
@@ -364,7 +352,7 @@ _cupsFileCheckFilter(
/*
* 'cupsFileClose()' - Close a CUPS file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 0 on success, -1 on error */
@@ -496,7 +484,7 @@ cupsFileClose(cups_file_t *fp) /* I - CUPS file */
/*
* 'cupsFileCompression()' - Return whether a file is compressed.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - @code CUPS_FILE_NONE@ or @code CUPS_FILE_GZIP@ */
@@ -509,7 +497,7 @@ cupsFileCompression(cups_file_t *fp) /* I - CUPS file */
/*
* 'cupsFileEOF()' - Return the end-of-file status.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 1 on end of file, 0 otherwise */
@@ -528,7 +516,7 @@ cupsFileEOF(cups_file_t *fp) /* I - CUPS file */
* the supplied paths, @code NULL@ is returned. A @code NULL@ path only
* matches the current directory.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
const char * /* O - Full path to file or @code NULL@ if not found */
@@ -631,7 +619,7 @@ cupsFileFind(const char *filename, /* I - File to find */
/*
* 'cupsFileFlush()' - Flush pending output.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 0 on success, -1 on error */
@@ -679,7 +667,7 @@ cupsFileFlush(cups_file_t *fp) /* I - CUPS file */
/*
* 'cupsFileGetChar()' - Get a single character from a file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - Character or -1 on end of file */
@@ -723,7 +711,7 @@ cupsFileGetChar(cups_file_t *fp) /* I - CUPS file */
/*
* 'cupsFileGetConf()' - Get a line from a configuration file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
char * /* O - Line read or @code NULL@ on end of file or error */
@@ -867,7 +855,7 @@ cupsFileGetConf(cups_file_t *fp, /* I - CUPS file */
* nul-terminated, however you should use the returned length to determine
* the number of bytes on the line.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
size_t /* O - Number of bytes on line or 0 on end of file */
@@ -942,7 +930,7 @@ cupsFileGetLine(cups_file_t *fp, /* I - File to read from */
/*
* 'cupsFileGets()' - Get a CR and/or LF-terminated line.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
char * /* O - Line read or @code NULL@ on end of file or error */
@@ -1024,7 +1012,7 @@ cupsFileGets(cups_file_t *fp, /* I - CUPS file */
/*
* 'cupsFileLock()' - Temporarily lock access to a file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 0 on success, -1 on error */
@@ -1053,7 +1041,7 @@ cupsFileLock(cups_file_t *fp, /* I - CUPS file */
/*
* 'cupsFileNumber()' - Return the file descriptor associated with a CUPS file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - File descriptor */
@@ -1082,7 +1070,7 @@ cupsFileNumber(cups_file_t *fp) /* I - CUPS file */
* connection as needed, generally preferring IPv6 connections when there is
* a choice.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_file_t * /* O - CUPS file or @code NULL@ if the file or socket cannot be opened */
@@ -1204,7 +1192,7 @@ cupsFileOpen(const char *filename, /* I - Name of file */
* supplied which enables Flate compression of the file. Compression is
* not supported for the "a" (append) mode.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_file_t * /* O - CUPS file or @code NULL@ if the file could not be opened */
@@ -1316,7 +1304,7 @@ cupsFileOpenFd(int fd, /* I - File descriptor */
/*
* 'cupsFilePeekChar()' - Peek at the next character from a file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - Character or -1 on end of file */
@@ -1348,7 +1336,7 @@ cupsFilePeekChar(cups_file_t *fp) /* I - CUPS file */
/*
* 'cupsFilePrintf()' - Write a formatted string.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - Number of bytes written or -1 on error */
@@ -1445,7 +1433,7 @@ cupsFilePrintf(cups_file_t *fp, /* I - CUPS file */
/*
* 'cupsFilePutChar()' - Write a character.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 0 on success, -1 on error */
@@ -1499,7 +1487,7 @@ cupsFilePutChar(cups_file_t *fp, /* I - CUPS file */
*
* This function handles any comment escaping of the value.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
ssize_t /* O - Number of bytes written or -1 on error */
@@ -1560,7 +1548,7 @@ cupsFilePutConf(cups_file_t *fp, /* I - CUPS file */
*
* Like the @code fputs@ function, no newline is appended to the string.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - Number of bytes written or -1 on error */
@@ -1624,7 +1612,7 @@ cupsFilePuts(cups_file_t *fp, /* I - CUPS file */
/*
* 'cupsFileRead()' - Read from a file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ssize_t /* O - Number of bytes read or -1 on error */
@@ -1701,7 +1689,7 @@ cupsFileRead(cups_file_t *fp, /* I - CUPS file */
* 'cupsFileRewind()' - Set the current file position to the beginning of the
* file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
off_t /* O - New file position or -1 on error */
@@ -1773,7 +1761,7 @@ cupsFileRewind(cups_file_t *fp) /* I - CUPS file */
/*
* 'cupsFileSeek()' - Seek in a file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
off_t /* O - New file position or -1 on error */
@@ -1926,7 +1914,7 @@ cupsFileSeek(cups_file_t *fp, /* I - CUPS file */
/*
* 'cupsFileStderr()' - Return a CUPS file associated with stderr.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_file_t * /* O - CUPS file */
@@ -1962,7 +1950,7 @@ cupsFileStderr(void)
/*
* 'cupsFileStdin()' - Return a CUPS file associated with stdin.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_file_t * /* O - CUPS file */
@@ -1992,7 +1980,7 @@ cupsFileStdin(void)
/*
* 'cupsFileStdout()' - Return a CUPS file associated with stdout.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_file_t * /* O - CUPS file */
@@ -2028,7 +2016,7 @@ cupsFileStdout(void)
/*
* 'cupsFileTell()' - Return the current file position.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
off_t /* O - File position */
@@ -2045,7 +2033,7 @@ cupsFileTell(cups_file_t *fp) /* I - CUPS file */
/*
* 'cupsFileUnlock()' - Unlock access to a file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 0 on success, -1 on error */
@@ -2075,7 +2063,7 @@ cupsFileUnlock(cups_file_t *fp) /* I - CUPS file */
/*
* 'cupsFileWrite()' - Write to a file.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ssize_t /* O - Number of bytes written or -1 on error */
@@ -2722,5 +2710,5 @@ cups_write(cups_file_t *fp, /* I - CUPS file */
/*
- * End of "$Id: file.c 9993 2011-09-09 21:55:11Z mike $".
+ * End of "$Id: file.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/file.h b/cups/file.h
index f85d1501..ca2b987a 100644
--- a/cups/file.h
+++ b/cups/file.h
@@ -1,5 +1,5 @@
/*
- * "$Id: file.h 9771 2011-05-12 05:21:56Z mike $"
+ * "$Id: file.h 9950 2011-09-01 23:02:24Z mike $"
*
* Public file definitions for CUPS.
*
@@ -72,26 +72,29 @@ extern const char *cupsFileFind(const char *filename, const char *path,
int bufsize) _CUPS_API_1_2;
extern int cupsFileFlush(cups_file_t *fp) _CUPS_API_1_2;
extern int cupsFileGetChar(cups_file_t *fp) _CUPS_API_1_2;
-extern char *cupsFileGetConf(cups_file_t *fp, char *buf, size_t buflen,
- char **value, int *linenum) _CUPS_API_1_2;
+extern char *cupsFileGetConf(cups_file_t *fp, char *buf,
+ size_t buflen, char **value,
+ int *linenum) _CUPS_API_1_2;
extern size_t cupsFileGetLine(cups_file_t *fp, char *buf,
size_t buflen) _CUPS_API_1_2;
-extern char *cupsFileGets(cups_file_t *fp, char *buf, size_t buflen) _CUPS_API_1_2;
+extern char *cupsFileGets(cups_file_t *fp, char *buf, size_t buflen)
+ _CUPS_API_1_2;
extern int cupsFileLock(cups_file_t *fp, int block) _CUPS_API_1_2;
extern int cupsFileNumber(cups_file_t *fp) _CUPS_API_1_2;
-extern cups_file_t *cupsFileOpen(const char *filename, const char *mode) _CUPS_API_1_2;
+extern cups_file_t *cupsFileOpen(const char *filename, const char *mode)
+ _CUPS_API_1_2;
extern cups_file_t *cupsFileOpenFd(int fd, const char *mode) _CUPS_API_1_2;
extern int cupsFilePeekChar(cups_file_t *fp) _CUPS_API_1_2;
extern int cupsFilePrintf(cups_file_t *fp, const char *format, ...)
-#ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 2, 3)))
-#endif /* __GNUC__ */
-_CUPS_API_1_2;
+ __attribute__((__format__ (__printf__, 2, 3)))
+ _CUPS_API_1_2;
extern int cupsFilePutChar(cups_file_t *fp, int c) _CUPS_API_1_2;
extern ssize_t cupsFilePutConf(cups_file_t *fp, const char *directive,
const char *value) _CUPS_API_1_4;
-extern int cupsFilePuts(cups_file_t *fp, const char *s) _CUPS_API_1_2;
-extern ssize_t cupsFileRead(cups_file_t *fp, char *buf, size_t bytes) _CUPS_API_1_2;
+extern int cupsFilePuts(cups_file_t *fp, const char *s)
+ _CUPS_API_1_2;
+extern ssize_t cupsFileRead(cups_file_t *fp, char *buf, size_t bytes)
+ _CUPS_API_1_2;
extern off_t cupsFileRewind(cups_file_t *fp) _CUPS_API_1_2;
extern off_t cupsFileSeek(cups_file_t *fp, off_t pos) _CUPS_API_1_2;
extern cups_file_t *cupsFileStderr(void) _CUPS_API_1_2;
@@ -99,7 +102,8 @@ extern cups_file_t *cupsFileStdin(void) _CUPS_API_1_2;
extern cups_file_t *cupsFileStdout(void) _CUPS_API_1_2;
extern off_t cupsFileTell(cups_file_t *fp) _CUPS_API_1_2;
extern int cupsFileUnlock(cups_file_t *fp) _CUPS_API_1_2;
-extern ssize_t cupsFileWrite(cups_file_t *fp, const char *buf, size_t bytes) _CUPS_API_1_2;
+extern ssize_t cupsFileWrite(cups_file_t *fp, const char *buf,
+ size_t bytes) _CUPS_API_1_2;
# ifdef __cplusplus
@@ -108,5 +112,5 @@ extern ssize_t cupsFileWrite(cups_file_t *fp, const char *buf, size_t bytes) _C
#endif /* !_CUPS_FILE_H_ */
/*
- * End of "$Id: file.h 9771 2011-05-12 05:21:56Z mike $".
+ * End of "$Id: file.h 9950 2011-09-01 23:02:24Z mike $".
*/
diff --git a/cups/getdevices.c b/cups/getdevices.c
index 164b808a..9f34a28b 100644
--- a/cups/getdevices.c
+++ b/cups/getdevices.c
@@ -1,9 +1,9 @@
/*
- * "$Id: getdevices.c 9055 2010-03-25 23:06:26Z mike $"
+ * "$Id: getdevices.c 10424 2012-04-23 17:26:57Z mike $"
*
* cupsGetDevices implementation for CUPS.
*
- * Copyright 2008-2010 by Apple Inc.
+ * Copyright 2008-2012 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -34,7 +34,7 @@
* parameters provide comma-delimited lists of backends to include or omit from
* the request respectively.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
ipp_status_t /* O - Request status - @code IPP_OK@ on success. */
@@ -258,7 +258,7 @@ cupsGetDevices(
httpFlush(http);
if (status == HTTP_ERROR)
- _cupsSetError(IPP_ERROR, NULL, 0);
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(http->error), 0);
else
{
attr = ippFindAttribute(response, "status-message", IPP_TAG_TEXT);
@@ -279,5 +279,5 @@ cupsGetDevices(
/*
- * End of "$Id: getdevices.c 9055 2010-03-25 23:06:26Z mike $".
+ * End of "$Id: getdevices.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/getputfile.c b/cups/getputfile.c
index ec9a5f39..63e79799 100644
--- a/cups/getputfile.c
+++ b/cups/getputfile.c
@@ -1,9 +1,9 @@
/*
- * "$Id: getputfile.c 9042 2010-03-24 00:45:34Z mike $"
+ * "$Id: getputfile.c 10424 2012-04-23 17:26:57Z mike $"
*
* Get/put file functions for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -41,7 +41,7 @@
*
* This function returns @code HTTP_OK@ when the file is successfully retrieved.
*
- * @since CUPS 1.1.20/Mac OS X 10.4@
+ * @since CUPS 1.1.20/OS X 10.4@
*/
http_status_t /* O - HTTP status */
@@ -187,7 +187,7 @@ cupsGetFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA
*
* This function returns @code HTTP_OK@ when the file is successfully retrieved.
*
- * @since CUPS 1.1.20/Mac OS X 10.4@
+ * @since CUPS 1.1.20/OS X 10.4@
*/
http_status_t /* O - HTTP status */
@@ -255,7 +255,7 @@ cupsGetFile(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DE
* This function returns @code HTTP_CREATED@ when the file is stored
* successfully.
*
- * @since CUPS 1.1.20/Mac OS X 10.4@
+ * @since CUPS 1.1.20/OS X 10.4@
*/
http_status_t /* O - HTTP status */
@@ -446,7 +446,7 @@ cupsPutFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA
* This function returns @code HTTP_CREATED@ when the file is stored
* successfully.
*
- * @since CUPS 1.1.20/Mac OS X 10.4@
+ * @since CUPS 1.1.20/OS X 10.4@
*/
http_status_t /* O - HTTP status */
@@ -498,5 +498,5 @@ cupsPutFile(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DE
/*
- * End of "$Id: getputfile.c 9042 2010-03-24 00:45:34Z mike $".
+ * End of "$Id: getputfile.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/globals.c b/cups/globals.c
index 0f77a767..f46b370e 100644
--- a/cups/globals.c
+++ b/cups/globals.c
@@ -1,9 +1,9 @@
/*
- * "$Id: globals.c 10436 2012-04-23 21:52:02Z mike $"
+ * "$Id: globals.c 10435 2012-04-23 21:49:48Z mike $"
*
* Global variable access routines for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -20,6 +20,7 @@
* _cupsGlobals() - Return a pointer to thread local storage
* _cupsGlobalUnlock() - Unlock the global mutex.
* DllMain() - Main entry for library.
+ * cups_fix_path() - Fix a file path to use forward slashes consistently.
* cups_globals_alloc() - Allocate and initialize global data.
* cups_globals_free() - Free global data.
* cups_globals_init() - Initialize environment variables.
@@ -53,6 +54,9 @@ static _cups_mutex_t cups_global_mutex = _CUPS_MUTEX_INITIALIZER;
* Local functions...
*/
+#ifdef WIN32
+static void cups_fix_path(char *path);
+#endif /* WIN32 */
static _cups_globals_t *cups_globals_alloc(void);
#if defined(HAVE_PTHREAD_H) || defined(WIN32)
static void cups_globals_free(_cups_globals_t *g);
@@ -191,9 +195,9 @@ cups_globals_alloc(void)
#ifdef WIN32
HKEY key; /* Registry key */
DWORD size; /* Size of string */
- static char installdir[1024], /* Install directory */
- confdir[1024], /* Server root directory */
- localedir[1024]; /* Locale directory */
+ static char installdir[1024] = "", /* Install directory */
+ confdir[1024] = "", /* Server root directory */
+ localedir[1024] = ""; /* Locale directory */
#endif /* WIN32 */
@@ -217,27 +221,47 @@ cups_globals_alloc(void)
*/
#ifdef WIN32
- /*
- * Open the registry...
- */
-
- strcpy(installdir, "C:/Program Files/cups.org");
-
- if (!RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\\cups.org", 0, KEY_READ,
- &key))
+ if (!installdir[0])
{
/*
- * Grab the installation directory...
+ * Open the registry...
*/
- size = sizeof(installdir);
- RegQueryValueEx(key, "installdir", NULL, NULL, installdir, &size);
- RegCloseKey(key);
+ strcpy(installdir, "C:/Program Files/cups.org");
+
+ if (!RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\\cups.org", 0, KEY_READ,
+ &key))
+ {
+ /*
+ * Grab the installation directory...
+ */
+
+ char *ptr; /* Pointer into installdir */
+
+ size = sizeof(installdir);
+ RegQueryValueEx(key, "installdir", NULL, NULL, installdir, &size);
+ RegCloseKey(key);
+
+ for (ptr = installdir; *ptr;)
+ {
+ if (*ptr == '\\')
+ {
+ if (ptr[1])
+ *ptr++ = '/';
+ else
+ *ptr = '\0'; /* Strip trailing \ */
+ }
+ else if (*ptr == '/' && !ptr[1])
+ *ptr = '\0'; /* Strip trailing / */
+ else
+ ptr ++;
+ }
+ }
+
+ snprintf(confdir, sizeof(confdir), "%s/conf", installdir);
+ snprintf(localedir, sizeof(localedir), "%s/locale", installdir);
}
- snprintf(confdir, sizeof(confdir), "%s/conf", installdir);
- snprintf(localedir, sizeof(localedir), "%s/locale", installdir);
-
if ((cg->cups_datadir = getenv("CUPS_DATADIR")) == NULL)
cg->cups_datadir = installdir;
@@ -306,14 +330,14 @@ cups_globals_alloc(void)
static void
cups_globals_free(_cups_globals_t *cg) /* I - Pointer to global data */
{
- _ipp_buffer_t *buffer, /* Current IPP read/write buffer */
+ _cups_buffer_t *buffer, /* Current read/write buffer */
*next; /* Next buffer */
if (cg->last_status_message)
_cupsStrFree(cg->last_status_message);
- for (buffer = cg->ipp_buffers; buffer; buffer = next)
+ for (buffer = cg->cups_buffers; buffer; buffer = next)
{
next = buffer->next;
free(buffer);
@@ -356,5 +380,5 @@ cups_globals_init(void)
/*
- * End of "$Id: globals.c 10436 2012-04-23 21:52:02Z mike $".
+ * End of "$Id: globals.c 10435 2012-04-23 21:49:48Z mike $".
*/
diff --git a/cups/http-addr.c b/cups/http-addr.c
index db9895d8..b3ee84ca 100644
--- a/cups/http-addr.c
+++ b/cups/http-addr.c
@@ -1,9 +1,9 @@
/*
- * "$Id: http-addr.c 9868 2011-08-06 04:53:00Z mike $"
+ * "$Id: http-addr.c 10471 2012-05-16 22:57:03Z mike $"
*
* HTTP address routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -34,18 +34,16 @@
#ifdef HAVE_RESOLV_H
# include <resolv.h>
#endif /* HAVE_RESOLV_H */
-#ifdef HAVE_COREFOUNDATION
+#ifdef __APPLE__
# include <CoreFoundation/CoreFoundation.h>
-#endif /* HAVE_COREFOUNDATION */
-#ifdef HAVE_SYSTEMCONFIGURATION
# include <SystemConfiguration/SystemConfiguration.h>
-#endif /* HAVE_SYSTEMCONFIGURATION */
+#endif /* __APPLE__ */
/*
* 'httpAddrAny()' - Check for the "any" address.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 1 if "any", 0 otherwise */
@@ -71,7 +69,7 @@ httpAddrAny(const http_addr_t *addr) /* I - Address to check */
/*
* 'httpAddrEqual()' - Compare two addresses.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 1 if equal, 0 if not */
@@ -104,7 +102,7 @@ httpAddrEqual(const http_addr_t *addr1, /* I - First address */
/*
* 'httpAddrLength()' - Return the length of the address in bytes.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - Length in bytes */
@@ -135,7 +133,7 @@ httpAddrLength(const http_addr_t *addr) /* I - Address */
/*
* 'httpAddrLocalhost()' - Check for the local loopback address.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 1 if local host, 0 otherwise */
@@ -174,7 +172,7 @@ httpAddrLocalhost(
/*
* 'httpAddrLookup()' - Lookup the hostname associated with the address.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
char * /* O - Host name */
@@ -342,7 +340,7 @@ _httpAddrSetPort(http_addr_t *addr, /* I - Address */
/*
* 'httpAddrString()' - Convert an address to a numeric string.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
char * /* O - Numeric address string */
@@ -616,7 +614,7 @@ httpGetHostByName(const char *name) /* I - Hostname or IP address */
* Otherwise, return the FQDN for the local system using both gethostname()
* and gethostbyname() to get the local hostname with domain.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
const char * /* O - FQDN for connection or system */
@@ -701,5 +699,5 @@ httpGetHostname(http_t *http, /* I - HTTP connection or NULL */
/*
- * End of "$Id: http-addr.c 9868 2011-08-06 04:53:00Z mike $".
+ * End of "$Id: http-addr.c 10471 2012-05-16 22:57:03Z mike $".
*/
diff --git a/cups/http-addrlist.c b/cups/http-addrlist.c
index a07ffb36..3936a443 100644
--- a/cups/http-addrlist.c
+++ b/cups/http-addrlist.c
@@ -1,9 +1,9 @@
/*
- * "$Id: http-addrlist.c 10006 2011-09-20 18:36:33Z mike $"
+ * "$Id: http-addrlist.c 10424 2012-04-23 17:26:57Z mike $"
*
* HTTP address list routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -15,6 +15,8 @@
* Contents:
*
* httpAddrConnect() - Connect to any of the addresses in the list.
+ * httpAddrConnect2() - Connect to any of the addresses in the list with a
+ * timeout and optional cancel.
* httpAddrFreeList() - Free an address list.
* httpAddrGetList() - Get a list of addresses for a hostname.
*/
@@ -27,12 +29,18 @@
#ifdef HAVE_RESOLV_H
# include <resolv.h>
#endif /* HAVE_RESOLV_H */
+#ifdef HAVE_POLL
+# include <poll.h>
+#endif /* HAVE_POLL */
+#ifndef WIN32
+# include <sys/fcntl.h>
+#endif /* WIN32 */
/*
* 'httpAddrConnect()' - Connect to any of the addresses in the list.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
http_addrlist_t * /* O - Connected address or NULL on failure */
@@ -40,34 +48,76 @@ httpAddrConnect(
http_addrlist_t *addrlist, /* I - List of potential addresses */
int *sock) /* O - Socket */
{
+ DEBUG_printf(("httpAddrConnect(addrlist=%p, sock=%p)", addrlist, sock));
+
+ return (httpAddrConnect2(addrlist, sock, 30000, NULL));
+}
+
+
+/*
+ * 'httpAddrConnect2()' - Connect to any of the addresses in the list with a
+ * timeout and optional cancel.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+http_addrlist_t * /* O - Connected address or NULL on failure */
+httpAddrConnect2(
+ http_addrlist_t *addrlist, /* I - List of potential addresses */
+ int *sock, /* O - Socket */
+ int msec, /* I - Timeout in milliseconds */
+ int *cancel) /* I - Pointer to "cancel" variable */
+{
int val; /* Socket option value */
-#ifdef __APPLE__
- struct timeval timeout; /* Socket timeout value */
-#endif /* __APPLE__ */
+#ifdef O_NONBLOCK
+ socklen_t len; /* Length of value */
+ http_addr_t peer; /* Peer address */
+ int flags, /* Socket flags */
+ remaining; /* Remaining timeout */
+# ifdef HAVE_POLL
+ struct pollfd pfd; /* Polled file descriptor */
+# else
+ fd_set input_set, /* select() input set */
+ output_set; /* select() output set */
+ struct timeval timeout; /* Timeout */
+# endif /* HAVE_POLL */
+ int nfds; /* Result from select()/poll() */
+#endif /* O_NONBLOCK */
#ifdef DEBUG
char temp[256]; /* Temporary address string */
#endif /* DEBUG */
- DEBUG_printf(("httpAddrConnect(addrlist=%p, sock=%p)", addrlist, sock));
+ DEBUG_printf(("httpAddrConnect2(addrlist=%p, sock=%p, msec=%d, cancel=%p)",
+ addrlist, sock, msec, cancel));
if (!sock)
{
errno = EINVAL;
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(errno), 0);
return (NULL);
}
+ if (cancel && *cancel)
+ return (NULL);
+
+ if (msec <= 0 || getenv("CUPS_DISABLE_ASYNC_CONNECT"))
+ msec = INT_MAX;
+
/*
* Loop through each address until we connect or run out of addresses...
*/
while (addrlist)
{
+ if (cancel && *cancel)
+ return (NULL);
+
/*
* Create the socket...
*/
- DEBUG_printf(("2httpAddrConnect: Trying %s:%d...",
+ DEBUG_printf(("2httpAddrConnect2: Trying %s:%d...",
httpAddrString(&(addrlist->addr), temp, sizeof(temp)),
_httpAddrPort(&(addrlist->addr))));
@@ -105,17 +155,6 @@ httpAddrConnect(
setsockopt(*sock, SOL_SOCKET, SO_NOSIGPIPE, &val, sizeof(val));
#endif /* SO_NOSIGPIPE */
-#ifdef __APPLE__
- /*
- * Use a 30-second read timeout when connecting to limit the amount of time
- * we block...
- */
-
- timeout.tv_sec = 30;
- timeout.tv_usec = 0;
- setsockopt(*sock, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout));
-#endif /* __APPLE__ */
-
/*
* Using TCP_NODELAY improves responsiveness, especially on systems
* with a slow loopback interface...
@@ -137,6 +176,22 @@ httpAddrConnect(
fcntl(*sock, F_SETFD, FD_CLOEXEC);
#endif /* FD_CLOEXEC */
+#ifdef O_NONBLOCK
+ /*
+ * Do an asynchronous connect by setting the socket non-blocking...
+ */
+
+ DEBUG_printf(("httpAddrConnect2: Setting non-blocking connect()"));
+
+ flags = fcntl(*sock, F_GETFL, 0);
+ if (msec != INT_MAX)
+ {
+ DEBUG_puts("httpAddrConnect2: Setting non-blocking connect()");
+
+ fcntl(*sock, F_SETFL, flags | O_NONBLOCK);
+ }
+#endif /* O_NONBLOCK */
+
/*
* Then connect...
*/
@@ -144,16 +199,109 @@ httpAddrConnect(
if (!connect(*sock, &(addrlist->addr.addr),
httpAddrLength(&(addrlist->addr))))
{
- DEBUG_printf(("1httpAddrConnect: Connected to %s:%d...",
+ DEBUG_printf(("1httpAddrConnect2: Connected to %s:%d...",
httpAddrString(&(addrlist->addr), temp, sizeof(temp)),
_httpAddrPort(&(addrlist->addr))));
- break;
+
+#ifdef O_NONBLOCK
+ fcntl(*sock, F_SETFL, flags);
+#endif /* O_NONBLOCK */
+
+ return (addrlist);
+ }
+
+#ifdef O_NONBLOCK
+# ifdef WIN32
+ if (WSAGetLastError() == WSAEINPROGRESS ||
+ WSAGetLastError() == WSAEWOULDBLOCK)
+# else
+ if (errno == EINPROGRESS || errno == EWOULDBLOCK)
+# endif /* WIN32 */
+ {
+ DEBUG_puts("1httpAddrConnect2: Finishing async connect()");
+
+ fcntl(*sock, F_SETFL, flags);
+
+ for (remaining = msec; remaining > 0; remaining -= 250)
+ {
+ do
+ {
+ if (cancel && *cancel)
+ {
+ /*
+ * Close this socket and return...
+ */
+
+ DEBUG_puts("1httpAddrConnect2: Canceled connect()");
+
+# ifdef WIN32
+ closesocket(*sock);
+# else
+ close(*sock);
+# endif /* WIN32 */
+
+ *sock = -1;
+
+ return (NULL);
+ }
+
+# ifdef HAVE_POLL
+ pfd.fd = *sock;
+ pfd.events = POLLIN | POLLOUT;
+
+ nfds = poll(&pfd, 1, remaining > 250 ? 250 : remaining);
+
+ DEBUG_printf(("1httpAddrConnect2: poll() returned %d (%d)", nfds,
+ errno));
+
+# else
+ FD_ZERO(&input_set);
+ FD_SET(*sock, &input_set);
+ output_set = input_set;
+
+ timeout.tv_sec = 0;
+ timeout.tv_usec = (remaining > 250 ? 250 : remaining) * 1000;
+
+ nfds = select(*sock + 1, &input_set, &output_set, NULL, &timeout);
+
+ DEBUG_printf(("1httpAddrConnect2: select() returned %d (%d)", nfds,
+ errno));
+# endif /* HAVE_POLL */
+ }
+# ifdef WIN32
+ while (nfds < 0 && (WSAGetLastError() == WSAEINTR ||
+ WSAGetLastError() == WSAEWOULDBLOCK));
+# else
+ while (nfds < 0 && (errno == EINTR || errno == EAGAIN));
+# endif /* WIN32 */
+
+ if (nfds > 0)
+ {
+ len = sizeof(peer);
+ if (!getpeername(*sock, (struct sockaddr *)&peer, &len))
+ {
+ DEBUG_printf(("1httpAddrConnect2: Connected to %s:%d...",
+ httpAddrString(&peer, temp, sizeof(temp)),
+ _httpAddrPort(&peer)));
+
+ return (addrlist);
+ }
+
+ break;
+ }
+ }
}
+#endif /* O_NONBLOCK */
- DEBUG_printf(("1httpAddrConnect: Unable to connect to %s:%d: %s",
+ DEBUG_printf(("1httpAddrConnect2: Unable to connect to %s:%d: %s",
httpAddrString(&(addrlist->addr), temp, sizeof(temp)),
_httpAddrPort(&(addrlist->addr)), strerror(errno)));
+#ifndef WIN32
+ if (errno == EINPROGRESS)
+ errno = ETIMEDOUT;
+#endif /* !WIN32 */
+
/*
* Close this socket and move to the next address...
*/
@@ -169,7 +317,11 @@ httpAddrConnect(
}
if (!addrlist)
+#ifdef WIN32
+ _cupsSetError(IPP_SERVICE_UNAVAILABLE, "Connection failed", 0);
+#else
_cupsSetError(IPP_SERVICE_UNAVAILABLE, strerror(errno), 0);
+#endif /* WIN32 */
return (addrlist);
}
@@ -178,7 +330,7 @@ httpAddrConnect(
/*
* 'httpAddrFreeList()' - Free an address list.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void
@@ -206,7 +358,7 @@ httpAddrFreeList(
/*
* 'httpAddrGetList()' - Get a list of addresses for a hostname.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
http_addrlist_t * /* O - List of addresses or NULL */
@@ -256,7 +408,6 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
}
#endif /* HAVE_RES_INIT */
-
/*
* Lookup the address the best way we can...
*/
@@ -357,6 +508,7 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
if (!temp)
{
httpAddrFreeList(first);
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(errno), 0);
return (NULL);
}
@@ -386,8 +538,13 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
freeaddrinfo(results);
}
- else if (error == EAI_FAIL)
- cg->need_res_init = 1;
+ else
+ {
+ if (error == EAI_FAIL)
+ cg->need_res_init = 1;
+
+ _cupsSetError(IPP_INTERNAL_ERROR, gai_strerror(error), 0);
+ }
#else
if (hostname)
@@ -505,8 +662,13 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
addr = temp;
}
}
- else if (h_errno == NO_RECOVERY)
- cg->need_res_init = 1;
+ else
+ {
+ if (h_errno == NO_RECOVERY)
+ cg->need_res_init = 1;
+
+ _cupsSetError(IPP_INTERNAL_ERROR, hstrerror(h_errno), 0);
+ }
}
#endif /* HAVE_GETADDRINFO */
}
@@ -544,6 +706,8 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
else
{
httpAddrFreeList(first);
+
+ _cupsSetError(IPP_INTERNAL_ERROR, _("Unknown service name."), 1);
return (NULL);
}
@@ -566,6 +730,7 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
temp = (http_addrlist_t *)calloc(1, sizeof(http_addrlist_t));
if (!temp)
{
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(errno), 0);
httpAddrFreeList(first);
return (NULL);
}
@@ -594,6 +759,7 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
temp = (http_addrlist_t *)calloc(1, sizeof(http_addrlist_t));
if (!temp)
{
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(errno), 0);
httpAddrFreeList(first);
return (NULL);
}
@@ -625,6 +791,7 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
temp = (http_addrlist_t *)calloc(1, sizeof(http_addrlist_t));
if (!temp)
{
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(errno), 0);
httpAddrFreeList(first);
return (NULL);
}
@@ -648,6 +815,7 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
temp = (http_addrlist_t *)calloc(1, sizeof(http_addrlist_t));
if (!temp)
{
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(errno), 0);
httpAddrFreeList(first);
return (NULL);
}
@@ -673,5 +841,5 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
/*
- * End of "$Id: http-addrlist.c 10006 2011-09-20 18:36:33Z mike $".
+ * End of "$Id: http-addrlist.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/http-private.h b/cups/http-private.h
index 29ae57e2..5aabfbb1 100644
--- a/cups/http-private.h
+++ b/cups/http-private.h
@@ -1,9 +1,9 @@
/*
- * "$Id: http-private.h 9960 2011-09-02 22:37:14Z mike $"
+ * "$Id: http-private.h 10437 2012-04-23 22:20:09Z mike $"
*
* Private HTTP definitions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -154,6 +154,7 @@ extern "C" {
#define _HTTP_RESOLVE_DEFAULT 0 /* Just resolve with default options */
#define _HTTP_RESOLVE_STDERR 1 /* Log resolve progress to stderr */
#define _HTTP_RESOLVE_FQDN 2 /* Resolve to a FQDN */
+#define _HTTP_RESOLVE_FAXOUT 4 /* Resolve FaxOut service? */
/*
@@ -404,5 +405,5 @@ extern int _httpWait(http_t *http, int msec, int usessl);
#endif /* !_CUPS_HTTP_PRIVATE_H_ */
/*
- * End of "$Id: http-private.h 9960 2011-09-02 22:37:14Z mike $".
+ * End of "$Id: http-private.h 10437 2012-04-23 22:20:09Z mike $".
*/
diff --git a/cups/http-support.c b/cups/http-support.c
index b0cf967c..9310e79a 100644
--- a/cups/http-support.c
+++ b/cups/http-support.c
@@ -1,9 +1,9 @@
/*
- * "$Id: http-support.c 10284 2012-02-15 01:06:12Z mike $"
+ * "$Id: http-support.c 10437 2012-04-23 22:20:09Z mike $"
*
* HTTP support routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -16,33 +16,37 @@
*
* Contents:
*
- * httpAssembleURI() - Assemble a uniform resource identifier from its
- * components.
+ * httpAssembleURI() - Assemble a uniform resource identifier from its
+ * components.
* httpAssembleURIf() - Assemble a uniform resource identifier from its
- * components with a formatted resource.
+ * components with a formatted resource.
* _httpAssembleUUID() - Make a UUID URI conforming to RFC 4122.
- * httpDecode64() - Base64-decode a string.
- * httpDecode64_2() - Base64-decode a string.
- * httpEncode64() - Base64-encode a string.
- * httpEncode64_2() - Base64-encode a string.
+ * httpDecode64() - Base64-decode a string.
+ * httpDecode64_2() - Base64-decode a string.
+ * httpEncode64() - Base64-encode a string.
+ * httpEncode64_2() - Base64-encode a string.
* httpGetDateString() - Get a formatted date/time string from a time value.
* httpGetDateString2() - Get a formatted date/time string from a time value.
- * httpGetDateTime() - Get a time value from a formatted date/time string.
- * httpSeparate() - Separate a Universal Resource Identifier into its
- * components.
- * httpSeparate2() - Separate a Universal Resource Identifier into its
- * components.
- * httpSeparateURI() - Separate a Universal Resource Identifier into its
- * components.
- * httpStatus() - Return a short string describing a HTTP status code.
- * _cups_hstrerror() - hstrerror() emulation function for Solaris and
- * others.
- * _httpDecodeURI() - Percent-decode a HTTP request URI.
- * _httpEncodeURI() - Percent-encode a HTTP request URI.
- * _httpResolveURI() - Resolve a DNS-SD URI.
+ * httpGetDateTime() - Get a time value from a formatted date/time string.
+ * httpSeparate() - Separate a Universal Resource Identifier into its
+ * components.
+ * httpSeparate2() - Separate a Universal Resource Identifier into its
+ * components.
+ * httpSeparateURI() - Separate a Universal Resource Identifier into its
+ * components.
+ * httpStatus() - Return a short string describing a HTTP status
+ * code.
+ * _cups_hstrerror() - hstrerror() emulation function for Solaris and
+ * others.
+ * _httpDecodeURI() - Percent-decode a HTTP request URI.
+ * _httpEncodeURI() - Percent-encode a HTTP request URI.
+ * _httpResolveURI() - Resolve a DNS-SD URI.
+ * http_client_cb() - Client callback for resolving URI.
* http_copy_decode() - Copy and decode a URI.
* http_copy_encode() - Copy and encode a URI.
- * http_resolve_cb() - Build a device URI for the given service name.
+ * http_poll_cb() - Wait for input on the specified file descriptors.
+ * http_resolve_cb() - Build a device URI for the given service name.
+ * http_resolve_cb() - Build a device URI for the given service name.
*/
/*
@@ -59,6 +63,10 @@
# else
# include <sys/select.h>
# endif /* WIN32 */
+#elif defined(HAVE_AVAHI)
+# include <avahi-client/client.h>
+# include <avahi-client/lookup.h>
+# include <avahi-common/simple-watch.h>
#endif /* HAVE_DNSSD */
@@ -68,9 +76,12 @@
typedef struct _http_uribuf_s /* URI buffer */
{
- char *buffer; /* Pointer to buffer */
- size_t bufsize; /* Size of buffer */
- int options; /* Options passed to _httpResolveURI */
+#ifdef HAVE_AVAHI
+ AvahiSimplePoll *poll; /* Poll state */
+#endif /* HAVE_AVAHI */
+ char *buffer; /* Pointer to buffer */
+ size_t bufsize; /* Size of buffer */
+ int options; /* Options passed to _httpResolveURI */
} _http_uribuf_t;
@@ -127,6 +138,22 @@ static void DNSSD_API http_resolve_cb(DNSServiceRef sdRef,
void *context);
#endif /* HAVE_DNSSD */
+#ifdef HAVE_AVAHI
+static void http_client_cb(AvahiClient *client,
+ AvahiClientState state, void *simple_poll);
+static int http_poll_cb(struct pollfd *pollfds, unsigned int num_pollfds,
+ int timeout, void *context);
+static void http_resolve_cb(AvahiServiceResolver *resolver,
+ AvahiIfIndex interface,
+ AvahiProtocol protocol,
+ AvahiResolverEvent event,
+ const char *name, const char *type,
+ const char *domain, const char *host_name,
+ const AvahiAddress *address, uint16_t port,
+ AvahiStringList *txt,
+ AvahiLookupResultFlags flags, void *context);
+#endif /* HAVE_AVAHI */
+
/*
* 'httpAssembleURI()' - Assemble a uniform resource identifier from its
@@ -137,7 +164,7 @@ static void DNSSD_API http_resolve_cb(DNSServiceRef sdRef,
* place of traditional string functions whenever you need to create a
* URI string.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
http_uri_status_t /* O - URI status */
@@ -387,7 +414,7 @@ httpAssembleURI(
* this function in place of traditional string functions whenever
* you need to create a URI string.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
http_uri_status_t /* O - URI status */
@@ -517,7 +544,7 @@ httpDecode64(char *out, /* I - String to write to */
/*
* 'httpDecode64_2()' - Base64-decode a string.
*
- * @since CUPS 1.1.21/Mac OS X 10.4@
+ * @since CUPS 1.1.21/OS X 10.4@
*/
char * /* O - Decoded string */
@@ -636,7 +663,7 @@ httpEncode64(char *out, /* I - String to write to */
/*
* 'httpEncode64_2()' - Base64-encode a string.
*
- * @since CUPS 1.1.21/Mac OS X 10.4@
+ * @since CUPS 1.1.21/OS X 10.4@
*/
char * /* O - Encoded string */
@@ -745,7 +772,7 @@ httpGetDateString(time_t t) /* I - UNIX time */
/*
* 'httpGetDateString2()' - Get a formatted date/time string from a time value.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
const char * /* O - Date/time string */
@@ -865,7 +892,7 @@ httpSeparate(const char *uri, /* I - Universal Resource Identifier */
*
* This function is deprecated; use the httpSeparateURI() function instead.
*
- * @since CUPS 1.1.21/Mac OS X 10.4@
+ * @since CUPS 1.1.21/OS X 10.4@
* @deprecated@
*/
@@ -890,7 +917,7 @@ httpSeparate2(const char *uri, /* I - Universal Resource Identifier */
* 'httpSeparateURI()' - Separate a Universal Resource Identifier into its
* components.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
http_uri_status_t /* O - Result of separation */
@@ -1434,24 +1461,29 @@ _httpResolveURI(
if (strstr(hostname, "._tcp"))
{
-#ifdef HAVE_DNSSD
-# ifdef WIN32
-# pragma comment(lib, "dnssd.lib")
-# endif /* WIN32 */
- DNSServiceRef ref, /* DNS-SD master service reference */
- domainref, /* DNS-SD service reference for domain */
- localref; /* DNS-SD service reference for .local */
- int domainsent = 0, /* Send the domain resolve? */
- offline = 0; /* offline-report state set? */
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
char *regtype, /* Pointer to type in hostname */
*domain; /* Pointer to domain in hostname */
_http_uribuf_t uribuf; /* URI buffer */
-#ifdef HAVE_POLL
+ int offline = 0; /* offline-report state set? */
+# ifdef HAVE_DNSSD
+# ifdef WIN32
+# pragma comment(lib, "dnssd.lib")
+# endif /* WIN32 */
+ DNSServiceRef ref, /* DNS-SD master service reference */
+ domainref, /* DNS-SD service reference for domain */
+ localref; /* DNS-SD service reference for .local */
+ int domainsent = 0; /* Send the domain resolve? */
+# ifdef HAVE_POLL
struct pollfd polldata; /* Polling data */
-#else /* select() */
+# else /* select() */
fd_set input_set; /* Input set for select() */
struct timeval stimeout; /* Timeout value for select() */
-#endif /* HAVE_POLL */
+# endif /* HAVE_POLL */
+# elif defined(HAVE_AVAHI)
+ AvahiClient *client; /* Client information */
+ int error; /* Status */
+# endif /* HAVE_DNSSD */
if (options & _HTTP_RESOLVE_STDERR)
fprintf(stderr, "DEBUG: Resolving \"%s\"...\n", hostname);
@@ -1491,6 +1523,7 @@ _httpResolveURI(
uribuf.buffer = resolved_uri;
uribuf.bufsize = resolved_size;
uribuf.options = options;
+
resolved_uri[0] = '\0';
DEBUG_printf(("6_httpResolveURI: Resolving hostname=\"%s\", regtype=\"%s\", "
@@ -1504,18 +1537,22 @@ _httpResolveURI(
uri = NULL;
+# ifdef HAVE_DNSSD
if (DNSServiceCreateConnection(&ref) == kDNSServiceErr_NoError)
{
localref = ref;
- if (DNSServiceResolve(&localref, kDNSServiceFlagsShareConnection, 0,
- hostname, regtype, "local.", http_resolve_cb,
+ if (DNSServiceResolve(&localref,
+ kDNSServiceFlagsShareConnection, 0, hostname, regtype,
+ "local.", http_resolve_cb,
&uribuf) == kDNSServiceErr_NoError)
{
int fds; /* Number of ready descriptors */
time_t timeout, /* Poll timeout */
- start_time = time(NULL);/* Start time */
+ start_time = time(NULL),/* Start time */
+ end_time = start_time + 90;
+ /* End time */
- for (;;)
+ while (time(NULL) < end_time)
{
if (options & _HTTP_RESOLVE_STDERR)
_cupsLangPrintFilter(stderr, "INFO", _("Looking for printer."));
@@ -1527,28 +1564,32 @@ _httpResolveURI(
}
/*
- * For the first minute (or forever if we have a callback), wakeup
- * every 2 seconds to emit a "looking for printer" message...
+ * Wakeup every 2 seconds to emit a "looking for printer" message...
*/
- timeout = (time(NULL) < (start_time + 60) || cb) ? 2000 : -1;
+ if ((timeout = end_time - time(NULL)) > 2)
+ timeout = 2;
-#ifdef HAVE_POLL
+# ifdef HAVE_POLL
polldata.fd = DNSServiceRefSockFD(ref);
polldata.events = POLLIN;
- fds = poll(&polldata, 1, timeout);
+ fds = poll(&polldata, 1, 1000 * timeout);
-#else /* select() */
+# else /* select() */
FD_ZERO(&input_set);
FD_SET(DNSServiceRefSockFD(ref), &input_set);
- stimeout.tv_sec = ((int)timeout) / 1000;
- stimeout.tv_usec = ((int)(timeout) * 1000) % 1000000;
+# ifdef WIN32
+ stimeout.tv_sec = (long)timeout;
+# else
+ stimeout.tv_sec = timeout;
+# endif /* WIN32 */
+ stimeout.tv_usec = 0;
fds = select(DNSServiceRefSockFD(ref)+1, &input_set, NULL, NULL,
- timeout < 0.0 ? NULL : &stimeout);
-#endif /* HAVE_POLL */
+ &stimeout);
+# endif /* HAVE_POLL */
if (fds < 0)
{
@@ -1565,7 +1606,7 @@ _httpResolveURI(
* comes in, do an additional domain resolution...
*/
- if (domainsent == 0 && (domain && _cups_strcasecmp(domain, "local.")))
+ if (domainsent == 0 && domain && _cups_strcasecmp(domain, "local."))
{
if (options & _HTTP_RESOLVE_STDERR)
fprintf(stderr,
@@ -1574,10 +1615,11 @@ _httpResolveURI(
domain ? domain : "");
domainref = ref;
- if (DNSServiceResolve(&domainref, kDNSServiceFlagsShareConnection,
+ if (DNSServiceResolve(&domainref,
+ kDNSServiceFlagsShareConnection,
0, hostname, regtype, domain,
- http_resolve_cb, &uribuf)
- == kDNSServiceErr_NoError)
+ http_resolve_cb,
+ &uribuf) == kDNSServiceErr_NoError)
domainsent = 1;
}
@@ -1611,24 +1653,96 @@ _httpResolveURI(
DNSServiceRefDeallocate(ref);
}
+# else /* HAVE_AVAHI */
+ if ((uribuf.poll = avahi_simple_poll_new()) != NULL)
+ {
+ avahi_simple_poll_set_func(uribuf.poll, http_poll_cb, NULL);
+
+ if ((client = avahi_client_new(avahi_simple_poll_get(uribuf.poll),
+ 0, http_client_cb,
+ &uribuf, &error)) != NULL)
+ {
+ if (avahi_service_resolver_new(client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC, hostname,
+ regtype, "local.", AVAHI_PROTO_UNSPEC, 0,
+ http_resolve_cb, &uribuf) != NULL)
+ {
+ time_t start_time = time(NULL),
+ /* Start time */
+ end_time = start_time + 90;
+ /* End time */
+ int pstatus; /* Poll status */
+
+ pstatus = avahi_simple_poll_iterate(uribuf.poll, 2000);
+
+ if (pstatus == 0 && !resolved_uri[0] && domain &&
+ _cups_strcasecmp(domain, "local."))
+ {
+ /*
+ * Resolve for .local hasn't returned anything, try the listed
+ * domain...
+ */
+
+ avahi_service_resolver_new(client, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC, hostname,
+ regtype, domain, AVAHI_PROTO_UNSPEC, 0,
+ http_resolve_cb, &uribuf);
+ }
+
+ while (!pstatus && !resolved_uri[0] && time(NULL) < end_time)
+ {
+ if ((pstatus = avahi_simple_poll_iterate(uribuf.poll, 2000)) != 0)
+ break;
+
+ /*
+ * If it hasn't resolved within 5 seconds set the offline-report
+ * printer-state-reason...
+ */
+
+ if ((options & _HTTP_RESOLVE_STDERR) && offline == 0 &&
+ time(NULL) > (start_time + 5))
+ {
+ fputs("STATE: +offline-report\n", stderr);
+ offline = 1;
+ }
+ }
+
+ /*
+ * Collect the result (if we got one).
+ */
+
+ if (resolved_uri[0])
+ uri = resolved_uri;
+ }
+
+ avahi_client_free(client);
+ }
+
+ avahi_simple_poll_free(uribuf.poll);
+ }
+# endif /* HAVE_DNSSD */
if (options & _HTTP_RESOLVE_STDERR)
{
if (uri)
+ {
fprintf(stderr, "DEBUG: Resolved as \"%s\"...\n", uri);
+ fputs("STATE: -connecting-to-device,offline-report\n", stderr);
+ }
else
+ {
fputs("DEBUG: Unable to resolve URI\n", stderr);
-
- fputs("STATE: -connecting-to-device,offline-report\n", stderr);
+ fputs("STATE: -connecting-to-device\n", stderr);
+ }
}
-#else
+#else /* HAVE_DNSSD || HAVE_AVAHI */
/*
* No DNS-SD support...
*/
uri = NULL;
-#endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
if ((options & _HTTP_RESOLVE_STDERR) && !uri)
_cupsLangPrintFilter(stderr, "ERROR", _("Unable to find printer."));
@@ -1649,6 +1763,35 @@ _httpResolveURI(
}
+#ifdef HAVE_AVAHI
+/*
+ * 'http_client_cb()' - Client callback for resolving URI.
+ */
+
+static void
+http_client_cb(
+ AvahiClient *client, /* I - Client information */
+ AvahiClientState state, /* I - Current state */
+ void *context) /* I - Pointer to URI buffer */
+{
+ DEBUG_printf(("7http_client_cb(client=%p, state=%d, context=%p)", client,
+ state, context));
+
+ /*
+ * If the connection drops, quit.
+ */
+
+ if (state == AVAHI_CLIENT_FAILURE)
+ {
+ _http_uribuf_t *uribuf = (_http_uribuf_t *)context;
+ /* URI buffer */
+
+ avahi_simple_poll_quit(uribuf->poll);
+ }
+}
+#endif /* HAVE_AVAHI */
+
+
/*
* 'http_copy_decode()' - Copy and decode a URI.
*/
@@ -1784,13 +1927,16 @@ http_resolve_cb(
const unsigned char *txtRecord, /* I - TXT record data */
void *context) /* I - Pointer to URI buffer */
{
+ _http_uribuf_t *uribuf = (_http_uribuf_t *)context;
+ /* URI buffer */
const char *scheme, /* URI scheme */
- *hostptr; /* Pointer into hostTarget */
- char rp[257], /* Remote printer */
+ *hostptr, /* Pointer into hostTarget */
+ *reskey, /* "rp" or "rfo" */
+ *resdefault; /* Default path */
+ char resource[257], /* Remote path */
fqdn[256]; /* FQDN of the .local name */
const void *value; /* Value from TXT record */
uint8_t valueLen; /* Length of value */
- _http_uribuf_t *uribuf; /* URI buffer */
DEBUG_printf(("7http_resolve_cb(sdRef=%p, flags=%x, interfaceIndex=%u, "
@@ -1799,8 +1945,6 @@ http_resolve_cb(
interfaceIndex, errorCode, fullName, hostTarget, port, txtLen,
txtRecord, context));
- uribuf = (_http_uribuf_t *)context;
-
/*
* Figure out the scheme from the full name...
*/
@@ -1824,17 +1968,29 @@ http_resolve_cb(
* Extract the "remote printer" key from the TXT record...
*/
- if ((value = TXTRecordGetValuePtr(txtLen, txtRecord, "rp",
+ if ((uribuf->options & _HTTP_RESOLVE_FAXOUT) &&
+ (!strcmp(scheme, "ipp") || !strcmp(scheme, "ipps")))
+ {
+ reskey = "rfo";
+ resdefault = "/ipp/faxout";
+ }
+ else
+ {
+ reskey = "rp";
+ resdefault = "/";
+ }
+
+ if ((value = TXTRecordGetValuePtr(txtLen, txtRecord, reskey,
&valueLen)) != NULL)
{
if (((char *)value)[0] == '/')
{
/*
- * "rp" value (incorrectly) has a leading slash already...
+ * Value (incorrectly) has a leading slash already...
*/
- memcpy(rp, value, valueLen);
- rp[valueLen] = '\0';
+ memcpy(resource, value, valueLen);
+ resource[valueLen] = '\0';
}
else
{
@@ -1842,19 +1998,18 @@ http_resolve_cb(
* Convert to resource by concatenating with a leading "/"...
*/
- rp[0] = '/';
- memcpy(rp + 1, value, valueLen);
- rp[valueLen + 1] = '\0';
+ resource[0] = '/';
+ memcpy(resource + 1, value, valueLen);
+ resource[valueLen + 1] = '\0';
}
}
else
{
/*
- * Default "rp" value is blank, mapping to a path of "/"...
+ * Use the default value...
*/
- rp[0] = '/';
- rp[1] = '\0';
+ strlcpy(resource, resdefault, sizeof(resource));
}
/*
@@ -1910,13 +2065,223 @@ http_resolve_cb(
*/
httpAssembleURI(HTTP_URI_CODING_ALL, uribuf->buffer, uribuf->bufsize, scheme,
- NULL, hostTarget, ntohs(port), rp);
+ NULL, hostTarget, ntohs(port), resource);
DEBUG_printf(("8http_resolve_cb: Resolved URI is \"%s\"...", uribuf->buffer));
}
+
+#elif defined(HAVE_AVAHI)
+/*
+ * 'http_poll_cb()' - Wait for input on the specified file descriptors.
+ *
+ * Note: This function is needed because avahi_simple_poll_iterate is broken
+ * and always uses a timeout of 0 (!) milliseconds.
+ * (Avahi Ticket #364)
+ */
+
+static int /* O - Number of file descriptors matching */
+http_poll_cb(
+ struct pollfd *pollfds, /* I - File descriptors */
+ unsigned int num_pollfds, /* I - Number of file descriptors */
+ int timeout, /* I - Timeout in milliseconds (used) */
+ void *context) /* I - User data (unused) */
+{
+ (void)timeout;
+ (void)context;
+
+ return (poll(pollfds, num_pollfds, 2000));
+}
+
+
+/*
+ * 'http_resolve_cb()' - Build a device URI for the given service name.
+ */
+
+static void
+http_resolve_cb(
+ AvahiServiceResolver *resolver, /* I - Resolver (unused) */
+ AvahiIfIndex interface, /* I - Interface index (unused) */
+ AvahiProtocol protocol, /* I - Network protocol (unused) */
+ AvahiResolverEvent event, /* I - Event (found, etc.) */
+ const char *name, /* I - Service name */
+ const char *type, /* I - Registration type */
+ const char *domain, /* I - Domain (unused) */
+ const char *hostTarget, /* I - Hostname */
+ const AvahiAddress *address, /* I - Address (unused) */
+ uint16_t port, /* I - Port number */
+ AvahiStringList *txt, /* I - TXT record */
+ AvahiLookupResultFlags flags, /* I - Lookup flags (unused) */
+ void *context) /* I - Pointer to URI buffer */
+{
+ _http_uribuf_t *uribuf = (_http_uribuf_t *)context;
+ /* URI buffer */
+ const char *scheme, /* URI scheme */
+ *hostptr, /* Pointer into hostTarget */
+ *reskey, /* "rp" or "rfo" */
+ *resdefault; /* Default path */
+ char resource[257], /* Remote path */
+ fqdn[256]; /* FQDN of the .local name */
+ AvahiStringList *pair; /* Current TXT record key/value pair */
+ char *value; /* Value for "rp" key */
+ size_t valueLen = 0; /* Length of "rp" key */
+
+
+ DEBUG_printf(("7http_resolve_cb(resolver=%p, "
+ "interface=%d, protocol=%d, event=%d, name=\"%s\", "
+ "type=\"%s\", domain=\"%s\", hostTarget=\"%s\", address=%p, "
+ "port=%d, txt=%p, flags=%d, context=%p)",
+ resolver, interface, protocol, event, name, type, domain,
+ hostTarget, address, port, txt, flags, context));
+
+ if (event != AVAHI_RESOLVER_FOUND)
+ {
+ avahi_service_resolver_free(resolver);
+ avahi_simple_poll_quit(uribuf->poll);
+ return;
+ }
+
+ /*
+ * Figure out the scheme from the full name...
+ */
+
+ if (strstr(type, "_ipp."))
+ scheme = "ipp";
+ else if (strstr(type, "_printer."))
+ scheme = "lpd";
+ else if (strstr(type, "_pdl-datastream."))
+ scheme = "socket";
+ else
+ scheme = "riousbprint";
+
+ if (!strncmp(type, "_ipps.", 6) || !strncmp(type, "_ipp-tls.", 9))
+ scheme = "ipps";
+ else if (!strncmp(type, "_ipp.", 5) || !strncmp(type, "_fax-ipp.", 9))
+ scheme = "ipp";
+ else if (!strncmp(type, "_http.", 6))
+ scheme = "http";
+ else if (!strncmp(type, "_https.", 7))
+ scheme = "https";
+ else if (!strncmp(type, "_printer.", 9))
+ scheme = "lpd";
+ else if (!strncmp(type, "_pdl-datastream.", 16))
+ scheme = "socket";
+ else
+ {
+ avahi_service_resolver_free(resolver);
+ avahi_simple_poll_quit(uribuf->poll);
+ return;
+ }
+
+ /*
+ * Extract the remote resource key from the TXT record...
+ */
+
+ if ((uribuf->options & _HTTP_RESOLVE_FAXOUT) &&
+ (!strcmp(scheme, "ipp") || !strcmp(scheme, "ipps")))
+ {
+ reskey = "rfo";
+ resdefault = "/ipp/faxout";
+ }
+ else
+ {
+ reskey = "rp";
+ resdefault = "/";
+ }
+
+ if ((pair = avahi_string_list_find(txt, reskey)) != NULL)
+ {
+ avahi_string_list_get_pair(pair, NULL, &value, &valueLen);
+
+ if (value[0] == '/')
+ {
+ /*
+ * Value (incorrectly) has a leading slash already...
+ */
+
+ memcpy(resource, value, valueLen);
+ resource[valueLen] = '\0';
+ }
+ else
+ {
+ /*
+ * Convert to resource by concatenating with a leading "/"...
+ */
+
+ resource[0] = '/';
+ memcpy(resource + 1, value, valueLen);
+ resource[valueLen + 1] = '\0';
+ }
+ }
+ else
+ {
+ /*
+ * Use the default value...
+ */
+
+ strlcpy(resource, resdefault, sizeof(resource));
+ }
+
+ /*
+ * Lookup the FQDN if needed...
+ */
+
+ if ((uribuf->options & _HTTP_RESOLVE_FQDN) &&
+ (hostptr = hostTarget + strlen(hostTarget) - 6) > hostTarget &&
+ !_cups_strcasecmp(hostptr, ".local"))
+ {
+ /*
+ * OK, we got a .local name but the caller needs a real domain. Start by
+ * getting the IP address of the .local name and then do reverse-lookups...
+ */
+
+ http_addrlist_t *addrlist, /* List of addresses */
+ *addr; /* Current address */
+
+ DEBUG_printf(("8http_resolve_cb: Looking up \"%s\".", hostTarget));
+
+ snprintf(fqdn, sizeof(fqdn), "%d", ntohs(port));
+ if ((addrlist = httpAddrGetList(hostTarget, AF_UNSPEC, fqdn)) != NULL)
+ {
+ for (addr = addrlist; addr; addr = addr->next)
+ {
+ int error = getnameinfo(&(addr->addr.addr),
+ httpAddrLength(&(addr->addr)),
+ fqdn, sizeof(fqdn), NULL, 0, NI_NAMEREQD);
+
+ if (!error)
+ {
+ DEBUG_printf(("8http_resolve_cb: Found \"%s\".", fqdn));
+
+ if ((hostptr = fqdn + strlen(fqdn) - 6) <= fqdn ||
+ _cups_strcasecmp(hostptr, ".local"))
+ {
+ hostTarget = fqdn;
+ break;
+ }
+ }
+#ifdef DEBUG
+ else
+ DEBUG_printf(("8http_resolve_cb: \"%s\" did not resolve: %d",
+ httpAddrString(&(addr->addr), fqdn, sizeof(fqdn)),
+ error));
+#endif /* DEBUG */
+ }
+ }
+ }
+
+ /*
+ * Assemble the final device URI using the resolved hostname...
+ */
+
+ httpAssembleURI(HTTP_URI_CODING_ALL, uribuf->buffer, uribuf->bufsize, scheme,
+ NULL, hostTarget, port, resource);
+ DEBUG_printf(("8http_resolve_cb: Resolved URI is \"%s\".", uribuf->buffer));
+
+ avahi_simple_poll_quit(uribuf->poll);
+}
#endif /* HAVE_DNSSD */
/*
- * End of "$Id: http-support.c 10284 2012-02-15 01:06:12Z mike $".
+ * End of "$Id: http-support.c 10437 2012-04-23 22:20:09Z mike $".
*/
diff --git a/cups/http.c b/cups/http.c
index 18bad5bb..c3824146 100644
--- a/cups/http.c
+++ b/cups/http.c
@@ -1,9 +1,9 @@
/*
- * "$Id: http.c 10450 2012-05-04 22:52:56Z mike $"
+ * "$Id: http.c 10449 2012-05-04 22:51:10Z mike $"
*
* HTTP routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* This file contains Kerberos support code, copyright 2006 by
@@ -19,103 +19,105 @@
*
* Contents:
*
- * httpAddCredential() - Allocates and adds a single credential to an
- * array.
- * _httpBIOMethods() - Get the OpenSSL BIO methods for HTTP
- * connections.
- * httpBlocking() - Set blocking/non-blocking behavior on a
- * connection.
- * httpCheck() - Check to see if there is a pending response
- * from the server.
- * httpClearCookie() - Clear the cookie value(s).
- * httpClearFields() - Clear HTTP request fields.
- * httpClose() - Close an HTTP connection.
- * httpConnect() - Connect to a HTTP server.
- * httpConnectEncrypt() - Connect to a HTTP server using encryption.
- * httpCopyCredentials() - Copy the credentials associated with an
- * encrypted connection.
- * _httpCreate() - Create an unconnected HTTP connection.
- * _httpCreateCredentials() - Create credentials in the internal format.
- * httpDelete() - Send a DELETE request to the server.
- * _httpDisconnect() - Disconnect a HTTP connection.
- * httpEncryption() - Set the required encryption on the link.
- * httpError() - Get the last error on a connection.
- * httpFlush() - Flush data from a HTTP connection.
- * httpFlushWrite() - Flush data in write buffer.
- * _httpFreeCredentials() - Free internal credentials.
- * httpFreeCredentials() - Free an array of credentials.
- * httpGet() - Send a GET request to the server.
- * httpGetAuthString() - Get the current authorization string.
- * httpGetBlocking() - Get the blocking/non-block state of a
- * connection.
- * httpGetCookie() - Get any cookie data from the response.
- * httpGetFd() - Get the file descriptor associated with a
- * connection.
- * httpGetField() - Get a field value from a request/response.
- * httpGetLength() - Get the amount of data remaining from the
- * content-length or transfer-encoding fields.
- * httpGetLength2() - Get the amount of data remaining from the
- * content-length or transfer-encoding fields.
- * httpGetStatus() - Get the status of the last HTTP request.
- * httpGetSubField() - Get a sub-field value.
- * httpGetSubField2() - Get a sub-field value.
- * httpGets() - Get a line of text from a HTTP connection.
- * httpHead() - Send a HEAD request to the server.
- * httpInitialize() - Initialize the HTTP interface library and set
- * the default HTTP proxy (if any).
- * httpOptions() - Send an OPTIONS request to the server.
- * _httpPeek() - Peek at data from a HTTP connection.
- * httpPost() - Send a POST request to the server.
- * httpPrintf() - Print a formatted string to a HTTP connection.
- * httpPut() - Send a PUT request to the server.
- * httpRead() - Read data from a HTTP connection.
- * httpRead2() - Read data from a HTTP connection.
- * _httpReadCDSA() - Read function for the CDSA library.
- * _httpReadGNUTLS() - Read function for the GNU TLS library.
- * httpReconnect() - Reconnect to a HTTP server.
- * httpSetAuthString() - Set the current authorization string.
- * httpSetCredentials() - Set the credentials associated with an
- * encrypted connection.
- * httpSetCookie() - Set the cookie value(s).
- * httpSetExpect() - Set the Expect: header in a request.
- * httpSetField() - Set the value of an HTTP header.
- * httpSetLength() - Set the content-length and content-encoding.
- * httpSetTimeout() - Set read/write timeouts and an optional
- * callback.
- * httpTrace() - Send an TRACE request to the server.
- * _httpUpdate() - Update the current HTTP status for incoming
- * data.
- * httpUpdate() - Update the current HTTP state for incoming
- * data.
- * _httpWait() - Wait for data available on a connection (no
- * flush).
- * httpWait() - Wait for data available on a connection.
- * httpWrite() - Write data to a HTTP connection.
- * httpWrite2() - Write data to a HTTP connection.
- * _httpWriteCDSA() - Write function for the CDSA library.
- * _httpWriteGNUTLS() - Write function for the GNU TLS library.
- * http_bio_ctrl() - Control the HTTP connection.
- * http_bio_free() - Free OpenSSL data.
- * http_bio_new() - Initialize an OpenSSL BIO structure.
- * http_bio_puts() - Send a string for OpenSSL.
- * http_bio_read() - Read data for OpenSSL.
- * http_bio_write() - Write data for OpenSSL.
- * http_debug_hex() - Do a hex dump of a buffer.
- * http_field() - Return the field index for a field name.
- * http_read_ssl() - Read from a SSL/TLS connection.
- * http_locking_cb() - Lock/unlock a thread's mutex.
- * http_send() - Send a request with all fields and the trailing
- * blank line.
- * http_set_credentials() - Set the SSL/TLS credentials.
- * http_set_timeout() - Set the socket timeout values.
- * http_set_wait() - Set the default wait value for reads.
- * http_setup_ssl() - Set up SSL/TLS support on a connection.
- * http_shutdown_ssl() - Shut down SSL/TLS on a connection.
- * http_threadid_cb() - Return the current thread ID.
- * http_upgrade() - Force upgrade to TLS encryption.
- * http_write() - Write a buffer to a HTTP connection.
- * http_write_chunk() - Write a chunked buffer.
- * http_write_ssl() - Write to a SSL/TLS connection.
+ * httpAddCredential() - Allocates and adds a single credential to an
+ * array.
+ * _httpBIOMethods() - Get the OpenSSL BIO methods for HTTP
+ * connections.
+ * httpBlocking() - Set blocking/non-blocking behavior on a
+ * connection.
+ * httpCheck() - Check to see if there is a pending response
+ * from the server.
+ * httpClearCookie() - Clear the cookie value(s).
+ * httpClearFields() - Clear HTTP request fields.
+ * httpClose() - Close an HTTP connection.
+ * httpConnect() - Connect to a HTTP server.
+ * httpConnectEncrypt() - Connect to a HTTP server using encryption.
+ * httpCopyCredentials() - Copy the credentials associated with an
+ * encrypted connection.
+ * _httpCreate() - Create an unconnected HTTP connection.
+ * _httpCreateCredentials() - Create credentials in the internal format.
+ * httpDelete() - Send a DELETE request to the server.
+ * _httpDisconnect() - Disconnect a HTTP connection.
+ * httpEncryption() - Set the required encryption on the link.
+ * httpError() - Get the last error on a connection.
+ * httpFlush() - Flush data from a HTTP connection.
+ * httpFlushWrite() - Flush data in write buffer.
+ * _httpFreeCredentials() - Free internal credentials.
+ * httpFreeCredentials() - Free an array of credentials.
+ * httpGet() - Send a GET request to the server.
+ * httpGetAuthString() - Get the current authorization string.
+ * httpGetBlocking() - Get the blocking/non-block state of a
+ * connection.
+ * httpGetCookie() - Get any cookie data from the response.
+ * httpGetFd() - Get the file descriptor associated with a
+ * connection.
+ * httpGetField() - Get a field value from a request/response.
+ * httpGetLength() - Get the amount of data remaining from the
+ * content-length or transfer-encoding fields.
+ * httpGetLength2() - Get the amount of data remaining from the
+ * content-length or transfer-encoding fields.
+ * httpGets() - Get a line of text from a HTTP connection.
+ * httpGetState() - Get the current state of the HTTP request.
+ * httpGetStatus() - Get the status of the last HTTP request.
+ * httpGetSubField() - Get a sub-field value.
+ * httpGetSubField2() - Get a sub-field value.
+ * httpGetVersion() - Get the HTTP version at the other end.
+ * httpHead() - Send a HEAD request to the server.
+ * httpInitialize() - Initialize the HTTP interface library and set
+ * the default HTTP proxy (if any).
+ * httpOptions() - Send an OPTIONS request to the server.
+ * _httpPeek() - Peek at data from a HTTP connection.
+ * httpPost() - Send a POST request to the server.
+ * httpPrintf() - Print a formatted string to a HTTP connection.
+ * httpPut() - Send a PUT request to the server.
+ * httpRead() - Read data from a HTTP connection.
+ * httpRead2() - Read data from a HTTP connection.
+ * _httpReadCDSA() - Read function for the CDSA library.
+ * _httpReadGNUTLS() - Read function for the GNU TLS library.
+ * httpReconnect() - Reconnect to a HTTP server.
+ * httpReconnect2() - Reconnect to a HTTP server with timeout and
+ * optional cancel.
+ * httpSetAuthString() - Set the current authorization string.
+ * httpSetCredentials() - Set the credentials associated with an
+ * encrypted connection.
+ * httpSetCookie() - Set the cookie value(s).
+ * httpSetExpect() - Set the Expect: header in a request.
+ * httpSetField() - Set the value of an HTTP header.
+ * httpSetLength() - Set the content-length and content-encoding.
+ * httpSetTimeout() - Set read/write timeouts and an optional
+ * callback.
+ * httpTrace() - Send an TRACE request to the server.
+ * _httpUpdate() - Update the current HTTP status for incoming
+ * data.
+ * httpUpdate() - Update the current HTTP state for incoming
+ * data.
+ * _httpWait() - Wait for data available on a connection (no
+ * flush).
+ * httpWait() - Wait for data available on a connection.
+ * httpWrite() - Write data to a HTTP connection.
+ * httpWrite2() - Write data to a HTTP connection.
+ * _httpWriteCDSA() - Write function for the CDSA library.
+ * _httpWriteGNUTLS() - Write function for the GNU TLS library.
+ * http_bio_ctrl() - Control the HTTP connection.
+ * http_bio_free() - Free OpenSSL data.
+ * http_bio_new() - Initialize an OpenSSL BIO structure.
+ * http_bio_puts() - Send a string for OpenSSL.
+ * http_bio_read() - Read data for OpenSSL.
+ * http_bio_write() - Write data for OpenSSL.
+ * http_debug_hex() - Do a hex dump of a buffer.
+ * http_field() - Return the field index for a field name.
+ * http_read_ssl() - Read from a SSL/TLS connection.
+ * http_send() - Send a request with all fields and the trailing
+ * blank line.
+ * http_set_credentials() - Set the SSL/TLS credentials.
+ * http_set_timeout() - Set the socket timeout values.
+ * http_set_wait() - Set the default wait value for reads.
+ * http_setup_ssl() - Set up SSL/TLS support on a connection.
+ * http_shutdown_ssl() - Shut down SSL/TLS on a connection.
+ * http_upgrade() - Force upgrade to TLS encryption.
+ * http_write() - Write a buffer to a HTTP connection.
+ * http_write_chunk() - Write a chunked buffer.
+ * http_write_ssl() - Write to a SSL/TLS connection.
*/
/*
@@ -133,21 +135,11 @@
# include <sys/resource.h>
#endif /* WIN32 */
#ifdef HAVE_POLL
-# include <sys/poll.h>
+# include <poll.h>
#endif /* HAVE_POLL */
/*
- * Some operating systems have done away with the Fxxxx constants for
- * the fcntl() call; this works around that "feature"...
- */
-
-#ifndef FNONBLK
-# define FNONBLK O_NONBLOCK
-#endif /* !FNONBLK */
-
-
-/*
* Local functions...
*/
@@ -266,7 +258,7 @@ static BIO_METHOD http_bio_methods =
*
* Use @code cupsArrayNew(NULL, NULL)@ to create a credentials array.
*
- * @since CUPS 1.5/Mac OS X 10.7@
+ * @since CUPS 1.5/OS X 10.7@
*/
int /* O - 0 on success, -1 on error */
@@ -339,7 +331,7 @@ httpCheck(http_t *http) /* I - Connection to server */
/*
* 'httpClearCookie()' - Clear the cookie value(s).
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
void
@@ -502,7 +494,7 @@ httpConnectEncrypt(
* 'httpCopyCredentials()' - Copy the credentials associated with an encrypted
* connection.
*
- * @since CUPS 1.5/Mac OS X 10.7@
+ * @since CUPS 1.5/OS X 10.7@
*/
int /* O - Status of call (0 = success) */
@@ -606,6 +598,7 @@ _httpCreate(
if ((http = calloc(sizeof(http_t), 1)) == NULL)
{
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(errno), 0);
httpAddrFreeList(addrlist);
return (NULL);
}
@@ -842,7 +835,7 @@ httpFlush(http_t *http) /* I - Connection to server */
/*
* 'httpFlushWrite()' - Flush data in write buffer.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - Bytes written or -1 on error */
@@ -944,7 +937,7 @@ httpGet(http_t *http, /* I - Connection to server */
* string to use with httpSetField() for the HTTP_FIELD_AUTHORIZATION
* value.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
char * /* O - Authorization string */
@@ -960,7 +953,7 @@ httpGetAuthString(http_t *http) /* I - Connection to server */
/*
* 'httpGetBlocking()' - Get the blocking/non-block state of a connection.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 1 if blocking, 0 if non-blocking */
@@ -973,7 +966,7 @@ httpGetBlocking(http_t *http) /* I - Connection to server */
/*
* 'httpGetCookie()' - Get any cookie data from the response.
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
const char * /* O - Cookie data or NULL */
@@ -986,7 +979,7 @@ httpGetCookie(http_t *http) /* I - HTTP connecion */
/*
* 'httpGetFd()' - Get the file descriptor associated with a connection.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - File descriptor or -1 if none */
@@ -1056,7 +1049,7 @@ httpGetLength(http_t *http) /* I - Connection to server */
* This function returns the complete content length, even for
* content larger than 2^31 - 1.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
off_t /* O - Content length */
@@ -1117,167 +1110,6 @@ httpGetLength2(http_t *http) /* I - Connection to server */
/*
- * 'httpGetStatus()' - Get the status of the last HTTP request.
- *
- * @since CUPS 1.2/Mac OS X 10.5@
- */
-
-http_status_t /* O - HTTP status */
-httpGetStatus(http_t *http) /* I - Connection to server */
-{
- return (http ? http->status : HTTP_ERROR);
-}
-
-
-/*
- * 'httpGetSubField()' - Get a sub-field value.
- *
- * @deprecated@
- */
-
-char * /* O - Value or NULL */
-httpGetSubField(http_t *http, /* I - Connection to server */
- http_field_t field, /* I - Field index */
- const char *name, /* I - Name of sub-field */
- char *value) /* O - Value string */
-{
- return (httpGetSubField2(http, field, name, value, HTTP_MAX_VALUE));
-}
-
-
-/*
- * 'httpGetSubField2()' - Get a sub-field value.
- *
- * @since CUPS 1.2/Mac OS X 10.5@
- */
-
-char * /* O - Value or NULL */
-httpGetSubField2(http_t *http, /* I - Connection to server */
- http_field_t field, /* I - Field index */
- const char *name, /* I - Name of sub-field */
- char *value, /* O - Value string */
- int valuelen) /* I - Size of value buffer */
-{
- const char *fptr; /* Pointer into field */
- char temp[HTTP_MAX_VALUE], /* Temporary buffer for name */
- *ptr, /* Pointer into string buffer */
- *end; /* End of value buffer */
-
- DEBUG_printf(("2httpGetSubField2(http=%p, field=%d, name=\"%s\", value=%p, "
- "valuelen=%d)", http, field, name, value, valuelen));
-
- if (!http || !name || !value || valuelen < 2 ||
- field <= HTTP_FIELD_UNKNOWN || field >= HTTP_FIELD_MAX)
- return (NULL);
-
- end = value + valuelen - 1;
-
- for (fptr = http->fields[field]; *fptr;)
- {
- /*
- * Skip leading whitespace...
- */
-
- while (_cups_isspace(*fptr))
- fptr ++;
-
- if (*fptr == ',')
- {
- fptr ++;
- continue;
- }
-
- /*
- * Get the sub-field name...
- */
-
- for (ptr = temp;
- *fptr && *fptr != '=' && !_cups_isspace(*fptr) &&
- ptr < (temp + sizeof(temp) - 1);
- *ptr++ = *fptr++);
-
- *ptr = '\0';
-
- DEBUG_printf(("4httpGetSubField2: name=\"%s\"", temp));
-
- /*
- * Skip trailing chars up to the '='...
- */
-
- while (_cups_isspace(*fptr))
- fptr ++;
-
- if (!*fptr)
- break;
-
- if (*fptr != '=')
- continue;
-
- /*
- * Skip = and leading whitespace...
- */
-
- fptr ++;
-
- while (_cups_isspace(*fptr))
- fptr ++;
-
- if (*fptr == '\"')
- {
- /*
- * Read quoted string...
- */
-
- for (ptr = value, fptr ++;
- *fptr && *fptr != '\"' && ptr < end;
- *ptr++ = *fptr++);
-
- *ptr = '\0';
-
- while (*fptr && *fptr != '\"')
- fptr ++;
-
- if (*fptr)
- fptr ++;
- }
- else
- {
- /*
- * Read unquoted string...
- */
-
- for (ptr = value;
- *fptr && !_cups_isspace(*fptr) && *fptr != ',' && ptr < end;
- *ptr++ = *fptr++);
-
- *ptr = '\0';
-
- while (*fptr && !_cups_isspace(*fptr) && *fptr != ',')
- fptr ++;
- }
-
- DEBUG_printf(("4httpGetSubField2: value=\"%s\"", value));
-
- /*
- * See if this is the one...
- */
-
- if (!strcmp(name, temp))
- {
- DEBUG_printf(("3httpGetSubField2: Returning \"%s\"", value));
- return (value);
- }
- }
-
- value[0] = '\0';
-
- DEBUG_puts("3httpGetSubField2: Returning NULL");
-
- return (NULL);
-}
-
-
-/*
* 'httpGets()' - Get a line of text from a HTTP connection.
*/
@@ -1351,6 +1183,10 @@ httpGets(char *line, /* I - Line to read into */
DEBUG_printf(("4httpGets: read %d bytes...", bytes));
+#ifdef DEBUG
+ http_debug_hex("httpGets", http->buffer + http->used, bytes);
+#endif /* DEBUG */
+
if (bytes < 0)
{
/*
@@ -1458,6 +1294,189 @@ httpGets(char *line, /* I - Line to read into */
/*
+ * 'httpGetState()' - Get the current state of the HTTP request.
+ */
+
+http_state_t /* O - HTTP state */
+httpGetState(http_t *http) /* I - Connection to server */
+{
+ return (http ? http->state : HTTP_ERROR);
+}
+
+
+/*
+ * 'httpGetStatus()' - Get the status of the last HTTP request.
+ *
+ * @since CUPS 1.2/OS X 10.5@
+ */
+
+http_status_t /* O - HTTP status */
+httpGetStatus(http_t *http) /* I - Connection to server */
+{
+ return (http ? http->status : HTTP_ERROR);
+}
+
+
+/*
+ * 'httpGetSubField()' - Get a sub-field value.
+ *
+ * @deprecated@
+ */
+
+char * /* O - Value or NULL */
+httpGetSubField(http_t *http, /* I - Connection to server */
+ http_field_t field, /* I - Field index */
+ const char *name, /* I - Name of sub-field */
+ char *value) /* O - Value string */
+{
+ return (httpGetSubField2(http, field, name, value, HTTP_MAX_VALUE));
+}
+
+
+/*
+ * 'httpGetSubField2()' - Get a sub-field value.
+ *
+ * @since CUPS 1.2/OS X 10.5@
+ */
+
+char * /* O - Value or NULL */
+httpGetSubField2(http_t *http, /* I - Connection to server */
+ http_field_t field, /* I - Field index */
+ const char *name, /* I - Name of sub-field */
+ char *value, /* O - Value string */
+ int valuelen) /* I - Size of value buffer */
+{
+ const char *fptr; /* Pointer into field */
+ char temp[HTTP_MAX_VALUE], /* Temporary buffer for name */
+ *ptr, /* Pointer into string buffer */
+ *end; /* End of value buffer */
+
+ DEBUG_printf(("2httpGetSubField2(http=%p, field=%d, name=\"%s\", value=%p, "
+ "valuelen=%d)", http, field, name, value, valuelen));
+
+ if (!http || !name || !value || valuelen < 2 ||
+ field <= HTTP_FIELD_UNKNOWN || field >= HTTP_FIELD_MAX)
+ return (NULL);
+
+ end = value + valuelen - 1;
+
+ for (fptr = http->fields[field]; *fptr;)
+ {
+ /*
+ * Skip leading whitespace...
+ */
+
+ while (_cups_isspace(*fptr))
+ fptr ++;
+
+ if (*fptr == ',')
+ {
+ fptr ++;
+ continue;
+ }
+
+ /*
+ * Get the sub-field name...
+ */
+
+ for (ptr = temp;
+ *fptr && *fptr != '=' && !_cups_isspace(*fptr) &&
+ ptr < (temp + sizeof(temp) - 1);
+ *ptr++ = *fptr++);
+
+ *ptr = '\0';
+
+ DEBUG_printf(("4httpGetSubField2: name=\"%s\"", temp));
+
+ /*
+ * Skip trailing chars up to the '='...
+ */
+
+ while (_cups_isspace(*fptr))
+ fptr ++;
+
+ if (!*fptr)
+ break;
+
+ if (*fptr != '=')
+ continue;
+
+ /*
+ * Skip = and leading whitespace...
+ */
+
+ fptr ++;
+
+ while (_cups_isspace(*fptr))
+ fptr ++;
+
+ if (*fptr == '\"')
+ {
+ /*
+ * Read quoted string...
+ */
+
+ for (ptr = value, fptr ++;
+ *fptr && *fptr != '\"' && ptr < end;
+ *ptr++ = *fptr++);
+
+ *ptr = '\0';
+
+ while (*fptr && *fptr != '\"')
+ fptr ++;
+
+ if (*fptr)
+ fptr ++;
+ }
+ else
+ {
+ /*
+ * Read unquoted string...
+ */
+
+ for (ptr = value;
+ *fptr && !_cups_isspace(*fptr) && *fptr != ',' && ptr < end;
+ *ptr++ = *fptr++);
+
+ *ptr = '\0';
+
+ while (*fptr && !_cups_isspace(*fptr) && *fptr != ',')
+ fptr ++;
+ }
+
+ DEBUG_printf(("4httpGetSubField2: value=\"%s\"", value));
+
+ /*
+ * See if this is the one...
+ */
+
+ if (!strcmp(name, temp))
+ {
+ DEBUG_printf(("3httpGetSubField2: Returning \"%s\"", value));
+ return (value);
+ }
+ }
+
+ value[0] = '\0';
+
+ DEBUG_puts("3httpGetSubField2: Returning NULL");
+
+ return (NULL);
+}
+
+
+/*
+ * 'httpGetVersion()' - Get the HTTP version at the other end.
+ */
+
+http_version_t /* O - Version number */
+httpGetVersion(http_t *http) /* I - Connection to server */
+{
+ return (http ? http->version : HTTP_1_0);
+}
+
+
+/*
* 'httpHead()' - Send a HEAD request to the server.
*/
@@ -1649,6 +1668,8 @@ _httpPeek(http_t *http, /* I - Connection to server */
* Buffer small reads for better performance...
*/
+ ssize_t buflen; /* Length of read for buffer */
+
if (!http->blocking)
{
while (!httpWait(http, http->wait_value))
@@ -1661,48 +1682,69 @@ _httpPeek(http_t *http, /* I - Connection to server */
}
if (http->data_remaining > sizeof(http->buffer))
- bytes = sizeof(http->buffer);
+ buflen = sizeof(http->buffer);
else
- bytes = http->data_remaining;
+ buflen = http->data_remaining;
+
+ DEBUG_printf(("2_httpPeek: Reading %d bytes into buffer.", (int)buflen));
+ do
+ {
#ifdef HAVE_SSL
- if (http->tls)
- bytes = http_read_ssl(http, http->buffer, bytes);
- else
+ if (http->tls)
+ bytes = http_read_ssl(http, http->buffer, buflen);
+ else
#endif /* HAVE_SSL */
- {
- DEBUG_printf(("2_httpPeek: reading %d bytes from socket into buffer...",
- (int)bytes));
-
- bytes = recv(http->fd, http->buffer, bytes, 0);
-
- DEBUG_printf(("2_httpPeek: read %d bytes from socket into buffer...",
- (int)bytes));
- }
+ bytes = recv(http->fd, http->buffer, buflen, 0);
- if (bytes > 0)
- http->used = bytes;
- else if (bytes < 0)
- {
-#ifdef WIN32
- if (WSAGetLastError() != WSAEINTR && WSAGetLastError() != WSAEWOULDBLOCK)
+ if (bytes < 0)
{
- http->error = WSAGetLastError();
- return (-1);
- }
+#ifdef WIN32
+ if (WSAGetLastError() != WSAEINTR)
+ {
+ http->error = WSAGetLastError();
+ return (-1);
+ }
+ else if (WSAGetLastError() == WSAEWOULDBLOCK)
+ {
+ if (!http->timeout_cb ||
+ !(*http->timeout_cb)(http, http->timeout_data))
+ {
+ http->error = WSAEWOULDBLOCK;
+ return (-1);
+ }
+ }
#else
- if (errno != EINTR && errno != EAGAIN)
- {
- http->error = errno;
- return (-1);
- }
+ if (errno == EWOULDBLOCK || errno == EAGAIN)
+ {
+ if (http->timeout_cb && !(*http->timeout_cb)(http, http->timeout_data))
+ {
+ http->error = errno;
+ return (-1);
+ }
+ else if (!http->timeout_cb && errno != EAGAIN)
+ {
+ http->error = errno;
+ return (-1);
+ }
+ }
+ else if (errno != EINTR)
+ {
+ http->error = errno;
+ return (-1);
+ }
#endif /* WIN32 */
+ }
}
- else
- {
- http->error = EPIPE;
- return (0);
- }
+ while (bytes < 0);
+
+ DEBUG_printf(("2_httpPeek: Read " CUPS_LLFMT " bytes into buffer.",
+ CUPS_LLCAST bytes));
+#ifdef DEBUG
+ http_debug_hex("_httpPeek", http->buffer, (int)bytes);
+#endif /* DEBUG */
+
+ http->used = bytes;
}
if (http->used > 0)
@@ -1835,7 +1877,7 @@ httpRead(http_t *http, /* I - Connection to server */
/*
* 'httpRead2()' - Read data from a HTTP connection.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ssize_t /* O - Number of bytes read */
@@ -1983,7 +2025,11 @@ httpRead2(http_t *http, /* I - Connection to server */
}
while (bytes < 0);
- DEBUG_printf(("2httpRead2: Read %d bytes into buffer.", (int)bytes));
+ DEBUG_printf(("2httpRead2: Read " CUPS_LLFMT " bytes into buffer.",
+ CUPS_LLCAST bytes));
+#ifdef DEBUG
+ http_debug_hex("httpRead2", http->buffer, (int)bytes);
+#endif /* DEBUG */
http->used = bytes;
}
@@ -2086,6 +2132,9 @@ httpRead2(http_t *http, /* I - Connection to server */
DEBUG_printf(("2httpRead2: read " CUPS_LLFMT " bytes from socket...",
CUPS_LLCAST bytes));
+#ifdef DEBUG
+ http_debug_hex("httpRead2", buffer, (int)bytes);
+#endif /* DEBUG */
}
if (bytes > 0)
@@ -2127,10 +2176,6 @@ httpRead2(http_t *http, /* I - Connection to server */
http->state = HTTP_WAITING;
}
-#ifdef DEBUG
- http_debug_hex("httpRead2", buffer, (int)bytes);
-#endif /* DEBUG */
-
return (bytes);
}
@@ -2250,6 +2295,22 @@ _httpReadGNUTLS(
int /* O - 0 on success, non-zero on failure */
httpReconnect(http_t *http) /* I - Connection to server */
{
+ DEBUG_printf(("httpReconnect(http=%p)", http));
+
+ return (httpReconnect2(http, 30000, NULL));
+}
+
+
+/*
+ * 'httpReconnect2()' - Reconnect to a HTTP server with timeout and optional
+ * cancel.
+ */
+
+int /* O - 0 on success, non-zero on failure */
+httpReconnect2(http_t *http, /* I - Connection to server */
+ int msec, /* I - Timeout in milliseconds */
+ int *cancel) /* I - Pointer to "cancel" variable */
+{
http_addrlist_t *addr; /* Connected address */
#ifdef DEBUG
http_addrlist_t *current; /* Current address */
@@ -2257,15 +2318,19 @@ httpReconnect(http_t *http) /* I - Connection to server */
#endif /* DEBUG */
- DEBUG_printf(("httpReconnect(http=%p)", http));
+ DEBUG_printf(("httpReconnect2(http=%p, msec=%d, cancel=%p)", http, msec,
+ cancel));
if (!http)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR, strerror(EINVAL), 0);
return (-1);
+ }
#ifdef HAVE_SSL
if (http->tls)
{
- DEBUG_puts("2httpReconnect: Shutting down SSL/TLS...");
+ DEBUG_puts("2httpReconnect2: Shutting down SSL/TLS...");
http_shutdown_ssl(http);
}
#endif /* HAVE_SSL */
@@ -2276,7 +2341,7 @@ httpReconnect(http_t *http) /* I - Connection to server */
if (http->fd >= 0)
{
- DEBUG_printf(("2httpReconnect: Closing socket %d...", http->fd));
+ DEBUG_printf(("2httpReconnect2: Closing socket %d...", http->fd));
#ifdef WIN32
closesocket(http->fd);
@@ -2310,12 +2375,13 @@ httpReconnect(http_t *http) /* I - Connection to server */
#ifdef DEBUG
for (current = http->addrlist; current; current = current->next)
- DEBUG_printf(("2httpReconnect: Address %s:%d",
+ DEBUG_printf(("2httpReconnect2: Address %s:%d",
httpAddrString(&(current->addr), temp, sizeof(temp)),
_httpAddrPort(&(current->addr))));
#endif /* DEBUG */
- if ((addr = httpAddrConnect(http->addrlist, &(http->fd))) == NULL)
+ if ((addr = httpAddrConnect2(http->addrlist, &(http->fd), msec,
+ cancel)) == NULL)
{
/*
* Unable to connect...
@@ -2328,13 +2394,13 @@ httpReconnect(http_t *http) /* I - Connection to server */
#endif /* WIN32 */
http->status = HTTP_ERROR;
- DEBUG_printf(("1httpReconnect: httpAddrConnect failed: %s",
+ DEBUG_printf(("1httpReconnect2: httpAddrConnect failed: %s",
strerror(http->error)));
return (-1);
}
- DEBUG_printf(("2httpReconnect: New socket=%d", http->fd));
+ DEBUG_printf(("2httpReconnect2: New socket=%d", http->fd));
if (http->timeout_value > 0)
http_set_timeout(http->fd, http->timeout_value);
@@ -2364,7 +2430,7 @@ httpReconnect(http_t *http) /* I - Connection to server */
return (http_upgrade(http));
#endif /* HAVE_SSL */
- DEBUG_printf(("1httpReconnect: Connected to %s:%d...",
+ DEBUG_printf(("1httpReconnect2: Connected to %s:%d...",
httpAddrString(http->hostaddr, temp, sizeof(temp)),
_httpAddrPort(http->hostaddr)));
@@ -2380,7 +2446,7 @@ httpReconnect(http_t *http) /* I - Connection to server */
* HTTP_FIELD_AUTHORIZATION prior to issuing a HTTP request using httpGet(),
* httpHead(), httpOptions(), httpPost, or httpPut().
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
void
@@ -2437,7 +2503,7 @@ httpSetAuthString(http_t *http, /* I - Connection to server */
* 'httpSetCredentials()' - Set the credentials associated with an encrypted
* connection.
*
- * @since CUPS 1.5/Mac OS X 10.7@
+ * @since CUPS 1.5/OS X 10.7@
*/
int /* O - Status of call (0 = success) */
@@ -2458,7 +2524,7 @@ httpSetCredentials(http_t *http, /* I - Connection to server */
/*
* 'httpSetCookie()' - Set the cookie value(s).
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
void
@@ -2483,7 +2549,7 @@ httpSetCookie(http_t *http, /* I - Connection */
*
* Currently only HTTP_CONTINUE is supported for the "expect" argument.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void
@@ -2568,7 +2634,7 @@ httpSetField(http_t *http, /* I - Connection to server */
/*
* 'httpSetLength()' - Set the content-length and content-encoding.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
void
@@ -2598,7 +2664,7 @@ httpSetLength(http_t *http, /* I - Connection to server */
* The optional timeout callback receives both the HTTP connection and a user
* data pointer and must return 1 to continue or 0 to error (time) out.
*
- * @since CUPS 1.5/Mac OS X 10.7@
+ * @since CUPS 1.5/OS X 10.7@
*/
void
@@ -2966,7 +3032,7 @@ _httpWait(http_t *http, /* I - Connection to server */
/*
* 'httpWait()' - Wait for data available on a connection.
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
int /* O - 1 if data is available, 0 otherwise */
@@ -3029,7 +3095,7 @@ httpWrite(http_t *http, /* I - Connection to server */
/*
* 'httpWrite2()' - Write data to a HTTP connection.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ssize_t /* O - Number of bytes written */
@@ -4449,6 +4515,8 @@ http_write(http_t *http, /* I - Connection to server */
while (length > 0)
{
+ DEBUG_printf(("3http_write: About to write %d bytes.", (int)length));
+
if (http->timeout_cb)
{
#ifdef HAVE_POLL
@@ -4513,6 +4581,9 @@ http_write(http_t *http, /* I - Connection to server */
#endif /* HAVE_SSL */
bytes = send(http->fd, buffer, length, 0);
+ DEBUG_printf(("3http_write: Write of %d bytes returned %d.", (int)length,
+ (int)bytes));
+
if (bytes < 0)
{
#ifdef WIN32
@@ -4706,5 +4777,5 @@ http_write_ssl(http_t *http, /* I - Connection to server */
/*
- * End of "$Id: http.c 10450 2012-05-04 22:52:56Z mike $".
+ * End of "$Id: http.c 10449 2012-05-04 22:51:10Z mike $".
*/
diff --git a/cups/http.h b/cups/http.h
index d24f9e6f..36ac25cd 100644
--- a/cups/http.h
+++ b/cups/http.h
@@ -1,9 +1,9 @@
/*
- * "$Id: http.h 9801 2011-05-21 04:02:41Z mike $"
+ * "$Id: http.h 10424 2012-04-23 17:26:57Z mike $"
*
* Hyper-Text Transport Protocol definitions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -124,7 +124,7 @@ typedef enum http_auth_e /**** HTTP authentication types ****/
HTTP_AUTH_MD5_SESS, /* MD5-session authentication in use */
HTTP_AUTH_MD5_INT, /* Digest authentication in use for body */
HTTP_AUTH_MD5_SESS_INT, /* MD5-session authentication in use for body */
- HTTP_AUTH_NEGOTIATE /* GSSAPI authentication in use @since CUPS 1.3/Mac OS X 10.5@ */
+ HTTP_AUTH_NEGOTIATE /* GSSAPI authentication in use @since CUPS 1.3/OS X 10.5@ */
} http_auth_t;
typedef enum http_encoding_e /**** HTTP transfer encoding values ****/
@@ -251,7 +251,7 @@ typedef enum http_status_e /**** HTTP status codes ****/
HTTP_NOT_SUPPORTED, /* HTTP version not supported */
HTTP_AUTHORIZATION_CANCELED = 1000, /* User canceled authorization @since CUPS 1.4@ */
- HTTP_PKI_ERROR, /* Error negotiating a secure connection @since CUPS 1.5/Mac OS X 10.7@ */
+ HTTP_PKI_ERROR, /* Error negotiating a secure connection @since CUPS 1.5/OS X 10.7@ */
HTTP_WEBIF_DISABLED /* Web interface is disabled @private@ */
} http_status_t;
@@ -292,7 +292,7 @@ typedef enum http_version_e /**** HTTP version numbers ****/
typedef union _http_addr_u /**** Socket address union, which
**** makes using IPv6 and other
**** address types easier and
- **** more portable. @since CUPS 1.2/Mac OS X 10.5@
+ **** more portable. @since CUPS 1.2/OS X 10.5@
****/
{
struct sockaddr addr; /* Base structure for family value */
@@ -309,7 +309,7 @@ typedef union _http_addr_u /**** Socket address union, which
typedef struct http_addrlist_s /**** Socket address list, which is
**** used to enumerate all of the
**** addresses that are associated
- **** with a hostname. @since CUPS 1.2/Mac OS X 10.5@
+ **** with a hostname. @since CUPS 1.2/OS X 10.5@
****/
{
struct http_addrlist_s *next; /* Pointer to next address in list */
@@ -318,14 +318,14 @@ typedef struct http_addrlist_s /**** Socket address list, which is
typedef struct _http_s http_t; /**** HTTP connection type ****/
-typedef struct http_credential_s /**** HTTP credential data @since CUPS 1.5/Mac OS X 10.7@ ****/
+typedef struct http_credential_s /**** HTTP credential data @since CUPS 1.5/OS X 10.7@ ****/
{
void *data; /* Pointer to credential data */
size_t datalen; /* Credential length */
} http_credential_t;
typedef int (*http_timeout_cb_t)(http_t *http, void *user_data);
- /**** HTTP timeout callback @since CUPS 1.5/Mac OS X 10.7@ ****/
+ /**** HTTP timeout callback @since CUPS 1.5/OS X 10.7@ ****/
@@ -357,10 +357,7 @@ extern void httpInitialize(void);
extern int httpOptions(http_t *http, const char *uri);
extern int httpPost(http_t *http, const char *uri);
extern int httpPrintf(http_t *http, const char *format, ...)
-# ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 2, 3)))
-# endif /* __GNUC__ */
-;
+ __attribute__ ((__format__ (__printf__, 2, 3)));
extern int httpPut(http_t *http, const char *uri);
extern int httpRead(http_t *http, char *buffer, int length) _CUPS_DEPRECATED;
extern int httpReconnect(http_t *http);
@@ -398,7 +395,7 @@ extern void httpSeparate2(const char *uri,
char *host, int hostlen, int *port,
char *resource, int resourcelen) _CUPS_DEPRECATED;
-/**** New in CUPS 1.2/Mac OS X 10.5 ****/
+/**** New in CUPS 1.2/OS X 10.5 ****/
extern int httpAddrAny(const http_addr_t *addr) _CUPS_API_1_2;
extern http_addrlist_t *httpAddrConnect(http_addrlist_t *addrlist, int *sock) _CUPS_API_1_2;
extern int httpAddrEqual(const http_addr_t *addr1,
@@ -446,12 +443,12 @@ extern void httpSetLength(http_t *http, size_t length) _CUPS_API_1_2;
extern ssize_t httpWrite2(http_t *http, const char *buffer,
size_t length) _CUPS_API_1_2;
-/**** New in CUPS 1.3/Mac OS X 10.5 ****/
+/**** New in CUPS 1.3/OS X 10.5 ****/
extern char *httpGetAuthString(http_t *http) _CUPS_API_1_3;
extern void httpSetAuthString(http_t *http, const char *scheme,
const char *data) _CUPS_API_1_3;
-/**** New in CUPS 1.5/Mac OS X 10.7 ****/
+/**** New in CUPS 1.5/OS X 10.7 ****/
extern int httpAddCredential(cups_array_t *credentials,
const void *data, size_t datalen)
_CUPS_API_1_5;
@@ -462,7 +459,17 @@ extern void httpFreeCredentials(cups_array_t *certs) _CUPS_API_1_5;
extern int httpSetCredentials(http_t *http, cups_array_t *certs)
_CUPS_API_1_5;
extern void httpSetTimeout(http_t *http, double timeout,
- http_timeout_cb_t cb, void *user_data);
+ http_timeout_cb_t cb, void *user_data)
+ _CUPS_API_1_5;
+
+/**** New in CUPS 1.6/OS X 10.8 ****/
+extern http_addrlist_t *httpAddrConnect2(http_addrlist_t *addrlist, int *sock,
+ int msec, int *cancel)
+ _CUPS_API_1_6;
+extern http_state_t httpGetState(http_t *http) _CUPS_API_1_6;
+extern http_version_t httpGetVersion(http_t *http) _CUPS_API_1_6;
+extern int httpReconnect2(http_t *http, int msec, int *cancel)
+ _CUPS_API_1_6;
/*
@@ -475,5 +482,5 @@ extern void httpSetTimeout(http_t *http, double timeout,
#endif /* !_CUPS_HTTP_H_ */
/*
- * End of "$Id: http.h 9801 2011-05-21 04:02:41Z mike $".
+ * End of "$Id: http.h 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/ipp-private.h b/cups/ipp-private.h
index a173f675..e3a94d94 100644
--- a/cups/ipp-private.h
+++ b/cups/ipp-private.h
@@ -1,9 +1,9 @@
/*
- * "$Id: ipp-private.h 9084 2010-04-07 06:54:31Z mike $"
+ * "$Id: ipp-private.h 10380 2012-03-23 22:20:10Z mike $"
*
* Private IPP definitions for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2011 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -46,19 +46,14 @@ extern "C" {
* Structures...
*/
-typedef struct _ipp_buffer_s /**** Read/write buffer ****/
-{
- unsigned char d[IPP_BUF_SIZE];/* Data buffer */
- struct _ipp_buffer_s *next; /* Next buffer in list */
- int used; /* Is this buffer used? */
-} _ipp_buffer_t;
-
typedef struct /**** Attribute mapping data ****/
{
int multivalue; /* Option has multiple values? */
const char *name; /* Option/attribute name */
ipp_tag_t value_tag; /* Value tag for this attribute */
ipp_tag_t group_tag; /* Group tag for this attribute */
+ ipp_tag_t alt_group_tag; /* Alternate group tag for this
+ * attribute */
} _ipp_option_t;
@@ -66,11 +61,7 @@ typedef struct /**** Attribute mapping data ****/
* Prototypes for private functions...
*/
-extern ipp_attribute_t *_ippAddAttr(ipp_t *ipp, int num_values);
-extern size_t _ippAttrString(ipp_attribute_t *attr, char *buffer,
- size_t bufsize);
extern _ipp_option_t *_ippFindOption(const char *name);
-extern void _ippFreeAttr(ipp_attribute_t *attr);
/*
@@ -83,5 +74,5 @@ extern void _ippFreeAttr(ipp_attribute_t *attr);
#endif /* !_CUPS_IPP_H_ */
/*
- * End of "$Id: ipp-private.h 9084 2010-04-07 06:54:31Z mike $".
+ * End of "$Id: ipp-private.h 10380 2012-03-23 22:20:10Z mike $".
*/
diff --git a/cups/ipp-support.c b/cups/ipp-support.c
index a4281706..605ff111 100644
--- a/cups/ipp-support.c
+++ b/cups/ipp-support.c
@@ -1,9 +1,9 @@
/*
- * "$Id: ipp-support.c 10108 2011-11-04 22:22:22Z mike $"
+ * "$Id: ipp-support.c 10424 2012-04-23 17:26:57Z mike $"
*
* Internet Printing Protocol support functions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -16,16 +16,19 @@
*
* Contents:
*
- * _ippAttrString() - Convert the attribute's value to a string.
- * ippErrorString() - Return a name for the given status code.
- * ippErrorValue() - Return a status code for the given name.
- * ippOpString() - Return a name for the given operation id.
- * ippOpValue() - Return an operation id for the given name.
- * ippPort() - Return the default IPP port number.
- * ippSetPort() - Set the default port number.
- * ippTagString() - Return the tag name corresponding to a tag value.
- * ippTagValue() - Return the tag value corresponding to a tag name.
- * ipp_col_string() - Convert a collection to a string.
+ * ippAttributeString() - Convert the attribute's value to a string.
+ * ippEnumString() - Return a string corresponding to the enum value.
+ * ippEnumValue() - Return the value associated with a given enum
+ * string.
+ * ippErrorString() - Return a name for the given status code.
+ * ippErrorValue() - Return a status code for the given name.
+ * ippOpString() - Return a name for the given operation id.
+ * ippOpValue() - Return an operation id for the given name.
+ * ippPort() - Return the default IPP port number.
+ * ippSetPort() - Set the default port number.
+ * ippTagString() - Return the tag name corresponding to a tag value.
+ * ippTagValue() - Return the tag value corresponding to a tag name.
+ * ipp_col_string() - Convert a collection to a string.
*/
/*
@@ -40,18 +43,18 @@
*/
static const char * const ipp_status_oks[] = /* "OK" status codes */
- {
+ { /* (name) = abandoned standard value */
"successful-ok",
"successful-ok-ignored-or-substituted-attributes",
"successful-ok-conflicting-attributes",
"successful-ok-ignored-subscriptions",
- "successful-ok-ignored-notifications",
+ "(successful-ok-ignored-notifications)",
"successful-ok-too-many-events",
- "successful-ok-but-cancel-subscription",
+ "(successful-ok-but-cancel-subscription)",
"successful-ok-events-complete"
},
* const ipp_status_400s[] = /* Client errors */
- {
+ { /* (name) = abandoned standard value */
"client-error-bad-request",
"client-error-forbidden",
"client-error-not-authenticated",
@@ -74,8 +77,12 @@ static const char * const ipp_status_oks[] = /* "OK" status codes */
"client-error-attributes-not-settable",
"client-error-ignored-all-subscriptions",
"client-error-too-many-subscriptions",
- "client-error-ignored-all-notifications",
- "client-error-print-support-file-not-found"
+ "(client-error-ignored-all-notifications)",
+ "(client-error-client-print-support-file-not-found)",
+ "client-error-document-password-error",
+ "client-error-document-permission-error",
+ "client-error-document-security-error",
+ "client-error-document-unprintable-error"
},
* const ipp_status_500s[] = /* Server errors */
{
@@ -99,7 +106,7 @@ static const char * const ipp_status_oks[] = /* "OK" status codes */
"cups-pki-error",
"cups-upgrade-required"
};
-static char * const ipp_std_ops[] =
+static const char * const ipp_std_ops[] =
{
/* 0x0000 - 0x000f */
"0x00",
@@ -133,13 +140,13 @@ static char * const ipp_std_ops[] =
"Renew-Subscription",
"Cancel-Subscription",
"Get-Notifications",
- "Send-Notifications",
- "0x1e",
- "0x1f",
+ "(Send-Notifications)",
+ "(Get-Resource-Attributes)",
+ "(Get-Resource-Data)",
/* 0x0020 - 0x002f */
- "0x20",
- "Get-Printer-Support-Files",
+ "(Get-Resources)",
+ "(Get-Printer-Support-Files)",
"Enable-Printer",
"Disable-Printer",
"Pause-Printer-After-Current-Job",
@@ -155,7 +162,7 @@ static char * const ipp_std_ops[] =
"Suspend-Current-Job",
"Resume-Job",
- /* 0x0030 - 0x003b */
+ /* 0x0030 - 0x003d */
"Promote-Job",
"Schedule-Job-After",
"0x32",
@@ -168,7 +175,8 @@ static char * const ipp_std_ops[] =
"Cancel-My-Jobs",
"Resubmit-Job",
"Close-Job",
- "Identify-Printer"
+ "Identify-Printer",
+ "Validate-Document"
},
* const ipp_cups_ops[] =
{
@@ -208,7 +216,8 @@ static char * const ipp_std_ops[] =
/* 0x06 */
"event-notification-attributes-tag",
/* 0x07 */
- "0x08", /* 0x08 */
+ "(resource-attributes-tag)",
+ /* 0x08 */
"document-attributes-tag",
/* 0x09 */
"0x0a", /* 0x0a */
@@ -277,22 +286,115 @@ static char * const ipp_std_ops[] =
"mimeMediaType", /* 0x49 */
"memberAttrName" /* 0x4a */
};
-static const char * const job_states[] =
-{ /* job-state enums */
- "pending",
- "pending-held",
- "processing",
- "processing-stopped",
- "canceled",
- "aborted",
- "completed"
-};
-static const char * const printer_states[] =
-{ /* printer-state enums */
- "idle",
- "processing",
- "stopped",
-};
+static const char * const ipp_document_states[] =
+ { /* document-state-enums */
+ "pending",
+ "4",
+ "processing",
+ "6",
+ "canceled",
+ "aborted",
+ "completed"
+ },
+ * const ipp_finishings[] =
+ { /* finishings enums */
+ "none",
+ "staple",
+ "punch",
+ "cover",
+ "bind",
+ "saddle-stitch",
+ "edge-stitch",
+ "fold",
+ "trim",
+ "bale",
+ "booklet-maker",
+ "jog-offset",
+ "15",
+ "16",
+ "17",
+ "18",
+ "19",
+ "staple-top-left",
+ "staple-bottom-left",
+ "staple-top-right",
+ "staple-bottom-right",
+ "edge-stitch-left",
+ "edge-stitch-top",
+ "edge-stitch-right",
+ "edge-stitch-bottom",
+ "staple-dual-left",
+ "staple-dual-top",
+ "staple-dual-right",
+ "staple-dual-bottom",
+ "32",
+ "33",
+ "34",
+ "35",
+ "36",
+ "37",
+ "38",
+ "39",
+ "40",
+ "41",
+ "42",
+ "43",
+ "44",
+ "45",
+ "46",
+ "47",
+ "48",
+ "49",
+ "bind-left",
+ "bind-top",
+ "bind-right",
+ "bind-bottom",
+ "54",
+ "55",
+ "56",
+ "57",
+ "58",
+ "59",
+ "trim-after-pages",
+ "trim-after-documents",
+ "trim-after-copies",
+ "trim-after-job"
+ },
+ * const ipp_job_collation_types[] =
+ { /* job-collation-type enums */
+ "uncollated-sheets",
+ "collated-documents",
+ "uncollated-documents"
+ },
+ * const ipp_job_states[] =
+ { /* job-state enums */
+ "pending",
+ "pending-held",
+ "processing",
+ "processing-stopped",
+ "canceled",
+ "aborted",
+ "completed"
+ },
+ * const ipp_orientation_requesteds[] =
+ { /* orientation-requested enums */
+ "portrait",
+ "landscape",
+ "reverse-landscape",
+ "reverse-portrait"
+ },
+ * const ipp_print_qualities[] =
+ { /* print-quality enums */
+ "draft",
+ "normal",
+ "high"
+ },
+ * const ipp_printer_states[] =
+ { /* printer-state enums */
+ "idle",
+ "processing",
+ "stopped",
+ };
/*
@@ -303,24 +405,27 @@ static size_t ipp_col_string(ipp_t *col, char *buffer, size_t bufsize);
/*
- * '_ippAttrString()' - Convert the attribute's value to a string.
+ * 'ippAttributeString()' - Convert the attribute's value to a string.
*
* Returns the number of bytes that would be written, not including the
* trailing nul. The buffer pointer can be NULL to get the required length,
* just like (v)snprintf.
+ *
+ * @since CUPS 1.6/OS X 10.8@
*/
size_t /* O - Number of bytes less nul */
-_ippAttrString(ipp_attribute_t *attr, /* I - Attribute */
- char *buffer, /* I - String buffer or NULL */
- size_t bufsize) /* I - Size of string buffer */
+ippAttributeString(
+ ipp_attribute_t *attr, /* I - Attribute */
+ char *buffer, /* I - String buffer or NULL */
+ size_t bufsize) /* I - Size of string buffer */
{
int i; /* Looping var */
char *bufptr, /* Pointer into buffer */
*bufend, /* End of buffer */
temp[256]; /* Temporary string */
const char *ptr; /* Pointer into string */
- ipp_value_t *val; /* Current value */
+ _ipp_value_t *val; /* Current value */
if (!attr || !attr->name)
@@ -350,40 +455,13 @@ _ippAttrString(ipp_attribute_t *attr, /* I - Attribute */
switch (attr->value_tag & ~IPP_TAG_COPY)
{
case IPP_TAG_ENUM :
- if (!strcmp(attr->name, "printer-state") &&
- val->integer >= IPP_PRINTER_IDLE &&
- val->integer <= IPP_PRINTER_STOPPED)
- {
- ptr = printer_states[val->integer - IPP_PRINTER_IDLE];
-
- if (buffer && bufptr < bufend)
- strlcpy(bufptr, ptr, bufend - bufptr + 1);
+ ptr = ippEnumString(attr->name, val->integer);
- bufptr += strlen(ptr);
- break;
- }
- else if (!strcmp(attr->name, "job-state") &&
- val->integer >= IPP_JOB_PENDING &&
- val->integer <= IPP_JOB_COMPLETED)
- {
- ptr = job_states[val->integer - IPP_JOB_PENDING];
-
- if (buffer && bufptr < bufend)
- strlcpy(bufptr, ptr, bufend - bufptr + 1);
-
- bufptr += strlen(ptr);
- break;
- }
- else if (!strcmp(attr->name, "operations-supported"))
- {
- ptr = ippOpString(val->integer);
-
- if (buffer && bufptr < bufend)
- strlcpy(bufptr, ptr, bufend - bufptr + 1);
+ if (buffer && bufptr < bufend)
+ strlcpy(bufptr, ptr, bufend - bufptr + 1);
- bufptr += strlen(ptr);
- break;
- }
+ bufptr += strlen(ptr);
+ break;
case IPP_TAG_INTEGER :
if (buffer && bufptr < bufend)
@@ -414,12 +492,12 @@ _ippAttrString(ipp_attribute_t *attr, /* I - Attribute */
bufptr += snprintf(bufptr, bufend - bufptr + 1, "%dx%d%s",
val->resolution.xres, val->resolution.yres,
val->resolution.units == IPP_RES_PER_INCH ?
- "dpi" : "dpc");
+ "dpi" : "dpcm");
else
bufptr += snprintf(temp, sizeof(temp), "%dx%d%s",
val->resolution.xres, val->resolution.yres,
val->resolution.units == IPP_RES_PER_INCH ?
- "dpi" : "dpc");
+ "dpi" : "dpcm");
break;
case IPP_TAG_DATE :
@@ -461,7 +539,7 @@ _ippAttrString(ipp_attribute_t *attr, /* I - Attribute */
for (ptr = val->string.text; *ptr; ptr ++)
{
- if (*ptr == '\\' || *ptr == '\"')
+ if (*ptr == '\\' || *ptr == '\"' || *ptr == '[')
{
if (buffer && bufptr < bufend)
*bufptr = '\\';
@@ -472,6 +550,25 @@ _ippAttrString(ipp_attribute_t *attr, /* I - Attribute */
*bufptr = *ptr;
bufptr ++;
}
+
+ if (val->string.language)
+ {
+ /*
+ * Add "[language]" to end of string...
+ */
+
+ if (buffer && bufptr < bufend)
+ *bufptr = '[';
+ bufptr ++;
+
+ if (buffer && bufptr < bufend)
+ strlcpy(bufptr, val->string.language, bufend - bufptr);
+ bufptr += strlen(val->string.language);
+
+ if (buffer && bufptr < bufend)
+ *bufptr = ']';
+ bufptr ++;
+ }
break;
case IPP_TAG_BEGIN_COLLECTION :
@@ -532,6 +629,159 @@ _ippAttrString(ipp_attribute_t *attr, /* I - Attribute */
/*
+ * 'ippEnumString()' - Return a string corresponding to the enum value.
+ */
+
+const char * /* O - Enum string */
+ippEnumString(const char *attrname, /* I - Attribute name */
+ int enumvalue) /* I - Enum value */
+{
+ _cups_globals_t *cg = _cupsGlobals(); /* Pointer to library globals */
+
+
+ /*
+ * Check for standard enum values...
+ */
+
+ if (!strcmp(attrname, "document-state") &&
+ enumvalue >= 3 &&
+ enumvalue <= (3 + (int)(sizeof(ipp_document_states) /
+ sizeof(ipp_document_states[0]))))
+ return (ipp_document_states[enumvalue - 3]);
+ else if ((!strcmp(attrname, "finishings") ||
+ !strcmp(attrname, "finishings-actual") ||
+ !strcmp(attrname, "finishings-default") ||
+ !strcmp(attrname, "finishings-ready") ||
+ !strcmp(attrname, "finishings-supported")) &&
+ enumvalue >= 3 &&
+ enumvalue <= (3 + (int)(sizeof(ipp_finishings) / sizeof(ipp_finishings[0]))))
+ return (ipp_finishings[enumvalue - 3]);
+ else if ((!strcmp(attrname, "job-collation-type") ||
+ !strcmp(attrname, "job-collation-type-actual")) &&
+ enumvalue >= 3 &&
+ enumvalue <= (3 + (int)(sizeof(ipp_job_collation_types) /
+ sizeof(ipp_job_collation_types[0]))))
+ return (ipp_job_collation_types[enumvalue - 3]);
+ else if (!strcmp(attrname, "job-state") &&
+ enumvalue >= IPP_JOB_PENDING && enumvalue <= IPP_JOB_COMPLETED)
+ return (ipp_job_states[enumvalue - IPP_JOB_PENDING]);
+ else if (!strcmp(attrname, "operations-supported"))
+ return (ippOpString((ipp_op_t)enumvalue));
+ else if ((!strcmp(attrname, "orientation-requested") ||
+ !strcmp(attrname, "orientation-requested-actual") ||
+ !strcmp(attrname, "orientation-requested-default") ||
+ !strcmp(attrname, "orientation-requested-supported")) &&
+ enumvalue >= 3 &&
+ enumvalue <= (3 + (int)(sizeof(ipp_orientation_requesteds) /
+ sizeof(ipp_orientation_requesteds[0]))))
+ return (ipp_orientation_requesteds[enumvalue - 3]);
+ else if ((!strcmp(attrname, "print-quality") ||
+ !strcmp(attrname, "print-quality-actual") ||
+ !strcmp(attrname, "print-quality-default") ||
+ !strcmp(attrname, "print-quality-supported")) &&
+ enumvalue >= 3 &&
+ enumvalue <= (3 + (int)(sizeof(ipp_print_qualities) /
+ sizeof(ipp_print_qualities[0]))))
+ return (ipp_print_qualities[enumvalue - 3]);
+ else if (!strcmp(attrname, "printer-state") &&
+ enumvalue >= IPP_PRINTER_IDLE && enumvalue <= IPP_PRINTER_STOPPED)
+ return (ipp_printer_states[enumvalue - IPP_PRINTER_IDLE]);
+
+ /*
+ * Not a standard enum value, just return the decimal equivalent...
+ */
+
+ snprintf(cg->ipp_unknown, sizeof(cg->ipp_unknown), "%d", enumvalue);
+ return (cg->ipp_unknown);
+}
+
+
+/*
+ * 'ippEnumValue()' - Return the value associated with a given enum string.
+ */
+
+int /* O - Enum value or -1 if unknown */
+ippEnumValue(const char *attrname, /* I - Attribute name */
+ const char *enumstring) /* I - Enum string */
+{
+ int i, /* Looping var */
+ num_strings; /* Number of strings to compare */
+ const char * const *strings; /* Strings to compare */
+
+
+ /*
+ * If the string is just a number, return it...
+ */
+
+ if (isdigit(*enumstring & 255))
+ return (strtol(enumstring, NULL, 0));
+
+ /*
+ * Otherwise look up the string...
+ */
+
+ if (!strcmp(attrname, "document-state"))
+ {
+ num_strings = (int)(sizeof(ipp_document_states) / sizeof(ipp_document_states[0]));
+ strings = ipp_document_states;
+ }
+ else if (!strcmp(attrname, "finishings") ||
+ !strcmp(attrname, "finishings-actual") ||
+ !strcmp(attrname, "finishings-default") ||
+ !strcmp(attrname, "finishings-ready") ||
+ !strcmp(attrname, "finishings-supported"))
+ {
+ num_strings = (int)(sizeof(ipp_finishings) / sizeof(ipp_finishings[0]));
+ strings = ipp_finishings;
+ }
+ else if (!strcmp(attrname, "job-collation-type") ||
+ !strcmp(attrname, "job-collation-type-actual"))
+ {
+ num_strings = (int)(sizeof(ipp_job_collation_types) /
+ sizeof(ipp_job_collation_types[0]));
+ strings = ipp_job_collation_types;
+ }
+ else if (!strcmp(attrname, "job-state"))
+ {
+ num_strings = (int)(sizeof(ipp_job_states) / sizeof(ipp_job_states[0]));
+ strings = ipp_job_states;
+ }
+ else if (!strcmp(attrname, "operations-supported"))
+ return (ippOpValue(enumstring));
+ else if (!strcmp(attrname, "orientation-requested") ||
+ !strcmp(attrname, "orientation-requested-actual") ||
+ !strcmp(attrname, "orientation-requested-default") ||
+ !strcmp(attrname, "orientation-requested-supported"))
+ {
+ num_strings = (int)(sizeof(ipp_orientation_requesteds) /
+ sizeof(ipp_orientation_requesteds[0]));
+ strings = ipp_orientation_requesteds;
+ }
+ else if (!strcmp(attrname, "print-quality") ||
+ !strcmp(attrname, "print-quality-actual") ||
+ !strcmp(attrname, "print-quality-default") ||
+ !strcmp(attrname, "print-quality-supported"))
+ {
+ num_strings = (int)(sizeof(ipp_print_qualities) / sizeof(ipp_print_qualities[0]));
+ strings = ipp_print_qualities;
+ }
+ else if (!strcmp(attrname, "printer-state"))
+ {
+ num_strings = (int)(sizeof(ipp_printer_states) / sizeof(ipp_printer_states[0]));
+ strings = ipp_printer_states;
+ }
+ else
+ return (-1);
+
+ for (i = 0; i < num_strings; i ++)
+ if (!strcmp(enumstring, strings[i]))
+ return (i + 3);
+
+ return (-1);
+}
+
+
+/*
* 'ippErrorString()' - Return a name for the given status code.
*/
@@ -571,7 +821,7 @@ ippErrorString(ipp_status_t error) /* I - Error status */
/*
* 'ippErrorValue()' - Return a status code for the given name.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ipp_status_t /* O - IPP status code */
@@ -609,7 +859,7 @@ ippErrorValue(const char *name) /* I - Name */
/*
* 'ippOpString()' - Return a name for the given operation id.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
const char * /* O - Name */
@@ -644,7 +894,7 @@ ippOpString(ipp_op_t op) /* I - Operation ID */
/*
* 'ippOpValue()' - Return an operation id for the given name.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ipp_op_t /* O - Operation ID */
@@ -720,7 +970,7 @@ ippSetPort(int p) /* I - Port number to use */
*
* The returned names are defined in RFC 2911 and 3382.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
const char * /* O - Tag name */
@@ -740,7 +990,7 @@ ippTagString(ipp_tag_t tag) /* I - Tag value */
*
* The tag names are defined in RFC 2911 and 3382.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
ipp_tag_t /* O - Tag value */
@@ -791,6 +1041,7 @@ ipp_col_string(ipp_t *col, /* I - Collection attribute */
{
char *bufptr, /* Position in buffer */
*bufend, /* End of buffer */
+ prefix = '{', /* Prefix character */
temp[256]; /* Temporary string */
ipp_attribute_t *attr; /* Current member attribute */
@@ -798,24 +1049,32 @@ ipp_col_string(ipp_t *col, /* I - Collection attribute */
bufptr = buffer;
bufend = buffer + bufsize - 1;
- if (buffer && bufptr < bufend)
- *bufptr = '{';
- bufptr ++;
-
for (attr = col->attrs; attr; attr = attr->next)
{
if (!attr->name)
continue;
if (buffer && bufptr < bufend)
+ *bufptr = prefix;
+ bufptr ++;
+ prefix = ' ';
+
+ if (buffer && bufptr < bufend)
bufptr += snprintf(bufptr, bufend - bufptr + 1, "%s=", attr->name);
else
bufptr += strlen(attr->name) + 1;
if (buffer && bufptr < bufend)
- bufptr += _ippAttrString(attr, bufptr, bufend - bufptr + 1);
+ bufptr += ippAttributeString(attr, bufptr, bufend - bufptr + 1);
else
- bufptr += _ippAttrString(attr, temp, sizeof(temp));
+ bufptr += ippAttributeString(attr, temp, sizeof(temp));
+ }
+
+ if (prefix == '{')
+ {
+ if (buffer && bufptr < bufend)
+ *bufptr = prefix;
+ bufptr ++;
}
if (buffer && bufptr < bufend)
@@ -827,5 +1086,5 @@ ipp_col_string(ipp_t *col, /* I - Collection attribute */
/*
- * End of "$Id: ipp-support.c 10108 2011-11-04 22:22:22Z mike $".
+ * End of "$Id: ipp-support.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/ipp.c b/cups/ipp.c
index b63d1cc8..84ac82fd 100644
--- a/cups/ipp.c
+++ b/cups/ipp.c
@@ -1,5 +1,5 @@
/*
- * "$Id: ipp.c 10450 2012-05-04 22:52:56Z mike $"
+ * "$Id: ipp.c 10462 2012-05-12 00:07:16Z mike $"
*
* Internet Printing Protocol functions for CUPS.
*
@@ -16,44 +16,94 @@
*
* Contents:
*
- * ippAddBoolean() - Add a boolean attribute to an IPP message.
- * ippAddBooleans() - Add an array of boolean values.
- * ippAddDate() - Add a date attribute to an IPP message.
- * ippAddInteger() - Add a integer attribute to an IPP message.
- * ippAddIntegers() - Add an array of integer values.
+ * _cupsBufferGet() - Get a read/write buffer.
+ * _cupsBufferRelease() - Release a read/write buffer.
+ * ippAddBoolean() - Add a boolean attribute to an IPP message.
+ * ippAddBooleans() - Add an array of boolean values.
+ * ippAddCollection() - Add a collection value.
+ * ippAddCollections() - Add an array of collection values.
+ * ippAddDate() - Add a date attribute to an IPP message.
+ * ippAddInteger() - Add a integer attribute to an IPP message.
+ * ippAddIntegers() - Add an array of integer values.
* ippAddOctetString() - Add an octetString value to an IPP message.
- * ippAddString() - Add a language-encoded string to an IPP message.
- * ippAddStrings() - Add language-encoded strings to an IPP message.
- * ippAddRange() - Add a range of values to an IPP message.
- * ippAddRanges() - Add ranges of values to an IPP message.
+ * ippAddOutOfBand() - Add an out-of-band value to an IPP message.
+ * ippAddRange() - Add a range of values to an IPP message.
+ * ippAddRanges() - Add ranges of values to an IPP message.
* ippAddResolution() - Add a resolution value to an IPP message.
* ippAddResolutions() - Add resolution values to an IPP message.
- * ippAddSeparator() - Add a group separator to an IPP message.
- * ippDateToTime() - Convert from RFC 1903 Date/Time format to
- * UNIX time in seconds.
- * ippDelete() - Delete an IPP message.
+ * ippAddSeparator() - Add a group separator to an IPP message.
+ * ippAddString() - Add a language-encoded string to an IPP message.
+ * ippAddStrings() - Add language-encoded strings to an IPP message.
+ * ippCopyAttribute() - Copy an attribute.
+ * ippCopyAttributes() - Copy attributes from one IPP message to another.
+ * ippDateToTime() - Convert from RFC 1903 Date/Time format to UNIX
+ * time in seconds.
+ * ippDelete() - Delete an IPP message.
* ippDeleteAttribute() - Delete a single attribute in an IPP message.
- * ippFindAttribute() - Find a named attribute in a request...
- * ippFindNextAttribute() - Find the next named attribute in a request...
- * ippLength() - Compute the length of an IPP message.
- * ippNew() - Allocate a new IPP message.
- * ippNewRequest() - Allocate a new IPP message.
- * ippRead() - Read data for an IPP message from a HTTP
- * connection.
- * ippReadFile() - Read data for an IPP message from a file.
- * ippReadIO() - Read data for an IPP message.
- * ippTimeToDate() - Convert from UNIX time to RFC 1903 format.
- * ippWrite() - Write data for an IPP message to a HTTP
- * connection.
- * ippWriteFile() - Write data for an IPP message to a file.
- * ippWriteIO() - Write data for an IPP message.
- * _ippAddAttr() - Add a new attribute to the request.
- * _ippFreeAttr() - Free an attribute.
- * ipp_length() - Compute the length of an IPP message or
- * collection value.
- * ipp_read_http() - Semi-blocking read on a HTTP connection...
- * ipp_read_file() - Read IPP data from a file.
- * ipp_write_file() - Write IPP data to a file.
+ * ippDeleteValues() - Delete values in an attribute.
+ * ippFindAttribute() - Find a named attribute in a request.
+ * ippFindNextAttribute() - Find the next named attribute in a request.
+ * ippFirstAttribute() - Return the first attribute in the message.
+ * ippGetBoolean() - Get a boolean value for an attribute.
+ * ippGetCollection() - Get a collection value for an attribute.
+ * ippGetCount() - Get the number of values in an attribute.
+ * ippGetDate() - Get a date value for an attribute.
+ * ippGetGroupTag() - Get the group associated with an attribute.
+ * ippGetInteger() - Get the integer/enum value for an attribute.
+ * ippGetName() - Get the attribute name.
+ * ippGetOperation() - Get the operation ID in an IPP message.
+ * ippGetRange() - Get a rangeOfInteger value from an attribute.
+ * ippGetRequestId() - Get the request ID from an IPP message.
+ * ippGetResolution() - Get a resolution value for an attribute.
+ * ippGetStatusCode() - Get the status code from an IPP response or event
+ * message.
+ * ippGetString() - Get the string and optionally the language code
+ * for an attribute.
+ * ippGetValueTag() - Get the value tag for an attribute.
+ * ippGetVersion() - Get the major and minor version number from an
+ * IPP message.
+ * ippLength() - Compute the length of an IPP message.
+ * ippNextAttribute() - Return the next attribute in the message.
+ * ippNew() - Allocate a new IPP message.
+ * ippNewRequest() - Allocate a new IPP request message.
+ * ippRead() - Read data for an IPP message from a HTTP
+ * connection.
+ * ippReadFile() - Read data for an IPP message from a file.
+ * ippReadIO() - Read data for an IPP message.
+ * ippSetBoolean() - Set a boolean value in an attribute.
+ * ippSetCollection() - Set a collection value in an attribute.
+ * ippSetDate() - Set a date value in an attribute.
+ * ippSetGroupTag() - Set the group tag of an attribute.
+ * ippSetInteger() - Set an integer or enum value in an attribute.
+ * ippSetName() - Set the name of an attribute.
+ * ippSetOperation() - Set the operation ID in an IPP request message.
+ * ippSetRange() - Set a rangeOfInteger value in an attribute.
+ * ippSetRequestId() - Set the request ID in an IPP message.
+ * ippSetResolution() - Set a resolution value in an attribute.
+ * ippSetState() - Set the current state of the IPP message.
+ * ippSetStatusCode() - Set the status code in an IPP response or event
+ * message.
+ * ippSetString() - Set a string value in an attribute.
+ * ippSetValueTag() - Set the value tag of an attribute.
+ * ippSetVersion() - Set the version number in an IPP message.
+ * ippTimeToDate() - Convert from UNIX time to RFC 1903 format.
+ * ippWrite() - Write data for an IPP message to a HTTP
+ * connection.
+ * ippWriteFile() - Write data for an IPP message to a file.
+ * ippWriteIO() - Write data for an IPP message.
+ * ipp_add_attr() - Add a new attribute to the message.
+ * ipp_free_values() - Free attribute values.
+ * ipp_get_code() - Convert a C locale/charset name into an IPP
+ * language/charset code.
+ * ipp_lang_code() - Convert a C locale name into an IPP language
+ * code.
+ * ipp_length() - Compute the length of an IPP message or
+ * collection value.
+ * ipp_read_http() - Semi-blocking read on a HTTP connection...
+ * ipp_read_file() - Read IPP data from a file.
+ * ipp_set_value() - Get the value element from an attribute,
+ * expanding it as needed.
+ * ipp_write_file() - Write IPP data to a file.
*/
/*
@@ -70,19 +120,90 @@
* Local functions...
*/
-static unsigned char *ipp_buffer_get(void);
-static void ipp_buffer_release(unsigned char *b);
+static ipp_attribute_t *ipp_add_attr(ipp_t *ipp, const char *name,
+ ipp_tag_t group_tag, ipp_tag_t value_tag,
+ int num_values);
+static void ipp_free_values(ipp_attribute_t *attr, int element,
+ int count);
+static char *ipp_get_code(const char *locale, char *buffer,
+ size_t bufsize)
+ __attribute__((nonnull(1,2)));
+static char *ipp_lang_code(const char *locale, char *buffer,
+ size_t bufsize)
+ __attribute__((nonnull(1,2)));
static size_t ipp_length(ipp_t *ipp, int collection);
static ssize_t ipp_read_http(http_t *http, ipp_uchar_t *buffer,
size_t length);
static ssize_t ipp_read_file(int *fd, ipp_uchar_t *buffer,
size_t length);
+static _ipp_value_t *ipp_set_value(ipp_t *ipp, ipp_attribute_t **attr,
+ int element);
static ssize_t ipp_write_file(int *fd, ipp_uchar_t *buffer,
size_t length);
/*
+ * '_cupsBufferGet()' - Get a read/write buffer.
+ */
+
+char * /* O - Buffer */
+_cupsBufferGet(size_t size) /* I - Size required */
+{
+ _cups_buffer_t *buffer; /* Current buffer */
+ _cups_globals_t *cg = _cupsGlobals();
+ /* Global data */
+
+
+ for (buffer = cg->cups_buffers; buffer; buffer = buffer->next)
+ if (!buffer->used && buffer->size >= size)
+ break;
+
+ if (!buffer)
+ {
+ if ((buffer = malloc(sizeof(_cups_buffer_t) + size - 1)) == NULL)
+ return (NULL);
+
+ buffer->next = cg->cups_buffers;
+ buffer->size = size;
+ cg->cups_buffers = buffer;
+ }
+
+ buffer->used = 1;
+
+ return (buffer->d);
+}
+
+
+/*
+ * '_cupsBufferRelease()' - Release a read/write buffer.
+ */
+
+void
+_cupsBufferRelease(char *b) /* I - Buffer to release */
+{
+ _cups_buffer_t *buffer; /* Buffer */
+
+
+ /*
+ * Mark this buffer as unused...
+ */
+
+ buffer = (_cups_buffer_t *)(b - offsetof(_cups_buffer_t, d));
+ buffer->used = 0;
+}
+
+
+/*
* 'ippAddBoolean()' - Add a boolean attribute to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
*/
ipp_attribute_t * /* O - New attribute */
@@ -97,15 +218,21 @@ ippAddBoolean(ipp_t *ipp, /* I - IPP message */
DEBUG_printf(("ippAddBoolean(ipp=%p, group=%02x(%s), name=\"%s\", value=%d)",
ipp, group, ippTagString(group), name, value));
- if (!ipp || !name)
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE)
return (NULL);
- if ((attr = _ippAddAttr(ipp, 1)) == NULL)
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, IPP_TAG_BOOLEAN, 1)) == NULL)
return (NULL);
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = IPP_TAG_BOOLEAN;
attr->values[0].boolean = value;
return (attr);
@@ -114,6 +241,15 @@ ippAddBoolean(ipp_t *ipp, /* I - IPP message */
/*
* 'ippAddBooleans()' - Add an array of boolean values.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
*/
ipp_attribute_t * /* O - New attribute */
@@ -125,28 +261,36 @@ ippAddBooleans(ipp_t *ipp, /* I - IPP message */
{
int i; /* Looping var */
ipp_attribute_t *attr; /* New attribute */
- ipp_value_t *value; /* Current value */
+ _ipp_value_t *value; /* Current value */
DEBUG_printf(("ippAddBooleans(ipp=%p, group=%02x(%s), name=\"%s\", "
"num_values=%d, values=%p)", ipp, group, ippTagString(group),
name, num_values, values));
- if (!ipp || !name || num_values < 1)
- return (NULL);
+ /*
+ * Range check input...
+ */
- if ((attr = _ippAddAttr(ipp, num_values)) == NULL)
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ num_values < 1)
return (NULL);
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = IPP_TAG_BOOLEAN;
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, IPP_TAG_BOOLEAN, num_values)) == NULL)
+ return (NULL);
- if (values != NULL)
- for (i = 0, value = attr->values;
- i < num_values;
- i ++, value ++)
- value->boolean = values[i];
+ if (values)
+ {
+ for (i = num_values, value = attr->values;
+ i > 0;
+ i --, value ++)
+ value->boolean = *values++;
+ }
return (attr);
}
@@ -155,7 +299,16 @@ ippAddBooleans(ipp_t *ipp, /* I - IPP message */
/*
* 'ippAddCollection()' - Add a collection value.
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
+ *
+ * @since CUPS 1.1.19/OS X 10.3@
*/
ipp_attribute_t * /* O - New attribute */
@@ -170,18 +323,25 @@ ippAddCollection(ipp_t *ipp, /* I - IPP message */
DEBUG_printf(("ippAddCollection(ipp=%p, group=%02x(%s), name=\"%s\", "
"value=%p)", ipp, group, ippTagString(group), name, value));
- if (!ipp || !name)
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE)
return (NULL);
- if ((attr = _ippAddAttr(ipp, 1)) == NULL)
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, IPP_TAG_BEGIN_COLLECTION, 1)) == NULL)
return (NULL);
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = IPP_TAG_BEGIN_COLLECTION;
attr->values[0].collection = value;
- value->use ++;
+ if (value)
+ value->use ++;
return (attr);
}
@@ -190,7 +350,16 @@ ippAddCollection(ipp_t *ipp, /* I - IPP message */
/*
* 'ippAddCollections()' - Add an array of collection values.
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
+ *
+ * @since CUPS 1.1.19/OS X 10.3@
*/
ipp_attribute_t * /* O - New attribute */
@@ -203,30 +372,37 @@ ippAddCollections(
{
int i; /* Looping var */
ipp_attribute_t *attr; /* New attribute */
- ipp_value_t *value; /* Current value */
+ _ipp_value_t *value; /* Current value */
DEBUG_printf(("ippAddCollections(ipp=%p, group=%02x(%s), name=\"%s\", "
"num_values=%d, values=%p)", ipp, group, ippTagString(group),
name, num_values, values));
- if (!ipp || !name || num_values < 1)
- return (NULL);
+ /*
+ * Range check input...
+ */
- if ((attr = _ippAddAttr(ipp, num_values)) == NULL)
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ num_values < 1)
return (NULL);
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = IPP_TAG_BEGIN_COLLECTION;
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, IPP_TAG_BEGIN_COLLECTION,
+ num_values)) == NULL)
+ return (NULL);
- if (values != NULL)
+ if (values)
{
- for (i = 0, value = attr->values;
- i < num_values;
- i ++, value ++)
+ for (i = num_values, value = attr->values;
+ i > 0;
+ i --, value ++)
{
- value->collection = (ipp_t *)values[i];
+ value->collection = (ipp_t *)*values++;
value->collection->use ++;
}
}
@@ -237,6 +413,15 @@ ippAddCollections(
/*
* 'ippAddDate()' - Add a date attribute to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
*/
ipp_attribute_t * /* O - New attribute */
@@ -251,15 +436,21 @@ ippAddDate(ipp_t *ipp, /* I - IPP message */
DEBUG_printf(("ippAddDate(ipp=%p, group=%02x(%s), name=\"%s\", value=%p)",
ipp, group, ippTagString(group), name, value));
- if (!ipp || !name || !value)
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !name || !value || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE)
return (NULL);
- if ((attr = _ippAddAttr(ipp, 1)) == NULL)
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, IPP_TAG_DATE, 1)) == NULL)
return (NULL);
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = IPP_TAG_DATE;
memcpy(attr->values[0].date, value, 11);
return (attr);
@@ -268,12 +459,24 @@ ippAddDate(ipp_t *ipp, /* I - IPP message */
/*
* 'ippAddInteger()' - Add a integer attribute to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
+ *
+ * Supported values include enum (@code IPP_TAG_ENUM@) and integer
+ * (@code IPP_TAG_INTEGER@).
*/
ipp_attribute_t * /* O - New attribute */
ippAddInteger(ipp_t *ipp, /* I - IPP message */
ipp_tag_t group, /* I - IPP group */
- ipp_tag_t type, /* I - Type of attribute */
+ ipp_tag_t value_tag, /* I - Type of attribute */
const char *name, /* I - Name of attribute */
int value) /* I - Value of attribute */
{
@@ -282,17 +485,40 @@ ippAddInteger(ipp_t *ipp, /* I - IPP message */
DEBUG_printf(("ippAddInteger(ipp=%p, group=%02x(%s), type=%02x(%s), "
"name=\"%s\", value=%d)", ipp, group, ippTagString(group),
- type, ippTagString(type), name, value));
+ value_tag, ippTagString(value_tag), name, value));
- if (!ipp || !name)
+ value_tag &= IPP_TAG_MASK;
+
+ /*
+ * Special-case for legacy usage: map out-of-band attributes to new ippAddOutOfBand
+ * function...
+ */
+
+ if (value_tag >= IPP_TAG_UNSUPPORTED_VALUE && value_tag <= IPP_TAG_ADMINDEFINE)
+ return (ippAddOutOfBand(ipp, group, value_tag, name));
+
+ /*
+ * Range check input...
+ */
+
+#if 0
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ (value_tag != IPP_TAG_INTEGER && value_tag != IPP_TAG_ENUM))
+ return (NULL);
+#else
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE)
return (NULL);
+#endif /* 0 */
- if ((attr = _ippAddAttr(ipp, 1)) == NULL)
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, value_tag, 1)) == NULL)
return (NULL);
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = type;
attr->values[0].integer = value;
return (attr);
@@ -301,41 +527,71 @@ ippAddInteger(ipp_t *ipp, /* I - IPP message */
/*
* 'ippAddIntegers()' - Add an array of integer values.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
+ *
+ * Supported values include enum (@code IPP_TAG_ENUM@) and integer
+ * (@code IPP_TAG_INTEGER@).
*/
ipp_attribute_t * /* O - New attribute */
ippAddIntegers(ipp_t *ipp, /* I - IPP message */
ipp_tag_t group, /* I - IPP group */
- ipp_tag_t type, /* I - Type of attribute */
+ ipp_tag_t value_tag, /* I - Type of attribute */
const char *name, /* I - Name of attribute */
int num_values, /* I - Number of values */
const int *values) /* I - Values */
{
int i; /* Looping var */
ipp_attribute_t *attr; /* New attribute */
- ipp_value_t *value; /* Current value */
+ _ipp_value_t *value; /* Current value */
DEBUG_printf(("ippAddIntegers(ipp=%p, group=%02x(%s), type=%02x(%s), "
"name=\"%s\", num_values=%d, values=%p)", ipp,
- group, ippTagString(group), type, ippTagString(type), name,
+ group, ippTagString(group), value_tag, ippTagString(value_tag), name,
num_values, values));
- if (!ipp || !name || num_values < 1)
- return (NULL);
+ value_tag &= IPP_TAG_MASK;
+
+ /*
+ * Range check input...
+ */
- if ((attr = _ippAddAttr(ipp, num_values)) == NULL)
+#if 0
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ (value_tag != IPP_TAG_INTEGER && value_tag != IPP_TAG_ENUM) ||
+ num_values < 1)
+ return (NULL);
+#else
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ num_values < 1)
return (NULL);
+#endif /* 0 */
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = type;
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, value_tag, num_values)) == NULL)
+ return (NULL);
- if (values != NULL)
- for (i = 0, value = attr->values;
- i < num_values;
- i ++, value ++)
- value->integer = values[i];
+ if (values)
+ {
+ for (i = num_values, value = attr->values;
+ i > 0;
+ i --, value ++)
+ value->integer = *values++;
+ }
return (attr);
}
@@ -344,7 +600,16 @@ ippAddIntegers(ipp_t *ipp, /* I - IPP message */
/*
* 'ippAddOctetString()' - Add an octetString value to an IPP message.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
+ *
+ * @since CUPS 1.2/OS X 10.5@
*/
ipp_attribute_t * /* O - New attribute */
@@ -357,19 +622,17 @@ ippAddOctetString(ipp_t *ipp, /* I - IPP message */
ipp_attribute_t *attr; /* New attribute */
- if (ipp == NULL || name == NULL)
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE)
return (NULL);
- if ((attr = _ippAddAttr(ipp, 1)) == NULL)
+ if ((attr = ipp_add_attr(ipp, name, group, IPP_TAG_STRING, 1)) == NULL)
return (NULL);
/*
* Initialize the attribute data...
*/
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = IPP_TAG_STRING;
attr->values[0].unknown.length = datalen;
if (data)
@@ -392,164 +655,74 @@ ippAddOctetString(ipp_t *ipp, /* I - IPP message */
/*
- * 'ippAddString()' - Add a language-encoded string to an IPP message.
+ * 'ippAddOutOfBand()' - Add an out-of-band value to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
+ *
+ * Supported out-of-band values include unsupported-value
+ * (@code IPP_TAG_UNSUPPORTED_VALUE@), default (@code IPP_TAG_DEFAULT@), unknown
+ * (@code IPP_TAG_UNKNOWN@), no-value (@code IPP_TAG_NOVALUE@), not-settable
+ * (@code IPP_TAG_NOTSETTABLE@), delete-attribute (@code IPP_TAG_DELETEATTR@), and
+ * admin-define (@code IPP_TAG_ADMINDEFINE@).
+ *
+ * @since CUPS 1.6/OS X 10.8@
*/
-ipp_attribute_t * /* O - New attribute */
-ippAddString(ipp_t *ipp, /* I - IPP message */
- ipp_tag_t group, /* I - IPP group */
- ipp_tag_t type, /* I - Type of attribute */
- const char *name, /* I - Name of attribute */
- const char *charset, /* I - Character set */
- const char *value) /* I - Value */
+ipp_attribute_t * /* O - New attribute */
+ippAddOutOfBand(ipp_t *ipp, /* I - IPP message */
+ ipp_tag_t group, /* I - IPP group */
+ ipp_tag_t value_tag, /* I - Type of attribute */
+ const char *name) /* I - Name of attribute */
{
- ipp_attribute_t *attr; /* New attribute */
- char buffer[1024], /* Language/charset value buffer */
- *bufptr; /* Pointer into buffer */
-
-
- DEBUG_printf(("ippAddString(ipp=%p, group=%02x(%s), type=%02x(%s), "
- "name=\"%s\", charset=\"%s\", value=\"%s\")", ipp,
- group, ippTagString(group), type, ippTagString(type), name,
- charset, value));
-
- if (!ipp || !name)
- return (NULL);
-
- if ((attr = _ippAddAttr(ipp, 1)) == NULL)
- return (NULL);
-
- /*
- * Force value to be English for the POSIX locale...
- */
-
- if (type == IPP_TAG_LANGUAGE && !_cups_strcasecmp(value, "C"))
- value = "en";
-
- /*
- * Convert language and charset values to lowercase and change _ to - as
- * needed...
- */
-
- if ((type == IPP_TAG_LANGUAGE || type == IPP_TAG_CHARSET) && value)
- {
- strlcpy(buffer, value, sizeof(buffer));
- value = buffer;
+ DEBUG_printf(("ippAddOutOfBand(ipp=%p, group=%02x(%s), value_tag=%02x(%s), "
+ "name=\"%s\")", ipp, group, ippTagString(group), value_tag,
+ ippTagString(value_tag), name));
- for (bufptr = buffer; *bufptr; bufptr ++)
- if (*bufptr == '_')
- *bufptr = '-';
- else
- *bufptr = tolower(*bufptr & 255);
- }
+ value_tag &= IPP_TAG_MASK;
/*
- * Initialize the attribute data...
+ * Range check input...
*/
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = type;
- attr->values[0].string.charset = ((int)type & IPP_TAG_COPY) ? (char *)charset :
- charset ? _cupsStrAlloc(charset) : NULL;
- attr->values[0].string.text = ((int)type & IPP_TAG_COPY) ? (char *)value :
- value ? _cupsStrAlloc(value) : NULL;
-
- return (attr);
-}
-
-
-/*
- * 'ippAddStrings()' - Add language-encoded strings to an IPP message.
- */
-
-ipp_attribute_t * /* O - New attribute */
-ippAddStrings(
- ipp_t *ipp, /* I - IPP message */
- ipp_tag_t group, /* I - IPP group */
- ipp_tag_t type, /* I - Type of attribute */
- const char *name, /* I - Name of attribute */
- int num_values, /* I - Number of values */
- const char *charset, /* I - Character set */
- const char * const *values) /* I - Values */
-{
- int i; /* Looping var */
- ipp_attribute_t *attr; /* New attribute */
- ipp_value_t *value; /* Current value */
- char buffer[1024], /* Language/charset value buffer */
- *bufptr; /* Pointer into buffer */
-
-
- DEBUG_printf(("ippAddStrings(ipp=%p, group=%02x(%s), type=%02x(%s), "
- "name=\"%s\", num_values=%d, charset=\"%s\", values=%p)", ipp,
- group, ippTagString(group), type, ippTagString(type), name,
- num_values, charset, values));
-
- if (!ipp || !name || num_values < 1)
- return (NULL);
-
- if ((attr = _ippAddAttr(ipp, num_values)) == NULL)
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ (value_tag != IPP_TAG_UNSUPPORTED_VALUE &&
+ value_tag != IPP_TAG_DEFAULT &&
+ value_tag != IPP_TAG_UNKNOWN &&
+ value_tag != IPP_TAG_NOVALUE &&
+ value_tag != IPP_TAG_NOTSETTABLE &&
+ value_tag != IPP_TAG_DELETEATTR &&
+ value_tag != IPP_TAG_ADMINDEFINE))
return (NULL);
/*
- * Initialize the attribute data...
+ * Create the attribute...
*/
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = type;
-
- for (i = 0, value = attr->values;
- i < num_values;
- i ++, value ++)
- {
- if (i == 0)
- value->string.charset = ((int)type & IPP_TAG_COPY) ? (char *)charset :
- charset ? _cupsStrAlloc(charset) : NULL;
- else
- value->string.charset = attr->values[0].string.charset;
-
- if (values != NULL)
- {
- if ((int)type & IPP_TAG_COPY)
- value->string.text = (char *)values[i];
- else if (type == IPP_TAG_LANGUAGE && !_cups_strcasecmp(values[i], "C"))
- {
- /*
- * Force language to be English for the POSIX locale...
- */
-
- value->string.text = ((int)type & IPP_TAG_COPY) ? "en" :
- _cupsStrAlloc("en");
- }
- else if (type == IPP_TAG_LANGUAGE || type == IPP_TAG_CHARSET)
- {
- /*
- * Convert language values to lowercase and change _ to - as needed...
- */
-
- strlcpy(buffer, values[i], sizeof(buffer));
-
- for (bufptr = buffer; *bufptr; bufptr ++)
- if (*bufptr == '_')
- *bufptr = '-';
- else
- *bufptr = tolower(*bufptr & 255);
-
- value->string.text = _cupsStrAlloc(buffer);
- }
- else
- value->string.text = _cupsStrAlloc(values[i]);
-
- }
- }
-
- return (attr);
+ return (ipp_add_attr(ipp, name, group, value_tag, 1));
}
/*
* 'ippAddRange()' - Add a range of values to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
+ *
+ * The @code lower@ parameter must be less than or equal to the @code upper@ parameter.
*/
ipp_attribute_t * /* O - New attribute */
@@ -566,15 +739,21 @@ ippAddRange(ipp_t *ipp, /* I - IPP message */
"upper=%d)", ipp, group, ippTagString(group), name, lower,
upper));
- if (!ipp || !name)
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE)
return (NULL);
- if ((attr = _ippAddAttr(ipp, 1)) == NULL)
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, IPP_TAG_RANGE, 1)) == NULL)
return (NULL);
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = IPP_TAG_RANGE;
attr->values[0].range.lower = lower;
attr->values[0].range.upper = upper;
@@ -584,6 +763,15 @@ ippAddRange(ipp_t *ipp, /* I - IPP message */
/*
* 'ippAddRanges()' - Add ranges of values to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
*/
ipp_attribute_t * /* O - New attribute */
@@ -596,31 +784,39 @@ ippAddRanges(ipp_t *ipp, /* I - IPP message */
{
int i; /* Looping var */
ipp_attribute_t *attr; /* New attribute */
- ipp_value_t *value; /* Current value */
+ _ipp_value_t *value; /* Current value */
DEBUG_printf(("ippAddRanges(ipp=%p, group=%02x(%s), name=\"%s\", "
"num_values=%d, lower=%p, upper=%p)", ipp, group,
ippTagString(group), name, num_values, lower, upper));
- if (!ipp || !name || num_values < 1)
- return (NULL);
+ /*
+ * Range check input...
+ */
- if ((attr = _ippAddAttr(ipp, num_values)) == NULL)
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ num_values < 1)
return (NULL);
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = IPP_TAG_RANGE;
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, IPP_TAG_RANGE, num_values)) == NULL)
+ return (NULL);
- if (lower != NULL && upper != NULL)
- for (i = 0, value = attr->values;
- i < num_values;
- i ++, value ++)
+ if (lower && upper)
+ {
+ for (i = num_values, value = attr->values;
+ i > 0;
+ i --, value ++)
{
- value->range.lower = lower[i];
- value->range.upper = upper[i];
+ value->range.lower = *lower++;
+ value->range.upper = *upper++;
}
+ }
return (attr);
}
@@ -628,6 +824,15 @@ ippAddRanges(ipp_t *ipp, /* I - IPP message */
/*
* 'ippAddResolution()' - Add a resolution value to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
*/
ipp_attribute_t * /* O - New attribute */
@@ -645,15 +850,23 @@ ippAddResolution(ipp_t *ipp, /* I - IPP message */
"units=%d, xres=%d, yres=%d)", ipp, group,
ippTagString(group), name, units, xres, yres));
- if (!ipp || !name)
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ units < IPP_RES_PER_INCH || units > IPP_RES_PER_CM ||
+ xres < 0 || yres < 0)
return (NULL);
- if ((attr = _ippAddAttr(ipp, 1)) == NULL)
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, IPP_TAG_RESOLUTION, 1)) == NULL)
return (NULL);
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = IPP_TAG_RESOLUTION;
attr->values[0].resolution.xres = xres;
attr->values[0].resolution.yres = yres;
attr->values[0].resolution.units = units;
@@ -664,6 +877,15 @@ ippAddResolution(ipp_t *ipp, /* I - IPP message */
/*
* 'ippAddResolutions()' - Add resolution values to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
*/
ipp_attribute_t * /* O - New attribute */
@@ -677,32 +899,41 @@ ippAddResolutions(ipp_t *ipp, /* I - IPP message */
{
int i; /* Looping var */
ipp_attribute_t *attr; /* New attribute */
- ipp_value_t *value; /* Current value */
+ _ipp_value_t *value; /* Current value */
DEBUG_printf(("ippAddResolutions(ipp=%p, group=%02x(%s), name=\"%s\", "
"num_value=%d, units=%d, xres=%p, yres=%p)", ipp, group,
ippTagString(group), name, num_values, units, xres, yres));
- if (!ipp || !name || num_values < 1)
- return (NULL);
+ /*
+ * Range check input...
+ */
- if ((attr = _ippAddAttr(ipp, num_values)) == NULL)
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ num_values < 1 ||
+ units < IPP_RES_PER_INCH || units > IPP_RES_PER_CM)
return (NULL);
- attr->name = _cupsStrAlloc(name);
- attr->group_tag = group;
- attr->value_tag = IPP_TAG_RESOLUTION;
+ /*
+ * Create the attribute...
+ */
- if (xres != NULL && yres != NULL)
- for (i = 0, value = attr->values;
- i < num_values;
- i ++, value ++)
+ if ((attr = ipp_add_attr(ipp, name, group, IPP_TAG_RESOLUTION, num_values)) == NULL)
+ return (NULL);
+
+ if (xres && yres)
+ {
+ for (i = num_values, value = attr->values;
+ i > 0;
+ i --, value ++)
{
- value->resolution.xres = xres[i];
- value->resolution.yres = yres[i];
+ value->resolution.xres = *xres++;
+ value->resolution.yres = *yres++;
value->resolution.units = units;
}
+ }
return (attr);
}
@@ -710,30 +941,585 @@ ippAddResolutions(ipp_t *ipp, /* I - IPP message */
/*
* 'ippAddSeparator()' - Add a group separator to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
*/
ipp_attribute_t * /* O - New attribute */
ippAddSeparator(ipp_t *ipp) /* I - IPP message */
{
+ DEBUG_printf(("ippAddSeparator(ipp=%p)", ipp));
+
+ /*
+ * Range check input...
+ */
+
+ if (!ipp)
+ return (NULL);
+
+ /*
+ * Create the attribute...
+ */
+
+ return (ipp_add_attr(ipp, NULL, IPP_TAG_ZERO, IPP_TAG_ZERO, 0));
+}
+
+
+/*
+ * 'ippAddString()' - Add a language-encoded string to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
+ *
+ * Supported string values include charset (@code IPP_TAG_CHARSET@), keyword
+ * (@code IPP_TAG_KEYWORD@), language (@code IPP_TAG_LANGUAGE@), mimeMediaType
+ * (@code IPP_TAG_MIMETYPE@), name (@code IPP_TAG_NAME@), nameWithLanguage
+ * (@code IPP_TAG_NAMELANG), text (@code IPP_TAG_TEXT@), textWithLanguage
+ * (@code IPP_TAG_TEXTLANG@), uri (@code IPP_TAG_URI@), and uriScheme
+ * (@code IPP_TAG_URISCHEME@).
+ *
+ * The @code language@ parameter must be non-@code NULL@ for nameWithLanguage and
+ * textWithLanguage string values and must be @code NULL@ for all other string values.
+ */
+
+ipp_attribute_t * /* O - New attribute */
+ippAddString(ipp_t *ipp, /* I - IPP message */
+ ipp_tag_t group, /* I - IPP group */
+ ipp_tag_t value_tag, /* I - Type of attribute */
+ const char *name, /* I - Name of attribute */
+ const char *language, /* I - Language code */
+ const char *value) /* I - Value */
+{
+ ipp_tag_t temp_tag; /* Temporary value tag (masked) */
ipp_attribute_t *attr; /* New attribute */
+ char code[32]; /* Charset/language code buffer */
- DEBUG_printf(("ippAddSeparator(ipp=%p)", ipp));
+ DEBUG_printf(("ippAddString(ipp=%p, group=%02x(%s), value_tag=%02x(%s), "
+ "name=\"%s\", language=\"%s\", value=\"%s\")", ipp,
+ group, ippTagString(group), value_tag, ippTagString(value_tag), name,
+ language, value));
- if (!ipp)
+ /*
+ * Range check input...
+ */
+
+ temp_tag = (ipp_tag_t)((int)value_tag & IPP_TAG_MASK);
+
+#if 0
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ (temp_tag < IPP_TAG_TEXT && temp_tag != IPP_TAG_TEXTLANG &&
+ temp_tag != IPP_TAG_NAMELANG) || temp_tag > IPP_TAG_MIMETYPE)
return (NULL);
- if ((attr = _ippAddAttr(ipp, 0)) == NULL)
+ if ((temp_tag == IPP_TAG_TEXTLANG || temp_tag == IPP_TAG_NAMELANG)
+ != (language != NULL))
+ return (NULL);
+#else
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE)
return (NULL);
+#endif /* 0 */
- attr->group_tag = IPP_TAG_ZERO;
- attr->value_tag = IPP_TAG_ZERO;
+ /*
+ * See if we need to map charset, language, or locale values...
+ */
+
+ if (language && ((int)value_tag & IPP_TAG_COPY) &&
+ strcmp(language, ipp_lang_code(language, code, sizeof(code))))
+ value_tag = temp_tag; /* Don't do a fast copy */
+ else if (value && value_tag == (ipp_tag_t)(IPP_TAG_CHARSET | IPP_TAG_COPY) &&
+ strcmp(value, ipp_get_code(value, code, sizeof(code))))
+ value_tag = temp_tag; /* Don't do a fast copy */
+ else if (value && value_tag == (ipp_tag_t)(IPP_TAG_LANGUAGE | IPP_TAG_COPY) &&
+ strcmp(value, ipp_lang_code(value, code, sizeof(code))))
+ value_tag = temp_tag; /* Don't do a fast copy */
+
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, value_tag, 1)) == NULL)
+ return (NULL);
+
+ /*
+ * Initialize the attribute data...
+ */
+
+ if ((int)value_tag & IPP_TAG_COPY)
+ {
+ attr->values[0].string.language = (char *)language;
+ attr->values[0].string.text = (char *)value;
+ }
+ else
+ {
+ if (language)
+ attr->values[0].string.language = _cupsStrAlloc(ipp_lang_code(language, code,
+ sizeof(code)));
+
+ if (value)
+ {
+ if (value_tag == IPP_TAG_CHARSET)
+ attr->values[0].string.text = _cupsStrAlloc(ipp_get_code(value, code,
+ sizeof(code)));
+ else if (value_tag == IPP_TAG_LANGUAGE)
+ attr->values[0].string.text = _cupsStrAlloc(ipp_lang_code(value, code,
+ sizeof(code)));
+ else
+ attr->values[0].string.text = _cupsStrAlloc(value);
+ }
+ }
+
+ return (attr);
+}
+
+
+/*
+ * 'ippAddStrings()' - Add language-encoded strings to an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
+ *
+ * Supported string values include charset (@code IPP_TAG_CHARSET@), keyword
+ * (@code IPP_TAG_KEYWORD@), language (@code IPP_TAG_LANGUAGE@), mimeMediaType
+ * (@code IPP_TAG_MIMETYPE@), name (@code IPP_TAG_NAME@), nameWithLanguage
+ * (@code IPP_TAG_NAMELANG), text (@code IPP_TAG_TEXT@), textWithLanguage
+ * (@code IPP_TAG_TEXTLANG@), uri (@code IPP_TAG_URI@), and uriScheme
+ * (@code IPP_TAG_URISCHEME@).
+ *
+ * The @code language@ parameter must be non-@code NULL@ for nameWithLanguage and
+ * textWithLanguage string values and must be @code NULL@ for all other string values.
+ */
+
+ipp_attribute_t * /* O - New attribute */
+ippAddStrings(
+ ipp_t *ipp, /* I - IPP message */
+ ipp_tag_t group, /* I - IPP group */
+ ipp_tag_t value_tag, /* I - Type of attribute */
+ const char *name, /* I - Name of attribute */
+ int num_values, /* I - Number of values */
+ const char *language, /* I - Language code (@code NULL@ for default) */
+ const char * const *values) /* I - Values */
+{
+ int i; /* Looping var */
+ ipp_tag_t temp_tag; /* Temporary value tag (masked) */
+ ipp_attribute_t *attr; /* New attribute */
+ _ipp_value_t *value; /* Current value */
+ char code[32]; /* Language/charset value buffer */
+
+
+ DEBUG_printf(("ippAddStrings(ipp=%p, group=%02x(%s), value_tag=%02x(%s), "
+ "name=\"%s\", num_values=%d, language=\"%s\", values=%p)", ipp,
+ group, ippTagString(group), value_tag, ippTagString(value_tag), name,
+ num_values, language, values));
+
+ /*
+ * Range check input...
+ */
+
+ temp_tag = (ipp_tag_t)((int)value_tag & IPP_TAG_MASK);
+
+#if 0
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ (temp_tag < IPP_TAG_TEXT && temp_tag != IPP_TAG_TEXTLANG &&
+ temp_tag != IPP_TAG_NAMELANG) || temp_tag > IPP_TAG_MIMETYPE ||
+ num_values < 1)
+ return (NULL);
+
+ if ((temp_tag == IPP_TAG_TEXTLANG || temp_tag == IPP_TAG_NAMELANG)
+ != (language != NULL))
+ return (NULL);
+#else
+ if (!ipp || !name || group < IPP_TAG_ZERO ||
+ group == IPP_TAG_END || group >= IPP_TAG_UNSUPPORTED_VALUE ||
+ num_values < 1)
+ return (NULL);
+#endif /* 0 */
+
+ /*
+ * See if we need to map charset, language, or locale values...
+ */
+
+ if (language && ((int)value_tag & IPP_TAG_COPY) &&
+ strcmp(language, ipp_lang_code(language, code, sizeof(code))))
+ value_tag = temp_tag; /* Don't do a fast copy */
+ else if (values && value_tag == (ipp_tag_t)(IPP_TAG_CHARSET | IPP_TAG_COPY))
+ {
+ for (i = 0; i < num_values; i ++)
+ if (strcmp(values[i], ipp_get_code(values[i], code, sizeof(code))))
+ {
+ value_tag = temp_tag; /* Don't do a fast copy */
+ break;
+ }
+ }
+ else if (values && value_tag == (ipp_tag_t)(IPP_TAG_LANGUAGE | IPP_TAG_COPY))
+ {
+ for (i = 0; i < num_values; i ++)
+ if (strcmp(values[i], ipp_lang_code(values[i], code, sizeof(code))))
+ {
+ value_tag = temp_tag; /* Don't do a fast copy */
+ break;
+ }
+ }
+
+ /*
+ * Create the attribute...
+ */
+
+ if ((attr = ipp_add_attr(ipp, name, group, value_tag, num_values)) == NULL)
+ return (NULL);
+
+ /*
+ * Initialize the attribute data...
+ */
+
+ for (i = num_values, value = attr->values;
+ i > 0;
+ i --, value ++)
+ {
+ if (language)
+ {
+ if (value == attr->values)
+ {
+ if ((int)value_tag & IPP_TAG_COPY)
+ value->string.language = (char *)language;
+ else
+ value->string.language = _cupsStrAlloc(ipp_lang_code(language, code,
+ sizeof(code)));
+ }
+ else
+ value->string.language = attr->values[0].string.language;
+ }
+
+ if (values)
+ {
+ if ((int)value_tag & IPP_TAG_COPY)
+ value->string.text = (char *)*values++;
+ else if (value_tag == IPP_TAG_CHARSET)
+ value->string.text = _cupsStrAlloc(ipp_get_code(*values++, code, sizeof(code)));
+ else if (value_tag == IPP_TAG_LANGUAGE)
+ value->string.text = _cupsStrAlloc(ipp_lang_code(*values++, code, sizeof(code)));
+ else
+ value->string.text = _cupsStrAlloc(*values++);
+ }
+ }
return (attr);
}
/*
+ * 'ippCopyAttribute()' - Copy an attribute.
+ *
+ * The specified attribute, @code attr@, is copied to the destination IPP message.
+ * When @code quickcopy@ is non-zero, a "shallow" reference copy of the attribute is
+ * created - this should only be done as long as the original source IPP message will
+ * not be freed for the life of the destination.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+
+ipp_attribute_t * /* O - New attribute */
+ippCopyAttribute(
+ ipp_t *dst, /* I - Destination IPP message */
+ ipp_attribute_t *srcattr, /* I - Attribute to copy */
+ int quickcopy) /* I - 1 for a referenced copy, 0 for normal */
+{
+ int i; /* Looping var */
+ ipp_attribute_t *dstattr; /* Destination attribute */
+ _ipp_value_t *srcval, /* Source value */
+ *dstval; /* Destination value */
+
+
+ DEBUG_printf(("ippCopyAttribute(dst=%p, srcattr=%p, quickcopy=%d)", dst, srcattr,
+ quickcopy));
+
+ /*
+ * Range check input...
+ */
+
+ if (!dst || !srcattr)
+ return (NULL);
+
+ /*
+ * Copy it...
+ */
+
+ quickcopy = quickcopy ? IPP_TAG_COPY : 0;
+
+ switch (srcattr->value_tag & ~IPP_TAG_COPY)
+ {
+ case IPP_TAG_ZERO :
+ dstattr = ippAddSeparator(dst);
+ break;
+
+ case IPP_TAG_INTEGER :
+ case IPP_TAG_ENUM :
+ dstattr = ippAddIntegers(dst, srcattr->group_tag, srcattr->value_tag,
+ srcattr->name, srcattr->num_values, NULL);
+ if (!dstattr)
+ break;
+
+ for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ dstval->integer = srcval->integer;
+ break;
+
+ case IPP_TAG_BOOLEAN :
+ dstattr = ippAddBooleans(dst, srcattr->group_tag, srcattr->name,
+ srcattr->num_values, NULL);
+ if (!dstattr)
+ break;
+
+ for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ dstval->boolean = srcval->boolean;
+ break;
+
+ case IPP_TAG_TEXT :
+ case IPP_TAG_NAME :
+ case IPP_TAG_KEYWORD :
+ case IPP_TAG_URI :
+ case IPP_TAG_URISCHEME :
+ case IPP_TAG_CHARSET :
+ case IPP_TAG_LANGUAGE :
+ case IPP_TAG_MIMETYPE :
+ dstattr = ippAddStrings(dst, srcattr->group_tag,
+ (ipp_tag_t)(srcattr->value_tag | quickcopy),
+ srcattr->name, srcattr->num_values, NULL, NULL);
+ if (!dstattr)
+ break;
+
+ if (quickcopy)
+ {
+ for (i = srcattr->num_values, srcval = srcattr->values,
+ dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ dstval->string.text = srcval->string.text;
+ }
+ else if (srcattr->value_tag & IPP_TAG_COPY)
+ {
+ for (i = srcattr->num_values, srcval = srcattr->values,
+ dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ dstval->string.text = _cupsStrAlloc(srcval->string.text);
+ }
+ else
+ {
+ for (i = srcattr->num_values, srcval = srcattr->values,
+ dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ dstval->string.text = _cupsStrRetain(srcval->string.text);
+ }
+ break;
+
+ case IPP_TAG_DATE :
+ if (srcattr->num_values != 1)
+ return (NULL);
+
+ dstattr = ippAddDate(dst, srcattr->group_tag, srcattr->name,
+ srcattr->values[0].date);
+ break;
+
+ case IPP_TAG_RESOLUTION :
+ dstattr = ippAddResolutions(dst, srcattr->group_tag, srcattr->name,
+ srcattr->num_values, IPP_RES_PER_INCH,
+ NULL, NULL);
+ if (!dstattr)
+ break;
+
+ for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ {
+ dstval->resolution.xres = srcval->resolution.xres;
+ dstval->resolution.yres = srcval->resolution.yres;
+ dstval->resolution.units = srcval->resolution.units;
+ }
+ break;
+
+ case IPP_TAG_RANGE :
+ dstattr = ippAddRanges(dst, srcattr->group_tag, srcattr->name,
+ srcattr->num_values, NULL, NULL);
+ if (!dstattr)
+ break;
+
+ for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ {
+ dstval->range.lower = srcval->range.lower;
+ dstval->range.upper = srcval->range.upper;
+ }
+ break;
+
+ case IPP_TAG_TEXTLANG :
+ case IPP_TAG_NAMELANG :
+ dstattr = ippAddStrings(dst, srcattr->group_tag,
+ (ipp_tag_t)(srcattr->value_tag | quickcopy),
+ srcattr->name, srcattr->num_values, NULL, NULL);
+ if (!dstattr)
+ break;
+
+ if (quickcopy)
+ {
+ for (i = srcattr->num_values, srcval = srcattr->values,
+ dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ {
+ dstval->string.language = srcval->string.language;
+ dstval->string.text = srcval->string.text;
+ }
+ }
+ else if (srcattr->value_tag & IPP_TAG_COPY)
+ {
+ for (i = srcattr->num_values, srcval = srcattr->values,
+ dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ {
+ if (srcval == srcattr->values)
+ dstval->string.language = _cupsStrAlloc(srcval->string.language);
+ else
+ dstval->string.language = dstattr->values[0].string.language;
+
+ dstval->string.text = _cupsStrAlloc(srcval->string.text);
+ }
+ }
+ else
+ {
+ for (i = srcattr->num_values, srcval = srcattr->values,
+ dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ {
+ if (srcval == srcattr->values)
+ dstval->string.language = _cupsStrRetain(srcval->string.language);
+ else
+ dstval->string.language = dstattr->values[0].string.language;
+
+ dstval->string.text = _cupsStrRetain(srcval->string.text);
+ }
+ }
+ break;
+
+ case IPP_TAG_BEGIN_COLLECTION :
+ dstattr = ippAddCollections(dst, srcattr->group_tag, srcattr->name,
+ srcattr->num_values, NULL);
+ if (!dstattr)
+ break;
+
+ for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ {
+ dstval->collection = srcval->collection;
+ srcval->collection->use ++;
+ }
+ break;
+
+ case IPP_TAG_STRING :
+ default :
+ /* TODO: Implement quick copy for unknown/octetString values */
+ dstattr = ippAddIntegers(dst, srcattr->group_tag, srcattr->value_tag,
+ srcattr->name, srcattr->num_values, NULL);
+ if (!dstattr)
+ break;
+
+ for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
+ i > 0;
+ i --, srcval ++, dstval ++)
+ {
+ dstval->unknown.length = srcval->unknown.length;
+
+ if (dstval->unknown.length > 0)
+ {
+ if ((dstval->unknown.data = malloc(dstval->unknown.length)) == NULL)
+ dstval->unknown.length = 0;
+ else
+ memcpy(dstval->unknown.data, srcval->unknown.data, dstval->unknown.length);
+ }
+ }
+ break; /* anti-compiler-warning-code */
+ }
+
+ return (dstattr);
+}
+
+
+/*
+ * 'ippCopyAttributes()' - Copy attributes from one IPP message to another.
+ *
+ * Zero or more attributes are copied from the source IPP message, @code@ src, to the
+ * destination IPP message, @code dst@. When @code quickcopy@ is non-zero, a "shallow"
+ * reference copy of the attribute is created - this should only be done as long as the
+ * original source IPP message will not be freed for the life of the destination.
+ *
+ * The @code cb@ and @code context@ parameters provide a generic way to "filter" the
+ * attributes that are copied - the function must return 1 to copy the attribute or
+ * 0 to skip it. The function may also choose to do a partial copy of the source attribute
+ * itself.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on error */
+ippCopyAttributes(
+ ipp_t *dst, /* I - Destination IPP message */
+ ipp_t *src, /* I - Source IPP message */
+ int quickcopy, /* I - 1 for a referenced copy, 0 for normal */
+ ipp_copycb_t cb, /* I - Copy callback or @code NULL@ for none */
+ void *context) /* I - Context pointer */
+{
+ ipp_attribute_t *srcattr; /* Source attribute */
+
+
+ DEBUG_printf(("ippCopyAttributes(dst=%p, src=%p, quickcopy=%d, cb=%p, context=%p)",
+ dst, src, quickcopy, cb, context));
+
+ /*
+ * Range check input...
+ */
+
+ if (!dst || !src)
+ return (0);
+
+ /*
+ * Loop through source attributes and copy as needed...
+ */
+
+ for (srcattr = src->attrs; srcattr; srcattr = srcattr->next)
+ if (!cb || (*cb)(context, dst, srcattr))
+ if (!ippCopyAttribute(dst, srcattr, quickcopy))
+ return (0);
+
+ return (1);
+}
+
+
+/*
* 'ippDateToTime()' - Convert from RFC 1903 Date/Time format to UNIX time
* in seconds.
*/
@@ -808,7 +1594,13 @@ ippDelete(ipp_t *ipp) /* I - IPP message */
for (attr = ipp->attrs; attr != NULL; attr = next)
{
next = attr->next;
- _ippFreeAttr(attr);
+
+ ipp_free_values(attr, 0, attr->num_values);
+
+ if (attr->name)
+ _cupsStrFree(attr->name);
+
+ free(attr);
}
free(ipp);
@@ -818,7 +1610,7 @@ ippDelete(ipp_t *ipp) /* I - IPP message */
/*
* 'ippDeleteAttribute()' - Delete a single attribute in an IPP message.
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
void
@@ -834,38 +1626,107 @@ ippDeleteAttribute(
attr ? attr->name : "(null)"));
/*
- * Find the attribute in the list...
+ * Range check input...
*/
- for (current = ipp->attrs, prev = NULL;
- current != NULL && current != attr;
- prev = current, current = current->next);
+ if (!attr)
+ return;
+
+ /*
+ * Find the attribute in the list...
+ */
- if (current)
+ if (ipp)
{
- /*
- * Found it, remove the attribute from the list...
- */
+ for (current = ipp->attrs, prev = NULL;
+ current;
+ prev = current, current = current->next)
+ if (current == attr)
+ {
+ /*
+ * Found it, remove the attribute from the list...
+ */
- if (prev)
- prev->next = current->next;
- else
- ipp->attrs = current->next;
+ if (prev)
+ prev->next = current->next;
+ else
+ ipp->attrs = current->next;
- if (current == ipp->last)
- ipp->last = prev;
+ if (current == ipp->last)
+ ipp->last = prev;
- /*
- * Free memory used by the attribute...
- */
+ break;
+ }
+
+ if (!current)
+ return;
+ }
+
+ /*
+ * Free memory used by the attribute...
+ */
+
+ ipp_free_values(attr, 0, attr->num_values);
+
+ if (attr->name)
+ _cupsStrFree(attr->name);
+
+ free(attr);
+}
+
+
+/*
+ * 'ippDeleteValues()' - Delete values in an attribute.
+ *
+ * The @code element@ parameter specifies the first value to delete, starting at
+ * 0. It must be less than the number of values returned by @link ippGetCount@.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * Deleting all values in an attribute deletes the attribute.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippDeleteValues(
+ ipp_t *ipp, /* I - IPP message */
+ ipp_attribute_t **attr, /* IO - Attribute */
+ int element, /* I - Index of first value to delete (0-based) */
+ int count) /* I - Number of values to delete */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !attr || !*attr ||
+ element < 0 || element >= (*attr)->num_values || count <= 0 ||
+ (element + count) >= (*attr)->num_values)
+ return (0);
- _ippFreeAttr(current);
+ /*
+ * If we are deleting all values, just delete the attribute entirely.
+ */
+
+ if (count == (*attr)->num_values)
+ {
+ ippDeleteAttribute(ipp, *attr);
+ *attr = NULL;
+ return (1);
}
+
+ /*
+ * Otherwise free the values in question and return.
+ */
+
+ ipp_free_values(*attr, element, count);
+
+ return (1);
}
/*
- * 'ippFindAttribute()' - Find a named attribute in a request...
+ * 'ippFindAttribute()' - Find a named attribute in a request.
*/
ipp_attribute_t * /* O - Matching attribute */
@@ -894,7 +1755,7 @@ ippFindAttribute(ipp_t *ipp, /* I - IPP message */
/*
- * 'ippFindNextAttribute()' - Find the next named attribute in a request...
+ * 'ippFindNextAttribute()' - Find the next named attribute in a request.
*/
ipp_attribute_t * /* O - Matching attribute */
@@ -949,6 +1810,482 @@ ippFindNextAttribute(ipp_t *ipp, /* I - IPP message */
/*
+ * 'ippFirstAttribute()' - Return the first attribute in the message.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_attribute_t * /* O - First attribute or @code NULL@ if none */
+ippFirstAttribute(ipp_t *ipp) /* I - IPP message */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp)
+ return (NULL);
+
+ /*
+ * Return the first attribute...
+ */
+
+ return (ipp->current = ipp->attrs);
+}
+
+
+/*
+ * 'ippGetBoolean()' - Get a boolean value for an attribute.
+ *
+ * The @code element@ parameter specifies which value to get from 0 to
+ * @link ippGetCount(attr)@ - 1.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - Boolean value or -1 on error */
+ippGetBoolean(ipp_attribute_t *attr, /* I - IPP attribute */
+ int element) /* I - Value number (0-based) */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr || attr->value_tag != IPP_TAG_BOOLEAN ||
+ element < 0 || element >= attr->num_values)
+ return (-1);
+
+ /*
+ * Return the value...
+ */
+
+ return (attr->values[element].boolean);
+}
+
+
+/*
+ * 'ippGetCollection()' - Get a collection value for an attribute.
+ *
+ * The @code element@ parameter specifies which value to get from 0 to
+ * @link ippGetCount(attr)@ - 1.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_t * /* O - Collection value or @code NULL@ on error */
+ippGetCollection(
+ ipp_attribute_t *attr, /* I - IPP attribute */
+ int element) /* I - Value number (0-based) */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr || attr->value_tag != IPP_TAG_BEGIN_COLLECTION ||
+ element < 0 || element >= attr->num_values)
+ return (NULL);
+
+ /*
+ * Return the value...
+ */
+
+ return (attr->values[element].collection);
+}
+
+
+/*
+ * 'ippGetCount()' - Get the number of values in an attribute.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - Number of values or -1 on error */
+ippGetCount(ipp_attribute_t *attr) /* I - IPP attribute */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr)
+ return (-1);
+
+ /*
+ * Return the number of values...
+ */
+
+ return (attr->num_values);
+}
+
+
+/*
+ * 'ippGetDate()' - Get a date value for an attribute.
+ *
+ * The @code element@ parameter specifies which value to get from 0 to
+ * @link ippGetCount(attr)@ - 1.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+const ipp_uchar_t * /* O - Date value or @code NULL@ */
+ippGetDate(ipp_attribute_t *attr, /* I - IPP attribute */
+ int element) /* I - Value number (0-based) */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr || attr->value_tag != IPP_TAG_DATE ||
+ element < 0 || element >= attr->num_values)
+ return (NULL);
+
+ /*
+ * Return the value...
+ */
+
+ return (attr->values[element].date);
+}
+
+
+/*
+ * 'ippGetGroupTag()' - Get the group associated with an attribute.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_tag_t /* O - Group tag or @code IPP_TAG_ZERO@ on error */
+ippGetGroupTag(ipp_attribute_t *attr) /* I - IPP attribute */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr)
+ return (IPP_TAG_ZERO);
+
+ /*
+ * Return the group...
+ */
+
+ return (attr->group_tag);
+}
+
+
+/*
+ * 'ippGetInteger()' - Get the integer/enum value for an attribute.
+ *
+ * The @code element@ parameter specifies which value to get from 0 to
+ * @link ippGetCount(attr)@ - 1.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - Value or -1 on error */
+ippGetInteger(ipp_attribute_t *attr, /* I - IPP attribute */
+ int element) /* I - Value number (0-based) */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr || (attr->value_tag != IPP_TAG_INTEGER && attr->value_tag != IPP_TAG_ENUM) ||
+ element < 0 || element >= attr->num_values)
+ return (-1);
+
+ /*
+ * Return the value...
+ */
+
+ return (attr->values[element].integer);
+}
+
+
+/*
+ * 'ippGetName()' - Get the attribute name.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+const char * /* O - Attribute name or @code NULL@ for separators */
+ippGetName(ipp_attribute_t *attr) /* I - IPP attribute */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr)
+ return (NULL);
+
+ /*
+ * Return the name...
+ */
+
+ return (attr->name);
+}
+
+
+/*
+ * 'ippGetOperation()' - Get the operation ID in an IPP message.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_op_t /* O - Operation ID or -1 on error */
+ippGetOperation(ipp_t *ipp) /* I - IPP request message */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp)
+ return ((ipp_op_t)-1);
+
+ /*
+ * Return the value...
+ */
+
+ return (ipp->request.op.operation_id);
+}
+
+
+/*
+ * 'ippGetRange()' - Get a rangeOfInteger value from an attribute.
+ *
+ * The @code element@ parameter specifies which value to get from 0 to
+ * @link ippGetCount(attr)@ - 1.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - Lower value of range or -1 */
+ippGetRange(ipp_attribute_t *attr, /* I - IPP attribute */
+ int element, /* I - Value number (0-based) */
+ int *uppervalue)/* O - Upper value of range */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr || attr->value_tag != IPP_TAG_RANGE ||
+ element < 0 || element >= attr->num_values)
+ {
+ if (uppervalue)
+ *uppervalue = -1;
+
+ return (-1);
+ }
+
+ /*
+ * Return the values...
+ */
+
+ if (uppervalue)
+ *uppervalue = attr->values[element].range.upper;
+
+ return (attr->values[element].range.lower);
+}
+
+
+/*
+ * 'ippGetRequestId()' - Get the request ID from an IPP message.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - Request ID or -1 on error */
+ippGetRequestId(ipp_t *ipp) /* I - IPP message */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp)
+ return (-1);
+
+ /*
+ * Return the request ID...
+ */
+
+ return (ipp->request.any.request_id);
+}
+
+
+/*
+ * 'ippGetResolution()' - Get a resolution value for an attribute.
+ *
+ * The @code element@ parameter specifies which value to get from 0 to
+ * @link ippGetCount(attr)@ - 1.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - Horizontal/cross feed resolution or -1 */
+ippGetResolution(
+ ipp_attribute_t *attr, /* I - IPP attribute */
+ int element, /* I - Value number (0-based) */
+ int *yres, /* O - Vertical/feed resolution */
+ ipp_res_t *units) /* O - Units for resolution */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr || attr->value_tag != IPP_TAG_RESOLUTION ||
+ element < 0 || element >= attr->num_values)
+ return (-1);
+
+ /*
+ * Return the value...
+ */
+
+ if (yres)
+ *yres = attr->values[element].resolution.yres;
+
+ if (units)
+ *units = attr->values[element].resolution.units;
+
+ return (attr->values[element].resolution.xres);
+}
+
+
+/*
+ * 'ippGetState()' - Get the IPP message state.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_state_t /* O - IPP message state value */
+ippGetState(ipp_t *ipp) /* I - IPP message */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp)
+ return (IPP_IDLE);
+
+ /*
+ * Return the value...
+ */
+
+ return (ipp->state);
+}
+
+
+/*
+ * 'ippGetStatusCode()' - Get the status code from an IPP response or event message.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_status_t /* O - Status code in IPP message */
+ippGetStatusCode(ipp_t *ipp) /* I - IPP response or event message */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp)
+ return (IPP_INTERNAL_ERROR);
+
+ /*
+ * Return the value...
+ */
+
+ return (ipp->request.status.status_code);
+}
+
+
+/*
+ * 'ippGetString()' - Get the string and optionally the language code for an attribute.
+ *
+ * The @code element@ parameter specifies which value to get from 0 to
+ * @link ippGetCount(attr)@ - 1.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+const char *
+ippGetString(ipp_attribute_t *attr, /* I - IPP attribute */
+ int element, /* I - Value number (0-based) */
+ const char **language)/* O - Language code (@code NULL@ for don't care) */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr || element < 0 || element >= attr->num_values ||
+ (attr->value_tag != IPP_TAG_TEXTLANG && attr->value_tag != IPP_TAG_NAMELANG &&
+ (attr->value_tag < IPP_TAG_TEXT || attr->value_tag > IPP_TAG_MIMETYPE)))
+ return (NULL);
+
+ /*
+ * Return the value...
+ */
+
+ if (language)
+ *language = attr->values[element].string.language;
+
+ return (attr->values[element].string.text);
+}
+
+
+/*
+ * 'ippGetValueTag()' - Get the value tag for an attribute.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_tag_t /* O - Value tag or @code IPP_TAG_ZERO@ on error */
+ippGetValueTag(ipp_attribute_t *attr) /* I - IPP attribute */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!attr)
+ return (IPP_TAG_ZERO);
+
+ /*
+ * Return the value...
+ */
+
+ return (attr->value_tag);
+}
+
+
+/*
+ * 'ippGetVersion()' - Get the major and minor version number from an IPP message.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - Major version number or -1 on error */
+ippGetVersion(ipp_t *ipp, /* I - IPP message */
+ int *minor) /* O - Minor version number or @code NULL@ */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp)
+ {
+ if (minor)
+ *minor = -1;
+
+ return (-1);
+ }
+
+ /*
+ * Return the value...
+ */
+
+ if (minor)
+ *minor = ipp->request.any.version[1];
+
+ return (ipp->request.any.version[0]);
+}
+
+
+/*
* 'ippLength()' - Compute the length of an IPP message.
*/
@@ -960,6 +2297,30 @@ ippLength(ipp_t *ipp) /* I - IPP message */
/*
+ * 'ippNextAttribute()' - Return the next attribute in the message.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+ipp_attribute_t * /* O - Next attribute or @code NULL@ if none */
+ippNextAttribute(ipp_t *ipp) /* I - IPP message */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !ipp->current)
+ return (NULL);
+
+ /*
+ * Return the next attribute...
+ */
+
+ return (ipp->current = ipp->current->next);
+}
+
+
+/*
* 'ippNew()' - Allocate a new IPP message.
*/
@@ -974,11 +2335,11 @@ ippNew(void)
if ((temp = (ipp_t *)calloc(1, sizeof(ipp_t))) != NULL)
{
/*
- * Default to IPP 1.1...
+ * Default to IPP 2.0...
*/
- temp->request.any.version[0] = 1;
- temp->request.any.version[1] = 1;
+ temp->request.any.version[0] = 2;
+ temp->request.any.version[1] = 0;
temp->use = 1;
}
@@ -995,7 +2356,7 @@ ippNew(void)
* attributes-natural-language attributes added. The
* attributes-natural-language value is derived from the current locale.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ipp_t * /* O - IPP request message */
@@ -1003,6 +2364,9 @@ ippNewRequest(ipp_op_t op) /* I - Operation code */
{
ipp_t *request; /* IPP request message */
cups_lang_t *language; /* Current language localization */
+ static int request_id = 0; /* Current request ID */
+ static _cups_mutex_t request_mutex = _CUPS_MUTEX_INITIALIZER;
+ /* Mutex for request ID */
DEBUG_printf(("ippNewRequest(op=%02x(%s))", op, ippOpString(op)));
@@ -1018,8 +2382,12 @@ ippNewRequest(ipp_op_t op) /* I - Operation code */
* Set the operation and request ID...
*/
+ _cupsMutexLock(&request_mutex);
+
request->request.op.operation_id = op;
- request->request.op.request_id = 1;
+ request->request.op.request_id = ++request_id;
+
+ _cupsMutexUnlock(&request_mutex);
/*
* Use UTF-8 as the character set...
@@ -1070,7 +2438,7 @@ ippRead(http_t *http, /* I - HTTP connection */
/*
* 'ippReadFile()' - Read data for an IPP message from a file.
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
ipp_state_t /* O - Current state */
@@ -1086,7 +2454,7 @@ ippReadFile(int fd, /* I - HTTP data */
/*
* 'ippReadIO()' - Read data for an IPP message.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ipp_state_t /* O - Current state */
@@ -1104,7 +2472,7 @@ ippReadIO(void *src, /* I - Data source */
ipp_attribute_t *attr; /* Current attribute */
ipp_tag_t tag; /* Current tag */
ipp_tag_t value_tag; /* Current value tag */
- ipp_value_t *value; /* Current value */
+ _ipp_value_t *value; /* Current value */
DEBUG_printf(("ippReadIO(src=%p, cb=%p, blocking=%d, parent=%p, ipp=%p)",
@@ -1114,7 +2482,7 @@ ippReadIO(void *src, /* I - Data source */
if (!src || !ipp)
return (IPP_ERROR);
- if ((buffer = ipp_buffer_get()) == NULL)
+ if ((buffer = (unsigned char *)_cupsBufferGet(IPP_BUF_SIZE)) == NULL)
{
DEBUG_puts("1ippReadIO: Unable to get read buffer.");
return (IPP_ERROR);
@@ -1135,7 +2503,7 @@ ippReadIO(void *src, /* I - Data source */
if ((*cb)(src, buffer, 8) < 8)
{
DEBUG_puts("1ippReadIO: Unable to read header.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1174,7 +2542,7 @@ ippReadIO(void *src, /* I - Data source */
if ((*cb)(src, buffer, 1) < 1)
{
DEBUG_puts("1ippReadIO: Callback returned EOF/error");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1186,6 +2554,34 @@ ippReadIO(void *src, /* I - Data source */
*/
tag = (ipp_tag_t)buffer[0];
+ if (tag == IPP_TAG_EXTENSION)
+ {
+ /*
+ * Read 32-bit "extension" tag...
+ */
+
+ if ((*cb)(src, buffer, 4) < 1)
+ {
+ DEBUG_puts("1ippReadIO: Callback returned EOF/error");
+ _cupsBufferRelease((char *)buffer);
+ return (IPP_ERROR);
+ }
+
+ tag = (ipp_tag_t)((((((buffer[0] << 8) | buffer[1]) << 8) |
+ buffer[2]) << 8) | buffer[3]);
+
+ if (tag & IPP_TAG_COPY)
+ {
+ /*
+ * Fail if the high bit is set in the tag...
+ */
+
+ _cupsSetError(IPP_INTERNAL_ERROR, _("IPP extension tag larger than 0x7FFFFFFF."), 1);
+ DEBUG_printf(("1ippReadIO: bad tag 0x%x.", tag));
+ _cupsBufferRelease((char *)buffer);
+ return (IPP_ERROR);
+ }
+ }
if (tag == IPP_TAG_END)
{
@@ -1226,7 +2622,7 @@ ippReadIO(void *src, /* I - Data source */
if ((*cb)(src, buffer, 2) < 2)
{
DEBUG_puts("1ippReadIO: unable to read name length.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1234,9 +2630,9 @@ ippReadIO(void *src, /* I - Data source */
if (n >= IPP_BUF_SIZE)
{
- _cupsSetError(IPP_ERROR, _("IPP name larger than 32767 bytes."), 1);
+ _cupsSetError(IPP_INTERNAL_ERROR, _("IPP name larger than 32767 bytes."), 1);
DEBUG_printf(("1ippReadIO: bad name length %d.", n));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1251,9 +2647,9 @@ ippReadIO(void *src, /* I - Data source */
if (ipp->current == NULL)
{
- _cupsSetError(IPP_ERROR, _("IPP attribute has no name."), 1);
+ _cupsSetError(IPP_INTERNAL_ERROR, _("IPP attribute has no name."), 1);
DEBUG_puts("1ippReadIO: Attribute without name and no current.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1287,15 +2683,22 @@ ippReadIO(void *src, /* I - Data source */
(tag < IPP_TAG_TEXT || tag > IPP_TAG_MIMETYPE) &&
tag != IPP_TAG_NOVALUE)
{
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP 1setOf attribute with incompatible value "
"tags."), 1);
DEBUG_printf(("1ippReadIO: 1setOf value tag %x(%s) != %x(%s)",
value_tag, ippTagString(value_tag), tag,
ippTagString(tag)));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
+
+ if (value_tag != tag)
+ {
+ DEBUG_printf(("1ippReadIO: Converting %s attribute from %s to %s.",
+ attr->name, ippTagString(value_tag), ippTagString(tag)));
+ ippSetValueTag(ipp, &attr, tag);
+ }
}
else if (value_tag == IPP_TAG_INTEGER ||
value_tag == IPP_TAG_RANGE)
@@ -1307,13 +2710,13 @@ ippReadIO(void *src, /* I - Data source */
if (tag != IPP_TAG_INTEGER && tag != IPP_TAG_RANGE)
{
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP 1setOf attribute with incompatible value "
"tags."), 1);
DEBUG_printf(("1ippReadIO: 1setOf value tag %x(%s) != %x(%s)",
value_tag, ippTagString(value_tag), tag,
ippTagString(tag)));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1323,31 +2726,20 @@ ippReadIO(void *src, /* I - Data source */
* Convert integer values to rangeOfInteger values...
*/
- int i; /* Looping var */
-
DEBUG_printf(("1ippReadIO: Converting %s attribute to "
"rangeOfInteger.", attr->name));
-
- attr->value_tag = IPP_TAG_RANGE;
-
- for (i = attr->num_values, value = attr->values;
- i > 0;
- i --, value ++)
- {
- n = value->integer;
- value->range.lower = value->range.upper = n;
- }
+ ippSetValueTag(ipp, &attr, IPP_TAG_RANGE);
}
}
else if (value_tag != tag)
{
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP 1setOf attribute with incompatible value "
"tags."), 1);
DEBUG_printf(("1ippReadIO: value tag %x(%s) != %x(%s)",
value_tag, ippTagString(value_tag), tag,
ippTagString(tag)));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1355,42 +2747,10 @@ ippReadIO(void *src, /* I - Data source */
* Finally, reallocate the attribute array as needed...
*/
- if (attr->num_values == 1 ||
- (attr->num_values > 0 &&
- (attr->num_values & (IPP_MAX_VALUES - 1)) == 0))
+ if ((value = ipp_set_value(ipp, &attr, attr->num_values)) == NULL)
{
- ipp_attribute_t *temp; /* Pointer to new buffer */
-
- DEBUG_printf(("2ippReadIO: reallocating for up to %d values...",
- attr->num_values + IPP_MAX_VALUES));
-
- /*
- * Reallocate memory...
- */
-
- if ((temp = realloc(attr, sizeof(ipp_attribute_t) +
- (attr->num_values + IPP_MAX_VALUES - 1) *
- sizeof(ipp_value_t))) == NULL)
- {
- _cupsSetHTTPError(HTTP_ERROR);
- DEBUG_puts("1ippReadIO: Unable to resize attribute");
- ipp_buffer_release(buffer);
- return (IPP_ERROR);
- }
-
- if (temp != attr)
- {
- /*
- * Reset pointers in the list...
- */
-
- if (ipp->prev)
- ipp->prev->next = temp;
- else
- ipp->attrs = temp;
-
- attr = ipp->current = ipp->last = temp;
- }
+ _cupsBufferRelease((char *)buffer);
+ return (IPP_ERROR);
}
}
else if (tag == IPP_TAG_MEMBERNAME)
@@ -1401,23 +2761,21 @@ ippReadIO(void *src, /* I - Data source */
if (n)
{
- _cupsSetError(IPP_ERROR, _("IPP member name is not empty."), 1);
+ _cupsSetError(IPP_INTERNAL_ERROR, _("IPP member name is not empty."), 1);
DEBUG_puts("1ippReadIO: member name not empty.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
if (ipp->current)
ipp->prev = ipp->current;
- attr = ipp->current = _ippAddAttr(ipp, 1);
+ attr = ipp->current = ipp_add_attr(ipp, NULL, ipp->curtag, IPP_TAG_ZERO, 1);
- DEBUG_printf(("2ippReadIO: membername, ipp->current=%p, "
- "ipp->prev=%p", ipp->current, ipp->prev));
+ DEBUG_printf(("2ippReadIO: membername, ipp->current=%p, ipp->prev=%p",
+ ipp->current, ipp->prev));
- attr->group_tag = ipp->curtag;
- attr->value_tag = IPP_TAG_ZERO;
- attr->num_values = 0;
+ value = attr->values;
}
else if (tag != IPP_TAG_END_COLLECTION)
{
@@ -1428,7 +2786,7 @@ ippReadIO(void *src, /* I - Data source */
if ((*cb)(src, buffer, n) < n)
{
DEBUG_puts("1ippReadIO: unable to read name.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1437,34 +2795,30 @@ ippReadIO(void *src, /* I - Data source */
if (ipp->current)
ipp->prev = ipp->current;
- if ((attr = ipp->current = _ippAddAttr(ipp, 1)) == NULL)
+ if ((attr = ipp->current = ipp_add_attr(ipp, (char *)buffer, ipp->curtag, tag,
+ 1)) == NULL)
{
_cupsSetHTTPError(HTTP_ERROR);
DEBUG_puts("1ippReadIO: unable to allocate attribute.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
DEBUG_printf(("2ippReadIO: name=\"%s\", ipp->current=%p, "
"ipp->prev=%p", buffer, ipp->current, ipp->prev));
- attr->group_tag = ipp->curtag;
- attr->value_tag = tag;
- attr->name = _cupsStrAlloc((char *)buffer);
- attr->num_values = 0;
+ value = attr->values;
}
else
- attr = NULL;
-
- if (tag != IPP_TAG_END_COLLECTION)
- value = attr->values + attr->num_values;
- else
+ {
+ attr = NULL;
value = NULL;
+ }
if ((*cb)(src, buffer, 2) < 2)
{
DEBUG_puts("1ippReadIO: unable to read value length.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1473,10 +2827,10 @@ ippReadIO(void *src, /* I - Data source */
if (n >= IPP_BUF_SIZE)
{
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP value larger than 32767 bytes."), 1);
DEBUG_printf(("1ippReadIO: bad value length %d.", n));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1487,20 +2841,20 @@ ippReadIO(void *src, /* I - Data source */
if (n != 4)
{
if (tag == IPP_TAG_INTEGER)
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP integer value not 4 bytes."), 1);
else
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP enum value not 4 bytes."), 1);
- DEBUG_printf(("1ippReadIO: bad value length %d.", n));
- ipp_buffer_release(buffer);
+ DEBUG_printf(("1ippReadIO: bad integer value length %d.", n));
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
if ((*cb)(src, buffer, 4) < 4)
{
DEBUG_puts("1ippReadIO: Unable to read integer value.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1516,17 +2870,17 @@ ippReadIO(void *src, /* I - Data source */
case IPP_TAG_BOOLEAN :
if (n != 1)
{
- _cupsSetError(IPP_ERROR, _("IPP boolean value not 1 byte."),
+ _cupsSetError(IPP_INTERNAL_ERROR, _("IPP boolean value not 1 byte."),
1);
- DEBUG_printf(("1ippReadIO: bad value length %d.", n));
- ipp_buffer_release(buffer);
+ DEBUG_printf(("1ippReadIO: bad boolean value length %d.", n));
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
if ((*cb)(src, buffer, 1) < 1)
{
DEBUG_puts("1ippReadIO: Unable to read boolean value.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1559,11 +2913,14 @@ ippReadIO(void *src, /* I - Data source */
case IPP_TAG_CHARSET :
case IPP_TAG_LANGUAGE :
case IPP_TAG_MIMETYPE :
- if ((*cb)(src, buffer, n) < n)
- {
- DEBUG_puts("1ippReadIO: unable to read string value.");
- ipp_buffer_release(buffer);
- return (IPP_ERROR);
+ if (n > 0)
+ {
+ if ((*cb)(src, buffer, n) < n)
+ {
+ DEBUG_puts("1ippReadIO: unable to read string value.");
+ _cupsBufferRelease((char *)buffer);
+ return (IPP_ERROR);
+ }
}
buffer[n] = '\0';
@@ -1574,17 +2931,16 @@ ippReadIO(void *src, /* I - Data source */
case IPP_TAG_DATE :
if (n != 11)
{
- _cupsSetError(IPP_ERROR, _("IPP date value not 11 bytes."),
- 1);
- DEBUG_printf(("1ippReadIO: bad value length %d.", n));
- ipp_buffer_release(buffer);
+ _cupsSetError(IPP_INTERNAL_ERROR, _("IPP date value not 11 bytes."), 1);
+ DEBUG_printf(("1ippReadIO: bad date value length %d.", n));
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
if ((*cb)(src, value->date, 11) < 11)
{
DEBUG_puts("1ippReadIO: Unable to read date value.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
break;
@@ -1592,17 +2948,17 @@ ippReadIO(void *src, /* I - Data source */
case IPP_TAG_RESOLUTION :
if (n != 9)
{
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP resolution value not 9 bytes."), 1);
- DEBUG_printf(("1ippReadIO: bad value length %d.", n));
- ipp_buffer_release(buffer);
+ DEBUG_printf(("1ippReadIO: bad resolution value length %d.", n));
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
if ((*cb)(src, buffer, 9) < 9)
{
DEBUG_puts("1ippReadIO: Unable to read resolution value.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1619,17 +2975,18 @@ ippReadIO(void *src, /* I - Data source */
case IPP_TAG_RANGE :
if (n != 8)
{
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP rangeOfInteger value not 8 bytes."), 1);
- DEBUG_printf(("1ippReadIO: bad value length %d.", n));
- ipp_buffer_release(buffer);
+ DEBUG_printf(("1ippReadIO: bad rangeOfInteger value length "
+ "%d.", n));
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
if ((*cb)(src, buffer, 8) < 8)
{
DEBUG_puts("1ippReadIO: Unable to read range value.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1646,15 +3003,16 @@ ippReadIO(void *src, /* I - Data source */
if (n < 4)
{
if (tag == IPP_TAG_TEXTLANG)
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP textWithLanguage value less than "
"minimum 4 bytes."), 1);
else
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP nameWithLanguage value less than "
"minimum 4 bytes."), 1);
- DEBUG_printf(("1ippReadIO: bad value length %d.", n));
- ipp_buffer_release(buffer);
+ DEBUG_printf(("1ippReadIO: bad stringWithLanguage value "
+ "length %d.", n));
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1662,7 +3020,7 @@ ippReadIO(void *src, /* I - Data source */
{
DEBUG_puts("1ippReadIO: Unable to read string w/language "
"value.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1676,9 +3034,6 @@ ippReadIO(void *src, /* I - Data source */
* language
* text-length
* text
- *
- * The "charset" field name is an unfortunate typo from
- * CUPS 1.0...
*/
n = (bufptr[0] << 8) | bufptr[1];
@@ -1686,27 +3041,28 @@ ippReadIO(void *src, /* I - Data source */
if ((bufptr + 2 + n) >= (buffer + IPP_BUF_SIZE) ||
n >= sizeof(string))
{
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP language length overflows value."), 1);
- DEBUG_printf(("1ippReadIO: bad value length %d.", n));
- ipp_buffer_release(buffer);
+ DEBUG_printf(("1ippReadIO: bad language value length %d.",
+ n));
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
memcpy(string, bufptr + 2, n);
string[n] = '\0';
- value->string.charset = _cupsStrAlloc((char *)string);
+ value->string.language = _cupsStrAlloc((char *)string);
bufptr += 2 + n;
n = (bufptr[0] << 8) | bufptr[1];
if ((bufptr + 2 + n) >= (buffer + IPP_BUF_SIZE))
{
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP string length overflows value."), 1);
- DEBUG_printf(("1ippReadIO: bad value length %d.", n));
- ipp_buffer_release(buffer);
+ DEBUG_printf(("1ippReadIO: bad string value length %d.", n));
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1723,28 +3079,28 @@ ippReadIO(void *src, /* I - Data source */
if (n > 0)
{
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP begCollection value not 0 bytes."), 1);
DEBUG_puts("1ippReadIO: begCollection tag with value length "
"> 0.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
if (ippReadIO(src, cb, 1, ipp, value->collection) == IPP_ERROR)
{
DEBUG_puts("1ippReadIO: Unable to read collection value.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
break;
case IPP_TAG_END_COLLECTION :
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
if (n > 0)
{
- _cupsSetError(IPP_ERROR,
+ _cupsSetError(IPP_INTERNAL_ERROR,
_("IPP endCollection value not 0 bytes."), 1);
DEBUG_puts("1ippReadIO: endCollection tag with value length "
"> 0.");
@@ -1760,10 +3116,18 @@ ippReadIO(void *src, /* I - Data source */
* we need to carry over...
*/
- if ((*cb)(src, buffer, n) < n)
+ if (n == 0)
+ {
+ _cupsSetError(IPP_INTERNAL_ERROR,
+ _("IPP memberName value is empty."), 1);
+ DEBUG_puts("1ippReadIO: Empty member name value.");
+ _cupsBufferRelease((char *)buffer);
+ return (IPP_ERROR);
+ }
+ else if ((*cb)(src, buffer, n) < n)
{
DEBUG_puts("1ippReadIO: Unable to read member name value.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -1789,14 +3153,14 @@ ippReadIO(void *src, /* I - Data source */
{
_cupsSetHTTPError(HTTP_ERROR);
DEBUG_puts("1ippReadIO: Unable to allocate value");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
if ((*cb)(src, value->unknown.data, n) < n)
{
DEBUG_puts("1ippReadIO: Unable to read unsupported value.");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
}
@@ -1805,8 +3169,6 @@ ippReadIO(void *src, /* I - Data source */
break;
}
- attr->num_values ++;
-
/*
* If blocking is disabled, stop here...
*/
@@ -1824,13 +3186,755 @@ ippReadIO(void *src, /* I - Data source */
}
DEBUG_printf(("1ippReadIO: returning ipp->state=%d.", ipp->state));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (ipp->state);
}
/*
+ * 'ippSetBoolean()' - Set a boolean value in an attribute.
+ *
+ * The @code ipp@ parameter refers to the IPP message containing the attribute that was
+ * previously created using the @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * The @code element@ parameter specifies which value to set from 0 to
+ * @link ippGetCount(attr)@.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetBoolean(ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - IPP attribute */
+ int element, /* I - Value number (0-based) */
+ int boolvalue)/* I - Boolean value */
+{
+ _ipp_value_t *value; /* Current value */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !attr || !*attr || (*attr)->value_tag != IPP_TAG_BOOLEAN ||
+ element < 0 || element > (*attr)->num_values)
+ return (0);
+
+ /*
+ * Set the value and return...
+ */
+
+ if ((value = ipp_set_value(ipp, attr, element)) != NULL)
+ value->boolean = boolvalue;
+
+ return (value != NULL);
+}
+
+
+/*
+ * 'ippSetCollection()' - Set a collection value in an attribute.
+ *
+ * The @code ipp@ parameter refers to the IPP message containing the attribute that was
+ * previously created using the @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * The @code element@ parameter specifies which value to set from 0 to
+ * @link ippGetCount(attr)@.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetCollection(
+ ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - IPP attribute */
+ int element, /* I - Value number (0-based) */
+ ipp_t *colvalue) /* I - Collection value */
+{
+ _ipp_value_t *value; /* Current value */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !attr || !*attr || (*attr)->value_tag != IPP_TAG_BEGIN_COLLECTION ||
+ element < 0 || element > (*attr)->num_values || !colvalue)
+ return (0);
+
+ /*
+ * Set the value and return...
+ */
+
+ if ((value = ipp_set_value(ipp, attr, element)) != NULL)
+ {
+ if (value->collection)
+ ippDelete(value->collection);
+
+ value->collection = colvalue;
+ colvalue->use ++;
+ }
+
+ return (value != NULL);
+}
+
+
+/*
+ * 'ippSetDate()' - Set a date value in an attribute.
+ *
+ * The @code ipp@ parameter refers to the IPP message containing the attribute that was
+ * previously created using the @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * The @code element@ parameter specifies which value to set from 0 to
+ * @link ippGetCount(attr)@.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetDate(ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - IPP attribute */
+ int element, /* I - Value number (0-based) */
+ const ipp_uchar_t *datevalue)/* I - Date value */
+{
+ _ipp_value_t *value; /* Current value */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !attr || !*attr || (*attr)->value_tag != IPP_TAG_DATE ||
+ element < 0 || element > (*attr)->num_values || !datevalue)
+ return (0);
+
+ /*
+ * Set the value and return...
+ */
+
+ if ((value = ipp_set_value(ipp, attr, element)) != NULL)
+ memcpy(value->date, datevalue, sizeof(value->date));
+
+ return (value != NULL);
+}
+
+
+/*
+ * 'ippSetGroupTag()' - Set the group tag of an attribute.
+ *
+ * The @code ipp@ parameter refers to the IPP message containing the attribute that was
+ * previously created using the @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * The @code group@ parameter specifies the IPP attribute group tag: none
+ * (@code IPP_TAG_ZERO@, for member attributes), document (@code IPP_TAG_DOCUMENT@),
+ * event notification (@code IPP_TAG_EVENT_NOTIFICATION@), operation
+ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription
+ * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@).
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetGroupTag(
+ ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - Attribute */
+ ipp_tag_t group_tag) /* I - Group tag */
+{
+ /*
+ * Range check input - group tag must be 0x01 to 0x0F, per RFC 2911...
+ */
+
+ if (!ipp || !attr || group_tag < IPP_TAG_ZERO || group_tag == IPP_TAG_END ||
+ group_tag >= IPP_TAG_UNSUPPORTED_VALUE)
+ return (0);
+
+ /*
+ * Set the group tag and return...
+ */
+
+ (*attr)->group_tag = group_tag;
+
+ return (1);
+}
+
+
+/*
+ * 'ippSetInteger()' - Set an integer or enum value in an attribute.
+ *
+ * The @code ipp@ parameter refers to the IPP message containing the attribute that was
+ * previously created using the @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * The @code element@ parameter specifies which value to set from 0 to
+ * @link ippGetCount(attr)@.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetInteger(ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - IPP attribute */
+ int element, /* I - Value number (0-based) */
+ int intvalue) /* I - Integer/enum value */
+{
+ _ipp_value_t *value; /* Current value */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !attr || !*attr ||
+ ((*attr)->value_tag != IPP_TAG_INTEGER && (*attr)->value_tag != IPP_TAG_ENUM) ||
+ element < 0 || element > (*attr)->num_values)
+ return (0);
+
+ /*
+ * Set the value and return...
+ */
+
+ if ((value = ipp_set_value(ipp, attr, element)) != NULL)
+ value->integer = intvalue;
+
+ return (value != NULL);
+}
+
+
+/*
+ * 'ippSetName()' - Set the name of an attribute.
+ *
+ * The @code ipp@ parameter refers to the IPP message containing the attribute that was
+ * previously created using the @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetName(ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - IPP attribute */
+ const char *name) /* I - Attribute name */
+{
+ char *temp; /* Temporary name value */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !attr || !*attr)
+ return (0);
+
+ /*
+ * Set the value and return...
+ */
+
+ if ((temp = _cupsStrAlloc(name)) != NULL)
+ {
+ if ((*attr)->name)
+ _cupsStrFree((*attr)->name);
+
+ (*attr)->name = temp;
+ }
+
+ return (temp != NULL);
+}
+
+
+/*
+ * 'ippSetOperation()' - Set the operation ID in an IPP request message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetOperation(ipp_t *ipp, /* I - IPP request message */
+ ipp_op_t op) /* I - Operation ID */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp)
+ return (0);
+
+ /*
+ * Set the operation and return...
+ */
+
+ ipp->request.op.operation_id = op;
+
+ return (1);
+}
+
+
+/*
+ * 'ippSetRange()' - Set a rangeOfInteger value in an attribute.
+ *
+ * The @code ipp@ parameter refers to the IPP message containing the attribute that was
+ * previously created using the @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * The @code element@ parameter specifies which value to set from 0 to
+ * @link ippGetCount(attr)@.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetRange(ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - IPP attribute */
+ int element, /* I - Value number (0-based) */
+ int lowervalue, /* I - Lower bound for range */
+ int uppervalue) /* I - Upper bound for range */
+{
+ _ipp_value_t *value; /* Current value */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !attr || !*attr || (*attr)->value_tag != IPP_TAG_RANGE ||
+ element < 0 || element > (*attr)->num_values || lowervalue > uppervalue)
+ return (0);
+
+ /*
+ * Set the value and return...
+ */
+
+ if ((value = ipp_set_value(ipp, attr, element)) != NULL)
+ {
+ value->range.lower = lowervalue;
+ value->range.upper = uppervalue;
+ }
+
+ return (value != NULL);
+}
+
+
+/*
+ * 'ippSetRequestId()' - Set the request ID in an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code request_id@ parameter must be greater than 0.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetRequestId(ipp_t *ipp, /* I - IPP message */
+ int request_id) /* I - Request ID */
+{
+ /*
+ * Range check input; not checking request_id values since ipptool wants to send
+ * invalid values for conformance testing and a bad request_id does not affect the
+ * encoding of a message...
+ */
+
+ if (!ipp)
+ return (0);
+
+ /*
+ * Set the request ID and return...
+ */
+
+ ipp->request.any.request_id = request_id;
+
+ return (1);
+}
+
+
+/*
+ * 'ippSetResolution()' - Set a resolution value in an attribute.
+ *
+ * The @code ipp@ parameter refers to the IPP message containing the attribute that was
+ * previously created using the @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * The @code element@ parameter specifies which value to set from 0 to
+ * @link ippGetCount(attr)@.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetResolution(
+ ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - IPP attribute */
+ int element, /* I - Value number (0-based) */
+ ipp_res_t unitsvalue, /* I - Resolution units */
+ int xresvalue, /* I - Horizontal/cross feed resolution */
+ int yresvalue) /* I - Vertical/feed resolution */
+{
+ _ipp_value_t *value; /* Current value */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !attr || !*attr || (*attr)->value_tag != IPP_TAG_RESOLUTION ||
+ element < 0 || element > (*attr)->num_values || xresvalue <= 0 || yresvalue <= 0 ||
+ unitsvalue < IPP_RES_PER_INCH || unitsvalue > IPP_RES_PER_CM)
+ return (0);
+
+ /*
+ * Set the value and return...
+ */
+
+ if ((value = ipp_set_value(ipp, attr, element)) != NULL)
+ {
+ value->resolution.units = unitsvalue;
+ value->resolution.xres = xresvalue;
+ value->resolution.yres = yresvalue;
+ }
+
+ return (value != NULL);
+}
+
+
+/*
+ * 'ippSetState()' - Set the current state of the IPP message.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetState(ipp_t *ipp, /* I - IPP message */
+ ipp_state_t state) /* I - IPP state value */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp)
+ return (0);
+
+ /*
+ * Set the state and return...
+ */
+
+ ipp->state = state;
+ ipp->current = NULL;
+
+ return (1);
+}
+
+
+/*
+ * 'ippSetStatusCode()' - Set the status code in an IPP response or event message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetStatusCode(ipp_t *ipp, /* I - IPP response or event message */
+ ipp_status_t status) /* I - Status code */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp)
+ return (0);
+
+ /*
+ * Set the status code and return...
+ */
+
+ ipp->request.status.status_code = status;
+
+ return (1);
+}
+
+
+/*
+ * 'ippSetString()' - Set a string value in an attribute.
+ *
+ * The @code ipp@ parameter refers to the IPP message containing the attribute that was
+ * previously created using the @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * The @code element@ parameter specifies which value to set from 0 to
+ * @link ippGetCount(attr)@.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetString(ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - IPP attribute */
+ int element, /* I - Value number (0-based) */
+ const char *strvalue) /* I - String value */
+{
+ char *temp; /* Temporary string */
+ _ipp_value_t *value; /* Current value */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !attr || !*attr ||
+ ((*attr)->value_tag != IPP_TAG_TEXTLANG &&
+ (*attr)->value_tag != IPP_TAG_NAMELANG &&
+ ((*attr)->value_tag < IPP_TAG_TEXT ||
+ (*attr)->value_tag > IPP_TAG_MIMETYPE)) ||
+ element < 0 || element > (*attr)->num_values || !strvalue)
+ return (0);
+
+ /*
+ * Set the value and return...
+ */
+
+ if ((value = ipp_set_value(ipp, attr, element)) != NULL)
+ {
+ if (element > 0)
+ value->string.language = (*attr)->values[0].string.language;
+
+ if ((int)((*attr)->value_tag) & IPP_TAG_COPY)
+ value->string.text = (char *)strvalue;
+ else if ((temp = _cupsStrAlloc(strvalue)) != NULL)
+ {
+ if (value->string.text)
+ _cupsStrFree(value->string.text);
+
+ value->string.text = temp;
+ }
+ else
+ return (0);
+ }
+
+ return (value != NULL);
+}
+
+
+/*
+ * 'ippSetValueTag()' - Set the value tag of an attribute.
+ *
+ * The @code ipp@ parameter refers to the IPP message containing the attribute that was
+ * previously created using the @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The @code attr@ parameter may be modified as a result of setting the value.
+ *
+ * Integer (@code IPP_TAG_INTEGER@) values can be promoted to rangeOfInteger
+ * (@code IPP_TAG_RANGE@) values, the various string tags can be promoted to name
+ * (@code IPP_TAG_NAME@) or nameWithLanguage (@code IPP_TAG_NAMELANG@) values, text
+ * (@code IPP_TAG_TEXT@) values can be promoted to textWithLanguage
+ * (@code IPP_TAG_TEXTLANG@) values, and all values can be demoted to the various
+ * out-of-band value tags such as no-value (@code IPP_TAG_NOVALUE@). All other changes
+ * will be rejected.
+ *
+ * Promoting a string attribute to nameWithLanguage or textWithLanguage adds the language
+ * code in the "attributes-natural-language" attribute or, if not present, the language
+ * code for the current locale.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetValueTag(
+ ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - IPP attribute */
+ ipp_tag_t value_tag) /* I - Value tag */
+{
+ int i; /* Looping var */
+ _ipp_value_t *value; /* Current value */
+ int integer; /* Current integer value */
+ cups_lang_t *language; /* Current language */
+ char code[32]; /* Language code */
+ ipp_tag_t temp_tag; /* Temporary value tag */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || !attr)
+ return (0);
+
+ /*
+ * If there is no change, return immediately...
+ */
+
+ if (value_tag == (*attr)->value_tag)
+ return (1);
+
+ /*
+ * Otherwise implement changes as needed...
+ */
+
+ temp_tag = (ipp_tag_t)((int)((*attr)->value_tag) & IPP_TAG_MASK);
+
+ switch (value_tag)
+ {
+ case IPP_TAG_UNSUPPORTED_VALUE :
+ case IPP_TAG_DEFAULT :
+ case IPP_TAG_UNKNOWN :
+ case IPP_TAG_NOVALUE :
+ case IPP_TAG_NOTSETTABLE :
+ case IPP_TAG_DELETEATTR :
+ case IPP_TAG_ADMINDEFINE :
+ /*
+ * Free any existing values...
+ */
+
+ if ((*attr)->num_values > 0)
+ ipp_free_values(*attr, 0, (*attr)->num_values);
+
+ /*
+ * Set out-of-band value...
+ */
+
+ (*attr)->value_tag = value_tag;
+ break;
+
+ case IPP_TAG_RANGE :
+ if (temp_tag != IPP_TAG_INTEGER)
+ return (0);
+
+ for (i = (*attr)->num_values, value = (*attr)->values;
+ i > 0;
+ i --, value ++)
+ {
+ integer = value->integer;
+ value->range.lower = value->range.upper = integer;
+ }
+
+ (*attr)->value_tag = IPP_TAG_RANGE;
+ break;
+
+ case IPP_TAG_NAME :
+ if (temp_tag != IPP_TAG_KEYWORD && temp_tag != IPP_TAG_URI &&
+ temp_tag != IPP_TAG_URISCHEME && temp_tag != IPP_TAG_LANGUAGE &&
+ temp_tag != IPP_TAG_MIMETYPE)
+ return (0);
+
+ (*attr)->value_tag = (ipp_tag_t)(IPP_TAG_NAME | ((*attr)->value_tag & IPP_TAG_COPY));
+ break;
+
+ case IPP_TAG_NAMELANG :
+ case IPP_TAG_TEXTLANG :
+ if (value_tag == IPP_TAG_NAMELANG &&
+ (temp_tag != IPP_TAG_NAME && temp_tag != IPP_TAG_KEYWORD &&
+ temp_tag != IPP_TAG_URI && temp_tag != IPP_TAG_URISCHEME &&
+ temp_tag != IPP_TAG_LANGUAGE && temp_tag != IPP_TAG_MIMETYPE))
+ return (0);
+
+ if (value_tag == IPP_TAG_TEXTLANG && temp_tag != IPP_TAG_TEXT)
+ return (0);
+
+ if (ipp->attrs && ipp->attrs->next && ipp->attrs->next->name &&
+ !strcmp(ipp->attrs->next->name, "attributes-natural-language"))
+ {
+ /*
+ * Use the language code from the IPP message...
+ */
+
+ (*attr)->values[0].string.language =
+ _cupsStrAlloc(ipp->attrs->next->values[0].string.text);
+ }
+ else
+ {
+ /*
+ * Otherwise, use the language code corresponding to the locale...
+ */
+
+ language = cupsLangDefault();
+ (*attr)->values[0].string.language = _cupsStrAlloc(ipp_lang_code(language->language,
+ code,
+ sizeof(code)));
+ }
+
+ for (i = (*attr)->num_values - 1, value = (*attr)->values + 1;
+ i > 0;
+ i --, value ++)
+ value->string.language = (*attr)->values[0].string.language;
+
+ if ((int)(*attr)->value_tag & IPP_TAG_COPY)
+ {
+ /*
+ * Make copies of all values...
+ */
+
+ for (i = (*attr)->num_values, value = (*attr)->values;
+ i > 0;
+ i --, value ++)
+ value->string.text = _cupsStrAlloc(value->string.text);
+ }
+
+ (*attr)->value_tag = IPP_TAG_NAMELANG;
+ break;
+
+ case IPP_TAG_KEYWORD :
+ if (temp_tag == IPP_TAG_NAME || temp_tag == IPP_TAG_NAMELANG)
+ break; /* Silently "allow" name -> keyword */
+
+ default :
+ return (0);
+ }
+
+ return (1);
+}
+
+
+/*
+ * 'ippSetVersion()' - Set the version number in an IPP message.
+ *
+ * The @code ipp@ parameter refers to an IPP message previously created using the
+ * @link ippNew@ or @link ippNewRequest@ functions.
+ *
+ * The valid version numbers are currently 1.0, 1.1, 2.0, 2.1, and 2.2.
+ *
+ * @since CUPS 1.6/OS X 10.8@
+ */
+
+int /* O - 1 on success, 0 on failure */
+ippSetVersion(ipp_t *ipp, /* I - IPP message */
+ int major, /* I - Major version number (major.minor) */
+ int minor) /* I - Minor version number (major.minor) */
+{
+ /*
+ * Range check input...
+ */
+
+ if (!ipp || major < 0 || minor < 0)
+ return (0);
+
+ /*
+ * Set the version number...
+ */
+
+ ipp->request.any.version[0] = major;
+ ipp->request.any.version[1] = minor;
+
+ return (1);
+}
+
+
+/*
* 'ippTimeToDate()' - Convert from UNIX time to RFC 1903 format.
*/
@@ -1898,7 +4002,7 @@ ippWrite(http_t *http, /* I - HTTP connection */
/*
* 'ippWriteFile()' - Write data for an IPP message to a file.
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
ipp_state_t /* O - Current state */
@@ -1916,7 +4020,7 @@ ippWriteFile(int fd, /* I - HTTP data */
/*
* 'ippWriteIO()' - Write data for an IPP message.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ipp_state_t /* O - Current state */
@@ -1931,7 +4035,7 @@ ippWriteIO(void *dst, /* I - Destination */
unsigned char *buffer, /* Data buffer */
*bufptr; /* Pointer into buffer */
ipp_attribute_t *attr; /* Current attribute */
- ipp_value_t *value; /* Current value */
+ _ipp_value_t *value; /* Current value */
DEBUG_printf(("ippWriteIO(dst=%p, cb=%p, blocking=%d, parent=%p, ipp=%p)",
@@ -1940,7 +4044,7 @@ ippWriteIO(void *dst, /* I - Destination */
if (!dst || !ipp)
return (IPP_ERROR);
- if ((buffer = ipp_buffer_get()) == NULL)
+ if ((buffer = (unsigned char *)_cupsBufferGet(IPP_BUF_SIZE)) == NULL)
{
DEBUG_puts("1ippWriteIO: Unable to get write buffer");
return (IPP_ERROR);
@@ -1983,7 +4087,7 @@ ippWriteIO(void *dst, /* I - Destination */
if ((*cb)(dst, buffer, (int)(bufptr - buffer)) < 0)
{
DEBUG_puts("1ippWriteIO: Could not write IPP header...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
}
@@ -2044,9 +4148,7 @@ ippWriteIO(void *dst, /* I - Destination */
ippTagString(attr->value_tag)));
/*
- * Write the attribute tag and name. The current implementation
- * does not support the extension value tags above 0x7f, so all
- * value tags are 1 byte.
+ * Write the attribute tag and name.
*
* The attribute name length does not include the trailing nul
* character in the source string.
@@ -2061,10 +4163,10 @@ ippWriteIO(void *dst, /* I - Destination */
* overflow the buffer...
*/
- if ((n = (int)strlen(attr->name)) > (IPP_BUF_SIZE - 4))
+ if ((n = (int)strlen(attr->name)) > (IPP_BUF_SIZE - 8))
{
DEBUG_printf(("1ippWriteIO: Attribute name too long (%d)", n));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2077,7 +4179,17 @@ ippWriteIO(void *dst, /* I - Destination */
DEBUG_printf(("2ippWriteIO: writing name=%d,\"%s\"", n,
attr->name));
- *bufptr++ = attr->value_tag;
+ if (attr->value_tag > 0xff)
+ {
+ *bufptr++ = IPP_TAG_EXTENSION;
+ *bufptr++ = attr->value_tag >> 24;
+ *bufptr++ = attr->value_tag >> 16;
+ *bufptr++ = attr->value_tag >> 8;
+ *bufptr++ = attr->value_tag;
+ }
+ else
+ *bufptr++ = attr->value_tag;
+
*bufptr++ = n >> 8;
*bufptr++ = n;
memcpy(bufptr, attr->name, n);
@@ -2090,10 +4202,10 @@ ippWriteIO(void *dst, /* I - Destination */
* overflow the buffer...
*/
- if ((n = (int)strlen(attr->name)) > (IPP_BUF_SIZE - 7))
+ if ((n = (int)strlen(attr->name)) > (IPP_BUF_SIZE - 12))
{
DEBUG_printf(("1ippWriteIO: Attribute name too long (%d)", n));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2118,7 +4230,17 @@ ippWriteIO(void *dst, /* I - Destination */
memcpy(bufptr, attr->name, n);
bufptr += n;
- *bufptr++ = attr->value_tag;
+ if (attr->value_tag > 0xff)
+ {
+ *bufptr++ = IPP_TAG_EXTENSION;
+ *bufptr++ = attr->value_tag >> 24;
+ *bufptr++ = attr->value_tag >> 16;
+ *bufptr++ = attr->value_tag >> 8;
+ *bufptr++ = attr->value_tag;
+ }
+ else
+ *bufptr++ = attr->value_tag;
+
*bufptr++ = 0;
*bufptr++ = 0;
}
@@ -2129,6 +4251,17 @@ ippWriteIO(void *dst, /* I - Destination */
switch (attr->value_tag & ~IPP_TAG_COPY)
{
+ case IPP_TAG_UNSUPPORTED_VALUE :
+ case IPP_TAG_DEFAULT :
+ case IPP_TAG_UNKNOWN :
+ case IPP_TAG_NOVALUE :
+ case IPP_TAG_NOTSETTABLE :
+ case IPP_TAG_DELETEATTR :
+ case IPP_TAG_ADMINDEFINE :
+ *bufptr++ = 0;
+ *bufptr++ = 0;
+ break;
+
case IPP_TAG_INTEGER :
case IPP_TAG_ENUM :
for (i = 0, value = attr->values;
@@ -2141,7 +4274,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2187,7 +4320,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2248,7 +4381,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2268,7 +4401,7 @@ ippWriteIO(void *dst, /* I - Destination */
if (n > (IPP_BUF_SIZE - 2))
{
DEBUG_printf(("1ippWriteIO: String too long (%d)", n));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2281,7 +4414,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2320,7 +4453,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2365,7 +4498,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2418,7 +4551,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2477,7 +4610,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2501,8 +4634,8 @@ ippWriteIO(void *dst, /* I - Destination */
n = 4;
- if (value->string.charset != NULL)
- n += (int)strlen(value->string.charset);
+ if (value->string.language != NULL)
+ n += (int)strlen(value->string.language);
if (value->string.text != NULL)
n += (int)strlen(value->string.text);
@@ -2511,7 +4644,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_printf(("1ippWriteIO: text/nameWithLanguage value "
"too long (%d)", n));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2521,7 +4654,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2532,19 +4665,19 @@ ippWriteIO(void *dst, /* I - Destination */
*bufptr++ = n >> 8;
*bufptr++ = n;
- /* Length of charset */
- if (value->string.charset != NULL)
- n = (int)strlen(value->string.charset);
+ /* Length of language */
+ if (value->string.language != NULL)
+ n = (int)strlen(value->string.language);
else
n = 0;
*bufptr++ = n >> 8;
*bufptr++ = n;
- /* Charset */
+ /* Language */
if (n > 0)
{
- memcpy(bufptr, value->string.charset, n);
+ memcpy(bufptr, value->string.language, n);
bufptr += n;
}
@@ -2584,7 +4717,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2614,7 +4747,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2630,7 +4763,7 @@ ippWriteIO(void *dst, /* I - Destination */
value->collection) == IPP_ERROR)
{
DEBUG_puts("1ippWriteIO: Unable to write collection value");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
}
@@ -2654,7 +4787,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2679,7 +4812,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_printf(("1ippWriteIO: Data length too long (%d)",
n));
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2689,7 +4822,7 @@ ippWriteIO(void *dst, /* I - Destination */
{
DEBUG_puts("1ippWriteIO: Could not write IPP "
"attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2719,7 +4852,7 @@ ippWriteIO(void *dst, /* I - Destination */
if ((*cb)(dst, buffer, (int)(bufptr - buffer)) < 0)
{
DEBUG_puts("1ippWriteIO: Could not write IPP attribute...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2760,7 +4893,7 @@ ippWriteIO(void *dst, /* I - Destination */
if ((*cb)(dst, buffer, n) < 0)
{
DEBUG_puts("1ippWriteIO: Could not write IPP end-tag...");
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (IPP_ERROR);
}
@@ -2775,170 +4908,229 @@ ippWriteIO(void *dst, /* I - Destination */
break; /* anti-compiler-warning-code */
}
- ipp_buffer_release(buffer);
+ _cupsBufferRelease((char *)buffer);
return (ipp->state);
}
/*
- * '_ippAddAttr()' - Add a new attribute to the request.
+ * 'ipp_add_attr()' - Add a new attribute to the message.
*/
-ipp_attribute_t * /* O - New attribute */
-_ippAddAttr(ipp_t *ipp, /* I - IPP message */
- int num_values) /* I - Number of values */
+static ipp_attribute_t * /* O - New attribute */
+ipp_add_attr(ipp_t *ipp, /* I - IPP message */
+ const char *name, /* I - Attribute name or NULL */
+ ipp_tag_t group_tag, /* I - Group tag or IPP_TAG_ZERO */
+ ipp_tag_t value_tag, /* I - Value tag or IPP_TAG_ZERO */
+ int num_values) /* I - Number of values */
{
+ int alloc_values; /* Number of values to allocate */
ipp_attribute_t *attr; /* New attribute */
- DEBUG_printf(("4_ippAddAttr(ipp=%p, num_values=%d)", ipp, num_values));
+ DEBUG_printf(("4ipp_add_attr(ipp=%p, name=\"%s\", group_tag=0x%x, value_tag=0x%x, "
+ "num_values=%d)", ipp, name, group_tag, value_tag, num_values));
+
+ /*
+ * Range check input...
+ */
if (!ipp || num_values < 0)
return (NULL);
+ /*
+ * Allocate memory, rounding the allocation up as needed...
+ */
+
+ if (num_values <= 1)
+ alloc_values = 1;
+ else
+ alloc_values = (num_values + IPP_MAX_VALUES - 1) & ~(IPP_MAX_VALUES - 1);
+
attr = calloc(sizeof(ipp_attribute_t) +
- (num_values - 1) * sizeof(ipp_value_t), 1);
+ (alloc_values - 1) * sizeof(_ipp_value_t), 1);
- if (attr != NULL)
+ if (attr)
{
+ /*
+ * Initialize attribute...
+ */
+
+ if (name)
+ attr->name = _cupsStrAlloc(name);
+
+ attr->group_tag = group_tag;
+ attr->value_tag = value_tag;
attr->num_values = num_values;
- if (ipp->last == NULL)
- ipp->attrs = attr;
- else
+ /*
+ * Add it to the end of the linked list...
+ */
+
+ if (ipp->last)
ipp->last->next = attr;
+ else
+ ipp->attrs = attr;
- ipp->last = attr;
+ ipp->prev = ipp->last;
+ ipp->last = ipp->current = attr;
}
- DEBUG_printf(("5_ippAddAttr: Returning %p", attr));
+ DEBUG_printf(("5ipp_add_attr: Returning %p", attr));
return (attr);
}
/*
- * '_ippFreeAttr()' - Free an attribute.
+ * 'ipp_free_values()' - Free attribute values.
*/
-void
-_ippFreeAttr(ipp_attribute_t *attr) /* I - Attribute to free */
+static void
+ipp_free_values(ipp_attribute_t *attr, /* I - Attribute to free values from */
+ int element,/* I - First value to free */
+ int count) /* I - Number of values to free */
{
int i; /* Looping var */
- ipp_value_t *value; /* Current value */
+ _ipp_value_t *value; /* Current value */
- DEBUG_printf(("4_ippFreeAttr(attr=%p)", attr));
+ DEBUG_printf(("4ipp_free_values(attr=%p, element=%d, count=%d)", attr, element, count));
- switch (attr->value_tag)
+ if (!(attr->value_tag & IPP_TAG_COPY))
{
- case IPP_TAG_TEXT :
- case IPP_TAG_NAME :
- case IPP_TAG_RESERVED_STRING :
- case IPP_TAG_KEYWORD :
- case IPP_TAG_URI :
- case IPP_TAG_URISCHEME :
- case IPP_TAG_CHARSET :
- case IPP_TAG_LANGUAGE :
- case IPP_TAG_MIMETYPE :
- for (i = 0, value = attr->values;
- i < attr->num_values;
- i ++, value ++)
- _cupsStrFree(value->string.text);
- break;
+ /*
+ * Free values as needed...
+ */
- case IPP_TAG_TEXTLANG :
- case IPP_TAG_NAMELANG :
- for (i = 0, value = attr->values;
- i < attr->num_values;
- i ++, value ++)
- {
- if (value->string.charset && i == 0)
- _cupsStrFree(value->string.charset);
- _cupsStrFree(value->string.text);
- }
- break;
+ switch (attr->value_tag)
+ {
+ case IPP_TAG_TEXTLANG :
+ case IPP_TAG_NAMELANG :
+ if (element == 0 && count == attr->num_values && attr->values[0].string.language)
+ _cupsStrFree(attr->values[0].string.language);
- case IPP_TAG_INTEGER :
- case IPP_TAG_ENUM :
- case IPP_TAG_BOOLEAN :
- case IPP_TAG_DATE :
- case IPP_TAG_RESOLUTION :
- case IPP_TAG_RANGE :
- break;
+ case IPP_TAG_TEXT :
+ case IPP_TAG_NAME :
+ case IPP_TAG_RESERVED_STRING :
+ case IPP_TAG_KEYWORD :
+ case IPP_TAG_URI :
+ case IPP_TAG_URISCHEME :
+ case IPP_TAG_CHARSET :
+ case IPP_TAG_LANGUAGE :
+ case IPP_TAG_MIMETYPE :
+ for (i = count, value = attr->values + element;
+ i > 0;
+ i --, value ++)
+ _cupsStrFree(value->string.text);
+ break;
- case IPP_TAG_BEGIN_COLLECTION :
- for (i = 0, value = attr->values;
- i < attr->num_values;
- i ++, value ++)
- ippDelete(value->collection);
- break;
+ case IPP_TAG_DEFAULT :
+ case IPP_TAG_UNKNOWN :
+ case IPP_TAG_NOVALUE :
+ case IPP_TAG_NOTSETTABLE :
+ case IPP_TAG_DELETEATTR :
+ case IPP_TAG_ADMINDEFINE :
+ case IPP_TAG_INTEGER :
+ case IPP_TAG_ENUM :
+ case IPP_TAG_BOOLEAN :
+ case IPP_TAG_DATE :
+ case IPP_TAG_RESOLUTION :
+ case IPP_TAG_RANGE :
+ break;
- case IPP_TAG_STRING :
- for (i = 0, value = attr->values;
- i < attr->num_values;
- i ++, value ++)
- free(value->unknown.data);
- break;
+ case IPP_TAG_BEGIN_COLLECTION :
+ for (i = count, value = attr->values + element;
+ i > 0;
+ i --, value ++)
+ ippDelete(value->collection);
+ break;
- default :
- if (!((int)attr->value_tag & IPP_TAG_COPY))
- {
- for (i = 0, value = attr->values;
- i < attr->num_values;
- i ++, value ++)
- if (value->unknown.data)
+ case IPP_TAG_STRING :
+ default :
+ for (i = count, value = attr->values + element;
+ i > 0;
+ i --, value ++)
+ if (value->unknown.data)
free(value->unknown.data);
- }
- break;
+ break;
+ }
}
- if (attr->name)
- _cupsStrFree(attr->name);
+ /*
+ * If we are not freeing values from the end, move the remaining values up...
+ */
- free(attr);
+ if ((element + count) < attr->num_values)
+ memmove(attr->values + element, attr->values + element + count,
+ (attr->num_values - count - element) * sizeof(_ipp_value_t));
+
+ attr->num_values -= count;
}
/*
- * 'ipp_buffer_get()' - Get a read/write buffer.
+ * 'ipp_get_code()' - Convert a C locale/charset name into an IPP language/charset code.
+ *
+ * This typically converts strings of the form "ll_CC", "ll-REGION", and "CHARSET_NUMBER"
+ * to "ll-cc", "ll-region", and "charset-number", respectively.
*/
-static unsigned char * /* O - Buffer */
-ipp_buffer_get(void)
+static char * /* O - Language code string */
+ipp_get_code(const char *value, /* I - Locale/charset string */
+ char *buffer, /* I - String buffer */
+ size_t bufsize) /* I - Size of string buffer */
{
- _ipp_buffer_t *buffer; /* Current buffer */
- _cups_globals_t *cg = _cupsGlobals();
- /* Global data */
+ char *bufptr, /* Pointer into buffer */
+ *bufend; /* End of buffer */
- for (buffer = cg->ipp_buffers; buffer; buffer = buffer->next)
- if (!buffer->used)
- {
- buffer->used = 1;
- return (buffer->d);
- }
+ /*
+ * Convert values to lowercase and change _ to - as needed...
+ */
- if ((buffer = malloc(sizeof(_ipp_buffer_t))) == NULL)
- return (NULL);
+ for (bufptr = buffer, bufend = buffer + bufsize - 1;
+ *value && bufptr < bufend;
+ value ++)
+ if (*value == '_')
+ *bufptr++ = '-';
+ else
+ *bufptr++ = _cups_tolower(*value);
- buffer->used = 1;
- buffer->next = cg->ipp_buffers;
- cg->ipp_buffers = buffer;
+ *bufptr = '\0';
- return (buffer->d);
+ /*
+ * Return the converted string...
+ */
+
+ return (buffer);
}
/*
- * 'ipp_buffer_release()' - Release a read/write buffer.
+ * 'ipp_lang_code()' - Convert a C locale name into an IPP language code.
+ *
+ * This typically converts strings of the form "ll_CC" and "ll-REGION" to "ll-cc" and
+ * "ll-region", respectively. It also converts the "C" (POSIX) locale to "en".
*/
-static void
-ipp_buffer_release(unsigned char *b) /* I - Buffer to release */
+static char * /* O - Language code string */
+ipp_lang_code(const char *locale, /* I - Locale string */
+ char *buffer, /* I - String buffer */
+ size_t bufsize) /* I - Size of string buffer */
{
- ((_ipp_buffer_t *)b)->used = 0;
+ /*
+ * Map POSIX ("C") locale to generic English, otherwise convert the locale string as-is.
+ */
+
+ if (!_cups_strcasecmp(locale, "c"))
+ {
+ strlcpy(buffer, "en", bufsize);
+ return (buffer);
+ }
+ else
+ return (ipp_get_code(locale, buffer, bufsize));
}
@@ -2951,14 +5143,19 @@ ipp_length(ipp_t *ipp, /* I - IPP message or collection */
int collection) /* I - 1 if a collection, 0 otherwise */
{
int i; /* Looping var */
- int bytes; /* Number of bytes */
+ size_t bytes; /* Number of bytes */
ipp_attribute_t *attr; /* Current attribute */
ipp_tag_t group; /* Current group */
- ipp_value_t *value; /* Current value */
+ _ipp_value_t *value; /* Current value */
- if (ipp == NULL)
+ DEBUG_printf(("3ipp_length(ipp=%p, collection=%d)", ipp, collection));
+
+ if (!ipp)
+ {
+ DEBUG_puts("4ipp_length: Returning 0 bytes");
return (0);
+ }
/*
* Start with 8 bytes for the IPP message header...
@@ -2986,12 +5183,15 @@ ipp_length(ipp_t *ipp, /* I - IPP message or collection */
if (!attr->name)
continue;
- DEBUG_printf(("9ipp_length: attr->name=\"%s\", attr->num_values=%d, "
- "bytes=%d", attr->name, attr->num_values, bytes));
+ DEBUG_printf(("5ipp_length: attr->name=\"%s\", attr->num_values=%d, "
+ "bytes=" CUPS_LLFMT, attr->name, attr->num_values, CUPS_LLCAST bytes));
- bytes += (int)strlen(attr->name); /* Name */
- bytes += attr->num_values; /* Value tag for each value */
+ if (attr->value_tag < IPP_TAG_EXTENSION)
+ bytes += attr->num_values; /* Value tag for each value */
+ else
+ bytes += 5 * attr->num_values; /* Value tag for each value */
bytes += 2 * attr->num_values; /* Name lengths */
+ bytes += (int)strlen(attr->name); /* Name */
bytes += 2 * attr->num_values; /* Value lengths */
if (collection)
@@ -2999,6 +5199,15 @@ ipp_length(ipp_t *ipp, /* I - IPP message or collection */
switch (attr->value_tag & ~IPP_TAG_COPY)
{
+ case IPP_TAG_UNSUPPORTED_VALUE :
+ case IPP_TAG_DEFAULT :
+ case IPP_TAG_UNKNOWN :
+ case IPP_TAG_NOVALUE :
+ case IPP_TAG_NOTSETTABLE :
+ case IPP_TAG_DELETEATTR :
+ case IPP_TAG_ADMINDEFINE :
+ break;
+
case IPP_TAG_INTEGER :
case IPP_TAG_ENUM :
bytes += 4 * attr->num_values;
@@ -3019,8 +5228,8 @@ ipp_length(ipp_t *ipp, /* I - IPP message or collection */
for (i = 0, value = attr->values;
i < attr->num_values;
i ++, value ++)
- if (value->string.text != NULL)
- bytes += (int)strlen(value->string.text);
+ if (value->string.text)
+ bytes += strlen(value->string.text);
break;
case IPP_TAG_DATE :
@@ -3043,11 +5252,11 @@ ipp_length(ipp_t *ipp, /* I - IPP message or collection */
i < attr->num_values;
i ++, value ++)
{
- if (value->string.charset != NULL)
- bytes += (int)strlen(value->string.charset);
+ if (value->string.language)
+ bytes += strlen(value->string.language);
- if (value->string.text != NULL)
- bytes += (int)strlen(value->string.text);
+ if (value->string.text)
+ bytes += strlen(value->string.text);
}
break;
@@ -3055,7 +5264,7 @@ ipp_length(ipp_t *ipp, /* I - IPP message or collection */
for (i = 0, value = attr->values;
i < attr->num_values;
i ++, value ++)
- bytes += (int)ipp_length(value->collection, 1);
+ bytes += ipp_length(value->collection, 1);
break;
default :
@@ -3077,7 +5286,7 @@ ipp_length(ipp_t *ipp, /* I - IPP message or collection */
else
bytes ++;
- DEBUG_printf(("8ipp_length: Returning %d bytes", bytes));
+ DEBUG_printf(("4ipp_length: Returning " CUPS_LLFMT " bytes", CUPS_LLCAST bytes));
return (bytes);
}
@@ -3176,6 +5385,137 @@ ipp_read_file(int *fd, /* I - File descriptor */
/*
+ * 'ipp_set_value()' - Get the value element from an attribute, expanding it as
+ * needed.
+ */
+
+static _ipp_value_t * /* O - IPP value element or NULL on error */
+ipp_set_value(ipp_t *ipp, /* IO - IPP message */
+ ipp_attribute_t **attr, /* IO - IPP attribute */
+ int element) /* I - Value number (0-based) */
+{
+ ipp_attribute_t *temp, /* New attribute pointer */
+ *current, /* Current attribute in list */
+ *prev; /* Previous attribute in list */
+ int alloc_values; /* Allocated values */
+
+
+ /*
+ * If we are setting an existing value element, return it...
+ */
+
+ temp = *attr;
+
+ if (temp->num_values <= 1)
+ alloc_values = 1;
+ else
+ alloc_values = (temp->num_values + IPP_MAX_VALUES - 1) &
+ ~(IPP_MAX_VALUES - 1);
+
+ if (element < alloc_values)
+ {
+ if (element >= temp->num_values)
+ temp->num_values = element + 1;
+
+ return (temp->values + element);
+ }
+
+ /*
+ * Otherwise re-allocate the attribute - we allocate in groups of IPP_MAX_VALUE
+ * values when num_values > 1.
+ */
+
+ if (alloc_values < IPP_MAX_VALUES)
+ alloc_values = IPP_MAX_VALUES;
+ else
+ alloc_values += IPP_MAX_VALUES;
+
+ DEBUG_printf(("4ipp_set_value: Reallocating for up to %d values.",
+ alloc_values));
+
+ /*
+ * Reallocate memory...
+ */
+
+ if ((temp = realloc(temp, sizeof(ipp_attribute_t) +
+ (alloc_values - 1) * sizeof(_ipp_value_t))) == NULL)
+ {
+ _cupsSetHTTPError(HTTP_ERROR);
+ DEBUG_puts("4ipp_set_value: Unable to resize attribute.");
+ return (NULL);
+ }
+
+ /*
+ * Zero the new memory...
+ */
+
+ memset(temp->values + temp->num_values, 0,
+ (alloc_values - temp->num_values) * sizeof(_ipp_value_t));
+
+ if (temp != *attr)
+ {
+ /*
+ * Reset pointers in the list...
+ */
+
+ if (ipp->current == *attr && ipp->prev)
+ {
+ /*
+ * Use current "previous" pointer...
+ */
+
+ prev = ipp->prev;
+ }
+ else
+ {
+ /*
+ * Find this attribute in the linked list...
+ */
+
+ for (prev = NULL, current = ipp->attrs;
+ current && current != *attr;
+ prev = current, current = current->next);
+
+ if (!current)
+ {
+ /*
+ * This is a serious error!
+ */
+
+ *attr = temp;
+ _cupsSetError(IPP_INTERNAL_ERROR,
+ _("IPP attribute is not a member of the message."), 1);
+ DEBUG_puts("4ipp_set_value: Unable to find attribute in message.");
+ return (NULL);
+ }
+ }
+
+ if (prev)
+ prev->next = temp;
+ else
+ ipp->attrs = temp;
+
+ ipp->current = temp;
+ ipp->prev = prev;
+
+ if (ipp->last == *attr)
+ ipp->last = temp;
+
+ *attr = temp;
+ }
+
+ /*
+ * Return the value element...
+ */
+
+ if (element >= temp->num_values)
+ temp->num_values = element + 1;
+
+ return (temp->values + element);
+}
+
+
+/*
* 'ipp_write_file()' - Write IPP data to a file.
*/
@@ -3192,29 +5532,6 @@ ipp_write_file(int *fd, /* I - File descriptor */
}
-#ifdef __linux
-/*
- * The following symbol definitions are provided only for KDE
- * compatibility during the CUPS 1.2 testing period and will be
- * removed in a future release of CUPS. These are PRIVATE APIs
- * from CUPS 1.1.x that the KDE developers chose to use...
- */
-
-ipp_attribute_t * /* O - New attribute */
-_ipp_add_attr(ipp_t *ipp, /* I - IPP message */
- int num_values) /* I - Number of values */
-{
- return (_ippAddAttr(ipp, num_values));
-}
-
-void
-_ipp_free_attr(ipp_attribute_t *attr) /* I - Attribute to free */
-{
- _ippFreeAttr(attr);
-}
-#endif /* __linux */
-
-
/*
- * End of "$Id: ipp.c 10450 2012-05-04 22:52:56Z mike $".
+ * End of "$Id: ipp.c 10462 2012-05-12 00:07:16Z mike $".
*/
diff --git a/cups/ipp.h b/cups/ipp.h
index 6d6a6f0e..81ad7a67 100644
--- a/cups/ipp.h
+++ b/cups/ipp.h
@@ -1,9 +1,9 @@
/*
- * "$Id: ipp.h 10108 2011-11-04 22:22:22Z mike $"
+ * "$Id: ipp.h 10424 2012-04-23 17:26:57Z mike $"
*
* Internet Printing Protocol definitions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -63,54 +63,14 @@ extern "C" {
* Types and structures...
*/
-typedef enum ipp_tag_e /**** Format tags for attributes ****/
-{
- IPP_TAG_ZERO = 0x00, /* Zero tag - used for separators */
- IPP_TAG_OPERATION, /* Operation group */
- IPP_TAG_JOB, /* Job group */
- IPP_TAG_END, /* End-of-attributes */
- IPP_TAG_PRINTER, /* Printer group */
- IPP_TAG_UNSUPPORTED_GROUP, /* Unsupported attributes group */
- IPP_TAG_SUBSCRIPTION, /* Subscription group */
- IPP_TAG_EVENT_NOTIFICATION, /* Event group */
- IPP_TAG_DOCUMENT = 0x09, /* Document group */
- IPP_TAG_UNSUPPORTED_VALUE = 0x10, /* Unsupported value */
- IPP_TAG_DEFAULT, /* Default value */
- IPP_TAG_UNKNOWN, /* Unknown value */
- IPP_TAG_NOVALUE, /* No-value value */
- IPP_TAG_NOTSETTABLE = 0x15, /* Not-settable value */
- IPP_TAG_DELETEATTR, /* Delete-attribute value */
- IPP_TAG_ADMINDEFINE, /* Admin-defined value */
- IPP_TAG_INTEGER = 0x21, /* Integer value */
- IPP_TAG_BOOLEAN, /* Boolean value */
- IPP_TAG_ENUM, /* Enumeration value */
- IPP_TAG_STRING = 0x30, /* Octet string value */
- IPP_TAG_DATE, /* Date/time value */
- IPP_TAG_RESOLUTION, /* Resolution value */
- IPP_TAG_RANGE, /* Range value */
- IPP_TAG_BEGIN_COLLECTION, /* Beginning of collection value */
- IPP_TAG_TEXTLANG, /* Text-with-language value */
- IPP_TAG_NAMELANG, /* Name-with-language value */
- IPP_TAG_END_COLLECTION, /* End of collection value */
- IPP_TAG_TEXT = 0x41, /* Text value */
- IPP_TAG_NAME, /* Name value */
- IPP_TAG_RESERVED_STRING, /* Reserved for future string value @private@ */
- IPP_TAG_KEYWORD, /* Keyword value */
- IPP_TAG_URI, /* URI value */
- IPP_TAG_URISCHEME, /* URI scheme value */
- IPP_TAG_CHARSET, /* Character set value */
- IPP_TAG_LANGUAGE, /* Language value */
- IPP_TAG_MIMETYPE, /* MIME media type value */
- IPP_TAG_MEMBERNAME, /* Collection member name value */
- IPP_TAG_MASK = 0x7fffffff, /* Mask for copied attribute values */
- IPP_TAG_COPY = -0x7fffffff-1 /* Bitflag for copied attribute values */
-} ipp_tag_t;
-
-typedef enum ipp_res_e /**** Resolution units ****/
+typedef enum ipp_dstate_e /**** Document states ****/
{
- IPP_RES_PER_INCH = 3, /* Pixels per inch */
- IPP_RES_PER_CM /* Pixels per centimeter */
-} ipp_res_t;
+ IPP_DOCUMENT_PENDING = 3,
+ IPP_DOCUMENT_PROCESSING = 5,
+ IPP_DOCUMENT_CANCELED = 7,
+ IPP_DOCUMENT_ABORTED,
+ IPP_DOCUMENT_COMPLETED
+} ipp_dstate_t;
typedef enum ipp_finish_e /**** Finishings ****/
{
@@ -141,23 +101,19 @@ typedef enum ipp_finish_e /**** Finishings ****/
IPP_FINISHINGS_BIND_LEFT = 50, /* Bind on left */
IPP_FINISHINGS_BIND_TOP, /* Bind on top */
IPP_FINISHINGS_BIND_RIGHT, /* Bind on right */
- IPP_FINISHINGS_BIND_BOTTOM /* Bind on bottom */
+ IPP_FINISHINGS_BIND_BOTTOM, /* Bind on bottom */
+ IPP_FINISHINGS_TRIM_AFTER_PAGES = 60, /* Trim output after each page */
+ IPP_FINISHINGS_TRIM_AFTER_DOCUMENTS, /* Trim output after each document */
+ IPP_FINISHINGS_TRIM_AFTER_COPIES, /* Trim output after each copy */
+ IPP_FINISHINGS_TRIM_AFTER_JOB /* Trim output after job */
} ipp_finish_t;
-typedef enum ipp_orient_e /**** Orientation values ****/
+typedef enum ipp_jcollate_e /**** Job collation types ****/
{
- IPP_PORTRAIT = 3, /* No rotation */
- IPP_LANDSCAPE, /* 90 degrees counter-clockwise */
- IPP_REVERSE_LANDSCAPE, /* 90 degrees clockwise */
- IPP_REVERSE_PORTRAIT /* 180 degrees */
-} ipp_orient_t;
-
-typedef enum ipp_quality_e /**** Qualities ****/
-{
- IPP_QUALITY_DRAFT = 3, /* Draft quality */
- IPP_QUALITY_NORMAL, /* Normal quality */
- IPP_QUALITY_HIGH /* High quality */
-} ipp_quality_t;
+ IPP_JOB_UNCOLLATED_SHEETS = 3,
+ IPP_JOB_COLLATED_DOCUMENTS,
+ IPP_JOB_UNCOLLATED_DOCUMENTS
+} ipp_jcollate_t;
typedef enum ipp_jstate_e /**** Job states ****/
{
@@ -168,27 +124,13 @@ typedef enum ipp_jstate_e /**** Job states ****/
IPP_JOB_CANCELED, /* Job has been canceled */
IPP_JOB_ABORTED, /* Job has aborted due to error */
IPP_JOB_COMPLETED /* Job has completed successfully */
-} ipp_jstate_t;
+ /* Legacy name for canceled state */
#define IPP_JOB_CANCELLED IPP_JOB_CANCELED
-
-typedef enum ipp_pstate_e /**** Printer states ****/
-{
- IPP_PRINTER_IDLE = 3, /* Printer is idle */
- IPP_PRINTER_PROCESSING, /* Printer is working */
- IPP_PRINTER_STOPPED /* Printer is stopped */
-} ipp_pstate_t;
-
-typedef enum ipp_state_e /**** IPP states ****/
-{
- IPP_ERROR = -1, /* An error occurred */
- IPP_IDLE, /* Nothing is happening/request completed */
- IPP_HEADER, /* The request header needs to be sent/received */
- IPP_ATTRIBUTE, /* One or more attributes need to be sent/received */
- IPP_DATA /* IPP request data needs to be sent/received */
-} ipp_state_t;
+} ipp_jstate_t;
typedef enum ipp_op_e /**** IPP operations ****/
{
+ IPP_OP_CUPS_INVALID = -1, /* Invalid operation name for @link ippOpValue@ */
IPP_PRINT_JOB = 0x0002, /* Print a single file */
IPP_PRINT_URI, /* Print a single URL @private@ */
IPP_VALIDATE_JOB, /* Validate job options */
@@ -208,15 +150,18 @@ typedef enum ipp_op_e /**** IPP operations ****/
IPP_SET_PRINTER_ATTRIBUTES, /* Set printer attributes @private@ */
IPP_SET_JOB_ATTRIBUTES, /* Set job attributes */
IPP_GET_PRINTER_SUPPORTED_VALUES, /* Get supported attribute values */
- IPP_CREATE_PRINTER_SUBSCRIPTION, /* Create a printer subscription @since CUPS 1.2/Mac OS X 10.5@ */
- IPP_CREATE_JOB_SUBSCRIPTION, /* Create a job subscription @since CUPS 1.2/Mac OS X 10.5@ */
- IPP_GET_SUBSCRIPTION_ATTRIBUTES, /* Get subscription attributes @since CUPS 1.2/Mac OS X 10.5@ */
- IPP_GET_SUBSCRIPTIONS, /* Get list of subscriptions @since CUPS 1.2/Mac OS X 10.5@ */
- IPP_RENEW_SUBSCRIPTION, /* Renew a printer subscription @since CUPS 1.2/Mac OS X 10.5@ */
- IPP_CANCEL_SUBSCRIPTION, /* Cancel a subscription @since CUPS 1.2/Mac OS X 10.5@ */
- IPP_GET_NOTIFICATIONS, /* Get notification events @since CUPS 1.2/Mac OS X 10.5@ */
+ IPP_CREATE_PRINTER_SUBSCRIPTION, /* Create a printer subscription @since CUPS 1.2/OS X 10.5@ */
+ IPP_CREATE_JOB_SUBSCRIPTION, /* Create a job subscription @since CUPS 1.2/OS X 10.5@ */
+ IPP_GET_SUBSCRIPTION_ATTRIBUTES, /* Get subscription attributes @since CUPS 1.2/OS X 10.5@ */
+ IPP_GET_SUBSCRIPTIONS, /* Get list of subscriptions @since CUPS 1.2/OS X 10.5@ */
+ IPP_RENEW_SUBSCRIPTION, /* Renew a printer subscription @since CUPS 1.2/OS X 10.5@ */
+ IPP_CANCEL_SUBSCRIPTION, /* Cancel a subscription @since CUPS 1.2/OS X 10.5@ */
+ IPP_GET_NOTIFICATIONS, /* Get notification events @since CUPS 1.2/OS X 10.5@ */
IPP_SEND_NOTIFICATIONS, /* Send notification events @private@ */
- IPP_GET_PRINT_SUPPORT_FILES = 0x0021, /* Get printer support files @private@ */
+ IPP_GET_RESOURCE_ATTRIBUTES, /* Get resource attributes @private@ */
+ IPP_GET_RESOURCE_DATA, /* Get resource data @private@ */
+ IPP_GET_RESOURCES, /* Get list of resources @private@ */
+ IPP_GET_PRINT_SUPPORT_FILES, /* Get printer support files @private@ */
IPP_ENABLE_PRINTER, /* Start a printer */
IPP_DISABLE_PRINTER, /* Stop a printer */
IPP_PAUSE_PRINTER_AFTER_CURRENT_JOB, /* Stop printer after the current job @private@ */
@@ -243,6 +188,7 @@ typedef enum ipp_op_e /**** IPP operations ****/
IPP_RESUBMIT_JOB, /* Resubmit-Job */
IPP_CLOSE_JOB, /* Close-Job */
IPP_IDENTIFY_PRINTER, /* Identify-Printer (proposed IPP JPS3) */
+ IPP_VALIDATE_DOCUMENT, /* Validate-Document (proposed IPP JPS3) */
IPP_PRIVATE = 0x4000, /* Reserved @private@ */
CUPS_GET_DEFAULT, /* Get the default printer */
CUPS_GET_PRINTERS, /* Get a list of printers and/or classes */
@@ -257,24 +203,62 @@ typedef enum ipp_op_e /**** IPP operations ****/
CUPS_GET_DEVICES, /* Get a list of supported devices */
CUPS_GET_PPDS, /* Get a list of supported drivers */
CUPS_MOVE_JOB, /* Move a job to a different printer */
- CUPS_AUTHENTICATE_JOB, /* Authenticate a job @since CUPS 1.2/Mac OS X 10.5@ */
- CUPS_GET_PPD, /* Get a PPD file @since CUPS 1.3/Mac OS X 10.5@ */
- CUPS_GET_DOCUMENT = 0x4027 /* Get a document file @since CUPS 1.4/Mac OS X 10.6@ */
-} ipp_op_t;
+ CUPS_AUTHENTICATE_JOB, /* Authenticate a job @since CUPS 1.2/OS X 10.5@ */
+ CUPS_GET_PPD, /* Get a PPD file @since CUPS 1.3/OS X 10.5@ */
+ CUPS_GET_DOCUMENT = 0x4027 /* Get a document file @since CUPS 1.4/OS X 10.6@ */
-/* Old names for the operations */
+ /* Legacy names for the add operations */
#define CUPS_ADD_PRINTER CUPS_ADD_MODIFY_PRINTER
#define CUPS_ADD_CLASS CUPS_ADD_MODIFY_CLASS
+} ipp_op_t;
+
+typedef enum ipp_orient_e /**** Orientation values ****/
+{
+ IPP_PORTRAIT = 3, /* No rotation */
+ IPP_LANDSCAPE, /* 90 degrees counter-clockwise */
+ IPP_REVERSE_LANDSCAPE, /* 90 degrees clockwise */
+ IPP_REVERSE_PORTRAIT /* 180 degrees */
+} ipp_orient_t;
+
+typedef enum ipp_pstate_e /**** Printer states ****/
+{
+ IPP_PRINTER_IDLE = 3, /* Printer is idle */
+ IPP_PRINTER_PROCESSING, /* Printer is working */
+ IPP_PRINTER_STOPPED /* Printer is stopped */
+} ipp_pstate_t;
+
+typedef enum ipp_quality_e /**** Qualities ****/
+{
+ IPP_QUALITY_DRAFT = 3, /* Draft quality */
+ IPP_QUALITY_NORMAL, /* Normal quality */
+ IPP_QUALITY_HIGH /* High quality */
+} ipp_quality_t;
+
+typedef enum ipp_res_e /**** Resolution units ****/
+{
+ IPP_RES_PER_INCH = 3, /* Pixels per inch */
+ IPP_RES_PER_CM /* Pixels per centimeter */
+} ipp_res_t;
+
+typedef enum ipp_state_e /**** IPP states ****/
+{
+ IPP_ERROR = -1, /* An error occurred */
+ IPP_IDLE, /* Nothing is happening/request completed */
+ IPP_HEADER, /* The request header needs to be sent/received */
+ IPP_ATTRIBUTE, /* One or more attributes need to be sent/received */
+ IPP_DATA /* IPP request data needs to be sent/received */
+} ipp_state_t;
typedef enum ipp_status_e /**** IPP status codes ****/
{
+ IPP_STATUS_CUPS_INVALID = -1, /* Invalid status name for @link ippErrorValue@ */
IPP_OK = 0x0000, /* successful-ok */
IPP_OK_SUBST, /* successful-ok-ignored-or-substituted-attributes */
IPP_OK_CONFLICT, /* successful-ok-conflicting-attributes */
IPP_OK_IGNORED_SUBSCRIPTIONS, /* successful-ok-ignored-subscriptions */
- IPP_OK_IGNORED_NOTIFICATIONS, /* successful-ok-ignored-notifications */
+ IPP_OK_IGNORED_NOTIFICATIONS, /* successful-ok-ignored-notifications @private@ */
IPP_OK_TOO_MANY_EVENTS, /* successful-ok-too-many-events */
- IPP_OK_BUT_CANCEL_SUBSCRIPTION, /* successful-ok-but-cancel-subscription */
+ IPP_OK_BUT_CANCEL_SUBSCRIPTION, /* successful-ok-but-cancel-subscription @private@ */
IPP_OK_EVENTS_COMPLETE, /* successful-ok-events-complete */
IPP_REDIRECTION_OTHER_SITE = 0x200, /* redirection-other-site @private@ */
CUPS_SEE_OTHER = 0x280, /* cups-see-other */
@@ -300,8 +284,12 @@ typedef enum ipp_status_e /**** IPP status codes ****/
IPP_ATTRIBUTES_NOT_SETTABLE, /* client-error-attributes-not-settable */
IPP_IGNORED_ALL_SUBSCRIPTIONS, /* client-error-ignored-all-subscriptions */
IPP_TOO_MANY_SUBSCRIPTIONS, /* client-error-too-many-subscriptions */
- IPP_IGNORED_ALL_NOTIFICATIONS, /* client-error-ignored-all-notifications */
- IPP_PRINT_SUPPORT_FILE_NOT_FOUND, /* client-error-print-support-file-not-found */
+ IPP_IGNORED_ALL_NOTIFICATIONS, /* client-error-ignored-all-notifications @private@ */
+ IPP_PRINT_SUPPORT_FILE_NOT_FOUND, /* client-error-print-support-file-not-found @private@ */
+ IPP_DOCUMENT_PASSWORD_ERROR, /* client-error-document-password-error */
+ IPP_DOCUMENT_PERMISSION_ERROR, /* client-error-document-permission-error */
+ IPP_DOCUMENT_SECURITY_ERROR, /* client-error-document-security-error */
+ IPP_DOCUMENT_UNPRINTABLE_ERROR, /* client-error-document-unprintable-error */
IPP_INTERNAL_ERROR = 0x0500, /* server-error-internal-error */
IPP_OPERATION_NOT_SUPPORTED, /* server-error-operation-not-supported */
@@ -317,19 +305,100 @@ typedef enum ipp_status_e /**** IPP status codes ****/
IPP_TOO_MANY_JOBS, /* server-error-too-many-jobs */
IPP_TOO_MANY_DOCUMENTS, /* server-error-too-many-documents */
- IPP_AUTHENTICATION_CANCELED = 0x1000, /* Authentication canceled by user @since CUPS 1.5/Mac OS X 10.7@ */
- IPP_PKI_ERROR, /* Error negotiating a secure connection @since CUPS 1.5/Mac OS X 10.7@ */
+ IPP_AUTHENTICATION_CANCELED = 0x1000, /* Authentication canceled by user @since CUPS 1.5/OS X 10.7@ */
+ IPP_PKI_ERROR, /* Error negotiating a secure connection @since CUPS 1.5/OS X 10.7@ */
IPP_UPGRADE_REQUIRED /* TLS upgrade required */
-} ipp_status_t;
+
+ /* Legacy name for canceled status */
#define IPP_ERROR_JOB_CANCELLED IPP_ERROR_JOB_CANCELED
+} ipp_status_t;
+
+typedef enum ipp_tag_e /**** Format tags for attributes ****/
+{
+ IPP_TAG_CUPS_INVALID = -1, /* Invalid tag name for @link ippTagValue@ */
+ IPP_TAG_ZERO = 0x00, /* Zero tag - used for separators */
+ IPP_TAG_OPERATION, /* Operation group */
+ IPP_TAG_JOB, /* Job group */
+ IPP_TAG_END, /* End-of-attributes */
+ IPP_TAG_PRINTER, /* Printer group */
+ IPP_TAG_UNSUPPORTED_GROUP, /* Unsupported attributes group */
+ IPP_TAG_SUBSCRIPTION, /* Subscription group */
+ IPP_TAG_EVENT_NOTIFICATION, /* Event group */
+ IPP_TAG_RESOURCE, /* Resource group @private@ */
+ IPP_TAG_DOCUMENT, /* Document group */
+ IPP_TAG_UNSUPPORTED_VALUE = 0x10, /* Unsupported value */
+ IPP_TAG_DEFAULT, /* Default value */
+ IPP_TAG_UNKNOWN, /* Unknown value */
+ IPP_TAG_NOVALUE, /* No-value value */
+ IPP_TAG_NOTSETTABLE = 0x15, /* Not-settable value */
+ IPP_TAG_DELETEATTR, /* Delete-attribute value */
+ IPP_TAG_ADMINDEFINE, /* Admin-defined value */
+ IPP_TAG_INTEGER = 0x21, /* Integer value */
+ IPP_TAG_BOOLEAN, /* Boolean value */
+ IPP_TAG_ENUM, /* Enumeration value */
+ IPP_TAG_STRING = 0x30, /* Octet string value */
+ IPP_TAG_DATE, /* Date/time value */
+ IPP_TAG_RESOLUTION, /* Resolution value */
+ IPP_TAG_RANGE, /* Range value */
+ IPP_TAG_BEGIN_COLLECTION, /* Beginning of collection value */
+ IPP_TAG_TEXTLANG, /* Text-with-language value */
+ IPP_TAG_NAMELANG, /* Name-with-language value */
+ IPP_TAG_END_COLLECTION, /* End of collection value */
+ IPP_TAG_TEXT = 0x41, /* Text value */
+ IPP_TAG_NAME, /* Name value */
+ IPP_TAG_RESERVED_STRING, /* Reserved for future string value @private@ */
+ IPP_TAG_KEYWORD, /* Keyword value */
+ IPP_TAG_URI, /* URI value */
+ IPP_TAG_URISCHEME, /* URI scheme value */
+ IPP_TAG_CHARSET, /* Character set value */
+ IPP_TAG_LANGUAGE, /* Language value */
+ IPP_TAG_MIMETYPE, /* MIME media type value */
+ IPP_TAG_MEMBERNAME, /* Collection member name value */
+ IPP_TAG_EXTENSION = 0x7f, /* Extension point for 32-bit tags */
+ IPP_TAG_MASK = 0x7fffffff, /* Mask for copied attribute values @private@ */
+ /* The following expression is used to avoid compiler warnings with +/-0x80000000 */
+ IPP_TAG_COPY = -0x7fffffff-1 /* Bitflag for copied attribute values @private@ */
+} ipp_tag_t;
+
typedef unsigned char ipp_uchar_t; /**** Unsigned 8-bit integer/character ****/
+typedef struct _ipp_s ipp_t; /**** IPP request/response data ****/
+typedef struct _ipp_attribute_s ipp_attribute_t;
+ /**** IPP attribute ****/
-/**** New in CUPS 1.2 ****/
-typedef ssize_t (*ipp_iocb_t)(void *, ipp_uchar_t *, size_t);
- /**** IPP IO Callback Function @since CUPS 1.2/Mac OS X 10.5@ ****/
+/**** New in CUPS 1.2/OS X 10.5 ****/
+typedef ssize_t (*ipp_iocb_t)(void *context, ipp_uchar_t *buffer, size_t bytes);
+ /**** IPP IO Callback Function @since CUPS 1.2/OS X 10.5@ ****/
+
+/**** New in CUPS 1.6/OS X 10.8 ****/
+typedef int (*ipp_copycb_t)(void *context, ipp_t *dst, ipp_attribute_t *attr);
+
+
+/*
+ * The following structures are PRIVATE starting with CUPS 1.6/OS X 10.8.
+ * Please use the new accessor functions available in CUPS 1.6 and later, as
+ * these definitions will be moved to a private header file in a future release.
+ *
+ * Define _IPP_PRIVATE_STRUCTURES to cause the private IPP structures to be
+ * exposed in CUPS 1.6. This happens automatically on OS X when compiling for
+ * a deployment target of 10.7 or earlier.
+ */
-typedef union ipp_request_u /**** Request Header ****/
+# if defined(_CUPS_SOURCE) || defined(_CUPS_IPP_PRIVATE_H_)
+ /* Building CUPS */
+# define _IPP_PRIVATE_STRUCTURES 1
+# elif defined(__APPLE__)
+# if defined(MAC_OS_X_VERSION_10_8) && MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_8
+ /* Building for 10.7 and earlier */
+# define _IPP_PRIVATE_STRUCTURES 1
+# elif !defined(MAC_OS_X_VERSION_10_8)
+ /* Building for 10.7 and earlier */
+# define _IPP_PRIVATE_STRUCTURES 1
+# endif /* MAC_OS_X_VERSION_10_8 && MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_8 */
+# endif /* _CUPS_SOURCE || _CUPS_IPP_PRIVATE_H_ */
+
+# ifdef _IPP_PRIVATE_STRUCTURES
+typedef union _ipp_request_u /**** Request Header ****/
{
struct /* Any Header */
{
@@ -353,18 +422,17 @@ typedef union ipp_request_u /**** Request Header ****/
} status;
/**** New in CUPS 1.1.19 ****/
- struct /* Event Header @since CUPS 1.1.19/Mac OS X 10.3@ */
+ struct /* Event Header @since CUPS 1.1.19/OS X 10.3@ */
{
ipp_uchar_t version[2]; /* Protocol version number */
ipp_status_t status_code; /* Status code */
int request_id; /* Request ID */
} event;
-} ipp_request_t;
+} _ipp_request_t;
/**** New in CUPS 1.1.19 ****/
-typedef struct ipp_s ipp_t;
-typedef union ipp_value_u /**** Attribute Value ****/
+typedef union _ipp_value_u /**** Attribute Value ****/
{
int integer; /* Integer/enumerated value */
@@ -387,7 +455,7 @@ typedef union ipp_value_u /**** Attribute Value ****/
struct
{
- char *charset; /* Character set */
+ char *language; /* Language code */
char *text; /* String */
} string; /* String with language value */
@@ -398,34 +466,36 @@ typedef union ipp_value_u /**** Attribute Value ****/
} unknown; /* Unknown attribute type */
/**** New in CUPS 1.1.19 ****/
- ipp_t *collection; /* Collection value @since CUPS 1.1.19/Mac OS X 10.3@ */
-} ipp_value_t;
+ ipp_t *collection; /* Collection value @since CUPS 1.1.19/OS X 10.3@ */
+} _ipp_value_t;
+typedef _ipp_value_t ipp_value_t; /**** Convenience typedef that will be removed @private@ ****/
-typedef struct ipp_attribute_s /**** Attribute ****/
+struct _ipp_attribute_s /**** Attribute ****/
{
- struct ipp_attribute_s *next; /* Next attribute in list */
+ ipp_attribute_t *next; /* Next attribute in list */
ipp_tag_t group_tag, /* Job/Printer/Operation group tag */
value_tag; /* What type of value is it? */
char *name; /* Name of attribute */
int num_values; /* Number of values */
- ipp_value_t values[1]; /* Values */
-} ipp_attribute_t;
+ _ipp_value_t values[1]; /* Values */
+};
-struct ipp_s /**** IPP Request/Response/Notification ****/
+struct _ipp_s /**** IPP Request/Response/Notification ****/
{
- ipp_state_t state; /* State of request */
- ipp_request_t request; /* Request header */
- ipp_attribute_t *attrs; /* Attributes */
- ipp_attribute_t *last; /* Last attribute in list */
- ipp_attribute_t *current; /* Current attribute (for read/write) */
- ipp_tag_t curtag; /* Current attribute group tag */
+ ipp_state_t state; /* State of request */
+ _ipp_request_t request; /* Request header */
+ ipp_attribute_t *attrs; /* Attributes */
+ ipp_attribute_t *last; /* Last attribute in list */
+ ipp_attribute_t *current; /* Current attribute (for read/write) */
+ ipp_tag_t curtag; /* Current attribute group tag */
/**** New in CUPS 1.2 ****/
- ipp_attribute_t *prev; /* Previous attribute (for read) @since CUPS 1.2/Mac OS X 10.5@ */
+ ipp_attribute_t *prev; /* Previous attribute (for read) @since CUPS 1.2/OS X 10.5@ */
/**** New in CUPS 1.4.4 ****/
- int use; /* Use count @since CUPS 1.4.4/Mac OS X 10.6.?@ */
+ int use; /* Use count @since CUPS 1.4.4/OS X 10.6.?@ */
};
+# endif /* _IPP_PRIVATE_STRUCTURES */
/*
@@ -440,10 +510,10 @@ extern ipp_attribute_t *ippAddBooleans(ipp_t *ipp, ipp_tag_t group,
extern ipp_attribute_t *ippAddDate(ipp_t *ipp, ipp_tag_t group,
const char *name, const ipp_uchar_t *value);
extern ipp_attribute_t *ippAddInteger(ipp_t *ipp, ipp_tag_t group,
- ipp_tag_t type, const char *name,
+ ipp_tag_t value_tag, const char *name,
int value);
extern ipp_attribute_t *ippAddIntegers(ipp_t *ipp, ipp_tag_t group,
- ipp_tag_t type, const char *name,
+ ipp_tag_t value_tag, const char *name,
int num_values, const int *values);
extern ipp_attribute_t *ippAddRange(ipp_t *ipp, ipp_tag_t group,
const char *name, int lower, int upper);
@@ -459,19 +529,19 @@ extern ipp_attribute_t *ippAddResolutions(ipp_t *ipp, ipp_tag_t group,
const int *yres);
extern ipp_attribute_t *ippAddSeparator(ipp_t *ipp);
extern ipp_attribute_t *ippAddString(ipp_t *ipp, ipp_tag_t group,
- ipp_tag_t type, const char *name,
- const char *charset, const char *value);
+ ipp_tag_t value_tag, const char *name,
+ const char *language, const char *value);
extern ipp_attribute_t *ippAddStrings(ipp_t *ipp, ipp_tag_t group,
- ipp_tag_t type, const char *name,
- int num_values, const char *charset,
+ ipp_tag_t value_tag, const char *name,
+ int num_values, const char *language,
const char * const *values);
extern time_t ippDateToTime(const ipp_uchar_t *date);
extern void ippDelete(ipp_t *ipp);
extern const char *ippErrorString(ipp_status_t error);
extern ipp_attribute_t *ippFindAttribute(ipp_t *ipp, const char *name,
- ipp_tag_t type);
+ ipp_tag_t value_tag);
extern ipp_attribute_t *ippFindNextAttribute(ipp_t *ipp, const char *name,
- ipp_tag_t type);
+ ipp_tag_t value_tag);
extern size_t ippLength(ipp_t *ipp);
extern ipp_t *ippNew(void);
extern ipp_state_t ippRead(http_t *http, ipp_t *ipp);
@@ -490,7 +560,7 @@ extern void ippDeleteAttribute(ipp_t *ipp, ipp_attribute_t *attr) _CUPS_API_1_1
extern ipp_state_t ippReadFile(int fd, ipp_t *ipp) _CUPS_API_1_1_19;
extern ipp_state_t ippWriteFile(int fd, ipp_t *ipp) _CUPS_API_1_1_19;
-/**** New in CUPS 1.2 ****/
+/**** New in CUPS 1.2/OS X 10.5 ****/
extern ipp_attribute_t *ippAddOctetString(ipp_t *ipp, ipp_tag_t group,
const char *name,
const void *data, int datalen) _CUPS_API_1_2;
@@ -503,10 +573,89 @@ extern ipp_state_t ippReadIO(void *src, ipp_iocb_t cb, int blocking,
extern ipp_state_t ippWriteIO(void *dst, ipp_iocb_t cb, int blocking,
ipp_t *parent, ipp_t *ipp) _CUPS_API_1_2;
-/**** New in CUPS 1.4 ****/
+/**** New in CUPS 1.4/OS X 10.6 ****/
extern const char *ippTagString(ipp_tag_t tag) _CUPS_API_1_4;
extern ipp_tag_t ippTagValue(const char *name) _CUPS_API_1_4;
+/**** New in CUPS 1.6/OS X 10.8 ****/
+extern ipp_attribute_t *ippAddOutOfBand(ipp_t *ipp, ipp_tag_t group,
+ ipp_tag_t value_tag, const char *name)
+ _CUPS_API_1_6;
+extern size_t ippAttributeString(ipp_attribute_t *attr, char *buffer,
+ size_t bufsize) _CUPS_API_1_6;
+extern ipp_attribute_t *ippCopyAttribute(ipp_t *dst, ipp_attribute_t *attr,
+ int quickcopy) _CUPS_API_1_6;
+extern int ippCopyAttributes(ipp_t *dst, ipp_t *src,
+ int quickcopy, ipp_copycb_t cb,
+ void *context) _CUPS_API_1_6;
+extern int ippDeleteValues(ipp_t *ipp, ipp_attribute_t **attr,
+ int element, int count) _CUPS_API_1_6;
+extern const char *ippEnumString(const char *attrname, int enumvalue)
+ _CUPS_API_1_6;
+extern int ippEnumValue(const char *attrname,
+ const char *enumstring) _CUPS_API_1_6;
+extern ipp_attribute_t *ippFirstAttribute(ipp_t *ipp) _CUPS_API_1_6;
+extern int ippGetBoolean(ipp_attribute_t *attr, int element)
+ _CUPS_API_1_6;
+extern ipp_t *ippGetCollection(ipp_attribute_t *attr,
+ int element) _CUPS_API_1_6;
+extern int ippGetCount(ipp_attribute_t *attr) _CUPS_API_1_6;
+extern const ipp_uchar_t *ippGetDate(ipp_attribute_t *attr, int element)
+ _CUPS_API_1_6;
+extern ipp_tag_t ippGetGroupTag(ipp_attribute_t *attr) _CUPS_API_1_6;
+extern int ippGetInteger(ipp_attribute_t *attr, int element)
+ _CUPS_API_1_6;
+extern const char *ippGetName(ipp_attribute_t *attr) _CUPS_API_1_6;
+extern ipp_op_t ippGetOperation(ipp_t *ipp) _CUPS_API_1_6;
+extern int ippGetRange(ipp_attribute_t *attr, int element,
+ int *upper) _CUPS_API_1_6;
+extern int ippGetRequestId(ipp_t *ipp) _CUPS_API_1_6;
+extern int ippGetResolution(ipp_attribute_t *attr, int element,
+ int *yres, ipp_res_t *units)
+ _CUPS_API_1_6;
+extern ipp_state_t ippGetState(ipp_t *ipp) _CUPS_API_1_6;
+extern ipp_status_t ippGetStatusCode(ipp_t *ipp) _CUPS_API_1_6;
+extern const char *ippGetString(ipp_attribute_t *attr, int element,
+ const char **language) _CUPS_API_1_6;
+extern ipp_tag_t ippGetValueTag(ipp_attribute_t *attr) _CUPS_API_1_6;
+extern int ippGetVersion(ipp_t *ipp, int *minor) _CUPS_API_1_6;
+extern ipp_attribute_t *ippNextAttribute(ipp_t *ipp) _CUPS_API_1_6;
+extern int ippSetBoolean(ipp_t *ipp, ipp_attribute_t **attr,
+ int element, int boolvalue) _CUPS_API_1_6;
+extern int ippSetCollection(ipp_t *ipp, ipp_attribute_t **attr,
+ int element, ipp_t *colvalue)
+ _CUPS_API_1_6;
+extern int ippSetDate(ipp_t *ipp, ipp_attribute_t **attr,
+ int element, const ipp_uchar_t *datevalue)
+ _CUPS_API_1_6;
+extern int ippSetGroupTag(ipp_t *ipp, ipp_attribute_t **attr,
+ ipp_tag_t group_tag) _CUPS_API_1_6;
+extern int ippSetInteger(ipp_t *ipp, ipp_attribute_t **attr,
+ int element, int intvalue) _CUPS_API_1_6;
+extern int ippSetName(ipp_t *ipp, ipp_attribute_t **attr,
+ const char *name) _CUPS_API_1_6;
+extern int ippSetOperation(ipp_t *ipp, ipp_op_t op) _CUPS_API_1_6;
+extern int ippSetRange(ipp_t *ipp, ipp_attribute_t **attr,
+ int element, int lowervalue, int uppervalue)
+ _CUPS_API_1_6;
+extern int ippSetRequestId(ipp_t *ipp, int request_id)
+ _CUPS_API_1_6;
+extern int ippSetResolution(ipp_t *ipp, ipp_attribute_t **attr,
+ int element, ipp_res_t unitsvalue,
+ int xresvalue, int yresvalue)
+ _CUPS_API_1_6;
+extern int ippSetState(ipp_t *ipp, ipp_state_t state)
+ _CUPS_API_1_6;
+extern int ippSetStatusCode(ipp_t *ipp, ipp_status_t status)
+ _CUPS_API_1_6;
+extern int ippSetString(ipp_t *ipp, ipp_attribute_t **attr,
+ int element, const char *strvalue)
+ _CUPS_API_1_6;
+extern int ippSetValueTag(ipp_t *ipp, ipp_attribute_t **attr,
+ ipp_tag_t value_tag) _CUPS_API_1_6;
+extern int ippSetVersion(ipp_t *ipp, int major, int minor)
+ _CUPS_API_1_6;
+
/*
* C++ magic...
@@ -518,5 +667,5 @@ extern ipp_tag_t ippTagValue(const char *name) _CUPS_API_1_4;
#endif /* !_CUPS_IPP_H_ */
/*
- * End of "$Id: ipp.h 10108 2011-11-04 22:22:22Z mike $".
+ * End of "$Id: ipp.h 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/language-private.h b/cups/language-private.h
index 1a6a09ea..94d8252a 100644
--- a/cups/language-private.h
+++ b/cups/language-private.h
@@ -1,5 +1,5 @@
/*
- * "$Id: language-private.h 9382 2010-11-20 01:03:46Z mike $"
+ * "$Id: language-private.h 10506 2012-05-23 20:17:12Z mike $"
*
* Private localization support for CUPS.
*
@@ -62,21 +62,16 @@ extern void _cupsLangPrintError(const char *prefix,
const char *message);
extern int _cupsLangPrintFilter(FILE *fp, const char *prefix,
const char *message, ...)
-# ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 3, 4)))
-# endif /* __GNUC__ */
-;
+ __attribute__ ((__format__ (__printf__, 3, 4)));
extern int _cupsLangPrintf(FILE *fp, const char *message, ...)
-# ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 2, 3)))
-# endif /* __GNUC__ */
-;
+ __attribute__ ((__format__ (__printf__, 2, 3)));
extern int _cupsLangPuts(FILE *fp, const char *message);
extern const char *_cupsLangString(cups_lang_t *lang,
const char *message);
extern void _cupsMessageFree(cups_array_t *a);
extern cups_array_t *_cupsMessageLoad(const char *filename, int unquote);
extern const char *_cupsMessageLookup(cups_array_t *a, const char *m);
+extern cups_array_t *_cupsMessageNew(void *context);
extern void _cupsSetLocale(char *argv[]);
@@ -87,5 +82,5 @@ extern void _cupsSetLocale(char *argv[]);
#endif /* !_CUPS_LANGUAGE_PRIVATE_H_ */
/*
- * End of "$Id: language-private.h 9382 2010-11-20 01:03:46Z mike $".
+ * End of "$Id: language-private.h 10506 2012-05-23 20:17:12Z mike $".
*/
diff --git a/cups/language.c b/cups/language.c
index b830fcd9..9e69a499 100644
--- a/cups/language.c
+++ b/cups/language.c
@@ -1,5 +1,5 @@
/*
- * "$Id: language.c 10531 2012-06-22 02:26:41Z mike $"
+ * "$Id: language.c 10530 2012-06-22 02:25:46Z mike $"
*
* I18N/language support for CUPS.
*
@@ -17,25 +17,27 @@
* Contents:
*
* _cupsAppleLanguage() - Get the Apple language identifier associated with
- * a locale ID.
+ * a locale ID.
* _cupsEncodingName() - Return the character encoding name string for the
- * given encoding enumeration.
- * cupsLangDefault() - Return the default language.
- * cupsLangEncoding() - Return the character encoding (us-ascii, etc.) for
- * the given language.
- * cupsLangFlush() - Flush all language data out of the cache.
- * cupsLangFree() - Free language data.
- * cupsLangGet() - Get a language.
- * _cupsLangString() - Get a message string.
+ * given encoding enumeration.
+ * cupsLangDefault() - Return the default language.
+ * cupsLangEncoding() - Return the character encoding (us-ascii, etc.)
+ * for the given language.
+ * cupsLangFlush() - Flush all language data out of the cache.
+ * cupsLangFree() - Free language data.
+ * cupsLangGet() - Get a language.
+ * _cupsLangString() - Get a message string.
* _cupsMessageFree() - Free a messages array.
* _cupsMessageLoad() - Load a .po file into a messages array.
* _cupsMessageLookup() - Lookup a message string.
+ * _cupsMessageNew() - Make a new message catalog array.
* appleLangDefault() - Get the default locale string.
* appleMessageLoad() - Load a message catalog from a localizable bundle.
* cups_cache_lookup() - Lookup a language in the cache...
* cups_message_compare() - Compare two messages.
* cups_message_free() - Free a message.
- * cups_unquote() - Unquote characters in strings...
+ * cups_message_load() - Load the message catalog for a language.
+ * cups_unquote() - Unquote characters in strings...
*/
/*
@@ -176,6 +178,7 @@ static cups_lang_t *cups_cache_lookup(const char *name,
static int cups_message_compare(_cups_message_t *m1,
_cups_message_t *m2);
static void cups_message_free(_cups_message_t *m);
+static void cups_message_load(cups_lang_t *lang);
static void cups_unquote(char *d, const char *s);
@@ -393,11 +396,6 @@ cupsLangGet(const char *language) /* I - Language or locale */
real[48]; /* Real language name */
cups_encoding_t encoding; /* Encoding to use */
cups_lang_t *lang; /* Current language... */
-#if !defined(__APPLE__) || !defined(CUPS_BUNDLEDIR)
- char filename[1024]; /* Filename for language locale file */
- _cups_globals_t *cg = _cupsGlobals();
- /* Pointer to library globals */
-#endif /* !__APPLE__ || !CUPS_BUNDLEDIR */
static const char * const locale_encodings[] =
{ /* Locale charset names */
"ASCII", "ISO88591", "ISO88592", "ISO88593",
@@ -701,21 +699,9 @@ cupsLangGet(const char *language) /* I - Language or locale */
*/
if (country[0])
- {
snprintf(real, sizeof(real), "%s_%s", langname, country);
-
-#if !defined(__APPLE__) || !defined(CUPS_BUNDLEDIR)
- snprintf(filename, sizeof(filename), "%s/%s/cups_%s.po", cg->localedir,
- real, real);
-#endif /* !__APPLE__ || !CUPS_BUNDLEDIR */
- }
else
- {
strcpy(real, langname);
-#if !defined(__APPLE__) || !defined(CUPS_BUNDLEDIR)
- filename[0] = '\0'; /* anti-compiler-warning-code */
-#endif /* !__APPLE__ || !CUPS_BUNDLEDIR */
- }
_cupsMutexLock(&lang_mutex);
@@ -728,30 +714,6 @@ cupsLangGet(const char *language) /* I - Language or locale */
return (lang);
}
-#if !defined(__APPLE__) || !defined(CUPS_BUNDLEDIR)
- if (!country[0] || access(filename, 0))
- {
- /*
- * Country localization not available, look for generic localization...
- */
-
- snprintf(filename, sizeof(filename), "%s/%s/cups_%s.po", cg->localedir,
- langname, langname);
-
- if (access(filename, 0))
- {
- /*
- * No generic localization, so use POSIX...
- */
-
- DEBUG_printf(("4cupsLangGet: access(\"%s\", 0): %s", filename,
- strerror(errno)));
-
- snprintf(filename, sizeof(filename), "%s/C/cups_C.po", cg->localedir);
- }
- }
-#endif /* !__APPLE__ || !CUPS_BUNDLEDIR */
-
/*
* See if there is a free language available; if so, use that
* record...
@@ -784,6 +746,7 @@ cupsLangGet(const char *language) /* I - Language or locale */
*/
_cupsMessageFree(lang->strings);
+ lang->strings = NULL;
}
/*
@@ -799,16 +762,6 @@ cupsLangGet(const char *language) /* I - Language or locale */
lang->encoding = CUPS_UTF8;
/*
- * Read the strings from the file...
- */
-
-#if defined(__APPLE__) && defined(CUPS_BUNDLEDIR)
- lang->strings = appleMessageLoad(lang->language);
-#else
- lang->strings = _cupsMessageLoad(filename, 1);
-#endif /* __APPLE__ && CUPS_BUNDLEDIR */
-
- /*
* Return...
*/
@@ -840,6 +793,13 @@ _cupsLangString(cups_lang_t *lang, /* I - Language */
_cupsMutexLock(&lang_mutex);
+ /*
+ * Load the message catalog if needed...
+ */
+
+ if (!lang->strings)
+ cups_message_load(lang);
+
s = _cupsMessageLookup(lang->strings, message);
_cupsMutexUnlock(&lang_mutex);
@@ -895,10 +855,7 @@ _cupsMessageLoad(const char *filename, /* I - Message catalog to load */
* Create an array to hold the messages...
*/
- if ((a = cupsArrayNew3((cups_array_func_t)cups_message_compare, NULL,
- (cups_ahash_func_t)NULL, 0,
- (cups_acopy_func_t)NULL,
- (cups_afree_func_t)cups_message_free)) == NULL)
+ if ((a = _cupsMessageNew(NULL)) == NULL)
{
DEBUG_puts("5_cupsMessageLoad: Unable to allocate array!");
return (NULL);
@@ -1181,6 +1138,20 @@ _cupsMessageLookup(cups_array_t *a, /* I - Message array */
}
+/*
+ * '_cupsMessageNew()' - Make a new message catalog array.
+ */
+
+cups_array_t * /* O - Array */
+_cupsMessageNew(void *context) /* I - User data */
+{
+ return (cupsArrayNew3((cups_array_func_t)cups_message_compare, context,
+ (cups_ahash_func_t)NULL, 0,
+ (cups_acopy_func_t)NULL,
+ (cups_afree_func_t)cups_message_free));
+}
+
+
#ifdef __APPLE__
/*
* 'appleLangDefault()' - Get the default locale string.
@@ -1415,10 +1386,7 @@ appleMessageLoad(const char *locale) /* I - Locale ID */
* plist as the user data.
*/
- return (cupsArrayNew3((cups_array_func_t)cups_message_compare, (void *)plist,
- (cups_ahash_func_t)NULL, 0,
- (cups_acopy_func_t)NULL,
- (cups_afree_func_t)cups_message_free));
+ return (_cupsMessageNew((void *)plist));
}
# endif /* CUPS_BUNDLEDIR */
#endif /* __APPLE__ */
@@ -1498,6 +1466,56 @@ cups_message_free(_cups_message_t *m) /* I - Message */
/*
+ * 'cups_message_load()' - Load the message catalog for a language.
+ */
+
+static void
+cups_message_load(cups_lang_t *lang) /* I - Language */
+{
+#if defined(__APPLE__) && defined(CUPS_BUNDLEDIR)
+ lang->strings = appleMessageLoad(lang->language);
+
+#else
+ char filename[1024]; /* Filename for language locale file */
+ _cups_globals_t *cg = _cupsGlobals();
+ /* Pointer to library globals */
+
+
+ snprintf(filename, sizeof(filename), "%s/%s/cups_%s.po", cg->localedir,
+ lang->language, lang->language);
+
+ if (strchr(lang->language, '_') && access(filename, 0))
+ {
+ /*
+ * Country localization not available, look for generic localization...
+ */
+
+ snprintf(filename, sizeof(filename), "%s/%.2s/cups_%.2s.po", cg->localedir,
+ lang->language, lang->language);
+
+ if (access(filename, 0))
+ {
+ /*
+ * No generic localization, so use POSIX...
+ */
+
+ DEBUG_printf(("4cups_message_load: access(\"%s\", 0): %s", filename,
+ strerror(errno)));
+
+ snprintf(filename, sizeof(filename), "%s/C/cups_C.po", cg->localedir);
+ }
+ }
+
+ /*
+ * Read the strings from the file...
+ */
+
+ lang->strings = _cupsMessageLoad(filename, 1);
+#endif /* __APPLE__ && CUPS_BUNDLEDIR */
+}
+
+
+/*
* 'cups_unquote()' - Unquote characters in strings...
*/
@@ -1545,5 +1563,5 @@ cups_unquote(char *d, /* O - Unquoted string */
/*
- * End of "$Id: language.c 10531 2012-06-22 02:26:41Z mike $".
+ * End of "$Id: language.c 10530 2012-06-22 02:25:46Z mike $".
*/
diff --git a/cups/libcups2.def b/cups/libcups2.def
index 1576fffd..ef22daa4 100644
--- a/cups/libcups2.def
+++ b/cups/libcups2.def
@@ -1,6 +1,8 @@
LIBRARY libcups2
VERSION 2.9
EXPORTS
+_cupsBufferGet
+_cupsBufferRelease
_cupsGet1284Values
_cupsGetDests
_cupsGetPassword
@@ -15,6 +17,8 @@ _cupsMD5Init
_cupsMessageFree
_cupsMessageLoad
_cupsMessageLookup
+_cupsMutexLock
+_cupsMutexUnlock
_cupsNextDelay
_cupsSetError
_cupsSetLocale
@@ -38,10 +42,7 @@ _httpEncodeURI
_httpPeek
_httpResolveURI
_httpWait
-_ippAddAttr
-_ippAttrString
_ippFindOption
-_ippFreeAttr
_ppdCacheCreateWithFile
_ppdCacheCreateWithPPD
_ppdCacheDestroy
@@ -60,6 +61,8 @@ _ppdGetLanguages
_ppdHashName
_ppdLocalizedAttr
_ppdNormalizeMakeAndModel
+_ppdOpen
+_ppdOpenFile
_ppdParseOptions
_pwgGenerateSize
_pwgInitSize
@@ -272,6 +275,7 @@ ippAddDate
ippAddInteger
ippAddIntegers
ippAddOctetString
+ippAddOutOfBand
ippAddRange
ippAddRanges
ippAddResolution
@@ -279,16 +283,40 @@ ippAddResolutions
ippAddSeparator
ippAddString
ippAddStrings
+ippAttributeString
+ippCopyAttribute
+ippCopyAttributes
ippDateToTime
ippDelete
ippDeleteAttribute
+ippDeleteValues
+ippEnumString
+ippEnumValue
ippErrorString
ippErrorValue
ippFindAttribute
ippFindNextAttribute
+ippFirstAttribute
+ippGetBoolean
+ippGetCollection
+ippGetCount
+ippGetDate
+ippGetGroupTag
+ippGetInteger
+ippGetName
+ippGetOperation
+ippGetRange
+ippGetRequestId
+ippGetResolution
+ippGetState
+ippGetStatusCode
+ippGetString
+ippGetValueTag
+ippGetVersion
ippLength
ippNew
ippNewRequest
+ippNextAttribute
ippOpString
ippOpValue
ippPort
@@ -296,6 +324,21 @@ ippRead
ippReadFile
ippReadIO
ippSetPort
+ippSetBoolean
+ippSetCollection
+ippSetDate
+ippSetGroupTag
+ippSetInteger
+ippSetName
+ippSetOperation
+ippSetRange
+ippSetRequestId
+ippSetResolution
+ippSetState
+ippSetStatusCode
+ippSetString
+ippSetValueTag
+ippSetVersion
ippTagString
ippTagValue
ippTimeToDate
diff --git a/cups/libcups_s.exp b/cups/libcups_s.exp
index 4d095537..b8b22072 100644
--- a/cups/libcups_s.exp
+++ b/cups/libcups_s.exp
@@ -1,4 +1,6 @@
_cups_debug_fd
+_cupsBufferGet
+_cupsBufferRelease
_cupsGet1284Values
_cupsGetDests
_cupsGetPassword
@@ -50,15 +52,15 @@ _httpPeek
_httpResolveURI
_httpSetTimeout
_httpWait
-_ippAddAttr
_ippFindOption
-_ippFreeAttr
_ppdFreeLanguages
_ppdGetEncoding
_ppdGetLanguages
_ppdHashName
_ppdLocalizedAttr
_ppdNormalizeMakeAndModel
+_ppdOpen
+_ppdOpenFile
_ppdParseOptions
_pwgCreateWithFile
_pwgDestroy
diff --git a/cups/localize.c b/cups/localize.c
index 6a35c384..65faa149 100644
--- a/cups/localize.c
+++ b/cups/localize.c
@@ -1,5 +1,5 @@
/*
- * "$Id: localize.c 10270 2012-02-13 17:13:21Z mike $"
+ * "$Id: localize.c 10424 2012-04-23 17:26:57Z mike $"
*
* PPD localization routines for CUPS.
*
@@ -61,7 +61,7 @@ static cups_lang_t *ppd_ll_CC(char *ll_CC, int ll_CC_size);
* descriptions, printer presets, and custom option parameters. Each
* localized string uses the UTF-8 character encoding.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 0 on success, -1 on error */
@@ -246,7 +246,7 @@ ppdLocalizeAttr(ppd_file_t *ppd, /* I - PPD file */
*
* If no value of the requested scheme can be found, NULL is returned.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
const char * /* O - Value or NULL if not found */
@@ -332,9 +332,9 @@ ppdLocalizeIPPReason(
else if (!strncmp(reason, "output-area-full", 16))
message = _("The output bin is full.");
else if (!strncmp(reason, "marker-supply-low", 17))
- message = _("The printer is running low on ink.");
+ message = _("The printer is running low on ink.");
else if (!strncmp(reason, "marker-supply-empty", 19))
- message = _("The printer is out of ink.");
+ message = _("The printer may be out of ink.");
else if (!strncmp(reason, "marker-waste-almost-full", 24))
message = _("The printer's waste bin is almost full.");
else if (!strncmp(reason, "marker-waste-full", 17))
@@ -351,7 +351,7 @@ ppdLocalizeIPPReason(
message = _("The developer unit will need to be replaced soon.");
else if (!strncmp(reason, "developer-empty", 15))
message = _("The developer unit needs to be replaced.");
-
+
if (message)
{
strlcpy(buffer, _cupsLangString(lang, message), bufsize);
@@ -499,7 +499,7 @@ ppdLocalizeIPPReason(
* text from the attribute value. If no localized text for the requested
* name can be found, @code NULL@ is returned.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
const char * /* O - Value or @code NULL@ if not found */
@@ -637,7 +637,7 @@ _ppdGetLanguages(ppd_file_t *ppd) /* I - PPD file */
/*
* '_ppdHashName()' - Generate a hash value for a device or profile name.
*
- * This function is primarily used on Mac OS X, but is generally accessible
+ * This function is primarily used on OS X, but is generally accessible
* since cupstestppd needs to check for profile name collisions in PPD files...
*/
@@ -775,5 +775,5 @@ ppd_ll_CC(char *ll_CC, /* O - Country-specific locale name */
/*
- * End of "$Id: localize.c 10270 2012-02-13 17:13:21Z mike $".
+ * End of "$Id: localize.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/mark.c b/cups/mark.c
index f5985510..ecbfe0b4 100644
--- a/cups/mark.c
+++ b/cups/mark.c
@@ -1,9 +1,9 @@
/*
- * "$Id: mark.c 9895 2011-08-12 00:16:55Z mike $"
+ * "$Id: mark.c 10424 2012-04-23 17:26:57Z mike $"
*
* Option marking routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -575,7 +575,7 @@ ppdMarkOption(ppd_file_t *ppd, /* I - PPD file record */
*
* Options are returned from all groups in ascending alphanumeric order.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ppd_option_t * /* O - First option or @code NULL@ */
@@ -593,7 +593,7 @@ ppdFirstOption(ppd_file_t *ppd) /* I - PPD file */
*
* Options are returned from all groups in ascending alphanumeric order.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ppd_option_t * /* O - Next option or @code NULL@ */
@@ -1097,5 +1097,5 @@ ppd_mark_option(ppd_file_t *ppd, /* I - PPD file */
/*
- * End of "$Id: mark.c 9895 2011-08-12 00:16:55Z mike $".
+ * End of "$Id: mark.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/notify.c b/cups/notify.c
index 9ac2f62b..c174423a 100644
--- a/cups/notify.c
+++ b/cups/notify.c
@@ -1,9 +1,9 @@
/*
- * "$Id: notify.c 9042 2010-03-24 00:45:34Z mike $"
+ * "$Id: notify.c 10424 2012-04-23 17:26:57Z mike $"
*
* Notification routines for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2005-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -33,7 +33,7 @@
*
* The returned string must be freed by the caller using @code free@.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
char * /* O - Subject string or @code NULL@ */
@@ -164,7 +164,7 @@ cupsNotifySubject(cups_lang_t *lang, /* I - Language data */
*
* The returned string must be freed by the caller using @code free@.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
char * /* O - Message text or @code NULL@ */
@@ -198,5 +198,5 @@ cupsNotifyText(cups_lang_t *lang, /* I - Language data */
/*
- * End of "$Id: notify.c 9042 2010-03-24 00:45:34Z mike $".
+ * End of "$Id: notify.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/options.c b/cups/options.c
index 2058c049..28f06e0f 100644
--- a/cups/options.c
+++ b/cups/options.c
@@ -1,9 +1,9 @@
/*
- * "$Id: options.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: options.c 10424 2012-04-23 17:26:57Z mike $"
*
* Option routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -438,7 +438,7 @@ cupsParseOptions(
/*
* 'cupsRemoveOption()' - Remove an option from an option array.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - New number of options */
@@ -707,5 +707,5 @@ cups_find_option(
/*
- * End of "$Id: options.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: options.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/page.c b/cups/page.c
index 1abd3f87..4ddd2fd3 100644
--- a/cups/page.c
+++ b/cups/page.c
@@ -1,9 +1,9 @@
/*
- * "$Id: page.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: page.c 10440 2012-04-30 18:33:39Z mike $"
*
* Page size functions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -34,7 +34,7 @@
/*
- * 'ppdPageSize()' - Get the page size record for the given size.
+ * 'ppdPageSize()' - Get the page size record for the named size.
*/
ppd_size_t * /* O - Size record for page or NULL */
@@ -198,7 +198,7 @@ ppdPageSize(ppd_file_t *ppd, /* I - PPD file record */
* If the specified PPD file does not support custom page sizes, both
* "minimum" and "maximum" are filled with zeroes.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
int /* O - 1 if custom sizes are supported, 0 otherwise */
@@ -392,5 +392,5 @@ ppdPageLength(ppd_file_t *ppd, /* I - PPD file */
/*
- * End of "$Id: page.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: page.c 10440 2012-04-30 18:33:39Z mike $".
*/
diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c
index 9292715e..37840ba4 100644
--- a/cups/ppd-cache.c
+++ b/cups/ppd-cache.c
@@ -1,5 +1,5 @@
/*
- * "$Id: ppd-cache.c 10340 2012-03-07 17:16:42Z mike $"
+ * "$Id: ppd-cache.c 10339 2012-03-07 17:14:53Z mike $"
*
* PPD cache implementation for CUPS.
*
@@ -171,6 +171,8 @@ _ppdCacheCreateWithFile(
goto create_error;
}
+ pc->max_copies = 9999;
+
/*
* Read the file...
*/
@@ -553,6 +555,8 @@ _ppdCacheCreateWithFile(
cupsArrayAdd(pc->finishings, finishings);
}
+ else if (!_cups_strcasecmp(line, "MaxCopies"))
+ pc->max_copies = atoi(value);
else
{
DEBUG_printf(("_ppdCacheCreateWithFile: Unknown %s on line %d.", line,
@@ -1352,6 +1356,17 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
}
/*
+ * Max copies...
+ */
+
+ if ((ppd_attr = ppdFindAttr(ppd, "cupsMaxCopies", NULL)) != NULL)
+ pc->max_copies = atoi(ppd_attr->value);
+ else if (ppd->manual_copies)
+ pc->max_copies = 1;
+ else
+ pc->max_copies = 9999;
+
+ /*
* Return the cache data...
*/
@@ -1522,9 +1537,11 @@ _ppdCacheGetFinishingOptions(
if (job && (attr = ippFindAttribute(job, "finishings", IPP_TAG_ENUM)) != NULL)
{
- for (i = 0; i < attr->num_values; i ++)
+ int num_values = ippGetCount(attr); /* Number of values */
+
+ for (i = 0; i < num_values; i ++)
{
- key.value = attr->values[i].integer;
+ key.value = ippGetInteger(attr, i);
if ((f = cupsArrayFind(pc->finishings, &key)) != NULL)
{
@@ -1638,7 +1655,7 @@ _ppdCacheGetInputSlot(
media_col = ippFindAttribute(job, "media-col", IPP_TAG_BEGIN_COLLECTION);
if (media_col &&
- (media_source = ippFindAttribute(media_col->values[0].collection,
+ (media_source = ippFindAttribute(ippGetCollection(media_col, 0),
"media-source",
IPP_TAG_KEYWORD)) != NULL)
{
@@ -1646,7 +1663,7 @@ _ppdCacheGetInputSlot(
* Use the media-source value from media-col...
*/
- keyword = media_source->values[0].string.text;
+ keyword = ippGetString(media_source, 0, NULL);
}
else if (_pwgInitSize(&size, job, &margins_set))
{
@@ -2335,6 +2352,12 @@ _ppdCacheWriteFile(
}
/*
+ * Max copies...
+ */
+
+ cupsFilePrintf(fp, "MaxCopies %d\n", pc->max_copies);
+
+ /*
* IPP attributes, if any...
*/
@@ -2602,5 +2625,5 @@ pwg_unppdize_name(const char *ppd, /* I - PPD keyword */
/*
- * End of "$Id: ppd-cache.c 10340 2012-03-07 17:16:42Z mike $".
+ * End of "$Id: ppd-cache.c 10339 2012-03-07 17:14:53Z mike $".
*/
diff --git a/cups/ppd-private.h b/cups/ppd-private.h
index be161df7..413705de 100644
--- a/cups/ppd-private.h
+++ b/cups/ppd-private.h
@@ -1,5 +1,5 @@
/*
- * "$Id: ppd-private.h 10244 2012-02-11 02:21:34Z mike $"
+ * "$Id: ppd-private.h 10293 2012-02-15 23:10:05Z mike $"
*
* Private PPD definitions for CUPS.
*
@@ -49,13 +49,21 @@ extern "C" {
* Constants...
*/
-# define _PPD_CACHE_VERSION 2 /* Version number in cache file */
+# define _PPD_CACHE_VERSION 3 /* Version number in cache file */
/*
* Types and structures...
*/
+typedef enum _ppd_localization_e /**** Selector for _ppdOpen ****/
+{
+ _PPD_LOCALIZATION_DEFAULT, /* Load only the default localization */
+ _PPD_LOCALIZATION_ICC_PROFILES, /* Load only the color profile localization */
+ _PPD_LOCALIZATION_NONE, /* Load no localizations */
+ _PPD_LOCALIZATION_ALL /* Load all localizations */
+} _ppd_localization_t;
+
typedef enum _ppd_parse_e /**** Selector for _ppdParseOptions ****/
{
_PPD_PARSE_OPTIONS, /* Parse only the options */
@@ -133,6 +141,7 @@ struct _ppd_cache_s /**** PPD cache and PWG conversion data ****/
*prefilters; /* cupsPreFilter values */
int single_file; /* cupsSingleFile value */
cups_array_t *finishings; /* cupsIPPFinishings values */
+ int max_copies; /* cupsMaxCopies value */
};
@@ -177,6 +186,10 @@ extern ppd_attr_t *_ppdLocalizedAttr(ppd_file_t *ppd, const char *keyword,
extern char *_ppdNormalizeMakeAndModel(const char *make_and_model,
char *buffer,
size_t bufsize);
+extern ppd_file_t *_ppdOpen(cups_file_t *fp,
+ _ppd_localization_t localization);
+extern ppd_file_t *_ppdOpenFile(const char *filename,
+ _ppd_localization_t localization);
extern int _ppdParseOptions(const char *s, int num_options,
cups_option_t **options,
_ppd_parse_t which);
@@ -198,5 +211,5 @@ extern const char *_pwgPageSizeForMedia(_pwg_media_t *media,
#endif /* !_CUPS_PPD_PRIVATE_H_ */
/*
- * End of "$Id: ppd-private.h 10244 2012-02-11 02:21:34Z mike $".
+ * End of "$Id: ppd-private.h 10293 2012-02-15 23:10:05Z mike $".
*/
diff --git a/cups/ppd.c b/cups/ppd.c
index 99e6d43c..38355627 100644
--- a/cups/ppd.c
+++ b/cups/ppd.c
@@ -1,9 +1,9 @@
/*
- * "$Id: ppd.c 9901 2011-08-17 21:01:53Z mike $"
+ * "$Id: ppd.c 10424 2012-04-23 17:26:57Z mike $"
*
* PPD file routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -31,8 +31,10 @@
* LanguageEncoding.
* ppdLastError() - Return the status from the last ppdOpen*().
* ppdOpen() - Read a PPD file into memory.
+ * _ppdOpen() - Read a PPD file into memory.
* ppdOpen2() - Read a PPD file into memory.
* ppdOpenFd() - Read a PPD file into memory.
+ * _ppdOpenFile() - Read a PPD file into memory.
* ppdOpenFile() - Read a PPD file into memory.
* ppdSetConformance() - Set the conformance level for PPD files.
* ppd_add_attr() - Add an attribute to the PPD data.
@@ -325,7 +327,7 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
/*
* 'ppdErrorString()' - Returns the text assocated with a status.
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
const char * /* O - Status string */
@@ -395,7 +397,7 @@ _ppdGetEncoding(const char *name) /* I - LanguageEncoding string */
/*
* 'ppdLastError()' - Return the status from the last ppdOpen*().
*
- * @since CUPS 1.1.19/Mac OS X 10.3@
+ * @since CUPS 1.1.19/OS X 10.3@
*/
ppd_status_t /* O - Status code */
@@ -413,47 +415,15 @@ ppdLastError(int *line) /* O - Line number */
/*
- * 'ppdOpen()' - Read a PPD file into memory.
- */
-
-ppd_file_t * /* O - PPD file record */
-ppdOpen(FILE *fp) /* I - File to read from */
-{
- ppd_file_t *ppd; /* PPD file record */
- cups_file_t *cf; /* CUPS file */
-
-
- /*
- * Reopen the stdio file as a CUPS file...
- */
-
- if ((cf = cupsFileOpenFd(fileno(fp), "r")) == NULL)
- return (NULL);
-
- /*
- * Load the PPD file using the newer API...
- */
-
- ppd = ppdOpen2(cf);
-
- /*
- * Close the CUPS file and return the PPD...
- */
-
- cupsFileClose(cf);
-
- return (ppd);
-}
-
-
-/*
- * 'ppdOpen2()' - Read a PPD file into memory.
+ * '_ppdOpen()' - Read a PPD file into memory.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
ppd_file_t * /* O - PPD file record or @code NULL@ if the PPD file could not be opened. */
-ppdOpen2(cups_file_t *fp) /* I - File to read from */
+_ppdOpen(
+ cups_file_t *fp, /* I - File to read from */
+ _ppd_localization_t localization) /* I - Localization to load */
{
int i, j, k; /* Looping vars */
int count; /* Temporary count */
@@ -483,12 +453,17 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
char **filter; /* Pointer to filter */
struct lconv *loc; /* Locale data */
int ui_keyword; /* Is this line a UI keyword? */
+ cups_lang_t *lang; /* Language data */
cups_encoding_t encoding; /* Encoding of PPD file */
_cups_globals_t *cg = _cupsGlobals();
/* Global data */
char custom_name[PPD_MAX_NAME];
/* CustomFoo attribute name */
ppd_attr_t *custom_attr; /* CustomFoo attribute */
+ char ll[4], /* Language + '.' */
+ ll_CC[7]; /* Language + country + '.' */
+ size_t ll_len = 0, /* Language length */
+ ll_CC_len = 0; /* Language + country length */
static const char * const ui_keywords[] =
{
#ifdef CUPS_USE_FULL_UI_KEYWORDS_LIST
@@ -550,9 +525,14 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
"PageSize"
#endif /* CUPS_USE_FULL_UI_KEYWORDS_LIST */
};
+ static const char * const color_keywords[] = /* Keywords associated with color profiles */
+ {
+ ".cupsICCProfile",
+ ".ColorModel",
+ };
- DEBUG_printf(("ppdOpen2(fp=%p)", fp));
+ DEBUG_printf(("_ppdOpen(fp=%p)", fp));
/*
* Default to "OK" status...
@@ -572,6 +552,25 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
}
/*
+ * If only loading a single localization set up the strings to match...
+ */
+
+ if (localization == _PPD_LOCALIZATION_DEFAULT)
+ {
+ if ((lang = cupsLangDefault()) == NULL)
+ return (NULL);
+
+ snprintf(ll_CC, sizeof(ll_CC), "%s.", lang->language);
+ snprintf(ll, sizeof(ll), "%2.2s.", lang->language);
+
+ ll_CC_len = strlen(ll_CC);
+ ll_len = strlen(ll);
+
+ DEBUG_printf(("2_ppdOpen: Loading localizations matching \"%s\" and \"%s\"",
+ ll_CC, ll));
+ }
+
+ /*
* Grab the first line and make sure it reads '*PPD-Adobe: "major.minor"'...
*/
@@ -580,7 +579,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
mask = ppd_read(fp, &line, keyword, name, text, &string, 0, cg);
- DEBUG_printf(("2ppdOpen2: mask=%x, keyword=\"%s\"...", mask, keyword));
+ DEBUG_printf(("2_ppdOpen: mask=%x, keyword=\"%s\"...", mask, keyword));
if (mask == 0 ||
strcmp(keyword, "PPD-Adobe") ||
@@ -599,7 +598,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
return (NULL);
}
- DEBUG_printf(("2ppdOpen2: keyword=%s, string=%p", keyword, string));
+ DEBUG_printf(("2_ppdOpen: keyword=%s, string=%p", keyword, string));
_cupsStrFree(string);
@@ -638,7 +637,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
while ((mask = ppd_read(fp, &line, keyword, name, text, &string, 1, cg)) != 0)
{
- DEBUG_printf(("2ppdOpen2: mask=%x, keyword=\"%s\", name=\"%s\", "
+ DEBUG_printf(("2_ppdOpen: mask=%x, keyword=\"%s\", name=\"%s\", "
"text=\"%s\", string=%d chars...", mask, keyword, name, text,
string ? (int)strlen(string) : 0));
@@ -675,6 +674,50 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
ui_keyword = 0;
}
+ /*
+ * If we are filtering out keyword localizations, see if this line needs to
+ * be used...
+ */
+
+ if (localization != _PPD_LOCALIZATION_ALL &&
+ (temp = strchr(keyword, '.')) != NULL &&
+ ((temp - keyword) == 2 || (temp - keyword) == 5) &&
+ _cups_isalpha(keyword[0]) &&
+ _cups_isalpha(keyword[1]) &&
+ (keyword[2] == '.' ||
+ (keyword[2] == '_' && _cups_isalpha(keyword[3]) &&
+ _cups_isalpha(keyword[4]) && keyword[5] == '.')))
+ {
+ if (localization == _PPD_LOCALIZATION_NONE ||
+ (localization == _PPD_LOCALIZATION_DEFAULT &&
+ strncmp(ll_CC, keyword, ll_CC_len) &&
+ strncmp(ll, keyword, ll_len)))
+ {
+ DEBUG_printf(("2_ppdOpen: Ignoring localization: \"%s\"\n", keyword));
+ continue;
+ }
+ else if (localization == _PPD_LOCALIZATION_ICC_PROFILES)
+ {
+ /*
+ * Only load localizations for the color profile related keywords...
+ */
+
+ for (i = 0;
+ i < (int)(sizeof(color_keywords) / sizeof(color_keywords[0]));
+ i ++)
+ {
+ if (!_cups_strcasecmp(temp, color_keywords[i]))
+ break;
+ }
+
+ if (i >= (int)(sizeof(color_keywords) / sizeof(color_keywords[0])))
+ {
+ DEBUG_printf(("2_ppdOpen: Ignoring localization: \"%s\"\n", keyword));
+ continue;
+ }
+ }
+ }
+
if (option == NULL &&
(mask & (PPD_KEYWORD | PPD_OPTION | PPD_STRING)) ==
(PPD_KEYWORD | PPD_OPTION | PPD_STRING))
@@ -691,7 +734,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
ui_keyword = 1;
- DEBUG_printf(("2ppdOpen2: FOUND ADOBE UI KEYWORD %s WITHOUT OPENUI!",
+ DEBUG_printf(("2_ppdOpen: FOUND ADOBE UI KEYWORD %s WITHOUT OPENUI!",
keyword));
if (!group)
@@ -700,7 +743,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
encoding)) == NULL)
goto error;
- DEBUG_printf(("2ppdOpen2: Adding to group %s...", group->text));
+ DEBUG_printf(("2_ppdOpen: Adding to group %s...", group->text));
option = ppd_get_option(group, keyword);
group = NULL;
}
@@ -735,7 +778,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
!strcmp(ppd->attrs[j]->name + 7, keyword) &&
ppd->attrs[j]->value)
{
- DEBUG_printf(("2ppdOpen2: Setting Default%s to %s via attribute...",
+ DEBUG_printf(("2_ppdOpen: Setting Default%s to %s via attribute...",
option->keyword, ppd->attrs[j]->value));
strlcpy(option->defchoice, ppd->attrs[j]->value,
sizeof(option->defchoice));
@@ -1033,7 +1076,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
{
ppd_option_t *custom_option; /* Custom option */
- DEBUG_puts("2ppdOpen2: Processing Custom option...");
+ DEBUG_puts("2_ppdOpen: Processing Custom option...");
/*
* Get the option and custom option...
@@ -1060,7 +1103,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
if ((choice = ppdFindChoice(custom_option, "Custom")) == NULL)
if ((choice = ppd_add_choice(custom_option, "Custom")) == NULL)
{
- DEBUG_puts("1ppdOpen2: Unable to add Custom choice!");
+ DEBUG_puts("1_ppdOpen: Unable to add Custom choice!");
cg->ppd_status = PPD_ALLOC_ERROR;
@@ -1100,7 +1143,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
if ((choice = ppdFindChoice(custom_option, "Custom")) == NULL)
if ((choice = ppd_add_choice(custom_option, "Custom")) == NULL)
{
- DEBUG_puts("1ppdOpen2: Unable to add Custom choice!");
+ DEBUG_puts("1_ppdOpen: Unable to add Custom choice!");
cg->ppd_status = PPD_ALLOC_ERROR;
@@ -1241,7 +1284,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
* Add an option record to the current sub-group, group, or file...
*/
- DEBUG_printf(("2ppdOpen2: name=\"%s\" (%d)", name, (int)strlen(name)));
+ DEBUG_printf(("2_ppdOpen: name=\"%s\" (%d)", name, (int)strlen(name)));
if (name[0] == '*')
_cups_strcpy(name, name + 1); /* Eliminate leading asterisk */
@@ -1249,7 +1292,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
for (i = (int)strlen(name) - 1; i > 0 && _cups_isspace(name[i]); i --)
name[i] = '\0'; /* Eliminate trailing spaces */
- DEBUG_printf(("2ppdOpen2: OpenUI of %s in group %s...", name,
+ DEBUG_printf(("2_ppdOpen: OpenUI of %s in group %s...", name,
group ? group->text : "(null)"));
if (subgroup != NULL)
@@ -1260,7 +1303,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
encoding)) == NULL)
goto error;
- DEBUG_printf(("2ppdOpen2: Adding to group %s...", group->text));
+ DEBUG_printf(("2_ppdOpen: Adding to group %s...", group->text));
option = ppd_get_option(group, name);
group = NULL;
}
@@ -1298,7 +1341,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
!strcmp(ppd->attrs[j]->name + 7, name) &&
ppd->attrs[j]->value)
{
- DEBUG_printf(("2ppdOpen2: Setting Default%s to %s via attribute...",
+ DEBUG_printf(("2_ppdOpen: Setting Default%s to %s via attribute...",
option->keyword, ppd->attrs[j]->value));
strlcpy(option->defchoice, ppd->attrs[j]->value,
sizeof(option->defchoice));
@@ -1344,7 +1387,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
if ((choice = ppdFindChoice(option, "Custom")) == NULL)
if ((choice = ppd_add_choice(option, "Custom")) == NULL)
{
- DEBUG_puts("1ppdOpen2: Unable to add Custom choice!");
+ DEBUG_puts("1_ppdOpen: Unable to add Custom choice!");
cg->ppd_status = PPD_ALLOC_ERROR;
@@ -1417,7 +1460,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
!strcmp(ppd->attrs[j]->name + 7, name) &&
ppd->attrs[j]->value)
{
- DEBUG_printf(("2ppdOpen2: Setting Default%s to %s via attribute...",
+ DEBUG_printf(("2_ppdOpen: Setting Default%s to %s via attribute...",
option->keyword, ppd->attrs[j]->value));
strlcpy(option->defchoice, ppd->attrs[j]->value,
sizeof(option->defchoice));
@@ -1447,7 +1490,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
{
if ((choice = ppd_add_choice(option, "Custom")) == NULL)
{
- DEBUG_puts("1ppdOpen2: Unable to add Custom choice!");
+ DEBUG_puts("1_ppdOpen: Unable to add Custom choice!");
cg->ppd_status = PPD_ALLOC_ERROR;
@@ -1620,11 +1663,11 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
* Set the default as part of the current option...
*/
- DEBUG_printf(("2ppdOpen2: Setting %s to %s...", keyword, string));
+ DEBUG_printf(("2_ppdOpen: Setting %s to %s...", keyword, string));
strlcpy(option->defchoice, string, sizeof(option->defchoice));
- DEBUG_printf(("2ppdOpen2: %s is now %s...", keyword, option->defchoice));
+ DEBUG_printf(("2_ppdOpen: %s is now %s...", keyword, option->defchoice));
}
else
{
@@ -1637,7 +1680,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
if ((toption = ppdFindOption(ppd, keyword + 7)) != NULL)
{
- DEBUG_printf(("2ppdOpen2: Setting %s to %s...", keyword, string));
+ DEBUG_printf(("2_ppdOpen: Setting %s to %s...", keyword, string));
strlcpy(toption->defchoice, string, sizeof(toption->defchoice));
}
}
@@ -1874,7 +1917,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
(PPD_KEYWORD | PPD_OPTION | PPD_STRING) &&
!strcmp(keyword, option->keyword))
{
- DEBUG_printf(("2ppdOpen2: group=%p, subgroup=%p", group, subgroup));
+ DEBUG_printf(("2_ppdOpen: group=%p, subgroup=%p", group, subgroup));
if (!strcmp(keyword, "PageSize"))
{
@@ -1943,7 +1986,7 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
#ifdef DEBUG
if (!cupsFileEOF(fp))
- DEBUG_printf(("1ppdOpen2: Premature EOF at %lu...\n",
+ DEBUG_printf(("1_ppdOpen: Premature EOF at %lu...\n",
(unsigned long)cupsFileTell(fp)));
#endif /* DEBUG */
@@ -2027,6 +2070,53 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */
/*
+ * 'ppdOpen()' - Read a PPD file into memory.
+ */
+
+ppd_file_t * /* O - PPD file record */
+ppdOpen(FILE *fp) /* I - File to read from */
+{
+ ppd_file_t *ppd; /* PPD file record */
+ cups_file_t *cf; /* CUPS file */
+
+
+ /*
+ * Reopen the stdio file as a CUPS file...
+ */
+
+ if ((cf = cupsFileOpenFd(fileno(fp), "r")) == NULL)
+ return (NULL);
+
+ /*
+ * Load the PPD file using the newer API...
+ */
+
+ ppd = _ppdOpen(cf, _PPD_LOCALIZATION_DEFAULT);
+
+ /*
+ * Close the CUPS file and return the PPD...
+ */
+
+ cupsFileClose(cf);
+
+ return (ppd);
+}
+
+
+/*
+ * 'ppdOpen2()' - Read a PPD file into memory.
+ *
+ * @since CUPS 1.2/OS X 10.5@
+ */
+
+ppd_file_t * /* O - PPD file record or @code NULL@ if the PPD file could not be opened. */
+ppdOpen2(cups_file_t *fp) /* I - File to read from */
+{
+ return _ppdOpen(fp, _PPD_LOCALIZATION_DEFAULT);
+}
+
+
+/*
* 'ppdOpenFd()' - Read a PPD file into memory.
*/
@@ -2077,11 +2167,12 @@ ppdOpenFd(int fd) /* I - File to read from */
/*
- * 'ppdOpenFile()' - Read a PPD file into memory.
+ * '_ppdOpenFile()' - Read a PPD file into memory.
*/
ppd_file_t * /* O - PPD file record or @code NULL@ if the PPD file could not be opened. */
-ppdOpenFile(const char *filename) /* I - File to read from */
+_ppdOpenFile(const char *filename, /* I - File to read from */
+ _ppd_localization_t localization) /* I - Localization to load */
{
cups_file_t *fp; /* File pointer */
ppd_file_t *ppd; /* PPD file record */
@@ -2112,7 +2203,7 @@ ppdOpenFile(const char *filename) /* I - File to read from */
if ((fp = cupsFileOpen(filename, "r")) != NULL)
{
- ppd = ppdOpen2(fp);
+ ppd = _ppdOpen(fp, localization);
cupsFileClose(fp);
}
@@ -2127,9 +2218,20 @@ ppdOpenFile(const char *filename) /* I - File to read from */
/*
+ * 'ppdOpenFile()' - Read a PPD file into memory.
+ */
+
+ppd_file_t * /* O - PPD file record or @code NULL@ if the PPD file could not be opened. */
+ppdOpenFile(const char *filename) /* I - File to read from */
+{
+ return _ppdOpenFile(filename, _PPD_LOCALIZATION_DEFAULT);
+}
+
+
+/*
* 'ppdSetConformance()' - Set the conformance level for PPD files.
*
- * @since CUPS 1.1.20/Mac OS X 10.4@
+ * @since CUPS 1.1.20/OS X 10.4@
*/
void
@@ -2960,7 +3062,7 @@ ppd_read(cups_file_t *fp, /* I - File to read from */
DEBUG_printf(("9ppd_read: LINE=\"%s\"", line->buffer));
/*
- * The dynamically created PPDs for older style Mac OS X
+ * The dynamically created PPDs for older style OS X
* drivers include a large blob of data inserted as comments
* at the end of the file. As an optimization we can stop
* reading the PPD when we get to the start of this data.
@@ -3292,5 +3394,5 @@ ppd_update_filters(ppd_file_t *ppd,/* I - PPD file */
/*
- * End of "$Id: ppd.c 9901 2011-08-17 21:01:53Z mike $".
+ * End of "$Id: ppd.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/ppd.h b/cups/ppd.h
index 1d097624..bb743fca 100644
--- a/cups/ppd.h
+++ b/cups/ppd.h
@@ -1,9 +1,13 @@
/*
- * "$Id: ppd.h 9772 2011-05-12 05:46:30Z mike $"
+ * "$Id: ppd.h 10424 2012-04-23 17:26:57Z mike $"
*
* PostScript Printer Description definitions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * THESE APIS ARE DEPRECATED. TO COMPILE WITHOUT WARNINGS ADD
+ * -D_PPD_DEPRECATED="" TO YOUR COMPILE OPTIONS. THIS HEADER AND THESE
+ * FUNCTIONS WILL BE REMOVED IN A FUTURE RELEASE OF CUPS.
+ *
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -47,6 +51,28 @@ extern "C" {
/*
+ * Define _PPD_DEPRECATED to silence the warnings about PPD functions being
+ * deprecated...
+ */
+
+# ifndef _PPD_DEPRECATED
+# if defined(__APPLE__)
+# if defined(MAC_OS_X_VERSION_10_8) && MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_8
+ /* Building for OS X 10.7 and earlier */
+# define _PPD_DEPRECATED
+# elif !defined(MAC_OS_X_VERSION_10_8)
+ /* Building for OS X 10.7 and earlier */
+# define _PPD_DEPRECATED
+# else
+# define _PPD_DEPRECATED _CUPS_DEPRECATED
+# endif /* MAC_OS_X_VERSION_10_8 && MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_8 */
+# else
+# define _PPD_DEPRECATED _CUPS_DEPRECATED
+# endif /* __APPLE__ */
+# endif /* !_PPD_DEPRECATED */
+
+
+/*
* PPD version...
*/
@@ -93,7 +119,7 @@ typedef enum ppd_cs_e /**** Colorspaces ****/
PPD_CS_N /* DeviceN colorspace */
} ppd_cs_t;
-typedef enum ppd_status_e /**** Status Codes @since CUPS 1.1.19/Mac OS X 10.3@ ****/
+typedef enum ppd_status_e /**** Status Codes @since CUPS 1.1.19/OS X 10.3@ ****/
{
PPD_OK = 0, /* OK */
PPD_FILE_OPEN_ERROR, /* Unable to open PPD file */
@@ -122,16 +148,16 @@ typedef enum ppd_status_e /**** Status Codes @since CUPS 1.1.19/Mac OS X 10.3@
PPD_MAX_STATUS /* @private@ */
} ppd_status_t;
-enum ppd_conform_e /**** Conformance Levels @since CUPS 1.1.19/Mac OS X 10.3@ ****/
+enum ppd_conform_e /**** Conformance Levels @since CUPS 1.1.19/OS X 10.3@ ****/
{
PPD_CONFORM_RELAXED, /* Relax whitespace and control char */
PPD_CONFORM_STRICT /* Require strict conformance */
};
typedef enum ppd_conform_e ppd_conform_t;
- /**** Conformance Levels @since CUPS 1.1.19/Mac OS X 10.3@ ****/
+ /**** Conformance Levels @since CUPS 1.1.19/OS X 10.3@ ****/
-typedef struct ppd_attr_s /**** PPD Attribute Structure @since CUPS 1.1.19/Mac OS X 10.3@ ****/
+typedef struct ppd_attr_s /**** PPD Attribute Structure @since CUPS 1.1.19/OS X 10.3@ ****/
{
char name[PPD_MAX_NAME]; /* Name of attribute (cupsXYZ) */
char spec[PPD_MAX_NAME]; /* Specifier string, if any */
@@ -172,7 +198,7 @@ typedef struct ppd_group_s /**** Groups ****/
****/
char text[PPD_MAX_TEXT - PPD_MAX_NAME];
/* Human-readable group name */
- char name[PPD_MAX_NAME]; /* Group name @since CUPS 1.1.18/Mac OS X 10.3@ */
+ char name[PPD_MAX_NAME]; /* Group name @since CUPS 1.1.18/OS X 10.3@ */
int num_options; /* Number of options */
ppd_option_t *options; /* Options */
int num_subgroups; /* Number of sub-groups */
@@ -217,8 +243,8 @@ typedef struct ppd_profile_s /**** sRGB Color Profiles ****/
float matrix[3][3]; /* Transform matrix */
} ppd_profile_t;
-/**** New in CUPS 1.2/Mac OS X 10.5 ****/
-typedef enum ppd_cptype_e /**** Custom Parameter Type @since CUPS 1.2/Mac OS X 10.5@ ****/
+/**** New in CUPS 1.2/OS X 10.5 ****/
+typedef enum ppd_cptype_e /**** Custom Parameter Type @since CUPS 1.2/OS X 10.5@ ****/
{
PPD_CUSTOM_CURVE, /* Curve value for f(x) = x^value */
PPD_CUSTOM_INT, /* Integer number value */
@@ -230,7 +256,7 @@ typedef enum ppd_cptype_e /**** Custom Parameter Type @since CUPS 1.2/Mac OS X
PPD_CUSTOM_STRING /* String of characters */
} ppd_cptype_t;
-typedef union ppd_cplimit_u /**** Custom Parameter Limit @since CUPS 1.2/Mac OS X 10.5@ ****/
+typedef union ppd_cplimit_u /**** Custom Parameter Limit @since CUPS 1.2/OS X 10.5@ ****/
{
float custom_curve; /* Gamma value */
int custom_int; /* Integer value */
@@ -242,7 +268,7 @@ typedef union ppd_cplimit_u /**** Custom Parameter Limit @since CUPS 1.2/Mac OS
int custom_string; /* String length */
} ppd_cplimit_t;
-typedef union ppd_cpvalue_u /**** Custom Parameter Value @since CUPS 1.2/Mac OS X 10.5@ ****/
+typedef union ppd_cpvalue_u /**** Custom Parameter Value @since CUPS 1.2/OS X 10.5@ ****/
{
float custom_curve; /* Gamma value */
int custom_int; /* Integer value */
@@ -254,7 +280,7 @@ typedef union ppd_cpvalue_u /**** Custom Parameter Value @since CUPS 1.2/Mac OS
char *custom_string; /* String value */
} ppd_cpvalue_t;
-typedef struct ppd_cparam_s /**** Custom Parameter @since CUPS 1.2/Mac OS X 10.5@ ****/
+typedef struct ppd_cparam_s /**** Custom Parameter @since CUPS 1.2/OS X 10.5@ ****/
{
char name[PPD_MAX_NAME]; /* Parameter name */
char text[PPD_MAX_TEXT]; /* Human-readable text */
@@ -265,7 +291,7 @@ typedef struct ppd_cparam_s /**** Custom Parameter @since CUPS 1.2/Mac OS X 10.
ppd_cpvalue_t current; /* Current value */
} ppd_cparam_t;
-typedef struct ppd_coption_s /**** Custom Option @since CUPS 1.2/Mac OS X 10.5@ ****/
+typedef struct ppd_coption_s /**** Custom Option @since CUPS 1.2/OS X 10.5@ ****/
{
char keyword[PPD_MAX_NAME]; /* Name of option that is being extended... */
ppd_option_t *option; /* Option that is being extended... */
@@ -274,7 +300,7 @@ typedef struct ppd_coption_s /**** Custom Option @since CUPS 1.2/Mac OS X 10.5@
} ppd_coption_t;
typedef struct _ppd_cache_s _ppd_cache_t;
- /**** PPD cache and mapping data @since CUPS 1.5/Mac OS X 10.7@ @private@ ****/
+ /**** PPD cache and mapping data @since CUPS 1.5/OS X 10.7@ @private@ ****/
typedef struct ppd_file_s /**** PPD File ****/
{
@@ -322,25 +348,25 @@ typedef struct ppd_file_s /**** PPD File ****/
int flip_duplex; /* 1 = Flip page for back sides @deprecated@ */
/**** New in CUPS 1.1.19 ****/
- char *protocols; /* Protocols (BCP, TBCP) string @since CUPS 1.1.19/Mac OS X 10.3@ */
- char *pcfilename; /* PCFileName string @since CUPS 1.1.19/Mac OS X 10.3@ */
- int num_attrs; /* Number of attributes @since CUPS 1.1.19/Mac OS X 10.3@ @private@ */
- int cur_attr; /* Current attribute @since CUPS 1.1.19/Mac OS X 10.3@ @private@ */
- ppd_attr_t **attrs; /* Attributes @since CUPS 1.1.19/Mac OS X 10.3@ @private@ */
+ char *protocols; /* Protocols (BCP, TBCP) string @since CUPS 1.1.19/OS X 10.3@ */
+ char *pcfilename; /* PCFileName string @since CUPS 1.1.19/OS X 10.3@ */
+ int num_attrs; /* Number of attributes @since CUPS 1.1.19/OS X 10.3@ @private@ */
+ int cur_attr; /* Current attribute @since CUPS 1.1.19/OS X 10.3@ @private@ */
+ ppd_attr_t **attrs; /* Attributes @since CUPS 1.1.19/OS X 10.3@ @private@ */
- /**** New in CUPS 1.2/Mac OS X 10.5 ****/
- cups_array_t *sorted_attrs; /* Attribute lookup array @since CUPS 1.2/Mac OS X 10.5@ @private@ */
- cups_array_t *options; /* Option lookup array @since CUPS 1.2/Mac OS X 10.5@ @private@ */
- cups_array_t *coptions; /* Custom options array @since CUPS 1.2/Mac OS X 10.5@ @private@ */
+ /**** New in CUPS 1.2/OS X 10.5 ****/
+ cups_array_t *sorted_attrs; /* Attribute lookup array @since CUPS 1.2/OS X 10.5@ @private@ */
+ cups_array_t *options; /* Option lookup array @since CUPS 1.2/OS X 10.5@ @private@ */
+ cups_array_t *coptions; /* Custom options array @since CUPS 1.2/OS X 10.5@ @private@ */
- /**** New in CUPS 1.3/Mac OS X 10.5 ****/
- cups_array_t *marked; /* Marked choices @since CUPS 1.3/Mac OS X 10.5@ @private@ */
+ /**** New in CUPS 1.3/OS X 10.5 ****/
+ cups_array_t *marked; /* Marked choices @since CUPS 1.3/OS X 10.5@ @private@ */
- /**** New in CUPS 1.4/Mac OS X 10.6 ****/
- cups_array_t *cups_uiconstraints; /* cupsUIConstraints @since CUPS 1.4/Mac OS X 10.6@ @private@ */
+ /**** New in CUPS 1.4/OS X 10.6 ****/
+ cups_array_t *cups_uiconstraints; /* cupsUIConstraints @since CUPS 1.4/OS X 10.6@ @private@ */
/**** New in CUPS 1.5 ****/
- _ppd_cache_t *cache; /* PPD cache and mapping data @since CUPS 1.5/Mac OS X 10.7@ @private@ */
+ _ppd_cache_t *cache; /* PPD cache and mapping data @since CUPS 1.5/OS X 10.7@ @private@ */
} ppd_file_t;
@@ -361,7 +387,8 @@ extern int ppdEmitFd(ppd_file_t *ppd, int fd,
extern int ppdEmitJCL(ppd_file_t *ppd, FILE *fp, int job_id,
const char *user, const char *title);
extern ppd_choice_t *ppdFindChoice(ppd_option_t *o, const char *option);
-extern ppd_choice_t *ppdFindMarkedChoice(ppd_file_t *ppd, const char *keyword);
+extern ppd_choice_t *ppdFindMarkedChoice(ppd_file_t *ppd,
+ const char *keyword);
extern ppd_option_t *ppdFindOption(ppd_file_t *ppd, const char *keyword);
extern int ppdIsMarked(ppd_file_t *ppd, const char *keyword,
const char *option);
@@ -376,64 +403,67 @@ extern ppd_size_t *ppdPageSize(ppd_file_t *ppd, const char *name);
extern float ppdPageWidth(ppd_file_t *ppd, const char *name);
/**** New in CUPS 1.1.19 ****/
-extern const char *ppdErrorString(ppd_status_t status) _CUPS_API_1_1_19;
+extern const char *ppdErrorString(ppd_status_t status) _PPD_DEPRECATED;
extern ppd_attr_t *ppdFindAttr(ppd_file_t *ppd, const char *name,
- const char *spec) _CUPS_API_1_1_19;
+ const char *spec) _PPD_DEPRECATED;
extern ppd_attr_t *ppdFindNextAttr(ppd_file_t *ppd, const char *name,
- const char *spec) _CUPS_API_1_1_19;
-extern ppd_status_t ppdLastError(int *line) _CUPS_API_1_1_19;
+ const char *spec) _PPD_DEPRECATED;
+extern ppd_status_t ppdLastError(int *line) _PPD_DEPRECATED;
/**** New in CUPS 1.1.20 ****/
-extern void ppdSetConformance(ppd_conform_t c) _CUPS_API_1_1_20;
+extern void ppdSetConformance(ppd_conform_t c) _PPD_DEPRECATED;
/**** New in CUPS 1.2 ****/
extern int ppdCollect2(ppd_file_t *ppd, ppd_section_t section,
- float min_order, ppd_choice_t ***choices) _CUPS_API_1_2;
+ float min_order, ppd_choice_t ***choices)
+ _PPD_DEPRECATED;
extern int ppdEmitAfterOrder(ppd_file_t *ppd, FILE *fp,
ppd_section_t section, int limit,
- float min_order) _CUPS_API_1_2;
-extern int ppdEmitJCLEnd(ppd_file_t *ppd, FILE *fp) _CUPS_API_1_2;
+ float min_order) _PPD_DEPRECATED;
+extern int ppdEmitJCLEnd(ppd_file_t *ppd, FILE *fp) _PPD_DEPRECATED;
extern char *ppdEmitString(ppd_file_t *ppd, ppd_section_t section,
- float min_order) _CUPS_API_1_2;
+ float min_order) _PPD_DEPRECATED;
extern ppd_coption_t *ppdFindCustomOption(ppd_file_t *ppd,
- const char *keyword) _CUPS_API_1_2;
+ const char *keyword) _PPD_DEPRECATED;
extern ppd_cparam_t *ppdFindCustomParam(ppd_coption_t *opt,
- const char *name) _CUPS_API_1_2;
-extern ppd_cparam_t *ppdFirstCustomParam(ppd_coption_t *opt) _CUPS_API_1_2;
-extern ppd_option_t *ppdFirstOption(ppd_file_t *ppd) _CUPS_API_1_2;
-extern ppd_cparam_t *ppdNextCustomParam(ppd_coption_t *opt) _CUPS_API_1_2;
-extern ppd_option_t *ppdNextOption(ppd_file_t *ppd) _CUPS_API_1_2;
-extern int ppdLocalize(ppd_file_t *ppd) _CUPS_API_1_2;
-extern ppd_file_t *ppdOpen2(cups_file_t *fp) _CUPS_API_1_2;
-
-/**** New in CUPS 1.3/Mac OS X 10.5 ****/
+ const char *name) _PPD_DEPRECATED;
+extern ppd_cparam_t *ppdFirstCustomParam(ppd_coption_t *opt) _PPD_DEPRECATED;
+extern ppd_option_t *ppdFirstOption(ppd_file_t *ppd) _PPD_DEPRECATED;
+extern ppd_cparam_t *ppdNextCustomParam(ppd_coption_t *opt) _PPD_DEPRECATED;
+extern ppd_option_t *ppdNextOption(ppd_file_t *ppd) _PPD_DEPRECATED;
+extern int ppdLocalize(ppd_file_t *ppd) _PPD_DEPRECATED;
+extern ppd_file_t *ppdOpen2(cups_file_t *fp) _PPD_DEPRECATED;
+
+/**** New in CUPS 1.3/OS X 10.5 ****/
extern const char *ppdLocalizeIPPReason(ppd_file_t *ppd,
const char *reason,
const char *scheme,
char *buffer,
- size_t bufsize) _CUPS_API_1_3;
+ size_t bufsize) _PPD_DEPRECATED;
-/**** New in CUPS 1.4/Mac OS X 10.6 ****/
+/**** New in CUPS 1.4/OS X 10.6 ****/
extern int cupsGetConflicts(ppd_file_t *ppd, const char *option,
const char *choice,
cups_option_t **options)
- _CUPS_API_1_4;
-extern int cupsResolveConflicts(ppd_file_t *ppd, const char *option,
+ _PPD_DEPRECATED;
+extern int cupsResolveConflicts(ppd_file_t *ppd,
+ const char *option,
const char *choice,
int *num_options,
cups_option_t **options)
- _CUPS_API_1_4;
+ _PPD_DEPRECATED;
extern int ppdInstallableConflict(ppd_file_t *ppd,
const char *option,
const char *choice)
- _CUPS_API_1_4;
+ _PPD_DEPRECATED;
extern ppd_attr_t *ppdLocalizeAttr(ppd_file_t *ppd, const char *keyword,
- const char *spec) _CUPS_API_1_4;
+ const char *spec) _PPD_DEPRECATED;
extern const char *ppdLocalizeMarkerName(ppd_file_t *ppd,
- const char *name) _CUPS_API_1_4;
+ const char *name)
+ _PPD_DEPRECATED;
extern int ppdPageSizeLimits(ppd_file_t *ppd,
ppd_size_t *minimum,
- ppd_size_t *maximum) _CUPS_API_1_4;
+ ppd_size_t *maximum) _PPD_DEPRECATED;
/*
@@ -446,5 +476,5 @@ extern int ppdPageSizeLimits(ppd_file_t *ppd,
#endif /* !_CUPS_PPD_H_ */
/*
- * End of "$Id: ppd.h 9772 2011-05-12 05:46:30Z mike $".
+ * End of "$Id: ppd.h 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/pwg-media.c b/cups/pwg-media.c
index 3bfbc242..7a03abfa 100644
--- a/cups/pwg-media.c
+++ b/cups/pwg-media.c
@@ -1,5 +1,5 @@
/*
- * "$Id: pwg-media.c 10340 2012-03-07 17:16:42Z mike $"
+ * "$Id: pwg-media.c 10453 2012-05-04 23:38:53Z mike $"
*
* PWG media name API implementation for CUPS.
*
@@ -15,17 +15,6 @@
*
* Contents:
*
- * _pwgGenerateSize() - Generate a PWG size keyword.
- * _pwgInitSize() - Initialize a PWG size using IPP job template
- * attributes.
- * _pwgMediaForLegacy() - Find a PWG media size by ISO/IPP legacy name.
- * _pwgMediaForPPD() - Find a PWG media size by Adobe PPD name.
- * _pwgMediaForPWG() - Find a PWG media size by 5101.1 self-describing
- * name.
- * _pwgMediaForSize() - Get the PWG media name for a given size.
- * pwg_compare_legacy() - Compare two sizes using the legacy names.
- * pwg_compare_ppd() - Compare two sizes using the PPD names.
- * pwg_compare_pwg() - Compare two sizes using the PWG names.
*/
/*
@@ -66,7 +55,7 @@ static _pwg_media_t const cups_pwg_media[] =
_PWG_MEDIA_IN("na_number-9_3.875x8.875in", "na-number-9-envelope", "Env9", 3.875, 8.875),
_PWG_MEDIA_IN("na_index-4x6_4x6in", NULL, "4x6", 4, 6),
_PWG_MEDIA_IN("na_number-10_4.125x9.5in", "na-number-10-envelope", "Env10", 4.125, 9.5),
- _PWG_MEDIA_IN("na_a2_4.375x5.75in", NULL, NULL, 4.375, 5.75),
+ _PWG_MEDIA_IN("na_a2_4.375x5.75in", NULL, "EnvA2", 4.375, 5.75),
_PWG_MEDIA_IN("na_number-11_4.5x10.375in", NULL, "Env11", 4.5, 10.375),
_PWG_MEDIA_IN("na_number-12_4.75x11in", NULL, "Env12", 4.75, 11),
_PWG_MEDIA_IN("na_5x7_5x7in", NULL, "5x7", 5, 7),
@@ -204,6 +193,7 @@ static _pwg_media_t const cups_pwg_media[] =
_PWG_MEDIA_MM("jpn_chou4_90x205mm", NULL, "EnvChou4", 90, 205),
_PWG_MEDIA_MM("jpn_hagaki_100x148mm", NULL, "Postcard", 100, 148),
_PWG_MEDIA_MM("jpn_you4_105x235mm", NULL, "EnvYou4", 105, 235),
+ _PWG_MEDIA_MM("jpn_you6_98x190mm", NULL, "EnvYou6", 98, 190),
_PWG_MEDIA_MM("jpn_chou2_111.1x146mm", NULL, NULL, 111.1, 146),
_PWG_MEDIA_MM("jpn_chou3_120x235mm", NULL, "EnvChou3", 120, 235),
_PWG_MEDIA_MM("jpn_oufuku_148x200mm", NULL, "DoublePostcardRotated", 148, 200),
@@ -230,7 +220,7 @@ static _pwg_media_t const cups_pwg_media[] =
_PWG_MEDIA_IN("oe_photo-l_3.5x5in", NULL, "3.5x5", 3.5, 5),
/* Other Metric Standard Sheet Media Sizes */
- _PWG_MEDIA_MM("om_small-photo_100x150mm", NULL, NULL, 100, 150),
+ _PWG_MEDIA_MM("om_small-photo_100x150mm", NULL, "om_small-photo", 100, 150),
_PWG_MEDIA_MM("om_italian_110x230mm", NULL, "EnvItalian", 110, 230),
_PWG_MEDIA_MM("om_postfix_114x229mm", NULL, NULL, 114, 229),
_PWG_MEDIA_MM("om_large-photo_200x300", NULL, "om_large-photo", 200, 300),
@@ -241,6 +231,83 @@ static _pwg_media_t const cups_pwg_media[] =
/*
+ * '_pwgFormatInches()' - Convert and format PWG units as inches.
+ */
+
+char * /* O - String */
+_pwgFormatInches(char *buf, /* I - Buffer */
+ size_t bufsize, /* I - Size of buffer */
+ int val) /* I - Value in hundredths of millimeters */
+{
+ int thousandths, /* Thousandths of inches */
+ integer, /* Integer portion */
+ fraction; /* Fractional portion */
+
+
+ /*
+ * Convert hundredths of millimeters to thousandths of inches and round to
+ * the nearest thousandth.
+ */
+
+ thousandths = (val * 1000 + 1270) / 2540;
+ integer = thousandths / 1000;
+ fraction = thousandths % 1000;
+
+ /*
+ * Format as a pair of integers (avoids locale stuff), avoiding trailing
+ * zeros...
+ */
+
+ if (fraction == 0)
+ snprintf(buf, bufsize, "%d", integer);
+ else if (fraction % 10)
+ snprintf(buf, bufsize, "%d.%03d", integer, fraction);
+ else if (fraction % 100)
+ snprintf(buf, bufsize, "%d.%02d", integer, fraction / 10);
+ else
+ snprintf(buf, bufsize, "%d.%01d", integer, fraction / 100);
+
+ return (buf);
+}
+
+
+/*
+ * '_pwgFormatMillimeters()' - Convert and format PWG units as millimeters.
+ */
+
+char * /* O - String */
+_pwgFormatMillimeters(char *buf, /* I - Buffer */
+ size_t bufsize, /* I - Size of buffer */
+ int val) /* I - Value in hundredths of millimeters */
+{
+ int integer, /* Integer portion */
+ fraction; /* Fractional portion */
+
+
+ /*
+ * Convert hundredths of millimeters to integer and fractional portions.
+ */
+
+ integer = val / 100;
+ fraction = val % 100;
+
+ /*
+ * Format as a pair of integers (avoids locale stuff), avoiding trailing
+ * zeros...
+ */
+
+ if (fraction == 0)
+ snprintf(buf, bufsize, "%d", integer);
+ else if (fraction % 10)
+ snprintf(buf, bufsize, "%d.%02d", integer, fraction);
+ else
+ snprintf(buf, bufsize, "%d.%01d", integer, fraction / 10);
+
+ return (buf);
+}
+
+
+/*
* '_pwgGenerateSize()' - Generate a PWG size keyword.
*/
@@ -252,25 +319,21 @@ _pwgGenerateSize(char *keyword, /* I - Keyword buffer */
int width, /* I - Width of page in 2540ths */
int length) /* I - Length of page in 2540ths */
{
- struct lconv *loc; /* Locale conversion data */
- double uwidth, /* Width in inches or millimeters */
- ulength; /* Height in inches or millimeters */
const char *units; /* Units to report */
char usize[12 + 1 + 12 + 3], /* Unit size: NNNNNNNNNNNNxNNNNNNNNNNNNuu */
*uptr; /* Pointer into unit size */
+ char *(*format)(char *, size_t, int);
+ /* Formatting function */
- loc = localeconv();
-
if ((width % 635) == 0 && (length % 635) == 0)
{
/*
* Use inches since the size is a multiple of 1/4 inch.
*/
- uwidth = width / 2540.0;
- ulength = length / 2540.0;
units = "in";
+ format = _pwgFormatInches;
if (!prefix)
prefix = "oe";
@@ -281,26 +344,25 @@ _pwgGenerateSize(char *keyword, /* I - Keyword buffer */
* Use millimeters since the size is not a multiple of 1/4 inch.
*/
- uwidth = width * 0.01;
- ulength = length * 0.01;
units = "mm";
+ format = _pwgFormatMillimeters;
if (!prefix)
prefix = "om";
}
uptr = usize;
- _cupsStrFormatd(uptr, uptr + 12, uwidth, loc);
+ (*format)(uptr, sizeof(usize) - (uptr - usize), width);
uptr += strlen(uptr);
*uptr++ = 'x';
- _cupsStrFormatd(uptr, uptr + 12, ulength, loc);
+ (*format)(uptr, sizeof(usize) - (uptr - usize), length);
uptr += strlen(uptr);
/*
* Safe because usize can hold up to 12 + 1 + 12 + 4 bytes.
*/
- strcpy(uptr, units);
+ memcpy(uptr, units, 3);
if (!name)
name = usize;
@@ -760,8 +822,11 @@ _pwgMediaForSize(int width, /* I - Width in 2540ths */
int length) /* I - Length in 2540ths */
{
int i; /* Looping var */
- _pwg_media_t *media; /* Current media */
- int dw, dl; /* Difference in width and length */
+ _pwg_media_t *media, /* Current media */
+ *best_media = NULL; /* Best match */
+ int dw, dl, /* Difference in width and length */
+ best_dw = 999, /* Best difference in width and length */
+ best_dl = 999;
_cups_globals_t *cg = _cupsGlobals(); /* Global data */
@@ -786,13 +851,25 @@ _pwgMediaForSize(int width, /* I - Width in 2540ths */
* is just about 176/2540ths...
*/
- dw = media->width - width;
- dl = media->length - length;
+ dw = abs(media->width - width);
+ dl = abs(media->length - length);
- if (dw > -176 && dw < 176 && dl > -176 && dl < 176)
+ if (!dw && !dl)
return (media);
+ else if (dw < 176 && dl < 176)
+ {
+ if (dw <= best_dw && dl <= best_dl)
+ {
+ best_media = media;
+ best_dw = dw;
+ best_dl = dl;
+ }
+ }
}
+ if (best_media)
+ return (best_media);
+
/*
* Not a standard size; convert it to a PWG custom name of the form:
*
@@ -847,5 +924,5 @@ pwg_compare_pwg(_pwg_media_t *a, /* I - First size */
/*
- * End of "$Id: pwg-media.c 10340 2012-03-07 17:16:42Z mike $".
+ * End of "$Id: pwg-media.c 10453 2012-05-04 23:38:53Z mike $".
*/
diff --git a/cups/pwg-private.h b/cups/pwg-private.h
index 1d00e839..674e1110 100644
--- a/cups/pwg-private.h
+++ b/cups/pwg-private.h
@@ -1,9 +1,9 @@
/*
- * "$Id: pwg-private.h 10245 2012-02-11 02:24:44Z mike $"
+ * "$Id: pwg-private.h 10453 2012-05-04 23:38:53Z mike $"
*
* Private PWG media API definitions for CUPS.
*
- * Copyright 2009-2010 by Apple Inc.
+ * Copyright 2009-2012 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -79,6 +79,9 @@ typedef struct _pwg_size_s /**** Size element - PPD to/from PWG */
* Functions...
*/
+extern char *_pwgFormatInches(char *buf, size_t bufsize, int val);
+extern char *_pwgFormatMillimeters(char *buf, size_t bufsize,
+ int val);
extern void _pwgGenerateSize(char *keyword, size_t keysize,
const char *prefix,
const char *name,
@@ -90,7 +93,6 @@ extern _pwg_media_t *_pwgMediaForPPD(const char *ppd);
extern _pwg_media_t *_pwgMediaForPWG(const char *pwg);
extern _pwg_media_t *_pwgMediaForSize(int width, int length);
-
# ifdef __cplusplus
}
# endif /* __cplusplus */
@@ -98,5 +100,5 @@ extern _pwg_media_t *_pwgMediaForSize(int width, int length);
#endif /* !_CUPS_PWG_PRIVATE_H_ */
/*
- * End of "$Id: pwg-private.h 10245 2012-02-11 02:24:44Z mike $".
+ * End of "$Id: pwg-private.h 10453 2012-05-04 23:38:53Z mike $".
*/
diff --git a/cups/raster-private.h b/cups/raster-private.h
new file mode 100644
index 00000000..07c01e1e
--- /dev/null
+++ b/cups/raster-private.h
@@ -0,0 +1,66 @@
+/*
+ * "$Id: raster-private.h 10404 2012-04-13 18:01:35Z mike $"
+ *
+ * Private image library definitions for CUPS.
+ *
+ * Copyright 2007-2011 by Apple Inc.
+ * Copyright 1993-2006 by Easy Software Products.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * This file is subject to the Apple OS-Developed Software exception.
+ */
+
+#ifndef _CUPS_RASTER_PRIVATE_H_
+# define _CUPS_RASTER_PRIVATE_H_
+
+/*
+ * Include necessary headers...
+ */
+
+# include "raster.h"
+# include <cups/cups.h>
+# include <cups/debug-private.h>
+# include <cups/string-private.h>
+# ifdef WIN32
+# include <io.h>
+# include <winsock2.h> /* for htonl() definition */
+# else
+# include <unistd.h>
+# include <fcntl.h>
+# endif /* WIN32 */
+
+
+/*
+ * min/max macros...
+ */
+
+# ifndef max
+# define max(a,b) ((a) > (b) ? (a) : (b))
+# endif /* !max */
+# ifndef min
+# define min(a,b) ((a) < (b) ? (a) : (b))
+# endif /* !min */
+
+
+/*
+ * Prototypes...
+ */
+
+extern int _cupsRasterExecPS(cups_page_header2_t *h,
+ int *preferred_bits,
+ const char *code)
+ __attribute__((nonnull(3)));
+extern void _cupsRasterAddError(const char *f, ...)
+ __attribute__((__format__(__printf__, 1, 2)));
+extern void _cupsRasterClearError(void);
+
+#endif /* !_CUPS_RASTER_PRIVATE_H_ */
+
+/*
+ * End of "$Id: raster-private.h 10404 2012-04-13 18:01:35Z mike $".
+ */
diff --git a/cups/raster.h b/cups/raster.h
index 0516a93d..d1bb3eaa 100644
--- a/cups/raster.h
+++ b/cups/raster.h
@@ -1,9 +1,9 @@
/*
- * "$Id: raster.h 9772 2011-05-12 05:46:30Z mike $"
+ * "$Id: raster.h 10424 2012-04-23 17:26:57Z mike $"
*
* Raster file definitions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* This file is part of the CUPS Imaging library.
@@ -117,28 +117,28 @@ typedef enum cups_cspace_e /**** cupsColorSpace attribute values ****/
CUPS_CSPACE_GOLD = 13, /* Gold foil @deprecated@ */
CUPS_CSPACE_SILVER = 14, /* Silver foil @deprecated@ */
- CUPS_CSPACE_CIEXYZ = 15, /* CIE XYZ @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_CIELab = 16, /* CIE Lab @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_RGBW = 17, /* Red, green, blue, white (DeviceRGB, sRGB by default) @since CUPS 1.2/Mac OS X 10.5@ */
+ CUPS_CSPACE_CIEXYZ = 15, /* CIE XYZ @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_CIELab = 16, /* CIE Lab @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_RGBW = 17, /* Red, green, blue, white (DeviceRGB, sRGB by default) @since CUPS 1.2/OS X 10.5@ */
CUPS_CSPACE_SW = 18, /* Luminance (gamma 2.2) @since CUPS 1.4.5@ */
CUPS_CSPACE_SRGB = 19, /* Red, green, blue (sRGB) @since CUPS 1.4.5@ */
CUPS_CSPACE_ADOBERGB = 20, /* Red, green, blue (Adobe RGB) @since CUPS 1.4.5@ */
- CUPS_CSPACE_ICC1 = 32, /* ICC-based, 1 color @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICC2 = 33, /* ICC-based, 2 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICC3 = 34, /* ICC-based, 3 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICC4 = 35, /* ICC-based, 4 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICC5 = 36, /* ICC-based, 5 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICC6 = 37, /* ICC-based, 6 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICC7 = 38, /* ICC-based, 7 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICC8 = 39, /* ICC-based, 8 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICC9 = 40, /* ICC-based, 9 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICCA = 41, /* ICC-based, 10 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICCB = 42, /* ICC-based, 11 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICCC = 43, /* ICC-based, 12 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICCD = 44, /* ICC-based, 13 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICCE = 45, /* ICC-based, 14 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
- CUPS_CSPACE_ICCF = 46, /* ICC-based, 15 colors @since CUPS 1.1.19/Mac OS X 10.3@ */
+ CUPS_CSPACE_ICC1 = 32, /* ICC-based, 1 color @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICC2 = 33, /* ICC-based, 2 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICC3 = 34, /* ICC-based, 3 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICC4 = 35, /* ICC-based, 4 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICC5 = 36, /* ICC-based, 5 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICC6 = 37, /* ICC-based, 6 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICC7 = 38, /* ICC-based, 7 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICC8 = 39, /* ICC-based, 8 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICC9 = 40, /* ICC-based, 9 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICCA = 41, /* ICC-based, 10 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICCB = 42, /* ICC-based, 11 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICCC = 43, /* ICC-based, 12 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICCD = 44, /* ICC-based, 13 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICCE = 45, /* ICC-based, 14 colors @since CUPS 1.1.19/OS X 10.3@ */
+ CUPS_CSPACE_ICCF = 46, /* ICC-based, 15 colors @since CUPS 1.1.19/OS X 10.3@ */
CUPS_CSPACE_DEVICE1 = 48, /* DeviceN, 1 color @since CUPS 1.4.5@ */
CUPS_CSPACE_DEVICE2 = 49, /* DeviceN, 2 colors @since CUPS 1.4.5@ */
@@ -186,8 +186,8 @@ enum cups_mode_e /**** cupsRasterOpen modes ****/
{
CUPS_RASTER_READ = 0, /* Open stream for reading */
CUPS_RASTER_WRITE = 1, /* Open stream for writing */
- CUPS_RASTER_WRITE_COMPRESSED = 2, /* Open stream for compressed writing @since CUPS 1.3/Mac OS X 10.5@ */
- CUPS_RASTER_WRITE_PWG = 3 /* Open stream for compressed writing in PWG mode @since CUPS 1.5/Mac OS X 10.7@ */
+ CUPS_RASTER_WRITE_COMPRESSED = 2, /* Open stream for compressed writing @since CUPS 1.3/OS X 10.5@ */
+ CUPS_RASTER_WRITE_PWG = 3 /* Open stream for compressed writing in PWG mode @since CUPS 1.5/OS X 10.7@ */
};
typedef enum cups_mode_e cups_mode_t; /**** cupsRasterOpen modes ****/
@@ -266,7 +266,7 @@ typedef struct cups_page_header_s /**** Version 1 page header @deprecated@ ****/
} cups_page_header_t;
/**** New in CUPS 1.2 ****/
-typedef struct cups_page_header2_s /**** Version 2 page header @since CUPS 1.2/Mac OS X 10.5@ ****/
+typedef struct cups_page_header2_s /**** Version 2 page header @since CUPS 1.2/OS X 10.5@ ****/
{
/**** Standard Page Device Dictionary String Values ****/
char MediaClass[64]; /* MediaClass string */
@@ -314,20 +314,20 @@ typedef struct cups_page_header2_s /**** Version 2 page header @since CUPS 1.2/M
unsigned cupsRowStep; /* Spacing between lines */
/**** Version 2 Dictionary Values ****/
- unsigned cupsNumColors; /* Number of color compoents @since CUPS 1.2/Mac OS X 10.5@ */
+ unsigned cupsNumColors; /* Number of color compoents @since CUPS 1.2/OS X 10.5@ */
float cupsBorderlessScalingFactor;
- /* Scaling that was applied to page data @since CUPS 1.2/Mac OS X 10.5@ */
+ /* Scaling that was applied to page data @since CUPS 1.2/OS X 10.5@ */
float cupsPageSize[2]; /* Floating point PageSize (scaling *
- * factor not applied) @since CUPS 1.2/Mac OS X 10.5@ */
+ * factor not applied) @since CUPS 1.2/OS X 10.5@ */
float cupsImagingBBox[4]; /* Floating point ImagingBoundingBox
* (scaling factor not applied, left,
- * bottom, right, top) @since CUPS 1.2/Mac OS X 10.5@ */
- unsigned cupsInteger[16]; /* User-defined integer values @since CUPS 1.2/Mac OS X 10.5@ */
- float cupsReal[16]; /* User-defined floating-point values @since CUPS 1.2/Mac OS X 10.5@ */
- char cupsString[16][64]; /* User-defined string values @since CUPS 1.2/Mac OS X 10.5@ */
- char cupsMarkerType[64]; /* Ink/toner type @since CUPS 1.2/Mac OS X 10.5@ */
- char cupsRenderingIntent[64];/* Color rendering intent @since CUPS 1.2/Mac OS X 10.5@ */
- char cupsPageSizeName[64]; /* PageSize name @since CUPS 1.2/Mac OS X 10.5@ */
+ * bottom, right, top) @since CUPS 1.2/OS X 10.5@ */
+ unsigned cupsInteger[16]; /* User-defined integer values @since CUPS 1.2/OS X 10.5@ */
+ float cupsReal[16]; /* User-defined floating-point values @since CUPS 1.2/OS X 10.5@ */
+ char cupsString[16][64]; /* User-defined string values @since CUPS 1.2/OS X 10.5@ */
+ char cupsMarkerType[64]; /* Ink/toner type @since CUPS 1.2/OS X 10.5@ */
+ char cupsRenderingIntent[64];/* Color rendering intent @since CUPS 1.2/OS X 10.5@ */
+ char cupsPageSizeName[64]; /* PageSize name @since CUPS 1.2/OS X 10.5@ */
} cups_page_header2_t;
typedef struct _cups_raster_s cups_raster_t;
@@ -401,5 +401,5 @@ extern cups_raster_t *cupsRasterOpenIO(cups_raster_iocb_t iocb, void *ctx,
#endif /* !_CUPS_RASTER_H_ */
/*
- * End of "$Id: raster.h 9772 2011-05-12 05:46:30Z mike $".
+ * End of "$Id: raster.h 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/request.c b/cups/request.c
index 885c01ba..edf22cbe 100644
--- a/cups/request.c
+++ b/cups/request.c
@@ -1,9 +1,9 @@
/*
- * "$Id: request.c 10015 2011-09-21 22:09:29Z mike $"
+ * "$Id: request.c 10462 2012-05-12 00:07:16Z mike $"
*
* IPP utilities for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -112,7 +112,7 @@ cupsDoFileRequest(http_t *http, /* I - Connection to server or @code CUPS_HT
* If "outfile" is a valid file descriptor, cupsDoIORequest() copies
* all of the data after the IPP response message to the file.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
ipp_t * /* O - Response data */
@@ -335,7 +335,7 @@ cupsDoRequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP_
* additional data, use httpRead() after getting a successful response,
* otherwise call httpFlush() to complete the response processing.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
ipp_t * /* O - Response or @code NULL@ on HTTP error */
@@ -415,9 +415,8 @@ cupsGetResponse(http_t *http, /* I - Connection to server or @code CUPS_HTTP
ippDelete(response);
response = NULL;
- _cupsSetError(IPP_SERVICE_UNAVAILABLE, NULL, 0);
http->status = status = HTTP_ERROR;
- http->error = EIO;
+ http->error = EINVAL;
}
}
else if (status != HTTP_ERROR)
@@ -476,10 +475,6 @@ cupsGetResponse(http_t *http, /* I - Connection to server or @code CUPS_HTTP
attr ? attr->values[0].string.text :
ippErrorString(response->request.status.status_code), 0);
}
- else if (status == HTTP_ERROR)
- _cupsSetError(IPP_INTERNAL_ERROR, strerror(http->error), 0);
- else if (status != HTTP_OK)
- _cupsSetHTTPError(status);
return (response);
}
@@ -499,7 +494,7 @@ cupsLastError(void)
/*
* 'cupsLastErrorString()' - Return the last IPP status-message.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
const char * /* O - status-message text from last request */
@@ -545,7 +540,7 @@ _cupsNextDelay(int current, /* I - Current delay value or 0 */
* This function is used after cupsGetResponse() to read the PPD or document
* files for CUPS_GET_PPD and CUPS_GET_DOCUMENT requests, respectively.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
ssize_t /* O - Bytes read, 0 on EOF, -1 on error */
@@ -592,7 +587,7 @@ cupsReadResponseData(
* Unlike cupsDoFileRequest(), cupsDoIORequest(), and cupsDoRequest(), the
* request is not freed.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
http_status_t /* O - Initial HTTP status */
@@ -643,11 +638,10 @@ cupsSendRequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP
}
else if (http->state != HTTP_WAITING)
{
- DEBUG_printf(("1cupsSendRequest: Unknown HTTP state (%d), bailing.",
- http->state));
- _cupsSetError(IPP_INTERNAL_ERROR, strerror(EINVAL), 0);
-
- return (HTTP_ERROR);
+ DEBUG_printf(("1cupsSendRequest: Unknown HTTP state (%d), "
+ "reconnecting.", http->state));
+ if (httpReconnect(http))
+ return (HTTP_ERROR);
}
#ifdef HAVE_SSL
@@ -885,7 +879,7 @@ cupsSendRequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP
* This function is used after @link cupsSendRequest@ to provide a PPD and
* after @link cupsStartDocument@ to provide a document file.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
http_status_t /* O - @code HTTP_CONTINUE@ if OK or HTTP status on error */
@@ -1145,5 +1139,5 @@ _cupsSetHTTPError(http_status_t status) /* I - HTTP status code */
/*
- * End of "$Id: request.c 10015 2011-09-21 22:09:29Z mike $".
+ * End of "$Id: request.c 10462 2012-05-12 00:07:16Z mike $".
*/
diff --git a/cups/sidechannel.c b/cups/sidechannel.c
index 35940ea6..3efbc4f0 100644
--- a/cups/sidechannel.c
+++ b/cups/sidechannel.c
@@ -1,9 +1,9 @@
/*
- * "$Id: sidechannel.c 9578 2011-03-04 18:44:47Z mike $"
+ * "$Id: sidechannel.c 10424 2012-04-23 17:26:57Z mike $"
*
* Side-channel API code for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -29,8 +29,7 @@
*/
#include "sidechannel.h"
-#include "string-private.h"
-#include "debug-private.h"
+#include "cups-private.h"
#ifdef WIN32
# include <io.h>
#else
@@ -45,11 +44,19 @@
# include <sys/time.h>
#endif /* !WIN32 */
#ifdef HAVE_POLL
-# include <sys/poll.h>
+# include <poll.h>
#endif /* HAVE_POLL */
/*
+ * Buffer size for side-channel requests...
+ */
+
+#define _CUPS_SC_MAX_DATA 65535
+#define _CUPS_SC_MAX_BUFFER 65540
+
+
+/*
* 'cupsSideChannelDoRequest()' - Send a side-channel command to a backend and wait for a response.
*
* This function is normally only called by filters, drivers, or port
@@ -62,7 +69,7 @@
* pointed to by the "data" parameter. cupsSideChannelDoRequest() will
* update the value to contain the number of data bytes in the buffer.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
cups_sc_status_t /* O - Status of command */
@@ -101,7 +108,7 @@ cupsSideChannelDoRequest(
* pointed to by the "data" parameter. cupsSideChannelDoRequest() will
* update the value to contain the number of data bytes in the buffer.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
int /* O - 0 on success, -1 on error */
@@ -112,7 +119,7 @@ cupsSideChannelRead(
int *datalen, /* IO - Size of data buffer on entry, number of bytes in buffer on return */
double timeout) /* I - Timeout in seconds */
{
- char buffer[16388]; /* Message buffer */
+ char *buffer; /* Message buffer */
int bytes; /* Bytes read */
int templen; /* Data length from message */
int nfds; /* Number of file descriptors */
@@ -143,7 +150,7 @@ cupsSideChannelRead(
pfd.fd = CUPS_SC_FD;
pfd.events = POLLIN;
- while ((nfds = poll(&pfd, 1,
+ while ((nfds = poll(&pfd, 1,
timeout < 0.0 ? -1 : (long)(timeout * 1000))) < 0 &&
(errno == EINTR || errno == EAGAIN))
;
@@ -155,16 +162,17 @@ cupsSideChannelRead(
stimeout.tv_sec = (int)timeout;
stimeout.tv_usec = (int)(timeout * 1000000) % 1000000;
- while ((nfds = select(CUPS_SC_FD + 1, &input_set, NULL, NULL,
+ while ((nfds = select(CUPS_SC_FD + 1, &input_set, NULL, NULL,
timeout < 0.0 ? NULL : &stimeout)) < 0 &&
(errno == EINTR || errno == EAGAIN))
;
#endif /* HAVE_POLL */
- if (nfds < 1)
+ if (nfds < 1)
{
- *status = nfds==0 ? CUPS_SC_STATUS_TIMEOUT : CUPS_SC_STATUS_IO_ERROR;
+ *command = CUPS_SC_CMD_NONE;
+ *status = nfds==0 ? CUPS_SC_STATUS_TIMEOUT : CUPS_SC_STATUS_IO_ERROR;
return (-1);
}
@@ -175,16 +183,28 @@ cupsSideChannelRead(
* ------- -------------------------------------------
* 0 Command code
* 1 Status code
- * 2-3 Data length (network byte order) <= 16384
+ * 2-3 Data length (network byte order)
* 4-N Data
*/
- while ((bytes = read(CUPS_SC_FD, buffer, sizeof(buffer))) < 0)
+ if ((buffer = _cupsBufferGet(_CUPS_SC_MAX_BUFFER)) == NULL)
+ {
+ *command = CUPS_SC_CMD_NONE;
+ *status = CUPS_SC_STATUS_TOO_BIG;
+
+ return (-1);
+ }
+
+ while ((bytes = read(CUPS_SC_FD, buffer, _CUPS_SC_MAX_BUFFER)) < 0)
if (errno != EINTR && errno != EAGAIN)
{
DEBUG_printf(("1cupsSideChannelRead: Read error: %s", strerror(errno)));
+
+ _cupsBufferRelease(buffer);
+
*command = CUPS_SC_CMD_NONE;
*status = CUPS_SC_STATUS_IO_ERROR;
+
return (-1);
}
@@ -195,8 +215,12 @@ cupsSideChannelRead(
if (bytes < 4)
{
DEBUG_printf(("1cupsSideChannelRead: Short read of %d bytes", bytes));
+
+ _cupsBufferRelease(buffer);
+
*command = CUPS_SC_CMD_NONE;
*status = CUPS_SC_STATUS_BAD_MESSAGE;
+
return (-1);
}
@@ -208,8 +232,12 @@ cupsSideChannelRead(
buffer[0] >= CUPS_SC_CMD_MAX)
{
DEBUG_printf(("1cupsSideChannelRead: Bad command %d!", buffer[0]));
+
+ _cupsBufferRelease(buffer);
+
*command = CUPS_SC_CMD_NONE;
*status = CUPS_SC_STATUS_BAD_MESSAGE;
+
return (-1);
}
@@ -252,6 +280,8 @@ cupsSideChannelRead(
memcpy(data, buffer + 4, templen);
}
+ _cupsBufferRelease(buffer);
+
DEBUG_printf(("1cupsSideChannelRead: Returning status=%d", *status));
return (0);
@@ -278,7 +308,7 @@ cupsSideChannelRead(
* support SNMP queries. @code CUPS_SC_STATUS_NO_RESPONSE@ is returned when
* the printer does not respond to the SNMP query.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
cups_sc_status_t /* O - Query status */
@@ -290,7 +320,7 @@ cupsSideChannelSNMPGet(
{
cups_sc_status_t status; /* Status of command */
cups_sc_command_t rcommand; /* Response command */
- char real_data[2048];/* Real data buffer for response */
+ char *real_data; /* Real data buffer for response */
int real_datalen, /* Real length of data buffer */
real_oidlen; /* Length of returned OID string */
@@ -316,12 +346,21 @@ cupsSideChannelSNMPGet(
(int)strlen(oid) + 1, timeout))
return (CUPS_SC_STATUS_TIMEOUT);
- real_datalen = sizeof(real_data);
+ if ((real_data = _cupsBufferGet(_CUPS_SC_MAX_BUFFER)) == NULL)
+ return (CUPS_SC_STATUS_TOO_BIG);
+
+ real_datalen = _CUPS_SC_MAX_BUFFER;
if (cupsSideChannelRead(&rcommand, &status, real_data, &real_datalen, timeout))
+ {
+ _cupsBufferRelease(real_data);
return (CUPS_SC_STATUS_TIMEOUT);
+ }
if (rcommand != CUPS_SC_CMD_SNMP_GET)
+ {
+ _cupsBufferRelease(real_data);
return (CUPS_SC_STATUS_BAD_MESSAGE);
+ }
if (status == CUPS_SC_STATUS_OK)
{
@@ -333,7 +372,10 @@ cupsSideChannelSNMPGet(
real_datalen -= real_oidlen;
if ((real_datalen + 1) > *datalen)
+ {
+ _cupsBufferRelease(real_data);
return (CUPS_SC_STATUS_TOO_BIG);
+ }
memcpy(data, real_data + real_oidlen, real_datalen);
data[real_datalen] = '\0';
@@ -341,6 +383,8 @@ cupsSideChannelSNMPGet(
*datalen = real_datalen;
}
+ _cupsBufferRelease(real_data);
+
return (status);
}
@@ -370,7 +414,7 @@ cupsSideChannelSNMPGet(
* support SNMP queries. @code CUPS_SC_STATUS_NO_RESPONSE@ is returned when
* the printer does not respond to the first SNMP query.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
cups_sc_status_t /* O - Status of first query of @code CUPS_SC_STATUS_OK@ on success */
@@ -382,7 +426,7 @@ cupsSideChannelSNMPWalk(
{
cups_sc_status_t status; /* Status of command */
cups_sc_command_t rcommand; /* Response command */
- char real_data[2048];/* Real data buffer for response */
+ char *real_data; /* Real data buffer for response */
int real_datalen, /* Real length of data buffer */
real_oidlen, /* Length of returned OID string */
oidlen; /* Length of first OID */
@@ -400,6 +444,9 @@ cupsSideChannelSNMPWalk(
if (!oid || !*oid || !cb)
return (CUPS_SC_STATUS_BAD_MESSAGE);
+ if ((real_data = _cupsBufferGet(_CUPS_SC_MAX_BUFFER)) == NULL)
+ return (CUPS_SC_STATUS_TOO_BIG);
+
/*
* Loop until the OIDs don't match...
*/
@@ -416,15 +463,24 @@ cupsSideChannelSNMPWalk(
if (cupsSideChannelWrite(CUPS_SC_CMD_SNMP_GET_NEXT, CUPS_SC_STATUS_NONE,
current_oid, (int)strlen(current_oid) + 1, timeout))
+ {
+ _cupsBufferRelease(real_data);
return (CUPS_SC_STATUS_TIMEOUT);
+ }
- real_datalen = sizeof(real_data);
+ real_datalen = _CUPS_SC_MAX_BUFFER;
if (cupsSideChannelRead(&rcommand, &status, real_data, &real_datalen,
timeout))
+ {
+ _cupsBufferRelease(real_data);
return (CUPS_SC_STATUS_TIMEOUT);
+ }
if (rcommand != CUPS_SC_CMD_SNMP_GET_NEXT)
+ {
+ _cupsBufferRelease(real_data);
return (CUPS_SC_STATUS_BAD_MESSAGE);
+ }
if (status == CUPS_SC_STATUS_OK)
{
@@ -439,6 +495,7 @@ cupsSideChannelSNMPWalk(
* Done with this set of OIDs...
*/
+ _cupsBufferRelease(real_data);
return (CUPS_SC_STATUS_OK);
}
@@ -452,7 +509,7 @@ cupsSideChannelSNMPWalk(
* Call the callback with the OID and data...
*/
- (*cb)(real_data, real_data + real_oidlen, real_datalen, context);
+ (*cb)(real_data, real_data + real_oidlen, real_datalen, context);
/*
* Update the current OID...
@@ -464,6 +521,8 @@ cupsSideChannelSNMPWalk(
}
while (status == CUPS_SC_STATUS_OK);
+ _cupsBufferRelease(real_data);
+
return (status);
}
@@ -474,7 +533,7 @@ cupsSideChannelSNMPWalk(
* This function is normally only called by backend programs to send
* responses to a filter, driver, or port monitor program.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
int /* O - 0 on success, -1 on error */
@@ -485,7 +544,7 @@ cupsSideChannelWrite(
int datalen, /* I - Number of bytes of data */
double timeout) /* I - Timeout in seconds */
{
- char buffer[16388]; /* Message buffer */
+ char *buffer; /* Message buffer */
int bytes; /* Bytes written */
#ifdef HAVE_POLL
struct pollfd pfd; /* Poll structure for poll() */
@@ -500,7 +559,7 @@ cupsSideChannelWrite(
*/
if (command < CUPS_SC_CMD_SOFT_RESET || command >= CUPS_SC_CMD_MAX ||
- datalen < 0 || datalen > 16384 || (datalen > 0 && !data))
+ datalen < 0 || datalen > _CUPS_SC_MAX_DATA || (datalen > 0 && !data))
return (-1);
/*
@@ -549,6 +608,9 @@ cupsSideChannelWrite(
* 4-N Data
*/
+ if ((buffer = _cupsBufferGet(datalen + 4)) == NULL)
+ return (-1);
+
buffer[0] = command;
buffer[1] = status;
buffer[2] = datalen >> 8;
@@ -564,12 +626,17 @@ cupsSideChannelWrite(
while (write(CUPS_SC_FD, buffer, bytes) < 0)
if (errno != EINTR && errno != EAGAIN)
+ {
+ _cupsBufferRelease(buffer);
return (-1);
+ }
+
+ _cupsBufferRelease(buffer);
return (0);
}
/*
- * End of "$Id: sidechannel.c 9578 2011-03-04 18:44:47Z mike $".
+ * End of "$Id: sidechannel.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/sidechannel.h b/cups/sidechannel.h
index 94858c69..dc9598b3 100644
--- a/cups/sidechannel.h
+++ b/cups/sidechannel.h
@@ -1,9 +1,9 @@
/*
- * "$Id: sidechannel.h 9772 2011-05-12 05:46:30Z mike $"
+ * "$Id: sidechannel.h 10424 2012-04-23 17:26:57Z mike $"
*
* Side-channel API definitions for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -61,9 +61,9 @@ enum cups_sc_command_e /**** Request command codes ****/
CUPS_SC_CMD_GET_BIDI = 3, /* Return bidirectional capabilities */
CUPS_SC_CMD_GET_DEVICE_ID = 4, /* Return the IEEE-1284 device ID */
CUPS_SC_CMD_GET_STATE = 5, /* Return the device state */
- CUPS_SC_CMD_SNMP_GET = 6, /* Query an SNMP OID @since CUPS 1.4/Mac OS X 10.6@ */
- CUPS_SC_CMD_SNMP_GET_NEXT = 7, /* Query the next SNMP OID @since CUPS 1.4/Mac OS X 10.6@ */
- CUPS_SC_CMD_GET_CONNECTED = 8, /* Return whether the backend is "connected" to the printer @since CUPS 1.5/Mac OS X 10.7@ */
+ CUPS_SC_CMD_SNMP_GET = 6, /* Query an SNMP OID @since CUPS 1.4/OS X 10.6@ */
+ CUPS_SC_CMD_SNMP_GET_NEXT = 7, /* Query the next SNMP OID @since CUPS 1.4/OS X 10.6@ */
+ CUPS_SC_CMD_GET_CONNECTED = 8, /* Return whether the backend is "connected" to the printer @since CUPS 1.5/OS X 10.7@ */
CUPS_SC_CMD_MAX /* End of valid values @private@ */
};
typedef enum cups_sc_command_e cups_sc_command_t;
@@ -143,5 +143,5 @@ extern cups_sc_status_t cupsSideChannelSNMPWalk(const char *oid, double timeout,
#endif /* !_CUPS_SIDECHANNEL_H_ */
/*
- * End of "$Id: sidechannel.h 9772 2011-05-12 05:46:30Z mike $".
+ * End of "$Id: sidechannel.h 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/snmp-private.h b/cups/snmp-private.h
index 896b662d..d4cda85e 100644
--- a/cups/snmp-private.h
+++ b/cups/snmp-private.h
@@ -1,9 +1,9 @@
/*
- * "$Id: snmp-private.h 9042 2010-03-24 00:45:34Z mike $"
+ * "$Id: snmp-private.h 10393 2012-03-31 05:05:49Z mike $"
*
* Private SNMP definitions for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2006-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -31,9 +31,10 @@
*/
#define CUPS_SNMP_PORT 161 /* SNMP well-known port */
+#define CUPS_SNMP_MAX_COMMUNITY 512 /* Maximum size of community name */
#define CUPS_SNMP_MAX_OID 128 /* Maximum number of OID numbers */
#define CUPS_SNMP_MAX_PACKET 1472 /* Maximum size of SNMP packet */
-#define CUPS_SNMP_MAX_STRING 512 /* Maximum size of string */
+#define CUPS_SNMP_MAX_STRING 1024 /* Maximum size of string */
#define CUPS_SNMP_VERSION_1 0 /* SNMPv1 */
@@ -84,7 +85,7 @@ typedef struct cups_snmp_s /**** SNMP data packet ****/
const char *error; /* Encode/decode error */
http_addr_t address; /* Source address */
int version; /* Version number */
- char community[CUPS_SNMP_MAX_STRING];
+ char community[CUPS_SNMP_MAX_COMMUNITY];
/* Community name */
cups_asn1_t request_type; /* Request type */
int request_id; /* request-id value */
@@ -141,5 +142,5 @@ extern int _cupsSNMPWrite(int fd, http_addr_t *address, int version,
/*
- * End of "$Id: snmp-private.h 9042 2010-03-24 00:45:34Z mike $".
+ * End of "$Id: snmp-private.h 10393 2012-03-31 05:05:49Z mike $".
*/
diff --git a/cups/snmp.c b/cups/snmp.c
index 3f1a2a34..a503b701 100644
--- a/cups/snmp.c
+++ b/cups/snmp.c
@@ -1,5 +1,5 @@
/*
- * "$Id: snmp.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: snmp.c 10394 2012-04-05 16:59:07Z mike $"
*
* SNMP functions for CUPS.
*
@@ -61,7 +61,7 @@
#include "cups-private.h"
#include "snmp-private.h"
#ifdef HAVE_POLL
-# include <sys/poll.h>
+# include <poll.h>
#endif /* HAVE_POLL */
@@ -1085,7 +1085,7 @@ asn1_decode_snmp(unsigned char *buffer, /* I - Buffer */
packet->object_value.string.num_bytes = length;
asn1_get_string(&bufptr, bufend, length,
(char *)packet->object_value.string.bytes,
- CUPS_SNMP_MAX_STRING);
+ sizeof(packet->object_value.string.bytes));
break;
case CUPS_ASN1_OID :
@@ -1733,5 +1733,5 @@ snmp_set_error(cups_snmp_t *packet, /* I - Packet */
/*
- * End of "$Id: snmp.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: snmp.c 10394 2012-04-05 16:59:07Z mike $".
*/
diff --git a/cups/string-private.h b/cups/string-private.h
index 7600357a..bf103944 100644
--- a/cups/string-private.h
+++ b/cups/string-private.h
@@ -1,5 +1,5 @@
/*
- * "$Id: string-private.h 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: string-private.h 9950 2011-09-01 23:02:24Z mike $"
*
* Private string definitions for CUPS.
*
@@ -155,10 +155,7 @@ extern size_t _cups_strlcpy(char *, const char *, size_t);
# ifndef HAVE_SNPRINTF
extern int _cups_snprintf(char *, size_t, const char *, ...)
-# ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 3, 4)))
-# endif /* __GNUC__ */
-;
+ __attribute__ ((__format__ (__printf__, 3, 4)));
# define snprintf _cups_snprintf
# endif /* !HAVE_SNPRINTF */
@@ -199,5 +196,5 @@ extern double _cupsStrScand(const char *buf, char **bufptr,
#endif /* !_CUPS_STRING_H_ */
/*
- * End of "$Id: string-private.h 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: string-private.h 9950 2011-09-01 23:02:24Z mike $".
*/
diff --git a/cups/tempfile.c b/cups/tempfile.c
index fe46a7af..72b85167 100644
--- a/cups/tempfile.c
+++ b/cups/tempfile.c
@@ -1,9 +1,9 @@
/*
- * "$Id: tempfile.c 9042 2010-03-24 00:45:34Z mike $"
+ * "$Id: tempfile.c 10424 2012-04-23 17:26:57Z mike $"
*
* Temp file utilities for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -204,7 +204,7 @@ cupsTempFile(char *filename, /* I - Pointer to buffer */
* The temporary filename is returned in the filename buffer.
* The temporary file is opened for writing.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
cups_file_t * /* O - CUPS file or @code NULL@ on error */
@@ -229,5 +229,5 @@ cupsTempFile2(char *filename, /* I - Pointer to buffer */
/*
- * End of "$Id: tempfile.c 9042 2010-03-24 00:45:34Z mike $".
+ * End of "$Id: tempfile.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/testconflicts.c b/cups/testconflicts.c
index ec0ea1c4..751a91e0 100644
--- a/cups/testconflicts.c
+++ b/cups/testconflicts.c
@@ -1,5 +1,5 @@
/*
- * "$Id: testconflicts.c 10379 2012-03-23 22:16:22Z mike $"
+ * "$Id: testconflicts.c 10378 2012-03-23 21:38:25Z mike $"
*
* PPD constraint test program for CUPS.
*
@@ -134,5 +134,5 @@ main(int argc, /* I - Number of command-line arguments */
/*
- * End of "$Id: testconflicts.c 10379 2012-03-23 22:16:22Z mike $".
+ * End of "$Id: testconflicts.c 10378 2012-03-23 21:38:25Z mike $".
*/
diff --git a/cups/testcups.c b/cups/testcups.c
index c6cf134e..58f886e0 100644
--- a/cups/testcups.c
+++ b/cups/testcups.c
@@ -1,9 +1,9 @@
/*
- * "$Id: testcups.c 9979 2011-09-09 16:34:29Z mike $"
+ * "$Id: testcups.c 10470 2012-05-16 22:33:31Z mike $"
*
* CUPS API test program for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -35,6 +35,7 @@
*/
static int dests_equal(cups_dest_t *a, cups_dest_t *b);
+static int enum_cb(void *user_data, unsigned flags, cups_dest_t *dest);
static void show_diffs(cups_dest_t *a, cups_dest_t *b);
@@ -60,66 +61,192 @@ main(int argc, /* I - Number of command-line arguments */
if (argc > 1)
{
- /*
- * ./testcups printer file interval
- */
-
- int interval, /* Interval between writes */
- job_id; /* Job ID */
- cups_file_t *fp; /* Print file */
- char buffer[16384]; /* Read/write buffer */
- ssize_t bytes; /* Bytes read/written */
-
-
- if (argc != 4)
+ if (!strcmp(argv[1], "enum"))
{
- puts("Usage: ./testcups");
- puts(" ./testcups printer file interval");
- return (1);
+ cups_ptype_t mask = CUPS_PRINTER_LOCAL,
+ /* Printer type mask */
+ type = CUPS_PRINTER_LOCAL;
+ /* Printer type */
+ int msec = 0; /* Timeout in milliseconds */
+
+
+ for (i = 2; i < argc; i ++)
+ if (isdigit(argv[i][0] & 255) || argv[i][0] == '.')
+ msec = (int)(atof(argv[i]) * 1000);
+ else if (!_cups_strcasecmp(argv[i], "bw"))
+ {
+ mask |= CUPS_PRINTER_BW;
+ type |= CUPS_PRINTER_BW;
+ }
+ else if (!_cups_strcasecmp(argv[i], "color"))
+ {
+ mask |= CUPS_PRINTER_COLOR;
+ type |= CUPS_PRINTER_COLOR;
+ }
+ else if (!_cups_strcasecmp(argv[i], "mono"))
+ {
+ mask |= CUPS_PRINTER_COLOR;
+ }
+ else if (!_cups_strcasecmp(argv[i], "duplex"))
+ {
+ mask |= CUPS_PRINTER_DUPLEX;
+ type |= CUPS_PRINTER_DUPLEX;
+ }
+ else if (!_cups_strcasecmp(argv[i], "simplex"))
+ {
+ mask |= CUPS_PRINTER_DUPLEX;
+ }
+ else if (!_cups_strcasecmp(argv[i], "staple"))
+ {
+ mask |= CUPS_PRINTER_STAPLE;
+ type |= CUPS_PRINTER_STAPLE;
+ }
+ else if (!_cups_strcasecmp(argv[i], "copies"))
+ {
+ mask |= CUPS_PRINTER_COPIES;
+ type |= CUPS_PRINTER_COPIES;
+ }
+ else if (!_cups_strcasecmp(argv[i], "collate"))
+ {
+ mask |= CUPS_PRINTER_COLLATE;
+ type |= CUPS_PRINTER_COLLATE;
+ }
+ else if (!_cups_strcasecmp(argv[i], "punch"))
+ {
+ mask |= CUPS_PRINTER_PUNCH;
+ type |= CUPS_PRINTER_PUNCH;
+ }
+ else if (!_cups_strcasecmp(argv[i], "cover"))
+ {
+ mask |= CUPS_PRINTER_COVER;
+ type |= CUPS_PRINTER_COVER;
+ }
+ else if (!_cups_strcasecmp(argv[i], "bind"))
+ {
+ mask |= CUPS_PRINTER_BIND;
+ type |= CUPS_PRINTER_BIND;
+ }
+ else if (!_cups_strcasecmp(argv[i], "sort"))
+ {
+ mask |= CUPS_PRINTER_SORT;
+ type |= CUPS_PRINTER_SORT;
+ }
+ else if (!_cups_strcasecmp(argv[i], "mfp"))
+ {
+ mask |= CUPS_PRINTER_MFP;
+ type |= CUPS_PRINTER_MFP;
+ }
+ else if (!_cups_strcasecmp(argv[i], "printer"))
+ {
+ mask |= CUPS_PRINTER_MFP;
+ }
+ else if (!_cups_strcasecmp(argv[i], "large"))
+ {
+ mask |= CUPS_PRINTER_LARGE;
+ type |= CUPS_PRINTER_LARGE;
+ }
+ else if (!_cups_strcasecmp(argv[i], "medium"))
+ {
+ mask |= CUPS_PRINTER_MEDIUM;
+ type |= CUPS_PRINTER_MEDIUM;
+ }
+ else if (!_cups_strcasecmp(argv[i], "small"))
+ {
+ mask |= CUPS_PRINTER_SMALL;
+ type |= CUPS_PRINTER_SMALL;
+ }
+ else
+ fprintf(stderr, "Unknown argument \"%s\" ignored...\n", argv[i]);
+
+ cupsEnumDests(CUPS_DEST_FLAGS_NONE, msec, NULL, type, mask, enum_cb, NULL);
}
-
- if ((fp = cupsFileOpen(argv[2], "r")) == NULL)
+ else if (!strcmp(argv[1], "password"))
{
- printf("Unable to open \"%s\": %s\n", argv[2], strerror(errno));
- return (1);
- }
+ const char *pass = cupsGetPassword("Password:");
+ /* Password string */
- if ((job_id = cupsCreateJob(CUPS_HTTP_DEFAULT, argv[1], "testcups", 0,
- NULL)) <= 0)
- {
- printf("Unable to create print job on %s: %s\n", argv[1],
- cupsLastErrorString());
- return (1);
+ if (pass)
+ printf("Password entered: %s\n", pass);
+ else
+ puts("No password entered.");
}
+ else if (!strcmp(argv[1], "print") && argc == 5)
+ {
+ /*
+ * ./testcups printer file interval
+ */
- interval = atoi(argv[3]);
+ int interval, /* Interval between writes */
+ job_id; /* Job ID */
+ cups_file_t *fp; /* Print file */
+ char buffer[16384]; /* Read/write buffer */
+ ssize_t bytes; /* Bytes read/written */
- if (cupsStartDocument(CUPS_HTTP_DEFAULT, argv[1], job_id, argv[2],
- CUPS_FORMAT_AUTO, 1) != HTTP_CONTINUE)
- {
- puts("Unable to start document!");
- return (1);
- }
+ if ((fp = cupsFileOpen(argv[3], "r")) == NULL)
+ {
+ printf("Unable to open \"%s\": %s\n", argv[2], strerror(errno));
+ return (1);
+ }
- while ((bytes = cupsFileRead(fp, buffer, sizeof(buffer))) > 0)
- {
- printf("Writing %d bytes...\n", (int)bytes);
+ if ((job_id = cupsCreateJob(CUPS_HTTP_DEFAULT, argv[2], "testcups", 0,
+ NULL)) <= 0)
+ {
+ printf("Unable to create print job on %s: %s\n", argv[1],
+ cupsLastErrorString());
+ return (1);
+ }
+
+ interval = atoi(argv[4]);
- if (cupsWriteRequestData(CUPS_HTTP_DEFAULT, buffer,
- bytes) != HTTP_CONTINUE)
+ if (cupsStartDocument(CUPS_HTTP_DEFAULT, argv[1], job_id, argv[2],
+ CUPS_FORMAT_AUTO, 1) != HTTP_CONTINUE)
{
- puts("Unable to write bytes!");
+ puts("Unable to start document!");
return (1);
}
- sleep(interval);
- }
+ while ((bytes = cupsFileRead(fp, buffer, sizeof(buffer))) > 0)
+ {
+ printf("Writing %d bytes...\n", (int)bytes);
+
+ if (cupsWriteRequestData(CUPS_HTTP_DEFAULT, buffer,
+ bytes) != HTTP_CONTINUE)
+ {
+ puts("Unable to write bytes!");
+ return (1);
+ }
+
+ if (interval > 0)
+ sleep(interval);
+ }
- cupsFileClose(fp);
+ cupsFileClose(fp);
- if (cupsFinishDocument(CUPS_HTTP_DEFAULT, argv[1]) > IPP_OK_SUBST)
+ if (cupsFinishDocument(CUPS_HTTP_DEFAULT, argv[1]) > IPP_OK_SUBST)
+ {
+ puts("Unable to finish document!");
+ return (1);
+ }
+ }
+ else
{
- puts("Unable to finish document!");
+ puts("Usage:");
+ puts("");
+ puts("Run basic unit tests:");
+ puts("");
+ puts(" ./testcups");
+ puts("");
+ puts("Enumerate printers (for N seconds, -1 for indefinitely):");
+ puts("");
+ puts(" ./testcups enum [seconds]");
+ puts("");
+ puts("Ask for a password:");
+ puts("");
+ puts(" ./testcups password");
+ puts("");
+ puts("Print a file (interval controls delay between buffers in seconds):");
+ puts("");
+ puts(" ./testcups print printer file interval");
return (1);
}
@@ -370,6 +497,33 @@ dests_equal(cups_dest_t *a, /* I - First destination */
/*
+ * 'enum_cb()' - Report additions and removals.
+ */
+
+static int /* O - 1 to continue, 0 to stop */
+enum_cb(void *user_data, /* I - User data (unused) */
+ unsigned flags, /* I - Destination flags */
+ cups_dest_t *dest) /* I - Destination */
+{
+ int i; /* Looping var */
+ cups_option_t *option; /* Current option */
+
+
+ if (flags & CUPS_DEST_FLAGS_REMOVED)
+ printf("Removed '%s':\n", dest->name);
+ else
+ printf("Added '%s':\n", dest->name);
+
+ for (i = dest->num_options, option = dest->options; i > 0; i --, option ++)
+ printf(" %s=\"%s\"\n", option->name, option->value);
+
+ putchar('\n');
+
+ return (1);
+}
+
+
+/*
* 'show_diffs()' - Show differences between two destinations.
*/
@@ -412,5 +566,5 @@ show_diffs(cups_dest_t *a, /* I - First destination */
/*
- * End of "$Id: testcups.c 9979 2011-09-09 16:34:29Z mike $".
+ * End of "$Id: testcups.c 10470 2012-05-16 22:33:31Z mike $".
*/
diff --git a/cups/testfile.c b/cups/testfile.c
index d92f2e60..2f76dfca 100644
--- a/cups/testfile.c
+++ b/cups/testfile.c
@@ -1,5 +1,5 @@
/*
- * "$Id: testfile.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: testfile.c 9926 2011-08-27 09:23:01Z mike $"
*
* File test program for CUPS.
*
@@ -133,9 +133,9 @@ main(int argc, /* I - Number of command-line arguments */
* Count lines in psglyphs, rewind, then count again.
*/
- fputs("\ncupsFileOpen(\"../data/psglyphs\", \"r\"): ", stdout);
+ fputs("\ncupsFileOpen(\"../data/media.defs\", \"r\"): ", stdout);
- if ((fp = cupsFileOpen("../data/psglyphs", "r")) == NULL)
+ if ((fp = cupsFileOpen("../data/media.defs", "r")) == NULL)
{
puts("FAIL");
status ++;
@@ -145,9 +145,9 @@ main(int argc, /* I - Number of command-line arguments */
puts("PASS");
fputs("cupsFileGets: ", stdout);
- if ((count = count_lines(fp)) != 1051)
+ if ((count = count_lines(fp)) != 208)
{
- printf("FAIL (got %d lines, expected 1051)\n", count);
+ printf("FAIL (got %d lines, expected 208)\n", count);
status ++;
}
else
@@ -165,9 +165,9 @@ main(int argc, /* I - Number of command-line arguments */
puts("PASS");
fputs("cupsFileGets: ", stdout);
- if ((count = count_lines(fp)) != 1051)
+ if ((count = count_lines(fp)) != 208)
{
- printf("FAIL (got %d lines, expected 1051)\n", count);
+ printf("FAIL (got %d lines, expected 208)\n", count);
status ++;
}
else
@@ -817,5 +817,5 @@ read_write_tests(int compression) /* I - Use compression? */
/*
- * End of "$Id: testfile.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: testfile.c 9926 2011-08-27 09:23:01Z mike $".
*/
diff --git a/cups/testhttp.c b/cups/testhttp.c
index 64b55804..f3dd60e1 100644
--- a/cups/testhttp.c
+++ b/cups/testhttp.c
@@ -1,5 +1,5 @@
/*
- * "$Id: testhttp.c 9993 2011-09-09 21:55:11Z mike $"
+ * "$Id: testhttp.c 9992 2011-09-09 21:51:39Z mike $"
*
* HTTP test program for CUPS.
*
@@ -596,5 +596,5 @@ main(int argc, /* I - Number of command-line arguments */
/*
- * End of "$Id: testhttp.c 9993 2011-09-09 21:55:11Z mike $".
+ * End of "$Id: testhttp.c 9992 2011-09-09 21:51:39Z mike $".
*/
diff --git a/cups/testipp.c b/cups/testipp.c
index 92b0e14a..f4e5ff57 100644
--- a/cups/testipp.c
+++ b/cups/testipp.c
@@ -1,9 +1,9 @@
/*
- * "$Id: testipp.c 9999 2011-09-14 00:31:10Z mike $"
+ * "$Id: testipp.c 10299 2012-02-16 00:33:54Z mike $"
*
* IPP test program for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2005 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -758,7 +758,7 @@ print_attributes(ipp_t *ipp, /* I - IPP request */
int i; /* Looping var */
ipp_tag_t group; /* Current group */
ipp_attribute_t *attr; /* Current attribute */
- ipp_value_t *val; /* Current value */
+ _ipp_value_t *val; /* Current value */
static const char * const tags[] = /* Value/group tag strings */
{
"reserved-00",
@@ -901,7 +901,7 @@ print_attributes(ipp_t *ipp, /* I - IPP request */
case IPP_TAG_RESOLUTION :
for (i = 0, val = attr->values; i < attr->num_values; i ++, val ++)
printf(" %dx%d%s", val->resolution.xres, val->resolution.yres,
- val->resolution.units == IPP_RES_PER_INCH ? "dpi" : "dpc");
+ val->resolution.units == IPP_RES_PER_INCH ? "dpi" : "dpcm");
putchar('\n');
break;
@@ -1001,5 +1001,5 @@ write_cb(_ippdata_t *data, /* I - Data */
/*
- * End of "$Id: testipp.c 9999 2011-09-14 00:31:10Z mike $".
+ * End of "$Id: testipp.c 10299 2012-02-16 00:33:54Z mike $".
*/
diff --git a/cups/testppd.c b/cups/testppd.c
index 8c23664b..f54b2042 100644
--- a/cups/testppd.c
+++ b/cups/testppd.c
@@ -1,5 +1,5 @@
/*
- * "$Id: testppd.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: testppd.c 10149 2011-12-14 07:24:03Z mike $"
*
* PPD test program for CUPS.
*
@@ -178,7 +178,7 @@ main(int argc, /* I - Number of command-line arguments */
fputs("ppdOpenFile(test.ppd): ", stdout);
- if ((ppd = ppdOpenFile("test.ppd")) != NULL)
+ if ((ppd = _ppdOpenFile("test.ppd", _PPD_LOCALIZATION_ALL)) != NULL)
puts("PASS");
else
{
@@ -471,6 +471,26 @@ main(int argc, /* I - Number of command-line arguments */
puts("PASS");
/*
+ * Custom sizes...
+ */
+
+ fputs("cupsMarkOptions(media=Custom.8x10in): ", stdout);
+ num_options = cupsAddOption("media", "Custom.8x10in", 0, &options);
+ cupsMarkOptions(ppd, num_options, options);
+ cupsFreeOptions(num_options, options);
+
+ size = ppdPageSize(ppd, NULL);
+ if (!size || strcmp(size->name, "Custom") ||
+ size->width != 576 || size->length != 720)
+ {
+ printf("FAIL (%s - %gx%g)\n", size ? size->name : "unknown",
+ size ? size->width : 0.0, size ? size->length : 0.0);
+ status ++;
+ }
+ else
+ puts("PASS");
+
+ /*
* Test localization...
*/
@@ -1078,5 +1098,5 @@ main(int argc, /* I - Number of command-line arguments */
/*
- * End of "$Id: testppd.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: testppd.c 10149 2011-12-14 07:24:03Z mike $".
*/
diff --git a/cups/testpwg.c b/cups/testpwg.c
index b3723062..a2b9c986 100644
--- a/cups/testpwg.c
+++ b/cups/testpwg.c
@@ -1,9 +1,9 @@
/*
- * "$Id: testpwg.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: testpwg.c 10404 2012-04-13 18:01:35Z mike $"
*
* PWG test program for CUPS.
*
- * Copyright 2009-2011 by Apple Inc.
+ * Copyright 2009-2012 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -260,6 +260,34 @@ main(int argc, /* I - Number of command-line args */
else
puts("PASS");
+ fputs("_pwgMediaForSize(9842, 19050): ", stdout);
+ if ((pwgmedia = _pwgMediaForSize(9842, 19050)) == NULL)
+ {
+ puts("FAIL (not found)");
+ status ++;
+ }
+ else if (strcmp(pwgmedia->pwg, "na_monarch_3.875x7.5in"))
+ {
+ printf("FAIL (%s)\n", pwgmedia->pwg);
+ status ++;
+ }
+ else
+ printf("PASS (%s)\n", pwgmedia->pwg);
+
+ fputs("_pwgMediaForSize(9800, 19000): ", stdout);
+ if ((pwgmedia = _pwgMediaForSize(9800, 19000)) == NULL)
+ {
+ puts("FAIL (not found)");
+ status ++;
+ }
+ else if (strcmp(pwgmedia->pwg, "jpn_you6_98x190mm"))
+ {
+ printf("FAIL (%s)\n", pwgmedia->pwg);
+ status ++;
+ }
+ else
+ printf("PASS (%s)\n", pwgmedia->pwg);
+
return (status);
}
@@ -493,5 +521,5 @@ test_ppd_cache(_ppd_cache_t *pc, /* I - PWG mapping data */
/*
- * End of "$Id: testpwg.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: testpwg.c 10404 2012-04-13 18:01:35Z mike $".
*/
diff --git a/cups/testsnmp.c b/cups/testsnmp.c
index 14700fd6..1cfea838 100644
--- a/cups/testsnmp.c
+++ b/cups/testsnmp.c
@@ -1,5 +1,5 @@
/*
- * "$Id: testsnmp.c 9099 2010-04-11 07:16:05Z mike $"
+ * "$Id: testsnmp.c 9950 2011-09-01 23:02:24Z mike $"
*
* SNMP test program for CUPS.
*
@@ -36,7 +36,7 @@
static void print_packet(cups_snmp_t *packet, void *data);
static int show_oid(int fd, const char *community,
http_addr_t *addr, const char *s, int walk);
-static void usage(void);
+static void usage(void) __attribute__((noreturn));
/*
@@ -119,7 +119,7 @@ main(int argc, /* I - Number of command-line args */
".1.3.6.1.2.1.43.10.2.1.4.1.1", walk))
return (1);
}
-
+
return (0);
}
@@ -300,5 +300,5 @@ usage(void)
/*
- * End of "$Id: testsnmp.c 9099 2010-04-11 07:16:05Z mike $".
+ * End of "$Id: testsnmp.c 9950 2011-09-01 23:02:24Z mike $".
*/
diff --git a/cups/thread-private.h b/cups/thread-private.h
index 50578796..ef6d4446 100644
--- a/cups/thread-private.h
+++ b/cups/thread-private.h
@@ -1,5 +1,5 @@
/*
- * "$Id: thread-private.h 10436 2012-04-23 21:52:02Z mike $"
+ * "$Id: thread-private.h 10435 2012-04-23 21:49:48Z mike $"
*
* Private threading definitions for CUPS.
*
@@ -94,5 +94,5 @@ extern int _cupsThreadCreate(_cups_thread_func_t func, void *arg);
#endif /* !_CUPS_THREAD_PRIVATE_H_ */
/*
- * End of "$Id: thread-private.h 10436 2012-04-23 21:52:02Z mike $".
+ * End of "$Id: thread-private.h 10435 2012-04-23 21:49:48Z mike $".
*/
diff --git a/cups/thread.c b/cups/thread.c
index 0907b4a4..44f54696 100644
--- a/cups/thread.c
+++ b/cups/thread.c
@@ -1,5 +1,5 @@
/*
- * "$Id: thread.c 10436 2012-04-23 21:52:02Z mike $"
+ * "$Id: thread.c 10435 2012-04-23 21:49:48Z mike $"
*
* Threading primitives for CUPS.
*
@@ -332,5 +332,5 @@ _cupsThreadCreate(
/*
- * End of "$Id: thread.c 10436 2012-04-23 21:52:02Z mike $".
+ * End of "$Id: thread.c 10435 2012-04-23 21:49:48Z mike $".
*/
diff --git a/cups/usersys.c b/cups/usersys.c
index 706a4022..4db54339 100644
--- a/cups/usersys.c
+++ b/cups/usersys.c
@@ -1,9 +1,9 @@
/*
- * "$Id: usersys.c 9969 2011-09-07 22:32:14Z mike $"
+ * "$Id: usersys.c 10424 2012-04-23 17:26:57Z mike $"
*
* User, system, and password routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -47,10 +47,18 @@
# include <windows.h>
#else
# include <pwd.h>
+# include <termios.h>
#endif /* WIN32 */
/*
+ * Local constants...
+ */
+
+#define _CUPS_PASSCHAR '*' /* Character that is echoed for password */
+
+
+/*
* Local functions...
*/
@@ -58,6 +66,7 @@ static void cups_read_client_conf(cups_file_t *fp,
_cups_globals_t *cg,
const char *cups_encryption,
const char *cups_server,
+ const char *cups_user,
#ifdef HAVE_GSSAPI
const char *cups_gssservicename,
#endif /* HAVE_GSSAPI */
@@ -127,7 +136,7 @@ cupsGetPassword(const char *prompt) /* I - Prompt string */
* the @link cupsSetPasswordCB@ or @link cupsSetPasswordCB2@ functions need to
* do so in each thread for the same function to be used.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
const char * /* O - Password */
@@ -185,7 +194,7 @@ cupsServer(void)
* in a program. Multi-threaded programs that override the callback need to do
* so in each thread for the same callback to be used.
*
- * @since CUPS 1.5/Mac OS X 10.7@
+ * @since CUPS 1.5/OS X 10.7@
*/
void
@@ -209,7 +218,7 @@ cupsSetClientCertCB(
* program. Multi-threaded programs that override the setting need to do so in
* each thread for the same setting to be used.
*
- * @since CUPS 1.5/Mac OS X 10.7@
+ * @since CUPS 1.5/OS X 10.7@
*/
int /* O - Status of call (0 = success) */
@@ -295,7 +304,7 @@ cupsSetPasswordCB(cups_password_cb_t cb)/* I - Callback function */
* in a program. Multi-threaded programs that override the callback need to do
* so in each thread for the same callback to be used.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
void
@@ -376,7 +385,7 @@ cupsSetServer(const char *server) /* I - Server name */
* in a program. Multi-threaded programs that override the callback need to do
* so in each thread for the same callback to be used.
*
- * @since CUPS 1.5/Mac OS X 10.7@
+ * @since CUPS 1.5/OS X 10.7@
*/
void
@@ -427,87 +436,284 @@ cupsSetUser(const char *user) /* I - User name */
const char * /* O - User name */
cupsUser(void)
{
- const char *user; /* USER environment variable */
_cups_globals_t *cg = _cupsGlobals(); /* Pointer to library globals */
if (!cg->user[0])
- {
+ _cupsSetDefaults();
+
+ return (cg->user);
+}
+
+
+/*
+ * '_cupsGetPassword()' - Get a password from the user.
+ */
+
+const char * /* O - Password or @code NULL@ if none */
+_cupsGetPassword(const char *prompt) /* I - Prompt string */
+{
#ifdef WIN32
- /*
- * Get the current user name from the OS...
- */
+ HANDLE tty; /* Console handle */
+ DWORD mode; /* Console mode */
+ char passch, /* Current key press */
+ *passptr, /* Pointer into password string */
+ *passend; /* End of password string */
+ DWORD passbytes; /* Bytes read */
+ _cups_globals_t *cg = _cupsGlobals();
+ /* Thread globals */
- DWORD size; /* Size of string */
- size = sizeof(cg->user);
- if (!GetUserName(cg->user, &size))
-#else
- /*
- * Get the user name corresponding to the current UID...
- */
+ /*
+ * Disable input echo and set raw input...
+ */
+
+ if ((tty = GetStdHandle(STD_INPUT_HANDLE)) == INVALID_HANDLE_VALUE)
+ return (NULL);
+
+ if (!GetConsoleMode(tty, &mode))
+ return (NULL);
+
+ if (!SetConsoleMode(tty, 0))
+ return (NULL);
+
+ /*
+ * Display the prompt...
+ */
+
+ printf("%s ", prompt);
+ fflush(stdout);
+
+ /*
+ * Read the password string from /dev/tty until we get interrupted or get a
+ * carriage return or newline...
+ */
+
+ passptr = cg->password;
+ passend = cg->password + sizeof(cg->password) - 1;
- struct passwd *pwd; /* User/password entry */
+ while (ReadFile(tty, &passch, 1, &passbytes, NULL))
+ {
+ if (passch == 0x0A || passch == 0x0D)
+ {
+ /*
+ * Enter/return...
+ */
- setpwent();
- if ((pwd = getpwuid(getuid())) != NULL)
+ break;
+ }
+ else if (passch == 0x08 || passch == 0x7F)
{
/*
- * Found a match!
+ * Backspace/delete (erase character)...
*/
- strlcpy(cg->user, pwd->pw_name, sizeof(cg->user));
+ if (passptr > cg->password)
+ {
+ passptr --;
+ fputs("\010 \010", stdout);
+ }
+ else
+ putchar(0x07);
}
- else
-#endif /* WIN32 */
- if ((user = getenv("USER")) != NULL)
+ else if (passch == 0x15)
{
/*
- * Use the username from the "USER" environment variable...
+ * CTRL+U (erase line)
*/
- strlcpy(cg->user, user, sizeof(cg->user));
+
+ if (passptr > cg->password)
+ {
+ while (passptr > cg->password)
+ {
+ passptr --;
+ fputs("\010 \010", stdout);
+ }
+ }
+ else
+ putchar(0x07);
}
- else
+ else if (passch == 0x03)
{
/*
- * Use the default "unknown" user name...
+ * CTRL+C...
*/
- strcpy(cg->user, "unknown");
+ passptr = cg->password;
+ break;
}
+ else if ((passch & 255) < 0x20 || passptr >= passend)
+ putchar(0x07);
+ else
+ {
+ *passptr++ = passch;
+ putchar(_CUPS_PASSCHAR);
+ }
+
+ fflush(stdout);
}
- return (cg->user);
-}
+ putchar('\n');
+ fflush(stdout);
+ /*
+ * Cleanup...
+ */
-/*
- * '_cupsGetPassword()' - Get a password from the user.
- */
+ SetConsoleMode(tty, mode);
-const char * /* O - Password */
-_cupsGetPassword(const char *prompt) /* I - Prompt string */
-{
-#ifdef WIN32
/*
- * Currently no console password support is provided on Windows.
+ * Return the proper value...
*/
- return (NULL);
+ if (passbytes == 1 && passptr > cg->password)
+ {
+ *passptr = '\0';
+ return (cg->password);
+ }
+ else
+ {
+ memset(cg->password, 0, sizeof(cg->password));
+ return (NULL);
+ }
#else
+ int tty; /* /dev/tty - never read from stdin */
+ struct termios original, /* Original input mode */
+ noecho; /* No echo input mode */
+ char passch, /* Current key press */
+ *passptr, /* Pointer into password string */
+ *passend; /* End of password string */
+ ssize_t passbytes; /* Bytes read */
+ _cups_globals_t *cg = _cupsGlobals();
+ /* Thread globals */
+
+
/*
- * Use the standard getpass function to get a password from the console. An
- * empty password is treated as canceling the authentication request.
+ * Disable input echo and set raw input...
*/
- const char *password = getpass(prompt);
- /* Password string */
+ if ((tty = open("/dev/tty", O_RDONLY)) < 0)
+ return (NULL);
+
+ if (tcgetattr(tty, &original))
+ {
+ close(tty);
+ return (NULL);
+ }
+
+ noecho = original;
+ noecho.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG);
- if (!password || !password[0])
+ if (tcsetattr(tty, TCSAFLUSH, &noecho))
+ {
+ close(tty);
return (NULL);
+ }
+
+ /*
+ * Display the prompt...
+ */
+
+ printf("%s ", prompt);
+ fflush(stdout);
+
+ /*
+ * Read the password string from /dev/tty until we get interrupted or get a
+ * carriage return or newline...
+ */
+
+ passptr = cg->password;
+ passend = cg->password + sizeof(cg->password) - 1;
+
+ while ((passbytes = read(tty, &passch, 1)) == 1)
+ {
+ if (passch == noecho.c_cc[VEOL] || passch == noecho.c_cc[VEOL2] ||
+ passch == 0x0A || passch == 0x0D)
+ {
+ /*
+ * Enter/return...
+ */
+
+ break;
+ }
+ else if (passch == noecho.c_cc[VERASE] ||
+ passch == 0x08 || passch == 0x7F)
+ {
+ /*
+ * Backspace/delete (erase character)...
+ */
+
+ if (passptr > cg->password)
+ {
+ passptr --;
+ fputs("\010 \010", stdout);
+ }
+ else
+ putchar(0x07);
+ }
+ else if (passch == noecho.c_cc[VKILL])
+ {
+ /*
+ * CTRL+U (erase line)
+ */
+
+ if (passptr > cg->password)
+ {
+ while (passptr > cg->password)
+ {
+ passptr --;
+ fputs("\010 \010", stdout);
+ }
+ }
+ else
+ putchar(0x07);
+ }
+ else if (passch == noecho.c_cc[VINTR] || passch == noecho.c_cc[VQUIT] ||
+ passch == noecho.c_cc[VEOF])
+ {
+ /*
+ * CTRL+C, CTRL+D, or CTRL+Z...
+ */
+
+ passptr = cg->password;
+ break;
+ }
+ else if ((passch & 255) < 0x20 || passptr >= passend)
+ putchar(0x07);
+ else
+ {
+ *passptr++ = passch;
+ putchar(_CUPS_PASSCHAR);
+ }
+
+ fflush(stdout);
+ }
+
+ putchar('\n');
+ fflush(stdout);
+
+ /*
+ * Cleanup...
+ */
+
+ tcsetattr(tty, TCSAFLUSH, &original);
+ close(tty);
+
+ /*
+ * Return the proper value...
+ */
+
+ if (passbytes == 1 && passptr > cg->password)
+ {
+ *passptr = '\0';
+ return (cg->password);
+ }
else
- return (password);
+ {
+ memset(cg->password, 0, sizeof(cg->password));
+ return (NULL);
+ }
#endif /* WIN32 */
}
@@ -542,6 +748,7 @@ _cupsSetDefaults(void)
const char *home, /* Home directory of user */
*cups_encryption, /* CUPS_ENCRYPTION env var */
*cups_server, /* CUPS_SERVER env var */
+ *cups_user, /* CUPS_USER/USER env var */
#ifdef HAVE_GSSAPI
*cups_gssservicename, /* CUPS_GSSSERVICENAME env var */
#endif /* HAVE_GSSAPI */
@@ -567,13 +774,16 @@ _cupsSetDefaults(void)
cups_expiredroot = getenv("CUPS_EXPIREDROOT");
cups_expiredcerts = getenv("CUPS_EXPIREDCERTS");
+ if ((cups_user = getenv("CUPS_USER")) == NULL)
+ cups_user = getenv("USER");
+
/*
* Then, if needed, read the ~/.cups/client.conf or /etc/cups/client.conf
* files to get the default values...
*/
if (cg->encryption == (http_encryption_t)-1 || !cg->server[0] ||
- !cg->ipp_port)
+ !cg->user[0] || !cg->ipp_port)
{
if ((home = getenv("HOME")) != NULL)
{
@@ -603,7 +813,7 @@ _cupsSetDefaults(void)
* functions handle NULL cups_file_t pointers...
*/
- cups_read_client_conf(fp, cg, cups_encryption, cups_server,
+ cups_read_client_conf(fp, cg, cups_encryption, cups_server, cups_user,
#ifdef HAVE_GSSAPI
cups_gssservicename,
#endif /* HAVE_GSSAPI */
@@ -624,6 +834,7 @@ cups_read_client_conf(
_cups_globals_t *cg, /* I - Global data */
const char *cups_encryption, /* I - CUPS_ENCRYPTION env var */
const char *cups_server, /* I - CUPS_SERVER env var */
+ const char *cups_user, /* I - CUPS_USER env var */
#ifdef HAVE_GSSAPI
const char *cups_gssservicename,
/* I - CUPS_GSSSERVICENAME env var */
@@ -639,6 +850,7 @@ cups_read_client_conf(
#ifndef __APPLE__
server_name[1024], /* ServerName value */
#endif /* !__APPLE__ */
+ user[256], /* User value */
any_root[1024], /* AllowAnyRoot value */
expired_root[1024], /* AllowExpiredRoot value */
expired_certs[1024]; /* AllowExpiredCerts value */
@@ -662,7 +874,7 @@ cups_read_client_conf(
}
#ifndef __APPLE__
/*
- * The Server directive is not supported on Mac OS X due to app sandboxing
+ * The Server directive is not supported on OS X due to app sandboxing
* restrictions, i.e. not all apps request network access.
*/
else if (!cups_server && (!cg->server[0] || !cg->ipp_port) &&
@@ -672,6 +884,11 @@ cups_read_client_conf(
cups_server = server_name;
}
#endif /* !__APPLE__ */
+ else if (!cups_user && !_cups_strcasecmp(line, "User") && value)
+ {
+ strlcpy(user, value, sizeof(user));
+ cups_user = user;
+ }
else if (!cups_anyroot && !_cups_strcasecmp(line, "AllowAnyRoot") && value)
{
strlcpy(any_root, value, sizeof(any_root));
@@ -780,6 +997,49 @@ cups_read_client_conf(
cg->ipp_port = CUPS_DEFAULT_IPP_PORT;
}
+ if (!cg->user[0])
+ {
+ if (cups_user)
+ strlcpy(cg->user, cups_user, sizeof(cg->user));
+ else
+ {
+#ifdef WIN32
+ /*
+ * Get the current user name from the OS...
+ */
+
+ DWORD size; /* Size of string */
+
+ size = sizeof(cg->user);
+ if (!GetUserName(cg->user, &size))
+#else
+ /*
+ * Get the user name corresponding to the current UID...
+ */
+
+ struct passwd *pwd; /* User/password entry */
+
+ setpwent();
+ if ((pwd = getpwuid(getuid())) != NULL)
+ {
+ /*
+ * Found a match!
+ */
+
+ strlcpy(cg->user, pwd->pw_name, sizeof(cg->user));
+ }
+ else
+#endif /* WIN32 */
+ {
+ /*
+ * Use the default "unknown" user name...
+ */
+
+ strcpy(cg->user, "unknown");
+ }
+ }
+ }
+
#ifdef HAVE_GSSAPI
if (!cups_gssservicename)
cups_gssservicename = CUPS_DEFAULT_GSSSERVICENAME;
@@ -806,5 +1066,5 @@ cups_read_client_conf(
/*
- * End of "$Id: usersys.c 9969 2011-09-07 22:32:14Z mike $".
+ * End of "$Id: usersys.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/cups/util.c b/cups/util.c
index 821077cf..acf57ca1 100644
--- a/cups/util.c
+++ b/cups/util.c
@@ -1,9 +1,9 @@
/*
- * "$Id: util.c 10483 2012-05-18 19:55:58Z mike $"
+ * "$Id: util.c 10482 2012-05-18 19:51:02Z mike $"
*
* Printing utilities for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -106,7 +106,7 @@ cupsCancelJob(const char *name, /* I - Name of printer or class */
* Use the @link cupsLastError@ and @link cupsLastErrorString@ functions to get
* the cause of any failure.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
ipp_status_t /* O - IPP status */
@@ -194,7 +194,7 @@ cupsCancelJob2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_
* print, use the @link cupsPrintFile2@ or @link cupsPrintFiles2@ function
* instead.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
int /* O - Job ID or 0 on error */
@@ -275,7 +275,7 @@ cupsCreateJob(
*
* The document must have been started using @link cupsStartDocument@.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
ipp_status_t /* O - Status of document submission */
@@ -444,7 +444,7 @@ cupsGetDefault(void)
* functions to get the user-defined default printer, as this function does
* not support the lpoptions-defined default printer.
*
- * @since CUPS 1.1.21/Mac OS X 10.4@
+ * @since CUPS 1.1.21/OS X 10.4@
*/
const char * /* O - Default printer or @code NULL@ */
@@ -535,7 +535,7 @@ cupsGetJobs(cups_job_t **jobs, /* O - Job data */
* pending, processing, or held and @code CUPS_WHICHJOBS_COMPLETED@ returns
* jobs that are stopped, canceled, aborted, or completed.
*
- * @since CUPS 1.1.21/Mac OS X 10.4@
+ * @since CUPS 1.1.21/OS X 10.4@
*/
int /* O - Number of jobs */
@@ -839,7 +839,7 @@ cupsGetPPD(const char *name) /* I - Destination name */
* each call to @link cupsGetPPD@ or @code cupsGetPPD2@. The caller "owns" the
* file that is created and must @code unlink@ the returned filename.
*
- * @since CUPS 1.1.21/Mac OS X 10.4@
+ * @since CUPS 1.1.21/OS X 10.4@
*/
const char * /* O - Filename for PPD file */
@@ -880,7 +880,7 @@ cupsGetPPD2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DE
* For classes, @code cupsGetPPD3@ returns the PPD file for the first printer
* in the class.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
http_status_t /* O - HTTP status */
@@ -1276,7 +1276,7 @@ cupsGetPrinters(char ***printers) /* O - Printers */
* overwritten on the next call to @link cupsGetPPD@, @link cupsGetPPD2@,
* or @link cupsGetServerPPD@.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
char * /* O - Name of PPD file or @code NULL@ on error */
@@ -1365,7 +1365,7 @@ cupsPrintFile(const char *name, /* I - Destination name */
* 'cupsPrintFile2()' - Print a file to a printer or class on the specified
* server.
*
- * @since CUPS 1.1.21/Mac OS X 10.4@
+ * @since CUPS 1.1.21/OS X 10.4@
*/
int /* O - Job ID or 0 on error */
@@ -1417,7 +1417,7 @@ cupsPrintFiles(
* 'cupsPrintFiles2()' - Print one or more files to a printer or class on the
* specified server.
*
- * @since CUPS 1.1.21/Mac OS X 10.4@
+ * @since CUPS 1.1.21/OS X 10.4@
*/
int /* O - Job ID or 0 on error */
@@ -1549,7 +1549,7 @@ cupsPrintFiles2(
* @code CUPS_FORMAT_TEXT@ are provided for the "format" argument, although
* any supported MIME type string can be supplied.
*
- * @since CUPS 1.4/Mac OS X 10.6@
+ * @since CUPS 1.4/OS X 10.6@
*/
http_status_t /* O - HTTP status of request */
@@ -1574,7 +1574,7 @@ cupsStartDocument(
if ((request = ippNewRequest(IPP_SEND_DOCUMENT)) == NULL)
{
_cupsSetError(IPP_INTERNAL_ERROR, strerror(ENOMEM), 0);
- return (0);
+ return (HTTP_ERROR);
}
httpAssembleURIf(HTTP_URI_CODING_ALL, printer_uri, sizeof(printer_uri), "ipp",
@@ -1808,5 +1808,5 @@ cups_get_printer_uri(
/*
- * End of "$Id: util.c 10483 2012-05-18 19:55:58Z mike $".
+ * End of "$Id: util.c 10482 2012-05-18 19:51:02Z mike $".
*/
diff --git a/cups/versioning.h b/cups/versioning.h
index 39d01d39..b10476f9 100644
--- a/cups/versioning.h
+++ b/cups/versioning.h
@@ -1,9 +1,9 @@
/*
- * "$Id: versioning.h 9230 2010-08-10 00:02:02Z mike $"
+ * "$Id: versioning.h 10424 2012-04-23 17:26:57Z mike $"
*
* API versioning definitions for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -20,11 +20,11 @@
/*
* This header defines several constants - _CUPS_DEPRECATED,
* _CUPS_API_1_1, _CUPS_API_1_1_19, _CUPS_API_1_1_20, _CUPS_API_1_1_21,
- * _CUPS_API_1_2, _CUPS_API_1_3, _CUPS_API_1_4, _CUPS_API_1_5 - which add
- * compiler-specific attributes that flag functions that are deprecated or added
- * in particular releases.
+ * _CUPS_API_1_2, _CUPS_API_1_3, _CUPS_API_1_4, _CUPS_API_1_5, _CUPS_API_1_6 -
+ * which add compiler-specific attributes that flag functions that are
+ * deprecated or added in particular releases.
*
- * On Mac OS X, the _CUPS_API_* constants are defined based on the values of
+ * On OS X, the _CUPS_API_* constants are defined based on the values of
* the MAC_OS_X_VERSION_MIN_ALLOWED and MAC_OS_X_VERSION_MAX_ALLOWED constants
* provided by the compiler.
*/
@@ -46,6 +46,9 @@
# ifndef AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
# define AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER __attribute__((unavailable))
# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER */
+# ifndef AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER
+# define AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER __attribute__((unavailable))
+# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER */
# define _CUPS_API_1_1_19 AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
# define _CUPS_API_1_1_20 AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER
# define _CUPS_API_1_1_21 AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER
@@ -53,6 +56,7 @@
# define _CUPS_API_1_3 AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER
# define _CUPS_API_1_4 AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
# define _CUPS_API_1_5 AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
+# define _CUPS_API_1_6
# else
# define _CUPS_API_1_1_19
# define _CUPS_API_1_1_20
@@ -61,6 +65,7 @@
# define _CUPS_API_1_3
# define _CUPS_API_1_4
# define _CUPS_API_1_5
+# define _CUPS_API_1_6
# endif /* __APPLE__ && !_CUPS_SOURCE */
/*
@@ -68,11 +73,11 @@
* a warning at compile-time.
*/
-# if defined(__GNUC__) && __GNUC__ > 2
+# if defined(__GNUC__) && __GNUC__ > 2 && !defined(_CUPS_SOURCE)
# define _CUPS_DEPRECATED __attribute__ ((__deprecated__))
# else
# define _CUPS_DEPRECATED
-# endif /* __GNUC__ && __GNUC__ > 2 */
+# endif /* __GNUC__ && __GNUC__ > 2 && !_CUPS_SOURCE */
# ifndef __GNUC__
# define __attribute__(x)
@@ -81,5 +86,5 @@
#endif /* !_CUPS_VERSIONING_H_ */
/*
- * End of "$Id: versioning.h 9230 2010-08-10 00:02:02Z mike $".
+ * End of "$Id: versioning.h 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/data/Makefile b/data/Makefile
index fa4d2476..5ab96095 100644
--- a/data/Makefile
+++ b/data/Makefile
@@ -1,5 +1,5 @@
#
-# "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $"
+# "$Id: Makefile 9926 2011-08-27 09:23:01Z mike $"
#
# Datafile makefile for CUPS.
#
@@ -27,21 +27,15 @@ BANNERS = \
topsecret \
unclassified
-CHARSETS = \
- utf-8
-
DATAFILES = \
- psglyphs \
testprint
PPDCFILES = \
epson.h \
- escp.h \
font.defs \
hp.h \
label.h \
media.defs \
- pcl.h \
raster.defs
@@ -96,12 +90,6 @@ install-data:
for file in $(BANNERS); do \
$(INSTALL_DATA) $$file $(DATADIR)/banners; \
done
- $(INSTALL_DIR) -m 755 $(DATADIR)/charsets
- if test "x$(BANNERTOPS)" != x -o "x$(TEXTTOPS)" != x; then \
- for file in $(CHARSETS); do \
- $(INSTALL_DATA) $$file $(DATADIR)/charsets; \
- done; \
- fi
$(INSTALL_DIR) -m 755 $(DATADIR)/data
for file in $(DATAFILES); do \
$(INSTALL_DATA) $$file $(DATADIR)/data; \
@@ -143,9 +131,6 @@ uninstall:
for file in $(BANNERS); do \
$(RM) $(DATADIR)/banners/$$file; \
done
- for file in $(CHARSETS); do \
- $(RM) $(DATADIR)/charsets/$$file; \
- done
for file in $(DATAFILES); do \
$(RM) $(DATADIR)/data/$$file; \
done
@@ -156,11 +141,10 @@ uninstall:
-$(RMDIR) $(DATADIR)/ppdc
-$(RMDIR) $(DATADIR)/model
-$(RMDIR) $(DATADIR)/data
- -$(RMDIR) $(DATADIR)/charsets
-$(RMDIR) $(DATADIR)/banners
-$(RMDIR) $(DATADIR)
#
-# End of "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $".
+# End of "$Id: Makefile 9926 2011-08-27 09:23:01Z mike $".
#
diff --git a/data/escp.h b/data/escp.h
deleted file mode 100644
index 096ee569..00000000
--- a/data/escp.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * "$Id: escp.h 7304 2008-02-14 01:52:22Z mike $"
- *
- * This file contains model number definitions for the CUPS unified
- * ESC/P driver.
- *
- * Copyright 2007 by Apple Inc.
- * Copyright 1997-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- */
-
-/* General ESC/P Support */
-#define ESCP_DOTMATRIX 0x1 /* Dot matrix printer? */
-#define ESCP_MICROWEAVE 0x2 /* Use microweave command? */
-#define ESCP_STAGGER 0x4 /* Are color jets staggered? */
-#define ESCP_ESCK 0x8 /* Use print mode command?*/
-#define ESCP_EXT_UNITS 0x10 /* Use extended unit commands? */
-#define ESCP_EXT_MARGINS 0x20 /* Use extended margin command */
-#define ESCP_USB 0x40 /* Send USB packet mode escape? */
-#define ESCP_PAGE_SIZE 0x80 /* Use page size command */
-#define ESCP_RASTER_ESCI 0x100 /* Use ESC i graphics command */
-
-/* Remote mode support */
-#define ESCP_REMOTE 0x1000 /* Use remote mode commands? */
-
-
-/*
- * End of "$Id: escp.h 7304 2008-02-14 01:52:22Z mike $".
- */
diff --git a/data/media.defs b/data/media.defs
index 43b48c35..6f0be82e 100644
--- a/data/media.defs
+++ b/data/media.defs
@@ -198,7 +198,7 @@
#media "w167h288/Shipping Address" 167 288
#media "w162h540/Internet Postage 2-Part" 162 540
#media "w162h504/Internet Postage 3-Part" 162 504
-#media "w41h248/File Folder" 41 248
+#media "w41h248/File Folder " 41 248
#media "w41h144/Hanging Folder" 41 144
#media "w153h198/3.5\" Disk" 153 198
diff --git a/data/pcl.h b/data/pcl.h
deleted file mode 100644
index a1fedad3..00000000
--- a/data/pcl.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * "$Id: pcl.h 7304 2008-02-14 01:52:22Z mike $"
- *
- * This file contains model number definitions for the CUPS unified
- * PCL driver.
- *
- * Copyright 2007 by Apple Inc.
- * Copyright 1997-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- */
-
-/* General PCL Support */
-#define PCL_PAPER_SIZE 0x1 /* Use ESC&l#A */
-#define PCL_INKJET 0x2 /* Use inkjet commands */
-
-/* Raster Support */
-#define PCL_RASTER_END_COLOR 0x100 /* Use ESC*rC */
-#define PCL_RASTER_CID 0x200 /* Use ESC*v#W */
-#define PCL_RASTER_CRD 0x400 /* Use ESC*g#W */
-#define PCL_RASTER_SIMPLE 0x800 /* Use ESC*r#U */
-#define PCL_RASTER_RGB24 0x1000 /* Use 24-bit RGB mode */
-
-/* PJL Support */
-#define PCL_PJL 0x10000 /* Use PJL Commands */
-#define PCL_PJL_PAPERWIDTH 0x20000 /* Use PJL PAPERWIDTH/LENGTH */
-#define PCL_PJL_HPGL2 0x40000 /* Enter HPGL2 */
-#define PCL_PJL_PCL3GUI 0x80000 /* Enter PCL3GUI */
-#define PCL_PJL_RESOLUTION 0x100000 /* Use PJL SET RESOLUTION */
-
-
-/*
- * End of "$Id: pcl.h 7304 2008-02-14 01:52:22Z mike $".
- */
diff --git a/data/psglyphs b/data/psglyphs
deleted file mode 100644
index c4a902c6..00000000
--- a/data/psglyphs
+++ /dev/null
@@ -1,1051 +0,0 @@
-0020 space
-0021 exclam
-0022 quotedbl
-0023 numbersign
-0024 dollar
-0025 percent
-0026 ampersand
-0027 quotesingle
-0028 parenleft
-0029 parenright
-002a asterisk
-002b plus
-002c comma
-002d minus
-002e period
-002f slash
-0030 zero
-0031 one
-0032 two
-0033 three
-0034 four
-0035 five
-0036 six
-0037 seven
-0038 eight
-0039 nine
-003a colon
-003b semicolon
-003c less
-003d equal
-003e greater
-003f question
-0040 at
-0041 A
-0042 B
-0043 C
-0044 D
-0045 E
-0046 F
-0047 G
-0048 H
-0049 I
-004a J
-004b K
-004c L
-004d M
-004e N
-004f O
-0050 P
-0051 Q
-0052 R
-0053 S
-0054 T
-0055 U
-0056 V
-0057 W
-0058 X
-0059 Y
-005a Z
-005b bracketleft
-005c backslash
-005d bracketright
-005e asciicircum
-005f underscore
-0060 grave
-0061 a
-0062 b
-0063 c
-0064 d
-0065 e
-0066 f
-0067 g
-0068 h
-0069 i
-006a j
-006b k
-006c l
-006d m
-006e n
-006f o
-0070 p
-0071 q
-0072 r
-0073 s
-0074 t
-0075 u
-0076 v
-0077 w
-0078 x
-0079 y
-007a z
-007b braceleft
-007c bar
-007d braceright
-007e asciitilde
-00a0 space
-00a1 exclamdown
-00a2 cent
-00a3 sterling
-00a4 currency
-00a5 yen
-00a6 brokenbar
-00a7 section
-00a8 dieresis
-00a9 copyright
-00aa ordfeminine
-00ab guillemotleft
-00ac logicalnot
-00ad hyphen
-00ae registered
-00af macron
-00b0 degree
-00b1 plusminus
-00b2 twosuperior
-00b3 threesuperior
-00b4 acute
-00b5 mu
-00b6 paragraph
-00b7 periodcentered
-00b8 cedilla
-00b9 onesuperior
-00ba ordmasculine
-00bb guillemotright
-00bc onequarter
-00bd onehalf
-00be threequarters
-00bf questiondown
-00c0 Agrave
-00c1 Aacute
-00c2 Acircumflex
-00c3 Atilde
-00c4 Adieresis
-00c5 Aring
-00c6 AE
-00c7 Ccedilla
-00c8 Egrave
-00c9 Eacute
-00ca Ecircumflex
-00cb Edieresis
-00cc Igrave
-00cd Iacute
-00ce Icircumflex
-00cf Idieresis
-00d0 Eth
-00d1 Ntilde
-00d2 Ograve
-00d3 Oacute
-00d4 Ocircumflex
-00d5 Otilde
-00d6 Odieresis
-00d7 multiply
-00d8 Oslash
-00d9 Ugrave
-00da Uacute
-00db Ucircumflex
-00dc Udieresis
-00dd Yacute
-00de Thorn
-00df germandbls
-00e0 agrave
-00e1 aacute
-00e2 acircumflex
-00e3 atilde
-00e4 adieresis
-00e5 aring
-00e6 ae
-00e7 ccedilla
-00e8 egrave
-00e9 eacute
-00ea ecircumflex
-00eb edieresis
-00ec igrave
-00ed iacute
-00ee icircumflex
-00ef idieresis
-00f0 eth
-00f1 ntilde
-00f2 ograve
-00f3 oacute
-00f4 ocircumflex
-00f5 otilde
-00f6 odieresis
-00f7 divide
-00f8 oslash
-00f9 ugrave
-00fa uacute
-00fb ucircumflex
-00fc udieresis
-00fd yacute
-00fe thorn
-00ff ydieresis
-0100 Amacron
-0101 amacron
-0102 Abreve
-0103 abreve
-0104 Aogonek
-0105 aogonek
-0106 Cacute
-0107 cacute
-0108 Ccircumflex
-0109 ccircumflex
-010a Cdotaccent
-010b cdotaccent
-010c Ccaron
-010d ccaron
-010e Dcaron
-010f dcaron
-0110 Dcroat
-0111 dcroat
-0112 Emacron
-0113 emacron
-0114 Ebreve
-0115 ebreve
-0116 Edotaccent
-0117 edotaccent
-0118 Eogonek
-0119 eogonek
-011a Ecaron
-011b ecaron
-011c Gcircumflex
-011d gcircumflex
-011e Gbreve
-011f gbreve
-0120 Gdotaccent
-0121 gdotaccent
-0122 Gcommaaccent
-0123 gcommaaccent
-0124 Hcircumflex
-0125 hcircumflex
-0126 Hbar
-0127 hbar
-0128 Itilde
-0129 itilde
-012a Imacron
-012b imacron
-012c Ibreve
-012d ibreve
-012e Iogonek
-012f iogonek
-0130 Idotaccent
-0131 dotlessi
-0132 IJ
-0133 ij
-0134 Jcircumflex
-0135 jcircumflex
-0136 Kcommaaccent
-0137 kcommaaccent
-0138 kgreenlandic
-0139 Lacute
-013a lacute
-013b Lcommaaccent
-013c lcommaaccent
-013d Lcaron
-013e lcaron
-013f Ldot
-0140 ldot
-0141 Lslash
-0142 lslash
-0143 Nacute
-0144 nacute
-0145 Ncommaaccent
-0146 ncommaaccent
-0147 Ncaron
-0148 ncaron
-0149 napostrophe
-014a Eng
-014b eng
-014c Omacron
-014d omacron
-014e Obreve
-014f obreve
-0150 Ohungarumlaut
-0151 ohungarumlaut
-0152 OE
-0153 oe
-0154 Racute
-0155 racute
-0156 Rcommaaccent
-0157 rcommaaccent
-0158 Rcaron
-0159 rcaron
-015a Sacute
-015b sacute
-015c Scircumflex
-015d scircumflex
-015e Scedilla
-015f scedilla
-0160 Scaron
-0161 scaron
-0162 Tcommaaccent
-0163 tcommaaccent
-0164 Tcaron
-0165 tcaron
-0166 Tbar
-0167 tbar
-0168 Utilde
-0169 utilde
-016a Umacron
-016b umacron
-016c Ubreve
-016d ubreve
-016e Uring
-016f uring
-0170 Uhungarumlaut
-0171 uhungarumlaut
-0172 Uogonek
-0173 uogonek
-0174 Wcircumflex
-0175 wcircumflex
-0176 Ycircumflex
-0177 ycircumflex
-0178 Ydieresis
-0179 Zacute
-017a zacute
-017b Zdotaccent
-017c zdotaccent
-017d Zcaron
-017e zcaron
-017f longs
-0192 florin
-01a0 Ohorn
-01a1 ohorn
-01af Uhorn
-01b0 uhorn
-01e6 Gcaron
-01e7 gcaron
-01fa Aringacute
-01fb aringacute
-01fc AEacute
-01fd aeacute
-01fe Oslashacute
-01ff oslashacute
-0218 Scommaaccent
-0219 scommaaccent
-021a Tcommaaccent
-021b tcommaaccent
-02bc afii57929
-02bd afii64937
-02c6 circumflex
-02c7 caron
-02c9 macron
-02d8 breve
-02d9 dotaccent
-02da ring
-02db ogonek
-02dc tilde
-02dd hungarumlaut
-0300 gravecomb
-0301 acutecomb
-0303 tildecomb
-0309 hookabovecomb
-0323 dotbelowcomb
-0384 tonos
-0385 dieresistonos
-0386 Alphatonos
-0387 anoteleia
-0388 Epsilontonos
-0389 Etatonos
-038a Iotatonos
-038c Omicrontonos
-038e Upsilontonos
-038f Omegatonos
-0390 iotadieresistonos
-0391 Alpha
-0392 Beta
-0393 Gamma
-0394 Delta
-0395 Epsilon
-0396 Zeta
-0397 Eta
-0398 Theta
-0399 Iota
-039a Kappa
-039b Lambda
-039c Mu
-039d Nu
-039e Xi
-039f Omicron
-03a0 Pi
-03a1 Rho
-03a3 Sigma
-03a4 Tau
-03a5 Upsilon
-03a6 Phi
-03a7 Chi
-03a8 Psi
-03a9 Omega
-03aa Iotadieresis
-03ab Upsilondieresis
-03ac alphatonos
-03ad epsilontonos
-03ae etatonos
-03af iotatonos
-03b0 upsilondieresistonos
-03b1 alpha
-03b2 beta
-03b3 gamma
-03b4 delta
-03b5 epsilon
-03b6 zeta
-03b7 eta
-03b8 theta
-03b9 iota
-03ba kappa
-03bb lambda
-03bc mu
-03bd nu
-03be xi
-03bf omicron
-03c0 pi
-03c1 rho
-03c2 sigma1
-03c3 sigma
-03c4 tau
-03c5 upsilon
-03c6 phi
-03c7 chi
-03c8 psi
-03c9 omega
-03ca iotadieresis
-03cb upsilondieresis
-03cc omicrontonos
-03cd upsilontonos
-03ce omegatonos
-03d1 theta1
-03d2 Upsilon1
-03d5 phi1
-03d6 omega1
-0401 afii10023
-0402 afii10051
-0403 afii10052
-0404 afii10053
-0405 afii10054
-0406 afii10055
-0407 afii10056
-0408 afii10057
-0409 afii10058
-040a afii10059
-040b afii10060
-040c afii10061
-040e afii10062
-040f afii10145
-0410 afii10017
-0411 afii10018
-0412 afii10019
-0413 afii10020
-0414 afii10021
-0415 afii10022
-0416 afii10024
-0417 afii10025
-0418 afii10026
-0419 afii10027
-041a afii10028
-041b afii10029
-041c afii10030
-041d afii10031
-041e afii10032
-041f afii10033
-0420 afii10034
-0421 afii10035
-0422 afii10036
-0423 afii10037
-0424 afii10038
-0425 afii10039
-0426 afii10040
-0427 afii10041
-0428 afii10042
-0429 afii10043
-042a afii10044
-042b afii10045
-042c afii10046
-042d afii10047
-042e afii10048
-042f afii10049
-0430 afii10065
-0431 afii10066
-0432 afii10067
-0433 afii10068
-0434 afii10069
-0435 afii10070
-0436 afii10072
-0437 afii10073
-0438 afii10074
-0439 afii10075
-043a afii10076
-043b afii10077
-043c afii10078
-043d afii10079
-043e afii10080
-043f afii10081
-0440 afii10082
-0441 afii10083
-0442 afii10084
-0443 afii10085
-0444 afii10086
-0445 afii10087
-0446 afii10088
-0447 afii10089
-0448 afii10090
-0449 afii10091
-044a afii10092
-044b afii10093
-044c afii10094
-044d afii10095
-044e afii10096
-044f afii10097
-0451 afii10071
-0452 afii10099
-0453 afii10100
-0454 afii10101
-0455 afii10102
-0456 afii10103
-0457 afii10104
-0458 afii10105
-0459 afii10106
-045a afii10107
-045b afii10108
-045c afii10109
-045e afii10110
-045f afii10193
-0462 afii10146
-0463 afii10194
-0472 afii10147
-0473 afii10195
-0474 afii10148
-0475 afii10196
-0490 afii10050
-0491 afii10098
-04d9 afii10846
-05b0 afii57799
-05b1 afii57801
-05b2 afii57800
-05b3 afii57802
-05b4 afii57793
-05b5 afii57794
-05b6 afii57795
-05b7 afii57798
-05b8 afii57797
-05b9 afii57806
-05bb afii57796
-05bc afii57807
-05bd afii57839
-05be afii57645
-05bf afii57841
-05c0 afii57842
-05c1 afii57804
-05c2 afii57803
-05c3 afii57658
-05d0 afii57664
-05d1 afii57665
-05d2 afii57666
-05d3 afii57667
-05d4 afii57668
-05d5 afii57669
-05d6 afii57670
-05d7 afii57671
-05d8 afii57672
-05d9 afii57673
-05da afii57674
-05db afii57675
-05dc afii57676
-05dd afii57677
-05de afii57678
-05df afii57679
-05e0 afii57680
-05e1 afii57681
-05e2 afii57682
-05e3 afii57683
-05e4 afii57684
-05e5 afii57685
-05e6 afii57686
-05e7 afii57687
-05e8 afii57688
-05e9 afii57689
-05ea afii57690
-05f0 afii57716
-05f1 afii57717
-05f2 afii57718
-060c afii57388
-061b afii57403
-061f afii57407
-0621 afii57409
-0622 afii57410
-0623 afii57411
-0624 afii57412
-0625 afii57413
-0626 afii57414
-0627 afii57415
-0628 afii57416
-0629 afii57417
-062a afii57418
-062b afii57419
-062c afii57420
-062d afii57421
-062e afii57422
-062f afii57423
-0630 afii57424
-0631 afii57425
-0632 afii57426
-0633 afii57427
-0634 afii57428
-0635 afii57429
-0636 afii57430
-0637 afii57431
-0638 afii57432
-0639 afii57433
-063a afii57434
-0640 afii57440
-0641 afii57441
-0642 afii57442
-0643 afii57443
-0644 afii57444
-0645 afii57445
-0646 afii57446
-0647 afii57470
-0648 afii57448
-0649 afii57449
-064a afii57450
-064b afii57451
-064c afii57452
-064d afii57453
-064e afii57454
-064f afii57455
-0650 afii57456
-0651 afii57457
-0652 afii57458
-0660 afii57392
-0661 afii57393
-0662 afii57394
-0663 afii57395
-0664 afii57396
-0665 afii57397
-0666 afii57398
-0667 afii57399
-0668 afii57400
-0669 afii57401
-066a afii57381
-066d afii63167
-0679 afii57511
-067e afii57506
-0686 afii57507
-0688 afii57512
-0691 afii57513
-0698 afii57508
-06a4 afii57505
-06af afii57509
-06ba afii57514
-06d2 afii57519
-06d5 afii57534
-1e80 Wgrave
-1e81 wgrave
-1e82 Wacute
-1e83 wacute
-1e84 Wdieresis
-1e85 wdieresis
-1ef2 Ygrave
-1ef3 ygrave
-200c afii61664
-200d afii301
-200e afii299
-200f afii300
-2012 figuredash
-2013 endash
-2014 emdash
-2015 afii00208
-2017 underscoredbl
-2018 quoteleft
-2019 quoteright
-201a quotesinglbase
-201b quotereversed
-201c quotedblleft
-201d quotedblright
-201e quotedblbase
-2020 dagger
-2021 daggerdbl
-2022 bullet
-2024 onedotenleader
-2025 twodotenleader
-2026 ellipsis
-202c afii61573
-202d afii61574
-202e afii61575
-2030 perthousand
-2032 minute
-2033 second
-2039 guilsinglleft
-203a guilsinglright
-203c exclamdbl
-2044 fraction
-2070 zerosuperior
-2074 foursuperior
-2075 fivesuperior
-2076 sixsuperior
-2077 sevensuperior
-2078 eightsuperior
-2079 ninesuperior
-207d parenleftsuperior
-207e parenrightsuperior
-207f nsuperior
-2080 zeroinferior
-2081 oneinferior
-2082 twoinferior
-2083 threeinferior
-2084 fourinferior
-2085 fiveinferior
-2086 sixinferior
-2087 seveninferior
-2088 eightinferior
-2089 nineinferior
-208d parenleftinferior
-208e parenrightinferior
-20a1 colonmonetary
-20a3 franc
-20a4 lira
-20a7 peseta
-20aa afii57636
-20ab dong
-20ac Euro
-2105 afii61248
-2111 Ifraktur
-2113 afii61289
-2116 afii61352
-2118 weierstrass
-211c Rfraktur
-211e prescription
-2122 trademark
-2126 Omega
-212e estimated
-2135 aleph
-2153 onethird
-2154 twothirds
-215b oneeighth
-215c threeeighths
-215d fiveeighths
-215e seveneighths
-2190 arrowleft
-2191 arrowup
-2192 arrowright
-2193 arrowdown
-2194 arrowboth
-2195 arrowupdn
-21a8 arrowupdnbse
-21b5 carriagereturn
-21d0 arrowdblleft
-21d1 arrowdblup
-21d2 arrowdblright
-21d3 arrowdbldown
-21d4 arrowdblboth
-2200 universal
-2202 partialdiff
-2203 existential
-2205 emptyset
-2206 Delta
-2207 gradient
-2208 element
-2209 notelement
-220b suchthat
-220f product
-2211 summation
-2212 minus
-2215 fraction
-2217 asteriskmath
-2219 periodcentered
-221a radical
-221d proportional
-221e infinity
-221f orthogonal
-2220 angle
-2227 logicaland
-2228 logicalor
-2229 intersection
-222a union
-222b integral
-2234 therefore
-223c similar
-2245 congruent
-2248 approxequal
-2260 notequal
-2261 equivalence
-2264 lessequal
-2265 greaterequal
-2282 propersubset
-2283 propersuperset
-2284 notsubset
-2286 reflexsubset
-2287 reflexsuperset
-2295 circleplus
-2297 circlemultiply
-22a5 perpendicular
-22c5 dotmath
-2302 house
-2310 revlogicalnot
-2320 integraltp
-2321 integralbt
-2329 angleleft
-232a angleright
-2500 SF100000
-2502 SF110000
-250c SF010000
-2510 SF030000
-2514 SF020000
-2518 SF040000
-251c SF080000
-2524 SF090000
-252c SF060000
-2534 SF070000
-253c SF050000
-2550 SF430000
-2551 SF240000
-2552 SF510000
-2553 SF520000
-2554 SF390000
-2555 SF220000
-2556 SF210000
-2557 SF250000
-2558 SF500000
-2559 SF490000
-255a SF380000
-255b SF280000
-255c SF270000
-255d SF260000
-255e SF360000
-255f SF370000
-2560 SF420000
-2561 SF190000
-2562 SF200000
-2563 SF230000
-2564 SF470000
-2565 SF480000
-2566 SF410000
-2567 SF450000
-2568 SF460000
-2569 SF400000
-256a SF540000
-256b SF530000
-256c SF440000
-2580 upblock
-2584 dnblock
-2588 block
-258c lfblock
-2590 rtblock
-2591 ltshade
-2592 shade
-2593 dkshade
-25a0 filledbox
-25a1 H22073
-25aa H18543
-25ab H18551
-25ac filledrect
-25b2 triagup
-25ba triagrt
-25bc triagdn
-25c4 triaglf
-25ca lozenge
-25cb circle
-25cf H18533
-25d8 invbullet
-25d9 invcircle
-25e6 openbullet
-263a smileface
-263b invsmileface
-263c sun
-2640 female
-2642 male
-2660 spade
-2663 club
-2665 heart
-2666 diamond
-266a musicalnote
-266b musicalnotedbl
-f6be dotlessj
-f6bf LL
-f6c0 ll
-f6c1 Scedilla
-f6c2 scedilla
-f6c3 commaaccent
-f6c4 afii10063
-f6c5 afii10064
-f6c6 afii10192
-f6c7 afii10831
-f6c8 afii10832
-f6c9 Acute
-f6ca Caron
-f6cb Dieresis
-f6cc DieresisAcute
-f6cd DieresisGrave
-f6ce Grave
-f6cf Hungarumlaut
-f6d0 Macron
-f6d1 cyrBreve
-f6d2 cyrFlex
-f6d3 dblGrave
-f6d4 cyrbreve
-f6d5 cyrflex
-f6d6 dblgrave
-f6d7 dieresisacute
-f6d8 dieresisgrave
-f6d9 copyrightserif
-f6da registerserif
-f6db trademarkserif
-f6dc onefitted
-f6dd rupiah
-f6de threequartersemdash
-f6df centinferior
-f6e0 centsuperior
-f6e1 commainferior
-f6e2 commasuperior
-f6e3 dollarinferior
-f6e4 dollarsuperior
-f6e5 hypheninferior
-f6e6 hyphensuperior
-f6e7 periodinferior
-f6e8 periodsuperior
-f6e9 asuperior
-f6ea bsuperior
-f6eb dsuperior
-f6ec esuperior
-f6ed isuperior
-f6ee lsuperior
-f6ef msuperior
-f6f0 osuperior
-f6f1 rsuperior
-f6f2 ssuperior
-f6f3 tsuperior
-f6f4 Brevesmall
-f6f5 Caronsmall
-f6f6 Circumflexsmall
-f6f7 Dotaccentsmall
-f6f8 Hungarumlautsmall
-f6f9 Lslashsmall
-f6fa OEsmall
-f6fb Ogoneksmall
-f6fc Ringsmall
-f6fd Scaronsmall
-f6fe Tildesmall
-f6ff Zcaronsmall
-f721 exclamsmall
-f724 dollaroldstyle
-f726 ampersandsmall
-f730 zerooldstyle
-f731 oneoldstyle
-f732 twooldstyle
-f733 threeoldstyle
-f734 fouroldstyle
-f735 fiveoldstyle
-f736 sixoldstyle
-f737 sevenoldstyle
-f738 eightoldstyle
-f739 nineoldstyle
-f73f questionsmall
-f760 Gravesmall
-f761 Asmall
-f762 Bsmall
-f763 Csmall
-f764 Dsmall
-f765 Esmall
-f766 Fsmall
-f767 Gsmall
-f768 Hsmall
-f769 Ismall
-f76a Jsmall
-f76b Ksmall
-f76c Lsmall
-f76d Msmall
-f76e Nsmall
-f76f Osmall
-f770 Psmall
-f771 Qsmall
-f772 Rsmall
-f773 Ssmall
-f774 Tsmall
-f775 Usmall
-f776 Vsmall
-f777 Wsmall
-f778 Xsmall
-f779 Ysmall
-f77a Zsmall
-f7a1 exclamdownsmall
-f7a2 centoldstyle
-f7a8 Dieresissmall
-f7af Macronsmall
-f7b4 Acutesmall
-f7b8 Cedillasmall
-f7bf questiondownsmall
-f7e0 Agravesmall
-f7e1 Aacutesmall
-f7e2 Acircumflexsmall
-f7e3 Atildesmall
-f7e4 Adieresissmall
-f7e5 Aringsmall
-f7e6 AEsmall
-f7e7 Ccedillasmall
-f7e8 Egravesmall
-f7e9 Eacutesmall
-f7ea Ecircumflexsmall
-f7eb Edieresissmall
-f7ec Igravesmall
-f7ed Iacutesmall
-f7ee Icircumflexsmall
-f7ef Idieresissmall
-f7f0 Ethsmall
-f7f1 Ntildesmall
-f7f2 Ogravesmall
-f7f3 Oacutesmall
-f7f4 Ocircumflexsmall
-f7f5 Otildesmall
-f7f6 Odieresissmall
-f7f8 Oslashsmall
-f7f9 Ugravesmall
-f7fa Uacutesmall
-f7fb Ucircumflexsmall
-f7fc Udieresissmall
-f7fd Yacutesmall
-f7fe Thornsmall
-f7ff Ydieresissmall
-f8e5 radicalex
-f8e6 arrowvertex
-f8e7 arrowhorizex
-f8e8 registersans
-f8e9 copyrightsans
-f8ea trademarksans
-f8eb parenlefttp
-f8ec parenleftex
-f8ed parenleftbt
-f8ee bracketlefttp
-f8ef bracketleftex
-f8f0 bracketleftbt
-f8f1 bracelefttp
-f8f2 braceleftmid
-f8f3 braceleftbt
-f8f4 braceex
-f8f5 integralex
-f8f6 parenrighttp
-f8f7 parenrightex
-f8f8 parenrightbt
-f8f9 bracketrighttp
-f8fa bracketrightex
-f8fb bracketrightbt
-f8fc bracerighttp
-f8fd bracerightmid
-f8fe bracerightbt
-fb00 ff
-fb01 fi
-fb02 fl
-fb03 ffi
-fb04 ffl
-fb1f afii57705
-fb2a afii57694
-fb2b afii57695
-fb35 afii57723
-fb4b afii57700
diff --git a/data/utf-8 b/data/utf-8
deleted file mode 100644
index 044691b4..00000000
--- a/data/utf-8
+++ /dev/null
@@ -1,40 +0,0 @@
-charset utf8
-
-#
-# This file defines the font mappings used for Unicode/UTF-8 text printing.
-#
-# Each line consists of:
-#
-# first last direction width normal bold italic bold-italic
-#
-# First and last are the first and last glyphs in the font mapping
-# that correspond to that font; a maximum of 256 characters can be
-# mapped within each group, with a maximum of 256 mappings (this is a
-# PostScript limitation.) The glyph values are hexadecimal.
-#
-# Direction is the string "ltor" or "rtol", indicating left-to-right or
-# right-to-left text.
-#
-# Width is the string "single" or "double"; double means that the glyphs
-# are twice as wide as ASCII characters in the Monospace typeface.
-#
-# "Normal", "bold", "italic", and "bold-italic" are the typefaces to use
-# for each presentation. If characters are only available in a single
-# style then only one typeface should be listed, e.g.
-#
-# 1000 10ff ltor single Monospace
-#
-# Each font that is listed will be downloaded to the printer when used.
-#
-
-0000 00FF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
-0100 01FF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
-0200 02FF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
-0300 03FF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
-0400 04FF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
-1E00 1EFF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
-2000 20FF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
-2300 23FF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
-2400 24FF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
-2500 25FF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
-2600 26FF ltor single Monospace Monospace-Bold Monospace-Oblique Monospace-BoldOblique
diff --git a/desktop/cups.desktop.in b/desktop/cups.desktop.in
index ef200cec..911a75e3 100644
--- a/desktop/cups.desktop.in
+++ b/desktop/cups.desktop.in
@@ -7,6 +7,8 @@ Terminal=false
Type=Application
Name=Manage Printing
Comment=CUPS Web Interface
+Name[ca]=Gestor d'impressió
+Comment[ca]=Interfície web de CUPS
Name[de]=Druckerverwaltung
Comment[de]=CUPS Webinterface
Name[en_US]=Manage Printing
@@ -21,8 +23,6 @@ Name[fr]=Gestionnaire d'impression
Comment[fr]=Interface Web de CUPS
Name[he]=נהל הדפסות
Comment[he]=ממשק דפדפן של CUPS
-Name[hu]=Nyomtatás kezelése
-Comment[hu]=A CUPS webes felülete
Name[id]=Manajemen Pencetakan
Comment[id]=Antarmuka Web CUPS
Name[it]=Gestione stampa
diff --git a/doc/Makefile b/doc/Makefile
index 014074ab..bcd494cc 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -1,5 +1,5 @@
#
-# "$Id: Makefile 9483 2011-01-17 05:40:28Z mike $"
+# "$Id: Makefile 10429 2012-04-23 18:04:24Z mike $"
#
# Documentation makefile for CUPS.
#
@@ -66,7 +66,7 @@ HELPFILES = \
help/man-cancel.html \
help/man-cups-config.html \
help/man-cups-lpd.html \
- help/man-cups-polld.html \
+ help/man-cups-snmp.html \
help/man-cupsaddsmb.html \
help/man-cupsd.html \
help/man-cupsenable.html \
diff --git a/doc/ca/index.html.in b/doc/ca/index.html.in
new file mode 100644
index 00000000..3cd2c33f
--- /dev/null
+++ b/doc/ca/index.html.in
@@ -0,0 +1,107 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<HEAD>
+ <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
+ <TITLE>Inici - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
+ <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
+ <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
+</HEAD>
+<BODY>
+<TABLE CLASS="page" SUMMARY="{title}">
+<TR><TD CLASS="body">
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
+<TR HEIGHT="36">
+<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
+SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
+<TD CLASS="sel"><A HREF="/">&nbsp;&nbsp;Inici&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/admin">&nbsp;&nbsp;Administració&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/classes/">&nbsp;&nbsp;Classes&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/help/">&nbsp;&nbsp;Ajuda&nbsp;en&nbsp;línia&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/jobs/">&nbsp;&nbsp;Tasques&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/printers/">&nbsp;&nbsp;Impressores&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
+TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
+AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
+<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
+</TR>
+</TABLE>
+
+<TABLE CLASS="indent" SUMMARY="">
+<TR><TD STYLE="padding-right: 20px;">
+
+<H1>CUPS @CUPS_VERSION@</H1>
+
+<P>CUPS és el sistema d'impressió de codi obert i basat en estandards desenvolupat per
+<A HREF="http://www.apple.com/">Apple Inc.</A> per OS<SUP>&reg;</SUP> X and
+altres sistemes operatius basats en UNIX<SUP>&reg;</SUP></P>
+
+</TD>
+<TD><A HREF="http://www.cups.org/"><IMG SRC="images/cups-icon.png" WIDTH="128"
+HEIGHT="128" ALT="CUPS"></A></TD>
+</TR>
+</TABLE>
+
+<TABLE CLASS="indent" SUMMARY="">
+<TR><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-right: 20px;">
+
+<H2>CUPS per usuaris</H2>
+
+<P><A HREF="help/overview.html">Descripció general del CUPS</A></P>
+
+<P><A HREF="help/options.html">Impresió i opcions en linia de comandes</A></P>
+
+<P><A HREF="help/whatsnew.html">Novetats del CUPS 1.4</A></P>
+
+<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Fòrum d'usuaris</A></P>
+
+</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
+
+<H2>CUPS per Administradors</H2>
+
+<P><A HREF="admin">Afegir impressores i classes</A></P>
+
+<P><A HREF="help/policies.html">Gestió de les polítiques de treball</A></P>
+
+<P><A HREF="help/accounting.html">Bàsic de comptes d'impressió</A></P>
+
+<P><A HREF="help/security.html">Seguritat del servidor</A></P>
+
+<P><A HREF="help/kerberos.html">Ús d'autenticació amb el Kerberos</A></P>
+
+<P><A HREF="help/network.html">Ús d'impressores en xarxa</A></P>
+
+<P><A HREF="help/ref-cupsd-conf.html">Referència del cupsd.conf</A></P>
+
+<P><A HREF="http://www.cups.org/ppd.php">Cerca de controladors d'impressora</A></P>
+
+</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
+
+<H2>CUPS per desenvolupadors</H2>
+
+<P><A HREF="help/api-overview.html">Introducció a la programació amb CUPS</A></P>
+
+<P><A HREF="help/api-cups.html">La API de CUPS</A></P>
+
+<P><A HREF="help/api-filter.html">Programació de filtres i rerefons</A></P>
+
+<P><A HREF="help/api-httpipp.html">APIs per HTTP i IPP</A></P>
+
+<P><A HREF="help/api-ppd.html">API per PPD</A></P>
+
+<P><A HREF="help/api-raster.html">API per Raster</A></P>
+
+<P><A HREF="help/ref-ppdcfile.html">Referència del fitxer d'inf. del compilador del controlador per PPD</A></P>
+
+<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Fòrum de desenvolupadors</A></P>
+
+</TD></TR>
+</TABLE>
+
+</TD></TR>
+<TR><TD>&nbsp;</TD></TR>
+<TR><TD CLASS="trailer">CUPS i el seu logotip són marques registrades de
+<A HREF="http://www.apple.com">Apple Inc.</A> CUPS té copyright 2007-2012 d'Apple
+Inc. Tots els drets reservats.</TD></TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/doc/de/index.html.in b/doc/de/index.html.in
deleted file mode 100644
index 37af8415..00000000
--- a/doc/de/index.html.in
+++ /dev/null
@@ -1,107 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>Home - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="sel"><A HREF="/">&nbsp;&nbsp;Startseite&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/admin">&nbsp;&nbsp;Verwaltung&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/classes/">&nbsp;&nbsp;Klassen&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/help/">&nbsp;&nbsp;Online-&nbsp;Hilfe&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/jobs/">&nbsp;&nbsp;Auftr&auml;ge&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/printers/">&nbsp;&nbsp;Drucker&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
-AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD STYLE="padding-right: 20px;">
-
-<H1>Common UNIX Printing System @CUPS_VERSION@</H1>
-
-<P>CUPS ist das auf Standards basierte, Opensource-Drucksystem, welches von
-<A HREF="http://www.apple.com/">Apple Inc.</A> f&uuml;r Mac OS<SUP>&reg;</SUP> X und
-andere UNIX<SUP>&reg;</SUP>-&auml;hnliche Betriebssysteme entwickelt wird.</P>
-
-</TD>
-<TD><A HREF="http://www.cups.org/"><IMG SRC="images/cups-icon.png" WIDTH="128"
-HEIGHT="128" ALT="CUPS"></A></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-right: 20px;">
-
-<H2>CUPS f&uuml;r Benutzer</H2>
-
-<P><A HREF="help/overview.html">CUPS.&Uuml;bersicht</A></P>
-
-<P><A HREF="help/options.html">Kommandozeilendruck und Einstellungen</A></P>
-
-<P><A HREF="help/whatsnew.html">Neues in CUPS 1.5</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Benutzerforum</A></P>
-
-</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
-
-<H2>CUPS f&uuml;r Administratoren</H2>
-
-<P><A HREF="admin">Drucker und Klassen hinzuf&uuml;gen</A></P>
-
-<P><A HREF="help/policies.html">Betriebsrichtlinien verwalten</A></P>
-
-<P><A HREF="help/accounting.html">Basiswissen Druckabrechnung</A></P>
-
-<P><A HREF="help/security.html">Sicherheit des Servers</A></P>
-
-<P><A HREF="help/kerberos.html">Verwenden der Kerberos Authentifizierung</A></P>
-
-<P><A HREF="help/network.html">Benutzen von Netzwerkdruckern</A></P>
-
-<P><A HREF="help/ref-cupsd-conf.html">cupsd.conf Referenz</A></P>
-
-<P><A HREF="http://www.cups.org/ppd.php">Druckertreiber finden</A></P>
-
-</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
-
-<H2>CUPS f&uuml;r Entwickler</H2>
-
-<P><A HREF="help/api-overview.html">Einf&uuml;hrung in die CUPS-Programmierung</A></P>
-
-<P><A HREF="help/api-cups.html">CUPS-API</A></P>
-
-<P><A HREF="help/api-filter.html">Filter- und Backend-Programmierung</A></P>
-
-<P><A HREF="help/api-httpipp.html">HTTP- und IPP-APIs</A></P>
-
-<P><A HREF="help/api-ppd.html">PPD-API</A></P>
-
-<P><A HREF="help/api-raster.html">Raster-API</A></P>
-
-<P><A HREF="help/ref-ppdcfile.html">PPD Compiler Driver Information File Reference</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Entwicklerforum</A></P>
-
-</TD></TR>
-</TABLE>
-
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS und das CUPS Logo sind
-eingetragene Warenzeichen der <A HREF="http://www.apple.com">Apple Inc.</A>
-CUPS ist urheberrechtlich gesch&uuml;tzt 2007-2012 von Apple Inc, alle Rechte vorbehalten.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/doc/es/index.html.in b/doc/es/index.html.in
index d40bf556..4c57ed5a 100644
--- a/doc/es/index.html.in
+++ b/doc/es/index.html.in
@@ -32,7 +32,7 @@ AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
<H1>CUPS @CUPS_VERSION@</H1>
<P>CUPS es el sistema de impresi&oacute;n de c&oacute;digo abierto basado en
-est&aacute;ndares desarrollado por <A HREF="http://www.apple.com/">Apple Inc.</A> para Mac
+est&aacute;ndares desarrollado por <A HREF="http://www.apple.com/">Apple Inc.</A> para
OS<SUP>&reg;</SUP> X y otros sistemas operativos tipo UNIX<SUP>&reg;</SUP>.</P>
</TD>
@@ -50,7 +50,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
<P><A HREF="help/options.html">Impresi&oacute;n desde la l&iacute;nea de comandos y opciones</A></P>
-<P><A HREF="help/whatsnew.html">Qu&eacute; hay de nuevo en CUPS 1.5</A></P>
+<P><A HREF="help/whatsnew.html">Qu&eacute; hay de nuevo en CUPS 1.6</A></P>
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Foro de usuarios</A></P>
@@ -78,7 +78,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
<H2>CUPS para desarrolladores</H2>
-<P><A HREF="help/api-overview.html">Introducci&oacute;n a la programación de CUPS</A></P>
+<P><A HREF="help/api-overview.html">Introducci&oacute;n a la programaci&oacute;n de CUPS</A></P>
<P><A HREF="help/api-cups.html">La API de CUPS</A></P>
diff --git a/doc/eu/index.html.in b/doc/eu/index.html.in
deleted file mode 100644
index 339e5244..00000000
--- a/doc/eu/index.html.in
+++ /dev/null
@@ -1,106 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>Hasiera - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="sel"><A HREF="/">&nbsp;&nbsp;Hasiera&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/admin">&nbsp;&nbsp;Administrazioa&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/classes/">&nbsp;&nbsp;Klaseak&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/help/">&nbsp;&nbsp;Lineako&nbsp;laguntza&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/jobs/">&nbsp;&nbsp;Lanak&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/printers/">&nbsp;&nbsp;Inprimagailuak&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Bilatu laguntzan"
-AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD STYLE="padding-right: 20px;">
-
-<H1>CUPS @CUPS_VERSION@</H1>
-
-<P><A HREF="http://www.apple.com/">Apple Inc.</A>-ek Mac OS<SUP>&reg;</SUP> X eta
-beste UNIX<SUP>&reg;</SUP> bezalako sistema eragileentzako iturburu irekiko
-inprimatzeko sisteman oinarrituta dago.</P>
-
-</TD>
-<TD><A HREF="http://www.cups.org/"><IMG SRC="images/cups-icon.png" WIDTH="128"
-HEIGHT="128" ALT="CUPS"></A></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-right: 20px;">
-
-<H2>CUPS erabiltzaileentzako</H2>
-
-<P><A HREF="help/overview.html">CUPSen gainbegiraketa</A></P>
-
-<P><A HREF="help/options.html">Komando-lerroaren bidez inprimatzea eta aukerak</A></P>
-
-<P><A HREF="help/whatsnew.html">CUPS 1.5 bertsioak dakartzan berrikuntza.</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Erabiltzaileen foroa</A></P>
-
-</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
-
-<H2>CUPS administratzaileentzako</H2>
-
-<P><A HREF="admin">Inprimagailuak eta klaseak gehitzea</A></P>
-
-<P><A HREF="help/policies.html">Kudeaketako eragiketen politikak</A></P>
-
-<P><A HREF="help/accounting.html">Inprimagailuaren oinarrizko kontabilitatea</A></P>
-
-<P><A HREF="help/security.html">Zerbitzariaren segurtasuna</A></P>
-
-<P><A HREF="help/kerberos.html">Kerberos autentifikazioa erabiltzea</A></P>
-
-<P><A HREF="help/network.html">Sareko inprimagailuak erabiltzea</A></P>
-
-<P><A HREF="help/ref-cupsd-conf.html">cupsd.conf erreferentzia</A></P>
-
-<P><A HREF="http://www.cups.org/ppd.php">Bilatu inprimagailuaren kontrolatzaileak</A></P>
-
-</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
-
-<H2>CUPS garatzaileentzako</H2>
-
-<P><A HREF="help/api-overview.html">Sarrera CUPSen programaziora</A></P>
-
-<P><A HREF="help/api-cups.html">CUPSen APIa</A></P>
-
-<P><A HREF="help/api-filter.html">Iragazkien eta atzeko planoan programatzeea</A></P>
-
-<P><A HREF="help/api-httpipp.html">HTTP eta IPP APIak</A></P>
-
-<P><A HREF="help/api-ppd.html">PPD APIa</A></P>
-
-<P><A HREF="help/api-raster.html">Bilbearen APIa</A></P>
-
-<P><A HREF="help/ref-ppdcfile.html">PPD kontrolatzaileen konpilatzailearen informazioaren fitxategiaren erreferentzia</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Garatzaileen forua</A></P>
-
-</TD></TR>
-</TABLE>
-
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS eta CUPSen logotipoa <A HREF="http://www.apple.com">Apple Inc.</A> en marka erregistratuak dira.
-CUPSen copyright-a 2007-2012 Apple Inc. Eskubide guztiak gordeta.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/doc/fr/index.html.in b/doc/fr/index.html.in
deleted file mode 100644
index 86f24357..00000000
--- a/doc/fr/index.html.in
+++ /dev/null
@@ -1,107 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>Accueil - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="sel"><A HREF="/">&nbsp;&nbsp;Accueil&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/admin">&nbsp;&nbsp;Administration&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/classes/">&nbsp;&nbsp;Classes&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/help/">&nbsp;&nbsp;Aide&nbsp;En&nbsp;Ligne&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/jobs/">&nbsp;&nbsp;T&acirc;ches&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/printers/">&nbsp;&nbsp;Imprimantes&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
-AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD STYLE="padding-right: 20px;">
-
-<H1>CUPS @CUPS_VERSION@</H1>
-
-<P>CUPS est le syst&egrave;me d'impression Open Source, bas&eacute; sur des standards, d&eacute;velopp&eacute; par
-<A HREF="http://www.apple.com/">Apple Inc.</A> pour Mac OS<SUP>&reg;</SUP> X et
-les autres OS UNIX<SUP>&reg;</SUP>-like.</P>
-
-</TD>
-<TD><A HREF="http://www.cups.org/"><IMG SRC="images/cups-icon.png" WIDTH="128"
-HEIGHT="128" ALT="CUPS"></A></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-right: 20px;">
-
-<H2>CUPS pour les utilisateurs</H2>
-
-<P><A HREF="help/overview.html">Pr&eacute;sentation de CUPS</A></P>
-
-<P><A HREF="help/options.html">Impression en ligne de commande et options</A></P>
-
-<P><A HREF="help/whatsnew.html">Quoi de neuf dans CUPS 1.5</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Forum utilisateur</A></P>
-
-</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
-
-<H2>CUPS pour les administrateurs</H2>
-
-<P><A HREF="admin">Ajout d'imprimantes et de classes</A></P>
-
-<P><A HREF="help/policies.html">G&eacute;rer les politiques</A></P>
-
-<P><A HREF="help/accounting.html">Printer Accounting Basics</A></P>
-
-<P><A HREF="help/security.html">S&eacute;curit&eacute; du serveur</A></P>
-
-<P><A HREF="help/kerberos.html">Utiliser l'authentification Kerberos</A></P>
-
-<P><A HREF="help/network.html">Utiliser des imprimantes r&eacute;seaux</A></P>
-
-<P><A HREF="help/ref-cupsd-conf.html">R&eacute;f&eacute;rences sur cupsd.conf</A></P>
-
-<P><A HREF="http://www.cups.org/ppd.php">Trouver des pilotes d'imprimantes</A></P>
-
-</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
-
-<H2>CUPS pour les d&eacute;veloppeurs</H2>
-
-<P><A HREF="help/api-overview.html">Introduction &agrave; la programmation CUPS</A></P>
-
-<P><A HREF="help/api-cups.html">L'API CUPS</A></P>
-
-<P><A HREF="help/api-filter.html">Programmation de filtres et de backends</A></P>
-
-<P><A HREF="help/api-httpipp.html">Les API HTTP et IPP</A></P>
-
-<P><A HREF="help/api-ppd.html">L'API PPD</A></P>
-
-<P><A HREF="help/api-raster.html">L'API Raster</A></P>
-
-<P><A HREF="help/ref-ppdcfile.html">PPD Compiler Driver Information File Reference</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Forum d&eacute;veloppeurs</A></P>
-
-</TD></TR>
-</TABLE>
-
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS et le logo CUPS sont des marques d&eacute;pos&eacute;es de
-<A HREF="http://www.apple.com">Apple Inc.</A> CUPS est sous copyright 2007-2012 Apple
-Inc. Tous droits r&eacute;serv&eacute;s.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/doc/help/api-array.html b/doc/help/api-array.html
index 7f22251b..7211fd8a 100644
--- a/doc/help/api-array.html
+++ b/doc/help/api-array.html
@@ -341,7 +341,7 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: api-array.html 9772 2011-05-12 05:46:30Z mike $"
+ "$Id: api-array.html 10424 2012-04-23 17:26:57Z mike $"
Array API header for CUPS.
@@ -413,7 +413,7 @@ div.contents ul.subcontents li {
</ul></li>
</ul>
<!--
- "$Id: api-array.html 9772 2011-05-12 05:46:30Z mike $"
+ "$Id: api-array.html 10424 2012-04-23 17:26:57Z mike $"
Array API introduction for CUPS.
@@ -609,7 +609,7 @@ for (s = (char *)<a href='#cupsArrayFirst'>cupsArrayFirst</a>(array); s != NULL;
puts(s);
</pre>
<h2 class="title"><a name="FUNCTIONS">Functions</a></h2>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayAdd">cupsArrayAdd</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayAdd">cupsArrayAdd</a></h3>
<p class="description">Add an element to the array.</p>
<p class="code">
int cupsArrayAdd (<br>
@@ -631,7 +631,7 @@ appended at the end of the run of identical elements. For unsorted arrays,
the element is appended to the end of the array.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayClear">cupsArrayClear</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayClear">cupsArrayClear</a></h3>
<p class="description">Clear the array.</p>
<p class="code">
void cupsArrayClear (<br>
@@ -648,7 +648,7 @@ The caller is responsible for freeing the memory used by the
elements themselves.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayCount">cupsArrayCount</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayCount">cupsArrayCount</a></h3>
<p class="description">Get the number of elements in the array.</p>
<p class="code">
int cupsArrayCount (<br>
@@ -661,7 +661,7 @@ int cupsArrayCount (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Number of elements</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayCurrent">cupsArrayCurrent</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayCurrent">cupsArrayCurrent</a></h3>
<p class="description">Return the current element in the array.</p>
<p class="code">
void *cupsArrayCurrent (<br>
@@ -679,7 +679,7 @@ void *cupsArrayCurrent (<br>
<a href="#cupsArrayFirst"><code>cupsArrayFirst</code></a>, or <a href="#cupsArrayIndex"><code>cupsArrayIndex</code></a>, or <a href="#cupsArrayLast"><code>cupsArrayLast</code></a>.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayDelete">cupsArrayDelete</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayDelete">cupsArrayDelete</a></h3>
<p class="description">Free all memory used by the array.</p>
<p class="code">
void cupsArrayDelete (<br>
@@ -695,7 +695,7 @@ void cupsArrayDelete (<br>
elements themselves.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayDup">cupsArrayDup</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayDup">cupsArrayDup</a></h3>
<p class="description">Duplicate the array.</p>
<p class="code">
<a href="#cups_array_t">cups_array_t</a> *cupsArrayDup (<br>
@@ -708,7 +708,7 @@ elements themselves.
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Duplicate array</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayFind">cupsArrayFind</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayFind">cupsArrayFind</a></h3>
<p class="description">Find an element in the array.</p>
<p class="code">
void *cupsArrayFind (<br>
@@ -724,7 +724,7 @@ void *cupsArrayFind (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Element found or <code>NULL</code></p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayFirst">cupsArrayFirst</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayFirst">cupsArrayFirst</a></h3>
<p class="description">Get the first element in the array.</p>
<p class="code">
void *cupsArrayFirst (<br>
@@ -737,7 +737,7 @@ void *cupsArrayFirst (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">First element or <code>NULL</code> if the array is empty</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsArrayGetIndex">cupsArrayGetIndex</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsArrayGetIndex">cupsArrayGetIndex</a></h3>
<p class="description">Get the index of the current element.</p>
<p class="code">
int cupsArrayGetIndex (<br>
@@ -755,7 +755,7 @@ int cupsArrayGetIndex (<br>
<a href="#cupsArrayFirst"><code>cupsArrayFirst</code></a>, or <a href="#cupsArrayIndex"><code>cupsArrayIndex</code></a>, or <a href="#cupsArrayLast"><code>cupsArrayLast</code></a>.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsArrayGetInsert">cupsArrayGetInsert</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsArrayGetInsert">cupsArrayGetInsert</a></h3>
<p class="description">Get the index of the last inserted element.</p>
<p class="code">
int cupsArrayGetInsert (<br>
@@ -768,7 +768,7 @@ int cupsArrayGetInsert (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Index of the last inserted element, starting at 0</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayIndex">cupsArrayIndex</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayIndex">cupsArrayIndex</a></h3>
<p class="description">Get the N-th element in the array.</p>
<p class="code">
void *cupsArrayIndex (<br>
@@ -784,7 +784,7 @@ void *cupsArrayIndex (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">N-th element or <code>NULL</code></p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayInsert">cupsArrayInsert</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayInsert">cupsArrayInsert</a></h3>
<p class="description">Insert an element in the array.</p>
<p class="code">
int cupsArrayInsert (<br>
@@ -806,7 +806,7 @@ inserted at the beginning of the run of identical elements. For unsorted
arrays, the element is inserted at the beginning of the array.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayLast">cupsArrayLast</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayLast">cupsArrayLast</a></h3>
<p class="description">Get the last element in the array.</p>
<p class="code">
void *cupsArrayLast (<br>
@@ -819,7 +819,7 @@ void *cupsArrayLast (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Last element or <code>NULL</code> if the array is empty</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayNew">cupsArrayNew</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayNew">cupsArrayNew</a></h3>
<p class="description">Create a new array.</p>
<p class="code">
<a href="#cups_array_t">cups_array_t</a> *cupsArrayNew (<br>
@@ -842,7 +842,7 @@ data pointer argument can safely be omitted when not required so functions
like <code>strcmp</code> can be used for sorted string arrays.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsArrayNew2">cupsArrayNew2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsArrayNew2">cupsArrayNew2</a></h3>
<p class="description">Create a new array with hash.</p>
<p class="code">
<a href="#cups_array_t">cups_array_t</a> *cupsArrayNew2 (<br>
@@ -874,7 +874,7 @@ The hash function (&quot;h&quot;) is used to implement cached lookups with the
specified hash size (&quot;hsize&quot;).
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="cupsArrayNew3">cupsArrayNew3</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="cupsArrayNew3">cupsArrayNew3</a></h3>
<p class="description">Create a new array with hash and/or free function.</p>
<p class="code">
<a href="#cups_array_t">cups_array_t</a> *cupsArrayNew3 (<br>
@@ -918,7 +918,7 @@ The free function (&quot;cf&quot;) is used to automatically free/release element
removed or the array is deleted.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayNext">cupsArrayNext</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayNext">cupsArrayNext</a></h3>
<p class="description">Get the next element in the array.</p>
<p class="code">
void *cupsArrayNext (<br>
@@ -939,7 +939,7 @@ The next element is undefined until you call <a href="#cupsArrayFind"><code>cups
to set the current element.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayPrev">cupsArrayPrev</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayPrev">cupsArrayPrev</a></h3>
<p class="description">Get the previous element in the array.</p>
<p class="code">
void *cupsArrayPrev (<br>
@@ -960,7 +960,7 @@ The previous element is undefined until you call <a href="#cupsArrayFind"><code>
to set the current element.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayRemove">cupsArrayRemove</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayRemove">cupsArrayRemove</a></h3>
<p class="description">Remove an element from the array.</p>
<p class="code">
int cupsArrayRemove (<br>
@@ -984,7 +984,7 @@ The caller is responsible for freeing the memory used by the
removed element.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayRestore">cupsArrayRestore</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayRestore">cupsArrayRestore</a></h3>
<p class="description">Reset the current element to the last <a href="#cupsArraySave"><code>cupsArraySave</code></a>.</p>
<p class="code">
void *cupsArrayRestore (<br>
@@ -997,7 +997,7 @@ void *cupsArrayRestore (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New current element</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArraySave">cupsArraySave</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArraySave">cupsArraySave</a></h3>
<p class="description">Mark the current element for a later <a href="#cupsArrayRestore"><code>cupsArrayRestore</code></a>.</p>
<p class="code">
int cupsArraySave (<br>
@@ -1018,7 +1018,7 @@ to set the current element.<br>
The save/restore stack is guaranteed to be at least 32 elements deep.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsArrayUserData">cupsArrayUserData</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsArrayUserData">cupsArrayUserData</a></h3>
<p class="description">Return the user data for an array.</p>
<p class="code">
void *cupsArrayUserData (<br>
diff --git a/doc/help/api-cups.html b/doc/help/api-cups.html
index 2dd40830..2d6c7882 100644
--- a/doc/help/api-cups.html
+++ b/doc/help/api-cups.html
@@ -341,7 +341,7 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: api-cups.html 9772 2011-05-12 05:46:30Z mike $"
+ "$Id: api-cups.html 10507 2012-05-23 22:39:50Z mike $"
CUPS API header for CUPS.
@@ -400,8 +400,13 @@ div.contents ul.subcontents li {
<li><a href="#cupsAdminSetServerSettings" title="Set settings on the server.">cupsAdminSetServerSettings</a></li>
<li><a href="#cupsCancelJob" title="Cancel a print job on the default server.">cupsCancelJob</a></li>
<li><a href="#cupsCancelJob2" title="Cancel or purge a print job.">cupsCancelJob2</a></li>
+ <li><a href="#cupsConnectDest" title="Connect to the server for a destination.">cupsConnectDest</a></li>
+ <li><a href="#cupsConnectDestBlock" title="Connect to the server for a destination.">cupsConnectDestBlock</a></li>
+ <li><a href="#cupsCopyDest" title="Callback block">cupsCopyDest</a></li>
<li><a href="#cupsCreateJob" title="Create an empty job for streaming.">cupsCreateJob</a></li>
<li><a href="#cupsEncryption" title="Get the current encryption settings.">cupsEncryption</a></li>
+ <li><a href="#cupsEnumDests" title="Enumerate available destinations with a callback function.">cupsEnumDests</a></li>
+ <li><a href="#cupsEnumDestsBlock" title="Enumerate available destinations with a block.">cupsEnumDestsBlock</a></li>
<li><a href="#cupsFinishDocument" title="Finish sending a document.">cupsFinishDocument</a></li>
<li><a href="#cupsFreeDests" title="Free the memory used by the list of destinations.">cupsFreeDests</a></li>
<li><a href="#cupsFreeJobs" title="Free memory used by job data.">cupsFreeJobs</a></li>
@@ -463,31 +468,45 @@ connections.">cupsSetCredentials</a></li>
<li><a href="#cupsUser" title="Return the current user's name.">cupsUser</a></li>
</ul></li>
<li><a href="#TYPES">Data Types</a><ul class="code">
- <li><a href="#cups_client_cert_cb_t" title="Client credentials callback ">cups_client_cert_cb_t</a></li>
+ <li><a href="#cups_client_cert_cb_t" title="Client credentials callback
+">cups_client_cert_cb_t</a></li>
+ <li><a href="#cups_dest_block_t" title="Destination enumeration block
+">cups_dest_block_t</a></li>
+ <li><a href="#cups_dest_cb_t" title="Destination enumeration callback
+">cups_dest_cb_t</a></li>
<li><a href="#cups_dest_t" title="Destination">cups_dest_t</a></li>
- <li><a href="#cups_device_cb_t" title="Device callback ">cups_device_cb_t</a></li>
+ <li><a href="#cups_device_cb_t" title="Device callback
+">cups_device_cb_t</a></li>
+ <li><a href="#cups_dinfo_t" title="Destination capability and status
+information ">cups_dinfo_t</a></li>
<li><a href="#cups_job_t" title="Job">cups_job_t</a></li>
<li><a href="#cups_option_t" title="Printer Options">cups_option_t</a></li>
- <li><a href="#cups_password_cb2_t" title="New password callback ">cups_password_cb2_t</a></li>
+ <li><a href="#cups_password_cb2_t" title="New password callback
+">cups_password_cb2_t</a></li>
<li><a href="#cups_password_cb_t" title="Password callback">cups_password_cb_t</a></li>
<li><a href="#cups_ptype_t" title="Printer type/capability bits">cups_ptype_t</a></li>
- <li><a href="#cups_server_cert_cb_t" title="Server credentials callback ">cups_server_cert_cb_t</a></li>
+ <li><a href="#cups_server_cert_cb_t" title="Server credentials callback
+">cups_server_cert_cb_t</a></li>
+ <li><a href="#cups_size_t" title="Media Size ">cups_size_t</a></li>
</ul></li>
<li><a href="#STRUCTURES">Structures</a><ul class="code">
<li><a href="#cups_dest_s" title="Destination">cups_dest_s</a></li>
<li><a href="#cups_job_s" title="Job">cups_job_s</a></li>
<li><a href="#cups_option_s" title="Printer Options">cups_option_s</a></li>
+ <li><a href="#cups_size_s" title="Media Size ">cups_size_s</a></li>
+ <li><a href="#pollfd" title="User data (unused)">pollfd</a></li>
</ul></li>
<li><a href="#VARIABLES">Variables</a><ul class="code">
<li><a href="#CF_RETURNS_RETAINED" title="Get the Apple language identifier associated with a
locale ID.">CF_RETURNS_RETAINED</a></li>
</ul></li>
<li><a href="#ENUMERATIONS">Constants</a><ul class="code">
- <li><a href="#cups_ptype_e" title="Printer type/capability bit constants">cups_ptype_e</a></li>
+ <li><a href="#cups_ptype_e" title="Printer type/capability bit
+constants">cups_ptype_e</a></li>
</ul></li>
</ul>
<!--
- "$Id: api-cups.html 9772 2011-05-12 05:46:30Z mike $"
+ "$Id: api-cups.html 10507 2012-05-23 22:39:50Z mike $"
API introduction for CUPS.
@@ -1004,7 +1023,7 @@ int cupsAddOption (<br>
<h4 class="discussion">Discussion</h4>
<p class="discussion">New option arrays can be initialized simply by passing 0 for the
&quot;num_options&quot; parameter.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsAdminCreateWindowsPPD">cupsAdminCreateWindowsPPD</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsAdminCreateWindowsPPD">cupsAdminCreateWindowsPPD</a></h3>
<p class="description">Create the Windows PPD file for a printer.</p>
<p class="code">
char *cupsAdminCreateWindowsPPD (<br>
@@ -1026,7 +1045,7 @@ char *cupsAdminCreateWindowsPPD (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">PPD file or NULL</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsAdminExportSamba">cupsAdminExportSamba</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsAdminExportSamba">cupsAdminExportSamba</a></h3>
<p class="description">Export a printer to Samba.</p>
<p class="code">
int cupsAdminExportSamba (<br>
@@ -1054,7 +1073,7 @@ int cupsAdminExportSamba (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">1 on success, 0 on failure</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsAdminGetServerSettings">cupsAdminGetServerSettings</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsAdminGetServerSettings">cupsAdminGetServerSettings</a></h3>
<p class="description">Get settings from the server.</p>
<p class="code">
int cupsAdminGetServerSettings (<br>
@@ -1078,7 +1097,7 @@ int cupsAdminGetServerSettings (<br>
you are done with them.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsAdminSetServerSettings">cupsAdminSetServerSettings</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsAdminSetServerSettings">cupsAdminSetServerSettings</a></h3>
<p class="description">Set settings on the server.</p>
<p class="code">
int cupsAdminSetServerSettings (<br>
@@ -1119,7 +1138,7 @@ to cancel the current job on the named destination.<br>
<br>
Use the <a href="#cupsLastError"><code>cupsLastError</code></a> and <a href="#cupsLastErrorString"><code>cupsLastErrorString</code></a> functions to get
the cause of any failure.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsCancelJob2">cupsCancelJob2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsCancelJob2">cupsCancelJob2</a></h3>
<p class="description">Cancel or purge a print job.</p>
<p class="code">
ipp_status_t cupsCancelJob2 (<br>
@@ -1152,7 +1171,109 @@ Use the <a href="#cupsLastError"><code>cupsLastError</code></a> and <a href="#cu
the cause of any failure.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsCreateJob">cupsCreateJob</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="cupsConnectDest">cupsConnectDest</a></h3>
+<p class="description">Connect to the server for a destination.</p>
+<p class="code">
+http_t *cupsConnectDest (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_dest_t">cups_dest_t</a> *dest,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;unsigned flags,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int msec,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int *cancel,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;char *resource,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;size_t resourcesize,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_dest_cb_t">cups_dest_cb_t</a> cb,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;void *user_data<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>dest</dt>
+<dd class="description">Destination</dd>
+<dt>flags</dt>
+<dd class="description">Connection flags</dd>
+<dt>msec</dt>
+<dd class="description">Timeout in milliseconds</dd>
+<dt>cancel</dt>
+<dd class="description">Pointer to &quot;cancel&quot; variable</dd>
+<dt>resource</dt>
+<dd class="description">Resource buffer</dd>
+<dt>resourcesize</dt>
+<dd class="description">Size of resource buffer</dd>
+<dt>cb</dt>
+<dd class="description">Callback function</dd>
+<dt>user_data</dt>
+<dd class="description">User data pointer</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Connection to server or <code>NULL</code></p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">Connect to the destination, returning a new http_t connection object and
+optionally the resource path to use for the destination. These calls will
+block until a connection is made, the timeout expires, the integer pointed
+to by &quot;cancel&quot; is non-zero, or the callback function (or block) returns 0,
+The caller is responsible for calling httpClose() on the returned object.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="cupsConnectDestBlock">cupsConnectDestBlock</a></h3>
+<p class="description">Connect to the server for a destination.</p>
+<p class="code">
+http_t *cupsConnectDestBlock (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_dest_t">cups_dest_t</a> *dest,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;unsigned flags,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int msec,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int *cancel,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;char *resource,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;size_t resourcesize,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_dest_block_t">cups_dest_block_t</a> block<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>dest</dt>
+<dd class="description">Destination</dd>
+<dt>flags</dt>
+<dd class="description">Connection flags</dd>
+<dt>msec</dt>
+<dd class="description">Timeout in milliseconds</dd>
+<dt>cancel</dt>
+<dd class="description">Pointer to &quot;cancel&quot; variable</dd>
+<dt>resource</dt>
+<dd class="description">Resource buffer</dd>
+<dt>resourcesize</dt>
+<dd class="description">Size of resource buffer</dd>
+<dt>block</dt>
+<dd class="description">Callback block</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Connection to server or <code>NULL</code></p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">Connect to the destination, returning a new http_t connection object and
+optionally the resource path to use for the destination. These calls will
+block until a connection is made, the timeout expires, the integer pointed
+to by &quot;cancel&quot; is non-zero, or the callback function (or block) returns 0,
+The caller is responsible for calling httpClose() on the returned object.
+
+</p>
+<h3 class="function"><a name="cupsCopyDest">cupsCopyDest</a></h3>
+<p class="description">Callback block</p>
+<p class="code">
+int cupsCopyDest (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_dest_t">cups_dest_t</a> *dest,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int num_dests,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_dest_t">cups_dest_t</a> **dests<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>dest</dt>
+<dt>num_dests</dt>
+<dt>dests</dt>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Copy a destination.</p>
+<p class="discussion">Make a copy of the destination to an array of destinations (or just a single
+copy) - for use with the cupsEnumDests* functions. The caller is responsible
+for calling cupsFreeDests() on the returned object(s).
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsCreateJob">cupsCreateJob</a></h3>
<p class="description">Create an empty job for streaming.</p>
<p class="code">
int cupsCreateJob (<br>
@@ -1201,7 +1322,87 @@ Note: The current encryption setting is tracked separately for each thread
in a program. Multi-threaded programs that override the setting via the
<a href="#cupsSetEncryption"><code>cupsSetEncryption</code></a> function need to do so in each thread for the same
setting to be used.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsFinishDocument">cupsFinishDocument</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="cupsEnumDests">cupsEnumDests</a></h3>
+<p class="description">Enumerate available destinations with a callback function.</p>
+<p class="code">
+int cupsEnumDests (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;unsigned flags,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int msec,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int *cancel,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_ptype_t">cups_ptype_t</a> type,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_ptype_t">cups_ptype_t</a> mask,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_dest_cb_t">cups_dest_cb_t</a> cb,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;void *user_data<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>flags</dt>
+<dd class="description">Enumeration flags</dd>
+<dt>msec</dt>
+<dd class="description">Timeout in milliseconds,
+-1 for indefinite</dd>
+<dt>cancel</dt>
+<dd class="description">Pointer to &quot;cancel&quot; variable</dd>
+<dt>type</dt>
+<dd class="description">Printer type bits</dd>
+<dt>mask</dt>
+<dd class="description">Mask for printer type bits</dd>
+<dt>cb</dt>
+<dd class="description">Callback function</dd>
+<dt>user_data</dt>
+<dd class="description">User data</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">Destinations are enumerated from one or more sources. The callback function
+receives the <code>user_data</code> pointer, destination name, instance, number of
+options, and options which can be used as input to the <a href="#cupsAddDest"><code>cupsAddDest</code></a>
+function. The function must return 1 to continue enumeration or 0 to stop.<br>
+<br>
+Enumeration happens on the current thread and does not return until all
+destinations have been enumerated or the callback function returns 0.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="cupsEnumDestsBlock">cupsEnumDestsBlock</a></h3>
+<p class="description">Enumerate available destinations with a block.</p>
+<p class="code">
+int cupsEnumDestsBlock (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;unsigned flags,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int timeout,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int *cancel,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_ptype_t">cups_ptype_t</a> type,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_ptype_t">cups_ptype_t</a> mask,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#cups_dest_block_t">cups_dest_block_t</a> block<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>flags</dt>
+<dd class="description">Enumeration flags</dd>
+<dt>timeout</dt>
+<dd class="description">Timeout in milliseconds, 0 for indefinite</dd>
+<dt>cancel</dt>
+<dd class="description">Pointer to &quot;cancel&quot; variable</dd>
+<dt>type</dt>
+<dd class="description">Printer type bits</dd>
+<dt>mask</dt>
+<dd class="description">Mask for printer type bits</dd>
+<dt>block</dt>
+<dd class="description">Block</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">Destinations are enumerated from one or more sources. The block receives the
+destination name, instance, number of options, and options which can be used
+as input to the <a href="#cupsAddDest"><code>cupsAddDest</code></a> function. The block must return 1 to
+continue enumeration or 0 to stop.<br>
+<br>
+Enumeration happens on the current thread and does not return until all
+destinations have been enumerated or the block returns 0.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsFinishDocument">cupsFinishDocument</a></h3>
<p class="description">Finish sending a document.</p>
<p class="code">
ipp_status_t cupsFinishDocument (<br>
@@ -1293,7 +1494,7 @@ variables are not set, the server default destination is returned.
Applications should use the <a href="#cupsGetDests"><code>cupsGetDests</code></a> and <a href="#cupsGetDest"><code>cupsGetDest</code></a>
functions to get the user-defined default printer, as this function does
not support the lpoptions-defined default printer.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/Mac OS X 10.4&nbsp;</span><a name="cupsGetDefault2">cupsGetDefault2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/OS X 10.4&nbsp;</span><a name="cupsGetDefault2">cupsGetDefault2</a></h3>
<p class="description">Get the default printer or class for the specified server.</p>
<p class="code">
const char *cupsGetDefault2 (<br>
@@ -1364,7 +1565,7 @@ marker-types, and printer-commands attributes as well.<br>
<br>
Use the <a href="#cupsFreeDests"><code>cupsFreeDests</code></a> function to free the destination list and
the <a href="#cupsGetDest"><code>cupsGetDest</code></a> function to find a particular destination.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/Mac OS X 10.4&nbsp;</span><a name="cupsGetDests2">cupsGetDests2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/OS X 10.4&nbsp;</span><a name="cupsGetDests2">cupsGetDests2</a></h3>
<p class="description">Get the list of destinations from the specified server.</p>
<p class="code">
int cupsGetDests2 (<br>
@@ -1420,7 +1621,7 @@ int cupsGetJobs (<br>
of state, while <code>CUPS_WHICHJOBS_ACTIVE</code> returns jobs that are
pending, processing, or held and <code>CUPS_WHICHJOBS_COMPLETED</code> returns
jobs that are stopped, canceled, aborted, or completed.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/Mac OS X 10.4&nbsp;</span><a name="cupsGetJobs2">cupsGetJobs2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/OS X 10.4&nbsp;</span><a name="cupsGetJobs2">cupsGetJobs2</a></h3>
<p class="description">Get the jobs from the specified server.</p>
<p class="code">
int cupsGetJobs2 (<br>
@@ -1452,7 +1653,7 @@ pending, processing, or held and <code>CUPS_WHICHJOBS_COMPLETED</code> returns
jobs that are stopped, canceled, aborted, or completed.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsGetNamedDest">cupsGetNamedDest</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsGetNamedDest">cupsGetNamedDest</a></h3>
<p class="description">Get options for the named destination.</p>
<p class="code">
<a href="#cups_dest_t">cups_dest_t</a> *cupsGetNamedDest (<br>
@@ -1527,7 +1728,7 @@ in the class.<br>
The returned filename is stored in a static buffer and is overwritten with
each call to <code>cupsGetPPD</code> or <a href="#cupsGetPPD2"><code>cupsGetPPD2</code></a>. The caller &quot;owns&quot; the
file that is created and must <code>unlink</code> the returned filename.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/Mac OS X 10.4&nbsp;</span><a name="cupsGetPPD2">cupsGetPPD2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/OS X 10.4&nbsp;</span><a name="cupsGetPPD2">cupsGetPPD2</a></h3>
<p class="description">Get the PPD file for a printer from the specified server.</p>
<p class="code">
const char *cupsGetPPD2 (<br>
@@ -1552,7 +1753,7 @@ each call to <a href="#cupsGetPPD"><code>cupsGetPPD</code></a> or <code>cupsGetP
file that is created and must <code>unlink</code> the returned filename.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsGetPPD3">cupsGetPPD3</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsGetPPD3">cupsGetPPD3</a></h3>
<p class="description">Get the PPD file for a printer on the specified
server if it has changed.</p>
<p class="code">
@@ -1617,7 +1818,7 @@ Note: The current password callback function is tracked separately for each
thread in a program. Multi-threaded programs that override the setting via
the <a href="#cupsSetPasswordCB"><code>cupsSetPasswordCB</code></a> or <a href="#cupsSetPasswordCB2"><code>cupsSetPasswordCB2</code></a> functions need to
do so in each thread for the same function to be used.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsGetPassword2">cupsGetPassword2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsGetPassword2">cupsGetPassword2</a></h3>
<p class="description">Get a password from the user using the advanced
password callback.</p>
<p class="code">
@@ -1667,7 +1868,7 @@ int cupsGetPrinters (<br>
<p class="discussion">This function is deprecated - use <a href="#cupsGetDests"><code>cupsGetDests</code></a> instead.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsGetServerPPD">cupsGetServerPPD</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsGetServerPPD">cupsGetServerPPD</a></h3>
<p class="description">Get an available PPD file from the server.</p>
<p class="code">
char *cupsGetServerPPD (<br>
@@ -1744,7 +1945,7 @@ cups_lang_t *cupsLangGet (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Language data</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsNotifySubject">cupsNotifySubject</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsNotifySubject">cupsNotifySubject</a></h3>
<p class="description">Return the subject for the given notification message.</p>
<p class="code">
char *cupsNotifySubject (<br>
@@ -1764,7 +1965,7 @@ char *cupsNotifySubject (<br>
<p class="discussion">The returned string must be freed by the caller using <code>free</code>.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsNotifyText">cupsNotifyText</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsNotifyText">cupsNotifyText</a></h3>
<p class="description">Return the text for the given notification message.</p>
<p class="code">
char *cupsNotifyText (<br>
@@ -1834,7 +2035,7 @@ int cupsPrintFile (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Job ID or 0 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/Mac OS X 10.4&nbsp;</span><a name="cupsPrintFile2">cupsPrintFile2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/OS X 10.4&nbsp;</span><a name="cupsPrintFile2">cupsPrintFile2</a></h3>
<p class="description">Print a file to a printer or class on the specified
server.</p>
<p class="code">
@@ -1892,7 +2093,7 @@ int cupsPrintFiles (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Job ID or 0 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/Mac OS X 10.4&nbsp;</span><a name="cupsPrintFiles2">cupsPrintFiles2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/OS X 10.4&nbsp;</span><a name="cupsPrintFiles2">cupsPrintFiles2</a></h3>
<p class="description">Print one or more files to a printer or class on the
specified server.</p>
<p class="code">
@@ -1924,7 +2125,7 @@ int cupsPrintFiles2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Job ID or 0 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsRemoveDest">cupsRemoveDest</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsRemoveDest">cupsRemoveDest</a></h3>
<p class="description">Remove a destination from the destination list.</p>
<p class="code">
int cupsRemoveDest (<br>
@@ -1953,7 +2154,7 @@ queue, merely the lpoptions for that destination/instance. Use the
options for the user.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsRemoveOption">cupsRemoveOption</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsRemoveOption">cupsRemoveOption</a></h3>
<p class="description">Remove an option from an option array.</p>
<p class="code">
int cupsRemoveOption (<br>
@@ -1991,7 +2192,7 @@ Note: The current server is tracked separately for each thread in a program.
Multi-threaded programs that override the server via the
<a href="#cupsSetServer"><code>cupsSetServer</code></a> function need to do so in each thread for the same
server to be used.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="cupsSetClientCertCB">cupsSetClientCertCB</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="cupsSetClientCertCB">cupsSetClientCertCB</a></h3>
<p class="description">Set the client certificate callback.</p>
<p class="code">
void cupsSetClientCertCB (<br>
@@ -2013,7 +2214,7 @@ in a program. Multi-threaded programs that override the callback need to do
so in each thread for the same callback to be used.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="cupsSetCredentials">cupsSetCredentials</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="cupsSetCredentials">cupsSetCredentials</a></h3>
<p class="description">Set the default credentials to be used for SSL/TLS
connections.</p>
<p class="code">
@@ -2033,7 +2234,7 @@ program. Multi-threaded programs that override the setting need to do so in
each thread for the same setting to be used.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsSetDefaultDest">cupsSetDefaultDest</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsSetDefaultDest">cupsSetDefaultDest</a></h3>
<p class="description">Set the default destination.</p>
<p class="code">
void cupsSetDefaultDest (<br>
@@ -2070,7 +2271,7 @@ void cupsSetDests (<br>
<h4 class="discussion">Discussion</h4>
<p class="discussion">This function saves the destinations to /etc/cups/lpoptions when run
as root and ~/.cups/lpoptions when run as a normal user.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/Mac OS X 10.4&nbsp;</span><a name="cupsSetDests2">cupsSetDests2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/OS X 10.4&nbsp;</span><a name="cupsSetDests2">cupsSetDests2</a></h3>
<p class="description">Save the list of destinations for the specified server.</p>
<p class="code">
int cupsSetDests2 (<br>
@@ -2134,7 +2335,7 @@ by a program per thread.<br>
Note: The current password callback is tracked separately for each thread
in a program. Multi-threaded programs that override the callback need to do
so in each thread for the same callback to be used.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsSetPasswordCB2">cupsSetPasswordCB2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsSetPasswordCB2">cupsSetPasswordCB2</a></h3>
<p class="description">Set the advanced password callback for CUPS.</p>
<p class="code">
void cupsSetPasswordCB2 (<br>
@@ -2180,7 +2381,7 @@ default server name and port.<br>
Note: The current server is tracked separately for each thread in a program.
Multi-threaded programs that override the server need to do so in each
thread for the same server to be used.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="cupsSetServerCertCB">cupsSetServerCertCB</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="cupsSetServerCertCB">cupsSetServerCertCB</a></h3>
<p class="description">Set the server certificate callback.</p>
<p class="code">
void cupsSetServerCertCB (<br>
@@ -2219,7 +2420,7 @@ void cupsSetUser (<br>
Note: The current user name is tracked separately for each thread in a
program. Multi-threaded programs that override the user name need to do so
in each thread for the same user name to be used.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsStartDocument">cupsStartDocument</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsStartDocument">cupsStartDocument</a></h3>
<p class="description">Add a document to a job created with cupsCreateJob().</p>
<p class="code">
http_status_t cupsStartDocument (<br>
@@ -2298,7 +2499,7 @@ This function is deprecated - use <a href="#cupsTempFd"><code>cupsTempFd</code><
<a href="#cupsTempFile2"><code>cupsTempFile2</code></a> instead.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsTempFile2">cupsTempFile2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsTempFile2">cupsTempFile2</a></h3>
<p class="description">Creates a temporary CUPS file.</p>
<p class="code">
cups_file_t *cupsTempFile2 (<br>
@@ -2331,21 +2532,41 @@ program. Multi-threaded programs that override the user name with the
<a href="#cupsSetUser"><code>cupsSetUser</code></a> function need to do so in each thread for the same user
name to be used.</p>
<h2 class="title"><a name="TYPES">Data Types</a></h2>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="cups_client_cert_cb_t">cups_client_cert_cb_t</a></h3>
-<p class="description">Client credentials callback </p>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="cups_client_cert_cb_t">cups_client_cert_cb_t</a></h3>
+<p class="description">Client credentials callback
+</p>
<p class="code">
typedef int (*cups_client_cert_cb_t)(http_t *http, void *tls, cups_array_t *distinguished_names, void *user_data);
</p>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="cups_dest_block_t">cups_dest_block_t</a></h3>
+<p class="description">Destination enumeration block
+</p>
+<p class="code">
+typedef int (*cups_dest_block_t(unsigned flags, <a href="#cups_dest_t">cups_dest_t</a> *dest);
+</p>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="cups_dest_cb_t">cups_dest_cb_t</a></h3>
+<p class="description">Destination enumeration callback
+</p>
+<p class="code">
+typedef int (*cups_dest_cb_t)(void *user_data, unsigned flags, <a href="#cups_dest_t">cups_dest_t</a> *dest);
+</p>
<h3 class="typedef"><a name="cups_dest_t">cups_dest_t</a></h3>
<p class="description">Destination</p>
<p class="code">
typedef struct <a href="#cups_dest_s">cups_dest_s</a> cups_dest_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cups_device_cb_t">cups_device_cb_t</a></h3>
-<p class="description">Device callback </p>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cups_device_cb_t">cups_device_cb_t</a></h3>
+<p class="description">Device callback
+</p>
<p class="code">
typedef void (*cups_device_cb_t)(const char *device_class, const char *device_id, const char *device_info, const char *device_make_and_model, const char *device_uri, const char *device_location, void *user_data);
</p>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="cups_dinfo_t">cups_dinfo_t</a></h3>
+<p class="description">Destination capability and status
+information </p>
+<p class="code">
+typedef struct _cups_dinfo_s cups_dinfo_t;
+</p>
<h3 class="typedef"><a name="cups_job_t">cups_job_t</a></h3>
<p class="description">Job</p>
<p class="code">
@@ -2356,8 +2577,9 @@ typedef struct <a href="#cups_job_s">cups_job_s</a> cups_job_t;
<p class="code">
typedef struct <a href="#cups_option_s">cups_option_s</a> cups_option_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cups_password_cb2_t">cups_password_cb2_t</a></h3>
-<p class="description">New password callback </p>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cups_password_cb2_t">cups_password_cb2_t</a></h3>
+<p class="description">New password callback
+</p>
<p class="code">
typedef const char *(*cups_password_cb2_t)(const char *prompt, http_t *http, const char *method, const char *resource, void *user_data);
</p>
@@ -2371,11 +2593,17 @@ typedef const char *(*cups_password_cb_t)(const char *prompt);
<p class="code">
typedef unsigned cups_ptype_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="cups_server_cert_cb_t">cups_server_cert_cb_t</a></h3>
-<p class="description">Server credentials callback </p>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="cups_server_cert_cb_t">cups_server_cert_cb_t</a></h3>
+<p class="description">Server credentials callback
+</p>
<p class="code">
typedef int (*cups_server_cert_cb_t)(http_t *http, void *tls, cups_array_t *certs, void *user_data);
</p>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="cups_size_t">cups_size_t</a></h3>
+<p class="description">Media Size </p>
+<p class="code">
+typedef struct <a href="#cups_size_s">cups_size_s</a> cups_size_t;
+</p>
<h2 class="title"><a name="STRUCTURES">Structures</a></h2>
<h3 class="struct"><a name="cups_dest_s">cups_dest_s</a></h3>
<p class="description">Destination</p>
@@ -2449,6 +2677,37 @@ typedef int (*cups_server_cert_cb_t)(http_t *http, void *tls, cups_array_t *cert
<dt>value </dt>
<dd class="description">Value of option</dd>
</dl>
+<h3 class="struct"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="cups_size_s">cups_size_s</a></h3>
+<p class="description">Media Size </p>
+<p class="code">struct cups_size_s {<br>
+&nbsp;&nbsp;&nbsp;&nbsp;char media[128];<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int width, length, bottom, left, right, top;<br>
+};</p>
+<h4 class="members">Members</h4>
+<dl>
+<dt>media[128] </dt>
+<dd class="description">Media name to use</dd>
+<dt>top </dt>
+<dd class="description">Top margin in hundredths of
+millimeters</dd>
+</dl>
+<h3 class="struct"><a name="pollfd">pollfd</a></h3>
+<p class="description">User data (unused)</p>
+<p class="code">struct pollfd *pollfds, unsigned int num_pollfds, int timeout, void *context) {<br>
+&nbsp;&nbsp;&nbsp;&nbsp;_cups_dnssd_data_t *data;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;else if(val 0) data - got_data;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;void) timeout;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int val;<br>
+};</p>
+<h4 class="members">Members</h4>
+<dl>
+<dt>data </dt>
+<dd class="description">Enumeration data</dd>
+<dt>got_data </dt>
+<dt>timeout </dt>
+<dt>val </dt>
+<dd class="description">Return value</dd>
+</dl>
<h2 class="title"><a name="VARIABLES">Variables</a></h2>
<h3 class="variable"><a name="CF_RETURNS_RETAINED">CF_RETURNS_RETAINED</a></h3>
<p class="description">Get the Apple language identifier associated with a
@@ -2456,11 +2715,13 @@ locale ID.</p>
<p class="code">const char *locale) CF_RETURNS_RETAINED;</p>
<h2 class="title"><a name="ENUMERATIONS">Constants</a></h2>
<h3 class="enumeration"><a name="cups_ptype_e">cups_ptype_e</a></h3>
-<p class="description">Printer type/capability bit constants</p>
+<p class="description">Printer type/capability bit
+constants</p>
<h4 class="constants">Constants</h4>
<dl>
-<dt>CUPS_PRINTER_AUTHENTICATED <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
-<dd class="description">Printer requires authentication </dd>
+<dt>CUPS_PRINTER_AUTHENTICATED <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
+<dd class="description">Printer requires authentication
+</dd>
<dt>CUPS_PRINTER_BIND </dt>
<dd class="description">Can bind output</dd>
<dt>CUPS_PRINTER_BW </dt>
@@ -2471,42 +2732,43 @@ locale ID.</p>
<dd class="description">Can collage copies</dd>
<dt>CUPS_PRINTER_COLOR </dt>
<dd class="description">Can do color printing</dd>
-<dt>CUPS_PRINTER_COMMANDS <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
-<dd class="description">Printer supports maintenance commands </dd>
+<dt>CUPS_PRINTER_COMMANDS <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
+<dd class="description">Printer supports maintenance commands
+</dd>
<dt>CUPS_PRINTER_COPIES </dt>
<dd class="description">Can do copies</dd>
<dt>CUPS_PRINTER_COVER </dt>
<dd class="description">Can cover output</dd>
<dt>CUPS_PRINTER_DEFAULT </dt>
<dd class="description">Default printer on network</dd>
-<dt>CUPS_PRINTER_DELETE <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
-<dd class="description">Delete printer </dd>
-<dt>CUPS_PRINTER_DISCOVERED <span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span></dt>
-<dd class="description">Printer was automatically discovered and added </dd>
+<dt>CUPS_PRINTER_DELETE <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
+<dd class="description">Delete printer
+</dd>
<dt>CUPS_PRINTER_DUPLEX </dt>
<dd class="description">Can do duplexing</dd>
<dt>CUPS_PRINTER_FAX </dt>
<dd class="description">Fax queue</dd>
-<dt>CUPS_PRINTER_IMPLICIT </dt>
-<dd class="description">Implicit class</dd>
<dt>CUPS_PRINTER_LARGE </dt>
<dd class="description">Can do D/E/A1/A0</dd>
<dt>CUPS_PRINTER_LOCAL </dt>
<dd class="description">Local printer or class</dd>
<dt>CUPS_PRINTER_MEDIUM </dt>
<dd class="description">Can do Tabloid/B/C/A3/A2</dd>
-<dt>CUPS_PRINTER_MFP <span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span></dt>
-<dd class="description">Printer with scanning capabilities </dd>
-<dt>CUPS_PRINTER_NOT_SHARED <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
-<dd class="description">Printer is not shared </dd>
+<dt>CUPS_PRINTER_MFP <span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span></dt>
+<dd class="description">Printer with scanning capabilities
+</dd>
+<dt>CUPS_PRINTER_NOT_SHARED <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
+<dd class="description">Printer is not shared
+</dd>
<dt>CUPS_PRINTER_PUNCH </dt>
<dd class="description">Can punch output</dd>
<dt>CUPS_PRINTER_REJECTING </dt>
<dd class="description">Printer is rejecting jobs</dd>
<dt>CUPS_PRINTER_REMOTE </dt>
<dd class="description">Remote printer or class</dd>
-<dt>CUPS_PRINTER_SCANNER <span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span></dt>
-<dd class="description">Scanner-only device </dd>
+<dt>CUPS_PRINTER_SCANNER <span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span></dt>
+<dd class="description">Scanner-only device
+</dd>
<dt>CUPS_PRINTER_SMALL </dt>
<dd class="description">Can do Letter/Legal/A4</dd>
<dt>CUPS_PRINTER_SORT </dt>
diff --git a/doc/help/api-filedir.html b/doc/help/api-filedir.html
index 430494a7..8d31c7f4 100644
--- a/doc/help/api-filedir.html
+++ b/doc/help/api-filedir.html
@@ -341,7 +341,7 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: api-filedir.html 9772 2011-05-12 05:46:30Z mike $"
+ "$Id: api-filedir.html 10424 2012-04-23 17:26:57Z mike $"
File and Directory API header for CUPS.
@@ -424,7 +424,7 @@ file.">cupsFileRewind</a></li>
</ul></li>
</ul>
<!--
- "$Id: api-filedir.html 9772 2011-05-12 05:46:30Z mike $"
+ "$Id: api-filedir.html 10424 2012-04-23 17:26:57Z mike $"
File and directory API introduction for CUPS.
@@ -455,7 +455,7 @@ details of directory access/listing and provide a convenient way
to get both a list of files and the information (permissions,
size, timestamp, etc.) for each of those files.</p>
<h2 class="title"><a name="FUNCTIONS">Functions</a></h2>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsDirClose">cupsDirClose</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsDirClose">cupsDirClose</a></h3>
<p class="description">Close a directory.</p>
<p class="code">
void cupsDirClose (<br>
@@ -466,7 +466,7 @@ void cupsDirClose (<br>
<dt>dp</dt>
<dd class="description">Directory pointer</dd>
</dl>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsDirOpen">cupsDirOpen</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsDirOpen">cupsDirOpen</a></h3>
<p class="description">Open a directory.</p>
<p class="code">
<a href="#cups_dir_t">cups_dir_t</a> *cupsDirOpen (<br>
@@ -479,7 +479,7 @@ void cupsDirClose (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Directory pointer or <code>NULL</code> if the directory could not be opened.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsDirRead">cupsDirRead</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsDirRead">cupsDirRead</a></h3>
<p class="description">Read the next directory entry.</p>
<p class="code">
<a href="#cups_dentry_t">cups_dentry_t</a> *cupsDirRead (<br>
@@ -492,7 +492,7 @@ void cupsDirClose (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Directory entry or <code>NULL</code> when there are no more</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsDirRewind">cupsDirRewind</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsDirRewind">cupsDirRewind</a></h3>
<p class="description">Rewind to the start of the directory.</p>
<p class="code">
void cupsDirRewind (<br>
@@ -503,7 +503,7 @@ void cupsDirRewind (<br>
<dt>dp</dt>
<dd class="description">Directory pointer</dd>
</dl>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileClose">cupsFileClose</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileClose">cupsFileClose</a></h3>
<p class="description">Close a CUPS file.</p>
<p class="code">
int cupsFileClose (<br>
@@ -516,7 +516,7 @@ int cupsFileClose (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">0 on success, -1 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileCompression">cupsFileCompression</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileCompression">cupsFileCompression</a></h3>
<p class="description">Return whether a file is compressed.</p>
<p class="code">
int cupsFileCompression (<br>
@@ -529,7 +529,7 @@ int cupsFileCompression (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description"><code>CUPS_FILE_NONE</code> or <code>CUPS_FILE_GZIP</code></p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileEOF">cupsFileEOF</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileEOF">cupsFileEOF</a></h3>
<p class="description">Return the end-of-file status.</p>
<p class="code">
int cupsFileEOF (<br>
@@ -542,7 +542,7 @@ int cupsFileEOF (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">1 on end of file, 0 otherwise</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileFind">cupsFileFind</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileFind">cupsFileFind</a></h3>
<p class="description">Find a file using the specified path.</p>
<p class="code">
const char *cupsFileFind (<br>
@@ -575,7 +575,7 @@ the supplied paths, <code>NULL</code> is returned. A <code>NULL</code> path only
matches the current directory.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileFlush">cupsFileFlush</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileFlush">cupsFileFlush</a></h3>
<p class="description">Flush pending output.</p>
<p class="code">
int cupsFileFlush (<br>
@@ -588,7 +588,7 @@ int cupsFileFlush (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">0 on success, -1 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileGetChar">cupsFileGetChar</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileGetChar">cupsFileGetChar</a></h3>
<p class="description">Get a single character from a file.</p>
<p class="code">
int cupsFileGetChar (<br>
@@ -601,7 +601,7 @@ int cupsFileGetChar (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Character or -1 on end of file</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileGetConf">cupsFileGetConf</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileGetConf">cupsFileGetConf</a></h3>
<p class="description">Get a line from a configuration file.</p>
<p class="code">
char *cupsFileGetConf (<br>
@@ -626,7 +626,7 @@ char *cupsFileGetConf (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Line read or <code>NULL</code> on end of file or error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileGetLine">cupsFileGetLine</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileGetLine">cupsFileGetLine</a></h3>
<p class="description">Get a CR and/or LF-terminated line that may
contain binary data.</p>
<p class="code">
@@ -653,7 +653,7 @@ nul-terminated, however you should use the returned length to determine
the number of bytes on the line.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileGets">cupsFileGets</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileGets">cupsFileGets</a></h3>
<p class="description">Get a CR and/or LF-terminated line.</p>
<p class="code">
char *cupsFileGets (<br>
@@ -672,7 +672,7 @@ char *cupsFileGets (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Line read or <code>NULL</code> on end of file or error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileLock">cupsFileLock</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileLock">cupsFileLock</a></h3>
<p class="description">Temporarily lock access to a file.</p>
<p class="code">
int cupsFileLock (<br>
@@ -688,7 +688,7 @@ int cupsFileLock (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">0 on success, -1 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileNumber">cupsFileNumber</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileNumber">cupsFileNumber</a></h3>
<p class="description">Return the file descriptor associated with a CUPS file.</p>
<p class="code">
int cupsFileNumber (<br>
@@ -701,7 +701,7 @@ int cupsFileNumber (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">File descriptor</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileOpen">cupsFileOpen</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileOpen">cupsFileOpen</a></h3>
<p class="description">Open a CUPS file.</p>
<p class="code">
<a href="#cups_file_t">cups_file_t</a> *cupsFileOpen (<br>
@@ -732,7 +732,7 @@ connection as needed, generally preferring IPv6 connections when there is
a choice.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileOpenFd">cupsFileOpenFd</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileOpenFd">cupsFileOpenFd</a></h3>
<p class="description">Open a CUPS file using a file descriptor.</p>
<p class="code">
<a href="#cups_file_t">cups_file_t</a> *cupsFileOpenFd (<br>
@@ -757,7 +757,7 @@ supplied which enables Flate compression of the file. Compression is
not supported for the &quot;a&quot; (append) mode.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFilePeekChar">cupsFilePeekChar</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFilePeekChar">cupsFilePeekChar</a></h3>
<p class="description">Peek at the next character from a file.</p>
<p class="code">
int cupsFilePeekChar (<br>
@@ -770,7 +770,7 @@ int cupsFilePeekChar (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Character or -1 on end of file</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFilePrintf">cupsFilePrintf</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFilePrintf">cupsFilePrintf</a></h3>
<p class="description">Write a formatted string.</p>
<p class="code">
int cupsFilePrintf (<br>
@@ -789,7 +789,7 @@ int cupsFilePrintf (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Number of bytes written or -1 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFilePutChar">cupsFilePutChar</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFilePutChar">cupsFilePutChar</a></h3>
<p class="description">Write a character.</p>
<p class="code">
int cupsFilePutChar (<br>
@@ -805,7 +805,7 @@ int cupsFilePutChar (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">0 on success, -1 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsFilePutConf">cupsFilePutConf</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsFilePutConf">cupsFilePutConf</a></h3>
<p class="description">Write a configuration line.</p>
<p class="code">
ssize_t cupsFilePutConf (<br>
@@ -828,7 +828,7 @@ ssize_t cupsFilePutConf (<br>
<p class="discussion">This function handles any comment escaping of the value.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFilePuts">cupsFilePuts</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFilePuts">cupsFilePuts</a></h3>
<p class="description">Write a string.</p>
<p class="code">
int cupsFilePuts (<br>
@@ -848,7 +848,7 @@ int cupsFilePuts (<br>
<p class="discussion">Like the <code>fputs</code> function, no newline is appended to the string.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileRead">cupsFileRead</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileRead">cupsFileRead</a></h3>
<p class="description">Read from a file.</p>
<p class="code">
ssize_t cupsFileRead (<br>
@@ -867,7 +867,7 @@ ssize_t cupsFileRead (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Number of bytes read or -1 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileRewind">cupsFileRewind</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileRewind">cupsFileRewind</a></h3>
<p class="description">Set the current file position to the beginning of the
file.</p>
<p class="code">
@@ -881,7 +881,7 @@ off_t cupsFileRewind (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New file position or -1 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileSeek">cupsFileSeek</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileSeek">cupsFileSeek</a></h3>
<p class="description">Seek in a file.</p>
<p class="code">
off_t cupsFileSeek (<br>
@@ -897,25 +897,25 @@ off_t cupsFileSeek (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New file position or -1 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileStderr">cupsFileStderr</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileStderr">cupsFileStderr</a></h3>
<p class="description">Return a CUPS file associated with stderr.</p>
<p class="code">
<a href="#cups_file_t">cups_file_t</a> *cupsFileStderr (void);</p>
<h4 class="returnvalue">Return Value</h4>
<p class="description">CUPS file</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileStdin">cupsFileStdin</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileStdin">cupsFileStdin</a></h3>
<p class="description">Return a CUPS file associated with stdin.</p>
<p class="code">
<a href="#cups_file_t">cups_file_t</a> *cupsFileStdin (void);</p>
<h4 class="returnvalue">Return Value</h4>
<p class="description">CUPS file</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileStdout">cupsFileStdout</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileStdout">cupsFileStdout</a></h3>
<p class="description">Return a CUPS file associated with stdout.</p>
<p class="code">
<a href="#cups_file_t">cups_file_t</a> *cupsFileStdout (void);</p>
<h4 class="returnvalue">Return Value</h4>
<p class="description">CUPS file</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileTell">cupsFileTell</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileTell">cupsFileTell</a></h3>
<p class="description">Return the current file position.</p>
<p class="code">
off_t cupsFileTell (<br>
@@ -928,7 +928,7 @@ off_t cupsFileTell (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">File position</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileUnlock">cupsFileUnlock</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileUnlock">cupsFileUnlock</a></h3>
<p class="description">Unlock access to a file.</p>
<p class="code">
int cupsFileUnlock (<br>
@@ -941,7 +941,7 @@ int cupsFileUnlock (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">0 on success, -1 on error</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsFileWrite">cupsFileWrite</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsFileWrite">cupsFileWrite</a></h3>
<p class="description">Write to a file.</p>
<p class="code">
ssize_t cupsFileWrite (<br>
diff --git a/doc/help/api-filter.html b/doc/help/api-filter.html
index 3a9d1288..9433c655 100644
--- a/doc/help/api-filter.html
+++ b/doc/help/api-filter.html
@@ -341,7 +341,7 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: api-filter.html 9799 2011-05-20 18:09:22Z mike $"
+ "$Id: api-filter.html 10424 2012-04-23 17:26:57Z mike $"
Filter and backend programming header for CUPS.
@@ -426,11 +426,11 @@ div.contents ul.subcontents li {
</ul></li>
</ul>
<!--
- "$Id: api-filter.html 9799 2011-05-20 18:09:22Z mike $"
+ "$Id: api-filter.html 10424 2012-04-23 17:26:57Z mike $"
Filter and backend programming introduction for CUPS.
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2006 by Easy Software Products, all rights reserved.
These coded instructions, statements, and computer programs are the
@@ -508,7 +508,7 @@ directory to write to.</p>
<p>In addition, some operating systems provide additional security mechanisms
that further limit file system access, even for backends running as root. On
-Mac OS X, for example, no backend may write to a user's home directory.</p>
+OS X, for example, no backend may write to a user's home directory.</p>
</blockquote>
<h3><a name="SIGNALS">Canceled Jobs and Signal Handling</a></h3>
@@ -580,7 +580,7 @@ when running print filters and backends:</p>
<dt>APPLE_LANGUAGE</dt>
<dd>The Apple language identifier associated with the job
- (Mac OS X only).</dd>
+ (OS X only).</dd>
<dt>CHARSET</dt>
<dd>The job character set, typically "utf-8".</dd>
@@ -901,7 +901,7 @@ sub-state and not an issue that applies when a job is not printing.</p>
<blockquote><b>Note:</b>
<p>"STATE:" messages often provide visible alerts to the user. For example,
-on Mac OS X setting a printer-state-reason value with an "-error" or
+on OS X setting a printer-state-reason value with an "-error" or
"-warning" suffix will cause the printer's dock item to bounce if the
corresponding reason is localized with a cupsIPPReason keyword in the
printer's PPD file.</p>
@@ -1191,7 +1191,7 @@ void *my_data;
<a href="#cupsSideChannelSNMPWalk">cupsSNMPSideChannelWalk</a>(".1.3.6.1.2.1.43", 5.0, my_callback, my_data);
</pre>
<h2 class="title"><a name="FUNCTIONS">Functions</a></h2>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsBackChannelRead">cupsBackChannelRead</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsBackChannelRead">cupsBackChannelRead</a></h3>
<p class="description">Read data from the backchannel.</p>
<p class="code">
ssize_t cupsBackChannelRead (<br>
@@ -1216,7 +1216,7 @@ parameter controls how many seconds to wait for the data - use 0.0 to
return immediately if there is no data, -1.0 to wait for data indefinitely.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsBackChannelWrite">cupsBackChannelWrite</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsBackChannelWrite">cupsBackChannelWrite</a></h3>
<p class="description">Write data to the backchannel.</p>
<p class="code">
ssize_t cupsBackChannelWrite (<br>
@@ -1242,7 +1242,7 @@ controls how many seconds to wait for the data to be written - use
indefinitely.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsBackendDeviceURI">cupsBackendDeviceURI</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsBackendDeviceURI">cupsBackendDeviceURI</a></h3>
<p class="description">Get the device URI for a backend.</p>
<p class="code">
const char *cupsBackendDeviceURI (<br>
@@ -1262,7 +1262,7 @@ variable or the device URI passed in argv[0], whichever is found
first.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsBackendReport">cupsBackendReport</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsBackendReport">cupsBackendReport</a></h3>
<p class="description">Write a device line from a backend.</p>
<p class="code">
void cupsBackendReport (<br>
@@ -1294,7 +1294,7 @@ It handles quoting of special characters in the device-make-and-model,
device-info, device-id, and device-location strings.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsSideChannelDoRequest">cupsSideChannelDoRequest</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsSideChannelDoRequest">cupsSideChannelDoRequest</a></h3>
<p class="description">Send a side-channel command to a backend and wait for a response.</p>
<p class="code">
<a href="#cups_sc_status_t">cups_sc_status_t</a> cupsSideChannelDoRequest (<br>
@@ -1328,7 +1328,7 @@ pointed to by the &quot;data&quot; parameter. cupsSideChannelDoRequest() will
update the value to contain the number of data bytes in the buffer.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsSideChannelRead">cupsSideChannelRead</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsSideChannelRead">cupsSideChannelRead</a></h3>
<p class="description">Read a side-channel message.</p>
<p class="code">
int cupsSideChannelRead (<br>
@@ -1364,7 +1364,7 @@ pointed to by the &quot;data&quot; parameter. cupsSideChannelDoRequest() will
update the value to contain the number of data bytes in the buffer.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsSideChannelSNMPGet">cupsSideChannelSNMPGet</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsSideChannelSNMPGet">cupsSideChannelSNMPGet</a></h3>
<p class="description">Query a SNMP OID's value.</p>
<p class="code">
<a href="#cups_sc_status_t">cups_sc_status_t</a> cupsSideChannelSNMPGet (<br>
@@ -1405,7 +1405,7 @@ support SNMP queries. <code>CUPS_SC_STATUS_NO_RESPONSE</code> is returned when
the printer does not respond to the SNMP query.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsSideChannelSNMPWalk">cupsSideChannelSNMPWalk</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsSideChannelSNMPWalk">cupsSideChannelSNMPWalk</a></h3>
<p class="description">Query multiple SNMP OID values.</p>
<p class="code">
<a href="#cups_sc_status_t">cups_sc_status_t</a> cupsSideChannelSNMPWalk (<br>
@@ -1451,7 +1451,7 @@ support SNMP queries. <code>CUPS_SC_STATUS_NO_RESPONSE</code> is returned when
the printer does not respond to the first SNMP query.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsSideChannelWrite">cupsSideChannelWrite</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsSideChannelWrite">cupsSideChannelWrite</a></h3>
<p class="description">Write a side-channel message.</p>
<p class="code">
int cupsSideChannelWrite (<br>
@@ -1556,15 +1556,15 @@ typedef void (*cups_sc_walk_func_t)(const char *oid, const char *data, int datal
<dd class="description">Drain all pending output</dd>
<dt>CUPS_SC_CMD_GET_BIDI </dt>
<dd class="description">Return bidirectional capabilities</dd>
-<dt>CUPS_SC_CMD_GET_CONNECTED <span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span></dt>
+<dt>CUPS_SC_CMD_GET_CONNECTED <span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span></dt>
<dd class="description">Return whether the backend is &quot;connected&quot; to the printer </dd>
<dt>CUPS_SC_CMD_GET_DEVICE_ID </dt>
<dd class="description">Return the IEEE-1284 device ID</dd>
<dt>CUPS_SC_CMD_GET_STATE </dt>
<dd class="description">Return the device state</dd>
-<dt>CUPS_SC_CMD_SNMP_GET <span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span></dt>
+<dt>CUPS_SC_CMD_SNMP_GET <span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span></dt>
<dd class="description">Query an SNMP OID </dd>
-<dt>CUPS_SC_CMD_SNMP_GET_NEXT <span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span></dt>
+<dt>CUPS_SC_CMD_SNMP_GET_NEXT <span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span></dt>
<dd class="description">Query the next SNMP OID </dd>
<dt>CUPS_SC_CMD_SOFT_RESET </dt>
<dd class="description">Do a soft reset</dd>
diff --git a/doc/help/api-httpipp.html b/doc/help/api-httpipp.html
index 38a3e3fc..a49f6d94 100644
--- a/doc/help/api-httpipp.html
+++ b/doc/help/api-httpipp.html
@@ -341,7 +341,7 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: api-httpipp.html 9801 2011-05-21 04:02:41Z mike $"
+ "$Id: api-httpipp.html 10424 2012-04-23 17:26:57Z mike $"
HTTP and IPP API header for CUPS.
@@ -448,9 +448,11 @@ address records for the specified name.">httpGetHostByName</a></li>
content-length or transfer-encoding fields.">httpGetLength</a></li>
<li><a href="#httpGetLength2" title="Get the amount of data remaining from the
content-length or transfer-encoding fields.">httpGetLength2</a></li>
+ <li><a href="#httpGetState" title="Get the current state of the HTTP request.">httpGetState</a></li>
<li><a href="#httpGetStatus" title="Get the status of the last HTTP request.">httpGetStatus</a></li>
<li><a href="#httpGetSubField" title="Get a sub-field value.">httpGetSubField</a></li>
<li><a href="#httpGetSubField2" title="Get a sub-field value.">httpGetSubField2</a></li>
+ <li><a href="#httpGetVersion" title="Get the HTTP version at the other end.">httpGetVersion</a></li>
<li><a href="#httpGets" title="Get a line of text from a HTTP connection.">httpGets</a></li>
<li><a href="#httpHead" title="Send a HEAD request to the server.">httpHead</a></li>
<li><a href="#httpInitialize" title="Initialize the HTTP interface library and set the
@@ -466,6 +468,8 @@ request-uri.">httpMD5Final</a></li>
<li><a href="#httpRead" title="Read data from a HTTP connection.">httpRead</a></li>
<li><a href="#httpRead2" title="Read data from a HTTP connection.">httpRead2</a></li>
<li><a href="#httpReconnect" title="Reconnect to a HTTP server.">httpReconnect</a></li>
+ <li><a href="#httpReconnect2" title="Reconnect to a HTTP server with timeout and optional
+cancel.">httpReconnect2</a></li>
<li><a href="#httpSeparate" title="Separate a Universal Resource Identifier into its
components.">httpSeparate</a></li>
<li><a href="#httpSeparate2" title="Separate a Universal Resource Identifier into its
@@ -494,6 +498,7 @@ connection.">httpSetCredentials</a></li>
<li><a href="#ippAddInteger" title="Add a integer attribute to an IPP message.">ippAddInteger</a></li>
<li><a href="#ippAddIntegers" title="Add an array of integer values.">ippAddIntegers</a></li>
<li><a href="#ippAddOctetString" title="Add an octetString value to an IPP message.">ippAddOctetString</a></li>
+ <li><a href="#ippAddOutOfBand" title="Add an out-of-band value to an IPP message.">ippAddOutOfBand</a></li>
<li><a href="#ippAddRange" title="Add a range of values to an IPP message.">ippAddRange</a></li>
<li><a href="#ippAddRanges" title="Add ranges of values to an IPP message.">ippAddRanges</a></li>
<li><a href="#ippAddResolution" title="Add a resolution value to an IPP message.">ippAddResolution</a></li>
@@ -501,24 +506,63 @@ connection.">httpSetCredentials</a></li>
<li><a href="#ippAddSeparator" title="Add a group separator to an IPP message.">ippAddSeparator</a></li>
<li><a href="#ippAddString" title="Add a language-encoded string to an IPP message.">ippAddString</a></li>
<li><a href="#ippAddStrings" title="Add language-encoded strings to an IPP message.">ippAddStrings</a></li>
+ <li><a href="#ippAttributeString" title="Convert the attribute's value to a string.">ippAttributeString</a></li>
+ <li><a href="#ippCopyAttribute" title="Copy an attribute.">ippCopyAttribute</a></li>
+ <li><a href="#ippCopyAttributes" title="Copy attributes from one IPP message to another.">ippCopyAttributes</a></li>
<li><a href="#ippDateToTime" title="Convert from RFC 1903 Date/Time format to UNIX time
in seconds.">ippDateToTime</a></li>
<li><a href="#ippDelete" title="Delete an IPP message.">ippDelete</a></li>
<li><a href="#ippDeleteAttribute" title="Delete a single attribute in an IPP message.">ippDeleteAttribute</a></li>
+ <li><a href="#ippDeleteValues" title="Delete values in an attribute.">ippDeleteValues</a></li>
+ <li><a href="#ippEnumString" title="Return a string corresponding to the enum value.">ippEnumString</a></li>
+ <li><a href="#ippEnumValue" title="Return the value associated with a given enum string.">ippEnumValue</a></li>
<li><a href="#ippErrorString" title="Return a name for the given status code.">ippErrorString</a></li>
<li><a href="#ippErrorValue" title="Return a status code for the given name.">ippErrorValue</a></li>
- <li><a href="#ippFindAttribute" title="Find a named attribute in a request...">ippFindAttribute</a></li>
- <li><a href="#ippFindNextAttribute" title="Find the next named attribute in a request...">ippFindNextAttribute</a></li>
+ <li><a href="#ippFindAttribute" title="Find a named attribute in a request.">ippFindAttribute</a></li>
+ <li><a href="#ippFindNextAttribute" title="Find the next named attribute in a request.">ippFindNextAttribute</a></li>
+ <li><a href="#ippFirstAttribute" title="Return the first attribute in the message.">ippFirstAttribute</a></li>
+ <li><a href="#ippGetBoolean" title="Get a boolean value for an attribute.">ippGetBoolean</a></li>
+ <li><a href="#ippGetCollection" title="Get a collection value for an attribute.">ippGetCollection</a></li>
+ <li><a href="#ippGetCount" title="Get the number of values in an attribute.">ippGetCount</a></li>
+ <li><a href="#ippGetDate" title="Get a date value for an attribute.">ippGetDate</a></li>
+ <li><a href="#ippGetGroupTag" title="Get the group associated with an attribute.">ippGetGroupTag</a></li>
+ <li><a href="#ippGetInteger" title="Get the integer/enum value for an attribute.">ippGetInteger</a></li>
+ <li><a href="#ippGetName" title="Get the attribute name.">ippGetName</a></li>
+ <li><a href="#ippGetOperation" title="Get the operation ID in an IPP message.">ippGetOperation</a></li>
+ <li><a href="#ippGetRange" title="Get a rangeOfInteger value from an attribute.">ippGetRange</a></li>
+ <li><a href="#ippGetRequestId" title="Get the request ID from an IPP message.">ippGetRequestId</a></li>
+ <li><a href="#ippGetResolution" title="Get a resolution value for an attribute.">ippGetResolution</a></li>
+ <li><a href="#ippGetState" title="Get the IPP message state.">ippGetState</a></li>
+ <li><a href="#ippGetStatusCode" title="Get the status code from an IPP response or event message.">ippGetStatusCode</a></li>
+ <li><a href="#ippGetString" title="Return the value...">ippGetString</a></li>
+ <li><a href="#ippGetValueTag" title="Get the value tag for an attribute.">ippGetValueTag</a></li>
+ <li><a href="#ippGetVersion" title="Get the major and minor version number from an IPP message.">ippGetVersion</a></li>
<li><a href="#ippLength" title="Compute the length of an IPP message.">ippLength</a></li>
<li><a href="#ippNew" title="Allocate a new IPP message.">ippNew</a></li>
<li><a href="#ippNewRequest" title="Allocate a new IPP request message.">ippNewRequest</a></li>
+ <li><a href="#ippNextAttribute" title="Return the next attribute in the message.">ippNextAttribute</a></li>
<li><a href="#ippOpString" title="Return a name for the given operation id.">ippOpString</a></li>
<li><a href="#ippOpValue" title="Return an operation id for the given name.">ippOpValue</a></li>
<li><a href="#ippPort" title="Return the default IPP port number.">ippPort</a></li>
<li><a href="#ippRead" title="Read data for an IPP message from a HTTP connection.">ippRead</a></li>
<li><a href="#ippReadFile" title="Read data for an IPP message from a file.">ippReadFile</a></li>
<li><a href="#ippReadIO" title="Read data for an IPP message.">ippReadIO</a></li>
+ <li><a href="#ippSetBoolean" title="Set a boolean value in an attribute.">ippSetBoolean</a></li>
+ <li><a href="#ippSetCollection" title="Set a collection value in an attribute.">ippSetCollection</a></li>
+ <li><a href="#ippSetDate" title="Set a date value in an attribute.">ippSetDate</a></li>
+ <li><a href="#ippSetGroupTag" title="Set the group tag of an attribute.">ippSetGroupTag</a></li>
+ <li><a href="#ippSetInteger" title="Set an integer or enum value in an attribute.">ippSetInteger</a></li>
+ <li><a href="#ippSetName" title="Set the name of an attribute.">ippSetName</a></li>
+ <li><a href="#ippSetOperation" title="Set the operation ID in an IPP request message.">ippSetOperation</a></li>
<li><a href="#ippSetPort" title="Set the default port number.">ippSetPort</a></li>
+ <li><a href="#ippSetRange" title="Set a rangeOfInteger value in an attribute.">ippSetRange</a></li>
+ <li><a href="#ippSetRequestId" title="Set the request ID in an IPP message.">ippSetRequestId</a></li>
+ <li><a href="#ippSetResolution" title="Set a resolution value in an attribute.">ippSetResolution</a></li>
+ <li><a href="#ippSetState" title="Set the current state of the IPP message.">ippSetState</a></li>
+ <li><a href="#ippSetStatusCode" title="Set the status code in an IPP response or event message.">ippSetStatusCode</a></li>
+ <li><a href="#ippSetString" title="Set a string value in an attribute.">ippSetString</a></li>
+ <li><a href="#ippSetValueTag" title="Set the value tag of an attribute.">ippSetValueTag</a></li>
+ <li><a href="#ippSetVersion" title="Set the version number in an IPP message.">ippSetVersion</a></li>
<li><a href="#ippTagString" title="Return the tag name corresponding to a tag value.">ippTagString</a></li>
<li><a href="#ippTagValue" title="Return the tag value corresponding to a tag name.">ippTagValue</a></li>
<li><a href="#ippTimeToDate" title="Convert from UNIX time to RFC 1903 format.">ippTimeToDate</a></li>
@@ -550,21 +594,21 @@ are server-oriented...">http_state_t</a></li>
<li><a href="#http_uri_coding_t" title="URI en/decode flags">http_uri_coding_t</a></li>
<li><a href="#http_uri_status_t" title="URI separation status ">http_uri_status_t</a></li>
<li><a href="#http_version_t" title="HTTP version numbers">http_version_t</a></li>
- <li><a href="#ipp_attribute_t" title="Attribute">ipp_attribute_t</a></li>
+ <li><a href="#ipp_attribute_t" title="IPP attribute">ipp_attribute_t</a></li>
+ <li><a href="#ipp_copycb_t" title="The following structures are PRIVATE starting with CUPS 1.6/OS X 10.8.
+Please use the new accessor functions available in CUPS 1.6 and later, as
+these definitions will be moved to a private header file in a future release.">ipp_copycb_t</a></li>
+ <li><a href="#ipp_dstate_t" title="Document states">ipp_dstate_t</a></li>
<li><a href="#ipp_finish_t" title="Finishings">ipp_finish_t</a></li>
<li><a href="#ipp_iocb_t" title="IPP IO Callback Function ">ipp_iocb_t</a></li>
- <li><a href="#ipp_jstate_t" title="Job states">ipp_jstate_t</a></li>
- <li><a href="#ipp_op_t" title="IPP operations">ipp_op_t</a></li>
+ <li><a href="#ipp_jcollate_t" title="Job collation types">ipp_jcollate_t</a></li>
<li><a href="#ipp_orient_t" title="Orientation values">ipp_orient_t</a></li>
<li><a href="#ipp_pstate_t" title="Printer states">ipp_pstate_t</a></li>
<li><a href="#ipp_quality_t" title="Qualities">ipp_quality_t</a></li>
- <li><a href="#ipp_request_t" title="Request Header">ipp_request_t</a></li>
<li><a href="#ipp_res_t" title="Resolution units">ipp_res_t</a></li>
<li><a href="#ipp_state_t" title="IPP states">ipp_state_t</a></li>
- <li><a href="#ipp_t" title="Attribute Value">ipp_t</a></li>
- <li><a href="#ipp_uchar_t" title="IPP status codes">ipp_uchar_t</a></li>
- <li><a href="#ipp_tag_t" title="Format tags for attributes">ipp_tag_t</a></li>
- <li><a href="#ipp_value_t" title="Attribute Value">ipp_value_t</a></li>
+ <li><a href="#ipp_t" title="IPP request/response data">ipp_t</a></li>
+ <li><a href="#ipp_uchar_t" title="Unsigned 8-bit integer/character">ipp_uchar_t</a></li>
</ul></li>
<li><a href="#STRUCTURES">Structures</a><ul class="code">
<li><a href="#gss_auth_identity" title="Local functions...">gss_auth_identity</a></li>
@@ -573,12 +617,7 @@ used to enumerate all of the
addresses that are associated
with a hostname. ">http_addrlist_s</a></li>
<li><a href="#http_credential_s" title="HTTP credential data ">http_credential_s</a></li>
- <li><a href="#ipp_attribute_s" title="Attribute">ipp_attribute_s</a></li>
- <li><a href="#ipp_s" title="IPP Request/Response/Notification">ipp_s</a></li>
-</ul></li>
-<li><a href="#UNIONS">Unions</a><ul class="code">
- <li><a href="#ipp_request_u" title="Request Header">ipp_request_u</a></li>
- <li><a href="#ipp_value_u" title="Attribute Value">ipp_value_u</a></li>
+ <li><a href="#pollfd" title="User data (unused)">pollfd</a></li>
</ul></li>
<li><a href="#ENUMERATIONS">Constants</a><ul class="code">
<li><a href="#http_auth_e" title="HTTP authentication types">http_auth_e</a></li>
@@ -592,7 +631,9 @@ are server-oriented...">http_state_e</a></li>
<li><a href="#http_uri_coding_e" title="URI en/decode flags">http_uri_coding_e</a></li>
<li><a href="#http_uri_status_e" title="URI separation status ">http_uri_status_e</a></li>
<li><a href="#http_version_e" title="HTTP version numbers">http_version_e</a></li>
+ <li><a href="#ipp_dstate_e" title="Document states">ipp_dstate_e</a></li>
<li><a href="#ipp_finish_e" title="Finishings">ipp_finish_e</a></li>
+ <li><a href="#ipp_jcollate_e" title="Job collation types">ipp_jcollate_e</a></li>
<li><a href="#ipp_jstate_e" title="Job states">ipp_jstate_e</a></li>
<li><a href="#ipp_op_e" title="IPP operations">ipp_op_e</a></li>
<li><a href="#ipp_orient_e" title="Orientation values">ipp_orient_e</a></li>
@@ -605,11 +646,11 @@ are server-oriented...">http_state_e</a></li>
</ul></li>
</ul>
<!--
- "$Id: api-httpipp.html 9801 2011-05-21 04:02:41Z mike $"
+ "$Id: api-httpipp.html 10424 2012-04-23 17:26:57Z mike $"
HTTP and IPP API introduction for CUPS.
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2006 by Easy Software Products, all rights reserved.
These coded instructions, statements, and computer programs are the
@@ -635,35 +676,20 @@ The constant <code>CUPS_HTTP_DEFAULT</code> can be used with all of the
<code>cups</code> functions to refer to the default CUPS server - the functions
create a per-thread <a href='#http_t'><code>http_t</code></a> as needed.</p>
-<p>The IPP APIs use two structures for requests (messages sent to the CUPS
-scheduler) and responses (messages sent back to your application from the
-scheduler). The <a href='#ipp_t'><code>ipp_t</code></a> structure holds a
-complete request or response and is allocated using the
-<a href='#ippNew'><code>ippNew</code></a> or
-<a href='#ippNewRequest'><code>ippNewRequest</code></a> functions and
-freed using the <a href='#ippDelete'><code>ippDelete</code></a> function.</p>
-
-<p>The second structure is called
-<a href='#ipp_attribute_t'><code>ipp_attribute_t</code></a> and holds a
-single IPP attribute which consists of a group tag (<code>group_tag</code>), a
-value type tag (<code>value_tag</code>), the attribute name (<code>name</code>),
-and 1 or more values (<code>values[]</code>). Attributes are added to an
-<a href='#ipp_t'><code>ipp_t</code></a> structure using one of the
-<code>ippAdd</code> functions. For example, use
-<a href='#ippAddString'><code>ippAddString</code></a> to add a
-"requesting-user-name" string attribute to a request:</p>
+<p>The IPP APIs use two opaque structures for requests (messages sent to the CUPS scheduler) and responses (messages sent back to your application from the scheduler). The <a href='#ipp_t'><code>ipp_t</code></a> type holds a complete request or response and is allocated using the <a href='#ippNew'><code>ippNew</code></a> or <a href='#ippNewRequest'><code>ippNewRequest</code></a> functions and freed using the <a href='#ippDelete'><code>ippDelete</code></a> function.</p>
+
+<p>The second opaque structure is called <a href='#ipp_attribute_t'><code>ipp_attribute_t</code></a> and holds a single IPP attribute which consists of a group tag (<a href='#ippGetGroupTag'><code>ippGetGroupTag</code></a>), a value type tag (<a href='#ippGetValueTag'><code>ippGetValueTag</code></a>), the attribute name (<a href='#ippGetName'><code>ippGetName</code></a>), and 1 or more values (<a href='#ippGetCount'><code>ippGetCount</code></a>, <a href='#ippGetBoolean'><code>ippGetBoolean</code></a>, <a href='#ippGetCollection'><code>ippGetCollection</code></a>, <a href='#ippGetDate'><code>ippGetDate</code></a>, <a href='#ippGetInteger'><code>ippGetInteger</code></a>, <a href='#ippGetRange'><code>ippGetRange</code></a>, <a href='#ippGetResolution'><code>ippGetResolution</code></a>, and <a href='#ippGetString'><code>ippGetString</code></a>). Attributes are added to an <a href='#ipp_t'><code>ipp_t</code></a> pointer using one of the <code>ippAdd</code> functions. For example, use <a href='#ippAddString'><code>ippAddString</code></a> to add the "printer-uri" and "requesting-user-name" string attributes to a request:</p>
<pre class='example'>
<a href='#ipp_t'>ipp_t</a> *request = <a href='#ippNewRequest'>ippNewRequest</a>(IPP_GET_JOBS);
+<a href='#ippAddString'>ippAddString</a>(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
+ NULL, "ipp://localhost/printers/");
<a href='#ippAddString'>ippAddString</a>(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name",
NULL, cupsUser());
</pre>
-<p>Once you have created an IPP request, use the <code>cups</code>
-functions to send the request to and read the response from the server.
-For example, the <a href='#cupsDoRequest'><code>cupsDoRequest</code></a>
-function can be used for simple query operations that do not involve files:</p>
+<p>Once you have created an IPP request, use the <code>cups</code> functions to send the request to and read the response from the server. For example, the <a href='#cupsDoRequest'><code>cupsDoRequest</code></a> function can be used for simple query operations that do not involve files:</p>
<pre class='example'>
#include &lt;cups/cups.h&gt;
@@ -673,6 +699,8 @@ function can be used for simple query operations that do not involve files:</p>
{
<a href='#ipp_t'>ipp_t</a> *request = <a href='#ippNewRequest'>ippNewRequest</a>(IPP_GET_JOBS);
+ <a href='#ippAddString'>ippAddString</a>(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
+ NULL, "ipp://localhost/printers/");
<a href='#ippAddString'>ippAddString</a>(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name",
NULL, cupsUser());
@@ -680,13 +708,7 @@ function can be used for simple query operations that do not involve files:</p>
}
</pre>
-<p>The <a href='#cupsDoRequest'><code>cupsDoRequest</code></a> function frees
-the request structure and returns an IPP response structure or NULL pointer if
-the request could not be sent to the server. Once you have a response from
-the server, you can either use the
-<a href='#ippFindAttribute'><code>ippFindAttribute</code></a> and
-<a href='#ippFindNextAttribute'><code>ippFindNextAttribute</code></a> functions
-to find specific attributes, for example:</p>
+<p>The <a href='#cupsDoRequest'><code>cupsDoRequest</code></a> function frees the request and returns an IPP response or <code>NULL</code> pointer if the request could not be sent to the server. Once you have a response from the server, you can either use the <a href='#ippFindAttribute'><code>ippFindAttribute</code></a> and <a href='#ippFindNextAttribute'><code>ippFindNextAttribute</code></a> functions to find specific attributes, for example:</p>
<pre class='example'>
<a href='#ipp_t'>ipp_t</a> *response;
@@ -695,25 +717,20 @@ to find specific attributes, for example:</p>
attr = <a href='#ippFindAttribute'>ippFindAttribute</a>(response, "printer-state", IPP_TAG_ENUM);
</pre>
-<p>You can also walk the list of attributes with a simple <code>for</code> loop
-like this:</p>
+<p>You can also walk the list of attributes with a simple <code>for</code> loop like this:</p>
<pre class='example'>
<a href='#ipp_t'>ipp_t</a> *response;
<a href='#ipp_attribute_t'>ipp_attribute_t</a> *attr;
-for (attr = response->attrs; attr != NULL; attr = attr->next)
- if (attr->name == NULL)
+for (attr = <a href='#ippFirstAttribute'>ippFirstAttribute</a>(response); attr != NULL; attr = <a href='#ippNextAttribute'>ippNextAttribute</a>(response))
+ if (ippGetName(attr) == NULL)
puts("--SEPARATOR--");
else
- puts(attr->name);
+ puts(ippGetName(attr));
</pre>
-<p>The <code>for</code> loop approach is normally used when collecting
-attributes for multiple objects (jobs, printers, etc.) in a response. Attributes
-with <code>NULL</code> names indicate a separator between the attributes of
-each object. For example, the following code will list the jobs returned from
-our previous <a href='#get_jobs'><code>get_jobs</code></a> example code:</p>
+<p>The <code>for</code> loop approach is normally used when collecting attributes for multiple objects (jobs, printers, etc.) in a response. Attributes with <code>NULL</code> names indicate a separator between the attributes of each object. For example, the following code will list the jobs returned from our previous <a href='#get_jobs'><code>get_jobs</code></a> example code:</p>
<pre class='example'>
<a href='#ipp_t'>ipp_t</a> *response = <a href='#get_jobs'>get_jobs</a>();
@@ -721,37 +738,55 @@ our previous <a href='#get_jobs'><code>get_jobs</code></a> example code:</p>
if (response != NULL)
{
<a href='#ipp_attribute_t'>ipp_attribute_t</a> *attr;
+ const char *attrname;
int job_id = 0;
- char *job_name = NULL;
- char *job_originating_user_name = NULL;
+ const char *job_name = NULL;
+ const char *job_originating_user_name = NULL;
puts("Job ID Owner Title");
puts("------ ---------------- ---------------------------------");
- for (attr = response->attrs; attr != NULL; attr = attr->next)
+ for (attr = <a href='#ippFirstAttribute'>ippFirstAttribute</a>(response); attr != NULL; attr = <a href='#ippNextAttribute'>ippNextAttribute</a>(response))
{
/* Attributes without names are separators between jobs */
- if (attr->name == NULL)
+ attrname = ippGetName(attr);
+ if (attrname == NULL)
{
- if (job_id > 0 &amp;&amp; job_name != NULL &amp;&amp; job_originating_user_name != NULL)
+ if (job_id > 0)
+ {
+ if (job_name == NULL)
+ job_name = "(withheld)";
+
+ if (job_originating_user_name == NULL)
+ job_originating_user_name = "(withheld)";
+
printf("%5d %-16s %s\n", job_id, job_originating_user_name, job_name);
+ }
job_id = 0;
job_name = NULL;
job_originating_user_name = NULL;
continue;
}
- else if (!strcmp(attr->name, "job-id") &amp;&amp; attr->value_tag == IPP_TAG_INTEGER)
- job_id = attr->values[0].integer;
- else if (!strcmp(attr->name, "job-name") &amp;&amp; attr->value_tag == IPP_TAG_NAME)
- job_name = attr->values[0].string.text;
- else if (!strcmp(attr->name, "job-originating-user-name") &amp;&amp;
- attr->value_tag == IPP_TAG_NAME)
- job_originating_user_name = attr->values[0].string.text;
+ else if (!strcmp(attrname, "job-id") &amp;&amp; ippGetValueTag(attr) == IPP_TAG_INTEGER)
+ job_id = ippGetInteger(attr, 0);
+ else if (!strcmp(attrname, "job-name") &amp;&amp; ippGetValueTag(attr) == IPP_TAG_NAME)
+ job_name = ippGetString(attr, 0, NULL);
+ else if (!strcmp(attrname, "job-originating-user-name") &amp;&amp;
+ ippGetValueTag(attr) == IPP_TAG_NAME)
+ job_originating_user_name = ippGetString(attr, 0, NULL);
}
- if (job_id > 0 &amp;&amp; job_name != NULL &amp;&amp; job_originating_user_name != NULL)
+ if (job_id > 0)
+ {
+ if (job_name == NULL)
+ job_name = "(withheld)";
+
+ if (job_originating_user_name == NULL)
+ job_originating_user_name = "(withheld)";
+
printf("%5d %-16s %s\n", job_id, job_originating_user_name, job_name);
+ }
}
</pre>
@@ -928,7 +963,7 @@ if (status == HTTP_CONTINUE)
<a href='#ippDelete'>ippDelete</a>(request);
</pre>
<h2 class="title"><a name="FUNCTIONS">Functions</a></h2>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/Mac OS X 10.4&nbsp;</span><a name="cupsDoAuthentication">cupsDoAuthentication</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/OS X 10.4&nbsp;</span><a name="cupsDoAuthentication">cupsDoAuthentication</a></h3>
<p class="description">Authenticate a request.</p>
<p class="code">
int cupsDoAuthentication (<br>
@@ -978,7 +1013,7 @@ status, prior to resubmitting your request.
<p class="discussion">This function sends the IPP request to the specified server, retrying
and authenticating as necessary. The request is freed with <a href="#ippDelete"><code>ippDelete</code></a>
after receiving a valid IPP response.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="cupsDoIORequest">cupsDoIORequest</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="cupsDoIORequest">cupsDoIORequest</a></h3>
<p class="description">Do an IPP request with file descriptors.</p>
<p class="code">
<a href="#ipp_t">ipp_t</a> *cupsDoIORequest (<br>
@@ -1059,14 +1094,14 @@ void cupsEncodeOptions (<br>
<p class="discussion">This function adds operation, job, and then subscription attributes,
in that order. Use the cupsEncodeOptions2() function to add attributes
for a single group.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsEncodeOptions2">cupsEncodeOptions2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsEncodeOptions2">cupsEncodeOptions2</a></h3>
<p class="description">Encode printer options into IPP attributes for a group.</p>
<p class="code">
void cupsEncodeOptions2 (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int num_options,<br>
&nbsp;&nbsp;&nbsp;&nbsp;cups_option_t *options,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group_tag<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group_tag<br>
);</p>
<h4 class="parameters">Parameters</h4>
<dl>
@@ -1085,7 +1120,7 @@ function multiple times for each group, or use cupsEncodeOptions()
to add the standard groups.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsGetDevices">cupsGetDevices</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsGetDevices">cupsGetDevices</a></h3>
<p class="description">Get available printer devices.</p>
<p class="code">
ipp_status_t cupsGetDevices (<br>
@@ -1121,7 +1156,7 @@ parameters provide comma-delimited lists of backends to include or omit from
the request respectively.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/Mac OS X 10.4&nbsp;</span><a name="cupsGetFd">cupsGetFd</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/OS X 10.4&nbsp;</span><a name="cupsGetFd">cupsGetFd</a></h3>
<p class="description">Get a file from the server.</p>
<p class="code">
<a href="#http_status_t">http_status_t</a> cupsGetFd (<br>
@@ -1144,7 +1179,7 @@ the request respectively.
<p class="discussion">This function returns <code>HTTP_OK</code> when the file is successfully retrieved.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/Mac OS X 10.4&nbsp;</span><a name="cupsGetFile">cupsGetFile</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/OS X 10.4&nbsp;</span><a name="cupsGetFile">cupsGetFile</a></h3>
<p class="description">Get a file from the server.</p>
<p class="code">
<a href="#http_status_t">http_status_t</a> cupsGetFile (<br>
@@ -1167,7 +1202,7 @@ the request respectively.
<p class="discussion">This function returns <code>HTTP_OK</code> when the file is successfully retrieved.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsGetResponse">cupsGetResponse</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsGetResponse">cupsGetResponse</a></h3>
<p class="description">Get a response to an IPP request.</p>
<p class="code">
<a href="#ipp_t">ipp_t</a> *cupsGetResponse (<br>
@@ -1186,7 +1221,8 @@ the request respectively.
<h4 class="discussion">Discussion</h4>
<p class="discussion">Use this function to get the response for an IPP request sent using
cupsSendDocument() or cupsSendRequest(). For requests that return
-additional data, use httpRead() after getting a successful response.
+additional data, use httpRead() after getting a successful response,
+otherwise call httpFlush() to complete the response processing.
</p>
<h3 class="function"><a name="cupsLastError">cupsLastError</a></h3>
@@ -1195,13 +1231,13 @@ additional data, use httpRead() after getting a successful response.
ipp_status_t cupsLastError (void);</p>
<h4 class="returnvalue">Return Value</h4>
<p class="description">IPP status code from last request</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsLastErrorString">cupsLastErrorString</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsLastErrorString">cupsLastErrorString</a></h3>
<p class="description">Return the last IPP status-message.</p>
<p class="code">
const char *cupsLastErrorString (void);</p>
<h4 class="returnvalue">Return Value</h4>
<p class="description">status-message text from last request</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/Mac OS X 10.4&nbsp;</span><a name="cupsPutFd">cupsPutFd</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/OS X 10.4&nbsp;</span><a name="cupsPutFd">cupsPutFd</a></h3>
<p class="description">Put a file on the server.</p>
<p class="code">
<a href="#http_status_t">http_status_t</a> cupsPutFd (<br>
@@ -1225,7 +1261,7 @@ const char *cupsLastErrorString (void);</p>
successfully.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/Mac OS X 10.4&nbsp;</span><a name="cupsPutFile">cupsPutFile</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/OS X 10.4&nbsp;</span><a name="cupsPutFile">cupsPutFile</a></h3>
<p class="description">Put a file on the server.</p>
<p class="code">
<a href="#http_status_t">http_status_t</a> cupsPutFile (<br>
@@ -1249,7 +1285,7 @@ successfully.
successfully.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsReadResponseData">cupsReadResponseData</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsReadResponseData">cupsReadResponseData</a></h3>
<p class="description">Read additional data after the IPP response.</p>
<p class="code">
ssize_t cupsReadResponseData (<br>
@@ -1273,7 +1309,7 @@ ssize_t cupsReadResponseData (<br>
files for CUPS_GET_PPD and CUPS_GET_DOCUMENT requests, respectively.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsSendRequest">cupsSendRequest</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsSendRequest">cupsSendRequest</a></h3>
<p class="description">Send an IPP request.</p>
<p class="code">
<a href="#http_status_t">http_status_t</a> cupsSendRequest (<br>
@@ -1305,7 +1341,7 @@ Unlike cupsDoFileRequest(), cupsDoIORequest(), and cupsDoRequest(), the
request is not freed.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsWriteRequestData">cupsWriteRequestData</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsWriteRequestData">cupsWriteRequestData</a></h3>
<p class="description">Write additional data after an IPP request.</p>
<p class="code">
<a href="#http_status_t">http_status_t</a> cupsWriteRequestData (<br>
@@ -1329,7 +1365,7 @@ request is not freed.
after <a href="#cupsStartDocument"><code>cupsStartDocument</code></a> to provide a document file.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="httpAddCredential">httpAddCredential</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="httpAddCredential">httpAddCredential</a></h3>
<p class="description">Allocates and adds a single credential to an array.</p>
<p class="code">
int httpAddCredential (<br>
@@ -1352,7 +1388,7 @@ int httpAddCredential (<br>
<p class="discussion">Use <code>cupsArrayNew(NULL, NULL)</code> to create a credentials array.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpAddrAny">httpAddrAny</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpAddrAny">httpAddrAny</a></h3>
<p class="description">Check for the &quot;any&quot; address.</p>
<p class="code">
int httpAddrAny (<br>
@@ -1365,7 +1401,7 @@ int httpAddrAny (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">1 if &quot;any&quot;, 0 otherwise</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpAddrEqual">httpAddrEqual</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpAddrEqual">httpAddrEqual</a></h3>
<p class="description">Compare two addresses.</p>
<p class="code">
int httpAddrEqual (<br>
@@ -1381,7 +1417,7 @@ int httpAddrEqual (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">1 if equal, 0 if not</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpAddrLength">httpAddrLength</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpAddrLength">httpAddrLength</a></h3>
<p class="description">Return the length of the address in bytes.</p>
<p class="code">
int httpAddrLength (<br>
@@ -1394,7 +1430,7 @@ int httpAddrLength (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Length in bytes</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpAddrLocalhost">httpAddrLocalhost</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpAddrLocalhost">httpAddrLocalhost</a></h3>
<p class="description">Check for the local loopback address.</p>
<p class="code">
int httpAddrLocalhost (<br>
@@ -1407,7 +1443,7 @@ int httpAddrLocalhost (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">1 if local host, 0 otherwise</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpAddrLookup">httpAddrLookup</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpAddrLookup">httpAddrLookup</a></h3>
<p class="description">Lookup the hostname associated with the address.</p>
<p class="code">
char *httpAddrLookup (<br>
@@ -1426,7 +1462,7 @@ char *httpAddrLookup (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Host name</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpAddrString">httpAddrString</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpAddrString">httpAddrString</a></h3>
<p class="description">Convert an address to a numeric string.</p>
<p class="code">
char *httpAddrString (<br>
@@ -1445,7 +1481,7 @@ char *httpAddrString (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Numeric address string</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpAssembleURI">httpAssembleURI</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpAssembleURI">httpAssembleURI</a></h3>
<p class="description">Assemble a uniform resource identifier from its
components.</p>
<p class="code">
@@ -1487,7 +1523,7 @@ place of traditional string functions whenever you need to create a
URI string.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpAssembleURIf">httpAssembleURIf</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpAssembleURIf">httpAssembleURIf</a></h3>
<p class="description">Assemble a uniform resource identifier from its
components with a formatted resource.</p>
<p class="code">
@@ -1560,7 +1596,7 @@ int httpCheck (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">0 = no data, 1 = data available</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="httpClearCookie">httpClearCookie</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="httpClearCookie">httpClearCookie</a></h3>
<p class="description">Clear the cookie value(s).</p>
<p class="code">
void httpClearCookie (<br>
@@ -1632,7 +1668,7 @@ void httpClose (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New HTTP connection</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="httpCopyCredentials">httpCopyCredentials</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="httpCopyCredentials">httpCopyCredentials</a></h3>
<p class="description">Copy the credentials associated with an encrypted
connection.</p>
<p class="code">
@@ -1670,7 +1706,7 @@ char *httpDecode64 (<br>
which provides buffer length arguments.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/Mac OS X 10.4&nbsp;</span><a name="httpDecode64_2">httpDecode64_2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/OS X 10.4&nbsp;</span><a name="httpDecode64_2">httpDecode64_2</a></h3>
<p class="description">Base64-decode a string.</p>
<p class="code">
char *httpDecode64_2 (<br>
@@ -1726,7 +1762,7 @@ char *httpEncode64 (<br>
which provides buffer length arguments.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/Mac OS X 10.4&nbsp;</span><a name="httpEncode64_2">httpEncode64_2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/OS X 10.4&nbsp;</span><a name="httpEncode64_2">httpEncode64_2</a></h3>
<p class="description">Base64-encode a string.</p>
<p class="code">
char *httpEncode64_2 (<br>
@@ -1788,7 +1824,7 @@ void httpFlush (<br>
<dt>http</dt>
<dd class="description">Connection to server</dd>
</dl>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpFlushWrite">httpFlushWrite</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpFlushWrite">httpFlushWrite</a></h3>
<p class="description">Flush data in write buffer.</p>
<p class="code">
int httpFlushWrite (<br>
@@ -1828,7 +1864,7 @@ int httpGet (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Status of call (0 = success)</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="httpGetAuthString">httpGetAuthString</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="httpGetAuthString">httpGetAuthString</a></h3>
<p class="description">Get the current authorization string.</p>
<p class="code">
char *httpGetAuthString (<br>
@@ -1848,7 +1884,7 @@ string to use with httpSetField() for the HTTP_FIELD_AUTHORIZATION
value.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpGetBlocking">httpGetBlocking</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpGetBlocking">httpGetBlocking</a></h3>
<p class="description">Get the blocking/non-block state of a connection.</p>
<p class="code">
int httpGetBlocking (<br>
@@ -1861,7 +1897,7 @@ int httpGetBlocking (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">1 if blocking, 0 if non-blocking</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="httpGetCookie">httpGetCookie</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="httpGetCookie">httpGetCookie</a></h3>
<p class="description">Get any cookie data from the response.</p>
<p class="code">
const char *httpGetCookie (<br>
@@ -1887,7 +1923,7 @@ const char *httpGetDateString (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Date/time string</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpGetDateString2">httpGetDateString2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpGetDateString2">httpGetDateString2</a></h3>
<p class="description">Get a formatted date/time string from a time value.</p>
<p class="code">
const char *httpGetDateString2 (<br>
@@ -1919,7 +1955,7 @@ time_t httpGetDateTime (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">UNIX time</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpGetFd">httpGetFd</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpGetFd">httpGetFd</a></h3>
<p class="description">Get the file descriptor associated with a connection.</p>
<p class="code">
int httpGetFd (<br>
@@ -1962,7 +1998,7 @@ struct hostent *httpGetHostByName (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Host entry</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpGetHostname">httpGetHostname</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpGetHostname">httpGetHostname</a></h3>
<p class="description">Get the FQDN for the connection or local system.</p>
<p class="code">
const char *httpGetHostname (<br>
@@ -2007,7 +2043,7 @@ int httpGetLength (<br>
2^31 - 1; use httpGetLength2() instead.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpGetLength2">httpGetLength2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpGetLength2">httpGetLength2</a></h3>
<p class="description">Get the amount of data remaining from the
content-length or transfer-encoding fields.</p>
<p class="code">
@@ -2026,7 +2062,20 @@ off_t httpGetLength2 (<br>
content larger than 2^31 - 1.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpGetStatus">httpGetStatus</a></h3>
+<h3 class="function"><a name="httpGetState">httpGetState</a></h3>
+<p class="description">Get the current state of the HTTP request.</p>
+<p class="code">
+<a href="#http_state_t">http_state_t</a> httpGetState (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#http_t">http_t</a> *http<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>http</dt>
+<dd class="description">Connection to server</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">HTTP state</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpGetStatus">httpGetStatus</a></h3>
<p class="description">Get the status of the last HTTP request.</p>
<p class="code">
<a href="#http_status_t">http_status_t</a> httpGetStatus (<br>
@@ -2061,7 +2110,7 @@ char *httpGetSubField (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Value or NULL</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpGetSubField2">httpGetSubField2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpGetSubField2">httpGetSubField2</a></h3>
<p class="description">Get a sub-field value.</p>
<p class="code">
char *httpGetSubField2 (<br>
@@ -2086,6 +2135,19 @@ char *httpGetSubField2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Value or NULL</p>
+<h3 class="function"><a name="httpGetVersion">httpGetVersion</a></h3>
+<p class="description">Get the HTTP version at the other end.</p>
+<p class="code">
+<a href="#http_version_t">http_version_t</a> httpGetVersion (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#http_t">http_t</a> *http<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>http</dt>
+<dd class="description">Connection to server</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Version number</p>
<h3 class="function"><a name="httpGets">httpGets</a></h3>
<p class="description">Get a line of text from a HTTP connection.</p>
<p class="code">
@@ -2260,7 +2322,7 @@ int httpRead (<br>
read more than 2GB of data.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpRead2">httpRead2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpRead2">httpRead2</a></h3>
<p class="description">Read data from a HTTP connection.</p>
<p class="code">
ssize_t httpRead2 (<br>
@@ -2292,6 +2354,26 @@ int httpReconnect (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">0 on success, non-zero on failure</p>
+<h3 class="function"><a name="httpReconnect2">httpReconnect2</a></h3>
+<p class="description">Reconnect to a HTTP server with timeout and optional
+cancel.</p>
+<p class="code">
+int httpReconnect2 (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#http_t">http_t</a> *http,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int msec,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int *cancel<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>http</dt>
+<dd class="description">Connection to server</dd>
+<dt>msec</dt>
+<dd class="description">Timeout in milliseconds</dd>
+<dt>cancel</dt>
+<dd class="description">Pointer to &quot;cancel&quot; variable</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">0 on success, non-zero on failure</p>
<h3 class="function"><span class="info">&nbsp;DEPRECATED&nbsp;</span><a name="httpSeparate">httpSeparate</a></h3>
<p class="description">Separate a Universal Resource Identifier into its
components.</p>
@@ -2323,7 +2405,7 @@ void httpSeparate (<br>
<p class="discussion">This function is deprecated; use the httpSeparateURI() function instead.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/Mac OS X 10.4&nbsp;</span><a name="httpSeparate2">httpSeparate2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.21/OS X 10.4&nbsp;</span><a name="httpSeparate2">httpSeparate2</a></h3>
<p class="description">Separate a Universal Resource Identifier into its
components.</p>
<p class="code">
@@ -2367,7 +2449,7 @@ void httpSeparate2 (<br>
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpSeparateURI">httpSeparateURI</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpSeparateURI">httpSeparateURI</a></h3>
<p class="description">Separate a Universal Resource Identifier into its
components.</p>
<p class="code">
@@ -2411,7 +2493,7 @@ components.</p>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Result of separation</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="httpSetAuthString">httpSetAuthString</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="httpSetAuthString">httpSetAuthString</a></h3>
<p class="description">Set the current authorization string.</p>
<p class="code">
void httpSetAuthString (<br>
@@ -2435,7 +2517,7 @@ HTTP_FIELD_AUTHORIZATION prior to issuing a HTTP request using httpGet(),
httpHead(), httpOptions(), httpPost, or httpPut().
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="httpSetCookie">httpSetCookie</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="httpSetCookie">httpSetCookie</a></h3>
<p class="description">Set the cookie value(s).</p>
<p class="code">
void httpSetCookie (<br>
@@ -2449,7 +2531,7 @@ void httpSetCookie (<br>
<dt>cookie</dt>
<dd class="description">Cookie string</dd>
</dl>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="httpSetCredentials">httpSetCredentials</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="httpSetCredentials">httpSetCredentials</a></h3>
<p class="description">Set the credentials associated with an encrypted
connection.</p>
<p class="code">
@@ -2466,7 +2548,7 @@ int httpSetCredentials (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Status of call (0 = success)</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpSetExpect">httpSetExpect</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpSetExpect">httpSetExpect</a></h3>
<p class="description">Set the Expect: header in a request.</p>
<p class="code">
void httpSetExpect (<br>
@@ -2501,7 +2583,7 @@ void httpSetField (<br>
<dt>value</dt>
<dd class="description">Value</dd>
</dl>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpSetLength">httpSetLength</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpSetLength">httpSetLength</a></h3>
<p class="description">Set the content-length and content-encoding.</p>
<p class="code">
void httpSetLength (<br>
@@ -2515,7 +2597,7 @@ void httpSetLength (<br>
<dt>length</dt>
<dd class="description">Length (0 for chunked)</dd>
</dl>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="httpSetTimeout">httpSetTimeout</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="httpSetTimeout">httpSetTimeout</a></h3>
<p class="description">Set read/write timeouts and an optional callback.</p>
<p class="code">
void httpSetTimeout (<br>
@@ -2586,7 +2668,7 @@ int httpTrace (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">HTTP status</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="httpWait">httpWait</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="httpWait">httpWait</a></h3>
<p class="description">Wait for data available on a connection.</p>
<p class="code">
int httpWait (<br>
@@ -2626,7 +2708,7 @@ int httpWrite (<br>
write more than 2GB of data.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="httpWrite2">httpWrite2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="httpWrite2">httpWrite2</a></h3>
<p class="description">Write data to a HTTP connection.</p>
<p class="code">
ssize_t httpWrite2 (<br>
@@ -2650,7 +2732,7 @@ ssize_t httpWrite2 (<br>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddBoolean (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;char value<br>
);</p>
@@ -2667,12 +2749,21 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).</p>
<h3 class="function"><a name="ippAddBooleans">ippAddBooleans</a></h3>
<p class="description">Add an array of boolean values.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddBooleans (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int num_values,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *values<br>
@@ -2692,12 +2783,21 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ippAddCollection">ippAddCollection</a></h3>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ippAddCollection">ippAddCollection</a></h3>
<p class="description">Add a collection value.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddCollection (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *value<br>
);</p>
@@ -2714,12 +2814,23 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ippAddCollections">ippAddCollections</a></h3>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ippAddCollections">ippAddCollections</a></h3>
<p class="description">Add an array of collection values.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddCollections (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int num_values,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const <a href="#ipp_t">ipp_t</a> **values<br>
@@ -2739,12 +2850,23 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).
+
+</p>
<h3 class="function"><a name="ippAddDate">ippAddDate</a></h3>
<p class="description">Add a date attribute to an IPP message.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddDate (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const <a href="#ipp_uchar_t">ipp_uchar_t</a> *value<br>
);</p>
@@ -2761,13 +2883,22 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).</p>
<h3 class="function"><a name="ippAddInteger">ippAddInteger</a></h3>
<p class="description">Add a integer attribute to an IPP message.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddInteger (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> type,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t value_tag,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int value<br>
);</p>
@@ -2777,7 +2908,7 @@ ssize_t httpWrite2 (<br>
<dd class="description">IPP message</dd>
<dt>group</dt>
<dd class="description">IPP group</dd>
-<dt>type</dt>
+<dt>value_tag</dt>
<dd class="description">Type of attribute</dd>
<dt>name</dt>
<dd class="description">Name of attribute</dd>
@@ -2786,13 +2917,25 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).<br>
+<br>
+Supported values include enum (<code>IPP_TAG_ENUM</code>) and integer
+(<code>IPP_TAG_INTEGER</code>).</p>
<h3 class="function"><a name="ippAddIntegers">ippAddIntegers</a></h3>
<p class="description">Add an array of integer values.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddIntegers (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> type,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t value_tag,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int num_values,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const int *values<br>
@@ -2803,7 +2946,7 @@ ssize_t httpWrite2 (<br>
<dd class="description">IPP message</dd>
<dt>group</dt>
<dd class="description">IPP group</dd>
-<dt>type</dt>
+<dt>value_tag</dt>
<dd class="description">Type of attribute</dd>
<dt>name</dt>
<dd class="description">Name of attribute</dd>
@@ -2814,12 +2957,24 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ippAddOctetString">ippAddOctetString</a></h3>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).<br>
+<br>
+Supported values include enum (<code>IPP_TAG_ENUM</code>) and integer
+(<code>IPP_TAG_INTEGER</code>).</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ippAddOctetString">ippAddOctetString</a></h3>
<p class="description">Add an octetString value to an IPP message.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddOctetString (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const void *data,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int datalen<br>
@@ -2839,12 +2994,62 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippAddOutOfBand">ippAddOutOfBand</a></h3>
+<p class="description">Add an out-of-band value to an IPP message.</p>
+<p class="code">
+<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddOutOfBand (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t value_tag,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char *name<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>group</dt>
+<dd class="description">IPP group</dd>
+<dt>value_tag</dt>
+<dd class="description">Type of attribute</dd>
+<dt>name</dt>
+<dd class="description">Name of attribute</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).<br>
+<br>
+Supported out-of-band values include unsupported-value
+(<code>IPP_TAG_UNSUPPORTED_VALUE</code>), default (<code>IPP_TAG_DEFAULT</code>), unknown
+(<code>IPP_TAG_UNKNOWN</code>), no-value (<code>IPP_TAG_NOVALUE</code>), not-settable
+(<code>IPP_TAG_NOTSETTABLE</code>), delete-attribute (<code>IPP_TAG_DELETEATTR</code>), and
+admin-define (<code>IPP_TAG_ADMINDEFINE</code>).
+
+</p>
<h3 class="function"><a name="ippAddRange">ippAddRange</a></h3>
<p class="description">Add a range of values to an IPP message.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddRange (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int lower,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int upper<br>
@@ -2864,12 +3069,23 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).<br>
+<br>
+The <code>lower</code> parameter must be less than or equal to the <code>upper</code> parameter.</p>
<h3 class="function"><a name="ippAddRanges">ippAddRanges</a></h3>
<p class="description">Add ranges of values to an IPP message.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddRanges (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int num_values,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const int *lower,<br>
@@ -2892,12 +3108,21 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).</p>
<h3 class="function"><a name="ippAddResolution">ippAddResolution</a></h3>
<p class="description">Add a resolution value to an IPP message.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddResolution (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_res_t">ipp_res_t</a> units,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int xres,<br>
@@ -2920,12 +3145,21 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).</p>
<h3 class="function"><a name="ippAddResolutions">ippAddResolutions</a></h3>
<p class="description">Add resolution values to an IPP message.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddResolutions (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int num_values,<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_res_t">ipp_res_t</a> units,<br>
@@ -2951,6 +3185,15 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).</p>
<h3 class="function"><a name="ippAddSeparator">ippAddSeparator</a></h3>
<p class="description">Add a group separator to an IPP message.</p>
<p class="code">
@@ -2964,15 +3207,18 @@ ssize_t httpWrite2 (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.</p>
<h3 class="function"><a name="ippAddString">ippAddString</a></h3>
<p class="description">Add a language-encoded string to an IPP message.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddString (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> type,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t value_tag,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;const char *charset,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char *language,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *value<br>
);</p>
<h4 class="parameters">Parameters</h4>
@@ -2981,27 +3227,46 @@ ssize_t httpWrite2 (<br>
<dd class="description">IPP message</dd>
<dt>group</dt>
<dd class="description">IPP group</dd>
-<dt>type</dt>
+<dt>value_tag</dt>
<dd class="description">Type of attribute</dd>
<dt>name</dt>
<dd class="description">Name of attribute</dd>
-<dt>charset</dt>
-<dd class="description">Character set</dd>
+<dt>language</dt>
+<dd class="description">Language code</dd>
<dt>value</dt>
<dd class="description">Value</dd>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).<br>
+<br>
+Supported string values include charset (<code>IPP_TAG_CHARSET</code>), keyword
+(<code>IPP_TAG_KEYWORD</code>), language (<code>IPP_TAG_LANGUAGE</code>), mimeMediaType
+(<code>IPP_TAG_MIMETYPE</code>), name (<code>IPP_TAG_NAME</code>), nameWithLanguage
+(<code>IPP_TAG_NAMELANG), text (</code>code IPP_TAG_TEXT@), textWithLanguage
+(<code>IPP_TAG_TEXTLANG</code>), uri (<code>IPP_TAG_URI</code>), and uriScheme
+(<code>IPP_TAG_URISCHEME</code>).<br>
+<br>
+The <code>language</code> parameter must be non-<code>NULL</code> for nameWithLanguage and
+textWithLanguage string values and must be <code>NULL</code> for all other string values.</p>
<h3 class="function"><a name="ippAddStrings">ippAddStrings</a></h3>
<p class="description">Add language-encoded strings to an IPP message.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippAddStrings (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> type,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t value_tag,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
&nbsp;&nbsp;&nbsp;&nbsp;int num_values,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;const char *charset,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char *language,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *const *values<br>
);</p>
<h4 class="parameters">Parameters</h4>
@@ -3010,19 +3275,126 @@ ssize_t httpWrite2 (<br>
<dd class="description">IPP message</dd>
<dt>group</dt>
<dd class="description">IPP group</dd>
-<dt>type</dt>
+<dt>value_tag</dt>
<dd class="description">Type of attribute</dd>
<dt>name</dt>
<dd class="description">Name of attribute</dd>
<dt>num_values</dt>
<dd class="description">Number of values</dd>
-<dt>charset</dt>
-<dd class="description">Character set</dd>
+<dt>language</dt>
+<dd class="description">Language code (<code>NULL</code> for default)</dd>
<dt>values</dt>
<dd class="description">Values</dd>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).<br>
+<br>
+Supported string values include charset (<code>IPP_TAG_CHARSET</code>), keyword
+(<code>IPP_TAG_KEYWORD</code>), language (<code>IPP_TAG_LANGUAGE</code>), mimeMediaType
+(<code>IPP_TAG_MIMETYPE</code>), name (<code>IPP_TAG_NAME</code>), nameWithLanguage
+(<code>IPP_TAG_NAMELANG), text (</code>code IPP_TAG_TEXT@), textWithLanguage
+(<code>IPP_TAG_TEXTLANG</code>), uri (<code>IPP_TAG_URI</code>), and uriScheme
+(<code>IPP_TAG_URISCHEME</code>).<br>
+<br>
+The <code>language</code> parameter must be non-<code>NULL</code> for nameWithLanguage and
+textWithLanguage string values and must be <code>NULL</code> for all other string values.</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippAttributeString">ippAttributeString</a></h3>
+<p class="description">Convert the attribute's value to a string.</p>
+<p class="code">
+size_t ippAttributeString (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;char *buffer,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;size_t bufsize<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">Attribute</dd>
+<dt>buffer</dt>
+<dd class="description">String buffer or NULL</dd>
+<dt>bufsize</dt>
+<dd class="description">Size of string buffer</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Number of bytes less nul</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">Returns the number of bytes that would be written, not including the
+trailing nul. The buffer pointer can be NULL to get the required length,
+just like (v)snprintf.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippCopyAttribute">ippCopyAttribute</a></h3>
+<p class="description">Copy an attribute.</p>
+<p class="code">
+<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippCopyAttribute (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *dst,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *srcattr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int quickcopy<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>dst</dt>
+<dd class="description">Destination IPP message</dd>
+<dt>srcattr</dt>
+<dd class="description">Attribute to copy</dd>
+<dt>quickcopy</dt>
+<dd class="description">1 for a referenced copy, 0 for normal</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">New attribute</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The specified attribute, <code>attr</code>, is copied to the destination IPP message.
+When <code>quickcopy</code> is non-zero, a &quot;shallow&quot; reference copy of the attribute is
+created - this should only be done as long as the original source IPP message will
+not be freed for the life of the destination.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippCopyAttributes">ippCopyAttributes</a></h3>
+<p class="description">Copy attributes from one IPP message to another.</p>
+<p class="code">
+int ippCopyAttributes (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *dst,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *src,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int quickcopy,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_copycb_t">ipp_copycb_t</a> cb,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;void *context<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>dst</dt>
+<dd class="description">Destination IPP message</dd>
+<dt>src</dt>
+<dd class="description">Source IPP message</dd>
+<dt>quickcopy</dt>
+<dd class="description">1 for a referenced copy, 0 for normal</dd>
+<dt>cb</dt>
+<dd class="description">Copy callback or <code>NULL</code> for none</dd>
+<dt>context</dt>
+<dd class="description">Context pointer</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on error</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">Zero or more attributes are copied from the source IPP message, @code@ src, to the
+destination IPP message, <code>dst</code>. When <code>quickcopy</code> is non-zero, a &quot;shallow&quot;
+reference copy of the attribute is created - this should only be done as long as the
+original source IPP message will not be freed for the life of the destination.<br>
+<br>
+The <code>cb</code> and <code>context</code> parameters provide a generic way to &quot;filter&quot; the
+attributes that are copied - the function must return 1 to copy the attribute or
+0 to skip it. The function may also choose to do a partial copy of the source attribute
+itself.
+
+</p>
<h3 class="function"><a name="ippDateToTime">ippDateToTime</a></h3>
<p class="description">Convert from RFC 1903 Date/Time format to UNIX time
in seconds.</p>
@@ -3048,7 +3420,7 @@ void ippDelete (<br>
<dt>ipp</dt>
<dd class="description">IPP message</dd>
</dl>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ippDeleteAttribute">ippDeleteAttribute</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ippDeleteAttribute">ippDeleteAttribute</a></h3>
<p class="description">Delete a single attribute in an IPP message.</p>
<p class="code">
void ippDeleteAttribute (<br>
@@ -3062,6 +3434,69 @@ void ippDeleteAttribute (<br>
<dt>attr</dt>
<dd class="description">Attribute to delete</dd>
</dl>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippDeleteValues">ippDeleteValues</a></h3>
+<p class="description">Delete values in an attribute.</p>
+<p class="code">
+int ippDeleteValues (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int count<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">Attribute</dd>
+<dt>element</dt>
+<dd class="description">Index of first value to delete (0-based)</dd>
+<dt>count</dt>
+<dd class="description">Number of values to delete</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>element</code> parameter specifies the first value to delete, starting at
+0. It must be less than the number of values returned by <a href="#ippGetCount"><code>ippGetCount</code></a>.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.<br>
+<br>
+Deleting all values in an attribute deletes the attribute.
+
+</p>
+<h3 class="function"><a name="ippEnumString">ippEnumString</a></h3>
+<p class="description">Return a string corresponding to the enum value.</p>
+<p class="code">
+const char *ippEnumString (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char *attrname,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int enumvalue<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attrname</dt>
+<dd class="description">Attribute name</dd>
+<dt>enumvalue</dt>
+<dd class="description">Enum value</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Enum string</p>
+<h3 class="function"><a name="ippEnumValue">ippEnumValue</a></h3>
+<p class="description">Return the value associated with a given enum string.</p>
+<p class="code">
+int ippEnumValue (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char *attrname,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char *enumstring<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attrname</dt>
+<dd class="description">Attribute name</dd>
+<dt>enumstring</dt>
+<dd class="description">Enum string</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Enum value or -1 if unknown</p>
<h3 class="function"><a name="ippErrorString">ippErrorString</a></h3>
<p class="description">Return a name for the given status code.</p>
<p class="code">
@@ -3075,7 +3510,7 @@ const char *ippErrorString (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Text string</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ippErrorValue">ippErrorValue</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ippErrorValue">ippErrorValue</a></h3>
<p class="description">Return a status code for the given name.</p>
<p class="code">
ipp_status_t ippErrorValue (<br>
@@ -3089,12 +3524,12 @@ ipp_status_t ippErrorValue (<br>
<h4 class="returnvalue">Return Value</h4>
<p class="description">IPP status code</p>
<h3 class="function"><a name="ippFindAttribute">ippFindAttribute</a></h3>
-<p class="description">Find a named attribute in a request...</p>
+<p class="description">Find a named attribute in a request.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippFindAttribute (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> type<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t type<br>
);</p>
<h4 class="parameters">Parameters</h4>
<dl>
@@ -3108,12 +3543,12 @@ ipp_status_t ippErrorValue (<br>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Matching attribute</p>
<h3 class="function"><a name="ippFindNextAttribute">ippFindNextAttribute</a></h3>
-<p class="description">Find the next named attribute in a request...</p>
+<p class="description">Find the next named attribute in a request.</p>
<p class="code">
<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippFindNextAttribute (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name,<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> type<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t type<br>
);</p>
<h4 class="parameters">Parameters</h4>
<dl>
@@ -3126,6 +3561,297 @@ ipp_status_t ippErrorValue (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Matching attribute</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippFirstAttribute">ippFirstAttribute</a></h3>
+<p class="description">Return the first attribute in the message.</p>
+<p class="code">
+<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippFirstAttribute (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">First attribute or <code>NULL</code> if none</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetBoolean">ippGetBoolean</a></h3>
+<p class="description">Get a boolean value for an attribute.</p>
+<p class="code">
+int ippGetBoolean (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Boolean value or -1 on error</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>element</code> parameter specifies which value to get from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a> - 1.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetCollection">ippGetCollection</a></h3>
+<p class="description">Get a collection value for an attribute.</p>
+<p class="code">
+<a href="#ipp_t">ipp_t</a> *ippGetCollection (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Collection value or <code>NULL</code> on error</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>element</code> parameter specifies which value to get from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a> - 1.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetCount">ippGetCount</a></h3>
+<p class="description">Get the number of values in an attribute.</p>
+<p class="code">
+int ippGetCount (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Number of values or -1 on error</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetDate">ippGetDate</a></h3>
+<p class="description">Get a date value for an attribute.</p>
+<p class="code">
+const <a href="#ipp_uchar_t">ipp_uchar_t</a> *ippGetDate (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Date value or <code>NULL</code></p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>element</code> parameter specifies which value to get from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a> - 1.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetGroupTag">ippGetGroupTag</a></h3>
+<p class="description">Get the group associated with an attribute.</p>
+<p class="code">
+ipp_tag_t ippGetGroupTag (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Group tag or <code>IPP_TAG_ZERO</code> on error</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetInteger">ippGetInteger</a></h3>
+<p class="description">Get the integer/enum value for an attribute.</p>
+<p class="code">
+int ippGetInteger (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Value or -1 on error</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>element</code> parameter specifies which value to get from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a> - 1.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetName">ippGetName</a></h3>
+<p class="description">Get the attribute name.</p>
+<p class="code">
+const char *ippGetName (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Attribute name or <code>NULL</code> for separators</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetOperation">ippGetOperation</a></h3>
+<p class="description">Get the operation ID in an IPP message.</p>
+<p class="code">
+ipp_op_t ippGetOperation (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP request message</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Operation ID or -1 on error</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetRange">ippGetRange</a></h3>
+<p class="description">Get a rangeOfInteger value from an attribute.</p>
+<p class="code">
+int ippGetRange (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int *uppervalue<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+<dt>uppervalue</dt>
+<dd class="description">Upper value of range</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Lower value of range or -1</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>element</code> parameter specifies which value to get from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a> - 1.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetRequestId">ippGetRequestId</a></h3>
+<p class="description">Get the request ID from an IPP message.</p>
+<p class="code">
+int ippGetRequestId (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Request ID or -1 on error</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetResolution">ippGetResolution</a></h3>
+<p class="description">Get a resolution value for an attribute.</p>
+<p class="code">
+int ippGetResolution (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int *yres,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_res_t">ipp_res_t</a> *units<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+<dt>yres</dt>
+<dd class="description">Vertical/feed resolution</dd>
+<dt>units</dt>
+<dd class="description">Units for resolution</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Horizontal/cross feed resolution or -1</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>element</code> parameter specifies which value to get from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a> - 1.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetState">ippGetState</a></h3>
+<p class="description">Get the IPP message state.</p>
+<p class="code">
+<a href="#ipp_state_t">ipp_state_t</a> ippGetState (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">IPP message state value</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetStatusCode">ippGetStatusCode</a></h3>
+<p class="description">Get the status code from an IPP response or event message.</p>
+<p class="code">
+ipp_status_t ippGetStatusCode (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP response or event message</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Status code in IPP message</p>
+<h3 class="function"><a name="ippGetString">ippGetString</a></h3>
+<p class="description">Return the value...</p>
+<p class="code">
+const char *ippGetString (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char **language<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+<dt>language</dt>
+<dd class="description">Language code (<code>NULL</code> for don't care)</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Get the string and optionally the language code for an attribute.</p>
+<p class="discussion">The <code>element</code> parameter specifies which value to get from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a> - 1.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetValueTag">ippGetValueTag</a></h3>
+<p class="description">Get the value tag for an attribute.</p>
+<p class="code">
+ipp_tag_t ippGetValueTag (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attr<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Value tag or <code>IPP_TAG_ZERO</code> on error</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippGetVersion">ippGetVersion</a></h3>
+<p class="description">Get the major and minor version number from an IPP message.</p>
+<p class="code">
+int ippGetVersion (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int *minor<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>minor</dt>
+<dd class="description">Minor version number or <code>NULL</code></dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Major version number or -1 on error</p>
<h3 class="function"><a name="ippLength">ippLength</a></h3>
<p class="description">Compute the length of an IPP message.</p>
<p class="code">
@@ -3145,11 +3871,11 @@ size_t ippLength (<br>
<a href="#ipp_t">ipp_t</a> *ippNew (void);</p>
<h4 class="returnvalue">Return Value</h4>
<p class="description">New IPP message</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ippNewRequest">ippNewRequest</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ippNewRequest">ippNewRequest</a></h3>
<p class="description">Allocate a new IPP request message.</p>
<p class="code">
<a href="#ipp_t">ipp_t</a> *ippNewRequest (<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_op_t">ipp_op_t</a> op<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_op_t op<br>
);</p>
<h4 class="parameters">Parameters</h4>
<dl>
@@ -3164,11 +3890,24 @@ attributes-natural-language attributes added. The
attributes-natural-language value is derived from the current locale.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ippOpString">ippOpString</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippNextAttribute">ippNextAttribute</a></h3>
+<p class="description">Return the next attribute in the message.</p>
+<p class="code">
+<a href="#ipp_attribute_t">ipp_attribute_t</a> *ippNextAttribute (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Next attribute or <code>NULL</code> if none</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ippOpString">ippOpString</a></h3>
<p class="description">Return a name for the given operation id.</p>
<p class="code">
const char *ippOpString (<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_op_t">ipp_op_t</a> op<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_op_t op<br>
);</p>
<h4 class="parameters">Parameters</h4>
<dl>
@@ -3177,10 +3916,10 @@ const char *ippOpString (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Name</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ippOpValue">ippOpValue</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ippOpValue">ippOpValue</a></h3>
<p class="description">Return an operation id for the given name.</p>
<p class="code">
-<a href="#ipp_op_t">ipp_op_t</a> ippOpValue (<br>
+ipp_op_t ippOpValue (<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name<br>
);</p>
<h4 class="parameters">Parameters</h4>
@@ -3212,7 +3951,7 @@ int ippPort (void);</p>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Current state</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ippReadFile">ippReadFile</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ippReadFile">ippReadFile</a></h3>
<p class="description">Read data for an IPP message from a file.</p>
<p class="code">
<a href="#ipp_state_t">ipp_state_t</a> ippReadFile (<br>
@@ -3228,7 +3967,7 @@ int ippPort (void);</p>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Current state</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ippReadIO">ippReadIO</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ippReadIO">ippReadIO</a></h3>
<p class="description">Read data for an IPP message.</p>
<p class="code">
<a href="#ipp_state_t">ipp_state_t</a> ippReadIO (<br>
@@ -3253,6 +3992,213 @@ int ippPort (void);</p>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Current state</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetBoolean">ippSetBoolean</a></h3>
+<p class="description">Set a boolean value in an attribute.</p>
+<p class="code">
+int ippSetBoolean (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int boolvalue<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+<dt>boolvalue</dt>
+<dd class="description">Boolean value</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to the IPP message containing the attribute that was
+previously created using the <a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.<br>
+<br>
+The <code>element</code> parameter specifies which value to set from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a>.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetCollection">ippSetCollection</a></h3>
+<p class="description">Set a collection value in an attribute.</p>
+<p class="code">
+int ippSetCollection (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *colvalue<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+<dt>colvalue</dt>
+<dd class="description">Collection value</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to the IPP message containing the attribute that was
+previously created using the <a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.<br>
+<br>
+The <code>element</code> parameter specifies which value to set from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a>.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetDate">ippSetDate</a></h3>
+<p class="description">Set a date value in an attribute.</p>
+<p class="code">
+int ippSetDate (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const <a href="#ipp_uchar_t">ipp_uchar_t</a> *datevalue<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+<dt>datevalue</dt>
+<dd class="description">Date value</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to the IPP message containing the attribute that was
+previously created using the <a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.<br>
+<br>
+The <code>element</code> parameter specifies which value to set from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a>.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetGroupTag">ippSetGroupTag</a></h3>
+<p class="description">Set the group tag of an attribute.</p>
+<p class="code">
+int ippSetGroupTag (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t group_tag<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">Attribute</dd>
+<dt>group_tag</dt>
+<dd class="description">Group tag</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to the IPP message containing the attribute that was
+previously created using the <a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.<br>
+<br>
+The <code>group</code> parameter specifies the IPP attribute group tag: none
+(<code>IPP_TAG_ZERO</code>, for member attributes), document (<code>IPP_TAG_DOCUMENT</code>),
+event notification (<code>IPP_TAG_EVENT_NOTIFICATION</code>), operation
+(<code>IPP_TAG_OPERATION</code>), printer (<code>IPP_TAG_PRINTER</code>), subscription
+(<code>IPP_TAG_SUBSCRIPTION</code>), or unsupported (<code>IPP_TAG_UNSUPPORTED_GROUP</code>).
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetInteger">ippSetInteger</a></h3>
+<p class="description">Set an integer or enum value in an attribute.</p>
+<p class="code">
+int ippSetInteger (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int intvalue<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+<dt>intvalue</dt>
+<dd class="description">Integer/enum value</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to the IPP message containing the attribute that was
+previously created using the <a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.<br>
+<br>
+The <code>element</code> parameter specifies which value to set from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a>.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetName">ippSetName</a></h3>
+<p class="description">Set the name of an attribute.</p>
+<p class="code">
+int ippSetName (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char *name<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>name</dt>
+<dd class="description">Attribute name</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to the IPP message containing the attribute that was
+previously created using the <a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetOperation">ippSetOperation</a></h3>
+<p class="description">Set the operation ID in an IPP request message.</p>
+<p class="code">
+int ippSetOperation (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_op_t op<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP request message</dd>
+<dt>op</dt>
+<dd class="description">Operation ID</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.
+
+</p>
<h3 class="function"><a name="ippSetPort">ippSetPort</a></h3>
<p class="description">Set the default port number.</p>
<p class="code">
@@ -3264,11 +4210,240 @@ void ippSetPort (<br>
<dt>p</dt>
<dd class="description">Port number to use</dd>
</dl>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="ippTagString">ippTagString</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetRange">ippSetRange</a></h3>
+<p class="description">Set a rangeOfInteger value in an attribute.</p>
+<p class="code">
+int ippSetRange (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int lowervalue,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int uppervalue<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+<dt>lowervalue</dt>
+<dd class="description">Lower bound for range</dd>
+<dt>uppervalue</dt>
+<dd class="description">Upper bound for range</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to the IPP message containing the attribute that was
+previously created using the <a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.<br>
+<br>
+The <code>element</code> parameter specifies which value to set from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a>.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetRequestId">ippSetRequestId</a></h3>
+<p class="description">Set the request ID in an IPP message.</p>
+<p class="code">
+int ippSetRequestId (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int request_id<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>request_id</dt>
+<dd class="description">Request ID</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>request_id</code> parameter must be greater than 0.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetResolution">ippSetResolution</a></h3>
+<p class="description">Set a resolution value in an attribute.</p>
+<p class="code">
+int ippSetResolution (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_res_t">ipp_res_t</a> unitsvalue,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int xresvalue,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int yresvalue<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+<dt>unitsvalue</dt>
+<dd class="description">Resolution units</dd>
+<dt>xresvalue</dt>
+<dd class="description">Horizontal/cross feed resolution</dd>
+<dt>yresvalue</dt>
+<dd class="description">Vertical/feed resolution</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to the IPP message containing the attribute that was
+previously created using the <a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.<br>
+<br>
+The <code>element</code> parameter specifies which value to set from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a>.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetState">ippSetState</a></h3>
+<p class="description">Set the current state of the IPP message.</p>
+<p class="code">
+int ippSetState (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_state_t">ipp_state_t</a> state<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>state</dt>
+<dd class="description">IPP state value</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetStatusCode">ippSetStatusCode</a></h3>
+<p class="description">Set the status code in an IPP response or event message.</p>
+<p class="code">
+int ippSetStatusCode (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_status_t status<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP response or event message</dd>
+<dt>status</dt>
+<dd class="description">Status code</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetString">ippSetString</a></h3>
+<p class="description">Set a string value in an attribute.</p>
+<p class="code">
+int ippSetString (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int element,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char *strvalue<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>element</dt>
+<dd class="description">Value number (0-based)</dd>
+<dt>strvalue</dt>
+<dd class="description">String value</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to the IPP message containing the attribute that was
+previously created using the <a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.<br>
+<br>
+The <code>element</code> parameter specifies which value to set from 0 to
+<a href="#ippGetCount(attr)"><code>ippGetCount(attr)</code></a>.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetValueTag">ippSetValueTag</a></h3>
+<p class="description">Set the value tag of an attribute.</p>
+<p class="code">
+int ippSetValueTag (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> **attr,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t value_tag<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>attr</dt>
+<dd class="description">IPP attribute</dd>
+<dt>value_tag</dt>
+<dd class="description">Value tag</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to the IPP message containing the attribute that was
+previously created using the <a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The <code>attr</code> parameter may be modified as a result of setting the value.<br>
+<br>
+Integer (<code>IPP_TAG_INTEGER</code>) values can be promoted to rangeOfInteger
+(<code>IPP_TAG_RANGE</code>) values, the various string tags can be promoted to name
+(<code>IPP_TAG_NAME</code>) or nameWithLanguage (<code>IPP_TAG_NAMELANG</code>) values, text
+(<code>IPP_TAG_TEXT</code>) values can be promoted to textWithLanguage
+(<code>IPP_TAG_TEXTLANG</code>) values, and all values can be demoted to the various
+out-of-band value tags such as no-value (<code>IPP_TAG_NOVALUE</code>). All other changes
+will be rejected.<br>
+<br>
+Promoting a string attribute to nameWithLanguage or textWithLanguage adds the language
+code in the &quot;attributes-natural-language&quot; attribute or, if not present, the language
+code for the current locale.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.6/OS X 10.8&nbsp;</span><a name="ippSetVersion">ippSetVersion</a></h3>
+<p class="description">Set the version number in an IPP message.</p>
+<p class="code">
+int ippSetVersion (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *ipp,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int major,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;int minor<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ipp</dt>
+<dd class="description">IPP message</dd>
+<dt>major</dt>
+<dd class="description">Major version number (major.minor)</dd>
+<dt>minor</dt>
+<dd class="description">Minor version number (major.minor)</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">1 on success, 0 on failure</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">The <code>ipp</code> parameter refers to an IPP message previously created using the
+<a href="#ippNew"><code>ippNew</code></a> or <a href="#ippNewRequest"><code>ippNewRequest</code></a> functions.<br>
+<br>
+The valid version numbers are currently 1.0, 1.1, 2.0, 2.1, and 2.2.
+
+</p>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="ippTagString">ippTagString</a></h3>
<p class="description">Return the tag name corresponding to a tag value.</p>
<p class="code">
const char *ippTagString (<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> tag<br>
+&nbsp;&nbsp;&nbsp;&nbsp;ipp_tag_t tag<br>
);</p>
<h4 class="parameters">Parameters</h4>
<dl>
@@ -3281,10 +4456,10 @@ const char *ippTagString (<br>
<p class="discussion">The returned names are defined in RFC 2911 and 3382.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="ippTagValue">ippTagValue</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="ippTagValue">ippTagValue</a></h3>
<p class="description">Return the tag value corresponding to a tag name.</p>
<p class="code">
-<a href="#ipp_tag_t">ipp_tag_t</a> ippTagValue (<br>
+ipp_tag_t ippTagValue (<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *name<br>
);</p>
<h4 class="parameters">Parameters</h4>
@@ -3327,7 +4502,7 @@ const <a href="#ipp_uchar_t">ipp_uchar_t</a> *ippTimeToDate (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Current state</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ippWriteFile">ippWriteFile</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ippWriteFile">ippWriteFile</a></h3>
<p class="description">Write data for an IPP message to a file.</p>
<p class="code">
<a href="#ipp_state_t">ipp_state_t</a> ippWriteFile (<br>
@@ -3343,7 +4518,7 @@ const <a href="#ipp_uchar_t">ipp_uchar_t</a> *ippTimeToDate (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Current state</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ippWriteIO">ippWriteIO</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ippWriteIO">ippWriteIO</a></h3>
<p class="description">Write data for an IPP message.</p>
<p class="code">
<a href="#ipp_state_t">ipp_state_t</a> ippWriteIO (<br>
@@ -3374,7 +4549,7 @@ const <a href="#ipp_uchar_t">ipp_uchar_t</a> *ippTimeToDate (<br>
<p class="code">
typedef struct <a href="#gss_auth_identity">gss_auth_identity</a> gss_auth_identity_desc;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="http_addr_t">http_addr_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="http_addr_t">http_addr_t</a></h3>
<p class="description">Socket address union, which
makes using IPv6 and other
address types easier and
@@ -3382,7 +4557,7 @@ more portable. </p>
<p class="code">
typedef union _http_addr_u / http_addr_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="http_addrlist_t">http_addrlist_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="http_addrlist_t">http_addrlist_t</a></h3>
<p class="description">Socket address list, which is
used to enumerate all of the
addresses that are associated
@@ -3395,7 +4570,7 @@ typedef struct <a href="#http_addrlist_s">http_addrlist_s</a> / http_addrlist_t;
<p class="code">
typedef enum <a href="#http_auth_e">http_auth_e</a> http_auth_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="http_credential_t">http_credential_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="http_credential_t">http_credential_t</a></h3>
<p class="description">HTTP credential data </p>
<p class="code">
typedef struct <a href="#http_credential_s">http_credential_s</a> http_credential_t;
@@ -3436,7 +4611,7 @@ typedef enum <a href="#http_status_e">http_status_e</a> http_status_t;
<p class="code">
typedef struct _http_s http_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="http_timeout_cb_t">http_timeout_cb_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="http_timeout_cb_t">http_timeout_cb_t</a></h3>
<p class="description">HTTP timeout callback </p>
<p class="code">
typedef int (*http_timeout_cb_t)(<a href="#http_t">http_t</a> *http, void *user_data);
@@ -3457,29 +4632,36 @@ typedef enum <a href="#http_uri_status_e">http_uri_status_e</a> http_uri_status_
typedef enum <a href="#http_version_e">http_version_e</a> http_version_t;
</p>
<h3 class="typedef"><a name="ipp_attribute_t">ipp_attribute_t</a></h3>
-<p class="description">Attribute</p>
+<p class="description">IPP attribute</p>
+<p class="code">
+typedef struct _ipp_attribute_s ipp_attribute_t;
+</p>
+<h3 class="typedef"><a name="ipp_copycb_t">ipp_copycb_t</a></h3>
+<p class="description">The following structures are PRIVATE starting with CUPS 1.6/OS X 10.8.
+Please use the new accessor functions available in CUPS 1.6 and later, as
+these definitions will be moved to a private header file in a future release.</p>
<p class="code">
-typedef struct <a href="#ipp_attribute_s">ipp_attribute_s</a> ipp_attribute_t;
+typedef int (*ipp_copycb_t)(void *context, <a href="#ipp_t">ipp_t</a> *dst, <a href="#ipp_attribute_t">ipp_attribute_t</a> *attr);
+</p>
+<h3 class="typedef"><a name="ipp_dstate_t">ipp_dstate_t</a></h3>
+<p class="description">Document states</p>
+<p class="code">
+typedef enum <a href="#ipp_dstate_e">ipp_dstate_e</a> ipp_dstate_t;
</p>
<h3 class="typedef"><a name="ipp_finish_t">ipp_finish_t</a></h3>
<p class="description">Finishings</p>
<p class="code">
typedef enum <a href="#ipp_finish_e">ipp_finish_e</a> ipp_finish_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ipp_iocb_t">ipp_iocb_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ipp_iocb_t">ipp_iocb_t</a></h3>
<p class="description">IPP IO Callback Function </p>
<p class="code">
-typedef ssize_t (*ipp_iocb_t)(void *, <a href="#ipp_uchar_t">ipp_uchar_t</a> *, size_t);
+typedef ssize_t (*ipp_iocb_t)(void *context, <a href="#ipp_uchar_t">ipp_uchar_t</a> *buffer, size_t bytes);
</p>
-<h3 class="typedef"><a name="ipp_jstate_t">ipp_jstate_t</a></h3>
-<p class="description">Job states</p>
+<h3 class="typedef"><a name="ipp_jcollate_t">ipp_jcollate_t</a></h3>
+<p class="description">Job collation types</p>
<p class="code">
-typedef enum <a href="#ipp_jstate_e">ipp_jstate_e</a> ipp_jstate_t;
-</p>
-<h3 class="typedef"><a name="ipp_op_t">ipp_op_t</a></h3>
-<p class="description">IPP operations</p>
-<p class="code">
-typedef enum <a href="#ipp_op_e">ipp_op_e</a> ipp_op_t;
+typedef enum <a href="#ipp_jcollate_e">ipp_jcollate_e</a> ipp_jcollate_t;
</p>
<h3 class="typedef"><a name="ipp_orient_t">ipp_orient_t</a></h3>
<p class="description">Orientation values</p>
@@ -3496,11 +4678,6 @@ typedef enum <a href="#ipp_pstate_e">ipp_pstate_e</a> ipp_pstate_t;
<p class="code">
typedef enum <a href="#ipp_quality_e">ipp_quality_e</a> ipp_quality_t;
</p>
-<h3 class="typedef"><a name="ipp_request_t">ipp_request_t</a></h3>
-<p class="description">Request Header</p>
-<p class="code">
-typedef union <a href="#ipp_request_u">ipp_request_u</a> ipp_request_t;
-</p>
<h3 class="typedef"><a name="ipp_res_t">ipp_res_t</a></h3>
<p class="description">Resolution units</p>
<p class="code">
@@ -3512,24 +4689,14 @@ typedef enum <a href="#ipp_res_e">ipp_res_e</a> ipp_res_t;
typedef enum <a href="#ipp_state_e">ipp_state_e</a> ipp_state_t;
</p>
<h3 class="typedef"><a name="ipp_t">ipp_t</a></h3>
-<p class="description">Attribute Value</p>
+<p class="description">IPP request/response data</p>
<p class="code">
-typedef struct <a href="#ipp_s">ipp_s</a> ipp_t;
+typedef struct _ipp_s ipp_t;
</p>
<h3 class="typedef"><a name="ipp_uchar_t">ipp_uchar_t</a></h3>
-<p class="description">IPP status codes</p>
+<p class="description">Unsigned 8-bit integer/character</p>
<p class="code">
-typedef typedef unsigned char ipp_uchar_t;
-</p>
-<h3 class="typedef"><a name="ipp_tag_t">ipp_tag_t</a></h3>
-<p class="description">Format tags for attributes</p>
-<p class="code">
-typedef enum <a href="#ipp_tag_e">ipp_tag_e</a> ipp_tag_t;
-</p>
-<h3 class="typedef"><a name="ipp_value_t">ipp_value_t</a></h3>
-<p class="description">Attribute Value</p>
-<p class="code">
-typedef union <a href="#ipp_value_u">ipp_value_u</a> ipp_value_t;
+typedef unsigned char ipp_uchar_t;
</p>
<h2 class="title"><a name="STRUCTURES">Structures</a></h2>
<h3 class="struct"><a name="gss_auth_identity">gss_auth_identity</a></h3>
@@ -3551,7 +4718,7 @@ typedef union <a href="#ipp_value_u">ipp_value_u</a> ipp_value_t;
<dt>type </dt>
<dt>username </dt>
</dl>
-<h3 class="struct"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="http_addrlist_s">http_addrlist_s</a></h3>
+<h3 class="struct"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="http_addrlist_s">http_addrlist_s</a></h3>
<p class="description">Socket address list, which is
used to enumerate all of the
addresses that are associated
@@ -3567,7 +4734,7 @@ with a hostname. </p>
<dt>next </dt>
<dd class="description">Pointer to next address in list</dd>
</dl>
-<h3 class="struct"><span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span><a name="http_credential_s">http_credential_s</a></h3>
+<h3 class="struct"><span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span><a name="http_credential_s">http_credential_s</a></h3>
<p class="description">HTTP credential data </p>
<p class="code">struct http_credential_s {<br>
&nbsp;&nbsp;&nbsp;&nbsp;void *data;<br>
@@ -3580,85 +4747,16 @@ with a hostname. </p>
<dt>datalen </dt>
<dd class="description">Credential length</dd>
</dl>
-<h3 class="struct"><a name="ipp_attribute_s">ipp_attribute_s</a></h3>
-<p class="description">Attribute</p>
-<p class="code">struct ipp_attribute_s {<br>
-&nbsp;&nbsp;&nbsp;&nbsp;char *name;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;struct <a href="#ipp_attribute_s">ipp_attribute_s</a> *next;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;int num_values;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> group_tag, value_tag;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_value_t">ipp_value_t</a> values[1];<br>
-};</p>
-<h4 class="members">Members</h4>
-<dl>
-<dt>name </dt>
-<dd class="description">Name of attribute</dd>
-<dt>next </dt>
-<dd class="description">Next attribute in list</dd>
-<dt>num_values </dt>
-<dd class="description">Number of values</dd>
-<dt>value_tag </dt>
-<dd class="description">What type of value is it?</dd>
-<dt>values[1] </dt>
-<dd class="description">Values</dd>
-</dl>
-<h3 class="struct"><a name="ipp_s">ipp_s</a></h3>
-<p class="description">IPP Request/Response/Notification</p>
-<p class="code">struct ipp_s {<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *attrs;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *current;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_tag_t">ipp_tag_t</a> curtag;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *last;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_attribute_t">ipp_attribute_t</a> *prev;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_request_t">ipp_request_t</a> request;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_state_t">ipp_state_t</a> state;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;int use;<br>
-};</p>
-<h4 class="members">Members</h4>
-<dl>
-<dt>attrs </dt>
-<dd class="description">Attributes</dd>
-<dt>current </dt>
-<dd class="description">Current attribute (for read/write)</dd>
-<dt>curtag </dt>
-<dd class="description">Current attribute group tag</dd>
-<dt>last </dt>
-<dd class="description">Last attribute in list</dd>
-<dt>prev <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
-<dd class="description">Previous attribute (for read) </dd>
-<dt>request </dt>
-<dd class="description">Request header</dd>
-<dt>state </dt>
-<dd class="description">State of request</dd>
-<dt>use <span class="info">&nbsp;CUPS 1.4.4/Mac OS X 10.6.?&nbsp;</span></dt>
-<dd class="description">Use count </dd>
-</dl>
-<h2 class="title"><a name="UNIONS">Unions</a></h2>
-<h3 class="union"><a name="ipp_request_u">ipp_request_u</a></h3>
-<p class="description">Request Header</p>
-<p class="code">union ipp_request_u {<br>
-};</p>
-<h4 class="members">Members</h4>
-<dl>
-</dl>
-<h3 class="union"><a name="ipp_value_u">ipp_value_u</a></h3>
-<p class="description">Attribute Value</p>
-<p class="code">union ipp_value_u {<br>
-&nbsp;&nbsp;&nbsp;&nbsp;char boolean;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_t">ipp_t</a> *collection;<br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ipp_uchar_t">ipp_uchar_t</a> date[11];<br>
-&nbsp;&nbsp;&nbsp;&nbsp;int integer;<br>
+<h3 class="struct"><a name="pollfd">pollfd</a></h3>
+<p class="description">User data (unused)</p>
+<p class="code">struct pollfd *pollfds, unsigned int num_pollfds, int timeout, void *context) {<br>
+&nbsp;&nbsp;&nbsp;&nbsp;void) context;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;void) timeout;<br>
};</p>
<h4 class="members">Members</h4>
<dl>
-<dt>boolean </dt>
-<dd class="description">Boolean value</dd>
-<dt>collection <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
-<dd class="description">Collection value </dd>
-<dt>date[11] </dt>
-<dd class="description">Date/time value</dd>
-<dt>integer </dt>
-<dd class="description">Integer/enumerated value</dd>
+<dt>context </dt>
+<dt>timeout </dt>
</dl>
<h2 class="title"><a name="ENUMERATIONS">Constants</a></h2>
<h3 class="enumeration"><a name="http_auth_e">http_auth_e</a></h3>
@@ -3675,7 +4773,7 @@ with a hostname. </p>
<dd class="description">MD5-session authentication in use</dd>
<dt>HTTP_AUTH_MD5_SESS_INT </dt>
<dd class="description">MD5-session authentication in use for body</dd>
-<dt>HTTP_AUTH_NEGOTIATE <span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span></dt>
+<dt>HTTP_AUTH_NEGOTIATE <span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span></dt>
<dd class="description">GSSAPI authentication in use </dd>
<dt>HTTP_AUTH_NONE </dt>
<dd class="description">No authentication in use</dd>
@@ -3868,7 +4966,7 @@ are server-oriented...</p>
<dd class="description">Only a partial file was recieved/sent</dd>
<dt>HTTP_PAYMENT_REQUIRED </dt>
<dd class="description">Payment required</dd>
-<dt>HTTP_PKI_ERROR <span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span></dt>
+<dt>HTTP_PKI_ERROR <span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span></dt>
<dd class="description">Error negotiating a secure connection </dd>
<dt>HTTP_PRECONDITION </dt>
<dd class="description">Precondition failed</dd>
@@ -3960,6 +5058,16 @@ are server-oriented...</p>
<dt>HTTP_1_1 </dt>
<dd class="description">HTTP/1.1</dd>
</dl>
+<h3 class="enumeration"><a name="ipp_dstate_e">ipp_dstate_e</a></h3>
+<p class="description">Document states</p>
+<h4 class="constants">Constants</h4>
+<dl>
+<dt>IPP_DOCUMENT_ABORTED </dt>
+<dt>IPP_DOCUMENT_CANCELED </dt>
+<dt>IPP_DOCUMENT_COMPLETED </dt>
+<dt>IPP_DOCUMENT_PENDING </dt>
+<dt>IPP_DOCUMENT_PROCESSING </dt>
+</dl>
<h3 class="enumeration"><a name="ipp_finish_e">ipp_finish_e</a></h3>
<p class="description">Finishings</p>
<h4 class="constants">Constants</h4>
@@ -4020,6 +5128,22 @@ are server-oriented...</p>
<dd class="description">Staple top right corner</dd>
<dt>IPP_FINISHINGS_TRIM </dt>
<dd class="description">Trim (any type)</dd>
+<dt>IPP_FINISHINGS_TRIM_AFTER_COPIES </dt>
+<dd class="description">Trim output after each copy</dd>
+<dt>IPP_FINISHINGS_TRIM_AFTER_DOCUMENTS </dt>
+<dd class="description">Trim output after each document</dd>
+<dt>IPP_FINISHINGS_TRIM_AFTER_JOB </dt>
+<dd class="description">Trim output after job</dd>
+<dt>IPP_FINISHINGS_TRIM_AFTER_PAGES </dt>
+<dd class="description">Trim output after each page</dd>
+</dl>
+<h3 class="enumeration"><a name="ipp_jcollate_e">ipp_jcollate_e</a></h3>
+<p class="description">Job collation types</p>
+<h4 class="constants">Constants</h4>
+<dl>
+<dt>IPP_JOB_COLLATED_DOCUMENTS </dt>
+<dt>IPP_JOB_UNCOLLATED_DOCUMENTS </dt>
+<dt>IPP_JOB_UNCOLLATED_SHEETS </dt>
</dl>
<h3 class="enumeration"><a name="ipp_jstate_e">ipp_jstate_e</a></h3>
<p class="description">Job states</p>
@@ -4050,7 +5174,7 @@ are server-oriented...</p>
<dd class="description">Add or modify a class</dd>
<dt>CUPS_ADD_MODIFY_PRINTER </dt>
<dd class="description">Add or modify a printer</dd>
-<dt>CUPS_AUTHENTICATE_JOB <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>CUPS_AUTHENTICATE_JOB <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Authenticate a job </dd>
<dt>CUPS_DELETE_CLASS </dt>
<dd class="description">Delete a class</dd>
@@ -4062,9 +5186,9 @@ are server-oriented...</p>
<dd class="description">Get the default printer</dd>
<dt>CUPS_GET_DEVICES </dt>
<dd class="description">Get a list of supported devices</dd>
-<dt>CUPS_GET_DOCUMENT <span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span></dt>
+<dt>CUPS_GET_DOCUMENT <span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span></dt>
<dd class="description">Get a document file </dd>
-<dt>CUPS_GET_PPD <span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span></dt>
+<dt>CUPS_GET_PPD <span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span></dt>
<dd class="description">Get a PPD file </dd>
<dt>CUPS_GET_PPDS </dt>
<dd class="description">Get a list of supported drivers</dd>
@@ -4082,15 +5206,15 @@ are server-oriented...</p>
<dd class="description">Cancel-Jobs</dd>
<dt>IPP_CANCEL_MY_JOBS </dt>
<dd class="description">Cancel-My-Jobs</dd>
-<dt>IPP_CANCEL_SUBSCRIPTION <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>IPP_CANCEL_SUBSCRIPTION <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Cancel a subscription </dd>
<dt>IPP_CLOSE_JOB </dt>
<dd class="description">Close-Job</dd>
<dt>IPP_CREATE_JOB </dt>
<dd class="description">Create an empty print job</dd>
-<dt>IPP_CREATE_JOB_SUBSCRIPTION <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>IPP_CREATE_JOB_SUBSCRIPTION <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Create a job subscription </dd>
-<dt>IPP_CREATE_PRINTER_SUBSCRIPTION <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>IPP_CREATE_PRINTER_SUBSCRIPTION <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Create a printer subscription </dd>
<dt>IPP_DISABLE_PRINTER </dt>
<dd class="description">Stop a printer</dd>
@@ -4100,18 +5224,22 @@ are server-oriented...</p>
<dd class="description">Get a list of jobs</dd>
<dt>IPP_GET_JOB_ATTRIBUTES </dt>
<dd class="description">Get job attributes</dd>
-<dt>IPP_GET_NOTIFICATIONS <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>IPP_GET_NOTIFICATIONS <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Get notification events </dd>
<dt>IPP_GET_PRINTER_ATTRIBUTES </dt>
<dd class="description">Get printer attributes</dd>
<dt>IPP_GET_PRINTER_SUPPORTED_VALUES </dt>
<dd class="description">Get supported attribute values</dd>
-<dt>IPP_GET_SUBSCRIPTIONS <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>IPP_GET_SUBSCRIPTIONS <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Get list of subscriptions </dd>
-<dt>IPP_GET_SUBSCRIPTION_ATTRIBUTES <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>IPP_GET_SUBSCRIPTION_ATTRIBUTES <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Get subscription attributes </dd>
<dt>IPP_HOLD_JOB </dt>
<dd class="description">Hold a job for printing</dd>
+<dt>IPP_IDENTIFY_PRINTER </dt>
+<dd class="description">Identify-Printer (proposed IPP JPS3)</dd>
+<dt>IPP_OP_CUPS_INVALID </dt>
+<dd class="description">Invalid operation name for <a href="#ippOpValue"><code>ippOpValue</code></a></dd>
<dt>IPP_PAUSE_PRINTER </dt>
<dd class="description">Stop a printer</dd>
<dt>IPP_PRINT_JOB </dt>
@@ -4120,7 +5248,7 @@ are server-oriented...</p>
<dd class="description">Cancel all jobs</dd>
<dt>IPP_RELEASE_JOB </dt>
<dd class="description">Release a job for printing</dd>
-<dt>IPP_RENEW_SUBSCRIPTION <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>IPP_RENEW_SUBSCRIPTION <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Renew a printer subscription </dd>
<dt>IPP_RESTART_JOB </dt>
<dd class="description">Reprint a job</dd>
@@ -4132,6 +5260,8 @@ are server-oriented...</p>
<dd class="description">Add a file to a job</dd>
<dt>IPP_SET_JOB_ATTRIBUTES </dt>
<dd class="description">Set job attributes</dd>
+<dt>IPP_VALIDATE_DOCUMENT </dt>
+<dd class="description">Validate-Document (proposed IPP JPS3)</dd>
<dt>IPP_VALIDATE_JOB </dt>
<dd class="description">Validate job options</dd>
</dl>
@@ -4204,7 +5334,7 @@ are server-oriented...</p>
<dd class="description">client-error-attributes-or-values-not-supported</dd>
<dt>IPP_ATTRIBUTES_NOT_SETTABLE </dt>
<dd class="description">client-error-attributes-not-settable</dd>
-<dt>IPP_AUTHENTICATION_CANCELED <span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span></dt>
+<dt>IPP_AUTHENTICATION_CANCELED <span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span></dt>
<dd class="description">Authentication canceled by user </dd>
<dt>IPP_BAD_REQUEST </dt>
<dd class="description">client-error-bad-request</dd>
@@ -4224,14 +5354,20 @@ are server-oriented...</p>
<dd class="description">client-error-document-format-not-supported</dd>
<dt>IPP_DOCUMENT_FORMAT_ERROR </dt>
<dd class="description">client-error-document-format-error</dd>
+<dt>IPP_DOCUMENT_PASSWORD_ERROR </dt>
+<dd class="description">client-error-document-password-error</dd>
+<dt>IPP_DOCUMENT_PERMISSION_ERROR </dt>
+<dd class="description">client-error-document-permission-error</dd>
+<dt>IPP_DOCUMENT_SECURITY_ERROR </dt>
+<dd class="description">client-error-document-security-error</dd>
+<dt>IPP_DOCUMENT_UNPRINTABLE_ERROR </dt>
+<dd class="description">client-error-document-unprintable-error</dd>
<dt>IPP_ERROR_JOB_CANCELED </dt>
<dd class="description">server-error-job-canceled</dd>
<dt>IPP_FORBIDDEN </dt>
<dd class="description">client-error-forbidden</dd>
<dt>IPP_GONE </dt>
<dd class="description">client-error-gone</dd>
-<dt>IPP_IGNORED_ALL_NOTIFICATIONS </dt>
-<dd class="description">client-error-ignored-all-notifications</dd>
<dt>IPP_IGNORED_ALL_SUBSCRIPTIONS </dt>
<dd class="description">client-error-ignored-all-subscriptions</dd>
<dt>IPP_INTERNAL_ERROR </dt>
@@ -4250,14 +5386,10 @@ are server-oriented...</p>
<dd class="description">client-error-not-possible</dd>
<dt>IPP_OK </dt>
<dd class="description">successful-ok</dd>
-<dt>IPP_OK_BUT_CANCEL_SUBSCRIPTION </dt>
-<dd class="description">successful-ok-but-cancel-subscription</dd>
<dt>IPP_OK_CONFLICT </dt>
<dd class="description">successful-ok-conflicting-attributes</dd>
<dt>IPP_OK_EVENTS_COMPLETE </dt>
<dd class="description">successful-ok-events-complete</dd>
-<dt>IPP_OK_IGNORED_NOTIFICATIONS </dt>
-<dd class="description">successful-ok-ignored-notifications</dd>
<dt>IPP_OK_IGNORED_SUBSCRIPTIONS </dt>
<dd class="description">successful-ok-ignored-subscriptions</dd>
<dt>IPP_OK_SUBST </dt>
@@ -4266,24 +5398,28 @@ are server-oriented...</p>
<dd class="description">successful-ok-too-many-events</dd>
<dt>IPP_OPERATION_NOT_SUPPORTED </dt>
<dd class="description">server-error-operation-not-supported</dd>
-<dt>IPP_PKI_ERROR <span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span></dt>
+<dt>IPP_PKI_ERROR <span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span></dt>
<dd class="description">Error negotiating a secure connection </dd>
<dt>IPP_PRINTER_BUSY </dt>
<dd class="description">server-error-busy</dd>
<dt>IPP_PRINTER_IS_DEACTIVATED </dt>
<dd class="description">server-error-printer-is-deactivated</dd>
-<dt>IPP_PRINT_SUPPORT_FILE_NOT_FOUND </dt>
-<dd class="description">client-error-print-support-file-not-found</dd>
<dt>IPP_REQUEST_ENTITY </dt>
<dd class="description">client-error-request-entity-too-large</dd>
<dt>IPP_REQUEST_VALUE </dt>
<dd class="description">client-error-request-value-too-long</dd>
<dt>IPP_SERVICE_UNAVAILABLE </dt>
<dd class="description">server-error-service-unavailable</dd>
+<dt>IPP_STATUS_CUPS_INVALID </dt>
+<dd class="description">Invalid status name for <a href="#ippErrorValue"><code>ippErrorValue</code></a></dd>
<dt>IPP_TEMPORARY_ERROR </dt>
<dd class="description">server-error-temporary-error</dd>
<dt>IPP_TIMEOUT </dt>
<dd class="description">client-error-timeout</dd>
+<dt>IPP_TOO_MANY_DOCUMENTS </dt>
+<dd class="description">server-error-too-many-documents</dd>
+<dt>IPP_TOO_MANY_JOBS </dt>
+<dd class="description">server-error-too-many-jobs</dd>
<dt>IPP_TOO_MANY_SUBSCRIPTIONS </dt>
<dd class="description">client-error-too-many-subscriptions</dd>
<dt>IPP_UPGRADE_REQUIRED </dt>
@@ -4305,14 +5441,16 @@ are server-oriented...</p>
<dd class="description">Boolean value</dd>
<dt>IPP_TAG_CHARSET </dt>
<dd class="description">Character set value</dd>
-<dt>IPP_TAG_COPY </dt>
-<dd class="description">Bitflag for copied attribute values</dd>
+<dt>IPP_TAG_CUPS_INVALID </dt>
+<dd class="description">Invalid tag name for <a href="#ippTagValue"><code>ippTagValue</code></a></dd>
<dt>IPP_TAG_DATE </dt>
<dd class="description">Date/time value</dd>
<dt>IPP_TAG_DEFAULT </dt>
<dd class="description">Default value</dd>
<dt>IPP_TAG_DELETEATTR </dt>
<dd class="description">Delete-attribute value</dd>
+<dt>IPP_TAG_DOCUMENT </dt>
+<dd class="description">Document group</dd>
<dt>IPP_TAG_END </dt>
<dd class="description">End-of-attributes</dd>
<dt>IPP_TAG_END_COLLECTION </dt>
@@ -4321,6 +5459,8 @@ are server-oriented...</p>
<dd class="description">Enumeration value</dd>
<dt>IPP_TAG_EVENT_NOTIFICATION </dt>
<dd class="description">Event group</dd>
+<dt>IPP_TAG_EXTENSION </dt>
+<dd class="description">Extension point for 32-bit tags</dd>
<dt>IPP_TAG_INTEGER </dt>
<dd class="description">Integer value</dd>
<dt>IPP_TAG_JOB </dt>
@@ -4329,8 +5469,6 @@ are server-oriented...</p>
<dd class="description">Keyword value</dd>
<dt>IPP_TAG_LANGUAGE </dt>
<dd class="description">Language value</dd>
-<dt>IPP_TAG_MASK </dt>
-<dd class="description">Mask for copied attribute values</dd>
<dt>IPP_TAG_MEMBERNAME </dt>
<dd class="description">Collection member name value</dd>
<dt>IPP_TAG_MIMETYPE </dt>
diff --git a/doc/help/api-ppd.html b/doc/help/api-ppd.html
index ae32165d..1be3ed13 100644
--- a/doc/help/api-ppd.html
+++ b/doc/help/api-ppd.html
@@ -2,7 +2,7 @@
<html>
<!-- SECTION: Programming -->
<head>
- <title>PPD API </title>
+ <title>PPD API (DEPRECATED) </title>
<meta name="keywords" content="Programming">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta name="creator" content="Mini-XML v2.7">
@@ -341,11 +341,11 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: api-ppd.html 9772 2011-05-12 05:46:30Z mike $"
+ "$Id: api-ppd.html 10441 2012-04-30 20:59:09Z mike $"
PPD API header for CUPS.
- Copyright 2008-2011 by Apple Inc.
+ Copyright 2008-2012 by Apple Inc.
These coded instructions, statements, and computer programs are the
property of Apple Inc. and are protected by Federal copyright
@@ -354,7 +354,9 @@ div.contents ul.subcontents li {
file is missing or damaged, see the license at "http://www.cups.org/".
-->
-<h1 class='title'>PPD API</h1>
+<h1 class='title'>PPD API (DEPRECATED)</h1>
+
+<blockquote>The PPD API is deprecated starting in CUPS 1.6/OS X 10.8. Please use the new Job Ticket APIs in the <a href="api-cups.html">CUPS API</a> documentation. These functions will be removed in a future release of CUPS.</blockquote>
<div class='summary'><table summary='General Information'>
<thead>
@@ -432,7 +434,7 @@ conflicts.">ppdMarkOption</a></li>
<li><a href="#ppdOpenFd" title="Read a PPD file into memory.">ppdOpenFd</a></li>
<li><a href="#ppdOpenFile" title="Read a PPD file into memory.">ppdOpenFile</a></li>
<li><a href="#ppdPageLength" title="Get the page length for the given size.">ppdPageLength</a></li>
- <li><a href="#ppdPageSize" title="Get the page size record for the given size.">ppdPageSize</a></li>
+ <li><a href="#ppdPageSize" title="Get the page size record for the named size.">ppdPageSize</a></li>
<li><a href="#ppdPageSizeLimits" title="Return the custom page size limits.">ppdPageSizeLimits</a></li>
<li><a href="#ppdPageWidth" title="Get the page width for the given size.">ppdPageWidth</a></li>
<li><a href="#ppdSetConformance" title="Set the conformance level for PPD files.">ppdSetConformance</a></li>
@@ -484,11 +486,11 @@ conflicts.">ppdMarkOption</a></li>
</ul></li>
</ul>
<!--
- "$Id: api-ppd.html 9772 2011-05-12 05:46:30Z mike $"
+ "$Id: api-ppd.html 10441 2012-04-30 20:59:09Z mike $"
PPD API introduction for CUPS.
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2006 by Easy Software Products, all rights reserved.
These coded instructions, statements, and computer programs are the
@@ -500,6 +502,8 @@ conflicts.">ppdMarkOption</a></li>
<h2 class='title'><a name='OVERVIEW'>Overview</a></h2>
+<blockquote>The PPD API is deprecated starting in CUPS 1.6/OS X 10.8. Please use the new Job Ticket APIs in the <a href="api-cups.html">CUPS API</a> documentation. These functions will be removed in a future release of CUPS.</blockquote>
+
<p>The CUPS PPD API provides read-only access the data in PostScript Printer
Description ("PPD") files which are used for all printers with a driver. With
it you can obtain the data necessary to display printer options to users, mark
@@ -701,7 +705,7 @@ for (attr = <a href="#ppdFindAttr">ppdFindAttr</a>(ppd, "Product", NULL);
puts(attr->value);
</pre>
<h2 class="title"><a name="FUNCTIONS">Functions</a></h2>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsGetConflicts">cupsGetConflicts</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsGetConflicts">cupsGetConflicts</a></h3>
<p class="description">Get a list of conflicting options in a marked PPD.</p>
<p class="code">
int cupsGetConflicts (<br>
@@ -758,7 +762,7 @@ int cupsMarkOptions (<br>
&quot;multiple-document-handling&quot;, &quot;output-bin&quot;, &quot;print-color-mode&quot;,
&quot;print-quality&quot;, &quot;printer-resolution&quot;, and &quot;sides&quot; attributes to their
corresponding PPD options and choices.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="cupsResolveConflicts">cupsResolveConflicts</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="cupsResolveConflicts">cupsResolveConflicts</a></h3>
<p class="description">Resolve conflicts in a marked PPD.</p>
<p class="code">
int cupsResolveConflicts (<br>
@@ -850,7 +854,7 @@ int ppdCollect (<br>
<h4 class="discussion">Discussion</h4>
<p class="discussion">The choices array should be freed using <code>free</code> when you are
finished with it.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdCollect2">ppdCollect2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdCollect2">ppdCollect2</a></h3>
<p class="description">Collect all marked options that reside in the
specified section and minimum order.</p>
<p class="code">
@@ -913,7 +917,7 @@ int ppdEmit (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">0 on success, -1 on failure</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdEmitAfterOrder">ppdEmitAfterOrder</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdEmitAfterOrder">ppdEmitAfterOrder</a></h3>
<p class="description">Emit a subset of the code for marked options to a file.</p>
<p class="code">
int ppdEmitAfterOrder (<br>
@@ -989,7 +993,7 @@ int ppdEmitJCL (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">0 on success, -1 on failure</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdEmitJCLEnd">ppdEmitJCLEnd</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdEmitJCLEnd">ppdEmitJCLEnd</a></h3>
<p class="description">Emit JCLEnd code to a file.</p>
<p class="code">
int ppdEmitJCLEnd (<br>
@@ -1005,7 +1009,7 @@ int ppdEmitJCLEnd (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">0 on success, -1 on failure</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdEmitString">ppdEmitString</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdEmitString">ppdEmitString</a></h3>
<p class="description">Get a string containing the code for marked options.</p>
<p class="code">
char *ppdEmitString (<br>
@@ -1034,7 +1038,7 @@ The return string is allocated on the heap and should be freed using
<code>free</code> when you are done with it.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ppdErrorString">ppdErrorString</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ppdErrorString">ppdErrorString</a></h3>
<p class="description">Returns the text assocated with a status.</p>
<p class="code">
const char *ppdErrorString (<br>
@@ -1047,7 +1051,7 @@ const char *ppdErrorString (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Status string</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ppdFindAttr">ppdFindAttr</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ppdFindAttr">ppdFindAttr</a></h3>
<p class="description">Find the first matching attribute.</p>
<p class="code">
<a href="#ppd_attr_t">ppd_attr_t</a> *ppdFindAttr (<br>
@@ -1082,7 +1086,7 @@ const char *ppdErrorString (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Choice pointer or <code>NULL</code></p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdFindCustomOption">ppdFindCustomOption</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdFindCustomOption">ppdFindCustomOption</a></h3>
<p class="description">Find a custom option.</p>
<p class="code">
<a href="#ppd_coption_t">ppd_coption_t</a> *ppdFindCustomOption (<br>
@@ -1098,7 +1102,7 @@ const char *ppdErrorString (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Custom option or NULL</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdFindCustomParam">ppdFindCustomParam</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdFindCustomParam">ppdFindCustomParam</a></h3>
<p class="description">Find a parameter for a custom option.</p>
<p class="code">
<a href="#ppd_cparam_t">ppd_cparam_t</a> *ppdFindCustomParam (<br>
@@ -1130,7 +1134,7 @@ const char *ppdErrorString (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Pointer to choice or <code>NULL</code></p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ppdFindNextAttr">ppdFindNextAttr</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ppdFindNextAttr">ppdFindNextAttr</a></h3>
<p class="description">Find the next matching attribute.</p>
<p class="code">
<a href="#ppd_attr_t">ppd_attr_t</a> *ppdFindNextAttr (<br>
@@ -1165,7 +1169,7 @@ const char *ppdErrorString (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Pointer to option or <code>NULL</code></p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdFirstCustomParam">ppdFirstCustomParam</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdFirstCustomParam">ppdFirstCustomParam</a></h3>
<p class="description">Return the first parameter for a custom option.</p>
<p class="code">
<a href="#ppd_cparam_t">ppd_cparam_t</a> *ppdFirstCustomParam (<br>
@@ -1178,7 +1182,7 @@ const char *ppdErrorString (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Custom parameter or NULL</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdFirstOption">ppdFirstOption</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdFirstOption">ppdFirstOption</a></h3>
<p class="description">Return the first option in the PPD file.</p>
<p class="code">
<a href="#ppd_option_t">ppd_option_t</a> *ppdFirstOption (<br>
@@ -1195,7 +1199,7 @@ const char *ppdErrorString (<br>
<p class="discussion">Options are returned from all groups in ascending alphanumeric order.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="ppdInstallableConflict">ppdInstallableConflict</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="ppdInstallableConflict">ppdInstallableConflict</a></h3>
<p class="description">Test whether an option choice conflicts with
an installable option.</p>
<p class="code">
@@ -1239,7 +1243,7 @@ int ppdIsMarked (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Non-zero if option is marked</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ppdLastError">ppdLastError</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ppdLastError">ppdLastError</a></h3>
<p class="description">Return the status from the last ppdOpen*().</p>
<p class="code">
<a href="#ppd_status_t">ppd_status_t</a> ppdLastError (<br>
@@ -1252,7 +1256,7 @@ int ppdIsMarked (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Status code</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdLocalize">ppdLocalize</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdLocalize">ppdLocalize</a></h3>
<p class="description">Localize the PPD file to the current locale.</p>
<p class="code">
int ppdLocalize (<br>
@@ -1294,7 +1298,7 @@ localized string uses the UTF-8 character encoding.
<p class="discussion">This function uses the current locale to find the localized attribute for
the given main and option keywords. If no localized version of the
attribute exists for the current locale, the unlocalized version is returned.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span><a name="ppdLocalizeIPPReason">ppdLocalizeIPPReason</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span><a name="ppdLocalizeIPPReason">ppdLocalizeIPPReason</a></h3>
<p class="description">Get the localized version of a cupsIPPReason
attribute.</p>
<p class="code">
@@ -1329,7 +1333,7 @@ string or attribute value. Otherwise the corresponding URI is returned.<br>
If no value of the requested scheme can be found, NULL is returned.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="ppdLocalizeMarkerName">ppdLocalizeMarkerName</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="ppdLocalizeMarkerName">ppdLocalizeMarkerName</a></h3>
<p class="description">Get the localized version of a marker-names
attribute value.</p>
<p class="code">
@@ -1383,7 +1387,7 @@ int ppdMarkOption (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Number of conflicts</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdNextCustomParam">ppdNextCustomParam</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdNextCustomParam">ppdNextCustomParam</a></h3>
<p class="description">Return the next parameter for a custom option.</p>
<p class="code">
<a href="#ppd_cparam_t">ppd_cparam_t</a> *ppdNextCustomParam (<br>
@@ -1396,7 +1400,7 @@ int ppdMarkOption (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Custom parameter or NULL</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdNextOption">ppdNextOption</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdNextOption">ppdNextOption</a></h3>
<p class="description">Return the next option in the PPD file.</p>
<p class="code">
<a href="#ppd_option_t">ppd_option_t</a> *ppdNextOption (<br>
@@ -1426,7 +1430,7 @@ int ppdMarkOption (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">PPD file record</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppdOpen2">ppdOpen2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppdOpen2">ppdOpen2</a></h3>
<p class="description">Read a PPD file into memory.</p>
<p class="code">
<a href="#ppd_file_t">ppd_file_t</a> *ppdOpen2 (<br>
@@ -1482,7 +1486,7 @@ float ppdPageLength (<br>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Length of page in points or 0.0</p>
<h3 class="function"><a name="ppdPageSize">ppdPageSize</a></h3>
-<p class="description">Get the page size record for the given size.</p>
+<p class="description">Get the page size record for the named size.</p>
<p class="code">
<a href="#ppd_size_t">ppd_size_t</a> *ppdPageSize (<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ppd_file_t">ppd_file_t</a> *ppd,<br>
@@ -1497,7 +1501,7 @@ float ppdPageLength (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Size record for page or NULL</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.4/Mac OS X 10.6&nbsp;</span><a name="ppdPageSizeLimits">ppdPageSizeLimits</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.4/OS X 10.6&nbsp;</span><a name="ppdPageSizeLimits">ppdPageSizeLimits</a></h3>
<p class="description">Return the custom page size limits.</p>
<p class="code">
int ppdPageSizeLimits (<br>
@@ -1540,7 +1544,7 @@ float ppdPageWidth (<br>
</dl>
<h4 class="returnvalue">Return Value</h4>
<p class="description">Width of page in points or 0.0</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/Mac OS X 10.4&nbsp;</span><a name="ppdSetConformance">ppdSetConformance</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.1.20/OS X 10.4&nbsp;</span><a name="ppdSetConformance">ppdSetConformance</a></h3>
<p class="description">Set the conformance level for PPD files.</p>
<p class="code">
void ppdSetConformance (<br>
@@ -1552,7 +1556,7 @@ void ppdSetConformance (<br>
<dd class="description">Conformance level</dd>
</dl>
<h2 class="title"><a name="TYPES">Data Types</a></h2>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ppd_attr_t">ppd_attr_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ppd_attr_t">ppd_attr_t</a></h3>
<p class="description">PPD Attribute Structure </p>
<p class="code">
typedef struct <a href="#ppd_attr_s">ppd_attr_s</a> ppd_attr_t;
@@ -1562,7 +1566,7 @@ typedef struct <a href="#ppd_attr_s">ppd_attr_s</a> ppd_attr_t;
<p class="code">
typedef struct <a href="#ppd_choice_s">ppd_choice_s</a> ppd_choice_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ppd_conform_t">ppd_conform_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ppd_conform_t">ppd_conform_t</a></h3>
<p class="description">Conformance Levels </p>
<p class="code">
typedef enum <a href="#ppd_conform_e">ppd_conform_e</a> ppd_conform_t;
@@ -1572,27 +1576,27 @@ typedef enum <a href="#ppd_conform_e">ppd_conform_e</a> ppd_conform_t;
<p class="code">
typedef struct <a href="#ppd_const_s">ppd_const_s</a> ppd_const_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppd_coption_t">ppd_coption_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppd_coption_t">ppd_coption_t</a></h3>
<p class="description">Custom Option </p>
<p class="code">
typedef struct <a href="#ppd_coption_s">ppd_coption_s</a> ppd_coption_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppd_cparam_t">ppd_cparam_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppd_cparam_t">ppd_cparam_t</a></h3>
<p class="description">Custom Parameter </p>
<p class="code">
typedef struct <a href="#ppd_cparam_s">ppd_cparam_s</a> ppd_cparam_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppd_cplimit_t">ppd_cplimit_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppd_cplimit_t">ppd_cplimit_t</a></h3>
<p class="description">Custom Parameter Limit </p>
<p class="code">
typedef union <a href="#ppd_cplimit_u">ppd_cplimit_u</a> ppd_cplimit_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppd_cptype_t">ppd_cptype_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppd_cptype_t">ppd_cptype_t</a></h3>
<p class="description">Custom Parameter Type </p>
<p class="code">
typedef enum ppd_cptype_e ppd_cptype_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppd_cpvalue_t">ppd_cpvalue_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppd_cpvalue_t">ppd_cpvalue_t</a></h3>
<p class="description">Custom Parameter Value </p>
<p class="code">
typedef union <a href="#ppd_cpvalue_u">ppd_cpvalue_u</a> ppd_cpvalue_t;
@@ -1637,7 +1641,7 @@ typedef enum <a href="#ppd_section_e">ppd_section_e</a> ppd_section_t;
<p class="code">
typedef struct <a href="#ppd_size_s">ppd_size_s</a> ppd_size_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ppd_status_t">ppd_status_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ppd_status_t">ppd_status_t</a></h3>
<p class="description">Status Codes </p>
<p class="code">
typedef enum <a href="#ppd_status_e">ppd_status_e</a> ppd_status_t;
@@ -1648,7 +1652,7 @@ typedef enum <a href="#ppd_status_e">ppd_status_e</a> ppd_status_t;
typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
</p>
<h2 class="title"><a name="STRUCTURES">Structures</a></h2>
-<h3 class="struct"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ppd_attr_s">ppd_attr_s</a></h3>
+<h3 class="struct"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ppd_attr_s">ppd_attr_s</a></h3>
<p class="description">PPD Attribute Structure </p>
<p class="code">struct ppd_attr_s {<br>
&nbsp;&nbsp;&nbsp;&nbsp;char name[PPD_MAX_NAME];<br>
@@ -1708,7 +1712,7 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<dt>option2[PPD_MAX_NAME] </dt>
<dd class="description">Second keyword</dd>
</dl>
-<h3 class="struct"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppd_coption_s">ppd_coption_s</a></h3>
+<h3 class="struct"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppd_coption_s">ppd_coption_s</a></h3>
<p class="description">Custom Option </p>
<p class="code">struct ppd_coption_s {<br>
&nbsp;&nbsp;&nbsp;&nbsp;char keyword[PPD_MAX_NAME];<br>
@@ -1727,7 +1731,7 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<dt>params </dt>
<dd class="description">Parameters</dd>
</dl>
-<h3 class="struct"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppd_cparam_s">ppd_cparam_s</a></h3>
+<h3 class="struct"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppd_cparam_s">ppd_cparam_s</a></h3>
<p class="description">Custom Parameter </p>
<p class="code">struct ppd_cparam_s {<br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ppd_cpvalue_t">ppd_cpvalue_t</a> current;<br>
@@ -1882,13 +1886,13 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<dd class="description">Number of page sizes</dd>
<dt>patches </dt>
<dd class="description">Patch commands to be sent to printer</dd>
-<dt>pcfilename <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>pcfilename <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">PCFileName string </dd>
<dt>product </dt>
<dd class="description">Product name (from PS RIP/interpreter)</dd>
<dt>profiles <span class="info">&nbsp;DEPRECATED&nbsp;</span></dt>
<dd class="description">sRGB color profiles </dd>
-<dt>protocols <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>protocols <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">Protocols (BCP, TBCP) string </dd>
<dt>shortnickname </dt>
<dd class="description">Short version of nickname</dd>
@@ -1915,7 +1919,7 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<dl>
<dt>PPD_MAX_NAME] </dt>
<dd class="description">Human-readable group name</dd>
-<dt>name[PPD_MAX_NAME] <span class="info">&nbsp;CUPS 1.1.18/Mac OS X 10.3&nbsp;</span></dt>
+<dt>name[PPD_MAX_NAME] <span class="info">&nbsp;CUPS 1.1.18/OS X 10.3&nbsp;</span></dt>
<dd class="description">Group name </dd>
<dt>num_options </dt>
<dd class="description">Number of options</dd>
@@ -2014,7 +2018,7 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<dd class="description">Width of media in points</dd>
</dl>
<h2 class="title"><a name="UNIONS">Unions</a></h2>
-<h3 class="union"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppd_cplimit_u">ppd_cplimit_u</a></h3>
+<h3 class="union"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppd_cplimit_u">ppd_cplimit_u</a></h3>
<p class="description">Custom Parameter Limit </p>
<p class="code">union ppd_cplimit_u {<br>
&nbsp;&nbsp;&nbsp;&nbsp;float custom_curve;<br>
@@ -2045,7 +2049,7 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<dt>custom_string </dt>
<dd class="description">String length</dd>
</dl>
-<h3 class="union"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="ppd_cpvalue_u">ppd_cpvalue_u</a></h3>
+<h3 class="union"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="ppd_cpvalue_u">ppd_cpvalue_u</a></h3>
<p class="description">Custom Parameter Value </p>
<p class="code">union ppd_cpvalue_u {<br>
&nbsp;&nbsp;&nbsp;&nbsp;float custom_curve;<br>
@@ -2077,7 +2081,7 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<dd class="description">String value</dd>
</dl>
<h2 class="title"><a name="ENUMERATIONS">Constants</a></h2>
-<h3 class="enumeration"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ppd_conform_e">ppd_conform_e</a></h3>
+<h3 class="enumeration"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ppd_conform_e">ppd_conform_e</a></h3>
<p class="description">Conformance Levels </p>
<h4 class="constants">Constants</h4>
<dl>
@@ -2120,7 +2124,7 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<dt>PPD_ORDER_PROLOG </dt>
<dd class="description">... must be in the Prolog section</dd>
</dl>
-<h3 class="enumeration"><span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span><a name="ppd_status_e">ppd_status_e</a></h3>
+<h3 class="enumeration"><span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span><a name="ppd_status_e">ppd_status_e</a></h3>
<p class="description">Status Codes </p>
<h4 class="constants">Constants</h4>
<dl>
diff --git a/doc/help/api-ppdc.html b/doc/help/api-ppdc.html
index cb15f61e..25ccef40 100644
--- a/doc/help/api-ppdc.html
+++ b/doc/help/api-ppdc.html
@@ -341,7 +341,7 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: api-ppdc.html 9740 2011-05-04 06:26:22Z mike $"
+ "$Id: api-ppdc.html 10356 2012-03-16 16:03:10Z mike $"
PPD Compiler API header for CUPS.
@@ -414,7 +414,7 @@ div.contents ul.subcontents li {
</ul></li>
</ul>
<!--
- "$Id: api-ppdc.html 9740 2011-05-04 06:26:22Z mike $"
+ "$Id: api-ppdc.html 10356 2012-03-16 16:03:10Z mike $"
PPD Compiler API introduction for CUPS.
@@ -1016,12 +1016,15 @@ void ~ppdcDriver (void);</p>
<p class="description">// File</p>
<p class="code">class ppdcFile {<br>
&nbsp;&nbsp;public:<br>
+&nbsp;&nbsp;&nbsp;&nbsp;bool close_on_delete;<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char *filename;<br>
&nbsp;&nbsp;&nbsp;&nbsp;cups_file_t *fp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;int line;<br>
};</p>
<h4 class="members">Members</h4>
<dl>
+<dt>close_on_delete </dt>
+<dd class="description">Close file on delete?</dd>
<dt>filename </dt>
<dd class="description">Filename</dd>
<dt>fp </dt>
diff --git a/doc/help/api-raster.html b/doc/help/api-raster.html
index f193d07e..4a77da3c 100644
--- a/doc/help/api-raster.html
+++ b/doc/help/api-raster.html
@@ -341,7 +341,7 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: api-raster.html 9772 2011-05-12 05:46:30Z mike $"
+ "$Id: api-raster.html 10424 2012-04-23 17:26:57Z mike $"
Raster API documentation for CUPS.
@@ -434,11 +434,11 @@ page header structure.">cupsRasterWriteHeader2</a></li>
</ul></li>
</ul>
<!--
- "$Id: api-raster.html 9772 2011-05-12 05:46:30Z mike $"
+ "$Id: api-raster.html 10424 2012-04-23 17:26:57Z mike $"
Raster API introduction for CUPS.
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2006 by Easy Software Products, all rights reserved.
These coded instructions, statements, and computer programs are the
@@ -457,7 +457,7 @@ avoid incompatibilities with newer versions of CUPS.</p>
<p>Two kinds of CUPS filters use the CUPS raster API - raster image processor
(RIP) filters such as <code>pstoraster</code> and <code>cgpdftoraster</code>
-(Mac OS X) that produce CUPS raster files and printer driver filters that
+(OS X) that produce CUPS raster files and printer driver filters that
convert CUPS raster files into a format usable by the printer. Printer
driver filters are by far the most common.</p>
@@ -577,7 +577,7 @@ the memory used to read the raster file:</p>
<ul class="code">
- <li><a href="#cupsRasterReadHeader" title="Read a raster page header and store it in a version 1 page header structure.">cupsRasterReadHeader</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li>
+ <li><a href="#cupsRasterReadHeader" title="Read a raster page header and store it in a version 1 page header structure.">cupsRasterReadHeader</a> <span class="info">Deprecated in CUPS 1.2/OS X 10.5</span></li>
<li><a href="#cupsRasterReadHeader2" title="Read a raster page header and store it in a version 2 page header structure.">cupsRasterReadHeader2</a></li>
<li><a href="#cupsRasterReadPixels" title="Read raster pixels.">cupsRasterReadPixels</a></li>
@@ -588,10 +588,10 @@ the memory used to read the raster file:</p>
<ul class="code">
<li><a href="#cupsRasterInterpretPPD" title="Interpret PPD commands to create a page header.">cupsRasterInterpretPPD</a></li>
- <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li>
+ <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a> <span class="info">Deprecated in CUPS 1.2/OS X 10.5</span></li>
<li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a></li>
<li><a href="#cupsRasterWritePixels" title="Write raster pixels.">cupsRasterWritePixels</a></li>
-
+
</ul>
<h2 class="title"><a name="FUNCTIONS">Functions</a></h2>
<h3 class="function"><a name="cupsRasterClose">cupsRasterClose</a></h3>
@@ -608,7 +608,7 @@ void cupsRasterClose (<br>
<h4 class="discussion">Discussion</h4>
<p class="discussion">The file descriptor associated with the raster stream must be closed
separately as needed.</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsRasterInterpretPPD">cupsRasterInterpretPPD</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsRasterInterpretPPD">cupsRasterInterpretPPD</a></h3>
<p class="description">Interpret PPD commands to create a page header.</p>
<p class="code">
int cupsRasterInterpretPPD (<br>
@@ -743,7 +743,7 @@ of the version 2 page header data. This function handles reading version 2
page headers and copying only the version 1 data into the provided buffer.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsRasterReadHeader2">cupsRasterReadHeader2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsRasterReadHeader2">cupsRasterReadHeader2</a></h3>
<p class="description">Read a raster page header and store it in a
version 2 page header structure.</p>
<p class="code">
@@ -804,7 +804,7 @@ unsigned cupsRasterWriteHeader (<br>
<p class="discussion">This function is deprecated. Use <a href="#cupsRasterWriteHeader2"><code>cupsRasterWriteHeader2</code></a> instead.
</p>
-<h3 class="function"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cupsRasterWriteHeader2">cupsRasterWriteHeader2</a></h3>
+<h3 class="function"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cupsRasterWriteHeader2">cupsRasterWriteHeader2</a></h3>
<p class="description">Write a raster page header from a version 2
page header structure.</p>
<p class="code">
@@ -899,7 +899,7 @@ typedef enum <a href="#cups_order_e">cups_order_e</a> cups_order_t;
<p class="code">
typedef enum <a href="#cups_orient_e">cups_orient_e</a> cups_orient_t;
</p>
-<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cups_page_header2_t">cups_page_header2_t</a></h3>
+<h3 class="typedef"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cups_page_header2_t">cups_page_header2_t</a></h3>
<p class="description">Version 2 page header </p>
<p class="code">
typedef struct <a href="#cups_page_header2_s">cups_page_header2_s</a> cups_page_header2_t;
@@ -920,7 +920,7 @@ typedef ssize_t (*cups_raster_iocb_t)(void *ctx, unsigned char *buffer, size_t l
typedef struct _cups_raster_s cups_raster_t;
</p>
<h2 class="title"><a name="STRUCTURES">Structures</a></h2>
-<h3 class="struct"><span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span><a name="cups_page_header2_s">cups_page_header2_s</a></h3>
+<h3 class="struct"><span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span><a name="cups_page_header2_s">cups_page_header2_s</a></h3>
<p class="description">Version 2 page header </p>
<p class="code">struct cups_page_header2_s {<br>
&nbsp;&nbsp;&nbsp;&nbsp;unsigned AdvanceDistance;<br>
@@ -1033,7 +1033,7 @@ typedef struct _cups_raster_s cups_raster_t;
<dd class="description">Number of bits for each color</dd>
<dt>cupsBitsPerPixel </dt>
<dd class="description">Number of bits for each pixel</dd>
-<dt>cupsBorderlessScalingFactor <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>cupsBorderlessScalingFactor <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Scaling that was applied to page data </dd>
<dt>cupsBytesPerLine </dt>
<dd class="description">Number of bytes per line</dd>
@@ -1045,26 +1045,26 @@ typedef struct _cups_raster_s cups_raster_t;
<dd class="description">Device compression to use</dd>
<dt>cupsHeight </dt>
<dd class="description">Height of page image in pixels</dd>
-<dt>cupsImagingBBox[4] <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>cupsImagingBBox[4] <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Floating point ImagingBoundingBox
(scaling factor not applied, left,
bottom, right, top) </dd>
-<dt>cupsInteger[16] <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>cupsInteger[16] <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">User-defined integer values </dd>
-<dt>cupsMarkerType[64] <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>cupsMarkerType[64] <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Ink/toner type </dd>
<dt>cupsMediaType </dt>
<dd class="description">Media type code</dd>
-<dt>cupsNumColors <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>cupsNumColors <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Number of color compoents </dd>
-<dt>cupsPageSizeName[64] <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>cupsPageSizeName[64] <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">PageSize name </dd>
-<dt>cupsPageSize[2] <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>cupsPageSize[2] <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Floating point PageSize (scaling *
factor not applied) </dd>
-<dt>cupsReal[16] <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>cupsReal[16] <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">User-defined floating-point values </dd>
-<dt>cupsRenderingIntent[64] <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>cupsRenderingIntent[64] <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Color rendering intent </dd>
<dt>cupsRowCount </dt>
<dd class="description">Rows per band</dd>
@@ -1072,7 +1072,7 @@ factor not applied) </dd>
<dd class="description">Feed between bands</dd>
<dt>cupsRowStep </dt>
<dd class="description">Spacing between lines</dd>
-<dt>cupsString[16][64] <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>cupsString[16][64] <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">User-defined string values </dd>
<dt>cupsWidth </dt>
<dd class="description">Width of page image in pixels</dd>
@@ -1232,9 +1232,9 @@ factor not applied) </dd>
<dl>
<dt>CUPS_CSPACE_ADOBERGB <span class="info">&nbsp;CUPS 1.4.5&nbsp;</span></dt>
<dd class="description">Red, green, blue (Adobe RGB) </dd>
-<dt>CUPS_CSPACE_CIELab <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_CIELab <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">CIE Lab </dd>
-<dt>CUPS_CSPACE_CIEXYZ <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_CIEXYZ <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">CIE XYZ </dd>
<dt>CUPS_CSPACE_CMY </dt>
<dd class="description">Cyan, magenta, yellow (DeviceCMY)</dd>
@@ -1276,35 +1276,35 @@ factor not applied) </dd>
<dd class="description">Gold, magenta, yellow, silver </dd>
<dt>CUPS_CSPACE_GOLD <span class="info">&nbsp;DEPRECATED&nbsp;</span></dt>
<dd class="description">Gold foil </dd>
-<dt>CUPS_CSPACE_ICC1 <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICC1 <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 1 color </dd>
-<dt>CUPS_CSPACE_ICC2 <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICC2 <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 2 colors </dd>
-<dt>CUPS_CSPACE_ICC3 <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICC3 <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 3 colors </dd>
-<dt>CUPS_CSPACE_ICC4 <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICC4 <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 4 colors </dd>
-<dt>CUPS_CSPACE_ICC5 <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICC5 <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 5 colors </dd>
-<dt>CUPS_CSPACE_ICC6 <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICC6 <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 6 colors </dd>
-<dt>CUPS_CSPACE_ICC7 <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICC7 <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 7 colors </dd>
-<dt>CUPS_CSPACE_ICC8 <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICC8 <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 8 colors </dd>
-<dt>CUPS_CSPACE_ICC9 <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICC9 <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 9 colors </dd>
-<dt>CUPS_CSPACE_ICCA <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICCA <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 10 colors </dd>
-<dt>CUPS_CSPACE_ICCB <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICCB <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 11 colors </dd>
-<dt>CUPS_CSPACE_ICCC <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICCC <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 12 colors </dd>
-<dt>CUPS_CSPACE_ICCD <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICCD <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 13 colors </dd>
-<dt>CUPS_CSPACE_ICCE <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICCE <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 14 colors </dd>
-<dt>CUPS_CSPACE_ICCF <span class="info">&nbsp;CUPS 1.1.19/Mac OS X 10.3&nbsp;</span></dt>
+<dt>CUPS_CSPACE_ICCF <span class="info">&nbsp;CUPS 1.1.19/OS X 10.3&nbsp;</span></dt>
<dd class="description">ICC-based, 15 colors </dd>
<dt>CUPS_CSPACE_K </dt>
<dd class="description">Black (DeviceK)</dd>
@@ -1316,7 +1316,7 @@ factor not applied) </dd>
<dd class="description">Red, green, blue (DeviceRGB, sRGB by default)</dd>
<dt>CUPS_CSPACE_RGBA </dt>
<dd class="description">Red, green, blue, alpha (DeviceRGB, sRGB by default)</dd>
-<dt>CUPS_CSPACE_RGBW <span class="info">&nbsp;CUPS 1.2/Mac OS X 10.5&nbsp;</span></dt>
+<dt>CUPS_CSPACE_RGBW <span class="info">&nbsp;CUPS 1.2/OS X 10.5&nbsp;</span></dt>
<dd class="description">Red, green, blue, white (DeviceRGB, sRGB by default) </dd>
<dt>CUPS_CSPACE_SILVER <span class="info">&nbsp;DEPRECATED&nbsp;</span></dt>
<dd class="description">Silver foil </dd>
@@ -1382,9 +1382,9 @@ factor not applied) </dd>
<dd class="description">Open stream for reading</dd>
<dt>CUPS_RASTER_WRITE </dt>
<dd class="description">Open stream for writing</dd>
-<dt>CUPS_RASTER_WRITE_COMPRESSED <span class="info">&nbsp;CUPS 1.3/Mac OS X 10.5&nbsp;</span></dt>
+<dt>CUPS_RASTER_WRITE_COMPRESSED <span class="info">&nbsp;CUPS 1.3/OS X 10.5&nbsp;</span></dt>
<dd class="description">Open stream for compressed writing </dd>
-<dt>CUPS_RASTER_WRITE_PWG <span class="info">&nbsp;CUPS 1.5/Mac OS X 10.7&nbsp;</span></dt>
+<dt>CUPS_RASTER_WRITE_PWG <span class="info">&nbsp;CUPS 1.5/OS X 10.7&nbsp;</span></dt>
<dd class="description">Open stream for compressed writing in PWG mode </dd>
</dl>
<h3 class="enumeration"><a name="cups_order_e">cups_order_e</a></h3>
diff --git a/doc/help/kerberos.html b/doc/help/kerberos.html
index cb8b88c2..30fb5336 100644
--- a/doc/help/kerberos.html
+++ b/doc/help/kerberos.html
@@ -46,7 +46,7 @@ DNS server(s).</li>
<LI><A HREF="http://web.mit.edu/kerberos/">Kerberos: The Network Authentication Protocol</A></LI>
<LI><A HREF="http://web.mit.edu/macdev/KfM/Common/Documentation/faq-osx.html">Kerberos
- on Mac OS X Frequently Asked Questions</A></LI>
+ on OS X Frequently Asked Questions</A></LI>
</UL>
diff --git a/doc/help/license.html b/doc/help/license.html
index 2b7c2460..9bbc729e 100644
--- a/doc/help/license.html
+++ b/doc/help/license.html
@@ -8,7 +8,7 @@
<H1 CLASS="title">Software License Agreement</H1>
-<P ALIGN="CENTER">Copyright 2007-2011 by Apple Inc.<BR>
+<P ALIGN="CENTER">Copyright 2007-2012 by Apple Inc.<BR>
1 Infinite Loop<BR>
Cupertino, CA 95014 USA<BR>
<BR>
@@ -91,11 +91,10 @@ the following special exceptions:</P>
<LI>An Apple Operating System means any
operating system software developed and/or
- marketed by Apple Computer, Inc., including but
- not limited to all existing releases and
- versions of Apple's Darwin, Mac OS X, and Mac OS
- X Server products and all follow-on releases and
- future versions thereof.</LI>
+ marketed by Apple Inc., including but not limited
+ to all existing releases and versions of Apple's
+ Darwin, OS X, and OS X Server products and all
+ follow-on releases and future versions thereof.</LI>
<LI>This exception is only available for Apple
OS-Developed Software and does not apply to
diff --git a/doc/help/man-ipptool.html b/doc/help/man-ipptool.html
new file mode 100644
index 00000000..1b523c53
--- /dev/null
+++ b/doc/help/man-ipptool.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- SECTION: Man Pages -->
+<head>
+ <link rel="stylesheet" type="text/css" href="../cups-printable.css">
+ <title>ipptool(1)</title>
+</head>
+<body>
+<h1 class="title">ipptool(1)</h1>
+<h2 class="title"><a name="NAME">Name</a></h2>
+ipptool - perform internet printing protocol requests
+<h2 class="title"><a name="SYNOPSIS">Synopsis</a></h2>
+<b>ipptool
+</b>[ -4 ] [ -6 ] [ -C ] [ -E ] [ -I ] [ -L ] [ -S ] [ -T
+<i>seconds
+</i>] [ -V
+<i>version
+</i>] [ -X ] [ -c ] [ -d
+<i>name=value
+</i>] [ -f
+<i>filename
+</i>] [ -i
+<i>seconds
+</i>] [ -n
+<i>repeat-count
+</i>] [ -q ] [ -t ] [ -v ]
+<i>URI
+</i><i>filename
+</i>[
+<i>... filenameN
+</i>]
+<h2 class="title"><a name="DESCRIPTION">Description</a></h2>
+<i>ipptool</i> sends IPP requests to the specified URI and tests and/or displays the results. Each named file defines one or more requests, including the expected response status, attributes, and values. Output is either a plain text, formatted text, CSV, or XML report on the standard output, with a non-zero exit status indicating that one or more tests have failed. The file format is described in <a href='man-ipptoolfile.html?TOPIC=Man+Pages'>ipptoolfile(5)</a>.
+<h2 class="title"><a name="OPTIONS">Options</a></h2>
+The following options are recognized by <i>ipptool</i>:
+<dl>
+<dt>-4
+</dt>
+<dd>Specifies that <i>ipptool</i> must connect to the printer or server using IPv4.
+</dd>
+<dt>-6
+</dt>
+<dd>Specifies that <i>ipptool</i> must connect to the printer or server using IPv6.
+</dd>
+<dt>-C
+</dt>
+<dd>Specifies that requests should be sent using the HTTP/1.1 "Transfer-Encoding: chunked" header, which is required for conformance by all versions of IPP. The default is to use "Transfer-Encoding: chunked" for requests with attached files and "Content-Length:" for requests without attached files.
+</dd>
+<dt>-E
+</dt>
+<dd>Forces TLS encryption when connecting to the server using the HTTP "Upgrade" header.
+</dd>
+<dt>-I
+</dt>
+<dd>Specifies that <i>ipptool</i> will continue past errors.
+</dd>
+<dt>-L
+</dt>
+<dd>Specifies that requests should be sent using the HTTP/1.0 "Content-Length:" header, which is required for conformance by all versions of IPP. The default is to use "Transfer-Encoding: chunked" for requests with attached files and "Content-Length:" for requests without attached files.
+</dd>
+<dt>-S
+</dt>
+<dd>Forces (dedicated) SSL encryption when connecting to the server.
+</dd>
+<dt>-T seconds
+</dt>
+<dd>Specifies a timeout for IPP requests in seconds.
+</dd>
+<dt>-V version
+</dt>
+<dd>Specifies the default IPP version to use: 1.0, 1.1, 2.0, 2.1, or 2.2. If not specified, version 1.1 is used.
+</dd>
+<dt>-X
+</dt>
+<dd>Specifies that XML (Apple plist) output is desired instead of the plain text report. This option is incompatible with the <i>-i</i> (interval) and <i>-n</i> (repeat-count) options.
+</dd>
+<dt>-c
+</dt>
+<dd>Specifies that CSV (comma-separated values) output is desired instead of the plain text output.
+</dd>
+<dt>-d name=value
+</dt>
+<dd>Defines the named variable.
+</dd>
+<dt>-f filename
+</dt>
+<dd>Defines the default request filename for tests.
+</dd>
+<dt>-i seconds
+</dt>
+<dd>Specifies that the (last) file should be repeated at the specified interval. This option is incompatible with the <i>-X</i> (XML plist output) option.
+</dd>
+<dt>-l
+</dt>
+<dd>Specifies that plain text output is desired.
+</dd>
+<dt>-n repeat-count
+</dt>
+<dd>Specifies that the (last) file should be repeated the specified number of times. This option is incompatible with the <i>-X</i> (XML plist output) option.
+</dd>
+<dt>-t
+</dt>
+<dd>Specifies that CUPS test report output is desired instead of the plain text output.
+</dd>
+<dt>-v
+</dt>
+<dd>Specifies that all request and response attributes should be output in CUPS test mode (<i>-t</i>). This is the default for XML output.
+</dd>
+</dl>
+<h2 class="title"><a name="COMPATIBILITY">Compatibility</a></h2>
+The <i>ipptool</i> program is unique to CUPS.
+<h2 class="title"><a name="EXAMPLES">Examples</a></h2>
+Get a list of completed jobs for "myprinter":
+<pre>
+ ipptool ipp://localhost/printers/myprinter get-completed-jobs.test
+</pre>
+<p>Send email notifications to "user@example.com" when "myprinter" changes:
+<pre>
+ ipptool -d recipient=mailto:user@example.com
+ ipp://localhost/printers/myprinter create-printer-subscription.test
+</pre>
+<h2 class="title"><a name="STANDARD_FILES">Standard Files</a></h2>
+The following standard files are available:
+<pre>
+ color.jpg
+ create-printer-subscription.test
+ document-a4.pdf
+ document-a4.ps
+ document-letter.pdf
+ document-letter.ps
+ get-completed-jobs.test
+ get-jobs.test
+ get-printer-attributes.test
+ gray.jpg
+ ipp-1.1.test
+ ipp-2.0.test
+ ipp-2.1.test
+ ipp-2.2.test
+ onepage-a4.pdf
+ onepage-a4.ps
+ onepage-letter.pdf
+ onepage-letter.ps
+ print-job.test
+ testfile.jpg
+ testfile.pdf
+ testfile.ps
+ testfile.txt
+</pre>
+<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
+<a href='man-ipptoolfile.html?TOPIC=Man+Pages'>ipptoolfile(5)</a>,
+<br>
+<a href='http://localhost:631/help'>http://localhost:631/help</a>
+<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
+Copyright 2007-2012 by Apple Inc.
+
+</body>
+</html>
diff --git a/doc/help/man-ipptoolfile.html b/doc/help/man-ipptoolfile.html
new file mode 100644
index 00000000..645fd4a1
--- /dev/null
+++ b/doc/help/man-ipptoolfile.html
@@ -0,0 +1,668 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- SECTION: Man Pages -->
+<head>
+ <link rel="stylesheet" type="text/css" href="../cups-printable.css">
+ <title>ipptoolfile(5)</title>
+</head>
+<body>
+<h1 class="title">ipptoolfile(5)</h1>
+<h2 class="title"><a name="NAME">Name</a></h2>
+ipptoolfile - ipptool file format
+
+<h2 class="title"><a name="DESCRIPTION">Description</a></h2>
+The <a href='man-ipptool.html?TOPIC=Man+Pages'>ipptool(1)</a> program accepts free-form plain text files that describe one or more IPP requests. Comments start with the "#" character and continue to the end of the line. Each request is enclosed by curley braces, for example:
+<pre>
+
+ # This is a comment
+ {
+ # The name of the test
+ NAME "Print PostScript Job"
+
+ # The request to send
+ OPERATION Print-Job
+ GROUP operation-attributes-tag
+ ATTR charset attributes-charset utf-8
+ ATTR language attributes-natural-language en
+ ATTR uri printer-uri $uri
+ ATTR name requesting-user-name $user
+ FILE testfile.ps
+
+ # The response to expect
+ STATUS successful-ok
+ EXPECT attributes-charset OF-TYPE charset
+ EXPECT attributes-natural-language OF-TYPE naturalLanguage
+ EXPECT job-id OF-TYPE integer
+ EXPECT job-uri OF-TYPE uri
+ }
+ {
+ # The name of the test
+ NAME "Get Attributes of PostScript Job"
+
+ # The request to send
+ OPERATION Get-Job-Attributes
+ GROUP operation-attributes-tag
+ ATTR charset attributes-charset utf-8
+ ATTR language attributes-natural-language en
+ ATTR uri printer-uri $uri
+ ATTR integer job-id $job-id
+ ATTR name requesting-user-name $user
+
+ # The response to expect
+ STATUS successful-ok
+ EXPECT attributes-charset OF-TYPE charset
+ EXPECT attributes-natural-language OF-TYPE naturalLanguage
+ EXPECT job-id OF-TYPE integer
+ EXPECT job-uri OF-TYPE uri
+ EXPECT job-state OF-TYPE enum
+ EXPECT job-originating-user-name OF-TYPE name WITH-VALUE "$user"
+ }
+</pre>
+
+<h2 class="title"><a name="TOP-LEVEL_DIRECTIVES">Top-level Directives</a></h2>
+The following directives can be used outside of a test:
+<dl>
+<dt>{ test }
+</dt>
+<dd>Defines a test.
+</dd>
+<dt>DEFINE variable-name value
+</dt>
+<dd>Defines the named variable to the given value. This is equivalent to specifying
+"-d variable-name=value" on the <i>ipptool</i> command-line.
+</dd>
+<dt>DEFINE-DEFAULT variable-name value
+</dt>
+<dd>Defines the named variable to the given value if it does not already have a
+value.
+</dd>
+<dt>IGNORE-ERRORS yes
+</dt>
+<dd></dd>
+<dt>IGNORE-ERRORS no
+</dt>
+<dd>Specifies whether, by default, <i>ipptool</i> will ignore errors and continue with
+subsequent tests.
+</dd>
+<dt>INCLUDE "filename"
+</dt>
+<dd></dd>
+<dt>INCLUDE &lt;filename>
+</dt>
+<dd>Includes another test file. The first form includes a file relative to the
+current test file, while the second form includes a file from the <i>ipptool</i>
+include directory.
+</dd>
+<dt>INCLUDE-IF-DEFINED name "filename"
+</dt>
+<dd></dd>
+<dt>INCLUDE-IF-DEFINED name &lt;filename>
+</dt>
+<dd>Includes another test file if the named variable is defined. The first form
+includes a file relative to the current test file, while the second form
+includes a file from the <i>ipptool</i> include directory.
+</dd>
+<dt>INCLUDE-IF-NOT-DEFINED name "filename"
+</dt>
+<dd></dd>
+<dt>INCLUDE-IF-NOT-DEFINED name &lt;filename>
+</dt>
+<dd>Includes another test file if the named variable is not defined. The first form
+includes a file relative to the current test file, while the second form
+includes a file from the <i>ipptool</i> include directory.
+</dd>
+<dt>SKIP-IF-DEFINED variable-name
+</dt>
+<dd></dd>
+<dt>SKIP-IF-NOT-DEFINED variable-name
+</dt>
+<dd>Specifies that the remainder of the test file should be skipped when the
+variable is or is not defined.
+</dd>
+<dt>TRANSFER auto
+</dt>
+<dd>Specifies that tests will, by default, use "Transfer-Encoding: chunked" for
+requests with attached files and "Content-Length:" for requests without attached
+files.
+</dd>
+<dt>TRANSFER chunked
+</dt>
+<dd>Specifies that tests will, by default, use the HTTP/1.1 "Transfer-Encoding:
+chunked" header. This is the default and is equivalent to specifying "-c" on the
+<i>ipptool</i> command-line. Support for chunked requests is required for
+conformance with all versions of IPP.
+</dd>
+<dt>TRANSFER length
+</dt>
+<dd>Specifies that tests will, by default, use the HTTP/1.0 "Content-Length:"
+header. This is equivalent to specifying "-l" on the <i>ipptool</i> command-line.
+Support for content length requests is required for conformance with all
+versions of IPP.
+</dd>
+<dt>VERSION 1.0
+</dt>
+<dd></dd>
+<dt>VERSION 1.1
+</dt>
+<dd></dd>
+<dt>VERSION 2.0
+</dt>
+<dd></dd>
+<dt>VERSION 2.1
+</dt>
+<dd></dd>
+<dt>VERSION 2.2
+</dt>
+<dd>Specifies the default IPP version number to use for the tests that follow.
+
+</dd>
+</dl>
+<h2 class="title"><a name="TEST_DIRECTIVES">Test Directives</a></h2>
+The following directives are understood in a test:
+<dl>
+<dt>ATTR tag attribute-name value(s)
+</dt>
+<dd>Adds an attribute to the test request. Values are separated by the comma (",")
+character - escape commas using the "" character.
+</dd>
+<dt>ATTR collection attribute-name { MEMBER tag member-name value(s) ... } [ ... { ... } ]
+</dt>
+<dd>Adds a collection attribute to the test request. Member attributes follow the
+same syntax as regular attributes and can themselves be nested collections.
+Multiple collection values can be supplied as needed.
+</dd>
+<dt>DELAY seconds
+</dt>
+<dd>Specifies a delay before this test will be run.
+</dd>
+<dt>DISPLAY attribute-name
+</dt>
+<dd>Specifies that value of the named attribute should be output as part of the
+test report.
+</dd>
+<dt>EXPECT attribute-name [ predicate(s) ]
+</dt>
+<dd></dd>
+<dt>EXPECT ?attribute-name predicate(s)
+</dt>
+<dd></dd>
+<dt>EXPECT !attribute-name
+</dt>
+<dd>Specifies that the response must/may/must not include the named attribute.
+Additional requirements can be added as predicates - see the "EXPECT PREDICATES"
+section for more information on predicates.
+</dd>
+<dt>FILE filename
+</dt>
+<dd>Specifies a file to include at the end of the request. This is typically used
+when sending a test print file.
+</dd>
+<dt>GROUP tag
+</dt>
+<dd>Specifies the group tag for subsequent attributes in the request.
+</dd>
+<dt>IGNORE-ERRORS yes
+</dt>
+<dd></dd>
+<dt>IGNORE-ERRORS no
+</dt>
+<dd>Specifies whether <i>ipptool</i> will ignore errors and continue with subsequent
+tests.
+</dd>
+<dt>NAME "literal string"
+</dt>
+<dd>Specifies the human-readable name of the test.
+</dd>
+<dt>OPERATION operation-code
+</dt>
+<dd>Specifies the operation to be performed.
+</dd>
+<dt>REQUEST-ID number
+</dt>
+<dd></dd>
+<dt>REQUEST-ID random
+</dt>
+<dd>Specifies the request-id value to use in the request, either an integer or the
+word "random" to use a randomly generated value (the default).
+</dd>
+<dt>RESOURCE path
+</dt>
+<dd>Specifies an alternate resource path that is used for the HTTP POST request.
+The default is the resource from the URI provided to the <i>ipptool</i> program.
+</dd>
+<dt>SKIP-IF-DEFINED variable-name
+</dt>
+<dd></dd>
+<dt>SKIP-IF-NOT-DEFINED variable-name
+</dt>
+<dd>Specifies that the current test should be skipped when the variable is or is not
+defined.
+</dd>
+<dt>SKIP-PREVIOUS-ERROR yes
+</dt>
+<dd></dd>
+<dt>SKIP-PREVIOUS-ERROR no
+</dt>
+<dd>Specifies whether <i>ipptool</i> will skip the current test if the previous test
+resulted in an error/failure.
+</dd>
+<dt>STATUS status-code [ predicate ]
+</dt>
+<dd>Specifies an expected response status-code value. Additional requirements can be
+added as predicates - see the "STATUS PREDICATES" section for more information
+on predicates.
+</dd>
+<dt>TRANSFER auto
+</dt>
+<dd>Specifies that this test will use "Transfer-Encoding: chunked" if it has an
+attached file or "Content-Length:" otherwise.
+</dd>
+<dt>TRANSFER chunked
+</dt>
+<dd>Specifies that this test will use the HTTP/1.1 "Transfer-Encoding: chunked"
+header.
+</dd>
+<dt>TRANSFER length
+</dt>
+<dd>Specifies that this test will use the HTTP/1.0 "Content-Length:" header.
+</dd>
+<dt>VERSION 1.0
+</dt>
+<dd></dd>
+<dt>VERSION 1.1
+</dt>
+<dd></dd>
+<dt>VERSION 2.0
+</dt>
+<dd></dd>
+<dt>VERSION 2.1
+</dt>
+<dd></dd>
+<dt>VERSION 2.2
+</dt>
+<dd>Specifies the IPP version number to use for this test.
+
+</dd>
+</dl>
+<h2 class="title"><a name="EXPECT_PREDICATES">Expect Predicates</a></h2>
+The following predicates are understood following the EXPECT test directive:
+<dl>
+<dt>COUNT number
+</dt>
+<dd>Requires the EXPECT attribute to have the specified number of values.
+</dd>
+<dt>DEFINE-MATCH variable-name
+</dt>
+<dd>Defines the variable to "1" when the EXPECT condition matches. A side-effect of
+this predicate is that this EXPECT will never fail a test.
+</dd>
+<dt>DEFINE-NO-MATCH variable-name
+</dt>
+<dd>Defines the variable to "1" when the EXPECT condition does not match. A side-
+effect of this predicate is that this EXPECT will never fail a test.
+</dd>
+<dt>DEFINE-VALUE variable-name
+</dt>
+<dd>Defines the variable to the value of the attribute when the EXPECT condition
+matches. A side-effect of this predicate is that this EXPECT will never fail a test.
+</dd>
+<dt>IF-DEFINED variable-name
+</dt>
+<dd>Makes the EXPECT conditions apply only if the specified variable is defined.
+</dd>
+<dt>IF-NOT-DEFINED variable-name
+</dt>
+<dd>Makes the EXPECT conditions apply only if the specified variable is not
+defined.
+</dd>
+<dt>IN-GROUP tag
+</dt>
+<dd>Requires the EXPECT attribute to be in the specified group tag.
+</dd>
+<dt>OF-TYPE tag[,tag,...]
+</dt>
+<dd>Requires the EXPECT attribute to use the specified value tag(s).
+</dd>
+<dt>REPEAT-LIMIT number
+</dt>
+<dd></dd>
+<dd>Specifies the maximum number of times to repeat. The default value is 1000.
+</dd>
+<dt>REPEAT-MATCH
+</dt>
+<dd></dd>
+<dt>REPEAT-NO-MATCH
+</dt>
+<dd>Specifies that the current test should be repeated when the EXPECT condition
+matches or does not match.
+</dd>
+<dt>SAME-COUNT-AS attribute-name
+</dt>
+<dd>Requires the EXPECT attribute to have the same number of values as the specified
+parallel attribute.
+</dd>
+<dt>WITH-ALL-VALUES "literal string"
+</dt>
+<dd>Requires that all values of the EXPECT attribute match the literal string. Comparisons are case-sensitive.
+</dd>
+<dt>WITH-ALL-VALUES &lt;number
+</dt>
+<dd></dd>
+<dt>WITH-ALL-VALUES =number
+</dt>
+<dd></dd>
+<dt>WITH-ALL-VALUES >number
+</dt>
+<dd></dd>
+<dt>WITH-ALL-VALUES number[,number,...]
+</dt>
+<dd>Requires that all values of the EXPECT attribute match the number(s) or numeric comparison. When comparing rangeOfInteger values, the "&lt;" and ">" operators only check the upper bound of the range.
+</dd>
+<dt>WITH-ALL-VALUES "false"
+</dt>
+<dd></dd>
+<dt>WITH-ALL-VALUES "true"
+</dt>
+<dd>Requires that all values of the EXPECT attribute match the boolean value given.
+</dd>
+<dt>WITH-ALL-VALUES "/regular expression/"
+</dt>
+<dd>Requires that all values of the EXPECT attribute match the regular expression, which must conform to the POSIX regular expression syntax. Comparisons are case-sensitive.
+</dd>
+<dt>WITH-VALUE "literal string"
+</dt>
+<dd>Requires that at least one value of the EXPECT attribute matches the literal string. Comparisons are case-sensitive.
+</dd>
+<dt>WITH-VALUE &lt;number
+</dt>
+<dd></dd>
+<dt>WITH-VALUE =number
+</dt>
+<dd></dd>
+<dt>WITH-VALUE >number
+</dt>
+<dd></dd>
+<dt>WITH-VALUE number[,number,...]
+</dt>
+<dd>Requires that at least one value of the EXPECT attribute matches the number(s) or numeric comparison. When comparing rangeOfInteger values, the "&lt;" and ">" operators only check the upper bound of the range.
+</dd>
+<dt>WITH-VALUE "false"
+</dt>
+<dd></dd>
+<dt>WITH-VALUE "true"
+</dt>
+<dd>Requires that at least one value of the EXPECT attribute matches the boolean value given.
+</dd>
+<dt>WITH-VALUE "/regular expression/"
+</dt>
+<dd>Requires that at least one value of the EXPECT attribute matches the regular expression, which must conform to the POSIX regular expression syntax. Comparisons are case-sensitive.
+
+</dd>
+</dl>
+<h2 class="title"><a name="STATUS_PREDICATES">Status Predicates</a></h2>
+The following predicates are understood following the STATUS test directive:
+<dl>
+<dt>IF-DEFINED variable-name
+</dt>
+<dd>Makes the STATUS apply only if the specified variable is defined.
+</dd>
+<dt>IF-NOT-DEFINED variable-name
+</dt>
+<dd>Makes the STATUS apply only if the specified variable is not defined.
+</dd>
+<dt>REPEAT-LIMIT number
+</dt>
+<dd></dd>
+<dd>Specifies the maximum number of times to repeat. The default value is 1000.
+</dd>
+<dt>REPEAT-MATCH
+</dt>
+<dd></dd>
+<dt>REPEAT-NO-MATCH
+</dt>
+<dd>Specifies that the current test should be repeated when the response status-code
+matches or does not match the value specified by the STATUS directive.
+
+</dd>
+</dl>
+<h2 class="title"><a name="OPERATION_CODES">Operation Codes</a></h2>
+Operation codes correspond to the hexadecimal numbers (0xHHHH) and names from
+RFC 2911 and other IPP extension specifications. Here is a complete list:
+<pre>
+ Activate-Printer
+ CUPS-Accept-Jobs
+ CUPS-Add-Modify-Class
+ CUPS-Add-Modify-Printer
+ CUPS-Authenticate-Job
+ CUPS-Delete-Class
+ CUPS-Delete-Printer
+ CUPS-Get-Classes
+ CUPS-Get-Default
+ CUPS-Get-Devices
+ CUPS-Get-Document
+ CUPS-Get-PPD
+ CUPS-Get-PPDs
+ CUPS-Get-Printers
+ CUPS-Move-Job
+ CUPS-Reject-Jobs
+ CUPS-Set-Default
+ Cancel-Current-Job
+ Cancel-Job
+ Cancel-Jobs
+ Cancel-My-Jobs
+ Cancel-Subscription
+ Close-Job
+ Create-Job
+ Create-Job-Subscription
+ Create-Printer-Subscription
+ Deactivate-Printer
+ Disable-Printer
+ Enable-Printer
+ Get-Job-Attributes
+ Get-Jobs
+ Get-Notifications
+ Get-Printer-Attributes
+ Get-Printer-Support-Files
+ Get-Printer-Supported-Values
+ Get-Subscription-Attributes
+ Get-Subscriptions
+ Hold-Job
+ Hold-New-Jobs
+ Identify-Printer
+ Pause-Printer
+ Pause-Printer-After-Current-Job
+ Print-Job
+ Print-URI
+ Promote-Job
+ Purge-Jobs
+ Release-Held-New-Jobs
+ Release-Job
+ Renew-Subscription
+ Reprocess-Job
+ Restart-Job
+ Restart-Printer
+ Resubmit-Job
+ Resume-Job
+ Resume-Printer
+ Schedule-Job-After
+ Send-Document
+ Send-Notifications
+ Send-URI
+ Set-Job-Attributes
+ Set-Printer-Attributes
+ Shutdown-Printer
+ Startup-Printer
+ Suspend-Current-Job
+ Validate-Document
+ Validate-Job
+</pre>
+
+<h2 class="title"><a name="STATUS_CODES">Status Codes</a></h2>
+Status codes correspond to the hexadecimal numbers (0xHHHH) and names from RFC
+2911 and other IPP extension specifications. Here is a complete list:
+<pre>
+ client-error-attributes-not-settable
+ client-error-attributes-or-values-not-supported
+ client-error-bad-request
+ client-error-charset-not-supported
+ client-error-compression-error
+ client-error-compression-not-supported
+ client-error-conflicting-attributes
+ client-error-document-access-error
+ client-error-document-format-error
+ client-error-document-format-not-supported
+ client-error-document-password-error
+ client-error-document-permission-error
+ client-error-document-security-error
+ client-error-document-unprintable-error
+ client-error-forbidden
+ client-error-gone
+ client-error-ignored-all-notifications
+ client-error-ignored-all-subscriptions
+ client-error-not-authenticated
+ client-error-not-authorized
+ client-error-not-found
+ client-error-not-possible
+ client-error-print-support-file-not-found
+ client-error-request-entity-too-large
+ client-error-request-value-too-long
+ client-error-timeout
+ client-error-too-many-subscriptions
+ client-error-uri-scheme-not-supported
+ cups-see-other
+ redirection-other-site
+ server-error-busy
+ server-error-device-error
+ server-error-internal-error
+ server-error-job-canceled
+ server-error-multiple-document-jobs-not-supported
+ server-error-not-accepting-jobs
+ server-error-operation-not-supported
+ server-error-printer-is-deactivated
+ server-error-service-unavailable
+ server-error-temporary-error
+ server-error-version-not-supported
+ successful-ok
+ successful-ok-but-cancel-subscription
+ successful-ok-conflicting-attributes
+ successful-ok-events-complete
+ successful-ok-ignored-notifications
+ successful-ok-ignored-or-substituted-attributes
+ successful-ok-ignored-subscriptions
+ successful-ok-too-many-events
+</pre>
+
+<h2 class="title"><a name="TAGS">Tags</a></h2>
+Value and group tags correspond to the names from RFC 2911 and other IPP
+extension specifications. Here are the group tags:
+<pre>
+ event-notification-attributes-tag
+ job-attributes-tag
+ operation-attributes-tag
+ printer-attributes-tag
+ subscription-attributes-tag
+ unsupported-attributes-tag
+</pre>
+<p>Here are the value tags:
+<pre>
+ admin-define
+ boolean
+ charset
+ collection
+ dateTime
+ default
+ delete-attribute
+ enum
+ integer
+ keyword
+ mimeMediaType
+ nameWithLanguage
+ nameWithoutLanguage
+ naturalLanguage
+ no-value
+ not-settable
+ octetString
+ rangeOfInteger
+ resolution
+ textWithLanguage
+ textWithoutLanguage
+ unknown
+ unsupported
+ uri
+ uriScheme
+</pre>
+
+<h2 class="title"><a name="VARIABLES">Variables</a></h2>
+The <i>ipptool</i> program maintains a list of variables that can be used in any
+literal string or attribute value by specifying "$variable-name". Aside from
+variables defined using the "-d" option or "DEFINE" directive, the following
+pre-defined variables are available:
+<dl>
+<dt>$$
+</dt>
+<dd>Inserts a single "$" character.
+</dd>
+<dt>$ENV[name]
+</dt>
+<dd>Inserts the value of the named environment variable, or an empty string if the
+environment variable is not defined.
+</dd>
+<dt>$filename
+</dt>
+<dd>Inserts the filename provided to <i>ipptool</i> with the "-f" option.
+</dd>
+<dt>$hostname
+</dt>
+<dd>Inserts the hostname from the URI provided to <i>ipptool</i>.
+</dd>
+<dt>$job-id
+</dt>
+<dd>Inserts the last job-id value returned in a test response or 0 if no job-id has
+been seen.
+</dd>
+<dt>$job-uri
+</dt>
+<dd>Inserts the last job-uri value returned in a test response or an empty string if
+no job-uri has been seen.
+</dd>
+<dt>$scheme
+</dt>
+<dd>Inserts the scheme from the URI provided to <i>ipptool</i>.
+</dd>
+<dt>$notify-subscription-id
+</dt>
+<dd>Inserts the last notify-subscription-id value returnd in a test response or 0 if
+no notify-subscription-id has been seen.
+</dd>
+<dt>$port
+</dt>
+<dd>Inserts the port number from the URI provided to <i>ipptool</i>.
+</dd>
+<dt>$resource
+</dt>
+<dd>Inserts the resource path from the URI provided to <i>ipptool</i>.
+</dd>
+<dt>$uri
+</dt>
+<dd>Inserts the URI provided to <i>ipptool</i>.
+</dd>
+<dt>$user
+</dt>
+<dd>Inserts the current user's login name.
+</dd>
+<dt>$username
+</dt>
+<dd>Inserts the username from the URI provided to <i>ipptool</i>, if any.
+
+</dd>
+</dl>
+<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
+<a href='man-ipptool.html?TOPIC=Man+Pages'>ipptool(1)</a>,
+<br>
+<a href='http://localhost:631/help'>http://localhost:631/help</a>
+
+<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
+Copyright 2007-2012 by Apple Inc.
+
+</body>
+</html>
diff --git a/doc/help/network.html b/doc/help/network.html
index d02d4f40..6743651f 100644
--- a/doc/help/network.html
+++ b/doc/help/network.html
@@ -397,21 +397,19 @@ lpd://<i>username@ip-address-or-hostname</i>/<i>queue</i>?<i>option=value&option
<H2 CLASS="title"><A NAME="SNMP">Troubleshooting SNMP Discovery Problems</A></H2>
-<P>Whenever you view the administration web page or a list of supported device URIs, the <tt>snmp</tt> backend will probe the local network(s) using Simple Network Management Protocol (SNMP) broadcasts. Printers that respond to these broadcasts are then interrogated for the make and model and supported protocols, yielding a device URI that can be used to add the printer.</P>
+<P>Whenever you view the administration web page or a list of supported device URIs, the <tt>snmp</tt> backend can probe the local network(s) using Simple Network Management Protocol (SNMP) v1 broadcasts. Printers that respond to these broadcasts are then interrogated for the make, model, and supported protocols, yielding a device URI that can be used to add the printer.</P>
-<P>That said, the SNMP requests sometimes expose problems in vendor SNMP or IPP implementations. If you are experiencing long delays in loading the CUPS web interface administration page, or if you don't see your printer listed, the following instructions will help you to diagnose those problems and/or provide important feedback to the CUPS developers so that we can correct problems and improve the SNMP backend in future releases.</P>
+<P>That said, the SNMP requests sometimes expose problems in vendor implementations. If you are experiencing long delays in loading the CUPS web interface administration page, or if you don't see your printer listed, the following instructions will help you to diagnose those problems and/or provide important feedback to the CUPS developers so that we can correct problems and improve the SNMP backend in future releases.</P>
<H3>Quick Fixes</H3>
-<P>If you don't use "public" as your community name, create a text file called <VAR>/etc/cups/snmp.conf</VAR> and put the following line in it:</P>
+<P>If you don't use "public" as your community name, edit or create (as needed) a text file called <VAR>/etc/cups/snmp.conf</VAR> and put the following line in it:</P>
<PRE CLASS="command">
Community <I>your community name</I>
</PRE>
-<P>If you have more than one community name, list them all on separate lines.</P>
-
-<P>If you don't support SNMP v1 on your network, you are currently "out of luck". That said, we will be adding v2, v2c, and v3 support in future CUPS releases once we have a handle on the actual requirements people have for such things. Please file or update an <A HREF="http://www.cups.org/str.php">SNMP enhancement request</A> with <em>specific</em> requirements you have - what you need supported, why you need it supported, and how you would like to see the functionality provided/exposed - so that we can do it "right" the first time.</P>
+<P>The SNMP backend will not be able to find any printers on your network if SNMP v1 or broadcasting are not supported on your network.</P>
<H3>Basic Debugging</H3>
diff --git a/doc/help/options.html b/doc/help/options.html
index 0cfa7413..546f2ec1 100644
--- a/doc/help/options.html
+++ b/doc/help/options.html
@@ -95,8 +95,8 @@ printing.</P>
printer options using the <CODE>-o</CODE> option:</P>
<PRE CLASS="command">
-lp -o landscape -o scaling=75 -o media=A4 filename.jpg
-lpr -o landscape -o scaling=75 -o media=A4 filename.jpg
+lp -o landscape -o fit-to-page -o media=A4 filename.jpg
+lpr -o landscape -o fit-to-page -o media=A4 filename.jpg
</PRE>
<P>The available printer options vary depending on the printer.
@@ -662,117 +662,5 @@ lpr -o nowrap filename
</PRE>
-<H2 CLASS="title"><SPAN CLASS="info">Not Supported on Mac OS X</SPAN><A NAME="IMAGEOPTIONS">Image Options</A></H2>
-
-<P>CUPS supports several options that are only used when printing
-image files. These options have absolutely no effect on PostScript, PDF,
-HP-GL/2, or text files.</P>
-
-<H3><A NAME="position">Positioning Images</A></H3>
-
-<P>The <CODE>-o position=name</CODE> option specifies the position of the
-image on the page:
-
-<UL>
-
- <LI><CODE>center</CODE> - Center the image on the page (default)
-
- <LI><CODE>top</CODE> - Print the image centered at the top of the page
-
- <LI><CODE>left</CODE> - Print the image centered on the left of page
-
- <LI><CODE>right</CODE> - Print the image centered on the right of the page
-
- <LI><CODE>top-left</CODE> - Print the image at the top left corner of
- the page
-
- <LI><CODE>top-right</CODE> - Print the image at the top right corner of
- the page
-
- <LI><CODE>bottom</CODE> - Print the image centered at the bottom of
- the page
-
- <LI><CODE>bottom-left</CODE> - Print the image at the bottom left
- corner of the page
-
- <LI><CODE>bottom-right</CODE> - Print the image at the bottom right
- corner of the page
-
-</UL>
-
-<H3><A NAME="scaling">Scaling Images</A></H3>
-
-<P>The <CODE>-o scaling=percent</CODE>, <CODE>-o
-ppi=value</CODE>, and <CODE>-o natural-scaling=percent</CODE>
-options change the size of a printed image:
-
-<PRE CLASS="command">
-lp -o scaling=<EM>percent</EM> filename
-lp -o ppi=<EM>value</EM> filename
-lpr -o natural-scaling=<EM>percent</EM> filename
-</PRE>
-
-<P>The <CODE>scaling=percent</CODE> value is a number from 1 to 800
-specifying the size in relation to the page (<EM>not</EM> the image.) A
-scaling of 100 percent will fill the page as completely as the image
-aspect ratio allows. A scaling of 200 percent will print on up to 4
-pages.
-
-<P>The <CODE>ppi=value</CODE> value is a number from 1 to 1200 specifying the
-resolution of the image in pixels per inch. An image that is 3000x2400
-pixels will print 10x8 inches at 300 pixels per inch, for example. If
-the specified resolution makes the image larger than the page, multiple
-pages will be printed to satisfy the request.
-
-<P>The <CODE>natural-scaling=percent</CODE> value is a number
-from 1 to 800 specifying the size in relation to the natural
-image size. A scaling of 100 percent will print the image at its
-natural size, while a scaling of 50 percent will print the image
-at half its natural size. If the specified scaling makes the
-image larger than the page, multiple pages will be printed to
-satisfy the request.
-
-
-<H2 CLASS="title"><A NAME="HPGL2OPTIONS">HP-GL/2 Options</A></H2>
-
-<P>CUPS supports several options that are only used when printing
-HP-GL/2 files. These options have absolutely no effect on PostScript, PDF,
-image, or text files.</P>
-
-<H3><A NAME="blackplot">Printing in Black</A></H3>
-
-<P>The <CODE>-o blackplot</CODE> option specifies that all pens should
-plot in black:</P>
-
-<PRE CLASS="command">
-lp -o blackplot filename
-lpr -o blackplot filename
-</PRE>
-
-<P>The default is to use the colors defined in the plot file or the
-standard pen colors defined in the HP-GL/2 reference manual from
-Hewlett Packard.
-
-<H3><A NAME="penwidth">Setting the Default Pen Width</A></H3>
-
-<P>The <CODE>-o penwidth=value</CODE> option specifies the default pen
-width for HP-GL/2 files:</P>
-
-<PRE CLASS="command">
-lp -o penwidth=<EM>value</EM> filename
-lpr -o penwidth=<EM>value</EM> filename
-</PRE>
-
-<P>The pen width <CODE>value</CODE> specifies the pen width in micrometers.
-The default value of 1000 produces lines that are 1 millimeter in width.
-Specifying a pen width of 0 produces lines that are exactly 1 pixel wide.</P>
-
-<BLOCKQUOTE><B>Note:</B>
-
-<P>This option is ignored when the pen widths are set in the plot
-file.
-
-</BLOCKQUOTE>
-
</BODY>
</HTML>
diff --git a/doc/help/overview.html b/doc/help/overview.html
index 59a2ac06..4a4b173b 100644
--- a/doc/help/overview.html
+++ b/doc/help/overview.html
@@ -26,7 +26,7 @@ out on its own.</P>
<P>The first time you print to a printer, CUPS creates a <em>queue</em> to keep
track of the current status of the printer (everything OK, out of paper, etc.)
and any pages you have printed. Most of the time the queue points to a printer
-connected directly to your computer via a USB or parallel port, however it can
+connected directly to your computer via a USB port, however it can
also point to a printer on your network, a printer on the Internet, or multiple
printers depending on the configuration. Regardless of <em>where</em> the queue
points, it will look like any other printer to you and your applications.</P>
diff --git a/doc/help/policies.html b/doc/help/policies.html
index 14a5b4b8..18f4c80e 100644
--- a/doc/help/policies.html
+++ b/doc/help/policies.html
@@ -36,7 +36,7 @@ HREF="ref-cupsd-conf.html#LimitIPP"><TT>Limit</TT></A> subsections which list th
4 Require user @OWNER @SYSTEM
5 Order deny,allow
6 &lt;/Limit>
- 7
+ 7
8 # All administration operations require an administrator
to authenticate...
9 &lt;Limit CUPS-Add-Printer CUPS-Delete-Printer CUPS-Add-Class
@@ -45,7 +45,7 @@ HREF="ref-cupsd-conf.html#LimitIPP"><TT>Limit</TT></A> subsections which list th
11 Require user @SYSTEM
12 Order deny,allow
13 &lt;/Limit>
-14
+14
15 # All printer operations require a printer operator
to authenticate...
16 &lt;Limit Pause-Printer Resume-Printer
@@ -59,14 +59,14 @@ HREF="ref-cupsd-conf.html#LimitIPP"><TT>Limit</TT></A> subsections which list th
18 Require user <em>varies by OS</em>
19 Order deny,allow
20 &lt;/Limit>
-21
+21
22 # Only the owner or an administrator can cancel or
authenticate a job...
23 &lt;Limit Cancel-Job CUPS-Authenticate-Job>
24 Require user @OWNER @SYSTEM
25 Order deny,allow
26 &lt;/Limit>
-27
+27
28 &lt;Limit All>
29 Order deny,allow
30 &lt;/Limit>
@@ -106,7 +106,7 @@ HREF="ref-cupsd-conf.html#LimitIPP"><TT>Limit</TT></A> subsections which list th
11 Require user @SYSTEM
12 Order deny,allow
13 &lt;/Limit>
-14
+14
15 # All printer operations require a printer operator
to authenticate...
16 &lt;Limit Pause-Printer Resume-Printer
@@ -380,12 +380,12 @@ HREF="ref-cupsd-conf.html#LimitIPP"><TT>Limit</TT></A> subsections which list th
<TD>Prints a job after others.</TD>
</TR>
<TR>
- <TD NOWRAP><TT>CUPS-Get-Default</TT></TD>
+ <TD NOWRAP><TT>CUPS-Get-Default</TT> *</TD>
<TD>Yes</TD>
<TD>Gets the server/network default printer or class.</TD>
</TR>
<TR>
- <TD NOWRAP><TT>CUPS-Get-Printers</TT></TD>
+ <TD NOWRAP><TT>CUPS-Get-Printers</TT> *</TD>
<TD>Yes</TD>
<TD>Gets a list of printers and/or classes.</TD>
</TR>
@@ -395,12 +395,12 @@ HREF="ref-cupsd-conf.html#LimitIPP"><TT>Limit</TT></A> subsections which list th
<TD>Adds or modifies a printer.</TD>
</TR>
<TR>
- <TD NOWRAP><TT>CUPS-Delete-Printer</TT></TD>
+ <TD NOWRAP><TT>CUPS-Delete-Printer</TT> *</TD>
<TD>Yes</TD>
<TD>Removes a printer.</TD>
</TR>
<TR>
- <TD NOWRAP><TT>CUPS-Get-Classes</TT></TD>
+ <TD NOWRAP><TT>CUPS-Get-Classes</TT> *</TD>
<TD>Yes</TD>
<TD>Gets a list of classes.</TD>
</TR>
@@ -410,7 +410,7 @@ HREF="ref-cupsd-conf.html#LimitIPP"><TT>Limit</TT></A> subsections which list th
<TD>Adds or modifies a class.</TD>
</TR>
<TR>
- <TD NOWRAP><TT>CUPS-Delete-Class</TT></TD>
+ <TD NOWRAP><TT>CUPS-Delete-Class</TT> *</TD>
<TD>Yes</TD>
<TD>Removes a class.</TD>
</TR>
@@ -427,17 +427,17 @@ HREF="ref-cupsd-conf.html#LimitIPP"><TT>Limit</TT></A> subsections which list th
attribute to false.</TD>
</TR>
<TR>
- <TD NOWRAP><TT>CUPS-Set-Default</TT></TD>
+ <TD NOWRAP><TT>CUPS-Set-Default</TT> *</TD>
<TD>Yes</TD>
<TD>Sets the server/network default printer or class.</TD>
</TR>
<TR>
- <TD NOWRAP><TT>CUPS-Get-Devices</TT></TD>
+ <TD NOWRAP><TT>CUPS-Get-Devices</TT> *</TD>
<TD>Yes</TD>
<TD>Gets a list of printer devices.</TD>
</TR>
<TR>
- <TD NOWRAP><TT>CUPS-Get-PPDs</TT></TD>
+ <TD NOWRAP><TT>CUPS-Get-PPDs</TT> *</TD>
<TD>Yes</TD>
<TD>Gets a list of printer drivers or manufacturers.</TD>
</TR>
@@ -459,6 +459,7 @@ HREF="ref-cupsd-conf.html#LimitIPP"><TT>Limit</TT></A> subsections which list th
</TBODY>
</TABLE></DIV>
+<P>* = These operations only apply to the default policy.</P>
<H2 CLASS="title"><A NAME="CREATING">Creating Your Own Policies</A></H2>
@@ -556,7 +557,7 @@ Allow from @LOCAL</PRE></TD>
5 Order allow,deny
6 Allow from 10.0.2.0/24
7 &lt;/Limit>
- 8
+ 8
9 # All administration operations require a lab technician
or an administrator to authenticate...
10 &lt;Limit Pause-Printer Resume-Printer
diff --git a/doc/help/postscript-driver.html b/doc/help/postscript-driver.html
index 501043c7..4f35374d 100644
--- a/doc/help/postscript-driver.html
+++ b/doc/help/postscript-driver.html
@@ -341,11 +341,11 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: postscript-driver.html 9740 2011-05-04 06:26:22Z mike $"
+ "$Id: postscript-driver.html 10424 2012-04-23 17:26:57Z mike $"
PostScript printer driver documentation for CUPS.
- Copyright 2007-2010 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2007 by Easy Software Products.
These coded instructions, statements, and computer programs are the
@@ -357,7 +357,7 @@ div.contents ul.subcontents li {
<h1 class='title'>Developing PostScript Printer Drivers</h1>
-<p>This document describes how to develop printer drivers for PostScript printers. Topics include: <a href='#BASICS'>printer driver basics</a>, <a href='#CREATE'>creating new PPD files</a>, <a href='#IMPORT'>importing existing PPD files</a>, <a href='#FILTERS'>using custom filters</a>, <a href='#COLOR'>implementing color management</a>, and <a href='#MACOSX'>adding Mac OS X features</a>.</p>
+<p>This document describes how to develop printer drivers for PostScript printers. Topics include: <a href='#BASICS'>printer driver basics</a>, <a href='#CREATE'>creating new PPD files</a>, <a href='#IMPORT'>importing existing PPD files</a>, <a href='#FILTERS'>using custom filters</a>, <a href='#COLOR'>implementing color management</a>, and <a href='#MACOSX'>adding OS X features</a>.</p>
<div class='summary'><table summary='General Information'>
<tbody>
@@ -380,7 +380,7 @@ div.contents ul.subcontents li {
</ul></li>
<li><a href="#FILTERS">Using Custom Filters</a></li>
<li><a href="#COLOR">Implementing Color Management</a></li>
-<li><a href="#MACOSX">Adding Mac OS X Features</a></li>
+<li><a href="#MACOSX">Adding OS X Features</a></li>
</ul>
<h2 class='title'><a name='BASICS'>Printer Driver Basics</a></h2>
@@ -453,7 +453,7 @@ div.contents ul.subcontents li {
dup [612 792] (Letter) put
dup [612 1008] (Legal) put
dup [595 842] (A4) put
- {exch aload pop 4 index sub abs 5 le exch
+ {exch aload pop 4 index sub abs 5 le exch
5 index sub abs 5 le and
{exch pop exit} {pop} ifelse
} bind forall = flush pop pop
@@ -550,7 +550,7 @@ div.contents ul.subcontents li {
dup [612 792] (Letter) put
dup [612 1008] (Legal) put
dup [595 842] (A4) put
- {exch aload pop 4 index sub abs 5 le exch
+ {exch aload pop 4 index sub abs 5 le exch
5 index sub abs 5 le and
{exch pop exit} {pop} ifelse
} bind forall = flush pop pop
@@ -648,9 +648,9 @@ information file.</P>
<p>The options used for profile selection can be customized using the <tt>cupsICCQualifier2</tt> and <tt>cupsICCQualifier3</tt> attributes.</p>
-<h2 class='title'><a name='MACOSX'>Adding Mac OS X Features</a></h2>
+<h2 class='title'><a name='MACOSX'>Adding OS X Features</a></h2>
-<p>Mac OS X printer drivers can provide <a href='spec-ppd.html#MACOSX'>additional attributes</a> to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:</p>
+<p>OS X printer drivers can provide <a href='spec-ppd.html#MACOSX'>additional attributes</a> to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:</p>
<pre class='example'>
<a href='ref-ppdcfile.html#Attribute'>Attribute</a> APDialogExtension "" /Library/Printers/Vendor/filename.plugin
diff --git a/doc/help/ppd-compiler.html b/doc/help/ppd-compiler.html
index db891f17..576c9187 100644
--- a/doc/help/ppd-compiler.html
+++ b/doc/help/ppd-compiler.html
@@ -341,11 +341,11 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: ppd-compiler.html 9740 2011-05-04 06:26:22Z mike $"
+ "$Id: ppd-compiler.html 10424 2012-04-23 17:26:57Z mike $"
PPD compiler documentation for CUPS.
- Copyright 2007-2010 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2007 by Easy Software Products.
These coded instructions, statements, and computer programs are the
@@ -361,6 +361,12 @@ div.contents ul.subcontents li {
(PPD) file compiler. The PPD compiler generates PPD files from simple text files
that describe the features and capabilities of one or more printers.</P>
+<BLOCKQUOTE><B>Note:</B>
+
+<P>The PPD compiler and related tools are deprecated and will be removed in a future release of CUPS.</P>
+
+</BLOCKQUOTE>
+
<div class='summary'><table summary='General Information'>
<tbody>
<tr>
@@ -598,7 +604,7 @@ follows:</P>
<LI>Bits per color. In the example file, we define 8 bits per color, for
a continuous-tone grayscale output. All versions of CUPS support 1 and
- 8 bits per color. CUPS 1.2 and higher (Mac OS X 10.5 and higher) also
+ 8 bits per color. CUPS 1.2 and higher (OS X 10.5 and higher) also
supports 16 bits per color.</LI>
<LI>Rows per band. In the example file, we define 0 rows per band to
diff --git a/doc/help/raster-driver.html b/doc/help/raster-driver.html
index 2ec3f4e5..259ea184 100644
--- a/doc/help/raster-driver.html
+++ b/doc/help/raster-driver.html
@@ -341,11 +341,11 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: raster-driver.html 9740 2011-05-04 06:26:22Z mike $"
+ "$Id: raster-driver.html 10424 2012-04-23 17:26:57Z mike $"
Raster printer driver documentation for CUPS.
- Copyright 2007-2010 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2007 by Easy Software Products.
These coded instructions, statements, and computer programs are the
@@ -357,7 +357,7 @@ div.contents ul.subcontents li {
<h1 class='title'>Developing Raster Printer Drivers</h1>
-<p>This document describes how to develop printer drivers for raster printers. Topics include: <a href='#BASICS'>printer driver basics</a>, <a href='#CREATE'>creating new PPD files</a>, <a href='#FILTERS'>using filters</a>, <a href='#COLOR'>implementing color management</a>, and <a href='#MACOSX'>adding Mac OS X features</a>.</p>
+<p>This document describes how to develop printer drivers for raster printers. Topics include: <a href='#BASICS'>printer driver basics</a>, <a href='#CREATE'>creating new PPD files</a>, <a href='#FILTERS'>using filters</a>, <a href='#COLOR'>implementing color management</a>, and <a href='#MACOSX'>adding OS X features</a>.</p>
<div class='summary'><table summary='General Information'>
<tbody>
@@ -378,7 +378,7 @@ div.contents ul.subcontents li {
<li><a href="#CREATING">Creating New PPD Files</a></li>
<li><a href="#FILTERS">Using Filters</a></li>
<li><a href="#COLOR">Implementing Color Management</a></li>
-<li><a href="#MACOSX">Adding Mac OS X Features</a></li>
+<li><a href="#MACOSX">Adding OS X Features</a></li>
</ul>
<h2 class='title'><a name='BASICS'>Printer Driver Basics</a></h2>
@@ -554,9 +554,9 @@ div.contents ul.subcontents li {
<p>The options used for profile selection can be customized using the <tt>cupsICCQualifier2</tt> and <tt>cupsICCQualifier3</tt> attributes.</p>
-<h3><span class='info'>Since Mac OS X 10.5</span>Custom Color Matching Support</h3>
+<h3><span class='info'>Since OS X 10.5</span>Custom Color Matching Support</h3>
-<p>Mac OS X printer drivers that are based on an existing standard RGB colorspace can tell the system to use the corresponding colorspace instead of an arbitrary ICC color profile when doing color management. The <a href='#APCustom'><tt>APSupportsCustomColorMatching</tt></a> and <tt>APDefaultCustomColorMatchingProfile</tt> attributes can be used to enable this mode:</p>
+<p>OS X printer drivers that are based on an existing standard RGB colorspace can tell the system to use the corresponding colorspace instead of an arbitrary ICC color profile when doing color management. The <a href='#APCustom'><tt>APSupportsCustomColorMatching</tt></a> and <tt>APDefaultCustomColorMatchingProfile</tt> attributes can be used to enable this mode:</p>
<pre class='example'>
<a href='ref-ppdcfile.html#Attribute'>Attribute</a> APSupportsCustomColorMatching "" true
@@ -564,9 +564,9 @@ div.contents ul.subcontents li {
</pre>
-<h2 class='title'><a name='MACOSX'>Adding Mac OS X Features</a></h2>
+<h2 class='title'><a name='MACOSX'>Adding OS X Features</a></h2>
-<p>Mac OS X printer drivers can provide <a href='spec-ppd.html#MACOSX'>additional attributes</a> to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:</p>
+<p>OS X printer drivers can provide <a href='spec-ppd.html#MACOSX'>additional attributes</a> to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:</p>
<pre class='example'>
<a href='ref-ppdcfile.html#Attribute'>Attribute</a> APDialogExtension "" /Library/Printers/Vendor/filename.plugin
diff --git a/doc/help/ref-classes-conf.html b/doc/help/ref-classes-conf.html
index 40bc3d5e..4171bb26 100644
--- a/doc/help/ref-classes-conf.html
+++ b/doc/help/ref-classes-conf.html
@@ -171,7 +171,7 @@ HREF="#AllowUser"><CODE>AllowUser</CODE></A></P>
<H3>Description</H3>
-<P>The <CODE>Info</CODE> directive defines the string for the
+<P>The <CODE>Info</CODE> directive defines the string for the
<VAR>printer-info</VAR> attribute. It is normally set using the
<CODE>lpadmin(8)</CODE> command:</P>
@@ -260,7 +260,7 @@ section.</P>
<H3>Description</H3>
-<P>The <CODE>KLimit</CODE> directive defines the value of the
+<P>The <CODE>KLimit</CODE> directive defines the value of the
<VAR>job-k-limit</VAR> attribute. It is normally set using the
<CODE>lpadmin(8)</CODE> command:</P>
@@ -287,7 +287,7 @@ section.</P>
<H3>Description</H3>
-<P>The <CODE>Location</CODE> directive defines the string for the
+<P>The <CODE>Location</CODE> directive defines the string for the
<VAR>printer-location</VAR> attribute. It is normally set using the
<CODE>lpadmin(8)</CODE> command:</P>
@@ -372,7 +372,7 @@ section.</P>
<H3>Description</H3>
-<P>The <CODE>PageLimit</CODE> directive defines the value of the
+<P>The <CODE>PageLimit</CODE> directive defines the value of the
<VAR>job-page-limit</VAR> attribute. It can be set using the
<CODE>lpadmin(8)</CODE> command:</P>
@@ -511,7 +511,7 @@ section.</P>
<PRE CLASS="command">
&lt;Class name&gt;
...
- StateMessage Ready to print.
+ StateMessage Class is lonely.
&lt;/Class&gt;
</PRE>
@@ -528,7 +528,6 @@ StateMessage Network host host_name is busy; will retry in 30 seconds...
StateMessage Class busy; will retry in 10 seconds...
StateMessage Class is busy; retrying print job...
StateMessage Print file accepted - job ID id_number.
-StateMessage Ready to print.
StateMessage Waiting for job to complete
</PRE>
diff --git a/doc/help/ref-client-conf.html b/doc/help/ref-client-conf.html
index 0229b004..f17d5407 100644
--- a/doc/help/ref-client-conf.html
+++ b/doc/help/ref-client-conf.html
@@ -34,6 +34,20 @@ encryption settings for the client.</P>
<P>The default setting is <VAR>IfRequested</VAR>.</P>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.6/OS X 10.8</SPAN><A NAME="GSSServiceName">GSSServiceName</A></H2>
+
+<H3>Examples</H3>
+
+<PRE CLASS="command">
+GSSServiceName http
+GSSServiceName ipp
+</PRE>
+
+<H3>Description</H3>
+
+<P>The <CODE>GSSServiceName</CODE> directive sets the Kerberos service name to use. The default is <CODE>http</CODE> for compatibility with Microsoft Windows.</P>
+
+
<H2 CLASS="title"><A NAME="ServerName">ServerName</A></H2>
<H3>Examples</H3>
@@ -52,5 +66,25 @@ ServerName foo.bar.com:8631
<P>The default is to use the local server ("<VAR>localhost</VAR>") or domain socket, if so configured.</P>
+<BLOCKQUOTE><B>Note:</B>
+<P>Only one <CODE>ServerName</CODE> directive may appear. If multiple names are
+present, only the last one is used. This directive is not supported on OS X 10.7 or later.</P>
+</BLOCKQUOTE>
+
+
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.6/OS X 10.8</SPAN><A NAME="User">User</A></H2>
+
+<H3>Examples</H3>
+
+<PRE CLASS="command">
+User joe
+User bob
+</PRE>
+
+<H3>Description</H3>
+
+<P>The <CODE>User</CODE> directive sets the user name to use. The default is the username associated with the current login.</P>
+
+
</BODY>
</HTML>
diff --git a/doc/help/ref-cupsd-conf.html.in b/doc/help/ref-cupsd-conf.html.in
index ce0ec8f6..8454cf78 100644
--- a/doc/help/ref-cupsd-conf.html.in
+++ b/doc/help/ref-cupsd-conf.html.in
@@ -42,6 +42,12 @@ sudo launchctl load /System/Library/LaunchDaemons/org.cups.cupsd.plist
<P>You can also edit this file from the CUPS web interface, which
automatically handles restarting the scheduler.</P>
+<BLOCKQUOTE><B>Note:</B>
+
+<P>The specification of time units ("w" for weeks, "h" for hours, etc.) in the various time interval directives is new in CUPS 1.6/OS X 10.8. Prior releases of CUPS only supported time intervals in seconds.</P>
+
+</BLOCKQUOTE>
+
<H2 CLASS="title"><A NAME="AccessLog">AccessLog</A></H2>
@@ -335,243 +341,14 @@ quotas. This option has no effect if quotas are not enabled. The
default setting is <CODE>No</CODE>.</P>
-<H2 CLASS="title"><A NAME="BrowseAddress">BrowseAddress</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseAddress 255.255.255.255:631
-BrowseAddress 192.0.2.255:631
-BrowseAddress host.example.com:631
-BrowseAddress @LOCAL
-BrowseAddress @IF(name)
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseAddress</CODE> directive specifies an address
-to send browsing information to. Multiple
-<CODE>BrowseAddress</CODE> directives can be specified to send
-browsing information to different networks or systems.</P>
-
-<P>The <CODE>@LOCAL</CODE> name will broadcast printer
-information to all local interfaces. The <CODE>@IF(name)</CODE>
-name will broadcast to the named interface.</P>
-
-<P>There is no default browse address.</P>
-
-<BLOCKQUOTE><B>Note:</B>
-
-<P>If you are using HP-UX 10.20 and a subnet that is not 24,
-16, or 8 bits, printer browsing (and in fact all broadcast
-reception) will not work. This problem appears to be fixed in
-HP-UX 11.0.</P>
-
-</BLOCKQUOTE>
-
-
-<H2 CLASS="title"><A NAME="BrowseAllow">BrowseAllow</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseAllow from all
-BrowseAllow from none
-BrowseAllow from 192.0.2
-BrowseAllow from 192.0.2.0/24
-BrowseAllow from 192.0.2.0/255.255.255.0
-BrowseAllow from *.example.com
-BrowseAllow from @LOCAL
-BrowseAllow from @IF(name)
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseAllow</CODE> directive specifies a system or
-network to accept browse packets from. The default is to accept
-browse packets from all hosts.</P>
-
-<P>Host and domain name matching require that you enable the <A
-HREF="#HostNameLookups"><CODE>HostNameLookups</CODE></A>
-directive.</P>
-
-<P>IP address matching supports exact matches, partial addresses that match
-networks using netmasks of 255.0.0.0, 255.255.0.0, and 255.255.255.0, or network
-addresses using the specified netmask or bit count. The <CODE>/mm</CODE>
-notation specifies a CIDR netmask, a shown in <A HREF="TABLE1">Table 1</A>.</P>
-
-<P>The <CODE>@LOCAL</CODE> name will allow browse data from all
-local interfaces. The <CODE>@IF(name)</CODE> name will allow
-browse data from the named interface. In both cases, CUPS only
-allows data from the network that the interface(s) are configured
-for - data arriving on the interface from a foreign network will
-<em>not</em> be allowed.</P>
-
-
-<H2 CLASS="title"><A NAME="BrowseDeny">BrowseDeny</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseDeny from all
-BrowseDeny from none
-BrowseDeny from 192.0.2
-BrowseDeny from 192.0.2.0/24
-BrowseDeny from 192.0.2.0/255.255.255.0
-BrowseDeny from *.example.com
-BrowseDeny from @LOCAL
-BrowseDeny from @IF(name)
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseDeny</CODE> directive specifies a system or
-network to reject browse packets from. The default is to not deny
-browse packets from any hosts.</P>
-
-<P>Host and domain name matching require that you enable the <A
-HREF="#HostNameLookups"><CODE>HostNameLookups</CODE></A>
-directive.</P>
-
-<P>IP address matching supports exact matches, partial addresses that match
-networks using netmasks of 255.0.0.0, 255.255.0.0, and 255.255.255.0, or network
-addresses using the specified netmask or bit count. The <CODE>/mm</CODE>
-notation specifies a CIDR netmask, a shown in <A HREF="TABLE1">Table 1</A>.</P>
-
-<P>The <CODE>@LOCAL</CODE> name will block browse data from all
-local interfaces. The <CODE>@IF(name)</CODE> name will block
-browse data from the named interface. In both cases, CUPS only
-blocks data from the network that the interface(s) are configured
-for - data arriving on the interface from a foreign network will
-<em>not</em> be blocked.</P>
-
-
-<H2 CLASS="title"><A NAME="BrowseInterval">BrowseInterval</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseInterval 0
-BrowseInterval 30
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseInterval</CODE> directive specifies the
-maximum amount of time between browsing updates. Specifying a
-value of 0 seconds disables outgoing browse updates but allows a
-server to receive printer information from other hosts.</P>
-
-<P>The <CODE>BrowseInterval</CODE> value should always be less
-than the <A HREF="#BrowseTimeout"><CODE>BrowseTimeout</CODE></A>
-value. Otherwise printers and classes will disappear from client
-systems between updates.</P>
-
-
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="BrowseLDAPBindDN">BrowseLDAPBindDN</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseLDAPBindDN foo
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseLDAPBindDN</CODE> directive specifies the LDAP
-domain name to use when listening for printer registrations. The
-default is undefined.</P>
-
-
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/Mac OS X 10.6</SPAN><A NAME="BrowseLDAPCACertFile">BrowseLDAPCACertFile</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseLDAPCACertFile /etc/cups/ssl/certs
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseLDAPCACertFile</CODE> directive specifies the SSL certificate
-authority file to use for LDAP + SSL. The default is undefined.</P>
-
-
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="BrowseLDAPDN">BrowseLDAPDN</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseLDAPDN bar
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseLDAPDN</CODE> directive specifies the LDAP
-domain name to use when registering local shared printers. The
-default is undefined.</P>
-
-
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="BrowseLDAPPassword">BrowseLDAPPassword</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseLDAPPassword foo123
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseLDAPPassword</CODE> directive specifies the
-access password to use when connecting to the LDAP server. The
-default is undefined.</P>
-
-
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="BrowseLDAPServer">BrowseLDAPServer</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseLDAPServer localhost
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseLDAPServer</CODE> directive specifies the name
-of the LDAP server to connect to. The default is undefined.</P>
-
-
-<H2 CLASS="title"><A NAME="BrowseLocalOptions">BrowseLocalOptions</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseLocalOptions compression=yes
-BrowseLocalOptions encryption=required
-BrowseLocalOptions compression=yes&amp;encryption=required
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseLocalOptions</CODE> directive specifies
-additional IPP backend options to advertise with local shared
-printers. The default is to not include any options.</P>
-
-
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="BrowseLocalProtocols">BrowseLocalProtocols</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="BrowseLocalProtocols">BrowseLocalProtocols</A></H2>
<H3>Examples</H3>
<PRE CLASS="command">
BrowseLocalProtocols all
BrowseLocalProtocols none
-BrowseLocalProtocols cups
BrowseLocalProtocols dnssd
-BrowseLocalProtocols ldap
-BrowseLocalProtocols lpd
-BrowseLocalProtocols slp
-BrowseLocalProtocols smb
-BrowseLocalProtocols cups dnssd
</PRE>
<H3>Description</H3>
@@ -582,230 +359,6 @@ network. Multiple protocols can be specified by separating them
with spaces. The default is "<CODE>@CUPS_BROWSE_LOCAL_PROTOCOLS@</CODE>".</P>
-<H2 CLASS="title"><A NAME="BrowseOrder">BrowseOrder</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseOrder allow,deny
-BrowseOrder deny,allow
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseOrder</CODE> directive specifies the order of
-allow/deny processing. The default order is
-<CODE>deny,allow</CODE>:</P>
-
-<UL>
-
- <LI><CODE>allow,deny</CODE> - Deny browse packets by
- default, then check <CODE>BrowseAllow</CODE> lines
- followed by <CODE>BrowseDeny</CODE> lines.</LI>
-
- <LI><CODE>deny,allow</CODE> - Allow browse packets by
- default, then check <CODE>BrowseDeny</CODE> lines
- followed by <CODE>BrowseAllow</CODE> lines.</LI>
-
-</UL>
-
-
-<H2 CLASS="title"><A NAME="BrowsePoll">BrowsePoll</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowsePoll 192.0.2.2:631
-BrowsePoll host.example.com:631
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowsePoll</CODE> directive polls a server for
-available printers once every <A
-HREF="#BrowseInterval"><CODE>BrowseInterval</CODE></A> seconds.
-Multiple <CODE>BrowsePoll</CODE> directives can be specified to
-poll multiple servers.</P>
-
-<P>If <CODE>BrowseInterval</CODE> is set to 0 then the server is
-polled once every 30 seconds.</P>
-
-
-<H2 CLASS="title"><A NAME="BrowsePort">BrowsePort</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowsePort 631
-BrowsePort 9999
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowsePort</CODE> directive specifies the UDP port number
-used for browse packets. The default port number is 631.</P>
-
-<BLOCKQUOTE><B>Note:</B>
-
-<P>You must set the <CODE>BrowsePort</CODE> to the same value
-on all of the systems that you want to see.
-
-</BLOCKQUOTE>
-
-
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.10</SPAN><A NAME="BrowseProtocols">BrowseProtocols</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseProtocols all
-BrowseProtocols none
-BrowseProtocols cups
-BrowseProtocols dnssd
-BrowseProtocols ldap
-BrowseProtocols lpd
-BrowseProtocols slp
-BrowseProtocols smb
-BrowseProtocols cups dnssd
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseProtocols</CODE> directive specifies the
-protocols to use when showing and advertising shared printers on
-the local network. Multiple protocols can be specified by
-separating them with spaces. The default protocol is
-"<CODE>@CUPS_BROWSE_LOCAL_PROTOCOLS@</CODE>" for
-<A HREF="#BrowseLocalProtocols"><CODE>BrowseLocalProtocols</CODE></A> and
-"<CODE>@CUPS_BROWSE_REMOTE_PROTOCOLS@</CODE>" for
-<A HREF="#BrowseRemoteProtocols"><CODE>BrowseRemoteProtocols</CODE></A>.</P>
-
-<BLOCKQUOTE><B>Note:</B>
-
-<P>When using the <CODE>SLP</CODE> protocol, you must have at least
-one Directory Agent (DA) server on your network. Otherwise the
-CUPS scheduler (<CODE>cupsd</CODE>) will not respond to client
-requests for several seconds while polling the network.</P>
-
-</BLOCKQUOTE>
-
-
-<H2 CLASS="title"><A NAME="BrowseRelay">BrowseRelay</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseRelay 193.0.2.1 192.0.2.255
-BrowseRelay 193.0.2.0/255.255.255.0 192.0.2.255
-BrowseRelay 193.0.2.0/24 192.0.2.255
-BrowseRelay *.example.com 192.0.2.255
-BrowseRelay host.example.com 192.0.2.255
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseRelay</CODE> directive specifies source and
-destination addresses for relaying browsing information from one
-host or network to another. Multiple <CODE>BrowseRelay</CODE>
-directives can be specified as needed.</P>
-
-<P><CODE>BrowseRelay</CODE> is typically used on systems that
-bridge multiple subnets using one or more network interfaces. It
-can also be used to relay printer information from polled servers
-with the line:</P>
-
-<PRE CLASS="command">
-BrowseRelay 127.0.0.1 192.0.2.255
-</PRE>
-
-<P>This effectively provides access to printers on a WAN for all
-clients on the LAN. Use multiple <CODE>BrowseRelay</CODE> lines to
-relay information to multiple subnets.</P>
-
-
-<H2 CLASS="title"><A NAME="BrowseRemoteOptions">BrowseRemoteOptions</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseRemoteOptions compression=yes
-BrowseRemoteOptions encryption=required
-BrowseRemoteOptions ?compression=yes&amp;encryption=required
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseRemoteOptions</CODE> directive specifies
-additional IPP backend options to include with remote shared
-printers. If the options string begins with a question mark (?),
-the options replace any options specified by the remote server.
-The default is to not include any options.</P>
-
-
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="BrowseRemoteProtocols">BrowseRemoteProtocols</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseRemoteProtocols all
-BrowseRemoteProtocols none
-BrowseRemoteProtocols cups
-BrowseRemoteProtocols ldap
-BrowseRemoteProtocols slp
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseRemoteProtocols</CODE> directive specifies the
-protocols to use when finding remote shared printers on the
-network. Multiple protocols can be specified by separating them
-with spaces. The default is "<CODE>@CUPS_BROWSE_REMOTE_PROTOCOLS@</CODE>".</P>
-
-
-<H2 CLASS="title"><A NAME="BrowseShortNames">BrowseShortNames</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseShortNames Yes
-BrowseShortNames No
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseShortNames</CODE> directive specifies whether
-or not short names are used for remote printers when possible.
-Short names are just the remote printer name, without the server
-("printer"). If more than one remote printer is detected with the
-same name, the printers will have long names ("printer@server1",
-"printer@server2".)</P>
-
-<P>The default value for this option is <CODE>@CUPS_BROWSE_SHORT_NAMES@</CODE>.</P>
-
-
-<H2 CLASS="title"><A NAME="BrowseTimeout">BrowseTimeout</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-BrowseTimeout 300
-BrowseTimeout 60
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>BrowseTimeout</CODE> directive sets the timeout for
-printer or class information that is received in browse packets.
-Once a printer or class times out it is removed from the list of
-available destinations.</P>
-
-<P>The <CODE>BrowseTimeout</CODE> value should always be greater
-than the <A
-HREF="#BrowseInterval"><CODE>BrowseInterval</CODE></A> value.
-Otherwise printers and classes will disappear from client systems
-between updates.</P>
-
-
<H2 CLASS="title"><A NAME="BrowseWebIF">BrowseWebIF</A></H2>
<H3>Examples</H3>
@@ -834,24 +387,9 @@ Browsing Off
<H3>Description</H3>
<P>The <CODE>Browsing</CODE> directive controls whether or not
-network printer browsing is enabled. The default setting is
+printer sharing is enabled. The default setting is
<CODE>@CUPS_BROWSING@</CODE>.</P>
-<P>This directive does not enable sharing of local printers by
-itself; you must also use the <A
-HREF="#BrowseAddress"><CODE>BrowseAddress</CODE></A> or <A
-HREF="#BrowseProtocols"><CODE>BrowseProtocols</CODE></A>
-directives to advertise local printers to other systems.</P>
-
-<BLOCKQUOTE><B>Note:</B>
-
-<P>If you are using HP-UX 10.20 and a subnet that is not 24,
-16, or 8 bits, printer browsing (and in fact all broadcast
-reception) will not work. This problem appears to be fixed in
-HP-UX 11.0.</P>
-
-</BLOCKQUOTE>
-
<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Classification">Classification</A></H2>
@@ -932,7 +470,7 @@ DataDir /usr/share/cups
for data files.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="DefaultAuthType">DefaultAuthType</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="DefaultAuthType">DefaultAuthType</A></H2>
<H3>Examples</H3>
@@ -950,7 +488,7 @@ of authentication to use for IPP operations that require a
username. The default is <CODE>Basic</CODE>.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="DefaultEncryption">DefaultEncryption</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="DefaultEncryption">DefaultEncryption</A></H2>
<H3>Examples</H3>
@@ -988,7 +526,7 @@ language localization file exists for it. The default language
is "en" for English.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/Mac OS X 10.6</SPAN><A NAME="DefaultPaperSize">DefaultPaperSize</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/OS X 10.6</SPAN><A NAME="DefaultPaperSize">DefaultPaperSize</A></H2>
<H3>Examples</H3>
@@ -1008,7 +546,7 @@ of <CODE>None</CODE> tells the scheduler to not set the default paper
size.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="DefaultPolicy">DefaultPolicy</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="DefaultPolicy">DefaultPolicy</A></H2>
<H3>Examples</H3>
@@ -1027,7 +565,7 @@ policy to use for IPP operation. The default is
and other job operations.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="DefaultShared">DefaultShared</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="DefaultShared">DefaultShared</A></H2>
<H3>Examples</H3>
@@ -1095,22 +633,24 @@ HREF="#Location"><CODE>Location</CODE></A> or <A
HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/Mac OS X 10.6</SPAN><A NAME="DirtyCleanInterval">DirtyCleanInterval</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/OS X 10.6</SPAN><A NAME="DirtyCleanInterval">DirtyCleanInterval</A></H2>
<H3>Examples</H3>
<PRE CLASS="command">
+DirtyCleanInterval 1w
+DirtyCleanInterval 1d
+DirtyCleanInterval 1h
+DirtyCleanInterval 1m
DirtyCleanInterval 30
DirtyCleanInterval 0
</PRE>
<H3>Description</H3>
-<P>The <CODE>DirtyCleanInterval</CODE> directive specifies the number of
-seconds to wait before updating configuration and state files for printers,
-classes, subscriptions, and jobs. The default is 30 seconds. A value of 0
-causes the update to occur as soon as possible, typically within a few
-milliseconds.</P>
+<P>The <CODE>DirtyCleanInterval</CODE> directive specifies the amount of time to wait before updating configuration and state files for printers, classes, subscriptions, and jobs in seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix). A value of <CODE>0</CODE> causes the update to occur as soon as possible, typically within a few milliseconds.</P>
+
+<P>The default value is <CODE>30</CODE> (30 seconds).</P>
<H2 CLASS="title"><A NAME="DocumentRoot">DocumentRoot</A></H2>
@@ -1186,7 +726,7 @@ default error log file is <VAR>@CUPS_LOGDIR@/error_log</VAR>.</P>
information to the system log instead of a plain file.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.3/Mac OS X 10.5</SPAN><A NAME="ErrorPolicy">ErrorPolicy</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.3/OS X 10.5</SPAN><A NAME="ErrorPolicy">ErrorPolicy</A></H2>
<H3>Examples</H3>
@@ -1225,7 +765,7 @@ printer.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/Mac OS X 10.6</SPAN><A NAME="FatalErrors">FatalErrors</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/OS X 10.6</SPAN><A NAME="FatalErrors">FatalErrors</A></H2>
<H3>Examples</H3>
@@ -1386,23 +926,18 @@ system-specific but is usually <CODE>lp</CODE> or
<CODE>nobody</CODE>.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.10</SPAN><A NAME="HideImplicitMembers">HideImplicitMembers</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.6/OS X 10.8</SPAN><A NAME="GSSServiceName">GSSServiceName</A></H2>
<H3>Examples</H3>
<PRE CLASS="command">
-HideImplicitMembers Yes
-HideImplicitMembers No
+GSSServiceName http
+GSSServiceName ipp
</PRE>
<H3>Description</H3>
-<P>The <CODE>HideImplicitMembers</CODE> directive controls
-whether the individual printers in an implicit class are hidden
-from the user. The default is <CODE>Yes</CODE>.</P>
-
-<P><A HREF="#ImplicitClasses"><CODE>ImplicitClasses</CODE></A>
-must be enabled for this directive to have any effect.</P>
+<P>The <CODE>GSSServiceName</CODE> directive sets the Kerberos service name to use. The default is <CODE>@CUPS_DEFAULT_GSSSERVICE_NAME@</CODE> for compatibility with Microsoft Windows.</P>
<H2 CLASS="title"><A NAME="HostNameLookups">HostNameLookups</A></H2>
@@ -1431,45 +966,6 @@ performance problems with hostname lookups. Set this option to
required.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.10</SPAN><A NAME="ImplicitAnyClasses">ImplicitAnyClasses</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-ImplicitAnyClasses On
-ImplicitAnyClasses Off
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>ImplicitAnyClasses</CODE> directive controls
-whether implicit classes for local and remote printers are
-created with the name <CODE>AnyPrinter</CODE>. The default
-setting is <CODE>Off</CODE>.</P>
-
-<P><A HREF="#ImplicitClasses"><CODE>ImplicitClasses</CODE></A>
-must be enabled for this directive to have any effect.</P>
-
-
-<H2 CLASS="title"><A NAME="ImplicitClasses">ImplicitClasses</A></H2>
-
-<H3>Examples</H3>
-
-<PRE CLASS="command">
-ImplicitClasses On
-ImplicitClasses Off
-</PRE>
-
-<H3>Description</H3>
-
-<P>The <CODE>ImplicitClasses</CODE> directive controls whether
-implicit classes are created based upon the available network
-printers and classes. The default setting is
-<CODE>@CUPS_IMPLICIT_CLASSES@</CODE> but is automatically turned
-<CODE>Off</CODE> if <A HREF="#Browsing"><CODE>Browsing</CODE></A> is turned
-<CODE>Off</CODE>.</P>
-
-
<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.9</SPAN><A NAME="Include">Include</A></H2>
<H3>Examples</H3>
@@ -1523,47 +1019,51 @@ JobPrivateValues attribute-name-1 [ ... attribute-name-N ]
<P>The <CODE>JobPrivateValues</CODE> directive specifies the list of job values
to make private. The "default" values are "job-name",
-"job-originating-host-name", and "job-originating-user-name".</P>
+"job-originating-host-name", "job-originating-user-name", and "phone".</P>
<P>The <CODE>JobPrivateValues</CODE> directive must appear inside a <A
HREF="#Policy"><CODE>Policy</CODE></A> section.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="JobRetryInterval">JobRetryInterval</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="JobRetryInterval">JobRetryInterval</A></H2>
<H3>Examples</H3>
<PRE CLASS="command">
+JobRetryInterval 1w
+JobRetryInterval 1d
+JobRetryInterval 1h
+JobRetryInterval 1m
JobRetryInterval 30
-JobRetryInterval 120
</PRE>
<H3>Description</H3>
-<P>The <CODE>JobRetryInterval</CODE> directive specifies the
-number of seconds to wait before retrying a job. This is
-typically used for fax queues but can also be used with normal
-print queues whose error policy is <CODE>retry-job</CODE>. The
-default is 30 seconds.</P>
+<P>The <CODE>JobRetryInterval</CODE> directive specifies the amount of time to wait before retrying a job in seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix). This is typically used for fax queues but can also be used with normal print queues whose error policy is <CODE>retry-job</CODE> or <CODE>retry-current-job</CODE>.</P>
+<P>The default is <CODE>30</CODE> (30 seconds).</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/Mac OS X 10.6</SPAN><A NAME="JobKillDelay">JobKillDelay</A></H2>
+
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/OS X 10.6</SPAN><A NAME="JobKillDelay">JobKillDelay</A></H2>
<H3>Examples</H3>
<PRE CLASS="command">
+JobKillDelay 1w
+JobKillDelay 1d
+JobKillDelay 1h
+JobKillDelay 1m
JobKillDelay 30
-JobKillDelay 120
</PRE>
<H3>Description</H3>
-<P>The <CODE>JobKillDelay</CODE> directive specifies the number of seconds to
-wait before killing the filters and backend associated with a canceled or held
-job. The default is 30 seconds.</P>
+<P>The <CODE>JobKillDelay</CODE> directive specifies the amount of time to wait before killing the filters and backend associated with a canceled or held job in seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix).</P>
+
+<P>The default is <CODE>30</CODE> (30 seconds).</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="JobRetryLimit">JobRetryLimit</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="JobRetryLimit">JobRetryLimit</A></H2>
<H3>Examples</H3>
@@ -1607,15 +1107,18 @@ field of each request.</P>
<H3>Examples</H3>
<PRE CLASS="command">
-KeepAliveTimeout 60
+KeepAliveTimeout 1w
+KeepAliveTimeout 1d
+KeepAliveTimeout 1h
+KeepAliveTimeout 1m
KeepAliveTimeout 30
</PRE>
<H3>Description</H3>
-<P>The <CODE>KeepAliveTimeout</CODE> directive controls how long
-a persistent HTTP connection will remain open after the last
-request. The default is 30 seconds.</P>
+<P>The <CODE>KeepAliveTimeout</CODE> directive controls how long a persistent HTTP connection will remain open after the last request in seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix).</P>
+
+<P>The default is <CODE>30</CODE> (30 seconds).</P>
<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Limit">Limit (Location)</A></H2>
@@ -1647,7 +1150,7 @@ The request type names are case-sensitive for compatibility with
Apache.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="LimitIPP">Limit (Policy)</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="LimitIPP">Limit (Policy)</A></H2>
<H3>Examples</H3>
@@ -2187,6 +1690,23 @@ copies to 100.</P>
</BLOCKQUOTE>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.6/OS X 10.8</SPAN><A NAME="MaxHoldTime">MaxHoldTime</A></H2>
+
+<H3>Examples</H3>
+
+<PRE CLASS="command">
+MaxHoldTime 10800
+MaxHoldTime 3h
+MaxHoldTime 180m
+MaxHoldTime 0
+</PRE>
+
+<H3>Description</H3>
+
+<P>The <CODE>MaxHoldTime</CODE> directive controls the maximum number of seconds allowed for a job to remain in the "indefinite" hold state. The job is canceled automatically if it remains held indefinitely longer than the specified time interval in seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix).</P>
+
+<p>The default setting is <CODE>0</CODE> which disables this functionality.</P>
+
<H2 CLASS="title"><A NAME="MaxJobs">MaxJobs</A></H2>
@@ -2254,6 +1774,26 @@ active jobs is completed, stopped, aborted, or canceled.</P>
default setting is 0.</P>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.6/OS X 10.8</SPAN><A NAME="MaxJobTime">MaxJobTime</A></H2>
+
+<H3>Examples</H3>
+
+<PRE CLASS="command">
+MaxJobTime 10800
+MaxJobTime 3h
+MaxJobTime 180m
+MaxJobTime 0
+</PRE>
+
+<H3>Description</H3>
+
+<P>The <CODE>MaxJobTime</CODE> directive controls the maximum number of
+seconds allowed for a job to complete printing before it is considered "stuck".
+The job is canceled automatically if it takes longer than the specified time to complete in seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix).</P>
+
+<p>Setting the maximum time to <CODE>0</CODE> disables this functionality. The default setting is <CODE>3h</CODE> (3 hours).</P>
+
+
<H2 CLASS="title"><A NAME="MaxLogSize">MaxLogSize</A></H2>
<H3>Examples</H3>
@@ -2298,20 +1838,23 @@ HREF="#LimitRequestBody"><CODE>LimitRequestBody</CODE></A>
directive instead.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/Mac OS X 10.6</SPAN><A NAME="MultipleOperationTimeout">MultipleOperationTimeout</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/OS X 10.6</SPAN><A NAME="MultipleOperationTimeout">MultipleOperationTimeout</A></H2>
<H3>Examples</H3>
<PRE CLASS="command">
-MultipleOperationTimeout 60
+MultipleOperationTimeout 1w
+MultipleOperationTimeout 1d
+MultipleOperationTimeout 1h
+MultipleOperationTimeout 5m
MultipleOperationTimeout 300
-MultipleOperationTimeout 86400
</PRE>
<H3>Description</H3>
-<P>The <CODE>MultipleOperationTimeout</CODE> directive sets the maximum amount
-of time between files in a multi-file print job. The default is 300 seconds.</P>
+<P>The <CODE>MultipleOperationTimeout</CODE> directive sets the maximum amount of time between files in a multi-file print job in seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix).</P>
+
+<P>The default is <CODE>5m</CODE> (five minutes).</P>
<H2 CLASS="title"><A NAME="Order">Order</A></H2>
@@ -2417,7 +1960,7 @@ recognized:</P>
<P>The default is "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}".</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="PassEnv">PassEnv</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="PassEnv">PassEnv</A></H2>
<H3>Examples</H3>
@@ -2436,7 +1979,7 @@ scheduler only passes the <CODE>DYLD_LIBRARY_PATH</CODE>,
environment variables to child processes.</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="Policy">Policy</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="Policy">Policy</A></H2>
<H3>Examples</H3>
@@ -2504,20 +2047,24 @@ the IPv4 and IPv6 wildcard address.</P>
<PRE CLASS="command">
PreserveJobHistory On
PreserveJobHistory Off
+PreserveJobHistory 1w
+PreserveJobHistory 7d
+PreserveJobHistory 168h
+PreserveJobHistory 10080m
+PreserveJobHistory 604800
</PRE>
<H3>Description</H3>
-<P>The <CODE>PreserveJobHistory</CODE> directive controls whether
-the history of completed, canceled, or aborted print jobs is
-stored on disk.</P>
+<P>The <CODE>PreserveJobHistory</CODE> directive controls whether the history of completed, canceled, or aborted print jobs is retained by the scheduler. A value of <CODE>On</CODE> preserves job information until the administrator purges it with the <CODE>cancel</CODE> command. A value of <CODE>Off</CODE> removes the job information as soon as each job is completed, canceled, or aborted. Numeric values preserve job information for the specified number of seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix).</P>
-<P>A value of <CODE>On</CODE> (the default) preserves job
-information until the administrator purges it with the
-<CODE>cancel</CODE> command.</P>
+<P>The default value is <CODE>On</CODE>.</P>
-<P>A value of <CODE>Off</CODE> removes the job information as
-soon as each job is completed, canceled, or aborted.</P>
+<BLOCKQUOTE><B>Note:</B>
+
+<P>The <A HREF="#MaxJobs"><CODE>MaxJobs</CODE></A>, <A HREF="#MaxJobsPerPrinter"><CODE>MaxJobsPerPrinter</CODE></A>, and <A HREF="#MaxJobsPerUser"><CODE>MaxJobsPerUser</CODE></A> directives can cause job history to be discarded to make room for new jobs.</P>
+
+</BLOCKQUOTE>
<H2 CLASS="title"><A NAME="PreserveJobFiles">PreserveJobFiles</A></H2>
@@ -2527,21 +2074,26 @@ soon as each job is completed, canceled, or aborted.</P>
<PRE CLASS="command">
PreserveJobFiles On
PreserveJobFiles Off
+PreserveJobFiles 1w
+PreserveJobFiles 7d
+PreserveJobFiles 168h
+PreserveJobFiles 10080m
+PreserveJobFiles 604800
</PRE>
<H3>Description</H3>
-<P>The <CODE>PreserveJobFiles</CODE> directive controls whether
-the document files of completed, canceled, or aborted print jobs
-are stored on disk.</P>
+<P>The <CODE>PreserveJobFiles</CODE> directive controls whether the document files of completed, canceled, or aborted print jobs are retained. Jobs can be restarted (and reprinted) as desired until they are purged.</P>
+
+<P>A value of <CODE>On</CODE> preserves job files until the administrator purges them with the <CODE>cancel</CODE> command. A value of <CODE>Off</CODE> removes the job files as soon as each job is completed, canceled, or aborted. Numeric values preserve job files for the specified number of seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix).</P>
+
+<P>The default value is <CODE>1d</CODE> (one day).</P>
+
+<BLOCKQUOTE><B>Note:</B>
-<P>A value of <CODE>On</CODE> preserves job files until the
-administrator purges them with the <CODE>cancel</CODE> command.
-Jobs can be restarted (and reprinted) as desired until they are
-purged.</P>
+<P>The <A HREF="#MaxJobs"><CODE>MaxJobs</CODE></A>, <A HREF="#MaxJobsPerPrinter"><CODE>MaxJobsPerPrinter</CODE></A>, <A HREF="#MaxJobsPerUser"><CODE>MaxJobsPerUser</CODE></A>, and <A HREF="#PreserveJobHistory"><CODE>PreserveJobHistory</CODE></A> directives can cause job files to be discarded sooner than specified.</P>
-<P>A value of <CODE>Off</CODE> (the default) removes the job
-files as soon as each job is completed, canceled, or aborted.</P>
+</BLOCKQUOTE>
<H2 CLASS="title"><A NAME="Printcap">Printcap</A></H2>
@@ -2583,7 +2135,7 @@ PrintcapFormat plist
<H3>Description</H3>
<P>The <CODE>PrintcapFormat</CODE> directive controls the output format of the
-printcap file. The default is to generate the plist format on Mac OS X, the
+printcap file. The default is to generate the plist format on OS X, the
Solaris format on Solaris, and the BSD format on other operating systems.</P>
@@ -2717,17 +2269,18 @@ megabytes.</P>
<PRE CLASS="command">
RootCertDuration 0
+RootCertDuration 1w
+RootCertDuration 1d
+RootCertDuration 1h
+RootCertDuration 5m
RootCertDuration 300
</PRE>
<H3>Description</H3>
-<P>The <CODE>RootCertDuration</CODE> directive specifies the
-number of seconds the <EM>root certificate</EM> remains valid.
-The scheduler will generate a new certificate as needed when the
-number of seconds has expired. If set to 0, the root certificate
-is generated only once on startup or on a restart. The default is
-300 seconds.</P>
+<P>The <CODE>RootCertDuration</CODE> directive specifies the amount of time the <EM>root certificate</EM> remains valid in seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix). The scheduler will generate a new certificate as needed when the given time interval has expired. If set to 0, the root certificate is generated only once on startup or on a restart.</P>
+
+<P>The default is <CODE>5m</CODE> (five minutes).</P>
<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Satisfy">Satisfy</A></H2>
@@ -2963,7 +2516,7 @@ the text that is returned. The default is
</TABLE></DIV>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="SetEnv">SetEnv</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="SetEnv">SetEnv</A></H2>
<H3>Examples</H3>
@@ -3032,6 +2585,23 @@ on for secure connections. Multiple <CODE>SSLPort</CODE> lines
can be specified to listen on multiple ports.</P>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.6</SPAN><A NAME="StrictConformance">StrictConformance</A></H2>
+
+<H3>Examples</H3>
+
+<PRE CLASS="command">
+StrictConformance No
+StrictConformance Yes
+</PRE>
+
+<H3>Description</H3>
+
+<P>The <CODE>StrictConformance</CODE> directive specifies whether the scheduler
+requires strict IPP conformance for client requests, for example to not allow
+document attributes in a Create-Job request. The default is
+<code>No</code>.</P>
+
+
<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.5</SPAN><A NAME="SubscriptionPrivateAccess">SubscriptionPrivateAccess</A></H2>
<H3>Examples</H3>
@@ -3127,18 +2697,22 @@ an appropriate temporary directory called
<H3>Examples</H3>
<PRE CLASS="command">
+Timeout 1w
+Timeout 1d
+Timeout 1h
+Timeout 5m
Timeout 300
-Timeout 90
</PRE>
<H3>Description</H3>
<P>The <CODE>Timeout</CODE> directive controls the amount of time
-to wait before an active HTTP or IPP request times out. The
-default timeout is 300 seconds.</P>
+to wait before an active HTTP or IPP request times out in seconds (no suffix), minutes ("m" suffix), hours ("h" suffix), days ("d" suffix), or weeks ("w" suffix).</P>
+
+<P>The default timeout is <CODE>5m</CODE> (five minutes).</P>
-<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/Mac OS X 10.5</SPAN><A NAME="UseNetworkDefault">UseNetworkDefault</A></H2>
+<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="UseNetworkDefault">UseNetworkDefault</A></H2>
<H3>Examples</H3>
diff --git a/doc/help/ref-ppdcfile.html b/doc/help/ref-ppdcfile.html
index c3967f1c..1c77a735 100644
--- a/doc/help/ref-ppdcfile.html
+++ b/doc/help/ref-ppdcfile.html
@@ -148,7 +148,7 @@ and the underscore. The value can be any valid expression.</p>
...
#else
...
-#endif
+#endif
</pre>
<h3>Description</h3>
@@ -181,7 +181,7 @@ corresponding <a href="#_if"><code>#if</code></a> directive.</p>
...
#else
...
-#endif
+#endif
</pre>
<h3>Description</h3>
@@ -215,7 +215,7 @@ expressions are non-zero.</p>
...
#else
...
-#endif
+#endif
</pre>
<h3>Description</h3>
@@ -302,7 +302,7 @@ defining the standard raster fonts in the
...
#else
...
-#endif
+#endif
</pre>
<h3>Description</h3>
@@ -405,7 +405,7 @@ suffixes:</p>
</ul>
-<p>Points are assumed if no units are specified.
+<p>Points are assumed if no units are specified.
<h3>See Also</h3>
@@ -434,7 +434,7 @@ suffixes:</p>
<p>The <code>#po</code> directive defines a message catalog to use for the
given POSIX language abbreviation. Multiple <code>#po</code> directives can be
specified to list multiple catalogs. The filename can be an absolute path or
-relative to the driver information file. GNU gettext and Mac OS X .strings
+relative to the driver information file. GNU gettext and OS X .strings
files are supported.</p>
@@ -1111,7 +1111,7 @@ Adobe PPD file specification.</p>
either the word <code>ROM</code> or <code>Disk</code>.</p>
<p>Device fonts differ from fonts defined using the <a
-href='#_font'><code>#font</code></a> directive in that they are
+href='#_font'><code>#font</code></a> directive in that they are
automatically associated with the current driver. Fonts defined
using <code>#font</code> may be imported into the current driver
using the <code>Font *</code> form of this directive.</p>
@@ -1597,7 +1597,7 @@ Option <i>"name/text" type section order</i>
<pre>
Option Punch Boolean AnySetup 10
-Option "fooFinish/Finishing Option" PickOne DocumentSetup 10
+Option "fooFinish/Finishing Option" PickOne DocumentSetup 10
</pre>
<h3>Description</h3>
@@ -1798,7 +1798,7 @@ SimpleColorProfile 720dpi/Glossy 100 90 120 1.5 -5 5 10
<h3>Description</h3>
<p>The <code>SimpleColorProfile</code> directive creates a
-matrix-based <a href="#ColorProfile"><code>ColorProfile</code></a>.
+matrix-based <a href="#ColorProfile"><code>ColorProfile</code></a>.
The resolution and mediatype arguments specify the
<code>Resolution</code> and <code>MediaType</code> choices which use the
profile; the hyphen (<code>-</code>) is used to specify that any
@@ -2414,8 +2414,8 @@ supported keywords for each type.</p>
<BR>&nbsp;
- <BR><A NAME="REF_COLOR_APPLE">*</A> = This colorspace is not supported on Mac OS X prior to 10.4.
- <BR><A NAME="REF_COLOR_APPLE2">**</A> = This colorspace is not supported on Mac OS X.</LI>
+ <BR><A NAME="REF_COLOR_APPLE">*</A> = This colorspace is not supported on OS X prior to 10.4.
+ <BR><A NAME="REF_COLOR_APPLE2">**</A> = This colorspace is not supported on OS X.</LI>
</UL>
@@ -2441,7 +2441,7 @@ supported keywords for each type.</p>
<BR><A NAME="REF_COLOR_APPLE2">*</A> = This color order
is not supported by the current Apple RIP filters and
should not be used when developing printer drivers for
- Mac OS X.</LI>
+ OS X.</LI>
</UL>
diff --git a/doc/help/ref-printers-conf.html b/doc/help/ref-printers-conf.html
index 9568fc7c..bb44c4c6 100644
--- a/doc/help/ref-printers-conf.html
+++ b/doc/help/ref-printers-conf.html
@@ -151,7 +151,7 @@ HREF="#AllowUser"><CODE>AllowUser</CODE></A></P>
<H3>Description</H3>
-<P>The <CODE>DeviceURI</CODE> directive defines the value of the
+<P>The <CODE>DeviceURI</CODE> directive defines the value of the
<VAR>device-uri-attribute</VAR> attribute. It is normally set
using the <CODE>lpadmin(8)</CODE> command:</P>
@@ -248,7 +248,7 @@ in the printer's PPD file.</P>
<H3>Description</H3>
-<P>The <CODE>Info</CODE> directive defines the string for the
+<P>The <CODE>Info</CODE> directive defines the string for the
<VAR>printer-info</VAR> attribute. It is normally set using the
<CODE>lpadmin(8)</CODE> command:</P>
@@ -337,7 +337,7 @@ section.</P>
<H3>Description</H3>
-<P>The <CODE>KLimit</CODE> directive defines the value of the
+<P>The <CODE>KLimit</CODE> directive defines the value of the
<VAR>job-k-limit</VAR> attribute. It is normally set using the
<CODE>lpadmin(8)</CODE> command:</P>
@@ -364,7 +364,7 @@ section.</P>
<H3>Description</H3>
-<P>The <CODE>Location</CODE> directive defines the string for the
+<P>The <CODE>Location</CODE> directive defines the string for the
<VAR>printer-location</VAR> attribute. It is normally set using the
<CODE>lpadmin(8)</CODE> command:</P>
@@ -449,7 +449,7 @@ section.</P>
<H3>Description</H3>
-<P>The <CODE>PageLimit</CODE> directive defines the value of the
+<P>The <CODE>PageLimit</CODE> directive defines the value of the
<VAR>job-page-limit</VAR> attribute. It can be set using the
<CODE>lpadmin(8)</CODE> command:</P>
@@ -665,7 +665,7 @@ section.</P>
<PRE CLASS="command">
&lt;Printer name&gt;
...
- StateMessage Ready to print.
+ StateMessage Printer is lonely.
&lt;/Printer&gt;
</PRE>
@@ -682,7 +682,6 @@ StateMessage Network host host_name is busy; will retry in 30 seconds...
StateMessage Printer busy; will retry in 10 seconds...
StateMessage Printer is busy; retrying print job...
StateMessage Print file accepted - job ID id_number.
-StateMessage Ready to print.
StateMessage Waiting for job to complete
</PRE>
diff --git a/doc/help/ref-snmp-conf.html b/doc/help/ref-snmp-conf.html
index db4aacee..4cab237e 100644
--- a/doc/help/ref-snmp-conf.html
+++ b/doc/help/ref-snmp-conf.html
@@ -55,9 +55,8 @@ Community BigCorp
<H3>Description</H3>
<P>The <CODE>Community</CODE> directive specifies a community
-name to use when discovering printers. Multiple
-<CODE>Community</CODE> lines can be provided to scan different
-SNMP communities.</P>
+name to use when discovering printers and reporting status and supply
+levels for network printers.</P>
<P>The default community is "public".</P>
diff --git a/doc/help/sharing.html b/doc/help/sharing.html
index 00ccb6fe..e13cfed4 100644
--- a/doc/help/sharing.html
+++ b/doc/help/sharing.html
@@ -12,123 +12,46 @@
<h2><a name="BASICS">The Basics</h2>
-<p>A "server" is any machine that communicates directly to a printer. A "client"
-is any machine that sends print jobs to a server for final printing. Clients can
-also be servers if they communicate directly with any printers of their own.</p>
+<p>A "server" is any machine that communicates directly to a printer. A "client" is any machine that sends print jobs to a server for final printing. Clients can also be servers if they communicate directly with any printers of their own.</p>
-<p>By default, CUPS uses the Internet Printing Protocol (IPP) to send jobs from
-a client to a server. When printing to legacy print servers you may also use the
-Line Printer Daemon (LPD) when printing to older UNIX-based servers or Server
-Message Block (SMB) when printing to Windows<sup>&reg;</sup> servers.</p>
+<p>By default, CUPS uses the Internet Printing Protocol (IPP) to send jobs from a client to a server. When printing to legacy print servers you may also use the Line Printer Daemon (LPD) protocol when printing to older UNIX-based servers or Server Message Block (SMB) when printing to Windows<sup>&reg;</sup> servers.</p>
-<p>Clients can automatically discover and access shared printers via CUPS
-browsing, IPP, Service Location Protocol (SLP), and Lightweight Directory Access
-Protocol (LDAP). DNS Service Discovery (DNS-SD a.k.a. Bonjour<sup>&reg;</sup>)
-and SMB browsing can also be used to manually discover and access shared
-printers.</p>
+<p>Clients can automatically discover and access shared printers via DNS Service Discovery (DNS-SD a.k.a. Bonjour<sup>&reg;</sup>). SMB browsing can also be used to manually discover and access shared printers when <a href="http://www.samba.org/">Samba</a> is installed.</p>
<h2><a name="SERVER_CONFIG">Configuring the Server</a></h2>
-<p>You must enable printer sharing on the server before clients can print
-through it. The simplest way to do this is to use the
-<a href="man-cupsctl.html">cupsctl(8)</a> command on the server:</p>
+<p>You must enable printer sharing on the server before clients can print through it. The simplest way to do this is to use the <a href="man-cupsctl.html">cupsctl(8)</a> command on the server:</p>
<pre class="command">
cupsctl --share-printers
</pre>
-<p>By default, the above command will allow printing from other clients on the
-same subnet as your server. To allow printing from any subnet, use the following
-command instead:</p>
+<p>By default, the above command will allow printing from other clients on the same subnet as your server. To allow printing from any subnet, use the following command instead:</p>
<pre class="command">
cupsctl --share-printers --remote-any
</pre>
-<p>Next, you need to choose which protocols to use for printer sharing. The
-default is CUPS browsing and DNS-SD on Mac OS X and CUPS browsing alone on
-other platforms. To set the sharing protocols, run the <b>cupsctl</b> command
-to set the
-<a href="ref-cupsd-conf.html#BrowseLocalProtocols">BrowseLocalProtocols</a>
-value. For example, run the following command to allow shared printing via
-CUPS, DNS-SD, LPD, and SMB:</p>
+<p>Next, tag each printer that you want to share using the <a href="man-lpadmin.html">lpadmin(8)</a> command on the server, for example:</p>
<pre class="command">
-cupsctl 'BrowseLocalProtocols="cups dnssd lpd smb"'
+lpadmin -p printer -o printer-is-shared=true
</pre>
-
-<h2><a name="AUTO_CUPS">Automatic Configuration using CUPS Browsing</a></h2>
-
-<p>CUPS browsing works by periodically broadcasting information about printers
-that are being shared to client systems on the same subnet. Each client
-maintains its own list of shared printers, and when more than one server shares
-the same printer (or the same kind of printer) the client uses all of the
-servers and printers to provide high-availability and failsafe printing.</p>
-
-<p>To configure printers on the same subnet, <em>do nothing</em>. Each client
-should see the available printers within 30 seconds automatically. The printer
-and class lists are updated automatically as printers and servers are added or
-removed.</p>
-
-<blockquote><b>Note:</b>
-
-<p>Due to user interface changes in Mac OS X 10.5, CUPS shared printers will not
-automatically appear in the print dialog. Instead, you must first run the
-following command to enable CUPS browsing on your system:</p>
-
-<pre class="command">
-cupsctl BrowseRemoteProtocols=cups
-</pre>
-
-<p>Then choose each of the CUPS shared printers you want to see in the print
-dialog by adding them, either from the <var>Add Printer...</var> item in the
-print dialog or from the <var>Print &amp; Fax</var> preference pane in the
-<var>System Preferences</var> window.</p>
-
-</blockquote>
-
-<h3><a name="BROWSE_POLL">Seeing Printers on Other Subnets</a></h3>
-
-<p>You can automatically access printers on other subnets by adding
-<a href="ref-cupsd-conf.html#BrowsePoll"><code>BrowsePoll</code></a> lines
-to the <var>cupsd.conf</var> file on your local system. For a single
-server you can use the <b>cupsctl</b> command:</p>
+<p>You can require authentication for shared printing by setting the policy on each printer, for example:</p>
<pre class="command">
-cupsctl BrowsePoll=server:port
-</pre>
-
-<p>For multiple servers, use the CUPS web interface (http://localhost:631/admin)
-to edit the configuration file instead. Enter one <code>BrowsePoll</code> line
-per server at the bottom of the file, as follows:</p>
-
-<pre class="example">
-BrowsePoll server1:port
-BrowsePoll server2:port
-BrowsePoll server3:port
-</pre>
-
-<p>If you have more than one client on your subnet that wants to see the
-printers on those servers, add a
-<a href="ref-cupsd-conf.html#BrowseRelay"><code>BrowseRely</code></a> line
-to the <var>cupsd.conf</var> file on your local system using the <b>cupsctl</b>
-command:</p>
-
-<pre class="command">
-cupsctl 'BrowseRelay="127.0.0.1 @LOCAL"'
-</pre>
-
-<p>or CUPS web interface (again, at the bottom of the file):</p>
-
-<pre class="example">
-BrowseRelay 127.0.0.1 @LOCAL
+lpadmin -p printer -o printer-op-policy=authenticated
</pre>
<h2><a name="AUTO_IPP">Automatic Configuration using IPP</a></h2>
+<blockquote><b>Note:</b>
+<p>This method of configuration does not work on OS X 10.7 or later because sandboxed applications do not always have direct network access.</p>
+</blockquote>
+
<p>CUPS can be configured to run without a local spooler and send all jobs to a
single server. However, if that server goes down then all printing will be
disabled. Use this configuration only as absolutely necessary.</p>
@@ -167,6 +90,10 @@ port. The environment variable overrides both the user and system
<h2><a name="MANUAL">Manual Configuration of Print Queues</a></h2>
+<blockquote><b>Note:</b>
+<p>This method of configuration does not work on OS X 10.7 or later because sandboxed applications do not always have direct network access.</p>
+</blockquote>
+
<p>The most tedious method of configuring client machines is to configure
each remote queue by hand using the <a href="man-lpadmin.html">lpadmin(8)</a>
command:</p>
diff --git a/doc/help/spec-cmp.html b/doc/help/spec-cmp.html
index 47f56d31..2c66e320 100644
--- a/doc/help/spec-cmp.html
+++ b/doc/help/spec-cmp.html
@@ -11,87 +11,66 @@
<P>This developer guide documents the guidelines and processes we use when developing and maintaining CUPS and related software. Our goal is to provide reliable and efficient software and documentation that addresses the needs of our users.</P>
+<H2 CLASS="title"><A NAME="OVERVIEW">Overview</A></H2>
+
+<P>CUPS is developed by Apple Inc. and distributed as open source software under a combination of GNU GPL2 and GNU LGPL2 licenses with exceptions to allow linking to OpenSSL (which has a GPL-incompatible license) and for developers on Apple's operating systems to develop CUPS-based software until alternate license terms. Significant contributions to CUPS must be licensed to Apple using the <A HREF="http://www.cups.org/AppleContributorAgreement_2011-03-10.pdf">Apple Contributor Agreement</A>.</P>
+
+<P>Apple releases updates to the CUPS software approximately every three months. Each release has a version number consisting of the major version (currently 1), minor version (currently 6), and patch version (starting at 0) separated by the period, for example "1.6.0". Releases where only the patch version number changes will contain only bug fixes to the previous release, for example "1.6.1" includes bug fixes for the "1.6.0" release. New features require the major or minor version numbers to change, for example "1.6.0" release contains new features compared to the "1.5.3" release. Multiple beta and "candidate" releases generally precede each new feature release, for example "1.5b1", "1.5b2", and "1.5rc1" preceded the "1.5.0" release. Finally, we also post regular Subversion snapshot releases, for example "1.6svn-r10486", which represent a snapshot of the development for the next feature release.</P>
+
+<P>CUPS interfaces, including the C APIs and command-line arguments, environment variables, configuration files, and output format, are stable across patch versions and are generally backwards-compatible with interfaces used in prior major and minor versions. However, program interfaces such as those used by the scheduler to run filter, port monitor, and backend processes for job processing should only be considered stable from the point of view of a filter, port monitor, or backend. Software that simulates the scheduler in order to run those programs outside of CUPS must necessarily be updated when the corresponding interface is changed in a subsequent CUPS release, otherwise undefined behavior can occur.</P>
+
+<P>CUPS C APIs starting with an underscore (_) are considered to be private to CUPS and are not subject to the normal guarantees of stability between CUPS releases and must <em>never</em> be used in non-CUPS source code. Similarly, configuration and state files written by CUPS are considered private if a corresponding man page is not provided with the CUPS release. <em>Never</em> rely on undocumented files or formats when developing software for CUPS. <em>Always</em> use a published C API to access data stored in a file to avoid compatibility problems in the future.</P>
+
+
<H2 CLASS="title"><A NAME="COMMUNICATION">Communication</A></H2>
<H3><A NAME="CONTACT">How to Contact the Developers</A></H3>
-<P>The <A HREF="http://www.cups.org/newsgroups.php">CUPS
-Forums</A> are the primary means of asking questions and
-informally discussing issues and feature requests with the CUPS
-developers. Table 1 shows the available forums and their
-focus:</P>
+<P>The <A HREF="http://lists.cups.org/">CUPS Mailing Lists</A> are the primary means of asking questions and informally discussing issues and feature requests with the CUPS developers and other experienced CUPS users and developers. Table 1 shows the available mailing lists and their focus:</P>
<DIV CLASS="table"><TABLE SUMMARY="CUPS Forums">
-<CAPTION>Table 1: CUPS Forums</CAPTION>
+<CAPTION>Table 1: CUPS Mailing Lists</CAPTION>
<TR>
- <TH>Forum</TH>
+ <TH>List</TH>
<TH>Focus/Purpose</TH>
</TR>
<TR>
- <TD>cups.bugs</TD>
- <TD>Discussion of bugs and issues in the CUPS
- software</TD>
-</TR>
-<TR>
- <TD>cups.commit</TD>
- <TD>Report of all commits to the Subversion repository
- (read-only)</TD>
+ <TD>cups</TD>
+ <TD>General discussion and usage questions for the CUPS software</TD>
</TR>
<TR>
- <TD>cups.ddk</TD>
- <TD>Usage and development questions for the CUPS Driver
- Development Kit</TD>
+ <TD>cups-bugs</TD>
+ <TD>Discussion of bugs and issues in the CUPS software</TD>
</TR>
<TR>
- <TD>cups.development</TD>
- <TD>Development questions and discussion of new features
- in the CUPS software</TD>
+ <TD>cups-commit</TD>
+ <TD>Report of all commits to the Subversion repository (read-only)</TD>
</TR>
<TR>
- <TD>cups.general</TD>
- <TD>Usage questions for the CUPS software</TD>
+ <TD>cups-dev</TD>
+ <TD>Development questions and discussion of new features in the CUPS software</TD>
</TR>
</TABLE></DIV>
+
<H3><A NAME="SUBMIT">How to Submit a Bug Report or Feature Request</A></H3>
-<P>The CUPS "<A HREF="http://www.cups.org/str.php">Bugs &amp;
-Features</A>" page provides access to the CUPS <em>software
-trouble report</em> database and is the formal way to submit a
-bug report or feature request to the CUPS developers. Please
-note, however, that we <em>do not</em> provide answers to usage
-questions or resolve problems in third-party software on this
-page - use the CUPS Forums for that instead.</P>
-
-<P>Unlike discussions that occur on the CUPS Forums, formal bug
-reports and feature requests must be acted on by the CUPS
-developers. This does not mean that every bug report is resolved
-or every feature request is implemented, but we do respond and
-keep track of them all for posterity.</P>
-
-<BLOCKQUOTE>Please use the search feature of the Bugs &amp;
-Features page before submitting a new bug report or feature
-request. If you see an existing report that matches your issue,
-please post a message to that report ("I have this issue as
-well", "I would also like to see", etc.) rather than submitting a
-new report. This helps speed the resolution of your issue by
-reducing the CUPS developers' work load.</BLOCKQUOTE>
+<P>The CUPS "<A HREF="http://www.cups.org/str.php">Bugs &amp; Features</A>" page provides access to the CUPS <em>Software Trouble Report</em> (STR) database and is the formal way to submit a bug report or feature request to the CUPS developers. Please note, however, that we <em>do not</em> provide answers to usage questions or resolve problems in third-party software on this page - use the <A HREF="#CONTACT">CUPS Mailing Lists</A> for that instead.</P>
+
+<P>Unlike discussions that occur on the CUPS Mailing Lists, formal bug reports and feature requests must be acted on by the CUPS developers. This does not mean that every bug report is resolved or every feature request is implemented, but we do respond and keep track of them all for posterity.</P>
+
+<BLOCKQUOTE>Please use the search feature of the Bugs &amp; Features page before submitting a new bug report or feature request. If you see an existing report that matches your issue, please post a message to that report ("I have this issue as well", "I would also like to see", etc.) rather than submitting a new report. This helps speed the resolution of your issue by reducing the CUPS developers' work load and identifying popular issues.</BLOCKQUOTE>
+
<H3><A NAME="PATCH">How to Prepare a Patch</A></H3>
-<P>When submitting a bug report or feature request, you can
-include patch files that resolve the bug or implement the feature
-to speed the inclusion of that bug fix or feature in a new CUPS
-release. For changes to existing files, we prefer a unified diff
-against the current Subversion <VAR>trunk</VAR> branch, which can
-be generated easily using the following Subversion command:</P>
+<P>When submitting a bug report or feature request, you can include patch files that resolve the bug or implement the feature to speed the inclusion of that bug fix or feature in a new CUPS release. For changes to existing files, we prefer a unified diff against the current Subversion <VAR>trunk</VAR> branch, which can be generated easily using the following Subversion command:</P>
<PRE CLASS="command">
svn diff >filename.patch
</PRE>
-<P>If you produce a patch using a released source archive, use
-one of the following commands instead:</P>
+<P>If you produce a patch using a released source archive, use one of the following commands instead:</P>
<PRE CLASS="command">
diff -u oldfilename filename >filename.patch
@@ -99,36 +78,22 @@ diff -u oldfilename filename >filename.patch
diff -urN olddirectory directory >filename.patch
</PRE>
-<P>New files and files with significant changes can be submitted
-in their entirety, however that may delay the adoption of your
-changes.</P>
+<P>New files and files with significant changes can be submitted in their entirety, however that may delay the adoption of your changes.</P>
+
+<BLOCKQUOTE><B>Note:</B>
-<BLOCKQUOTE>Patches and files must conform to the standards outlined in the
-"<A HREF="#CODING">Coding Guidelines</A>" and "<A HREF="#MAKEFILES">Makefile
-Guidelines</A>" sections in this document. In addition, since Apple Inc.
-provides CUPS under multiple licenses, we require that you assign the copyright
-for your changes and files to us for inclusion in CUPS.</BLOCKQUOTE>
+<P>Patches and files must conform to the standards outlined in the "<A HREF="#CODING">Coding Guidelines</A>" and "<A HREF="#MAKEFILES">Makefile Guidelines</A>" sections in this document. In addition, since Apple Inc. provides CUPS under multiple licenses, we require that you <A HREF="http://www.cups.org/AppleContributorAgreement_2011-03-10.pdf">license</A> significant changes and files to us for inclusion in CUPS. The CUPS developers will inform you if licensing is required.</P></BLOCKQUOTE>
<H2 CLASS="title"><A NAME="PRACTICES">Software Development Practices</A></H2>
<H3><A NAME="VERSIONS">Version Numbering</A></H3>
-<P>CUPS uses a three-part version number separated by periods to
-represent the major, minor, and patch release numbers. Major
-release numbers indicate large design changes or
-backwards-incompatible changes to the CUPS API or CUPS Imaging
-API. Minor release numbers indicate new features and other
-smaller changes which are backwards-compatible with previous CUPS
-releases. Patch numbers indicate bug fixes to the previous
-release.</P>
-
-<BLOCKQUOTE>When we talk about compatibility, we are talking
-about binary compatibility for public APIs and output format
-compatibility for program interfaces. Changes to configuration
-file formats or the default behavior of programs are not
-generally considered incompatible as the upgrade process can
-normally address such changes gracefully.</BLOCKQUOTE>
+<P>CUPS uses a three-part version number separated by periods to represent the major, minor, and patch release numbers. Major release numbers indicate large design changes or backwards-incompatible changes to the CUPS API or CUPS Imaging API. Minor release numbers indicate new features and other smaller changes which are backwards-compatible with previous CUPS releases. Patch numbers indicate bug fixes to the previous feature release.</P>
+
+<BLOCKQUOTE><B>Note:</B>
+
+<P>When we talk about compatibility, we are talking about binary compatibility for public APIs and output format compatibility for program interfaces. Changes to configuration file formats or the default behavior of programs are not generally considered incompatible as the upgrade process can normally address such changes gracefully.</P></BLOCKQUOTE>
<P>Production releases use the plain version numbers:</P>
@@ -149,59 +114,44 @@ MAJOR.MINOR.PATCH
2.0.0
</PRE>
-<P>The first production release in a MAJOR.MINOR series (MAJOR.MINOR.0) is
-called a feature release. Feature releases are the only releases that may
-contain new features. Subsequent production releases in a MAJOR.MINOR series may
-only contain bug fixes.</P>
+<P>The first production release in a MAJOR.MINOR series (MAJOR.MINOR.0) is called a feature release. Feature releases are the only releases that may contain new features. Subsequent production releases in a MAJOR.MINOR series may only contain bug fixes.</P>
+
+<BLOCKQUOTE><B>Note:</B>
-<BLOCKQUOTE>We did not hold to this limitation in the CUPS 1.1 series for a
-variety of reasons. Starting with CUPS 1.2, the "no new features in a patch
-release" policy has been strictly enforced. The policy has also resulted in
-fewer new features (and interactions!) to validate/test in the subsequence
-feature releases.</BLOCKQUOTE>
+<P>We did not hold to this limitation in the CUPS 1.1 series for a variety of reasons. Starting with CUPS 1.2, the "no new features in a patch release" policy has been strictly enforced. The policy has also resulted in fewer new features (and interactions!) to validate/test in the subsequence feature releases.</P></BLOCKQUOTE>
-<P>Beta-test releases are identified by appending the letter B to the major and
-minor version numbers followed by the beta release number:</P>
+<P>Beta-test releases are identified by appending the letter B to the major and minor version numbers followed by the beta release number:</P>
<PRE CLASS="command">
MAJOR.MINORbNUMBER
1.2b1
</PRE>
-<P>Release candidates are identified by appending the letters RC to the major
-and minor version numbers followed by the release candidate number:</P>
+<P>Release candidates are identified by appending the letters RC to the major and minor version numbers followed by the release candidate number:</P>
<PRE CLASS="command">
MAJOR.MINORrcNUMBER
1.2rc1
</PRE>
-<P>Developer snapshots are identified by appending the letters SVN-R to the
-major and minor version numbers followed by the revision number:</P>
+<P>Developer snapshots are identified by appending the letters SVN-R to the major and minor version numbers followed by the revision number:</P>
<PRE CLASS="command">
MAJOR.MINORsvn-rREV
1.2svn-r1234
</PRE>
-<P>Beta-test releases, release candidates, and developer snapshots are only
-created for new minor releases. Once a production release has been made
-(MAJOR.MINOR.0), subsequent patch releases are issues without preliminary beta
-or release testing.</P>
+<P>Beta-test releases, release candidates, and developer snapshots are only created for new minor releases. Once a production release has been made (MAJOR.MINOR.0), subsequent patch releases are issued without preliminary beta or release testing.</P>
<H3>Version Control (Subversion)</H3>
-<P>The CUPS source files are managed by the Subversion ("SVN")
-software, available at:</P>
+<P>The CUPS source files are managed by the Subversion ("SVN") software, available at:</P>
<PRE CLASS="command">
-<A HREF="http://subversion.tigris.org/" TARGET="_blank">subversion.tigris.org</A>
+<A HREF="http://subversion.apache.org/" TARGET="_blank">subversion.apache.org</A>
</PRE>
-<P>Source files are "checked in" with each change so that
-modifications can be tracked, and each checkin must reference any
-applicable STRs. The following format <em>must</em> be used for
-commit log messages:</P>
+<P>Source files are "checked in" with each change so that modifications can be tracked, and each checkin must reference any applicable STRs. The following format <em>must</em> be used for commit log messages:</P>
<PRE CLASS="command">
Summary of the change on one line followed by bug number (STR #NNNN)
@@ -209,10 +159,7 @@ Summary of the change on one line followed by bug number (STR #NNNN)
Detailed list of changes.
</PRE>
-<P>Primary development occurs on the <var>trunk</var> branch,
-with changes merged back to release branches as needed. Table 2
-shows the URLs developers use for the various CUPS sub-projects
-and branches:</P>
+<P>Primary development occurs on the <var>trunk</var> branch, with changes merged back to release branches as needed. Table 2 shows the URLs developers use for the various CUPS sub-projects and branches:</P>
<DIV CLASS="table"><TABLE SUMMARY="CUPS Subversion URLs">
<CAPTION>Table 2: CUPS Subversion URLs</CAPTION>
@@ -221,113 +168,55 @@ and branches:</P>
<TH>Purpose</TH>
</TR>
<TR>
- <TD><A HREF="http://svn.easysw.com/public/cups/trunk/">https://svn.easysw.com/public/cups/trunk/</A></TD>
+ <TD><A HREF="http://svn.cups.org/public/cups/trunk/">https://svn.cups.org/public/cups/trunk/</A></TD>
<TD>Primary CUPS development branch</TD>
</TR>
<TR>
- <TD><A HREF="http://svn.easysw.com/public/cups/branches/">https://svn.easysw.com/public/cups/branches/</A></TD>
+ <TD><A HREF="http://svn.cups.org/public/cups/branches/">https://svn.cups.org/public/cups/branches/</A></TD>
<TD>CUPS maintenance branches (merge-only)</TD>
</TR>
<TR>
- <TD><A HREF="http://svn.easysw.com/public/cups/tags/">https://svn.easysw.com/public/cups/tags/</A></TD>
+ <TD><A HREF="http://svn.cups.org/public/cups/tags/">https://svn.cups.org/public/cups/tags/</A></TD>
<TD>CUPS release tags (read-only)</TD>
</TR>
-<TR>
- <TD><A HREF="http://svn.easysw.com/public/windows/trunk/">https://svn.easysw.com/public/windows/trunk/</A></TD>
- <TD>Primary CUPS Windows Driver development branch</TD>
-</TR>
-<TR>
- <TD><A HREF="http://svn.easysw.com/public/windows/branches/">https://svn.easysw.com/public/windows/branches/</A></TD>
- <TD>CUPS Windows Driver maintenance branches (merge-only)</TD>
-</TR>
-<TR>
- <TD><A HREF="http://svn.easysw.com/public/windows/tags/">https://svn.easysw.com/public/windows/tags/</A></TD>
- <TD>CUPS Windows Driver release tags (read-only)</TD>
-</TR>
</TABLE></DIV>
-<P>The branch for a MAJOR.MINOR release are created when the
-first production release (MAJOR.MINOR.0) is made using the name
-"branch-MAJOR.MINOR". Release tags are created for every beta,
-candidate, and production release using the name
-"release-MAJOR.MINOR.PATCHbNUMBER",
-"release-MAJOR.MINOR.PATCHrcNUMBER", or
-"release-MAJOR.MINOR.PATCH", respectively. No release tags are
-created for developer snapshots.</P>
+<P>The branch for a MAJOR.MINOR release are created when the first production release (MAJOR.MINOR.0) is made using the name "branch-MAJOR.MINOR". Release tags are created for every beta, candidate, and production release using the name "release-MAJOR.MINORbNUMBER", "release-MAJOR.MINORrcNUMBER", or "release-MAJOR.MINOR.PATCH", respectively. No release tags are created for developer snapshots.</P>
<H3>Files and Directories</H3>
-<P>File and directory names may not exceed 16 characters in
-length to ensure compatibility with older UNIX filesystems. In
-addition, to avoid problems with case-insensitive filesystems,
-you may not use names which differ only by case, for example
-"ReadMe" and "README" are not allowed in the same directory.</P>
+<P>File and directory names may not exceed 16 characters in length to ensure compatibility with older UNIX filesystems. In addition, to avoid problems with case-insensitive filesystems, you may not use names which differ only by case, for example "ReadMe" and "README" are not allowed in the same directory.</P>
-<P>Source files must be documented and formatted as described in
-"<A HREF="#CODING">Coding Requirements</A>". Make files must
-follow the guidelines in "<A HREF="#MAKEFILE">Makefile
-Guidelines</A>".</P>
+<P>Source files must be documented and formatted as described in "<A HREF="#CODING">Coding Requirements</A>". Makefiles must follow the guidelines in "<A HREF="#MAKEFILE">Makefile Guidelines</A>".</P>
<H3>Build System</H3>
-<P>The CUPS build system uses <A
-HREF="http://www.gnu.org/software/autoconf/">GNU autoconf</A> to
-tailor the library to the local operating system. Project files
-for major IDEs are also provided for Microsoft
-Windows<SUP>&reg;</SUP>. To improve portability, makefiles must
-not make use of the unique features offered by <A
-HREF="http://www.gnu.org/software/make/">GNU make</A>. See the <A
-HREF="#MAKEFILES">Makefile Guidelines</A> section for a
-description of the allowed make features and makefile
-guidelines.</P>
-
-<P>Additional GNU build programs such as <A
-HREF="http://www.gnu.org/software/automake">GNU automake</A> and
-<A HREF="http://www.gnu.org/software/libtool">GNU libtool</A>
-must not be used. GNU automake produces non-portable makefiles
-which depend on GNU-specific extensions, and GNU libtool is not
-portable or reliable enough for CUPS.</P>
+<P>The CUPS build system uses <A HREF="http://www.gnu.org/software/autoconf/">GNU autoconf</A> to tailor the library to the local operating system. Project files for the current release of Visual C++ are also provided for Microsoft Windows<SUP>&reg;</SUP>. To improve portability, makefiles must not make use of features unique to <A HREF="http://www.gnu.org/software/make/">GNU make</A>. See the <A HREF="#MAKEFILES">Makefile Guidelines</A> section for a description of the allowed make features and makefile guidelines.</P>
+
+<P>Additional GNU build programs such as <A HREF="http://www.gnu.org/software/automake">GNU automake</A> and <A HREF="http://www.gnu.org/software/libtool">GNU libtool</A> must not be used. GNU automake produces non-portable makefiles which depend on GNU-specific extensions, and GNU libtool is not portable or reliable enough for CUPS.</P>
<H3><A NAME="PACKAGING">Packaging</A></H3>
-<P>Source packages are created using the
-<VAR>tools/makesrcdist</VAR> script in the Subversion repository.
-The script optionally uses a version number argument:</P>
+<P>Source packages are created using the <VAR>tools/makesrcdist</VAR> script in the Subversion repository. The script optionally uses a version number argument:</P>
<PRE CLASS="command">
tools/makesrcdist
tools/makesrcdist <I>version</I>
</PRE>
-<P>When run with no arguments, the script creates a snapshot of
-the current working copy and names it using the highest revision
-number in the WC, for example
-"/tmp/cups-1.3svn-r1234-source.tar.bz2" and
-"/tmp/cups-1.3svn-r1234-source.tar.gz". When run with two
-arguments, the script creates a release tag in the repository and
-exports that tag, creating the files
-"/tmp/cups-<I>version</I>-source.tar.bz2" and
-"/tmp/cups-<I>version</I>-source.tar.gz".</P>
-
-<P>Binary packages are not generally distributed by the CUPS
-team, however the <VAR>packaging/cups.spec</VAR> and
-<VAR>packaging/cups.list</VAR> files may be used to create binary
-packages on Linux, Mac OS X, and UNIX. The
-<VAR>packaging/cups.spec</VAR> file produces a binary package
-using the <CODE>rpmbuild(8)</CODE> software:</P>
+<P>When run with no arguments, the script creates a snapshot of the current working copy and names it using the highest revision number in the WC, for example "/tmp/cups-1.3svn-r1234-source.tar.bz2" and "/tmp/cups-1.3svn-r1234-source.tar.gz". When run with two arguments, the script creates a release tag in the repository and exports that tag, creating the files
+"/tmp/cups-<I>version</I>-source.tar.bz2" and "/tmp/cups-<I>version</I>-source.tar.gz".</P>
+
+<P>Binary packages are not generally distributed by the CUPS team, however the <VAR>packaging/cups.spec</VAR> and <VAR>packaging/cups.list</VAR> files may be used to create binary packages on Linux, OS X, and UNIX. The <VAR>packaging/cups.spec</VAR> file produces a binary package using the <CODE>rpmbuild(8)</CODE> software:</P>
<PRE CLASS="command">
rpmbuild -ta cups-<I>version</I>-source.tar.gz
</PRE>
-<P>The <VAR>cups.list</VAR> file is generated by the
-<VAR>configure</VAR> script and produces binary packages for many
-platforms using the <A HREF="http://www.easysw.com/epm/"
-TARGET="_blank">EPM</A> software. Table 3 shows the targets that
-are available for each type of binary package:</P>
+<P>The <VAR>cups.list</VAR> file is generated by the <VAR>configure</VAR> script and produces binary packages for many platforms using the <A HREF="http://www.epmhome.org/" TARGET="_blank">EPM</A> software. Table 3 shows the targets that are available for each type of binary package:</P>
<DIV CLASS="table"><TABLE SUMMARY="Binary Package Targets">
<CAPTION>Table 3: Binary Package Targets</CAPTION>
@@ -360,10 +249,6 @@ are available for each type of binary package:</P>
<TD>IRIX inst/tardist</TD>
</TR>
<TR>
- <TD>osx</TD>
- <TD>Mac OS X Install</TD>
-</TR>
-<TR>
<TD>pkg</TD>
<TD>Solaris pkgadd</TD>
</TR>
@@ -389,10 +274,7 @@ are available for each type of binary package:</P>
</TR>
</TABLE></DIV>
-<P>Finally, the <VAR>tools/testrpm</VAR> and
-<VAR>tools/testosx</VAR> scripts can be used to create binary
-packages from the current working copy for testing on Linux and
-Mac OS X, respectively:</P>
+<P>Finally, the <VAR>tools/testrpm</VAR> and <VAR>tools/testosx</VAR> scripts can be used to create binary packages from the current working copy for testing on Linux and OS X, respectively:</P>
<PRE CLASS="command">
tools/testrpm
@@ -405,26 +287,18 @@ open cups.pkg
<H3><A NAME="TESTING">Testing</A></H3>
-<P>Software testing is conducted according to the <A
-HREF="spec-stp.html">CUPS Software Test Plan</A>. This testing is
-automated via the top-level makefile <VAR>test</VAR> target:</P>
+<P>Software testing is conducted according to the <A HREF="spec-stp.html">CUPS Software Test Plan</A>. This testing is automated via the top-level makefile <VAR>test</VAR> target:</P>
<PRE CLASS="command">
make test
</PRE>
-<P>The test environment allows for both short-term automated
-testing and long-term testing and development without the
-automated test script.</P>
+<P>The test environment allows for both short-term automated testing and long-term testing and development without the automated test script.</P>
<H2 CLASS="title"><A NAME="STR">Trouble Report Processing</A></H2>
-<P>A Software Trouble Report ("STR") must be submitted every time
-a user or vendor experiences a problem with the CUPS software.
-Trouble reports are maintained on the <A
-HREF="http://www.cups.org/str.php" TARGET="_blank">Bugs &amp;
-Features</A> page with one of the following states:</P>
+<P>A Software Trouble Report ("STR") must be submitted every time a user or vendor experiences a problem with the CUPS software. Trouble reports are maintained on the <A HREF="http://www.cups.org/str.php" TARGET="_blank">Bugs &amp; Features</A> page with one of the following states:</P>
<OL>
@@ -442,36 +316,25 @@ Features</A> page with one of the following states:</P>
<P>Trouble reports are processed using the following steps.</P>
-<OL>
+<H3>1. Classification</H3>
-<LI>Classification
-
-<P>When a trouble report is received it must be classified at one
-of the following priority levels:</P>
+<P>When a trouble report is received it must be classified at one of the following priority levels:</P>
<OL>
- <LI>Request for enhancement, e.g. asking for a
- feature
+ <LI>Request for enhancement, e.g. asking for a feature
- <LI>Low, e.g. a documentation error or undocumented
- side-effect
+ <LI>Low, e.g. a documentation error or undocumented side-effect
- <LI>Moderate, e.g. unable to print a file or unable to
- compile the software
+ <LI>Moderate, e.g. unable to print a file or unable to compile the software
- <LI>High, e.g. unable to print to a printer or key
- functionality not working
+ <LI>High, e.g. unable to print to a printer or key functionality not working
<LI>Critical, e.g. unable to print at all
</OL>
-<P>Level 4 and 5 trouble reports must be resolved in the next
-software release. Level 2 and 3 trouble reports are scheduled for
-resolution in a specific release at the discretion of the release
-coordinator. Level 1 trouble reports are scheduled for resolution
-in a future feature release.</P>
+<P>Level 4 and 5 trouble reports must be resolved in the next software release. Level 2 and 3 trouble reports are scheduled for resolution in a specific release at the discretion of the release coordinator. Level 1 trouble reports are scheduled for resolution in a future feature release.</P>
<P>The scope of the problem is also determined as:</P>
@@ -485,43 +348,24 @@ in a future feature release.</P>
</OL>
-<LI>Identification
-
-<P>Once the level and scope of the trouble report is determined
-the software sub-system(s) involved with the problem are
-determined. This may involve additional communication with the
-user or vendor to isolate the problem to a specific cause.</P>
+<H3>2. Identification</H3>
-<P>When the sub-system(s) involved have been identified, an
-engineer will then determine the change(s) needed and estimate
-the time required for the change(s).</P>
+<P>Once the level and scope of the trouble report is determined the software sub-system(s) involved with the problem are determined. This may involve additional communication with the user or vendor to isolate the problem to a specific cause.</P>
-<LI>Correction
+<P>When the sub-system(s) involved have been identified, an engineer will then determine the change(s) needed and estimate the time required for the change(s).</P>
-<P>Corrections are scheduled based upon the severity and
-complexity of the problem. Once all changes have been made,
-documented, and tested successfully a new software release
-snapshot is generated. Additional tests are added as necessary
-for proper testing of the changes.</P>
+<H3>3. Correction</H3>
-<LI>Notification
+<P>Corrections are scheduled based upon the severity and complexity of the problem. Once all changes have been made, documented, and tested successfully a new software release snapshot is generated. Additional tests are added as necessary for proper testing of the changes.</P>
-<P>The user or vendor is notified when the fix is available or if
-the problem was caused by user error.</P>
+<H3>4. Notification</H3>
-</OL>
+<P>The user or vendor is notified when the fix is available or if the problem was caused by user error.</P>
<H2 CLASS="title"><A NAME="RELEASES">Release Management</A></H2>
-<P>When testing has been completed successfully, a new source
-package is created using the <VAR>tools/makesrcdist</VAR> script.
-Three types of releases, beta, candidate, and production, are
-created and released to the public using the basic schedule in
-Table 4. At least one beta and one release candidate must be
-created prior to a production release, and there must be at least
-two weeks between the last beta and first candidate and last
-candidate and first production release.</P>
+<P>When testing has been completed successfully, a new source package is created using the <VAR>tools/makesrcdist</VAR> script. Three types of releases - beta, candidate, and production - are created and released to the public using the basic schedule in Table 4. At least one beta and one release candidate must be created prior to a production release, and there must be at least two weeks between the last beta and first candidate and last candidate and first production release.</P>
<DIV CLASS="table"><TABLE SUMMARY="CUPS Basic Release Schedule">
<CAPTION>Table: CUPS Basic Release Schedule</CAPTION>
@@ -560,25 +404,18 @@ candidate and first production release.</P>
<H2 CLASS="title"><A NAME="CODING">Coding Guidelines</A></H2>
-<P>These coding guidelines provide detailed information on source
-file formatting and documentation content and must be applied to
-all C and C++ source files provided with CUPS. Source code for
-other languages should conform to these guidelines as allowed by
-the language.</P>
+<P>These coding guidelines provide detailed information on source file formatting and documentation content and must be applied to all C and C++ source files provided with CUPS. Source code for other languages should conform to these guidelines as allowed by the language.</P>
+
<H3>Source Files</H3>
-<P>All source files names shall be 16 characters or less in
-length to ensure compatibility with older UNIX filesystems.
-Source files containing functions shall have an extension of ".c"
-for ANSI C and ".cxx" for C++ source files. All other "include"
-files shall have an extension of ".h".</P>
+<P>All source files names must be 16 characters or less in length to ensure compatibility with older UNIX filesystems. Source files containing functions have an extension of ".c" for ANSI C and ".cxx" for C++ source files. All other "include" files have an extension of ".h". Tabs are set to 8 characters.</P>
-<P>The top of each source file shall contain a header giving the
-name of the file, the purpose or nature of the source file, the
-copyright and licensing notice, and the functions contained in
-the file. The file name and revision information is provided by
-the Subversion "&#36;Id$" tag:</P>
+<BLOCKQUOTE><B>Note:</B>
+
+<P>The ".cxx" extension is used because it is the only common C++ extension between Linux, OS X, UNIX, and Windows.</P></BLOCKQUOTE>
+
+<P>The top of each source file contains a header giving the name of the file, the purpose or nature of the source file, the copyright and licensing notice, and the functions contained in the file. The file name and revision information is provided by the Subversion "&#36;Id$" tag:</P>
<PRE CLASS="command">
/*
@@ -586,7 +423,7 @@ the Subversion "&#36;Id$" tag:</P>
*
* Description of file contents.
*
- * Copyright 2010 by Apple Inc.
+ * Copyright 2012 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -602,19 +439,13 @@ the Subversion "&#36;Id$" tag:</P>
*/
</PRE>
-<P>For source files that are subject to the Apple OS-Developed
-Software exception, the following additional comment should
-appear after the contact information:</P>
+<P>For source files that are subject to the Apple OS-Developed Software exception, the following additional comment appears after the contact information:</P>
<PRE CLASS="command">
* This file is subject to the Apple OS-Developed Software exception.
</PRE>
-<P>The bottom of each source file shall contain a trailer giving
-the name of the file using the Subversion "&#36;Id$" tag. The
-primary purpose of this is to mark the end of a source file; if
-the trailer is missing it is possible that code has been lost
-near the end of the file:</P>
+<P>The bottom of each source file contains a trailer giving the name of the file using the Subversion "&#36;Id$" tag. The primary purpose of this is to mark the end of a source file; if the trailer is missing it is possible that code has been lost near the end of the file:</P>
<PRE CLASS="command">
/*
@@ -622,22 +453,92 @@ near the end of the file:</P>
*/
</PRE>
+
+<H3>Comments</H3>
+
+<P>All source code utilizes block comments within functions to describe the operations being performed by a group of statements; avoid putting a comment per line unless absolutely necessary, and then consider refactoring the code so that it is not necessary. C source files use the block comment format ("/* comment */") since many vendor C compilers still do not support C99/C++ comments ("// comment"):</P>
+
+<PRE CLASS="command">
+ /*
+ * Clear the state array before we begin...
+ */
+
+ for (i = 0; i &lt; (sizeof(array) / sizeof(sizeof(array[0])); i ++)
+ array[i] = CUPS_STATE_IDLE;
+
+ /*
+ * Wait for state changes on another thread...
+ */
+
+ do
+ {
+ for (i = 0; i &lt; (sizeof(array) / sizeof(sizeof(array[0])); i ++)
+ if (array[i] != CUPS_STATE_IDLE)
+ break;
+
+ if (i == (sizeof(array) / sizeof(array[0])))
+ sleep(1);
+ } while (i == (sizeof(array) / sizeof(array[0])));
+</PRE>
+
+<H3>Indentation</H3>
+
+<P>All code blocks enclosed by brackets begin with the opening brace on a new line. The code then follows starting on a new line after the brace and is indented 2 spaces. The closing brace is then placed on a new line following the code at the original indentation:</P>
+
+<PRE CLASS="command">
+{
+ int i; /* Looping var */
+
+
+ /*
+ * Process foobar values from 0 to 999...
+ */
+
+ for (i = 0; i &lt; 1000; i ++)
+ {
+ do_this(i);
+ do_that(i);
+ }
+}
+</PRE>
+
+<P>Single-line statements following "do", "else", "for", "if", and "while" are indented 2 spaces as well. Blocks of code in a "switch" block are indented 4 spaces after each "case" and "default" case:</P>
+
+<PRE CLASS="command">
+switch (array[i])
+{
+ case CUPS_STATE_IDLE :
+ do_this(i);
+ do_that(i);
+ break;
+ default :
+ do_nothing(i);
+ break;
+}
+</PRE>
+
+
+<H3>Spacing</H3>
+
+<P>A space follows each reserved word such as "if", "while", etc. Spaces are not inserted between a function name and the arguments in parenthesis.</P>
+
+
+<H3>Return Values</H3>
+
+<P>Parenthesis surround values returned from a function:</P>
+
+<PRE CLASS="command">
+return (CUPS_STATE_IDLE);
+</PRE>
+
+
<H3>Functions</H3>
-<P>Functions with a global scope shall have a lowercase prefix
-followed by capitalized words ("cupsDoThis", "cupsDoThat",
-"cupsDoSomethingElse", etc.) Private global functions shall begin
-with a leading underscore ("_cupsDoThis", "_cupsDoThat",
-etc.)</P>
+<P>Functions with a global scope have a lowercase prefix followed by capitalized words, e.g., "cupsDoThis", "cupsDoThat", "cupsDoSomethingElse", etc. Private global functions begin with a leading underscore, e.g., "_cupsDoThis", "_cupsDoThat", etc.</P>
-<P>Functions with a local scope shall be declared "static" and be
-lowercase with underscores between words ("do_this", "do_that",
-"do_something_else", etc.)</P>
+<P>Functions with a local scope are declared "static" with lowercase names and underscores between words, e.g., "do_this", "do_that", "do_something_else", etc.</P>
-<P>Each function shall begin with a comment header describing
-what the function does, the possible input limits (if any), and
-the possible output values (if any), and any special information
-needed:</P>
+<P>Each function begins with a comment header describing what the function does, the possible input limits (if any), and the possible output values (if any), and any special information needed:</P>
<PRE CLASS="command">
/*
@@ -654,100 +555,68 @@ do_this(float x) /* I - Power value (0.0 &lt;= x &lt;= 1.
}
</PRE>
-<P>Return/output values are indicated using an "O" prefix, input
-values are indicated using the "I" prefix, and values that are
-both input and output use the "IO" prefix for the corresponding
-in-line comment.</P>
+<P>Return/output values are indicated using an "O" prefix, input values are indicated using the "I" prefix, and values that are both input and output use the "IO" prefix for the corresponding in-line comment.</P>
-<P>The Mini-XML documentation generator also understands the following
-special text in the function description comment:</P>
+<P>The Mini-XML documentation generator also understands the following special text in the function description comment:</P>
<UL>
- <LI><CODE>@deprecated@</CODE> - Marks the function as
- deprecated (not recommended for new development and
- scheduled for removal)</LI>
+ <LI><CODE>@deprecated@</CODE> - Marks the function as deprecated (not recommended for new development and scheduled for removal)</LI>
- <LI><CODE>@since CUPS <I>version</I>@</CODE> - Marks the
- function as new in the specified version of CUPS.</LI>
+ <LI><CODE>@since CUPS <I>version</I>@</CODE> - Marks the function as new in the specified version of CUPS.</LI>
- <LI><CODE>@private@</CODE> - Marks the function as private.</LI>
+ <LI><CODE>@private@</CODE> - Marks the function as private (same as starting the function name with an underscore)</LI>
</UL>
+
<H3>Variables</H3>
-<P>Variables with a global scope shall be capitalized
-("ThisVariable", "ThatVariable", "ThisStateVariable", etc.) The
-only exception to this rule shall be the CUPS interface library
-global variables which must begin with the prefix "cups"
-("cupsThisVariable", "cupsThatVariable", etc.) Global variables
-shall be replaced by function arguments whenever possible.</P>
+<P>Variables with a global scope are capitalized, e.g., "ThisVariable", "ThatVariable", "ThisStateVariable", etc. Globals in CUPS libraries are either part of the per-thread global values managed by the "_cupsGlobals()" function or are suitably protected for concurrent access. Global variables should be replaced by function arguments whenever possible.</P>
-<P>Variables with a local scope shall be lowercase with
-underscores between words ("this_variable", "that_variable",
-etc.) Any local variables shared by functions within a source
-file shall be declared "static".</P>
+<P>Variables with a local scope are lowercase with underscores between words, e.g., "this_variable", "that_variable", etc. Any "local global" variables shared by functions within a source file are declared "static". As for global variables, local static variables are suitably protected for concurrent access.</P>
-<P>Each variable shall be declared on a separate line and shall
-be immediately followed by a comment block describing the
-variable:</P>
+<P>Each variable is declared on a separate line and is immediately followed by a comment block describing the variable:</P>
<PRE CLASS="command">
-int this_variable; /* The current state of this */
-int that_variable; /* The current state of that */
+int ThisVariable; /* The current state of this */
+static int that_variable; /* The current state of that */
</PRE>
+
<H3>Types</H3>
-<P>All type names shall be lowercase with underscores between
-words and "_t" appended to the end of the name
-("cups_this_type_t", "cups_that_type_t", etc.) Type names must
-start with a prefix, typically "cups" or the name of the program,
-to avoid conflicts with system types. Private type names must
-start with an underscore ("_cups_this_t", "_cups_that_t",
-etc.)</P>
+<P>All type names are lowercase with underscores between words and "_t" appended to the end of the name, e.g., "cups_this_type_t", "cups_that_type_t", etc. Type names start with a prefix, typically "cups" or the name of the program, to avoid conflicts with system types. Private type names start with an underscore, e.g., "_cups_this_t", "_cups_that_t", etc.</P>
-<P>Each type shall have a comment block immediately after the
-typedef:</P>
+<P>Each type has a comment block immediately after the typedef:</P>
<PRE CLASS="command">
-typedef int cups_this_type_t; /* This type is for CUPS foobar options. */
+typedef int cups_this_type_t; /* This type is for CUPS foobar options. */
</PRE>
+
<H3>Structures</H3>
-<P>All structure names shall be lowercase with underscores
-between words and "_s" appended to the end of the name
-("cups_this_s", "cups_that_s", etc.) Structure names must start
-with a prefix, typically "cups" or the name of the program, to
-avoid conflicts with system types. Private structure names must
-start with an underscore ("_cups_this_s", "_cups_that_s",
-etc.)</P>
+<P>All structure names are lowercase with underscores between words and "_s" appended to the end of the name, e.g., "cups_this_s", "cups_that_s", etc. Structure names start with a prefix, typically "cups" or the name of the program, to avoid conflicts with system types. Private structure names start with an underscore, e.g., "_cups_this_s", "_cups_that_s", etc.</P>
-<P>Each structure shall have a comment block immediately after
-the struct and each member shall be documented in accordance with
-the variable naming policy above:</P>
+<P>Each structure has a comment block immediately after the struct and each member is documented similar to the variable naming policy above:</P>
<PRE CLASS="command">
-struct cups_this_struct_s /* This structure is for CUPS foobar options. */
+struct cups_this_struct_s /* This structure is for CUPS foobar options. */
{
- int this_member; /* Current state for this */
- int that_member; /* Current state for that */
+ int this_member; /* Current state for this */
+ int that_member; /* Current state for that */
};
</PRE>
+
<H3>Constants</H3>
-<P>All constant names shall be uppercase with underscored between
-words ("CUPS_THIS_CONSTANT", "CUPS_THAT_CONSTANT", etc.)
-Constants must begin with an uppercase prefix, typically "CUPS"
-or the program name.</P>
+<P>All constant names are uppercase with underscores between words, e.g., "CUPS_THIS_CONSTANT", "CUPS_THAT_CONSTANT", etc. Constants begin with an uppercase prefix, typically "CUPS" or the program name. Private constants start with an underscore, e.g., "_CUPS_THIS_CONSTANT", "_CUPS_THAT_CONSTANT", etc.</P>
-<P>Typed enumerations shall be used whenever possible to allow
-for type checking by the compiler.</P>
+<P>Typed enumerations should be used whenever possible to allow for type checking by the compiler.</P>
-<P>Comment blocks shall immediately follow each constant:</P>
+<P>Comment blocks immediately follow each constant:</P>
<PRE CLASS="command">
enum
@@ -757,124 +626,20 @@ enum
};
</PRE>
-<H3>Code</H3>
-
-<P>All source code shall utilize block comments within functions
-to describe the operations being performed by a group of
-statements; avoid putting a comment per line unless absolutely
-necessary, and then consider refactoring the code so that it is
-not necessary:</P>
-
-<PRE CLASS="command">
-/*
- * Clear the state array before we begin...
- */
-
-for (i = 0; i &lt; (sizeof(array) / sizeof(sizeof(array[0])); i ++)
- array[i] = STATE_IDLE;
-
-/*
- * Wait for state changes...
- */
-
-do
-{
- for (i = 0; i &lt; (sizeof(array) / sizeof(sizeof(array[0])); i ++)
- if (array[i] != STATE_IDLE)
- break;
-
- if (i == (sizeof(array) / sizeof(array[0])))
- sleep(1);
-} while (i == (sizeof(array) / sizeof(array[0])));
-</PRE>
-
-<H3>Indentation</H3>
-
-<P>All code blocks enclosed by brackets shall begin with the
-opening brace on a new line. The code then follows starting on a
-new line after the brace and is indented 2 spaces. The closing
-brace is then placed on a new line following the code at the
-original indentation:</P>
-
-<PRE CLASS="command">
-{
- int i; /* Looping var */
-
- /*
- * Process foobar values from 0 to 999...
- */
-
- for (i = 0; i &lt; 1000; i ++)
- {
- do_this(i);
- do_that(i);
- }
-}
-</PRE>
-
-<P>Single-line statements following "do", "else", "for", "if",
-and "while" shall be indented 2 spaces as well. Blocks of code
-in a "switch" block shall be indented 4 spaces after each "case"
-and "default" case:</P>
-
-<PRE CLASS="command">
-switch (array[i])
-{
- case STATE_IDLE :
- do_this(i);
- do_that(i);
- break;
- default :
- do_nothing(i);
- break;
-}
-</PRE>
-
-<H3>Spacing</H3>
-
-<P>A space shall follow each reserved word ("if", "while", etc.)
-Spaces shall not be inserted between a function name and the
-arguments in parenthesis.</P>
-
-<H3>Return Values</H3>
-
-<P>Parenthesis shall surround values returned from a function
-using "return":</P>
-
-<PRE CLASS="command">
-return (CUPS_STATE_IDLE);
-</PRE>
-
-<H3>Loops</H3>
-
-<P>Whenever convenient loops should count downward to zero to
-improve program performance:</P>
-
-<PRE CLASS="command">
-for (i = sizeof(array) / sizeof(array[0]) - 1; i >= 0; i --)
- array[i] = CUPS_STATE_IDLE;
-</PRE>
<H2 CLASS="title"><A NAME="MAKEFILES">Makefile Guidelines</A></H2>
-<P>The following is a guide to the makefile-based build system
-used by CUPS. These standards have been developed over the years
-to allow CUPS to be built on as many systems and environments as
-possible.</P>
+<P>The following is a guide to the makefile-based build system used by CUPS. These standards have been developed over the years to allow CUPS to be built on as many systems and environments as possible.</P>
+
<H3>General Organization</H3>
-<P>The CUPS source code is organized functionally into a
-top-level makefile, include file, and subdirectories each with
-their own makefile and dependencies files. The ".in" files are
-template files for the <CODE>autoconf</CODE> software and are
-used to generate a static version of the corresponding file.</P>
+<P>The CUPS source code is organized functionally into a top-level makefile, include file, and subdirectories each with their own makefile and dependencies files. The ".in" files are template files for the <CODE>autoconf</CODE> software and are used to generate a static version of the corresponding file.</P>
+
<H3>Makefile Documentation</H3>
-<P>Each make file must start with the standard CUPS header
-containing the Subversion "&#36;Id$" keyword, description of the
-file, and CUPS copyright and license notice:</P>
+<P>Each makefile starts with the standard CUPS header containing the Subversion "&#36;Id$" keyword, description of the file, and CUPS copyright and license notice:</P>
<PRE CLASS="command">
#
@@ -882,7 +647,7 @@ file, and CUPS copyright and license notice:</P>
#
# Makefile for ...
#
-# Copyright 2007 by Apple Inc.
+# Copyright 2012 by Apple Inc.
#
# These coded instructions, statements, and computer programs are the
# property of Apple Inc. and are protected by Federal copyright
@@ -892,7 +657,7 @@ file, and CUPS copyright and license notice:</P>
#
</PRE>
-<P>The end of each makefile must have a comment saying:</P>
+<P>The end of each makefile has a comment saying:</P>
<PRE CLASS="command">
#
@@ -900,28 +665,21 @@ file, and CUPS copyright and license notice:</P>
#
</PRE>
-<P>The purpose of the trailer is to indicate the end of the
-makefile so that truncations are immediately obvious.</P>
+<P>The purpose of the trailer is to indicate the end of the makefile so that truncations are immediately obvious.</P>
+
<H3>Portable Makefile Construction</H3>
-<P>CUPS uses a common subset of make program syntax to ensure
-that the software can be compiled "out of the box" on as many
-systems as possible. The following is a list of assumptions we
-follow when constructing makefiles:</P>
+<P>CUPS uses a common subset of make program syntax to ensure that the software can be compiled "out of the box" on as many systems as possible. The following is a list of assumptions we follow when constructing makefiles:</P>
<UL>
- <LI><b>Targets</b>; we assume that the make program
- supports the notion of simple targets of the form
- "name:" that perform tab-indented commands that follow
- the target, e.g.:
+ <LI><b>Targets</b>; we assume that the make program supports the notion of simple targets of the form "name:" that perform tab-indented commands that follow the target, e.g.:
<PRE CLASS="command">
target:
&rarr; target commands</PRE></LI>
- <LI><b>Dependencies</b>; we assume that the make program
- supports recursive dependencies on targets, e.g.:
+ <LI><b>Dependencies</b>; we assume that the make program supports recursive dependencies on targets, e.g.:
<PRE CLASS="command">
target: foo bar
&rarr; target commands
@@ -935,28 +693,21 @@ bar:
bla:
&rarr; bla commands</PRE></LI>
- <LI><b>Variable Definition</b>; we assume that the make program
- supports variable definition on the command-line or in the makefile
- using the following form:
+ <LI><b>Variable Definition</b>; we assume that the make program supports variable definition on the command-line or in the makefile using the following form:
<PRE CLASS="command">
name=value</PRE>
- <LI><b>Variable Substitution</b>; we assume that the make program
- supports variable substitution using the following forms:
+ <LI><b>Variable Substitution</b>; we assume that the make program supports variable substitution using the following forms:
<UL>
<LI><CODE>$(name)</CODE>; substitutes the value of "name",</LI>
- <LI><CODE>($name:.old=.new)</CODE>; substitutes the value of "name"
- with the filename extensions ".old" changed to ".new",</LI>
- <LI><CODE>$(MAKEFLAGS)</CODE>; substitutes the
- command-line options passed to the program
- without the leading hyphen (-),</LI>
+ <LI><CODE>($name:.old=.new)</CODE>; substitutes the value of "name" with the filename extension ".old" changed to ".new",</LI>
+ <LI><CODE>$(MAKEFLAGS)</CODE>; substitutes the command-line options passed to the program without the leading hyphen (-),</LI>
<LI><CODE>$$</CODE>; substitutes a single <CODE>$</CODE> character,</LI>
<LI><CODE>$&lt;</CODE>; substitutes the current source file or dependency, and</LI>
<LI><CODE>$@</CODE>; substitutes the current target name.</LI>
</UL></LI>
- <LI><b>Suffixes</b>; we assume that the make program
- supports filename suffixes with assumed dependencies, e.g.:
+ <LI><b>Suffixes</b>; we assume that the make program supports filename suffixes with assumed dependencies, e.g.:
<PRE CLASS="command">
.SUFFIXES: .c .o
.c.o:
@@ -968,64 +719,67 @@ name=value</PRE>
include ../Makedefs
include Dependencies</PRE></LI>
- <LI><b>Comments</b>; we assume that comments begin with
- a <CODE>#</CODE> character and proceed to the end of the
- current line.</LI>
+ <LI><b>Comments</b>; we assume that comments begin with a <CODE>#</CODE> character and proceed to the end of the current line.</LI>
- <LI><b>Line Length</b>; we assume that there is no
- practical limit to the length of lines.</LI>
+ <LI><b>Line Length</b>; we assume that there is no practical limit to the length of lines.</LI>
- <LI><b>Continuation of long lines</b>; we assume that
- the <CODE>\</CODE> character may be placed at the end of a
- line to concatenate two or more lines in a
- makefile to form a single long line.</LI>
+ <LI><b>Continuation of long lines</b>; we assume that the <CODE>\</CODE> character may be placed at the end of a line to concatenate two or more lines in a makefile to form a single long line.</LI>
- <LI><b>Shell</b>; we assume a POSIX-compatible shell is
- present on the build system.</LI>
+ <LI><b>Shell</b>; we assume a POSIX-compatible shell is present on the build system.</LI>
</UL>
+
<H3>Standard Variables</H3>
-<P>The following variables are defined in the "Makedefs" file
-generated by the <CODE>autoconf</CODE> software:</P>
+<P>The following variables are defined in the "Makedefs" file generated by the <CODE>autoconf</CODE> software:</P>
<UL>
- <LI><CODE>AR</CODE>; the library archiver command,</LI>
+ <LI><CODE>ALL_CFLAGS</CODE>; the combined C compiler options,</LI>
- <LI><CODE>ARFLAGS</CODE>; options for the library archiver command,</LI>
-
- <LI><CODE>BUILDROOT</CODE>; optional installation prefix,</LI>
+ <LI><CODE>ALL_CXXFLAGS</CODE>; the combined C++ compiler options,</LI>
- <LI><CODE>MAN1EXT</CODE>; extension for man pages in section 1,</LI>
+ <LI><CODE>AMANDIR</CODE>; the administrative man page installation directory (section 8/1m depending on the platform),</LI>
- <LI><CODE>MAN3EXT</CODE>; extension for man pages in section 3,</LI>
+ <LI><CODE>AR</CODE>; the library archiver command,</LI>
- <LI><CODE>MAN5EXT</CODE>; extension for man pages in section 5,</LI>
+ <LI><CODE>ARFLAGS</CODE>; options for the library archiver command,</LI>
- <LI><CODE>MAN7EXT</CODE>; extension for man pages in section 7,</LI>
+ <LI><CODE>AWK</CODE>; the local awk command,</LI>
- <LI><CODE>MAN8DIR</CODE>; subdirectory for man pages in section 8,</LI>
+ <LI><CODE>BINDIR</CODE>; the binary installation directory,</LI>
- <LI><CODE>MAN8EXT</CODE>; extension for man pages in section 8,</LI>
+ <LI><CODE>BUILDROOT</CODE>; optional installation prefix (defaults to DSTROOT),</LI>
<LI><CODE>CC</CODE>; the C compiler command,</LI>
<LI><CODE>CFLAGS</CODE>; options for the C compiler command,</LI>
+ <LI><CODE>CHMOD</CODE>; the chmod command,</LI>
+
<LI><CODE>CXX</CODE>; the C++ compiler command,</LI>
<LI><CODE>CXXFLAGS</CODE>; options for the C++ compiler command,</LI>
- <LI><CODE>DSOCOMMAND</CODE>; the shared library building command,</LI>
+ <LI><CODE>DATADIR</CODE>; the data file installation directory,</LI>
+
+ <LI><CODE>DSO</CODE>; the C shared library building command,</LI>
+
+ <LI><CODE>DSOXX</CODE>; the C++ shared library building command,</LI>
<LI><CODE>DSOFLAGS</CODE>; options for the shared library building command,</LI>
+ <LI><CODE>INCLUDEDIR</CODE>; the public header file installation directory,</LI>
+
<LI><CODE>INSTALL</CODE>; the <CODE>install</CODE> command,</LI>
<LI><CODE>INSTALL_BIN</CODE>; the program installation command,</LI>
+ <LI><CODE>INSTALL_COMPDATA</CODE>; the compressed data file installation command,</LI>
+
+ <LI><CODE>INSTALL_CONFIG</CODE>; the configuration file installation command,</LI>
+
<LI><CODE>INSTALL_DATA</CODE>; the data file installation command,</LI>
<LI><CODE>INSTALL_DIR</CODE>; the directory installation command,</LI>
@@ -1036,77 +790,82 @@ generated by the <CODE>autoconf</CODE> software:</P>
<LI><CODE>INSTALL_SCRIPT</CODE>; the shell script installation command,</LI>
+ <LI><CODE>LD</CODE>; the linker command,</LI>
+
<LI><CODE>LDFLAGS</CODE>; options for the linker,</LI>
+ <LI><CODE>LIBDIR</CODE>; the library installation directory,</LI>
+
<LI><CODE>LIBS</CODE>; libraries for all programs,</LI>
<LI><CODE>LN</CODE>; the <CODE>ln</CODE> command,</LI>
- <LI><CODE>OPTIM</CODE>; common compiler optimization options,</LI>
+ <LI><CODE>MAN1EXT</CODE>; extension for man pages in section 1,</LI>
- <LI><CODE>RM</CODE>; the <CODE>rm</CODE> command,</LI>
+ <LI><CODE>MAN3EXT</CODE>; extension for man pages in section 3,</LI>
- <LI><CODE>SHELL</CODE>; the <CODE>sh</CODE> (POSIX shell) command,</LI>
+ <LI><CODE>MAN5EXT</CODE>; extension for man pages in section 5,</LI>
- <LI><CODE>STRIP</CODE>; the <CODE>strip</CODE> command,</LI>
+ <LI><CODE>MAN7EXT</CODE>; extension for man pages in section 7,</LI>
- <LI><CODE>bindir</CODE>; the binary installation directory,</LI>
+ <LI><CODE>MAN8DIR</CODE>; subdirectory for man pages in section 8,</LI>
+
+ <LI><CODE>MAN8EXT</CODE>; extension for man pages in section 8,</LI>
- <LI><CODE>datadir</CODE>; the data file installation directory,</LI>
+ <LI><CODE>MANDIR</CODE>; the man page installation directory,</LI>
- <LI><CODE>exec_prefix</CODE>; the installation prefix for executable files,</LI>
+ <LI><CODE>OPTIM</CODE>; common compiler optimization options,</LI>
+
+ <LI><CODE>PRIVATEINCLUDE</CODE>; the private header file installation directory,</LI>
- <LI><CODE>libdir</CODE>; the library installation directory,</LI>
+ <LI><CODE>RM</CODE>; the <CODE>rm</CODE> command,</LI>
- <LI><CODE>mandir</CODE>; the man page installation directory,</LI>
+ <LI><CODE>SHELL</CODE>; the <CODE>sh</CODE> (POSIX shell) command,</LI>
- <LI><CODE>prefix</CODE>; the installation prefix for non-executable files, and</LI>
+ <LI><CODE>STRIP</CODE>; the <CODE>strip</CODE> command,</LI>
<LI><CODE>srcdir</CODE>; the source directory.</LI>
</UL>
+
<H3>Standard Targets</H3>
-<P>The following standard targets must be defined in each
-makefile:</P>
+<P>The following standard targets are defined in each makefile:</P>
<UL>
- <LI><CODE>all</CODE>; creates all target programs,
- libraries, and documentation files,</LI>
+ <LI><CODE>all</CODE>; creates all target programs, libraries, and documentation files,</LI>
+
+ <LI><CODE>clean</CODE>; removes all target programs libraries, documentation files, and object files,</LI>
+
+ <LI><CODE>depend</CODE>; generates automatic dependencies for any C or C++ source files (also see <A HREF="#DEPEND_TARGET">"Dependencies"</A>),</LI>
+
+ <LI><CODE>distclean</CODE>; removes autoconf-generated files in addition to those removed by the "clean" target,</LI>
+
+ <LI><CODE>install</CODE>; installs all distribution files in their corresponding locations (also see <A HREF="#INSTALL_TARGET">"Install/Uninstall Support"</A>),</LI>
- <LI><CODE>clean</CODE>; removes all target programs,
- libraries, documentation files, and object files,</LI>
+ <LI><CODE>install-data</CODE>; installs all data files in their corresponding locations (also see <A HREF="#INSTALL_TARGET">"Install/Uninstall Support"</A>),</LI>
- <LI><CODE>depend</CODE>; generates automatic dependencies
- for any C or C++ source files (also see <A
- HREF="#DEPEND_TARGET">"Dependencies"</A>),</LI>
+ <LI><CODE>install-exec</CODE>; installs all executable files in their corresponding locations (also see <A HREF="#INSTALL_TARGET">"Install/Uninstall Support"</A>),</LI>
- <LI><CODE>distclean</CODE>; removes autoconf-generated files
- in addition to those removed by the "clean" target,</LI>
+ <LI><CODE>install-headers</CODE>; installs all include files in their corresponding locations (also see <A HREF="#INSTALL_TARGET">"Install/Uninstall Support"</A>),</LI>
- <LI><CODE>install</CODE>; installs all distribution files in
- their corresponding locations (also see <A
- HREF="#INSTALL_TARGET">"Install/Uninstall Support"</A>), </LI>
+ <LI><CODE>install-libs</CODE>; installs all library files in their corresponding locations (also see <A HREF="#INSTALL_TARGET">"Install/Uninstall Support"</A>),</LI>
- <LI><CODE>uninstall</CODE>; removes all distribution files from
- their corresponding locations (also see <A
- HREF="#INSTALL_TARGET">"Install/Uninstall Support"</A>), and</LI>
+ <LI><CODE>uninstall</CODE>; removes all distribution files from their corresponding locations (also see <A HREF="#INSTALL_TARGET">"Install/Uninstall Support"</A>), and</LI>
</UL>
<H3>Object Files</H3>
-<P>Object files (the result of compiling a C or C++ source file)
-have the extension ".o".</P>
+<P>Object files (the result of compiling a C or C++ source file) have the extension ".o".</P>
+
<H3>Programs</H3>
-<P>Program files are the result of linking object files and
-libraries together to form an executable file. A typical
-program target looks like:</P>
+<P>Program files are the result of linking object files and libraries together to form an executable file. A typical program target looks like:</P>
<PRE CLASS="command">
program: $(OBJS)
@@ -1114,10 +873,10 @@ program: $(OBJS)
&rarr; $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
</PRE>
+
<H3>Static Libraries</H3>
-<P>Static libraries have a prefix of "lib" and the extension
-".a". A typical static library target looks like:</P>
+<P>Static libraries have a prefix of "lib" and the extension ".a". A typical static library target looks like:</P>
<PRE CLASS="command">
libname.a: $(OBJECTS)
@@ -1127,12 +886,10 @@ libname.a: $(OBJECTS)
&rarr; $(RANLIB) $@
</PRE>
+
<H3>Shared Libraries</H3>
-<P>Shared libraries have a prefix of "lib" and the extension
-".dylib", ".sl", ".so", or "_s.a" depending on the operating
-system. A typical shared library is composed of several targets
-that look like:</P>
+<P>Shared libraries have a prefix of "lib" and the extension ".dylib", ".sl", ".so", or "_s.a" depending on the operating system. A typical shared library is composed of several targets that look like:</P>
<PRE CLASS="command">
libname.so: $(OBJECTS)
@@ -1173,46 +930,29 @@ libname_s.a: $(OBJECTS)
<H3>Dependencies</H3>
-<P>Static dependencies are expressed in each makefile following the
-target, for example:</P>
+<P>Static dependencies are expressed in each makefile following the target, for example:</P>
<PRE CLASS="command">
foo: bar
</PRE>
-<P>Static dependencies shall only be used when it is not
-possible to automatically generate them. Automatic dependencies
-are stored in a file named "Dependencies" and included at the
-end of the makefile. The following "depend" target rule shall be
-used to create the automatic dependencies:
+<P>Static dependencies are only used when it is not possible to automatically generate them. Automatic dependencies are stored in a file named "Dependencies" and included at the end of the makefile. The following "depend" target rule is used to create the automatic dependencies:
<PRE CLASS="command">
depend:
-&rarr; $(MAKEDEPEND) -Y -I.. -f Dependencies $(OBJS:.o=.c)
+&rarr; $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
</PRE>
-<P>We only regenerate the automatic dependencies on a Linux
-system and express any non-Linux dependencies statically in the
-makefile.</P>
+<P>We regenerate the automatic dependencies on an OS X system and express any non-OS X dependencies statically in the makefile.</P>
+
<H3><A NAME="TARGET_INSTALL">Install/Uninstall Support</A></H3>
-<P>All makefiles must contain install and uninstall rules which
-install or remove the corresponding software. These rules must
-use the <CODE>$(BUILDROOT)</CODE> variable as a prefix to any
-installation directory so that CUPS can be installed in a
-temporary location for packaging by programs like
-<CODE>rpmbuild</CODE>.</P>
-
-<P>The <CODE>$(INSTALL_BIN)</CODE>, <CODE>$(INSTALL_DATA)</CODE>,
-<CODE>$(INSTALL_DIR)</CODE>, <CODE>$(INSTALL_LIB)</CODE>,
-<CODE>$(INSTALL_MAN)</CODE>, and <CODE>$(INSTALL_SCRIPT)</CODE>
-variables must be used when installing files so that the proper
-ownership and permissions are set on the installed files.</P>
-
-<P>The <CODE>$(RANLIB)</CODE> command must be run on any static
-libraries after installation since the symbol table is
-invalidated when the library is copied on some platforms.</P>
+<P>All makefiles contains install and uninstall rules which install or remove the corresponding software. These rules must use the <CODE>$(BUILDROOT)</CODE> variable as a prefix to any installation directory so that CUPS can be installed in a temporary location for packaging by programs like <CODE>rpmbuild</CODE>.</P>
+
+<P>The <CODE>$(INSTALL_BIN)</CODE>, <CODE>$(INSTALL_COMPDATA)</CODE>, <CODE>$(INSTALL_CONFIG)</CODE>, <CODE>$(INSTALL_DATA)</CODE>, <CODE>$(INSTALL_DIR)</CODE>, <CODE>$(INSTALL_LIB)</CODE>, <CODE>$(INSTALL_MAN)</CODE>, and <CODE>$(INSTALL_SCRIPT)</CODE> variables must be used when installing files so that the proper ownership and permissions are set on the installed files.</P>
+
+<P>The <CODE>$(RANLIB)</CODE> command must be run on any static libraries after installation since the symbol table is invalidated when the library is copied on some platforms.</P>
</BODY>
</HTML>
diff --git a/doc/help/spec-ipp.html b/doc/help/spec-ipp.html
index 98bc0574..27b8fca2 100644
--- a/doc/help/spec-ipp.html
+++ b/doc/help/spec-ipp.html
@@ -8,11 +8,11 @@
</head>
<body>
<!--
- "$Id: spec-ipp.html 9727 2011-04-28 21:20:12Z mike $"
+ "$Id: spec-ipp.html 10424 2012-04-23 17:26:57Z mike $"
CUPS IPP specification for CUPS.
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2007 by Easy Software Products.
These coded instructions, statements, and computer programs are the
@@ -365,7 +365,7 @@ Print-Job request:
<dl>
- <dt>"auth-info" (1setOf text(MAX)):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"auth-info" (1setOf text(MAX)):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute.
@@ -472,7 +472,7 @@ Create-Job request:
<dl>
- <dt>"auth-info" (1setOf text(MAX)):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"auth-info" (1setOf text(MAX)):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute.
@@ -577,7 +577,7 @@ Cancel-Job request:
<dd>The client MUST supply a URI for the specified printer and
a job ID number, or the job URI.
- <dt><span class="info">CUPS 1.4/Mac OS X 10.6</span>"purge-job" (boolean):
+ <dt><span class="info">CUPS 1.4/OS X 10.6</span>"purge-job" (boolean):
<dd>The client OPTIONALLY supplies this attribute. When true,
all job files (history and document) are purged. The default
@@ -632,18 +632,18 @@ Purge-Jobs request:
<dd>The client MUST supply a URI for the specified printer or
"ipp://.../printers" for all printers and classes.
- <dt><span class="info">CUPS 1.2/Mac OS X 10.5</span>"requesting-user-name" (name(MAX)):
+ <dt><span class="info">CUPS 1.2/OS X 10.5</span>"requesting-user-name" (name(MAX)):
<dd>The client OPTIONALLY supplies this attribute to specify whose jobs
jobs are purged or canceled.
- <dt><span class="info">CUPS 1.2/Mac OS X 10.5</span>"my-jobs" (boolean):
+ <dt><span class="info">CUPS 1.2/OS X 10.5</span>"my-jobs" (boolean):
<dd>The client OPTIONALLY supplies this attribute to specify that only
the jobs owned by the requesting user are purged or canceled. The
default is false.
- <dt><span class="info">CUPS 1.2/Mac OS X 10.5</span>"purge-jobs" (boolean):
+ <dt><span class="info">CUPS 1.2/OS X 10.5</span>"purge-jobs" (boolean):
<dd>The client OPTIONALLY supplies this attribute to specify
whether the jobs are purged (true) or just canceled (false).
@@ -754,7 +754,7 @@ Response:
</dl>
-<h3 class='title'><span class='info'>CUPS 1.2/Mac OS X 10.5</span><a
+<h3 class='title'><span class='info'>CUPS 1.2/OS X 10.5</span><a
name='CREATE_PRINTER_SUBSCRIPTION'>Create-Printer-Subscription</a></h3>
<p>The Create-Printer-Subscription operation (0x0016) creates a
@@ -926,7 +926,7 @@ CUPS-Get-Printers request:
attributes as described in section 3.1.4.1 of the IPP Model and
Semantics document.
- <dt>"first-printer-name" (name(127)):<span class='info'>CUPS 1.2/Mac OS X 10.5</span>
+ <dt>"first-printer-name" (name(127)):<span class='info'>CUPS 1.2/OS X 10.5</span>
<dd>The client OPTIONALLY supplies this attribute to
select the first printer that is returned.
@@ -960,7 +960,7 @@ CUPS-Get-Printers request:
responds as if this attribute had been supplied with a value of
'all'.
- <dt>"requested-user-name" (name(127)) : <span class='info'>CUPS 1.2/Mac OS X 10.5</span>
+ <dt>"requested-user-name" (name(127)) : <span class='info'>CUPS 1.2/OS X 10.5</span>
<dd>The client OPTIONALLY supplies a user name that is used to filter
the returned printers.
@@ -1027,7 +1027,7 @@ CUPS-Add-Modify-Printer request:
<dl>
- <dt>"auth-info-required" (1setOf type2 keyword):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"auth-info-required" (1setOf type2 keyword):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies one or more authentication keywords that are required to communicate with the printer/remote queue.
@@ -1190,7 +1190,7 @@ CUPS-Get-Classes request:
attributes as described in section 3.1.4.1 of the IPP Model and
Semantics document.
- <dt>"first-printer-name" (name(127)):<span class='info'>CUPS 1.2/Mac OS X 10.5</span>
+ <dt>"first-printer-name" (name(127)):<span class='info'>CUPS 1.2/OS X 10.5</span>
<dd>The client OPTIONALLY supplies this attribute to
select the first printer that is returned.
@@ -1220,7 +1220,7 @@ CUPS-Get-Classes request:
interested. If the client omits this attribute, the server responds as
if this attribute had been supplied with a value of 'all'.
- <dt>"requested-user-name" (name(127)) : <span class='info'>CUPS 1.2/Mac OS X 10.5</span>
+ <dt>"requested-user-name" (name(127)) : <span class='info'>CUPS 1.2/OS X 10.5</span>
<dd>The client OPTIONALLY supplies a user name that is used to filter
the returned printers.
@@ -1287,7 +1287,7 @@ CUPS-Add-Modify-Class request:
<dl>
- <dt>"auth-info-required" (1setOf type2 keyword):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"auth-info-required" (1setOf type2 keyword):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies one or more authentication keywords that are required to communicate with the printer/remote queue.
@@ -1586,14 +1586,14 @@ CUPS-Get-Devices request:
<dd>The client OPTIONALLY supplies a device class keyword to select
which devices are returned.
- <dt>"exclude-schemes" (1setOf name) :<span class='info'>CUPS 1.4/Mac OS X 10.6</span>
+ <dt>"exclude-schemes" (1setOf name) :<span class='info'>CUPS 1.4/OS X 10.6</span>
<dd>The client OPTIONALLY supplies a set of scheme names that the
requestor does not want to discover. If the client omits this attribute,
the server responds with devices of all schemes specified by
the "include-schemes" attribute.
- <dt>"include-schemes" (1setOf name) :<span class='info'>CUPS 1.4/Mac OS X 10.6</span>
+ <dt>"include-schemes" (1setOf name) :<span class='info'>CUPS 1.4/OS X 10.6</span>
<dd>The client OPTIONALLY supplies a set of scheme names that the
requestor wants to discover. If the client omits this attribute,
@@ -1612,7 +1612,7 @@ CUPS-Get-Devices request:
the client omits this attribute, the server responds as if this
attribute had been supplied with a value of 'all'.
- <dt>"timeout" (integer (1:MAX)) :<span class='info'>CUPS 1.4/Mac OS X 10.6</span>
+ <dt>"timeout" (integer (1:MAX)) :<span class='info'>CUPS 1.4/OS X 10.6</span>
<dd>The client OPTIONALLY supplies this attribute to limit the duration
of the lookup. The default timeout is 15 seconds.
@@ -1669,14 +1669,14 @@ CUPS-Get-PPDs request:
attributes as described in section 3.1.4.1 of the IPP Model and
Semantics document.
- <dt>"exclude-schemes" (1setOf name) :<span class='info'>CUPS 1.4/Mac OS X 10.6</span>
+ <dt>"exclude-schemes" (1setOf name) :<span class='info'>CUPS 1.4/OS X 10.6</span>
<dd>The client OPTIONALLY supplies a set of scheme names that the
requestor does not want to list. If the client omits this attribute,
the server responds with PPDs of all schemes specified by the
"include-schemes" attribute.
- <dt>"include-schemes" (1setOf name) :<span class='info'>CUPS 1.4/Mac OS X 10.6</span>
+ <dt>"include-schemes" (1setOf name) :<span class='info'>CUPS 1.4/OS X 10.6</span>
<dd>The client OPTIONALLY supplies a set of scheme names that the
requestor wants to list. If the client omits this attribute, the server
@@ -1691,27 +1691,27 @@ CUPS-Get-PPDs request:
<dd>The client OPTIONALLY supplies a printer manufacturer to select which PPDs are returned.
- <dt>"ppd-make-and-model" (text(127)):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"ppd-make-and-model" (text(127)):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies a make and model to select which PPDs are returned.
- <dt>"ppd-model-number" (integer):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"ppd-model-number" (integer):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies a model number to select which PPDs are returned.
- <dt>"ppd-natural-language" (naturalLanguage):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"ppd-natural-language" (naturalLanguage):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies a language to select which PPDs are returned.
- <dt>"ppd-product" (text(127)):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"ppd-product" (text(127)):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies a PostScript product string to select which PPDs are returned.
- <dt>"ppd-psversion" (text(127)):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"ppd-psversion" (text(127)):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies a PostScript version string to select which PPDs are returned.
- <dt>"ppd-type" (type1 keyword):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"ppd-type" (type1 keyword):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies a driver type to select which PPDs are returned.
@@ -1813,7 +1813,7 @@ CUPS-Move-Job Response:
</dl>
-<h3 class='title'><span class='info'>CUPS 1.2/Mac OS X 10.5</span><a name='CUPS_AUTHENTICATE_JOB'>CUPS-Authenticate-Job Operation</a></h3>
+<h3 class='title'><span class='info'>CUPS 1.2/OS X 10.5</span><a name='CUPS_AUTHENTICATE_JOB'>CUPS-Authenticate-Job Operation</a></h3>
<p>The CUPS-Authenticate-Job operation (0x400E) authenticates a print job for
printing, releasing the job if it is held. Typically this is used when printing
@@ -1848,11 +1848,11 @@ CUPS-Authenticate-Job request:
<dl>
- <dt>"auth-info" (1setOf text(MAX)):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"auth-info" (1setOf text(MAX)):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute.
- <dt>"job-hold-until" (keyword | name(MAX)):<span class='info'>CUPS 1.3/Mac OS X 10.5</span>
+ <dt>"job-hold-until" (keyword | name(MAX)):<span class='info'>CUPS 1.3/OS X 10.5</span>
<dd>The client OPTIONALLY supplies a new job-hold-until value for the
job. If specified and not the "no-hold" value, the job is held instead
@@ -1891,7 +1891,7 @@ CUPS-Authenticate-Job Response:
</dl>
-<h3 class='title'><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='CUPS_GET_PPD'>CUPS-Get-PPD Operation</a></h3>
+<h3 class='title'><span class='info'>CUPS 1.3/OS X 10.5</span><a name='CUPS_GET_PPD'>CUPS-Get-PPD Operation</a></h3>
<p>The CUPS-Get-PPD operation (0x400F) gets a PPD file from the
server. The PPD file can be specified using a <tt>ppd-name</tt>
@@ -1961,7 +1961,7 @@ CUPS-Get-PPD Response:
<p>If the status code is <tt>successful-ok</tt>, the PPD file follows
the end of the IPP response.</p>
-<h3 class='title'><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='CUPS_GET_DOCUMENT'>CUPS-Get-Document Operation</a></h3>
+<h3 class='title'><span class='info'>CUPS 1.4/OS X 10.6</span><a name='CUPS_GET_DOCUMENT'>CUPS-Get-Document Operation</a></h3>
<p>The CUPS-Get-Document operation (0x4027) gets a document file from a
job on the server. The document file is specified using the
@@ -2078,7 +2078,7 @@ one of the following:
</ul>
-<h4><a name="device-id">device-id (text(127))</a><span class="info">CUPS 1.2/Mac OS X 10.5</span></h4>
+<h4><a name="device-id">device-id (text(127))</a><span class="info">CUPS 1.2/OS X 10.5</span></h4>
<p>The device-id attribute specifies the IEEE-1284 device ID
string for the device.</p>
@@ -2088,7 +2088,7 @@ string for the device.</p>
<p>The device-info attribute specifies a human-readable string describing
the device, e.g. "Parallel Port #1".
-<h4><a name="device-location">device-location (text(127))</a><span class="info">CUPS 1.4/Mac OS X 10.6</span></h4>
+<h4><a name="device-location">device-location (text(127))</a><span class="info">CUPS 1.4/OS X 10.6</span></h4>
<p>The device-location attribute specifies the physical location of the
printer.
@@ -2148,89 +2148,22 @@ of the device-class attribute:
<h3 class='title'><a name='JOB_TEMPLATE_ATTRIBUTES'>Job Template Attributes</a></h3>
-<h4><a name="auth-info">auth-info (1setOf text(MAX))</a><span class="info">CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="auth-info">auth-info (1setOf text(MAX))</a><span class="info">CUPS 1.3/OS X 10.5</span></h4>
<p>The auth-info attribute specifies the authentication information to use when printing to a remote device. The order and content of each text value is specifed by the <a href="#auth-info-required">auth-info-required</a> printer attribute.
-<h4><a name="blackplot">blackplot (boolean)</a></h4>
-
-<p>The blackplot attribute specifies whether HP-GL/2 plot files should be
-rendered entirely in black ink (blackplot=true) or using the colors and shades
-specified in the file (blackplot=false). The default value is false.
-
-<h4><a name="brightness">brightness (integer(0:200))</a><span class="info">Deprecated</span></h4>
-
-<p>The brightness attribute specifies the overall brightness of the printed
-output in percent. A brightness of 100 is normal, while 200 is twice as
-bright and 50 is half as bright. The default value is 100.
-
-<p>Brightness is applied to the Cyan, Magenta, Yellow, and Black values using
-the function "f(x) = brightness / 100 * x".
-
-<blockquote><b>Note:</b>
-
-<p>This attribute is deprecated and will be removed from a future CUPS
-release.</p>
-
-</blockquote>
-
-<h4><a name="columns">columns (integer(1:4))</a> <span class='info'>Deprecated</span></h4>
-
-<p>The columns attribute specifies the number of columns to generate when
-printing text files. The default value is 1.
-
<h4><a name="cpi">cpi (type2 enum)</a></h4>
<p>The cpi attribute specifies the number of characters per inch when
printing text files. Only the values 10, 12, and 17 are currently
supported. The default value is 10.
-<h4><a name="document-count">document-count (integer(1:MAX))</a></h4>
-
-<p>The document-count attribute specifies the number of documents that
-are present in the job.
-
-<h4><a name="fit-to-page">fit-to-page (boolean)</a><span class="info">CUPS 1.4/Mac OS X 10.6</span></h4>
+<h4><a name="fit-to-page">fit-to-page (boolean)</a><span class="info">CUPS 1.4/OS X 10.6</span></h4>
<p>The fit-to-page attribute specifies whether to scale documents to fit on the
selected media (fit-to-page=true) or use the physical size specified in the
document (fit-to-page=false). The default value is false.
-<h4><a name="fitplot">fitplot (boolean)</a><span class="info">Deprecated</span></h4>
-
-<p>The fitplot attribute specifies whether to scale HP-GL/2 plot files to
-fit on the selected media (fitplot=true) or use the physical scale specified
-in the plot file (fitplot=false). The default value is false.
-
-<h4><a name="gamma">gamma (integer(1:10000))</a><span class="info">Deprecated</span></h4>
-
-<p>The gamma attribute specifies the luminance correction for the output.
-A value of 1000 specifies no correction, while values of 2000 and 500 will
-generate lighter and darker output, respectively. The default value is
-1000.
-
-<p>Gamma is applied to the Red, Green, and Blue values (or luminance for
-grayscale output) using the function "f(x) = x<sup>(1000/gamma)</sup>".
-
-<blockquote><b>Note:</b>
-
-<p>This attribute is deprecated and will be removed from a future CUPS
-release.</p>
-
-</blockquote>
-
-<h4><a name="hue">hue (integer(-180:180))</a><span class="info">Deprecated</span></h4>
-
-<p>The hue attribute specifies a color hue rotation when printing image
-files. The default value is 0.
-
-<blockquote><b>Note:</b>
-
-<p>This attribute is deprecated and will be removed from a future CUPS
-release.</p>
-
-</blockquote>
-
<h4><a name="job-billing">job-billing (text(MAX))</a><span class='info'>CUPS 1.1</span></h4>
<p>The job-billing attribute provides a text value to associate with a job
@@ -2245,17 +2178,17 @@ Universal Coordinated Time (UTC) and <i>not</i> in the local time zone. If the
specified time is less than the current time, the job is held until the
next day.
-<h4><a name="job-media-progress">job-media-progress (integer(0:100))</a><span class='info'>CUPS 1.4/Mac OS X 10.6</span></h4>
+<h4><a name="job-media-progress">job-media-progress (integer(0:100))</a><span class='info'>CUPS 1.4/OS X 10.6</span></h4>
<p>The job-media-progress attribute specifies the percentage of completion of
the current page. It is only valid when the job-state attribute has the
"processing" value (5).</p>
-<h4><a name="job-printer-state-message">job-printer-state-message (text(MAX))</a><span class='info'>CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="job-printer-state-message">job-printer-state-message (text(MAX))</a><span class='info'>CUPS 1.3/OS X 10.5</span></h4>
<p>The job-printer-state-message attribute provides the last known value of the printer-state-message attribute for the printer that processed (or is processing) the job.</p>
-<h4><a name="job-printer-state-reasons">job-printer-state-reasons (1setOf type2 keyword)</a><span class='info'>CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="job-printer-state-reasons">job-printer-state-reasons (1setOf type2 keyword)</a><span class='info'>CUPS 1.3/OS X 10.5</span></h4>
<p>The job-printer-state-reasons attribute provides the last known value of the printer-state-reasons attribute for the printer that processed (or is processing) the job.</p>
@@ -2293,16 +2226,8 @@ The default value is 6.
their X axis, which is useful for printing transfer images on
special media. The default value is false.
-<h4><a name="natural-scaling">natural-scaling (integer(1:1000))</a><span class='info'>CUPS 1.1.9</span></h4>
-<p>The natural-scaling attribute specifies the scaling of image files with
-respect to the natural image size. A value of 100 specifies that the image
-file should exactly the natural size, while 50 is half the natural size
-and 200 is twice the natural size. The default value is 100.
+<h4><a name="number-up-layout">number-up-layout (type2 keyword)</a><span class='info'>Deprecated/Introduced in CUPS 1.1.15</span></h4>
-<p>The ppi option can be used to override the natural resolution of the
-image, which controls the natural size.
-
-<h4><a name="number-up-layout">number-up-layout (type2 keyword)</a><span class='info'>CUPS 1.1.15</span></h4>
<p>The number-up-layout attribute specifies the order each input
page is placed on each output page. The following keywords are
presently defined:
@@ -2327,6 +2252,12 @@ presently defined:
</ul>
+<blockquote><b>Note:</b>
+
+<p>This attribute is deprecated in favor of the PWG presentation-direction-number-up attribute and will be removed in a future release.</p>
+
+</blockquote>
+
<h4><a name="page-border">page-border (type2 keyword)</a><span class='info'>CUPS 1.1.15</span></h4>
<p>The page-border attribute specifies whether a border is
draw around each page. The following keywords are presently
@@ -2346,23 +2277,23 @@ defined:
</ul>
-<h4><a name="page-bottom">page-bottom (integer(0:MAX))</a></h4>
+<h4><a name="page-bottom">page-bottom (integer(0:MAX))</a><span class="info">Deprecated</span></h4>
<p>The page-bottom attribute specifies the bottom margin in points (72 points
equals 1 inch). The default value is the device physical margin.
-<h4><a name="page-label">page-label (text(MAX))</a><span class='info'>CUPS 1.1.7</span></h4>
+<h4><a name="page-label">page-label (text(MAX))</a><span class='info'>Deprecated</span></h4>
<p>The page-label attribute provides a text value to place in
the header and footer on each page. If a classification level is
set on the server, then this classification is printed before
the page label.
-<h4><a name="page-left">page-left (integer(0:MAX))</a></h4>
+<h4><a name="page-left">page-left (integer(0:MAX))</a><span class="info">Deprecated</span></h4>
<p>The page-left attribute specifies the left margin in points (72 points
equals 1 inch). The default value is the device physical margin.
-<h4><a name="page-right">page-right (integer(0:MAX))</a></h4>
+<h4><a name="page-right">page-right (integer(0:MAX))</a><span class="info">Deprecated</span></h4>
<p>The page-right attribute specifies the right margin in points (72 points
equals 1 inch). The default value is the device physical margin.
@@ -2373,84 +2304,18 @@ equals 1 inch). The default value is the device physical margin.
supported keywords are "all", "even", and "odd". The default value is
"all".
-<h4><a name="page-top">page-top (integer(0:MAX))</a></h4>
+<h4><a name="page-top">page-top (integer(0:MAX))</a><span class="info">Deprecated</span></h4>
<p>The page-top attribute specifies the top margin in points (72 points
equals 1 inch). The default value is the device physical margin.
-<h4><a name="penwidth">penwidth (integer(0:MAX))</a></h4>
-
-<p>The penwidth attribute specifies the default pen width in micrometers
-when printing HP-GL/2 plot files. The default value is 1000 (1 millimeter).
-
-<h4><a name="position">position (type2 keyword)</a></h4>
-
-<p>The position attribute specifies the location of image files on the
-media. The following keyword values are recognized:
-
-<ul>
-
- <li><CODE>center</CODE> - Center the image on the page (default)
-
- <li><CODE>top</CODE> - Print the image centered at the top of the page
-
- <li><CODE>left</CODE> - Print the image centered on the left of page
-
- <li><CODE>right</CODE> - Print the image centered on the right of the page
-
- <li><CODE>top-left</CODE> - Print the image at the top left corner of
- the page
-
- <li><CODE>top-right</CODE> - Print the image at the top right corner of
- the page
-
- <li><CODE>bottom</CODE> - Print the image centered at the bottom of
- the page
-
- <li><CODE>bottom-left</CODE> - Print the image at the bottom left
- corner of the page
-
- <li><CODE>bottom-right</CODE> - Print the image at the bottom right
- corner of the page
-
-</ul>
-
-<h4><a name="ppi">ppi (integer(1:MAX))</a></h4>
-
-<p>The ppi attribute specifies the resolution of an image file in pixels
-per inch. The default value is the resolution included with the file or
-128 if no resolution information is available.
-
-<h4><a name="prettyprint">prettyprint (boolean)</a></h4>
+<h4><a name="prettyprint">prettyprint (boolean)</a><span class="info">Deprecated</span></h4>
<p>The prettyprint attribute specifies whether text files should be printed
with a shaded header and keyword highlighting (prettyprint=true) or without
additional formatting (prettyprint=false). The default value is false.
-<h4><a name="saturation">saturation (integer(0:200))</a><span class="info">Deprecated</span></h4>
-
-<p>The saturation attribute specifies the color saturation when
-printing image files. A saturation of 100 is normal, while values of 50
-and 200 will be half and twice as colorful, respectively. The default
-value is 100.
-
-<blockquote><b>Note:</b>
-
-<p>This attribute is deprecated and will be removed from a future CUPS
-release.</p>
-
-</blockquote>
-
-<h4><a name="scaling">scaling (integer(1:1000))</a></h4>
-
-<p>The scaling attribute specifies the scaling of image files with
-respect to the selected media. A value of 100 specifies that the image
-file should fit 100% of the page, or as much as possible given the
-image dimensions. The default value is unspecified.
-
-<p>The scaling attribute overrides the ppi attribute if specified.
-
-<h4><a name="wrap">wrap (boolean)</a></h4>
+<h4><a name="wrap">wrap (boolean)</a><span class="info">Deprecated</span></h4>
<p>The wrap attribute specifies whether long lines should be wrapped
(wrap=true) or not (wrap=false) when printing text files. The default
@@ -2477,7 +2342,7 @@ name of the PPD file (the NickName attribute in the PPD file). If the
make and model is not specified in the PPD file then the ModelName or
ShortNickName attributes are used instead.
-<h4><a name="ppd-model-number">ppd-model-number (integer)</a><span class="info">CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="ppd-model-number">ppd-model-number (integer)</a><span class="info">CUPS 1.3/OS X 10.5</span></h4>
<p>The ppd-model-number attribute provides the <tt>cupsModelNumber</tt> value from the PPD file.
@@ -2495,11 +2360,11 @@ language is unknown or undefined then "en" (English) is assumed.
<p>The ppd-product attribute specifies the Product attribute values in the PPD file.
-<h4><a name="ppd-psversion">ppd-psversion (1setOf text(127))</a><span class="info">CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="ppd-psversion">ppd-psversion (1setOf text(127))</a><span class="info">CUPS 1.3/OS X 10.5</span></h4>
<p>The ppd-product attribute specifies the PSVersion attribute values in the PPD file.
-<h4><a name="ppd-type">ppd-type (type1 keyword)</a><span class="info">CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="ppd-type">ppd-type (type1 keyword)</a><span class="info">CUPS 1.3/OS X 10.5</span></h4>
<p>The ppd-type attribute specifies the type of driver described by the PPD file:</p>
@@ -2520,7 +2385,7 @@ language is unknown or undefined then "en" (English) is assumed.
<h3 class='title'><a name='PRINTER_ATTRIBUTES'>Printer Attributes</a></h3>
-<h4><a name="auth-info-required">auth-info-required (1setOf type2 keyword)</a><span class="info">CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="auth-info-required">auth-info-required (1setOf type2 keyword)</a><span class="info">CUPS 1.3/OS X 10.5</span></h4>
<p>The auth-info-required attribute specifies the authentication information that is required for printing a job. The following keywords are recognized:</p>
@@ -2560,26 +2425,26 @@ the system.
<p>The job-sheets-supported attribute specifies the available banner files.
There will always be at least one banner file available called "none".
-<h4><a name="marker-change-time">marker-change-time (integer)</a><span class='info'>CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="marker-change-time">marker-change-time (integer)</a><span class='info'>CUPS 1.3/OS X 10.5</span></h4>
<p>The marker-change-time attribute specifies the printer-up-time value when
the last change to the marker-colors, marker-levels, marker-message,
marker-names, or marker-types attributes was made.</p>
-<h4><a name="marker-colors">marker-colors (1setof name(MAX))</a><span class='info'>CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="marker-colors">marker-colors (1setof name(MAX))</a><span class='info'>CUPS 1.3/OS X 10.5</span></h4>
<p>The marker-colors attribute specifies the color(s) for each supply in the
printer. It is only available when the driver provides supply levels. The
color is either "none" or one or more hex-encoded sRGB colors of the form
"#RRGGBB".</p>
-<h4><a name="marker-high-levels">marker-high-levels (1setof integer(0:100))</a><span class='info'>CUPS 1.4/Mac OS X 10.6</span></h4>
+<h4><a name="marker-high-levels">marker-high-levels (1setof integer(0:100))</a><span class='info'>CUPS 1.4/OS X 10.6</span></h4>
<p>The marker-high-levels attribute specifies the supply levels that indicate
a near-full condition. A value of 100 should be used for supplies that are
consumed/emptied, e.g. ink cartridges.</p>
-<h4><a name="marker-levels">marker-levels (1setof integer(-3:100))</a><span class='info'>CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="marker-levels">marker-levels (1setof integer(-3:100))</a><span class='info'>CUPS 1.3/OS X 10.5</span></h4>
<p>The marker-levels attribute specifies the current supply levels for the
printer. It is only available when the driver provides supply levels. A
@@ -2587,24 +2452,24 @@ value of -1 indicates the level is unavailable, -2 indicates unknown, and -3
indicates the level is unknown but has not yet reached capacity. Values from 0
to 100 indicate the corresponding percentage.</p>
-<h4><a name="marker-low-levels">marker-low-levels (1setof integer(0:100))</a><span class='info'>CUPS 1.4/Mac OS X 10.6</span></h4>
+<h4><a name="marker-low-levels">marker-low-levels (1setof integer(0:100))</a><span class='info'>CUPS 1.4/OS X 10.6</span></h4>
<p>The marker-low-levels attribute specifies the supply levels that indicate
a near-empty condition. A value of 0 should be used for supplies that are
filled, e.g. waste ink tanks.</p>
-<h4><a name="marker-message">marker-message (text(MAX))</a><span class='info'>CUPS 1.4/Mac OS X 10.6</span></h4>
+<h4><a name="marker-message">marker-message (text(MAX))</a><span class='info'>CUPS 1.4/OS X 10.6</span></h4>
<p>The marker-message attribute provides a human-readable status message
for the current supply levels, e.g. "12 pages of ink remaining." It is only
available when the driver provides supply levels.</p>
-<h4><a name="marker-names">marker-names (1setof name(MAX))</a><span class='info'>CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="marker-names">marker-names (1setof name(MAX))</a><span class='info'>CUPS 1.3/OS X 10.5</span></h4>
<p>The marker-names attribute specifies the name(s) for each supply in the
printer. It is only available when the driver provides supply levels.</p>
-<h4><a name="marker-types">marker-types (1setof type3 keyword)</a><span class='info'>CUPS 1.3/Mac OS X 10.5</span></h4>
+<h4><a name="marker-types">marker-types (1setof type3 keyword)</a><span class='info'>CUPS 1.3/OS X 10.5</span></h4>
<p>The marker-types attribute specifies the type(s) of each supply in the
printer. It is only available when the driver provides supply levels. The
@@ -2683,13 +2548,13 @@ to this printer. The default port monitor is "none".
<p>The port-monitor-supported attribute specifies the available port monitors.
-<h4><a name="printer-commands">printer-commands (1setOf Type3 keyword)</a><span class='info'>CUPS 1.4/Mac OS X 10.6</span></h4>
+<h4><a name="printer-commands">printer-commands (1setOf Type3 keyword)</a><span class='info'>CUPS 1.4/OS X 10.6</span></h4>
<p>The printer-commands attribute specifies the commands that are supported
by the CUPS command file filter. The keyword "none" indicates that no commands
are supported.</p>
-<h4><a name="printer-dns-sd-name">printer-dns-sd-name (name(MAX) | noValue)</a><span class='info'>CUPS 1.4/Mac OS X 10.6</span></h4>
+<h4><a name="printer-dns-sd-name">printer-dns-sd-name (name(MAX) | noValue)</a><span class='info'>CUPS 1.4/OS X 10.6</span></h4>
<p>The printer-dns-sd-name attribute specifies the registered DNS-SD service
name for the printer. If the printer is not being shared using this protocol,
@@ -2709,10 +2574,10 @@ and the following CUPS-specific keywords:</p>
permissions. CUPS will not execute programs with world write permissions
or setuid programs. When run as root (the default), CUPS also does not
execute programs that are not owned by root.
- <span class='info'>CUPS 1.4/Mac OS X 10.6</span></li>
+ <span class='info'>CUPS 1.4/OS X 10.6</span></li>
<li><tt>cups-missing-filter-warning</tt> - a filter or backend is not
- installed. <span class='info'>CUPS 1.4/Mac OS X 10.6</span></li>
+ installed. <span class='info'>CUPS 1.4/OS X 10.6</span></li>
</ul>
diff --git a/doc/help/spec-postscript.html b/doc/help/spec-postscript.html
index 3aa99c41..8a84273c 100644
--- a/doc/help/spec-postscript.html
+++ b/doc/help/spec-postscript.html
@@ -8,11 +8,11 @@
</head>
<body>
<!--
- "$Id: spec-postscript.html 9727 2011-04-28 21:20:12Z mike $"
+ "$Id: spec-postscript.html 10424 2012-04-23 17:26:57Z mike $"
CUPS PostScript file specification for CUPS.
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 2006 by Easy Software Products.
These coded instructions, statements, and computer programs are the
@@ -39,7 +39,7 @@ output will work reliably.</p>
de-facto standard print job file format/language for UNIX-based
applications, it is slowly being phased out in favor of Adobe's
Portable Document Format ("PDF") which offers many advantages
-over PostScript. Mac OS X uses PDF as the primary print job file
+over PostScript. OS X uses PDF as the primary print job file
format and Linux is making the transition. Both PostScript and
PDF are complex formats, and we highly recommend using high-level
toolkits whenever possible to create your print jobs.</blockquote>
diff --git a/doc/help/spec-ppd.html b/doc/help/spec-ppd.html
index f92725d8..21433684 100644
--- a/doc/help/spec-ppd.html
+++ b/doc/help/spec-ppd.html
@@ -341,7 +341,7 @@ div.contents ul.subcontents li {
<body>
<div class='body'>
<!--
- "$Id: spec-ppd.html 9813 2011-06-01 17:00:27Z mike $"
+ "$Id: spec-ppd.html 10441 2012-04-30 20:59:09Z mike $"
PPD extension documentation for CUPS.
@@ -390,13 +390,14 @@ div.contents ul.subcontents li {
<li><a href="#cupsUIResolver">cupsUIResolver</a></li>
</ul></li>
<li><a href="#I18N">Globalized PPD Support</a></li>
-<li><a href="#OPTIONS">CUPS 1.3/Mac OS X 10.6Custom Options</a></li>
+<li><a href="#OPTIONS">CUPS 1.3/OS X 10.6Custom Options</a></li>
<li><a href="#RASTERPS">Writing PostScript Option Commands for Raster Drivers</a></li>
<li><a href="#MEDIA">Media Keywords</a><ul class="subcontents">
<li><a href="#cupsMediaQualifier2">cupsMediaQualifier2</a></li>
<li><a href="#cupsMediaQualifier3">cupsMediaQualifier3</a></li>
<li><a href="#cupsMinSize">cupsMinSize</a></li>
<li><a href="#cupsMaxSize">cupsMaxSize</a></li>
+ <li><a href="#cupsPageSizeCategory">cupsPageSizeCategory</a></li>
</ul></li>
<li><a href="#ATTRIBUTES">General Attributes</a><ul class="subcontents">
<li><a href="#cupsBackSide">cupsBackSide</a></li>
@@ -413,6 +414,7 @@ div.contents ul.subcontents li {
<li><a href="#cupsManualCopies">cupsManualCopies</a></li>
<li><a href="#cupsMarkerName">cupsMarkerName</a></li>
<li><a href="#cupsMarkerNotice">cupsMarkerNotice</a></li>
+ <li><a href="#cupsMaxCopies">cupsMaxCopies</a></li>
<li><a href="#cupsModelNumber">cupsModelNumber</a></li>
<li><a href="#cupsPJLCharset">cupsPJLCharset</a></li>
<li><a href="#cupsPJLDisplay">cupsPJLDisplay</a></li>
@@ -422,8 +424,9 @@ div.contents ul.subcontents li {
<li><a href="#cupsSingleFile">cupsSingleFile</a></li>
<li><a href="#cupsSNMPSupplies">cupsSNMPSupplies</a></li>
<li><a href="#cupsVersion">cupsVersion</a></li>
+ <li><a href="#JCLToPDFInterpreter">JCLToPDFInterpreter</a></li>
</ul></li>
-<li><a href="#MACOSX">Mac OS X Attributes</a><ul class="subcontents">
+<li><a href="#MACOSX">OS X Attributes</a><ul class="subcontents">
<li><a href="#APDialogExtension">APDialogExtension</a></li>
<li><a href="#APDuplexRequiresFlippedMargin">APDuplexRequiresFlippedMargin</a></li>
<li><a href="#APHelpBook">APHelpBook</a></li>
@@ -469,11 +472,11 @@ LINE-END = CR / LF / CR LF
<p>CUPS supports several methods of auto-configuration via PPD keywords.</p>
-<h3><span class='info'>Mac OS X 10.5</span><a name='APAutoSetupTool'>APAutoSetupTool</a></h3>
+<h3><span class='info'>OS X 10.5</span><a name='APAutoSetupTool'>APAutoSetupTool</a></h3>
<p class='summary'>*APAutoSetupTool: "/LibraryPrinters/vendor/filename"</p>
-<p>This Mac OS X keyword defines a program that sets the default option choices. It is run when a printer is added from the <var>Add Printer</var> window or the <var>Nearby Printers</var> list in the <var>Print</var> dialog.</p>
+<p>This OS X keyword defines a program that sets the default option choices. It is run when a printer is added from the <var>Add Printer</var> window or the <var>Nearby Printers</var> list in the <var>Print</var> dialog.</p>
<p>The program is provided with two arguments: the printer's device URI and the PPD file to be used for the printer. The program must write an updated PPD file to stdout.</p>
@@ -484,7 +487,7 @@ LINE-END = CR / LF / CR LF
*APAutoSetupTool: "/Library/Printers/vendor/Tools/autosetuptool"
</pre>
-<h3><span class='info'>Mac OS X 10.2/CUPS 1.4</span><a name='QUERYKEYWORD'>?MainKeyword</a></h3>
+<h3><span class='info'>OS X 10.2/CUPS 1.4</span><a name='QUERYKEYWORD'>?MainKeyword</a></h3>
<p class='summary'>*?<i>MainKeyword</i>: "<br>
PostScript query code that writes a message using the = operator...<br>
@@ -513,7 +516,7 @@ LINE-END = CR / LF / CR LF
*CloseUI: OptionDuplex
</pre>
-<h3><span class='info'>Mac OS X 10.4/CUPS 1.5</span><a name='OID'>OIDMainKeyword</a></h3>
+<h3><span class='info'>OS X 10.4/CUPS 1.5</span><a name='OID'>OIDMainKeyword</a></h3>
<p class='summary'>*?OID<i>MainKeyword</i>: ".n.n.n..."<br>
*OID<i>MainKeyword</i> <i>OptionKeyword1</i>: "value"<br>
@@ -548,7 +551,7 @@ LINE-END = CR / LF / CR LF
<p class='summary'>*cupsColorProfile Resolution/MediaType: "density gamma m00 m01 m02 m10 m11 m12 m20 m21 m22"</p>
-<p>This string keyword specifies an sRGB-based color profile consisting of gamma and density controls and a 3x3 CMY color transform matrix. <em>This keyword is not supported on Mac OS X.</em></p>
+<p>This string keyword specifies an sRGB-based color profile consisting of gamma and density controls and a 3x3 CMY color transform matrix. <em>This keyword is not supported on OS X.</em></p>
<p>The <i>Resolution</i> and <i>MediaType</i> values may be "-" to act as a wildcard. Otherwise they must match one of the <tt>Resolution</tt> or <tt>MediaType</tt> option keywords defined in the PPD file.</p>
@@ -581,7 +584,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</pre>
-<h3><span class='info'>Mac OS X 10.3/CUPS 1.2</span><a name='cupsICCProfile'>cupsICCProfile</a></h3>
+<h3><span class='info'>OS X 10.3/CUPS 1.2</span><a name='cupsICCProfile'>cupsICCProfile</a></h3>
<p class='summary'>*cupsICCProfile ColorModel.MediaType.Resolution/Description: "filename"</p>
@@ -620,22 +623,22 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*cupsICCQualifier3: Resolution
</pre>
-<h3><span class='info'>Mac OS X 10.4</span><a name='APCustom'>Custom Color Matching Support</a></h3>
+<h3><span class='info'>OS X 10.4</span><a name='APCustom'>Custom Color Matching Support</a></h3>
<p class='summary'>*<a href='#APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a>: true<br>
*<a href='#APCustomColorMatchingName'>APCustomColorMatchingName</a> name/text: ""<br>
*<a href='#APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a>: profile<br>
*<a href='#APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a>: profile</p>
-<p>These keywords tell the Mac OS X raster filters that the printer driver provides its own custom color matching and that generic color profiles should be used when generating 1-, 3-, and 4-component raster data as requested by the driver. The <tt>APCustomColorMatchingProfile</tt> and <tt>APDefaultColorMatchingProfile</tt> keywords specify alternate color profiles (sRGB or AdobeRGB) to use for 3-color (RGB) raster data.</p>
+<p>These keywords tell the OS X raster filters that the printer driver provides its own custom color matching and that generic color profiles should be used when generating 1-, 3-, and 4-component raster data as requested by the driver. The <tt>APCustomColorMatchingProfile</tt> and <tt>APDefaultColorMatchingProfile</tt> keywords specify alternate color profiles (sRGB or AdobeRGB) to use for 3-color (RGB) raster data.</p>
<blockquote><b>Note:</b>
-<p>Prior to Mac OS X 10.6, the default RGB color space was Apple's "GenericRGB". The new default in Mac OS X 10.6 and later is "sRGB". For more information, see <a href="http://support.apple.com/kb/HT3712">"Mac OS X v10.6: About gamma 2.2"</a> on Apple's support site.</p>
+<p>Prior to OS X 10.6, the default RGB color space was Apple's "GenericRGB". The new default in OS X 10.6 and later is "sRGB". For more information, see <a href="http://support.apple.com/kb/HT3712">"OS X v10.6: About gamma 2.2"</a> on Apple's support site.</p>
</blockquote>
-<h4><span class='info'>Mac OS X 10.5</span><a name='APCustomColorMatchingName'>APCustomColorMatchingName</a></h4>
+<h4><span class='info'>OS X 10.5</span><a name='APCustomColorMatchingName'>APCustomColorMatchingName</a></h4>
<p class='summary'>*APCustomColorMatchingName name/text: ""</p>
@@ -649,7 +652,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*fr.APCustomColorMatchingName name/La AcmeColor(tm): ""
</pre>
-<h4><span class='info'>Mac OS X 10.5</span><a name='APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a></h4>
+<h4><span class='info'>OS X 10.5</span><a name='APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a></h4>
<p class='summary'>*APCustomColorMatchingProfile: name</p>
@@ -671,7 +674,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*APCustomColorMatchingProfile: AdobeRGB
</pre>
-<h4><span class='info'>Mac OS X 10.5</span><a name='APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a></h4>
+<h4><span class='info'>OS X 10.5</span><a name='APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a></h4>
<p class='summary'>*APDefaultCustomColorMatchingProfile: name</p>
@@ -685,7 +688,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*APDefaultCustomColorMatchingProfile: sRGB
</pre>
-<h4><span class='info'>Mac OS X 10.4</span><a name='APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a></h4>
+<h4><span class='info'>OS X 10.4</span><a name='APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a></h4>
<p class='summary'>*APSupportsCustomColorMatching: boolean</p>
@@ -721,7 +724,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</blockquote>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsUIConstraints'>cupsUIConstraints</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsUIConstraints'>cupsUIConstraints</a></h3>
<p class='summary'>*cupsUIConstraints resolver: "*Keyword1 *Keyword2 ..."<br>
*cupsUIConstraints resolver: "*Keyword1 OptionKeyword1 *Keyword2 ..."<br>
@@ -751,7 +754,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*cupsUIConstraints photo: "*OutputMode Photo *MediaType Transparency *Resolution 1200dpi"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsUIResolver'>cupsUIResolver</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsUIResolver'>cupsUIResolver</a></h3>
<p class='summary'>*cupsUIResolver resolver: "*Keyword1 OptionKeyword1 *Keyword2 OptionKeyword2 ..."</p>
@@ -853,7 +856,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</pre>
-<h2 class='title'><a name='OPTIONS'><span class="info">CUPS 1.3/Mac OS X 10.6</span>Custom Options</a></h2>
+<h2 class='title'><a name='OPTIONS'><span class="info">CUPS 1.3/OS X 10.6</span>Custom Options</a></h2>
<p>CUPS supports custom options using an extension of the <tt>CustomPageSize</tt> and <tt>ParamCustomPageSize</tt> syntax:</p>
@@ -1311,7 +1314,7 @@ PRE B {
<p>The CUPS media keywords allow drivers to specify alternate custom page
size limits based on up to two options.</p>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMediaQualifier2'>cupsMediaQualifier2</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMediaQualifier2'>cupsMediaQualifier2</a></h3>
<p class='summary'>*cupsMediaQualifier2: MainKeyword</p>
@@ -1330,7 +1333,7 @@ custom page size limits.</p>
*cupsMinSize ..Photo: "300 300"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMediaQualifier3'>cupsMediaQualifier3</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMediaQualifier3'>cupsMediaQualifier3</a></h3>
<p class='summary'>*cupsMediaQualifier3: MainKeyword</p>
@@ -1349,7 +1352,7 @@ custom page size limits.</p>
*cupsMinSize ..Photo: "300 300"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMinSize'>cupsMinSize</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMinSize'>cupsMinSize</a></h3>
<p class='summary'>*cupsMinSize .Qualifier2.Qualifier3: "width length"<br>
*cupsMinSize .Qualifier2.: "width length"<br>
@@ -1372,7 +1375,7 @@ are used to identify options to use for matching.</p>
*cupsMinSize ..Photo: "300 300"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMaxSize'>cupsMaxSize</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMaxSize'>cupsMaxSize</a></h3>
<p class='summary'>*cupsMaxSize .Qualifier2.Qualifier3: "width length"<br>
*cupsMaxSize .Qualifier2.: "width length"<br>
@@ -1396,9 +1399,24 @@ are used to identify options to use for matching.</p>
</pre>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsPageSizeCategory'>cupsPageSizeCategory</a></h3>
+
+<p class="summary">*cupsPageSizeCategory name/text: "name name2 ... nameN"</p>
+
+<p>This keyword lists related paper size names that should be grouped together in the Print or Page Setup dialogs. The "name" portion of the keyword specifies the root/default size for the grouping. On OS X the grouped paper sizes are shown in a submenu of the main paper size. When omitted, sizes with the same dimensions are automatically grouped together, for example "Letter" and "Letter.Borderless".</p>
+
+<p>Example:</p>
+
+<pre class="command">
+<em>*% Specify grouping of borderless/non-borderless sizes</em>
+*cupsPageSizeCategory Letter/US Letter: "Letter Letter.Borderless"
+*cupsPageSizeCategory A4/A4: "A4 A4.Borderless"
+</pre>
+
+
<h2 class='title'><a name='ATTRIBUTES'>General Attributes</a></h2>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsBackSide'>cupsBackSide</a></h3>
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsBackSide'>cupsBackSide</a></h3>
<p class='summary'>*cupsBackSide: keyword</p>
@@ -1474,7 +1492,7 @@ will be ignored.</p>
</table>
</div>
-<p><em>* - Not supported in Mac OS X 10.5.x and earlier</em></p>
+<p><em>* - Not supported in OS X 10.5.x and earlier</em></p>
<div class='figure'><table summary='Back side images'>
<caption>Figure 1: Back side images</caption>
@@ -1494,7 +1512,7 @@ will be ignored.</p>
<p>Also see the related <a href='#APDuplexRequiresFlippedMargin'><tt>APDuplexRequiresFlippedMargin</tt></a>
keyword.</p>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsCommands'>cupsCommands</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsCommands'>cupsCommands</a></h3>
<p class='summary'>*cupsCommands: "name name2 ... nameN"</p>
@@ -1510,7 +1528,7 @@ by whitespace.</p>
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsEvenDuplex'>cupsEvenDuplex</a></h3>
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsEvenDuplex'>cupsEvenDuplex</a></h3>
<p class='summary'>*cupsEvenDuplex: boolean</p>
@@ -1588,21 +1606,21 @@ the special filter program "-" may be specified.</p>
<p class='summary'>*cupsFlipDuplex: boolean</p>
-<p>Due to implementation differences between Mac OS X and Ghostscript,
+<p>Due to implementation differences between OS X and Ghostscript,
the <tt>cupsFlipDuplex</tt> keyword is deprecated. Instead, use
the <a href='#cupsBackSide'><tt>cupsBackSide</tt></a> keyword to specify
the coordinate system (pixel layout) of the page data on the back side of
duplex pages.</p>
<p>The value <code>true</code> maps to a <tt>cupsBackSide</tt> value
-of <code>Rotated</code> on Mac OS X and <code>Flipped</code> with
+of <code>Rotated</code> on OS X and <code>Flipped</code> with
Ghostscript.</p>
<p>The default value is <code>false</code>.</p>
<blockquote><b>Note:</b>
-<p>Mac OS X drivers that previously used
+<p>OS X drivers that previously used
<tt>cupsFlipDuplex</tt> may wish to provide both the old and
new keywords for maximum compatibility, for example:</p>
@@ -1619,7 +1637,7 @@ Ghostscript can use:</p>
*cupsFlipDuplex: true
</pre></blockquote>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsIPPFinishings'>cupsIPPFinishings</a></h3>
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsIPPFinishings'>cupsIPPFinishings</a></h3>
<p class='summary'>*cupsIPPFinishings number/text: "*Option Choice ..."</p>
@@ -1635,7 +1653,7 @@ values to PPD options and choices.</p>
*cupsIPPFinishings 21/staple-bottom-left: "*StapleLocation SingleLandscape"
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsIPPReason'>cupsIPPReason</a></h3>
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsIPPReason'>cupsIPPReason</a></h3>
<p class='summary'>*cupsIPPReason reason/Reason Text: "optional URIs"</p>
@@ -1688,7 +1706,7 @@ http://www.vendor.com/help"
*cupsIPPSupplies: False
</pre>
-<h3><span class='info'>CUPS 1.2/Mac OS X 10.5</span><a name='cupsLanguages'>cupsLanguages</a></h3>
+<h3><span class='info'>CUPS 1.2/OS X 10.5</span><a name='cupsLanguages'>cupsLanguages</a></h3>
<p class='summary'>*cupsLanguages: "locale list"</p>
@@ -1718,7 +1736,7 @@ hardware. The default value is <code>false</code>.</p>
*cupsManualCopies: true
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMarkerName'>cupsMarkerName</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMarkerName'>cupsMarkerName</a></h3>
<p class='summary'>*cupsMarkerName/Name Text: ""</p>
@@ -1732,7 +1750,7 @@ generated by the driver to human readable text.</p>
*cupsMarkerName cyanToner/Cyan Toner: ""
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMarkerNotice'>cupsMarkerNotice</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMarkerNotice'>cupsMarkerNotice</a></h3>
<p class='summary'>*cupsMarkerNotice: "disclaimer text"</p>
@@ -1746,6 +1764,19 @@ are approximate".</p>
*cupsMarkerNotice: "Supply levels are approximate."
</pre>
+<h3><span class='info'>CUPS 1.6/OS X 10.8</span><a name='cupsMaxCopies'>cupsMaxCopies</a></h3>
+
+<p class='summary'>*cupsMaxCopies: integer</p>
+
+<p>This integer keyword notifies the filters that the destination printer supports up to N copies in hardware. The default value is <code>9999</code>.</p>
+
+<p>Example:</p>
+
+<pre class='command'>
+<em>*% Tell the RIP filters we can do up to 99 copies</em>
+*cupsMaxCopies: 99
+</pre>
+
<h3><a name='cupsModelNumber'>cupsModelNumber</a></h3>
<p class='summary'>*cupsModelNumber: number</p>
@@ -1761,7 +1792,8 @@ the output for a specific model of printer.</p>
*cupsModelNumber: 1234
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsPJLCharset'>cupsPJLCharset</a></h3>
+
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsPJLCharset'>cupsPJLCharset</a></h3>
<p class='summary'>*cupsPJLCharset: "ISO character set name"</p>
@@ -1776,7 +1808,7 @@ assumed.</p>
*cupsPJLCharset: "UTF-8"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsPJLDisplay'>cupsPJLDisplay</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsPJLDisplay'>cupsPJLDisplay</a></h3>
<p class='summary'>*cupsPJLDisplay: "what"</p>
@@ -1795,7 +1827,7 @@ to use "@PJL RDYMSG DISPLAY". The default is "job".</p>
*cupsPJLDisplay: "none"
</pre>
-<h3><span class='info'>CUPS 1.2/Mac OS X 10.5</span><a name='cupsPortMonitor'>cupsPortMonitor</a></h3>
+<h3><span class='info'>CUPS 1.2/OS X 10.5</span><a name='cupsPortMonitor'>cupsPortMonitor</a></h3>
<p class='summary'>*cupsPortMonitor urischeme/Descriptive Text: "port monitor"</p>
@@ -1827,7 +1859,7 @@ to disable the port monitor for the given URI scheme.</p>
*cupsPortMonitor usb/USB Status Monitor: "epson-usb"
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsPreFilter'>cupsPreFilter</a></h3>
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsPreFilter'>cupsPreFilter</a></h3>
<p class='summary'>*cupsPreFilter: "source/type cost program"</p>
@@ -1886,7 +1918,7 @@ before the filter that accepts the given MIME type.</p>
*cupsSingleFile: True
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsSNMPSupplies'>cupsSNMPSupplies</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsSNMPSupplies'>cupsSNMPSupplies</a></h3>
<p class='summary'>*cupsSNMPSupplies: boolean</p>
@@ -1907,7 +1939,7 @@ the standard SNMP Printer MIB OIDs for supply levels. The default value is
<p>This required keyword describes which version of the CUPS
PPD file extensions was used. Currently it must be the string
-"1.0", "1.1", "1.2", or "1.3".</p>
+"1.0", "1.1", "1.2", "1.3", "1.4", "1.5", or "1.6".</p>
<p>Example:</p>
@@ -1917,9 +1949,23 @@ PPD file extensions was used. Currently it must be the string
</pre>
-<h2 class='title'><a name='MACOSX'>Mac OS X Attributes</a></h2>
+<h3><span class="info">CUPS 1.6/OS X 10.8</span><a name="JCLToPDFInterpreter">JCLToPDFInterpreter</a></h3>
+
+<p class="summary">*JCLToPDFInterpreter: "JCL"</p>
+
+<p>This keyword provfides the JCL command to insert a PDF job file into a printer-ready data stream. The JCL command is added after the <tt>JCLBegin</tt> value and any commands for JCL options in the PPD file.</p>
+
+<p>Example:</p>
+
+<pre class='command'>
+<em>*% PJL command to start the PDF interpreter</em>
+*JCLToPDFInterpreter: "@PJL ENTER LANGUAGE = PDF&lt;0A&gt;"
+</pre>
+
+
+<h2 class='title'><a name='MACOSX'>OS X Attributes</a></h2>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APDialogExtension'>APDialogExtension</a></h3>
+<h3><span class='info'>OS X 10.3</span><a name='APDialogExtension'>APDialogExtension</a></h3>
<p class='summary'>*APDialogExtension: "/Library/Printers/vendor/filename.plugin"</p>
@@ -1931,7 +1977,7 @@ plug-ins.</p>
<blockquote><b>Note:</b>
-<p>Starting with Mac OS X 10.5, each plug-in must be compiled "4-way fat"
+<p>Starting with OS X 10.5, each plug-in must be compiled "4-way fat"
(32-bit and 64-bit for both PowerPC and Intel) with garbage collection enabled
in order to be usable with all applications.</p>
@@ -1945,7 +1991,7 @@ in order to be usable with all applications.</p>
*APDialogExtension: "/Library/Printers/vendor/options.plugin"
</pre>
-<h3><span class='info'>Mac OS X 10.4</span><a name='APDuplexRequiresFlippedMargin'>APDuplexRequiresFlippedMargin</a></h3>
+<h3><span class='info'>OS X 10.4</span><a name='APDuplexRequiresFlippedMargin'>APDuplexRequiresFlippedMargin</a></h3>
<p class='summary'>*APDuplexRequiresFlippedMargin: boolean</p>
@@ -2042,7 +2088,7 @@ looking up IPP reason codes for this printer driver. The
*APHelpBook: "file:///Library/Printers/vendor/Help.bundle"
</pre>
-<h3><span class='info'>Mac OS X 10.6</span><a name='APICADriver'>APICADriver</a></h3>
+<h3><span class='info'>OS X 10.6</span><a name='APICADriver'>APICADriver</a></h3>
<p class='summary'>*APICADriver: boolean</p>
@@ -2056,7 +2102,7 @@ Architecture (ICA) driver for scanning. The default is <tt>False</tt>.</p>
*APScanAppBundleID: "com.apple.ImageCaptureApp"
</pre>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APPrinterIconPath'>APPrinterIconPath</a></h3>
+<h3><span class='info'>OS X 10.3</span><a name='APPrinterIconPath'>APPrinterIconPath</a></h3>
<p class='summary'>*APPrinterIconPath: "/Library/Printers/vendor/filename.icns"</p>
@@ -2070,7 +2116,7 @@ displaying the printer. The file must be in the Apple icon format.</p>
*APPrinterIconPath: "/Library/Printers/vendor/Icons/filename.icns"
</pre>
-<h3><span class='info'>Mac OS X 10.4</span><a name='APPrinterLowInkTool'>APPrinterLowInkTool</a></h3>
+<h3><span class='info'>OS X 10.4</span><a name='APPrinterLowInkTool'>APPrinterLowInkTool</a></h3>
<p class='summary'>*APPrinterLowInkTool: "/Library/Printers/vendor/program"</p>
@@ -2087,7 +2133,7 @@ Technical Note TN2144</a> for more information.</p>
*APPrinterLowInkTool: "/Library/Printers/vendor/Tools/lowinktool"
</pre>
-<h3><span class='info'>Mac OS X 10.5</span><a name='APPrinterPreset'>APPrinterPreset</a></h3>
+<h3><span class='info'>OS X 10.5</span><a name='APPrinterPreset'>APPrinterPreset</a></h3>
<p class='summary'>*APPrinterPreset name/text: "*Option Choice ..."</p>
@@ -2157,7 +2203,7 @@ choice (*MainKeyword OptionKeyword) or a preset identifier and value
*fr.APPrinterPreset Photo_on_Photo_Paper/Photo sur papier photographique: ""
</pre>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APPrinterUtilityPath'>APPrinterUtilityPath</a></h3>
+<h3><span class='info'>OS X 10.3</span><a name='APPrinterUtilityPath'>APPrinterUtilityPath</a></h3>
<p class='summary'>*APPrinterPrinterUtilityPath: "/Library/Printers/vendor/filename.app"</p>
@@ -2172,7 +2218,7 @@ information.</p>
*APPrinterPrinterUtilityPath: "/Library/Printers/vendor/Tools/utility.app"
</pre>
-<h3><span class='info'>Mac OS X 10.6</span><a name='APScannerOnly'>APScannerOnly</a></h3>
+<h3><span class='info'>OS X 10.6</span><a name='APScannerOnly'>APScannerOnly</a></h3>
<p class='summary'>*APScannerOnly: boolean</p>
@@ -2186,7 +2232,7 @@ capabilities. The default is <tt>False</tt>.</p>
*APScannerOnly: True
</pre>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APScanAppBundleID'>APScanAppBundleID</a></h3>
+<h3><span class='info'>OS X 10.3</span><a name='APScanAppBundleID'>APScanAppBundleID</a></h3>
<p class='summary'>*APScanAppBundleID: "bundle ID"</p>
@@ -2203,6 +2249,21 @@ the device.</p>
<h2 class='title'><a name='HISTORY'>Change History</a></h2>
+<h3>Changes in CUPS 1.6</h3>
+
+<ul>
+
+ <li>Added <a href="#cupsPageSizeCategory"><tt>cupsPageSizeCategory</tt></a> keyword (originally defined in CUPS 1.4).</li>
+
+ <li>Added <a href="#cupsMaxCopies"><tt>cupsMaxCopies</tt></a> keyword.</li>
+
+ <li>Documented <a href="#JCLToPDFInterpreter"><tt>JCLToPDFInterpreter</tt></a> keyword.</li>
+
+ <li>Updated <a href="#cupsVersion"><tt>cupsVersion</tt></a> keyword documentation to list all current releases of CUPS.</li>
+
+</ul>
+
+
<h3>Changes in CUPS 1.5</h3>
<ul>
@@ -2262,7 +2323,7 @@ the device.</p>
<ul>
- <li>Added missing Mac OS X <tt>AP</tt> keywords.</li>
+ <li>Added missing OS X <tt>AP</tt> keywords.</li>
<li>Added section on auto-configuration including the
<tt>OID<i>MainKeyword</i></tt> and <tt>?<i>MainKeyword</i></tt>
diff --git a/doc/help/whatsnew.html b/doc/help/whatsnew.html
index 856f30a9..1d77c67e 100644
--- a/doc/help/whatsnew.html
+++ b/doc/help/whatsnew.html
@@ -1,59 +1,64 @@
<HTML>
<!-- SECTION: Getting Started -->
<HEAD>
- <TITLE>What's New in CUPS 1.5</TITLE>
+ <TITLE>What's New in CUPS 1.6</TITLE>
<LINK REL="STYLESHEET" TYPE="text/css" HREF="../cups-printable.css">
</HEAD>
<BODY>
-<H1 CLASS="title">What's New in CUPS 1.5</H1>
+<H1 CLASS="title">What's New in CUPS 1.6</H1>
-<P>CUPS 1.5 many changes and new features to CUPS 1.4.x. This page provides a high-level outline of these changes. If you have never used CUPS before, read the <A HREF="overview.html">"Overview of CUPS"</A> document instead.</P>
+<P>CUPS 1.6 provides many changes and new features to CUPS 1.5.x. This page provides a high-level outline of these changes. If you have never used CUPS before, read the <A HREF="overview.html">"Overview of CUPS"</A> document instead.</P>
-<H2 CLASS="title"><A NAME="COMMANDS">Commands</A></H2>
+<H2 CLASS="title"><A NAME="COMMANDS">General</A></H2>
<OL START="1">
- <LI><EM>User defaults;</EM> Starting in CUPS 1.2, user defaults were stored in the ~/.cups directory, and the old ~/.cupsrc and ~/.lpoptions files were deprecated. Support for ~/.cupsrc and ~/.lpoptions have been removed in CUPS 1.5.</LI>
+ <LI><EM>Bonjour Support;</EM> Bonjour printer sharing and discovery is now also supported using Avahi.</LI>
- <LI><EM>IPP test tool;</EM> The <code>ipptool</code> IPP test tool is now a first-class user program.</LI>
+ <LI><EM>Color Management;</EM> ICC profiles referenced by PPD files are now registered on systems with D-BUS and colord installed.</LI>
- <LI><EM>lpadmin;</EM> The <code>lpadmin</code> command now supports setting the cupsIPPSupplies and cupsSNMPSupplies keywords in PPDs and deleting options.</LI>
-</OL>
+ <LI><EM>Default Username;</EM> CUPS now supports the <CODE>CUPS_USER</CODE> environment variable and <CODE>User</CODE> directive in the <VAR>client.conf</VAR> file to override the default username.</LI>
-<H2 CLASS="title"><A NAME="SCHEDULER">Scheduler</A></H2>
+ <LI><EM>Open Printing Filters;</EM> The parallel and serial backends, php_cups scripting module, and bannertops, commandtoescpx, commandtopclx, imagetops, imagetoraster, pdftops, rastertoescpx, rastertopclx, and texttops filters are now provided as part of a separate cups-filters project hosted by the Linux Foundation.</LI>
-<OL START="4">
+ <LI><EM>Passwords;</EM> Passwords up to 127 characters are now supported.</LI>
- <LI><EM>Filter security;</EM> Filters and backends must now have group write permissions disabled.</LI>
+ <LI><EM>Printer Options;</EM> The "brightness", "columns", "fitplot", "gamma", "hue", "natural-scaling", "penwidth", "position", "ppi", "saturation", and "scaling" options are not longer supported by CUPS directly, while the "page-bottom", "page-left", "page-right", "page-top", "prettyprint", and "wrap" options have been deprecated.</LI>
</OL>
-<H2 CLASS="title"><A NAME="FILTERS">Print Filters</A></H2>
+<H2 CLASS="title"><A NAME="SCHEDULER">Scheduler</A></H2>
+
+<OL START="7">
+
+ <LI><EM>Authentication;</EM> The scheduler now supports a <CODE>DefaultAuthType</CODE> value of <CODE>auto</CODE> which automatically chooses between Basic (username/password) and Negotiate (Kerberos) authentication.</LI>
-<OL START="5">
+ <LI><EM>IPP Conformance;</EM> The scheduler now correctly reports the "number-of-documents" attribute for jobs and fully conforms to the latest IPP/2.1 test suite.</LI>
- <LI><EM>HP-GL/2 filter;</EM> The HP-GL/2 filter is no longer provided with CUPS.</LI>
+ <LI><EM>Permissions;</EM> Filters and backends may no longer have group write permissions enabled.</LI>
- <LI><EM>PDF filter;</EM> The PDF filter now supports new Poppler and Ghostscript options.</LI>
+ <LI><EM>PPD Files;</EM> PPD files can now be packaged and installed as compressed tar files to reduce the amount of disk space required. Dynamic PPD updates are now also consolidated so that a printer's PPD file is updated once at the end of a job.</LI>
- <LI><EM>PWG Raster driver;</EM> Added a new PWG Raster printer driver filter.</LI>
+ <LI><EM>Sharing Protocols;</EM> The scheduler no longer supports the CUPS, LDAP, or SLP protocols for printer sharing.</LI>
- <LI><EM>SCSI backend;</EM> The SCSI backend is no longer provided with CUPS.</LI>
+ <LI><EM>Time-Based Job Limits;</EM> New <CODE>MaxHoldTime</CODE> and <CODE>MaxJobTime</CODE> directives, combined with support for time values in the <CODE>PreserveJobFiles</CODE> and <CODE>PreserveJobHistory</CODE> directives, allow administrators to define time-based job limits and behaviors.</LI>
</OL>
<H2 CLASS="title"><A NAME="CUPSAPI">CUPS API</A></H2>
-<OL START="9">
+<OL START="13">
+
+ <LI><EM>Destination-Based Printing;</EM> Inspired by IPP Everywhere, new dynamic destination-based APIs allow applications to discover, query, and use both shared and network printers directly and display localized user interfaces with full conflict resolution without static configuration files. These APIs provide equivalent functionality offered by PPD-based printer drivers without the disadvantages of static configuration files.</LI>
- <LI><EM>CUPS headers;</EM> Changes to the main CUPS header may require code changes to applications and toolkits. Users of PPD functions must now include the &lt;cups/ppd.h&gt; header file explicitly since the &lt;cups/cups.h&gt; header no longer does so.</LI>
+ <LI><EM>IPP;</EM> IPP requests now default to protocol version 2.0, and the <CODE>ipp_t</CODE> and <CODE>ipp_value_t</CODE> structures are now private by default. New software should be developed using the corresponding accessor functions instead of directly accessing these structures.</LI>
- <LI><EM>HTTP support:</EM> Applications can now set a per-connection timeout interval and callback for HTTP operations as well as query and set SSL/TLS X.509 certificates.</LI>
+ <LI><EM>PPD;</EM> The PPD functions are now officially deprecated in favor of the new destination-based printing APIs.</LI>
- <LI><EM>Raster support;</EM> The CUPS raster functions now support the creation of PWG Raster files and streams, and a new callback-based context function allows reading and writing from objects other than file descriptors.</LI>
+ <LI><EM>SNMP Support;</EM> The <CODE>cupsSideChannelSNMPGet</CODE> and <CODE>cupsSideChannelSNMPWalk</CODE> functions now support OIDs and values up to 64k in length.</LI>
</OL>
diff --git a/doc/hu/index.html.in b/doc/hu/index.html.in
deleted file mode 100755
index ae0039d4..00000000
--- a/doc/hu/index.html.in
+++ /dev/null
@@ -1,113 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>Kezdőlap - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="sel"><A HREF="/">&nbsp;&nbsp;Kezdőoldal&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A
-HREF="/admin">&nbsp;&nbsp;Adminisztráció&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/classes/">&nbsp;&nbsp;Osztályok&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A
-HREF="/help/">&nbsp;&nbsp;Online&nbsp;súgó&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/jobs/">&nbsp;&nbsp;Feladatok&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A
-HREF="/printers/">&nbsp;&nbsp;Nyomtatók&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Keresés a súgóban"
-AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD STYLE="padding-right: 20px;">
-
-<H1>CUPS @CUPS_VERSION@</H1>
-
-<P>A CUPS az <A HREF="http://www.apple.com/">Apple Inc.</A> által a Mac
-OS<SUP>&reg;</SUP> X és más UNIX<SUP>&reg;</SUP>-szerű operációs
-rendszerekhez kifejlesztett, szabványokra épülő, nyílt forrású
-nyomtatórendszer.</P>
-
-</TD>
-<TD><A HREF="http://www.cups.org/"><IMG SRC="images/cups-icon.png" WIDTH="128"
-HEIGHT="128" ALT="CUPS"></A></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-right: 20px;">
-
-<H2>CUPS felhasználóknak</H2>
-
-<P><A HREF="help/overview.html">A CUPS bemutatása</A></P>
-
-<P><A HREF="help/options.html">Parancssori nyomtatás és kapcsolók</A></P>
-
-<P><A HREF="help/whatsnew.html">A CUPS 1.5 újdonságai</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Felhasználói fórum</A></P>
-
-</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
-
-<H2>CUPS rendszergazdáknak</H2>
-
-<P><A HREF="admin">Nyomtatók és osztályok hozzáadása</A></P>
-
-<P><A HREF="help/policies.html">Műveletházirendek kezelése</A></P>
-
-<P><A HREF="help/accounting.html">Nyomtatási számlázás alapjai</A></P>
-
-<P><A HREF="help/security.html">Kiszolgáló biztonsága</A></P>
-
-<P><A HREF="help/kerberos.html">Kerberos hitelesítés használata</A></P>
-
-<P><A HREF="help/network.html">Hálózati nyomtatók használata</A></P>
-
-<P><A HREF="help/ref-cupsd-conf.html">cupsd.conf referencia</A></P>
-
-<P><A HREF="http://www.cups.org/ppd.php">Nyomtató-illesztőprogramok
-keresése</A></P>
-
-</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
-
-<H2>A CUPS fejlesztőknek</H2>
-
-<P><A HREF="help/api-overview.html">A CUPS programozásának bemutatása</A></P>
-
-<P><A HREF="help/api-cups.html">CUPS API</A></P>
-
-<P><A HREF="help/api-filter.html">Szűrők és háttérprogramok
-programozása</A></P>
-
-<P><A HREF="help/api-httpipp.html">HTTP és IPP API-k</A></P>
-
-<P><A HREF="help/api-ppd.html">PPD API</A></P>
-
-<P><A HREF="help/api-raster.html">Raszter API</A></P>
-
-<P><A HREF="help/ref-ppdcfile.html">PPD fordító illesztőprogram-információs fájljának referenciája</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Fejlesztői fórum</A></P>
-
-</TD></TR>
-</TABLE>
-
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">A CUPS és a CUPS logó az <A
-HREF="http://www.apple.com">Apple Inc.</A> védjegyei. CUPS copyright
-2007-2012 Apple Inc. Minden jog fenntartva.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/doc/id/index.html.in b/doc/id/index.html.in
deleted file mode 100644
index 032cff99..00000000
--- a/doc/id/index.html.in
+++ /dev/null
@@ -1,107 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>Beranda - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="sel"><A HREF="/">&nbsp;&nbsp;Beranda&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/admin">&nbsp;&nbsp;Administrasi&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/classes/">&nbsp;&nbsp;Kelas&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/help/">&nbsp;&nbsp;Bantuan&nbsp;Langsung&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/jobs/">&nbsp;&nbsp;Tugas&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/printers/">&nbsp;&nbsp;Pencetak&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
-AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD STYLE="padding-right: 20px;">
-
-<H1>CUPS @CUPS_VERSION@</H1>
-
-<P>CUPS adalah sistem pencetakan berstandar dan berkode sumber terbuka, dikembangkan oleh
-<A HREF="http://www.apple.com/">Apple Inc.</A> untuk Mac OS<SUP>&reg;</SUP> X dan sistem
-operasi serupa UNIX<SUP>&reg;</SUP> lainnya.</P>
-
-</TD>
-<TD><A HREF="http://www.cups.org/"><IMG SRC="images/cups-icon.png" WIDTH="128"
-HEIGHT="128" ALT="CUPS"></A></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-right: 20px;">
-
-<H2>CUPS bagi Pengguna</H2>
-
-<P><A HREF="help/overview.html">Ikhtisar CUPS</A></P>
-
-<P><A HREF="help/options.html">Opsi dan Pencetakan dari Baris Perintah</A></P>
-
-<P><A HREF="help/whatsnew.html">Apa yang Baru di CUPS 1.5</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Forum Pengguna</A></P>
-
-</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
-
-<H2>CUPS bagi Administrator</H2>
-
-<P><A HREF="admin">Menambah Pencetak dan Kelas</A></P>
-
-<P><A HREF="help/policies.html">Mengatur Kebijakan Operasi</A></P>
-
-<P><A HREF="help/accounting.html">Dasar Akunting Pencetak</A></P>
-
-<P><A HREF="help/security.html">Keamanan Server</A></P>
-
-<P><A HREF="help/kerberos.html">Menggunakan Otentikasi Kerberos</A></P>
-
-<P><A HREF="help/network.html">Menggunakan Pencetak di Jaringan</A></P>
-
-<P><A HREF="help/ref-cupsd-conf.html">Referensi cupsd.conf</A></P>
-
-<P><A HREF="http://www.cups.org/ppd.php">Mencari Penggerak Pencetak</A></P>
-
-</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
-
-<H2>CUPS bagi Pengembang</H2>
-
-<P><A HREF="help/api-overview.html">Pengenalan untuk Pemrograman CUPS</A></P>
-
-<P><A HREF="help/api-cups.html">API di CUPS</A></P>
-
-<P><A HREF="help/api-filter.html">Penyaring dan Pemrograman Balik (<I>Backend Programming</I>)</A></P>
-
-<P><A HREF="help/api-httpipp.html">API di HTTP dan IPP</A></P>
-
-<P><A HREF="help/api-ppd.html">API di PPD</A></P>
-
-<P><A HREF="help/api-raster.html">API di Raster</A></P>
-
-<P><A HREF="help/ref-ppdcfile.html">Referensi Kompiler Berkas Penggerak PPD</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Forum Pengembang</A></P>
-
-</TD></TR>
-</TABLE>
-
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS dan logo CUPS logo adalah merek dagang dari
-<A HREF="http://www.apple.com">Apple Inc.</A> Hak cipta CUPS pada 2007-2012 Apple
-Inc. Semua hak terpelihara.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/doc/index.html.in b/doc/index.html.in
index da77fa99..e79d52ef 100644
--- a/doc/index.html.in
+++ b/doc/index.html.in
@@ -32,7 +32,7 @@ AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
<H1>CUPS @CUPS_VERSION@</H1>
<P>CUPS is the standards-based, open source printing system developed by
-<A HREF="http://www.apple.com/">Apple Inc.</A> for Mac OS<SUP>&reg;</SUP> X and
+<A HREF="http://www.apple.com/">Apple Inc.</A> for OS<SUP>&reg;</SUP> X and
other UNIX<SUP>&reg;</SUP>-like operating systems.</P>
</TD>
@@ -50,7 +50,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
<P><A HREF="help/options.html">Command-Line Printing and Options</A></P>
-<P><A HREF="help/whatsnew.html">What's New in CUPS 1.5</A></P>
+<P><A HREF="help/whatsnew.html">What's New in CUPS 1.6</A></P>
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">User Forum</A></P>
diff --git a/doc/it/index.html.in b/doc/it/index.html.in
deleted file mode 100644
index b7a43fb8..00000000
--- a/doc/it/index.html.in
+++ /dev/null
@@ -1,107 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>Home - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="sel"><A HREF="/">&nbsp;&nbsp;Home&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/admin">&nbsp;&nbsp;Amministrazione&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/classes/">&nbsp;&nbsp;Classi&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/help/">&nbsp;&nbsp;Guida&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/jobs/">&nbsp;&nbsp;Stampe&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/printers/">&nbsp;&nbsp;Stampanti&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Aiuto alla ricerca"
-AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD STYLE="padding-right: 20px;">
-
-<H1>CUPS @CUPS_VERSION@</H1>
-
-<P>CUPS è un sistema di stampa basato su standard, open source sviluppato da
-<A HREF="http://www.apple.com/">Apple Inc.</A> per Mac OS<SUP>&reg;</SUP> X e
-altri sistemi UNIX<SUP>&reg;</SUP> e derivati.</P>
-
-</TD>
-<TD><A HREF="http://www.cups.org/"><IMG SRC="images/cups-icon.png" WIDTH="128"
-HEIGHT="128" ALT="CUPS"></A></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-right: 20px;">
-
-<H2>CUPS per utenti</H2>
-
-<P><A HREF="help/overview.html">Panoramica di CUPS</A></P>
-
-<P><A HREF="help/options.html">Stampa e opzioni da riga di comando</A></P>
-
-<P><A HREF="help/whatsnew.html">Cosa c'è di nuovo in CUPS 1.5</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Forum degli utenti</A></P>
-
-</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
-
-<H2>CUPS per amministratori</H2>
-
-<P><A HREF="admin">Aggiungere stampanti e classi</A></P>
-
-<P><A HREF="help/policies.html">Gestire i criteri di funzionamento</A></P>
-
-<P><A HREF="help/accounting.html">Basi di controllo di accesso alle stampanti</A></P>
-
-<P><A HREF="help/security.html">Sicurezza del server</A></P>
-
-<P><A HREF="help/kerberos.html">Utilizzare l'autenticazione Kerberos</A></P>
-
-<P><A HREF="help/network.html">Utilizzare stampanti di rete</A></P>
-
-<P><A HREF="help/ref-cupsd-conf.html">Riferimenti al cupsd.conf</A></P>
-
-<P><A HREF="http://www.cups.org/ppd.php">Trovare driver per le stampanti</A></P>
-
-</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
-
-<H2>CUPS per sviluppatori</H2>
-
-<P><A HREF="help/api-overview.html">Introduzione alla programmazione di CUPS</A></P>
-
-<P><A HREF="help/api-cups.html">API di CUPS</A></P>
-
-<P><A HREF="help/api-filter.html">Programmazione di filtri e motori</A></P>
-
-<P><A HREF="help/api-httpipp.html">API HTTP e IPP</A></P>
-
-<P><A HREF="help/api-ppd.html">API PPD</A></P>
-
-<P><A HREF="help/api-raster.html">API Raster</A></P>
-
-<P><A HREF="help/ref-ppdcfile.html">Riferimenti al file del compilatore di driver PPD</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Forum degli sviluppatori</A></P>
-
-</TD></TR>
-</TABLE>
-
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS e il logo CUPS sono marchi di
-<A HREF="http://www.apple.com">Apple Inc.</A> CUPS è un copyright 2007-2012 di Apple
-Inc. Tutti i diritti sono riservati.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/doc/ja/index.html.in b/doc/ja/index.html.in
index 3c28c4cd..d43a2ac7 100644
--- a/doc/ja/index.html.in
+++ b/doc/ja/index.html.in
@@ -2,7 +2,7 @@
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>ホーム - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
+ <TITLE>ホーム - CUPS 1.6</TITLE>
<LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
<LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
</HEAD>
@@ -13,12 +13,12 @@
<TR HEIGHT="36">
<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="sel" NOWRAP><A HREF="/">&nbsp;&nbsp;ホーム&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" NOWRAP><A HREF="/admin">&nbsp;&nbsp;管ç†&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" NOWRAP><A HREF="/classes/">&nbsp;&nbsp;クラス&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" NOWRAP><A HREF="/help/">&nbsp;&nbsp;ヘルプ&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" NOWRAP><A HREF="/jobs/">&nbsp;&nbsp;ジョブ&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" NOWRAP><A HREF="/printers/">&nbsp;プリンター&nbsp;</A></TD>
+<TD CLASS="sel"><A HREF="/">&nbsp;&nbsp;ホーム&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/admin">&nbsp;&nbsp;管ç†&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/classes/">&nbsp;&nbsp;クラス&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/help/">&nbsp;&nbsp;ヘルプ&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/jobs/">&nbsp;&nbsp;ジョブ&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/printers/">&nbsp;&nbsp;プリンター&nbsp;&nbsp;</A></TD>
<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
@@ -31,7 +31,7 @@ AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
<H1>CUPS @CUPS_VERSION@</H1>
-<P>CUPS ã¯ã€Mac OS<SUP>&reg;</SUP> X ãŠã‚ˆã³ãã®ä»–ã® UNIX ç³» OS ã®ãŸã‚ã«ã€
+<P>CUPS ã¯ã€OS<SUP>&reg;</SUP> X ãŠã‚ˆã³ãã®ä»–ã® UNIX <SUP>&reg;</SUP> ç³» OS ã®ãŸã‚ã«ã€
<A HREF="http://www.apple.com/">Apple Inc.</A>
ã«ã‚ˆã£ã¦é–‹ç™ºã•ã‚ŒãŸæ¨™æº–ベースã®ã‚ªãƒ¼ãƒ—ンソースå°åˆ·ã‚·ã‚¹ãƒ†ãƒ ã§ã™ã€‚</P>
@@ -50,7 +50,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
<P><A HREF="help/options.html">コマンドラインã‹ã‚‰ã®å°åˆ·ã¨ã‚ªãƒ—ション</A></P>
-<P><A HREF="help/whatsnew.html">CUPS 1.5 ã®æ–°æ©Ÿèƒ½</A></P>
+<P><A HREF="help/whatsnew.html">CUPS 1.6 ã®æ–°æ©Ÿèƒ½</A></P>
<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">ユーザーフォーラム</A></P>
@@ -78,7 +78,7 @@ HEIGHT="128" ALT="CUPS"></A></TD>
<H2>開発者å‘ã‘</H2>
-<P><A HREF="help/api-overview.html">イントロダクション</A></P>
+<P><A HREF="help/api-overview.html">CUPS プログラミングã®ã‚¤ãƒ³ãƒˆãƒ­ãƒ€ã‚¯ã‚·ãƒ§ãƒ³</A></P>
<P><A HREF="help/api-cups.html">CUPS API</A></P>
diff --git a/doc/pl/index.html.in b/doc/pl/index.html.in
deleted file mode 100644
index 98db4f43..00000000
--- a/doc/pl/index.html.in
+++ /dev/null
@@ -1,107 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>Strona domowa - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="sel"><A HREF="/">&nbsp;&nbsp;Strona domowa&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/admin">&nbsp;&nbsp;Administracja&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/classes/">&nbsp;&nbsp;Klasy&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/help/">&nbsp;&nbsp;Pomoc&nbsp;online&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/jobs/">&nbsp;&nbsp;Zadania&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/printers/">&nbsp;&nbsp;Drukowanie&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
-AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD STYLE="padding-right: 20px;">
-
-<H1>CUPS @CUPS_VERSION@</H1>
-
-<P>CUPS jest opartym na standardach systemem drukowania na licencji open source, tworzonym przez
-<A HREF="http://www.apple.com/">Apple Inc.</A> dla Mac OS<SUP>&reg;</SUP> X i
-innych systemów operacyjnych podobnych do Uniksa<SUP>&reg;</SUP>.</P>
-
-</TD>
-<TD><A HREF="http://www.cups.org/"><IMG SRC="images/cups-icon.png" WIDTH="128"
-HEIGHT="128" ALT="CUPS"></A></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-right: 20px;">
-
-<H2>CUPS dla użytkowników</H2>
-
-<P><A HREF="help/overview.html">PrzeglÄ…d CUPS</A></P>
-
-<P><A HREF="help/options.html">Drukowanie i opcje w wierszu poleceń</A></P>
-
-<P><A HREF="help/whatsnew.html">Co nowego w CUPS 1.5</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Forum użytkowników</A></P>
-
-</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
-
-<H2>CUPS dla administratorów</H2>
-
-<P><A HREF="admin">Dodawanie drukarek i klas</A></P>
-
-<P><A HREF="help/policies.html">ZarzÄ…dzanie politykami operacji</A></P>
-
-<P><A HREF="help/accounting.html">Podstawy kont drukowania</A></P>
-
-<P><A HREF="help/security.html">Bezpieczeństwo systemu</A></P>
-
-<P><A HREF="help/kerberos.html">Używanie uwierzytelniania Kerberosa</A></P>
-
-<P><A HREF="help/network.html">Używanie drukarek sieciowych</A></P>
-
-<P><A HREF="help/ref-cupsd-conf.html">Informacje o cupsd.conf</A></P>
-
-<P><A HREF="http://www.cups.org/ppd.php">Wyszukiwanie sterowników drukarek</A></P>
-
-</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
-
-<H2>CUPS dla programistów</H2>
-
-<P><A HREF="help/api-overview.html">Wprowadzenie do programowania CUPS</A></P>
-
-<P><A HREF="help/api-cups.html">API CUPS</A></P>
-
-<P><A HREF="help/api-filter.html">Programowanie filtrów i modułów przetwarzających</A></P>
-
-<P><A HREF="help/api-httpipp.html">API HTTP i IPP</A></P>
-
-<P><A HREF="help/api-ppd.html">API PPD</A></P>
-
-<P><A HREF="help/api-raster.html">API rastrowe</A></P>
-
-<P><A HREF="help/ref-ppdcfile.html">Informacje o kompilatorze plików informacji o sterownikach PPD</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Forum programistów</A></P>
-
-</TD></TR>
-</TABLE>
-
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS i logo CUPS
-sÄ… znakami handlowymi <A HREF="http://www.apple.com">Apple Inc.</A> CUPS
-copyright 2007-2012 Apple Inc. Wszystkie prawa zastrzeżone.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/doc/ru/index.html.in b/doc/ru/index.html.in
deleted file mode 100644
index c81ec290..00000000
--- a/doc/ru/index.html.in
+++ /dev/null
@@ -1,103 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>Ðачало — CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="sel"><A HREF="/">&nbsp;&nbsp;Ðачало&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/admin">&nbsp;&nbsp;ÐдминиÑтрирование&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/classes/">&nbsp;&nbsp;Группы&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/help/">&nbsp;&nbsp;Справка&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/jobs/">&nbsp;&nbsp;ЗаданиÑ&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel"><A HREF="/printers/">&nbsp;&nbsp;Принтеры&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="ПоиÑк по Ñправке"
-AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD STYLE="padding-right: 20px;">
-
-<H1>CUPS @CUPS_VERSION@</H1>
-
-<P>CUPS — Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÑŽÑ‰Ð°Ñ Ð±Ð¾Ð»ÑŒÑˆÐ¸Ð½Ñтво Ñтандартов, ÑÐ²Ð¾Ð±Ð¾Ð´Ð½Ð°Ñ Ð¿Ð¾Ð´ÑиÑтема печати, Ñ€Ð°Ð·Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°ÐµÐ¼Ð°Ñ ÐºÐ¾Ð¼Ð¿Ð°Ð½Ð¸ÐµÐ¹ <A HREF="http://www.apple.com/">Apple Inc.</A> Ð´Ð»Ñ Ð¾Ð¿ÐµÑ€Ð°Ñ†Ð¸Ð¾Ð½Ð½Ð¾Ð¹ ÑиÑтемы Mac OS<SUP>&reg;</SUP> X и других UNIX<SUP>&reg;</SUP>-подобных операционных ÑиÑтем.</P>
-
-</TD>
-<TD><A HREF="http://www.cups.org/"><IMG SRC="images/cups-icon.png" WIDTH="128"
-HEIGHT="128" ALT="CUPS"></A></TD>
-</TR>
-</TABLE>
-
-<TABLE CLASS="indent" SUMMARY="">
-<TR><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-right: 20px;">
-
-<H2>CUPS for Users</H2>
-
-<P><A HREF="help/overview.html">Введение в CUPS</A></P>
-
-<P><A HREF="help/options.html">Печать из командной Ñтроки</A></P>
-
-<P><A HREF="help/whatsnew.html">Что нового в CUPS 1.5</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.general">Форум пользователей</A></P>
-
-</TD><TD VALIGN="top" STYLE="border-right: dotted thin #cccccc; padding-left: 20px; padding-right: 20px;">
-
-<H2>CUPS Ð´Ð»Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтраторов</H2>
-
-<P><A HREF="admin">Добавление принтеров и групп</A></P>
-
-<P><A HREF="help/policies.html">Управление доÑтупом</A></P>
-
-<P><A HREF="help/accounting.html">ИÑпользование реÑурÑов</A></P>
-
-<P><A HREF="help/security.html">БезопаÑноÑть ÑиÑтемы</A></P>
-
-<P><A HREF="help/kerberos.html">ИÑпользование аутентификации Kerberos</A></P>
-
-<P><A HREF="help/network.html">ИÑпользование Ñетевых принтеров</A></P>
-
-<P><A HREF="help/ref-cupsd-conf.html">Справочник по cupsd.conf</A></P>
-
-<P><A HREF="http://www.cups.org/ppd.php">ПоиÑк драйверов принтера</A></P>
-
-</TD><TD VALIGN="top" STYLE="padding-left: 20px;">
-
-<H2>CUPS Ð´Ð»Ñ Ñ€Ð°Ð·Ñ€Ð°Ð±Ð¾Ñ‚Ñ‡Ð¸ÐºÐ¾Ð²</H2>
-
-<P><A HREF="help/api-overview.html">Введение в разработку CUPS</A></P>
-
-<P><A HREF="help/api-cups.html">CUPS API</A></P>
-
-<P><A HREF="help/api-filter.html">Разработка фильтров и модулей</A></P>
-
-<P><A HREF="help/api-httpipp.html">API доÑтупа по HTTP и IPP</A></P>
-
-<P><A HREF="help/api-ppd.html">PPD API</A></P>
-
-<P><A HREF="help/api-raster.html">Raster API</A></P>
-
-<P><A HREF="help/ref-ppdcfile.html">Справочник по компилÑтору PPD</A></P>
-
-<P><A HREF="http://www.cups.org/newsgroups.php?gcups.development">Форум разработчиков</A></P>
-
-</TD></TR>
-</TABLE>
-
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS а также логотип CUPS ÑвлÑÑŽÑ‚ÑÑ Ð·Ð°Ñ€ÐµÐ³Ð¸Ñтрированными торговыми марками <A HREF="http://www.apple.com">Apple Inc.</A> ÐвторÑкие права на CUPS принадлежат (2007-2012) компании Apple Inc. Ð’Ñе права защищены.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/driver/Dependencies b/driver/Dependencies
deleted file mode 100644
index 475ee808..00000000
--- a/driver/Dependencies
+++ /dev/null
@@ -1,75 +0,0 @@
-# DO NOT DELETE
-
-commandtoescpx.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-commandtoescpx.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-commandtoescpx.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-commandtoescpx.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-commandtoescpx.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-commandtoescpx.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-commandtoescpx.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-commandtoescpx.o: ../cups/language-private.h ../cups/transcode.h
-commandtoescpx.o: ../cups/thread-private.h driver.h ../cups/raster.h
-commandtoescpx.o: ../cups/ppd.h ../data/escp.h
-commandtopclx.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-commandtopclx.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-commandtopclx.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-commandtopclx.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-commandtopclx.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-commandtopclx.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-commandtopclx.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-commandtopclx.o: ../cups/language-private.h ../cups/transcode.h
-commandtopclx.o: ../cups/thread-private.h driver.h ../cups/raster.h
-commandtopclx.o: ../cups/ppd.h ../data/pcl.h
-rastertoescpx.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-rastertoescpx.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-rastertoescpx.o: ../cups/language.h ../cups/raster.h ../cups/cups.h
-rastertoescpx.o: ../cups/ppd.h ../cups/language-private.h ../cups/transcode.h
-rastertoescpx.o: ../cups/string-private.h ../config.h ../data/escp.h
-rastertopclx.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-rastertopclx.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-rastertopclx.o: ../cups/language.h ../cups/raster.h ../cups/cups.h
-rastertopclx.o: ../cups/ppd.h ../cups/language-private.h ../cups/transcode.h
-rastertopclx.o: ../cups/string-private.h ../config.h pcl-common.h
-rastertopclx.o: ../data/pcl.h
-pcl-common.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-pcl-common.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-pcl-common.o: ../cups/raster.h ../cups/cups.h ../cups/ppd.h pcl-common.h
-pcl-common.o: ../cups/string-private.h ../config.h ../data/pcl.h
-testcmyk.o: ../cups/string-private.h ../config.h driver.h ../cups/cups.h
-testcmyk.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-testcmyk.o: ../cups/array.h ../cups/language.h ../cups/raster.h
-testcmyk.o: ../cups/cups.h ../cups/ppd.h
-testdither.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-testdither.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-testdither.o: ../cups/raster.h ../cups/cups.h ../cups/ppd.h
-testdither.o: ../cups/string-private.h ../config.h
-testrgb.o: ../cups/string-private.h ../config.h driver.h ../cups/cups.h
-testrgb.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-testrgb.o: ../cups/array.h ../cups/language.h ../cups/raster.h ../cups/cups.h
-testrgb.o: ../cups/ppd.h
-attr.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-attr.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-attr.o: ../cups/raster.h ../cups/cups.h ../cups/ppd.h
-attr.o: ../cups/string-private.h ../config.h
-check.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-check.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-check.o: ../cups/raster.h ../cups/cups.h ../cups/ppd.h
-cmyk.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-cmyk.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-cmyk.o: ../cups/raster.h ../cups/cups.h ../cups/ppd.h
-cmyk.o: ../cups/string-private.h ../config.h
-dither.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-dither.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-dither.o: ../cups/raster.h ../cups/cups.h ../cups/ppd.h ../config.h
-lut.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-lut.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-lut.o: ../cups/raster.h ../cups/cups.h ../cups/ppd.h
-pack.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-pack.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-pack.o: ../cups/raster.h ../cups/cups.h ../cups/ppd.h
-rgb.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-rgb.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-rgb.o: ../cups/raster.h ../cups/cups.h ../cups/ppd.h
-srgb.o: driver.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-srgb.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-srgb.o: ../cups/raster.h ../cups/cups.h ../cups/ppd.h
diff --git a/driver/Makefile b/driver/Makefile
deleted file mode 100644
index 7269e9e0..00000000
--- a/driver/Makefile
+++ /dev/null
@@ -1,382 +0,0 @@
-#
-# "$Id: Makefile 9099 2010-04-11 07:16:05Z mike $"
-#
-# Makefile for the CUPS base drivers.
-#
-# Copyright 2007-2010 by Apple Inc.
-# Copyright 2002-2005 by Easy Software Products.
-#
-# These coded instructions, statements, and computer programs are the
-# property of Apple Inc. and are protected by Federal copyright
-# law. Distribution and use rights are outlined in the file "LICENSE.txt"
-# which should have been included with this file. If this file is
-# file is missing or damaged, see the license at "http://www.cups.org/".
-#
-
-#
-# Include standard definitions...
-#
-
-include ../Makedefs
-
-
-#
-# Object files...
-#
-
-LIBOBJS = \
- attr.o \
- check.o \
- cmyk.o \
- dither.o \
- lut.o \
- pack.o \
- rgb.o \
- srgb.o
-OBJS = \
- commandtoescpx.o \
- commandtopclx.o \
- rastertoescpx.o \
- rastertopclx.o \
- pcl-common.o \
- testcmyk.o \
- testdither.o \
- testrgb.o \
- $(LIBOBJS)
-
-LIBTARGETS = \
- $(LIBCUPSDRIVER) \
- libcupsdriver.a
-UNITTARGETS = \
- testcmyk \
- testdither \
- testrgb
-FILTERS = \
- commandtoescpx \
- commandtopclx \
- rastertoescpx \
- rastertopclx
-TARGETS = \
- $(LIBTARGETS) \
- $(FILTERS)
-
-
-#
-# Make everything...
-#
-
-all: $(TARGETS)
-
-
-#
-# Make library targets...
-#
-
-libs: $(LIBTARGETS)
-
-
-#
-# Make unit tests...
-#
-
-unittests: $(UNITTARGETS)
-
-
-#
-# Clean everything...
-#
-
-clean:
- $(RM) $(OBJS) core
- $(RM) *.bck core.*
- $(RM) $(TARGETS) $(UNITTARGETS)
- $(RM) -r test
- $(RM) libcupsdriver.so libcupsdriver.sl libcupsdriver.dylib
-
-
-#
-# Update dependencies...
-#
-
-depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
-
-
-#
-# Install all targets...
-#
-
-install: all install-data install-headers install-libs install-exec
-
-
-#
-# Install data files...
-#
-
-install-data:
-
-
-#
-# Install programs...
-#
-
-install-exec:
- $(INSTALL_DIR) $(SERVERBIN)/filter
- for file in $(FILTERS); do \
- $(INSTALL_BIN) $$file $(SERVERBIN)/filter; \
- done
- if test "x$(SYMROOT)" != "x"; then \
- $(INSTALL_DIR) $(SYMROOT); \
- for file in $(FILTERS); do \
- cp $$file $(SYMROOT); \
- done \
- fi
-
-
-#
-# Install headers...
-#
-
-install-headers:
- echo Installing header files in $(INCLUDEDIR)/cups...
- $(INSTALL_DIR) -m 755 $(INCLUDEDIR)/cups
- $(INSTALL_DATA) driver.h $(INCLUDEDIR)/cups
-
-
-#
-# Install libraries...
-#
-
-install-libs: $(INSTALLSTATIC)
- echo Installing libraries in $(LIBDIR)...
- $(INSTALL_DIR) -m 755 $(LIBDIR)
- $(INSTALL_LIB) $(LIBCUPSDRIVER) $(LIBDIR)
- if test $(LIBCUPSDRIVER) = "libcupsdriver.so.1" -o $(LIBCUPSDRIVER) = "libcupsdriver.sl.1"; then \
- $(RM) $(LIBDIR)/`basename $(LIBCUPSDRIVER) .1`; \
- $(LN) $(LIBCUPSDRIVER) $(LIBDIR)/`basename $(LIBCUPSDRIVER) .1`; \
- fi
- if test $(LIBCUPSDRIVER) = "libcupsdriver.1.dylib"; then \
- $(RM) $(LIBDIR)/libcupsdriver.dylib; \
- $(LN) $(LIBCUPSDRIVER) $(LIBDIR)/libcupsdriver.dylib; \
- fi
- if test "x$(SYMROOT)" != "x"; then \
- $(INSTALL_DIR) $(SYMROOT); \
- cp $(LIBCUPSDRIVER) $(SYMROOT); \
- fi
-
-installstatic:
- $(INSTALL_DIR) -m 755 $(LIBDIR)
- $(INSTALL_LIB) -m 755 libcupsdriver.a $(LIBDIR)
- $(RANLIB) $(LIBDIR)/libcupsdriver.a
- $(CHMOD) 555 $(LIBDIR)/libcupsdriver.a
-
-
-#
-# Uninstall...
-#
-
-uninstall:
- for file in commandtoescpx commandtopclx rastertoescpx rastertopclx; do \
- $(RM) $(SERVERBIN)/filter/$$file; \
- done
- $(RM) $(LIBDIR)/libcupsdriver.1.dylib
- $(RM) $(LIBDIR)/libcupsdriver.a
- $(RM) $(LIBDIR)/libcupsdriver.dylib
- $(RM) $(LIBDIR)/libcupsdriver_s.a
- $(RM) $(LIBDIR)/libcupsdriver.sl
- $(RM) $(LIBDIR)/libcupsdriver.sl.1
- $(RM) $(LIBDIR)/libcupsdriver.so
- $(RM) $(LIBDIR)/libcupsdriver.so.1
- -$(RMDIR) $(LIBDIR)
- $(RM) $(INCLUDEDIR)/cups/driver.h
- -$(RMDIR) $(INCLUDEDIR)/cups
-
-
-#
-# Automatic API help files...
-#
-
-apihelp:
- mxmldoc --section "Programming" \
- --title "Printer Driver API" \
- --css ../doc/cups-printable.css \
- --header api-driver.header --intro api-driver.shtml \
- api-driver.xml \
- driver.h $(LIBOBJS:.o=.c) >../doc/help/api-driver.html
- mxmldoc --tokens help/api-driver.html >../doc/help/api-driver.tokens
- $(RM) api-driver.xml
-
-framedhelp:
- mxmldoc --framed api-driver \
- --section "Programming" \
- --title "Printer Driver API" \
- --css ../doc/cups-printable.css \
- --header api-driver.header --intro api-driver.shtml \
- driver.h $(LIBOBJS:.o=.c)
-
-
-#
-# commandtopclx, the PCL command printer driver.
-#
-
-commandtopclx: commandtopclx.o $(LIBCUPSDRIVER) ../cups/$(LIBCUPS)
- echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ commandtopclx.o -L. -lcupsdriver $(LIBS)
-
-
-#
-# commandtoescpx, the ESC/P command printer driver.
-#
-
-commandtoescpx: commandtoescpx.o $(LIBCUPSDRIVER) ../cups/$(LIBCUPS)
- echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ commandtoescpx.o -L. -lcupsdriver $(LIBS)
-
-
-#
-# rastertoescpx, the ESC/P raster printer driver.
-#
-
-rastertoescpx: rastertoescpx.o $(LIBCUPSDRIVER) ../cups/$(LIBCUPS)
- echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ rastertoescpx.o -L. -lcupsdriver \
- $(LINKCUPSIMAGE) $(LIBS)
-
-
-#
-# rastertopclx, the ESC/P raster printer driver.
-#
-
-rastertopclx: rastertopclx.o pcl-common.o $(LIBCUPSDRIVER) \
- ../cups/$(LIBCUPS)
- echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ rastertopclx.o pcl-common.o -L. -lcupsdriver \
- $(LINKCUPSIMAGE) $(LIBS)
-
-
-#
-# test, make a common test subdirectory for the other test programs.
-#
-
-test:
- if test ! -d test; then \
- rm -rf test; \
- mkdir test; \
- fi
-
-
-#
-# testcmyk, test cmyk separation functions.
-#
-
-testcmyk: test testcmyk.o libcupsdriver.a ../cups/$(LIBCUPSSTATIC)
- echo Linking $@...
- $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testcmyk.o libcupsdriver.a \
- ../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
- $(COMMONLIBS) $(LIBZ)
- echo Running CMYK API tests...
- ./testcmyk > test/testcmyk.log
-
-
-#
-# testdither, test dithering functions.
-#
-
-testdither: test testdither.o libcupsdriver.a ../cups/$(LIBCUPSSTATIC)
- echo Linking $@...
- $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testdither.o libcupsdriver.a \
- ../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
- $(COMMONLIBS) $(LIBZ)
- echo Running dither API tests...
- ./testdither > test/0-255.pgm 2>test/0-255.log
- ./testdither 0 127 255 > test/0-127-255.pgm 2>test/0-127-255.log
- ./testdither 0 85 170 255 > test/0-85-170-255.pgm 2>test/0-85-170-255.log
- ./testdither 0 63 127 170 198 227 255 > test/0-63-127-170-198-227-255.pgm 2>test/0-63-127-170-198-227-255.log
- ./testdither 0 210 383 > test/0-210-383.pgm 2>test/0-210-383.log
- ./testdither 0 82 255 > test/0-82-255.pgm 2>test/0-82-255.log
- ./testdither 0 510 > test/0-510.pgm 2>test/0-510.log
- ./testdither 0 1020 > test/0-1020.pgm 2>test/0-1020.log
-
-
-#
-# testrgb, test RGB separation functions.
-#
-
-testrgb: test testrgb.o libcupsdriver.a ../cups/$(LIBCUPSSTATIC)
- echo Linking $@...
- $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testrgb.o libcupsdriver.a \
- ../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
- $(COMMONLIBS) $(LIBZ)
- echo Running RGB API tests...
- ./testrgb > test/testrgb.log 2>&1 || echo "RGB tests failed!"
-
-
-#
-# libcupsdriver.so.1, libcupsdriver.sl.1
-#
-
-libcupsdriver.so.1 libcupsdriver.sl.1: $(LIBOBJS)
- echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LIBS)
- $(RM) `basename $@ .1`
- $(LN) $@ `basename $@ .1`
-
-
-#
-# libcupsdriver.1.dylib
-#
-
-libcupsdriver.1.dylib: $(LIBOBJS) libcupsdriver.exp
- echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
- -install_name $(libdir)/$@ \
- -current_version 1.0.0 \
- -compatibility_version 1.0.0 \
- -exported_symbols_list libcupsdriver.exp \
- $(LIBOBJS) $(LIBS)
- $(RM) libcupsdriver.dylib
- $(LN) $@ libcupsdriver.dylib
-
-
-#
-# libcupsdriver_s.a
-#
-
-libcupsdriver_s.a: $(LIBOBJS)
- echo Creating $@...
- $(DSO) $(DSOFLAGS) -o libcupsdriver_s.o $(LIBOBJS) $(LIBS)
- $(RM) $@
- $(AR) $(ARFLAGS) $@ libcupsdriver_s.o
-
-
-#
-# libcupsdriver.la
-#
-
-libcupsdriver.la: $(LIBOBJS)
- echo Linking $@...
- $(CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) -rpath $(LIBDIR) \
- -version-info 1:0 $(LIBS)
-
-
-#
-# libcupsdriver.a
-#
-
-libcupsdriver.a: $(LIBOBJS)
- echo Archiving $@...
- $(RM) $@
- $(AR) $(ARFLAGS) $@ $(LIBOBJS)
- $(RANLIB) $@
-
-
-#
-# Include dependencies...
-#
-
-include Dependencies
-
-
-#
-# End of "$Id: Makefile 9099 2010-04-11 07:16:05Z mike $".
-#
diff --git a/driver/api-driver.header b/driver/api-driver.header
deleted file mode 100644
index 0f3937bc..00000000
--- a/driver/api-driver.header
+++ /dev/null
@@ -1,34 +0,0 @@
-<!--
- "$Id: api-array.header 8087 2008-10-27 21:37:05Z mike $"
-
- Driver API header for CUPS.
-
- Copyright 2009 by Apple Inc.
-
- These coded instructions, statements, and computer programs are the
- property of Apple Inc. and are protected by Federal copyright
- law. Distribution and use rights are outlined in the file "LICENSE.txt"
- which should have been included with this file. If this file is
- file is missing or damaged, see the license at "http://www.cups.org/".
--->
-
-<h1 class='title'>Driver API</h1>
-
-<div class='summary'><table summary='General Information'>
-<thead>
-<tr>
- <th>Header</th>
- <th>cups/driver.h</th>
-</tr>
-</thead>
-<tbody>
-<tr>
- <th>Library</th>
- <td>-lcupsdriver</td>
-</tr>
-<tr>
- <th>See Also</th>
- <td>Programming: <a href='api-overview.html' target='_top'>Introduction to CUPS Programming</a></td>
-</tr>
-</tbody>
-</table></div>
diff --git a/driver/api-driver.shtml b/driver/api-driver.shtml
deleted file mode 100644
index 0e8bcff2..00000000
--- a/driver/api-driver.shtml
+++ /dev/null
@@ -1,18 +0,0 @@
-<!--
- "$Id: api-array.shtml 7616 2008-05-28 00:34:13Z mike $"
-
- Driver API introduction for CUPS.
-
- Copyright 2009 by Apple Inc.
-
- These coded instructions, statements, and computer programs are the
- property of Apple Inc. and are protected by Federal copyright
- law. Distribution and use rights are outlined in the file "LICENSE.txt"
- which should have been included with this file. If this file is
- file is missing or damaged, see the license at "http://www.cups.org/".
--->
-
-<h2 class='title'><a name='OVERVIEW'>Overview</a></h2>
-
-<p>The driver API provides common dithering, color conversion, and utility
-functions for CUPS drivers.</p>
diff --git a/driver/attr.c b/driver/attr.c
deleted file mode 100644
index fff68bff..00000000
--- a/driver/attr.c
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * "$Id: attr.c 9042 2010-03-24 00:45:34Z mike $"
- *
- * PPD attribute lookup routine for CUPS.
- *
- * Copyright 2007-2010 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * cupsFindAttr() - Find a PPD attribute based on the colormodel,
- * media, and resolution.
- */
-
-/*
- * Include necessary headers.
- */
-
-#include "driver.h"
-#include <cups/string-private.h>
-
-
-/*
- * 'cupsFindAttr()' - Find a PPD attribute based on the colormodel,
- * media, and resolution.
- */
-
-ppd_attr_t * /* O - Matching attribute or NULL */
-cupsFindAttr(ppd_file_t *ppd, /* I - PPD file */
- const char *name, /* I - Attribute name */
- const char *colormodel, /* I - Color model */
- const char *media, /* I - Media type */
- const char *resolution, /* I - Resolution */
- char *spec, /* O - Final selection string */
- int specsize) /* I - Size of string buffer */
-{
- ppd_attr_t *attr; /* Attribute */
-
-
- /*
- * Range check input...
- */
-
- if (!ppd || !name || !colormodel || !media || !resolution || !spec ||
- specsize < PPD_MAX_NAME)
- return (NULL);
-
- /*
- * Look for the attribute with the following keywords:
- *
- * ColorModel.MediaType.Resolution
- * ColorModel.Resolution
- * ColorModel
- * MediaType.Resolution
- * MediaType
- * Resolution
- * ""
- */
-
- snprintf(spec, specsize, "%s.%s.%s", colormodel, media, resolution);
- fprintf(stderr, "DEBUG2: Looking for \"*%s %s\"...\n", name, spec);
- if ((attr = ppdFindAttr(ppd, name, spec)) != NULL && attr->value != NULL)
- return (attr);
-
- snprintf(spec, specsize, "%s.%s", colormodel, resolution);
- fprintf(stderr, "DEBUG2: Looking for \"*%s %s\"...\n", name, spec);
- if ((attr = ppdFindAttr(ppd, name, spec)) != NULL && attr->value != NULL)
- return (attr);
-
- strlcpy(spec, colormodel, specsize);
- fprintf(stderr, "DEBUG2: Looking for \"*%s %s\"...\n", name, spec);
- if ((attr = ppdFindAttr(ppd, name, spec)) != NULL && attr->value != NULL)
- return (attr);
-
- snprintf(spec, specsize, "%s.%s", media, resolution);
- fprintf(stderr, "DEBUG2: Looking for \"*%s %s\"...\n", name, spec);
- if ((attr = ppdFindAttr(ppd, name, spec)) != NULL && attr->value != NULL)
- return (attr);
-
- strlcpy(spec, media, specsize);
- fprintf(stderr, "DEBUG2: Looking for \"*%s %s\"...\n", name, spec);
- if ((attr = ppdFindAttr(ppd, name, spec)) != NULL && attr->value != NULL)
- return (attr);
-
- strlcpy(spec, resolution, specsize);
- fprintf(stderr, "DEBUG2: Looking for \"*%s %s\"...\n", name, spec);
- if ((attr = ppdFindAttr(ppd, name, spec)) != NULL && attr->value != NULL)
- return (attr);
-
- spec[0] = '\0';
- fprintf(stderr, "DEBUG2: Looking for \"*%s\"...\n", name);
- if ((attr = ppdFindAttr(ppd, name, spec)) != NULL && attr->value != NULL)
- return (attr);
-
- fprintf(stderr, "DEBUG2: No instance of \"*%s\" found...\n", name);
-
- return (NULL);
-}
-
-
-/*
- * End of "$Id: attr.c 9042 2010-03-24 00:45:34Z mike $".
- */
diff --git a/driver/check.c b/driver/check.c
deleted file mode 100644
index 613530c9..00000000
--- a/driver/check.c
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * "$Id: check.c 7306 2008-02-15 00:52:38Z mike $"
- *
- * Byte checking routines for CUPS.
- *
- * Copyright 2007 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * cupsCheckBytes() - Check to see if all bytes are zero.
- * cupsCheckValue() - Check to see if all bytes match the given value.
- */
-
-/*
- * Include necessary headers.
- */
-
-#include "driver.h"
-
-
-/*
- * 'cupsCheckBytes()' - Check to see if all bytes are zero.
- */
-
-int /* O - 1 if they match */
-cupsCheckBytes(const unsigned char *bytes, /* I - Bytes to check */
- int length) /* I - Number of bytes to check */
-{
- while (length > 7)
- {
- if (*bytes++)
- return (0);
- if (*bytes++)
- return (0);
- if (*bytes++)
- return (0);
- if (*bytes++)
- return (0);
- if (*bytes++)
- return (0);
- if (*bytes++)
- return (0);
- if (*bytes++)
- return (0);
- if (*bytes++)
- return (0);
-
- length -= 8;
- }
-
- while (length > 0)
- if (*bytes++)
- return (0);
- else
- length --;
-
- return (1);
-}
-
-
-/*
- * 'cupsCheckValue()' - Check to see if all bytes match the given value.
- */
-
-int /* O - 1 if they match */
-cupsCheckValue(const unsigned char *bytes, /* I - Bytes to check */
- int length, /* I - Number of bytes to check */
- const unsigned char value) /* I - Value to check */
-{
- while (length > 7)
- {
- if (*bytes++ != value)
- return (0);
- if (*bytes++ != value)
- return (0);
- if (*bytes++ != value)
- return (0);
- if (*bytes++ != value)
- return (0);
- if (*bytes++ != value)
- return (0);
- if (*bytes++ != value)
- return (0);
- if (*bytes++ != value)
- return (0);
- if (*bytes++ != value)
- return (0);
-
- length -= 8;
- }
-
- while (length > 0)
- if (*bytes++ != value)
- return (0);
- else
- length --;
-
- return (1);
-}
-
-
-/*
- * End of "$Id: check.c 7306 2008-02-15 00:52:38Z mike $".
- */
diff --git a/driver/cmyk.c b/driver/cmyk.c
deleted file mode 100644
index 757584b9..00000000
--- a/driver/cmyk.c
+++ /dev/null
@@ -1,1955 +0,0 @@
-/*
- * "$Id: cmyk.c 9042 2010-03-24 00:45:34Z mike $"
- *
- * CMYK color separation code for CUPS.
- *
- * Copyright 2007-2010 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * cupsCMYKDelete() - Delete a color separation.
- * cupsCMYKDoBlack() - Do a black separation...
- * cupsCMYKDoCMYK() - Do a CMYK separation...
- * cupsCMYKDoGray() - Do a grayscale separation...
- * cupsCMYKDoRGB() - Do an sRGB separation...
- * cupsCMYKLoad() - Load a CMYK color profile from PPD attributes.
- * cupsCMYKNew() - Create a new CMYK color separation.
- * cupsCMYKSetBlack() - Set the transition range for CMY to black.
- * cupsCMYKSetCurve() - Set a color transform curve using points.
- * cupsCMYKSetGamma() - Set a color transform curve using gamma and
- * density.
- * cupsCMYKSetInkLimit() - Set the limit on the amount of ink.
- * cupsCMYKSetLtDk() - Set light/dark ink transforms.
- */
-
-/*
- * Include necessary headers.
- */
-
-#include "driver.h"
-#include <cups/string-private.h>
-
-
-/*
- * 'cupsCMYKDelete()' - Delete a color separation.
- */
-
-void
-cupsCMYKDelete(cups_cmyk_t *cmyk) /* I - Color separation */
-{
- /*
- * Range check input...
- */
-
- if (cmyk == NULL)
- return;
-
- /*
- * Free memory used...
- */
-
- free(cmyk->channels[0]);
- free(cmyk);
-}
-
-
-/*
- * 'cupsCMYKDoBlack()' - Do a black separation...
- */
-
-void
-cupsCMYKDoBlack(const cups_cmyk_t *cmyk,
- /* I - Color separation */
- const unsigned char *input,
- /* I - Input grayscale pixels */
- short *output,
- /* O - Output Device-N pixels */
- int num_pixels)
- /* I - Number of pixels */
-{
- int k; /* Current black value */
- const short **channels; /* Copy of channel LUTs */
- int ink, /* Amount of ink */
- ink_limit; /* Ink limit from separation */
-
-
- /*
- * Range check input...
- */
-
- if (cmyk == NULL || input == NULL || output == NULL || num_pixels <= 0)
- return;
-
- /*
- * Loop through it all...
- */
-
- channels = (const short **)cmyk->channels;
- ink_limit = cmyk->ink_limit;
-
- switch (cmyk->num_channels)
- {
- case 1 : /* Black */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = *input++;
- *output++ = channels[0][k];
-
- num_pixels --;
- }
- break;
-
- case 2 : /* Black, light black */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = *input++;
- output[0] = channels[0][k];
- output[1] = channels[1][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- }
- }
-
- output += 2;
- num_pixels --;
- }
- break;
-
- case 3 : /* CMY */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = *input++;
- output[0] = channels[0][k];
- output[1] = channels[1][k];
- output[2] = channels[2][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- }
- }
-
- output += 3;
- num_pixels --;
- }
- break;
-
- case 4 : /* CMYK */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = *input++;
- *output++ = 0;
- *output++ = 0;
- *output++ = 0;
- *output++ = channels[3][k];
-
- num_pixels --;
- }
- break;
-
- case 6 : /* CcMmYK */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = *input++;
- *output++ = 0;
- *output++ = 0;
- *output++ = 0;
- *output++ = 0;
- *output++ = 0;
- *output++ = channels[5][k];
-
- num_pixels --;
- }
- break;
-
- case 7 : /* CcMmYKk */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = *input++;
- output[0] = 0;
- output[1] = 0;
- output[2] = 0;
- output[3] = 0;
- output[4] = 0;
- output[5] = channels[5][k];
- output[6] = channels[6][k];
-
- if (ink_limit)
- {
- ink = output[5] + output[6];
-
- if (ink > ink_limit)
- {
- output[5] = ink_limit * output[5] / ink;
- output[6] = ink_limit * output[6] / ink;
- }
- }
-
- output += 7;
- num_pixels --;
- }
- break;
- }
-}
-
-
-/*
- * 'cupsCMYKDoCMYK()' - Do a CMYK separation...
- */
-
-void
-cupsCMYKDoCMYK(const cups_cmyk_t *cmyk,
- /* I - Color separation */
- const unsigned char *input,
- /* I - Input grayscale pixels */
- short *output,
- /* O - Output Device-N pixels */
- int num_pixels)
- /* I - Number of pixels */
-{
- int c, /* Current cyan value */
- m, /* Current magenta value */
- y, /* Current yellow value */
- k; /* Current black value */
- const short **channels; /* Copy of channel LUTs */
- int ink, /* Amount of ink */
- ink_limit; /* Ink limit from separation */
-
-
- /*
- * Range check input...
- */
-
- if (cmyk == NULL || input == NULL || output == NULL || num_pixels <= 0)
- return;
-
- /*
- * Loop through it all...
- */
-
- channels = (const short **)cmyk->channels;
- ink_limit = cmyk->ink_limit;
-
- switch (cmyk->num_channels)
- {
- case 1 : /* Black */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = *input++;
- m = *input++;
- y = *input++;
- k = *input++ + (c * 31 + m * 61 + y * 8) / 100;
-
- if (k < 255)
- *output++ = channels[0][k];
- else
- *output++ = channels[0][255];
-
- num_pixels --;
- }
- break;
-
- case 2 : /* Black, light black */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = *input++;
- m = *input++;
- y = *input++;
- k = *input++ + (c * 31 + m * 61 + y * 8) / 100;
-
- if (k < 255)
- {
- output[0] = channels[0][k];
- output[1] = channels[1][k];
- }
- else
- {
- output[0] = channels[0][255];
- output[1] = channels[1][255];
- }
-
- if (ink_limit)
- {
- ink = output[0] + output[1];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- }
- }
-
- output += 2;
- num_pixels --;
- }
- break;
-
- case 3 : /* CMY */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = *input++;
- m = *input++;
- y = *input++;
- k = *input++;
- c += k;
- m += k;
- y += k;
-
- if (c < 255)
- output[0] = channels[0][c];
- else
- output[0] = channels[0][255];
-
- if (m < 255)
- output[1] = channels[1][m];
- else
- output[1] = channels[1][255];
-
- if (y < 255)
- output[2] = channels[2][y];
- else
- output[2] = channels[2][255];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- }
- }
-
- output += 3;
- num_pixels --;
- }
- break;
-
- case 4 : /* CMYK */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = *input++;
- m = *input++;
- y = *input++;
- k = *input++;
-
- output[0] = channels[0][c];
- output[1] = channels[1][m];
- output[2] = channels[2][y];
- output[3] = channels[3][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2] + output[3];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- output[3] = ink_limit * output[3] / ink;
- }
- }
-
- output += 4;
- num_pixels --;
- }
- break;
-
- case 6 : /* CcMmYK */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = *input++;
- m = *input++;
- y = *input++;
- k = *input++;
-
- output[0] = channels[0][c];
- output[1] = channels[1][c];
- output[2] = channels[2][m];
- output[3] = channels[3][m];
- output[4] = channels[4][y];
- output[5] = channels[5][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2] + output[3] +
- output[4] + output[5];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- output[3] = ink_limit * output[3] / ink;
- output[4] = ink_limit * output[4] / ink;
- output[5] = ink_limit * output[5] / ink;
- }
- }
-
- output += 6;
- num_pixels --;
- }
- break;
-
- case 7 : /* CcMmYKk */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = *input++;
- m = *input++;
- y = *input++;
- k = *input++;
-
- output[0] = channels[0][c];
- output[1] = channels[1][c];
- output[2] = channels[2][m];
- output[3] = channels[3][m];
- output[4] = channels[4][y];
- output[5] = channels[5][k];
- output[6] = channels[6][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2] + output[3] +
- output[4] + output[5] + output[6];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- output[3] = ink_limit * output[3] / ink;
- output[4] = ink_limit * output[4] / ink;
- output[5] = ink_limit * output[5] / ink;
- output[6] = ink_limit * output[6] / ink;
- }
- }
-
- output += 7;
- num_pixels --;
- }
- break;
- }
-}
-
-
-/*
- * 'cupsCMYKDoGray()' - Do a grayscale separation...
- */
-
-void
-cupsCMYKDoGray(const cups_cmyk_t *cmyk,
- /* I - Color separation */
- const unsigned char *input,
- /* I - Input grayscale pixels */
- short *output,
- /* O - Output Device-N pixels */
- int num_pixels)
- /* I - Number of pixels */
-{
- int k, /* Current black value */
- kc; /* Current black color value */
- const short **channels; /* Copy of channel LUTs */
- int ink, /* Amount of ink */
- ink_limit; /* Ink limit from separation */
-
-
- /*
- * Range check input...
- */
-
- if (cmyk == NULL || input == NULL || output == NULL || num_pixels <= 0)
- return;
-
- /*
- * Loop through it all...
- */
-
- channels = (const short **)cmyk->channels;
- ink_limit = cmyk->ink_limit;
-
- switch (cmyk->num_channels)
- {
- case 1 : /* Black */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = cups_scmy_lut[*input++];
- *output++ = channels[0][k];
-
- num_pixels --;
- }
- break;
-
- case 2 : /* Black, light black */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = cups_scmy_lut[*input++];
- output[0] = channels[0][k];
- output[1] = channels[1][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- }
- }
-
- output += 2;
- num_pixels --;
- }
- break;
-
- case 3 : /* CMY */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = cups_scmy_lut[*input++];
- output[0] = channels[0][k];
- output[1] = channels[1][k];
- output[2] = channels[2][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- }
- }
-
- output += 3;
- num_pixels --;
- }
- break;
-
- case 4 : /* CMYK */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = cups_scmy_lut[*input++];
- kc = cmyk->color_lut[k];
- k = cmyk->black_lut[k];
- output[0] = channels[0][kc];
- output[1] = channels[1][kc];
- output[2] = channels[2][kc];
- output[3] = channels[3][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2] + output[3];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- output[3] = ink_limit * output[3] / ink;
- }
- }
-
- output += 4;
- num_pixels --;
- }
- break;
-
- case 6 : /* CcMmYK */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = cups_scmy_lut[*input++];
- kc = cmyk->color_lut[k];
- k = cmyk->black_lut[k];
- output[0] = channels[0][kc];
- output[1] = channels[1][kc];
- output[2] = channels[2][kc];
- output[3] = channels[3][kc];
- output[4] = channels[4][kc];
- output[5] = channels[5][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2] + output[3] +
- output[4] + output[5];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- output[3] = ink_limit * output[3] / ink;
- output[4] = ink_limit * output[4] / ink;
- output[5] = ink_limit * output[5] / ink;
- }
- }
-
- output += 6;
- num_pixels --;
- }
- break;
-
- case 7 : /* CcMmYKk */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- k = cups_scmy_lut[*input++];
- kc = cmyk->color_lut[k];
- k = cmyk->black_lut[k];
- output[0] = channels[0][kc];
- output[1] = channels[1][kc];
- output[2] = channels[2][kc];
- output[3] = channels[3][kc];
- output[4] = channels[4][kc];
- output[5] = channels[5][k];
- output[6] = channels[6][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2] + output[3] +
- output[4] + output[5] + output[6];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- output[3] = ink_limit * output[3] / ink;
- output[4] = ink_limit * output[4] / ink;
- output[5] = ink_limit * output[5] / ink;
- output[6] = ink_limit * output[6] / ink;
- }
- }
-
- output += 7;
- num_pixels --;
- }
- break;
- }
-}
-
-
-/*
- * 'cupsCMYKDoRGB()' - Do an sRGB separation...
- */
-
-void
-cupsCMYKDoRGB(const cups_cmyk_t *cmyk,
- /* I - Color separation */
- const unsigned char *input,
- /* I - Input grayscale pixels */
- short *output,
- /* O - Output Device-N pixels */
- int num_pixels)
- /* I - Number of pixels */
-{
- int c, /* Current cyan value */
- m, /* Current magenta value */
- y, /* Current yellow value */
- k, /* Current black value */
- kc, /* Current black color value */
- km; /* Maximum black value */
- const short **channels; /* Copy of channel LUTs */
- int ink, /* Amount of ink */
- ink_limit; /* Ink limit from separation */
-
-
- /*
- * Range check input...
- */
-
- if (cmyk == NULL || input == NULL || output == NULL || num_pixels <= 0)
- return;
-
- /*
- * Loop through it all...
- */
-
- channels = (const short **)cmyk->channels;
- ink_limit = cmyk->ink_limit;
-
- switch (cmyk->num_channels)
- {
- case 1 : /* Black */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = cups_scmy_lut[*input++];
- m = cups_scmy_lut[*input++];
- y = cups_scmy_lut[*input++];
- k = (c * 31 + m * 61 + y * 8) / 100;
-
- *output++ = channels[0][k];
-
- num_pixels --;
- }
- break;
-
- case 2 : /* Black, light black */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = cups_scmy_lut[*input++];
- m = cups_scmy_lut[*input++];
- y = cups_scmy_lut[*input++];
- k = (c * 31 + m * 61 + y * 8) / 100;
-
- output[0] = channels[0][k];
- output[1] = channels[1][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- }
- }
-
- output += 2;
- num_pixels --;
- }
- break;
-
- case 3 : /* CMY */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = cups_scmy_lut[*input++];
- m = cups_scmy_lut[*input++];
- y = cups_scmy_lut[*input++];
-
- output[0] = channels[0][c];
- output[1] = channels[1][m];
- output[2] = channels[2][y];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- }
- }
-
- output += 3;
- num_pixels --;
- }
- break;
-
- case 4 : /* CMYK */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = cups_scmy_lut[*input++];
- m = cups_scmy_lut[*input++];
- y = cups_scmy_lut[*input++];
- k = min(c, min(m, y));
-
- if ((km = max(c, max(m, y))) > k)
- k = k * k * k / (km * km);
-
- kc = cmyk->color_lut[k] - k;
- k = cmyk->black_lut[k];
- c += kc;
- m += kc;
- y += kc;
-
- output[0] = channels[0][c];
- output[1] = channels[1][m];
- output[2] = channels[2][y];
- output[3] = channels[3][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2] + output[3];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- output[3] = ink_limit * output[3] / ink;
- }
- }
-
- output += 4;
- num_pixels --;
- }
- break;
-
- case 6 : /* CcMmYK */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = cups_scmy_lut[*input++];
- m = cups_scmy_lut[*input++];
- y = cups_scmy_lut[*input++];
- k = min(c, min(m, y));
-
- if ((km = max(c, max(m, y))) > k)
- k = k * k * k / (km * km);
-
- kc = cmyk->color_lut[k] - k;
- k = cmyk->black_lut[k];
- c += kc;
- m += kc;
- y += kc;
-
- output[0] = channels[0][c];
- output[1] = channels[1][c];
- output[2] = channels[2][m];
- output[3] = channels[3][m];
- output[4] = channels[4][y];
- output[5] = channels[5][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2] + output[3] +
- output[4] + output[5];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- output[3] = ink_limit * output[3] / ink;
- output[4] = ink_limit * output[4] / ink;
- output[5] = ink_limit * output[5] / ink;
- }
- }
-
- output += 6;
- num_pixels --;
- }
- break;
-
- case 7 : /* CcMmYKk */
- while (num_pixels > 0)
- {
- /*
- * Get the input black value and then set the corresponding color
- * channel values...
- */
-
- c = cups_scmy_lut[*input++];
- m = cups_scmy_lut[*input++];
- y = cups_scmy_lut[*input++];
- k = min(c, min(m, y));
-
- if ((km = max(c, max(m, y))) > k)
- k = k * k * k / (km * km);
-
- kc = cmyk->color_lut[k] - k;
- k = cmyk->black_lut[k];
- c += kc;
- m += kc;
- y += kc;
-
- output[0] = channels[0][c];
- output[1] = channels[1][c];
- output[2] = channels[2][m];
- output[3] = channels[3][m];
- output[4] = channels[4][y];
- output[5] = channels[5][k];
- output[6] = channels[6][k];
-
- if (ink_limit)
- {
- ink = output[0] + output[1] + output[2] + output[3] +
- output[4] + output[5] + output[6];
-
- if (ink > ink_limit)
- {
- output[0] = ink_limit * output[0] / ink;
- output[1] = ink_limit * output[1] / ink;
- output[2] = ink_limit * output[2] / ink;
- output[3] = ink_limit * output[3] / ink;
- output[4] = ink_limit * output[4] / ink;
- output[5] = ink_limit * output[5] / ink;
- output[6] = ink_limit * output[6] / ink;
- }
- }
-
- output += 7;
- num_pixels --;
- }
- break;
- }
-}
-
-
-/*
- * 'cupsCMYKLoad()' - Load a CMYK color profile from PPD attributes.
- */
-
-cups_cmyk_t * /* O - CMYK color separation */
-cupsCMYKLoad(ppd_file_t *ppd, /* I - PPD file */
- const char *colormodel, /* I - ColorModel value */
- const char *media, /* I - MediaType value */
- const char *resolution) /* I - Resolution value */
-{
- cups_cmyk_t *cmyk; /* CMYK color separation */
- char spec[PPD_MAX_NAME]; /* Profile name */
- ppd_attr_t *attr; /* Attribute from PPD file */
- int num_channels; /* Number of color components */
- float gamval, /* Gamma correction value */
- density, /* Density value */
- light, /* Light ink limit */
- dark, /* Light ink cut-off */
- lower, /* Start of black ink */
- upper; /* End of color ink */
- int num_xypoints; /* Number of X,Y points */
- float xypoints[100 * 2], /* X,Y points */
- *xyptr; /* Current X,Y point */
-
-
- /*
- * Range check input...
- */
-
- if (ppd == NULL || colormodel == NULL || resolution == NULL || media == NULL)
- return (NULL);
-
- /*
- * Find the following attributes:
- *
- * cupsAllGamma - Set default curve using gamma + density
- * cupsAllXY - Set default curve using XY points
- * cupsBlackGamma - Set black curve using gamma + density
- * cupsBlackGeneration - Set black generation
- * cupsBlackLightDark - Set black light/dark transition
- * cupsBlackXY - Set black curve using XY points
- * cupsCyanGamma - Set cyan curve using gamma + density
- * cupsCyanLightDark - Set cyan light/dark transition
- * cupsCyanXY - Set cyan curve using XY points
- * cupsInkChannels - Set number of color channels
- * cupsInkLimit - Set total ink limit
- * cupsLightBlackGamma - Set light black curve using gamma + density
- * cupsLightBlackXY - Set light black curve using XY points
- * cupsLightCyanGamma - Set light cyan curve using gamma + density
- * cupsLightCyanXY - Set light cyan curve using XY points
- * cupsLightMagentaGamma - Set light magenta curve using gamma + density
- * cupsLightMagentaXY - Set light magenta curve using XY points
- * cupsMagentaGamma - Set magenta curve using gamma + density
- * cupsMagentaLightDark - Set magenta light/dark transition
- * cupsMagentaXY - Set magenta curve using XY points
- * cupsYellowGamma - Set yellow curve using gamma + density
- * cupsYellowXY - Set yellow curve using XY points
- *
- * The only required attribute is cupsInkChannels.
- *
- * The *XY attributes have precedence over the *Gamma attributes, and
- * the *Light* attributes have precedence over the corresponding
- * *LightDark* attributes.
- */
-
- /*
- * Get the required cupsInkChannels attribute...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsInkChannels", colormodel, media,
- resolution, spec, sizeof(spec))) == NULL)
- return (NULL);
-
- num_channels = atoi(attr->value);
-
- if (num_channels < 1 || num_channels > 7 || num_channels == 5)
- return (NULL);
-
- if ((cmyk = cupsCMYKNew(num_channels)) == NULL)
- return (NULL);
-
- /*
- * Get the optional cupsInkLimit attribute...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsInkLimit", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- cupsCMYKSetInkLimit(cmyk, atof(attr->value));
-
- /*
- * Get the optional cupsBlackGeneration attribute...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsBlackGeneration", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &lower, &upper) == 2)
- cupsCMYKSetBlack(cmyk, lower, upper);
- }
-
- /*
- * Get the optional cupsBlackXY or cupsBlackGamma attributes...
- */
-
- if (num_channels != 3)
- {
- if ((attr = cupsFindAttr(ppd, "cupsBlackXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsBlackXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- switch (num_channels)
- {
- case 1 :
- case 2 :
- cupsCMYKSetCurve(cmyk, 0, num_xypoints, xypoints);
- break;
- case 4 :
- cupsCMYKSetCurve(cmyk, 3, num_xypoints, xypoints);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetCurve(cmyk, 5, num_xypoints, xypoints);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsBlackGamma", colormodel,
- media, resolution, spec,
- sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- switch (num_channels)
- {
- case 1 :
- case 2 :
- cupsCMYKSetGamma(cmyk, 0, gamval, density);
- break;
- case 4 :
- cupsCMYKSetGamma(cmyk, 3, gamval, density);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetGamma(cmyk, 5, gamval, density);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsAllXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsAllXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- switch (num_channels)
- {
- case 1 :
- case 2 :
- cupsCMYKSetCurve(cmyk, 0, num_xypoints, xypoints);
- break;
- case 4 :
- cupsCMYKSetCurve(cmyk, 3, num_xypoints, xypoints);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetCurve(cmyk, 5, num_xypoints, xypoints);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsAllGamma", colormodel,
- media, resolution, spec,
- sizeof(spec))) != NULL &&
- num_channels != 3)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- switch (num_channels)
- {
- case 1 :
- case 2 :
- cupsCMYKSetGamma(cmyk, 0, gamval, density);
- break;
- case 4 :
- cupsCMYKSetGamma(cmyk, 3, gamval, density);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetGamma(cmyk, 5, gamval, density);
- break;
- }
- }
- }
-
- if (num_channels > 2)
- {
- /*
- * Get the optional cupsCyanXY or cupsCyanGamma attributes...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsCyanXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsCyanXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- cupsCMYKSetCurve(cmyk, 0, num_xypoints, xypoints);
- }
- else if ((attr = cupsFindAttr(ppd, "cupsCyanGamma", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- cupsCMYKSetGamma(cmyk, 0, gamval, density);
- }
- else if ((attr = cupsFindAttr(ppd, "cupsAllXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsAllXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- cupsCMYKSetCurve(cmyk, 0, num_xypoints, xypoints);
- }
- else if ((attr = cupsFindAttr(ppd, "cupsAllGamma", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- cupsCMYKSetGamma(cmyk, 0, gamval, density);
- }
-
- /*
- * Get the optional cupsMagentaXY or cupsMagentaGamma attributes...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsMagentaXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsMagentaXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- switch (num_channels)
- {
- case 3 :
- case 4 :
- cupsCMYKSetCurve(cmyk, 1, num_xypoints, xypoints);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetCurve(cmyk, 2, num_xypoints, xypoints);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsMagentaGamma", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- switch (num_channels)
- {
- case 3 :
- case 4 :
- cupsCMYKSetGamma(cmyk, 1, gamval, density);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetGamma(cmyk, 2, gamval, density);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsAllXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsAllXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- switch (num_channels)
- {
- case 3 :
- case 4 :
- cupsCMYKSetCurve(cmyk, 1, num_xypoints, xypoints);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetCurve(cmyk, 2, num_xypoints, xypoints);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsAllGamma", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- switch (num_channels)
- {
- case 3 :
- case 4 :
- cupsCMYKSetGamma(cmyk, 1, gamval, density);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetGamma(cmyk, 2, gamval, density);
- break;
- }
- }
-
- /*
- * Get the optional cupsYellowXY or cupsYellowGamma attributes...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsYellowXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsYellowXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- switch (num_channels)
- {
- case 3 :
- case 4 :
- cupsCMYKSetCurve(cmyk, 2, num_xypoints, xypoints);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetCurve(cmyk, 4, num_xypoints, xypoints);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsYellowGamma", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- switch (num_channels)
- {
- case 3 :
- case 4 :
- cupsCMYKSetGamma(cmyk, 2, gamval, density);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetGamma(cmyk, 4, gamval, density);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsAllXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsAllXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- switch (num_channels)
- {
- case 3 :
- case 4 :
- cupsCMYKSetCurve(cmyk, 2, num_xypoints, xypoints);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetCurve(cmyk, 4, num_xypoints, xypoints);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsAllGamma", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- switch (num_channels)
- {
- case 3 :
- case 4 :
- cupsCMYKSetGamma(cmyk, 2, gamval, density);
- break;
- case 6 :
- case 7 :
- cupsCMYKSetGamma(cmyk, 4, gamval, density);
- break;
- }
- }
- }
-
- /*
- * Get the optional cupsLightBlackXY, cupsLightBlackGamma, or
- * cupsBlackLtDk attributes...
- */
-
- if (num_channels == 2 || num_channels == 7)
- {
- if ((attr = cupsFindAttr(ppd, "cupsLightBlackXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsLightBlackXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- switch (num_channels)
- {
- case 2 :
- cupsCMYKSetCurve(cmyk, 1, num_xypoints, xypoints);
- break;
- case 7 :
- cupsCMYKSetCurve(cmyk, 6, num_xypoints, xypoints);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsLightBlackGamma", colormodel,
- media, resolution, spec,
- sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- switch (num_channels)
- {
- case 2 :
- cupsCMYKSetGamma(cmyk, 1, gamval, density);
- break;
- case 7 :
- cupsCMYKSetGamma(cmyk, 6, gamval, density);
- break;
- }
- }
- else if ((attr = cupsFindAttr(ppd, "cupsBlackLtDk", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &light, &dark) == 2)
- switch (num_channels)
- {
- case 2 :
- cupsCMYKSetLtDk(cmyk, 0, light, dark);
- break;
- case 7 :
- cupsCMYKSetLtDk(cmyk, 5, light, dark);
- break;
- }
- else
- fprintf(stderr, "ERROR: Bad cupsBlackLtDk value \"%s\"!\n",
- attr->value);
- }
- else
- fprintf(stderr, "WARNING: No light black attribute found for %s!\n",
- spec);
- }
-
- if (num_channels >= 6)
- {
- /*
- * Get the optional cupsLightCyanXY, cupsLightCyanGamma, or
- * cupsCyanLtDk attributes...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsLightCyanXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsLightCyanXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- cupsCMYKSetCurve(cmyk, 1, num_xypoints, xypoints);
- }
- else if ((attr = cupsFindAttr(ppd, "cupsLightCyanGamma", colormodel,
- media, resolution, spec,
- sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- cupsCMYKSetGamma(cmyk, 1, gamval, density);
- }
- else if ((attr = cupsFindAttr(ppd, "cupsCyanLtDk", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &light, &dark) == 2)
- cupsCMYKSetLtDk(cmyk, 0, light, dark);
- else
- fprintf(stderr, "ERROR: Bad cupsCyanLtDk value \"%s\"!\n",
- attr->value);
- }
- else
- fprintf(stderr, "WARNING: No light cyan attribute found for %s!\n",
- spec);
-
- /*
- * Get the optional cupsLightMagentaXY, cupsLightMagentaGamma, or
- * cupsMagentaLtDk attributes...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsLightMagentaXY", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- for (num_xypoints = 0, xyptr = xypoints;
- attr != NULL && attr->value != NULL && num_xypoints < 100;
- attr = ppdFindNextAttr(ppd, "cupsLightMagentaXY", spec))
- if (sscanf(attr->value, "%f%f", xyptr, xyptr + 1) == 2)
- {
- num_xypoints ++;
- xyptr += 2;
- }
-
- cupsCMYKSetCurve(cmyk, 3, num_xypoints, xypoints);
- }
- else if ((attr = cupsFindAttr(ppd, "cupsLightMagentaGamma", colormodel,
- media, resolution, spec,
- sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &gamval, &density) == 2)
- cupsCMYKSetGamma(cmyk, 3, gamval, density);
- }
- else if ((attr = cupsFindAttr(ppd, "cupsMagentaLtDk", colormodel, media,
- resolution, spec, sizeof(spec))) != NULL)
- {
- if (sscanf(attr->value, "%f%f", &light, &dark) == 2)
- cupsCMYKSetLtDk(cmyk, 2, light, dark);
- else
- fprintf(stderr, "ERROR: Bad cupsMagentaLtDk value \"%s\"!\n",
- attr->value);
- }
- else
- fprintf(stderr, "WARNING: No light magenta attribute found for %s!\n",
- spec);
- }
-
- /*
- * Return the new profile...
- */
-
- return (cmyk);
-}
-
-
-/*
- * 'cupsCMYKNew()' - Create a new CMYK color separation.
- */
-
-cups_cmyk_t * /* O - New CMYK separation or NULL */
-cupsCMYKNew(int num_channels) /* I - Number of color components */
-{
- cups_cmyk_t *cmyk; /* New color separation */
- int i; /* Looping var */
-
-
- /*
- * Range-check the input...
- */
-
- if (num_channels < 1)
- return (NULL);
-
- /*
- * Allocate memory for the separation...
- */
-
- if ((cmyk = calloc(1, sizeof(cups_cmyk_t))) == NULL)
- return (NULL);
-
- /*
- * Allocate memory for the LUTs...
- */
-
- cmyk->num_channels = num_channels;
-
- if ((cmyk->channels[0] = calloc(num_channels * 256, sizeof(short))) == NULL)
- {
- free(cmyk);
- return (NULL);
- }
-
- for (i = 1; i < num_channels; i ++)
- cmyk->channels[i] = cmyk->channels[0] + i * 256;
-
- /*
- * Fill in the LUTs with unity transitions...
- */
-
- for (i = 0; i < 256; i ++)
- cmyk->black_lut[i] = i;
-
- switch (num_channels)
- {
- case 1 : /* K */
- case 2 : /* Kk */
- for (i = 0; i < 256; i ++)
- {
- cmyk->channels[0][i] = CUPS_MAX_LUT * i / 255;
- }
- break;
- case 3 : /* CMY */
- for (i = 0; i < 256; i ++)
- {
- cmyk->channels[0][i] = CUPS_MAX_LUT * i / 255;
- cmyk->channels[1][i] = CUPS_MAX_LUT * i / 255;
- cmyk->channels[2][i] = CUPS_MAX_LUT * i / 255;
- }
- break;
- case 4 : /* CMYK */
- for (i = 0; i < 256; i ++)
- {
- cmyk->channels[0][i] = CUPS_MAX_LUT * i / 255;
- cmyk->channels[1][i] = CUPS_MAX_LUT * i / 255;
- cmyk->channels[2][i] = CUPS_MAX_LUT * i / 255;
- cmyk->channels[3][i] = CUPS_MAX_LUT * i / 255;
- }
- break;
- case 6 : /* CcMmYK */
- case 7 : /* CcMmYKk */
- for (i = 0; i < 256; i ++)
- {
- cmyk->channels[0][i] = CUPS_MAX_LUT * i / 255;
- cmyk->channels[2][i] = CUPS_MAX_LUT * i / 255;
- cmyk->channels[4][i] = CUPS_MAX_LUT * i / 255;
- cmyk->channels[5][i] = CUPS_MAX_LUT * i / 255;
- }
- break;
- }
-
- /*
- * Return the separation...
- */
-
- return (cmyk);
-}
-
-
-/*
- * 'cupsCMYKSetBlack()' - Set the transition range for CMY to black.
- */
-
-void
-cupsCMYKSetBlack(cups_cmyk_t *cmyk, /* I - CMYK color separation */
- float lower, /* I - No black ink */
- float upper) /* I - Only black ink */
-{
- int i, /* Looping var */
- delta, /* Difference between lower and upper */
- ilower, /* Lower level from 0 to 255 */
- iupper; /* Upper level from 0 to 255 */
-
-
- /*
- * Range check input...
- */
-
- if (cmyk == NULL || lower < 0.0 || lower > 1.0 || upper < 0.0 || upper > 1.0 ||
- lower > upper)
- return;
-
- /*
- * Convert lower and upper to integers from 0 to 255...
- */
-
- ilower = (int)(255.0 * lower + 0.5);
- iupper = (int)(255.0 * upper + 0.5);
- delta = iupper - ilower;
-
- /*
- * Generate the CMY-only data...
- */
-
- for (i = 0; i < ilower; i ++)
- {
- cmyk->black_lut[i] = 0;
- cmyk->color_lut[i] = i;
- }
-
- /*
- * Then the transition data...
- */
-
- for (; i < iupper; i ++)
- {
- cmyk->black_lut[i] = iupper * (i - ilower) / delta;
- cmyk->color_lut[i] = ilower - ilower * (i - ilower) / delta;
- }
-
- /*
- * Then the K-only data...
- */
-
- for (; i < 256; i ++)
- {
- cmyk->black_lut[i] = i;
- cmyk->color_lut[i] = 0;
- }
-
- fprintf(stderr, "DEBUG: cupsCMYKSetBlack(cmyk, lower=%.3f, upper=%.3f)\n", lower, upper);
-
- for (i = 0; i < 256; i += 17)
- fprintf(stderr, "DEBUG: %3d = %3dk + %3dc\n", i,
- cmyk->black_lut[i], cmyk->color_lut[i]);
-}
-
-
-/*
- * 'cupsCMYKSetCurve()' - Set a color transform curve using points.
- */
-
-void
-cupsCMYKSetCurve(cups_cmyk_t *cmyk, /* I - CMYK color separation */
- int channel, /* I - Color channel */
- int num_xypoints,
- /* I - Number of X,Y points */
- const float *xypoints) /* I - X,Y points */
-{
- int i; /* Looping var */
- int xstart; /* Start position */
- int xend; /* End position */
- int xdelta; /* Difference in position */
- int ystart; /* Start value */
- int yend; /* End value */
- int ydelta; /* Difference in value */
-
-
- /*
- * Range check input...
- */
-
- if (cmyk == NULL || channel < 0 || channel >= cmyk->num_channels ||
- num_xypoints < 1 || xypoints == NULL)
- return;
-
- /*
- * Initialize the lookup table for the specified channel...
- */
-
- for (xstart = xend = 0, ystart = yend = 0;
- num_xypoints > 0;
- num_xypoints --, xypoints += 2, xstart = xend, ystart = yend)
- {
- xend = (int)(255.0 * xypoints[1] + 0.5);
- yend = (int)(CUPS_MAX_LUT * xypoints[0] + 0.5);
- xdelta = xend - xstart;
- ydelta = yend - ystart;
-
- for (i = xstart; i < xend; i ++)
- cmyk->channels[channel][i] = ystart + ydelta * (i - xstart) / xdelta;
- }
-
- /*
- * Initialize any trailing values to the maximum of the last data point...
- */
-
- for (i = xend; i < 256; i ++)
- cmyk->channels[channel][i] = yend;
-
- fprintf(stderr, "DEBUG: cupsCMYKSetXY(cmyk, channel=%d, num_xypoints=%d, "
- "xypoints=[%.3f %.3f %.3f %.3f ...])\n", channel,
- num_xypoints, xypoints[0], xypoints[1], xypoints[2], xypoints[3]);
-
- for (i = 0; i < 256; i += 17)
- fprintf(stderr, "DEBUG: %3d = %4d\n", i,
- cmyk->channels[channel + 0][i]);
-}
-
-
-/*
- * 'cupsCMYKSetGamma()' - Set a color transform curve using gamma and density.
- */
-
-void
-cupsCMYKSetGamma(cups_cmyk_t *cmyk, /* I - CMYK color separation */
- int channel, /* I - Ink channel */
- float gamval, /* I - Gamma correction */
- float density) /* I - Maximum density */
-{
- int i; /* Looping var */
-
-
- /*
- * Range check input...
- */
-
- if (cmyk == NULL || channel < 0 || channel >= cmyk->num_channels ||
- gamval <= 0.0 || density <= 0.0 || density > 1.0)
- return;
-
- /*
- * Initialize the lookup table for the specified channel...
- */
-
- for (i = 0; i < 256; i ++)
- cmyk->channels[channel][i] = (int)(density * CUPS_MAX_LUT *
- pow((float)i / 255.0, gamval) + 0.5);
-
- fprintf(stderr, "DEBUG: cupsCMYKSetGamma(cmyk, channel=%d, gamval=%.3f, "
- "density=%.3f)\n", channel, gamval, density);
-
- for (i = 0; i < 256; i += 17)
- fprintf(stderr, "DEBUG: %3d = %4d\n", i,
- cmyk->channels[channel + 0][i]);
-}
-
-
-/*
- * 'cupsCMYKSetInkLimit()' - Set the limit on the amount of ink.
- */
-
-void
-cupsCMYKSetInkLimit(cups_cmyk_t *cmyk, /* I - CMYK color separation */
- float limit) /* I - Limit of ink */
-{
- if (!cmyk || limit < 0.0)
- return;
-
- cmyk->ink_limit = limit * CUPS_MAX_LUT;
-}
-
-
-/*
- * 'cupsCMYKSetLtDk()' - Set light/dark ink transforms.
- */
-
-void
-cupsCMYKSetLtDk(cups_cmyk_t *cmyk, /* I - CMYK color separation */
- int channel, /* I - Dark ink channel (+1 for light) */
- float light, /* I - Light ink only level */
- float dark) /* I - Dark ink only level */
-{
- int i, /* Looping var */
- delta, /* Difference between lower and upper */
- ilight, /* Light level from 0 to 255 */
- idark; /* Dark level from 0 to 255 */
- short lut[256]; /* Original LUT data */
-
-
- /*
- * Range check input...
- */
-
- if (cmyk == NULL || light < 0.0 || light > 1.0 || dark < 0.0 || dark > 1.0 ||
- light > dark || channel < 0 || channel > (cmyk->num_channels - 2))
- return;
-
- /*
- * Convert lower and upper to integers from 0 to 255...
- */
-
- ilight = (int)(255.0 * light + 0.5);
- idark = (int)(255.0 * dark + 0.5);
- delta = idark - ilight;
-
- /*
- * Copy the dark ink LUT...
- */
-
- memcpy(lut, cmyk->channels[channel], sizeof(lut));
-
- /*
- * Generate the light-only data...
- */
-
- for (i = 0; i < ilight; i ++)
- {
- cmyk->channels[channel + 0][i] = 0;
- cmyk->channels[channel + 1][i] = CUPS_MAX_LUT * i / ilight;
- }
-
- /*
- * Then the transition data...
- */
-
- for (; i < idark; i ++)
- {
- cmyk->channels[channel + 0][i] = CUPS_MAX_LUT * idark * (i - ilight) /
- delta / 255;
- cmyk->channels[channel + 1][i] = CUPS_MAX_LUT - CUPS_MAX_LUT *
- (i - ilight) / delta;
- }
-
- /*
- * Then the K-only data...
- */
-
- for (; i < 256; i ++)
- {
- cmyk->channels[channel + 0][i] = CUPS_MAX_LUT * i / 255;
- cmyk->channels[channel + 1][i] = 0;
- }
-
- fprintf(stderr, "DEBUG: cupsCMYKSetLtDk(cmyk, channel=%d, light=%.3f, "
- "dark=%.3f)\n", channel, light, dark);
-
- for (i = 0; i < 256; i += 17)
- fprintf(stderr, "DEBUG: %3d = %4dlt + %4ddk\n", i,
- cmyk->channels[channel + 0][i], cmyk->channels[channel + 1][i]);
-}
-
-
-/*
- * End of "$Id: cmyk.c 9042 2010-03-24 00:45:34Z mike $".
- */
diff --git a/driver/commandtoescpx.c b/driver/commandtoescpx.c
deleted file mode 100644
index ebd95b49..00000000
--- a/driver/commandtoescpx.c
+++ /dev/null
@@ -1,245 +0,0 @@
-/*
- * "$Id: commandtoescpx.c 9793 2011-05-20 03:49:49Z mike $"
- *
- * Advanced EPSON ESC/P command filter for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- *
- * Contents:
- *
- * main() - Main entry and command processing.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include <cups/cups-private.h>
-#include "driver.h"
-#include "data/escp.h"
-
-
-/*
- * 'main()' - Main entry and processing of driver.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- FILE *fp; /* Command file */
- char line[1024], /* Line from file */
- *lineptr; /* Pointer into line */
- int feedpage; /* Feed the page */
- ppd_file_t *ppd; /* PPD file */
-
-
- /*
- * Check for valid arguments...
- */
-
- if (argc < 6 || argc > 7)
- {
- /*
- * We don't have the correct number of arguments; write an error message
- * and return.
- */
-
- _cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options [file]"),
- argv[0]);
- return (1);
- }
-
- /*
- * Open the PPD file...
- */
-
- if ((ppd = ppdOpenFile(getenv("PPD"))) == NULL)
- {
- fputs("ERROR: Unable to open PPD file!\n", stderr);
- return (1);
- }
-
- /*
- * Open the command file as needed...
- */
-
- if (argc == 7)
- {
- if ((fp = fopen(argv[6], "r")) == NULL)
- {
- perror("ERROR: Unable to open command file - ");
- return (1);
- }
- }
- else
- fp = stdin;
-
- /*
- * Some EPSON printers need an additional command issued at the
- * beginning of each job to exit from USB "packet" mode...
- */
-
- if (ppd->model_number & ESCP_USB)
- cupsWritePrintData("\000\000\000\033\001@EJL 1284.4\n@EJL \n\033@", 29);
-
- /*
- * Reset the printer...
- */
-
- cupsWritePrintData("\033@", 2);
-
- /*
- * Enter remote mode...
- */
-
- cupsWritePrintData("\033(R\010\000\000REMOTE1", 13);
- feedpage = 0;
-
- /*
- * Read the commands from the file and send the appropriate commands...
- */
-
- while (fgets(line, sizeof(line), fp) != NULL)
- {
- /*
- * Drop trailing newline...
- */
-
- lineptr = line + strlen(line) - 1;
- if (*lineptr == '\n')
- *lineptr = '\0';
-
- /*
- * Skip leading whitespace...
- */
-
- for (lineptr = line; isspace(*lineptr); lineptr ++);
-
- /*
- * Skip comments and blank lines...
- */
-
- if (*lineptr == '#' || !*lineptr)
- continue;
-
- /*
- * Parse the command...
- */
-
- if (_cups_strncasecmp(lineptr, "Clean", 5) == 0)
- {
- /*
- * Clean heads...
- */
-
- cupsWritePrintData("CH\002\000\000\000", 6);
- }
- else if (_cups_strncasecmp(lineptr, "PrintAlignmentPage", 18) == 0)
- {
- /*
- * Print alignment page...
- */
-
- int phase;
-
- phase = atoi(lineptr + 18);
-
- cupsWritePrintData("DT\003\000\000", 5);
- putchar(phase & 255);
- putchar(phase >> 8);
- feedpage = 1;
- }
- else if (_cups_strncasecmp(lineptr, "PrintSelfTestPage", 17) == 0)
- {
- /*
- * Print version info and nozzle check...
- */
-
- cupsWritePrintData("VI\002\000\000\000", 6);
- cupsWritePrintData("NC\002\000\000\000", 6);
- feedpage = 1;
- }
- else if (_cups_strncasecmp(lineptr, "ReportLevels", 12) == 0)
- {
- /*
- * Report ink levels...
- */
-
- cupsWritePrintData("IQ\001\000\001", 5);
- }
- else if (_cups_strncasecmp(lineptr, "SetAlignment", 12) == 0)
- {
- /*
- * Set head alignment...
- */
-
- int phase, x;
-
- if (sscanf(lineptr + 12, "%d%d", &phase, &x) != 2)
- {
- fprintf(stderr, "ERROR: Invalid printer command \"%s\"!\n", lineptr);
- continue;
- }
-
- cupsWritePrintData("DA\004\000", 4);
- putchar(0);
- putchar(phase);
- putchar(0);
- putchar(x);
- cupsWritePrintData("SV\000\000", 4);
- }
- else
- fprintf(stderr, "ERROR: Invalid printer command \"%s\"!\n", lineptr);
- }
-
- /*
- * Exit remote mode...
- */
-
- cupsWritePrintData("\033\000\000\000", 4);
-
- /*
- * Eject the page as needed...
- */
-
- if (feedpage)
- {
- fputs("PAGE: 1 1\n", stderr);
-
- putchar(13);
- putchar(10);
- putchar(12);
- }
-
- /*
- * Reset the printer...
- */
-
- cupsWritePrintData("\033@", 2);
-
- /*
- * Close the command file and return...
- */
-
- ppdClose(ppd);
-
- if (fp != stdin)
- fclose(fp);
-
- return (0);
-}
-
-
-/*
- * End of "$Id: commandtoescpx.c 9793 2011-05-20 03:49:49Z mike $".
- */
diff --git a/driver/commandtopclx.c b/driver/commandtopclx.c
deleted file mode 100644
index 4e3ec226..00000000
--- a/driver/commandtopclx.c
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * "$Id: commandtopclx.c 9793 2011-05-20 03:49:49Z mike $"
- *
- * Advanced PCL command filter for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- *
- * Contents:
- *
- * main() - Main entry and command processing.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include <cups/cups-private.h>
-#include "driver.h"
-#include "data/pcl.h"
-
-
-/*
- * 'main()' - Main entry and processing of driver.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- FILE *fp; /* Command file */
- char line[1024], /* Line from file */
- *lineptr; /* Pointer into line */
- int feedpage; /* Feed the page */
- ppd_file_t *ppd; /* PPD file */
-
-
- /*
- * Check for valid arguments...
- */
-
- if (argc < 6 || argc > 7)
- {
- /*
- * We don't have the correct number of arguments; write an error message
- * and return.
- */
-
- _cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options [file]"),
- argv[0]);
- return (1);
- }
-
- /*
- * Open the PPD file...
- */
-
- if ((ppd = ppdOpenFile(getenv("PPD"))) == NULL)
- {
- fputs("ERROR: Unable to open PPD file!\n", stderr);
- return (1);
- }
-
- /*
- * Open the command file as needed...
- */
-
- if (argc == 7)
- {
- if ((fp = fopen(argv[6], "r")) == NULL)
- {
- perror("ERROR: Unable to open command file - ");
- return (1);
- }
- }
- else
- fp = stdin;
-
- /*
- * Reset the printer...
- */
-
- cupsWritePrintData("\033E", 2);
-
- /*
- * Read the commands from the file and send the appropriate commands...
- */
-
- feedpage = 0;
-
- while (fgets(line, sizeof(line), fp) != NULL)
- {
- /*
- * Drop trailing newline...
- */
-
- lineptr = line + strlen(line) - 1;
- if (*lineptr == '\n')
- *lineptr = '\0';
-
- /*
- * Skip leading whitespace...
- */
-
- for (lineptr = line; isspace(*lineptr); lineptr ++);
-
- /*
- * Skip comments and blank lines...
- */
-
- if (*lineptr == '#' || !*lineptr)
- continue;
-
- /*
- * Parse the command...
- */
-
- if (_cups_strncasecmp(lineptr, "Clean", 5) == 0 &&
- (ppd->model_number & PCL_INKJET))
- {
- /*
- * Clean heads...
- */
-
- cupsWritePrintData("\033&b16WPML \004\000\006\001\004\001\005\001"
- "\001\004\001\144", 22);
- }
- else
- fprintf(stderr, "ERROR: Invalid printer command \"%s\"!\n", lineptr);
- }
-
- /*
- * Eject the page as needed...
- */
-
- if (feedpage)
- {
- fputs("PAGE: 1 1\n", stderr);
-
- putchar(12);
- }
-
- /*
- * Reset the printer...
- */
-
- cupsWritePrintData("\033E", 2);
-
- /*
- * Close the command file and return...
- */
-
- ppdClose(ppd);
-
- if (fp != stdin)
- fclose(fp);
-
- return (0);
-}
-
-
-/*
- * End of "$Id: commandtopclx.c 9793 2011-05-20 03:49:49Z mike $".
- */
diff --git a/driver/dither.c b/driver/dither.c
deleted file mode 100644
index bebaaece..00000000
--- a/driver/dither.c
+++ /dev/null
@@ -1,306 +0,0 @@
-/*
- * "$Id: dither.c 8937 2009-12-18 23:50:23Z mike $"
- *
- * Dithering routines for CUPS.
- *
- * Copyright 2007 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * cupsDitherDelete() - Free a dithering buffer.
- * cupsDitherLine() - Dither a line of pixels...
- * cupsDitherNew() - Create a dithering buffer.
- */
-
-/*
- * Include necessary headers.
- */
-
-#include "driver.h"
-#include <config.h>
-
-
-/*
- * 'cupsDitherDelete()' - Free a dithering buffer.
- *
- * Returns 0 on success, -1 on failure.
- */
-
-void
-cupsDitherDelete(cups_dither_t *d) /* I - Dithering buffer */
-{
- if (d != NULL)
- free(d);
-}
-
-
-/*
- * 'cupsDitherLine()' - Dither a line of pixels...
- */
-
-void
-cupsDitherLine(cups_dither_t *d, /* I - Dither data */
- const cups_lut_t *lut, /* I - Lookup table */
- const short *data, /* I - Separation data */
- int num_channels,
- /* I - Number of components */
- unsigned char *p) /* O - Pixels */
-{
- register int x, /* Horizontal position in line... */
- pixel, /* Current adjusted pixel... */
- e, /* Current error */
- e0,e1,e2; /* Error values */
- register int errval0, /* First half of error value */
- errval1, /* Second half of error value */
- errbase, /* Base multiplier */
- errbase0, /* Base multiplier for large values */
- errbase1, /* Base multiplier for small values */
- errrange; /* Range of random multiplier */
- register int *p0, /* Error buffer pointers... */
- *p1;
- static char logtable[16384]; /* Error magnitude for randomness */
- static char loginit = 0; /* Has the table been initialized? */
-
-
- if (!loginit)
- {
- /*
- * Initialize a logarithmic table for the magnitude of randomness
- * that is introduced.
- */
-
- loginit = 1;
-
- logtable[0] = 0;
- for (x = 1; x < 2049; x ++)
- logtable[x] = (int)(log(x / 16.0) / log(2.0) + 1.0);
- for (; x < 16384; x ++)
- logtable[x] = logtable[2049];
- }
-
- if (d->row == 0)
- {
- /*
- * Dither from left to right:
- *
- * e0 == p0[0]
- * e1 e2 == p1[-1] p1[0]
- */
-
- p0 = d->errors + 2;
- p1 = d->errors + 2 + d->width + 4;
- e0 = p0[0];
- e1 = 0;
- e2 = 0;
-
- /*
- * Error diffuse each output pixel...
- */
-
- for (x = d->width;
- x > 0;
- x --, p0 ++, p1 ++, p ++, data += num_channels)
- {
- /*
- * Skip blank pixels...
- */
-
- if (*data == 0)
- {
- *p = 0;
- e0 = p0[1];
- p1[-1] = e1;
- e1 = e2;
- e2 = 0;
- continue;
- }
-
- /*
- * Compute the net pixel brightness and brightness error. Set a dot
- * if necessary...
- */
-
- pixel = lut[*data].intensity + e0 / 128;
-
- if (pixel > CUPS_MAX_LUT)
- pixel = CUPS_MAX_LUT;
- else if (pixel < 0)
- pixel = 0;
-
- *p = lut[pixel].pixel;
- e = lut[pixel].error;
-
- /*
- * Set the randomness factor...
- */
-
- if (e > 0)
- errrange = logtable[e];
- else
- errrange = logtable[-e];
-
- errbase = 8 - errrange;
- errrange = errrange * 2 + 1;
-
- /*
- * Randomize the error value.
- */
-
- if (errrange > 1)
- {
- errbase0 = errbase + (CUPS_RAND() % errrange);
- errbase1 = errbase + (CUPS_RAND() % errrange);
- }
- else
- errbase0 = errbase1 = errbase;
-
- /*
- * X 7/16 = X e0
- * 3/16 5/16 1/16 = e1 e2
- */
-
- errval0 = errbase0 * e;
- errval1 = (16 - errbase0) * e;
- e0 = p0[1] + 7 * errval0;
- e1 = e2 + 5 * errval1;
-
- errval0 = errbase1 * e;
- errval1 = (16 - errbase1) * e;
- e2 = errval0;
- p1[-1] = e1 + 3 * errval1;
- }
- }
- else
- {
- /*
- * Dither from right to left:
- *
- * e0 == p0[0]
- * e2 e1 == p1[0] p1[1]
- */
-
- p0 = d->errors + d->width + 1 + d->width + 4;
- p1 = d->errors + d->width + 1;
- p += d->width - 1;
- data += num_channels * (d->width - 1);
- e0 = p0[0];
- e1 = 0;
- e2 = 0;
-
- /*
- * Error diffuse each output pixel...
- */
-
- for (x = d->width;
- x > 0;
- x --, p0 --, p1 --, p --, data -= num_channels)
- {
- /*
- * Skip blank pixels...
- */
-
- if (*data == 0)
- {
- *p = 0;
- e0 = p0[-1];
- p1[1] = e1;
- e1 = e2;
- e2 = 0;
- continue;
- }
-
- /*
- * Compute the net pixel brightness and brightness error. Set a dot
- * if necessary...
- */
-
- pixel = lut[*data].intensity + e0 / 128;
-
- if (pixel > CUPS_MAX_LUT)
- pixel = CUPS_MAX_LUT;
- else if (pixel < 0)
- pixel = 0;
-
- *p = lut[pixel].pixel;
- e = lut[pixel].error;
-
- /*
- * Set the randomness factor...
- */
-
- if (e > 0)
- errrange = logtable[e];
- else
- errrange = logtable[-e];
-
- errbase = 8 - errrange;
- errrange = errrange * 2 + 1;
-
- /*
- * Randomize the error value.
- */
-
- if (errrange > 1)
- {
- errbase0 = errbase + (CUPS_RAND() % errrange);
- errbase1 = errbase + (CUPS_RAND() % errrange);
- }
- else
- errbase0 = errbase1 = errbase;
-
- /*
- * X 7/16 = X e0
- * 3/16 5/16 1/16 = e1 e2
- */
-
- errval0 = errbase0 * e;
- errval1 = (16 - errbase0) * e;
- e0 = p0[-1] + 7 * errval0;
- e1 = e2 + 5 * errval1;
-
- errval0 = errbase1 * e;
- errval1 = (16 - errbase1) * e;
- e2 = errval0;
- p1[1] = e1 + 3 * errval1;
- }
- }
-
- /*
- * Update to the next row...
- */
-
- d->row = 1 - d->row;
-}
-
-
-/*
- * 'cupsDitherNew()' - Create an error-diffusion dithering buffer.
- */
-
-cups_dither_t * /* O - New state array */
-cupsDitherNew(int width) /* I - Width of output in pixels */
-{
- cups_dither_t *d; /* New dithering buffer */
-
-
- if ((d = (cups_dither_t *)calloc(1, sizeof(cups_dither_t) +
- 2 * (width + 4) *
- sizeof(int))) == NULL)
- return (NULL);
-
- d->width = width;
-
- return (d);
-}
-
-
-/*
- * End of "$Id: dither.c 8937 2009-12-18 23:50:23Z mike $".
- */
diff --git a/driver/driver.h b/driver/driver.h
deleted file mode 100644
index 8cff244f..00000000
--- a/driver/driver.h
+++ /dev/null
@@ -1,249 +0,0 @@
-/*
- * "$Id: driver.h 7306 2008-02-15 00:52:38Z mike $"
- *
- * Printer driver utilities header file for CUPS.
- *
- * Copyright 2007 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- */
-
-#ifndef _CUPS_DRIVER_H_
-# define _CUPS_DRIVER_H_
-
-# ifdef __cplusplus
-extern "C" {
-# endif /* __cplusplus */
-
-/*
- * Include necessary headers...
- */
-
-# include <stdio.h>
-# include <stdlib.h>
-# include <time.h>
-# include <math.h>
-
-# if defined(WIN32) || defined(__EMX__)
-# include <io.h>
-# else
-# include <unistd.h>
-# include <fcntl.h>
-# endif /* WIN32 || __EMX__ */
-
-# include <cups/cups.h>
-# include <cups/raster.h>
-
-
-/*
- * Common macros...
- */
-
-# ifndef min
-# define min(a,b) ((a) < (b) ? (a) : (b))
-# define max(a,b) ((a) > (b) ? (a) : (b))
-# endif /* !min */
-
-
-/*
- * Constants...
- */
-
-#define CUPS_MAX_CHAN 15 /* Maximum number of color components */
-#define CUPS_MAX_LUT 4095 /* Maximum LUT value */
-#define CUPS_MAX_RGB 4 /* Maximum number of sRGB components */
-
-
-/*
- * Types/structures for the various routines.
- */
-
-typedef struct cups_lut_s /**** Lookup Table for Dithering ****/
-{
- short intensity; /* Adjusted intensity */
- short pixel; /* Output pixel value */
- int error; /* Error from desired value */
-} cups_lut_t;
-
-typedef struct cups_dither_s /**** Dithering State ****/
-{
- int width; /* Width of buffer */
- int row; /* Current row */
- int errors[96]; /* Error values */
-} cups_dither_t;
-
-typedef struct cups_sample_s /**** Color sample point ****/
-{
- unsigned char rgb[3]; /* sRGB values */
- unsigned char colors[CUPS_MAX_RGB]; /* Color values */
-} cups_sample_t;
-
-typedef struct cups_rgb_s /**** Color separation lookup table ****/
-{
- int cube_size; /* Size of color cube (2-N) on a side */
- int num_channels; /* Number of colors per sample */
- unsigned char ****colors; /* 4-D array of sample values */
- int cube_index[256]; /* Index into cube for a given sRGB value */
- int cube_mult[256]; /* Multiplier value for a given sRGB value */
- int cache_init; /* Are cached values initialized? */
- unsigned char black[CUPS_MAX_RGB]; /* Cached black (sRGB = 0,0,0) */
- unsigned char white[CUPS_MAX_RGB]; /* Cached white (sRGB = 255,255,255) */
-} cups_rgb_t;
-
-typedef struct cups_cmyk_s /**** Simple CMYK lookup table ****/
-{
- unsigned char black_lut[256]; /* Black generation LUT */
- unsigned char color_lut[256]; /* Color removal LUT */
- int ink_limit; /* Ink limit */
- int num_channels; /* Number of components */
- short *channels[CUPS_MAX_CHAN];
- /* Lookup tables */
-} cups_cmyk_t;
-
-
-/*
- * Globals...
- */
-
-extern const unsigned char
- cups_srgb_lut[256];
- /* sRGB gamma lookup table */
-extern const unsigned char
- cups_scmy_lut[256];
- /* sRGB gamma lookup table (inverted) */
-
-
-/*
- * Prototypes...
- */
-
-/*
- * Attribute function...
- */
-
-extern ppd_attr_t *cupsFindAttr(ppd_file_t *ppd, const char *name,
- const char *colormodel,
- const char *media,
- const char *resolution,
- char *spec, int specsize);
-
-/*
- * Byte checking functions...
- */
-
-extern int cupsCheckBytes(const unsigned char *, int);
-extern int cupsCheckValue(const unsigned char *, int,
- const unsigned char);
-
-/*
- * Dithering functions...
- */
-
-extern void cupsDitherLine(cups_dither_t *d, const cups_lut_t *lut,
- const short *data, int num_channels,
- unsigned char *p);
-extern cups_dither_t *cupsDitherNew(int width);
-extern void cupsDitherDelete(cups_dither_t *);
-
-/*
- * Lookup table functions for dithering...
- */
-
-extern cups_lut_t *cupsLutNew(int num_vals, const float *vals);
-extern void cupsLutDelete(cups_lut_t *lut);
-extern cups_lut_t *cupsLutLoad(ppd_file_t *ppd,
- const char *colormodel,
- const char *media,
- const char *resolution,
- const char *ink);
-
-
-/*
- * Bit packing functions...
- */
-
-extern void cupsPackHorizontal(const unsigned char *,
- unsigned char *, int,
- const unsigned char, const int);
-extern void cupsPackHorizontal2(const unsigned char *,
- unsigned char *, int, const int);
-extern void cupsPackHorizontalBit(const unsigned char *,
- unsigned char *, int,
- const unsigned char,
- const unsigned char);
-extern void cupsPackVertical(const unsigned char *, unsigned char *,
- int, const unsigned char, const int);
-
-/*
- * Color separation functions...
- */
-
-extern void cupsRGBDelete(cups_rgb_t *rgb);
-extern void cupsRGBDoGray(cups_rgb_t *rgb,
- const unsigned char *input,
- unsigned char *output, int num_pixels);
-extern void cupsRGBDoRGB(cups_rgb_t *rgb,
- const unsigned char *input,
- unsigned char *output, int num_pixels);
-extern cups_rgb_t *cupsRGBLoad(ppd_file_t *ppd,
- const char *colormodel,
- const char *media,
- const char *resolution);
-extern cups_rgb_t *cupsRGBNew(int num_samples, cups_sample_t *samples,
- int cube_size, int num_channels);
-
-/*
- * CMYK separation functions...
- */
-
-extern cups_cmyk_t *cupsCMYKNew(int num_channels);
-extern void cupsCMYKDelete(cups_cmyk_t *cmyk);
-extern void cupsCMYKDoBlack(const cups_cmyk_t *cmyk,
- const unsigned char *input,
- short *output, int num_pixels);
-extern void cupsCMYKDoCMYK(const cups_cmyk_t *cmyk,
- const unsigned char *input,
- short *output, int num_pixels);
-extern void cupsCMYKDoGray(const cups_cmyk_t *cmyk,
- const unsigned char *input,
- short *output, int num_pixels);
-extern void cupsCMYKDoRGB(const cups_cmyk_t *cmyk,
- const unsigned char *input,
- short *output, int num_pixels);
-extern cups_cmyk_t *cupsCMYKLoad(ppd_file_t *ppd,
- const char *colormodel,
- const char *media,
- const char *resolution);
-extern void cupsCMYKSetBlack(cups_cmyk_t *cmyk,
- float lower, float upper);
-extern void cupsCMYKSetCurve(cups_cmyk_t *cmyk, int channel,
- int num_xypoints,
- const float *xypoints);
-extern void cupsCMYKSetGamma(cups_cmyk_t *cmyk, int channel,
- float gamval, float density);
-extern void cupsCMYKSetInkLimit(cups_cmyk_t *cmyk, float limit);
-extern void cupsCMYKSetLtDk(cups_cmyk_t *cmyk, int channel,
- float light, float dark);
-
-
-/*
- * Convenience macro for writing print data...
- */
-
-# define cupsWritePrintData(s,n) fwrite((s), 1, (n), stdout)
-
-# ifdef __cplusplus
-}
-# endif /* __cplusplus */
-
-#endif /* !_CUPS_DRIVER_H_ */
-
-/*
- * End of "$Id: driver.h 7306 2008-02-15 00:52:38Z mike $".
- */
-
diff --git a/driver/image.pgm b/driver/image.pgm
deleted file mode 100644
index c0b7a22f..00000000
--- a/driver/image.pgm
+++ /dev/null
Binary files differ
diff --git a/driver/image.ppm b/driver/image.ppm
deleted file mode 100644
index 3823fe48..00000000
--- a/driver/image.ppm
+++ /dev/null
Binary files differ
diff --git a/driver/libcupsdriver.exp b/driver/libcupsdriver.exp
deleted file mode 100644
index fff6506f..00000000
--- a/driver/libcupsdriver.exp
+++ /dev/null
@@ -1,30 +0,0 @@
-_cupsCMYKDelete
-_cupsCMYKDoBlack
-_cupsCMYKDoCMYK
-_cupsCMYKDoGray
-_cupsCMYKDoRGB
-_cupsCMYKLoad
-_cupsCMYKNew
-_cupsCMYKSetBlack
-_cupsCMYKSetCurve
-_cupsCMYKSetGamma
-_cupsCMYKSetInkLimit
-_cupsCMYKSetLtDk
-_cupsCheckBytes
-_cupsCheckValue
-_cupsDitherDelete
-_cupsDitherLine
-_cupsDitherNew
-_cupsFindAttr
-_cupsLutDelete
-_cupsLutLoad
-_cupsLutNew
-_cupsPackHorizontal
-_cupsPackHorizontal2
-_cupsPackHorizontalBit
-_cupsPackVertical
-_cupsRGBDelete
-_cupsRGBDoGray
-_cupsRGBDoRGB
-_cupsRGBLoad
-_cupsRGBNew
diff --git a/driver/lut.c b/driver/lut.c
deleted file mode 100644
index 76684caf..00000000
--- a/driver/lut.c
+++ /dev/null
@@ -1,202 +0,0 @@
-/*
- * "$Id: lut.c 7306 2008-02-15 00:52:38Z mike $"
- *
- * Lookup table routines for CUPS.
- *
- * Copyright 2007 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * cupsLutDelete() - Free the memory used by a lookup table.
- * cupsLutLoad() - Load a LUT from a PPD file.
- * cupsLutNew() - Make a lookup table from a list of pixel values.
- */
-
-/*
- * Include necessary headers.
- */
-
-#include "driver.h"
-#include <math.h>
-
-
-/*
- * 'cupsLutDelete()' - Free the memory used by a lookup table.
- */
-
-void
-cupsLutDelete(cups_lut_t *lut) /* I - Lookup table to free */
-{
- if (lut != NULL)
- free(lut);
-}
-
-
-/*
- * 'cupsLutLoad()' - Load a LUT from a PPD file.
- */
-
-cups_lut_t * /* O - New lookup table */
-cupsLutLoad(ppd_file_t *ppd, /* I - PPD file */
- const char *colormodel, /* I - Color model */
- const char *media, /* I - Media type */
- const char *resolution, /* I - Resolution */
- const char *ink) /* I - Ink name */
-{
- char name[PPD_MAX_NAME], /* Attribute name */
- spec[PPD_MAX_NAME]; /* Attribute spec */
- ppd_attr_t *attr; /* Attribute */
- int nvals; /* Number of values */
- float vals[4]; /* Values */
-
-
- /*
- * Range check input...
- */
-
- if (!ppd || !colormodel || !media || !resolution || !ink)
- return (NULL);
-
- /*
- * Try to find the LUT values...
- */
-
- snprintf(name, sizeof(name), "cups%sDither", ink);
-
- if ((attr = cupsFindAttr(ppd, name, colormodel, media, resolution, spec,
- sizeof(spec))) == NULL)
- attr = cupsFindAttr(ppd, "cupsAllDither", colormodel, media,
- resolution, spec, sizeof(spec));
-
- if (!attr)
- return (NULL);
-
- vals[0] = 0.0;
- vals[1] = 0.0;
- vals[2] = 0.0;
- vals[3] = 0.0;
- nvals = sscanf(attr->value, "%f%f%f", vals + 1, vals + 2, vals + 3) + 1;
-
- fprintf(stderr, "DEBUG: Loaded LUT %s from PPD with values [%.3f %.3f %.3f %.3f]\n",
- name, vals[0], vals[1], vals[2], vals[3]);
-
- return (cupsLutNew(nvals, vals));
-}
-
-
-/*
- * 'cupsLutNew()' - Make a lookup table from a list of pixel values.
- *
- * Returns a pointer to the lookup table on success, NULL on failure.
- */
-
-cups_lut_t * /* O - New lookup table */
-cupsLutNew(int num_values, /* I - Number of values */
- const float *values) /* I - Lookup table values */
-{
- int pixel; /* Pixel value */
- cups_lut_t *lut; /* Lookup table */
- int start, /* Start value */
- end, /* End value */
- maxval; /* Maximum value */
-
-
- /*
- * Range check...
- */
-
- if (!num_values || !values)
- return (NULL);
-
- /*
- * Allocate memory for the lookup table...
- */
-
- if ((lut = (cups_lut_t *)calloc((CUPS_MAX_LUT + 1),
- sizeof(cups_lut_t))) == NULL)
- return (NULL);
-
- /*
- * Generate the dither lookup table. The pixel values are roughly
- * defined by a piecewise linear curve that has an intensity value
- * at each output pixel. This isn't perfectly accurate, but it's
- * close enough for jazz.
- */
-
- maxval = CUPS_MAX_LUT / values[num_values - 1];
-
- for (start = 0; start <= CUPS_MAX_LUT; start ++)
- lut[start].intensity = start * maxval / CUPS_MAX_LUT;
-
- for (pixel = 0; pixel < num_values; pixel ++)
- {
- /*
- * Select start and end values for this pixel...
- */
-
- if (pixel == 0)
- start = 0;
- else
- start = (int)(0.5 * maxval * (values[pixel - 1] +
- values[pixel])) + 1;
-
- if (start < 0)
- start = 0;
- else if (start > CUPS_MAX_LUT)
- start = CUPS_MAX_LUT;
-
- if (pixel == (num_values - 1))
- end = CUPS_MAX_LUT;
- else
- end = (int)(0.5 * maxval * (values[pixel] + values[pixel + 1]));
-
- if (end < 0)
- end = 0;
- else if (end > CUPS_MAX_LUT)
- end = CUPS_MAX_LUT;
-
- if (start == end)
- break;
-
- /*
- * Generate lookup values and errors for each pixel.
- */
-
- while (start <= end)
- {
- lut[start].pixel = pixel;
- if (start == 0)
- lut[0].error = 0;
- else
- lut[start].error = start - maxval * values[pixel];
-
- start ++;
- }
- }
-
- /*
- * Show the lookup table...
- */
-
- for (start = 0; start <= CUPS_MAX_LUT; start += CUPS_MAX_LUT / 15)
- fprintf(stderr, "DEBUG: %d = %d/%d/%d\n", start, lut[start].intensity,
- lut[start].pixel, lut[start].error);
-
- /*
- * Return the lookup table...
- */
-
- return (lut);
-}
-
-
-/*
- * End of "$Id: lut.c 7306 2008-02-15 00:52:38Z mike $".
- */
diff --git a/driver/pack.c b/driver/pack.c
deleted file mode 100644
index db9e5de4..00000000
--- a/driver/pack.c
+++ /dev/null
@@ -1,307 +0,0 @@
-/*
- * "$Id: pack.c 7306 2008-02-15 00:52:38Z mike $"
- *
- * Bit packing routines for CUPS.
- *
- * Copyright 2007 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * cupsPackHorizontal() - Pack pixels horizontally...
- * cupsPackHorizontal2() - Pack 2-bit pixels horizontally...
- * cupsPackHorizontalBit() - Pack pixels horizontally by bit...
- * cupsPackVertical() - Pack pixels vertically...
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "driver.h"
-
-
-/*
- * 'cupsPackHorizontal()' - Pack pixels horizontally...
- */
-
-void
-cupsPackHorizontal(const unsigned char *ipixels,/* I - Input pixels */
- unsigned char *obytes, /* O - Output bytes */
- int width, /* I - Number of pixels */
- const unsigned char clearto, /* I - Initial value of bytes */
- const int step) /* I - Step value between pixels */
-{
- register unsigned char b; /* Current byte */
-
-
- /*
- * Do whole bytes first...
- */
-
- while (width > 7)
- {
- b = clearto;
-
- if (*ipixels)
- b ^= 0x80;
- ipixels += step;
- if (*ipixels)
- b ^= 0x40;
- ipixels += step;
- if (*ipixels)
- b ^= 0x20;
- ipixels += step;
- if (*ipixels)
- b ^= 0x10;
- ipixels += step;
- if (*ipixels)
- b ^= 0x08;
- ipixels += step;
- if (*ipixels)
- b ^= 0x04;
- ipixels += step;
- if (*ipixels)
- b ^= 0x02;
- ipixels += step;
- if (*ipixels)
- b ^= 0x01;
- ipixels += step;
-
- *obytes++ = b;
-
- width -= 8;
- }
-
- /*
- * Then do the last N bytes (N < 8)...
- */
-
- b = clearto;
-
- switch (width)
- {
- case 7 :
- if (ipixels[6 * step])
- b ^= 0x02;
- case 6 :
- if (ipixels[5 * step])
- b ^= 0x04;
- case 5 :
- if (ipixels[4 * step])
- b ^= 0x08;
- case 4 :
- if (ipixels[3 * step])
- b ^= 0x10;
- case 3 :
- if (ipixels[2 * step])
- b ^= 0x20;
- case 2 :
- if (ipixels[1 * step])
- b ^= 0x40;
- case 1 :
- if (ipixels[0])
- b ^= 0x80;
- *obytes = b;
- break;
- }
-}
-
-
-/*
- * 'cupsPackHorizontal2()' - Pack 2-bit pixels horizontally...
- */
-
-void
-cupsPackHorizontal2(const unsigned char *ipixels, /* I - Input pixels */
- unsigned char *obytes, /* O - Output bytes */
- int width, /* I - Number of pixels */
- const int step) /* I - Stepping value */
-{
- register unsigned char b; /* Current byte */
-
-
- /*
- * Do whole bytes first...
- */
-
- while (width > 3)
- {
- b = *ipixels;
- ipixels += step;
- b = (b << 2) | *ipixels;
- ipixels += step;
- b = (b << 2) | *ipixels;
- ipixels += step;
- b = (b << 2) | *ipixels;
- ipixels += step;
-
- *obytes++ = b;
-
- width -= 4;
- }
-
- /*
- * Then do the last N bytes (N < 4)...
- */
-
- b = 0;
-
- switch (width)
- {
- case 3 :
- b = ipixels[2 * step];
- case 2 :
- b = (b << 2) | ipixels[step];
- case 1 :
- b = (b << 2) | ipixels[0];
- *obytes = b << (8 - 2 * width);
- break;
- }
-}
-
-
-/*
- * 'cupsPackHorizontalBit()' - Pack pixels horizontally by bit...
- */
-
-void
-cupsPackHorizontalBit(const unsigned char *ipixels, /* I - Input pixels */
- unsigned char *obytes, /* O - Output bytes */
- int width, /* I - Number of pixels */
- const unsigned char clearto, /* I - Initial value of bytes */
- const unsigned char bit) /* I - Bit to check */
-{
- register unsigned char b; /* Current byte */
-
-
- /*
- * Do whole bytes first...
- */
-
- while (width > 7)
- {
- b = clearto;
-
- if (*ipixels++ & bit)
- b ^= 0x80;
- if (*ipixels++ & bit)
- b ^= 0x40;
- if (*ipixels++ & bit)
- b ^= 0x20;
- if (*ipixels++ & bit)
- b ^= 0x10;
- if (*ipixels++ & bit)
- b ^= 0x08;
- if (*ipixels++ & bit)
- b ^= 0x04;
- if (*ipixels++ & bit)
- b ^= 0x02;
- if (*ipixels++ & bit)
- b ^= 0x01;
-
- *obytes++ = b;
-
- width -= 8;
- }
-
- /*
- * Then do the last N bytes (N < 8)...
- */
-
- b = clearto;
-
- switch (width)
- {
- case 7 :
- if (ipixels[6] & bit)
- b ^= 0x02;
- case 6 :
- if (ipixels[5] & bit)
- b ^= 0x04;
- case 5 :
- if (ipixels[4] & bit)
- b ^= 0x08;
- case 4 :
- if (ipixels[3] & bit)
- b ^= 0x10;
- case 3 :
- if (ipixels[2] & bit)
- b ^= 0x20;
- case 2 :
- if (ipixels[1] & bit)
- b ^= 0x40;
- case 1 :
- if (ipixels[0] & bit)
- b ^= 0x80;
- *obytes = b;
- break;
- }
-}
-
-
-/*
- * 'cupsPackVertical()' - Pack pixels vertically...
- */
-
-void
-cupsPackVertical(const unsigned char *ipixels, /* I - Input pixels */
- unsigned char *obytes, /* O - Output bytes */
- int width, /* I - Number of input pixels */
- const unsigned char bit, /* I - Output bit */
- const int step) /* I - Number of bytes between columns */
-{
- /*
- * Loop through the entire array...
- */
-
- while (width > 7)
- {
- if (*ipixels++)
- *obytes ^= bit;
- obytes += step;
- if (*ipixels++)
- *obytes ^= bit;
- obytes += step;
- if (*ipixels++)
- *obytes ^= bit;
- obytes += step;
- if (*ipixels++)
- *obytes ^= bit;
- obytes += step;
- if (*ipixels++)
- *obytes ^= bit;
- obytes += step;
- if (*ipixels++)
- *obytes ^= bit;
- obytes += step;
- if (*ipixels++)
- *obytes ^= bit;
- obytes += step;
- if (*ipixels++)
- *obytes ^= bit;
- obytes += step;
-
- width -= 8;
- }
-
- while (width > 0)
- {
- if (*ipixels++)
- *obytes ^= bit;
-
- obytes += step;
- width --;
- }
-}
-
-
-/*
- * End of "$Id: pack.c 7306 2008-02-15 00:52:38Z mike $".
- */
diff --git a/driver/pcl-common.c b/driver/pcl-common.c
deleted file mode 100644
index f5aa2447..00000000
--- a/driver/pcl-common.c
+++ /dev/null
@@ -1,272 +0,0 @@
-/*
- * "$Id: pcl-common.c 7306 2008-02-15 00:52:38Z mike $"
- *
- * Common PCL functions for CUPS.
- *
- * Copyright 2007 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * pcl_set_media_size() - Set media size using the page size command.
- * pjl_write() - Write a PJL command string, performing
- * substitutions as needed.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "driver.h"
-#include "pcl-common.h"
-#include <math.h>
-
-
-/*
- * 'pcl_set_media_size()' - Set media size using the page size command.
- */
-
-void
-pcl_set_media_size(ppd_file_t *ppd, /* I - PPD file */
- float width, /* I - Width of page */
- float length) /* I - Length of page */
-{
- (void)width;
-
- printf("\033&l0O"); /* Set portrait orientation */
-
- if (ppd->model_number & PCL_PAPER_SIZE)
- switch ((int)(length + 0.5f))
- {
- case 419 : /* Postcard */
- printf("\033&l71A"); /* Set page size */
- break;
-
- case 540 : /* Monarch Envelope */
- printf("\033&l80A"); /* Set page size */
- break;
-
- case 567 : /* Double Postcard */
- printf("\033&l72A"); /* Set page size */
- break;
-
- case 595 : /* A5 */
- printf("\033&l25A"); /* Set page size */
- break;
-
- case 612 : /* Statement */
- printf("\033&l5A"); /* Set page size */
- break;
-
- case 624 : /* DL Envelope */
- printf("\033&l90A"); /* Set page size */
- break;
-
- case 649 : /* C5 Envelope */
- printf("\033&l91A"); /* Set page size */
- break;
-
- case 684 : /* COM-10 Envelope */
- printf("\033&l81A"); /* Set page size */
- break;
-
- case 709 : /* B5 Envelope */
- printf("\033&l100A"); /* Set page size */
- break;
-
- case 729 : /* B5 */
- printf("\033&l45A"); /* Set page size */
- break;
-
- case 756 : /* Executive */
- printf("\033&l1A"); /* Set page size */
- break;
-
- case 792 : /* Letter */
- printf("\033&l2A"); /* Set page size */
- break;
-
- case 842 : /* A4 */
- printf("\033&l26A"); /* Set page size */
- break;
-
- case 936 : /* Foolscap */
- printf("\033&l23A"); /* Set page size */
- break;
-
- case 1008 : /* Legal */
- printf("\033&l3A"); /* Set page size */
- break;
-
- case 1032 : /* B4 */
- printf("\033&l46A"); /* Set page size */
- break;
-
- case 1191 : /* A3 */
- printf("\033&l27A"); /* Set page size */
- break;
-
- case 1224 : /* Tabloid */
- printf("\033&l6A"); /* Set page size */
- break;
-
- default :
- printf("\033&l101A"); /* Set page size */
- printf("\033&l6D\033&k12H"); /* Set 6 LPI, 10 CPI */
- printf("\033&l%.2fP", length / 12.0);
- /* Set page length */
- printf("\033&l%.0fF", length / 12.0);
- /* Set text length to page */
- break;
- }
- else
- {
- printf("\033&l6D\033&k12H"); /* Set 6 LPI, 10 CPI */
- printf("\033&l%.2fP", length / 12.0);
- /* Set page length */
- printf("\033&l%.0fF", length / 12.0);
- /* Set text length to page */
- }
-
- printf("\033&l0L"); /* Turn off perforation skip */
- printf("\033&l0E"); /* Reset top margin to 0 */
-}
-
-
-/*
- * 'pjl_write()' - Write a PJL command string, performing substitutions as needed.
- */
-
-void
-pjl_write(ppd_file_t *ppd, /* I - PPD file */
- const char *format, /* I - Format string */
- const char *value, /* I - Value for %s */
- int job_id, /* I - Job ID */
- const char *user, /* I - Username */
- const char *title, /* I - Title */
- int num_options, /* I - Number of options */
- cups_option_t *options) /* I - Options */
-{
- const char *optval; /* Option value */
- char match[255], /* Match string */
- *mptr; /* Pointer into match string */
-
-
- if (!format)
- return;
-
- while (*format)
- {
- if (*format == '%')
- {
- /*
- * Perform substitution...
- */
-
- format ++;
- switch (*format)
- {
- case 'b' : /* job-billing */
- if ((optval = cupsGetOption("job-billing", num_options,
- options)) != NULL)
- fputs(optval, stdout);
- break;
-
- case 'h' : /* job-originating-host-name */
- if ((optval = cupsGetOption("job-originating-host-name",
- num_options, options)) != NULL)
- fputs(optval, stdout);
- break;
-
- case 'j' : /* job-id */
- printf("%d", job_id);
- break;
-
- case 'n' : /* CR + LF */
- putchar('\r');
- putchar('\n');
- break;
-
- case 'q' : /* double quote (") */
- putchar('\"');
- break;
-
- case 's' : /* "value" */
- if (value)
- fputs(value, stdout);
- break;
-
- case 't' : /* job-name */
- fputs(title, stdout);
- break;
-
- case 'u' : /* job-originating-user-name */
- fputs(user, stdout);
- break;
-
- case '?' : /* ?value:string; */
- /*
- * Get the match value...
- */
-
- for (format ++, mptr = match; *format && *format != ':'; format ++)
- if (mptr < (match + sizeof(match) - 1))
- *mptr++ = *format;
-
- if (!*format)
- return;
-
- /*
- * See if we have a match...
- */
-
- format ++;
- *mptr = '\0';
-
- if (!value || strcmp(match, value))
- {
- /*
- * Value doesn't match; skip the string that follows...
- */
-
- while (*format && *format != ';')
- format ++;
- }
- else
- {
- /*
- * Value matches; copy the string that follows...
- */
-
- while (*format && *format != ';')
- putchar(*format++);
- }
-
- if (!*format)
- return;
- break;
-
- default : /* Anything else */
- putchar('%');
- case '%' : /* %% = single % */
- putchar(*format);
- break;
- }
- }
- else
- putchar(*format);
-
- format ++;
- }
-}
-
-
-/*
- * End of "$Id: pcl-common.c 7306 2008-02-15 00:52:38Z mike $".
- */
diff --git a/driver/pcl-common.h b/driver/pcl-common.h
deleted file mode 100644
index 0b349508..00000000
--- a/driver/pcl-common.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * "$Id: pcl-common.h 9042 2010-03-24 00:45:34Z mike $"
- *
- * Common HP-PCL definitions for CUPS.
- *
- * Copyright 2007-2010 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products, All Rights Reserved.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- */
-
-/*
- * Include necessary headers...
- */
-
-#include <cups/string-private.h>
-#include "data/pcl.h"
-
-
-/*
- * Functions/macros...
- */
-
-#define pcl_reset()\
- printf("\033E")
-#define pcl_set_copies(copies)\
- printf("\033&l%dX", (copies))
-#define pcl_set_pcl_mode(m)\
- printf("\033%%%dA", (m))
-#define pcl_set_hpgl_mode(m)\
- printf("\033%%%dB", (m))
-#define pcl_set_negative_motion()\
- printf("\033&a1N")
-#define pcl_set_media_source(source)\
- printf("\033&l%dH", source)
-#define pcl_set_media_type(type)\
- printf("\033&l%dM", type)
-#define pcl_set_duplex(duplex,landscape)\
- if (duplex) printf("\033&l%dS", (duplex) + (landscape))
-#define pcl_set_simple_black()\
- printf("\033*r-1U")
-#define pcl_set_simple_color()\
- printf("\033*r3U")
-#define pcl_set_simple_cmy()\
- printf("\033*r-3U")
-#define pcl_set_simple_kcmy()\
- printf("\033*r-4U")
-#define pcl_set_simple_resolution(r)\
- printf("\033*t%dR", (r))
-
-#define pjl_escape()\
- printf("\033%%-12345X@PJL\r\n")
-#define pjl_set_job(job_id,user,title)\
- printf("@PJL JOB NAME = \"%s\" DISPLAY = \"%d %s %s\"\r\n", \
- (title), (job_id), (user), (title))
-#define pjl_enter_language(lang)\
- printf("@PJL ENTER LANGUAGE=%s\r\n", (lang))
-
-extern void pcl_set_media_size(ppd_file_t *ppd, float width, float length);
-extern void pjl_write(ppd_file_t *ppd, const char *format,
- const char *value, int job_id,
- const char *user, const char *title,
- int num_options, cups_option_t *options);
-
-/*
- * End of "$Id: pcl-common.h 9042 2010-03-24 00:45:34Z mike $".
- */
diff --git a/driver/rastertoescpx.c b/driver/rastertoescpx.c
deleted file mode 100644
index 6e4dd4ee..00000000
--- a/driver/rastertoescpx.c
+++ /dev/null
@@ -1,1931 +0,0 @@
-/*
- * "$Id: rastertoescpx.c 9382 2010-11-20 01:03:46Z mike $"
- *
- * Advanced EPSON ESC/P raster driver for CUPS.
- *
- * Copyright 2007-2010 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * Setup() - Prepare the printer for graphics output.
- * StartPage() - Start a page of graphics.
- * EndPage() - Finish a page of graphics.
- * Shutdown() - Shutdown a printer.
- * CancelJob() - Cancel the current job...
- * CompressData() - Compress a line of graphics.
- * OutputBand() - Output a band of graphics.
- * ProcessLine() - Read graphics from the page stream and output
- * as needed.
- * main() - Main entry and processing of driver.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "driver.h"
-#include <cups/language-private.h>
-#include <cups/string-private.h>
-#include "data/escp.h"
-#include <signal.h>
-
-
-/*
- * Softweave data...
- */
-
-typedef struct cups_weave_str
-{
- struct cups_weave_str *prev, /* Previous band */
- *next; /* Next band */
- int x, y, /* Column/Line on the page */
- plane, /* Color plane */
- dirty, /* Is this buffer dirty? */
- row, /* Row in the buffer */
- count; /* Max rows this pass */
- unsigned char *buffer; /* Data buffer */
-} cups_weave_t;
-
-
-/*
- * Globals...
- */
-
-cups_rgb_t *RGB; /* RGB color separation data */
-cups_cmyk_t *CMYK; /* CMYK color separation data */
-unsigned char *PixelBuffer, /* Pixel buffer */
- *CMYKBuffer, /* CMYK buffer */
- *OutputBuffers[7], /* Output buffers */
- *DotBuffers[7], /* Dot buffers */
- *CompBuffer; /* Compression buffer */
-short *InputBuffer; /* Color separation buffer */
-cups_weave_t *DotAvailList, /* Available buffers */
- *DotUsedList, /* Used buffers */
- *DotBands[128][7]; /* Buffers in use */
-int DotBufferSize, /* Size of dot buffers */
- DotRowMax, /* Maximum row number in buffer */
- DotColStep, /* Step for each output column */
- DotRowStep, /* Step for each output line */
- DotRowFeed, /* Amount to feed for interleave */
- DotRowCount, /* Number of rows to output */
- DotRowOffset[7], /* Offset for each color on print head */
- DotRowCurrent, /* Current row */
- DotSize; /* Dot size (Pro 5000 only) */
-int PrinterPlanes, /* # of color planes */
- BitPlanes, /* # of bit planes per color */
- PrinterTop, /* Top of page */
- PrinterLength; /* Length of page */
-cups_lut_t *DitherLuts[7]; /* Lookup tables for dithering */
-cups_dither_t *DitherStates[7]; /* Dither state tables */
-int OutputFeed; /* Number of lines to skip */
-int Canceled; /* Is the job canceled? */
-
-
-/*
- * Prototypes...
- */
-
-void Setup(ppd_file_t *);
-void StartPage(ppd_file_t *, cups_page_header2_t *);
-void EndPage(ppd_file_t *, cups_page_header2_t *);
-void Shutdown(ppd_file_t *);
-
-void AddBand(cups_weave_t *band);
-void CancelJob(int sig);
-void CompressData(ppd_file_t *, const unsigned char *, const int,
- int, int, const int, const int, const int,
- const int);
-void OutputBand(ppd_file_t *, cups_page_header2_t *,
- cups_weave_t *band);
-void ProcessLine(ppd_file_t *, cups_raster_t *,
- cups_page_header2_t *, const int y);
-
-
-/*
- * 'Setup()' - Prepare a printer for graphics output.
- */
-
-void
-Setup(ppd_file_t *ppd) /* I - PPD file */
-{
- /*
- * Some EPSON printers need an additional command issued at the
- * beginning of each job to exit from USB "packet" mode...
- */
-
- if (ppd->model_number & ESCP_USB)
- cupsWritePrintData("\000\000\000\033\001@EJL 1284.4\n@EJL \n\033@", 29);
-}
-
-
-/*
- * 'StartPage()' - Start a page of graphics.
- */
-
-void
-StartPage(ppd_file_t *ppd, /* I - PPD file */
- cups_page_header2_t *header) /* I - Page header */
-{
- int i, y; /* Looping vars */
- int subrow, /* Current subrow */
- modrow, /* Subrow modulus */
- plane; /* Current color plane */
- unsigned char *ptr; /* Pointer into dot buffer */
- int bands; /* Number of bands to allocate */
- int units; /* Units for resolution */
- cups_weave_t *band; /* Current band */
- const char *colormodel; /* Color model string */
- char resolution[PPD_MAX_NAME],
- /* Resolution string */
- spec[PPD_MAX_NAME]; /* PPD attribute name */
- ppd_attr_t *attr; /* Attribute from PPD file */
- const float default_lut[2] = /* Default dithering lookup table */
- {
- 0.0,
- 1.0
- };
-
-
- fprintf(stderr, "DEBUG: StartPage...\n");
- fprintf(stderr, "DEBUG: MediaClass = \"%s\"\n", header->MediaClass);
- fprintf(stderr, "DEBUG: MediaColor = \"%s\"\n", header->MediaColor);
- fprintf(stderr, "DEBUG: MediaType = \"%s\"\n", header->MediaType);
- fprintf(stderr, "DEBUG: OutputType = \"%s\"\n", header->OutputType);
-
- fprintf(stderr, "DEBUG: AdvanceDistance = %d\n", header->AdvanceDistance);
- fprintf(stderr, "DEBUG: AdvanceMedia = %d\n", header->AdvanceMedia);
- fprintf(stderr, "DEBUG: Collate = %d\n", header->Collate);
- fprintf(stderr, "DEBUG: CutMedia = %d\n", header->CutMedia);
- fprintf(stderr, "DEBUG: Duplex = %d\n", header->Duplex);
- fprintf(stderr, "DEBUG: HWResolution = [ %d %d ]\n", header->HWResolution[0],
- header->HWResolution[1]);
- fprintf(stderr, "DEBUG: ImagingBoundingBox = [ %d %d %d %d ]\n",
- header->ImagingBoundingBox[0], header->ImagingBoundingBox[1],
- header->ImagingBoundingBox[2], header->ImagingBoundingBox[3]);
- fprintf(stderr, "DEBUG: InsertSheet = %d\n", header->InsertSheet);
- fprintf(stderr, "DEBUG: Jog = %d\n", header->Jog);
- fprintf(stderr, "DEBUG: LeadingEdge = %d\n", header->LeadingEdge);
- fprintf(stderr, "DEBUG: Margins = [ %d %d ]\n", header->Margins[0],
- header->Margins[1]);
- fprintf(stderr, "DEBUG: ManualFeed = %d\n", header->ManualFeed);
- fprintf(stderr, "DEBUG: MediaPosition = %d\n", header->MediaPosition);
- fprintf(stderr, "DEBUG: MediaWeight = %d\n", header->MediaWeight);
- fprintf(stderr, "DEBUG: MirrorPrint = %d\n", header->MirrorPrint);
- fprintf(stderr, "DEBUG: NegativePrint = %d\n", header->NegativePrint);
- fprintf(stderr, "DEBUG: NumCopies = %d\n", header->NumCopies);
- fprintf(stderr, "DEBUG: Orientation = %d\n", header->Orientation);
- fprintf(stderr, "DEBUG: OutputFaceUp = %d\n", header->OutputFaceUp);
- fprintf(stderr, "DEBUG: PageSize = [ %d %d ]\n", header->PageSize[0],
- header->PageSize[1]);
- fprintf(stderr, "DEBUG: Separations = %d\n", header->Separations);
- fprintf(stderr, "DEBUG: TraySwitch = %d\n", header->TraySwitch);
- fprintf(stderr, "DEBUG: Tumble = %d\n", header->Tumble);
- fprintf(stderr, "DEBUG: cupsWidth = %d\n", header->cupsWidth);
- fprintf(stderr, "DEBUG: cupsHeight = %d\n", header->cupsHeight);
- fprintf(stderr, "DEBUG: cupsMediaType = %d\n", header->cupsMediaType);
- fprintf(stderr, "DEBUG: cupsBitsPerColor = %d\n", header->cupsBitsPerColor);
- fprintf(stderr, "DEBUG: cupsBitsPerPixel = %d\n", header->cupsBitsPerPixel);
- fprintf(stderr, "DEBUG: cupsBytesPerLine = %d\n", header->cupsBytesPerLine);
- fprintf(stderr, "DEBUG: cupsColorOrder = %d\n", header->cupsColorOrder);
- fprintf(stderr, "DEBUG: cupsColorSpace = %d\n", header->cupsColorSpace);
- fprintf(stderr, "DEBUG: cupsCompression = %d\n", header->cupsCompression);
- fprintf(stderr, "DEBUG: cupsRowCount = %d\n", header->cupsRowCount);
- fprintf(stderr, "DEBUG: cupsRowFeed = %d\n", header->cupsRowFeed);
- fprintf(stderr, "DEBUG: cupsRowStep = %d\n", header->cupsRowStep);
-
- /*
- * Figure out the color model and spec strings...
- */
-
- switch (header->cupsColorSpace)
- {
- case CUPS_CSPACE_K :
- colormodel = "Black";
- break;
- case CUPS_CSPACE_W :
- colormodel = "Gray";
- break;
- default :
- case CUPS_CSPACE_RGB :
- colormodel = "RGB";
- break;
- case CUPS_CSPACE_CMYK :
- colormodel = "CMYK";
- break;
- }
-
- if (header->HWResolution[0] != header->HWResolution[1])
- snprintf(resolution, sizeof(resolution), "%dx%ddpi",
- header->HWResolution[0], header->HWResolution[1]);
- else
- snprintf(resolution, sizeof(resolution), "%ddpi",
- header->HWResolution[0]);
-
- if (!header->MediaType[0])
- strcpy(header->MediaType, "Plain");
-
- /*
- * Load the appropriate color profiles...
- */
-
- RGB = NULL;
- CMYK = NULL;
-
- fputs("DEBUG: Attempting to load color profiles using the following values:\n", stderr);
- fprintf(stderr, "DEBUG: ColorModel = %s\n", colormodel);
- fprintf(stderr, "DEBUG: MediaType = %s\n", header->MediaType);
- fprintf(stderr, "DEBUG: Resolution = %s\n", resolution);
-
- if (header->cupsColorSpace == CUPS_CSPACE_RGB ||
- header->cupsColorSpace == CUPS_CSPACE_W)
- RGB = cupsRGBLoad(ppd, colormodel, header->MediaType, resolution);
- else
- RGB = NULL;
-
- CMYK = cupsCMYKLoad(ppd, colormodel, header->MediaType, resolution);
-
- if (RGB)
- fputs("DEBUG: Loaded RGB separation from PPD.\n", stderr);
-
- if (CMYK)
- fputs("DEBUG: Loaded CMYK separation from PPD.\n", stderr);
- else
- {
- fputs("DEBUG: Loading default CMYK separation.\n", stderr);
- CMYK = cupsCMYKNew(4);
- }
-
- PrinterPlanes = CMYK->num_channels;
-
- fprintf(stderr, "DEBUG: PrinterPlanes = %d\n", PrinterPlanes);
-
- /*
- * Get the dithering parameters...
- */
-
- switch (PrinterPlanes)
- {
- case 1 : /* K */
- DitherLuts[0] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Black");
- break;
-
- case 2 : /* Kk */
- DitherLuts[0] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Black");
- DitherLuts[1] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "LightBlack");
- break;
-
- case 3 : /* CMY */
- DitherLuts[0] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Cyan");
- DitherLuts[1] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Magenta");
- DitherLuts[2] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Yellow");
- break;
-
- case 4 : /* CMYK */
- DitherLuts[0] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Cyan");
- DitherLuts[1] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Magenta");
- DitherLuts[2] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Yellow");
- DitherLuts[3] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Black");
- break;
-
- case 6 : /* CcMmYK */
- DitherLuts[0] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Cyan");
- DitherLuts[1] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "LightCyan");
- DitherLuts[2] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Magenta");
- DitherLuts[3] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "LightMagenta");
- DitherLuts[4] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Yellow");
- DitherLuts[5] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Black");
- break;
-
- case 7 : /* CcMmYKk */
- DitherLuts[0] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Cyan");
- DitherLuts[1] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "LightCyan");
- DitherLuts[2] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Magenta");
- DitherLuts[3] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "LightMagenta");
- DitherLuts[4] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Yellow");
- DitherLuts[5] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Black");
- DitherLuts[6] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "LightBlack");
- break;
- }
-
- for (plane = 0; plane < PrinterPlanes; plane ++)
- {
- DitherStates[plane] = cupsDitherNew(header->cupsWidth);
-
- if (!DitherLuts[plane])
- DitherLuts[plane] = cupsLutNew(2, default_lut);
- }
-
- if (DitherLuts[0][4095].pixel > 1)
- BitPlanes = 2;
- else
- BitPlanes = 1;
-
- /*
- * Initialize the printer...
- */
-
- printf("\033@");
-
- if (ppd->model_number & ESCP_REMOTE)
- {
- /*
- * Go into remote mode...
- */
-
- cupsWritePrintData("\033(R\010\000\000REMOTE1", 13);
-
- /*
- * Disable status reporting...
- */
-
- cupsWritePrintData("ST\002\000\000\000", 6);
-
- /*
- * Enable borderless printing...
- */
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPFP", NULL)) != NULL && attr->value)
- {
- /*
- * Set horizontal offset...
- */
-
- i = atoi(attr->value);
-
- cupsWritePrintData("FP\003\000\000", 5);
- putchar(i & 255);
- putchar(i >> 8);
- }
-
- /*
- * Set media type...
- */
-
- if (header->cupsMediaType)
- {
- sprintf(spec, "%d", header->cupsMediaType);
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPSN0", spec)) != NULL && attr->value)
- {
- /*
- * Set feed sequence...
- */
-
- cupsWritePrintData("SN\003\000\000\000", 6);
- putchar(atoi(attr->value));
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPSN1", spec)) != NULL && attr->value)
- {
- /*
- * Set platten gap...
- */
-
- cupsWritePrintData("SN\003\000\000\001", 6);
- putchar(atoi(attr->value));
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPSN2", spec)) != NULL && attr->value)
- {
- /*
- * Paper feeding/ejecting sequence...
- */
-
- cupsWritePrintData("SN\003\000\000\002", 6);
- putchar(atoi(attr->value));
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPSN6", spec)) != NULL && attr->value)
- {
- /*
- * Eject delay...
- */
-
- cupsWritePrintData("SN\003\000\000\006", 6);
- putchar(atoi(attr->value));
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPMT", spec)) != NULL && attr->value)
- {
- /*
- * Set media type.
- */
-
- cupsWritePrintData("MT\003\000\000\000", 6);
- putchar(atoi(attr->value));
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPPH", spec)) != NULL && attr->value)
- {
- /*
- * Set paper thickness.
- */
-
- cupsWritePrintData("PH\002\000\000", 5);
- putchar(atoi(attr->value));
- }
- }
-
- sprintf(spec, "%d", header->MediaPosition);
-
- if (header->MediaPosition)
- {
- if ((attr = ppdFindAttr(ppd, "cupsESCPPC", spec)) != NULL && attr->value)
- {
- /*
- * Paper check.
- */
-
- cupsWritePrintData("PC\002\000\000", 5);
- putchar(atoi(attr->value));
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPPP", spec)) != NULL && attr->value)
- {
- /*
- * Paper path.
- */
-
- int a, b;
-
- a = b = 0;
- sscanf(attr->value, "%d%d", &a, &b);
-
- cupsWritePrintData("PP\003\000\000", 5);
- putchar(a);
- putchar(b);
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPEX", spec)) != NULL && attr->value)
- {
- /*
- * Set media position.
- */
-
- cupsWritePrintData("EX\006\000\000\000\000\000\005", 9);
- putchar(atoi(attr->value));
- }
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPMS", spec)) != NULL && attr->value)
- {
- /*
- * Set media size...
- */
-
- cupsWritePrintData("MS\010\000\000", 5);
- putchar(atoi(attr->value));
-
- switch (header->PageSize[1])
- {
- case 1191 : /* A3 */
- putchar(0x01);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- case 1032 : /* B4 */
- putchar(0x02);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- case 842 : /* A4 */
- putchar(0x03);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- case 595 : /* A4.Transverse */
- putchar(0x03);
- putchar(0x01);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- case 729 : /* B5 */
- putchar(0x04);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- case 516 : /* B5.Transverse */
- putchar(0x04);
- putchar(0x01);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- case 1369 : /* Super A3/B */
- putchar(0x20);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- case 792 : /* Letter */
- putchar(0x08);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- case 612 : /* Letter.Transverse */
- putchar(0x08);
- putchar(0x01);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- case 1004 : /* Legal */
- putchar(0x0a);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- case 1224 : /* Tabloid */
- putchar(0x2d);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- putchar(0x00);
- break;
- default : /* Custom size */
- putchar(0xff);
- putchar(0xff);
- i = 360 * header->PageSize[0] / 72;
- putchar(i);
- putchar(i >> 8);
- i = 360 * header->PageSize[1] / 72;
- putchar(i);
- putchar(i >> 8);
- break;
- }
- }
-
- sprintf(spec, "%d", header->CutMedia);
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPAC", spec)) != NULL && attr->value)
- {
- /*
- * Enable/disable cutter.
- */
-
- cupsWritePrintData("AC\002\000\000", 5);
- putchar(atoi(attr->value));
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPSN80", header->MediaType)) != NULL && attr->value)
- {
- /*
- * Cutting method...
- */
-
- cupsWritePrintData("SN\003\000\000\200", 6);
- putchar(atoi(attr->value));
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPSN81", header->MediaType)) != NULL && attr->value)
- {
- /*
- * Cutting pressure...
- */
-
- cupsWritePrintData("SN\003\000\000\201", 6);
- putchar(atoi(attr->value));
- }
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPCO", spec)) != NULL && attr->value)
- {
- /*
- * Enable/disable cutter.
- */
-
- cupsWritePrintData("CO\010\000\000\000", 6);
- putchar(atoi(attr->value));
- cupsWritePrintData("\000\000\000\000\000", 5);
- }
-
- /*
- * Exit remote mode...
- */
-
- cupsWritePrintData("\033\000\000\000", 4);
- }
-
- /*
- * Enter graphics mode...
- */
-
- cupsWritePrintData("\033(G\001\000\001", 6);
-
- /*
- * Set the line feed increment...
- */
-
- /* TODO: get this from the PPD file... */
- for (units = 1440; units < header->HWResolution[0]; units *= 2);
-
- if (ppd->model_number & ESCP_EXT_UNITS)
- {
- cupsWritePrintData("\033(U\005\000", 5);
- putchar(units / header->HWResolution[1]);
- putchar(units / header->HWResolution[1]);
- putchar(units / header->HWResolution[0]);
- putchar(units);
- putchar(units >> 8);
- }
- else
- {
- cupsWritePrintData("\033(U\001\000", 5);
- putchar(3600 / header->HWResolution[1]);
- }
-
- /*
- * Set the page length...
- */
-
- PrinterLength = header->PageSize[1] * header->HWResolution[1] / 72;
-
- if (ppd->model_number & ESCP_PAGE_SIZE)
- {
- /*
- * Set page size (expands bottom margin)...
- */
-
- cupsWritePrintData("\033(S\010\000", 5);
-
- i = header->PageSize[0] * header->HWResolution[1] / 72;
- putchar(i);
- putchar(i >> 8);
- putchar(i >> 16);
- putchar(i >> 24);
-
- i = header->PageSize[1] * header->HWResolution[1] / 72;
- putchar(i);
- putchar(i >> 8);
- putchar(i >> 16);
- putchar(i >> 24);
- }
- else
- {
- cupsWritePrintData("\033(C\002\000", 5);
- putchar(PrinterLength & 255);
- putchar(PrinterLength >> 8);
- }
-
- /*
- * Set the top and bottom margins...
- */
-
- PrinterTop = (int)((ppd->sizes[1].length - ppd->sizes[1].top) *
- header->HWResolution[1] / 72.0);
-
- if (ppd->model_number & ESCP_EXT_MARGINS)
- {
- cupsWritePrintData("\033(c\010\000", 5);
-
- putchar(PrinterTop);
- putchar(PrinterTop >> 8);
- putchar(PrinterTop >> 16);
- putchar(PrinterTop >> 24);
-
- putchar(PrinterLength);
- putchar(PrinterLength >> 8);
- putchar(PrinterLength >> 16);
- putchar(PrinterLength >> 24);
- }
- else
- {
- cupsWritePrintData("\033(c\004\000", 5);
-
- putchar(PrinterTop & 255);
- putchar(PrinterTop >> 8);
-
- putchar(PrinterLength & 255);
- putchar(PrinterLength >> 8);
- }
-
- /*
- * Set the top position...
- */
-
- cupsWritePrintData("\033(V\002\000\000\000", 7);
-
- /*
- * Enable unidirectional printing depending on the mode...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsESCPDirection", colormodel,
- header->MediaType, resolution, spec,
- sizeof(spec))) != NULL)
- printf("\033U%c", atoi(attr->value));
-
- /*
- * Enable/disable microweaving as needed...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsESCPMicroWeave", colormodel,
- header->MediaType, resolution, spec,
- sizeof(spec))) != NULL)
- printf("\033(i\001%c%c", 0, atoi(attr->value));
-
- /*
- * Set the dot size and print speed as needed...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsESCPDotSize", colormodel,
- header->MediaType, resolution, spec,
- sizeof(spec))) != NULL)
- printf("\033(e\002%c%c%c", 0, 0, atoi(attr->value));
-
- if (ppd->model_number & ESCP_ESCK)
- {
- /*
- * Set the print mode...
- */
-
- if (PrinterPlanes == 1)
- {
- /*
- * Fast black printing.
- */
-
- cupsWritePrintData("\033(K\002\000\000\001", 7);
- }
- else
- {
- /*
- * Color printing.
- */
-
- cupsWritePrintData("\033(K\002\000\000\002", 7);
- }
- }
-
- /*
- * Get softweave settings from header...
- */
-
- if (header->cupsRowCount <= 1)
- {
- DotRowCount = 1;
- DotColStep = 1;
- DotRowStep = 1;
- DotRowFeed = 1;
- }
- else
- {
- DotRowCount = header->cupsRowCount;
- DotRowFeed = header->cupsRowFeed;
- DotRowStep = header->cupsRowStep % 100;
- DotColStep = header->cupsRowStep / 100;
-
- if (DotColStep == 0)
- DotColStep ++;
- }
-
- /*
- * Setup softweave parameters...
- */
-
- DotRowCurrent = 0;
- DotRowMax = DotRowCount * DotRowStep;
- DotBufferSize = (header->cupsWidth / DotColStep * BitPlanes + 7) / 8;
-
- fprintf(stderr, "DEBUG: DotBufferSize = %d\n", DotBufferSize);
- fprintf(stderr, "DEBUG: DotColStep = %d\n", DotColStep);
- fprintf(stderr, "DEBUG: DotRowMax = %d\n", DotRowMax);
- fprintf(stderr, "DEBUG: DotRowStep = %d\n", DotRowStep);
- fprintf(stderr, "DEBUG: DotRowFeed = %d\n", DotRowFeed);
- fprintf(stderr, "DEBUG: DotRowCount = %d\n", DotRowCount);
-
- DotAvailList = NULL;
- DotUsedList = NULL;
- DotBuffers[0] = NULL;
-
- fprintf(stderr, "DEBUG: model_number = %x\n", ppd->model_number);
-
- if (DotRowMax > 1)
- {
- /*
- * Compute offsets for the color jets on the print head...
- */
-
- bands = DotRowStep * DotColStep * PrinterPlanes * 4;
-
- memset(DotRowOffset, 0, sizeof(DotRowOffset));
-
- if (PrinterPlanes == 1)
- {
- /*
- * Use full height of print head...
- */
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPBlack", resolution)) != NULL &&
- attr->value)
- {
- /*
- * Use custom black head data...
- */
-
- sscanf(attr->value, "%d%d", &DotRowCount, &DotRowStep);
- }
- }
- else if (ppd->model_number & ESCP_STAGGER)
- {
- /*
- * Use staggered print head...
- */
-
- fputs("DEBUG: Offset head detected...\n", stderr);
-
- if ((attr = ppdFindAttr(ppd, "cupsESCPOffsets", resolution)) != NULL &&
- attr->value)
- {
- /*
- * Use only 1/3 of the print head when printing color...
- */
-
- sscanf(attr->value, "%d%d%d%d", DotRowOffset + 0,
- DotRowOffset + 1, DotRowOffset + 2, DotRowOffset + 3);
- }
- }
-
- for (i = 0; i < PrinterPlanes; i ++)
- fprintf(stderr, "DEBUG: DotRowOffset[%d] = %d\n", i, DotRowOffset[i]);
-
- /*
- * Allocate bands...
- */
-
- for (i = 0; i < bands; i ++)
- {
- band = (cups_weave_t *)calloc(1, sizeof(cups_weave_t));
- band->next = DotAvailList;
- DotAvailList = band;
-
- band->buffer = calloc(DotRowCount, DotBufferSize);
- }
-
- if (!DotAvailList)
- {
- fputs("ERROR: Unable to allocate band list\n", stderr);
- exit(1);
- }
-
- fputs("DEBUG: Pointer list at start of page...\n", stderr);
-
- for (band = DotAvailList; band != NULL; band = band->next)
- fprintf(stderr, "DEBUG: %p\n", band);
-
- fputs("DEBUG: ----END----\n", stderr);
-
- /*
- * Fill the initial bands...
- */
-
- modrow = DotColStep * DotRowStep;
-
- if (DotRowFeed == 0)
- {
- /*
- * Automatically compute the optimal feed value...
- */
-
- DotRowFeed = DotRowCount / DotColStep - DotRowStep;
-
- while ((((DotRowFeed % 2) == 0) == ((DotRowCount % 2) == 0) ||
- ((DotRowFeed % 3) == 0) == ((DotRowCount % 3) == 0) ||
- ((DotRowFeed % 5) == 0) == ((DotRowCount % 5) == 0)) &&
- DotRowFeed > 1)
- DotRowFeed --;
-
- if (DotRowFeed < 1)
- DotRowFeed = 1;
-
- fprintf(stderr, "DEBUG: Auto DotRowFeed = %d, modrow=%d...\n",
- DotRowFeed, modrow);
- }
-
- memset(DotBands, 0, sizeof(DotBands));
-
- for (i = modrow, subrow = modrow - 1, y = DotRowFeed;
- i > 0;
- i --, y += DotRowFeed)
- {
- while (DotBands[subrow][0])
- {
- /*
- * This subrow is already used, move to another one...
- */
-
- subrow = (subrow + 1) % modrow;
- }
-
- for (plane = 0; plane < PrinterPlanes; plane ++)
- {
- /*
- * Pull the next available band from the list...
- */
-
- band = DotAvailList;
- DotAvailList = DotAvailList->next;
- DotBands[subrow][plane] = band;
-
- /*
- * Start the band in the first few passes, with the number of rows
- * varying to allow for a nice interleaved pattern...
- */
-
- band->x = subrow / DotRowStep;
- band->y = (subrow % DotRowStep) + DotRowOffset[plane];
- band->plane = plane;
- band->row = 0;
- band->count = DotRowCount - y / DotRowStep;
-
- if (band->count < 1)
- band->count = 1;
- else if (band->count > DotRowCount)
- band->count = DotRowCount;
-
- fprintf(stderr, "DEBUG: DotBands[%d][%d] = %p, x = %d, y = %d, plane = %d, count = %d\n",
- subrow, plane, band, band->x, band->y, band->plane, band->count);
- }
-
- subrow = (subrow + DotRowFeed) % modrow;
- }
- }
- else
- {
- /*
- * Allocate memory for a single line of graphics...
- */
-
- ptr = calloc(PrinterPlanes, DotBufferSize);
-
- for (plane = 0; plane < PrinterPlanes; plane ++, ptr += DotBufferSize)
- DotBuffers[plane] = ptr;
- }
-
- /*
- * Set the output resolution...
- */
-
- cupsWritePrintData("\033(D\004\000", 5);
- putchar(units);
- putchar(units >> 8);
- putchar(units * DotRowStep / header->HWResolution[1]);
- putchar(units * DotColStep / header->HWResolution[0]);
-
- /*
- * Set the top of form...
- */
-
- OutputFeed = 0;
-
- /*
- * Allocate buffers as needed...
- */
-
- PixelBuffer = malloc(header->cupsBytesPerLine);
- InputBuffer = malloc(header->cupsWidth * PrinterPlanes * 2);
- OutputBuffers[0] = malloc(PrinterPlanes * header->cupsWidth);
-
- for (i = 1; i < PrinterPlanes; i ++)
- OutputBuffers[i] = OutputBuffers[0] + i * header->cupsWidth;
-
- if (RGB)
- CMYKBuffer = malloc(header->cupsWidth * PrinterPlanes);
-
- CompBuffer = malloc(10 * DotBufferSize * DotRowMax);
-}
-
-
-/*
- * 'EndPage()' - Finish a page of graphics.
- */
-
-void
-EndPage(ppd_file_t *ppd, /* I - PPD file */
- cups_page_header2_t *header) /* I - Page header */
-{
- int i; /* Looping var */
- cups_weave_t *band, /* Current band */
- *next; /* Next band in list */
- int plane; /* Current plane */
- int subrow; /* Current subrow */
- int subrows; /* Number of subrows */
-
-
- /*
- * Output the last bands of print data as necessary...
- */
-
- if (DotRowMax > 1)
- {
- /*
- * Move the remaining bands to the used or avail lists...
- */
-
- subrows = DotRowStep * DotColStep;
-
- for (subrow = 0; subrow < subrows; subrow ++)
- for (plane = 0; plane < PrinterPlanes; plane ++)
- {
- if (DotBands[subrow][plane]->dirty)
- {
- /*
- * Insert into the used list...
- */
-
- DotBands[subrow][plane]->count = DotBands[subrow][plane]->row;
-
- AddBand(DotBands[subrow][plane]);
- }
- else
- {
- /*
- * Nothing here, so move it to the available list...
- */
-
- DotBands[subrow][plane]->next = DotAvailList;
- DotAvailList = DotBands[subrow][plane];
- }
-
- DotBands[subrow][plane] = NULL;
- }
-
- /*
- * Loop until all bands are written...
- */
-
- fputs("DEBUG: Pointer list at end of page...\n", stderr);
-
- for (band = DotUsedList; band != NULL; band = band->next)
- fprintf(stderr, "DEBUG: %p (used)\n", band);
- for (band = DotAvailList; band != NULL; band = band->next)
- fprintf(stderr, "DEBUG: %p (avail)\n", band);
-
- fputs("DEBUG: ----END----\n", stderr);
-
- for (band = DotUsedList; band != NULL; band = next)
- {
- next = band->next;
-
- OutputBand(ppd, header, band);
-
- fprintf(stderr, "DEBUG: freeing used band %p, prev = %p, next = %p\n",
- band, band->prev, band->next);
-
- free(band->buffer);
- free(band);
- }
-
- /*
- * Free memory for the available bands, if any...
- */
-
- for (band = DotAvailList; band != NULL; band = next)
- {
- next = band->next;
-
- fprintf(stderr, "DEBUG: freeing avail band %p, prev = %p, next = %p\n",
- band, band->prev, band->next);
-
- free(band->buffer);
- free(band);
- }
- }
- else
- free(DotBuffers[0]);
-
- /*
- * Output a page eject sequence...
- */
-
- putchar(12);
-
- /*
- * Free memory for the page...
- */
-
- for (i = 0; i < PrinterPlanes; i ++)
- {
- cupsDitherDelete(DitherStates[i]);
- cupsLutDelete(DitherLuts[i]);
- }
-
- free(OutputBuffers[0]);
-
- free(PixelBuffer);
- free(InputBuffer);
- free(CompBuffer);
-
- cupsCMYKDelete(CMYK);
-
- if (RGB)
- {
- cupsRGBDelete(RGB);
- free(CMYKBuffer);
- }
-}
-
-
-/*
- * 'Shutdown()' - Shutdown a printer.
- */
-
-void
-Shutdown(ppd_file_t *ppd) /* I - PPD file */
-{
- /*
- * Reset the printer...
- */
-
- printf("\033@");
-
- if (ppd->model_number & ESCP_REMOTE)
- {
- /*
- * Go into remote mode...
- */
-
- cupsWritePrintData("\033(R\010\000\000REMOTE1", 13);
-
- /*
- * Load defaults...
- */
-
- cupsWritePrintData("LD\000\000", 4);
-
- /*
- * Exit remote mode...
- */
-
- cupsWritePrintData("\033\000\000\000", 4);
- }
-}
-
-
-/*
- * 'AddBand()' - Add a band of data to the used list.
- */
-
-void
-AddBand(cups_weave_t *band) /* I - Band to add */
-{
- cups_weave_t *current, /* Current band */
- *prev; /* Previous band */
-
-
- if (band->count < 1)
- return;
-
- for (current = DotUsedList, prev = NULL;
- current != NULL;
- prev = current, current = current->next)
- if (band->y < current->y ||
- (band->y == current->y && band->x < current->x) ||
- (band->y == current->y && band->x == current->x &&
- band->plane < current->plane))
- break;
-
- if (current != NULL)
- {
- /*
- * Insert the band...
- */
-
- band->next = current;
- band->prev = prev;
- current->prev = band;
-
- if (prev != NULL)
- prev->next = band;
- else
- DotUsedList = band;
- }
- else if (prev != NULL)
- {
- /*
- * Append the band to the end...
- */
-
- band->prev = prev;
- prev->next = band;
- band->next = NULL;
- }
- else
- {
- /*
- * First band in list...
- */
-
- DotUsedList = band;
- band->prev = NULL;
- band->next = NULL;
- }
-}
-
-
-/*
- * 'CancelJob()' - Cancel the current job...
- */
-
-void
-CancelJob(int sig) /* I - Signal */
-{
- (void)sig;
-
- Canceled = 1;
-}
-
-
-/*
- * 'CompressData()' - Compress a line of graphics.
- */
-
-void
-CompressData(ppd_file_t *ppd, /* I - PPD file information */
- const unsigned char *line, /* I - Data to compress */
- const int length,/* I - Number of bytes */
- int plane, /* I - Color plane */
- int type, /* I - Type of compression */
- const int rows, /* I - Number of lines to write */
- const int xstep, /* I - Spacing between columns */
- const int ystep, /* I - Spacing between lines */
- const int offset)/* I - Head offset */
-{
- register const unsigned char *line_ptr,
- /* Current byte pointer */
- *line_end, /* End-of-line byte pointer */
- *start; /* Start of compression sequence */
- register unsigned char *comp_ptr; /* Pointer into compression buffer */
- register int count; /* Count of bytes for output */
- register int bytes; /* Number of bytes per row */
- static int ctable[7][7] = /* Colors */
- {
- { 0, 0, 0, 0, 0, 0, 0 }, /* K */
- { 0, 16, 0, 0, 0, 0, 0 }, /* Kk */
- { 2, 1, 4, 0, 0, 0, 0 }, /* CMY */
- { 2, 1, 4, 0, 0, 0, 0 }, /* CMYK */
- { 0, 0, 0, 0, 0, 0, 0 },
- { 2, 18, 1, 17, 4, 0, 0 }, /* CcMmYK */
- { 2, 18, 1, 17, 4, 0, 16 }, /* CcMmYKk */
- };
-
-
- switch (type)
- {
- case 0 :
- /*
- * Do no compression...
- */
-
- line_ptr = (const unsigned char *)line;
- line_end = (const unsigned char *)line + length;
- break;
-
- default :
- /*
- * Do TIFF pack-bits encoding...
- */
-
- line_ptr = (const unsigned char *)line;
- line_end = (const unsigned char *)line + length;
- comp_ptr = CompBuffer;
-
- while (line_ptr < line_end && (comp_ptr - CompBuffer) < length)
- {
- if ((line_ptr + 1) >= line_end)
- {
- /*
- * Single byte on the end...
- */
-
- *comp_ptr++ = 0x00;
- *comp_ptr++ = *line_ptr++;
- }
- else if (line_ptr[0] == line_ptr[1])
- {
- /*
- * Repeated sequence...
- */
-
- line_ptr ++;
- count = 2;
-
- while (line_ptr < (line_end - 1) &&
- line_ptr[0] == line_ptr[1] &&
- count < 127)
- {
- line_ptr ++;
- count ++;
- }
-
- *comp_ptr++ = 257 - count;
- *comp_ptr++ = *line_ptr++;
- }
- else
- {
- /*
- * Non-repeated sequence...
- */
-
- start = line_ptr;
- line_ptr ++;
- count = 1;
-
- while (line_ptr < (line_end - 1) &&
- line_ptr[0] != line_ptr[1] &&
- count < 127)
- {
- line_ptr ++;
- count ++;
- }
-
- *comp_ptr++ = count - 1;
-
- memcpy(comp_ptr, start, count);
- comp_ptr += count;
- }
- }
-
- if ((comp_ptr - CompBuffer) < length)
- {
- line_ptr = (const unsigned char *)CompBuffer;
- line_end = (const unsigned char *)comp_ptr;
- }
- else
- {
- type = 0;
- line_ptr = (const unsigned char *)line;
- line_end = (const unsigned char *)line + length;
- }
- break;
- }
-
- /*
- * Position the print head...
- */
-
- putchar(0x0d);
-
- if (offset)
- {
- if (BitPlanes == 1)
- cupsWritePrintData("\033(\\\004\000\240\005", 7);
- else
- printf("\033\\");
-
- putchar(offset);
- putchar(offset >> 8);
- }
-
- /*
- * Send the graphics...
- */
-
- bytes = length / rows;
-
- if (ppd->model_number & ESCP_RASTER_ESCI)
- {
- /*
- * Send graphics with ESC i command.
- */
-
- printf("\033i");
- putchar(ctable[PrinterPlanes - 1][plane]);
- putchar(type != 0);
- putchar(BitPlanes);
- putchar(bytes & 255);
- putchar(bytes >> 8);
- putchar(rows & 255);
- putchar(rows >> 8);
- }
- else
- {
- /*
- * Set the color if necessary...
- */
-
- if (PrinterPlanes > 1)
- {
- plane = ctable[PrinterPlanes - 1][plane];
-
- if (plane & 0x10)
- printf("\033(r%c%c%c%c", 2, 0, 1, plane & 0x0f);
- else
- printf("\033r%c", plane);
- }
-
- /*
- * Send graphics with ESC . command.
- */
-
- bytes *= 8;
-
- printf("\033.");
- putchar(type != 0);
- putchar(ystep);
- putchar(xstep);
- putchar(rows);
- putchar(bytes & 255);
- putchar(bytes >> 8);
- }
-
- cupsWritePrintData(line_ptr, line_end - line_ptr);
-}
-
-
-/*
- * 'OutputBand()' - Output a band of graphics.
- */
-
-void
-OutputBand(ppd_file_t *ppd, /* I - PPD file */
- cups_page_header2_t *header, /* I - Page header */
- cups_weave_t *band) /* I - Current band */
-{
- int xstep, /* Spacing between columns */
- ystep; /* Spacing between rows */
-
-
- /*
- * Interleaved ESC/P2 graphics...
- */
-
- OutputFeed = band->y - DotRowCurrent;
- DotRowCurrent = band->y;
-
- fprintf(stderr, "DEBUG: Printing band %p, x = %d, y = %d, plane = %d, count = %d, OutputFeed = %d\n",
- band, band->x, band->y, band->plane, band->count, OutputFeed);
-
- /*
- * Compute step values...
- */
-
- xstep = 3600 * DotColStep / header->HWResolution[0];
- ystep = 3600 * DotRowStep / header->HWResolution[1];
-
- /*
- * Output the band...
- */
-
- if (OutputFeed > 0)
- {
- cupsWritePrintData("\033(v\002\000", 5);
- putchar(OutputFeed & 255);
- putchar(OutputFeed >> 8);
-
- OutputFeed = 0;
- }
-
- CompressData(ppd, band->buffer, band->count * DotBufferSize, band->plane,
- header->cupsCompression, band->count, xstep, ystep, band->x);
-
- /*
- * Clear the band...
- */
-
- memset(band->buffer, 0, band->count * DotBufferSize);
- band->dirty = 0;
-
- /*
- * Flush the output buffers...
- */
-
- fflush(stdout);
-}
-
-
-/*
- * 'ProcessLine()' - Read graphics from the page stream and output as needed.
- */
-
-void
-ProcessLine(ppd_file_t *ppd, /* I - PPD file */
- cups_raster_t *ras, /* I - Raster stream */
- cups_page_header2_t *header, /* I - Page header */
- const int y) /* I - Current scanline */
-{
- int plane, /* Current color plane */
- width, /* Width of line */
- subwidth, /* Width of interleaved row */
- subrow, /* Subrow for interleaved output */
- offset, /* Offset to current line */
- pass, /* Pass number */
- xstep, /* X step value */
- ystep; /* Y step value */
- cups_weave_t *band; /* Current band */
-
-
- /*
- * Read a row of graphics...
- */
-
- if (!cupsRasterReadPixels(ras, PixelBuffer, header->cupsBytesPerLine))
- return;
-
- /*
- * Perform the color separation...
- */
-
- width = header->cupsWidth;
- subwidth = header->cupsWidth / DotColStep;
- xstep = 3600 / header->HWResolution[0];
- ystep = 3600 / header->HWResolution[1];
-
- switch (header->cupsColorSpace)
- {
- case CUPS_CSPACE_W :
- if (RGB)
- {
- cupsRGBDoGray(RGB, PixelBuffer, CMYKBuffer, width);
- cupsCMYKDoCMYK(CMYK, CMYKBuffer, InputBuffer, width);
- }
- else
- cupsCMYKDoGray(CMYK, PixelBuffer, InputBuffer, width);
- break;
-
- case CUPS_CSPACE_K :
- cupsCMYKDoBlack(CMYK, PixelBuffer, InputBuffer, width);
- break;
-
- default :
- case CUPS_CSPACE_RGB :
- if (RGB)
- {
- cupsRGBDoRGB(RGB, PixelBuffer, CMYKBuffer, width);
- cupsCMYKDoCMYK(CMYK, CMYKBuffer, InputBuffer, width);
- }
- else
- cupsCMYKDoRGB(CMYK, PixelBuffer, InputBuffer, width);
- break;
-
- case CUPS_CSPACE_CMYK :
- cupsCMYKDoCMYK(CMYK, PixelBuffer, InputBuffer, width);
- break;
- }
-
- /*
- * Dither the pixels...
- */
-
- for (plane = 0; plane < PrinterPlanes; plane ++)
- {
- cupsDitherLine(DitherStates[plane], DitherLuts[plane], InputBuffer + plane,
- PrinterPlanes, OutputBuffers[plane]);
-
- if (DotRowMax == 1)
- {
- /*
- * Handle microweaved output...
- */
-
- if (cupsCheckBytes(OutputBuffers[plane], width))
- continue;
-
- if (BitPlanes == 1)
- cupsPackHorizontal(OutputBuffers[plane], DotBuffers[plane],
- width, 0, 1);
- else
- cupsPackHorizontal2(OutputBuffers[plane], DotBuffers[plane],
- width, 1);
-
- if (OutputFeed > 0)
- {
- cupsWritePrintData("\033(v\002\000", 5);
- putchar(OutputFeed & 255);
- putchar(OutputFeed >> 8);
- OutputFeed = 0;
- }
-
- CompressData(ppd, DotBuffers[plane], DotBufferSize, plane, 1, 1,
- xstep, ystep, 0);
- fflush(stdout);
- }
- else
- {
- /*
- * Handle softweaved output...
- */
-
- for (pass = 0, subrow = y % DotRowStep;
- pass < DotColStep;
- pass ++, subrow += DotRowStep)
- {
- /*
- * See if we need to output the band...
- */
-
- band = DotBands[subrow][plane];
- offset = band->row * DotBufferSize;
-
- if (BitPlanes == 1)
- cupsPackHorizontal(OutputBuffers[plane] + pass,
- band->buffer + offset, subwidth, 0, DotColStep);
- else
- cupsPackHorizontal2(OutputBuffers[plane] + pass,
- band->buffer + offset, subwidth, DotColStep);
-
- band->row ++;
- band->dirty |= !cupsCheckBytes(band->buffer + offset, DotBufferSize);
- if (band->row >= band->count)
- {
- if (band->dirty)
- {
- /*
- * Dirty band needs to be added to the used list...
- */
-
- AddBand(band);
-
- /*
- * Then find a new band...
- */
-
- if (DotAvailList == NULL)
- {
- OutputBand(ppd, header, DotUsedList);
-
- DotBands[subrow][plane] = DotUsedList;
- DotUsedList->x = band->x;
- DotUsedList->y = band->y + band->count * DotRowStep;
- DotUsedList->plane = band->plane;
- DotUsedList->row = 0;
- DotUsedList->count = DotRowCount;
- DotUsedList = DotUsedList->next;
- }
- else
- {
- DotBands[subrow][plane] = DotAvailList;
- DotAvailList->x = band->x;
- DotAvailList->y = band->y + band->count * DotRowStep;
- DotAvailList->plane = band->plane;
- DotAvailList->row = 0;
- DotAvailList->count = DotRowCount;
- DotAvailList = DotAvailList->next;
- }
- }
- else
- {
- /*
- * This band isn't dirty, so reuse it...
- */
-
- fprintf(stderr, "DEBUG: Blank band %p, x = %d, y = %d, plane = %d, count = %d\n",
- band, band->x, band->y, band->plane, band->count);
-
- band->y += band->count * DotRowStep;
- band->row = 0;
- band->count = DotRowCount;
- }
- }
- }
- }
- }
-
- if (DotRowMax == 1)
- OutputFeed ++;
-}
-
-
-/*
- * 'main()' - Main entry and processing of driver.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- int fd; /* File descriptor */
- cups_raster_t *ras; /* Raster stream for printing */
- cups_page_header2_t header; /* Page header from file */
- int page; /* Current page */
- int y; /* Current line */
- ppd_file_t *ppd; /* PPD file */
- int num_options; /* Number of options */
- cups_option_t *options; /* Options */
-#if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
- struct sigaction action; /* Actions for POSIX signals */
-#endif /* HAVE_SIGACTION && !HAVE_SIGSET */
-
-
- /*
- * Make sure status messages are not buffered...
- */
-
- setbuf(stderr, NULL);
-
- /*
- * Check command-line...
- */
-
- if (argc < 6 || argc > 7)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("%s job-id user title copies options [file]"),
- "rastertoescpx");
- return (1);
- }
-
- num_options = cupsParseOptions(argv[5], 0, &options);
-
- /*
- * Open the PPD file...
- */
-
- ppd = ppdOpenFile(getenv("PPD"));
-
- if (!ppd)
- {
- ppd_status_t status; /* PPD error */
- int linenum; /* Line number */
-
- _cupsLangPrintFilter(stderr, "ERROR",
- _("The PPD file could not be opened."));
-
- status = ppdLastError(&linenum);
-
- fprintf(stderr, "DEBUG: %s on line %d.\n", ppdErrorString(status), linenum);
-
- return (1);
- }
-
- ppdMarkDefaults(ppd);
- cupsMarkOptions(ppd, num_options, options);
-
- /*
- * Open the page stream...
- */
-
- if (argc == 7)
- {
- if ((fd = open(argv[6], O_RDONLY)) == -1)
- {
- _cupsLangPrintError("ERROR", _("Unable to open raster file"));
- return (1);
- }
- }
- else
- fd = 0;
-
- ras = cupsRasterOpen(fd, CUPS_RASTER_READ);
-
- /*
- * Register a signal handler to eject the current page if the
- * job is cancelled.
- */
-
- Canceled = 0;
-
-#ifdef HAVE_SIGSET /* Use System V signals over POSIX to avoid bugs */
- sigset(SIGTERM, CancelJob);
-#elif defined(HAVE_SIGACTION)
- memset(&action, 0, sizeof(action));
-
- sigemptyset(&action.sa_mask);
- action.sa_handler = CancelJob;
- sigaction(SIGTERM, &action, NULL);
-#else
- signal(SIGTERM, CancelJob);
-#endif /* HAVE_SIGSET */
-
- /*
- * Initialize the print device...
- */
-
- Setup(ppd);
-
- /*
- * Process pages as needed...
- */
-
- page = 0;
-
- while (cupsRasterReadHeader2(ras, &header))
- {
- /*
- * Write a status message with the page number and number of copies.
- */
-
- if (Canceled)
- break;
-
- page ++;
-
- fprintf(stderr, "PAGE: %d 1\n", page);
- _cupsLangPrintFilter(stderr, "INFO", _("Starting page %d."), page);
-
- StartPage(ppd, &header);
-
- for (y = 0; y < header.cupsHeight; y ++)
- {
- /*
- * Let the user know how far we have progressed...
- */
-
- if (Canceled)
- break;
-
- if ((y & 127) == 0)
- {
- _cupsLangPrintFilter(stderr, "INFO",
- _("Printing page %d, %d%% complete."),
- page, 100 * y / header.cupsHeight);
- fprintf(stderr, "ATTR: job-media-progress=%d\n",
- 100 * y / header.cupsHeight);
- }
-
- /*
- * Read and write a line of graphics or whitespace...
- */
-
- ProcessLine(ppd, ras, &header, y);
- }
-
- /*
- * Eject the page...
- */
-
- _cupsLangPrintFilter(stderr, "INFO", _("Finished page %d."), page);
-
- EndPage(ppd, &header);
-
- if (Canceled)
- break;
- }
-
- Shutdown(ppd);
-
- cupsFreeOptions(num_options, options);
-
- cupsRasterClose(ras);
-
- if (fd != 0)
- close(fd);
-
- if (page == 0)
- {
- _cupsLangPrintFilter(stderr, "ERROR", _("No pages were found."));
- return (1);
- }
- else
- {
- _cupsLangPrintFilter(stderr, "INFO", _("Ready to print."));
- return (0);
- }
-}
-
-
-/*
- * End of "$Id: rastertoescpx.c 9382 2010-11-20 01:03:46Z mike $".
- */
diff --git a/driver/rastertopclx.c b/driver/rastertopclx.c
deleted file mode 100644
index 3c1075b8..00000000
--- a/driver/rastertopclx.c
+++ /dev/null
@@ -1,1956 +0,0 @@
-/*
- * "$Id: rastertopclx.c 9382 2010-11-20 01:03:46Z mike $"
- *
- * Advanced HP Page Control Language and Raster Transfer Language
- * filter for CUPS.
- *
- * Copyright 2007-2010 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * StartPage() - Start a page of graphics.
- * EndPage() - Finish a page of graphics.
- * Shutdown() - Shutdown a printer.
- * CancelJob() - Cancel the current job...
- * CompressData() - Compress a line of graphics.
- * OutputLine() - Output the specified number of lines of graphics.
- * ReadLine() - Read graphics from the page stream.
- * main() - Main entry and processing of driver.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "driver.h"
-#include <cups/language-private.h>
-#include <cups/string-private.h>
-#include "pcl-common.h"
-#include <signal.h>
-
-
-/*
- * Output modes...
- */
-
-typedef enum
-{
- OUTPUT_BITMAP, /* Output bitmap data from RIP */
- OUTPUT_INVERBIT, /* Output inverted bitmap data */
- OUTPUT_RGB, /* Output 24-bit RGB data from RIP */
- OUTPUT_DITHERED /* Output dithered data */
-} pcl_output_t;
-
-
-/*
- * Globals...
- */
-
-cups_rgb_t *RGB; /* RGB color separation data */
-cups_cmyk_t *CMYK; /* CMYK color separation data */
-unsigned char *PixelBuffer, /* Pixel buffer */
- *CMYKBuffer, /* CMYK buffer */
- *OutputBuffers[6], /* Output buffers */
- *DotBuffers[6], /* Bit buffers */
- *CompBuffer, /* Compression buffer */
- *SeedBuffer, /* Mode 3 seed buffers */
- BlankValue; /* The blank value */
-short *InputBuffer; /* Color separation buffer */
-cups_lut_t *DitherLuts[6]; /* Lookup tables for dithering */
-cups_dither_t *DitherStates[6]; /* Dither state tables */
-int PrinterPlanes, /* Number of color planes */
- SeedInvalid, /* Contents of seed buffer invalid? */
- DotBits[6], /* Number of bits per color */
- DotBufferSizes[6], /* Size of one row of color dots */
- DotBufferSize, /* Size of complete line */
- OutputFeed, /* Number of lines to skip */
- Page; /* Current page number */
-pcl_output_t OutputMode; /* Output mode - see OUTPUT_ consts */
-const int ColorOrders[7][7] = /* Order of color planes */
- {
- { 0, 0, 0, 0, 0, 0, 0 }, /* Black */
- { 0, 0, 0, 0, 0, 0, 0 },
- { 0, 1, 2, 0, 0, 0, 0 }, /* CMY */
- { 3, 0, 1, 2, 0, 0, 0 }, /* KCMY */
- { 0, 0, 0, 0, 0, 0, 0 },
- { 5, 0, 1, 2, 3, 4, 0 }, /* KCMYcm */
- { 5, 0, 1, 2, 3, 4, 6 } /* KCMYcmk */
- };
-int Canceled; /* Is the job canceled? */
-
-
-/*
- * Prototypes...
- */
-
-void StartPage(ppd_file_t *ppd, cups_page_header2_t *header, int job_id,
- const char *user, const char *title, int num_options,
- cups_option_t *options);
-void EndPage(ppd_file_t *ppd, cups_page_header2_t *header);
-void Shutdown(ppd_file_t *ppd, int job_id, const char *user,
- const char *title, int num_options, cups_option_t *options);
-
-void CancelJob(int sig);
-void CompressData(unsigned char *line, int length, int plane, int pend,
- int type);
-void OutputLine(ppd_file_t *ppd, cups_page_header2_t *header);
-int ReadLine(cups_raster_t *ras, cups_page_header2_t *header);
-
-
-/*
- * 'StartPage()' - Start a page of graphics.
- */
-
-void
-StartPage(ppd_file_t *ppd, /* I - PPD file */
- cups_page_header2_t *header, /* I - Page header */
- int job_id, /* I - Job ID */
- const char *user, /* I - User printing job */
- const char *title, /* I - Title of job */
- int num_options,
- /* I - Number of command-line options */
- cups_option_t *options) /* I - Command-line options */
-{
- int i; /* Temporary/looping var */
- int plane; /* Current plane */
- char s[255]; /* Temporary value */
- const char *colormodel; /* Color model string */
- char resolution[PPD_MAX_NAME],
- /* Resolution string */
- spec[PPD_MAX_NAME]; /* PPD attribute name */
- ppd_attr_t *attr; /* Attribute from PPD file */
- ppd_choice_t *choice; /* Selected option */
- const int *order; /* Order to use */
- int xorigin, /* X origin of page */
- yorigin; /* Y origin of page */
- static const float default_lut[2] = /* Default dithering lookup table */
- {
- 0.0,
- 1.0
- };
-
-
- /*
- * Debug info...
- */
-
- fprintf(stderr, "DEBUG: StartPage...\n");
- fprintf(stderr, "DEBUG: MediaClass = \"%s\"\n", header->MediaClass);
- fprintf(stderr, "DEBUG: MediaColor = \"%s\"\n", header->MediaColor);
- fprintf(stderr, "DEBUG: MediaType = \"%s\"\n", header->MediaType);
- fprintf(stderr, "DEBUG: OutputType = \"%s\"\n", header->OutputType);
-
- fprintf(stderr, "DEBUG: AdvanceDistance = %d\n", header->AdvanceDistance);
- fprintf(stderr, "DEBUG: AdvanceMedia = %d\n", header->AdvanceMedia);
- fprintf(stderr, "DEBUG: Collate = %d\n", header->Collate);
- fprintf(stderr, "DEBUG: CutMedia = %d\n", header->CutMedia);
- fprintf(stderr, "DEBUG: Duplex = %d\n", header->Duplex);
- fprintf(stderr, "DEBUG: HWResolution = [ %d %d ]\n", header->HWResolution[0],
- header->HWResolution[1]);
- fprintf(stderr, "DEBUG: ImagingBoundingBox = [ %d %d %d %d ]\n",
- header->ImagingBoundingBox[0], header->ImagingBoundingBox[1],
- header->ImagingBoundingBox[2], header->ImagingBoundingBox[3]);
- fprintf(stderr, "DEBUG: InsertSheet = %d\n", header->InsertSheet);
- fprintf(stderr, "DEBUG: Jog = %d\n", header->Jog);
- fprintf(stderr, "DEBUG: LeadingEdge = %d\n", header->LeadingEdge);
- fprintf(stderr, "DEBUG: Margins = [ %d %d ]\n", header->Margins[0],
- header->Margins[1]);
- fprintf(stderr, "DEBUG: ManualFeed = %d\n", header->ManualFeed);
- fprintf(stderr, "DEBUG: MediaPosition = %d\n", header->MediaPosition);
- fprintf(stderr, "DEBUG: MediaWeight = %d\n", header->MediaWeight);
- fprintf(stderr, "DEBUG: MirrorPrint = %d\n", header->MirrorPrint);
- fprintf(stderr, "DEBUG: NegativePrint = %d\n", header->NegativePrint);
- fprintf(stderr, "DEBUG: NumCopies = %d\n", header->NumCopies);
- fprintf(stderr, "DEBUG: Orientation = %d\n", header->Orientation);
- fprintf(stderr, "DEBUG: OutputFaceUp = %d\n", header->OutputFaceUp);
- fprintf(stderr, "DEBUG: PageSize = [ %d %d ]\n", header->PageSize[0],
- header->PageSize[1]);
- fprintf(stderr, "DEBUG: Separations = %d\n", header->Separations);
- fprintf(stderr, "DEBUG: TraySwitch = %d\n", header->TraySwitch);
- fprintf(stderr, "DEBUG: Tumble = %d\n", header->Tumble);
- fprintf(stderr, "DEBUG: cupsWidth = %d\n", header->cupsWidth);
- fprintf(stderr, "DEBUG: cupsHeight = %d\n", header->cupsHeight);
- fprintf(stderr, "DEBUG: cupsMediaType = %d\n", header->cupsMediaType);
- fprintf(stderr, "DEBUG: cupsBitsPerColor = %d\n", header->cupsBitsPerColor);
- fprintf(stderr, "DEBUG: cupsBitsPerPixel = %d\n", header->cupsBitsPerPixel);
- fprintf(stderr, "DEBUG: cupsBytesPerLine = %d\n", header->cupsBytesPerLine);
- fprintf(stderr, "DEBUG: cupsColorOrder = %d\n", header->cupsColorOrder);
- fprintf(stderr, "DEBUG: cupsColorSpace = %d\n", header->cupsColorSpace);
- fprintf(stderr, "DEBUG: cupsCompression = %d\n", header->cupsCompression);
-
-#ifdef __APPLE__
- /*
- * MacOS X 10.2.x doesn't set most of the page device attributes, so check
- * the options and set them accordingly...
- */
-
- if (ppdIsMarked(ppd, "Duplex", "DuplexNoTumble"))
- {
- header->Duplex = CUPS_TRUE;
- header->Tumble = CUPS_FALSE;
- }
- else if (ppdIsMarked(ppd, "Duplex", "DuplexTumble"))
- {
- header->Duplex = CUPS_TRUE;
- header->Tumble = CUPS_TRUE;
- }
-
- fprintf(stderr, "DEBUG: num_options=%d\n", num_options);
-
- for (i = 0; i < num_options; i ++)
- fprintf(stderr, "DEBUG: options[%d]=[\"%s\" \"%s\"]\n", i,
- options[i].name, options[i].value);
-#endif /* __APPLE__ */
-
- /*
- * Figure out the color model and spec strings...
- */
-
- switch (header->cupsColorSpace)
- {
- case CUPS_CSPACE_K :
- colormodel = "Black";
- break;
- case CUPS_CSPACE_W :
- colormodel = "Gray";
- break;
- default :
- case CUPS_CSPACE_RGB :
- colormodel = "RGB";
- break;
- case CUPS_CSPACE_CMY :
- colormodel = "CMY";
- break;
- case CUPS_CSPACE_CMYK :
- colormodel = "CMYK";
- break;
- }
-
- if (header->HWResolution[0] != header->HWResolution[1])
- snprintf(resolution, sizeof(resolution), "%dx%ddpi",
- header->HWResolution[0], header->HWResolution[1]);
- else
- snprintf(resolution, sizeof(resolution), "%ddpi",
- header->HWResolution[0]);
-
- if (!header->MediaType[0])
- strcpy(header->MediaType, "PLAIN");
-
- /*
- * Get the dithering parameters...
- */
-
- BlankValue = 0x00;
-
- if (header->cupsBitsPerColor == 1)
- {
- /*
- * Use raw bitmap mode...
- */
-
- switch (header->cupsColorSpace)
- {
- case CUPS_CSPACE_K :
- OutputMode = OUTPUT_BITMAP;
- PrinterPlanes = 1;
- break;
- case CUPS_CSPACE_W :
- OutputMode = OUTPUT_INVERBIT;
- PrinterPlanes = 1;
- break;
- default :
- case CUPS_CSPACE_RGB :
- OutputMode = OUTPUT_INVERBIT;
- PrinterPlanes = 3;
- break;
- case CUPS_CSPACE_CMY :
- OutputMode = OUTPUT_BITMAP;
- PrinterPlanes = 3;
- break;
- case CUPS_CSPACE_CMYK :
- OutputMode = OUTPUT_BITMAP;
- PrinterPlanes = 4;
- break;
- }
-
- if (OutputMode == OUTPUT_INVERBIT)
- BlankValue = 0xff;
-
- DotBufferSize = header->cupsBytesPerLine;
-
- memset(DitherLuts, 0, sizeof(DitherLuts));
- memset(DitherStates, 0, sizeof(DitherStates));
- }
- else if (header->cupsColorSpace == CUPS_CSPACE_RGB &&
- (ppd->model_number & PCL_RASTER_RGB24))
- {
- /*
- * Use 24-bit RGB output mode...
- */
-
- OutputMode = OUTPUT_RGB;
- PrinterPlanes = 3;
- DotBufferSize = header->cupsBytesPerLine;
-
- if (header->cupsCompression == 10)
- BlankValue = 0xff;
-
- memset(DitherLuts, 0, sizeof(DitherLuts));
- memset(DitherStates, 0, sizeof(DitherStates));
- }
- else if ((header->cupsColorSpace == CUPS_CSPACE_K ||
- header->cupsColorSpace == CUPS_CSPACE_W) &&
- (ppd->model_number & PCL_RASTER_RGB24) &&
- header->cupsCompression == 10)
- {
- /*
- * Use 24-bit RGB output mode for grayscale/black output...
- */
-
- OutputMode = OUTPUT_RGB;
- PrinterPlanes = 1;
- DotBufferSize = header->cupsBytesPerLine;
-
- if (header->cupsColorSpace == CUPS_CSPACE_W)
- BlankValue = 0xff;
-
- memset(DitherLuts, 0, sizeof(DitherLuts));
- memset(DitherStates, 0, sizeof(DitherStates));
- }
- else
- {
- /*
- * Use dithered output mode...
- */
-
- OutputMode = OUTPUT_DITHERED;
-
- /*
- * Load the appropriate color profiles...
- */
-
- RGB = NULL;
- CMYK = NULL;
-
- fputs("DEBUG: Attempting to load color profiles using the following values:\n", stderr);
- fprintf(stderr, "DEBUG: ColorModel = %s\n", colormodel);
- fprintf(stderr, "DEBUG: MediaType = %s\n", header->MediaType);
- fprintf(stderr, "DEBUG: Resolution = %s\n", resolution);
-
- if (header->cupsColorSpace == CUPS_CSPACE_RGB ||
- header->cupsColorSpace == CUPS_CSPACE_W)
- RGB = cupsRGBLoad(ppd, colormodel, header->MediaType, resolution);
-
- CMYK = cupsCMYKLoad(ppd, colormodel, header->MediaType, resolution);
-
- if (RGB)
- fputs("DEBUG: Loaded RGB separation from PPD.\n", stderr);
-
- if (CMYK)
- fputs("DEBUG: Loaded CMYK separation from PPD.\n", stderr);
- else
- {
- fputs("DEBUG: Loading default K separation.\n", stderr);
- CMYK = cupsCMYKNew(1);
- }
-
- PrinterPlanes = CMYK->num_channels;
-
- /*
- * Use dithered mode...
- */
-
- switch (PrinterPlanes)
- {
- case 1 : /* K */
- DitherLuts[0] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Black");
- break;
-
- case 3 : /* CMY */
- DitherLuts[0] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Cyan");
- DitherLuts[1] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Magenta");
- DitherLuts[2] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Yellow");
- break;
-
- case 4 : /* CMYK */
- DitherLuts[0] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Cyan");
- DitherLuts[1] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Magenta");
- DitherLuts[2] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Yellow");
- DitherLuts[3] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Black");
- break;
-
- case 6 : /* CcMmYK */
- DitherLuts[0] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Cyan");
- DitherLuts[1] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "LightCyan");
- DitherLuts[2] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Magenta");
- DitherLuts[3] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "LightMagenta");
- DitherLuts[4] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Yellow");
- DitherLuts[5] = cupsLutLoad(ppd, colormodel, header->MediaType,
- resolution, "Black");
- break;
- }
-
- for (plane = 0; plane < PrinterPlanes; plane ++)
- {
- if (!DitherLuts[plane])
- DitherLuts[plane] = cupsLutNew(2, default_lut);
-
- if (DitherLuts[plane][4095].pixel > 1)
- DotBits[plane] = 2;
- else
- DotBits[plane] = 1;
-
- DitherStates[plane] = cupsDitherNew(header->cupsWidth);
-
- if (!DitherLuts[plane])
- DitherLuts[plane] = cupsLutNew(2, default_lut);
- }
- }
-
- fprintf(stderr, "DEBUG: PrinterPlanes = %d\n", PrinterPlanes);
-
- /*
- * Initialize the printer...
- */
-
- if ((attr = ppdFindAttr(ppd, "cupsInitialNulls", NULL)) != NULL)
- for (i = atoi(attr->value); i > 0; i --)
- putchar(0);
-
- if (Page == 1 && (ppd->model_number & PCL_PJL))
- {
- pjl_escape();
-
- /*
- * PJL job setup...
- */
-
- pjl_set_job(job_id, user, title);
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "StartJob")) != NULL)
- pjl_write(ppd, attr->value, NULL, job_id, user, title, num_options,
- options);
-
- snprintf(spec, sizeof(spec), "RENDERMODE.%s", colormodel);
- if ((attr = ppdFindAttr(ppd, "cupsPJL", spec)) != NULL)
- printf("@PJL SET RENDERMODE=%s\r\n", attr->value);
-
- snprintf(spec, sizeof(spec), "COLORSPACE.%s", colormodel);
- if ((attr = ppdFindAttr(ppd, "cupsPJL", spec)) != NULL)
- printf("@PJL SET COLORSPACE=%s\r\n", attr->value);
-
- snprintf(spec, sizeof(spec), "RENDERINTENT.%s", colormodel);
- if ((attr = ppdFindAttr(ppd, "cupsPJL", spec)) != NULL)
- printf("@PJL SET RENDERINTENT=%s\r\n", attr->value);
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "Duplex")) != NULL)
- {
- sprintf(s, "%d", header->Duplex);
- pjl_write(ppd, attr->value, s, job_id, user, title, num_options, options);
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "Tumble")) != NULL)
- {
- sprintf(s, "%d", header->Tumble);
- pjl_write(ppd, attr->value, s, job_id, user, title, num_options, options);
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "MediaClass")) != NULL)
- pjl_write(ppd, attr->value, header->MediaClass, job_id, user, title,
- num_options, options);
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "MediaColor")) != NULL)
- pjl_write(ppd, attr->value, header->MediaColor, job_id, user, title,
- num_options, options);
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "MediaType")) != NULL)
- pjl_write(ppd, attr->value, header->MediaType, job_id, user, title,
- num_options, options);
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "OutputType")) != NULL)
- pjl_write(ppd, attr->value, header->OutputType, job_id, user, title,
- num_options, options);
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "cupsBooklet")) != NULL &&
- (choice = ppdFindMarkedChoice(ppd, "cupsBooklet")) != NULL)
- pjl_write(ppd, attr->value, choice->choice, job_id, user, title,
- num_options, options);
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "Jog")) != NULL)
- {
- sprintf(s, "%d", header->Jog);
- pjl_write(ppd, attr->value, s, job_id, user, title, num_options, options);
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "cupsPunch")) != NULL &&
- (choice = ppdFindMarkedChoice(ppd, "cupsPunch")) != NULL)
- pjl_write(ppd, attr->value, choice->choice, job_id, user, title,
- num_options, options);
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "cupsStaple")) != NULL &&
- (choice = ppdFindMarkedChoice(ppd, "cupsStaple")) != NULL)
- pjl_write(ppd, attr->value, choice->choice, job_id, user, title,
- num_options, options);
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "cupsRET")) != NULL &&
- (choice = ppdFindMarkedChoice(ppd, "cupsRET")) != NULL)
- pjl_write(ppd, attr->value, choice->choice, job_id, user, title,
- num_options, options);
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "cupsTonerSave")) != NULL &&
- (choice = ppdFindMarkedChoice(ppd, "cupsTonerSave")) != NULL)
- pjl_write(ppd, attr->value, choice->choice, job_id, user, title,
- num_options, options);
-
- if (ppd->model_number & PCL_PJL_PAPERWIDTH)
- {
- printf("@PJL SET PAPERLENGTH=%d\r\n", header->PageSize[1] * 10);
- printf("@PJL SET PAPERWIDTH=%d\r\n", header->PageSize[0] * 10);
- }
-
- if (ppd->model_number & PCL_PJL_RESOLUTION)
- printf("@PJL SET RESOLUTION=%d\r\n", header->HWResolution[0]);
-
- if (ppd->model_number & PCL_PJL_HPGL2)
- pjl_enter_language("HPGL2");
- else if (ppd->model_number & PCL_PJL_PCL3GUI)
- pjl_enter_language("PCL3GUI");
- else
- pjl_enter_language("PCL");
- }
-
- if (Page == 1)
- {
- pcl_reset();
- }
-
- if (ppd->model_number & PCL_PJL_HPGL2)
- {
- if (Page == 1)
- {
- /*
- * HP-GL/2 initialization...
- */
-
- printf("IN;");
- printf("MG\"%d %s %s\";", job_id, user, title);
- }
-
- /*
- * Set media size, position, type, etc...
- */
-
- printf("BP5,0;");
- printf("PS%.0f,%.0f;",
- header->cupsHeight * 1016.0 / header->HWResolution[1],
- header->cupsWidth * 1016.0 / header->HWResolution[0]);
- printf("PU;");
- printf("PA0,0");
-
- printf("MT%d;", header->cupsMediaType);
-
- if (header->CutMedia == CUPS_CUT_PAGE)
- printf("EC;");
- else
- printf("EC0;");
-
- /*
- * Set graphics mode...
- */
-
- pcl_set_pcl_mode(0);
- pcl_set_negative_motion();
- }
- else
- {
- /*
- * Set media size, position, type, etc...
- */
-
- if (!header->Duplex || (Page & 1))
- {
- pcl_set_media_size(ppd, header->PageSize[0], header->PageSize[1]);
-
- if (header->MediaPosition)
- pcl_set_media_source(header->MediaPosition);
-
- pcl_set_media_type(header->cupsMediaType);
-
- if (ppdFindAttr(ppd, "cupsPJL", "Duplex") == NULL)
- pcl_set_duplex(header->Duplex, header->Tumble);
-
- /*
- * Set the number of copies...
- */
-
- if (!ppd->manual_copies)
- pcl_set_copies(header->NumCopies);
-
- /*
- * Set the output order/bin...
- */
-
- if (ppdFindAttr(ppd, "cupsPJL", "Jog") == NULL && header->Jog)
- printf("\033&l%dG", header->Jog);
- }
- else
- {
- /*
- * Print on the back side...
- */
-
- printf("\033&a2G");
- }
-
- if (header->Duplex && (ppd->model_number & PCL_RASTER_CRD))
- {
- /*
- * Reload the media...
- */
-
- pcl_set_media_source(-2);
- }
-
- /*
- * Set the units for cursor positioning and go to the top of the form.
- */
-
- printf("\033&u%dD", header->HWResolution[0]);
- printf("\033*p0Y\033*p0X");
- }
-
- if ((attr = cupsFindAttr(ppd, "cupsPCLQuality", colormodel,
- header->MediaType, resolution, spec,
- sizeof(spec))) != NULL)
- {
- /*
- * Set the print quality...
- */
-
- if (ppd->model_number & PCL_PJL_HPGL2)
- printf("QM%d", atoi(attr->value));
- else
- printf("\033*o%dM", atoi(attr->value));
- }
-
- /*
- * Enter graphics mode...
- */
-
- if (ppd->model_number & PCL_RASTER_CRD)
- {
- /*
- * Use configure raster data command...
- */
-
- if (OutputMode == OUTPUT_RGB)
- {
- /*
- * Send 12-byte configure raster data command with horizontal and
- * vertical resolutions as well as a color count...
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsPCLCRDMode", colormodel,
- header->MediaType, resolution, spec,
- sizeof(spec))) != NULL)
- i = atoi(attr->value);
- else
- i = 31;
-
- printf("\033*g12W");
- putchar(6); /* Format 6 */
- putchar(i); /* Set pen mode */
- putchar(0x00); /* Number components */
- putchar(0x01); /* (1 for RGB) */
-
- putchar(header->HWResolution[0] >> 8);
- putchar(header->HWResolution[0]);
- putchar(header->HWResolution[1] >> 8);
- putchar(header->HWResolution[1]);
-
- putchar(header->cupsCompression); /* Compression mode 3 or 10 */
- putchar(0x01); /* Portrait orientation */
- putchar(0x20); /* Bits per pixel (32 = RGB) */
- putchar(0x01); /* Planes per pixel (1 = chunky RGB) */
- }
- else
- {
- /*
- * Send the configure raster data command with horizontal and
- * vertical resolutions as well as a color count...
- */
-
- printf("\033*g%dW", PrinterPlanes * 6 + 2);
- putchar(2); /* Format 2 */
- putchar(PrinterPlanes); /* Output planes */
-
- order = ColorOrders[PrinterPlanes - 1];
-
- for (i = 0; i < PrinterPlanes; i ++)
- {
- plane = order[i];
-
- putchar(header->HWResolution[0] >> 8);
- putchar(header->HWResolution[0]);
- putchar(header->HWResolution[1] >> 8);
- putchar(header->HWResolution[1]);
- putchar(0);
- putchar(1 << DotBits[plane]);
- }
- }
- }
- else if ((ppd->model_number & PCL_RASTER_CID) && OutputMode == OUTPUT_RGB)
- {
- /*
- * Use configure image data command...
- */
-
- pcl_set_simple_resolution(header->HWResolution[0]);
- /* Set output resolution */
-
- cupsWritePrintData("\033*v6W\0\3\0\10\10\10", 11);
- /* 24-bit RGB */
- }
- else
- {
- /*
- * Use simple raster commands...
- */
-
- pcl_set_simple_resolution(header->HWResolution[0]);
- /* Set output resolution */
-
- if (PrinterPlanes == 3)
- pcl_set_simple_cmy();
- else if (PrinterPlanes == 4)
- pcl_set_simple_kcmy();
- }
-
- if ((attr = ppdFindAttr(ppd, "cupsPCLOrigin", "X")) != NULL)
- xorigin = atoi(attr->value);
- else
- xorigin = 0;
-
- if ((attr = ppdFindAttr(ppd, "cupsPCLOrigin", "Y")) != NULL)
- yorigin = atoi(attr->value);
- else
- yorigin = 120;
-
- printf("\033&a%dH\033&a%dV", xorigin, yorigin);
- printf("\033*r%dS", header->cupsWidth);
- printf("\033*r%dT", header->cupsHeight);
- printf("\033*r1A");
-
- if (header->cupsCompression && header->cupsCompression != 10)
- printf("\033*b%dM", header->cupsCompression);
-
- OutputFeed = 0;
-
- /*
- * Allocate memory for the page...
- */
-
- PixelBuffer = malloc(header->cupsBytesPerLine);
-
- if (OutputMode == OUTPUT_DITHERED)
- {
- InputBuffer = malloc(header->cupsWidth * PrinterPlanes * 2);
- OutputBuffers[0] = malloc(PrinterPlanes * header->cupsWidth);
-
- for (i = 1; i < PrinterPlanes; i ++)
- OutputBuffers[i] = OutputBuffers[0] + i * header->cupsWidth;
-
- if (RGB)
- CMYKBuffer = malloc(header->cupsWidth * PrinterPlanes);
-
- for (plane = 0, DotBufferSize = 0; plane < PrinterPlanes; plane ++)
- {
- DotBufferSizes[plane] = (header->cupsWidth + 7) / 8 * DotBits[plane];
- DotBufferSize += DotBufferSizes[plane];
- }
-
- DotBuffers[0] = malloc(DotBufferSize);
- for (plane = 1; plane < PrinterPlanes; plane ++)
- DotBuffers[plane] = DotBuffers[plane - 1] + DotBufferSizes[plane - 1];
- }
-
- if (header->cupsCompression)
- CompBuffer = malloc(DotBufferSize * 4);
-
- if (header->cupsCompression >= 3)
- SeedBuffer = malloc(DotBufferSize);
-
- SeedInvalid = 1;
-
- fprintf(stderr, "BlankValue=%d\n", BlankValue);
-}
-
-
-/*
- * 'EndPage()' - Finish a page of graphics.
- */
-
-void
-EndPage(ppd_file_t *ppd, /* I - PPD file */
- cups_page_header2_t *header) /* I - Page header */
-{
- int plane; /* Current plane */
-
-
- /*
- * End graphics mode...
- */
-
- if (ppd->model_number & PCL_RASTER_END_COLOR)
- printf("\033*rC"); /* End color GFX */
- else
- printf("\033*r0B"); /* End B&W GFX */
-
- /*
- * Output a page eject sequence...
- */
-
- if (ppd->model_number & PCL_PJL_HPGL2)
- {
- pcl_set_hpgl_mode(0); /* Back to HP-GL/2 mode */
- printf("PG;"); /* Eject the current page */
- }
- else if (!(header->Duplex && (Page & 1)))
- printf("\014"); /* Eject current page */
-
- /*
- * Free memory for the page...
- */
-
- free(PixelBuffer);
-
- if (OutputMode == OUTPUT_DITHERED)
- {
- for (plane = 0; plane < PrinterPlanes; plane ++)
- {
- cupsDitherDelete(DitherStates[plane]);
- cupsLutDelete(DitherLuts[plane]);
- }
-
- free(DotBuffers[0]);
- free(InputBuffer);
- free(OutputBuffers[0]);
-
- cupsCMYKDelete(CMYK);
-
- if (RGB)
- {
- cupsRGBDelete(RGB);
- free(CMYKBuffer);
- }
- }
-
- if (header->cupsCompression)
- free(CompBuffer);
-
- if (header->cupsCompression >= 3)
- free(SeedBuffer);
-}
-
-
-/*
- * 'Shutdown()' - Shutdown a printer.
- */
-
-void
-Shutdown(ppd_file_t *ppd, /* I - PPD file */
- int job_id, /* I - Job ID */
- const char *user, /* I - User printing job */
- const char *title, /* I - Title of job */
- int num_options,/* I - Number of command-line options */
- cups_option_t *options) /* I - Command-line options */
-{
- ppd_attr_t *attr; /* Attribute from PPD file */
-
-
- if ((attr = ppdFindAttr(ppd, "cupsPCL", "EndJob")) != NULL)
- {
- /*
- * Tell the printer how many pages were in the job...
- */
-
- putchar(0x1b);
- printf(attr->value, Page);
- }
- else
- {
- /*
- * Return the printer to the default state...
- */
-
- pcl_reset();
- }
-
- if (ppd->model_number & PCL_PJL)
- {
- pjl_escape();
-
- if ((attr = ppdFindAttr(ppd, "cupsPJL", "EndJob")) != NULL)
- pjl_write(ppd, attr->value, NULL, job_id, user, title, num_options,
- options);
- else
- printf("@PJL EOJ\r\n");
-
- pjl_escape();
- }
-}
-
-
-/*
- * 'CancelJob()' - Cancel the current job...
- */
-
-void
-CancelJob(int sig) /* I - Signal */
-{
- (void)sig;
-
- Canceled = 1;
-}
-
-
-/*
- * 'CompressData()' - Compress a line of graphics.
- */
-
-void
-CompressData(unsigned char *line, /* I - Data to compress */
- int length, /* I - Number of bytes */
- int plane, /* I - Color plane */
- int pend, /* I - End character for data */
- int type) /* I - Type of compression */
-{
- unsigned char *line_ptr, /* Current byte pointer */
- *line_end, /* End-of-line byte pointer */
- *comp_ptr, /* Pointer into compression buffer */
- *start, /* Start of compression sequence */
- *seed; /* Seed buffer pointer */
- int count, /* Count of bytes for output */
- offset, /* Offset of bytes for output */
- temp; /* Temporary count */
- int r, g, b; /* RGB deltas for mode 10 compression */
-
-
- switch (type)
- {
- default :
- /*
- * Do no compression; with a mode-0 only printer, we can compress blank
- * lines...
- */
-
- line_ptr = line;
-
- if (cupsCheckBytes(line, length))
- line_end = line; /* Blank line */
- else
- line_end = line + length; /* Non-blank line */
- break;
-
- case 1 :
- /*
- * Do run-length encoding...
- */
-
- line_end = line + length;
- for (line_ptr = line, comp_ptr = CompBuffer;
- line_ptr < line_end;
- comp_ptr += 2, line_ptr += count)
- {
- for (count = 1;
- (line_ptr + count) < line_end &&
- line_ptr[0] == line_ptr[count] &&
- count < 256;
- count ++);
-
- comp_ptr[0] = count - 1;
- comp_ptr[1] = line_ptr[0];
- }
-
- line_ptr = CompBuffer;
- line_end = comp_ptr;
- break;
-
- case 2 :
- /*
- * Do TIFF pack-bits encoding...
- */
-
- line_ptr = line;
- line_end = line + length;
- comp_ptr = CompBuffer;
-
- while (line_ptr < line_end)
- {
- if ((line_ptr + 1) >= line_end)
- {
- /*
- * Single byte on the end...
- */
-
- *comp_ptr++ = 0x00;
- *comp_ptr++ = *line_ptr++;
- }
- else if (line_ptr[0] == line_ptr[1])
- {
- /*
- * Repeated sequence...
- */
-
- line_ptr ++;
- count = 2;
-
- while (line_ptr < (line_end - 1) &&
- line_ptr[0] == line_ptr[1] &&
- count < 127)
- {
- line_ptr ++;
- count ++;
- }
-
- *comp_ptr++ = 257 - count;
- *comp_ptr++ = *line_ptr++;
- }
- else
- {
- /*
- * Non-repeated sequence...
- */
-
- start = line_ptr;
- line_ptr ++;
- count = 1;
-
- while (line_ptr < (line_end - 1) &&
- line_ptr[0] != line_ptr[1] &&
- count < 127)
- {
- line_ptr ++;
- count ++;
- }
-
- *comp_ptr++ = count - 1;
-
- memcpy(comp_ptr, start, count);
- comp_ptr += count;
- }
- }
-
- line_ptr = CompBuffer;
- line_end = comp_ptr;
- break;
-
- case 3 :
- /*
- * Do delta-row compression...
- */
-
- line_ptr = line;
- line_end = line + length;
-
- comp_ptr = CompBuffer;
- seed = SeedBuffer + plane * length;
-
- while (line_ptr < line_end)
- {
- /*
- * Find the next non-matching sequence...
- */
-
- start = line_ptr;
-
- if (SeedInvalid)
- {
- /*
- * The seed buffer is invalid, so do the next 8 bytes, max...
- */
-
- offset = 0;
-
- if ((count = line_end - line_ptr) > 8)
- count = 8;
-
- line_ptr += count;
- }
- else
- {
- /*
- * The seed buffer is valid, so compare against it...
- */
-
- while (*line_ptr == *seed &&
- line_ptr < line_end)
- {
- line_ptr ++;
- seed ++;
- }
-
- if (line_ptr == line_end)
- break;
-
- offset = line_ptr - start;
-
- /*
- * Find up to 8 non-matching bytes...
- */
-
- start = line_ptr;
- count = 0;
- while (*line_ptr != *seed &&
- line_ptr < line_end &&
- count < 8)
- {
- line_ptr ++;
- seed ++;
- count ++;
- }
- }
-
- /*
- * Place mode 3 compression data in the buffer; see HP manuals
- * for details...
- */
-
- if (offset >= 31)
- {
- /*
- * Output multi-byte offset...
- */
-
- *comp_ptr++ = ((count - 1) << 5) | 31;
-
- offset -= 31;
- while (offset >= 255)
- {
- *comp_ptr++ = 255;
- offset -= 255;
- }
-
- *comp_ptr++ = offset;
- }
- else
- {
- /*
- * Output single-byte offset...
- */
-
- *comp_ptr++ = ((count - 1) << 5) | offset;
- }
-
- memcpy(comp_ptr, start, count);
- comp_ptr += count;
- }
-
- line_ptr = CompBuffer;
- line_end = comp_ptr;
-
- memcpy(SeedBuffer + plane * length, line, length);
- break;
-
- case 10 :
- /*
- * Mode 10 "near lossless" RGB compression...
- */
-
- line_ptr = line;
- line_end = line + length;
-
- comp_ptr = CompBuffer;
- seed = SeedBuffer;
-
- if (PrinterPlanes == 1)
- {
- /*
- * Do grayscale compression to RGB...
- */
-
- while (line_ptr < line_end)
- {
- /*
- * Find the next non-matching sequence...
- */
-
- start = line_ptr;
- while (line_ptr < line_end &&
- *line_ptr == *seed)
- {
- line_ptr ++;
- seed ++;
- }
-
- if (line_ptr == line_end)
- break;
-
- offset = line_ptr - start;
-
- /*
- * Find non-matching grayscale pixels...
- */
-
- start = line_ptr;
- while (line_ptr < line_end &&
- *line_ptr != *seed)
- {
- line_ptr ++;
- seed ++;
- }
-
- count = line_ptr - start;
-
-#if 0
- fprintf(stderr, "DEBUG: offset=%d, count=%d, comp_ptr=%p(%d of %d)...\n",
- offset, count, comp_ptr, comp_ptr - CompBuffer,
- BytesPerLine * 5);
-#endif /* 0 */
-
- /*
- * Place mode 10 compression data in the buffer; each sequence
- * starts with a command byte that looks like:
- *
- * CMD SRC SRC OFF OFF CNT CNT CNT
- *
- * For the purpose of this driver, CMD and SRC are always 0.
- *
- * If the offset >= 3 then additional offset bytes follow the
- * first command byte, each byte == 255 until the last one.
- *
- * If the count >= 7, then additional count bytes follow each
- * group of pixels, each byte == 255 until the last one.
- *
- * The offset and count are in RGB tuples (not bytes, as for
- * Mode 3 and 9)...
- */
-
- if (offset >= 3)
- {
- /*
- * Output multi-byte offset...
- */
-
- if (count > 7)
- *comp_ptr++ = 0x1f;
- else
- *comp_ptr++ = 0x18 | (count - 1);
-
- offset -= 3;
- while (offset >= 255)
- {
- *comp_ptr++ = 255;
- offset -= 255;
- }
-
- *comp_ptr++ = offset;
- }
- else
- {
- /*
- * Output single-byte offset...
- */
-
- if (count > 7)
- *comp_ptr++ = (offset << 3) | 0x07;
- else
- *comp_ptr++ = (offset << 3) | (count - 1);
- }
-
- temp = count - 8;
- seed -= count;
-
- while (count > 0)
- {
- if (count <= temp)
- {
- /*
- * This is exceedingly lame... The replacement counts
- * are intermingled with the data...
- */
-
- if (temp >= 255)
- *comp_ptr++ = 255;
- else
- *comp_ptr++ = temp;
-
- temp -= 255;
- }
-
- /*
- * Get difference between current and see pixels...
- */
-
- r = *start - *seed;
- g = r;
- b = ((*start & 0xfe) - (*seed & 0xfe)) / 2;
-
- if (r < -16 || r > 15 || g < -16 || g > 15 || b < -16 || b > 15)
- {
- /*
- * Pack 24-bit RGB into 23 bits... Lame...
- */
-
- g = *start;
-
- *comp_ptr++ = g >> 1;
-
- if (g & 1)
- *comp_ptr++ = 0x80 | (g >> 1);
- else
- *comp_ptr++ = g >> 1;
-
- if (g & 1)
- *comp_ptr++ = 0x80 | (g >> 1);
- else
- *comp_ptr++ = g >> 1;
- }
- else
- {
- /*
- * Pack 15-bit RGB difference...
- */
-
- *comp_ptr++ = 0x80 | ((r << 2) & 0x7c) | ((g >> 3) & 0x03);
- *comp_ptr++ = ((g << 5) & 0xe0) | (b & 0x1f);
- }
-
- count --;
- start ++;
- seed ++;
- }
-
- /*
- * Make sure we have the ending count if the replacement count
- * was exactly 8 + 255n...
- */
-
- if (temp == 0)
- *comp_ptr++ = 0;
- }
- }
- else
- {
- /*
- * Do RGB compression...
- */
-
- while (line_ptr < line_end)
- {
- /*
- * Find the next non-matching sequence...
- */
-
- start = line_ptr;
- while (line_ptr[0] == seed[0] &&
- line_ptr[1] == seed[1] &&
- line_ptr[2] == seed[2] &&
- (line_ptr + 2) < line_end)
- {
- line_ptr += 3;
- seed += 3;
- }
-
- if (line_ptr == line_end)
- break;
-
- offset = (line_ptr - start) / 3;
-
- /*
- * Find non-matching RGB tuples...
- */
-
- start = line_ptr;
- while ((line_ptr[0] != seed[0] ||
- line_ptr[1] != seed[1] ||
- line_ptr[2] != seed[2]) &&
- (line_ptr + 2) < line_end)
- {
- line_ptr += 3;
- seed += 3;
- }
-
- count = (line_ptr - start) / 3;
-
- /*
- * Place mode 10 compression data in the buffer; each sequence
- * starts with a command byte that looks like:
- *
- * CMD SRC SRC OFF OFF CNT CNT CNT
- *
- * For the purpose of this driver, CMD and SRC are always 0.
- *
- * If the offset >= 3 then additional offset bytes follow the
- * first command byte, each byte == 255 until the last one.
- *
- * If the count >= 7, then additional count bytes follow each
- * group of pixels, each byte == 255 until the last one.
- *
- * The offset and count are in RGB tuples (not bytes, as for
- * Mode 3 and 9)...
- */
-
- if (offset >= 3)
- {
- /*
- * Output multi-byte offset...
- */
-
- if (count > 7)
- *comp_ptr++ = 0x1f;
- else
- *comp_ptr++ = 0x18 | (count - 1);
-
- offset -= 3;
- while (offset >= 255)
- {
- *comp_ptr++ = 255;
- offset -= 255;
- }
-
- *comp_ptr++ = offset;
- }
- else
- {
- /*
- * Output single-byte offset...
- */
-
- if (count > 7)
- *comp_ptr++ = (offset << 3) | 0x07;
- else
- *comp_ptr++ = (offset << 3) | (count - 1);
- }
-
- temp = count - 8;
- seed -= count * 3;
-
- while (count > 0)
- {
- if (count <= temp)
- {
- /*
- * This is exceedingly lame... The replacement counts
- * are intermingled with the data...
- */
-
- if (temp >= 255)
- *comp_ptr++ = 255;
- else
- *comp_ptr++ = temp;
-
- temp -= 255;
- }
-
- /*
- * Get difference between current and see pixels...
- */
-
- r = start[0] - seed[0];
- g = start[1] - seed[1];
- b = ((start[2] & 0xfe) - (seed[2] & 0xfe)) / 2;
-
- if (r < -16 || r > 15 || g < -16 || g > 15 || b < -16 || b > 15)
- {
- /*
- * Pack 24-bit RGB into 23 bits... Lame...
- */
-
- *comp_ptr++ = start[0] >> 1;
-
- if (start[0] & 1)
- *comp_ptr++ = 0x80 | (start[1] >> 1);
- else
- *comp_ptr++ = start[1] >> 1;
-
- if (start[1] & 1)
- *comp_ptr++ = 0x80 | (start[2] >> 1);
- else
- *comp_ptr++ = start[2] >> 1;
- }
- else
- {
- /*
- * Pack 15-bit RGB difference...
- */
-
- *comp_ptr++ = 0x80 | ((r << 2) & 0x7c) | ((g >> 3) & 0x03);
- *comp_ptr++ = ((g << 5) & 0xe0) | (b & 0x1f);
- }
-
- count --;
- start += 3;
- seed += 3;
- }
-
- /*
- * Make sure we have the ending count if the replacement count
- * was exactly 8 + 255n...
- */
-
- if (temp == 0)
- *comp_ptr++ = 0;
- }
- }
-
- line_ptr = CompBuffer;
- line_end = comp_ptr;
-
- memcpy(SeedBuffer, line, length);
- break;
- }
-
- /*
- * Set the length of the data and write a raster plane...
- */
-
- printf("\033*b%d%c", (int)(line_end - line_ptr), pend);
- cupsWritePrintData(line_ptr, line_end - line_ptr);
-}
-
-
-/*
- * 'OutputLine()' - Output the specified number of lines of graphics.
- */
-
-void
-OutputLine(ppd_file_t *ppd, /* I - PPD file */
- cups_page_header2_t *header) /* I - Page header */
-{
- int i, j; /* Looping vars */
- int plane; /* Current plane */
- unsigned char bit; /* Current bit */
- int bytes; /* Number of bytes/plane */
- int width; /* Width of line in pixels */
- const int *order; /* Order to use */
- unsigned char *ptr; /* Pointer into buffer */
-
-
- /*
- * Output whitespace as needed...
- */
-
- if (OutputFeed > 0)
- {
- if (header->cupsCompression < 3)
- {
- /*
- * Send blank raster lines...
- */
-
- while (OutputFeed > 0)
- {
- printf("\033*b0W");
- OutputFeed --;
- }
- }
- else
- {
- /*
- * Send Y offset command and invalidate the seed buffer...
- */
-
- printf("\033*b%dY", OutputFeed);
- OutputFeed = 0;
- SeedInvalid = 1;
- }
- }
-
- /*
- * Write bitmap data as needed...
- */
-
- switch (OutputMode)
- {
- case OUTPUT_BITMAP : /* Send 1-bit bitmap data... */
- order = ColorOrders[PrinterPlanes - 1];
- bytes = header->cupsBytesPerLine / PrinterPlanes;
-
- for (i = 0; i < PrinterPlanes; i ++)
- {
- plane = order[i];
-
- CompressData(PixelBuffer + i * bytes, bytes, plane,
- (i < (PrinterPlanes - 1)) ? 'V' : 'W',
- header->cupsCompression);
- }
- break;
-
- case OUTPUT_INVERBIT : /* Send inverted 1-bit bitmap data... */
- order = ColorOrders[PrinterPlanes - 1];
- bytes = header->cupsBytesPerLine / PrinterPlanes;
-
- for (i = header->cupsBytesPerLine, ptr = PixelBuffer;
- i > 0;
- i --, ptr ++)
- *ptr = ~*ptr;
-
- for (i = 0; i < PrinterPlanes; i ++)
- {
- plane = order[i];
-
- CompressData(PixelBuffer + i * bytes, bytes, plane,
- (i < (PrinterPlanes - 1)) ? 'V' : 'W',
- header->cupsCompression);
- }
- break;
-
- case OUTPUT_RGB : /* Send 24-bit RGB data... */
- if (PrinterPlanes == 1 && !BlankValue)
- {
- /*
- * Invert black to grayscale...
- */
-
- for (i = header->cupsBytesPerLine, ptr = PixelBuffer;
- i > 0;
- i --, ptr ++)
- *ptr = ~*ptr;
- }
-
- /*
- * Compress the output...
- */
-
- CompressData(PixelBuffer, header->cupsBytesPerLine, 0, 'W',
- header->cupsCompression);
- break;
-
- default :
- order = ColorOrders[PrinterPlanes - 1];
- width = header->cupsWidth;
-
- for (i = 0, j = 0; i < PrinterPlanes; i ++)
- {
- plane = order[i];
- bytes = DotBufferSizes[plane] / DotBits[plane];
-
- for (bit = 1, ptr = DotBuffers[plane];
- bit <= DotBits[plane];
- bit <<= 1, ptr += bytes, j ++)
- {
- cupsPackHorizontalBit(OutputBuffers[plane], DotBuffers[plane],
- width, 0, bit);
- CompressData(ptr, bytes, j,
- i == (PrinterPlanes - 1) &&
- bit == DotBits[plane] ? 'W' : 'V',
- header->cupsCompression);
- }
- }
- break;
- }
-
- /*
- * The seed buffer, if any, now should contain valid data...
- */
-
- SeedInvalid = 0;
-}
-
-
-/*
- * 'ReadLine()' - Read graphics from the page stream.
- */
-
-int /* O - Number of lines (0 if blank) */
-ReadLine(cups_raster_t *ras, /* I - Raster stream */
- cups_page_header2_t *header) /* I - Page header */
-{
- int plane, /* Current color plane */
- width; /* Width of line */
-
-
- /*
- * Read raster data...
- */
-
- cupsRasterReadPixels(ras, PixelBuffer, header->cupsBytesPerLine);
-
- /*
- * See if it is blank; if so, return right away...
- */
-
- if (cupsCheckValue(PixelBuffer, header->cupsBytesPerLine, BlankValue))
- return (0);
-
- /*
- * If we aren't dithering, return immediately...
- */
-
- if (OutputMode != OUTPUT_DITHERED)
- return (1);
-
- /*
- * Perform the color separation...
- */
-
- width = header->cupsWidth;
-
- switch (header->cupsColorSpace)
- {
- case CUPS_CSPACE_W :
- if (RGB)
- {
- cupsRGBDoGray(RGB, PixelBuffer, CMYKBuffer, width);
-
- if (RGB->num_channels == 1)
- cupsCMYKDoBlack(CMYK, CMYKBuffer, InputBuffer, width);
- else
- cupsCMYKDoCMYK(CMYK, CMYKBuffer, InputBuffer, width);
- }
- else
- cupsCMYKDoGray(CMYK, PixelBuffer, InputBuffer, width);
- break;
-
- case CUPS_CSPACE_K :
- cupsCMYKDoBlack(CMYK, PixelBuffer, InputBuffer, width);
- break;
-
- default :
- case CUPS_CSPACE_RGB :
- if (RGB)
- {
- cupsRGBDoRGB(RGB, PixelBuffer, CMYKBuffer, width);
-
- if (RGB->num_channels == 1)
- cupsCMYKDoBlack(CMYK, CMYKBuffer, InputBuffer, width);
- else
- cupsCMYKDoCMYK(CMYK, CMYKBuffer, InputBuffer, width);
- }
- else
- cupsCMYKDoRGB(CMYK, PixelBuffer, InputBuffer, width);
- break;
-
- case CUPS_CSPACE_CMYK :
- cupsCMYKDoCMYK(CMYK, PixelBuffer, InputBuffer, width);
- break;
- }
-
- /*
- * Dither the pixels...
- */
-
- for (plane = 0; plane < PrinterPlanes; plane ++)
- cupsDitherLine(DitherStates[plane], DitherLuts[plane], InputBuffer + plane,
- PrinterPlanes, OutputBuffers[plane]);
-
- /*
- * Return 1 to indicate that we have non-blank output...
- */
-
- return (1);
-}
-
-
-/*
- * 'main()' - Main entry and processing of driver.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- int fd; /* File descriptor */
- cups_raster_t *ras; /* Raster stream for printing */
- cups_page_header2_t header; /* Page header from file */
- int y; /* Current line */
- ppd_file_t *ppd; /* PPD file */
- int job_id; /* Job ID */
- int num_options; /* Number of options */
- cups_option_t *options; /* Options */
-#if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
- struct sigaction action; /* Actions for POSIX signals */
-#endif /* HAVE_SIGACTION && !HAVE_SIGSET */
-
-
- /*
- * Make sure status messages are not buffered...
- */
-
- setbuf(stderr, NULL);
-
- /*
- * Check command-line...
- */
-
- if (argc < 6 || argc > 7)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("%s job-id user title copies options [file]"),
- "rastertopclx");
- return (1);
- }
-
- num_options = cupsParseOptions(argv[5], 0, &options);
-
- /*
- * Open the PPD file...
- */
-
- ppd = ppdOpenFile(getenv("PPD"));
-
- if (!ppd)
- {
- ppd_status_t status; /* PPD error */
- int linenum; /* Line number */
-
- _cupsLangPrintFilter(stderr, "ERROR",
- _("The PPD file could not be opened."));
-
- status = ppdLastError(&linenum);
-
- fprintf(stderr, "DEBUG: %s on line %d.\n", ppdErrorString(status), linenum);
-
- return (1);
- }
-
- ppdMarkDefaults(ppd);
- cupsMarkOptions(ppd, num_options, options);
-
- /*
- * Open the page stream...
- */
-
- if (argc == 7)
- {
- if ((fd = open(argv[6], O_RDONLY)) == -1)
- {
- _cupsLangPrintError("ERROR", _("Unable to open raster file"));
- return (1);
- }
- }
- else
- fd = 0;
-
- ras = cupsRasterOpen(fd, CUPS_RASTER_READ);
-
- /*
- * Register a signal handler to eject the current page if the
- * job is cancelled.
- */
-
- Canceled = 0;
-
-#ifdef HAVE_SIGSET /* Use System V signals over POSIX to avoid bugs */
- sigset(SIGTERM, CancelJob);
-#elif defined(HAVE_SIGACTION)
- memset(&action, 0, sizeof(action));
-
- sigemptyset(&action.sa_mask);
- action.sa_handler = CancelJob;
- sigaction(SIGTERM, &action, NULL);
-#else
- signal(SIGTERM, CancelJob);
-#endif /* HAVE_SIGSET */
-
- /*
- * Process pages as needed...
- */
-
- job_id = atoi(argv[1]);
-
- Page = 0;
-
- while (cupsRasterReadHeader2(ras, &header))
- {
- /*
- * Write a status message with the page number and number of copies.
- */
-
- if (Canceled)
- break;
-
- Page ++;
-
- fprintf(stderr, "PAGE: %d %d\n", Page, header.NumCopies);
- _cupsLangPrintFilter(stderr, "INFO", _("Starting page %d."), Page);
-
- StartPage(ppd, &header, atoi(argv[1]), argv[2], argv[3],
- num_options, options);
-
- for (y = 0; y < (int)header.cupsHeight; y ++)
- {
- /*
- * Let the user know how far we have progressed...
- */
-
- if (Canceled)
- break;
-
- if ((y & 127) == 0)
- {
- _cupsLangPrintFilter(stderr, "INFO",
- _("Printing page %d, %d%% complete."),
- Page, 100 * y / header.cupsHeight);
- fprintf(stderr, "ATTR: job-media-progress=%d\n",
- 100 * y / header.cupsHeight);
- }
-
- /*
- * Read and write a line of graphics or whitespace...
- */
-
- if (ReadLine(ras, &header))
- OutputLine(ppd, &header);
- else
- OutputFeed ++;
- }
-
- /*
- * Eject the page...
- */
-
- _cupsLangPrintFilter(stderr, "INFO", _("Finished page %d."), Page);
-
- EndPage(ppd, &header);
-
- if (Canceled)
- break;
- }
-
- Shutdown(ppd, job_id, argv[2], argv[3], num_options, options);
-
- cupsFreeOptions(num_options, options);
-
- cupsRasterClose(ras);
-
- if (fd != 0)
- close(fd);
-
- if (Page == 0)
- {
- _cupsLangPrintFilter(stderr, "ERROR", _("No pages were found."));
- return (1);
- }
- else
- {
- _cupsLangPrintFilter(stderr, "INFO", _("Ready to print."));
- return (0);
- }
-}
-
-
-/*
- * End of "$Id: rastertopclx.c 9382 2010-11-20 01:03:46Z mike $".
- */
diff --git a/driver/rgb.c b/driver/rgb.c
deleted file mode 100644
index b1fe9fea..00000000
--- a/driver/rgb.c
+++ /dev/null
@@ -1,558 +0,0 @@
-/*
- * "$Id: rgb.c 7306 2008-02-15 00:52:38Z mike $"
- *
- * RGB color separation code for CUPS.
- *
- * Copyright 2007 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * cupsRGBDelete() - Delete a color separation.
- * cupsRGBDoGray() - Do a grayscale separation...
- * cupsRGBDoRGB() - Do a RGB separation...
- * cupsRGBLoad() - Load a RGB color profile from a PPD file.
- * cupsRGBNew() - Create a new RGB color separation.
- */
-
-/*
- * Include necessary headers.
- */
-
-#include "driver.h"
-
-
-/*
- * 'cupsRGBDelete()' - Delete a color separation.
- */
-
-void
-cupsRGBDelete(cups_rgb_t *rgbptr) /* I - Color separation */
-{
- if (rgbptr == NULL)
- return;
-
- free(rgbptr->colors[0][0][0]);
- free(rgbptr->colors[0][0]);
- free(rgbptr->colors[0]);
- free(rgbptr->colors);
- free(rgbptr);
-}
-
-
-/*
- * 'cupsRGBDoGray()' - Do a grayscale separation...
- */
-
-void
-cupsRGBDoGray(cups_rgb_t *rgbptr,
- /* I - Color separation */
- const unsigned char *input,
- /* I - Input grayscale pixels */
- unsigned char *output,
- /* O - Output Device-N pixels */
- int num_pixels)
- /* I - Number of pixels */
-{
- int i; /* Looping var */
- int lastgray; /* Previous grayscale */
- int xs, ys, zs, /* Current RGB row offsets */
- g, gi, gm0, gm1;/* Current gray index and multipliers ... */
- const unsigned char *color; /* Current color data */
- int tempg; /* Current separation color */
- int rgbsize; /* Separation data size */
-
-
- /*
- * Range check input...
- */
-
- if (!rgbptr || !input || !output || num_pixels <= 0)
- return;
-
- /*
- * Initialize variables used for the duration of the separation...
- */
-
- lastgray = -1;
- rgbsize = rgbptr->num_channels;
- xs = rgbptr->cube_size * rgbptr->cube_size * rgbptr->num_channels;
- ys = rgbptr->cube_size * rgbptr->num_channels;
- zs = rgbptr->num_channels;
-
- /*
- * Loop through it all...
- */
-
- while (num_pixels > 0)
- {
- /*
- * See if the next pixel is a cached value...
- */
-
- num_pixels --;
-
- g = cups_srgb_lut[*input++];
-
- if (g == lastgray)
- {
- /*
- * Copy previous color and continue...
- */
-
- memcpy(output, output - rgbptr->num_channels, rgbsize);
-
- output += rgbptr->num_channels;
- continue;
- }
- else if (g == 0x00 && rgbptr->cache_init)
- {
- /*
- * Copy black color and continue...
- */
-
- memcpy(output, rgbptr->black, rgbsize);
-
- output += rgbptr->num_channels;
- continue;
- }
- else if (g == 0xff && rgbptr->cache_init)
- {
- /*
- * Copy white color and continue...
- */
-
- memcpy(output, rgbptr->white, rgbsize);
-
- output += rgbptr->num_channels;
- continue;
- }
-
- /*
- * Nope, figure this one out on our own...
- */
-
- gi = rgbptr->cube_index[g];
- gm0 = rgbptr->cube_mult[g];
- gm1 = 256 - gm0;
-
- color = rgbptr->colors[gi][gi][gi];
-
- for (i = 0; i < rgbptr->num_channels; i ++, color ++)
- {
- tempg = (color[0] * gm0 + color[xs + ys + zs] * gm1) / 256;
-
- if (tempg > 255)
- *output++ = 255;
- else if (tempg < 0)
- *output++ = 0;
- else
- *output++ = tempg;
- }
- }
-}
-
-
-/*
- * 'cupsRGBDoRGB()' - Do a RGB separation...
- */
-
-void
-cupsRGBDoRGB(cups_rgb_t *rgbptr,
- /* I - Color separation */
- const unsigned char *input,
- /* I - Input RGB pixels */
- unsigned char *output,
- /* O - Output Device-N pixels */
- int num_pixels)
- /* I - Number of pixels */
-{
- int i; /* Looping var */
- int rgb, /* Current RGB color */
- lastrgb; /* Previous RGB color */
- int r, ri, rm0, rm1, rs,
- /* Current red index, multipliexs, and row offset */
- g, gi, gm0, gm1, gs,
- /* Current green ... */
- b, bi, bm0, bm1, bs;
- /* Current blue ... */
- const unsigned char *color; /* Current color data */
- int tempr, /* Current separation colors */
- tempg, /* ... */
- tempb ; /* ... */
- int rgbsize; /* Separation data size */
-
-
- /*
- * Range check input...
- */
-
- if (!rgbptr || !input || !output || num_pixels <= 0)
- return;
-
- /*
- * Initialize variables used for the duration of the separation...
- */
-
- lastrgb = -1;
- rgbsize = rgbptr->num_channels;
- rs = rgbptr->cube_size * rgbptr->cube_size * rgbptr->num_channels;
- gs = rgbptr->cube_size * rgbptr->num_channels;
- bs = rgbptr->num_channels;
-
- /*
- * Loop through it all...
- */
-
- while (num_pixels > 0)
- {
- /*
- * See if the next pixel is a cached value...
- */
-
- num_pixels --;
-
- r = cups_srgb_lut[*input++];
- g = cups_srgb_lut[*input++];
- b = cups_srgb_lut[*input++];
- rgb = (((r << 8) | g) << 8) | b;
-
- if (rgb == lastrgb)
- {
- /*
- * Copy previous color and continue...
- */
-
- memcpy(output, output - rgbptr->num_channels, rgbsize);
-
- output += rgbptr->num_channels;
- continue;
- }
- else if (rgb == 0x000000 && rgbptr->cache_init)
- {
- /*
- * Copy black color and continue...
- */
-
- memcpy(output, rgbptr->black, rgbsize);
-
- output += rgbptr->num_channels;
- continue;
- }
- else if (rgb == 0xffffff && rgbptr->cache_init)
- {
- /*
- * Copy white color and continue...
- */
-
- memcpy(output, rgbptr->white, rgbsize);
-
- output += rgbptr->num_channels;
- continue;
- }
-
- /*
- * Nope, figure this one out on our own...
- */
-
- ri = rgbptr->cube_index[r];
- rm0 = rgbptr->cube_mult[r];
- rm1 = 256 - rm0;
-
- gi = rgbptr->cube_index[g];
- gm0 = rgbptr->cube_mult[g];
- gm1 = 256 - gm0;
-
- bi = rgbptr->cube_index[b];
- bm0 = rgbptr->cube_mult[b];
- bm1 = 256 - bm0;
-
- color = rgbptr->colors[ri][gi][bi];
-
- for (i = rgbptr->num_channels; i > 0; i --, color ++)
- {
- tempb = (color[0] * bm0 + color[bs] * bm1) / 256;
- tempg = tempb * gm0;
- tempb = (color[gs] * gm0 + color[gs + bs] * bm1) / 256;
- tempg = (tempg + tempb * gm1) / 256;
-
- tempr = tempg * rm0;
-
- tempb = (color[rs] * bm0 + color[rs + bs] * bm1) / 256;
- tempg = tempb * gm0;
- tempb = (color[rs + gs] * bm0 + color[rs + gs + bs] * bm1) / 256;
- tempg = (tempg + tempb * gm1) / 256;
-
- tempr = (tempr + tempg * rm1) / 256;
-
- if (tempr > 255)
- *output++ = 255;
- else if (tempr < 0)
- *output++ = 0;
- else
- *output++ = tempr;
- }
- }
-}
-
-
-/*
- * 'cupsRGBLoad()' - Load a RGB color profile from a PPD file.
- */
-
-cups_rgb_t * /* O - New color profile */
-cupsRGBLoad(ppd_file_t *ppd, /* I - PPD file */
- const char *colormodel, /* I - Color model */
- const char *media, /* I - Media type */
- const char *resolution) /* I - Resolution */
-{
- int i, /* Looping var */
- cube_size, /* Size of color lookup cube */
- num_channels, /* Number of color channels */
- num_samples; /* Number of color samples */
- cups_sample_t *samples; /* Color samples */
- float values[7]; /* Color sample values */
- char spec[PPD_MAX_NAME]; /* Profile name */
- ppd_attr_t *attr; /* Attribute from PPD file */
- cups_rgb_t *rgbptr; /* RGB color profile */
-
-
- /*
- * Find the following attributes:
- *
- * cupsRGBProfile - Specifies the cube size, number of channels, and
- * number of samples
- * cupsRGBSample - Specifies an RGB to CMYK color sample
- */
-
- if ((attr = cupsFindAttr(ppd, "cupsRGBProfile", colormodel, media,
- resolution, spec, sizeof(spec))) == NULL)
- {
- fputs("DEBUG2: No cupsRGBProfile attribute found for the current settings!\n", stderr);
- return (NULL);
- }
-
- if (!attr->value || sscanf(attr->value, "%d%d%d", &cube_size, &num_channels,
- &num_samples) != 3)
- {
- fprintf(stderr, "ERROR: Bad cupsRGBProfile attribute \'%s\'!\n",
- attr->value ? attr->value : "(null)");
- return (NULL);
- }
-
- if (cube_size < 2 || cube_size > 16 ||
- num_channels < 1 || num_channels > CUPS_MAX_RGB ||
- num_samples != (cube_size * cube_size * cube_size))
- {
- fprintf(stderr, "ERROR: Bad cupsRGBProfile attribute \'%s\'!\n",
- attr->value);
- return (NULL);
- }
-
- /*
- * Allocate memory for the samples and read them...
- */
-
- if ((samples = calloc(num_samples, sizeof(cups_sample_t))) == NULL)
- {
- fputs("ERROR: Unable to allocate memory for RGB profile!\n", stderr);
- return (NULL);
- }
-
- /*
- * Read all of the samples...
- */
-
- for (i = 0; i < num_samples; i ++)
- if ((attr = ppdFindNextAttr(ppd, "cupsRGBSample", spec)) == NULL)
- break;
- else if (!attr->value)
- {
- fputs("ERROR: Bad cupsRGBSample value!\n", stderr);
- break;
- }
- else if (sscanf(attr->value, "%f%f%f%f%f%f%f", values + 0,
- values + 1, values + 2, values + 3, values + 4, values + 5,
- values + 6) != (3 + num_channels))
- {
- fputs("ERROR: Bad cupsRGBSample value!\n", stderr);
- break;
- }
- else
- {
- samples[i].rgb[0] = (int)(255.0 * values[0] + 0.5);
- samples[i].rgb[1] = (int)(255.0 * values[1] + 0.5);
- samples[i].rgb[2] = (int)(255.0 * values[2] + 0.5);
- samples[i].colors[0] = (int)(255.0 * values[3] + 0.5);
- if (num_channels > 1)
- samples[i].colors[1] = (int)(255.0 * values[4] + 0.5);
- if (num_channels > 2)
- samples[i].colors[2] = (int)(255.0 * values[5] + 0.5);
- if (num_channels > 3)
- samples[i].colors[3] = (int)(255.0 * values[6] + 0.5);
- }
-
- /*
- * If everything went OK, create the color profile...
- */
-
- if (i == num_samples)
- rgbptr = cupsRGBNew(num_samples, samples, cube_size, num_channels);
- else
- rgbptr = NULL;
-
- /*
- * Free the temporary sample array and return...
- */
-
- free(samples);
-
- return (rgbptr);
-}
-
-
-/*
- * 'cupsRGBNew()' - Create a new RGB color separation.
- */
-
-cups_rgb_t * /* O - New color separation or NULL */
-cupsRGBNew(int num_samples, /* I - Number of samples */
- cups_sample_t *samples, /* I - Samples */
- int cube_size, /* I - Size of LUT cube */
- int num_channels) /* I - Number of color components */
-{
- cups_rgb_t *rgbptr; /* New color separation */
- int i; /* Looping var */
- int r, g, b; /* Current RGB */
- int tempsize; /* Sibe of main arrays */
- unsigned char *tempc; /* Pointer for C arrays */
- unsigned char **tempb ; /* Pointer for Z arrays */
- unsigned char ***tempg; /* Pointer for Y arrays */
- unsigned char ****tempr; /* Pointer for X array */
- unsigned char rgb[3]; /* Temporary RGB value */
-
-
- /*
- * Range-check the input...
- */
-
- if (!samples || num_samples != (cube_size * cube_size * cube_size) ||
- num_channels <= 0 || num_channels > CUPS_MAX_RGB)
- return (NULL);
-
- /*
- * Allocate memory for the separation...
- */
-
- if ((rgbptr = calloc(1, sizeof(cups_rgb_t))) == NULL)
- return (NULL);
-
- /*
- * Allocate memory for the samples and the LUT cube...
- */
-
- tempsize = cube_size * cube_size * cube_size; /* FUTURE: num_samples < cs^3 */
-
- tempc = calloc(tempsize, num_channels);
- tempb = calloc(tempsize, sizeof(unsigned char *));
- tempg = calloc(cube_size * cube_size, sizeof(unsigned char **));
- tempr = calloc(cube_size, sizeof(unsigned char ***));
-
- if (tempc == NULL || tempb == NULL || tempg == NULL || tempr == NULL)
- {
- free(rgbptr);
-
- if (tempc)
- free(tempc);
-
- if (tempb)
- free(tempb);
-
- if (tempg)
- free(tempg);
-
- if (tempr)
- free(tempr);
-
- return (NULL);
- }
-
- /*
- * Fill in the arrays...
- */
-
- for (i = 0, r = 0; r < cube_size; r ++)
- {
- tempr[r] = tempg + r * cube_size;
-
- for (g = 0; g < cube_size; g ++)
- {
- tempr[r][g] = tempb + i;
-
- for (b = 0; b < cube_size; b ++, i ++)
- tempr[r][g][b] = tempc + i * num_channels;
- }
- }
-
- for (i = 0; i < num_samples; i ++)
- {
- r = samples[i].rgb[0] * (cube_size - 1) / 255;
- g = samples[i].rgb[1] * (cube_size - 1) / 255;
- b = samples[i].rgb[2] * (cube_size - 1) / 255;
-
- memcpy(tempr[r][g][b], samples[i].colors, num_channels);
- }
-
- rgbptr->cube_size = cube_size;
- rgbptr->num_channels = num_channels;
- rgbptr->colors = tempr;
-
- /*
- * Generate the lookup tables for the cube indices and multipliers...
- */
-
- for (i = 0; i < 256; i ++)
- {
- rgbptr->cube_index[i] = i * (cube_size - 1) / 256;
-
- if (i == 0)
- rgbptr->cube_mult[i] = 256;
- else
- rgbptr->cube_mult[i] = 255 - ((i * (cube_size - 1)) & 255);
- }
-
- /*
- * Generate the black and white cache values for the separation...
- */
-
- rgb[0] = 0;
- rgb[1] = 0;
- rgb[2] = 0;
-
- cupsRGBDoRGB(rgbptr, rgb, rgbptr->black, 1);
-
- rgb[0] = 255;
- rgb[1] = 255;
- rgb[2] = 255;
-
- cupsRGBDoRGB(rgbptr, rgb, rgbptr->white, 1);
-
- rgbptr->cache_init = 1;
-
- /*
- * Return the separation...
- */
-
- return (rgbptr);
-}
-
-
-/*
- * End of "$Id: rgb.c 7306 2008-02-15 00:52:38Z mike $".
- */
diff --git a/driver/srgb.c b/driver/srgb.c
deleted file mode 100644
index 0a01ec47..00000000
--- a/driver/srgb.c
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * "$Id: srgb.c 7306 2008-02-15 00:52:38Z mike $"
- *
- * sRGB lookup tables for CUPS.
- *
- * Copyright 2007 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- */
-
-/*
- * Include necessary headers.
- */
-
-#include "driver.h"
-
-
-/*
- * sRGB gamma lookup table.
- */
-
-const unsigned char cups_srgb_lut[256] =
-{
- 0, 20, 28, 33, 38, 42, 46, 49, 52, 55, 58, 61, 63, 65, 68,
- 70, 72, 74, 76, 78, 80, 81, 83, 85, 87, 88, 90, 91, 93, 94,
- 96, 97, 99, 100, 102, 103, 104, 106, 107, 108, 109, 111, 112, 113, 114,
- 115, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 128, 129, 130, 131,
- 132, 133, 134, 135, 136, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
- 146, 147, 147, 148, 149, 150, 151, 152, 153, 153, 154, 155, 156, 157, 158,
- 158, 159, 160, 161, 162, 162, 163, 164, 165, 165, 166, 167, 168, 168, 169,
- 170, 171, 171, 172, 173, 174, 174, 175, 176, 176, 177, 178, 178, 179, 180,
- 181, 181, 182, 183, 183, 184, 185, 185, 186, 187, 187, 188, 189, 189, 190,
- 190, 191, 192, 192, 193, 194, 194, 195, 196, 196, 197, 197, 198, 199, 199,
- 200, 200, 201, 202, 202, 203, 203, 204, 205, 205, 206, 206, 207, 208, 208,
- 209, 209, 210, 210, 211, 212, 212, 213, 213, 214, 214, 215, 216, 216, 217,
- 217, 218, 218, 219, 219, 220, 220, 221, 222, 222, 223, 223, 224, 224, 225,
- 225, 226, 226, 227, 227, 228, 228, 229, 229, 230, 230, 231, 231, 232, 232,
- 233, 233, 234, 234, 235, 235, 236, 236, 237, 237, 238, 238, 239, 239, 240,
- 240, 241, 241, 242, 242, 243, 243, 244, 244, 245, 245, 246, 246, 247, 247,
- 248, 248, 249, 249, 249, 250, 250, 251, 251, 252, 252, 253, 253, 254, 254,
- 255
-};
-
-
-/*
- * sRGB gamma lookup table (inverted output to map to CMYK...)
- */
-
-const unsigned char cups_scmy_lut[256] =
-{
- 255, 235, 227, 222, 217, 213, 209, 206, 203, 200, 197, 194, 192, 190, 187,
- 185, 183, 181, 179, 177, 175, 174, 172, 170, 168, 167, 165, 164, 162, 161,
- 159, 158, 156, 155, 153, 152, 151, 149, 148, 147, 146, 144, 143, 142, 141,
- 140, 138, 137, 136, 135, 134, 133, 132, 131, 130, 129, 127, 126, 125, 124,
- 123, 122, 121, 120, 119, 119, 118, 117, 116, 115, 114, 113, 112, 111, 110,
- 109, 108, 108, 107, 106, 105, 104, 103, 102, 102, 101, 100, 99, 98, 97,
- 97, 96, 95, 94, 93, 93, 92, 91, 90, 90, 89, 88, 87, 87, 86,
- 85, 84, 84, 83, 82, 81, 81, 80, 79, 79, 78, 77, 77, 76, 75,
- 74, 74, 73, 72, 72, 71, 70, 70, 69, 68, 68, 67, 66, 66, 65,
- 65, 64, 63, 63, 62, 61, 61, 60, 59, 59, 58, 58, 57, 56, 56,
- 55, 55, 54, 53, 53, 52, 52, 51, 50, 50, 49, 49, 48, 47, 47,
- 46, 46, 45, 45, 44, 43, 43, 42, 42, 41, 41, 40, 39, 39, 38,
- 38, 37, 37, 36, 36, 35, 35, 34, 33, 33, 32, 32, 31, 31, 30,
- 30, 29, 29, 28, 28, 27, 27, 26, 26, 25, 25, 24, 24, 23, 23,
- 22, 22, 21, 21, 20, 20, 19, 19, 18, 18, 17, 17, 16, 16, 15,
- 15, 14, 14, 13, 13, 12, 12, 11, 11, 10, 10, 9, 9, 8, 8,
- 7, 7, 6, 6, 6, 5, 5, 4, 4, 3, 3, 2, 2, 1, 1,
- 0
-};
-
-
-/*
- * End of "$Id: srgb.c 7306 2008-02-15 00:52:38Z mike $".
- */
diff --git a/driver/testcmyk.c b/driver/testcmyk.c
deleted file mode 100644
index 21dc1a47..00000000
--- a/driver/testcmyk.c
+++ /dev/null
@@ -1,437 +0,0 @@
-/*
- * "$Id: testcmyk.c 9982 2011-09-09 17:32:52Z mike $"
- *
- * Test the CMYK color separation code for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2006 by Easy Software Products, All Rights Reserved.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * test_gray() - Test grayscale separations...
- * test_rgb() - Test color separations...
- * main() - Do color separation tests.
- */
-
-/*
- * Include necessary headers.
- */
-
-#include <cups/string-private.h>
-#include "driver.h"
-#include <sys/stat.h>
-
-
-void test_gray(int num_comps, const char *base);
-void test_rgb(int num_comps, const char *base);
-
-
-/*
- * 'main()' - Do color separation tests.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- /*
- * Make the test directory...
- */
-
- mkdir("test", 0755);
-
- /*
- * Run tests for K, Kk, CMY, CMYK, CcMmYK, and CcMmYKk separations...
- */
-
- test_rgb(1, "test/K-rgb");
- test_rgb(2, "test/Kk-rgb");
- test_rgb(3, "test/CMY-rgb");
- test_rgb(4, "test/CMYK-rgb");
- test_rgb(6, "test/CcMmYK-rgb");
- test_rgb(7, "test/CcMmYKk-rgb");
-
- test_gray(1, "test/K-gray");
- test_gray(2, "test/Kk-gray");
- test_gray(3, "test/CMY-gray");
- test_gray(4, "test/CMYK-gray");
- test_gray(6, "test/CcMmYK-gray");
- test_gray(7, "test/CcMmYKk-gray");
-
- /*
- * Return with no errors...
- */
-
- return (0);
-}
-
-
-/*
- * 'test_gray()' - Test grayscale separations...
- */
-
-void
-test_gray(int num_comps, /* I - Number of components */
- const char *base) /* I - Base filename of output */
-{
- int i; /* Looping var */
- char filename[255]; /* Output filename */
- char line[255]; /* Line from PGM file */
- int width, height; /* Width and height of test image */
- int x, y; /* Current coordinate in image */
- int r, g, b; /* Current RGB color */
- unsigned char input[7000]; /* Line to separate */
- short output[48000], /* Output separation data */
- *outptr; /* Pointer in output */
- FILE *in; /* Input PPM file */
- FILE *out[CUPS_MAX_CHAN];
- /* Output PGM files */
- FILE *comp; /* Composite output */
- cups_cmyk_t *cmyk; /* Color separation */
-
-
- /*
- * Open the test image...
- */
-
- in = fopen("image.pgm", "rb");
- while (fgets(line, sizeof(line), in) != NULL)
- if (isdigit(line[0]))
- break;
-
- sscanf(line, "%d%d", &width, &height);
-
- fgets(line, sizeof(line), in);
-
- /*
- * Create the color separation...
- */
-
- cmyk = cupsCMYKNew(num_comps);
-
- switch (num_comps)
- {
- case 2 : /* Kk */
- cupsCMYKSetLtDk(cmyk, 0, 0.5, 1.0);
- break;
-
- case 4 :
- cupsCMYKSetGamma(cmyk, 2, 1.0, 0.9);
- cupsCMYKSetBlack(cmyk, 0.5, 1.0);
- break;
-
- case 6 : /* CcMmYK */
- cupsCMYKSetLtDk(cmyk, 0, 0.5, 1.0);
- cupsCMYKSetLtDk(cmyk, 2, 0.5, 1.0);
- cupsCMYKSetGamma(cmyk, 4, 1.0, 0.9);
- cupsCMYKSetBlack(cmyk, 0.5, 1.0);
- break;
-
- case 7 : /* CcMmYKk */
- cupsCMYKSetLtDk(cmyk, 0, 0.5, 1.0);
- cupsCMYKSetLtDk(cmyk, 2, 0.5, 1.0);
- cupsCMYKSetGamma(cmyk, 4, 1.0, 0.9);
- cupsCMYKSetLtDk(cmyk, 5, 0.5, 1.0);
- break;
- }
-
- /*
- * Open the color separation files...
- */
-
- for (i = 0; i < num_comps; i ++)
- {
- sprintf(filename, "%s%d.pgm", base, i);
- out[i] = fopen(filename, "wb");
-
- fprintf(out[i], "P5\n%d %d 255\n", width, height);
- }
-
- sprintf(filename, "%s.ppm", base);
- comp = fopen(filename, "wb");
-
- fprintf(comp, "P6\n%d %d 255\n", width, height);
-
- /*
- * Read the image and do the separations...
- */
-
- for (y = 0; y < height; y ++)
- {
- fread(input, width, 1, in);
-
- cupsCMYKDoGray(cmyk, input, output, width);
-
- for (x = 0, outptr = output; x < width; x ++, outptr += num_comps)
- {
- for (i = 0; i < num_comps; i ++)
- putc(255 - 255 * outptr[i] / 4095, out[i]);
-
- r = 4095;
- g = 4095;
- b = 4095;
-
- switch (num_comps)
- {
- case 1 :
- r -= outptr[0];
- g -= outptr[0];
- b -= outptr[0];
- break;
- case 2 :
- r -= outptr[0];
- g -= outptr[0];
- b -= outptr[0];
-
- r -= outptr[1] / 2;
- g -= outptr[1] / 2;
- b -= outptr[1] / 2;
- break;
- case 3 :
- r -= outptr[0];
- g -= outptr[1];
- b -= outptr[2];
- break;
- case 4 :
- r -= outptr[0];
- g -= outptr[1];
- b -= outptr[2];
-
- r -= outptr[3];
- g -= outptr[3];
- b -= outptr[3];
- break;
- case 6 :
- r -= outptr[0] + outptr[1] / 2;
- g -= outptr[2] + outptr[3] / 3;
- b -= outptr[4];
-
- r -= outptr[5];
- g -= outptr[5];
- b -= outptr[5];
- break;
- case 7 :
- r -= outptr[0] + outptr[1] / 2;
- g -= outptr[2] + outptr[3] / 3;
- b -= outptr[4];
-
- r -= outptr[5] + outptr[6] / 2;
- g -= outptr[5] + outptr[6] / 2;
- b -= outptr[5] + outptr[6] / 2;
- break;
- }
-
- if (r < 0)
- putc(0, comp);
- else
- putc(255 * r / 4095, comp);
-
- if (g < 0)
- putc(0, comp);
- else
- putc(255 * g / 4095, comp);
-
- if (b < 0)
- putc(0, comp);
- else
- putc(255 * b / 4095, comp);
- }
- }
-
- for (i = 0; i < num_comps; i ++)
- fclose(out[i]);
-
- fclose(comp);
- fclose(in);
-
- cupsCMYKDelete(cmyk);
-}
-
-
-/*
- * 'test_rgb()' - Test color separations...
- */
-
-void
-test_rgb(int num_comps, /* I - Number of components */
- const char *base) /* I - Base filename of output */
-{
- int i; /* Looping var */
- char filename[255]; /* Output filename */
- char line[255]; /* Line from PPM file */
- int width, height; /* Width and height of test image */
- int x, y; /* Current coordinate in image */
- int r, g, b; /* Current RGB color */
- unsigned char input[7000]; /* Line to separate */
- short output[48000], /* Output separation data */
- *outptr; /* Pointer in output */
- FILE *in; /* Input PPM file */
- FILE *out[CUPS_MAX_CHAN];
- /* Output PGM files */
- FILE *comp; /* Composite output */
- cups_cmyk_t *cmyk; /* Color separation */
-
-
- /*
- * Open the test image...
- */
-
- in = fopen("image.ppm", "rb");
- while (fgets(line, sizeof(line), in) != NULL)
- if (isdigit(line[0]))
- break;
-
- sscanf(line, "%d%d", &width, &height);
-
- fgets(line, sizeof(line), in);
-
- /*
- * Create the color separation...
- */
-
- cmyk = cupsCMYKNew(num_comps);
-
- cupsCMYKSetBlack(cmyk, 0.5, 1.0);
-
- switch (num_comps)
- {
- case 2 : /* Kk */
- cupsCMYKSetLtDk(cmyk, 0, 0.5, 1.0);
- break;
- case 6 : /* CcMmYK */
- cupsCMYKSetGamma(cmyk, 0, 1.0, 0.8);
- cupsCMYKSetLtDk(cmyk, 0, 0.5, 1.0);
- cupsCMYKSetGamma(cmyk, 2, 1.0, 0.8);
- cupsCMYKSetLtDk(cmyk, 2, 0.5, 1.0);
- break;
- case 7 : /* CcMmYKk */
- cupsCMYKSetGamma(cmyk, 0, 1.0, 0.8);
- cupsCMYKSetLtDk(cmyk, 0, 0.5, 1.0);
- cupsCMYKSetGamma(cmyk, 2, 1.0, 0.8);
- cupsCMYKSetLtDk(cmyk, 2, 0.5, 1.0);
- cupsCMYKSetLtDk(cmyk, 5, 0.5, 1.0);
- break;
- }
-
- /*
- * Open the color separation files...
- */
-
- for (i = 0; i < num_comps; i ++)
- {
- sprintf(filename, "%s%d.pgm", base, i);
- out[i] = fopen(filename, "wb");
-
- fprintf(out[i], "P5\n%d %d 255\n", width, height);
- }
-
- sprintf(filename, "%s.ppm", base);
- comp = fopen(filename, "wb");
-
- fprintf(comp, "P6\n%d %d 255\n", width, height);
-
- /*
- * Read the image and do the separations...
- */
-
- for (y = 0; y < height; y ++)
- {
- fread(input, width, 3, in);
-
- cupsCMYKDoRGB(cmyk, input, output, width);
-
- for (x = 0, outptr = output; x < width; x ++, outptr += num_comps)
- {
- for (i = 0; i < num_comps; i ++)
- putc(255 - 255 * outptr[i] / 4095, out[i]);
-
- r = 4095;
- g = 4095;
- b = 4095;
-
- switch (num_comps)
- {
- case 1 :
- r -= outptr[0];
- g -= outptr[0];
- b -= outptr[0];
- break;
- case 2 :
- r -= outptr[0];
- g -= outptr[0];
- b -= outptr[0];
-
- r -= outptr[1] / 2;
- g -= outptr[1] / 2;
- b -= outptr[1] / 2;
- break;
- case 3 :
- r -= outptr[0];
- g -= outptr[1];
- b -= outptr[2];
- break;
- case 4 :
- r -= outptr[0];
- g -= outptr[1];
- b -= outptr[2];
-
- r -= outptr[3];
- g -= outptr[3];
- b -= outptr[3];
- break;
- case 6 :
- r -= outptr[0] + outptr[1] / 2;
- g -= outptr[2] + outptr[3] / 3;
- b -= outptr[4];
-
- r -= outptr[5];
- g -= outptr[5];
- b -= outptr[5];
- break;
- case 7 :
- r -= outptr[0] + outptr[1] / 2;
- g -= outptr[2] + outptr[3] / 3;
- b -= outptr[4];
-
- r -= outptr[5] + outptr[6] / 2;
- g -= outptr[5] + outptr[6] / 2;
- b -= outptr[5] + outptr[6] / 2;
- break;
- }
-
- if (r < 0)
- putc(0, comp);
- else
- putc(255 * r / 4095, comp);
-
- if (g < 0)
- putc(0, comp);
- else
- putc(255 * g / 4095, comp);
-
- if (b < 0)
- putc(0, comp);
- else
- putc(255 * b / 4095, comp);
- }
- }
-
- for (i = 0; i < num_comps; i ++)
- fclose(out[i]);
-
- fclose(comp);
- fclose(in);
-
- cupsCMYKDelete(cmyk);
-}
-
-
-/*
- * End of "$Id: testcmyk.c 9982 2011-09-09 17:32:52Z mike $".
- */
diff --git a/driver/testdither.c b/driver/testdither.c
deleted file mode 100644
index e9dc0470..00000000
--- a/driver/testdither.c
+++ /dev/null
@@ -1,191 +0,0 @@
-/*
- * "$Id: testdither.c 9042 2010-03-24 00:45:34Z mike $"
- *
- * Dither test program for CUPS.
- *
- * Try the following:
- *
- * testdither 0 255 > filename.ppm
- * testdither 0 127 255 > filename.ppm
- * testdither 0 85 170 255 > filename.ppm
- * testdither 0 63 127 170 198 227 255 > filename.ppm
- * testdither 0 210 383 > filename.ppm
- * testdither 0 82 255 > filename.ppm
- *
- * Copyright 2007-2010 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * main() - Test dithering and output a PPM file.
- * usage() - Show program usage...
- */
-
-/*
- * Include necessary headers.
- */
-
-#include "driver.h"
-#include <cups/string-private.h>
-
-
-/*
- * Local functions...
- */
-
-void usage(void);
-
-
-/*
- * 'main()' - Test dithering and output a PPM file.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- int x, y; /* Current coordinate in image */
- short line[512]; /* Line to dither */
- unsigned char pixels[512], /* Dither pixels */
- *pixptr; /* Pointer in line */
- int output; /* Output pixel */
- cups_lut_t *lut; /* Dither lookup table */
- cups_dither_t *dither; /* Dither state */
- int nlutvals; /* Number of lookup values */
- float lutvals[16]; /* Lookup values */
- int pixvals[16]; /* Pixel values */
-
-
- /*
- * See if we have lookup table values on the command-line...
- */
-
- if (argc > 1)
- {
- /*
- * Yes, collect them...
- */
-
- nlutvals = 0;
-
- for (x = 1; x < argc; x ++)
- if (isdigit(argv[x][0]) && nlutvals < 16)
- {
- pixvals[nlutvals] = atoi(argv[x]);
- lutvals[nlutvals] = atof(argv[x]) / 255.0;
- nlutvals ++;
- }
- else
- usage();
-
- /*
- * See if we have at least 2 values...
- */
-
- if (nlutvals < 2)
- usage();
- }
- else
- {
- /*
- * Otherwise use the default 2-entry LUT with values of 0 and 255...
- */
-
- nlutvals = 2;
- lutvals[0] = 0.0;
- lutvals[1] = 1.0;
- pixvals[0] = 0;
- pixvals[1] = 255;
- }
-
- /*
- * Create the lookup table and dither state...
- */
-
- lut = cupsLutNew(nlutvals, lutvals);
- dither = cupsDitherNew(512);
-
- /*
- * Put out the PGM header for a raw 256x256x8-bit grayscale file...
- */
-
- puts("P5\n512\n512\n255");
-
- /*
- * Dither 512 lines, which are written out in 256 image lines...
- */
-
- for (y = 0; y < 512; y ++)
- {
- /*
- * Create the grayscale data for the current line...
- */
-
- for (x = 0; x < 512; x ++)
- line[x] = 4095 * ((y / 32) * 16 + x / 32) / 255;
-
- /*
- * Dither the line...
- */
-
- cupsDitherLine(dither, lut, line, 1, pixels);
-
- if (y == 0)
- {
- fputs("DEBUG: pixels =", stderr);
- for (x = 0; x < 512; x ++)
- fprintf(stderr, " %d", pixels[x]);
- fputs("\n", stderr);
- }
-
- /*
- * Add or set the output pixel values...
- */
-
- for (x = 0, pixptr = pixels; x < 512; x ++, pixptr ++)
- {
- output = 255 - pixvals[*pixptr];
-
- if (output < 0)
- putchar(0);
- else
- putchar(output);
- }
- }
-
- /*
- * Free the dither state and lookup table...
- */
-
- cupsDitherDelete(dither);
- cupsLutDelete(lut);
-
- /*
- * Return with no errors...
- */
-
- return (0);
-}
-
-
-/*
- * 'usage()' - Show program usage...
- */
-
-void
-usage(void)
-{
- puts("Usage: testdither [val1 val2 [... val16]] >filename.ppm");
- exit(1);
-}
-
-
-/*
- * End of "$Id: testdither.c 9042 2010-03-24 00:45:34Z mike $".
- */
diff --git a/driver/testdriver.c b/driver/testdriver.c
deleted file mode 100644
index 413ea428..00000000
--- a/driver/testdriver.c
+++ /dev/null
@@ -1,176 +0,0 @@
-/*
- * "$Id: testdriver.c 9042 2010-03-24 00:45:34Z mike $"
- *
- * Sample/test driver interface program for CUPS.
- *
- * This program handles listing and installing both static PPD files
- * in CUPS_DATADIR/model and dynamically generated PPD files using
- * the driver helper programs in CUPS_SERVERBIN/driver.
- *
- * Copyright 2007-2010 by Apple Inc.
- * Copyright 1997-2006 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * main() - Enumerate or display PPD files.
- * cat_ppd() - Display a PPD file.
- * list_ppds() - List PPDs.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include <cups/string-private.h>
-#include <cups/cups.h>
-
-
-/*
- * Local functions...
- */
-
-static int cat_ppd(const char *uri);
-static int list_ppds(const char *name);
-
-
-/*
- * Sample data...
- */
-
-static const char *models[][2] =
- {
- { "foojet.ppd", "Foo Printer" },
- { "barjet.ppd", "Bar Printer" },
- { "foobar.ppd", "Foo/Bar Multifunction Printer" }
- };
-
-
-/*
- * 'main()' - Enumerate or display PPD files.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line args */
- char *argv[]) /* I - Command-line arguments */
-{
- if (argc == 2 && !strcmp(argv[1], "list"))
- return (list_ppds(argv[0]));
- else if (argc == 3 && !strcmp(argv[1], "cat"))
- return (cat_ppd(argv[2]));
-
- fprintf(stderr, "ERROR: Usage: %s cat URI\n", argv[0]);
- fprintf(stderr, "ERROR: Usage: %s list\n", argv[0]);
- return (1);
-}
-
-
-/*
- * 'cat_ppd()' - Display a PPD file.
- */
-
-static int /* O - Exit status */
-cat_ppd(const char *uri) /* I - PPD URI */
-{
- int i; /* Looping var */
- char scheme[255], /* URI scheme */
- userpass[255], /* Username/password (unused) */
- hostname[255], /* Hostname (unused) */
- resource[1024]; /* Resource name */
- int port; /* Port (unused) */
- const char *name; /* Pointer to name in URI */
-
-
- if (httpSeparateURI(HTTP_URI_CODING_ALL, uri, scheme, sizeof(scheme),
- userpass, sizeof(userpass), hostname, sizeof(hostname),
- &port, resource, sizeof(resource)) < HTTP_URI_OK)
- {
- fprintf(stderr, "ERROR: Bad URI \"%s\"!\n", uri);
- return (1);
- }
-
- name = resource + 1;
-
- for (i = 0 ; i < (int)(sizeof(models) / sizeof(models[0])); i ++)
- if (!strcmp(name, models[i][0]))
- {
- /*
- * Actually display the PPD file...
- */
- puts("*PPD-Adobe: \"4.3\"");
-
- puts("*LanguageEncoding: ISOLatin1");
- puts("*LanguageVersion: English");
- puts("*Manufacturer: \"Test\"");
- puts("*FileVersion: \"1.0\"");
- puts("*FormatVersion: \"4.3\"");
- puts("*PSVersion: \"(3010) 1\"");
- printf("*PCFileName: \"%s\"\n", models[i][0]);
-
- printf("*Product: \"(%s)\"\n", models[i][1]);
- printf("*ModelName: \"Test %s\"\n", models[i][1]);
- printf("*NickName: \"Test %s\"\n", models[i][1]);
- printf("*ShortNickName: \"Test %s\"\n", models[i][1]);
-
- puts("*OpenUI PageSize: PickOne");
- puts("*OrderDependency: 10 AnySetup *PageSetup");
- puts("*DefaultPageSize: Letter");
- puts("*PageSize Letter: \"<</PageSize[612 792]>>setpagedevice\"");
- puts("*PageSize A4: \"<</PageSize[585 842]>>setpagedevice\"");
- puts("*CloseUI: *PageSize");
-
- puts("*OpenUI PageRegion: PickOne");
- puts("*OrderDependency: 10 AnySetup *PageRegion");
- puts("*DefaultPageRegion: Letter");
- puts("*PageRegion Letter: \"<</PageRegion[612 792]>>setpagedevice\"");
- puts("*PageRegion A4: \"<</PageRegion[585 842]>>setpagedevice\"");
- puts("*CloseUI: *PageRegion");
-
- puts("*DefaultImageableArea: Letter");
- puts("*ImageableArea Letter: \"0 0 612 792\"");
- puts("*ImageableArea A4: \"0 0 595 842\"");
-
- puts("*DefaultPaperDimension: Letter");
- puts("*PaperDimension Letter: \"612 792\"");
- puts("*PaperDimension A4: \"595 842\"");
-
- return (0);
- }
-
- fprintf(stderr, "ERROR: Unknown URI \"%s\"!\n", uri);
- return (1);
-}
-
-
-/*
- * 'list_ppds()' - List PPDs.
- */
-
-static int /* O - Exit status */
-list_ppds(const char *name) /* I - Program name */
-{
- int i; /* Looping var */
- const char *base; /* Base name of program */
-
-
- if ((base = strrchr(name, '/')) != NULL)
- base ++;
- else
- base = name;
-
- for (i = 0; i < (int)(sizeof(models) / sizeof(models[0])); i ++)
- printf("\"%s:///%s\" en \"Test\" \"Test %s\" \"1284 device id\"\n",
- base, models[i][0], models[i][1]);
-
- return (0);
-}
-
-
-/*
- * End of "$Id: testdriver.c 9042 2010-03-24 00:45:34Z mike $".
- */
diff --git a/driver/testrgb.c b/driver/testrgb.c
deleted file mode 100644
index f2079d9e..00000000
--- a/driver/testrgb.c
+++ /dev/null
@@ -1,347 +0,0 @@
-/*
- * "$Id: testrgb.c 9982 2011-09-09 17:32:52Z mike $"
- *
- * Test the new RGB color separation code for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2006 by Easy Software Products, All Rights Reserved.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * main() - Do color rgb tests.
- * test_gray() - Test grayscale rgbs...
- * test_rgb() - Test color rgbs...
- */
-
-/*
- * Include necessary headers.
- */
-
-#include <cups/string-private.h>
-#include "driver.h"
-#include <sys/stat.h>
-
-#ifdef HAVE_LIBLCMS
-# include <lcms/lcms.h>
-#endif /* HAVE_LIBLCMS */
-
-
-void test_gray(cups_sample_t *samples, int num_samples,
- int cube_size, int num_comps, const char *base);
-void test_rgb(cups_sample_t *samples, int num_samples,
- int cube_size, int num_comps, const char *base);
-
-
-/*
- * 'main()' - Do color rgb tests.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- static cups_sample_t CMYK[] = /* Basic 4-color sep */
- {
- /*{ r, g, b }, { C, M, Y, K }*/
- { { 0, 0, 0 }, { 0, 0, 0, 255 } },
- { { 255, 0, 0 }, { 0, 255, 240, 0 } },
- { { 0, 255, 0 }, { 200, 0, 200, 0 } },
- { { 255, 255, 0 }, { 0, 0, 240, 0 } },
- { { 0, 0, 255 }, { 200, 200, 0, 0 } },
- { { 255, 0, 255 }, { 0, 200, 0, 0 } },
- { { 0, 255, 255 }, { 200, 0, 0, 0 } },
- { { 255, 255, 255 }, { 0, 0, 0, 0 } }
- };
-
-
- /*
- * Make the test directory...
- */
-
- mkdir("test", 0755);
-
- /*
- * Run tests for CMYK and CMYK separations...
- */
-
- test_rgb(CMYK, 8, 2, 4, "test/rgb-cmyk");
-
- test_gray(CMYK, 8, 2, 4, "test/gray-cmyk");
-
- /*
- * Return with no errors...
- */
-
- return (0);
-}
-
-
-/*
- * 'test_gray()' - Test grayscale rgbs...
- */
-
-void
-test_gray(cups_sample_t *samples, /* I - Sample values */
- int num_samples, /* I - Number of samples */
- int cube_size, /* I - Cube size */
- int num_comps, /* I - Number of components */
- const char *base) /* I - Base filename of output */
-{
- int i; /* Looping var */
- char filename[255]; /* Output filename */
- char line[255]; /* Line from PPM file */
- int width, height; /* Width and height of test image */
- int x, y; /* Current coordinate in image */
- int r, g, b; /* Current RGB color */
- unsigned char input[7000]; /* Line to rgbarate */
- unsigned char output[48000], /* Output rgb data */
- *outptr; /* Pointer in output */
- FILE *in; /* Input PPM file */
- FILE *out[CUPS_MAX_CHAN];
- /* Output PGM files */
- FILE *comp; /* Composite output */
- cups_rgb_t *rgb; /* Color separation */
-
-
- /*
- * Open the test image...
- */
-
- in = fopen("image.pgm", "rb");
- while (fgets(line, sizeof(line), in) != NULL)
- if (isdigit(line[0]))
- break;
-
- sscanf(line, "%d%d", &width, &height);
-
- fgets(line, sizeof(line), in);
-
- /*
- * Create the color rgb...
- */
-
- rgb = cupsRGBNew(num_samples, samples, cube_size, num_comps);
-
- /*
- * Open the color rgb files...
- */
-
- for (i = 0; i < num_comps; i ++)
- {
- sprintf(filename, "%s%d.pgm", base, i);
- out[i] = fopen(filename, "wb");
-
- fprintf(out[i], "P5\n%d %d 255\n", width, height);
- }
-
- sprintf(filename, "%s.ppm", base);
- comp = fopen(filename, "wb");
-
- fprintf(comp, "P6\n%d %d 255\n", width, height);
-
- /*
- * Read the image and do the rgbs...
- */
-
- for (y = 0; y < height; y ++)
- {
- fread(input, width, 1, in);
-
- cupsRGBDoGray(rgb, input, output, width);
-
- for (x = 0, outptr = output; x < width; x ++, outptr += num_comps)
- {
- for (i = 0; i < num_comps; i ++)
- putc(255 - outptr[i], out[i]);
-
- r = 255;
- g = 255;
- b = 255;
-
- r -= outptr[0];
- g -= outptr[1];
- b -= outptr[2];
-
- r -= outptr[3];
- g -= outptr[3];
- b -= outptr[3];
-
- if (num_comps > 4)
- {
- r -= outptr[4] / 2;
- g -= outptr[5] / 2;
- }
-
- if (num_comps > 6)
- {
- r -= outptr[6] / 2;
- g -= outptr[6] / 2;
- b -= outptr[6] / 2;
- }
-
- if (r < 0)
- putc(0, comp);
- else
- putc(r, comp);
-
- if (g < 0)
- putc(0, comp);
- else
- putc(g, comp);
-
- if (b < 0)
- putc(0, comp);
- else
- putc(b, comp);
- }
- }
-
- for (i = 0; i < num_comps; i ++)
- fclose(out[i]);
-
- fclose(comp);
- fclose(in);
-
- cupsRGBDelete(rgb);
-}
-
-
-/*
- * 'test_rgb()' - Test color rgbs...
- */
-
-void
-test_rgb(cups_sample_t *samples, /* I - Sample values */
- int num_samples, /* I - Number of samples */
- int cube_size, /* I - Cube size */
- int num_comps, /* I - Number of components */
- const char *base) /* I - Base filename of output */
-{
- int i; /* Looping var */
- char filename[255]; /* Output filename */
- char line[255]; /* Line from PPM file */
- int width, height; /* Width and height of test image */
- int x, y; /* Current coordinate in image */
- int r, g, b; /* Current RGB color */
- unsigned char input[7000]; /* Line to rgbarate */
- unsigned char output[48000], /* Output rgb data */
- *outptr; /* Pointer in output */
- FILE *in; /* Input PPM file */
- FILE *out[CUPS_MAX_CHAN];
- /* Output PGM files */
- FILE *comp; /* Composite output */
- cups_rgb_t *rgb; /* Color separation */
-
-
- /*
- * Open the test image...
- */
-
- in = fopen("image.ppm", "rb");
- while (fgets(line, sizeof(line), in) != NULL)
- if (isdigit(line[0]))
- break;
-
- sscanf(line, "%d%d", &width, &height);
-
- fgets(line, sizeof(line), in);
-
- /*
- * Create the color rgb...
- */
-
- rgb = cupsRGBNew(num_samples, samples, cube_size, num_comps);
-
- /*
- * Open the color rgb files...
- */
-
- for (i = 0; i < num_comps; i ++)
- {
- sprintf(filename, "%s%d.pgm", base, i);
- out[i] = fopen(filename, "wb");
-
- fprintf(out[i], "P5\n%d %d 255\n", width, height);
- }
-
- sprintf(filename, "%s.ppm", base);
- comp = fopen(filename, "wb");
-
- fprintf(comp, "P6\n%d %d 255\n", width, height);
-
- /*
- * Read the image and do the rgbs...
- */
-
- for (y = 0; y < height; y ++)
- {
- fread(input, width, 3, in);
-
- cupsRGBDoRGB(rgb, input, output, width);
-
- for (x = 0, outptr = output; x < width; x ++, outptr += num_comps)
- {
- for (i = 0; i < num_comps; i ++)
- putc(255 - outptr[i], out[i]);
-
- r = 255;
- g = 255;
- b = 255;
-
- r -= outptr[0];
- g -= outptr[1];
- b -= outptr[2];
-
- r -= outptr[3];
- g -= outptr[3];
- b -= outptr[3];
-
- if (num_comps > 4)
- {
- r -= outptr[4] / 2;
- g -= outptr[5] / 2;
- }
-
- if (num_comps > 6)
- {
- r -= outptr[6] / 2;
- g -= outptr[6] / 2;
- b -= outptr[6] / 2;
- }
-
- if (r < 0)
- putc(0, comp);
- else
- putc(r, comp);
-
- if (g < 0)
- putc(0, comp);
- else
- putc(g, comp);
-
- if (b < 0)
- putc(0, comp);
- else
- putc(b, comp);
- }
- }
-
- for (i = 0; i < num_comps; i ++)
- fclose(out[i]);
-
- fclose(comp);
- fclose(in);
-
- cupsRGBDelete(rgb);
-}
-
-
-/*
- * End of "$Id: testrgb.c 9982 2011-09-09 17:32:52Z mike $".
- */
diff --git a/examples/ppdx.c b/examples/ppdx.c
new file mode 100644
index 00000000..d4a0f6b0
--- /dev/null
+++ b/examples/ppdx.c
@@ -0,0 +1,314 @@
+/*
+ * "$Id: ppdx.c 10459 2012-05-09 22:34:27Z mike $"
+ *
+ * Example code for encoding and decoding large amounts of data in a PPD file.
+ * This would typically be used in a driver to save configuration/state
+ * information that could be used by an application.
+ *
+ * Copyright 2012 by Apple Inc.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * This file is subject to the Apple OS-Developed Software exception.
+ *
+ * Contents:
+ *
+ * ppdxReadData() - Read encoded data from a ppd_file_t *.
+ * ppdxWriteData() - Writes encoded data to stderr using PPD: messages.
+ */
+
+/*
+ * Include necessary headers...
+ */
+
+#include "ppdx.h"
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <zlib.h> /* For compression of the data */
+
+
+/*
+ * Constants...
+ */
+
+#define PPDX_MAX_VALUE (PPD_MAX_LINE - PPD_MAX_NAME - 4)
+ /* Max value length with delimiters + nul */
+#define PPDX_MAX_CHUNK (PPDX_MAX_VALUE * 3 / 4)
+ /* Max length of each chunk when Base64-encoded */
+
+
+/*
+ * 'ppdxReadData()' - Read encoded data from a ppd_file_t *.
+ *
+ * Reads chunked data in the PPD file "ppd" using the prefix "name". Returns
+ * an allocated pointer to the data (which is nul-terminated for convenience)
+ * along with the length of the data in the variable pointed to by "datasize",
+ * which can be NULL to indicate the caller doesn't need the length.
+ *
+ * Returns NULL if no data is present in the PPD with the prefix.
+ */
+
+void * /* O - Data or NULL */
+ppdxReadData(ppd_file_t *ppd, /* I - PPD file */
+ const char *name, /* I - Keyword prefix */
+ size_t *datasize) /* O - Size of data or NULL for don't care */
+{
+ char keyword[PPD_MAX_NAME], /* Keyword name */
+ decoded[PPDX_MAX_CHUNK + 1];
+ /* Decoded string */
+ unsigned chunk = 0; /* Current chunk number */
+ int len; /* Length of current chunk */
+ ppd_attr_t *attr; /* Keyword/value from PPD file */
+ Bytef *data; /* Pointer to data */
+ size_t alloc_size; /* Allocated size of data buffer */
+ z_stream decomp; /* Decompressor stream */
+ int error; /* Error/status from inflate() */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (datasize)
+ *datasize = 0;
+
+ if (!ppd || !name)
+ return (NULL);
+
+ /*
+ * First see if there are any instances of the named keyword in the PPD...
+ */
+
+ snprintf(keyword, sizeof(keyword), "%s%04x", name, chunk);
+ if ((attr = ppdFindAttr(ppd, keyword, NULL)) == NULL)
+ return (NULL);
+
+ /*
+ * Allocate some memory and start decoding...
+ */
+
+ data = malloc(257);
+ alloc_size = 256;
+
+ memset(&decomp, 0, sizeof(decomp));
+ decomp.next_out = data;
+ decomp.avail_out = 256;
+
+ inflateInit(&decomp);
+
+ do
+ {
+ /*
+ * Grab the data from the current attribute and decode it...
+ */
+
+ len = sizeof(decoded);
+ if (!httpDecode64_2(decoded, &len, attr->value) || len == 0)
+ break;
+
+// printf("chunk %04x has length %d\n", chunk, len);
+
+ /*
+ * Decompress this chunk...
+ */
+
+ decomp.next_in = decoded;
+ decomp.avail_in = len;
+
+ do
+ {
+ Bytef *temp; /* Temporary pointer */
+ size_t temp_size; /* Temporary allocation size */
+
+// printf("Before inflate: avail_in=%d, avail_out=%d\n", decomp.avail_in,
+// decomp.avail_out);
+
+ if ((error = inflate(&decomp, Z_NO_FLUSH)) < Z_OK)
+ {
+ fprintf(stderr, "ERROR: inflate returned %d (%s)\n", error, decomp.msg);
+ break;
+ }
+
+// printf("After inflate: avail_in=%d, avail_out=%d, error=%d\n",
+// decomp.avail_in, decomp.avail_out, error);
+
+ if (decomp.avail_out == 0)
+ {
+ if (alloc_size < 2048)
+ temp_size = alloc_size * 2;
+ else if (alloc_size < PPDX_MAX_DATA)
+ temp_size = alloc_size + 2048;
+ else
+ break;
+
+ if ((temp = realloc(data, temp_size + 1)) == NULL)
+ {
+ free(data);
+ return (NULL);
+ }
+
+ decomp.next_out = temp + (decomp.next_out - data);
+ decomp.avail_out = temp_size - alloc_size;
+ data = temp;
+ alloc_size = temp_size;
+ }
+ }
+ while (decomp.avail_in > 0);
+
+ chunk ++;
+ snprintf(keyword, sizeof(keyword), "%s%04x", name, chunk);
+ }
+ while ((attr = ppdFindAttr(ppd, keyword, NULL)) != NULL);
+
+ inflateEnd(&decomp);
+
+ /*
+ * Nul-terminate the data (usually a string)...
+ */
+
+ *(decomp.next_out) = '\0';
+
+ if (datasize)
+ *datasize = decomp.next_out - data;
+
+ return (data);
+}
+
+
+/*
+ * 'ppdxWriteData()' - Writes encoded data to stderr using PPD: messages.
+ *
+ * Writes chunked data to the PPD file using PPD: messages sent to stderr for
+ * cupsd. "name" must be a valid PPD keyword string whose length is less than
+ * 37 characters to allow for chunk numbering. "data" provides a pointer to the
+ * data to be written, and "datasize" provides the length.
+ */
+
+extern void
+ppdxWriteData(const char *name, /* I - Base name of keyword */
+ const void *data, /* I - Data to write */
+ size_t datasize) /* I - Number of bytes in data */
+{
+ char buffer[PPDX_MAX_CHUNK], /* Chunk buffer */
+ encoded[PPDX_MAX_VALUE + 1],
+ /* Encoded data */
+ pair[PPD_MAX_LINE], /* name=value pair */
+ line[PPDX_MAX_STATUS], /* Line buffer */
+ *lineptr, /* Current position in line buffer */
+ *lineend; /* End of line buffer */
+ unsigned chunk = 0; /* Current chunk number */
+ int len; /* Length of current chunk */
+ z_stream comp; /* Compressor stream */
+ int error; /* Error/status from deflate() */
+
+
+ /*
+ * Range check input...
+ */
+
+ if (!name || (!data && datasize > 0) || datasize > PPDX_MAX_DATA)
+ return;
+
+ strlcpy(line, "PPD:", sizeof(line));
+ lineptr = line + 4;
+ lineend = line + sizeof(line) - 2;
+
+ if (datasize > 0)
+ {
+ /*
+ * Compress and encode output...
+ */
+
+ memset(&comp, 0, sizeof(comp));
+ comp.next_in = (Bytef *)data;
+ comp.avail_in = datasize;
+
+ deflateInit(&comp, 9);
+
+ do
+ {
+ /*
+ * Compress a chunk...
+ */
+
+ comp.next_out = buffer;
+ comp.avail_out = sizeof(buffer);
+
+ if ((error = deflate(&comp, Z_FINISH)) < Z_OK)
+ {
+ fprintf(stderr, "ERROR: deflate returned %d (%s)\n", error, comp.msg);
+ break;
+ }
+
+ /*
+ * Write a chunk...
+ */
+
+ len = sizeof(buffer) - comp.avail_out;
+ httpEncode64_2(encoded, sizeof(encoded), buffer, len);
+
+ len = (int)snprintf(pair, sizeof(pair), " %s%04x=%s", name, chunk,
+ encoded);
+#ifdef DEBUG
+ fprintf(stderr, "DEBUG: *%s%04x: \"%s\"\n", name, chunk, encoded);
+#endif /* DEBUG */
+
+ if ((lineptr + len) >= lineend)
+ {
+ *lineptr++ = '\n';
+ *lineptr = '\0';
+
+ fputs(line, stderr);
+ lineptr = line + 4;
+ }
+
+ strlcpy(lineptr, pair, lineend - lineptr);
+ lineptr += len;
+
+ /*
+ * Setup for the next one...
+ */
+
+ chunk ++;
+ }
+ while (comp.avail_out == 0);
+ }
+
+ deflateEnd(&comp);
+
+ /*
+ * Write a trailing empty chunk to signal EOD...
+ */
+
+ len = (int)snprintf(pair, sizeof(pair), " %s%04x=\"\"", name, chunk);
+#ifdef DEBUG
+ fprintf(stderr, "DEBUG: *%s%04x: \"\"\n", name, chunk);
+#endif /* DEBUG */
+
+ if ((lineptr + len) >= lineend)
+ {
+ *lineptr++ = '\n';
+ *lineptr = '\0';
+
+ fputs(line, stderr);
+ lineptr = line + 4;
+ }
+
+ strlcpy(lineptr, pair, lineend - lineptr);
+ lineptr += len;
+
+ *lineptr++ = '\n';
+ *lineptr = '\0';
+
+ fputs(line, stderr);
+}
+
+
+/*
+ * End of "$Id: ppdx.c 10459 2012-05-09 22:34:27Z mike $".
+ */
diff --git a/examples/ppdx.h b/examples/ppdx.h
new file mode 100644
index 00000000..e6cc7786
--- /dev/null
+++ b/examples/ppdx.h
@@ -0,0 +1,82 @@
+/*
+ * "$Id: ppdx.h 10459 2012-05-09 22:34:27Z mike $"
+ *
+ * Header for PPD data encoding example code.
+ *
+ * Copyright 2012 by Apple Inc.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * This file is subject to the Apple OS-Developed Software exception.
+ *
+ */
+
+#ifndef _PPDX_H_
+# define _PPDX_H_
+
+
+/*
+ * Include necessary headers...
+ */
+
+# include <cups/ppd.h>
+
+
+/*
+ * C++ magic...
+ */
+
+# ifdef __cplusplus
+extern "C" {
+# endif /* __cplusplus */
+
+
+/*
+ * Maximum amount of data to encode/decode...
+ */
+
+# define PPDX_MAX_STATUS 1024 /* Limit on log messages in 10.6 */
+# define PPDX_MAX_DATA 16777216/* 16MiB */
+
+
+/*
+ * 'ppdxReadData()' - Read encoded data from a ppd_file_t *.
+ *
+ * Reads chunked data in the PPD file "ppd" using the prefix "name". Returns
+ * an allocated pointer to the data (which is nul-terminated for convenience)
+ * along with the length of the data in the variable pointed to by "datasize",
+ * which can be NULL to indicate the caller doesn't need the length.
+ *
+ * Returns NULL if no data is present in the PPD with the prefix.
+ */
+
+extern void *ppdxReadData(ppd_file_t *ppd, const char *name,
+ size_t *datasize);
+
+
+/*
+ * 'ppdxWriteData()' - Writes encoded data to stderr using PPD: messages.
+ *
+ * Writes chunked data to the PPD file using PPD: messages sent to stderr for
+ * cupsd. "name" must be a valid PPD keyword string whose length is less than
+ * 37 characters to allow for chunk numbering. "data" provides a pointer to the
+ * data to be written, and "datasize" provides the length.
+ */
+
+extern void ppdxWriteData(const char *name, const void *data,
+ size_t datasize);
+
+
+# ifdef __cplusplus
+}
+# endif /* __cplusplus */
+
+#endif /* !_PPDX_H */
+
+/*
+ * End of "$Id: ppdx.h 10459 2012-05-09 22:34:27Z mike $".
+ */
diff --git a/examples/testppdx.c b/examples/testppdx.c
new file mode 100644
index 00000000..b11317f5
--- /dev/null
+++ b/examples/testppdx.c
@@ -0,0 +1,117 @@
+/*
+ * "$Id: testppdx.c 10459 2012-05-09 22:34:27Z mike $"
+ *
+ * Test program for PPD data encoding example code.
+ *
+ * Compile with:
+ *
+ * gcc -o testppdx -D_PPD_DEPRECATED="" -g testppdx.c ppdx.c -lcups -lz
+ *
+ * Copyright 2012 by Apple Inc.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * This file is subject to the Apple OS-Developed Software exception.
+ *
+ * Contents:
+ *
+ * main() - Read data from a test PPD file and write out new chunks.
+ */
+
+/*
+ * Include necessary headers...
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include "ppdx.h"
+
+
+/*
+ * 'main()' - Read data from a test PPD file and write out new chunks.
+ */
+
+int /* O - Exit status */
+main(void)
+{
+ int status = 0; /* Exit status */
+ FILE *fp; /* File to read */
+ char contents[8193], /* Contents of file */
+ *data; /* Data from PPD */
+ size_t contsize, /* File size */
+ datasize; /* Data size */
+ ppd_file_t *ppd; /* Test PPD */
+
+
+ /*
+ * Open the PPD and get the data from it...
+ */
+
+ ppd = ppdOpenFile("testppdx.ppd");
+ data = ppdxReadData(ppd, "EXData", &datasize);
+
+ /*
+ * Open this source file and read it...
+ */
+
+ fp = fopen("testppdx.c", "r");
+ if (fp)
+ {
+ contsize = fread(contents, 1, sizeof(contents) - 1, fp);
+ fclose(fp);
+ contents[contsize] = '\0';
+ }
+ else
+ {
+ contents[0] = '\0';
+ contsize = 0;
+ }
+
+ /*
+ * Compare data...
+ */
+
+ if (data)
+ {
+ if (contsize != datasize)
+ {
+ fprintf(stderr, "ERROR: PPD has %ld bytes, test file is %ld bytes.\n",
+ (long)datasize, (long)contsize);
+ status = 1;
+ }
+ else if (strcmp(contents, data))
+ {
+ fputs("ERROR: PPD and test file are not the same.\n", stderr);
+ status = 1;
+ }
+
+ if (status)
+ {
+ if ((fp = fopen("testppdx.dat", "wb")) != NULL)
+ {
+ fwrite(data, 1, datasize, fp);
+ fclose(fp);
+ fputs("ERROR: See testppdx.dat for data from PPD.\n", stderr);
+ }
+ else
+ perror("Unable to open 'testppdx.dat'");
+ }
+
+ free(data);
+ }
+
+ printf("Encoding %ld bytes for PPD...\n", (long)contsize);
+
+ ppdxWriteData("EXData", contents, contsize);
+
+ return (1);
+}
+
+
+/*
+ * End of "$Id: testppdx.c 10459 2012-05-09 22:34:27Z mike $".
+ */
diff --git a/examples/testppdx.ppd b/examples/testppdx.ppd
new file mode 100644
index 00000000..908f3e14
--- /dev/null
+++ b/examples/testppdx.ppd
@@ -0,0 +1,121 @@
+*PPD-Adobe: "4.3"
+*%
+*% "$Id: testppdx.ppd 10459 2012-05-09 22:34:27Z mike $"
+*%
+*% Test PPD file for data encoding example.
+*%
+*% This file cannot be used with any known printers.
+*%
+*% Copyright 2007-2012 by Apple Inc.
+*% Copyright 2002-2006 by Easy Software Products.
+*%
+*% These coded instructions, statements, and computer programs are the
+*% property of Apple Inc. and are protected by Federal copyright
+*% law. Distribution and use rights are outlined in the file "LICENSE.txt"
+*% which should have been included with this file. If this file is
+*% file is missing or damaged, see the license at "http://www.cups.org/".
+*FormatVersion: "4.3"
+*FileVersion: "1.3"
+*LanguageVersion: English
+*LanguageEncoding: ISOLatin1
+*PCFileName: "TESTPPDX.PPD"
+*Manufacturer: "Apple"
+*Product: "(Test PPDX)"
+*cupsVersion: 1.6
+*ModelName: "Test PPDX"
+*ShortNickName: "Test PPDX"
+*NickName: "Test PPDX for CUPS"
+*PSVersion: "(3010.000) 0"
+*LanguageLevel: "3"
+*ColorDevice: True
+*DefaultColorSpace: RGB
+*FileSystem: False
+*Throughput: "1"
+*LandscapeOrientation: Plus90
+*TTRasterizer: Type42
+*cupsFilter: "application/vnd.cups-raster 0 -"
+*RequiresPageRegion All: True
+
+*% For PageSize, we have put all of the translations in-line...
+*OpenUI *PageSize/Page Size: PickOne
+*OrderDependency: 10 AnySetup *PageSize
+*DefaultPageSize: Letter
+*PageSize Letter/US Letter: "PageSize=Letter"
+*PageSize Letter.Banner/US Letter Banner: "PageSize=Letter.Banner"
+*PageSize Letter.Fullbleed/US Letter Borderless: "PageSize=Letter.Fullbleed"
+*PageSize A4/A4: "PageSize=A4"
+*PageSize Env10/#10 Envelope: "PageSize=Env10"
+*CloseUI: *PageSize
+
+*% For PageRegion, we have separated the translations...
+*OpenUI *PageRegion/Page Region: PickOne
+*OrderDependency: 10 AnySetup *PageRegion
+*DefaultPageRegion: Letter
+*PageRegion Letter/US Letter: "PageRegion=Letter"
+*PageRegion Letter.Banner/US Letter Banner: "PageRegion=Letter.Fullbleed"
+*PageRegion Letter.Fullbleed/US Letter Borderless: "PageRegion=Letter.Fullbleed"
+*PageRegion A4/A4: "PageRegion=A4"
+*PageRegion Env10/#10 Envelope: "PageRegion=Env10"
+*CloseUI: *PageRegion
+
+*DefaultImageableArea: Letter
+*ImageableArea Letter: "18 36 594 756"
+*ImageableArea Letter.Banner: "18 0 594 792"
+*ImageableArea Letter.Fullbleed: "0 0 612 792"
+*ImageableArea A4: "18 36 577 806"
+*ImageableArea Env10: "18 36 279 648"
+
+*DefaultPaperDimension: Letter
+*PaperDimension Letter: "612 792"
+*PaperDimension Letter.Banner: "612 792"
+*PaperDimension Letter.Fullbleed: "612 792"
+*PaperDimension A4: "595 842"
+*PaperDimension Env10: "297 684"
+
+*DefaultFont: Courier
+*Font AvantGarde-Book: Standard "(001.006S)" Standard ROM
+*Font AvantGarde-BookOblique: Standard "(001.006S)" Standard ROM
+*Font AvantGarde-Demi: Standard "(001.007S)" Standard ROM
+*Font AvantGarde-DemiOblique: Standard "(001.007S)" Standard ROM
+*Font Bookman-Demi: Standard "(001.004S)" Standard ROM
+*Font Bookman-DemiItalic: Standard "(001.004S)" Standard ROM
+*Font Bookman-Light: Standard "(001.004S)" Standard ROM
+*Font Bookman-LightItalic: Standard "(001.004S)" Standard ROM
+*Font Courier: Standard "(002.004S)" Standard ROM
+*Font Courier-Bold: Standard "(002.004S)" Standard ROM
+*Font Courier-BoldOblique: Standard "(002.004S)" Standard ROM
+*Font Courier-Oblique: Standard "(002.004S)" Standard ROM
+*Font Helvetica: Standard "(001.006S)" Standard ROM
+*Font Helvetica-Bold: Standard "(001.007S)" Standard ROM
+*Font Helvetica-BoldOblique: Standard "(001.007S)" Standard ROM
+*Font Helvetica-Narrow: Standard "(001.006S)" Standard ROM
+*Font Helvetica-Narrow-Bold: Standard "(001.007S)" Standard ROM
+*Font Helvetica-Narrow-BoldOblique: Standard "(001.007S)" Standard ROM
+*Font Helvetica-Narrow-Oblique: Standard "(001.006S)" Standard ROM
+*Font Helvetica-Oblique: Standard "(001.006S)" Standard ROM
+*Font NewCenturySchlbk-Bold: Standard "(001.009S)" Standard ROM
+*Font NewCenturySchlbk-BoldItalic: Standard "(001.007S)" Standard ROM
+*Font NewCenturySchlbk-Italic: Standard "(001.006S)" Standard ROM
+*Font NewCenturySchlbk-Roman: Standard "(001.007S)" Standard ROM
+*Font Palatino-Bold: Standard "(001.005S)" Standard ROM
+*Font Palatino-BoldItalic: Standard "(001.005S)" Standard ROM
+*Font Palatino-Italic: Standard "(001.005S)" Standard ROM
+*Font Palatino-Roman: Standard "(001.005S)" Standard ROM
+*Font Symbol: Special "(001.007S)" Special ROM
+*Font Times-Bold: Standard "(001.007S)" Standard ROM
+*Font Times-BoldItalic: Standard "(001.009S)" Standard ROM
+*Font Times-Italic: Standard "(001.007S)" Standard ROM
+*Font Times-Roman: Standard "(001.007S)" Standard ROM
+*Font ZapfChancery-MediumItalic: Standard "(001.007S)" Standard ROM
+*Font ZapfDingbats: Special "(001.004S)" Standard ROM
+*%
+*% End of "$Id: testppdx.ppd 10459 2012-05-09 22:34:27Z mike $".
+*%
+*EXData0000: "eNqlVm1v2zYQ/hz/ipvWznLgl6T7siXrgCJ2AANBEyQpNmAtAlqiLG4SKZBU7LTIf9/dUW9Og32ZAFsieffcc88dKS2OR3AM0Zt1+ibCJxoA3EvnobJma0UJmbFwc7OEVHgBUicmVXoLci/KqpCAQznvHC9MWSmc3Smfn3WzdG2TBGYGPCJXVbqH2fIBQR+Wq5vb1cWH+9XyfRTBbNs"
+*EXData0001: "GcwTaG6zIqkrh7evgzDVk1Xb3MO7k9N3sHmCDxWRWeuk53KfSxf4paC087ZOvDLaTcF54WUptcdnoVO0KavaS9um7EBYCT6XAQhnK2n9E5hsEIc9yQ6XvUw8RkEelzKVVhQI2TAMEIXYzQGWClmoTU002L1GgmwVIpraF0ozXYoOGUkZXa0vVh/vVnO/91FA2+UqycHlpi5SyMWjhI0"
+*EXData0002: "lBq9kqKmbEl9BFCOETDwOuuHoFxAaQZQKueooljmVJRiK1NUSHL+UKhEaiQpPES599XZYrHb7eZUkLmx20U0lLsPAK7e/I2agDcME1S7vpst5aMsUM0U7kzmd5S03CeyIkVaqAujPdWm759SKB1PYAa3UqShDzNrShDcLdycHJgk3VnlWUnQcgdJXut/HCEvRqMFw62DSricSOeEfYI"
+*EXData0003: "HFGldfN5Y/djIyT85nyqzDz//WDKolgHcxE3ah6N2hDjQHj8vxkr7Y/oWhzDNYKt9spz89aOljnKo1HpZPRtBMDGzep7ODlntxcuAJfrq9XR0XFWnQfcS6KBZbJElC2SXNijo6Spwl+/nP7685cp27aVoY3A9NEesSi9Bm3ZZUopMpxTX+WDZzx6nPZRaRggCIFG5z1Iuwh0DDxQNAQ"
+*EXData0004: "OcbnJtJ9qyPpNAISHpW/rmTYOrRC4m6l53FfAuW50OzH4IBq4Y1ciVYcdUcQ/kWTc7Rib7baU0GJYIyDKUSrP2kQTeGnNgd0eEmHNoSpbSL7orPch1SyCkNkuDn0gEKC0JENLFQGcVZN8InKjYVqJCU3wovbmk3hdMoCmqybo+2Ds+h/zs5ZUhgn427c1btF/YKw488nY1p+xp8snDw"
+*EXData0005: "CM3WJ0OzASUA7kH27eSgtwNteZJqmDklRnN9ajTTYf3wHjpxeTXYkGK4F30W4zaV1lI1bm+vb8+4+Llw8LagMxm1nIZt155O3fz8s46mDVh7xYXR20kbcNqMWzKNWgDdRjsNM8/8TyIxeTwmkrIaVITze0m/9i4ekqbO6JmSVNqE/nWilMwWQrL/waMTMCwdxqT5+NVOQ4LUa7tNNJk"
+*EXData0006: "kOQfP11dTRqvb51GGZ9WXC3usl6nrpNe667v072jN8wgNn9mpMPj49V0n5t7043hwrezNTaOPmmxCacZ5QbjIf44mhwIhDsmpDFpmxSabopW7TdO1yftNxA2LZP6rifCSbL/g8Th06E/GPoWOLS30tdWQ3yKw+fu1bHCDsDTNXyPhbfAvwxF0gE="
+*EXData0007: ""
diff --git a/filter/Dependencies b/filter/Dependencies
index 9b49d856..159135b8 100644
--- a/filter/Dependencies
+++ b/filter/Dependencies
@@ -1,531 +1,61 @@
-# DO NOT DELETE
-
-image-bmp.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-bmp.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-bmp.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-bmp.o: ../cups/debug-private.h ../cups/versioning.h
-image-bmp.o: ../cups/string-private.h ../config.h
-image-colorspace.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-colorspace.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-colorspace.o: ../cups/http.h ../cups/array.h ../cups/language.h
-image-colorspace.o: ../cups/ppd.h ../cups/cups.h ../cups/debug-private.h
-image-colorspace.o: ../cups/versioning.h ../cups/string-private.h ../config.h
-image-gif.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-gif.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-gif.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-gif.o: ../cups/debug-private.h ../cups/versioning.h
-image-gif.o: ../cups/string-private.h ../config.h
-image-jpeg.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-jpeg.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-jpeg.o: ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-image-jpeg.o: ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-image-jpeg.o: ../cups/string-private.h ../config.h
-image-photocd.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-photocd.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-photocd.o: ../cups/http.h ../cups/array.h ../cups/language.h
-image-photocd.o: ../cups/ppd.h ../cups/cups.h ../cups/debug-private.h
-image-photocd.o: ../cups/versioning.h ../cups/string-private.h ../config.h
-image-pix.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-pix.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-pix.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-pix.o: ../cups/debug-private.h ../cups/versioning.h
-image-pix.o: ../cups/string-private.h ../config.h
-image-png.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-png.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-png.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-png.o: ../cups/debug-private.h ../cups/versioning.h
-image-png.o: ../cups/string-private.h ../config.h
-image-pnm.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-pnm.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-pnm.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-pnm.o: ../cups/debug-private.h ../cups/versioning.h
-image-pnm.o: ../cups/string-private.h ../config.h
-image-sgi.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-sgi.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-sgi.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-sgi.o: ../cups/debug-private.h ../cups/versioning.h
-image-sgi.o: ../cups/string-private.h ../config.h image-sgi.h
-image-sgilib.o: image-sgi.h
-image-sun.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-sun.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-sun.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-sun.o: ../cups/debug-private.h ../cups/versioning.h
-image-sun.o: ../cups/string-private.h ../config.h
-image-tiff.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-tiff.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-tiff.o: ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-image-tiff.o: ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-image-tiff.o: ../cups/string-private.h ../config.h
-image-zoom.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-zoom.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-zoom.o: ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-image-zoom.o: ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-image-zoom.o: ../cups/string-private.h ../config.h
-image.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-image.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image.o: ../cups/debug-private.h ../cups/versioning.h
-image.o: ../cups/string-private.h ../config.h
-error.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-error.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-error.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-error.o: ../cups/debug-private.h ../cups/versioning.h
-error.o: ../cups/string-private.h ../config.h
-interpret.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-interpret.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-interpret.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-interpret.o: ../cups/debug-private.h ../cups/versioning.h
-interpret.o: ../cups/string-private.h ../config.h
-raster.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-raster.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-raster.o: ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-raster.o: ../cups/debug-private.h ../cups/versioning.h
-raster.o: ../cups/string-private.h ../config.h
-bannertops.o: pstext.h common.h ../cups/string-private.h ../config.h
-bannertops.o: ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-bannertops.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-bannertops.o: ../cups/array.h ../cups/language.h ../cups/transcode.h image.h
-bannertops.o: ../cups/raster.h ../cups/ppd.h ../cups/language-private.h
-commandtops.o: ../cups/cups-private.h ../cups/cups.h ../cups/string-private.h
-commandtops.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-commandtops.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-commandtops.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-commandtops.o: ../cups/http.h ../cups/array.h ../cups/language.h
-commandtops.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-commandtops.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-commandtops.o: ../cups/language-private.h ../cups/transcode.h
-commandtops.o: ../cups/thread-private.h ../cups/sidechannel.h
-gziptoany.o: ../cups/cups-private.h ../cups/cups.h ../cups/string-private.h
-gziptoany.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-gziptoany.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-gziptoany.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-gziptoany.o: ../cups/array.h ../cups/language.h ../cups/pwg-private.h
-gziptoany.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-gziptoany.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-gziptoany.o: ../cups/transcode.h ../cups/thread-private.h
-imagetops.o: common.h ../cups/string-private.h ../config.h ../cups/cups.h
-imagetops.o: ../cups/ppd.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-imagetops.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-imagetops.o: image.h ../cups/raster.h ../cups/ppd.h
-imagetops.o: ../cups/language-private.h ../cups/transcode.h
-imagetoraster.o: common.h ../cups/string-private.h ../config.h ../cups/cups.h
-imagetoraster.o: ../cups/ppd.h ../cups/cups.h ../cups/file.h
-imagetoraster.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-imagetoraster.o: ../cups/array.h ../cups/language.h image-private.h image.h
-imagetoraster.o: ../cups/raster.h ../cups/ppd.h ../cups/debug-private.h
-imagetoraster.o: ../cups/versioning.h ../cups/language-private.h
-imagetoraster.o: ../cups/transcode.h
-common.o: common.h ../cups/string-private.h ../config.h ../cups/cups.h
-common.o: ../cups/ppd.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-common.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-pdftops.o: ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-pdftops.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-pdftops.o: ../cups/language.h ../cups/string-private.h ../config.h
-pdftops.o: ../cups/language-private.h ../cups/transcode.h
-pstext.o: pstext.h common.h ../cups/string-private.h ../config.h
-pstext.o: ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-pstext.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-pstext.o: ../cups/language.h ../cups/transcode.h ../cups/language-private.h
-pstops.o: common.h ../cups/string-private.h ../config.h ../cups/cups.h
-pstops.o: ../cups/ppd.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-pstops.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-pstops.o: ../cups/file.h ../cups/array.h ../cups/language-private.h
-pstops.o: ../cups/transcode.h
-rasterbench.o: ../config.h ../cups/raster.h ../cups/cups.h ../cups/file.h
-rasterbench.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rasterbench.o: ../cups/array.h ../cups/language.h ../cups/ppd.h
-rastertoepson.o: ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-rastertoepson.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rastertoepson.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-rastertoepson.o: ../config.h ../cups/language-private.h ../cups/transcode.h
-rastertoepson.o: ../cups/raster.h ../cups/ppd.h
-rastertohp.o: ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-rastertohp.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rastertohp.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-rastertohp.o: ../config.h ../cups/language-private.h ../cups/transcode.h
-rastertohp.o: ../cups/raster.h ../cups/ppd.h
-rastertolabel.o: ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-rastertolabel.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rastertolabel.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-rastertolabel.o: ../config.h ../cups/language-private.h ../cups/transcode.h
-rastertolabel.o: ../cups/raster.h ../cups/ppd.h
-rastertopwg.o: ../cups/cups-private.h ../cups/cups.h ../cups/string-private.h
-rastertopwg.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-rastertopwg.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-rastertopwg.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-rastertopwg.o: ../cups/http.h ../cups/array.h ../cups/language.h
-rastertopwg.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-rastertopwg.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-rastertopwg.o: ../cups/language-private.h ../cups/transcode.h
-rastertopwg.o: ../cups/thread-private.h ../cups/raster.h ../cups/ppd.h
-testimage.o: image.h ../cups/raster.h ../cups/cups.h ../cups/file.h
-testimage.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-testimage.o: ../cups/array.h ../cups/language.h ../cups/ppd.h
-testraster.o: image-private.h image.h ../cups/raster.h ../cups/cups.h
-testraster.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-testraster.o: ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-testraster.o: ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-testraster.o: ../cups/string-private.h ../config.h
-textcommon.o: textcommon.h common.h ../cups/string-private.h ../config.h
-textcommon.o: ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-textcommon.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-textcommon.o: ../cups/array.h ../cups/language.h ../cups/language-private.h
-textcommon.o: ../cups/transcode.h
-texttops.o: textcommon.h common.h ../cups/string-private.h ../config.h
-texttops.o: ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-texttops.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-texttops.o: ../cups/language.h ../cups/language-private.h ../cups/transcode.h
-# DO NOT DELETE
-
-image-bmp.32.o: image-bmp.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-bmp.32.o: image-bmp.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-bmp.32.o: image-bmp.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-bmp.32.o: image-bmp.c ../cups/debug-private.h ../cups/versioning.h
-image-bmp.32.o: image-bmp.c ../cups/string-private.h ../config.h
-image-colorspace.32.o: image-colorspace.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-colorspace.32.o: image-colorspace.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-colorspace.32.o: image-colorspace.c ../cups/http.h ../cups/array.h ../cups/language.h
-image-colorspace.32.o: image-colorspace.c ../cups/ppd.h ../cups/cups.h ../cups/debug-private.h
-image-colorspace.32.o: image-colorspace.c ../cups/versioning.h ../cups/string-private.h ../config.h
-image-gif.32.o: image-gif.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-gif.32.o: image-gif.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-gif.32.o: image-gif.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-gif.32.o: image-gif.c ../cups/debug-private.h ../cups/versioning.h
-image-gif.32.o: image-gif.c ../cups/string-private.h ../config.h
-image-jpeg.32.o: image-jpeg.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-jpeg.32.o: image-jpeg.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-jpeg.32.o: image-jpeg.c ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-image-jpeg.32.o: image-jpeg.c ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-image-jpeg.32.o: image-jpeg.c ../cups/string-private.h ../config.h
-image-photocd.32.o: image-photocd.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-photocd.32.o: image-photocd.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-photocd.32.o: image-photocd.c ../cups/http.h ../cups/array.h ../cups/language.h
-image-photocd.32.o: image-photocd.c ../cups/ppd.h ../cups/cups.h ../cups/debug-private.h
-image-photocd.32.o: image-photocd.c ../cups/versioning.h ../cups/string-private.h ../config.h
-image-pix.32.o: image-pix.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-pix.32.o: image-pix.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-pix.32.o: image-pix.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-pix.32.o: image-pix.c ../cups/debug-private.h ../cups/versioning.h
-image-pix.32.o: image-pix.c ../cups/string-private.h ../config.h
-image-png.32.o: image-png.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-png.32.o: image-png.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-png.32.o: image-png.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-png.32.o: image-png.c ../cups/debug-private.h ../cups/versioning.h
-image-png.32.o: image-png.c ../cups/string-private.h ../config.h
-image-pnm.32.o: image-pnm.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-pnm.32.o: image-pnm.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-pnm.32.o: image-pnm.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-pnm.32.o: image-pnm.c ../cups/debug-private.h ../cups/versioning.h
-image-pnm.32.o: image-pnm.c ../cups/string-private.h ../config.h
-image-sgi.32.o: image-sgi.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-sgi.32.o: image-sgi.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-sgi.32.o: image-sgi.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-sgi.32.o: image-sgi.c ../cups/debug-private.h ../cups/versioning.h
-image-sgi.32.o: image-sgi.c ../cups/string-private.h ../config.h image-sgi.h
-image-sgilib.32.o: image-sgilib.c image-sgi.h
-image-sun.32.o: image-sun.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-sun.32.o: image-sun.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-sun.32.o: image-sun.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-sun.32.o: image-sun.c ../cups/debug-private.h ../cups/versioning.h
-image-sun.32.o: image-sun.c ../cups/string-private.h ../config.h
-image-tiff.32.o: image-tiff.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-tiff.32.o: image-tiff.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-tiff.32.o: image-tiff.c ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-image-tiff.32.o: image-tiff.c ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-image-tiff.32.o: image-tiff.c ../cups/string-private.h ../config.h
-image-zoom.32.o: image-zoom.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-zoom.32.o: image-zoom.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-zoom.32.o: image-zoom.c ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-image-zoom.32.o: image-zoom.c ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-image-zoom.32.o: image-zoom.c ../cups/string-private.h ../config.h
-image.32.o: image.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image.32.o: image.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image.32.o: image.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image.32.o: image.c ../cups/debug-private.h ../cups/versioning.h
-image.32.o: image.c ../cups/string-private.h ../config.h
-error.32.o: error.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-error.32.o: error.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-error.32.o: error.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-error.32.o: error.c ../cups/debug-private.h ../cups/versioning.h
-error.32.o: error.c ../cups/string-private.h ../config.h
-interpret.32.o: interpret.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-interpret.32.o: interpret.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-interpret.32.o: interpret.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-interpret.32.o: interpret.c ../cups/debug-private.h ../cups/versioning.h
-interpret.32.o: interpret.c ../cups/string-private.h ../config.h
-raster.32.o: raster.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-raster.32.o: raster.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-raster.32.o: raster.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-raster.32.o: raster.c ../cups/debug-private.h ../cups/versioning.h
-raster.32.o: raster.c ../cups/string-private.h ../config.h
-bannertops.32.o: bannertops.c pstext.h common.h ../cups/string-private.h ../config.h
-bannertops.32.o: bannertops.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-bannertops.32.o: bannertops.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-bannertops.32.o: bannertops.c ../cups/array.h ../cups/language.h ../cups/transcode.h image.h
-bannertops.32.o: bannertops.c ../cups/raster.h ../cups/ppd.h ../cups/language-private.h
-commandtops.32.o: commandtops.c ../cups/cups-private.h ../cups/cups.h ../cups/string-private.h
-commandtops.32.o: commandtops.c ../config.h ../cups/debug-private.h ../cups/versioning.h
-commandtops.32.o: commandtops.c ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-commandtops.32.o: commandtops.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-commandtops.32.o: commandtops.c ../cups/http.h ../cups/array.h ../cups/language.h
-commandtops.32.o: commandtops.c ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-commandtops.32.o: commandtops.c ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-commandtops.32.o: commandtops.c ../cups/language-private.h ../cups/transcode.h
-commandtops.32.o: commandtops.c ../cups/thread-private.h ../cups/sidechannel.h
-gziptoany.32.o: gziptoany.c ../cups/cups-private.h ../cups/cups.h ../cups/string-private.h
-gziptoany.32.o: gziptoany.c ../config.h ../cups/debug-private.h ../cups/versioning.h
-gziptoany.32.o: gziptoany.c ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-gziptoany.32.o: gziptoany.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-gziptoany.32.o: gziptoany.c ../cups/array.h ../cups/language.h ../cups/pwg-private.h
-gziptoany.32.o: gziptoany.c ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-gziptoany.32.o: gziptoany.c ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-gziptoany.32.o: gziptoany.c ../cups/transcode.h ../cups/thread-private.h
-imagetops.32.o: imagetops.c common.h ../cups/string-private.h ../config.h ../cups/cups.h
-imagetops.32.o: imagetops.c ../cups/ppd.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-imagetops.32.o: imagetops.c ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-imagetops.32.o: imagetops.c image.h ../cups/raster.h ../cups/ppd.h
-imagetops.32.o: imagetops.c ../cups/language-private.h ../cups/transcode.h
-imagetoraster.32.o: imagetoraster.c common.h ../cups/string-private.h ../config.h ../cups/cups.h
-imagetoraster.32.o: imagetoraster.c ../cups/ppd.h ../cups/cups.h ../cups/file.h
-imagetoraster.32.o: imagetoraster.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-imagetoraster.32.o: imagetoraster.c ../cups/array.h ../cups/language.h image-private.h image.h
-imagetoraster.32.o: imagetoraster.c ../cups/raster.h ../cups/ppd.h ../cups/debug-private.h
-imagetoraster.32.o: imagetoraster.c ../cups/versioning.h ../cups/language-private.h
-imagetoraster.32.o: imagetoraster.c ../cups/transcode.h
-common.32.o: common.c common.h ../cups/string-private.h ../config.h ../cups/cups.h
-common.32.o: common.c ../cups/ppd.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-common.32.o: common.c ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-pdftops.32.o: pdftops.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-pdftops.32.o: pdftops.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-pdftops.32.o: pdftops.c ../cups/language.h ../cups/string-private.h ../config.h
-pdftops.32.o: pdftops.c ../cups/language-private.h ../cups/transcode.h
-pstext.32.o: pstext.c pstext.h common.h ../cups/string-private.h ../config.h
-pstext.32.o: pstext.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-pstext.32.o: pstext.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-pstext.32.o: pstext.c ../cups/language.h ../cups/transcode.h ../cups/language-private.h
-pstops.32.o: pstops.c common.h ../cups/string-private.h ../config.h ../cups/cups.h
-pstops.32.o: pstops.c ../cups/ppd.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-pstops.32.o: pstops.c ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-pstops.32.o: pstops.c ../cups/file.h ../cups/array.h ../cups/language-private.h
-pstops.32.o: pstops.c ../cups/transcode.h
-rasterbench.32.o: rasterbench.c ../config.h ../cups/raster.h ../cups/cups.h ../cups/file.h
-rasterbench.32.o: rasterbench.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rasterbench.32.o: rasterbench.c ../cups/array.h ../cups/language.h ../cups/ppd.h
-rastertoepson.32.o: rastertoepson.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-rastertoepson.32.o: rastertoepson.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rastertoepson.32.o: rastertoepson.c ../cups/array.h ../cups/language.h ../cups/string-private.h
-rastertoepson.32.o: rastertoepson.c ../config.h ../cups/language-private.h ../cups/transcode.h
-rastertoepson.32.o: rastertoepson.c ../cups/raster.h ../cups/ppd.h
-rastertohp.32.o: rastertohp.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-rastertohp.32.o: rastertohp.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rastertohp.32.o: rastertohp.c ../cups/array.h ../cups/language.h ../cups/string-private.h
-rastertohp.32.o: rastertohp.c ../config.h ../cups/language-private.h ../cups/transcode.h
-rastertohp.32.o: rastertohp.c ../cups/raster.h ../cups/ppd.h
-rastertolabel.32.o: rastertolabel.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-rastertolabel.32.o: rastertolabel.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rastertolabel.32.o: rastertolabel.c ../cups/array.h ../cups/language.h ../cups/string-private.h
-rastertolabel.32.o: rastertolabel.c ../config.h ../cups/language-private.h ../cups/transcode.h
-rastertolabel.32.o: rastertolabel.c ../cups/raster.h ../cups/ppd.h
-rastertopwg.32.o: rastertopwg.c ../cups/cups-private.h ../cups/cups.h ../cups/string-private.h
-rastertopwg.32.o: rastertopwg.c ../config.h ../cups/debug-private.h ../cups/versioning.h
-rastertopwg.32.o: rastertopwg.c ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-rastertopwg.32.o: rastertopwg.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-rastertopwg.32.o: rastertopwg.c ../cups/http.h ../cups/array.h ../cups/language.h
-rastertopwg.32.o: rastertopwg.c ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-rastertopwg.32.o: rastertopwg.c ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-rastertopwg.32.o: rastertopwg.c ../cups/language-private.h ../cups/transcode.h
-rastertopwg.32.o: rastertopwg.c ../cups/thread-private.h ../cups/raster.h ../cups/ppd.h
-testimage.32.o: testimage.c image.h ../cups/raster.h ../cups/cups.h ../cups/file.h
-testimage.32.o: testimage.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-testimage.32.o: testimage.c ../cups/array.h ../cups/language.h ../cups/ppd.h
-testraster.32.o: testraster.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-testraster.32.o: testraster.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-testraster.32.o: testraster.c ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-testraster.32.o: testraster.c ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-testraster.32.o: testraster.c ../cups/string-private.h ../config.h
-textcommon.32.o: textcommon.c textcommon.h common.h ../cups/string-private.h ../config.h
-textcommon.32.o: textcommon.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-textcommon.32.o: textcommon.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-textcommon.32.o: textcommon.c ../cups/array.h ../cups/language.h ../cups/language-private.h
-textcommon.32.o: textcommon.c ../cups/transcode.h
-texttops.32.o: texttops.c textcommon.h common.h ../cups/string-private.h ../config.h
-texttops.32.o: texttops.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-texttops.32.o: texttops.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-texttops.32.o: texttops.c ../cups/language.h ../cups/language-private.h ../cups/transcode.h
-# DO NOT DELETE
-
-image-bmp.64.o: image-bmp.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-bmp.64.o: image-bmp.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-bmp.64.o: image-bmp.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-bmp.64.o: image-bmp.c ../cups/debug-private.h ../cups/versioning.h
-image-bmp.64.o: image-bmp.c ../cups/string-private.h ../config.h
-image-colorspace.64.o: image-colorspace.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-colorspace.64.o: image-colorspace.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-colorspace.64.o: image-colorspace.c ../cups/http.h ../cups/array.h ../cups/language.h
-image-colorspace.64.o: image-colorspace.c ../cups/ppd.h ../cups/cups.h ../cups/debug-private.h
-image-colorspace.64.o: image-colorspace.c ../cups/versioning.h ../cups/string-private.h ../config.h
-image-gif.64.o: image-gif.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-gif.64.o: image-gif.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-gif.64.o: image-gif.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-gif.64.o: image-gif.c ../cups/debug-private.h ../cups/versioning.h
-image-gif.64.o: image-gif.c ../cups/string-private.h ../config.h
-image-jpeg.64.o: image-jpeg.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-jpeg.64.o: image-jpeg.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-jpeg.64.o: image-jpeg.c ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-image-jpeg.64.o: image-jpeg.c ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-image-jpeg.64.o: image-jpeg.c ../cups/string-private.h ../config.h
-image-photocd.64.o: image-photocd.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-photocd.64.o: image-photocd.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-photocd.64.o: image-photocd.c ../cups/http.h ../cups/array.h ../cups/language.h
-image-photocd.64.o: image-photocd.c ../cups/ppd.h ../cups/cups.h ../cups/debug-private.h
-image-photocd.64.o: image-photocd.c ../cups/versioning.h ../cups/string-private.h ../config.h
-image-pix.64.o: image-pix.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-pix.64.o: image-pix.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-pix.64.o: image-pix.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-pix.64.o: image-pix.c ../cups/debug-private.h ../cups/versioning.h
-image-pix.64.o: image-pix.c ../cups/string-private.h ../config.h
-image-png.64.o: image-png.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-png.64.o: image-png.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-png.64.o: image-png.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-png.64.o: image-png.c ../cups/debug-private.h ../cups/versioning.h
-image-png.64.o: image-png.c ../cups/string-private.h ../config.h
-image-pnm.64.o: image-pnm.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-pnm.64.o: image-pnm.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-pnm.64.o: image-pnm.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-pnm.64.o: image-pnm.c ../cups/debug-private.h ../cups/versioning.h
-image-pnm.64.o: image-pnm.c ../cups/string-private.h ../config.h
-image-sgi.64.o: image-sgi.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-sgi.64.o: image-sgi.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-sgi.64.o: image-sgi.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-sgi.64.o: image-sgi.c ../cups/debug-private.h ../cups/versioning.h
-image-sgi.64.o: image-sgi.c ../cups/string-private.h ../config.h image-sgi.h
-image-sgilib.64.o: image-sgilib.c image-sgi.h
-image-sun.64.o: image-sun.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-sun.64.o: image-sun.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image-sun.64.o: image-sun.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image-sun.64.o: image-sun.c ../cups/debug-private.h ../cups/versioning.h
-image-sun.64.o: image-sun.c ../cups/string-private.h ../config.h
-image-tiff.64.o: image-tiff.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-tiff.64.o: image-tiff.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-tiff.64.o: image-tiff.c ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-image-tiff.64.o: image-tiff.c ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-image-tiff.64.o: image-tiff.c ../cups/string-private.h ../config.h
-image-zoom.64.o: image-zoom.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image-zoom.64.o: image-zoom.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-image-zoom.64.o: image-zoom.c ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-image-zoom.64.o: image-zoom.c ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-image-zoom.64.o: image-zoom.c ../cups/string-private.h ../config.h
-image.64.o: image.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-image.64.o: image.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-image.64.o: image.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-image.64.o: image.c ../cups/debug-private.h ../cups/versioning.h
-image.64.o: image.c ../cups/string-private.h ../config.h
-error.64.o: error.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-error.64.o: error.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-error.64.o: error.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-error.64.o: error.c ../cups/debug-private.h ../cups/versioning.h
-error.64.o: error.c ../cups/string-private.h ../config.h
-interpret.64.o: interpret.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-interpret.64.o: interpret.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-interpret.64.o: interpret.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-interpret.64.o: interpret.c ../cups/debug-private.h ../cups/versioning.h
-interpret.64.o: interpret.c ../cups/string-private.h ../config.h
-raster.64.o: raster.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-raster.64.o: raster.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-raster.64.o: raster.c ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/cups.h
-raster.64.o: raster.c ../cups/debug-private.h ../cups/versioning.h
-raster.64.o: raster.c ../cups/string-private.h ../config.h
-bannertops.64.o: bannertops.c pstext.h common.h ../cups/string-private.h ../config.h
-bannertops.64.o: bannertops.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-bannertops.64.o: bannertops.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-bannertops.64.o: bannertops.c ../cups/array.h ../cups/language.h ../cups/transcode.h image.h
-bannertops.64.o: bannertops.c ../cups/raster.h ../cups/ppd.h ../cups/language-private.h
-commandtops.64.o: commandtops.c ../cups/cups-private.h ../cups/cups.h ../cups/string-private.h
-commandtops.64.o: commandtops.c ../config.h ../cups/debug-private.h ../cups/versioning.h
-commandtops.64.o: commandtops.c ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-commandtops.64.o: commandtops.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-commandtops.64.o: commandtops.c ../cups/http.h ../cups/array.h ../cups/language.h
-commandtops.64.o: commandtops.c ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-commandtops.64.o: commandtops.c ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-commandtops.64.o: commandtops.c ../cups/language-private.h ../cups/transcode.h
-commandtops.64.o: commandtops.c ../cups/thread-private.h ../cups/sidechannel.h
-gziptoany.64.o: gziptoany.c ../cups/cups-private.h ../cups/cups.h ../cups/string-private.h
-gziptoany.64.o: gziptoany.c ../config.h ../cups/debug-private.h ../cups/versioning.h
-gziptoany.64.o: gziptoany.c ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-gziptoany.64.o: gziptoany.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-gziptoany.64.o: gziptoany.c ../cups/array.h ../cups/language.h ../cups/pwg-private.h
-gziptoany.64.o: gziptoany.c ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-gziptoany.64.o: gziptoany.c ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-gziptoany.64.o: gziptoany.c ../cups/transcode.h ../cups/thread-private.h
-imagetops.64.o: imagetops.c common.h ../cups/string-private.h ../config.h ../cups/cups.h
-imagetops.64.o: imagetops.c ../cups/ppd.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-imagetops.64.o: imagetops.c ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-imagetops.64.o: imagetops.c image.h ../cups/raster.h ../cups/ppd.h
-imagetops.64.o: imagetops.c ../cups/language-private.h ../cups/transcode.h
-imagetoraster.64.o: imagetoraster.c common.h ../cups/string-private.h ../config.h ../cups/cups.h
-imagetoraster.64.o: imagetoraster.c ../cups/ppd.h ../cups/cups.h ../cups/file.h
-imagetoraster.64.o: imagetoraster.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-imagetoraster.64.o: imagetoraster.c ../cups/array.h ../cups/language.h image-private.h image.h
-imagetoraster.64.o: imagetoraster.c ../cups/raster.h ../cups/ppd.h ../cups/debug-private.h
-imagetoraster.64.o: imagetoraster.c ../cups/versioning.h ../cups/language-private.h
-imagetoraster.64.o: imagetoraster.c ../cups/transcode.h
-common.64.o: common.c common.h ../cups/string-private.h ../config.h ../cups/cups.h
-common.64.o: common.c ../cups/ppd.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-common.64.o: common.c ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-pdftops.64.o: pdftops.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-pdftops.64.o: pdftops.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-pdftops.64.o: pdftops.c ../cups/language.h ../cups/string-private.h ../config.h
-pdftops.64.o: pdftops.c ../cups/language-private.h ../cups/transcode.h
-pstext.64.o: pstext.c pstext.h common.h ../cups/string-private.h ../config.h
-pstext.64.o: pstext.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-pstext.64.o: pstext.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-pstext.64.o: pstext.c ../cups/language.h ../cups/transcode.h ../cups/language-private.h
-pstops.64.o: pstops.c common.h ../cups/string-private.h ../config.h ../cups/cups.h
-pstops.64.o: pstops.c ../cups/ppd.h ../cups/cups.h ../cups/file.h ../cups/versioning.h
-pstops.64.o: pstops.c ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-pstops.64.o: pstops.c ../cups/file.h ../cups/array.h ../cups/language-private.h
-pstops.64.o: pstops.c ../cups/transcode.h
-rasterbench.64.o: rasterbench.c ../config.h ../cups/raster.h ../cups/cups.h ../cups/file.h
-rasterbench.64.o: rasterbench.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rasterbench.64.o: rasterbench.c ../cups/array.h ../cups/language.h ../cups/ppd.h
-rastertoepson.64.o: rastertoepson.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-rastertoepson.64.o: rastertoepson.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rastertoepson.64.o: rastertoepson.c ../cups/array.h ../cups/language.h ../cups/string-private.h
-rastertoepson.64.o: rastertoepson.c ../config.h ../cups/language-private.h ../cups/transcode.h
-rastertoepson.64.o: rastertoepson.c ../cups/raster.h ../cups/ppd.h
-rastertohp.64.o: rastertohp.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-rastertohp.64.o: rastertohp.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rastertohp.64.o: rastertohp.c ../cups/array.h ../cups/language.h ../cups/string-private.h
-rastertohp.64.o: rastertohp.c ../config.h ../cups/language-private.h ../cups/transcode.h
-rastertohp.64.o: rastertohp.c ../cups/raster.h ../cups/ppd.h
-rastertolabel.64.o: rastertolabel.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-rastertolabel.64.o: rastertolabel.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-rastertolabel.64.o: rastertolabel.c ../cups/array.h ../cups/language.h ../cups/string-private.h
-rastertolabel.64.o: rastertolabel.c ../config.h ../cups/language-private.h ../cups/transcode.h
-rastertolabel.64.o: rastertolabel.c ../cups/raster.h ../cups/ppd.h
-rastertopwg.64.o: rastertopwg.c ../cups/cups-private.h ../cups/cups.h ../cups/string-private.h
-rastertopwg.64.o: rastertopwg.c ../config.h ../cups/debug-private.h ../cups/versioning.h
-rastertopwg.64.o: rastertopwg.c ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-rastertopwg.64.o: rastertopwg.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-rastertopwg.64.o: rastertopwg.c ../cups/http.h ../cups/array.h ../cups/language.h
-rastertopwg.64.o: rastertopwg.c ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-rastertopwg.64.o: rastertopwg.c ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-rastertopwg.64.o: rastertopwg.c ../cups/language-private.h ../cups/transcode.h
-rastertopwg.64.o: rastertopwg.c ../cups/thread-private.h ../cups/raster.h ../cups/ppd.h
-testimage.64.o: testimage.c image.h ../cups/raster.h ../cups/cups.h ../cups/file.h
-testimage.64.o: testimage.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-testimage.64.o: testimage.c ../cups/array.h ../cups/language.h ../cups/ppd.h
-testraster.64.o: testraster.c image-private.h image.h ../cups/raster.h ../cups/cups.h
-testraster.64.o: testraster.c ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-testraster.64.o: testraster.c ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
-testraster.64.o: testraster.c ../cups/cups.h ../cups/debug-private.h ../cups/versioning.h
-testraster.64.o: testraster.c ../cups/string-private.h ../config.h
-textcommon.64.o: textcommon.c textcommon.h common.h ../cups/string-private.h ../config.h
-textcommon.64.o: textcommon.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-textcommon.64.o: textcommon.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-textcommon.64.o: textcommon.c ../cups/array.h ../cups/language.h ../cups/language-private.h
-textcommon.64.o: textcommon.c ../cups/transcode.h
-texttops.64.o: texttops.c textcommon.h common.h ../cups/string-private.h ../config.h
-texttops.64.o: texttops.c ../cups/cups.h ../cups/ppd.h ../cups/cups.h ../cups/file.h
-texttops.64.o: texttops.c ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-texttops.64.o: texttops.c ../cups/language.h ../cups/language-private.h ../cups/transcode.h
+error.o: error.c ../cups/raster-private.h ../cups/raster.h ../cups/cups.h \
+ ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \
+ ../cups/array.h ../cups/language.h ../cups/ppd.h \
+ ../cups/debug-private.h ../cups/string-private.h ../config.h
+interpret.o: interpret.c ../cups/raster-private.h ../cups/raster.h \
+ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h \
+ ../cups/debug-private.h ../cups/string-private.h ../config.h
+raster.o: raster.c ../cups/raster-private.h ../cups/raster.h \
+ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h \
+ ../cups/debug-private.h ../cups/string-private.h ../config.h
+commandtops.o: commandtops.c ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/sidechannel.h
+gziptoany.o: gziptoany.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+common.o: common.c common.h ../cups/string-private.h ../config.h \
+ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h
+pstops.o: pstops.c common.h ../cups/string-private.h ../config.h \
+ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h \
+ ../cups/language-private.h ../cups/transcode.h
+rasterbench.o: rasterbench.c ../config.h ../cups/raster.h ../cups/cups.h \
+ ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \
+ ../cups/array.h ../cups/language.h ../cups/ppd.h
+rastertoepson.o: rastertoepson.c ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h ../cups/ppd.h ../cups/string-private.h ../config.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/raster.h
+rastertohp.o: rastertohp.c ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h ../cups/ppd.h ../cups/string-private.h ../config.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/raster.h
+rastertolabel.o: rastertolabel.c ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h ../cups/ppd.h ../cups/string-private.h ../config.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/raster.h
+rastertopwg.o: rastertopwg.c ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/raster.h
+testraster.o: testraster.c ../cups/raster-private.h ../cups/raster.h \
+ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h \
+ ../cups/debug-private.h ../cups/string-private.h ../config.h
diff --git a/filter/Makefile b/filter/Makefile
index af99f1e3..be588d7b 100644
--- a/filter/Makefile
+++ b/filter/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 9979 2011-09-09 16:34:29Z mike $"
+# "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $"
#
# Filter makefile for CUPS.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2006 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
@@ -19,41 +19,28 @@ include ../Makedefs
FILTERS = \
- $(BANNERTOPS) \
commandtops \
gziptoany \
- $(TEXTTOPS) \
pstops \
- $(IMGFILTERS) \
- $(PDFTOPS) \
rastertoepson \
rastertohp \
rastertolabel \
rastertopwg
LIBTARGETS = \
$(LIBCUPSIMAGE) \
- libcupsimage.a \
- $(LIB32CUPSIMAGE) \
- $(LIB64CUPSIMAGE)
+ libcupsimage.a
UNITTARGETS = \
rasterbench \
- testimage \
testraster
TARGETS = \
$(LIBTARGETS) \
$(FILTERS)
-IMAGEOBJS = image-bmp.o image-colorspace.o image-gif.o image-jpeg.o \
- image-photocd.o image-pix.o image-png.o image-pnm.o \
- image-sgi.o image-sgilib.o image-sun.o image-tiff.o \
- image-zoom.o image.o error.o interpret.o raster.o
-IMAGE32OBJS = $(IMAGEOBJS:.o=.32.o)
-IMAGE64OBJS = $(IMAGEOBJS:.o=.64.o)
+IMAGEOBJS = error.o interpret.o raster.o
OBJS = $(IMAGEOBJS) \
- bannertops.o commandtops.o gziptoany.o imagetops.o \
- imagetoraster.o common.o pdftops.o pstext.o pstops.o \
+ commandtops.o gziptoany.o common.o pstops.o \
rasterbench.o rastertoepson.o rastertohp.o rastertolabel.o \
- rastertopwg.o testimage.o testraster.o textcommon.o texttops.o
+ rastertopwg.o testraster.o
#
@@ -84,7 +71,6 @@ unittests: $(UNITTARGETS)
clean:
$(RM) $(OBJS) $(TARGETS) $(UNITTARGETS)
$(RM) libcupsimage.so libcupsimage.sl libcupsimage.dylib
- $(RM) -r 32bit 64bit
#
@@ -92,13 +78,7 @@ clean:
#
depend:
- touch Dependencies.tmp
- makedepend -Y -I.. -fDependencies.tmp $(OBJS:.o=.c) >/dev/null 2>&1
- $(RM) Dependencies
- cp Dependencies.tmp Dependencies
- sed -E -e '1,$$s/^([^.]+)\.o:/\1\.32.o: \1\.c /' Dependencies.tmp >>Dependencies
- sed -E -e '1,$$s/^([^.]+)\.o:/\1\.64.o: \1\.c /' Dependencies.tmp >>Dependencies
- $(RM) Dependencies.tmp
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
@@ -139,15 +119,13 @@ install-exec:
#
install-headers:
- $(INSTALL_DIR) -m 755 $(INCLUDEDIR)/cups
- $(INSTALL_DATA) image.h $(INCLUDEDIR)/cups
#
# Install libraries...
#
-install-libs: $(INSTALLSTATIC) $(INSTALL32) $(INSTALL64)
+install-libs: $(INSTALLSTATIC)
$(INSTALL_DIR) -m 755 $(LIBDIR)
$(INSTALL_LIB) $(LIBCUPSIMAGE) $(LIBDIR)
-if test $(LIBCUPSIMAGE) = "libcupsimage.so.2" -o $(LIBCUPSIMAGE) = "libcupsimage.sl.2"; then \
@@ -169,22 +147,12 @@ installstatic:
$(RANLIB) $(LIBDIR)/libcupsimage.a
$(CHMOD) 555 $(LIBDIR)/libcupsimage.a
-install32bit:
- $(INSTALL_DIR) -m 755 $(LIB32DIR)
- $(INSTALL_LIB) 32bit/libcupsimage.so.2 $(LIB32DIR)/libcupsimage.so.2
- $(LN) libcupsimage.so.2 $(LIB32DIR)/libcupsimage.so
-
-install64bit:
- $(INSTALL_DIR) -m 755 $(LIB64DIR)
- $(INSTALL_LIB) 64bit/libcupsimage.so.2 $(LIB64DIR)/libcupsimage.so.2
- $(LN) libcupsimage.so.2 $(LIB64DIR)/libcupsimage.so
-
#
# Uninstall all targets...
#
-uninstall: $(UNINSTALL32) $(UNINSTALL64)
+uninstall:
for file in $(FILTERS); do \
$(RM) $(SERVERBIN)/filter/$$file; \
done
@@ -200,18 +168,6 @@ uninstall: $(UNINSTALL32) $(UNINSTALL64)
$(RM) $(LIBDIR)/libcupsimage.so
$(RM) $(LIBDIR)/libcupsimage.so.2
-$(RMDIR) $(LIBDIR)
- $(RM) $(INCLUDEDIR)/cups/image.h
- -$(RMDIR) $(INCLUDEDIR)/cups
-
-uninstall32bit:
- $(RM) $(LIB32DIR)/libcupsimage.so
- $(RM) $(LIB32DIR)/libcupsimage.so.2
- -$(RMDIR) $(LIB32DIR)
-
-uninstall64bit:
- $(RM) $(LIB64DIR)/libcupsimage.so
- $(RM) $(LIB64DIR)/libcupsimage.so.2
- -$(RMDIR) $(LIB64DIR)
#
@@ -287,16 +243,6 @@ framedhelp:
#
-# bannertops
-#
-
-bannertops: bannertops.o pstext.o common.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
- echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ bannertops.o pstext.o common.o $(LINKCUPSIMAGE) \
- $(IMGLIBS) $(LIBS)
-
-
-#
# commandtops
#
@@ -327,28 +273,6 @@ libcupsimage.so.2 libcupsimage.sl.2: $(IMAGEOBJS)
#
-# 32bit/libcupsimage.so.2
-#
-
-32bit/libcupsimage.so.2: $(IMAGE32OBJS)
- echo Linking 32-bit $@...
- -mkdir 32bit
- $(DSO) $(ARCH32FLAGS) $(DSO32FLAGS) -o $@ $(IMAGE32OBJS) $(DSOLIBS) \
- -L../cups/32bit $(LINKCUPS)
-
-
-#
-# 64bit/libcupsimage.so.2
-#
-
-64bit/libcupsimage.so.2: $(IMAGE64OBJS)
- echo Linking 64-bit $@...
- -mkdir 64bit
- $(DSO) $(ARCH64FLAGS) $(DSO64FLAGS) -o $@ $(IMAGE64OBJS) $(DSOLIBS) \
- -L../cups/64bit $(LINKCUPS)
-
-
-#
# libcupsimage.2.dylib
#
@@ -398,38 +322,6 @@ libcupsimage.a: $(IMAGEOBJS)
#
-# testimage
-#
-
-testimage: testimage.o libcupsimage.a ../Makedefs
- echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ testimage.o libcupsimage.a \
- $(IMGLIBS) $(DSOLIBS) $(LIBS)
-
-
-#
-# imagetops
-#
-
-imagetops: imagetops.o common.o $(LIBCUPSIMAGE) \
- ../cups/$(LIBCUPS)
- echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ imagetops.o common.o $(LINKCUPSIMAGE) \
- $(IMGLIBS) $(LIBS)
-
-
-#
-# imagetoraster
-#
-
-imagetoraster: imagetoraster.o common.o $(LIBCUPSIMAGE) \
- ../cups/$(LIBCUPS)
- echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ imagetoraster.o common.o $(LINKCUPSIMAGE) \
- $(IMGLIBS) $(LIBS)
-
-
-#
# pstops
#
@@ -439,15 +331,6 @@ pstops: pstops.o common.o ../cups/$(LIBCUPS)
#
-# pdftops
-#
-
-pdftops: pdftops.o common.o ../cups/$(LIBCUPS)
- echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ pdftops.o common.o $(LIBS)
-
-
-#
# rastertoepson
#
@@ -506,16 +389,6 @@ rasterbench: rasterbench.o libcupsimage.a
#
-# texttops
-#
-
-texttops: texttops.o textcommon.o common.o \
- ../cups/$(LIBCUPS)
- echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ texttops.o textcommon.o common.o $(LIBS)
-
-
-#
# Dependencies...
#
@@ -523,5 +396,5 @@ include Dependencies
#
-# End of "$Id: Makefile 9979 2011-09-09 16:34:29Z mike $".
+# End of "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $".
#
diff --git a/filter/api-raster.shtml b/filter/api-raster.shtml
index a309022e..fff478dc 100644
--- a/filter/api-raster.shtml
+++ b/filter/api-raster.shtml
@@ -3,7 +3,7 @@
Raster API introduction for CUPS.
- Copyright 2007-2011 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2006 by Easy Software Products, all rights reserved.
These coded instructions, statements, and computer programs are the
@@ -22,7 +22,7 @@ avoid incompatibilities with newer versions of CUPS.</p>
<p>Two kinds of CUPS filters use the CUPS raster API - raster image processor
(RIP) filters such as <code>pstoraster</code> and <code>cgpdftoraster</code>
-(Mac OS X) that produce CUPS raster files and printer driver filters that
+(OS X) that produce CUPS raster files and printer driver filters that
convert CUPS raster files into a format usable by the printer. Printer
driver filters are by far the most common.</p>
@@ -142,7 +142,7 @@ the memory used to read the raster file:</p>
<ul class="code">
- <li><a href="#cupsRasterReadHeader" title="Read a raster page header and store it in a version 1 page header structure.">cupsRasterReadHeader</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li>
+ <li><a href="#cupsRasterReadHeader" title="Read a raster page header and store it in a version 1 page header structure.">cupsRasterReadHeader</a> <span class="info">Deprecated in CUPS 1.2/OS X 10.5</span></li>
<li><a href="#cupsRasterReadHeader2" title="Read a raster page header and store it in a version 2 page header structure.">cupsRasterReadHeader2</a></li>
<li><a href="#cupsRasterReadPixels" title="Read raster pixels.">cupsRasterReadPixels</a></li>
@@ -153,8 +153,8 @@ the memory used to read the raster file:</p>
<ul class="code">
<li><a href="#cupsRasterInterpretPPD" title="Interpret PPD commands to create a page header.">cupsRasterInterpretPPD</a></li>
- <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li>
+ <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a> <span class="info">Deprecated in CUPS 1.2/OS X 10.5</span></li>
<li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a></li>
<li><a href="#cupsRasterWritePixels" title="Write raster pixels.">cupsRasterWritePixels</a></li>
-
+
</ul>
diff --git a/filter/bannertops.c b/filter/bannertops.c
deleted file mode 100644
index c017c5f3..00000000
--- a/filter/bannertops.c
+++ /dev/null
@@ -1,1094 +0,0 @@
-/*
- * "$Id: bannertops.c 9793 2011-05-20 03:49:49Z mike $"
- *
- * Banner to PostScript filter for CUPS.
- *
- * Copyright 2008-2011 by Apple Inc.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * main() - Generate PostScript cover pages.
- * load_banner() - Load the banner file.
- * ps_ascii85() - Print binary data as a series of base-85 numbers.
- * write_banner() - Write a banner page...
- * write_epilogue() - Write the PostScript file epilogue.
- * write_prolog() - Write the PostScript file prolog with options.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "pstext.h"
-#include "image.h"
-#include <cups/language-private.h>
-
-
-/*
- * Constants...
- */
-
-#define SHOW_IMAGEABLE_AREA 1 /* Show imageable area */
-#define SHOW_JOB_BILLING 2 /* Show billing string */
-#define SHOW_JOB_ID 4 /* Show job ID */
-#define SHOW_JOB_NAME 8 /* Show job title */
-#define SHOW_JOB_ORIGINATING_USER_NAME 16 /* Show owner of job */
-#define SHOW_JOB_ORIGINATING_HOST_NAME 32 /* Show submitting system */
-#define SHOW_JOB_UUID 64 /* Show job UUID */
-#define SHOW_OPTIONS 128 /* Show print options */
-#define SHOW_PAPER_NAME 256 /* Show paper size name */
-#define SHOW_PAPER_SIZE 512 /* Show paper dimensions */
-#define SHOW_PRINTER_DRIVER_NAME 1024 /* Show printer driver name */
-#define SHOW_PRINTER_DRIVER_VERSION 2048 /* Show printer driver version */
-#define SHOW_PRINTER_INFO 4096 /* Show printer description */
-#define SHOW_PRINTER_LOCATION 8192 /* Show printer location */
-#define SHOW_PRINTER_MAKE_AND_MODEL 16384 /* Show printer make and model */
-#define SHOW_PRINTER_NAME 32768 /* Show printer queue ID */
-#define SHOW_TIME_AT_CREATION 65536 /* Show date/time when submitted */
-#define SHOW_TIME_AT_PROCESSING 131072 /* Show date/time when printed */
-
-
-/*
- * Structures...
- */
-
-typedef struct banner_file_s /**** Banner file data ****/
-{
- int show; /* What to show */
- char *header, /* Header text */
- *footer; /* Footer text */
- cups_array_t *notices, /* Notices to show */
- *images; /* Images to show */
-} banner_file_t;
-
-
-/*
- * Local functions...
- */
-
-static banner_file_t *load_banner(const char *filename);
-static int write_banner(banner_file_t *banner, ppd_file_t *ppd,
- ps_text_t *fonts, int job_id,
- const char *title, const char *username,
- int num_options, cups_option_t *options);
-static void write_epilogue(int num_pages);
-static ps_text_t *write_prolog(const char *title, const char *user);
-
-
-/*
- * 'main()' - Generate PostScript cover pages.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line args */
- char *argv[]) /* I - Command-line arguments */
-{
- banner_file_t *banner; /* Banner file data */
- int num_options; /* Number of print options */
- cups_option_t *options; /* Print options */
- ppd_file_t *ppd; /* PPD file */
- ps_text_t *fonts; /* Fonts for output */
- int job_id; /* Job ID from command-line */
- const char *title, /* Title from command-line */
- *username; /* Username from command-line */
- int num_pages; /* Number of pages printed */
-
-
- /*
- * Make sure status messages are not buffered...
- */
-
- setbuf(stderr, NULL);
-
- /*
- * Check command-line...
- */
-
- if (argc < 6 || argc > 7)
- {
- _cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options file"),
- argv[0]);
- return (1);
- }
-
- /*
- * Get stuff from command-line...
- */
-
- job_id = atoi(argv[1]);
- username = argv[2];
- title = argv[3];
- options = NULL;
- num_options = cupsParseOptions(argv[5], 0, &options);
- banner = load_banner(argv[6]);
-
- /*
- * Set standard options and get the PPD file for this printer...
- */
-
- ppd = SetCommonOptions(num_options, options, 1);
-
- /*
- * Write a PostScript banner document and return...
- */
-
- fonts = write_prolog(title, username);
- num_pages = write_banner(banner, ppd, fonts, job_id, title, username,
- num_options, options);
-
- write_epilogue(num_pages);
-
- return (0);
-}
-
-
-/*
- * 'load_banner()' - Load the banner file.
- */
-
-static banner_file_t * /* O - Banner file data */
-load_banner(const char *filename) /* I - Filename or NULL for stdin */
-{
- cups_file_t *fp; /* File */
- char line[2048], /* Line buffer */
- *ptr; /* Pointer into line */
- int linenum; /* Current line number */
- banner_file_t *banner; /* Banner file data */
- const char *cups_docroot; /* CUPS_DOCROOT environment variable */
-
-
- fprintf(stderr, "DEBUG: load_banner(filename=\"%s\")\n",
- filename ? filename : "(stdin)");
-
- /*
- * Open the banner file...
- */
-
- if (filename)
- fp = cupsFileOpen(filename, "r");
- else
- fp = cupsFileStdin();
-
- if (!fp)
- {
- _cupsLangPrintError("ERROR", _("Unable to open print file"));
- exit(1);
- }
-
- /*
- * Read the banner file...
- */
-
- if ((cups_docroot = getenv("CUPS_DOCROOT")) == NULL)
- cups_docroot = CUPS_DOCROOT;
-
- banner = calloc(1, sizeof(banner_file_t));
- linenum = 0;
-
- while (cupsFileGets(fp, line, sizeof(line)))
- {
- /*
- * Skip blank and comment lines...
- */
-
- linenum ++;
-
- fprintf(stderr, "DEBUG: %4d %s\n", linenum, line);
-
- if (line[0] == '#' || !line[0])
- continue;
-
- /*
- * Break the line into keyword and value parts...
- */
-
- for (ptr = line; *ptr && !isspace(*ptr & 255); ptr ++);
-
- while (isspace(*ptr & 255))
- *ptr++ = '\0';
-
- if (!*ptr)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Missing value on line %d of banner file."),
- linenum);
- continue;
- }
-
- /*
- * Save keyword values in the appropriate places...
- */
-
- if (!_cups_strcasecmp(line, "Footer"))
- {
- if (banner->footer)
- fprintf(stderr, "DEBUG: Extra \"Footer\" on line %d of banner file\n",
- linenum);
- else
- banner->footer = strdup(ptr);
- }
- else if (!_cups_strcasecmp(line, "Header"))
- {
- if (banner->header)
- fprintf(stderr, "DEBUG: Extra \"Header\" on line %d of banner file\n",
- linenum);
- else
- banner->header = strdup(ptr);
- }
- else if (!_cups_strcasecmp(line, "Image"))
- {
- char imagefile[1024]; /* Image filename */
-
-
- if (ptr[0] == '/')
- strlcpy(imagefile, ptr, sizeof(imagefile));
- else
- snprintf(imagefile, sizeof(imagefile), "%s/%s", cups_docroot, ptr);
-
- if (access(imagefile, R_OK))
- {
- fprintf(stderr, "DEBUG: Image \"%s\" on line %d of banner file: %s\n",
- ptr, linenum, strerror(errno));
- }
- else
- {
- if (!banner->images)
- banner->images = cupsArrayNew(NULL, NULL);
-
- cupsArrayAdd(banner->images, strdup(imagefile));
- }
- }
- else if (!_cups_strcasecmp(line, "Notice"))
- {
- if (!banner->notices)
- banner->notices = cupsArrayNew(NULL, NULL);
-
- cupsArrayAdd(banner->notices, strdup(ptr));
- }
- else if (!_cups_strcasecmp(line, "Show"))
- {
- char *value; /* Current value */
-
-
- for (value = ptr; *value; value = ptr)
- {
- /*
- * Find the end of the current value
- */
-
- while (*ptr && !isspace(*ptr & 255))
- ptr ++;
-
- while (*ptr && isspace(*ptr & 255))
- *ptr++ = '\0';
-
- /*
- * Add the value to the show flags...
- */
- if (!_cups_strcasecmp(value, "imageable-area"))
- banner->show |= SHOW_IMAGEABLE_AREA;
- else if (!_cups_strcasecmp(value, "job-billing"))
- banner->show |= SHOW_JOB_BILLING;
- else if (!_cups_strcasecmp(value, "job-id"))
- banner->show |= SHOW_JOB_ID;
- else if (!_cups_strcasecmp(value, "job-name"))
- banner->show |= SHOW_JOB_NAME;
- else if (!_cups_strcasecmp(value, "job-originating-host-name"))
- banner->show |= SHOW_JOB_ORIGINATING_HOST_NAME;
- else if (!_cups_strcasecmp(value, "job-originating-user-name"))
- banner->show |= SHOW_JOB_ORIGINATING_USER_NAME;
- else if (!_cups_strcasecmp(value, "job-uuid"))
- banner->show |= SHOW_JOB_UUID;
- else if (!_cups_strcasecmp(value, "options"))
- banner->show |= SHOW_OPTIONS;
- else if (!_cups_strcasecmp(value, "paper-name"))
- banner->show |= SHOW_PAPER_NAME;
- else if (!_cups_strcasecmp(value, "paper-size"))
- banner->show |= SHOW_PAPER_SIZE;
- else if (!_cups_strcasecmp(value, "printer-driver-name"))
- banner->show |= SHOW_PRINTER_DRIVER_NAME;
- else if (!_cups_strcasecmp(value, "printer-driver-version"))
- banner->show |= SHOW_PRINTER_DRIVER_VERSION;
- else if (!_cups_strcasecmp(value, "printer-info"))
- banner->show |= SHOW_PRINTER_INFO;
- else if (!_cups_strcasecmp(value, "printer-location"))
- banner->show |= SHOW_PRINTER_LOCATION;
- else if (!_cups_strcasecmp(value, "printer-make-and-model"))
- banner->show |= SHOW_PRINTER_MAKE_AND_MODEL;
- else if (!_cups_strcasecmp(value, "printer-name"))
- banner->show |= SHOW_PRINTER_NAME;
- else if (!_cups_strcasecmp(value, "time-at-creation"))
- banner->show |= SHOW_TIME_AT_CREATION;
- else if (!_cups_strcasecmp(value, "time-at-processing"))
- banner->show |= SHOW_TIME_AT_PROCESSING;
- else
- {
- fprintf(stderr,
- "DEBUG: Unknown \"Show\" value \"%s\" on line %d of banner "
- "file\n", value, linenum);
- }
- }
- }
- else
- fprintf(stderr, "DEBUG: Unknown key \"%s\" on line %d of banner file\n",
- line, linenum);
- }
-
- if (filename)
- cupsFileClose(fp);
-
- return (banner);
-}
-
-
-/*
- * 'ps_ascii85()' - Print binary data as a series of base-85 numbers.
- */
-
-static void
-ps_ascii85(cups_ib_t *data, /* I - Data to print */
- int length, /* I - Number of bytes to print */
- int last_line) /* I - Last line of raster data? */
-{
- unsigned b; /* Binary data word */
- unsigned char c[5]; /* ASCII85 encoded chars */
- static int col = 0; /* Current column */
-
-
- while (length > 3)
- {
- b = (((((data[0] << 8) | data[1]) << 8) | data[2]) << 8) | data[3];
-
- if (b == 0)
- {
- putchar('z');
- col ++;
- }
- else
- {
- c[4] = (b % 85) + '!';
- b /= 85;
- c[3] = (b % 85) + '!';
- b /= 85;
- c[2] = (b % 85) + '!';
- b /= 85;
- c[1] = (b % 85) + '!';
- b /= 85;
- c[0] = b + '!';
-
- fwrite(c, 5, 1, stdout);
- col += 5;
- }
-
- data += 4;
- length -= 4;
-
- if (col >= 75)
- {
- putchar('\n');
- col = 0;
- }
- }
-
- if (last_line)
- {
- if (length > 0)
- {
- memset(data + length, 0, 4 - length);
- b = (((((data[0] << 8) | data[1]) << 8) | data[2]) << 8) | data[3];
-
- c[4] = (b % 85) + '!';
- b /= 85;
- c[3] = (b % 85) + '!';
- b /= 85;
- c[2] = (b % 85) + '!';
- b /= 85;
- c[1] = (b % 85) + '!';
- b /= 85;
- c[0] = b + '!';
-
- fwrite(c, length + 1, 1, stdout);
- }
-
- puts("~>");
- col = 0;
- }
-}
-
-
-/*
- * 'write_banner()' - Write a banner page...
- */
-
-static int /* O - Number of pages */
-write_banner(banner_file_t *banner, /* I - Banner file */
- ppd_file_t *ppd, /* I - PPD file */
- ps_text_t *fonts, /* I - Fonts */
- int job_id, /* I - Job ID */
- const char *title, /* I - Title of job */
- const char *username, /* I - Owner of job */
- int num_options, /* I - Number of options */
- cups_option_t *options) /* I - Options */
-{
- char *notice; /* Current notice */
- char *imagefile; /* Current image file */
- cups_array_t *images; /* Images */
- cups_image_t *image; /* Current image */
- const char *option; /* Option value */
- int i, j; /* Looping vars */
- float x, /* Current X position */
- y; /* Current Y position */
- cups_lang_t *language; /* Default language */
- int showlines; /* Number of lines to show */
- float fontsize; /* Font size to use */
- int num_pages; /* Number of pages */
- float print_width, /* Printable width of page */
- print_height, /* Printable height of page */
- info_top, /* Top of info fields */
- info_height, /* Height of info fields */
- line_height, /* Height of info lines */
- notices_height, /* Height of all notices */
- images_width, /* Width of all images */
- images_height, /* Height of all images */
- total_height; /* Height of all content */
- char text[1024]; /* Formatted field text */
-
-
- /*
- * Figure out how many lines of text will be shown...
- */
-
- showlines = 0;
- if (banner->show & SHOW_IMAGEABLE_AREA)
- showlines += 2;
- if (banner->show & SHOW_JOB_BILLING)
- showlines ++;
- if (banner->show & SHOW_JOB_ID)
- showlines ++;
- if (banner->show & SHOW_JOB_NAME)
- showlines ++;
- if (banner->show & SHOW_JOB_ORIGINATING_USER_NAME)
- showlines ++;
- if (banner->show & SHOW_JOB_ORIGINATING_HOST_NAME)
- showlines ++;
- if (banner->show & SHOW_JOB_UUID)
- showlines ++;
- if (banner->show & SHOW_OPTIONS)
- {
- for (j = 0; j < num_options; j ++)
- {
- if (_cups_strcasecmp("media", options[j].name) &&
- _cups_strcasecmp("PageSize", options[j].name) &&
- _cups_strcasecmp("PageRegion", options[j].name) &&
- _cups_strcasecmp("InputSlot", options[j].name) &&
- _cups_strcasecmp("MediaType", options[j].name) &&
- _cups_strcasecmp("finishings", options[j].name) &&
- _cups_strcasecmp("sides", options[j].name) &&
- _cups_strcasecmp("Duplex", options[j].name) &&
- _cups_strcasecmp("orientation-requested", options[j].name) &&
- _cups_strcasecmp("landscape", options[j].name) &&
- _cups_strcasecmp("number-up", options[j].name) &&
- _cups_strcasecmp("OutputOrder", options[j].name))
- continue;
-
- showlines ++;
- }
- }
- if (banner->show & SHOW_PAPER_NAME)
- showlines ++;
- if (banner->show & SHOW_PAPER_SIZE)
- showlines += 2;
- if (banner->show & SHOW_PRINTER_DRIVER_NAME)
- showlines ++;
- if (banner->show & SHOW_PRINTER_DRIVER_VERSION)
- showlines ++;
- if (banner->show & SHOW_PRINTER_INFO)
- showlines ++;
- if (banner->show & SHOW_PRINTER_LOCATION)
- showlines ++;
- if (banner->show & SHOW_PRINTER_MAKE_AND_MODEL)
- showlines ++;
- if (banner->show & SHOW_PRINTER_NAME)
- showlines ++;
- if (banner->show & SHOW_TIME_AT_CREATION)
- showlines ++;
- if (banner->show & SHOW_TIME_AT_PROCESSING)
- showlines ++;
-
- /*
- * Figure out the dimensions and positions of everything...
- */
-
- print_width = PageRight - PageLeft;
- print_height = PageTop - PageBottom;
- fontsize = print_height / 60; /* Nominally 12pts */
- line_height = 1.2 * fontsize;
- info_height = showlines * line_height;
- notices_height = cupsArrayCount(banner->notices) * line_height;
-
- if (cupsArrayCount(banner->images))
- {
- images = cupsArrayNew(NULL, NULL);
- images_height = print_height / 10; /* Nominally 1" */
-
- for (imagefile = (char *)cupsArrayFirst(banner->images), images_width = 0.0;
- imagefile;
- imagefile = (char *)cupsArrayNext(banner->images))
- {
- if ((image = cupsImageOpen(imagefile, ColorDevice ? CUPS_IMAGE_RGB_CMYK :
- CUPS_IMAGE_WHITE,
- CUPS_IMAGE_WHITE, 100, 0, NULL)) == NULL)
- {
- fprintf(stderr, "DEBUG: Unable to open image file \"%s\"\n",
- imagefile);
- continue;
- }
-
- images_width += cupsImageGetWidth(image) * images_height /
- cupsImageGetHeight(image);
- cupsArrayAdd(images, image);
- }
- }
- else
- {
- images = NULL;
- images_height = 0;
- images_width = 0;
- }
-
- total_height = info_height + notices_height + images_height;
- if (cupsArrayCount(banner->notices) && showlines)
- total_height += 2 * line_height;
- if (cupsArrayCount(banner->images) &&
- (showlines || cupsArrayCount(banner->notices)))
- total_height += 2 * line_height;
-
- info_top = 0.5 * (print_height + total_height);
-
- /*
- * Write the page(s)...
- */
-
- language = cupsLangDefault();
- num_pages = Duplex ? 2 : 1;
-
- for (i = 1; i <= num_pages; i ++)
- {
- /*
- * Start the page...
- */
-
- printf("%%%%Page: %s %d\n", i == 1 ? "coverpage" : "coverback", i);
- puts("gsave");
- if (i == 1)
- printf("%.1f %.1f translate\n", PageLeft, PageBottom);
- else
- printf("%.1f %.1f translate\n", PageWidth - PageRight,
- PageLength - PageTop);
- puts("0 setgray");
-
- y = info_top;
-
- /*
- * Information...
- */
-
- if (banner->show)
- {
- x = 0.33 * print_width;
-
- if (banner->show & SHOW_PRINTER_NAME)
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Printer Name: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, getenv("PRINTER"));
- }
- if (banner->show & SHOW_JOB_ID)
- {
- snprintf(text, sizeof(text), "%s-%d", getenv("PRINTER"), job_id);
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Job ID: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, text);
- }
- if (banner->show & SHOW_JOB_UUID)
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Job UUID: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT,
- cupsGetOption("job-uuid", num_options, options));
- }
- if (banner->show & SHOW_JOB_NAME)
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Title: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, title);
- }
- if (banner->show & SHOW_JOB_ORIGINATING_USER_NAME)
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Printed For: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, username);
- }
- if (banner->show & SHOW_JOB_ORIGINATING_HOST_NAME)
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Printed From: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT,
- cupsGetOption("job-originating-host-name", num_options,
- options));
- }
- if (banner->show & SHOW_JOB_BILLING)
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Billing Information: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT,
- cupsGetOption("job-billing", num_options, options));
- }
- if (banner->show & SHOW_OPTIONS)
- {
- printf("%.1f %.1f moveto", x, y);
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Options: ")));
-
- for (j = 0; j < num_options; j ++)
- {
- if (_cups_strcasecmp("media", options[j].name) &&
- _cups_strcasecmp("PageSize", options[j].name) &&
- _cups_strcasecmp("PageRegion", options[j].name) &&
- _cups_strcasecmp("InputSlot", options[j].name) &&
- _cups_strcasecmp("MediaType", options[j].name) &&
- _cups_strcasecmp("finishings", options[j].name) &&
- _cups_strcasecmp("sides", options[j].name) &&
- _cups_strcasecmp("Duplex", options[j].name) &&
- _cups_strcasecmp("orientation-requested", options[j].name) &&
- _cups_strcasecmp("landscape", options[j].name) &&
- _cups_strcasecmp("number-up", options[j].name) &&
- _cups_strcasecmp("OutputOrder", options[j].name))
- continue;
-
- if (!_cups_strcasecmp("landscape", options[j].name))
- strlcpy(text, "orientation-requested=landscape", sizeof(text));
- else if (!_cups_strcasecmp("orientation-requested", options[j].name))
- {
- switch (atoi(options[j].value))
- {
- default :
- case IPP_PORTRAIT :
- strlcpy(text, "orientation-requested=portrait",
- sizeof(text));
- break;
-
- case IPP_LANDSCAPE :
- strlcpy(text, "orientation-requested=landscape",
- sizeof(text));
- break;
-
- case IPP_REVERSE_PORTRAIT :
- strlcpy(text, "orientation-requested=reverse-portrait",
- sizeof(text));
- break;
-
- case IPP_REVERSE_LANDSCAPE :
- strlcpy(text, "orientation-requested=reverse-landscape",
- sizeof(text));
- break;
- }
- }
- else
- snprintf(text, sizeof(text), "%s=%s", options[j].name,
- options[j].value);
-
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, text);
- }
- }
-
- if (banner->show & SHOW_PRINTER_INFO)
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Description: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT,
- getenv("PRINTER_INFO"));
- }
- if (banner->show & SHOW_PRINTER_LOCATION)
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Location: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT,
- getenv("PRINTER_LOCATION"));
- }
- if (banner->show & SHOW_PRINTER_MAKE_AND_MODEL)
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Make and Model: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT,
- ppd ? ppd->nickname : NULL);
- }
-
- if (banner->show & SHOW_PAPER_NAME)
- {
- if ((option = cupsGetOption("media", num_options, options)) == NULL)
- if ((option = cupsGetOption("PageSize", num_options, options)) == NULL)
- if ((option = cupsGetOption("PageRegion", num_options,
- options)) == NULL)
- option = "Default";
-
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Media Name: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, option);
- }
- if (banner->show & SHOW_PAPER_SIZE)
- {
- snprintf(text, sizeof(text),
- _cupsLangString(language, _("%.2f x %.2f inches")),
- PageWidth / 72.0, PageLength / 72.0);
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Media Dimensions: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, text);
-
- snprintf(text, sizeof(text),
- _cupsLangString(language, _("%.0f x %.0f millimeters")),
- PageWidth * 25.4 / 72.0, PageLength * 25.4 / 72.0);
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, text);
- }
- if (banner->show & SHOW_IMAGEABLE_AREA)
- {
- snprintf(text, sizeof(text),
- _cupsLangString(language,
- _("%.2f x %.2f to %.2f x %.2f inches")),
- PageLeft / 72.0, PageBottom / 72.0,
- PageRight / 72.0, PageTop / 72.0);
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Media Limits: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, text);
-
- snprintf(text, sizeof(text),
- _cupsLangString(language,
- _("%.0f x %.0f to %.0f x %.0f millimeters")),
- PageLeft * 25.4 / 72.0, PageBottom * 25.4 / 72.0,
- PageRight * 25.4 / 72.0, PageTop * 25.4 / 72.0);
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, text);
-
- printf("gsave 2 setlinewidth 1 1 %.1f %.1f rectstroke grestore\n",
- print_width - 2.0, print_height - 2.0);
- }
- if (banner->show & SHOW_PRINTER_DRIVER_NAME)
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Driver Name: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT,
- ppd ? ppd->pcfilename : NULL);
- }
- if (banner->show & SHOW_PRINTER_DRIVER_VERSION)
- {
- ppd_attr_t *file_version = ppdFindAttr(ppd, "FileVersion", NULL);
-
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Driver Version: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT,
- file_version ? file_version->value : NULL);
- }
- if (banner->show & SHOW_TIME_AT_CREATION)
- {
- if ((option = cupsGetOption("time-at-creation", num_options,
- options)) != NULL)
- {
- time_t curtime; /* Current time */
- struct tm *curdate; /* Current date */
-
- curtime = (time_t)atoi(option);
- curdate = localtime(&curtime);
-
- strftime(text, sizeof(text), "%c", curdate);
- }
- else
- strlcpy(text, "?", sizeof(text));
-
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Created On: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, text);
- }
- if (banner->show & SHOW_TIME_AT_PROCESSING)
- {
- if ((option = cupsGetOption("time-at-processing", num_options,
- options)) != NULL)
- {
- time_t curtime; /* Current time */
- struct tm *curdate; /* Current date */
-
- curtime = (time_t)atoi(option);
- curdate = localtime(&curtime);
-
- strftime(text, sizeof(text), "%c", curdate);
- }
- else
- strlcpy(text, "?", sizeof(text));
-
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_BOLD, PS_RIGHT,
- _cupsLangString(language, _("Printed On: ")));
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_LEFT, text);
- }
- }
-
- /*
- * Notices...
- */
-
- if (cupsArrayCount(banner->notices))
- {
- if (banner->show)
- y -= 2 * line_height;
-
- x = 0.5 * print_width;
-
- for (notice = (char *)cupsArrayFirst(banner->notices);
- notice;
- notice = (char *)cupsArrayNext(banner->notices))
- {
- printf("%.1f %.1f moveto", x, y);
- y -= line_height;
- psTextUTF8(fonts, fontsize, PS_NORMAL, PS_CENTER, notice);
- }
- }
-
- /*
- * Images...
- */
-
- if (cupsArrayCount(images))
- {
- if (banner->show || cupsArrayCount(banner->notices))
- y -= 2 * line_height;
-
- x = 0.5 * (print_width - images_width);
-
- for (image = (cups_image_t *)cupsArrayFirst(images);
- image;
- image = (cups_image_t *)cupsArrayNext(images))
- {
- float temp_width; /* Width of this image */
- int depth, /* Bytes per pixel */
- num_cols, /* Number of columns */
- row, /* Current row */
- num_rows, /* Number of rows */
- out_length, /* Length of data to write */
- out_offset; /* Offset in line buffer */
- unsigned char *line; /* Data for current row */
-
-
- depth = cupsImageGetDepth(image);
- num_cols = cupsImageGetWidth(image);
- num_rows = cupsImageGetHeight(image);
- line = malloc(depth * num_cols + 3);
- temp_width = num_cols * images_height / num_rows;
-
- printf("gsave %.1f %.1f translate %.3f %.3f scale\n", x, y,
- temp_width / num_cols, images_height / num_rows);
- x += temp_width;
-
- switch (cupsImageGetColorSpace(image))
- {
- default :
- case CUPS_IMAGE_WHITE :
- printf("/DeviceGray setcolorspace"
- "<<"
- "/ImageType 1"
- "/Width %d"
- "/Height %d"
- "/BitsPerComponent 8"
- "/Decode[0 1]\n",
- num_cols, num_rows);
- break;
-
- case CUPS_IMAGE_RGB :
- printf("/DeviceRGB setcolorspace"
- "<<"
- "/ImageType 1"
- "/Width %d"
- "/Height %d"
- "/BitsPerComponent 8"
- "/Decode[0 1 0 1 0 1]\n",
- num_cols, num_rows);
- break;
-
- case CUPS_IMAGE_CMYK :
- printf("/DeviceCMYK setcolorspace"
- "<<"
- "/ImageType 1"
- "/Width %d"
- "/Height %d"
- "/BitsPerComponent 8"
- "/Decode[0 1 0 1 0 1 0 1]\n",
- num_cols, num_rows);
- break;
- }
-
- puts("/DataSource currentfile"
- "/ASCII85Decode filter"
- "/ImageMatrix[1 0 0 -1 0 1]>>image");
-
- for (row = 0, out_offset = 0; row < num_rows; row ++)
- {
- cupsImageGetRow(image, 0, row, num_cols, line + out_offset);
-
- out_length = num_cols * depth + out_offset;
- out_offset = out_length & 3;
-
- ps_ascii85(line, out_length, row == (num_rows - 1));
-
- if (out_offset > 0)
- memcpy(line, line + out_length - out_offset, out_offset);
- }
-
- puts("grestore");
-
- if (i == num_pages)
- cupsImageClose(image);
-
- free(line);
- }
- }
-
- /*
- * Header and footer...
- */
-
- x = 0.5 * print_width;
-
- if (banner->header)
- {
- printf("%.1f %.1f moveto", x, print_height - 2 * fontsize);
- psTextUTF8(fonts, 2 * fontsize, PS_BOLD, PS_CENTER, banner->header);
- }
-
- if (banner->footer)
- {
- printf("%.1f %.1f moveto", x, fontsize);
- psTextUTF8(fonts, 2 * fontsize, PS_BOLD, PS_CENTER, banner->footer);
- }
-
- /*
- * Show the page...
- */
-
- puts("grestore");
- puts("showpage");
- }
-
- return (num_pages);
-}
-
-
-/*
- * 'write_epilogue()' - Write the PostScript file epilogue.
- */
-
-static void
-write_epilogue(int num_pages) /* I - Number of pages */
-{
- puts("%%Trailer");
- printf("%%%%Pages: %d\n", num_pages);
- puts("%%EOF");
-}
-
-
-/*
- * 'write_prolog()' - Write the PostScript file prolog with options.
- */
-
-ps_text_t * /* O - Fonts */
-write_prolog(const char *title, /* I - Title of job */
- const char *username) /* I - Username */
-{
- time_t curtime; /* Current time */
- struct tm *curtm; /* Current date */
- char curdate[255]; /* Current date (text format) */
- ps_text_t *fonts; /* Fonts */
-
-
- /*
- * Get the fonts we'll need...
- */
-
- fonts = psTextInitialize();
-
- /*
- * Output the DSC header...
- */
-
- curtime = time(NULL);
- curtm = localtime(&curtime);
- strftime(curdate, sizeof(curdate), "%c", curtm);
-
- puts("%!PS-Adobe-3.0");
- printf("%%%%BoundingBox: %.0f %.0f %.0f %.0f\n", PageLeft, PageBottom,
- PageRight, PageTop);
- printf("%%cupsRotation: %d\n", (Orientation & 3) * 90);
- puts("%%Creator: bannertops/" CUPS_SVERSION);
- printf("%%%%CreationDate: %s\n", curdate);
- puts("%%LanguageLevel: 2");
- puts("%%DocumentData: Clean7Bit");
- WriteTextComment("Title", title);
- WriteTextComment("For", username);
- printf("%%%%Pages: %d\n", Duplex ? 2 : 1);
- psTextListFonts(fonts);
- puts("%%EndComments");
- puts("%%BeginProlog");
- psTextEmbedFonts(fonts);
- puts("%%EndProlog");
-
- return (fonts);
-}
-
-
-/*
- * End of "$Id: bannertops.c 9793 2011-05-20 03:49:49Z mike $".
- */
diff --git a/filter/commandtops.c b/filter/commandtops.c
index 745359ec..93cc7b77 100644
--- a/filter/commandtops.c
+++ b/filter/commandtops.c
@@ -1,5 +1,5 @@
/*
- * "$Id: commandtops.c 10373 2012-03-21 23:00:05Z mike $"
+ * "$Id: commandtops.c 10431 2012-04-23 19:19:19Z mike $"
*
* PostScript command filter for CUPS.
*
@@ -71,7 +71,7 @@ main(int argc, /* I - Number of command-line arguments */
*/
_cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options file"),
+ _("Usage: %s job-id user title copies options [file]"),
argv[0]);
return (1);
}
@@ -534,5 +534,5 @@ report_levels(ppd_file_t *ppd, /* I - PPD file */
/*
- * End of "$Id: commandtops.c 10373 2012-03-21 23:00:05Z mike $".
+ * End of "$Id: commandtops.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/filter/error.c b/filter/error.c
index e74e0127..a4f9fe16 100644
--- a/filter/error.c
+++ b/filter/error.c
@@ -1,9 +1,9 @@
/*
- * "$Id: error.c 9771 2011-05-12 05:21:56Z mike $"
+ * "$Id: error.c 10424 2012-04-23 17:26:57Z mike $"
*
* Raster error handling for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -28,8 +28,7 @@
* Include necessary headers...
*/
-#include "image-private.h"
-#include <stdarg.h>
+#include <cups/raster-private.h>
/*
@@ -139,7 +138,7 @@ _cupsRasterClearError(void)
*
* If there are no recent errors, NULL is returned.
*
- * @since CUPS 1.3/Mac OS X 10.5@
+ * @since CUPS 1.3/OS X 10.5@
*/
const char * /* O - Last error */
@@ -283,5 +282,5 @@ get_error_buffer(void)
/*
- * End of "$Id: error.c 9771 2011-05-12 05:21:56Z mike $".
+ * End of "$Id: error.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/filter/gziptoany.c b/filter/gziptoany.c
index 3689b7ca..a5f379af 100644
--- a/filter/gziptoany.c
+++ b/filter/gziptoany.c
@@ -1,9 +1,9 @@
/*
- * "$Id: gziptoany.c 9557 2011-02-21 16:51:43Z mike $"
+ * "$Id: gziptoany.c 10431 2012-04-23 19:19:19Z mike $"
*
* GZIP/raw pre-filter for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1993-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -47,7 +47,7 @@ main(int argc, /* I - Number of command-line arguments */
if (argc != 7)
{
_cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options file"),
+ _("Usage: %s job-id user title copies options [file]"),
argv[0]);
return (1);
}
@@ -108,5 +108,5 @@ main(int argc, /* I - Number of command-line arguments */
/*
- * End of "$Id: gziptoany.c 9557 2011-02-21 16:51:43Z mike $".
+ * End of "$Id: gziptoany.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/filter/image-bmp.c b/filter/image-bmp.c
deleted file mode 100644
index dde040b8..00000000
--- a/filter/image-bmp.c
+++ /dev/null
@@ -1,545 +0,0 @@
-/*
- * "$Id: image-bmp.c 9771 2011-05-12 05:21:56Z mike $"
- *
- * BMP image routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageReadBMP() - Read a BMP image file.
- * read_word() - Read a 16-bit unsigned integer.
- * read_dword() - Read a 32-bit unsigned integer.
- * read_long() - Read a 32-bit signed integer.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-
-/*
- * Constants for the bitmap compression...
- */
-
-# define BI_RGB 0 /* No compression - straight BGR data */
-# define BI_RLE8 1 /* 8-bit run-length compression */
-# define BI_RLE4 2 /* 4-bit run-length compression */
-# define BI_BITFIELDS 3 /* RGB bitmap with RGB masks */
-
-
-/*
- * Local functions...
- */
-
-static unsigned short read_word(FILE *fp);
-static unsigned int read_dword(FILE *fp);
-static int read_long(FILE *fp);
-
-
-/*
- * '_cupsImageReadBMP()' - Read a BMP image file.
- */
-
-int /* O - Read status */
-_cupsImageReadBMP(
- cups_image_t *img, /* IO - cupsImage */
- FILE *fp, /* I - cupsImage file */
- cups_icspace_t primary, /* I - Primary choice for colorspace */
- cups_icspace_t secondary, /* I - Secondary choice for colorspace */
- int saturation, /* I - Color saturation (%) */
- int hue, /* I - Color hue (degrees) */
- const cups_ib_t *lut) /* I - Lookup table for gamma/brightness */
-{
- int offset, /* Offset to bitmap data */
- info_size, /* Size of info header */
- planes, /* Number of planes (always 1) */
- depth, /* Depth of image (bits) */
- compression, /* Type of compression */
- image_size, /* Size of image in bytes */
- colors_used, /* Number of colors used */
- colors_important, /* Number of important colors */
- bpp, /* Bytes per pixel */
- x, y, /* Looping vars */
- color, /* Color of RLE pixel */
- count, /* Number of times to repeat */
- temp, /* Temporary color */
- align; /* Alignment bytes */
- cups_ib_t bit, /* Bit in image */
- byte; /* Byte in image */
- cups_ib_t *in, /* Input pixels */
- *out, /* Output pixels */
- *ptr; /* Pointer into pixels */
- cups_ib_t colormap[256][4]; /* Colormap */
-
-
- (void)secondary;
-
- /*
- * Get the header...
- */
-
- getc(fp); /* Skip "BM" sync chars */
- getc(fp);
- read_dword(fp); /* Skip size */
- read_word(fp); /* Skip reserved stuff */
- read_word(fp);
- offset = read_dword(fp);
-
- fprintf(stderr, "DEBUG: offset = %d\n", offset);
-
- if (offset < 0)
- {
- fprintf(stderr, "DEBUG: Bad BMP offset %d\n", offset);
- fclose(fp);
- return (1);
- }
-
- /*
- * Then the bitmap information...
- */
-
- info_size = read_dword(fp);
- img->xsize = read_long(fp);
- img->ysize = read_long(fp);
- planes = read_word(fp);
- depth = read_word(fp);
- compression = read_dword(fp);
- image_size = read_dword(fp);
- img->xppi = read_long(fp) * 0.0254 + 0.5;
- img->yppi = read_long(fp) * 0.0254 + 0.5;
- colors_used = read_dword(fp);
- colors_important = read_dword(fp);
-
- if (img->xsize == 0 || img->xsize > CUPS_IMAGE_MAX_WIDTH ||
- img->ysize == 0 || img->ysize > CUPS_IMAGE_MAX_HEIGHT ||
- (depth != 1 && depth != 4 && depth != 8 && depth != 24))
- {
- fprintf(stderr, "DEBUG: Bad BMP dimensions %ux%ux%d\n",
- img->xsize, img->ysize, depth);
- fclose(fp);
- return (1);
- }
-
- if (colors_used < 0 || colors_used > 256)
- {
- fprintf(stderr, "DEBUG: Bad BMP colormap size %d\n", colors_used);
- fclose(fp);
- return (1);
- }
-
- if (img->xppi == 0 || img->yppi == 0)
- {
- fprintf(stderr, "DEBUG: Bad BMP resolution %dx%d PPI.\n",
- img->xppi, img->yppi);
- img->xppi = img->yppi = 128;
- }
-
- /*
- * Make sure the resolution info is valid...
- */
-
- fprintf(stderr, "info_size = %d, xsize = %d, ysize = %d, planes = %d, depth = %d\n",
- info_size, img->xsize, img->ysize, planes, depth);
- fprintf(stderr, "compression = %d, image_size = %d, xppi = %d, yppi = %d\n",
- compression, image_size, img->xppi, img->yppi);
- fprintf(stderr, "colors_used = %d, colors_important = %d\n", colors_used,
- colors_important);
-
- if (info_size > 40)
- for (info_size -= 40; info_size > 0; info_size --)
- getc(fp);
-
- /*
- * Get colormap...
- */
-
- if (colors_used == 0 && depth <= 8)
- colors_used = 1 << depth;
-
- if (colors_used > 0)
- fread(colormap, colors_used, 4, fp);
- else
- memset(colormap, 0, sizeof(colormap));
-
- /*
- * Setup image and buffers...
- */
-
- img->colorspace = (primary == CUPS_IMAGE_RGB_CMYK) ? CUPS_IMAGE_RGB : primary;
-
- cupsImageSetMaxTiles(img, 0);
-
- bpp = cupsImageGetDepth(img);
-
- if ((in = malloc(img->xsize * 3)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- return (1);
- }
-
- if ((out = malloc(img->xsize * bpp)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- free(in);
- fclose(fp);
- return (1);
- }
-
- /*
- * Read the image data...
- */
-
- color = 0;
- count = 0;
- align = 0;
-
- for (y = img->ysize - 1; y >= 0; y --)
- {
- ptr = in;
-
- switch (depth)
- {
- case 1 : /* Bitmap */
- for (x = img->xsize, bit = 128, byte = 0; x > 0; x --)
- {
- if (bit == 128)
- byte = getc(fp);
-
- if (byte & bit)
- {
- *ptr++ = colormap[1][2];
- *ptr++ = colormap[1][1];
- *ptr++ = colormap[1][0];
- }
- else
- {
- *ptr++ = colormap[0][2];
- *ptr++ = colormap[0][1];
- *ptr++ = colormap[0][0];
- }
-
- if (bit > 1)
- bit >>= 1;
- else
- bit = 128;
- }
-
- /*
- * Read remaining bytes to align to 32 bits...
- */
-
- for (temp = (img->xsize + 7) / 8; temp & 3; temp ++)
- getc(fp);
- break;
-
- case 4 : /* 16-color */
- for (x = img->xsize, bit = 0xf0, temp = 0; x > 0; x --)
- {
- /*
- * Get a new count as needed...
- */
-
- if (compression != BI_RLE4 && count == 0)
- {
- count = 2;
- color = -1;
- }
-
- if (count == 0)
- {
- while (align > 0)
- {
- align --;
- getc(fp);
- }
-
- if ((count = getc(fp)) == 0)
- {
- if ((count = getc(fp)) == 0)
- {
- /*
- * End of line...
- */
-
- x ++;
- continue;
- }
- else if (count == 1)
- {
- /*
- * End of image...
- */
-
- break;
- }
- else if (count == 2)
- {
- /*
- * Delta...
- */
-
- count = getc(fp) * getc(fp) * img->xsize;
- color = 0;
- }
- else
- {
- /*
- * Absolute...
- */
-
- color = -1;
- align = ((4 - (count & 3)) / 2) & 1;
- }
- }
- else
- color = getc(fp);
- }
-
- /*
- * Get a new color as needed...
- */
-
- count --;
-
- if (bit == 0xf0)
- {
- if (color < 0)
- temp = getc(fp);
- else
- temp = color;
-
- /*
- * Copy the color value...
- */
-
- *ptr++ = colormap[temp >> 4][2];
- *ptr++ = colormap[temp >> 4][1];
- *ptr++ = colormap[temp >> 4][0];
- bit = 0x0f;
- }
- else
- {
- /*
- * Copy the color value...
- */
-
- *ptr++ = colormap[temp & 15][2];
- *ptr++ = colormap[temp & 15][1];
- *ptr++ = colormap[temp & 15][0];
- bit = 0xf0;
- }
- }
- break;
-
- case 8 : /* 256-color */
- for (x = img->xsize; x > 0; x --)
- {
- /*
- * Get a new count as needed...
- */
-
- if (compression != BI_RLE8)
- {
- count = 1;
- color = -1;
- }
-
- if (count == 0)
- {
- while (align > 0)
- {
- align --;
- getc(fp);
- }
-
- if ((count = getc(fp)) == 0)
- {
- if ((count = getc(fp)) == 0)
- {
- /*
- * End of line...
- */
-
- x ++;
- continue;
- }
- else if (count == 1)
- {
- /*
- * End of image...
- */
-
- break;
- }
- else if (count == 2)
- {
- /*
- * Delta...
- */
-
- count = getc(fp) * getc(fp) * img->xsize;
- color = 0;
- }
- else
- {
- /*
- * Absolute...
- */
-
- color = -1;
- align = (2 - (count & 1)) & 1;
- }
- }
- else
- color = getc(fp);
- }
-
- /*
- * Get a new color as needed...
- */
-
- if (color < 0)
- temp = getc(fp);
- else
- temp = color;
-
- count --;
-
- /*
- * Copy the color value...
- */
-
- *ptr++ = colormap[temp][2];
- *ptr++ = colormap[temp][1];
- *ptr++ = colormap[temp][0];
- }
- break;
-
- case 24 : /* 24-bit RGB */
- for (x = img->xsize; x > 0; x --, ptr += 3)
- {
- ptr[2] = getc(fp);
- ptr[1] = getc(fp);
- ptr[0] = getc(fp);
- }
-
- /*
- * Read remaining bytes to align to 32 bits...
- */
-
- for (temp = img->xsize * 3; temp & 3; temp ++)
- getc(fp);
- break;
- }
-
- if (saturation != 100 || hue != 0)
- cupsImageRGBAdjust(in, img->xsize, saturation, hue);
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->xsize);
- break;
-
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(in, out, img->xsize);
- break;
-
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->xsize);
- break;
-
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->xsize);
- break;
-
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
-
- fclose(fp);
- free(in);
- free(out);
-
- return (0);
-}
-
-
-/*
- * 'read_word()' - Read a 16-bit unsigned integer.
- */
-
-static unsigned short /* O - 16-bit unsigned integer */
-read_word(FILE *fp) /* I - File to read from */
-{
- unsigned char b0, b1; /* Bytes from file */
-
- b0 = getc(fp);
- b1 = getc(fp);
-
- return ((b1 << 8) | b0);
-}
-
-
-/*
- * 'read_dword()' - Read a 32-bit unsigned integer.
- */
-
-static unsigned int /* O - 32-bit unsigned integer */
-read_dword(FILE *fp) /* I - File to read from */
-{
- unsigned char b0, b1, b2, b3; /* Bytes from file */
-
- b0 = getc(fp);
- b1 = getc(fp);
- b2 = getc(fp);
- b3 = getc(fp);
-
- return ((((((b3 << 8) | b2) << 8) | b1) << 8) | b0);
-}
-
-
-/*
- * 'read_long()' - Read a 32-bit signed integer.
- */
-
-static int /* O - 32-bit signed integer */
-read_long(FILE *fp) /* I - File to read from */
-{
- unsigned char b0, b1, b2, b3; /* Bytes from file */
-
- b0 = getc(fp);
- b1 = getc(fp);
- b2 = getc(fp);
- b3 = getc(fp);
-
- return ((int)(((((b3 << 8) | b2) << 8) | b1) << 8) | b0);
-}
-
-
-/*
- * End of "$Id: image-bmp.c 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-colorspace.c b/filter/image-colorspace.c
deleted file mode 100644
index 605e9276..00000000
--- a/filter/image-colorspace.c
+++ /dev/null
@@ -1,1567 +0,0 @@
-/*
- * "$Id: image-colorspace.c 9748 2011-05-06 21:02:44Z mike $"
- *
- * Colorspace conversions for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2006 by Easy Software Products.
- *
- * The color saturation/hue matrix stuff is provided thanks to Mr. Paul
- * Haeberli at "http://www.sgi.com/grafica/matrix/index.html".
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * cupsImageCMYKToBlack() - Convert CMYK data to black.
- * cupsImageCMYKToCMY() - Convert CMYK colors to CMY.
- * cupsImageCMYKToCMYK() - Convert CMYK colors to CMYK.
- * cupsImageCMYKToRGB() - Convert CMYK colors to device-dependent
- * RGB.
- * cupsImageCMYKToWhite() - Convert CMYK colors to luminance.
- * cupsImageLut() - Adjust all pixel values with the given
- * LUT.
- * cupsImageRGBAdjust() - Adjust the hue and saturation of the
- * given RGB colors.
- * cupsImageRGBToBlack() - Convert RGB data to black.
- * cupsImageRGBToCMY() - Convert RGB colors to CMY.
- * cupsImageRGBToCMYK() - Convert RGB colors to CMYK.
- * cupsImageRGBToRGB() - Convert RGB colors to device-dependent
- * RGB.
- * cupsImageRGBToWhite() - Convert RGB colors to luminance.
- * cupsImageSetProfile() - Set the device color profile.
- * cupsImageSetRasterColorSpace() - Set the destination colorspace.
- * cupsImageWhiteToBlack() - Convert luminance colors to black.
- * cupsImageWhiteToCMY() - Convert luminance colors to CMY.
- * cupsImageWhiteToCMYK() - Convert luminance colors to CMYK.
- * cupsImageWhiteToRGB() - Convert luminance data to RGB.
- * cupsImageWhiteToWhite() - Convert luminance colors to device-
- * dependent luminance.
- * cielab() - Map CIE Lab transformation...
- * huerotate() - Rotate the hue, maintaining luminance.
- * ident() - Make an identity matrix.
- * mult() - Multiply two matrices.
- * rgb_to_lab() - Convert an RGB color to CIE Lab.
- * rgb_to_xyz() - Convert an RGB color to CIE XYZ.
- * saturate() - Make a saturation matrix.
- * xform() - Transform a 3D point using a matrix...
- * xrotate() - Rotate about the x (red) axis...
- * yrotate() - Rotate about the y (green) axis...
- * zrotate() - Rotate about the z (blue) axis...
- * zshear() - Shear z using x and y...
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-
-/*
- * Define some math constants that are required...
- */
-
-#ifndef M_PI
-# define M_PI 3.14159265358979323846
-#endif /* !M_PI */
-
-#ifndef M_SQRT2
-# define M_SQRT2 1.41421356237309504880
-#endif /* !M_SQRT2 */
-
-#ifndef M_SQRT1_2
-# define M_SQRT1_2 0.70710678118654752440
-#endif /* !M_SQRT1_2 */
-
-/*
- * CIE XYZ whitepoint...
- */
-
-#define D65_X (0.412453 + 0.357580 + 0.180423)
-#define D65_Y (0.212671 + 0.715160 + 0.072169)
-#define D65_Z (0.019334 + 0.119193 + 0.950227)
-
-
-/*
- * Lookup table structure...
- */
-
-typedef int cups_clut_t[3][256];
-
-
-/*
- * Local globals...
- */
-
-static int cupsImageHaveProfile = 0;
- /* Do we have a color profile? */
-static int *cupsImageDensity;
- /* Ink/marker density LUT */
-static cups_clut_t *cupsImageMatrix;
- /* Color transform matrix LUT */
-static cups_cspace_t cupsImageColorSpace = CUPS_CSPACE_RGB;
- /* Destination colorspace */
-
-
-/*
- * Local functions...
- */
-
-static float cielab(float x, float xn);
-static void huerotate(float [3][3], float);
-static void ident(float [3][3]);
-static void mult(float [3][3], float [3][3], float [3][3]);
-static void rgb_to_lab(cups_ib_t *val);
-static void rgb_to_xyz(cups_ib_t *val);
-static void saturate(float [3][3], float);
-static void xform(float [3][3], float, float, float, float *, float *, float *);
-static void xrotate(float [3][3], float, float);
-static void yrotate(float [3][3], float, float);
-static void zrotate(float [3][3], float, float);
-static void zshear(float [3][3], float, float);
-
-
-/*
- * 'cupsImageCMYKToBlack()' - Convert CMYK data to black.
- */
-
-void
-cupsImageCMYKToBlack(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- int k; /* Black value */
-
-
- if (cupsImageHaveProfile)
- while (count > 0)
- {
- k = (31 * in[0] + 61 * in[1] + 8 * in[2]) / 100 + in[3];
-
- if (k < 255)
- *out++ = cupsImageDensity[k];
- else
- *out++ = cupsImageDensity[255];
-
- in += 4;
- count --;
- }
- else
- while (count > 0)
- {
- k = (31 * in[0] + 61 * in[1] + 8 * in[2]) / 100 + in[3];
-
- if (k < 255)
- *out++ = k;
- else
- *out++ = 255;
-
- in += 4;
- count --;
- }
-}
-
-
-/*
- * 'cupsImageCMYKToCMY()' - Convert CMYK colors to CMY.
- */
-
-void
-cupsImageCMYKToCMY(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- int c, m, y, k; /* CMYK values */
- int cc, cm, cy; /* Calibrated CMY values */
-
-
- if (cupsImageHaveProfile)
- while (count > 0)
- {
- c = *in++;
- m = *in++;
- y = *in++;
- k = *in++;
-
- cc = cupsImageMatrix[0][0][c] +
- cupsImageMatrix[0][1][m] +
- cupsImageMatrix[0][2][y] + k;
- cm = cupsImageMatrix[1][0][c] +
- cupsImageMatrix[1][1][m] +
- cupsImageMatrix[1][2][y] + k;
- cy = cupsImageMatrix[2][0][c] +
- cupsImageMatrix[2][1][m] +
- cupsImageMatrix[2][2][y] + k;
-
- if (cc < 0)
- *out++ = 0;
- else if (cc > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cc];
-
- if (cm < 0)
- *out++ = 0;
- else if (cm > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cm];
-
- if (cy < 0)
- *out++ = 0;
- else if (cy > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cy];
-
- count --;
- }
- else
- while (count > 0)
- {
- c = *in++;
- m = *in++;
- y = *in++;
- k = *in++;
-
- c += k;
- m += k;
- y += k;
-
- if (c < 255)
- *out++ = c;
- else
- *out++ = 255;
-
- if (m < 255)
- *out++ = y;
- else
- *out++ = 255;
-
- if (y < 255)
- *out++ = y;
- else
- *out++ = 255;
-
- count --;
- }
-}
-
-
-/*
- * 'cupsImageCMYKToCMYK()' - Convert CMYK colors to CMYK.
- */
-
-void
-cupsImageCMYKToCMYK(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- int c, m, y, k; /* CMYK values */
- int cc, cm, cy; /* Calibrated CMY values */
-
-
- if (cupsImageHaveProfile)
- while (count > 0)
- {
- c = *in++;
- m = *in++;
- y = *in++;
- k = *in++;
-
- cc = (cupsImageMatrix[0][0][c] +
- cupsImageMatrix[0][1][m] +
- cupsImageMatrix[0][2][y]);
- cm = (cupsImageMatrix[1][0][c] +
- cupsImageMatrix[1][1][m] +
- cupsImageMatrix[1][2][y]);
- cy = (cupsImageMatrix[2][0][c] +
- cupsImageMatrix[2][1][m] +
- cupsImageMatrix[2][2][y]);
-
- if (cc < 0)
- *out++ = 0;
- else if (cc > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cc];
-
- if (cm < 0)
- *out++ = 0;
- else if (cm > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cm];
-
- if (cy < 0)
- *out++ = 0;
- else if (cy > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cy];
-
- *out++ = cupsImageDensity[k];
-
- count --;
- }
- else if (in != out)
- {
- while (count > 0)
- {
- *out++ = *in++;
- *out++ = *in++;
- *out++ = *in++;
- *out++ = *in++;
-
- count --;
- }
- }
-}
-
-
-/*
- * 'cupsImageCMYKToRGB()' - Convert CMYK colors to device-dependent RGB.
- */
-
-void
-cupsImageCMYKToRGB(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- int c, m, y, k; /* CMYK values */
- int cr, cg, cb; /* Calibrated RGB values */
-
-
- if (cupsImageHaveProfile)
- {
- while (count > 0)
- {
- c = *in++;
- m = *in++;
- y = *in++;
- k = *in++;
-
- cr = cupsImageMatrix[0][0][c] +
- cupsImageMatrix[0][1][m] +
- cupsImageMatrix[0][2][y] + k;
- cg = cupsImageMatrix[1][0][c] +
- cupsImageMatrix[1][1][m] +
- cupsImageMatrix[1][2][y] + k;
- cb = cupsImageMatrix[2][0][c] +
- cupsImageMatrix[2][1][m] +
- cupsImageMatrix[2][2][y] + k;
-
- if (cr < 0)
- *out++ = 255;
- else if (cr > 255)
- *out++ = 255 - cupsImageDensity[255];
- else
- *out++ = 255 - cupsImageDensity[cr];
-
- if (cg < 0)
- *out++ = 255;
- else if (cg > 255)
- *out++ = 255 - cupsImageDensity[255];
- else
- *out++ = 255 - cupsImageDensity[cg];
-
- if (cb < 0)
- *out++ = 255;
- else if (cb > 255)
- *out++ = 255 - cupsImageDensity[255];
- else
- *out++ = 255 - cupsImageDensity[cb];
-
- count --;
- }
- }
- else
- {
- while (count > 0)
- {
- c = 255 - *in++;
- m = 255 - *in++;
- y = 255 - *in++;
- k = *in++;
-
- c -= k;
- m -= k;
- y -= k;
-
- if (c > 0)
- *out++ = c;
- else
- *out++ = 0;
-
- if (m > 0)
- *out++ = m;
- else
- *out++ = 0;
-
- if (y > 0)
- *out++ = y;
- else
- *out++ = 0;
-
- if (cupsImageColorSpace == CUPS_CSPACE_CIELab ||
- cupsImageColorSpace >= CUPS_CSPACE_ICC1)
- rgb_to_lab(out - 3);
- else if (cupsImageColorSpace == CUPS_CSPACE_CIEXYZ)
- rgb_to_xyz(out - 3);
-
- count --;
- }
- }
-}
-
-
-/*
- * 'cupsImageCMYKToWhite()' - Convert CMYK colors to luminance.
- */
-
-void
-cupsImageCMYKToWhite(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- int w; /* White value */
-
-
- if (cupsImageHaveProfile)
- {
- while (count > 0)
- {
- w = 255 - (31 * in[0] + 61 * in[1] + 8 * in[2]) / 100 - in[3];
-
- if (w > 0)
- *out++ = cupsImageDensity[w];
- else
- *out++ = cupsImageDensity[0];
-
- in += 4;
- count --;
- }
- }
- else
- {
- while (count > 0)
- {
- w = 255 - (31 * in[0] + 61 * in[1] + 8 * in[2]) / 100 - in[3];
-
- if (w > 0)
- *out++ = w;
- else
- *out++ = 0;
-
- in += 4;
- count --;
- }
- }
-}
-
-
-/*
- * 'cupsImageLut()' - Adjust all pixel values with the given LUT.
- */
-
-void
-cupsImageLut(cups_ib_t *pixels, /* IO - Input/output pixels */
- int count, /* I - Number of pixels/bytes to adjust */
- const cups_ib_t *lut) /* I - Lookup table */
-{
- while (count > 0)
- {
- *pixels = lut[*pixels];
- pixels ++;
- count --;
- }
-}
-
-
-/*
- * 'cupsImageRGBAdjust()' - Adjust the hue and saturation of the given RGB colors.
- */
-
-void
-cupsImageRGBAdjust(cups_ib_t *pixels, /* IO - Input/output pixels */
- int count, /* I - Number of pixels to adjust */
- int saturation,/* I - Color saturation (%) */
- int hue) /* I - Color hue (degrees) */
-{
- int i, j, k; /* Looping vars */
- float mat[3][3]; /* Color adjustment matrix */
- static int last_sat = 100, /* Last saturation used */
- last_hue = 0; /* Last hue used */
- static cups_clut_t *lut = NULL; /* Lookup table for matrix */
-
-
- if (saturation != last_sat || hue != last_hue || !lut)
- {
- /*
- * Build the color adjustment matrix...
- */
-
- ident(mat);
- saturate(mat, saturation * 0.01);
- huerotate(mat, (float)hue);
-
- /*
- * Allocate memory for the lookup table...
- */
-
- if (lut == NULL)
- lut = calloc(3, sizeof(cups_clut_t));
-
- if (lut == NULL)
- return;
-
- /*
- * Convert the matrix into a 3x3 array of lookup tables...
- */
-
- for (i = 0; i < 3; i ++)
- for (j = 0; j < 3; j ++)
- for (k = 0; k < 256; k ++)
- lut[i][j][k] = mat[i][j] * k + 0.5;
-
- /*
- * Save the saturation and hue to compare later...
- */
-
- last_sat = saturation;
- last_hue = hue;
- }
-
- /*
- * Adjust each pixel in the given buffer.
- */
-
- while (count > 0)
- {
- i = lut[0][0][pixels[0]] +
- lut[1][0][pixels[1]] +
- lut[2][0][pixels[2]];
- if (i < 0)
- pixels[0] = 0;
- else if (i > 255)
- pixels[0] = 255;
- else
- pixels[0] = i;
-
- i = lut[0][1][pixels[0]] +
- lut[1][1][pixels[1]] +
- lut[2][1][pixels[2]];
- if (i < 0)
- pixels[1] = 0;
- else if (i > 255)
- pixels[1] = 255;
- else
- pixels[1] = i;
-
- i = lut[0][2][pixels[0]] +
- lut[1][2][pixels[1]] +
- lut[2][2][pixels[2]];
- if (i < 0)
- pixels[2] = 0;
- else if (i > 255)
- pixels[2] = 255;
- else
- pixels[2] = i;
-
- count --;
- pixels += 3;
- }
-}
-
-
-/*
- * 'cupsImageRGBToBlack()' - Convert RGB data to black.
- */
-
-void
-cupsImageRGBToBlack(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- if (cupsImageHaveProfile)
- while (count > 0)
- {
- *out++ = cupsImageDensity[255 - (31 * in[0] + 61 * in[1] + 8 * in[2]) / 100];
- in += 3;
- count --;
- }
- else
- while (count > 0)
- {
- *out++ = 255 - (31 * in[0] + 61 * in[1] + 8 * in[2]) / 100;
- in += 3;
- count --;
- }
-}
-
-
-/*
- * 'cupsImageRGBToCMY()' - Convert RGB colors to CMY.
- */
-
-void
-cupsImageRGBToCMY(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- int c, m, y, k; /* CMYK values */
- int cc, cm, cy; /* Calibrated CMY values */
-
-
- if (cupsImageHaveProfile)
- while (count > 0)
- {
- c = 255 - *in++;
- m = 255 - *in++;
- y = 255 - *in++;
- k = min(c, min(m, y));
- c -= k;
- m -= k;
- y -= k;
-
- cc = cupsImageMatrix[0][0][c] +
- cupsImageMatrix[0][1][m] +
- cupsImageMatrix[0][2][y] + k;
- cm = cupsImageMatrix[1][0][c] +
- cupsImageMatrix[1][1][m] +
- cupsImageMatrix[1][2][y] + k;
- cy = cupsImageMatrix[2][0][c] +
- cupsImageMatrix[2][1][m] +
- cupsImageMatrix[2][2][y] + k;
-
- if (cc < 0)
- *out++ = 0;
- else if (cc > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cc];
-
- if (cm < 0)
- *out++ = 0;
- else if (cm > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cm];
-
- if (cy < 0)
- *out++ = 0;
- else if (cy > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cy];
-
- count --;
- }
- else
- while (count > 0)
- {
- c = 255 - in[0];
- m = 255 - in[1];
- y = 255 - in[2];
- k = min(c, min(m, y));
-
- *out++ = (255 - in[1] / 4) * (c - k) / 255 + k;
- *out++ = (255 - in[2] / 4) * (m - k) / 255 + k;
- *out++ = (255 - in[0] / 4) * (y - k) / 255 + k;
- in += 3;
- count --;
- }
-}
-
-
-/*
- * 'cupsImageRGBToCMYK()' - Convert RGB colors to CMYK.
- */
-
-void
-cupsImageRGBToCMYK(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- int c, m, y, k, /* CMYK values */
- km; /* Maximum K value */
- int cc, cm, cy; /* Calibrated CMY values */
-
-
- if (cupsImageHaveProfile)
- while (count > 0)
- {
- c = 255 - *in++;
- m = 255 - *in++;
- y = 255 - *in++;
- k = min(c, min(m, y));
-
- if ((km = max(c, max(m, y))) > k)
- k = k * k * k / (km * km);
-
- c -= k;
- m -= k;
- y -= k;
-
- cc = (cupsImageMatrix[0][0][c] +
- cupsImageMatrix[0][1][m] +
- cupsImageMatrix[0][2][y]);
- cm = (cupsImageMatrix[1][0][c] +
- cupsImageMatrix[1][1][m] +
- cupsImageMatrix[1][2][y]);
- cy = (cupsImageMatrix[2][0][c] +
- cupsImageMatrix[2][1][m] +
- cupsImageMatrix[2][2][y]);
-
- if (cc < 0)
- *out++ = 0;
- else if (cc > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cc];
-
- if (cm < 0)
- *out++ = 0;
- else if (cm > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cm];
-
- if (cy < 0)
- *out++ = 0;
- else if (cy > 255)
- *out++ = cupsImageDensity[255];
- else
- *out++ = cupsImageDensity[cy];
-
- *out++ = cupsImageDensity[k];
-
- count --;
- }
- else
- while (count > 0)
- {
- c = 255 - *in++;
- m = 255 - *in++;
- y = 255 - *in++;
- k = min(c, min(m, y));
-
- if ((km = max(c, max(m, y))) > k)
- k = k * k * k / (km * km);
-
- c -= k;
- m -= k;
- y -= k;
-
- *out++ = c;
- *out++ = m;
- *out++ = y;
- *out++ = k;
-
- count --;
- }
-}
-
-
-/*
- * 'cupsImageRGBToRGB()' - Convert RGB colors to device-dependent RGB.
- */
-
-void
-cupsImageRGBToRGB(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- int c, m, y, k; /* CMYK values */
- int cr, cg, cb; /* Calibrated RGB values */
-
-
- if (cupsImageHaveProfile)
- {
- while (count > 0)
- {
- c = 255 - *in++;
- m = 255 - *in++;
- y = 255 - *in++;
- k = min(c, min(m, y));
- c -= k;
- m -= k;
- y -= k;
-
- cr = cupsImageMatrix[0][0][c] +
- cupsImageMatrix[0][1][m] +
- cupsImageMatrix[0][2][y] + k;
- cg = cupsImageMatrix[1][0][c] +
- cupsImageMatrix[1][1][m] +
- cupsImageMatrix[1][2][y] + k;
- cb = cupsImageMatrix[2][0][c] +
- cupsImageMatrix[2][1][m] +
- cupsImageMatrix[2][2][y] + k;
-
- if (cr < 0)
- *out++ = 255;
- else if (cr > 255)
- *out++ = 255 - cupsImageDensity[255];
- else
- *out++ = 255 - cupsImageDensity[cr];
-
- if (cg < 0)
- *out++ = 255;
- else if (cg > 255)
- *out++ = 255 - cupsImageDensity[255];
- else
- *out++ = 255 - cupsImageDensity[cg];
-
- if (cb < 0)
- *out++ = 255;
- else if (cb > 255)
- *out++ = 255 - cupsImageDensity[255];
- else
- *out++ = 255 - cupsImageDensity[cb];
-
- count --;
- }
- }
- else
- {
- if (in != out)
- memcpy(out, in, count * 3);
-
- if (cupsImageColorSpace == CUPS_CSPACE_CIELab ||
- cupsImageColorSpace >= CUPS_CSPACE_ICC1)
- {
- while (count > 0)
- {
- rgb_to_lab(out);
-
- out += 3;
- count --;
- }
- }
- else if (cupsImageColorSpace == CUPS_CSPACE_CIEXYZ)
- {
- while (count > 0)
- {
- rgb_to_xyz(out);
-
- out += 3;
- count --;
- }
- }
- }
-}
-
-
-/*
- * 'cupsImageRGBToWhite()' - Convert RGB colors to luminance.
- */
-
-void
-cupsImageRGBToWhite(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- if (cupsImageHaveProfile)
- {
- while (count > 0)
- {
- *out++ = 255 - cupsImageDensity[255 - (31 * in[0] + 61 * in[1] + 8 * in[2]) / 100];
- in += 3;
- count --;
- }
- }
- else
- {
- while (count > 0)
- {
- *out++ = (31 * in[0] + 61 * in[1] + 8 * in[2]) / 100;
- in += 3;
- count --;
- }
- }
-}
-
-
-/*
- * 'cupsImageSetProfile()' - Set the device color profile.
- */
-
-void
-cupsImageSetProfile(float d, /* I - Ink/marker density */
- float g, /* I - Ink/marker gamma */
- float matrix[3][3]) /* I - Color transform matrix */
-{
- int i, j, k; /* Looping vars */
- float m; /* Current matrix value */
- int *im; /* Pointer into cupsImageMatrix */
-
-
- /*
- * Allocate memory for the profile data...
- */
-
- if (cupsImageMatrix == NULL)
- cupsImageMatrix = calloc(3, sizeof(cups_clut_t));
-
- if (cupsImageMatrix == NULL)
- return;
-
- if (cupsImageDensity == NULL)
- cupsImageDensity = calloc(256, sizeof(int));
-
- if (cupsImageDensity == NULL)
- return;
-
- /*
- * Populate the profile lookup tables...
- */
-
- cupsImageHaveProfile = 1;
-
- for (i = 0, im = cupsImageMatrix[0][0]; i < 3; i ++)
- for (j = 0; j < 3; j ++)
- for (k = 0, m = matrix[i][j]; k < 256; k ++)
- *im++ = (int)(k * m + 0.5);
-
- for (k = 0, im = cupsImageDensity; k < 256; k ++)
- *im++ = 255.0 * d * pow((float)k / 255.0, g) + 0.5;
-}
-
-
-/*
- * 'cupsImageSetRasterColorSpace()' - Set the destination colorspace.
- */
-
-void
-cupsImageSetRasterColorSpace(
- cups_cspace_t cs) /* I - Destination colorspace */
-{
- /*
- * Set the destination colorspace...
- */
-
- cupsImageColorSpace = cs;
-
- /*
- * Don't use color profiles in colorimetric colorspaces...
- */
-
- if (cs == CUPS_CSPACE_CIEXYZ ||
- cs == CUPS_CSPACE_CIELab ||
- cs >= CUPS_CSPACE_ICC1)
- cupsImageHaveProfile = 0;
-}
-
-
-/*
- * 'cupsImageWhiteToBlack()' - Convert luminance colors to black.
- */
-
-void
-cupsImageWhiteToBlack(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- if (cupsImageHaveProfile)
- while (count > 0)
- {
- *out++ = cupsImageDensity[255 - *in++];
- count --;
- }
- else
- while (count > 0)
- {
- *out++ = 255 - *in++;
- count --;
- }
-}
-
-
-/*
- * 'cupsImageWhiteToCMY()' - Convert luminance colors to CMY.
- */
-
-void
-cupsImageWhiteToCMY(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- if (cupsImageHaveProfile)
- while (count > 0)
- {
- out[0] = cupsImageDensity[255 - *in++];
- out[1] = out[0];
- out[2] = out[0];
- out += 3;
- count --;
- }
- else
- while (count > 0)
- {
- *out++ = 255 - *in;
- *out++ = 255 - *in;
- *out++ = 255 - *in++;
- count --;
- }
-}
-
-
-/*
- * 'cupsImageWhiteToCMYK()' - Convert luminance colors to CMYK.
- */
-
-void
-cupsImageWhiteToCMYK(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- if (cupsImageHaveProfile)
- while (count > 0)
- {
- *out++ = 0;
- *out++ = 0;
- *out++ = 0;
- *out++ = cupsImageDensity[255 - *in++];
- count --;
- }
- else
- while (count > 0)
- {
- *out++ = 0;
- *out++ = 0;
- *out++ = 0;
- *out++ = 255 - *in++;
- count --;
- }
-}
-
-
-/*
- * 'cupsImageWhiteToRGB()' - Convert luminance data to RGB.
- */
-
-void
-cupsImageWhiteToRGB(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- if (cupsImageHaveProfile)
- {
- while (count > 0)
- {
- out[0] = 255 - cupsImageDensity[255 - *in++];
- out[1] = out[0];
- out[2] = out[0];
- out += 3;
- count --;
- }
- }
- else
- {
- while (count > 0)
- {
- *out++ = *in;
- *out++ = *in;
- *out++ = *in++;
-
- if (cupsImageColorSpace == CUPS_CSPACE_CIELab ||
- cupsImageColorSpace >= CUPS_CSPACE_ICC1)
- rgb_to_lab(out - 3);
- else if (cupsImageColorSpace == CUPS_CSPACE_CIEXYZ)
- rgb_to_xyz(out - 3);
-
- count --;
- }
- }
-}
-
-
-/*
- * 'cupsImageWhiteToWhite()' - Convert luminance colors to device-dependent
- * luminance.
- */
-
-void
-cupsImageWhiteToWhite(
- const cups_ib_t *in, /* I - Input pixels */
- cups_ib_t *out, /* I - Output pixels */
- int count) /* I - Number of pixels */
-{
- if (cupsImageHaveProfile)
- while (count > 0)
- {
- *out++ = 255 - cupsImageDensity[255 - *in++];
- count --;
- }
- else if (in != out)
- memcpy(out, in, count);
-}
-
-
-/*
- * 'cielab()' - Map CIE Lab transformation...
- */
-
-static float /* O - Adjusted color value */
-cielab(float x, /* I - Raw color value */
- float xn) /* I - Whitepoint color value */
-{
- float x_xn; /* Fraction of whitepoint */
-
-
- x_xn = x / xn;
-
- if (x_xn > 0.008856)
- return (cbrt(x_xn));
- else
- return (7.787 * x_xn + 16.0 / 116.0);
-}
-
-
-/*
- * 'huerotate()' - Rotate the hue, maintaining luminance.
- */
-
-static void
-huerotate(float mat[3][3], /* I - Matrix to append to */
- float rot) /* I - Hue rotation in degrees */
-{
- float hmat[3][3]; /* Hue matrix */
- float lx, ly, lz; /* Luminance vector */
- float xrs, xrc; /* X rotation sine/cosine */
- float yrs, yrc; /* Y rotation sine/cosine */
- float zrs, zrc; /* Z rotation sine/cosine */
- float zsx, zsy; /* Z shear x/y */
-
-
- /*
- * Load the identity matrix...
- */
-
- ident(hmat);
-
- /*
- * Rotate the grey vector into positive Z...
- */
-
- xrs = M_SQRT1_2;
- xrc = M_SQRT1_2;
- xrotate(hmat,xrs,xrc);
-
- yrs = -1.0 / sqrt(3.0);
- yrc = -M_SQRT2 * yrs;
- yrotate(hmat,yrs,yrc);
-
- /*
- * Shear the space to make the luminance plane horizontal...
- */
-
- xform(hmat, 0.3086, 0.6094, 0.0820, &lx, &ly, &lz);
- zsx = lx / lz;
- zsy = ly / lz;
- zshear(hmat, zsx, zsy);
-
- /*
- * Rotate the hue...
- */
-
- zrs = sin(rot * M_PI / 180.0);
- zrc = cos(rot * M_PI / 180.0);
-
- zrotate(hmat, zrs, zrc);
-
- /*
- * Unshear the space to put the luminance plane back...
- */
-
- zshear(hmat, -zsx, -zsy);
-
- /*
- * Rotate the grey vector back into place...
- */
-
- yrotate(hmat, -yrs, yrc);
- xrotate(hmat, -xrs, xrc);
-
- /*
- * Append it to the current matrix...
- */
-
- mult(hmat, mat, mat);
-}
-
-
-/*
- * 'ident()' - Make an identity matrix.
- */
-
-static void
-ident(float mat[3][3]) /* I - Matrix to identify */
-{
- mat[0][0] = 1.0;
- mat[0][1] = 0.0;
- mat[0][2] = 0.0;
- mat[1][0] = 0.0;
- mat[1][1] = 1.0;
- mat[1][2] = 0.0;
- mat[2][0] = 0.0;
- mat[2][1] = 0.0;
- mat[2][2] = 1.0;
-}
-
-
-/*
- * 'mult()' - Multiply two matrices.
- */
-
-static void
-mult(float a[3][3], /* I - First matrix */
- float b[3][3], /* I - Second matrix */
- float c[3][3]) /* I - Destination matrix */
-{
- int x, y; /* Looping vars */
- float temp[3][3]; /* Temporary matrix */
-
-
- /*
- * Multiply a and b, putting the result in temp...
- */
-
- for (y = 0; y < 3; y ++)
- for (x = 0; x < 3; x ++)
- temp[y][x] = b[y][0] * a[0][x] +
- b[y][1] * a[1][x] +
- b[y][2] * a[2][x];
-
- /*
- * Copy temp to c (that way c can be a pointer to a or b).
- */
-
- memcpy(c, temp, sizeof(temp));
-}
-
-
-/*
- * 'rgb_to_lab()' - Convert an RGB color to CIE Lab.
- */
-
-static void
-rgb_to_lab(cups_ib_t *val) /* IO - Color value */
-{
- float r, /* Red value */
- g, /* Green value */
- b, /* Blue value */
- ciex, /* CIE X value */
- ciey, /* CIE Y value */
- ciez, /* CIE Z value */
- ciey_yn, /* Normalized luminance */
- ciel, /* CIE L value */
- ciea, /* CIE a value */
- cieb; /* CIE b value */
-
-
- /*
- * Convert sRGB to linear RGB...
- */
-
- r = pow((val[0] / 255.0 + 0.055) / 1.055, 2.4);
- g = pow((val[1] / 255.0 + 0.055) / 1.055, 2.4);
- b = pow((val[2] / 255.0 + 0.055) / 1.055, 2.4);
-
- /*
- * Convert to CIE XYZ...
- */
-
- ciex = 0.412453 * r + 0.357580 * g + 0.180423 * b;
- ciey = 0.212671 * r + 0.715160 * g + 0.072169 * b;
- ciez = 0.019334 * r + 0.119193 * g + 0.950227 * b;
-
- /*
- * Normalize and convert to CIE Lab...
- */
-
- ciey_yn = ciey / D65_Y;
-
- if (ciey_yn > 0.008856)
- ciel = 116 * cbrt(ciey_yn) - 16;
- else
- ciel = 903.3 * ciey_yn;
-
-/*ciel = ciel;*/
- ciea = 500 * (cielab(ciex, D65_X) - cielab(ciey, D65_Y));
- cieb = 200 * (cielab(ciey, D65_Y) - cielab(ciez, D65_Z));
-
- /*
- * Scale the L value and bias the a and b values by 128 so that all
- * numbers are from 0 to 255.
- */
-
- ciel = ciel * 2.55 + 0.5;
- ciea += 128.5;
- cieb += 128.5;
-
- /*
- * Output 8-bit values...
- */
-
- if (ciel < 0.0)
- val[0] = 0;
- else if (ciel < 255.0)
- val[0] = (int)ciel;
- else
- val[0] = 255;
-
- if (ciea < 0.0)
- val[1] = 0;
- else if (ciea < 255.0)
- val[1] = (int)ciea;
- else
- val[1] = 255;
-
- if (cieb < 0.0)
- val[2] = 0;
- else if (cieb < 255.0)
- val[2] = (int)cieb;
- else
- val[2] = 255;
-}
-
-
-/*
- * 'rgb_to_xyz()' - Convert an RGB color to CIE XYZ.
- */
-
-static void
-rgb_to_xyz(cups_ib_t *val) /* IO - Color value */
-{
- float r, /* Red value */
- g, /* Green value */
- b, /* Blue value */
- ciex, /* CIE X value */
- ciey, /* CIE Y value */
- ciez; /* CIE Z value */
-
-
- /*
- * Convert sRGB to linear RGB...
- */
-
- r = pow((val[0] / 255.0 + 0.055) / 1.055, 2.4);
- g = pow((val[1] / 255.0 + 0.055) / 1.055, 2.4);
- b = pow((val[2] / 255.0 + 0.055) / 1.055, 2.4);
-
- /*
- * Convert to CIE XYZ...
- */
-
- ciex = 0.412453 * r + 0.357580 * g + 0.180423 * b;
- ciey = 0.212671 * r + 0.715160 * g + 0.072169 * b;
- ciez = 0.019334 * r + 0.119193 * g + 0.950227 * b;
-
- /*
- * Encode as 8-bit XYZ...
- */
-
- if (ciex < 0.0f)
- val[0] = 0;
- else if (ciex < 1.1f)
- val[0] = (int)(231.8181f * ciex + 0.5);
- else
- val[0] = 255;
-
- if (ciey < 0.0f)
- val[1] = 0;
- else if (ciey < 1.1f)
- val[1] = (int)(231.8181f * ciey + 0.5);
- else
- val[1] = 255;
-
- if (ciez < 0.0f)
- val[2] = 0;
- else if (ciez < 1.1f)
- val[2] = (int)(231.8181f * ciez + 0.5);
- else
- val[2] = 255;
-}
-
-
-/*
- * 'saturate()' - Make a saturation matrix.
- */
-
-static void
-saturate(float mat[3][3], /* I - Matrix to append to */
- float sat) /* I - Desired color saturation */
-{
- float smat[3][3]; /* Saturation matrix */
-
-
- smat[0][0] = (1.0 - sat) * 0.3086 + sat;
- smat[0][1] = (1.0 - sat) * 0.3086;
- smat[0][2] = (1.0 - sat) * 0.3086;
- smat[1][0] = (1.0 - sat) * 0.6094;
- smat[1][1] = (1.0 - sat) * 0.6094 + sat;
- smat[1][2] = (1.0 - sat) * 0.6094;
- smat[2][0] = (1.0 - sat) * 0.0820;
- smat[2][1] = (1.0 - sat) * 0.0820;
- smat[2][2] = (1.0 - sat) * 0.0820 + sat;
-
- mult(smat, mat, mat);
-}
-
-
-/*
- * 'xform()' - Transform a 3D point using a matrix...
- */
-
-static void
-xform(float mat[3][3], /* I - Matrix */
- float x, /* I - Input X coordinate */
- float y, /* I - Input Y coordinate */
- float z, /* I - Input Z coordinate */
- float *tx, /* O - Output X coordinate */
- float *ty, /* O - Output Y coordinate */
- float *tz) /* O - Output Z coordinate */
-{
- *tx = x * mat[0][0] + y * mat[1][0] + z * mat[2][0];
- *ty = x * mat[0][1] + y * mat[1][1] + z * mat[2][1];
- *tz = x * mat[0][2] + y * mat[1][2] + z * mat[2][2];
-}
-
-
-/*
- * 'xrotate()' - Rotate about the x (red) axis...
- */
-
-static void
-xrotate(float mat[3][3], /* I - Matrix */
- float rs, /* I - Rotation angle sine */
- float rc) /* I - Rotation angle cosine */
-{
- float rmat[3][3]; /* I - Rotation matrix */
-
-
- rmat[0][0] = 1.0;
- rmat[0][1] = 0.0;
- rmat[0][2] = 0.0;
-
- rmat[1][0] = 0.0;
- rmat[1][1] = rc;
- rmat[1][2] = rs;
-
- rmat[2][0] = 0.0;
- rmat[2][1] = -rs;
- rmat[2][2] = rc;
-
- mult(rmat, mat, mat);
-}
-
-
-/*
- * 'yrotate()' - Rotate about the y (green) axis...
- */
-
-static void
-yrotate(float mat[3][3], /* I - Matrix */
- float rs, /* I - Rotation angle sine */
- float rc) /* I - Rotation angle cosine */
-{
- float rmat[3][3]; /* I - Rotation matrix */
-
-
- rmat[0][0] = rc;
- rmat[0][1] = 0.0;
- rmat[0][2] = -rs;
-
- rmat[1][0] = 0.0;
- rmat[1][1] = 1.0;
- rmat[1][2] = 0.0;
-
- rmat[2][0] = rs;
- rmat[2][1] = 0.0;
- rmat[2][2] = rc;
-
- mult(rmat,mat,mat);
-}
-
-
-/*
- * 'zrotate()' - Rotate about the z (blue) axis...
- */
-
-static void
-zrotate(float mat[3][3], /* I - Matrix */
- float rs, /* I - Rotation angle sine */
- float rc) /* I - Rotation angle cosine */
-{
- float rmat[3][3]; /* I - Rotation matrix */
-
-
- rmat[0][0] = rc;
- rmat[0][1] = rs;
- rmat[0][2] = 0.0;
-
- rmat[1][0] = -rs;
- rmat[1][1] = rc;
- rmat[1][2] = 0.0;
-
- rmat[2][0] = 0.0;
- rmat[2][1] = 0.0;
- rmat[2][2] = 1.0;
-
- mult(rmat,mat,mat);
-}
-
-
-/*
- * 'zshear()' - Shear z using x and y...
- */
-
-static void
-zshear(float mat[3][3], /* I - Matrix */
- float dx, /* I - X shear */
- float dy) /* I - Y shear */
-{
- float smat[3][3]; /* Shear matrix */
-
-
- smat[0][0] = 1.0;
- smat[0][1] = 0.0;
- smat[0][2] = dx;
-
- smat[1][0] = 0.0;
- smat[1][1] = 1.0;
- smat[1][2] = dy;
-
- smat[2][0] = 0.0;
- smat[2][1] = 0.0;
- smat[2][2] = 1.0;
-
- mult(smat, mat, mat);
-}
-
-
-/*
- * End of "$Id: image-colorspace.c 9748 2011-05-06 21:02:44Z mike $".
- */
diff --git a/filter/image-gif.c b/filter/image-gif.c
deleted file mode 100644
index 7477c0c6..00000000
--- a/filter/image-gif.c
+++ /dev/null
@@ -1,696 +0,0 @@
-/*
- * "$Id: image-gif.c 9865 2011-08-06 04:38:04Z mike $"
- *
- * GIF image routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageReadGIF() - Read a GIF image file.
- * gif_get_block() - Read a GIF data block...
- * gif_get_code() - Get a LZW code from the file...
- * gif_read_cmap() - Read the colormap from a GIF file...
- * gif_read_image() - Read a GIF image stream...
- * gif_read_lzw() - Read a byte from the LZW stream...
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-
-/*
- * GIF definitions...
- */
-
-#define GIF_INTERLACE 0x40
-#define GIF_COLORMAP 0x80
-#define GIF_MAX_BITS 12
-
-typedef cups_ib_t gif_cmap_t[256][4];
-typedef short gif_table_t[4096];
-
-
-/*
- * Local globals...
- */
-
-static int gif_eof = 0; /* Did we hit EOF? */
-
-
-/*
- * Local functions...
- */
-
-static int gif_get_block(FILE *fp, unsigned char *buffer);
-static int gif_get_code (FILE *fp, int code_size, int first_time);
-static int gif_read_cmap(FILE *fp, int ncolors, gif_cmap_t cmap,
- int *gray);
-static int gif_read_image(FILE *fp, cups_image_t *img, gif_cmap_t cmap,
- int interlace);
-static int gif_read_lzw(FILE *fp, int first_time, int input_code_size);
-
-
-/*
- * '_cupsImageReadGIF()' - Read a GIF image file.
- */
-
-int /* O - Read status */
-_cupsImageReadGIF(
- cups_image_t *img, /* IO - cupsImage */
- FILE *fp, /* I - cupsImage file */
- cups_icspace_t primary, /* I - Primary choice for colorspace */
- cups_icspace_t secondary, /* I - Secondary choice for colorspace */
- int saturation, /* I - Color saturation (%) */
- int hue, /* I - Color hue (degrees) */
- const cups_ib_t *lut) /* I - Lookup table for gamma/brightness */
-{
- unsigned char buf[1024]; /* Input buffer */
- gif_cmap_t cmap; /* Colormap */
- int i, /* Looping var */
- bpp, /* Bytes per pixel */
- gray, /* Grayscale image? */
- ncolors, /* Bits per pixel */
- transparent; /* Transparent color index */
-
-
- /*
- * GIF files are either grayscale or RGB - no CMYK...
- */
-
- if (primary == CUPS_IMAGE_RGB_CMYK)
- primary = CUPS_IMAGE_RGB;
-
- /*
- * Read the header; we already know it is a GIF file...
- */
-
- fread(buf, 13, 1, fp);
-
- img->xsize = (buf[7] << 8) | buf[6];
- img->ysize = (buf[9] << 8) | buf[8];
- ncolors = 2 << (buf[10] & 0x07);
- gray = primary == CUPS_IMAGE_BLACK || primary == CUPS_IMAGE_WHITE;
-
- if (buf[10] & GIF_COLORMAP)
- if (gif_read_cmap(fp, ncolors, cmap, &gray))
- {
- fclose(fp);
- return (-1);
- }
-
- transparent = -1;
-
- for (;;)
- {
- switch (getc(fp))
- {
- case ';' : /* End of image */
- fclose(fp);
- return (-1); /* Early end of file */
-
- case '!' : /* Extension record */
- buf[0] = getc(fp);
- if (buf[0] == 0xf9) /* Graphic Control Extension */
- {
- gif_get_block(fp, buf);
- if (buf[0] & 1) /* Get transparent color index */
- transparent = buf[3];
- }
-
- while (gif_get_block(fp, buf) != 0);
- break;
-
- case ',' : /* cupsImage data */
- fread(buf, 9, 1, fp);
-
- if (buf[8] & GIF_COLORMAP)
- {
- ncolors = 2 << (buf[8] & 0x07);
- gray = primary == CUPS_IMAGE_BLACK || primary == CUPS_IMAGE_WHITE;
-
- if (gif_read_cmap(fp, ncolors, cmap, &gray))
- {
- fclose(fp);
- return (-1);
- }
- }
-
- if (transparent >= 0)
- {
- /*
- * Make transparent color white...
- */
-
- cmap[transparent][0] = 255;
- cmap[transparent][1] = 255;
- cmap[transparent][2] = 255;
- }
-
- if (gray)
- {
- switch (secondary)
- {
- case CUPS_IMAGE_CMYK :
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageWhiteToCMYK(cmap[i], cmap[i], 1);
- break;
- case CUPS_IMAGE_CMY :
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageWhiteToCMY(cmap[i], cmap[i], 1);
- break;
- case CUPS_IMAGE_BLACK :
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageWhiteToBlack(cmap[i], cmap[i], 1);
- break;
- case CUPS_IMAGE_WHITE :
- break;
- case CUPS_IMAGE_RGB :
- case CUPS_IMAGE_RGB_CMYK :
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageWhiteToRGB(cmap[i], cmap[i], 1);
- break;
- }
-
- img->colorspace = secondary;
- }
- else
- {
- if (hue != 0 || saturation != 100)
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageRGBAdjust(cmap[i], 1, saturation, hue);
-
- switch (primary)
- {
- case CUPS_IMAGE_CMYK :
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageRGBToCMYK(cmap[i], cmap[i], 1);
- break;
- case CUPS_IMAGE_CMY :
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageRGBToCMY(cmap[i], cmap[i], 1);
- break;
- case CUPS_IMAGE_BLACK :
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageRGBToBlack(cmap[i], cmap[i], 1);
- break;
- case CUPS_IMAGE_WHITE :
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageRGBToWhite(cmap[i], cmap[i], 1);
- break;
- case CUPS_IMAGE_RGB :
- case CUPS_IMAGE_RGB_CMYK :
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageRGBToRGB(cmap[i], cmap[i], 1);
- break;
- }
-
- img->colorspace = primary;
- }
-
- if (lut)
- {
- bpp = cupsImageGetDepth(img);
-
- for (i = ncolors - 1; i >= 0; i --)
- cupsImageLut(cmap[i], bpp, lut);
- }
-
- img->xsize = (buf[5] << 8) | buf[4];
- img->ysize = (buf[7] << 8) | buf[6];
-
- /*
- * Check the dimensions of the image; since the dimensions are
- * a 16-bit integer we just need to check for 0...
- */
-
- if (img->xsize == 0 || img->ysize == 0)
- {
- fprintf(stderr, "DEBUG: Bad GIF image dimensions: %dx%d\n",
- img->xsize, img->ysize);
- fclose(fp);
- return (1);
- }
-
- i = gif_read_image(fp, img, cmap, buf[8] & GIF_INTERLACE);
- fclose(fp);
- return (i);
- }
- }
-}
-
-
-/*
- * 'gif_get_block()' - Read a GIF data block...
- */
-
-static int /* O - Number characters read */
-gif_get_block(FILE *fp, /* I - File to read from */
- unsigned char *buf) /* I - Input buffer */
-{
- int count; /* Number of character to read */
-
-
- /*
- * Read the count byte followed by the data from the file...
- */
-
- if ((count = getc(fp)) == EOF)
- {
- gif_eof = 1;
- return (-1);
- }
- else if (count == 0)
- gif_eof = 1;
- else if (fread(buf, 1, count, fp) < count)
- {
- gif_eof = 1;
- return (-1);
- }
- else
- gif_eof = 0;
-
- return (count);
-}
-
-
-/*
- * 'gif_get_code()' - Get a LZW code from the file...
- */
-
-static int /* O - LZW code */
-gif_get_code(FILE *fp, /* I - File to read from */
- int code_size, /* I - Size of code in bits */
- int first_time) /* I - 1 = first time, 0 = not first time */
-{
- unsigned i, j, /* Looping vars */
- ret; /* Return value */
- int count; /* Number of bytes read */
- static unsigned char buf[280]; /* Input buffer */
- static unsigned curbit, /* Current bit */
- lastbit, /* Last bit in buffer */
- done, /* Done with this buffer? */
- last_byte; /* Last byte in buffer */
- static const unsigned char bits[8] = /* Bit masks for codes */
- {
- 0x01, 0x02, 0x04, 0x08,
- 0x10, 0x20, 0x40, 0x80
- };
-
-
- if (first_time)
- {
- /*
- * Just initialize the input buffer...
- */
-
- curbit = 0;
- lastbit = 0;
- last_byte = 0;
- done = 0;
-
- return (0);
- }
-
- if ((curbit + code_size) >= lastbit)
- {
- /*
- * Don't have enough bits to hold the code...
- */
-
- if (done)
- return (-1); /* Sorry, no more... */
-
- /*
- * Move last two bytes to front of buffer...
- */
-
- if (last_byte > 1)
- {
- buf[0] = buf[last_byte - 2];
- buf[1] = buf[last_byte - 1];
- last_byte = 2;
- }
- else if (last_byte == 1)
- {
- buf[0] = buf[last_byte - 1];
- last_byte = 1;
- }
-
- /*
- * Read in another buffer...
- */
-
- if ((count = gif_get_block(fp, buf + last_byte)) <= 0)
- {
- /*
- * Whoops, no more data!
- */
-
- done = 1;
- return (-1);
- }
-
- /*
- * Update buffer state...
- */
-
- curbit = (curbit - lastbit) + 8 * last_byte;
- last_byte += count;
- lastbit = last_byte * 8;
- }
-
- for (ret = 0, i = curbit + code_size - 1, j = code_size;
- j > 0;
- i --, j --)
- ret = (ret << 1) | ((buf[i / 8] & bits[i & 7]) != 0);
-
- curbit += code_size;
-
- return ret;
-}
-
-
-/*
- * 'gif_read_cmap()' - Read the colormap from a GIF file...
- */
-
-static int /* O - -1 on error, 0 on success */
-gif_read_cmap(FILE *fp, /* I - File to read from */
- int ncolors, /* I - Number of colors in file */
- gif_cmap_t cmap, /* O - Colormap information */
- int *gray) /* IO - Is the image grayscale? */
-{
- int i; /* Looping var */
-
-
- /*
- * Read the colormap...
- */
-
- for (i = 0; i < ncolors; i ++)
- if (fread(cmap[i], 3, 1, fp) < 1)
- return (-1);
-
- /*
- * Check to see if the colormap is a grayscale ramp...
- */
-
- for (i = 0; i < ncolors; i ++)
- if (cmap[i][0] != cmap[i][1] || cmap[i][1] != cmap[i][2])
- break;
-
- if (i == ncolors)
- {
- *gray = 1;
- return (0);
- }
-
- /*
- * If this needs to be a grayscale image, convert the RGB values to
- * luminance values...
- */
-
- if (*gray)
- for (i = 0; i < ncolors; i ++)
- cmap[i][0] = (cmap[i][0] * 31 + cmap[i][1] * 61 + cmap[i][2] * 8) / 100;
-
- return (0);
-}
-
-
-/*
- * 'gif_read_image()' - Read a GIF image stream...
- */
-
-static int /* I - 0 = success, -1 = failure */
-gif_read_image(FILE *fp, /* I - Input file */
- cups_image_t *img, /* I - cupsImage pointer */
- gif_cmap_t cmap, /* I - Colormap */
- int interlace) /* I - Non-zero = interlaced image */
-{
- unsigned char code_size; /* Code size */
- cups_ib_t *pixels, /* Pixel buffer */
- *temp; /* Current pixel */
- int xpos, /* Current X position */
- ypos, /* Current Y position */
- pass; /* Current pass */
- int pixel; /* Current pixel */
- int bpp; /* Bytes per pixel */
- static const int xpasses[4] = /* X interleaving */
- { 8, 8, 4, 2 },
- ypasses[5] = /* Y interleaving */
- { 0, 4, 2, 1, 999999 };
-
-
- bpp = cupsImageGetDepth(img);
- pixels = calloc(bpp, img->xsize);
- xpos = 0;
- ypos = 0;
- pass = 0;
- code_size = getc(fp);
-
- if (!pixels)
- return (-1);
-
- if (code_size > GIF_MAX_BITS || gif_read_lzw(fp, 1, code_size) < 0)
- {
- free(pixels);
- return (-1);
- }
-
- temp = pixels;
- while ((pixel = gif_read_lzw(fp, 0, code_size)) >= 0)
- {
- switch (bpp)
- {
- case 4 :
- temp[3] = cmap[pixel][3];
- case 3 :
- temp[2] = cmap[pixel][2];
- case 2 :
- temp[1] = cmap[pixel][1];
- default :
- temp[0] = cmap[pixel][0];
- }
-
- xpos ++;
- temp += bpp;
- if (xpos == img->xsize)
- {
- _cupsImagePutRow(img, 0, ypos, img->xsize, pixels);
-
- xpos = 0;
- temp = pixels;
-
- if (interlace)
- {
- ypos += xpasses[pass];
-
- if (ypos >= img->ysize)
- {
- pass ++;
-
- ypos = ypasses[pass];
- }
- }
- else
- ypos ++;
- }
-
- if (ypos >= img->ysize)
- break;
- }
-
- free(pixels);
-
- return (0);
-}
-
-
-/*
- * 'gif_read_lzw()' - Read a byte from the LZW stream...
- */
-
-static int /* I - Byte from stream */
-gif_read_lzw(FILE *fp, /* I - File to read from */
- int first_time, /* I - 1 = first time, 0 = not first time */
- int input_code_size) /* I - Code size in bits */
-{
- int i, /* Looping var */
- code, /* Current code */
- incode; /* Input code */
- static short fresh = 0, /* 1 = empty buffers */
- code_size, /* Current code size */
- set_code_size, /* Initial code size set */
- max_code, /* Maximum code used */
- max_code_size, /* Maximum code size */
- firstcode, /* First code read */
- oldcode, /* Last code read */
- clear_code, /* Clear code for LZW input */
- end_code, /* End code for LZW input */
- *stack = NULL, /* Output stack */
- *sp; /* Current stack pointer */
- static gif_table_t *table = NULL; /* String table */
-
-
- if (first_time)
- {
- /*
- * Setup LZW state...
- */
-
- set_code_size = input_code_size;
- code_size = set_code_size + 1;
- clear_code = 1 << set_code_size;
- end_code = clear_code + 1;
- max_code_size = 2 * clear_code;
- max_code = clear_code + 2;
-
- /*
- * Allocate memory for buffers...
- */
-
- if (table == NULL)
- table = calloc(2, sizeof(gif_table_t));
-
- if (table == NULL)
- return (-1);
-
- if (stack == NULL)
- stack = calloc(8192, sizeof(short));
-
- if (stack == NULL)
- return (-1);
-
- /*
- * Initialize input buffers...
- */
-
- gif_get_code(fp, 0, 1);
-
- /*
- * Wipe the decompressor table (already mostly 0 due to the calloc above...)
- */
-
- fresh = 1;
-
- for (i = 1; i < clear_code; i ++)
- table[1][i] = i;
-
- sp = stack;
-
- return (0);
- }
- else if (fresh)
- {
- fresh = 0;
-
- do
- {
- firstcode = oldcode = gif_get_code(fp, code_size, 0);
- }
- while (firstcode == clear_code);
-
- return (firstcode & 255);
- }
- else if (!table)
- return (0);
-
- if (sp > stack)
- return ((*--sp) & 255);
-
- while ((code = gif_get_code(fp, code_size, 0)) >= 0)
- {
- if (code == clear_code)
- {
- /*
- * Clear/reset the compression table...
- */
-
- memset(table, 0, 2 * sizeof(gif_table_t));
- for (i = 1; i < clear_code; i ++)
- table[1][i] = i;
-
- code_size = set_code_size + 1;
- max_code_size = 2 * clear_code;
- max_code = clear_code + 2;
-
- sp = stack;
-
- firstcode = oldcode = gif_get_code(fp, code_size, 0);
-
- return (firstcode & 255);
- }
- else if (code == end_code || code > max_code)
- {
- unsigned char buf[260]; /* Block buffer */
-
- if (!gif_eof)
- while (gif_get_block(fp, buf) > 0);
-
- return (-2);
- }
-
- incode = code;
-
- if (code == max_code)
- {
- if (sp < (stack + 8192))
- *sp++ = firstcode;
-
- code = oldcode;
- }
-
- while (code >= clear_code && sp < (stack + 8192))
- {
- *sp++ = table[1][code];
- if (code == table[0][code])
- return (255);
-
- code = table[0][code];
- }
-
- if (sp < (stack + 8192))
- *sp++ = firstcode = table[1][code];
-
- code = max_code;
-
- if (code < 4096)
- {
- table[0][code] = oldcode;
- table[1][code] = firstcode;
- max_code ++;
-
- if (max_code >= max_code_size && max_code_size < 4096)
- {
- max_code_size *= 2;
- code_size ++;
- }
- }
-
- oldcode = incode;
-
- if (sp > stack)
- return ((*--sp) & 255);
- }
-
- return (code & 255);
-}
-
-
-/*
- * End of "$Id: image-gif.c 9865 2011-08-06 04:38:04Z mike $".
- */
diff --git a/filter/image-jpeg.c b/filter/image-jpeg.c
deleted file mode 100644
index b892a0eb..00000000
--- a/filter/image-jpeg.c
+++ /dev/null
@@ -1,322 +0,0 @@
-/*
- * "$Id: image-jpeg.c 9771 2011-05-12 05:21:56Z mike $"
- *
- * JPEG image routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageReadJPEG() - Read a JPEG image file.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-#ifdef HAVE_LIBJPEG
-# include <jpeglib.h> /* JPEG/JFIF image definitions */
-
-
-/*
- * '_cupsImageReadJPEG()' - Read a JPEG image file.
- */
-
-int /* O - Read status */
-_cupsImageReadJPEG(
- cups_image_t *img, /* IO - cupsImage */
- FILE *fp, /* I - cupsImage file */
- cups_icspace_t primary, /* I - Primary choice for colorspace */
- cups_icspace_t secondary, /* I - Secondary choice for colorspace */
- int saturation, /* I - Color saturation (%) */
- int hue, /* I - Color hue (degrees) */
- const cups_ib_t *lut) /* I - Lookup table for gamma/brightness */
-{
- struct jpeg_decompress_struct cinfo; /* Decompressor info */
- struct jpeg_error_mgr jerr; /* Error handler info */
- cups_ib_t *in, /* Input pixels */
- *out; /* Output pixels */
- jpeg_saved_marker_ptr marker; /* Pointer to marker data */
- int psjpeg = 0; /* Non-zero if Photoshop CMYK JPEG */
- static const char *cspaces[] =
- { /* JPEG colorspaces... */
- "JCS_UNKNOWN",
- "JCS_GRAYSCALE",
- "JCS_RGB",
- "JCS_YCbCr",
- "JCS_CMYK",
- "JCS_YCCK"
- };
-
-
- /*
- * Read the JPEG header...
- */
-
- cinfo.err = jpeg_std_error(&jerr);
- jpeg_create_decompress(&cinfo);
- jpeg_save_markers(&cinfo, JPEG_APP0 + 14, 0xffff); /* Adobe JPEG */
- jpeg_stdio_src(&cinfo, fp);
- jpeg_read_header(&cinfo, 1);
-
- /*
- * Parse any Adobe APPE data embedded in the JPEG file. Since Adobe doesn't
- * bother following standards, we have to invert the CMYK JPEG data written by
- * Adobe apps...
- */
-
- for (marker = cinfo.marker_list; marker; marker = marker->next)
- if (marker->marker == (JPEG_APP0 + 14) && marker->data_length >= 12 &&
- !memcmp(marker->data, "Adobe", 5) && marker->data[11] == 2)
- {
- fputs("DEBUG: Adobe CMYK JPEG detected (inverting color values)\n",
- stderr);
- psjpeg = 1;
- }
-
- cinfo.quantize_colors = 0;
-
- fprintf(stderr, "DEBUG: num_components = %d\n", cinfo.num_components);
- fprintf(stderr, "DEBUG: jpeg_color_space = %s\n",
- cspaces[cinfo.jpeg_color_space]);
-
- if (cinfo.num_components == 1)
- {
- fputs("DEBUG: Converting image to grayscale...\n", stderr);
-
- cinfo.out_color_space = JCS_GRAYSCALE;
- cinfo.out_color_components = 1;
- cinfo.output_components = 1;
-
- img->colorspace = secondary;
- }
- else if (cinfo.num_components == 4)
- {
- fputs("DEBUG: Converting image to CMYK...\n", stderr);
-
- cinfo.out_color_space = JCS_CMYK;
- cinfo.out_color_components = 4;
- cinfo.output_components = 4;
-
- img->colorspace = (primary == CUPS_IMAGE_RGB_CMYK) ? CUPS_IMAGE_CMYK : primary;
- }
- else
- {
- fputs("DEBUG: Converting image to RGB...\n", stderr);
-
- cinfo.out_color_space = JCS_RGB;
- cinfo.out_color_components = 3;
- cinfo.output_components = 3;
-
- img->colorspace = (primary == CUPS_IMAGE_RGB_CMYK) ? CUPS_IMAGE_RGB : primary;
- }
-
- jpeg_calc_output_dimensions(&cinfo);
-
- if (cinfo.output_width <= 0 || cinfo.output_width > CUPS_IMAGE_MAX_WIDTH ||
- cinfo.output_height <= 0 || cinfo.output_height > CUPS_IMAGE_MAX_HEIGHT)
- {
- fprintf(stderr, "DEBUG: Bad JPEG dimensions %dx%d!\n",
- cinfo.output_width, cinfo.output_height);
-
- jpeg_destroy_decompress(&cinfo);
-
- fclose(fp);
- return (1);
- }
-
- img->xsize = cinfo.output_width;
- img->ysize = cinfo.output_height;
-
- if (cinfo.X_density > 0 && cinfo.Y_density > 0 && cinfo.density_unit > 0)
- {
- if (cinfo.density_unit == 1)
- {
- img->xppi = cinfo.X_density;
- img->yppi = cinfo.Y_density;
- }
- else
- {
- img->xppi = (int)((float)cinfo.X_density * 2.54);
- img->yppi = (int)((float)cinfo.Y_density * 2.54);
- }
-
- if (img->xppi == 0 || img->yppi == 0)
- {
- fprintf(stderr, "DEBUG: Bad JPEG image resolution %dx%d PPI.\n",
- img->xppi, img->yppi);
- img->xppi = img->yppi = 128;
- }
- }
-
- fprintf(stderr, "DEBUG: JPEG image %dx%dx%d, %dx%d PPI\n",
- img->xsize, img->ysize, cinfo.output_components,
- img->xppi, img->yppi);
-
- cupsImageSetMaxTiles(img, 0);
-
- in = malloc(img->xsize * cinfo.output_components);
- out = malloc(img->xsize * cupsImageGetDepth(img));
-
- jpeg_start_decompress(&cinfo);
-
- while (cinfo.output_scanline < cinfo.output_height)
- {
- jpeg_read_scanlines(&cinfo, (JSAMPROW *)&in, (JDIMENSION)1);
-
- if (psjpeg && cinfo.output_components == 4)
- {
- /*
- * Invert CMYK data from Photoshop...
- */
-
- cups_ib_t *ptr; /* Pointer into buffer */
- int i; /* Looping var */
-
-
- for (ptr = in, i = img->xsize * 4; i > 0; i --, ptr ++)
- *ptr = 255 - *ptr;
- }
-
- if ((saturation != 100 || hue != 0) && cinfo.output_components == 3)
- cupsImageRGBAdjust(in, img->xsize, saturation, hue);
-
- if ((img->colorspace == CUPS_IMAGE_WHITE && cinfo.out_color_space == JCS_GRAYSCALE) ||
- (img->colorspace == CUPS_IMAGE_CMYK && cinfo.out_color_space == JCS_CMYK))
- {
-#ifdef DEBUG
- int i, j;
- cups_ib_t *ptr;
-
-
- fputs("DEBUG: Direct Data...\n", stderr);
-
- fputs("DEBUG:", stderr);
-
- for (i = 0, ptr = in; i < img->xsize; i ++)
- {
- putc(' ', stderr);
- for (j = 0; j < cinfo.output_components; j ++, ptr ++)
- fprintf(stderr, "%02X", *ptr & 255);
- }
-
- putc('\n', stderr);
-#endif /* DEBUG */
-
- if (lut)
- cupsImageLut(in, img->xsize * cupsImageGetDepth(img), lut);
-
- _cupsImagePutRow(img, 0, cinfo.output_scanline - 1, img->xsize, in);
- }
- else if (cinfo.out_color_space == JCS_GRAYSCALE)
- {
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_BLACK :
- cupsImageWhiteToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageWhiteToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageWhiteToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageWhiteToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * cupsImageGetDepth(img), lut);
-
- _cupsImagePutRow(img, 0, cinfo.output_scanline - 1, img->xsize, out);
- }
- else if (cinfo.out_color_space == JCS_RGB)
- {
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * cupsImageGetDepth(img), lut);
-
- _cupsImagePutRow(img, 0, cinfo.output_scanline - 1, img->xsize, out);
- }
- else /* JCS_CMYK */
- {
- fputs("DEBUG: JCS_CMYK\n", stderr);
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageCMYKToWhite(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageCMYKToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageCMYKToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageCMYKToRGB(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * cupsImageGetDepth(img), lut);
-
- _cupsImagePutRow(img, 0, cinfo.output_scanline - 1, img->xsize, out);
- }
- }
-
- free(in);
- free(out);
-
- jpeg_finish_decompress(&cinfo);
- jpeg_destroy_decompress(&cinfo);
-
- fclose(fp);
-
- return (0);
-}
-#endif /* HAVE_LIBJPEG */
-
-
-/*
- * End of "$Id: image-jpeg.c 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-photocd.c b/filter/image-photocd.c
deleted file mode 100644
index 625b0a2c..00000000
--- a/filter/image-photocd.c
+++ /dev/null
@@ -1,333 +0,0 @@
-/*
- * "$Id: image-photocd.c 9771 2011-05-12 05:21:56Z mike $"
- *
- * PhotoCD routines for CUPS.
- *
- * PhotoCD support is currently limited to the 768x512 base image, which
- * is only YCC encoded. Support for the higher resolution images will
- * require a lot of extra code...
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2006 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageReadPhotoCD() - Read a PhotoCD image file.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-
-/*
- * '_cupsImageReadPhotoCD()' - Read a PhotoCD image file.
- */
-
-int /* O - Read status */
-_cupsImageReadPhotoCD(
- cups_image_t *img, /* IO - cupsImage */
- FILE *fp, /* I - cupsImage file */
- cups_icspace_t primary, /* I - Primary choice for colorspace */
- cups_icspace_t secondary, /* I - Secondary choice for colorspace */
- int saturation, /* I - Color saturation (%) */
- int hue, /* I - Color hue (degrees) */
- const cups_ib_t *lut) /* I - Lookup table for gamma/brightness */
-{
- int x, y; /* Looping vars */
- int xdir, /* X direction */
- xstart; /* X starting point */
- int bpp; /* Bytes per pixel */
- int pass; /* Pass number */
- int rotation; /* 0 for 768x512, 1 for 512x768 */
- int temp, /* Adjusted luminance */
- temp2, /* Red, green, and blue values */
- cb, cr; /* Adjusted chroma values */
- cups_ib_t *in, /* Input (YCC) pixels */
- *iy, /* Luminance */
- *icb, /* Blue chroma */
- *icr, /* Red chroma */
- *rgb, /* RGB */
- *rgbptr, /* Pointer into RGB data */
- *out; /* Output pixels */
-
-
- (void)secondary;
-
- /*
- * Get the image orientation...
- */
-
- fseek(fp, 72, SEEK_SET);
- rotation = (getc(fp) & 63) != 8;
-
- /*
- * Seek to the start of the base image...
- */
-
- fseek(fp, 0x30000, SEEK_SET);
-
- /*
- * Allocate and initialize...
- */
-
- img->colorspace = (primary == CUPS_IMAGE_RGB_CMYK) ? CUPS_IMAGE_RGB : primary;
- img->xppi = 128;
- img->yppi = 128;
-
- if (rotation)
- {
- img->xsize = 512;
- img->ysize = 768;
- }
- else
- {
- img->xsize = 768;
- img->ysize = 512;
- }
-
- cupsImageSetMaxTiles(img, 0);
-
- bpp = cupsImageGetDepth(img);
-
- if ((in = malloc(768 * 3)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- return (1);
- }
-
- if ((out = malloc(768 * bpp)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- free(in);
- return (1);
- }
-
- if (bpp > 1)
- {
- if ((rgb = malloc(768 * 3)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- free(in);
- free(out);
- return (1);
- }
- }
- else
- rgb = NULL;
-
- if (rotation)
- {
- xstart = 767 * bpp;
- xdir = -2 * bpp;
- }
- else
- {
- xstart = 0;
- xdir = 0;
- }
-
- /*
- * Read the image file...
- */
-
- for (y = 0; y < 512; y += 2)
- {
- /*
- * Grab the next two scanlines:
- *
- * YYYYYYYYYYYYYYY...
- * YYYYYYYYYYYYYYY...
- * CbCbCb...CrCrCr...
- */
-
- if (fread(in, 1, 768 * 3, fp) < (768 * 3))
- {
- /*
- * Couldn't read a row of data - return an error!
- */
-
- free(in);
- free(out);
-
- if (bpp > 1)
- free(rgb);
-
- return (-1);
- }
-
- /*
- * Process the two scanlines...
- */
-
- for (pass = 0, iy = in; pass < 2; pass ++)
- {
- if (bpp == 1)
- {
- /*
- * Just extract the luminance channel from the line and put it
- * in the image...
- */
-
- if (primary == CUPS_IMAGE_BLACK)
- {
- if (rotation)
- {
- for (rgbptr = out + xstart, x = 0; x < 768; x ++)
- *rgbptr-- = 255 - *iy++;
-
- if (lut)
- cupsImageLut(out, 768, lut);
-
- _cupsImagePutCol(img, 511 - y - pass, 0, 768, out);
- }
- else
- {
- cupsImageWhiteToBlack(iy, out, 768);
-
- if (lut)
- cupsImageLut(out, 768, lut);
-
- _cupsImagePutRow(img, 0, y + pass, 768, out);
- iy += 768;
- }
- }
- else if (rotation)
- {
- for (rgbptr = out + xstart, x = 0; x < 768; x ++)
- *rgbptr-- = 255 - *iy++;
-
- if (lut)
- cupsImageLut(out, 768, lut);
-
- _cupsImagePutCol(img, 511 - y - pass, 0, 768, out);
- }
- else
- {
- if (lut)
- cupsImageLut(iy, 768, lut);
-
- _cupsImagePutRow(img, 0, y + pass, 768, iy);
- iy += 768;
- }
- }
- else
- {
- /*
- * Convert YCbCr to RGB... While every pixel gets a luminance
- * value, adjacent pixels share chroma information.
- */
-
- cb = cr = 0.0f;
-
- for (x = 0, rgbptr = rgb + xstart, icb = in + 1536, icr = in + 1920;
- x < 768;
- x ++, iy ++, rgbptr += xdir)
- {
- if (!(x & 1))
- {
- cb = (float)(*icb - 156);
- cr = (float)(*icr - 137);
- }
-
- temp = 92241 * (*iy);
-
- temp2 = (temp + 86706 * cr) / 65536;
- if (temp2 < 0)
- *rgbptr++ = 0;
- else if (temp2 > 255)
- *rgbptr++ = 255;
- else
- *rgbptr++ = temp2;
-
- temp2 = (temp - 25914 * cb - 44166 * cr) / 65536;
- if (temp2 < 0)
- *rgbptr++ = 0;
- else if (temp2 > 255)
- *rgbptr++ = 255;
- else
- *rgbptr++ = temp2;
-
- temp2 = (temp + 133434 * cb) / 65536;
- if (temp2 < 0)
- *rgbptr++ = 0;
- else if (temp2 > 255)
- *rgbptr++ = 255;
- else
- *rgbptr++ = temp2;
-
- if (x & 1)
- {
- icb ++;
- icr ++;
- }
- }
-
- /*
- * Adjust the hue and saturation if needed...
- */
-
- if (saturation != 100 || hue != 0)
- cupsImageRGBAdjust(rgb, 768, saturation, hue);
-
- /*
- * Then convert the RGB data to the appropriate colorspace and
- * put it in the image...
- */
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(rgb, out, 768);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(rgb, out, 768);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(rgb, out, 768);
- break;
- }
-
- if (lut)
- cupsImageLut(out, 768 * bpp, lut);
-
- if (rotation)
- _cupsImagePutCol(img, 511 - y - pass, 0, 768, out);
- else
- _cupsImagePutRow(img, 0, y + pass, 768, out);
- }
- }
- }
-
- /*
- * Free memory and return...
- */
-
- free(in);
- free(out);
- if (bpp > 1)
- free(rgb);
-
- return (0);
-}
-
-
-/*
- * End of "$Id: image-photocd.c 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-pix.c b/filter/image-pix.c
deleted file mode 100644
index e7b75b06..00000000
--- a/filter/image-pix.c
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
- * "$Id: image-pix.c 9771 2011-05-12 05:21:56Z mike $"
- *
- * Alias PIX image routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageReadPIX() - Read a PIX image file.
- * read_short() - Read a 16-bit integer.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-
-/*
- * Local functions...
- */
-
-static short read_short(FILE *fp);
-
-
-/*
- * '_cupsImageReadPIX()' - Read a PIX image file.
- */
-
-int /* O - Read status */
-_cupsImageReadPIX(
- cups_image_t *img, /* IO - cupsImage */
- FILE *fp, /* I - cupsImage file */
- cups_icspace_t primary, /* I - Primary choice for colorspace */
- cups_icspace_t secondary, /* I - Secondary choice for colorspace */
- int saturation, /* I - Color saturation (%) */
- int hue, /* I - Color hue (degrees) */
- const cups_ib_t *lut) /* I - Lookup table for gamma/brightness */
-{
- short width, /* Width of image */
- height, /* Height of image */
- depth; /* Depth of image (bits) */
- int count, /* Repetition count */
- bpp, /* Bytes per pixel */
- x, y; /* Looping vars */
- cups_ib_t r, g, b; /* Red, green/gray, blue values */
- cups_ib_t *in, /* Input pixels */
- *out, /* Output pixels */
- *ptr; /* Pointer into pixels */
-
-
- /*
- * Get the image dimensions and setup the image...
- */
-
- width = read_short(fp);
- height = read_short(fp);
- read_short(fp);
- read_short(fp);
- depth = read_short(fp);
-
- /*
- * Check the dimensions of the image. Since the short values used for the
- * width and height cannot exceed CUPS_IMAGE_MAX_WIDTH or
- * CUPS_IMAGE_MAX_HEIGHT, we just need to verify they are positive integers.
- */
-
- if (width <= 0 || height <= 0 ||
- (depth != 8 && depth != 24))
- {
- fprintf(stderr, "DEBUG: Bad PIX image dimensions %dx%dx%d\n",
- width, height, depth);
- fclose(fp);
- return (1);
- }
-
- if (depth == 8)
- img->colorspace = secondary;
- else
- img->colorspace = (primary == CUPS_IMAGE_RGB_CMYK) ? CUPS_IMAGE_RGB : primary;
-
- img->xsize = width;
- img->ysize = height;
-
- cupsImageSetMaxTiles(img, 0);
-
- bpp = cupsImageGetDepth(img);
-
- if ((in = malloc(img->xsize * (depth / 8))) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- return (1);
- }
-
- if ((out = malloc(img->xsize * bpp)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- free(in);
- return (1);
- }
-
- /*
- * Read the image data...
- */
-
- if (depth == 8)
- {
- for (count = 0, y = 0, g = 0; y < img->ysize; y ++)
- {
- if (img->colorspace == CUPS_IMAGE_WHITE)
- ptr = out;
- else
- ptr = in;
-
- for (x = img->xsize; x > 0; x --, count --)
- {
- if (count == 0)
- {
- count = getc(fp);
- g = getc(fp);
- }
-
- *ptr++ = g;
- }
-
- if (img->colorspace != CUPS_IMAGE_WHITE)
- switch (img->colorspace)
- {
- default :
- cupsImageWhiteToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageWhiteToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageWhiteToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageWhiteToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- }
- else
- {
- for (count = 0, y = 0, r = 0, g = 0, b = 0; y < img->ysize; y ++)
- {
- ptr = in;
-
- for (x = img->xsize; x > 0; x --, count --)
- {
- if (count == 0)
- {
- count = getc(fp);
- b = getc(fp);
- g = getc(fp);
- r = getc(fp);
- }
-
- *ptr++ = r;
- *ptr++ = g;
- *ptr++ = b;
- }
-
- if (saturation != 100 || hue != 0)
- cupsImageRGBAdjust(in, img->xsize, saturation, hue);
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->xsize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageRGBToWhite(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- }
-
- fclose(fp);
- free(in);
- free(out);
-
- return (0);
-}
-
-
-/*
- * 'read_short()' - Read a 16-bit integer.
- */
-
-static short /* O - Value from file */
-read_short(FILE *fp) /* I - File to read from */
-{
- int ch; /* Character from file */
-
-
- ch = getc(fp);
- return ((ch << 8) | getc(fp));
-}
-
-
-/*
- * End of "$Id: image-pix.c 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-png.c b/filter/image-png.c
deleted file mode 100644
index e8208b49..00000000
--- a/filter/image-png.c
+++ /dev/null
@@ -1,315 +0,0 @@
-/*
- * "$Id: image-png.c 9771 2011-05-12 05:21:56Z mike $"
- *
- * PNG image routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageReadPNG() - Read a PNG image file.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-#if defined(HAVE_LIBPNG) && defined(HAVE_LIBZ)
-# include <png.h> /* Portable Network Graphics (PNG) definitions */
-
-
-/*
- * '_cupsImageReadPNG()' - Read a PNG image file.
- */
-
-int /* O - Read status */
-_cupsImageReadPNG(
- cups_image_t *img, /* IO - cupsImage */
- FILE *fp, /* I - cupsImage file */
- cups_icspace_t primary, /* I - Primary choice for colorspace */
- cups_icspace_t secondary, /* I - Secondary choice for colorspace */
- int saturation, /* I - Color saturation (%) */
- int hue, /* I - Color hue (degrees) */
- const cups_ib_t *lut) /* I - Lookup table for gamma/brightness */
-{
- int y; /* Looping var */
- png_structp pp; /* PNG read pointer */
- png_infop info; /* PNG info pointers */
- png_uint_32 width, /* Width of image */
- height; /* Height of image */
- int bit_depth, /* Bit depth */
- color_type, /* Color type */
- interlace_type, /* Interlace type */
- compression_type, /* Compression type */
- filter_type; /* Filter type */
- png_uint_32 xppm, /* X pixels per meter */
- yppm; /* Y pixels per meter */
- int bpp; /* Bytes per pixel */
- int pass, /* Current pass */
- passes; /* Number of passes required */
- cups_ib_t *in, /* Input pixels */
- *inptr, /* Pointer into pixels */
- *out; /* Output pixels */
- png_color_16 bg; /* Background color */
-
-
- /*
- * Setup the PNG data structures...
- */
-
- pp = png_create_read_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);
- info = png_create_info_struct(pp);
-
- /*
- * Initialize the PNG read "engine"...
- */
-
- png_init_io(pp, fp);
-
- /*
- * Get the image dimensions and load the output image...
- */
-
- png_read_info(pp, info);
-
- png_get_IHDR(pp, info, &width, &height, &bit_depth, &color_type,
- &interlace_type, &compression_type, &filter_type);
-
- fprintf(stderr, "DEBUG: PNG image: %dx%dx%d, color_type=%x (%s%s%s)\n",
- (int)width, (int)height, bit_depth, color_type,
- (color_type & PNG_COLOR_MASK_COLOR) ? "RGB" : "GRAYSCALE",
- (color_type & PNG_COLOR_MASK_ALPHA) ? "+ALPHA" : "",
- (color_type & PNG_COLOR_MASK_PALETTE) ? "+PALETTE" : "");
-
- if (color_type & PNG_COLOR_MASK_PALETTE)
- png_set_expand(pp);
- else if (bit_depth < 8)
- {
- png_set_packing(pp);
- png_set_expand(pp);
- }
- else if (bit_depth == 16)
- png_set_strip_16(pp);
-
- if (color_type & PNG_COLOR_MASK_COLOR)
- img->colorspace = (primary == CUPS_IMAGE_RGB_CMYK) ? CUPS_IMAGE_RGB :
- primary;
- else
- img->colorspace = secondary;
-
- if (width == 0 || width > CUPS_IMAGE_MAX_WIDTH ||
- height == 0 || height > CUPS_IMAGE_MAX_HEIGHT)
- {
- fprintf(stderr, "DEBUG: PNG image has invalid dimensions %ux%u!\n",
- (unsigned)width, (unsigned)height);
- fclose(fp);
- return (1);
- }
-
- img->xsize = width;
- img->ysize = height;
-
- if ((xppm = png_get_x_pixels_per_meter(pp, info)) != 0 &&
- (yppm = png_get_y_pixels_per_meter(pp, info)) != 0)
- {
- img->xppi = (int)((float)xppm * 0.0254);
- img->yppi = (int)((float)yppm * 0.0254);
-
- if (img->xppi == 0 || img->yppi == 0)
- {
- fprintf(stderr, "DEBUG: PNG image has invalid resolution %dx%d PPI\n",
- img->xppi, img->yppi);
-
- img->xppi = img->yppi = 128;
- }
- }
-
- cupsImageSetMaxTiles(img, 0);
-
- passes = png_set_interlace_handling(pp);
-
- /*
- * Handle transparency...
- */
-
- if (png_get_valid(pp, info, PNG_INFO_tRNS))
- png_set_tRNS_to_alpha(pp);
-
- bg.red = 65535;
- bg.green = 65535;
- bg.blue = 65535;
-
- png_set_background(pp, &bg, PNG_BACKGROUND_GAMMA_SCREEN, 0, 1.0);
-
- if (passes == 1)
- {
- /*
- * Load one row at a time...
- */
-
- if (color_type == PNG_COLOR_TYPE_GRAY ||
- color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
- in = malloc(img->xsize);
- else
- in = malloc(img->xsize * 3);
- }
- else
- {
- /*
- * Interlaced images must be loaded all at once...
- */
-
- size_t bufsize; /* Size of buffer */
-
-
- if (color_type == PNG_COLOR_TYPE_GRAY ||
- color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
- {
- bufsize = img->xsize * img->ysize;
-
- if ((bufsize / img->xsize) != img->ysize)
- {
- fprintf(stderr, "DEBUG: PNG image dimensions (%ux%u) too large!\n",
- (unsigned)width, (unsigned)height);
- fclose(fp);
- return (1);
- }
- }
- else
- {
- bufsize = img->xsize * img->ysize * 3;
-
- if ((bufsize / (img->xsize * 3)) != img->ysize)
- {
- fprintf(stderr, "DEBUG: PNG image dimensions (%ux%u) too large!\n",
- (unsigned)width, (unsigned)height);
- fclose(fp);
- return (1);
- }
- }
-
- in = malloc(bufsize);
- }
-
- bpp = cupsImageGetDepth(img);
- out = malloc(img->xsize * bpp);
-
- if (!in || !out)
- {
- fputs("DEBUG: Unable to allocate memory for PNG image!\n", stderr);
-
- if (in)
- free(in);
-
- if (out)
- free(out);
-
- fclose(fp);
-
- return (1);
- }
-
- /*
- * Read the image, interlacing as needed...
- */
-
- for (pass = 1; pass <= passes; pass ++)
- for (inptr = in, y = 0; y < img->ysize; y ++)
- {
- png_read_row(pp, (png_bytep)inptr, NULL);
-
- if (pass == passes)
- {
- /*
- * Output this row...
- */
-
- if (color_type & PNG_COLOR_MASK_COLOR)
- {
- if ((saturation != 100 || hue != 0) && bpp > 1)
- cupsImageRGBAdjust(inptr, img->xsize, saturation, hue);
-
- switch (img->colorspace)
- {
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(inptr, out, img->xsize);
- break;
- case CUPS_IMAGE_RGB :
- case CUPS_IMAGE_RGB_CMYK :
- cupsImageRGBToRGB(inptr, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(inptr, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(inptr, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(inptr, out, img->xsize);
- break;
- }
- }
- else
- {
- switch (img->colorspace)
- {
- case CUPS_IMAGE_WHITE :
- memcpy(out, inptr, img->xsize);
- break;
- case CUPS_IMAGE_RGB :
- case CUPS_IMAGE_RGB_CMYK :
- cupsImageWhiteToRGB(inptr, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageWhiteToBlack(inptr, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageWhiteToCMY(inptr, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageWhiteToCMYK(inptr, out, img->xsize);
- break;
- }
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
-
- if (passes > 1)
- {
- if (color_type & PNG_COLOR_MASK_COLOR)
- inptr += img->xsize * 3;
- else
- inptr += img->xsize;
- }
- }
-
- png_read_end(pp, info);
- png_destroy_read_struct(&pp, &info, NULL);
-
- fclose(fp);
- free(in);
- free(out);
-
- return (0);
-}
-#endif /* HAVE_LIBPNG && HAVE_LIBZ */
-
-
-/*
- * End of "$Id: image-png.c 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-pnm.c b/filter/image-pnm.c
deleted file mode 100644
index 3a25d8f1..00000000
--- a/filter/image-pnm.c
+++ /dev/null
@@ -1,320 +0,0 @@
-/*
- * "$Id: image-pnm.c 9771 2011-05-12 05:21:56Z mike $"
- *
- * Portable Any Map file routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageReadPNM() - Read a PNM image file.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-
-/*
- * '_cupsImageReadPNM()' - Read a PNM image file.
- */
-
-int /* O - Read status */
-_cupsImageReadPNM(
- cups_image_t *img, /* IO - cupsImage */
- FILE *fp, /* I - cupsImage file */
- cups_icspace_t primary, /* I - Primary choice for colorspace */
- cups_icspace_t secondary, /* I - Secondary choice for colorspace */
- int saturation, /* I - Color saturation (%) */
- int hue, /* I - Color hue (degrees) */
- const cups_ib_t *lut) /* I - Lookup table for gamma/brightness */
-{
- int x, y; /* Looping vars */
- int bpp; /* Bytes per pixel */
- cups_ib_t *in, /* Input pixels */
- *inptr, /* Current input pixel */
- *out, /* Output pixels */
- *outptr, /* Current output pixel */
- bit; /* Bit in input line */
- char line[255], /* Input line */
- *lineptr; /* Pointer in line */
- int format, /* Format of PNM file */
- val, /* Pixel value */
- maxval; /* Maximum pixel value */
-
-
- /*
- * Read the file header in the format:
- *
- * Pformat
- * # comment1
- * # comment2
- * ...
- * # commentN
- * width
- * height
- * max sample
- */
-
- if ((lineptr = fgets(line, sizeof(line), fp)) == NULL)
- {
- fputs("DEBUG: Bad PNM header!\n", stderr);
- fclose(fp);
- return (1);
- }
-
- lineptr ++;
-
- format = atoi(lineptr);
- while (isdigit(*lineptr & 255))
- lineptr ++;
-
- while (lineptr != NULL && img->xsize == 0)
- {
- if (*lineptr == '\0' || *lineptr == '#')
- lineptr = fgets(line, sizeof(line), fp);
- else if (isdigit(*lineptr & 255))
- {
- img->xsize = atoi(lineptr);
- while (isdigit(*lineptr & 255))
- lineptr ++;
- }
- else
- lineptr ++;
- }
-
- while (lineptr != NULL && img->ysize == 0)
- {
- if (*lineptr == '\0' || *lineptr == '#')
- lineptr = fgets(line, sizeof(line), fp);
- else if (isdigit(*lineptr & 255))
- {
- img->ysize = atoi(lineptr);
- while (isdigit(*lineptr & 255))
- lineptr ++;
- }
- else
- lineptr ++;
- }
-
- if (format != 1 && format != 4)
- {
- maxval = 0;
-
- while (lineptr != NULL && maxval == 0)
- {
- if (*lineptr == '\0' || *lineptr == '#')
- lineptr = fgets(line, sizeof(line), fp);
- else if (isdigit(*lineptr & 255))
- {
- maxval = atoi(lineptr);
- while (isdigit(*lineptr & 255))
- lineptr ++;
- }
- else
- lineptr ++;
- }
- }
- else
- maxval = 1;
-
- if (img->xsize == 0 || img->xsize > CUPS_IMAGE_MAX_WIDTH ||
- img->ysize == 0 || img->ysize > CUPS_IMAGE_MAX_HEIGHT)
- {
- fprintf(stderr, "DEBUG: Bad PNM dimensions %dx%d!\n",
- img->xsize, img->ysize);
- fclose(fp);
- return (1);
- }
-
- if (maxval == 0)
- {
- fprintf(stderr, "DEBUG: Bad PNM max value %d!\n", maxval);
- fclose(fp);
- return (1);
- }
-
- if (format == 1 || format == 2 || format == 4 || format == 5)
- img->colorspace = secondary;
- else
- img->colorspace = (primary == CUPS_IMAGE_RGB_CMYK) ? CUPS_IMAGE_RGB : primary;
-
- cupsImageSetMaxTiles(img, 0);
-
- bpp = cupsImageGetDepth(img);
-
- if ((in = malloc(img->xsize * 3)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- return (1);
- }
-
- if ((out = malloc(img->xsize * bpp)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- free(in);
- return (1);
- }
-
- /*
- * Read the image file...
- */
-
- for (y = 0; y < img->ysize; y ++)
- {
- switch (format)
- {
- case 1 :
- for (x = img->xsize, inptr = in; x > 0; x --, inptr ++)
- if (fscanf(fp, "%d", &val) == 1)
- *inptr = val ? 0 : 255;
- break;
-
- case 2 :
- for (x = img->xsize, inptr = in; x > 0; x --, inptr ++)
- if (fscanf(fp, "%d", &val) == 1)
- *inptr = 255 * val / maxval;
- break;
-
- case 3 :
- for (x = img->xsize, inptr = in; x > 0; x --, inptr += 3)
- {
- if (fscanf(fp, "%d", &val) == 1)
- inptr[0] = 255 * val / maxval;
- if (fscanf(fp, "%d", &val) == 1)
- inptr[1] = 255 * val / maxval;
- if (fscanf(fp, "%d", &val) == 1)
- inptr[2] = 255 * val / maxval;
- }
- break;
-
- case 4 :
- fread(out, (img->xsize + 7) / 8, 1, fp);
- for (x = img->xsize, inptr = in, outptr = out, bit = 128;
- x > 0;
- x --, inptr ++)
- {
- if (*outptr & bit)
- *inptr = 0;
- else
- *inptr = 255;
-
- if (bit > 1)
- bit >>= 1;
- else
- {
- bit = 128;
- outptr ++;
- }
- }
- break;
-
- case 5 :
- fread(in, img->xsize, 1, fp);
- break;
-
- case 6 :
- fread(in, img->xsize, 3, fp);
- break;
- }
-
- switch (format)
- {
- case 1 :
- case 2 :
- case 4 :
- case 5 :
- if (img->colorspace == CUPS_IMAGE_WHITE)
- {
- if (lut)
- cupsImageLut(in, img->xsize, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, in);
- }
- else
- {
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_RGB :
- cupsImageWhiteToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageWhiteToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageWhiteToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageWhiteToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- break;
-
- default :
- if ((saturation != 100 || hue != 0) && bpp > 1)
- cupsImageRGBAdjust(in, img->xsize, saturation, hue);
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->xsize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- break;
- }
- }
-
- free(in);
- free(out);
-
- fclose(fp);
-
- return (0);
-}
-
-
-/*
- * End of "$Id: image-pnm.c 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-private.h b/filter/image-private.h
deleted file mode 100644
index 70a8f5c0..00000000
--- a/filter/image-private.h
+++ /dev/null
@@ -1,220 +0,0 @@
-/*
- * "$Id: image-private.h 9042 2010-03-24 00:45:34Z mike $"
- *
- * Private image library definitions for CUPS.
- *
- * Copyright 2007-2010 by Apple Inc.
- * Copyright 1993-2006 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- */
-
-#ifndef _CUPS_IMAGE_PRIVATE_H_
-# define _CUPS_IMAGE_PRIVATE_H_
-
-/*
- * Include necessary headers...
- */
-
-# include "image.h"
-# include <cups/cups.h>
-# include <cups/debug-private.h>
-# include <cups/string-private.h>
-# include <stdlib.h>
-# include <string.h>
-# ifdef WIN32
-# include <io.h>
-# else
-# include <unistd.h>
-# endif /* WIN32 */
-# include <errno.h>
-# include <math.h>
-
-
-/*
- * Constants...
- */
-
-# define CUPS_IMAGE_MAX_WIDTH 0x07ffffff
- /* 2^27-1 to allow for 15-channel data */
-# define CUPS_IMAGE_MAX_HEIGHT 0x3fffffff
- /* 2^30-1 */
-
-# define CUPS_TILE_SIZE 256 /* 256x256 pixel tiles */
-# define CUPS_TILE_MINIMUM 10 /* Minimum number of tiles */
-
-
-/*
- * min/max/abs macros...
- */
-
-# ifndef max
-# define max(a,b) ((a) > (b) ? (a) : (b))
-# endif /* !max */
-# ifndef min
-# define min(a,b) ((a) < (b) ? (a) : (b))
-# endif /* !min */
-# ifndef abs
-# define abs(a) ((a) < 0 ? -(a) : (a))
-# endif /* !abs */
-
-
-/*
- * Types and structures...
- */
-
-typedef enum cups_iztype_e /**** Image zoom type ****/
-{
- CUPS_IZOOM_FAST, /* Use nearest-neighbor sampling */
- CUPS_IZOOM_NORMAL, /* Use bilinear interpolation */
- CUPS_IZOOM_BEST /* Use bicubic interpolation */
-} cups_iztype_t;
-
-struct cups_ic_s;
-
-typedef struct cups_itile_s /**** Image tile ****/
-{
- int dirty; /* True if tile is dirty */
- off_t pos; /* Position of tile on disk (-1 if not written) */
- struct cups_ic_s *ic; /* Pixel data */
-} cups_itile_t;
-
-typedef struct cups_ic_s /**** Image tile cache ****/
-{
- struct cups_ic_s *prev, /* Previous tile in cache */
- *next; /* Next tile in cache */
- cups_itile_t *tile; /* Tile this is attached to */
- cups_ib_t *pixels; /* Pixel data */
-} cups_ic_t;
-
-struct cups_image_s /**** Image file data ****/
-{
- cups_icspace_t colorspace; /* Colorspace of image */
- unsigned xsize, /* Width of image in pixels */
- ysize, /* Height of image in pixels */
- xppi, /* X resolution in pixels-per-inch */
- yppi, /* Y resolution in pixels-per-inch */
- num_ics, /* Number of cached tiles */
- max_ics; /* Maximum number of cached tiles */
- cups_itile_t **tiles; /* Tiles in image */
- cups_ic_t *first, /* First cached tile in image */
- *last; /* Last cached tile in image */
- int cachefile; /* Tile cache file */
- char cachename[256]; /* Tile cache filename */
-};
-
-struct cups_izoom_s /**** Image zoom data ****/
-{
- cups_image_t *img; /* Image to zoom */
- cups_iztype_t type; /* Type of zooming */
- unsigned xorig, /* X origin */
- yorig, /* Y origin */
- width, /* Width of input area */
- height, /* Height of input area */
- depth, /* Number of bytes per pixel */
- rotated, /* Non-zero if image needs to be rotated */
- xsize, /* Width of output image */
- ysize, /* Height of output image */
- xmax, /* Maximum input image X position */
- ymax, /* Maximum input image Y position */
- xmod, /* Threshold for Bresenheim rounding */
- ymod; /* ... */
- int xstep, /* Amount to step for each pixel along X */
- xincr,
- instep, /* Amount to step pixel pointer along X */
- inincr,
- ystep, /* Amount to step for each pixel along Y */
- yincr,
- row; /* Current row */
- cups_ib_t *rows[2], /* Horizontally scaled pixel data */
- *in; /* Unscaled input pixel data */
-};
-
-
-/*
- * Prototypes...
- */
-
-extern int _cupsImagePutCol(cups_image_t *img, int x, int y,
- int height, const cups_ib_t *pixels);
-extern int _cupsImagePutRow(cups_image_t *img, int x, int y,
- int width, const cups_ib_t *pixels);
-extern int _cupsImageReadBMP(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern int _cupsImageReadFPX(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern int _cupsImageReadGIF(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern int _cupsImageReadJPEG(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern int _cupsImageReadPIX(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern int _cupsImageReadPNG(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern int _cupsImageReadPNM(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern int _cupsImageReadPhotoCD(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern int _cupsImageReadSGI(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern int _cupsImageReadSunRaster(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern int _cupsImageReadTIFF(cups_image_t *img, FILE *fp,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut);
-extern void _cupsImageZoomDelete(cups_izoom_t *z);
-extern void _cupsImageZoomFill(cups_izoom_t *z, int iy);
-extern cups_izoom_t *_cupsImageZoomNew(cups_image_t *img, int xc0, int yc0,
- int xc1, int yc1, int xsize,
- int ysize, int rotated,
- cups_iztype_t type);
-
-extern int _cupsRasterExecPS(cups_page_header2_t *h,
- int *preferred_bits,
- const char *code);
-extern void _cupsRasterAddError(const char *f, ...);
-extern void _cupsRasterClearError(void);
-
-#endif /* !_CUPS_IMAGE_PRIVATE_H_ */
-
-/*
- * End of "$Id: image-private.h 9042 2010-03-24 00:45:34Z mike $".
- */
diff --git a/filter/image-sgi.c b/filter/image-sgi.c
deleted file mode 100644
index b9e7fa5c..00000000
--- a/filter/image-sgi.c
+++ /dev/null
@@ -1,295 +0,0 @@
-/*
- * "$Id: image-sgi.c 9771 2011-05-12 05:21:56Z mike $"
- *
- * SGI image file routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageReadSGI() - Read a SGI image file.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-#include "image-sgi.h"
-
-
-/*
- * '_cupsImageReadSGI()' - Read a SGI image file.
- */
-
-int /* O - Read status */
-_cupsImageReadSGI(
- cups_image_t *img, /* IO - cupsImage */
- FILE *fp, /* I - cupsImage file */
- cups_icspace_t primary, /* I - Primary choice for colorspace */
- cups_icspace_t secondary, /* I - Secondary choice for colorspace */
- int saturation, /* I - Color saturation (%) */
- int hue, /* I - Color hue (degrees) */
- const cups_ib_t *lut) /* I - Lookup table for gamma/brightness */
-{
- int i, y; /* Looping vars */
- int bpp; /* Bytes per pixel */
- sgi_t *sgip; /* SGI image file */
- cups_ib_t *in, /* Input pixels */
- *inptr, /* Current input pixel */
- *out; /* Output pixels */
- unsigned short *rows[4], /* Row pointers for image data */
- *red,
- *green,
- *blue,
- *gray,
- *alpha;
-
-
- /*
- * Setup the SGI file...
- */
-
- sgip = sgiOpenFile(fp, SGI_READ, 0, 0, 0, 0, 0);
-
- /*
- * Get the image dimensions and load the output image...
- */
-
- /*
- * Check the image dimensions; since xsize and ysize are unsigned shorts,
- * just check if they are 0 since they can't exceed CUPS_IMAGE_MAX_WIDTH or
- * CUPS_IMAGE_MAX_HEIGHT...
- */
-
- if (sgip->xsize == 0 || sgip->ysize == 0 ||
- sgip->zsize == 0 || sgip->zsize > 4)
- {
- fprintf(stderr, "DEBUG: Bad SGI image dimensions %ux%ux%u!\n",
- sgip->xsize, sgip->ysize, sgip->zsize);
- sgiClose(sgip);
- return (1);
- }
-
- if (sgip->zsize < 3)
- img->colorspace = secondary;
- else
- img->colorspace = (primary == CUPS_IMAGE_RGB_CMYK) ? CUPS_IMAGE_RGB : primary;
-
- img->xsize = sgip->xsize;
- img->ysize = sgip->ysize;
-
- cupsImageSetMaxTiles(img, 0);
-
- bpp = cupsImageGetDepth(img);
-
- if ((in = malloc(img->xsize * sgip->zsize)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- sgiClose(sgip);
- return (1);
- }
-
- if ((out = malloc(img->xsize * bpp)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- sgiClose(sgip);
- free(in);
- return (1);
- }
-
- if ((rows[0] = calloc(img->xsize * sgip->zsize,
- sizeof(unsigned short))) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- sgiClose(sgip);
- free(in);
- free(out);
- return (1);
- }
-
- for (i = 1; i < sgip->zsize; i ++)
- rows[i] = rows[0] + i * img->xsize;
-
- /*
- * Read the SGI image file...
- */
-
- for (y = 0; y < img->ysize; y ++)
- {
- for (i = 0; i < sgip->zsize; i ++)
- sgiGetRow(sgip, rows[i], img->ysize - 1 - y, i);
-
- switch (sgip->zsize)
- {
- case 1 :
- if (sgip->bpp == 1)
- for (i = img->xsize - 1, gray = rows[0], inptr = in;
- i >= 0;
- i --)
- {
- *inptr++ = *gray++;
- }
- else
- for (i = img->xsize - 1, gray = rows[0], inptr = in;
- i >= 0;
- i --)
- {
- *inptr++ = (*gray++) / 256 + 128;
- }
- break;
- case 2 :
- if (sgip->bpp == 1)
- for (i = img->xsize - 1, gray = rows[0], alpha = rows[1], inptr = in;
- i >= 0;
- i --)
- {
- *inptr++ = (*gray++) * (*alpha++) / 255;
- }
- else
- for (i = img->xsize - 1, gray = rows[0], alpha = rows[1], inptr = in;
- i >= 0;
- i --)
- {
- *inptr++ = ((*gray++) / 256 + 128) * (*alpha++) / 32767;
- }
- break;
- case 3 :
- if (sgip->bpp == 1)
- for (i = img->xsize - 1, red = rows[0], green = rows[1],
- blue = rows[2], inptr = in;
- i >= 0;
- i --)
- {
- *inptr++ = *red++;
- *inptr++ = *green++;
- *inptr++ = *blue++;
- }
- else
- for (i = img->xsize - 1, red = rows[0], green = rows[1],
- blue = rows[2], inptr = in;
- i >= 0;
- i --)
- {
- *inptr++ = (*red++) / 256 + 128;
- *inptr++ = (*green++) / 256 + 128;
- *inptr++ = (*blue++) / 256 + 128;
- }
- break;
- case 4 :
- if (sgip->bpp == 1)
- for (i = img->xsize - 1, red = rows[0], green = rows[1],
- blue = rows[2], alpha = rows[3], inptr = in;
- i >= 0;
- i --)
- {
- *inptr++ = (*red++) * (*alpha) / 255;
- *inptr++ = (*green++) * (*alpha) / 255;
- *inptr++ = (*blue++) * (*alpha++) / 255;
- }
- else
- for (i = img->xsize - 1, red = rows[0], green = rows[1],
- blue = rows[2], alpha = rows[3], inptr = in;
- i >= 0;
- i --)
- {
- *inptr++ = ((*red++) / 256 + 128) * (*alpha) / 32767;
- *inptr++ = ((*green++) / 256 + 128) * (*alpha) / 32767;
- *inptr++ = ((*blue++) / 256 + 128) * (*alpha++) / 32767;
- }
- break;
- }
-
- if (sgip->zsize < 3)
- {
- if (img->colorspace == CUPS_IMAGE_WHITE)
- {
- if (lut)
- cupsImageLut(in, img->xsize, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, in);
- }
- else
- {
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_RGB :
- case CUPS_IMAGE_RGB_CMYK :
- cupsImageWhiteToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageWhiteToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageWhiteToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageWhiteToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- }
- else
- {
- if ((saturation != 100 || hue != 0) && bpp > 1)
- cupsImageRGBAdjust(in, img->xsize, saturation, hue);
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->xsize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- }
-
- free(in);
- free(out);
- free(rows[0]);
-
- sgiClose(sgip);
-
- return (0);
-}
-
-
-/*
- * End of "$Id: image-sgi.c 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-sgi.h b/filter/image-sgi.h
deleted file mode 100644
index 16373264..00000000
--- a/filter/image-sgi.h
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * "$Id: image-sgi.h 9771 2011-05-12 05:21:56Z mike $"
- *
- * SGI image file format library definitions for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- */
-
-#ifndef _SGI_H_
-# define _SGI_H_
-
-# include <stdio.h>
-# include <stdlib.h>
-# include <string.h>
-
-# ifdef __cplusplus
-extern "C" {
-# endif
-
-
-/*
- * Constants...
- */
-
-# define SGI_MAGIC 474 /* Magic number in image file */
-
-# define SGI_READ 0 /* Read from an SGI image file */
-# define SGI_WRITE 1 /* Write to an SGI image file */
-
-# define SGI_COMP_NONE 0 /* No compression */
-# define SGI_COMP_RLE 1 /* Run-length encoding */
-# define SGI_COMP_ARLE 2 /* Agressive run-length encoding */
-
-
-/*
- * Image structure...
- */
-
-typedef struct
-{
- FILE *file; /* Image file */
- int mode, /* File open mode */
- bpp, /* Bytes per pixel/channel */
- comp; /* Compression */
- unsigned short xsize, /* Width in pixels */
- ysize, /* Height in pixels */
- zsize; /* Number of channels */
- long firstrow, /* File offset for first row */
- nextrow, /* File offset for next row */
- **table, /* Offset table for compression */
- **length; /* Length table for compression */
- unsigned short *arle_row; /* Advanced RLE compression buffer */
- long arle_offset, /* Advanced RLE buffer offset */
- arle_length; /* Advanced RLE buffer length */
-} sgi_t;
-
-
-/*
- * Prototypes...
- */
-
-extern int sgiClose(sgi_t *sgip);
-extern int sgiGetRow(sgi_t *sgip, unsigned short *row, int y, int z);
-extern sgi_t *sgiOpen(const char *filename, int mode, int comp, int bpp,
- int xsize, int ysize, int zsize);
-extern sgi_t *sgiOpenFile(FILE *file, int mode, int comp, int bpp,
- int xsize, int ysize, int zsize);
-extern int sgiPutRow(sgi_t *sgip, unsigned short *row, int y, int z);
-
-# ifdef __cplusplus
-}
-# endif
-#endif /* !_SGI_H_ */
-
-/*
- * End of "$Id: image-sgi.h 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-sgilib.c b/filter/image-sgilib.c
deleted file mode 100644
index 826cdf27..00000000
--- a/filter/image-sgilib.c
+++ /dev/null
@@ -1,890 +0,0 @@
-/*
- * "$Id: image-sgilib.c 9771 2011-05-12 05:21:56Z mike $"
- *
- * SGI image file format library routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * sgiClose() - Close an SGI image file.
- * sgiGetRow() - Get a row of image data from a file.
- * sgiOpen() - Open an SGI image file for reading or writing.
- * sgiOpenFile() - Open an SGI image file for reading or writing.
- * sgiPutRow() - Put a row of image data to a file.
- * getlong() - Get a 32-bit big-endian integer.
- * getshort() - Get a 16-bit big-endian integer.
- * putlong() - Put a 32-bit big-endian integer.
- * putshort() - Put a 16-bit big-endian integer.
- * read_rle8() - Read 8-bit RLE data.
- * read_rle16() - Read 16-bit RLE data.
- * write_rle8() - Write 8-bit RLE data.
- * write_rle16() - Write 16-bit RLE data.
- */
-
-#include "image-sgi.h"
-
-
-/*
- * Local functions...
- */
-
-static int getlong(FILE *);
-static int getshort(FILE *);
-static int putlong(long, FILE *);
-static int putshort(unsigned short, FILE *);
-static int read_rle8(FILE *, unsigned short *, int);
-static int read_rle16(FILE *, unsigned short *, int);
-static int write_rle8(FILE *, unsigned short *, int);
-static int write_rle16(FILE *, unsigned short *, int);
-
-
-/*
- * 'sgiClose()' - Close an SGI image file.
- */
-
-int /* O - 0 on success, -1 on error */
-sgiClose(sgi_t *sgip) /* I - SGI image */
-{
- int i; /* Return status */
- long *offset; /* Looping var for offset table */
-
-
- if (sgip == NULL)
- return (-1);
-
- if (sgip->mode == SGI_WRITE && sgip->comp != SGI_COMP_NONE)
- {
- /*
- * Write the scanline offset table to the file...
- */
-
- fseek(sgip->file, 512, SEEK_SET);
-
- for (i = sgip->ysize * sgip->zsize, offset = sgip->table[0];
- i > 0;
- i --, offset ++)
- if (putlong(offset[0], sgip->file) < 0)
- return (-1);
-
- for (i = sgip->ysize * sgip->zsize, offset = sgip->length[0];
- i > 0;
- i --, offset ++)
- if (putlong(offset[0], sgip->file) < 0)
- return (-1);
- }
-
- if (sgip->table != NULL)
- {
- free(sgip->table[0]);
- free(sgip->table);
- }
-
- if (sgip->length != NULL)
- {
- free(sgip->length[0]);
- free(sgip->length);
- }
-
- if (sgip->comp == SGI_COMP_ARLE)
- free(sgip->arle_row);
-
- i = fclose(sgip->file);
- free(sgip);
-
- return (i);
-}
-
-
-/*
- * 'sgiGetRow()' - Get a row of image data from a file.
- */
-
-int /* O - 0 on success, -1 on error */
-sgiGetRow(sgi_t *sgip, /* I - SGI image */
- unsigned short *row, /* O - Row to read */
- int y, /* I - Line to read */
- int z) /* I - Channel to read */
-{
- int x; /* X coordinate */
- long offset; /* File offset */
-
-
- if (sgip == NULL ||
- row == NULL ||
- y < 0 || y >= sgip->ysize ||
- z < 0 || z >= sgip->zsize)
- return (-1);
-
- switch (sgip->comp)
- {
- case SGI_COMP_NONE :
- /*
- * Seek to the image row - optimize buffering by only seeking if
- * necessary...
- */
-
- offset = 512 + (y + z * sgip->ysize) * sgip->xsize * sgip->bpp;
- if (offset != ftell(sgip->file))
- fseek(sgip->file, offset, SEEK_SET);
-
- if (sgip->bpp == 1)
- {
- for (x = sgip->xsize; x > 0; x --, row ++)
- *row = getc(sgip->file);
- }
- else
- {
- for (x = sgip->xsize; x > 0; x --, row ++)
- *row = getshort(sgip->file);
- }
- break;
-
- case SGI_COMP_RLE :
- offset = sgip->table[z][y];
- if (offset != ftell(sgip->file))
- fseek(sgip->file, offset, SEEK_SET);
-
- if (sgip->bpp == 1)
- return (read_rle8(sgip->file, row, sgip->xsize));
- else
- return (read_rle16(sgip->file, row, sgip->xsize));
- }
-
- return (0);
-}
-
-
-/*
- * 'sgiOpen()' - Open an SGI image file for reading or writing.
- */
-
-sgi_t * /* O - New image */
-sgiOpen(const char *filename, /* I - File to open */
- int mode, /* I - Open mode (SGI_READ or SGI_WRITE) */
- int comp, /* I - Type of compression */
- int bpp, /* I - Bytes per pixel */
- int xsize, /* I - Width of image in pixels */
- int ysize, /* I - Height of image in pixels */
- int zsize) /* I - Number of channels */
-{
- sgi_t *sgip; /* New SGI image file */
- FILE *file; /* Image file pointer */
-
-
- if (mode == SGI_READ)
- file = fopen(filename, "rb");
- else
- file = fopen(filename, "wb+");
-
- if (file == NULL)
- return (NULL);
-
- if ((sgip = sgiOpenFile(file, mode, comp, bpp, xsize, ysize, zsize)) == NULL)
- fclose(file);
-
- return (sgip);
-}
-
-
-/*
- * 'sgiOpenFile()' - Open an SGI image file for reading or writing.
- */
-
-sgi_t * /* O - New image */
-sgiOpenFile(FILE *file, /* I - File to open */
- int mode, /* I - Open mode (SGI_READ or SGI_WRITE) */
- int comp, /* I - Type of compression */
- int bpp, /* I - Bytes per pixel */
- int xsize, /* I - Width of image in pixels */
- int ysize, /* I - Height of image in pixels */
- int zsize) /* I - Number of channels */
-{
- int i, j; /* Looping var */
- char name[80]; /* Name of file in image header */
- short magic; /* Magic number */
- sgi_t *sgip; /* New image pointer */
-
-
- if ((sgip = calloc(sizeof(sgi_t), 1)) == NULL)
- return (NULL);
-
- sgip->file = file;
-
- switch (mode)
- {
- case SGI_READ :
- sgip->mode = SGI_READ;
-
- magic = getshort(sgip->file);
- if (magic != SGI_MAGIC)
- {
- free(sgip);
- return (NULL);
- }
-
- sgip->comp = getc(sgip->file);
- sgip->bpp = getc(sgip->file);
- getshort(sgip->file); /* Dimensions */
- sgip->xsize = getshort(sgip->file);
- sgip->ysize = getshort(sgip->file);
- sgip->zsize = getshort(sgip->file);
- getlong(sgip->file); /* Minimum pixel */
- getlong(sgip->file); /* Maximum pixel */
-
- if (sgip->comp)
- {
- /*
- * This file is compressed; read the scanline tables...
- */
-
- fseek(sgip->file, 512, SEEK_SET);
-
- if ((sgip->table = calloc(sgip->zsize, sizeof(long *))) == NULL)
- {
- free(sgip);
- return (NULL);
- }
-
- if ((sgip->table[0] = calloc(sgip->ysize * sgip->zsize,
- sizeof(long))) == NULL)
- {
- free(sgip->table);
- free(sgip);
- return (NULL);
- }
-
- for (i = 1; i < sgip->zsize; i ++)
- sgip->table[i] = sgip->table[0] + i * sgip->ysize;
-
- for (i = 0; i < sgip->zsize; i ++)
- for (j = 0; j < sgip->ysize; j ++)
- sgip->table[i][j] = getlong(sgip->file);
- }
- break;
-
- case SGI_WRITE :
- if (xsize < 1 ||
- ysize < 1 ||
- zsize < 1 ||
- bpp < 1 || bpp > 2 ||
- comp < SGI_COMP_NONE || comp > SGI_COMP_ARLE)
- {
- free(sgip);
- return (NULL);
- }
-
- sgip->mode = SGI_WRITE;
-
- putshort(SGI_MAGIC, sgip->file);
- putc((sgip->comp = comp) != 0, sgip->file);
- putc(sgip->bpp = bpp, sgip->file);
- putshort(3, sgip->file); /* Dimensions */
- putshort(sgip->xsize = xsize, sgip->file);
- putshort(sgip->ysize = ysize, sgip->file);
- putshort(sgip->zsize = zsize, sgip->file);
- if (bpp == 1)
- {
- putlong(0, sgip->file); /* Minimum pixel */
- putlong(255, sgip->file); /* Maximum pixel */
- }
- else
- {
- putlong(-32768, sgip->file); /* Minimum pixel */
- putlong(32767, sgip->file); /* Maximum pixel */
- }
- putlong(0, sgip->file); /* Reserved */
-
- memset(name, 0, sizeof(name));
- fwrite(name, sizeof(name), 1, sgip->file);
-
- for (i = 0; i < 102; i ++)
- putlong(0, sgip->file);
-
- switch (comp)
- {
- case SGI_COMP_NONE : /* No compression */
- /*
- * This file is uncompressed. To avoid problems with sparse files,
- * we need to write blank pixels for the entire image...
- */
-
- if (bpp == 1)
- {
- for (i = xsize * ysize * zsize; i > 0; i --)
- putc(0, sgip->file);
- }
- else
- {
- for (i = xsize * ysize * zsize; i > 0; i --)
- putshort(0, sgip->file);
- }
- break;
-
- case SGI_COMP_ARLE : /* Aggressive RLE */
- sgip->arle_row = calloc(xsize, sizeof(unsigned short));
- sgip->arle_offset = 0;
-
- case SGI_COMP_RLE : /* Run-Length Encoding */
- /*
- * This file is compressed; write the (blank) scanline tables...
- */
-
- for (i = 2 * ysize * zsize; i > 0; i --)
- putlong(0, sgip->file);
-
- sgip->firstrow = ftell(sgip->file);
- sgip->nextrow = ftell(sgip->file);
- if ((sgip->table = calloc(sgip->zsize, sizeof(long *))) == NULL)
- {
- free(sgip);
- return (NULL);
- }
-
- if ((sgip->table[0] = calloc(sgip->ysize * sgip->zsize,
- sizeof(long))) == NULL)
- {
- free(sgip->table);
- free(sgip);
- return (NULL);
- }
-
- for (i = 1; i < sgip->zsize; i ++)
- sgip->table[i] = sgip->table[0] + i * sgip->ysize;
-
- if ((sgip->length = calloc(sgip->zsize, sizeof(long *))) == NULL)
- {
- free(sgip->table);
- free(sgip);
- return (NULL);
- }
-
- if ((sgip->length[0] = calloc(sgip->ysize * sgip->zsize,
- sizeof(long))) == NULL)
- {
- free(sgip->length);
- free(sgip->table);
- free(sgip);
- return (NULL);
- }
-
- for (i = 1; i < sgip->zsize; i ++)
- sgip->length[i] = sgip->length[0] + i * sgip->ysize;
- break;
- }
- break;
-
- default :
- free(sgip);
- return (NULL);
- }
-
- return (sgip);
-}
-
-
-/*
- * 'sgiPutRow()' - Put a row of image data to a file.
- */
-
-int /* O - 0 on success, -1 on error */
-sgiPutRow(sgi_t *sgip, /* I - SGI image */
- unsigned short *row, /* I - Row to write */
- int y, /* I - Line to write */
- int z) /* I - Channel to write */
-{
- int x; /* X coordinate */
- long offset; /* File offset */
-
-
- if (sgip == NULL ||
- row == NULL ||
- y < 0 || y >= sgip->ysize ||
- z < 0 || z >= sgip->zsize)
- return (-1);
-
- switch (sgip->comp)
- {
- case SGI_COMP_NONE :
- /*
- * Seek to the image row - optimize buffering by only seeking if
- * necessary...
- */
-
- offset = 512 + (y + z * sgip->ysize) * sgip->xsize * sgip->bpp;
- if (offset != ftell(sgip->file))
- fseek(sgip->file, offset, SEEK_SET);
-
- if (sgip->bpp == 1)
- {
- for (x = sgip->xsize; x > 0; x --, row ++)
- putc(*row, sgip->file);
- }
- else
- {
- for (x = sgip->xsize; x > 0; x --, row ++)
- putshort(*row, sgip->file);
- }
- break;
-
- case SGI_COMP_ARLE :
- if (sgip->table[z][y] != 0)
- return (-1);
-
- /*
- * First check the last row written...
- */
-
- if (sgip->arle_offset > 0)
- {
- for (x = 0; x < sgip->xsize; x ++)
- if (row[x] != sgip->arle_row[x])
- break;
-
- if (x == sgip->xsize)
- {
- sgip->table[z][y] = sgip->arle_offset;
- sgip->length[z][y] = sgip->arle_length;
- return (0);
- }
- }
-
- /*
- * If that didn't match, search all the previous rows...
- */
-
- fseek(sgip->file, sgip->firstrow, SEEK_SET);
-
- if (sgip->bpp == 1)
- {
- for (;;)
- {
- sgip->arle_offset = ftell(sgip->file);
- if ((sgip->arle_length = read_rle8(sgip->file, sgip->arle_row, sgip->xsize)) < 0)
- {
- x = 0;
- break;
- }
-
- if (memcmp(row, sgip->arle_row, sgip->xsize * sizeof(unsigned short)) == 0)
- {
- x = sgip->xsize;
- break;
- }
- }
- }
- else
- {
- for (;;)
- {
- sgip->arle_offset = ftell(sgip->file);
- if ((sgip->arle_length = read_rle16(sgip->file, sgip->arle_row, sgip->xsize)) < 0)
- {
- x = 0;
- break;
- }
-
- if (memcmp(row, sgip->arle_row, sgip->xsize * sizeof(unsigned short)) == 0)
- {
- x = sgip->xsize;
- break;
- }
- }
- }
-
- if (x == sgip->xsize)
- {
- sgip->table[z][y] = sgip->arle_offset;
- sgip->length[z][y] = sgip->arle_length;
- return (0);
- }
- else
- fseek(sgip->file, 0, SEEK_END); /* Clear EOF */
-
- case SGI_COMP_RLE :
- if (sgip->table[z][y] != 0)
- return (-1);
-
- offset = sgip->table[z][y] = sgip->nextrow;
-
- if (offset != ftell(sgip->file))
- fseek(sgip->file, offset, SEEK_SET);
-
- if (sgip->bpp == 1)
- x = write_rle8(sgip->file, row, sgip->xsize);
- else
- x = write_rle16(sgip->file, row, sgip->xsize);
-
- if (sgip->comp == SGI_COMP_ARLE)
- {
- sgip->arle_offset = offset;
- sgip->arle_length = x;
- memcpy(sgip->arle_row, row, sgip->xsize * sizeof(unsigned short));
- }
-
- sgip->nextrow = ftell(sgip->file);
- sgip->length[z][y] = x;
-
- return (x);
- }
-
- return (0);
-}
-
-
-/*
- * 'getlong()' - Get a 32-bit big-endian integer.
- */
-
-static int /* O - Long value */
-getlong(FILE *fp) /* I - File to read from */
-{
- unsigned char b[4]; /* Bytes from file */
-
-
- fread(b, 4, 1, fp);
- return ((b[0] << 24) | (b[1] << 16) | (b[2] << 8) | b[3]);
-}
-
-
-/*
- * 'getshort()' - Get a 16-bit big-endian integer.
- */
-
-static int /* O - Short value */
-getshort(FILE *fp) /* I - File to read from */
-{
- unsigned char b[2]; /* Bytes from file */
-
-
- fread(b, 2, 1, fp);
- return ((b[0] << 8) | b[1]);
-}
-
-
-/*
- * 'putlong()' - Put a 32-bit big-endian integer.
- */
-
-static int /* O - 0 on success, -1 on error */
-putlong(long n, /* I - Long to write */
- FILE *fp) /* I - File to write to */
-{
- if (putc(n >> 24, fp) == EOF)
- return (EOF);
- if (putc(n >> 16, fp) == EOF)
- return (EOF);
- if (putc(n >> 8, fp) == EOF)
- return (EOF);
- if (putc(n, fp) == EOF)
- return (EOF);
- else
- return (0);
-}
-
-
-/*
- * 'putshort()' - Put a 16-bit big-endian integer.
- */
-
-static int /* O - 0 on success, -1 on error */
-putshort(unsigned short n, /* I - Short to write */
- FILE *fp) /* I - File to write to */
-{
- if (putc(n >> 8, fp) == EOF)
- return (EOF);
- if (putc(n, fp) == EOF)
- return (EOF);
- else
- return (0);
-}
-
-
-/*
- * 'read_rle8()' - Read 8-bit RLE data.
- */
-
-static int /* O - Value on success, -1 on error */
-read_rle8(FILE *fp, /* I - File to read from */
- unsigned short *row, /* O - Data */
- int xsize) /* I - Width of data in pixels */
-{
- int i, /* Looping var */
- ch, /* Current character */
- count, /* RLE count */
- length; /* Number of bytes read... */
-
-
- length = 0;
-
- while (xsize > 0)
- {
- if ((ch = getc(fp)) == EOF)
- return (-1);
- length ++;
-
- count = ch & 127;
- if (count == 0)
- break;
-
- if (ch & 128)
- {
- for (i = 0; i < count; i ++, row ++, xsize --, length ++)
- if (xsize > 0)
- *row = getc(fp);
- }
- else
- {
- ch = getc(fp);
- length ++;
- for (i = 0; i < count && xsize > 0; i ++, row ++, xsize --)
- *row = ch;
- }
- }
-
- return (xsize > 0 ? -1 : length);
-}
-
-
-/*
- * 'read_rle16()' - Read 16-bit RLE data.
- */
-
-static int /* O - Value on success, -1 on error */
-read_rle16(FILE *fp, /* I - File to read from */
- unsigned short *row, /* O - Data */
- int xsize) /* I - Width of data in pixels */
-{
- int i, /* Looping var */
- ch, /* Current character */
- count, /* RLE count */
- length; /* Number of bytes read... */
-
-
- length = 0;
-
- while (xsize > 0)
- {
- if ((ch = getshort(fp)) == EOF)
- return (-1);
- length ++;
-
- count = ch & 127;
- if (count == 0)
- break;
-
- if (ch & 128)
- {
- for (i = 0; i < count; i ++, row ++, xsize --, length ++)
- if (xsize > 0)
- *row = getshort(fp);
- }
- else
- {
- ch = getshort(fp);
- length ++;
- for (i = 0; i < count && xsize > 0; i ++, row ++, xsize --)
- *row = ch;
- }
- }
-
- return (xsize > 0 ? -1 : length * 2);
-}
-
-
-/*
- * 'write_rle8()' - Write 8-bit RLE data.
- */
-
-static int /* O - Length on success, -1 on error */
-write_rle8(FILE *fp, /* I - File to write to */
- unsigned short *row, /* I - Data */
- int xsize) /* I - Width of data in pixels */
-{
- int length, /* Length in bytes */
- count, /* Number of repeating pixels */
- i, /* Looping var */
- x; /* Current column */
- unsigned short *start, /* Start of current sequence */
- repeat; /* Repeated pixel */
-
-
- for (x = xsize, length = 0; x > 0;)
- {
- start = row;
- row += 2;
- x -= 2;
-
- while (x > 0 && (row[-2] != row[-1] || row[-1] != row[0]))
- {
- row ++;
- x --;
- }
-
- row -= 2;
- x += 2;
-
- count = row - start;
- while (count > 0)
- {
- i = count > 126 ? 126 : count;
- count -= i;
-
- if (putc(128 | i, fp) == EOF)
- return (-1);
- length ++;
-
- while (i > 0)
- {
- if (putc(*start, fp) == EOF)
- return (-1);
- start ++;
- i --;
- length ++;
- }
- }
-
- if (x <= 0)
- break;
-
- start = row;
- repeat = row[0];
-
- row ++;
- x --;
-
- while (x > 0 && *row == repeat)
- {
- row ++;
- x --;
- }
-
- count = row - start;
- while (count > 0)
- {
- i = count > 126 ? 126 : count;
- count -= i;
-
- if (putc(i, fp) == EOF)
- return (-1);
- length ++;
-
- if (putc(repeat, fp) == EOF)
- return (-1);
- length ++;
- }
- }
-
- length ++;
-
- if (putc(0, fp) == EOF)
- return (-1);
- else
- return (length);
-}
-
-
-/*
- * 'write_rle16()' - Write 16-bit RLE data.
- */
-
-static int /* O - Length in words */
-write_rle16(FILE *fp, /* I - File to write to */
- unsigned short *row, /* I - Data */
- int xsize) /* I - Width of data in pixels */
-{
- int length, /* Length in words */
- count, /* Number of repeating pixels */
- i, /* Looping var */
- x; /* Current column */
- unsigned short *start, /* Start of current sequence */
- repeat; /* Repeated pixel */
-
-
- for (x = xsize, length = 0; x > 0;)
- {
- start = row;
- row += 2;
- x -= 2;
-
- while (x > 0 && (row[-2] != row[-1] || row[-1] != row[0]))
- {
- row ++;
- x --;
- }
-
- row -= 2;
- x += 2;
-
- count = row - start;
- while (count > 0)
- {
- i = count > 126 ? 126 : count;
- count -= i;
-
- if (putshort(128 | i, fp) == EOF)
- return (-1);
- length ++;
-
- while (i > 0)
- {
- if (putshort(*start, fp) == EOF)
- return (-1);
- start ++;
- i --;
- length ++;
- }
- }
-
- if (x <= 0)
- break;
-
- start = row;
- repeat = row[0];
-
- row ++;
- x --;
-
- while (x > 0 && *row == repeat)
- {
- row ++;
- x --;
- }
-
- count = row - start;
- while (count > 0)
- {
- i = count > 126 ? 126 : count;
- count -= i;
-
- if (putshort(i, fp) == EOF)
- return (-1);
- length ++;
-
- if (putshort(repeat, fp) == EOF)
- return (-1);
- length ++;
- }
- }
-
- length ++;
-
- if (putshort(0, fp) == EOF)
- return (-1);
- else
- return (2 * length);
-}
-
-
-/*
- * End of "$Id: image-sgilib.c 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-sun.c b/filter/image-sun.c
deleted file mode 100644
index 9b7db480..00000000
--- a/filter/image-sun.c
+++ /dev/null
@@ -1,407 +0,0 @@
-/*
- * "$Id: image-sun.c 9771 2011-05-12 05:21:56Z mike $"
- *
- * Sun Raster image file routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageReadSunRaster() - Read a SunRaster image file.
- * read_unsigned() - Read a 32-bit unsigned integer.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-
-#define RAS_MAGIC 0x59a66a95
-
- /* Sun supported ras_type's */
-#define RT_OLD 0 /* Raw pixrect image in 68000 byte order */
-#define RT_STANDARD 1 /* Raw pixrect image in 68000 byte order */
-#define RT_BYTE_ENCODED 2 /* Run-length compression of bytes */
-#define RT_FORMAT_RGB 3 /* XRGB or RGB instead of XBGR or BGR */
-#define RT_EXPERIMENTAL 0xffff /* Reserved for testing */
-
- /* Sun registered ras_maptype's */
-#define RMT_RAW 2
- /* Sun supported ras_maptype's */
-#define RMT_NONE 0 /* ras_maplength is expected to be 0 */
-#define RMT_EQUAL_RGB 1 /* red[ras_maplength/3],green[],blue[] */
-
-#define RAS_RLE 0x80
-
-/*
- * NOTES:
- * Each line of the image is rounded out to a multiple of 16 bits.
- * This corresponds to the rounding convention used by the memory pixrect
- * package (/usr/include/pixrect/memvar.h) of the SunWindows system.
- * The ras_encoding field (always set to 0 by Sun's supported software)
- * was renamed to ras_length in release 2.0. As a result, rasterfiles
- * of type 0 generated by the old software claim to have 0 length; for
- * compatibility, code reading rasterfiles must be prepared to compute the
- * true length from the width, height, and depth fields.
- */
-
-/*
- * Local functions...
- */
-
-static unsigned read_unsigned(FILE *fp);
-
-
-/*
- * '_cupsImageReadSunRaster()' - Read a SunRaster image file.
- */
-
-int /* O - Read status */
-_cupsImageReadSunRaster(
- cups_image_t *img, /* IO - cupsImage */
- FILE *fp, /* I - cupsImage file */
- cups_icspace_t primary, /* I - Primary choice for colorspace */
- cups_icspace_t secondary, /* I - Secondary choice for colorspace */
- int saturation, /* I - Color saturation (%) */
- int hue, /* I - Color hue (degrees) */
- const cups_ib_t *lut) /* I - Lookup table for gamma/brightness */
-{
- int i, x, y,
- bpp, /* Bytes per pixel */
- scanwidth,
- run_count,
- run_value;
- cups_ib_t *in,
- *out,
- *scanline,
- *scanptr,
- *p,
- bit;
- unsigned ras_depth, /* depth (1, 8, or 24 bits) of pixel */
- ras_type, /* type of file; see RT_* below */
- ras_maplength; /* length (bytes) of following map */
- unsigned char cmap[3][256]; /* colormap */
-
-
- /*
- * Read the header; we already know that this is a raster file (cupsImageOpen
- * checks this) so we don't need to check the magic number again.
- */
-
- fputs("DEBUG: Reading Sun Raster image...\n", stderr);
-
- read_unsigned(fp); /* Skip magic */
- img->xsize = read_unsigned(fp);
- img->ysize = read_unsigned(fp);
- ras_depth = read_unsigned(fp);
- /* ras_length */read_unsigned(fp);
- ras_type = read_unsigned(fp);
- /* ras_maptype*/read_unsigned(fp);
- ras_maplength = read_unsigned(fp);
-
- fprintf(stderr, "DEBUG: ras_width=%d, ras_height=%d, ras_depth=%d, ras_type=%d, ras_maplength=%d\n",
- img->xsize, img->ysize, ras_depth, ras_type, ras_maplength);
-
- if (ras_maplength > 768 ||
- img->xsize == 0 || img->xsize > CUPS_IMAGE_MAX_WIDTH ||
- img->ysize == 0 || img->ysize > CUPS_IMAGE_MAX_HEIGHT ||
- ras_depth == 0 || ras_depth > 32)
- {
- fputs("DEBUG: Raster image cannot be loaded!\n", stderr);
- return (1);
- }
-
- if (ras_maplength > 0)
- {
- memset(cmap[0], 255, sizeof(cmap[0]));
- memset(cmap[1], 0, sizeof(cmap[1]));
- memset(cmap[2], 0, sizeof(cmap[2]));
-
- fread(cmap[0], 1, ras_maplength / 3, fp);
- fread(cmap[1], 1, ras_maplength / 3, fp);
- fread(cmap[2], 1, ras_maplength / 3, fp);
- }
-
- /*
- * Compute the width of each line and allocate memory as needed...
- */
-
- scanwidth = (img->xsize * ras_depth + 7) / 8;
- if (scanwidth & 1)
- scanwidth ++;
-
- if (ras_depth < 24 && ras_maplength == 0)
- {
- img->colorspace = secondary;
- in = malloc(img->xsize + 1);
- }
- else
- {
- img->colorspace = (primary == CUPS_IMAGE_RGB_CMYK) ? CUPS_IMAGE_RGB : primary;
- in = malloc(img->xsize * 3 + 1);
- }
-
- if (!in)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- return (1);
- }
-
- bpp = cupsImageGetDepth(img);
-
- if ((out = malloc(img->xsize * bpp)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- free(in);
- return (1);
- }
-
- if ((scanline = malloc(scanwidth)) == NULL)
- {
- fputs("DEBUG: Unable to allocate memory!\n", stderr);
- fclose(fp);
- free(in);
- free(out);
- return (1);
- }
-
- run_count = 0;
- run_value = 0;
-
- fprintf(stderr, "DEBUG: bpp=%d, scanwidth=%d\n", bpp, scanwidth);
-
- for (y = 0; y < img->ysize; y ++)
- {
- if ((ras_depth != 8 && ras_depth != 24) || ras_maplength > 0)
- p = scanline;
- else
- p = in;
-
- if (ras_type != RT_BYTE_ENCODED)
- fread(p, scanwidth, 1, fp);
- else
- {
- for (i = scanwidth; i > 0; i --, p ++)
- {
- if (run_count > 0)
- {
- *p = run_value;
- run_count --;
- }
- else
- {
- run_value = getc(fp);
-
- if (run_value == RAS_RLE)
- {
- run_count = getc(fp);
- if (run_count == 0)
- *p = RAS_RLE;
- else
- run_value = *p = getc(fp);
- }
- else
- *p = run_value;
- }
- }
- }
-
- if (ras_depth == 1 && ras_maplength == 0)
- {
- /*
- * 1-bit B&W image...
- */
-
- for (x = img->xsize, bit = 128, scanptr = scanline, p = in;
- x > 0;
- x --, p ++)
- {
- if (*scanptr & bit)
- *p = 255;
- else
- *p = 0;
-
- if (bit > 1)
- bit >>= 1;
- else
- {
- bit = 128;
- scanptr ++;
- }
- }
- }
- else if (ras_depth == 1)
- {
- /*
- * 1-bit colormapped image...
- */
-
- for (x = img->xsize, bit = 128, scanptr = scanline, p = in;
- x > 0;
- x --)
- {
- if (*scanptr & bit)
- {
- *p++ = cmap[0][1];
- *p++ = cmap[1][1];
- *p++ = cmap[2][1];
- }
- else
- {
- *p++ = cmap[0][0];
- *p++ = cmap[1][0];
- *p++ = cmap[2][0];
- }
-
- if (bit > 1)
- bit >>= 1;
- else
- {
- bit = 128;
- scanptr ++;
- }
- }
- }
- else if (ras_depth == 8 && ras_maplength > 0)
- {
- /*
- * 8-bit colormapped image.
- */
-
- for (x = img->xsize, scanptr = scanline, p = in;
- x > 0;
- x --)
- {
- *p++ = cmap[0][*scanptr];
- *p++ = cmap[1][*scanptr];
- *p++ = cmap[2][*scanptr++];
- }
- }
- else if (ras_depth == 24 && ras_type != RT_FORMAT_RGB)
- {
- /*
- * Convert BGR to RGB...
- */
-
- for (x = img->xsize, scanptr = scanline, p = in;
- x > 0;
- x --, scanptr += 3)
- {
- *p++ = scanptr[2];
- *p++ = scanptr[1];
- *p++ = scanptr[0];
- }
- }
-
- if (ras_depth <= 8 && ras_maplength == 0)
- {
- if (img->colorspace == CUPS_IMAGE_WHITE)
- {
- if (lut)
- cupsImageLut(in, img->xsize, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, in);
- }
- else
- {
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_RGB :
- cupsImageWhiteToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageWhiteToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageWhiteToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageWhiteToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- }
- else
- {
- if ((saturation != 100 || hue != 0) && bpp > 1)
- cupsImageRGBAdjust(in, img->xsize, saturation, hue);
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- }
-
- free(scanline);
- free(in);
- free(out);
-
- fclose(fp);
-
- return (0);
-}
-
-
-/*
- * 'read_unsigned()' - Read a 32-bit unsigned integer.
- */
-
-static unsigned /* O - Integer from file */
-read_unsigned(FILE *fp) /* I - File to read from */
-{
- unsigned v; /* Integer from file */
-
-
- v = getc(fp);
- v = (v << 8) | getc(fp);
- v = (v << 8) | getc(fp);
- v = (v << 8) | getc(fp);
-
- return (v);
-}
-
-
-/*
- * End of "$Id: image-sun.c 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-tiff.c b/filter/image-tiff.c
deleted file mode 100644
index e8893d27..00000000
--- a/filter/image-tiff.c
+++ /dev/null
@@ -1,1715 +0,0 @@
-/*
- * "$Id: image-tiff.c 9771 2011-05-12 05:21:56Z mike $"
- *
- * TIFF file routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageReadTIFF() - Read a TIFF image file.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-#ifdef HAVE_LIBTIFF
-# include <tiff.h> /* TIFF image definitions */
-# include <tiffio.h>
-# include <unistd.h>
-
-
-/*
- * '_cupsImageReadTIFF()' - Read a TIFF image file.
- */
-
-int /* O - Read status */
-_cupsImageReadTIFF(
- cups_image_t *img, /* IO - cupsImage */
- FILE *fp, /* I - cupsImage file */
- cups_icspace_t primary, /* I - Primary choice for colorspace */
- cups_icspace_t secondary, /* I - Secondary choice for colorspace */
- int saturation, /* I - Color saturation (%) */
- int hue, /* I - Color hue (degrees) */
- const cups_ib_t *lut) /* I - Lookup table for gamma/brightness */
-{
- TIFF *tif; /* TIFF file */
- uint32 width, height; /* Size of image */
- uint16 photometric, /* Colorspace */
- compression, /* Type of compression */
- orientation, /* Orientation */
- resunit, /* Units for resolution */
- samples, /* Number of samples/pixel */
- bits, /* Number of bits/pixel */
- inkset, /* Ink set for color separations */
- numinks; /* Number of inks in set */
- float xres, /* Horizontal resolution */
- yres; /* Vertical resolution */
- uint16 *redcmap, /* Red colormap information */
- *greencmap, /* Green colormap information */
- *bluecmap; /* Blue colormap information */
- int c, /* Color index */
- num_colors, /* Number of colors */
- bpp, /* Bytes per pixel */
- x, y, /* Current x & y */
- row, /* Current row in image */
- xstart, ystart, /* Starting x & y */
- xdir, ydir, /* X & y direction */
- xcount, ycount, /* X & Y counters */
- pstep, /* Pixel step (= bpp or -2 * bpp) */
- scanwidth, /* Width of scanline */
- r, g, b, k, /* Red, green, blue, and black values */
- alpha; /* cupsImage includes alpha? */
- cups_ib_t *in, /* Input buffer */
- *out, /* Output buffer */
- *p, /* Pointer into buffer */
- *scanline, /* Scanline buffer */
- *scanptr, /* Pointer into scanline buffer */
- bit, /* Current bit */
- pixel, /* Current pixel */
- zero, /* Zero value (bitmaps) */
- one; /* One value (bitmaps) */
-
-
- /*
- * Open the TIFF file and get the required parameters...
- */
-
- lseek(fileno(fp), 0, SEEK_SET); /* Work around "feature" in some stdio's */
-
- if ((tif = TIFFFdOpen(fileno(fp), "", "r")) == NULL)
- {
- fputs("DEBUG: TIFFFdOpen() failed!\n", stderr);
- fclose(fp);
- return (-1);
- }
-
- if (!TIFFGetField(tif, TIFFTAG_IMAGEWIDTH, &width))
- {
- fputs("DEBUG: No image width tag in the file!\n", stderr);
- TIFFClose(tif);
- fclose(fp);
- return (-1);
- }
-
- if (!TIFFGetField(tif, TIFFTAG_IMAGELENGTH, &height))
- {
- fputs("DEBUG: No image height tag in the file!\n", stderr);
- TIFFClose(tif);
- fclose(fp);
- return (-1);
- }
-
- if (!TIFFGetField(tif, TIFFTAG_PHOTOMETRIC, &photometric))
- {
- fputs("DEBUG: No photometric tag in the file!\n", stderr);
- TIFFClose(tif);
- fclose(fp);
- return (-1);
- }
-
- if (!TIFFGetField(tif, TIFFTAG_COMPRESSION, &compression))
- {
- fputs("DEBUG: No compression tag in the file!\n", stderr);
- TIFFClose(tif);
- fclose(fp);
- return (-1);
- }
-
- if (!TIFFGetField(tif, TIFFTAG_SAMPLESPERPIXEL, &samples))
- samples = 1;
-
- if (!TIFFGetField(tif, TIFFTAG_BITSPERSAMPLE, &bits))
- bits = 1;
-
- /*
- * Get the image orientation...
- */
-
- if (!TIFFGetField(tif, TIFFTAG_ORIENTATION, &orientation))
- orientation = 0;
-
- /*
- * Get the image resolution...
- */
-
- if (TIFFGetField(tif, TIFFTAG_XRESOLUTION, &xres) &&
- TIFFGetField(tif, TIFFTAG_YRESOLUTION, &yres) &&
- TIFFGetField(tif, TIFFTAG_RESOLUTIONUNIT, &resunit))
- {
- if (resunit == RESUNIT_INCH)
- {
- img->xppi = xres;
- img->yppi = yres;
- }
- else if (resunit == RESUNIT_CENTIMETER)
- {
- img->xppi = xres * 2.54;
- img->yppi = yres * 2.54;
- }
- else
- {
- img->xppi = 128;
- img->yppi = 128;
- }
-
- if (img->xppi == 0 || img->yppi == 0)
- {
- fputs("DEBUG: Bad TIFF resolution.\n", stderr);
- img->xppi = img->yppi = 128;
- }
-
- fprintf(stderr, "DEBUG: TIFF resolution = %fx%f, units=%d\n",
- xres, yres, resunit);
- fprintf(stderr, "DEBUG: Stored resolution = %dx%d PPI\n",
- img->xppi, img->yppi);
- }
-
- /*
- * See if the image has an alpha channel...
- */
-
- if (samples == 2 || (samples == 4 && photometric == PHOTOMETRIC_RGB))
- alpha = 1;
- else
- alpha = 0;
-
- /*
- * Check the size of the image...
- */
-
- if (width == 0 || width > CUPS_IMAGE_MAX_WIDTH ||
- height == 0 || height > CUPS_IMAGE_MAX_HEIGHT ||
- (bits != 1 && bits != 2 && bits != 4 && bits != 8) ||
- samples < 1 || samples > 4)
- {
- fprintf(stderr, "DEBUG: Bad TIFF dimensions %ux%ux%ux%u!\n",
- (unsigned)width, (unsigned)height, (unsigned)bits,
- (unsigned)samples);
- TIFFClose(tif);
- fclose(fp);
- return (1);
- }
-
- /*
- * Setup the image size and colorspace...
- */
-
- img->xsize = width;
- img->ysize = height;
- if (photometric == PHOTOMETRIC_MINISBLACK ||
- photometric == PHOTOMETRIC_MINISWHITE)
- img->colorspace = secondary;
- else if (photometric == PHOTOMETRIC_SEPARATED && primary == CUPS_IMAGE_RGB_CMYK)
- img->colorspace = CUPS_IMAGE_CMYK;
- else if (primary == CUPS_IMAGE_RGB_CMYK)
- img->colorspace = CUPS_IMAGE_RGB;
- else
- img->colorspace = primary;
-
- fprintf(stderr, "DEBUG: img->colorspace = %d\n", img->colorspace);
-
- bpp = cupsImageGetDepth(img);
-
- cupsImageSetMaxTiles(img, 0);
-
- /*
- * Set the X & Y start and direction according to the image orientation...
- */
-
- switch (orientation)
- {
- case ORIENTATION_TOPRIGHT :
- fputs("DEBUG: orientation = top-right\n", stderr);
- break;
- case ORIENTATION_RIGHTTOP :
- fputs("DEBUG: orientation = right-top\n", stderr);
- break;
- default :
- case ORIENTATION_TOPLEFT :
- fputs("DEBUG: orientation = top-left\n", stderr);
- break;
- case ORIENTATION_LEFTTOP :
- fputs("DEBUG: orientation = left-top\n", stderr);
- break;
- case ORIENTATION_BOTLEFT :
- fputs("DEBUG: orientation = bottom-left\n", stderr);
- break;
- case ORIENTATION_LEFTBOT :
- fputs("DEBUG: orientation = left-bottom\n", stderr);
- break;
- case ORIENTATION_BOTRIGHT :
- fputs("DEBUG: orientation = bottom-right\n", stderr);
- break;
- case ORIENTATION_RIGHTBOT :
- fputs("DEBUG: orientation = right-bottom\n", stderr);
- break;
- }
-
- switch (orientation)
- {
- case ORIENTATION_TOPRIGHT :
- case ORIENTATION_RIGHTTOP :
- xstart = img->xsize - 1;
- xdir = -1;
- ystart = 0;
- ydir = 1;
- break;
- default :
- case ORIENTATION_TOPLEFT :
- case ORIENTATION_LEFTTOP :
- xstart = 0;
- xdir = 1;
- ystart = 0;
- ydir = 1;
- break;
- case ORIENTATION_BOTLEFT :
- case ORIENTATION_LEFTBOT :
- xstart = 0;
- xdir = 1;
- ystart = img->ysize - 1;
- ydir = -1;
- break;
- case ORIENTATION_BOTRIGHT :
- case ORIENTATION_RIGHTBOT :
- xstart = img->xsize - 1;
- xdir = -1;
- ystart = img->ysize - 1;
- ydir = -1;
- break;
- }
-
- /*
- * Allocate a scanline buffer...
- */
-
- scanwidth = TIFFScanlineSize(tif);
- scanline = _TIFFmalloc(scanwidth);
-
- /*
- * Allocate input and output buffers...
- */
-
- if (orientation < ORIENTATION_LEFTTOP)
- {
- if (samples > 1 || photometric == PHOTOMETRIC_PALETTE)
- pstep = xdir * 3;
- else
- pstep = xdir;
-
- in = malloc(img->xsize * 3 + 3);
- out = malloc(img->xsize * bpp);
- }
- else
- {
- if (samples > 1 || photometric == PHOTOMETRIC_PALETTE)
- pstep = ydir * 3;
- else
- pstep = ydir;
-
- in = malloc(img->ysize * 3 + 3);
- out = malloc(img->ysize * bpp);
- }
-
- /*
- * Read the image. This is greatly complicated by the fact that TIFF
- * supports literally hundreds of different colorspaces and orientations,
- * each which must be handled separately...
- */
-
- fprintf(stderr, "DEBUG: photometric = %d\n", photometric);
- fprintf(stderr, "DEBUG: compression = %d\n", compression);
-
- switch (photometric)
- {
- case PHOTOMETRIC_MINISWHITE :
- case PHOTOMETRIC_MINISBLACK :
- if (photometric == PHOTOMETRIC_MINISWHITE)
- {
- zero = 255;
- one = 0;
- }
- else
- {
- zero = 0;
- one = 255;
- }
-
- if (orientation < ORIENTATION_LEFTTOP)
- {
- /*
- * Row major order...
- */
-
- for (y = ystart, ycount = img->ysize, row = 0;
- ycount > 0;
- ycount --, y += ydir, row ++)
- {
- if (bits == 1)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline, p = in + xstart, bit = 128;
- xcount > 0;
- xcount --, p += pstep)
- {
- if (*scanptr & bit)
- *p = one;
- else
- *p = zero;
-
- if (bit > 1)
- bit >>= 1;
- else
- {
- bit = 128;
- scanptr ++;
- }
- }
- }
- else if (bits == 2)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline, p = in + xstart, bit = 0xc0;
- xcount > 0;
- xcount --, p += pstep)
- {
- pixel = *scanptr & bit;
- while (pixel > 3)
- pixel >>= 2;
- *p = (255 * pixel / 3) ^ zero;
-
- if (bit > 3)
- bit >>= 2;
- else
- {
- bit = 0xc0;
- scanptr ++;
- }
- }
- }
- else if (bits == 4)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline, p = in + xstart, bit = 0xf0;
- xcount > 0;
- xcount --, p += pstep)
- {
- if (bit == 0xf0)
- {
- *p = (255 * ((*scanptr & 0xf0) >> 4) / 15) ^ zero;
- bit = 0x0f;
- }
- else
- {
- *p = (255 * (*scanptr & 0x0f) / 15) ^ zero;
- bit = 0xf0;
- scanptr ++;
- }
- }
- }
- else if (xdir < 0 || zero || alpha)
- {
- TIFFReadScanline(tif, scanline, row, 0);
-
- if (alpha)
- {
- if (zero)
- {
- for (xcount = img->xsize, p = in + xstart, scanptr = scanline;
- xcount > 0;
- xcount --, p += pstep, scanptr += 2)
- *p = (scanptr[1] * (255 - scanptr[0]) +
- (255 - scanptr[1]) * 255) / 255;
- }
- else
- {
- for (xcount = img->xsize, p = in + xstart, scanptr = scanline;
- xcount > 0;
- xcount --, p += pstep, scanptr += 2)
- *p = (scanptr[1] * scanptr[0] +
- (255 - scanptr[1]) * 255) / 255;
- }
- }
- else
- {
- if (zero)
- {
- for (xcount = img->xsize, p = in + xstart, scanptr = scanline;
- xcount > 0;
- xcount --, p += pstep, scanptr ++)
- *p = 255 - *scanptr;
- }
- else
- {
- for (xcount = img->xsize, p = in + xstart, scanptr = scanline;
- xcount > 0;
- xcount --, p += pstep, scanptr ++)
- *p = *scanptr;
- }
- }
- }
- else
- TIFFReadScanline(tif, in, row, 0);
-
- if (img->colorspace == CUPS_IMAGE_WHITE)
- {
- if (lut)
- cupsImageLut(in, img->xsize, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, in);
- }
- else
- {
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_RGB :
- cupsImageWhiteToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageWhiteToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageWhiteToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageWhiteToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- }
- }
- else
- {
- /*
- * Column major order...
- */
-
- for (x = xstart, xcount = img->xsize, row = 0;
- xcount > 0;
- xcount --, x += xdir, row ++)
- {
- if (bits == 1)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline, p = in + ystart, bit = 128;
- ycount > 0;
- ycount --, p += ydir)
- {
- if (*scanptr & bit)
- *p = one;
- else
- *p = zero;
-
- if (bit > 1)
- bit >>= 1;
- else
- {
- bit = 128;
- scanptr ++;
- }
- }
- }
- else if (bits == 2)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline, p = in + ystart, bit = 0xc0;
- ycount > 0;
- ycount --, p += ydir)
- {
- pixel = *scanptr & 0xc0;
- while (pixel > 3)
- pixel >>= 2;
-
- *p = (255 * pixel / 3) ^ zero;
-
- if (bit > 3)
- bit >>= 2;
- else
- {
- bit = 0xc0;
- scanptr ++;
- }
- }
- }
- else if (bits == 4)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline, p = in + ystart, bit = 0xf0;
- ycount > 0;
- ycount --, p += ydir)
- {
- if (bit == 0xf0)
- {
- *p = (255 * ((*scanptr & 0xf0) >> 4) / 15) ^ zero;
- bit = 0x0f;
- }
- else
- {
- *p = (255 * (*scanptr & 0x0f) / 15) ^ zero;
- bit = 0xf0;
- scanptr ++;
- }
- }
- }
- else if (ydir < 0 || zero || alpha)
- {
- TIFFReadScanline(tif, scanline, row, 0);
-
- if (alpha)
- {
- if (zero)
- {
- for (ycount = img->ysize, p = in + ystart, scanptr = scanline;
- ycount > 0;
- ycount --, p += ydir, scanptr += 2)
- *p = (scanptr[1] * (255 - scanptr[0]) +
- (255 - scanptr[1]) * 255) / 255;
- }
- else
- {
- for (ycount = img->ysize, p = in + ystart, scanptr = scanline;
- ycount > 0;
- ycount --, p += ydir, scanptr += 2)
- *p = (scanptr[1] * scanptr[0] +
- (255 - scanptr[1]) * 255) / 255;
- }
- }
- else
- {
- if (zero)
- {
- for (ycount = img->ysize, p = in + ystart, scanptr = scanline;
- ycount > 0;
- ycount --, p += ydir, scanptr ++)
- *p = 255 - *scanptr;
- }
- else
- {
- for (ycount = img->ysize, p = in + ystart, scanptr = scanline;
- ycount > 0;
- ycount --, p += ydir, scanptr ++)
- *p = *scanptr;
- }
- }
- }
- else
- TIFFReadScanline(tif, in, row, 0);
-
- if (img->colorspace == CUPS_IMAGE_WHITE)
- {
- if (lut)
- cupsImageLut(in, img->ysize, lut);
-
- _cupsImagePutCol(img, x, 0, img->ysize, in);
- }
- else
- {
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_RGB :
- cupsImageWhiteToRGB(in, out, img->ysize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageWhiteToBlack(in, out, img->ysize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageWhiteToCMY(in, out, img->ysize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageWhiteToCMYK(in, out, img->ysize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->ysize * bpp, lut);
-
- _cupsImagePutCol(img, x, 0, img->ysize, out);
- }
- }
- }
- break;
-
- case PHOTOMETRIC_PALETTE :
- if (!TIFFGetField(tif, TIFFTAG_COLORMAP, &redcmap, &greencmap, &bluecmap))
- {
- fputs("DEBUG: No colormap tag in the file!\n", stderr);
- fclose(fp);
- return (-1);
- }
-
- num_colors = 1 << bits;
-
- for (c = 0; c < num_colors; c ++)
- {
- redcmap[c] >>= 8;
- greencmap[c] >>= 8;
- bluecmap[c] >>= 8;
- }
-
- if (orientation < ORIENTATION_LEFTTOP)
- {
- /*
- * Row major order...
- */
-
- for (y = ystart, ycount = img->ysize, row = 0;
- ycount > 0;
- ycount --, y += ydir, row ++)
- {
- if (bits == 1)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline,
- p = in + xstart * 3, bit = 128;
- xcount > 0;
- xcount --, p += pstep)
- {
- if (*scanptr & bit)
- {
- p[0] = redcmap[1];
- p[1] = greencmap[1];
- p[2] = bluecmap[1];
- }
- else
- {
- p[0] = redcmap[0];
- p[1] = greencmap[0];
- p[2] = bluecmap[0];
- }
-
- if (bit > 1)
- bit >>= 1;
- else
- {
- bit = 128;
- scanptr ++;
- }
- }
- }
- else if (bits == 2)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline,
- p = in + xstart * 3, bit = 0xc0;
- xcount > 0;
- xcount --, p += pstep)
- {
- pixel = *scanptr & bit;
- while (pixel > 3)
- pixel >>= 2;
-
- p[0] = redcmap[pixel];
- p[1] = greencmap[pixel];
- p[2] = bluecmap[pixel];
-
- if (bit > 3)
- bit >>= 2;
- else
- {
- bit = 0xc0;
- scanptr ++;
- }
- }
- }
- else if (bits == 4)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline,
- p = in + 3 * xstart, bit = 0xf0;
- xcount > 0;
- xcount --, p += pstep)
- {
- if (bit == 0xf0)
- {
- pixel = (*scanptr & 0xf0) >> 4;
- p[0] = redcmap[pixel];
- p[1] = greencmap[pixel];
- p[2] = bluecmap[pixel];
- bit = 0x0f;
- }
- else
- {
- pixel = *scanptr++ & 0x0f;
- p[0] = redcmap[pixel];
- p[1] = greencmap[pixel];
- p[2] = bluecmap[pixel];
- bit = 0xf0;
- }
- }
- }
- else
- {
- TIFFReadScanline(tif, scanline, row, 0);
-
- for (xcount = img->xsize, p = in + 3 * xstart, scanptr = scanline;
- xcount > 0;
- xcount --, p += pstep)
- {
- p[0] = redcmap[*scanptr];
- p[1] = greencmap[*scanptr];
- p[2] = bluecmap[*scanptr++];
- }
- }
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->xsize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- }
- else
- {
- /*
- * Column major order...
- */
-
- for (x = xstart, xcount = img->xsize, row = 0;
- xcount > 0;
- xcount --, x += xdir, row ++)
- {
- if (bits == 1)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline,
- p = in + 3 * ystart, bit = 128;
- ycount > 0;
- ycount --, p += ydir)
- {
- if (*scanptr & bit)
- {
- p[0] = redcmap[1];
- p[1] = greencmap[1];
- p[2] = bluecmap[1];
- }
- else
- {
- p[0] = redcmap[0];
- p[1] = greencmap[0];
- p[2] = bluecmap[0];
- }
-
- if (bit > 1)
- bit >>= 1;
- else
- {
- bit = 128;
- scanptr ++;
- }
- }
- }
- else if (bits == 2)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline,
- p = in + 3 * ystart, bit = 0xc0;
- ycount > 0;
- ycount --, p += ydir)
- {
- pixel = *scanptr & 0xc0;
- while (pixel > 3)
- pixel >>= 2;
-
- p[0] = redcmap[pixel];
- p[1] = greencmap[pixel];
- p[2] = bluecmap[pixel];
-
- if (bit > 3)
- bit >>= 2;
- else
- {
- bit = 0xc0;
- scanptr ++;
- }
- }
- }
- else if (bits == 4)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline,
- p = in + 3 * ystart, bit = 0xf0;
- ycount > 0;
- ycount --, p += ydir)
- {
- if (bit == 0xf0)
- {
- pixel = (*scanptr & 0xf0) >> 4;
- p[0] = redcmap[pixel];
- p[1] = greencmap[pixel];
- p[2] = bluecmap[pixel];
- bit = 0x0f;
- }
- else
- {
- pixel = *scanptr++ & 0x0f;
- p[0] = redcmap[pixel];
- p[1] = greencmap[pixel];
- p[2] = bluecmap[pixel];
- bit = 0xf0;
- }
- }
- }
- else
- {
- TIFFReadScanline(tif, scanline, row, 0);
-
- for (ycount = img->ysize, p = in + 3 * ystart, scanptr = scanline;
- ycount > 0;
- ycount --, p += ydir)
- {
- p[0] = redcmap[*scanptr];
- p[1] = greencmap[*scanptr];
- p[2] = bluecmap[*scanptr++];
- }
- }
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->ysize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(in, out, img->ysize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->ysize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->ysize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->ysize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->ysize * bpp, lut);
-
- _cupsImagePutCol(img, x, 0, img->ysize, out);
- }
- }
- break;
-
- case PHOTOMETRIC_RGB :
- if (orientation < ORIENTATION_LEFTTOP)
- {
- /*
- * Row major order...
- */
-
- for (y = ystart, ycount = img->ysize, row = 0;
- ycount > 0;
- ycount --, y += ydir, row ++)
- {
- if (bits == 1)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline, p = in + xstart * 3, bit = 0xf0;
- xcount > 0;
- xcount --, p += pstep)
- {
- if (*scanptr & bit & 0x88)
- p[0] = 255;
- else
- p[0] = 0;
-
- if (*scanptr & bit & 0x44)
- p[1] = 255;
- else
- p[1] = 0;
-
- if (*scanptr & bit & 0x22)
- p[2] = 255;
- else
- p[2] = 0;
-
- if (bit == 0xf0)
- bit = 0x0f;
- else
- {
- bit = 0xf0;
- scanptr ++;
- }
- }
- }
- else if (bits == 2)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline, p = in + xstart * 3;
- xcount > 0;
- xcount --, p += pstep, scanptr ++)
- {
- pixel = *scanptr >> 2;
- p[0] = 255 * (pixel & 3) / 3;
- pixel >>= 2;
- p[1] = 255 * (pixel & 3) / 3;
- pixel >>= 2;
- p[2] = 255 * (pixel & 3) / 3;
- }
- }
- else if (bits == 4)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline, p = in + xstart * 3;
- xcount > 0;
- xcount -= 2, p += 2 * pstep, scanptr += 3)
- {
- pixel = scanptr[0];
- p[1] = 255 * (pixel & 15) / 15;
- pixel >>= 4;
- p[0] = 255 * (pixel & 15) / 15;
- pixel = scanptr[1];
- p[2] = 255 * ((pixel >> 4) & 15) / 15;
-
- if (xcount > 1)
- {
- p[pstep + 0] = 255 * (pixel & 15) / 15;
- pixel = scanptr[2];
- p[pstep + 2] = 255 * (pixel & 15) / 15;
- pixel >>= 4;
- p[pstep + 1] = 255 * (pixel & 15) / 15;
- }
- }
- }
- else if (xdir < 0 || alpha)
- {
- TIFFReadScanline(tif, scanline, row, 0);
-
- if (alpha)
- {
- for (xcount = img->xsize, p = in + xstart * 3, scanptr = scanline;
- xcount > 0;
- xcount --, p += pstep, scanptr += 4)
- {
- p[0] = (scanptr[0] * scanptr[3] + 255 * (255 - scanptr[3])) / 255;
- p[1] = (scanptr[1] * scanptr[3] + 255 * (255 - scanptr[3])) / 255;
- p[2] = (scanptr[2] * scanptr[3] + 255 * (255 - scanptr[3])) / 255;
- }
- }
- else
- {
- for (xcount = img->xsize, p = in + xstart * 3, scanptr = scanline;
- xcount > 0;
- xcount --, p += pstep, scanptr += 3)
- {
- p[0] = scanptr[0];
- p[1] = scanptr[1];
- p[2] = scanptr[2];
- }
- }
- }
- else
- TIFFReadScanline(tif, in, row, 0);
-
- if ((saturation != 100 || hue != 0) && bpp > 1)
- cupsImageRGBAdjust(in, img->xsize, saturation, hue);
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->xsize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * bpp, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- }
- else
- {
- /*
- * Column major order...
- */
-
- for (x = xstart, xcount = img->xsize, row = 0;
- xcount > 0;
- xcount --, x += xdir, row ++)
- {
- if (bits == 1)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline, p = in + ystart * 3, bit = 0xf0;
- ycount > 0;
- ycount --, p += pstep)
- {
- if (*scanptr & bit & 0x88)
- p[0] = 255;
- else
- p[0] = 0;
-
- if (*scanptr & bit & 0x44)
- p[1] = 255;
- else
- p[1] = 0;
-
- if (*scanptr & bit & 0x22)
- p[2] = 255;
- else
- p[2] = 0;
-
- if (bit == 0xf0)
- bit = 0x0f;
- else
- {
- bit = 0xf0;
- scanptr ++;
- }
- }
- }
- else if (bits == 2)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline, p = in + ystart * 3;
- ycount > 0;
- ycount --, p += pstep, scanptr ++)
- {
- pixel = *scanptr >> 2;
- p[0] = 255 * (pixel & 3) / 3;
- pixel >>= 2;
- p[1] = 255 * (pixel & 3) / 3;
- pixel >>= 2;
- p[2] = 255 * (pixel & 3) / 3;
- }
- }
- else if (bits == 4)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline, p = in + ystart * 3;
- ycount > 0;
- ycount -= 2, p += 2 * pstep, scanptr += 3)
- {
- pixel = scanptr[0];
- p[1] = 255 * (pixel & 15) / 15;
- pixel >>= 4;
- p[0] = 255 * (pixel & 15) / 15;
- pixel = scanptr[1];
- p[2] = 255 * ((pixel >> 4) & 15) / 15;
-
- if (ycount > 1)
- {
- p[pstep + 0] = 255 * (pixel & 15) / 15;
- pixel = scanptr[2];
- p[pstep + 2] = 255 * (pixel & 15) / 15;
- pixel >>= 4;
- p[pstep + 1] = 255 * (pixel & 15) / 15;
- }
- }
- }
- else if (ydir < 0 || alpha)
- {
- TIFFReadScanline(tif, scanline, row, 0);
-
- if (alpha)
- {
- for (ycount = img->ysize, p = in + ystart * 3, scanptr = scanline;
- ycount > 0;
- ycount --, p += pstep, scanptr += 4)
- {
- p[0] = (scanptr[0] * scanptr[3] + 255 * (255 - scanptr[3])) / 255;
- p[1] = (scanptr[1] * scanptr[3] + 255 * (255 - scanptr[3])) / 255;
- p[2] = (scanptr[2] * scanptr[3] + 255 * (255 - scanptr[3])) / 255;
- }
- }
- else
- {
- for (ycount = img->ysize, p = in + ystart * 3, scanptr = scanline;
- ycount > 0;
- ycount --, p += pstep, scanptr += 3)
- {
- p[0] = scanptr[0];
- p[1] = scanptr[1];
- p[2] = scanptr[2];
- }
- }
- }
- else
- TIFFReadScanline(tif, in, row, 0);
-
- if ((saturation != 100 || hue != 0) && bpp > 1)
- cupsImageRGBAdjust(in, img->ysize, saturation, hue);
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->ysize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(in, out, img->ysize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->ysize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->ysize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->ysize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->ysize * bpp, lut);
-
- _cupsImagePutCol(img, x, 0, img->ysize, out);
- }
- }
- break;
-
- case PHOTOMETRIC_SEPARATED :
- inkset = INKSET_CMYK;
- numinks = 4;
-
-#ifdef TIFFTAG_NUMBEROFINKS
- if (!TIFFGetField(tif, TIFFTAG_INKSET, &inkset) &&
- !TIFFGetField(tif, TIFFTAG_NUMBEROFINKS, &numinks))
-#else
- if (!TIFFGetField(tif, TIFFTAG_INKSET, &inkset))
-#endif /* TIFFTAG_NUMBEROFINKS */
- {
- fputs("WARNING: No inkset or number-of-inks tag in the file!\n", stderr);
- }
-
- if (inkset == INKSET_CMYK || numinks == 4)
- {
- if (orientation < ORIENTATION_LEFTTOP)
- {
- /*
- * Row major order...
- */
-
- for (y = ystart, ycount = img->ysize, row = 0;
- ycount > 0;
- ycount --, y += ydir, row ++)
- {
- if (bits == 1)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline, p = in + xstart * 3, bit = 0xf0;
- xcount > 0;
- xcount --, p += pstep)
- {
- if (*scanptr & bit & 0x11)
- {
- p[0] = 0;
- p[1] = 0;
- p[2] = 0;
- }
- else
- {
- if (*scanptr & bit & 0x88)
- p[0] = 0;
- else
- p[0] = 255;
-
- if (*scanptr & bit & 0x44)
- p[1] = 0;
- else
- p[1] = 255;
-
- if (*scanptr & bit & 0x22)
- p[2] = 0;
- else
- p[2] = 255;
- }
-
- if (bit == 0xf0)
- bit = 0x0f;
- else
- {
- bit = 0xf0;
- scanptr ++;
- }
- }
- }
- else if (bits == 2)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline, p = in + xstart * 3;
- xcount > 0;
- xcount --, p += pstep, scanptr ++)
- {
- pixel = *scanptr;
- k = 255 * (pixel & 3) / 3;
- if (k == 255)
- {
- p[0] = 0;
- p[1] = 0;
- p[2] = 0;
- }
- else
- {
- pixel >>= 2;
- b = 255 - 255 * (pixel & 3) / 3 - k;
- if (b < 0)
- p[2] = 0;
- else if (b < 256)
- p[2] = b;
- else
- p[2] = 255;
-
- pixel >>= 2;
- g = 255 - 255 * (pixel & 3) / 3 - k;
- if (g < 0)
- p[1] = 0;
- else if (g < 256)
- p[1] = g;
- else
- p[1] = 255;
-
- pixel >>= 2;
- r = 255 - 255 * (pixel & 3) / 3 - k;
- if (r < 0)
- p[0] = 0;
- else if (r < 256)
- p[0] = r;
- else
- p[0] = 255;
- }
- }
- }
- else if (bits == 4)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (xcount = img->xsize, scanptr = scanline, p = in + xstart * 3;
- xcount > 0;
- xcount --, p += pstep, scanptr += 2)
- {
- pixel = scanptr[1];
- k = 255 * (pixel & 15) / 15;
- if (k == 255)
- {
- p[0] = 0;
- p[1] = 0;
- p[2] = 0;
- }
- else
- {
- pixel >>= 4;
- b = 255 - 255 * (pixel & 15) / 15 - k;
- if (b < 0)
- p[2] = 0;
- else if (b < 256)
- p[2] = b;
- else
- p[2] = 255;
-
- pixel = scanptr[0];
- g = 255 - 255 * (pixel & 15) / 15 - k;
- if (g < 0)
- p[1] = 0;
- else if (g < 256)
- p[1] = g;
- else
- p[1] = 255;
-
- pixel >>= 4;
- r = 255 - 255 * (pixel & 15) / 15 - k;
- if (r < 0)
- p[0] = 0;
- else if (r < 256)
- p[0] = r;
- else
- p[0] = 255;
- }
- }
- }
- else if (img->colorspace == CUPS_IMAGE_CMYK)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- _cupsImagePutRow(img, 0, y, img->xsize, scanline);
- }
- else
- {
- TIFFReadScanline(tif, scanline, row, 0);
-
- for (xcount = img->xsize, p = in + xstart * 3, scanptr = scanline;
- xcount > 0;
- xcount --, p += pstep, scanptr += 4)
- {
- k = scanptr[3];
- if (k == 255)
- {
- p[0] = 0;
- p[1] = 0;
- p[2] = 0;
- }
- else
- {
- r = 255 - scanptr[0] - k;
- if (r < 0)
- p[0] = 0;
- else if (r < 256)
- p[0] = r;
- else
- p[0] = 255;
-
- g = 255 - scanptr[1] - k;
- if (g < 0)
- p[1] = 0;
- else if (g < 256)
- p[1] = g;
- else
- p[1] = 255;
-
- b = 255 - scanptr[2] - k;
- if (b < 0)
- p[2] = 0;
- else if (b < 256)
- p[2] = b;
- else
- p[2] = 255;
- }
- }
- }
-
- if ((saturation != 100 || hue != 0) && bpp > 1)
- cupsImageRGBAdjust(in, img->xsize, saturation, hue);
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->xsize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(in, out, img->xsize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->xsize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->xsize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->xsize * 3, lut);
-
- _cupsImagePutRow(img, 0, y, img->xsize, out);
- }
- }
- else
- {
- /*
- * Column major order...
- */
-
- for (x = xstart, xcount = img->xsize, row = 0;
- xcount > 0;
- xcount --, x += xdir, row ++)
- {
- if (bits == 1)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline, p = in + xstart * 3, bit = 0xf0;
- ycount > 0;
- ycount --, p += pstep)
- {
- if (*scanptr & bit & 0x11)
- {
- p[0] = 0;
- p[1] = 0;
- p[2] = 0;
- }
- else
- {
- if (*scanptr & bit & 0x88)
- p[0] = 0;
- else
- p[0] = 255;
-
- if (*scanptr & bit & 0x44)
- p[1] = 0;
- else
- p[1] = 255;
-
- if (*scanptr & bit & 0x22)
- p[2] = 0;
- else
- p[2] = 255;
- }
-
- if (bit == 0xf0)
- bit = 0x0f;
- else
- {
- bit = 0xf0;
- scanptr ++;
- }
- }
- }
- else if (bits == 2)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline, p = in + xstart * 3;
- ycount > 0;
- ycount --, p += pstep, scanptr ++)
- {
- pixel = *scanptr;
- k = 255 * (pixel & 3) / 3;
- if (k == 255)
- {
- p[0] = 0;
- p[1] = 0;
- p[2] = 0;
- }
- else
- {
- pixel >>= 2;
- b = 255 - 255 * (pixel & 3) / 3 - k;
- if (b < 0)
- p[2] = 0;
- else if (b < 256)
- p[2] = b;
- else
- p[2] = 255;
-
- pixel >>= 2;
- g = 255 - 255 * (pixel & 3) / 3 - k;
- if (g < 0)
- p[1] = 0;
- else if (g < 256)
- p[1] = g;
- else
- p[1] = 255;
-
- pixel >>= 2;
- r = 255 - 255 * (pixel & 3) / 3 - k;
- if (r < 0)
- p[0] = 0;
- else if (r < 256)
- p[0] = r;
- else
- p[0] = 255;
- }
- }
- }
- else if (bits == 4)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- for (ycount = img->ysize, scanptr = scanline, p = in + xstart * 3;
- ycount > 0;
- ycount --, p += pstep, scanptr += 2)
- {
- pixel = scanptr[1];
- k = 255 * (pixel & 15) / 15;
- if (k == 255)
- {
- p[0] = 0;
- p[1] = 0;
- p[2] = 0;
- }
- else
- {
- pixel >>= 4;
- b = 255 - 255 * (pixel & 15) / 15 - k;
- if (b < 0)
- p[2] = 0;
- else if (b < 256)
- p[2] = b;
- else
- p[2] = 255;
-
- pixel = scanptr[0];
- g = 255 - 255 * (pixel & 15) / 15 - k;
- if (g < 0)
- p[1] = 0;
- else if (g < 256)
- p[1] = g;
- else
- p[1] = 255;
-
- pixel >>= 4;
- r = 255 - 255 * (pixel & 15) / 15 - k;
- if (r < 0)
- p[0] = 0;
- else if (r < 256)
- p[0] = r;
- else
- p[0] = 255;
- }
- }
- }
- else if (img->colorspace == CUPS_IMAGE_CMYK)
- {
- TIFFReadScanline(tif, scanline, row, 0);
- _cupsImagePutCol(img, x, 0, img->ysize, scanline);
- }
- else
- {
- TIFFReadScanline(tif, scanline, row, 0);
-
- for (ycount = img->ysize, p = in + xstart * 3, scanptr = scanline;
- ycount > 0;
- ycount --, p += pstep, scanptr += 4)
- {
- k = scanptr[3];
- if (k == 255)
- {
- p[0] = 0;
- p[1] = 0;
- p[2] = 0;
- }
- else
- {
- r = 255 - scanptr[0] - k;
- if (r < 0)
- p[0] = 0;
- else if (r < 256)
- p[0] = r;
- else
- p[0] = 255;
-
- g = 255 - scanptr[1] - k;
- if (g < 0)
- p[1] = 0;
- else if (g < 256)
- p[1] = g;
- else
- p[1] = 255;
-
- b = 255 - scanptr[2] - k;
- if (b < 0)
- p[2] = 0;
- else if (b < 256)
- p[2] = b;
- else
- p[2] = 255;
- }
- }
- }
-
- if ((saturation != 100 || hue != 0) && bpp > 1)
- cupsImageRGBAdjust(in, img->ysize, saturation, hue);
-
- switch (img->colorspace)
- {
- default :
- break;
-
- case CUPS_IMAGE_WHITE :
- cupsImageRGBToWhite(in, out, img->ysize);
- break;
- case CUPS_IMAGE_RGB :
- cupsImageRGBToRGB(in, out, img->ysize);
- break;
- case CUPS_IMAGE_BLACK :
- cupsImageRGBToBlack(in, out, img->ysize);
- break;
- case CUPS_IMAGE_CMY :
- cupsImageRGBToCMY(in, out, img->ysize);
- break;
- case CUPS_IMAGE_CMYK :
- cupsImageRGBToCMYK(in, out, img->ysize);
- break;
- }
-
- if (lut)
- cupsImageLut(out, img->ysize * bpp, lut);
-
- _cupsImagePutCol(img, x, 0, img->ysize, out);
- }
- }
-
- break;
- }
-
- default :
- _TIFFfree(scanline);
- free(in);
- free(out);
-
- TIFFClose(tif);
- fputs("DEBUG: Unknown TIFF photometric value!\n", stderr);
- return (-1);
- }
-
- /*
- * Free temporary buffers, close the TIFF file, and return.
- */
-
- _TIFFfree(scanline);
- free(in);
- free(out);
-
- TIFFClose(tif);
- return (0);
-}
-#endif /* HAVE_LIBTIFF */
-
-
-/*
- * End of "$Id: image-tiff.c 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/image-zoom.c b/filter/image-zoom.c
deleted file mode 100644
index 823bc4e9..00000000
--- a/filter/image-zoom.c
+++ /dev/null
@@ -1,361 +0,0 @@
-/*
- * "$Id: image-zoom.c 9502 2011-01-21 23:56:14Z mike $"
- *
- * cupsImage zoom routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2006 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * _cupsImageZoomDelete() - Free a zoom record...
- * _cupsImageZoomFill() - Fill a zoom record...
- * _cupsImageZoomNew() - Allocate a pixel zoom record...
- * zoom_bilinear() - Fill a zoom record with image data utilizing
- * bilinear interpolation.
- * zoom_nearest() - Fill a zoom record quickly using nearest-neighbor
- * sampling.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-
-/*
- * Local functions...
- */
-
-static void zoom_bilinear(cups_izoom_t *z, int iy);
-static void zoom_nearest(cups_izoom_t *z, int iy);
-
-
-/*
- * '_cupsImageZoomDelete()' - Free a zoom record...
- */
-
-void
-_cupsImageZoomDelete(cups_izoom_t *z) /* I - Zoom record to free */
-{
- free(z->rows[0]);
- free(z->rows[1]);
- free(z->in);
- free(z);
-}
-
-
-/*
- * '_cupsImageZoomFill()' - Fill a zoom record with image data utilizing bilinear
- * interpolation.
- */
-
-void
-_cupsImageZoomFill(cups_izoom_t *z, /* I - Zoom record to fill */
- int iy) /* I - Zoom image row */
-{
- switch (z->type)
- {
- case CUPS_IZOOM_FAST :
- zoom_nearest(z, iy);
- break;
-
- default :
- zoom_bilinear(z, iy);
- break;
- }
-}
-
-
-/*
- * '_cupsImageZoomNew()' - Allocate a pixel zoom record...
- */
-
-cups_izoom_t *
-_cupsImageZoomNew(
- cups_image_t *img, /* I - cupsImage to zoom */
- int xc0, /* I - Upper-lefthand corner */
- int yc0, /* I - ... */
- int xc1, /* I - Lower-righthand corner */
- int yc1, /* I - ... */
- int xsize, /* I - Final width of image */
- int ysize, /* I - Final height of image */
- int rotated, /* I - Non-zero if image is rotated 90 degs */
- cups_iztype_t type) /* I - Zoom type */
-{
- cups_izoom_t *z; /* New zoom record */
- int flip; /* Flip on X axis? */
-
-
- if (xsize > CUPS_IMAGE_MAX_WIDTH ||
- ysize > CUPS_IMAGE_MAX_HEIGHT ||
- (xc1 - xc0) > CUPS_IMAGE_MAX_WIDTH ||
- (yc1 - yc0) > CUPS_IMAGE_MAX_HEIGHT)
- return (NULL); /* Protect against integer overflow */
-
- if ((z = (cups_izoom_t *)calloc(1, sizeof(cups_izoom_t))) == NULL)
- return (NULL);
-
- z->img = img;
- z->row = 0;
- z->depth = cupsImageGetDepth(img);
- z->rotated = rotated;
- z->type = type;
-
- if (xsize < 0)
- {
- flip = 1;
- xsize = -xsize;
- }
- else
- {
- flip = 0;
- }
-
- if (rotated)
- {
- z->xorig = xc1;
- z->yorig = yc0;
- z->width = yc1 - yc0 + 1;
- z->height = xc1 - xc0 + 1;
- z->xsize = xsize;
- z->ysize = ysize;
- z->xmod = z->width % z->xsize;
- z->xstep = z->width / z->xsize;
- z->xincr = 1;
- z->ymod = z->height % z->ysize;
- z->ystep = z->height / z->ysize;
- z->yincr = 1;
- z->instep = z->xstep * z->depth;
- z->inincr = /* z->xincr * */ z->depth; /* z->xincr is always 1 */
-
- if (z->width < img->ysize)
- z->xmax = z->width;
- else
- z->xmax = z->width - 1;
-
- if (z->height < img->xsize)
- z->ymax = z->height;
- else
- z->ymax = z->height - 1;
- }
- else
- {
- z->xorig = xc0;
- z->yorig = yc0;
- z->width = xc1 - xc0 + 1;
- z->height = yc1 - yc0 + 1;
- z->xsize = xsize;
- z->ysize = ysize;
- z->xmod = z->width % z->xsize;
- z->xstep = z->width / z->xsize;
- z->xincr = 1;
- z->ymod = z->height % z->ysize;
- z->ystep = z->height / z->ysize;
- z->yincr = 1;
- z->instep = z->xstep * z->depth;
- z->inincr = /* z->xincr * */ z->depth; /* z->xincr is always 1 */
-
- if (z->width < img->xsize)
- z->xmax = z->width;
- else
- z->xmax = z->width - 1;
-
- if (z->height < img->ysize)
- z->ymax = z->height;
- else
- z->ymax = z->height - 1;
- }
-
- if (flip)
- {
- z->instep = -z->instep;
- z->inincr = -z->inincr;
- }
-
- if ((z->rows[0] = (cups_ib_t *)malloc(z->xsize * z->depth)) == NULL)
- {
- free(z);
- return (NULL);
- }
-
- if ((z->rows[1] = (cups_ib_t *)malloc(z->xsize * z->depth)) == NULL)
- {
- free(z->rows[0]);
- free(z);
- return (NULL);
- }
-
- if ((z->in = (cups_ib_t *)malloc(z->width * z->depth)) == NULL)
- {
- free(z->rows[0]);
- free(z->rows[1]);
- free(z);
- return (NULL);
- }
-
- return (z);
-}
-
-
-/*
- * 'zoom_bilinear()' - Fill a zoom record with image data utilizing bilinear
- * interpolation.
- */
-
-static void
-zoom_bilinear(cups_izoom_t *z, /* I - Zoom record to fill */
- int iy) /* I - Zoom image row */
-{
- cups_ib_t *r, /* Row pointer */
- *inptr; /* Pixel pointer */
- int xerr0, /* X error counter */
- xerr1; /* ... */
- int ix,
- x,
- count,
- z_depth,
- z_xstep,
- z_xincr,
- z_instep,
- z_inincr,
- z_xmax,
- z_xmod,
- z_xsize;
-
-
- if (iy > z->ymax)
- iy = z->ymax;
-
- z->row ^= 1;
-
- z_depth = z->depth;
- z_xsize = z->xsize;
- z_xmax = z->xmax;
- z_xmod = z->xmod;
- z_xstep = z->xstep;
- z_xincr = z->xincr;
- z_instep = z->instep;
- z_inincr = z->inincr;
-
- if (z->rotated)
- cupsImageGetCol(z->img, z->xorig - iy, z->yorig, z->width, z->in);
- else
- cupsImageGetRow(z->img, z->xorig, z->yorig + iy, z->width, z->in);
-
- if (z_inincr < 0)
- inptr = z->in + (z->width - 1) * z_depth;
- else
- inptr = z->in;
-
- for (x = z_xsize, xerr0 = z_xsize, xerr1 = 0, ix = 0, r = z->rows[z->row];
- x > 0;
- x --)
- {
- if (ix < z_xmax)
- {
- for (count = 0; count < z_depth; count ++)
- *r++ = (inptr[count] * xerr0 + inptr[z_depth + count] * xerr1) / z_xsize;
- }
- else
- {
- for (count = 0; count < z_depth; count ++)
- *r++ = inptr[count];
- }
-
- ix += z_xstep;
- inptr += z_instep;
- xerr0 -= z_xmod;
- xerr1 += z_xmod;
-
- if (xerr0 <= 0)
- {
- xerr0 += z_xsize;
- xerr1 -= z_xsize;
- ix += z_xincr;
- inptr += z_inincr;
- }
- }
-}
-
-
-/*
- * 'zoom_nearest()' - Fill a zoom record quickly using nearest-neighbor
- * sampling.
- */
-
-static void
-zoom_nearest(cups_izoom_t *z, /* I - Zoom record to fill */
- int iy) /* I - Zoom image row */
-{
- cups_ib_t *r, /* Row pointer */
- *inptr; /* Pixel pointer */
- int xerr0; /* X error counter */
- int ix,
- x,
- count,
- z_depth,
- z_xstep,
- z_xincr,
- z_instep,
- z_inincr,
- z_xmod,
- z_xsize;
-
-
- if (iy > z->ymax)
- iy = z->ymax;
-
- z->row ^= 1;
-
- z_depth = z->depth;
- z_xsize = z->xsize;
- z_xmod = z->xmod;
- z_xstep = z->xstep;
- z_xincr = z->xincr;
- z_instep = z->instep;
- z_inincr = z->inincr;
-
- if (z->rotated)
- cupsImageGetCol(z->img, z->xorig - iy, z->yorig, z->width, z->in);
- else
- cupsImageGetRow(z->img, z->xorig, z->yorig + iy, z->width, z->in);
-
- if (z_inincr < 0)
- inptr = z->in + (z->width - 1) * z_depth;
- else
- inptr = z->in;
-
- for (x = z_xsize, xerr0 = z_xsize, ix = 0, r = z->rows[z->row];
- x > 0;
- x --)
- {
- for (count = 0; count < z_depth; count ++)
- *r++ = inptr[count];
-
- ix += z_xstep;
- inptr += z_instep;
- xerr0 -= z_xmod;
-
- if (xerr0 <= 0)
- {
- xerr0 += z_xsize;
- ix += z_xincr;
- inptr += z_inincr;
- }
- }
-}
-
-
-/*
- * End of "$Id: image-zoom.c 9502 2011-01-21 23:56:14Z mike $".
- */
diff --git a/filter/image.c b/filter/image.c
deleted file mode 100644
index 3cb11acf..00000000
--- a/filter/image.c
+++ /dev/null
@@ -1,813 +0,0 @@
-/*
- * "$Id: image.c 9873 2011-08-06 06:47:46Z mike $"
- *
- * Base image support for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * cupsImageClose() - Close an image file.
- * cupsImageGetCol() - Get a column of pixels from an image.
- * cupsImageGetColorSpace() - Get the image colorspace.
- * cupsImageGetDepth() - Get the number of bytes per pixel.
- * cupsImageGetHeight() - Get the height of an image.
- * cupsImageGetRow() - Get a row of pixels from an image.
- * cupsImageGetWidth() - Get the width of an image.
- * cupsImageGetXPPI() - Get the horizontal resolution of an image.
- * cupsImageGetYPPI() - Get the vertical resolution of an image.
- * cupsImageOpen() - Open an image file and read it into memory.
- * _cupsImagePutCol() - Put a column of pixels to an image.
- * _cupsImagePutRow() - Put a row of pixels to an image.
- * cupsImageSetMaxTiles() - Set the maximum number of tiles to cache.
- * flush_tile() - Flush the least-recently-used tile in the cache.
- * get_tile() - Get a cached tile.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image-private.h"
-
-
-/*
- * Local functions...
- */
-
-static void flush_tile(cups_image_t *img);
-static cups_ib_t *get_tile(cups_image_t *img, int x, int y);
-
-
-/*
- * 'cupsImageClose()' - Close an image file.
- */
-
-void
-cupsImageClose(cups_image_t *img) /* I - Image to close */
-{
- cups_ic_t *current, /* Current cached tile */
- *next; /* Next cached tile */
-
-
- /*
- * Wipe the tile cache file (if any)...
- */
-
- if (img->cachefile >= 0)
- {
- DEBUG_printf(("Closing/removing swap file \"%s\"...\n", img->cachename));
-
- close(img->cachefile);
- unlink(img->cachename);
- }
-
- /*
- * Free the image cache...
- */
-
- DEBUG_puts("Freeing memory...");
-
- for (current = img->first, next = NULL; current != NULL; current = next)
- {
- DEBUG_printf(("Freeing cache (%p, next = %p)...\n", current, next));
-
- next = current->next;
- free(current);
- }
-
- /*
- * Free the rest of memory...
- */
-
- if (img->tiles != NULL)
- {
- DEBUG_printf(("Freeing tiles (%p)...\n", img->tiles[0]));
-
- free(img->tiles[0]);
-
- DEBUG_printf(("Freeing tile pointers (%p)...\n", img->tiles));
-
- free(img->tiles);
- }
-
- free(img);
-}
-
-
-/*
- * 'cupsImageGetCol()' - Get a column of pixels from an image.
- */
-
-int /* O - -1 on error, 0 on success */
-cupsImageGetCol(cups_image_t *img, /* I - Image */
- int x, /* I - Column */
- int y, /* I - Start row */
- int height, /* I - Column height */
- cups_ib_t *pixels) /* O - Pixel data */
-{
- int bpp, /* Bytes per pixel */
- twidth, /* Tile width */
- count; /* Number of pixels to get */
- const cups_ib_t *ib; /* Pointer into tile */
-
-
- if (img == NULL || x < 0 || x >= img->xsize || y >= img->ysize)
- return (-1);
-
- if (y < 0)
- {
- height += y;
- y = 0;
- }
-
- if ((y + height) > img->ysize)
- height = img->ysize - y;
-
- if (height < 1)
- return (-1);
-
- bpp = cupsImageGetDepth(img);
- twidth = bpp * (CUPS_TILE_SIZE - 1);
-
- while (height > 0)
- {
- ib = get_tile(img, x, y);
-
- if (ib == NULL)
- return (-1);
-
- count = CUPS_TILE_SIZE - (y & (CUPS_TILE_SIZE - 1));
- if (count > height)
- count = height;
-
- y += count;
- height -= count;
-
- for (; count > 0; count --, ib += twidth)
- switch (bpp)
- {
- case 4 :
- *pixels++ = *ib++;
- case 3 :
- *pixels++ = *ib++;
- *pixels++ = *ib++;
- case 1 :
- *pixels++ = *ib++;
- break;
- }
- }
-
- return (0);
-}
-
-
-/*
- * 'cupsImageGetColorSpace()' - Get the image colorspace.
- */
-
-cups_icspace_t /* O - Colorspace */
-cupsImageGetColorSpace(
- cups_image_t *img) /* I - Image */
-{
- return (img->colorspace);
-}
-
-
-/*
- * 'cupsImageGetDepth()' - Get the number of bytes per pixel.
- */
-
-int /* O - Bytes per pixel */
-cupsImageGetDepth(cups_image_t *img) /* I - Image */
-{
- return (abs(img->colorspace));
-}
-
-
-/*
- * 'cupsImageGetHeight()' - Get the height of an image.
- */
-
-unsigned /* O - Height in pixels */
-cupsImageGetHeight(cups_image_t *img) /* I - Image */
-{
- return (img->ysize);
-}
-
-
-/*
- * 'cupsImageGetRow()' - Get a row of pixels from an image.
- */
-
-int /* O - -1 on error, 0 on success */
-cupsImageGetRow(cups_image_t *img, /* I - Image */
- int x, /* I - Start column */
- int y, /* I - Row */
- int width, /* I - Width of row */
- cups_ib_t *pixels) /* O - Pixel data */
-{
- int bpp, /* Bytes per pixel */
- count; /* Number of pixels to get */
- const cups_ib_t *ib; /* Pointer to pixels */
-
-
- if (img == NULL || y < 0 || y >= img->ysize || x >= img->xsize)
- return (-1);
-
- if (x < 0)
- {
- width += x;
- x = 0;
- }
-
- if ((x + width) > img->xsize)
- width = img->xsize - x;
-
- if (width < 1)
- return (-1);
-
- bpp = img->colorspace < 0 ? -img->colorspace : img->colorspace;
-
- while (width > 0)
- {
- ib = get_tile(img, x, y);
-
- if (ib == NULL)
- return (-1);
-
- count = CUPS_TILE_SIZE - (x & (CUPS_TILE_SIZE - 1));
- if (count > width)
- count = width;
- memcpy(pixels, ib, count * bpp);
- pixels += count * bpp;
- x += count;
- width -= count;
- }
-
- return (0);
-}
-
-
-/*
- * 'cupsImageGetWidth()' - Get the width of an image.
- */
-
-unsigned /* O - Width in pixels */
-cupsImageGetWidth(cups_image_t *img) /* I - Image */
-{
- return (img->xsize);
-}
-
-
-/*
- * 'cupsImageGetXPPI()' - Get the horizontal resolution of an image.
- */
-
-unsigned /* O - Horizontal PPI */
-cupsImageGetXPPI(cups_image_t *img) /* I - Image */
-{
- return (img->xppi);
-}
-
-
-/*
- * 'cupsImageGetYPPI()' - Get the vertical resolution of an image.
- */
-
-unsigned /* O - Vertical PPI */
-cupsImageGetYPPI(cups_image_t *img) /* I - Image */
-{
- return (img->yppi);
-}
-
-
-/*
- * 'cupsImageOpen()' - Open an image file and read it into memory.
- */
-
-cups_image_t * /* O - New image */
-cupsImageOpen(
- const char *filename, /* I - Filename of image */
- cups_icspace_t primary, /* I - Primary colorspace needed */
- cups_icspace_t secondary, /* I - Secondary colorspace if primary no good */
- int saturation, /* I - Color saturation level */
- int hue, /* I - Color hue adjustment */
- const cups_ib_t *lut) /* I - RGB gamma/brightness LUT */
-{
- FILE *fp; /* File pointer */
- unsigned char header[16], /* First 16 bytes of file */
- header2[16]; /* Bytes 2048-2064 (PhotoCD) */
- cups_image_t *img; /* New image buffer */
- int status; /* Status of load... */
-
-
- DEBUG_printf(("cupsImageOpen(\"%s\", %d, %d, %d, %d, %p)\n",
- filename ? filename : "(null)", primary, secondary,
- saturation, hue, lut));
-
- /*
- * Figure out the file type...
- */
-
- if ((fp = fopen(filename, "r")) == NULL)
- return (NULL);
-
- if (fread(header, 1, sizeof(header), fp) == 0)
- {
- fclose(fp);
- return (NULL);
- }
-
- fseek(fp, 2048, SEEK_SET);
- memset(header2, 0, sizeof(header2));
- fread(header2, 1, sizeof(header2), fp);
- fseek(fp, 0, SEEK_SET);
-
- /*
- * Allocate memory...
- */
-
- img = calloc(sizeof(cups_image_t), 1);
-
- if (img == NULL)
- {
- fclose(fp);
- return (NULL);
- }
-
- /*
- * Load the image as appropriate...
- */
-
- img->cachefile = -1;
- img->max_ics = CUPS_TILE_MINIMUM;
- img->xppi = 128;
- img->yppi = 128;
-
- if (!memcmp(header, "GIF87a", 6) || !memcmp(header, "GIF89a", 6))
- status = _cupsImageReadGIF(img, fp, primary, secondary, saturation, hue,
- lut);
- else if (!memcmp(header, "BM", 2))
- status = _cupsImageReadBMP(img, fp, primary, secondary, saturation, hue,
- lut);
- else if (header[0] == 0x01 && header[1] == 0xda)
- status = _cupsImageReadSGI(img, fp, primary, secondary, saturation, hue,
- lut);
- else if (header[0] == 0x59 && header[1] == 0xa6 &&
- header[2] == 0x6a && header[3] == 0x95)
- status = _cupsImageReadSunRaster(img, fp, primary, secondary, saturation,
- hue, lut);
- else if (header[0] == 'P' && header[1] >= '1' && header[1] <= '6')
- status = _cupsImageReadPNM(img, fp, primary, secondary, saturation, hue,
- lut);
- else if (!memcmp(header2, "PCD_IPI", 7))
- status = _cupsImageReadPhotoCD(img, fp, primary, secondary, saturation,
- hue, lut);
- else if (!memcmp(header + 8, "\000\010", 2) ||
- !memcmp(header + 8, "\000\030", 2))
- status = _cupsImageReadPIX(img, fp, primary, secondary, saturation, hue,
- lut);
-#if defined(HAVE_LIBPNG) && defined(HAVE_LIBZ)
- else if (!memcmp(header, "\211PNG", 4))
- status = _cupsImageReadPNG(img, fp, primary, secondary, saturation, hue,
- lut);
-#endif /* HAVE_LIBPNG && HAVE_LIBZ */
-#ifdef HAVE_LIBJPEG
- else if (!memcmp(header, "\377\330\377", 3) && /* Start-of-Image */
- header[3] >= 0xe0 && header[3] <= 0xef) /* APPn */
- status = _cupsImageReadJPEG(img, fp, primary, secondary, saturation, hue,
- lut);
-#endif /* HAVE_LIBJPEG */
-#ifdef HAVE_LIBTIFF
- else if (!memcmp(header, "MM\000\052", 4) ||
- !memcmp(header, "II\052\000", 4))
- status = _cupsImageReadTIFF(img, fp, primary, secondary, saturation, hue,
- lut);
-#endif /* HAVE_LIBTIFF */
- else
- {
- fclose(fp);
- status = -1;
- }
-
- if (status)
- {
- free(img);
- return (NULL);
- }
- else
- return (img);
-}
-
-
-/*
- * '_cupsImagePutCol()' - Put a column of pixels to an image.
- */
-
-int /* O - -1 on error, 0 on success */
-_cupsImagePutCol(
- cups_image_t *img, /* I - Image */
- int x, /* I - Column */
- int y, /* I - Start row */
- int height, /* I - Column height */
- const cups_ib_t *pixels) /* I - Pixels to put */
-{
- int bpp, /* Bytes per pixel */
- twidth, /* Width of tile */
- count; /* Number of pixels to put */
- int tilex, /* Column within tile */
- tiley; /* Row within tile */
- cups_ib_t *ib; /* Pointer to pixels in tile */
-
-
- if (img == NULL || x < 0 || x >= img->xsize || y >= img->ysize)
- return (-1);
-
- if (y < 0)
- {
- height += y;
- y = 0;
- }
-
- if ((y + height) > img->ysize)
- height = img->ysize - y;
-
- if (height < 1)
- return (-1);
-
- bpp = cupsImageGetDepth(img);
- twidth = bpp * (CUPS_TILE_SIZE - 1);
- tilex = x / CUPS_TILE_SIZE;
- tiley = y / CUPS_TILE_SIZE;
-
- while (height > 0)
- {
- ib = get_tile(img, x, y);
-
- if (ib == NULL)
- return (-1);
-
- img->tiles[tiley][tilex].dirty = 1;
- tiley ++;
-
- count = CUPS_TILE_SIZE - (y & (CUPS_TILE_SIZE - 1));
- if (count > height)
- count = height;
-
- y += count;
- height -= count;
-
- for (; count > 0; count --, ib += twidth)
- switch (bpp)
- {
- case 4 :
- *ib++ = *pixels++;
- case 3 :
- *ib++ = *pixels++;
- *ib++ = *pixels++;
- case 1 :
- *ib++ = *pixels++;
- break;
- }
- }
-
- return (0);
-}
-
-
-/*
- * '_cupsImagePutRow()' - Put a row of pixels to an image.
- */
-
-int /* O - -1 on error, 0 on success */
-_cupsImagePutRow(
- cups_image_t *img, /* I - Image */
- int x, /* I - Start column */
- int y, /* I - Row */
- int width, /* I - Row width */
- const cups_ib_t *pixels) /* I - Pixel data */
-{
- int bpp, /* Bytes per pixel */
- count; /* Number of pixels to put */
- int tilex, /* Column within tile */
- tiley; /* Row within tile */
- cups_ib_t *ib; /* Pointer to pixels in tile */
-
-
- if (img == NULL || y < 0 || y >= img->ysize || x >= img->xsize)
- return (-1);
-
- if (x < 0)
- {
- width += x;
- x = 0;
- }
-
- if ((x + width) > img->xsize)
- width = img->xsize - x;
-
- if (width < 1)
- return (-1);
-
- bpp = img->colorspace < 0 ? -img->colorspace : img->colorspace;
- tilex = x / CUPS_TILE_SIZE;
- tiley = y / CUPS_TILE_SIZE;
-
- while (width > 0)
- {
- ib = get_tile(img, x, y);
-
- if (ib == NULL)
- return (-1);
-
- img->tiles[tiley][tilex].dirty = 1;
-
- count = CUPS_TILE_SIZE - (x & (CUPS_TILE_SIZE - 1));
- if (count > width)
- count = width;
- memcpy(ib, pixels, count * bpp);
- pixels += count * bpp;
- x += count;
- width -= count;
- tilex ++;
- }
-
- return (0);
-}
-
-
-/*
- * 'cupsImageSetMaxTiles()' - Set the maximum number of tiles to cache.
- *
- * If the "max_tiles" argument is 0 then the maximum number of tiles is
- * computed from the image size or the RIP_CACHE environment variable.
- */
-
-void
-cupsImageSetMaxTiles(
- cups_image_t *img, /* I - Image to set */
- int max_tiles) /* I - Number of tiles to cache */
-{
- int cache_size, /* Size of tile cache in bytes */
- min_tiles, /* Minimum number of tiles to cache */
- max_size; /* Maximum cache size in bytes */
- char *cache_env, /* Cache size environment variable */
- cache_units[255]; /* Cache size units */
-
-
- min_tiles = max(CUPS_TILE_MINIMUM,
- 1 + max((img->xsize + CUPS_TILE_SIZE - 1) / CUPS_TILE_SIZE,
- (img->ysize + CUPS_TILE_SIZE - 1) / CUPS_TILE_SIZE));
-
- if (max_tiles == 0)
- max_tiles = ((img->xsize + CUPS_TILE_SIZE - 1) / CUPS_TILE_SIZE) *
- ((img->ysize + CUPS_TILE_SIZE - 1) / CUPS_TILE_SIZE);
-
- cache_size = max_tiles * CUPS_TILE_SIZE * CUPS_TILE_SIZE *
- cupsImageGetDepth(img);
-
- if ((cache_env = getenv("RIP_MAX_CACHE")) != NULL)
- {
- switch (sscanf(cache_env, "%d%254s", &max_size, cache_units))
- {
- case 0 :
- max_size = 32 * 1024 * 1024;
- break;
- case 1 :
- max_size *= 4 * CUPS_TILE_SIZE * CUPS_TILE_SIZE;
- break;
- case 2 :
- if (tolower(cache_units[0] & 255) == 'g')
- max_size *= 1024 * 1024 * 1024;
- else if (tolower(cache_units[0] & 255) == 'm')
- max_size *= 1024 * 1024;
- else if (tolower(cache_units[0] & 255) == 'k')
- max_size *= 1024;
- else if (tolower(cache_units[0] & 255) == 't')
- max_size *= 4 * CUPS_TILE_SIZE * CUPS_TILE_SIZE;
- break;
- }
- }
- else
- max_size = 32 * 1024 * 1024;
-
- if (cache_size > max_size)
- max_tiles = max_size / CUPS_TILE_SIZE / CUPS_TILE_SIZE /
- cupsImageGetDepth(img);
-
- if (max_tiles < min_tiles)
- max_tiles = min_tiles;
-
- img->max_ics = max_tiles;
-
- DEBUG_printf(("max_ics=%d...\n", img->max_ics));
-}
-
-
-/*
- * 'flush_tile()' - Flush the least-recently-used tile in the cache.
- */
-
-static void
-flush_tile(cups_image_t *img) /* I - Image */
-{
- int bpp; /* Bytes per pixel */
- cups_itile_t *tile; /* Pointer to tile */
-
-
- bpp = cupsImageGetDepth(img);
- tile = img->first->tile;
-
- if (!tile->dirty)
- {
- tile->ic = NULL;
- return;
- }
-
- if (img->cachefile < 0)
- {
- if ((img->cachefile = cupsTempFd(img->cachename,
- sizeof(img->cachename))) < 0)
- {
- tile->ic = NULL;
- tile->dirty = 0;
- return;
- }
-
- DEBUG_printf(("Created swap file \"%s\"...\n", img->cachename));
- }
-
- if (tile->pos >= 0)
- {
- if (lseek(img->cachefile, tile->pos, SEEK_SET) != tile->pos)
- {
- tile->ic = NULL;
- tile->dirty = 0;
- return;
- }
- }
- else
- {
- if ((tile->pos = lseek(img->cachefile, 0, SEEK_END)) < 0)
- {
- tile->ic = NULL;
- tile->dirty = 0;
- return;
- }
- }
-
- write(img->cachefile, tile->ic->pixels, bpp * CUPS_TILE_SIZE * CUPS_TILE_SIZE);
-
- tile->ic = NULL;
- tile->dirty = 0;
-}
-
-
-/*
- * 'get_tile()' - Get a cached tile.
- */
-
-static cups_ib_t * /* O - Pointer to tile or NULL */
-get_tile(cups_image_t *img, /* I - Image */
- int x, /* I - Column in image */
- int y) /* I - Row in image */
-{
- int bpp, /* Bytes per pixel */
- tilex, /* Column within tile */
- tiley, /* Row within tile */
- xtiles, /* Number of tiles horizontally */
- ytiles; /* Number of tiles vertically */
- cups_ic_t *ic; /* Cache pointer */
- cups_itile_t *tile; /* Tile pointer */
-
-
- if (img->tiles == NULL)
- {
- xtiles = (img->xsize + CUPS_TILE_SIZE - 1) / CUPS_TILE_SIZE;
- ytiles = (img->ysize + CUPS_TILE_SIZE - 1) / CUPS_TILE_SIZE;
-
- DEBUG_printf(("Creating tile array (%dx%d)\n", xtiles, ytiles));
-
- if ((img->tiles = calloc(sizeof(cups_itile_t *), ytiles)) == NULL)
- return (NULL);
-
- if ((tile = calloc(xtiles * sizeof(cups_itile_t), ytiles)) == NULL)
- return (NULL);
-
- for (tiley = 0; tiley < ytiles; tiley ++)
- {
- img->tiles[tiley] = tile;
- for (tilex = xtiles; tilex > 0; tilex --, tile ++)
- tile->pos = -1;
- }
- }
-
- bpp = cupsImageGetDepth(img);
- tilex = x / CUPS_TILE_SIZE;
- tiley = y / CUPS_TILE_SIZE;
- tile = img->tiles[tiley] + tilex;
- x &= (CUPS_TILE_SIZE - 1);
- y &= (CUPS_TILE_SIZE - 1);
-
- if ((ic = tile->ic) == NULL)
- {
- if (img->num_ics < img->max_ics)
- {
- if ((ic = calloc(sizeof(cups_ic_t) +
- bpp * CUPS_TILE_SIZE * CUPS_TILE_SIZE, 1)) == NULL)
- {
- if (img->num_ics == 0)
- return (NULL);
-
- flush_tile(img);
- ic = img->first;
- }
- else
- {
- ic->pixels = ((cups_ib_t *)ic) + sizeof(cups_ic_t);
-
- img->num_ics ++;
-
- DEBUG_printf(("Allocated cache tile %d (%p)...\n", img->num_ics, ic));
- }
- }
- else
- {
- DEBUG_printf(("Flushing old cache tile (%p)...\n", img->first));
-
- flush_tile(img);
- ic = img->first;
- }
-
- ic->tile = tile;
- tile->ic = ic;
-
- if (tile->pos >= 0)
- {
- DEBUG_printf(("Loading cache tile from file position " CUPS_LLFMT "...\n",
- CUPS_LLCAST tile->pos));
-
- lseek(img->cachefile, tile->pos, SEEK_SET);
- read(img->cachefile, ic->pixels, bpp * CUPS_TILE_SIZE * CUPS_TILE_SIZE);
- }
- else
- {
- DEBUG_puts("Clearing cache tile...");
-
- memset(ic->pixels, 0, bpp * CUPS_TILE_SIZE * CUPS_TILE_SIZE);
- }
- }
-
- if (ic == img->first)
- {
- if (ic->next != NULL)
- ic->next->prev = NULL;
-
- img->first = ic->next;
- ic->next = NULL;
- ic->prev = NULL;
- }
- else if (img->first == NULL)
- img->first = ic;
-
- if (ic != img->last)
- {
- /*
- * Remove the cache entry from the list...
- */
-
- if (ic->prev != NULL)
- ic->prev->next = ic->next;
- if (ic->next != NULL)
- ic->next->prev = ic->prev;
-
- /*
- * And add it to the end...
- */
-
- if (img->last != NULL)
- img->last->next = ic;
-
- ic->prev = img->last;
- img->last = ic;
- }
-
- ic->next = NULL;
-
- return (ic->pixels + bpp * (y * CUPS_TILE_SIZE + x));
-}
-
-
-/*
- * End of "$Id: image.c 9873 2011-08-06 06:47:46Z mike $".
- */
diff --git a/filter/image.h b/filter/image.h
deleted file mode 100644
index 6b322e1f..00000000
--- a/filter/image.h
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
- * "$Id: image.h 9771 2011-05-12 05:21:56Z mike $"
- *
- * Image library definitions for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2006 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- */
-
-#ifndef _CUPS_IMAGE_H_
-# define _CUPS_IMAGE_H_
-
-/*
- * Include necessary headers...
- */
-
-# include <stdio.h>
-# include <cups/raster.h>
-
-# ifdef __cplusplus
-extern "C" {
-# endif /* __cplusplus */
-
-/*
- * Constants...
- */
-
-typedef enum cups_icspace_e /**** Image colorspaces ****/
-{
- CUPS_IMAGE_CMYK = -4, /* Cyan, magenta, yellow, and black */
- CUPS_IMAGE_CMY = -3, /* Cyan, magenta, and yellow */
- CUPS_IMAGE_BLACK = -1, /* Black */
- CUPS_IMAGE_WHITE = 1, /* White (luminance) */
- CUPS_IMAGE_RGB = 3, /* Red, green, and blue */
- CUPS_IMAGE_RGB_CMYK = 4 /* Use RGB or CMYK */
-} cups_icspace_t;
-
-
-/*
- * Types and structures...
- */
-
-typedef unsigned char cups_ib_t; /**** Image byte ****/
-
-struct cups_image_s;
-typedef struct cups_image_s cups_image_t;
- /**** Image file data ****/
-
-struct cups_izoom_s;
-typedef struct cups_izoom_s cups_izoom_t;
- /**** Image zoom data ****/
-
-
-/*
- * Prototypes...
- */
-
-extern void cupsImageClose(cups_image_t *img) _CUPS_API_1_2;
-extern void cupsImageCMYKToBlack(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageCMYKToCMY(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageCMYKToCMYK(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageCMYKToRGB(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageCMYKToWhite(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern int cupsImageGetCol(cups_image_t *img, int x, int y,
- int height, cups_ib_t *pixels) _CUPS_API_1_2;
-extern cups_icspace_t cupsImageGetColorSpace(cups_image_t *img) _CUPS_API_1_2;
-extern int cupsImageGetDepth(cups_image_t *img) _CUPS_API_1_2;
-extern unsigned cupsImageGetHeight(cups_image_t *img) _CUPS_API_1_2;
-extern int cupsImageGetRow(cups_image_t *img, int x, int y,
- int width, cups_ib_t *pixels) _CUPS_API_1_2;
-extern unsigned cupsImageGetWidth(cups_image_t *img) _CUPS_API_1_2;
-extern unsigned cupsImageGetXPPI(cups_image_t *img) _CUPS_API_1_2;
-extern unsigned cupsImageGetYPPI(cups_image_t *img) _CUPS_API_1_2;
-extern void cupsImageLut(cups_ib_t *pixels, int count,
- const cups_ib_t *lut) _CUPS_API_1_2;
-extern cups_image_t *cupsImageOpen(const char *filename,
- cups_icspace_t primary,
- cups_icspace_t secondary,
- int saturation, int hue,
- const cups_ib_t *lut) _CUPS_API_1_2;
-extern void cupsImageRGBAdjust(cups_ib_t *pixels, int count,
- int saturation, int hue) _CUPS_API_1_2;
-extern void cupsImageRGBToBlack(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageRGBToCMY(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageRGBToCMYK(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageRGBToRGB(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageRGBToWhite(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageSetMaxTiles(cups_image_t *img, int max_tiles) _CUPS_API_1_2;
-extern void cupsImageSetProfile(float d, float g,
- float matrix[3][3]) _CUPS_API_1_2;
-extern void cupsImageSetRasterColorSpace(cups_cspace_t cs) _CUPS_API_1_2;
-extern void cupsImageWhiteToBlack(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageWhiteToCMY(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageWhiteToCMYK(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageWhiteToRGB(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-extern void cupsImageWhiteToWhite(const cups_ib_t *in,
- cups_ib_t *out, int count) _CUPS_API_1_2;
-
-
-# ifdef __cplusplus
-}
-# endif /* __cplusplus */
-
-#endif /* !_CUPS_IMAGE_H_ */
-
-/*
- * End of "$Id: image.h 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/filter/imagetops.c b/filter/imagetops.c
deleted file mode 100644
index 8751f959..00000000
--- a/filter/imagetops.c
+++ /dev/null
@@ -1,1078 +0,0 @@
-/*
- * "$Id: imagetops.c 9901 2011-08-17 21:01:53Z mike $"
- *
- * Image file to PostScript filter for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * main() - Main entry...
- * ps_hex() - Print binary data as a series of hexadecimal numbers.
- * ps_ascii85() - Print binary data as a series of base-85 numbers.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "common.h"
-#include "image.h"
-#include <math.h>
-#include <cups/language-private.h>
-#include <signal.h>
-
-
-/*
- * Globals...
- */
-
-int Flip = 0, /* Flip/mirror pages */
- XPosition = 0, /* Horizontal position on page */
- YPosition = 0, /* Vertical position on page */
- Collate = 0, /* Collate copies? */
- Copies = 1; /* Number of copies */
-
-
-/*
- * Local functions...
- */
-
-static void ps_hex(cups_ib_t *, int, int);
-static void ps_ascii85(cups_ib_t *, int, int);
-
-
-/*
- * 'main()' - Main entry...
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- cups_image_t *img; /* Image to print */
- float xprint, /* Printable area */
- yprint,
- xinches, /* Total size in inches */
- yinches;
- float xsize, /* Total size in points */
- ysize,
- xsize2,
- ysize2;
- float aspect; /* Aspect ratio */
- int xpages, /* # x pages */
- ypages, /* # y pages */
- xpage, /* Current x page */
- ypage, /* Current y page */
- page; /* Current page number */
- int xc0, yc0, /* Corners of the page in image coords */
- xc1, yc1;
- cups_ib_t *row; /* Current row */
- int y; /* Current Y coordinate in image */
- int colorspace; /* Output colorspace */
- int out_offset, /* Offset into output buffer */
- out_length; /* Length of output buffer */
- ppd_file_t *ppd; /* PPD file */
- ppd_choice_t *choice; /* PPD option choice */
- int num_options; /* Number of print options */
- cups_option_t *options; /* Print options */
- const char *val; /* Option value */
- int slowcollate; /* Collate copies the slow way */
- float g; /* Gamma correction value */
- float b; /* Brightness factor */
- float zoom; /* Zoom facter */
- int xppi, yppi; /* Pixels-per-inch */
- int hue, sat; /* Hue and saturation adjustment */
- int realcopies, /* Real copies being printed */
- emit_jcl; /* Emit JCL? */
- float left, top; /* Left and top of image */
- char filename[1024]; /* Name of file to print */
- time_t curtime; /* Current time */
- struct tm *curtm; /* Current date */
- char curdate[255]; /* Current date string */
-
-
- /*
- * Make sure status messages are not buffered...
- */
-
- setbuf(stderr, NULL);
-
- /*
- * Ignore broken pipe signals...
- */
-
- signal(SIGPIPE, SIG_IGN);
-
- /*
- * Check command-line...
- */
-
- if (argc < 6 || argc > 7)
- {
- _cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options file"),
- argv[0]);
- return (1);
- }
-
- /*
- * Copy stdin as needed...
- */
-
- if (argc == 6)
- {
- int fd; /* File to write to */
- char buffer[8192]; /* Buffer to read into */
- int bytes; /* # of bytes to read */
-
-
- if ((fd = cupsTempFd(filename, sizeof(filename))) < 0)
- {
- _cupsLangPrintError("ERROR", _("Unable to copy print file"));
- return (1);
- }
-
- fprintf(stderr, "DEBUG: imagetops - copying to temp print file \"%s\".\n",
- filename);
-
- while ((bytes = fread(buffer, 1, sizeof(buffer), stdin)) > 0)
- write(fd, buffer, bytes);
-
- close(fd);
- }
- else
- strlcpy(filename, argv[6], sizeof(filename));
-
- /*
- * Process command-line options and write the prolog...
- */
-
- zoom = 0.0;
- xppi = 0;
- yppi = 0;
- hue = 0;
- sat = 100;
- g = 1.0;
- b = 1.0;
-
- Copies = atoi(argv[4]);
-
- options = NULL;
- num_options = cupsParseOptions(argv[5], 0, &options);
-
- ppd = SetCommonOptions(num_options, options, 0);
-
- if ((val = cupsGetOption("multiple-document-handling", num_options, options)) != NULL)
- {
- /*
- * This IPP attribute is unnecessarily complicated...
- *
- * single-document, separate-documents-collated-copies, and
- * single-document-new-sheet all require collated copies.
- *
- * separate-documents-uncollated-copies allows for uncollated copies.
- */
-
- Collate = _cups_strcasecmp(val, "separate-documents-uncollated-copies") != 0;
- }
-
- if ((val = cupsGetOption("Collate", num_options, options)) != NULL &&
- _cups_strcasecmp(val, "True") == 0)
- Collate = 1;
-
- if ((val = cupsGetOption("gamma", num_options, options)) != NULL)
- {
- /*
- * Get gamma value from 1 to 10000...
- */
-
- g = atoi(val) * 0.001f;
-
- if (g < 0.001f)
- g = 0.001f;
- else if (g > 10.0f)
- g = 10.0f;
- }
-
- if ((val = cupsGetOption("brightness", num_options, options)) != NULL)
- {
- /*
- * Get brightness value from 10 to 1000.
- */
-
- b = atoi(val) * 0.01f;
-
- if (b < 0.1f)
- b = 0.1f;
- else if (b > 10.0f)
- b = 10.0f;
- }
-
- if ((val = cupsGetOption("scaling", num_options, options)) != NULL)
- zoom = atoi(val) * 0.01;
- else if ((val = cupsGetOption("fitplot", num_options, options)) != NULL &&
- !_cups_strcasecmp(val, "true"))
- zoom = 1.0;
- else if ((val = cupsGetOption("fit-to-page", num_options, options)) != NULL &&
- !_cups_strcasecmp(val, "true"))
- zoom = 1.0;
-
- if ((val = cupsGetOption("ppi", num_options, options)) != NULL)
- if (sscanf(val, "%dx%d", &xppi, &yppi) < 2)
- yppi = xppi;
-
- if ((val = cupsGetOption("position", num_options, options)) != NULL)
- {
- if (_cups_strcasecmp(val, "center") == 0)
- {
- XPosition = 0;
- YPosition = 0;
- }
- else if (_cups_strcasecmp(val, "top") == 0)
- {
- XPosition = 0;
- YPosition = 1;
- }
- else if (_cups_strcasecmp(val, "left") == 0)
- {
- XPosition = -1;
- YPosition = 0;
- }
- else if (_cups_strcasecmp(val, "right") == 0)
- {
- XPosition = 1;
- YPosition = 0;
- }
- else if (_cups_strcasecmp(val, "top-left") == 0)
- {
- XPosition = -1;
- YPosition = 1;
- }
- else if (_cups_strcasecmp(val, "top-right") == 0)
- {
- XPosition = 1;
- YPosition = 1;
- }
- else if (_cups_strcasecmp(val, "bottom") == 0)
- {
- XPosition = 0;
- YPosition = -1;
- }
- else if (_cups_strcasecmp(val, "bottom-left") == 0)
- {
- XPosition = -1;
- YPosition = -1;
- }
- else if (_cups_strcasecmp(val, "bottom-right") == 0)
- {
- XPosition = 1;
- YPosition = -1;
- }
- }
-
- if ((val = cupsGetOption("saturation", num_options, options)) != NULL)
- sat = atoi(val);
-
- if ((val = cupsGetOption("hue", num_options, options)) != NULL)
- hue = atoi(val);
-
- if ((choice = ppdFindMarkedChoice(ppd, "MirrorPrint")) != NULL)
- {
- val = choice->choice;
- choice->marked = 0;
- }
- else
- val = cupsGetOption("mirror", num_options, options);
-
- if (val && (!_cups_strcasecmp(val, "true") || !_cups_strcasecmp(val, "on") ||
- !_cups_strcasecmp(val, "yes")))
- Flip = 1;
-
- if ((val = cupsGetOption("emit-jcl", num_options, options)) != NULL &&
- (!_cups_strcasecmp(val, "false") || !_cups_strcasecmp(val, "off") ||
- !_cups_strcasecmp(val, "no") || !strcmp(val, "0")))
- emit_jcl = 0;
- else
- emit_jcl = 1;
-
- /*
- * Open the input image to print...
- */
-
- colorspace = ColorDevice ? CUPS_IMAGE_RGB_CMYK : CUPS_IMAGE_WHITE;
-
- img = cupsImageOpen(filename, colorspace, CUPS_IMAGE_WHITE, sat, hue, NULL);
-
- if (argc == 6)
- unlink(filename);
-
- if (img == NULL)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("The print file could not be opened."));
- ppdClose(ppd);
- return (1);
- }
-
- colorspace = cupsImageGetColorSpace(img);
-
- /*
- * Scale as necessary...
- */
-
- if (zoom == 0.0 && xppi == 0)
- {
- xppi = cupsImageGetXPPI(img);
- yppi = cupsImageGetYPPI(img);
- }
-
- if (yppi == 0)
- yppi = xppi;
-
- fprintf(stderr, "DEBUG: Before scaling: xppi=%d, yppi=%d, zoom=%.2f\n",
- xppi, yppi, zoom);
-
- if (xppi > 0)
- {
- /*
- * Scale the image as neccesary to match the desired pixels-per-inch.
- */
-
- if (Orientation & 1)
- {
- xprint = (PageTop - PageBottom) / 72.0;
- yprint = (PageRight - PageLeft) / 72.0;
- }
- else
- {
- xprint = (PageRight - PageLeft) / 72.0;
- yprint = (PageTop - PageBottom) / 72.0;
- }
-
- fprintf(stderr, "DEBUG: Before scaling: xprint=%.1f, yprint=%.1f\n",
- xprint, yprint);
-
- xinches = (float)cupsImageGetWidth(img) / (float)xppi;
- yinches = (float)cupsImageGetHeight(img) / (float)yppi;
-
- fprintf(stderr, "DEBUG: Image size is %.1f x %.1f inches...\n",
- xinches, yinches);
-
- if ((val = cupsGetOption("natural-scaling", num_options, options)) != NULL)
- {
- xinches = xinches * atoi(val) / 100;
- yinches = yinches * atoi(val) / 100;
- }
-
- if (cupsGetOption("orientation-requested", num_options, options) == NULL &&
- cupsGetOption("landscape", num_options, options) == NULL)
- {
- /*
- * Rotate the image if it will fit landscape but not portrait...
- */
-
- fputs("DEBUG: Auto orientation...\n", stderr);
-
- if ((xinches > xprint || yinches > yprint) &&
- xinches <= yprint && yinches <= xprint)
- {
- /*
- * Rotate the image as needed...
- */
-
- fputs("DEBUG: Using landscape orientation...\n", stderr);
-
- Orientation = (Orientation + 1) & 3;
- xsize = yprint;
- yprint = xprint;
- xprint = xsize;
- }
- }
- }
- else
- {
- /*
- * Scale percentage of page size...
- */
-
- xprint = (PageRight - PageLeft) / 72.0;
- yprint = (PageTop - PageBottom) / 72.0;
- aspect = (float)cupsImageGetYPPI(img) / (float)cupsImageGetXPPI(img);
-
- fprintf(stderr, "DEBUG: Before scaling: xprint=%.1f, yprint=%.1f\n",
- xprint, yprint);
-
- fprintf(stderr, "DEBUG: cupsImageGetXPPI(img) = %d, cupsImageGetYPPI(img) = %d, aspect = %f\n",
- cupsImageGetXPPI(img), cupsImageGetYPPI(img), aspect);
-
- xsize = xprint * zoom;
- ysize = xsize * cupsImageGetHeight(img) / cupsImageGetWidth(img) / aspect;
-
- if (ysize > (yprint * zoom))
- {
- ysize = yprint * zoom;
- xsize = ysize * cupsImageGetWidth(img) * aspect / cupsImageGetHeight(img);
- }
-
- xsize2 = yprint * zoom;
- ysize2 = xsize2 * cupsImageGetHeight(img) / cupsImageGetWidth(img) / aspect;
-
- if (ysize2 > (xprint * zoom))
- {
- ysize2 = xprint * zoom;
- xsize2 = ysize2 * cupsImageGetWidth(img) * aspect / cupsImageGetHeight(img);
- }
-
- fprintf(stderr, "DEBUG: Portrait size is %.2f x %.2f inches\n", xsize, ysize);
- fprintf(stderr, "DEBUG: Landscape size is %.2f x %.2f inches\n", xsize2, ysize2);
-
- if (cupsGetOption("orientation-requested", num_options, options) == NULL &&
- cupsGetOption("landscape", num_options, options) == NULL)
- {
- /*
- * Choose the rotation with the largest area, but prefer
- * portrait if they are equal...
- */
-
- fputs("DEBUG: Auto orientation...\n", stderr);
-
- if ((xsize * ysize) < (xsize2 * xsize2))
- {
- /*
- * Do landscape orientation...
- */
-
- fputs("DEBUG: Using landscape orientation...\n", stderr);
-
- Orientation = 1;
- xinches = xsize2;
- yinches = ysize2;
- xprint = (PageTop - PageBottom) / 72.0;
- yprint = (PageRight - PageLeft) / 72.0;
- }
- else
- {
- /*
- * Do portrait orientation...
- */
-
- fputs("DEBUG: Using portrait orientation...\n", stderr);
-
- Orientation = 0;
- xinches = xsize;
- yinches = ysize;
- }
- }
- else if (Orientation & 1)
- {
- fputs("DEBUG: Using landscape orientation...\n", stderr);
-
- xinches = xsize2;
- yinches = ysize2;
- xprint = (PageTop - PageBottom) / 72.0;
- yprint = (PageRight - PageLeft) / 72.0;
- }
- else
- {
- fputs("DEBUG: Using portrait orientation...\n", stderr);
-
- xinches = xsize;
- yinches = ysize;
- xprint = (PageRight - PageLeft) / 72.0;
- yprint = (PageTop - PageBottom) / 72.0;
- }
- }
-
- /*
- * Compute the number of pages to print and the size of the image on each
- * page...
- */
-
- xpages = ceil(xinches / xprint);
- ypages = ceil(yinches / yprint);
-
- xprint = xinches / xpages;
- yprint = yinches / ypages;
-
- fprintf(stderr, "DEBUG: xpages = %dx%.2fin, ypages = %dx%.2fin\n",
- xpages, xprint, ypages, yprint);
-
- /*
- * Update the page size for custom sizes...
- */
-
- if ((choice = ppdFindMarkedChoice(ppd, "PageSize")) != NULL &&
- _cups_strcasecmp(choice->choice, "Custom") == 0)
- {
- float width, /* New width in points */
- length; /* New length in points */
- char s[255]; /* New custom page size... */
-
-
- /*
- * Use the correct width and length for the current orientation...
- */
-
- if (Orientation & 1)
- {
- width = yprint * 72.0;
- length = xprint * 72.0;
- }
- else
- {
- width = xprint * 72.0;
- length = yprint * 72.0;
- }
-
- /*
- * Add margins to page size...
- */
-
- width += ppd->custom_margins[0] + ppd->custom_margins[2];
- length += ppd->custom_margins[1] + ppd->custom_margins[3];
-
- /*
- * Enforce minimums...
- */
-
- if (width < ppd->custom_min[0])
- width = ppd->custom_min[0];
-
- if (length < ppd->custom_min[1])
- length = ppd->custom_min[1];
-
- fprintf(stderr, "DEBUG: Updated custom page size to %.2f x %.2f inches...\n",
- width / 72.0, length / 72.0);
-
- /*
- * Set the new custom size...
- */
-
- sprintf(s, "Custom.%.0fx%.0f", width, length);
- ppdMarkOption(ppd, "PageSize", s);
-
- /*
- * Update page variables...
- */
-
- PageWidth = width;
- PageLength = length;
- PageLeft = ppd->custom_margins[0];
- PageRight = width - ppd->custom_margins[2];
- PageBottom = ppd->custom_margins[1];
- PageTop = length - ppd->custom_margins[3];
- }
-
- /*
- * See if we need to collate, and if so how we need to do it...
- */
-
- if (xpages == 1 && ypages == 1)
- Collate = 0;
-
- slowcollate = Collate && ppdFindOption(ppd, "Collate") == NULL;
-
- if (Copies > 1 && !slowcollate)
- {
- realcopies = Copies;
- Copies = 1;
- }
- else
- realcopies = 1;
-
- /*
- * Write any "exit server" options that have been selected...
- */
-
- ppdEmit(ppd, stdout, PPD_ORDER_EXIT);
-
- /*
- * Write any JCL commands that are needed to print PostScript code...
- */
-
- if (emit_jcl)
- ppdEmitJCL(ppd, stdout, atoi(argv[1]), argv[2], argv[3]);
-
- /*
- * Start sending the document with any commands needed...
- */
-
- curtime = time(NULL);
- curtm = localtime(&curtime);
-
- puts("%!PS-Adobe-3.0");
- printf("%%%%BoundingBox: %.0f %.0f %.0f %.0f\n", PageLeft, PageBottom,
- PageRight, PageTop);
- printf("%%%%LanguageLevel: %d\n", LanguageLevel);
- printf("%%%%Pages: %d\n", xpages * ypages * Copies);
- puts("%%DocumentData: Clean7Bit");
- puts("%%DocumentNeededResources: font Helvetica-Bold");
- puts("%%Creator: imagetops/" CUPS_SVERSION);
- strftime(curdate, sizeof(curdate), "%c", curtm);
- printf("%%%%CreationDate: %s\n", curdate);
- WriteTextComment("Title", argv[3]);
- WriteTextComment("For", argv[2]);
- if (Orientation & 1)
- puts("%%Orientation: Landscape");
- else
- puts("%%Orientation: Portrait");
- puts("%%EndComments");
- puts("%%BeginProlog");
-
- if (ppd != NULL && ppd->patches != NULL)
- puts(ppd->patches);
-
- ppdEmit(ppd, stdout, PPD_ORDER_DOCUMENT);
- ppdEmit(ppd, stdout, PPD_ORDER_ANY);
- ppdEmit(ppd, stdout, PPD_ORDER_PROLOG);
-
- if (g != 1.0 || b != 1.0)
- printf("{ neg 1 add dup 0 lt { pop 1 } { %.3f exp neg 1 add } "
- "ifelse %.3f mul } bind settransfer\n", g, b);
-
- WriteCommon();
- switch (Orientation)
- {
- case 0 :
- WriteLabelProlog(cupsGetOption("page-label", num_options, options),
- PageBottom, PageTop, PageWidth);
- break;
-
- case 1 :
- WriteLabelProlog(cupsGetOption("page-label", num_options, options),
- PageLeft, PageRight, PageLength);
- break;
-
- case 2 :
- WriteLabelProlog(cupsGetOption("page-label", num_options, options),
- PageLength - PageTop, PageLength - PageBottom,
- PageWidth);
- break;
-
- case 3 :
- WriteLabelProlog(cupsGetOption("page-label", num_options, options),
- PageWidth - PageRight, PageWidth - PageLeft,
- PageLength);
- break;
- }
-
- if (realcopies > 1)
- {
- if (ppd == NULL || ppd->language_level == 1)
- printf("/#copies %d def\n", realcopies);
- else
- printf("<</NumCopies %d>>setpagedevice\n", realcopies);
- }
-
- puts("%%EndProlog");
-
- /*
- * Output the pages...
- */
-
- row = malloc(cupsImageGetWidth(img) * abs(colorspace) + 3);
-
- fprintf(stderr, "DEBUG: XPosition=%d, YPosition=%d, Orientation=%d\n",
- XPosition, YPosition, Orientation);
- fprintf(stderr, "DEBUG: xprint=%.0f, yprint=%.0f\n", xprint, yprint);
- fprintf(stderr, "DEBUG: PageLeft=%.0f, PageRight=%.0f, PageWidth=%.0f\n",
- PageLeft, PageRight, PageWidth);
- fprintf(stderr, "DEBUG: PageBottom=%.0f, PageTop=%.0f, PageLength=%.0f\n",
- PageBottom, PageTop, PageLength);
-
- switch (Orientation)
- {
- default :
- switch (XPosition)
- {
- case -1 :
- left = PageLeft;
- break;
- default :
- left = (PageRight + PageLeft - xprint * 72) / 2;
- break;
- case 1 :
- left = PageRight - xprint * 72;
- break;
- }
-
- switch (YPosition)
- {
- case -1 :
- top = PageBottom + yprint * 72;
- break;
- default :
- top = (PageTop + PageBottom + yprint * 72) / 2;
- break;
- case 1 :
- top = PageTop;
- break;
- }
- break;
-
- case 1 :
- switch (XPosition)
- {
- case -1 :
- left = PageBottom;
- break;
- default :
- left = (PageTop + PageBottom - xprint * 72) / 2;
- break;
- case 1 :
- left = PageTop - xprint * 72;
- break;
- }
-
- switch (YPosition)
- {
- case -1 :
- top = PageLeft + yprint * 72;
- break;
- default :
- top = (PageRight + PageLeft + yprint * 72) / 2;
- break;
- case 1 :
- top = PageRight;
- break;
- }
- break;
-
- case 2 :
- switch (XPosition)
- {
- case 1 :
- left = PageLeft;
- break;
- default :
- left = (PageRight + PageLeft - xprint * 72) / 2;
- break;
- case -1 :
- left = PageRight - xprint * 72;
- break;
- }
-
- switch (YPosition)
- {
- case 1 :
- top = PageBottom + yprint * 72;
- break;
- default :
- top = (PageTop + PageBottom + yprint * 72) / 2;
- break;
- case -1 :
- top = PageTop;
- break;
- }
- break;
-
- case 3 :
- switch (XPosition)
- {
- case 1 :
- left = PageBottom;
- break;
- default :
- left = (PageTop + PageBottom - xprint * 72) / 2;
- break;
- case -1 :
- left = PageTop - xprint * 72;
- break;
- }
-
- switch (YPosition)
- {
- case 1 :
- top = PageLeft + yprint * 72;
- break;
- default :
- top = (PageRight + PageLeft + yprint * 72) / 2;
- break;
- case -1 :
- top = PageRight;
- break;
- }
- break;
- }
-
- fprintf(stderr, "DEBUG: left=%.2f, top=%.2f\n", left, top);
-
- for (page = 1; Copies > 0; Copies --)
- for (xpage = 0; xpage < xpages; xpage ++)
- for (ypage = 0; ypage < ypages; ypage ++, page ++)
- {
- if (ppd && ppd->num_filters == 0)
- fprintf(stderr, "PAGE: %d %d\n", page, realcopies);
-
- _cupsLangPrintFilter(stderr, "INFO", _("Printing page %d."), page);
-
- printf("%%%%Page: %d %d\n", page, page);
-
- ppdEmit(ppd, stdout, PPD_ORDER_PAGE);
-
- puts("gsave");
-
- if (Flip)
- printf("%.0f 0 translate -1 1 scale\n", PageWidth);
-
- switch (Orientation)
- {
- case 1 : /* Landscape */
- printf("%.0f 0 translate 90 rotate\n", PageWidth);
- break;
- case 2 : /* Reverse Portrait */
- printf("%.0f %.0f translate 180 rotate\n", PageWidth, PageLength);
- break;
- case 3 : /* Reverse Landscape */
- printf("0 %.0f translate -90 rotate\n", PageLength);
- break;
- }
-
- puts("gsave");
-
- xc0 = cupsImageGetWidth(img) * xpage / xpages;
- xc1 = cupsImageGetWidth(img) * (xpage + 1) / xpages - 1;
- yc0 = cupsImageGetHeight(img) * ypage / ypages;
- yc1 = cupsImageGetHeight(img) * (ypage + 1) / ypages - 1;
-
- printf("%.1f %.1f translate\n", left, top);
-
- printf("%.3f %.3f scale\n\n",
- xprint * 72.0 / (xc1 - xc0 + 1),
- yprint * 72.0 / (yc1 - yc0 + 1));
-
- if (LanguageLevel == 1)
- {
- printf("/picture %d string def\n", (xc1 - xc0 + 1) * abs(colorspace));
- printf("%d %d 8[1 0 0 -1 0 1]", (xc1 - xc0 + 1), (yc1 - yc0 + 1));
-
- if (colorspace == CUPS_IMAGE_WHITE)
- puts("{currentfile picture readhexstring pop} image");
- else
- printf("{currentfile picture readhexstring pop} false %d colorimage\n",
- abs(colorspace));
-
- for (y = yc0; y <= yc1; y ++)
- {
- cupsImageGetRow(img, xc0, y, xc1 - xc0 + 1, row);
- ps_hex(row, (xc1 - xc0 + 1) * abs(colorspace), y == yc1);
- }
- }
- else
- {
- switch (colorspace)
- {
- case CUPS_IMAGE_WHITE :
- puts("/DeviceGray setcolorspace");
- break;
- case CUPS_IMAGE_RGB :
- puts("/DeviceRGB setcolorspace");
- break;
- case CUPS_IMAGE_CMYK :
- puts("/DeviceCMYK setcolorspace");
- break;
- }
-
- printf("<<"
- "/ImageType 1"
- "/Width %d"
- "/Height %d"
- "/BitsPerComponent 8",
- xc1 - xc0 + 1, yc1 - yc0 + 1);
-
- switch (colorspace)
- {
- case CUPS_IMAGE_WHITE :
- fputs("/Decode[0 1]", stdout);
- break;
- case CUPS_IMAGE_RGB :
- fputs("/Decode[0 1 0 1 0 1]", stdout);
- break;
- case CUPS_IMAGE_CMYK :
- fputs("/Decode[0 1 0 1 0 1 0 1]", stdout);
- break;
- }
-
- fputs("\n/DataSource currentfile/ASCII85Decode filter", stdout);
-
- if (((xc1 - xc0 + 1) / xprint) < 100.0)
- fputs("/Interpolate true", stdout);
-
- puts("/ImageMatrix[1 0 0 -1 0 1]>>image");
-
- for (y = yc0, out_offset = 0; y <= yc1; y ++)
- {
- cupsImageGetRow(img, xc0, y, xc1 - xc0 + 1, row + out_offset);
-
- out_length = (xc1 - xc0 + 1) * abs(colorspace) + out_offset;
- out_offset = out_length & 3;
-
- ps_ascii85(row, out_length, y == yc1);
-
- if (out_offset > 0)
- memcpy(row, row + out_length - out_offset, out_offset);
- }
- }
-
- puts("grestore");
- WriteLabels(0);
- puts("grestore");
- puts("showpage");
- }
-
- puts("%%EOF");
-
- /*
- * End the job with the appropriate JCL command or CTRL-D otherwise.
- */
-
- if (emit_jcl)
- {
- if (ppd && ppd->jcl_end)
- ppdEmitJCLEnd(ppd, stdout);
- else
- putchar(0x04);
- }
-
- /*
- * Close files...
- */
-
- cupsImageClose(img);
- ppdClose(ppd);
-
- return (0);
-}
-
-
-/*
- * 'ps_hex()' - Print binary data as a series of hexadecimal numbers.
- */
-
-static void
-ps_hex(cups_ib_t *data, /* I - Data to print */
- int length, /* I - Number of bytes to print */
- int last_line) /* I - Last line of raster data? */
-{
- static int col = 0; /* Current column */
- static char *hex = "0123456789ABCDEF";
- /* Hex digits */
-
-
- while (length > 0)
- {
- /*
- * Put the hex chars out to the file; note that we don't use printf()
- * for speed reasons...
- */
-
- putchar(hex[*data >> 4]);
- putchar(hex[*data & 15]);
-
- data ++;
- length --;
-
- col += 2;
- if (col > 78)
- {
- putchar('\n');
- col = 0;
- }
- }
-
- if (last_line && col)
- {
- putchar('\n');
- col = 0;
- }
-}
-
-
-/*
- * 'ps_ascii85()' - Print binary data as a series of base-85 numbers.
- */
-
-static void
-ps_ascii85(cups_ib_t *data, /* I - Data to print */
- int length, /* I - Number of bytes to print */
- int last_line) /* I - Last line of raster data? */
-{
- unsigned b; /* Binary data word */
- unsigned char c[5]; /* ASCII85 encoded chars */
- static int col = 0; /* Current column */
-
-
- while (length > 3)
- {
- b = (((((data[0] << 8) | data[1]) << 8) | data[2]) << 8) | data[3];
-
- if (b == 0)
- {
- putchar('z');
- col ++;
- }
- else
- {
- c[4] = (b % 85) + '!';
- b /= 85;
- c[3] = (b % 85) + '!';
- b /= 85;
- c[2] = (b % 85) + '!';
- b /= 85;
- c[1] = (b % 85) + '!';
- b /= 85;
- c[0] = b + '!';
-
- fwrite(c, 5, 1, stdout);
- col += 5;
- }
-
- data += 4;
- length -= 4;
-
- if (col >= 75)
- {
- putchar('\n');
- col = 0;
- }
- }
-
- if (last_line)
- {
- if (length > 0)
- {
- memset(data + length, 0, 4 - length);
- b = (((((data[0] << 8) | data[1]) << 8) | data[2]) << 8) | data[3];
-
- c[4] = (b % 85) + '!';
- b /= 85;
- c[3] = (b % 85) + '!';
- b /= 85;
- c[2] = (b % 85) + '!';
- b /= 85;
- c[1] = (b % 85) + '!';
- b /= 85;
- c[0] = b + '!';
-
- fwrite(c, length + 1, 1, stdout);
- }
-
- puts("~>");
- col = 0;
- }
-}
-
-
-/*
- * End of "$Id: imagetops.c 9901 2011-08-17 21:01:53Z mike $".
- */
diff --git a/filter/imagetoraster.c b/filter/imagetoraster.c
deleted file mode 100644
index 0d09ce2c..00000000
--- a/filter/imagetoraster.c
+++ /dev/null
@@ -1,4368 +0,0 @@
-/*
- * "$Id: imagetoraster.c 9808 2011-05-26 12:03:28Z mike $"
- *
- * Image file to raster filter for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * main() - Main entry...
- * blank_line() - Clear a line buffer to the blank value...
- * format_CMY() - Convert image data to CMY.
- * format_CMYK() - Convert image data to CMYK.
- * format_K() - Convert image data to black.
- * format_KCMY() - Convert image data to KCMY.
- * format_KCMYcm() - Convert image data to KCMYcm.
- * format_RGBA() - Convert image data to RGBA/RGBW.
- * format_W() - Convert image data to luminance.
- * format_YMC() - Convert image data to YMC.
- * format_YMCK() - Convert image data to YMCK.
- * make_lut() - Make a lookup table given gamma and brightness values.
- * raster_cb() - Validate the page header.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "common.h"
-#include "image-private.h"
-#include <unistd.h>
-#include <math.h>
-#include <cups/language-private.h>
-#include <signal.h>
-
-
-/*
- * Globals...
- */
-
-int Flip = 0, /* Flip/mirror pages */
- XPosition = 0, /* Horizontal position on page */
- YPosition = 0, /* Vertical position on page */
- Collate = 0, /* Collate copies? */
- Copies = 1; /* Number of copies */
-int Floyd16x16[16][16] = /* Traditional Floyd ordered dither */
- {
- { 0, 128, 32, 160, 8, 136, 40, 168,
- 2, 130, 34, 162, 10, 138, 42, 170 },
- { 192, 64, 224, 96, 200, 72, 232, 104,
- 194, 66, 226, 98, 202, 74, 234, 106 },
- { 48, 176, 16, 144, 56, 184, 24, 152,
- 50, 178, 18, 146, 58, 186, 26, 154 },
- { 240, 112, 208, 80, 248, 120, 216, 88,
- 242, 114, 210, 82, 250, 122, 218, 90 },
- { 12, 140, 44, 172, 4, 132, 36, 164,
- 14, 142, 46, 174, 6, 134, 38, 166 },
- { 204, 76, 236, 108, 196, 68, 228, 100,
- 206, 78, 238, 110, 198, 70, 230, 102 },
- { 60, 188, 28, 156, 52, 180, 20, 148,
- 62, 190, 30, 158, 54, 182, 22, 150 },
- { 252, 124, 220, 92, 244, 116, 212, 84,
- 254, 126, 222, 94, 246, 118, 214, 86 },
- { 3, 131, 35, 163, 11, 139, 43, 171,
- 1, 129, 33, 161, 9, 137, 41, 169 },
- { 195, 67, 227, 99, 203, 75, 235, 107,
- 193, 65, 225, 97, 201, 73, 233, 105 },
- { 51, 179, 19, 147, 59, 187, 27, 155,
- 49, 177, 17, 145, 57, 185, 25, 153 },
- { 243, 115, 211, 83, 251, 123, 219, 91,
- 241, 113, 209, 81, 249, 121, 217, 89 },
- { 15, 143, 47, 175, 7, 135, 39, 167,
- 13, 141, 45, 173, 5, 133, 37, 165 },
- { 207, 79, 239, 111, 199, 71, 231, 103,
- 205, 77, 237, 109, 197, 69, 229, 101 },
- { 63, 191, 31, 159, 55, 183, 23, 151,
- 61, 189, 29, 157, 53, 181, 21, 149 },
- { 254, 127, 223, 95, 247, 119, 215, 87,
- 253, 125, 221, 93, 245, 117, 213, 85 }
- };
-int Floyd8x8[8][8] =
- {
- { 0, 32, 8, 40, 2, 34, 10, 42 },
- { 48, 16, 56, 24, 50, 18, 58, 26 },
- { 12, 44, 4, 36, 14, 46, 6, 38 },
- { 60, 28, 52, 20, 62, 30, 54, 22 },
- { 3, 35, 11, 43, 1, 33, 9, 41 },
- { 51, 19, 59, 27, 49, 17, 57, 25 },
- { 15, 47, 7, 39, 13, 45, 5, 37 },
- { 63, 31, 55, 23, 61, 29, 53, 21 }
- };
-int Floyd4x4[4][4] =
- {
- { 0, 8, 2, 10 },
- { 12, 4, 14, 6 },
- { 3, 11, 1, 9 },
- { 15, 7, 13, 5 }
- };
-
-cups_ib_t OnPixels[256], /* On-pixel LUT */
- OffPixels[256]; /* Off-pixel LUT */
-
-
-/*
- * Local functions...
- */
-
-static void blank_line(cups_page_header2_t *header, unsigned char *row);
-static void format_CMY(cups_page_header2_t *header, unsigned char *row, int y, int z, int xsize, int ysize, int yerr0, int yerr1, cups_ib_t *r0, cups_ib_t *r1);
-static void format_CMYK(cups_page_header2_t *header, unsigned char *row, int y, int z, int xsize, int ysize, int yerr0, int yerr1, cups_ib_t *r0, cups_ib_t *r1);
-static void format_K(cups_page_header2_t *header, unsigned char *row, int y, int z, int xsize, int ysize, int yerr0, int yerr1, cups_ib_t *r0, cups_ib_t *r1);
-static void format_KCMYcm(cups_page_header2_t *header, unsigned char *row, int y, int z, int xsize, int ysize, int yerr0, int yerr1, cups_ib_t *r0, cups_ib_t *r1);
-static void format_KCMY(cups_page_header2_t *header, unsigned char *row, int y, int z, int xsize, int ysize, int yerr0, int yerr1, cups_ib_t *r0, cups_ib_t *r1);
-#define format_RGB format_CMY
-static void format_RGBA(cups_page_header2_t *header, unsigned char *row, int y, int z, int xsize, int ysize, int yerr0, int yerr1, cups_ib_t *r0, cups_ib_t *r1);
-static void format_W(cups_page_header2_t *header, unsigned char *row, int y, int z, int xsize, int ysize, int yerr0, int yerr1, cups_ib_t *r0, cups_ib_t *r1);
-static void format_YMC(cups_page_header2_t *header, unsigned char *row, int y, int z, int xsize, int ysize, int yerr0, int yerr1, cups_ib_t *r0, cups_ib_t *r1);
-static void format_YMCK(cups_page_header2_t *header, unsigned char *row, int y, int z, int xsize, int ysize, int yerr0, int yerr1, cups_ib_t *r0, cups_ib_t *r1);
-static void make_lut(cups_ib_t *, int, float, float);
-static int raster_cb(cups_page_header2_t *header, int preferred_bits);
-
-
-/*
- * 'main()' - Main entry...
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- int i; /* Looping var */
- cups_image_t *img; /* Image to print */
- float xprint, /* Printable area */
- yprint,
- xinches, /* Total size in inches */
- yinches;
- float xsize, /* Total size in points */
- ysize,
- xsize2,
- ysize2;
- float aspect; /* Aspect ratio */
- int xpages, /* # x pages */
- ypages, /* # y pages */
- xpage, /* Current x page */
- ypage, /* Current y page */
- xtemp, /* Bitmap width in pixels */
- ytemp, /* Bitmap height in pixels */
- page; /* Current page number */
- int xc0, yc0, /* Corners of the page in image coords */
- xc1, yc1;
- ppd_file_t *ppd; /* PPD file */
- ppd_choice_t *choice; /* PPD option choice */
- char *resolution, /* Output resolution */
- *media_type; /* Media type */
- ppd_profile_t *profile; /* Color profile */
- ppd_profile_t userprofile; /* User-specified profile */
- cups_raster_t *ras; /* Raster stream */
- cups_page_header2_t header; /* Page header */
- int num_options; /* Number of print options */
- cups_option_t *options; /* Print options */
- const char *val; /* Option value */
- int slowcollate, /* Collate copies the slow way */
- slowcopies; /* Make copies the "slow" way? */
- float g; /* Gamma correction value */
- float b; /* Brightness factor */
- float zoom; /* Zoom facter */
- int xppi, yppi; /* Pixels-per-inch */
- int hue, sat; /* Hue and saturation adjustment */
- cups_izoom_t *z; /* Image zoom buffer */
- cups_iztype_t zoom_type; /* Image zoom type */
- int primary, /* Primary image colorspace */
- secondary; /* Secondary image colorspace */
- cups_ib_t *row, /* Current row */
- *r0, /* Top row */
- *r1; /* Bottom row */
- int y, /* Current Y coordinate on page */
- iy, /* Current Y coordinate in image */
- last_iy, /* Previous Y coordinate in image */
- yerr0, /* Top Y error value */
- yerr1; /* Bottom Y error value */
- cups_ib_t lut[256]; /* Gamma/brightness LUT */
- int plane, /* Current color plane */
- num_planes; /* Number of color planes */
- char filename[1024]; /* Name of file to print */
-
-
- /*
- * Make sure status messages are not buffered...
- */
-
- setbuf(stderr, NULL);
-
- /*
- * Ignore broken pipe signals...
- */
-
- signal(SIGPIPE, SIG_IGN);
-
- /*
- * Check command-line...
- */
-
- if (argc < 6 || argc > 7)
- {
- _cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options file"),
- argv[0]);
- return (1);
- }
-
- /*
- * See if we need to use the imagetops and pstoraster filters instead...
- */
-
- options = NULL;
- num_options = cupsParseOptions(argv[5], 0, &options);
-
- if (getenv("CLASSIFICATION") ||
- cupsGetOption("page-label", num_options, options))
- {
- /*
- * Yes, fork a copy of pstoraster and then transfer control to imagetops...
- */
-
- int mypipes[2]; /* New pipes for imagetops | pstoraster */
- int pid; /* PID of pstoraster */
-
-
- cupsFreeOptions(num_options, options);
-
- if (pipe(mypipes))
- {
- _cupsLangPrintError("ERROR", _("Unable to create pipes for filters"));
- return (errno);
- }
-
- if ((pid = fork()) == 0)
- {
- /*
- * Child process for pstoraster... Assign new pipe input to pstoraster...
- */
-
- dup2(mypipes[0], 0);
- close(mypipes[0]);
- close(mypipes[1]);
-
- execlp("pstoraster", argv[0], argv[1], argv[2], argv[3], argv[4], argv[5],
- NULL);
- return (errno);
- }
- else if (pid < 0)
- {
- /*
- * Error!
- */
-
- _cupsLangPrintError("ERROR", _("Unable to fork filter"));
- return (errno);
- }
-
- /*
- * Update stdout so it points at the new pstoraster...
- */
-
- dup2(mypipes[1], 1);
- close(mypipes[0]);
- close(mypipes[1]);
-
- /*
- * Run imagetops to get the classification or page labeling that was
- * requested...
- */
-
- execlp("imagetops", argv[0], argv[1], argv[2], argv[3], argv[4], argv[5],
- argv[6], NULL);
- return (errno);
- }
-
- /*
- * Copy stdin as needed...
- */
-
- if (argc == 6)
- {
- int fd; /* File to write to */
- char buffer[8192]; /* Buffer to read into */
- int bytes; /* # of bytes to read */
-
-
- if ((fd = cupsTempFd(filename, sizeof(filename))) < 0)
- {
- _cupsLangPrintError("ERROR", _("Unable to copy print file"));
- return (1);
- }
-
- fprintf(stderr,
- "DEBUG: imagetoraster - copying to temp print file \"%s\".\n",
- filename);
-
- while ((bytes = fread(buffer, 1, sizeof(buffer), stdin)) > 0)
- write(fd, buffer, bytes);
-
- close(fd);
- }
- else
- strlcpy(filename, argv[6], sizeof(filename));
-
- /*
- * Process command-line options and write the prolog...
- */
-
- zoom = 0.0;
- xppi = 0;
- yppi = 0;
- hue = 0;
- sat = 100;
- g = 1.0;
- b = 1.0;
-
- Copies = atoi(argv[4]);
-
- ppd = SetCommonOptions(num_options, options, 0);
-
- if ((val = cupsGetOption("multiple-document-handling", num_options, options)) != NULL)
- {
- /*
- * This IPP attribute is unnecessarily complicated...
- *
- * single-document, separate-documents-collated-copies, and
- * single-document-new-sheet all require collated copies.
- *
- * separate-documents-collated-copies allows for uncollated copies.
- */
-
- Collate = _cups_strcasecmp(val, "separate-documents-collated-copies") != 0;
- }
-
- if ((val = cupsGetOption("Collate", num_options, options)) != NULL &&
- _cups_strcasecmp(val, "True") == 0)
- Collate = 1;
-
- if ((val = cupsGetOption("gamma", num_options, options)) != NULL)
- {
- /*
- * Get gamma value from 1 to 10000...
- */
-
- g = atoi(val) * 0.001f;
-
- if (g < 0.001f)
- g = 0.001f;
- else if (g > 10.0f)
- g = 10.0f;
- }
-
- if ((val = cupsGetOption("brightness", num_options, options)) != NULL)
- {
- /*
- * Get brightness value from 10 to 1000.
- */
-
- b = atoi(val) * 0.01f;
-
- if (b < 0.1f)
- b = 0.1f;
- else if (b > 10.0f)
- b = 10.0f;
- }
-
- if ((val = cupsGetOption("scaling", num_options, options)) != NULL)
- zoom = atoi(val) * 0.01;
- else if ((val = cupsGetOption("fitplot", num_options, options)) != NULL &&
- !_cups_strcasecmp(val, "true"))
- zoom = 1.0;
- else if ((val = cupsGetOption("fit-to-page", num_options, options)) != NULL &&
- !_cups_strcasecmp(val, "true"))
- zoom = 1.0;
-
- if ((val = cupsGetOption("ppi", num_options, options)) != NULL)
- if (sscanf(val, "%dx%d", &xppi, &yppi) < 2)
- yppi = xppi;
-
- if ((val = cupsGetOption("position", num_options, options)) != NULL)
- {
- if (_cups_strcasecmp(val, "center") == 0)
- {
- XPosition = 0;
- YPosition = 0;
- }
- else if (_cups_strcasecmp(val, "top") == 0)
- {
- XPosition = 0;
- YPosition = 1;
- }
- else if (_cups_strcasecmp(val, "left") == 0)
- {
- XPosition = -1;
- YPosition = 0;
- }
- else if (_cups_strcasecmp(val, "right") == 0)
- {
- XPosition = 1;
- YPosition = 0;
- }
- else if (_cups_strcasecmp(val, "top-left") == 0)
- {
- XPosition = -1;
- YPosition = 1;
- }
- else if (_cups_strcasecmp(val, "top-right") == 0)
- {
- XPosition = 1;
- YPosition = 1;
- }
- else if (_cups_strcasecmp(val, "bottom") == 0)
- {
- XPosition = 0;
- YPosition = -1;
- }
- else if (_cups_strcasecmp(val, "bottom-left") == 0)
- {
- XPosition = -1;
- YPosition = -1;
- }
- else if (_cups_strcasecmp(val, "bottom-right") == 0)
- {
- XPosition = 1;
- YPosition = -1;
- }
- }
-
- if ((val = cupsGetOption("saturation", num_options, options)) != NULL)
- sat = atoi(val);
-
- if ((val = cupsGetOption("hue", num_options, options)) != NULL)
- hue = atoi(val);
-
- if ((choice = ppdFindMarkedChoice(ppd, "MirrorPrint")) != NULL)
- {
- val = choice->choice;
- choice->marked = 0;
- }
- else
- val = cupsGetOption("mirror", num_options, options);
-
- if (val && (!_cups_strcasecmp(val, "true") || !_cups_strcasecmp(val, "on") ||
- !_cups_strcasecmp(val, "yes")))
- Flip = 1;
-
- /*
- * Set the needed options in the page header...
- */
-
- if (cupsRasterInterpretPPD(&header, ppd, num_options, options, raster_cb))
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("The page setup information was not valid."));
- fprintf(stderr, "DEBUG: %s\n", cupsRasterErrorString());
- return (1);
- }
-
- /*
- * Get the media type and resolution that have been chosen...
- */
-
- if ((choice = ppdFindMarkedChoice(ppd, "MediaType")) != NULL)
- media_type = choice->choice;
- else
- media_type = "";
-
- if ((choice = ppdFindMarkedChoice(ppd, "Resolution")) != NULL)
- resolution = choice->choice;
- else
- resolution = "";
-
- /*
- * Choose the appropriate colorspace...
- */
-
- switch (header.cupsColorSpace)
- {
- case CUPS_CSPACE_W :
- case CUPS_CSPACE_SW :
- if (header.cupsBitsPerColor >= 8)
- {
- primary = CUPS_IMAGE_WHITE;
- secondary = CUPS_IMAGE_WHITE;
- }
- else
- {
- primary = CUPS_IMAGE_BLACK;
- secondary = CUPS_IMAGE_BLACK;
- }
- break;
-
- default :
- case CUPS_CSPACE_RGB :
- case CUPS_CSPACE_RGBA :
- case CUPS_CSPACE_RGBW :
- case CUPS_CSPACE_SRGB :
- case CUPS_CSPACE_ADOBERGB :
- if (header.cupsBitsPerColor >= 8)
- {
- primary = CUPS_IMAGE_RGB;
- secondary = CUPS_IMAGE_RGB;
- }
- else
- {
- primary = CUPS_IMAGE_CMY;
- secondary = CUPS_IMAGE_CMY;
- }
- break;
-
- case CUPS_CSPACE_K :
- case CUPS_CSPACE_WHITE :
- case CUPS_CSPACE_GOLD :
- case CUPS_CSPACE_SILVER :
- primary = CUPS_IMAGE_BLACK;
- secondary = CUPS_IMAGE_BLACK;
- break;
-
- case CUPS_CSPACE_CMYK :
- case CUPS_CSPACE_YMCK :
- case CUPS_CSPACE_KCMY :
- case CUPS_CSPACE_KCMYcm :
- case CUPS_CSPACE_GMCK :
- case CUPS_CSPACE_GMCS :
- if (header.cupsBitsPerColor == 1)
- {
- primary = CUPS_IMAGE_CMY;
- secondary = CUPS_IMAGE_CMY;
- }
- else
- {
- primary = CUPS_IMAGE_CMYK;
- secondary = CUPS_IMAGE_CMYK;
- }
- break;
-
- case CUPS_CSPACE_CMY :
- case CUPS_CSPACE_YMC :
- primary = CUPS_IMAGE_CMY;
- secondary = CUPS_IMAGE_CMY;
- break;
-
- case CUPS_CSPACE_CIEXYZ :
- case CUPS_CSPACE_CIELab :
- case CUPS_CSPACE_ICC1 :
- case CUPS_CSPACE_ICC2 :
- case CUPS_CSPACE_ICC3 :
- case CUPS_CSPACE_ICC4 :
- case CUPS_CSPACE_ICC5 :
- case CUPS_CSPACE_ICC6 :
- case CUPS_CSPACE_ICC7 :
- case CUPS_CSPACE_ICC8 :
- case CUPS_CSPACE_ICC9 :
- case CUPS_CSPACE_ICCA :
- case CUPS_CSPACE_ICCB :
- case CUPS_CSPACE_ICCC :
- case CUPS_CSPACE_ICCD :
- case CUPS_CSPACE_ICCE :
- case CUPS_CSPACE_ICCF :
- case CUPS_CSPACE_DEVICE1 :
- case CUPS_CSPACE_DEVICE2 :
- case CUPS_CSPACE_DEVICE3 :
- case CUPS_CSPACE_DEVICE4 :
- case CUPS_CSPACE_DEVICE5 :
- case CUPS_CSPACE_DEVICE6 :
- case CUPS_CSPACE_DEVICE7 :
- case CUPS_CSPACE_DEVICE8 :
- case CUPS_CSPACE_DEVICE9 :
- case CUPS_CSPACE_DEVICEA :
- case CUPS_CSPACE_DEVICEB :
- case CUPS_CSPACE_DEVICEC :
- case CUPS_CSPACE_DEVICED :
- case CUPS_CSPACE_DEVICEE :
- case CUPS_CSPACE_DEVICEF :
- fprintf(stderr, "DEBUG: Colorspace %d not supported.\n",
- header.cupsColorSpace);
- exit(1);
- break;
- }
-
- /*
- * Find a color profile matching the current options...
- */
-
- if ((val = cupsGetOption("profile", num_options, options)) != NULL)
- {
- profile = &userprofile;
- sscanf(val, "%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f",
- &(userprofile.density), &(userprofile.gamma),
- userprofile.matrix[0] + 0, userprofile.matrix[0] + 1,
- userprofile.matrix[0] + 2,
- userprofile.matrix[1] + 0, userprofile.matrix[1] + 1,
- userprofile.matrix[1] + 2,
- userprofile.matrix[2] + 0, userprofile.matrix[2] + 1,
- userprofile.matrix[2] + 2);
-
- userprofile.density *= 0.001f;
- userprofile.gamma *= 0.001f;
- userprofile.matrix[0][0] *= 0.001f;
- userprofile.matrix[0][1] *= 0.001f;
- userprofile.matrix[0][2] *= 0.001f;
- userprofile.matrix[1][0] *= 0.001f;
- userprofile.matrix[1][1] *= 0.001f;
- userprofile.matrix[1][2] *= 0.001f;
- userprofile.matrix[2][0] *= 0.001f;
- userprofile.matrix[2][1] *= 0.001f;
- userprofile.matrix[2][2] *= 0.001f;
- }
- else if (ppd != NULL)
- {
- fprintf(stderr, "DEBUG: Searching for profile \"%s/%s\"...\n",
- resolution, media_type);
-
- for (i = 0, profile = ppd->profiles; i < ppd->num_profiles; i ++, profile ++)
- {
- fprintf(stderr, "DEBUG: \"%s/%s\" = ", profile->resolution,
- profile->media_type);
-
- if ((strcmp(profile->resolution, resolution) == 0 ||
- profile->resolution[0] == '-') &&
- (strcmp(profile->media_type, media_type) == 0 ||
- profile->media_type[0] == '-'))
- {
- fputs("MATCH\n", stderr);
- break;
- }
- else
- fputs("no.\n", stderr);
- }
-
- /*
- * If we found a color profile, use it!
- */
-
- if (i >= ppd->num_profiles)
- profile = NULL;
- }
- else
- profile = NULL;
-
- if (profile)
- cupsImageSetProfile(profile->density, profile->gamma, profile->matrix);
-
- cupsImageSetRasterColorSpace(header.cupsColorSpace);
-
- /*
- * Create a gamma/brightness LUT...
- */
-
- make_lut(lut, primary, g, b);
-
- /*
- * Open the input image to print...
- */
-
- _cupsLangPrintFilter(stderr, "INFO", _("Loading print file."));
-
- if (header.cupsColorSpace == CUPS_CSPACE_CIEXYZ ||
- header.cupsColorSpace == CUPS_CSPACE_CIELab ||
- header.cupsColorSpace >= CUPS_CSPACE_ICC1)
- img = cupsImageOpen(filename, primary, secondary, sat, hue, NULL);
- else
- img = cupsImageOpen(filename, primary, secondary, sat, hue, lut);
-
- if (argc == 6)
- unlink(filename);
-
- if (img == NULL)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("The print file could not be opened."));
- ppdClose(ppd);
- return (1);
- }
-
- /*
- * Scale as necessary...
- */
-
- if (zoom == 0.0 && xppi == 0)
- {
- xppi = img->xppi;
- yppi = img->yppi;
- }
-
- if (yppi == 0)
- yppi = xppi;
-
- fprintf(stderr, "DEBUG: Before scaling: xppi=%d, yppi=%d, zoom=%.2f\n",
- xppi, yppi, zoom);
-
- if (xppi > 0)
- {
- /*
- * Scale the image as neccesary to match the desired pixels-per-inch.
- */
-
- if (Orientation & 1)
- {
- xprint = (PageTop - PageBottom) / 72.0;
- yprint = (PageRight - PageLeft) / 72.0;
- }
- else
- {
- xprint = (PageRight - PageLeft) / 72.0;
- yprint = (PageTop - PageBottom) / 72.0;
- }
-
- fprintf(stderr, "DEBUG: Before scaling: xprint=%.1f, yprint=%.1f\n",
- xprint, yprint);
-
- xinches = (float)img->xsize / (float)xppi;
- yinches = (float)img->ysize / (float)yppi;
-
- fprintf(stderr, "DEBUG: Image size is %.1f x %.1f inches...\n",
- xinches, yinches);
-
- if ((val = cupsGetOption("natural-scaling", num_options, options)) != NULL)
- {
- xinches = xinches * atoi(val) / 100;
- yinches = yinches * atoi(val) / 100;
- }
-
- if (cupsGetOption("orientation-requested", num_options, options) == NULL &&
- cupsGetOption("landscape", num_options, options) == NULL)
- {
- /*
- * Rotate the image if it will fit landscape but not portrait...
- */
-
- fputs("DEBUG: Auto orientation...\n", stderr);
-
- if ((xinches > xprint || yinches > yprint) &&
- xinches <= yprint && yinches <= xprint)
- {
- /*
- * Rotate the image as needed...
- */
-
- fputs("DEBUG: Using landscape orientation...\n", stderr);
-
- Orientation = (Orientation + 1) & 3;
- xsize = yprint;
- yprint = xprint;
- xprint = xsize;
- }
- }
- }
- else
- {
- /*
- * Scale percentage of page size...
- */
-
- xprint = (PageRight - PageLeft) / 72.0;
- yprint = (PageTop - PageBottom) / 72.0;
- aspect = (float)img->yppi / (float)img->xppi;
-
- fprintf(stderr, "DEBUG: Before scaling: xprint=%.1f, yprint=%.1f\n",
- xprint, yprint);
-
- fprintf(stderr, "DEBUG: img->xppi = %d, img->yppi = %d, aspect = %f\n",
- img->xppi, img->yppi, aspect);
-
- xsize = xprint * zoom;
- ysize = xsize * img->ysize / img->xsize / aspect;
-
- if (ysize > (yprint * zoom))
- {
- ysize = yprint * zoom;
- xsize = ysize * img->xsize * aspect / img->ysize;
- }
-
- xsize2 = yprint * zoom;
- ysize2 = xsize2 * img->ysize / img->xsize / aspect;
-
- if (ysize2 > (xprint * zoom))
- {
- ysize2 = xprint * zoom;
- xsize2 = ysize2 * img->xsize * aspect / img->ysize;
- }
-
- fprintf(stderr, "DEBUG: Portrait size is %.2f x %.2f inches\n", xsize, ysize);
- fprintf(stderr, "DEBUG: Landscape size is %.2f x %.2f inches\n", xsize2, ysize2);
-
- if (cupsGetOption("orientation-requested", num_options, options) == NULL &&
- cupsGetOption("landscape", num_options, options) == NULL)
- {
- /*
- * Choose the rotation with the largest area, but prefer
- * portrait if they are equal...
- */
-
- fputs("DEBUG: Auto orientation...\n", stderr);
-
- if ((xsize * ysize) < (xsize2 * xsize2))
- {
- /*
- * Do landscape orientation...
- */
-
- fputs("DEBUG: Using landscape orientation...\n", stderr);
-
- Orientation = 1;
- xinches = xsize2;
- yinches = ysize2;
- xprint = (PageTop - PageBottom) / 72.0;
- yprint = (PageRight - PageLeft) / 72.0;
- }
- else
- {
- /*
- * Do portrait orientation...
- */
-
- fputs("DEBUG: Using portrait orientation...\n", stderr);
-
- Orientation = 0;
- xinches = xsize;
- yinches = ysize;
- }
- }
- else if (Orientation & 1)
- {
- fputs("DEBUG: Using landscape orientation...\n", stderr);
-
- xinches = xsize2;
- yinches = ysize2;
- xprint = (PageTop - PageBottom) / 72.0;
- yprint = (PageRight - PageLeft) / 72.0;
- }
- else
- {
- fputs("DEBUG: Using portrait orientation...\n", stderr);
-
- xinches = xsize;
- yinches = ysize;
- xprint = (PageRight - PageLeft) / 72.0;
- yprint = (PageTop - PageBottom) / 72.0;
- }
- }
-
- /*
- * Compute the number of pages to print and the size of the image on each
- * page...
- */
-
- xpages = ceil(xinches / xprint);
- ypages = ceil(yinches / yprint);
-
- xprint = xinches / xpages;
- yprint = yinches / ypages;
-
- fprintf(stderr, "DEBUG: xpages = %dx%.2fin, ypages = %dx%.2fin\n",
- xpages, xprint, ypages, yprint);
-
- /*
- * Compute the bitmap size...
- */
-
- if ((choice = ppdFindMarkedChoice(ppd, "PageSize")) != NULL &&
- _cups_strcasecmp(choice->choice, "Custom") == 0)
- {
- float width, /* New width in points */
- length; /* New length in points */
-
-
- /*
- * Use the correct width and length for the current orientation...
- */
-
- if (Orientation & 1)
- {
- width = yprint * 72.0;
- length = xprint * 72.0;
- }
- else
- {
- width = xprint * 72.0;
- length = yprint * 72.0;
- }
-
- /*
- * Add margins to page size...
- */
-
- width += ppd->custom_margins[0] + ppd->custom_margins[2];
- length += ppd->custom_margins[1] + ppd->custom_margins[3];
-
- /*
- * Enforce minimums...
- */
-
- if (width < ppd->custom_min[0])
- width = ppd->custom_min[0];
-
- if (length < ppd->custom_min[1])
- length = ppd->custom_min[1];
-
- fprintf(stderr, "DEBUG: Updated custom page size to %.2f x %.2f inches...\n",
- width / 72.0, length / 72.0);
-
- /*
- * Set the new custom size...
- */
-
- strcpy(header.cupsPageSizeName, "Custom");
-
- header.cupsPageSize[0] = width + 0.5;
- header.cupsPageSize[1] = length + 0.5;
- header.PageSize[0] = width + 0.5;
- header.PageSize[1] = length + 0.5;
-
- /*
- * Update page variables...
- */
-
- PageWidth = width;
- PageLength = length;
- PageLeft = ppd->custom_margins[0];
- PageRight = width - ppd->custom_margins[2];
- PageBottom = ppd->custom_margins[1];
- PageTop = length - ppd->custom_margins[3];
-
- /*
- * Remove margins from page size...
- */
-
- width -= ppd->custom_margins[0] + ppd->custom_margins[2];
- length -= ppd->custom_margins[1] + ppd->custom_margins[3];
-
- /*
- * Set the bitmap size...
- */
-
- header.cupsWidth = width * header.HWResolution[0] / 72.0;
- header.cupsHeight = length * header.HWResolution[1] / 72.0;
-
- header.cupsBytesPerLine = (header.cupsBitsPerPixel *
- header.cupsWidth + 7) / 8;
-
- if (header.cupsColorOrder == CUPS_ORDER_BANDED)
- header.cupsBytesPerLine *= header.cupsNumColors;
- }
-
- header.Margins[0] = PageLeft;
- header.Margins[1] = PageBottom;
-
- fprintf(stderr, "DEBUG: PageSize = [%d %d]\n", header.PageSize[0],
- header.PageSize[1]);
-
- switch (Orientation)
- {
- default :
- switch (XPosition)
- {
- case -1 :
- header.cupsImagingBBox[0] = PageLeft;
- header.cupsImagingBBox[2] = PageLeft + xprint * 72;
- break;
- default :
- header.cupsImagingBBox[0] = (PageRight + PageLeft - xprint * 72) / 2;
- header.cupsImagingBBox[2] = (PageRight + PageLeft + xprint * 72) / 2;
- break;
- case 1 :
- header.cupsImagingBBox[0] = PageRight - xprint * 72;
- header.cupsImagingBBox[2] = PageRight;
- break;
- }
-
- switch (YPosition)
- {
- case -1 :
- header.cupsImagingBBox[1] = PageBottom;
- header.cupsImagingBBox[3] = PageBottom + yprint * 72;
- break;
- default :
- header.cupsImagingBBox[1] = (PageTop + PageBottom - yprint * 72) / 2;
- header.cupsImagingBBox[3] = (PageTop + PageBottom + yprint * 72) / 2;
- break;
- case 1 :
- header.cupsImagingBBox[1] = PageTop - yprint * 72;
- header.cupsImagingBBox[3] = PageTop;
- break;
- }
- break;
-
- case 1 :
- switch (XPosition)
- {
- case -1 :
- header.cupsImagingBBox[0] = PageBottom;
- header.cupsImagingBBox[2] = PageBottom + yprint * 72;
- break;
- default :
- header.cupsImagingBBox[0] = (PageTop + PageBottom - yprint * 72) / 2;
- header.cupsImagingBBox[2] = (PageTop + PageBottom + yprint * 72) / 2;
- break;
- case 1 :
- header.cupsImagingBBox[0] = PageTop - yprint * 72;
- header.cupsImagingBBox[2] = PageTop;
- break;
- }
-
- switch (YPosition)
- {
- case -1 :
- header.cupsImagingBBox[1] = PageLeft;
- header.cupsImagingBBox[3] = PageLeft + xprint * 72;
- break;
- default :
- header.cupsImagingBBox[1] = (PageRight + PageLeft - xprint * 72) / 2;
- header.cupsImagingBBox[3] = (PageRight + PageLeft + xprint * 72) / 2;
- break;
- case 1 :
- header.cupsImagingBBox[1] = PageRight - xprint * 72;
- header.cupsImagingBBox[3] = PageRight;
- break;
- }
- break;
-
- case 2 :
- switch (XPosition)
- {
- case 1 :
- header.cupsImagingBBox[0] = PageLeft;
- header.cupsImagingBBox[2] = PageLeft + xprint * 72;
- break;
- default :
- header.cupsImagingBBox[0] = (PageRight + PageLeft - xprint * 72) / 2;
- header.cupsImagingBBox[2] = (PageRight + PageLeft + xprint * 72) / 2;
- break;
- case -1 :
- header.cupsImagingBBox[0] = PageRight - xprint * 72;
- header.cupsImagingBBox[2] = PageRight;
- break;
- }
-
- switch (YPosition)
- {
- case 1 :
- header.cupsImagingBBox[1] = PageBottom;
- header.cupsImagingBBox[3] = PageBottom + yprint * 72;
- break;
- default :
- header.cupsImagingBBox[1] = (PageTop + PageBottom - yprint * 72) / 2;
- header.cupsImagingBBox[3] = (PageTop + PageBottom + yprint * 72) / 2;
- break;
- case -1 :
- header.cupsImagingBBox[1] = PageTop - yprint * 72;
- header.cupsImagingBBox[3] = PageTop;
- break;
- }
- break;
-
- case 3 :
- switch (XPosition)
- {
- case 1 :
- header.cupsImagingBBox[0] = PageBottom;
- header.cupsImagingBBox[2] = PageBottom + yprint * 72;
- break;
- default :
- header.cupsImagingBBox[0] = (PageTop + PageBottom - yprint * 72) / 2;
- header.cupsImagingBBox[2] = (PageTop + PageBottom + yprint * 72) / 2;
- break;
- case -1 :
- header.cupsImagingBBox[0] = PageTop - yprint * 72;
- header.cupsImagingBBox[2] = PageTop;
- break;
- }
-
- switch (YPosition)
- {
- case 1 :
- header.cupsImagingBBox[1] = PageLeft;
- header.cupsImagingBBox[3] = PageLeft + xprint * 72;
- break;
- default :
- header.cupsImagingBBox[1] = (PageRight + PageLeft - xprint * 72) / 2;
- header.cupsImagingBBox[3] = (PageRight + PageLeft + xprint * 72) / 2;
- break;
- case -1 :
- header.cupsImagingBBox[1] = PageRight - xprint * 72;
- header.cupsImagingBBox[3] = PageRight;
- break;
- }
- break;
- }
-
- header.ImagingBoundingBox[0] = header.cupsImagingBBox[0];
- header.ImagingBoundingBox[1] = header.cupsImagingBBox[1];
- header.ImagingBoundingBox[2] = header.cupsImagingBBox[2];
- header.ImagingBoundingBox[3] = header.cupsImagingBBox[3];
-
- if (header.cupsColorOrder == CUPS_ORDER_PLANAR)
- num_planes = header.cupsNumColors;
- else
- num_planes = 1;
-
- if (header.cupsBitsPerColor >= 8)
- zoom_type = CUPS_IZOOM_NORMAL;
- else
- zoom_type = CUPS_IZOOM_FAST;
-
- /*
- * See if we need to collate, and if so how we need to do it...
- */
-
- if (xpages == 1 && ypages == 1)
- Collate = 0;
-
- slowcollate = Collate && ppdFindOption(ppd, "Collate") == NULL;
- if (ppd != NULL)
- slowcopies = ppd->manual_copies;
- else
- slowcopies = 1;
-
- if (Copies > 1 && !slowcollate && !slowcopies)
- {
- header.Collate = (cups_bool_t)Collate;
- header.NumCopies = Copies;
-
- Copies = 1;
- }
- else
- header.NumCopies = 1;
-
- /*
- * Create the dithering lookup tables...
- */
-
- OnPixels[0] = 0x00;
- OnPixels[255] = 0xff;
- OffPixels[0] = 0x00;
- OffPixels[255] = 0xff;
-
- switch (header.cupsBitsPerColor)
- {
- case 2 :
- for (i = 1; i < 255; i ++)
- {
- OnPixels[i] = 0x55 * (i / 85 + 1);
- OffPixels[i] = 0x55 * (i / 64);
- }
- break;
- case 4 :
- for (i = 1; i < 255; i ++)
- {
- OnPixels[i] = 17 * (i / 17 + 1);
- OffPixels[i] = 17 * (i / 16);
- }
- break;
- }
-
- /*
- * Output the pages...
- */
-
- fprintf(stderr, "DEBUG: cupsWidth = %d\n", header.cupsWidth);
- fprintf(stderr, "DEBUG: cupsHeight = %d\n", header.cupsHeight);
- fprintf(stderr, "DEBUG: cupsBitsPerColor = %d\n", header.cupsBitsPerColor);
- fprintf(stderr, "DEBUG: cupsBitsPerPixel = %d\n", header.cupsBitsPerPixel);
- fprintf(stderr, "DEBUG: cupsBytesPerLine = %d\n", header.cupsBytesPerLine);
- fprintf(stderr, "DEBUG: cupsColorOrder = %d\n", header.cupsColorOrder);
- fprintf(stderr, "DEBUG: cupsColorSpace = %d\n", header.cupsColorSpace);
- fprintf(stderr, "DEBUG: img->colorspace = %d\n", img->colorspace);
-
- row = malloc(2 * header.cupsBytesPerLine);
- ras = cupsRasterOpen(1, CUPS_RASTER_WRITE);
-
- for (i = 0, page = 1; i < Copies; i ++)
- for (xpage = 0; xpage < xpages; xpage ++)
- for (ypage = 0; ypage < ypages; ypage ++, page ++)
- {
- _cupsLangPrintFilter(stderr, "INFO", _("Formatting page %d."), page);
-
- if (Orientation & 1)
- {
- xc0 = img->xsize * ypage / ypages;
- xc1 = img->xsize * (ypage + 1) / ypages - 1;
- yc0 = img->ysize * xpage / xpages;
- yc1 = img->ysize * (xpage + 1) / xpages - 1;
-
- xtemp = header.HWResolution[0] * yprint;
- ytemp = header.HWResolution[1] * xprint;
- }
- else
- {
- xc0 = img->xsize * xpage / xpages;
- xc1 = img->xsize * (xpage + 1) / xpages - 1;
- yc0 = img->ysize * ypage / ypages;
- yc1 = img->ysize * (ypage + 1) / ypages - 1;
-
- xtemp = header.HWResolution[0] * xprint;
- ytemp = header.HWResolution[1] * yprint;
- }
-
- cupsRasterWriteHeader2(ras, &header);
-
- for (plane = 0; plane < num_planes; plane ++)
- {
- /*
- * Initialize the image "zoom" engine...
- */
-
- if (Flip)
- z = _cupsImageZoomNew(img, xc0, yc0, xc1, yc1, -xtemp, ytemp,
- Orientation & 1, zoom_type);
- else
- z = _cupsImageZoomNew(img, xc0, yc0, xc1, yc1, xtemp, ytemp,
- Orientation & 1, zoom_type);
-
- /*
- * Write leading blank space as needed...
- */
-
- if (header.cupsHeight > z->ysize && YPosition <= 0)
- {
- blank_line(&header, row);
-
- y = header.cupsHeight - z->ysize;
- if (YPosition == 0)
- y /= 2;
-
- fprintf(stderr, "DEBUG: Writing %d leading blank lines...\n", y);
-
- for (; y > 0; y --)
- {
- if (cupsRasterWritePixels(ras, row, header.cupsBytesPerLine) <
- header.cupsBytesPerLine)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Unable to send raster data to the "
- "driver."));
- cupsImageClose(img);
- exit(1);
- }
- }
- }
-
- /*
- * Then write image data...
- */
-
- for (y = z->ysize, yerr0 = 0, yerr1 = z->ysize, iy = 0, last_iy = -2;
- y > 0;
- y --)
- {
- if (iy != last_iy)
- {
- if (zoom_type != CUPS_IZOOM_FAST && (iy - last_iy) > 1)
- _cupsImageZoomFill(z, iy);
-
- _cupsImageZoomFill(z, iy + z->yincr);
-
- last_iy = iy;
- }
-
- /*
- * Format this line of raster data for the printer...
- */
-
- blank_line(&header, row);
-
- r0 = z->rows[z->row];
- r1 = z->rows[1 - z->row];
-
- switch (header.cupsColorSpace)
- {
- case CUPS_CSPACE_W :
- format_W(&header, row, y, plane, z->xsize, z->ysize,
- yerr0, yerr1, r0, r1);
- break;
- default :
- case CUPS_CSPACE_RGB :
- format_RGB(&header, row, y, plane, z->xsize, z->ysize,
- yerr0, yerr1, r0, r1);
- break;
- case CUPS_CSPACE_RGBA :
- case CUPS_CSPACE_RGBW :
- format_RGBA(&header, row, y, plane, z->xsize, z->ysize,
- yerr0, yerr1, r0, r1);
- break;
- case CUPS_CSPACE_K :
- case CUPS_CSPACE_WHITE :
- case CUPS_CSPACE_GOLD :
- case CUPS_CSPACE_SILVER :
- format_K(&header, row, y, plane, z->xsize, z->ysize,
- yerr0, yerr1, r0, r1);
- break;
- case CUPS_CSPACE_CMY :
- format_CMY(&header, row, y, plane, z->xsize, z->ysize,
- yerr0, yerr1, r0, r1);
- break;
- case CUPS_CSPACE_YMC :
- format_YMC(&header, row, y, plane, z->xsize, z->ysize,
- yerr0, yerr1, r0, r1);
- break;
- case CUPS_CSPACE_CMYK :
- format_CMYK(&header, row, y, plane, z->xsize, z->ysize,
- yerr0, yerr1, r0, r1);
- break;
- case CUPS_CSPACE_YMCK :
- case CUPS_CSPACE_GMCK :
- case CUPS_CSPACE_GMCS :
- format_YMCK(&header, row, y, plane, z->xsize, z->ysize,
- yerr0, yerr1, r0, r1);
- break;
- case CUPS_CSPACE_KCMYcm :
- if (header.cupsBitsPerColor == 1)
- {
- format_KCMYcm(&header, row, y, plane, z->xsize, z->ysize,
- yerr0, yerr1, r0, r1);
- break;
- }
- case CUPS_CSPACE_KCMY :
- format_KCMY(&header, row, y, plane, z->xsize, z->ysize,
- yerr0, yerr1, r0, r1);
- break;
- }
-
- /*
- * Write the raster data to the driver...
- */
-
- if (cupsRasterWritePixels(ras, row, header.cupsBytesPerLine) <
- header.cupsBytesPerLine)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Unable to send raster data to the "
- "driver."));
- cupsImageClose(img);
- exit(1);
- }
-
- /*
- * Compute the next scanline in the image...
- */
-
- iy += z->ystep;
- yerr0 += z->ymod;
- yerr1 -= z->ymod;
- if (yerr1 <= 0)
- {
- yerr0 -= z->ysize;
- yerr1 += z->ysize;
- iy += z->yincr;
- }
- }
-
- /*
- * Write trailing blank space as needed...
- */
-
- if (header.cupsHeight > z->ysize && YPosition >= 0)
- {
- blank_line(&header, row);
-
- y = header.cupsHeight - z->ysize;
- if (YPosition == 0)
- y = y - y / 2;
-
- fprintf(stderr, "DEBUG: Writing %d trailing blank lines...\n", y);
-
- for (; y > 0; y --)
- {
- if (cupsRasterWritePixels(ras, row, header.cupsBytesPerLine) <
- header.cupsBytesPerLine)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Unable to send raster data to the "
- "driver."));
- cupsImageClose(img);
- exit(1);
- }
- }
- }
-
- /*
- * Free memory used for the "zoom" engine...
- */
-
- _cupsImageZoomDelete(z);
- }
- }
-
- /*
- * Close files...
- */
-
- free(row);
- cupsRasterClose(ras);
- cupsImageClose(img);
- ppdClose(ppd);
-
- return (0);
-}
-
-
-/*
- * 'blank_line()' - Clear a line buffer to the blank value...
- */
-
-static void
-blank_line(cups_page_header2_t *header, /* I - Page header */
- unsigned char *row) /* I - Row buffer */
-{
- int count; /* Remaining bytes */
-
-
- count = header->cupsBytesPerLine;
-
- switch (header->cupsColorSpace)
- {
- case CUPS_CSPACE_CIEXYZ :
- while (count > 2)
- {
- *row++ = 242;
- *row++ = 255;
- *row++ = 255;
- count -= 3;
- }
- break;
-
- case CUPS_CSPACE_CIELab :
- case CUPS_CSPACE_ICC1 :
- case CUPS_CSPACE_ICC2 :
- case CUPS_CSPACE_ICC3 :
- case CUPS_CSPACE_ICC4 :
- case CUPS_CSPACE_ICC5 :
- case CUPS_CSPACE_ICC6 :
- case CUPS_CSPACE_ICC7 :
- case CUPS_CSPACE_ICC8 :
- case CUPS_CSPACE_ICC9 :
- case CUPS_CSPACE_ICCA :
- case CUPS_CSPACE_ICCB :
- case CUPS_CSPACE_ICCC :
- case CUPS_CSPACE_ICCD :
- case CUPS_CSPACE_ICCE :
- case CUPS_CSPACE_ICCF :
- while (count > 2)
- {
- *row++ = 255;
- *row++ = 128;
- *row++ = 128;
- count -= 3;
- }
- break;
-
- case CUPS_CSPACE_K :
- case CUPS_CSPACE_CMY :
- case CUPS_CSPACE_CMYK :
- case CUPS_CSPACE_YMC :
- case CUPS_CSPACE_YMCK :
- case CUPS_CSPACE_KCMY :
- case CUPS_CSPACE_KCMYcm :
- case CUPS_CSPACE_GMCK :
- case CUPS_CSPACE_GMCS :
- case CUPS_CSPACE_WHITE :
- case CUPS_CSPACE_GOLD :
- case CUPS_CSPACE_SILVER :
- memset(row, 0, count);
- break;
-
- default :
- memset(row, 255, count);
- break;
- }
-}
-
-
-/*
- * 'format_CMY()' - Convert image data to CMY.
- */
-
-static void
-format_CMY(cups_page_header2_t *header, /* I - Page header */
- unsigned char *row, /* IO - Bitmap data for device */
- int y, /* I - Current row */
- int z, /* I - Current plane */
- int xsize, /* I - Width of image data */
- int ysize, /* I - Height of image data */
- int yerr0, /* I - Top Y error */
- int yerr1, /* I - Bottom Y error */
- cups_ib_t *r0, /* I - Primary image data */
- cups_ib_t *r1) /* I - Image data for interpolation */
-{
- cups_ib_t *ptr, /* Pointer into row */
- *cptr, /* Pointer into cyan */
- *mptr, /* Pointer into magenta */
- *yptr, /* Pointer into yellow */
- bitmask; /* Current mask for pixel */
- int bitoffset; /* Current offset in line */
- int bandwidth; /* Width of a color band */
- int x, /* Current X coordinate on page */
- *dither; /* Pointer into dither array */
-
-
- switch (XPosition)
- {
- case -1 :
- bitoffset = 0;
- break;
- default :
- bitoffset = header->cupsBitsPerPixel * ((header->cupsWidth - xsize) / 2);
- break;
- case 1 :
- bitoffset = header->cupsBitsPerPixel * (header->cupsWidth - xsize);
- break;
- }
-
- ptr = row + bitoffset / 8;
- bandwidth = header->cupsBytesPerLine / 3;
-
- switch (header->cupsColorOrder)
- {
- case CUPS_ORDER_CHUNKED :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 64 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize ; x > 0; x --)
- {
- if (*r0++ > dither[x & 15])
- *ptr ^= bitmask;
- bitmask >>= 1;
-
- if (*r0++ > dither[x & 15])
- *ptr ^= bitmask;
- bitmask >>= 1;
-
- if (*r0++ > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 2;
- else
- {
- bitmask = 64;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- dither = Floyd8x8[y & 7];
-
- for (x = xsize ; x > 0; x --, r0 += 3)
- {
- if ((r0[0] & 63) > dither[x & 7])
- *ptr ^= (0x30 & OnPixels[r0[0]]);
- else
- *ptr ^= (0x30 & OffPixels[r0[0]]);
-
- if ((r0[1] & 63) > dither[x & 7])
- *ptr ^= (0x0c & OnPixels[r0[1]]);
- else
- *ptr ^= (0x0c & OffPixels[r0[1]]);
-
- if ((r0[2] & 63) > dither[x & 7])
- *ptr++ ^= (0x03 & OnPixels[r0[2]]);
- else
- *ptr++ ^= (0x03 & OffPixels[r0[2]]);
- }
- break;
-
- case 4 :
- dither = Floyd4x4[y & 3];
-
- for (x = xsize ; x > 0; x --, r0 += 3)
- {
- if ((r0[0] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[0]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[0]]);
-
- if ((r0[1] & 15) > dither[x & 3])
- *ptr ^= (0xf0 & OnPixels[r0[1]]);
- else
- *ptr ^= (0xf0 & OffPixels[r0[1]]);
-
- if ((r0[2] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[2]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[2]]);
- }
- break;
-
- case 8 :
- for (x = xsize * 3; x > 0; x --, r0 ++, r1 ++)
- if (*r0 == *r1)
- *ptr++ = *r0;
- else
- *ptr++ = (*r0 * yerr0 + *r1 * yerr1) / ysize;
- break;
- }
- break;
-
- case CUPS_ORDER_BANDED :
- cptr = ptr;
- mptr = ptr + bandwidth;
- yptr = ptr + 2 * bandwidth;
-
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- if (*r0++ > dither[x & 15])
- *cptr ^= bitmask;
- if (*r0++ > dither[x & 15])
- *mptr ^= bitmask;
- if (*r0++ > dither[x & 15])
- *yptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- cptr ++;
- mptr ++;
- yptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 63) > dither[x & 7])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 15) > dither[x & 3])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- }
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 += 3, r1 += 3)
- {
- if (r0[0] == r1[0])
- *cptr++ = r0[0];
- else
- *cptr++ = (r0[0] * yerr0 + r1[0] * yerr1) / ysize;
-
- if (r0[1] == r1[1])
- *mptr++ = r0[1];
- else
- *mptr++ = (r0[1] * yerr0 + r1[1] * yerr1) / ysize;
-
- if (r0[2] == r1[2])
- *yptr++ = r0[2];
- else
- *yptr++ = (r0[2] * yerr0 + r1[2] * yerr1) / ysize;
- }
- break;
- }
- break;
-
- case CUPS_ORDER_PLANAR :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- switch (z)
- {
- case 0 :
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if (r0[0] > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 1 :
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if (r0[1] > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if (r0[2] > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
- r0 += z;
-
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if ((*r0 & 63) > dither[x & 7])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- ptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
- r0 += z;
-
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if ((*r0 & 15) > dither[x & 3])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- ptr ++;
- }
- }
- break;
-
- case 8 :
- r0 += z;
- r1 += z;
-
- for (x = xsize; x > 0; x --, r0 += 3, r1 += 3)
- {
- if (*r0 == *r1)
- *ptr++ = *r0;
- else
- *ptr++ = (*r0 * yerr0 + *r1 * yerr1) / ysize;
- }
- break;
- }
- break;
- }
-}
-
-
-/*
- * 'format_CMYK()' - Convert image data to CMYK.
- */
-
-static void
-format_CMYK(cups_page_header2_t *header,/* I - Page header */
- unsigned char *row, /* IO - Bitmap data for device */
- int y, /* I - Current row */
- int z, /* I - Current plane */
- int xsize, /* I - Width of image data */
- int ysize, /* I - Height of image data */
- int yerr0, /* I - Top Y error */
- int yerr1, /* I - Bottom Y error */
- cups_ib_t *r0, /* I - Primary image data */
- cups_ib_t *r1) /* I - Image data for interpolation */
-{
- cups_ib_t *ptr, /* Pointer into row */
- *cptr, /* Pointer into cyan */
- *mptr, /* Pointer into magenta */
- *yptr, /* Pointer into yellow */
- *kptr, /* Pointer into black */
- bitmask; /* Current mask for pixel */
- int bitoffset; /* Current offset in line */
- int bandwidth; /* Width of a color band */
- int x, /* Current X coordinate on page */
- *dither; /* Pointer into dither array */
- int pc, pm, py; /* CMY pixels */
-
-
- switch (XPosition)
- {
- case -1 :
- bitoffset = 0;
- break;
- default :
- bitoffset = header->cupsBitsPerPixel * ((header->cupsWidth - xsize) / 2);
- break;
- case 1 :
- bitoffset = header->cupsBitsPerPixel * (header->cupsWidth - xsize);
- break;
- }
-
- ptr = row + bitoffset / 8;
- bandwidth = header->cupsBytesPerLine / 4;
-
- switch (header->cupsColorOrder)
- {
- case CUPS_ORDER_CHUNKED :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 128 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize ; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
-
- if (pc && pm && py)
- {
- bitmask >>= 3;
- *ptr ^= bitmask;
- }
- else
- {
- if (pc)
- *ptr ^= bitmask;
- bitmask >>= 1;
-
- if (pm)
- *ptr ^= bitmask;
- bitmask >>= 1;
-
- if (py)
- *ptr ^= bitmask;
- bitmask >>= 1;
- }
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 128;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- dither = Floyd8x8[y & 7];
-
- for (x = xsize ; x > 0; x --, r0 += 4)
- {
- if ((r0[0] & 63) > dither[x & 7])
- *ptr ^= (0xc0 & OnPixels[r0[0]]);
- else
- *ptr ^= (0xc0 & OffPixels[r0[0]]);
-
- if ((r0[1] & 63) > dither[x & 7])
- *ptr ^= (0x30 & OnPixels[r0[1]]);
- else
- *ptr ^= (0x30 & OffPixels[r0[1]]);
-
- if ((r0[2] & 63) > dither[x & 7])
- *ptr ^= (0x0c & OnPixels[r0[2]]);
- else
- *ptr ^= (0x0c & OffPixels[r0[2]]);
-
- if ((r0[3] & 63) > dither[x & 7])
- *ptr++ ^= (0x03 & OnPixels[r0[3]]);
- else
- *ptr++ ^= (0x03 & OffPixels[r0[3]]);
- }
- break;
-
- case 4 :
- dither = Floyd4x4[y & 3];
-
- for (x = xsize ; x > 0; x --, r0 += 4)
- {
- if ((r0[0] & 15) > dither[x & 3])
- *ptr ^= (0xf0 & OnPixels[r0[0]]);
- else
- *ptr ^= (0xf0 & OffPixels[r0[0]]);
-
- if ((r0[1] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[1]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[1]]);
-
- if ((r0[2] & 15) > dither[x & 3])
- *ptr ^= (0xf0 & OnPixels[r0[2]]);
- else
- *ptr ^= (0xf0 & OffPixels[r0[2]]);
-
- if ((r0[3] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[3]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[3]]);
- }
- break;
-
- case 8 :
- for (x = xsize * 4; x > 0; x --, r0 ++, r1 ++)
- if (*r0 == *r1)
- *ptr++ = *r0;
- else
- *ptr++ = (*r0 * yerr0 + *r1 * yerr1) / ysize;
- break;
- }
- break;
-
- case CUPS_ORDER_BANDED :
- cptr = ptr;
- mptr = ptr + bandwidth;
- yptr = ptr + 2 * bandwidth;
- kptr = ptr + 3 * bandwidth;
-
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
-
- if (pc && pm && py)
- *kptr ^= bitmask;
- else
- {
- if (pc)
- *cptr ^= bitmask;
- if (pm)
- *mptr ^= bitmask;
- if (py)
- *yptr ^= bitmask;
- }
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- cptr ++;
- mptr ++;
- yptr ++;
- kptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 63) > dither[x & 7])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *kptr ^= (bitmask & OnPixels[*r0++]);
- else
- *kptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- kptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 15) > dither[x & 3])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *kptr ^= (bitmask & OnPixels[*r0++]);
- else
- *kptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- kptr ++;
- }
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 += 4, r1 += 4)
- {
- if (r0[0] == r1[0])
- *cptr++ = r0[0];
- else
- *cptr++ = (r0[0] * yerr0 + r1[0] * yerr1) / ysize;
-
- if (r0[1] == r1[1])
- *mptr++ = r0[1];
- else
- *mptr++ = (r0[1] * yerr0 + r1[1] * yerr1) / ysize;
-
- if (r0[2] == r1[2])
- *yptr++ = r0[2];
- else
- *yptr++ = (r0[2] * yerr0 + r1[2] * yerr1) / ysize;
-
- if (r0[3] == r1[3])
- *kptr++ = r0[3];
- else
- *kptr++ = (r0[3] * yerr0 + r1[3] * yerr1) / ysize;
- }
- break;
- }
- break;
-
- case CUPS_ORDER_PLANAR :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
-
- if ((pc && pm && py && z == 3) ||
- (pc && z == 0) || (pm && z == 1) || (py && z == 2))
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
- r0 += z;
-
- for (x = xsize; x > 0; x --, r0 += 4)
- {
- if ((*r0 & 63) > dither[x & 7])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- ptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
- r0 += z;
-
- for (x = xsize; x > 0; x --, r0 += 4)
- {
- if ((*r0 & 15) > dither[x & 3])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- ptr ++;
- }
- }
- break;
-
- case 8 :
- r0 += z;
- r1 += z;
-
- for (x = xsize; x > 0; x --, r0 += 4, r1 += 4)
- {
- if (*r0 == *r1)
- *ptr++ = *r0;
- else
- *ptr++ = (*r0 * yerr0 + *r1 * yerr1) / ysize;
- }
- break;
- }
- break;
- }
-}
-
-
-/*
- * 'format_K()' - Convert image data to black.
- */
-
-static void
-format_K(cups_page_header2_t *header, /* I - Page header */
- unsigned char *row, /* IO - Bitmap data for device */
- int y, /* I - Current row */
- int z, /* I - Current plane */
- int xsize, /* I - Width of image data */
- int ysize, /* I - Height of image data */
- int yerr0, /* I - Top Y error */
- int yerr1, /* I - Bottom Y error */
- cups_ib_t *r0, /* I - Primary image data */
- cups_ib_t *r1) /* I - Image data for interpolation */
-{
- cups_ib_t *ptr, /* Pointer into row */
- bitmask; /* Current mask for pixel */
- int bitoffset; /* Current offset in line */
- int x, /* Current X coordinate on page */
- *dither; /* Pointer into dither array */
-
-
- (void)z;
-
- switch (XPosition)
- {
- case -1 :
- bitoffset = 0;
- break;
- default :
- bitoffset = header->cupsBitsPerPixel * ((header->cupsWidth - xsize) / 2);
- break;
- case 1 :
- bitoffset = header->cupsBitsPerPixel * (header->cupsWidth - xsize);
- break;
- }
-
- ptr = row + bitoffset / 8;
-
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- if (*r0++ > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 63) > dither[x & 7])
- *ptr ^= (bitmask & OnPixels[*r0++]);
- else
- *ptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- ptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 15) > dither[x & 3])
- *ptr ^= (bitmask & OnPixels[*r0++]);
- else
- *ptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- ptr ++;
- }
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 ++, r1 ++)
- {
- if (*r0 == *r1)
- *ptr++ = *r0;
- else
- *ptr++ = (*r0 * yerr0 + *r1 * yerr1) / ysize;
- }
- break;
- }
-}
-
-
-/*
- * 'format_KCMY()' - Convert image data to KCMY.
- */
-
-static void
-format_KCMY(cups_page_header2_t *header,/* I - Page header */
- unsigned char *row, /* IO - Bitmap data for device */
- int y, /* I - Current row */
- int z, /* I - Current plane */
- int xsize, /* I - Width of image data */
- int ysize, /* I - Height of image data */
- int yerr0, /* I - Top Y error */
- int yerr1, /* I - Bottom Y error */
- cups_ib_t *r0, /* I - Primary image data */
- cups_ib_t *r1) /* I - Image data for interpolation */
-{
- cups_ib_t *ptr, /* Pointer into row */
- *cptr, /* Pointer into cyan */
- *mptr, /* Pointer into magenta */
- *yptr, /* Pointer into yellow */
- *kptr, /* Pointer into black */
- bitmask; /* Current mask for pixel */
- int bitoffset; /* Current offset in line */
- int bandwidth; /* Width of a color band */
- int x, /* Current X coordinate on page */
- *dither; /* Pointer into dither array */
- int pc, pm, py; /* CMY pixels */
-
-
- switch (XPosition)
- {
- case -1 :
- bitoffset = 0;
- break;
- default :
- bitoffset = header->cupsBitsPerPixel * ((header->cupsWidth - xsize) / 2);
- break;
- case 1 :
- bitoffset = header->cupsBitsPerPixel * (header->cupsWidth - xsize);
- break;
- }
-
- ptr = row + bitoffset / 8;
- bandwidth = header->cupsBytesPerLine / 4;
-
- switch (header->cupsColorOrder)
- {
- case CUPS_ORDER_CHUNKED :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 128 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize ; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
-
- if (pc && pm && py)
- {
- *ptr ^= bitmask;
- bitmask >>= 3;
- }
- else
- {
- bitmask >>= 1;
- if (pc)
- *ptr ^= bitmask;
-
- bitmask >>= 1;
- if (pm)
- *ptr ^= bitmask;
-
- bitmask >>= 1;
- if (py)
- *ptr ^= bitmask;
- }
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 128;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- dither = Floyd8x8[y & 7];
-
- for (x = xsize ; x > 0; x --, r0 += 4)
- {
- if ((r0[3] & 63) > dither[x & 7])
- *ptr ^= (0xc0 & OnPixels[r0[3]]);
- else
- *ptr ^= (0xc0 & OffPixels[r0[3]]);
-
- if ((r0[0] & 63) > dither[x & 7])
- *ptr ^= (0x30 & OnPixels[r0[0]]);
- else
- *ptr ^= (0x30 & OffPixels[r0[0]]);
-
- if ((r0[1] & 63) > dither[x & 7])
- *ptr ^= (0x0c & OnPixels[r0[1]]);
- else
- *ptr ^= (0x0c & OffPixels[r0[1]]);
-
- if ((r0[2] & 63) > dither[x & 7])
- *ptr++ ^= (0x03 & OnPixels[r0[2]]);
- else
- *ptr++ ^= (0x03 & OffPixels[r0[2]]);
- }
- break;
-
- case 4 :
- dither = Floyd4x4[y & 3];
-
- for (x = xsize ; x > 0; x --, r0 += 4)
- {
- if ((r0[3] & 15) > dither[x & 3])
- *ptr ^= (0xf0 & OnPixels[r0[3]]);
- else
- *ptr ^= (0xf0 & OffPixels[r0[3]]);
-
- if ((r0[0] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[0]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[0]]);
-
- if ((r0[1] & 15) > dither[x & 3])
- *ptr ^= (0xf0 & OnPixels[r0[1]]);
- else
- *ptr ^= (0xf0 & OffPixels[r0[1]]);
-
- if ((r0[2] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[2]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[2]]);
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 += 4, r1 += 4)
- {
- if (r0[3] == r1[3])
- *ptr++ = r0[3];
- else
- *ptr++ = (r0[3] * yerr0 + r1[3] * yerr1) / ysize;
-
- if (r0[0] == r1[0])
- *ptr++ = r0[0];
- else
- *ptr++ = (r0[0] * yerr0 + r1[0] * yerr1) / ysize;
-
- if (r0[1] == r1[1])
- *ptr++ = r0[1];
- else
- *ptr++ = (r0[1] * yerr0 + r1[1] * yerr1) / ysize;
-
- if (r0[2] == r1[2])
- *ptr++ = r0[2];
- else
- *ptr++ = (r0[2] * yerr0 + r1[2] * yerr1) / ysize;
- }
- break;
- }
- break;
-
- case CUPS_ORDER_BANDED :
- kptr = ptr;
- cptr = ptr + bandwidth;
- mptr = ptr + 2 * bandwidth;
- yptr = ptr + 3 * bandwidth;
-
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
-
- if (pc && pm && py)
- *kptr ^= bitmask;
- else
- {
- if (pc)
- *cptr ^= bitmask;
- if (pm)
- *mptr ^= bitmask;
- if (py)
- *yptr ^= bitmask;
- }
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- cptr ++;
- mptr ++;
- yptr ++;
- kptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 63) > dither[x & 7])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *kptr ^= (bitmask & OnPixels[*r0++]);
- else
- *kptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- kptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 15) > dither[x & 3])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *kptr ^= (bitmask & OnPixels[*r0++]);
- else
- *kptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- kptr ++;
- }
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 += 4, r1 += 4)
- {
- if (r0[0] == r1[0])
- *cptr++ = r0[0];
- else
- *cptr++ = (r0[0] * yerr0 + r1[0] * yerr1) / ysize;
-
- if (r0[1] == r1[1])
- *mptr++ = r0[1];
- else
- *mptr++ = (r0[1] * yerr0 + r1[1] * yerr1) / ysize;
-
- if (r0[2] == r1[2])
- *yptr++ = r0[2];
- else
- *yptr++ = (r0[2] * yerr0 + r1[2] * yerr1) / ysize;
-
- if (r0[3] == r1[3])
- *kptr++ = r0[3];
- else
- *kptr++ = (r0[3] * yerr0 + r1[3] * yerr1) / ysize;
- }
- break;
- }
- break;
-
- case CUPS_ORDER_PLANAR :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
-
- if ((pc && pm && py && z == 0) ||
- (pc && z == 1) || (pm && z == 2) || (py && z == 3))
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
- if (z == 0)
- r0 += 3;
- else
- r0 += z - 1;
-
- for (x = xsize; x > 0; x --, r0 += 4)
- {
- if ((*r0 & 63) > dither[x & 7])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- ptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
- if (z == 0)
- r0 += 3;
- else
- r0 += z - 1;
-
- for (x = xsize; x > 0; x --, r0 += 4)
- {
- if ((*r0 & 15) > dither[x & 3])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- ptr ++;
- }
- }
- break;
-
- case 8 :
- if (z == 0)
- {
- r0 += 3;
- r1 += 3;
- }
- else
- {
- r0 += z - 1;
- r1 += z - 1;
- }
-
- for (x = xsize; x > 0; x --, r0 += 4, r1 += 4)
- {
- if (*r0 == *r1)
- *ptr++ = *r0;
- else
- *ptr++ = (*r0 * yerr0 + *r1 * yerr1) / ysize;
- }
- break;
- }
- break;
- }
-}
-
-
-/*
- * 'format_KCMYcm()' - Convert image data to KCMYcm.
- */
-
-static void
-format_KCMYcm(
- cups_page_header2_t *header, /* I - Page header */
- unsigned char *row, /* IO - Bitmap data for device */
- int y, /* I - Current row */
- int z, /* I - Current plane */
- int xsize, /* I - Width of image data */
- int ysize, /* I - Height of image data */
- int yerr0, /* I - Top Y error */
- int yerr1, /* I - Bottom Y error */
- cups_ib_t *r0, /* I - Primary image data */
- cups_ib_t *r1) /* I - Image data for interpolation */
-{
- int pc, pm, py, pk; /* Cyan, magenta, yellow, and black values */
- cups_ib_t *ptr, /* Pointer into row */
- *cptr, /* Pointer into cyan */
- *mptr, /* Pointer into magenta */
- *yptr, /* Pointer into yellow */
- *kptr, /* Pointer into black */
- *lcptr, /* Pointer into light cyan */
- *lmptr, /* Pointer into light magenta */
- bitmask; /* Current mask for pixel */
- int bitoffset; /* Current offset in line */
- int bandwidth; /* Width of a color band */
- int x, /* Current X coordinate on page */
- *dither; /* Pointer into dither array */
-
-
- switch (XPosition)
- {
- case -1 :
- bitoffset = 0;
- break;
- default :
- bitoffset = header->cupsBitsPerPixel * ((header->cupsWidth - xsize) / 2);
- break;
- case 1 :
- bitoffset = header->cupsBitsPerPixel * (header->cupsWidth - xsize);
- break;
- }
-
- ptr = row + bitoffset / 8;
- bandwidth = header->cupsBytesPerLine / 6;
-
- switch (header->cupsColorOrder)
- {
- case CUPS_ORDER_CHUNKED :
- dither = Floyd16x16[y & 15];
-
- for (x = xsize ; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
- pk = pc && pm && py;
-
- if (pk)
- *ptr++ ^= 32; /* Black */
- else if (pc && pm)
- *ptr++ ^= 17; /* Blue (cyan + light magenta) */
- else if (pc && py)
- *ptr++ ^= 6; /* Green (light cyan + yellow) */
- else if (pm && py)
- *ptr++ ^= 12; /* Red (magenta + yellow) */
- else if (pc)
- *ptr++ ^= 16;
- else if (pm)
- *ptr++ ^= 8;
- else if (py)
- *ptr++ ^= 4;
- else
- ptr ++;
- }
- break;
-
- case CUPS_ORDER_BANDED :
- kptr = ptr;
- cptr = ptr + bandwidth;
- mptr = ptr + 2 * bandwidth;
- yptr = ptr + 3 * bandwidth;
- lcptr = ptr + 4 * bandwidth;
- lmptr = ptr + 5 * bandwidth;
-
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
- pk = pc && pm && py;
-
- if (pk)
- *kptr ^= bitmask; /* Black */
- else if (pc && pm)
- {
- *cptr ^= bitmask; /* Blue (cyan + light magenta) */
- *lmptr ^= bitmask;
- }
- else if (pc && py)
- {
- *lcptr ^= bitmask; /* Green (light cyan + yellow) */
- *yptr ^= bitmask;
- }
- else if (pm && py)
- {
- *mptr ^= bitmask; /* Red (magenta + yellow) */
- *yptr ^= bitmask;
- }
- else if (pc)
- *cptr ^= bitmask;
- else if (pm)
- *mptr ^= bitmask;
- else if (py)
- *yptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- cptr ++;
- mptr ++;
- yptr ++;
- kptr ++;
- lcptr ++;
- lmptr ++;
- }
- }
- break;
-
- case CUPS_ORDER_PLANAR :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
- pk = pc && pm && py;
-
- if (pk && z == 0)
- *ptr ^= bitmask;
- else if (pc && pm && (z == 1 || z == 5))
- *ptr ^= bitmask; /* Blue (cyan + light magenta) */
- else if (pc && py && (z == 3 || z == 4))
- *ptr ^= bitmask; /* Green (light cyan + yellow) */
- else if (pm && py && (z == 2 || z == 3))
- *ptr ^= bitmask; /* Red (magenta + yellow) */
- else if (pc && z == 1)
- *ptr ^= bitmask;
- else if (pm && z == 2)
- *ptr ^= bitmask;
- else if (py && z == 3)
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
- }
-}
-
-
-/*
- * 'format_RGBA()' - Convert image data to RGBA/RGBW.
- */
-
-static void
-format_RGBA(cups_page_header2_t *header,/* I - Page header */
- unsigned char *row, /* IO - Bitmap data for device */
- int y, /* I - Current row */
- int z, /* I - Current plane */
- int xsize, /* I - Width of image data */
- int ysize, /* I - Height of image data */
- int yerr0, /* I - Top Y error */
- int yerr1, /* I - Bottom Y error */
- cups_ib_t *r0, /* I - Primary image data */
- cups_ib_t *r1) /* I - Image data for interpolation */
-{
- cups_ib_t *ptr, /* Pointer into row */
- *cptr, /* Pointer into cyan */
- *mptr, /* Pointer into magenta */
- *yptr, /* Pointer into yellow */
- bitmask; /* Current mask for pixel */
- int bitoffset; /* Current offset in line */
- int bandwidth; /* Width of a color band */
- int x, /* Current X coordinate on page */
- *dither; /* Pointer into dither array */
-
-
- switch (XPosition)
- {
- case -1 :
- bitoffset = 0;
- break;
- default :
- bitoffset = header->cupsBitsPerPixel * ((header->cupsWidth - xsize) / 2);
- break;
- case 1 :
- bitoffset = header->cupsBitsPerPixel * (header->cupsWidth - xsize);
- break;
- }
-
- ptr = row + bitoffset / 8;
- bandwidth = header->cupsBytesPerLine / 4;
-
- switch (header->cupsColorOrder)
- {
- case CUPS_ORDER_CHUNKED :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 128 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize ; x > 0; x --)
- {
- if (*r0++ > dither[x & 15])
- *ptr ^= bitmask;
- bitmask >>= 1;
-
- if (*r0++ > dither[x & 15])
- *ptr ^= bitmask;
- bitmask >>= 1;
-
- if (*r0++ > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 2)
- bitmask >>= 2;
- else
- {
- bitmask = 128;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- dither = Floyd8x8[y & 7];
-
- for (x = xsize ; x > 0; x --, r0 += 3)
- {
- if ((r0[0] & 63) > dither[x & 7])
- *ptr ^= (0xc0 & OnPixels[r0[0]]);
- else
- *ptr ^= (0xc0 & OffPixels[r0[0]]);
-
- if ((r0[1] & 63) > dither[x & 7])
- *ptr ^= (0x30 & OnPixels[r0[1]]);
- else
- *ptr ^= (0x30 & OffPixels[r0[1]]);
-
- if ((r0[2] & 63) > dither[x & 7])
- *ptr ^= (0x0c & OnPixels[r0[2]]);
- else
- *ptr ^= (0x0c & OffPixels[r0[2]]);
-
- ptr ++;
- }
- break;
-
- case 4 :
- dither = Floyd4x4[y & 3];
-
- for (x = xsize ; x > 0; x --, r0 += 3)
- {
- if ((r0[0] & 15) > dither[x & 3])
- *ptr ^= (0xf0 & OnPixels[r0[0]]);
- else
- *ptr ^= (0xf0 & OffPixels[r0[0]]);
-
- if ((r0[1] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[1]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[1]]);
-
- if ((r0[2] & 15) > dither[x & 3])
- *ptr ^= (0xf0 & OnPixels[r0[2]]);
- else
- *ptr ^= (0xf0 & OffPixels[r0[2]]);
-
- ptr ++;
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 += 3, r1 += 3)
- {
- if (r0[0] == r1[0])
- *ptr++ = r0[0];
- else
- *ptr++ = (r0[0] * yerr0 + r1[0] * yerr1) / ysize;
-
- if (r0[1] == r1[1])
- *ptr++ = r0[1];
- else
- *ptr++ = (r0[1] * yerr0 + r1[1] * yerr1) / ysize;
-
- if (r0[2] == r1[2])
- *ptr++ = r0[2];
- else
- *ptr++ = (r0[2] * yerr0 + r1[2] * yerr1) / ysize;
-
- ptr ++;
- }
- break;
- }
- break;
-
- case CUPS_ORDER_BANDED :
- cptr = ptr;
- mptr = ptr + bandwidth;
- yptr = ptr + 2 * bandwidth;
-
- memset(ptr + 3 * bandwidth, 255, bandwidth);
-
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- if (*r0++ > dither[x & 15])
- *cptr ^= bitmask;
- if (*r0++ > dither[x & 15])
- *mptr ^= bitmask;
- if (*r0++ > dither[x & 15])
- *yptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- cptr ++;
- mptr ++;
- yptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 63) > dither[x & 7])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 15) > dither[x & 3])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- }
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 += 3, r1 += 3)
- {
- if (r0[0] == r1[0])
- *cptr++ = r0[0];
- else
- *cptr++ = (r0[0] * yerr0 + r1[0] * yerr1) / ysize;
-
- if (r0[1] == r1[1])
- *mptr++ = r0[1];
- else
- *mptr++ = (r0[1] * yerr0 + r1[1] * yerr1) / ysize;
-
- if (r0[2] == r1[2])
- *yptr++ = r0[2];
- else
- *yptr++ = (r0[2] * yerr0 + r1[2] * yerr1) / ysize;
- }
- break;
- }
- break;
-
- case CUPS_ORDER_PLANAR :
- if (z == 3)
- {
- memset(row, 255, header->cupsBytesPerLine);
- break;
- }
-
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- switch (z)
- {
- case 0 :
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if (r0[0] > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 1 :
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if (r0[1] > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if (r0[2] > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
- r0 += z;
-
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if ((*r0 & 63) > dither[x & 7])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- ptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
- r0 += z;
-
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if ((*r0 & 15) > dither[x & 3])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- ptr ++;
- }
- }
- break;
-
- case 8 :
- r0 += z;
- r1 += z;
-
- for (x = xsize; x > 0; x --, r0 += 3, r1 += 3)
- {
- if (*r0 == *r1)
- *ptr++ = *r0;
- else
- *ptr++ = (*r0 * yerr0 + *r1 * yerr1) / ysize;
- }
- break;
- }
- break;
- }
-}
-
-
-/*
- * 'format_W()' - Convert image data to luminance.
- */
-
-static void
-format_W(cups_page_header2_t *header, /* I - Page header */
- unsigned char *row, /* IO - Bitmap data for device */
- int y, /* I - Current row */
- int z, /* I - Current plane */
- int xsize, /* I - Width of image data */
- int ysize, /* I - Height of image data */
- int yerr0, /* I - Top Y error */
- int yerr1, /* I - Bottom Y error */
- cups_ib_t *r0, /* I - Primary image data */
- cups_ib_t *r1) /* I - Image data for interpolation */
-{
- cups_ib_t *ptr, /* Pointer into row */
- bitmask; /* Current mask for pixel */
- int bitoffset; /* Current offset in line */
- int x, /* Current X coordinate on page */
- *dither; /* Pointer into dither array */
-
-
- (void)z;
-
- switch (XPosition)
- {
- case -1 :
- bitoffset = 0;
- break;
- default :
- bitoffset = header->cupsBitsPerPixel * ((header->cupsWidth - xsize) / 2);
- break;
- case 1 :
- bitoffset = header->cupsBitsPerPixel * (header->cupsWidth - xsize);
- break;
- }
-
- ptr = row + bitoffset / 8;
-
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- if (*r0++ > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 63) > dither[x & 7])
- *ptr ^= (bitmask & OnPixels[*r0++]);
- else
- *ptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- ptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 15) > dither[x & 3])
- *ptr ^= (bitmask & OnPixels[*r0++]);
- else
- *ptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- ptr ++;
- }
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 ++, r1 ++)
- {
- if (*r0 == *r1)
- *ptr++ = *r0;
- else
- *ptr++ = (*r0 * yerr0 + *r1 * yerr1) / ysize;
- }
- break;
- }
-}
-
-
-/*
- * 'format_YMC()' - Convert image data to YMC.
- */
-
-static void
-format_YMC(cups_page_header2_t *header, /* I - Page header */
- unsigned char *row, /* IO - Bitmap data for device */
- int y, /* I - Current row */
- int z, /* I - Current plane */
- int xsize, /* I - Width of image data */
- int ysize, /* I - Height of image data */
- int yerr0, /* I - Top Y error */
- int yerr1, /* I - Bottom Y error */
- cups_ib_t *r0, /* I - Primary image data */
- cups_ib_t *r1) /* I - Image data for interpolation */
-{
- cups_ib_t *ptr, /* Pointer into row */
- *cptr, /* Pointer into cyan */
- *mptr, /* Pointer into magenta */
- *yptr, /* Pointer into yellow */
- bitmask; /* Current mask for pixel */
- int bitoffset; /* Current offset in line */
- int bandwidth; /* Width of a color band */
- int x, /* Current X coordinate on page */
- *dither; /* Pointer into dither array */
-
-
- switch (XPosition)
- {
- case -1 :
- bitoffset = 0;
- break;
- default :
- bitoffset = header->cupsBitsPerPixel * ((header->cupsWidth - xsize) / 2);
- break;
- case 1 :
- bitoffset = header->cupsBitsPerPixel * (header->cupsWidth - xsize);
- break;
- }
-
- ptr = row + bitoffset / 8;
- bandwidth = header->cupsBytesPerLine / 3;
-
- switch (header->cupsColorOrder)
- {
- case CUPS_ORDER_CHUNKED :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 64 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize ; x > 0; x --, r0 += 3)
- {
- if (r0[2] > dither[x & 15])
- *ptr ^= bitmask;
- bitmask >>= 1;
-
- if (r0[1] > dither[x & 15])
- *ptr ^= bitmask;
- bitmask >>= 1;
-
- if (r0[0] > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 2;
- else
- {
- bitmask = 64;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- dither = Floyd8x8[y & 7];
-
- for (x = xsize ; x > 0; x --, r0 += 3)
- {
- if ((r0[2] & 63) > dither[x & 7])
- *ptr ^= (0x30 & OnPixels[r0[2]]);
- else
- *ptr ^= (0x30 & OffPixels[r0[2]]);
-
- if ((r0[1] & 63) > dither[x & 7])
- *ptr ^= (0x0c & OnPixels[r0[1]]);
- else
- *ptr ^= (0x0c & OffPixels[r0[1]]);
-
- if ((r0[0] & 63) > dither[x & 7])
- *ptr++ ^= (0x03 & OnPixels[r0[0]]);
- else
- *ptr++ ^= (0x03 & OffPixels[r0[0]]);
- }
- break;
-
- case 4 :
- dither = Floyd4x4[y & 3];
-
- for (x = xsize ; x > 0; x --, r0 += 3)
- {
- if ((r0[2] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[2]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[2]]);
-
- if ((r0[1] & 15) > dither[x & 3])
- *ptr ^= (0xf0 & OnPixels[r0[1]]);
- else
- *ptr ^= (0xf0 & OffPixels[r0[1]]);
-
- if ((r0[0] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[0]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[0]]);
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 += 3, r1 += 3)
- {
- if (r0[2] == r1[2])
- *ptr++ = r0[2];
- else
- *ptr++ = (r0[2] * yerr0 + r1[2] * yerr1) / ysize;
-
- if (r0[1] == r1[1])
- *ptr++ = r0[1];
- else
- *ptr++ = (r0[1] * yerr0 + r1[1] * yerr1) / ysize;
-
- if (r0[0] == r1[0])
- *ptr++ = r0[0];
- else
- *ptr++ = (r0[0] * yerr0 + r1[0] * yerr1) / ysize;
- }
- break;
- }
- break;
-
- case CUPS_ORDER_BANDED :
- yptr = ptr;
- mptr = ptr + bandwidth;
- cptr = ptr + 2 * bandwidth;
-
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- if (*r0++ > dither[x & 15])
- *cptr ^= bitmask;
- if (*r0++ > dither[x & 15])
- *mptr ^= bitmask;
- if (*r0++ > dither[x & 15])
- *yptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- cptr ++;
- mptr ++;
- yptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 63) > dither[x & 7])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 15) > dither[x & 3])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- }
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 += 3, r1 += 3)
- {
- if (r0[0] == r1[0])
- *cptr++ = r0[0];
- else
- *cptr++ = (r0[0] * yerr0 + r1[0] * yerr1) / ysize;
-
- if (r0[1] == r1[1])
- *mptr++ = r0[1];
- else
- *mptr++ = (r0[1] * yerr0 + r1[1] * yerr1) / ysize;
-
- if (r0[2] == r1[2])
- *yptr++ = r0[2];
- else
- *yptr++ = (r0[2] * yerr0 + r1[2] * yerr1) / ysize;
- }
- break;
- }
- break;
-
- case CUPS_ORDER_PLANAR :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- switch (z)
- {
- case 2 :
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if (r0[0] > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 1 :
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if (r0[1] > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 0 :
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if (r0[2] > dither[x & 15])
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
- z = 2 - z;
- r0 += z;
-
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if ((*r0 & 63) > dither[x & 7])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- ptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
- z = 2 - z;
- r0 += z;
-
- for (x = xsize; x > 0; x --, r0 += 3)
- {
- if ((*r0 & 15) > dither[x & 3])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- ptr ++;
- }
- }
- break;
-
- case 8 :
- z = 2 - z;
- r0 += z;
- r1 += z;
-
- for (x = xsize; x > 0; x --, r0 += 3, r1 += 3)
- {
- if (*r0 == *r1)
- *ptr++ = *r0;
- else
- *ptr++ = (*r0 * yerr0 + *r1 * yerr1) / ysize;
- }
- break;
- }
- break;
- }
-}
-
-
-/*
- * 'format_YMCK()' - Convert image data to YMCK.
- */
-
-static void
-format_YMCK(cups_page_header2_t *header,/* I - Page header */
- unsigned char *row, /* IO - Bitmap data for device */
- int y, /* I - Current row */
- int z, /* I - Current plane */
- int xsize, /* I - Width of image data */
- int ysize, /* I - Height of image data */
- int yerr0, /* I - Top Y error */
- int yerr1, /* I - Bottom Y error */
- cups_ib_t *r0, /* I - Primary image data */
- cups_ib_t *r1) /* I - Image data for interpolation */
-{
- cups_ib_t *ptr, /* Pointer into row */
- *cptr, /* Pointer into cyan */
- *mptr, /* Pointer into magenta */
- *yptr, /* Pointer into yellow */
- *kptr, /* Pointer into black */
- bitmask; /* Current mask for pixel */
- int bitoffset; /* Current offset in line */
- int bandwidth; /* Width of a color band */
- int x, /* Current X coordinate on page */
- *dither; /* Pointer into dither array */
- int pc, pm, py; /* CMY pixels */
-
-
- switch (XPosition)
- {
- case -1 :
- bitoffset = 0;
- break;
- default :
- bitoffset = header->cupsBitsPerPixel * ((header->cupsWidth - xsize) / 2);
- break;
- case 1 :
- bitoffset = header->cupsBitsPerPixel * (header->cupsWidth - xsize);
- break;
- }
-
- ptr = row + bitoffset / 8;
- bandwidth = header->cupsBytesPerLine / 4;
-
- switch (header->cupsColorOrder)
- {
- case CUPS_ORDER_CHUNKED :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 128 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize ; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
-
- if (pc && pm && py)
- {
- bitmask >>= 3;
- *ptr ^= bitmask;
- }
- else
- {
- if (py)
- *ptr ^= bitmask;
- bitmask >>= 1;
-
- if (pm)
- *ptr ^= bitmask;
- bitmask >>= 1;
-
- if (pc)
- *ptr ^= bitmask;
- bitmask >>= 1;
- }
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 128;
-
- ptr ++;
- }
- }
- break;
-
- case 2 :
- dither = Floyd8x8[y & 7];
-
- for (x = xsize ; x > 0; x --, r0 += 4)
- {
- if ((r0[2] & 63) > dither[x & 7])
- *ptr ^= (0xc0 & OnPixels[r0[2]]);
- else
- *ptr ^= (0xc0 & OffPixels[r0[2]]);
-
- if ((r0[1] & 63) > dither[x & 7])
- *ptr ^= (0x30 & OnPixels[r0[1]]);
- else
- *ptr ^= (0x30 & OffPixels[r0[1]]);
-
- if ((r0[0] & 63) > dither[x & 7])
- *ptr ^= (0x0c & OnPixels[r0[0]]);
- else
- *ptr ^= (0x0c & OffPixels[r0[0]]);
-
- if ((r0[3] & 63) > dither[x & 7])
- *ptr++ ^= (0x03 & OnPixels[r0[3]]);
- else
- *ptr++ ^= (0x03 & OffPixels[r0[3]]);
- }
- break;
-
- case 4 :
- dither = Floyd4x4[y & 3];
-
- for (x = xsize ; x > 0; x --, r0 += 4)
- {
- if ((r0[2] & 15) > dither[x & 3])
- *ptr ^= (0xf0 & OnPixels[r0[2]]);
- else
- *ptr ^= (0xf0 & OffPixels[r0[2]]);
-
- if ((r0[1] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[1]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[1]]);
-
- if ((r0[0] & 15) > dither[x & 3])
- *ptr ^= (0xf0 & OnPixels[r0[0]]);
- else
- *ptr ^= (0xf0 & OffPixels[r0[0]]);
-
- if ((r0[3] & 15) > dither[x & 3])
- *ptr++ ^= (0x0f & OnPixels[r0[3]]);
- else
- *ptr++ ^= (0x0f & OffPixels[r0[3]]);
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 += 4, r1 += 4)
- {
- if (r0[2] == r1[2])
- *ptr++ = r0[2];
- else
- *ptr++ = (r0[2] * yerr0 + r1[2] * yerr1) / ysize;
-
- if (r0[1] == r1[1])
- *ptr++ = r0[1];
- else
- *ptr++ = (r0[1] * yerr0 + r1[1] * yerr1) / ysize;
-
- if (r0[0] == r1[0])
- *ptr++ = r0[0];
- else
- *ptr++ = (r0[0] * yerr0 + r1[0] * yerr1) / ysize;
-
- if (r0[3] == r1[3])
- *ptr++ = r0[3];
- else
- *ptr++ = (r0[3] * yerr0 + r1[3] * yerr1) / ysize;
- }
- break;
- }
- break;
-
- case CUPS_ORDER_BANDED :
- yptr = ptr;
- mptr = ptr + bandwidth;
- cptr = ptr + 2 * bandwidth;
- kptr = ptr + 3 * bandwidth;
-
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
-
- if (pc && pm && py)
- *kptr ^= bitmask;
- else
- {
- if (pc)
- *cptr ^= bitmask;
- if (pm)
- *mptr ^= bitmask;
- if (py)
- *yptr ^= bitmask;
- }
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
-
- cptr ++;
- mptr ++;
- yptr ++;
- kptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 63) > dither[x & 7])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 63) > dither[x & 7])
- *kptr ^= (bitmask & OnPixels[*r0++]);
- else
- *kptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- kptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
-
- for (x = xsize; x > 0; x --)
- {
- if ((*r0 & 15) > dither[x & 3])
- *cptr ^= (bitmask & OnPixels[*r0++]);
- else
- *cptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *mptr ^= (bitmask & OnPixels[*r0++]);
- else
- *mptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *yptr ^= (bitmask & OnPixels[*r0++]);
- else
- *yptr ^= (bitmask & OffPixels[*r0++]);
-
- if ((*r0 & 15) > dither[x & 3])
- *kptr ^= (bitmask & OnPixels[*r0++]);
- else
- *kptr ^= (bitmask & OffPixels[*r0++]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- cptr ++;
- mptr ++;
- yptr ++;
- kptr ++;
- }
- }
- break;
-
- case 8 :
- for (x = xsize; x > 0; x --, r0 += 4, r1 += 4)
- {
- if (r0[0] == r1[0])
- *cptr++ = r0[0];
- else
- *cptr++ = (r0[0] * yerr0 + r1[0] * yerr1) / ysize;
-
- if (r0[1] == r1[1])
- *mptr++ = r0[1];
- else
- *mptr++ = (r0[1] * yerr0 + r1[1] * yerr1) / ysize;
-
- if (r0[2] == r1[2])
- *yptr++ = r0[2];
- else
- *yptr++ = (r0[2] * yerr0 + r1[2] * yerr1) / ysize;
-
- if (r0[3] == r1[3])
- *kptr++ = r0[3];
- else
- *kptr++ = (r0[3] * yerr0 + r1[3] * yerr1) / ysize;
- }
- break;
- }
- break;
-
- case CUPS_ORDER_PLANAR :
- switch (header->cupsBitsPerColor)
- {
- case 1 :
- bitmask = 0x80 >> (bitoffset & 7);
- dither = Floyd16x16[y & 15];
-
- for (x = xsize; x > 0; x --)
- {
- pc = *r0++ > dither[x & 15];
- pm = *r0++ > dither[x & 15];
- py = *r0++ > dither[x & 15];
-
- if ((pc && pm && py && z == 3) ||
- (pc && z == 2) || (pm && z == 1) || (py && z == 0))
- *ptr ^= bitmask;
-
- if (bitmask > 1)
- bitmask >>= 1;
- else
- {
- bitmask = 0x80;
- ptr ++;
- }
- }
- break;
-
- case 2 :
- bitmask = 0xc0 >> (bitoffset & 7);
- dither = Floyd8x8[y & 7];
- if (z == 3)
- r0 += 3;
- else
- r0 += 2 - z;
-
- for (x = xsize; x > 0; x --, r0 += 4)
- {
- if ((*r0 & 63) > dither[x & 7])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask > 3)
- bitmask >>= 2;
- else
- {
- bitmask = 0xc0;
-
- ptr ++;
- }
- }
- break;
-
- case 4 :
- bitmask = 0xf0 >> (bitoffset & 7);
- dither = Floyd4x4[y & 3];
- if (z == 3)
- r0 += 3;
- else
- r0 += 2 - z;
-
- for (x = xsize; x > 0; x --, r0 += 4)
- {
- if ((*r0 & 15) > dither[x & 3])
- *ptr ^= (bitmask & OnPixels[*r0]);
- else
- *ptr ^= (bitmask & OffPixels[*r0]);
-
- if (bitmask == 0xf0)
- bitmask = 0x0f;
- else
- {
- bitmask = 0xf0;
-
- ptr ++;
- }
- }
- break;
-
- case 8 :
- if (z == 3)
- {
- r0 += 3;
- r1 += 3;
- }
- else
- {
- r0 += 2 - z;
- r1 += 2 - z;
- }
-
- for (x = xsize; x > 0; x --, r0 += 4, r1 += 4)
- {
- if (*r0 == *r1)
- *ptr++ = *r0;
- else
- *ptr++ = (*r0 * yerr0 + *r1 * yerr1) / ysize;
- }
- break;
- }
- break;
- }
-}
-
-
-/*
- * 'make_lut()' - Make a lookup table given gamma and brightness values.
- */
-
-static void
-make_lut(cups_ib_t *lut, /* I - Lookup table */
- int colorspace, /* I - Colorspace */
- float g, /* I - Image gamma */
- float b) /* I - Image brightness */
-{
- int i; /* Looping var */
- int v; /* Current value */
-
-
- g = 1.0 / g;
- b = 1.0 / b;
-
- for (i = 0; i < 256; i ++)
- {
- if (colorspace < 0)
- v = 255.0 * b * (1.0 - pow(1.0 - (float)i / 255.0, g)) + 0.5;
- else
- v = 255.0 * (1.0 - b * (1.0 - pow((float)i / 255.0, g))) + 0.5;
-
- if (v < 0)
- *lut++ = 0;
- else if (v > 255)
- *lut++ = 255;
- else
- *lut++ = v;
- }
-}
-
-
-/*
- * 'raster_cb()' - Validate the page header.
- */
-
-static int /* O - 0 if OK, -1 if not */
-raster_cb(
- cups_page_header2_t *header, /* IO - Raster header */
- int preferred_bits) /* I - Preferred bits per color */
-{
- /*
- * Ensure that colorimetric colorspaces use at least 8 bits per
- * component...
- */
-
- if ((header->cupsColorSpace == CUPS_CSPACE_CIEXYZ ||
- header->cupsColorSpace == CUPS_CSPACE_CIELab ||
- header->cupsColorSpace >= CUPS_CSPACE_ICC1) &&
- header->cupsBitsPerColor < 8)
- header->cupsBitsPerColor = 8;
-
- return (0);
-}
-
-
-/*
- * End of "$Id: imagetoraster.c 9808 2011-05-26 12:03:28Z mike $".
- */
diff --git a/filter/interpret.c b/filter/interpret.c
index 81774ddf..5d099782 100644
--- a/filter/interpret.c
+++ b/filter/interpret.c
@@ -1,9 +1,9 @@
/*
- * "$Id: interpret.c 9955 2011-09-02 18:14:34Z mike $"
+ * "$Id: interpret.c 10424 2012-04-23 17:26:57Z mike $"
*
* PPD command interpreter for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1993-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -40,7 +40,7 @@
* Include necessary headers...
*/
-#include "image-private.h"
+#include <cups/raster-private.h>
/*
@@ -144,7 +144,7 @@ static void DEBUG_stack(_cups_ps_stack_t *st);
* @code pop@, @code roll@, @code setpagedevice@, and @code stopped@ operators
* are supported.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
int /* O - 0 on success, -1 on failure */
@@ -204,7 +204,7 @@ cupsRasterInterpretPPD(
#ifdef __APPLE__
/*
- * cupsInteger0 is also used for the total page count on Mac OS X; set an
+ * cupsInteger0 is also used for the total page count on OS X; set an
* uncommon default value so we can tell if the driver is using cupsInteger0.
*/
@@ -1387,7 +1387,7 @@ setpagedevice(
* Found the start of the dictionary, empty the stack to this point...
*/
- st->num_objs = obj - st->objs;
+ st->num_objs = (int)(obj - st->objs);
/*
* Now pull /name and value pairs from the dictionary...
@@ -1684,5 +1684,5 @@ DEBUG_stack(_cups_ps_stack_t *st) /* I - Stack */
/*
- * End of "$Id: interpret.c 9955 2011-09-02 18:14:34Z mike $".
+ * End of "$Id: interpret.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/filter/pdftops.c b/filter/pdftops.c
deleted file mode 100644
index b35e7ff2..00000000
--- a/filter/pdftops.c
+++ /dev/null
@@ -1,621 +0,0 @@
-/*
- * "$Id: pdftops.c 9793 2011-05-20 03:49:49Z mike $"
- *
- * PDF to PostScript filter front-end for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1997-2006 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * main() - Main entry for filter...
- * cancel_job() - Flag the job as canceled.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include <cups/cups.h>
-#include <cups/ppd.h>
-#include <cups/string-private.h>
-#include <cups/language-private.h>
-#include <signal.h>
-#include <sys/wait.h>
-#include <errno.h>
-
-
-/*
- * Local functions...
- */
-
-static void cancel_job(int sig);
-
-
-/*
- * Local globals...
- */
-
-static int job_canceled = 0;
-
-
-/*
- * 'main()' - Main entry for filter...
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line args */
- char *argv[]) /* I - Command-line arguments */
-{
- int fd; /* Copy file descriptor */
- char *filename, /* PDF file to convert */
- tempfile[1024]; /* Temporary file */
- char buffer[8192]; /* Copy buffer */
- int bytes; /* Bytes copied */
- int num_options; /* Number of options */
- cups_option_t *options; /* Options */
- const char *val; /* Option value */
- int orientation, /* Output orientation */
- fit; /* Fit output to default page size? */
- ppd_file_t *ppd; /* PPD file */
- ppd_size_t *size; /* Current page size */
- int pdf_pid, /* Process ID for pdftops */
- pdf_argc, /* Number of args for pdftops */
- pstops_pid, /* Process ID of pstops filter */
- pstops_pipe[2], /* Pipe to pstops filter */
- wait_children, /* Number of child processes left */
- wait_pid, /* Process ID from wait() */
- wait_status, /* Status from child */
- exit_status = 0; /* Exit status */
- char *pdf_argv[100], /* Arguments for pdftops/gs */
- pdf_width[255], /* Paper width */
- pdf_height[255], /* Paper height */
- pstops_path[1024], /* Path to pstops program */
- *pstops_argv[7], /* Arguments for pstops filter */
- *pstops_options, /* Options for pstops filter */
- *pstops_start, /* Start of pstops filter option */
- *pstops_end; /* End of pstops filter option */
- const char *cups_serverbin; /* CUPS_SERVERBIN environment variable */
-#if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
- struct sigaction action; /* Actions for POSIX signals */
-#endif /* HAVE_SIGACTION && !HAVE_SIGSET */
-
-
- /*
- * Make sure status messages are not buffered...
- */
-
- setbuf(stderr, NULL);
-
- /*
- * Ignore broken pipe signals...
- */
-
- signal(SIGPIPE, SIG_IGN);
-
- /*
- * Make sure we have the right number of arguments for CUPS!
- */
-
- if (argc < 6 || argc > 7)
- {
- _cupsLangPrintf(stderr,
- _("Usage: %s job user title copies options [filename]"),
- argv[0]);
- return (1);
- }
-
- /*
- * Register a signal handler to cleanly cancel a job.
- */
-
-#ifdef HAVE_SIGSET /* Use System V signals over POSIX to avoid bugs */
- sigset(SIGTERM, cancel_job);
-#elif defined(HAVE_SIGACTION)
- memset(&action, 0, sizeof(action));
-
- sigemptyset(&action.sa_mask);
- action.sa_handler = cancel_job;
- sigaction(SIGTERM, &action, NULL);
-#else
- signal(SIGTERM, cancel_job);
-#endif /* HAVE_SIGSET */
-
- /*
- * Copy stdin if needed...
- */
-
- if (argc == 6)
- {
- /*
- * Copy stdin to a temp file...
- */
-
- if ((fd = cupsTempFd(tempfile, sizeof(tempfile))) < 0)
- {
- perror("DEBUG: Unable to copy PDF file");
- return (1);
- }
-
- fprintf(stderr, "DEBUG: pdftops - copying to temp print file \"%s\"\n",
- tempfile);
-
- while ((bytes = fread(buffer, 1, sizeof(buffer), stdin)) > 0)
- write(fd, buffer, bytes);
-
- close(fd);
-
- filename = tempfile;
- }
- else
- {
- /*
- * Use the filename on the command-line...
- */
-
- filename = argv[6];
- tempfile[0] = '\0';
- }
-
- /*
- * Load the PPD file and mark options...
- */
-
- ppd = ppdOpenFile(getenv("PPD"));
- num_options = cupsParseOptions(argv[5], 0, &options);
-
- ppdMarkDefaults(ppd);
- cupsMarkOptions(ppd, num_options, options);
-
- /*
- * Build the pstops command-line...
- */
-
- if ((cups_serverbin = getenv("CUPS_SERVERBIN")) == NULL)
- cups_serverbin = CUPS_SERVERBIN;
-
- snprintf(pstops_path, sizeof(pstops_path), "%s/filter/pstops",
- cups_serverbin);
-
- pstops_options = strdup(argv[5]);
-
- if ((pstops_start = strstr(pstops_options, "fitplot")) != NULL &&
- (!pstops_start[7] || isspace(pstops_start[7] & 255)))
- {
- /*
- * Strip [no]fitplot option...
- */
-
- pstops_end = pstops_start + 7;
-
- if ((pstops_start - pstops_options) >= 2 &&
- !strncmp(pstops_start - 2, "no", 2))
- pstops_start -= 2;
-
- while (*pstops_end && isspace(*pstops_end & 255))
- pstops_end ++;
-
- _cups_strcpy(pstops_start, pstops_end);
- }
-
- if ((pstops_start = strstr(pstops_options, "fit-to-page")) != NULL &&
- (!pstops_start[11] || isspace(pstops_start[11] & 255)))
- {
- /*
- * Strip [no]fit-to-page option...
- */
-
- pstops_end = pstops_start + 11;
-
- if ((pstops_start - pstops_options) >= 2 &&
- !strncmp(pstops_start - 2, "no", 2))
- pstops_start -= 2;
-
- while (*pstops_end && isspace(*pstops_end & 255))
- pstops_end ++;
-
- _cups_strcpy(pstops_start, pstops_end);
- }
-
- if ((pstops_start = strstr(pstops_options, "landscape")) != NULL &&
- (!pstops_start[9] || isspace(pstops_start[9] & 255)))
- {
- /*
- * Strip [no]landscape option...
- */
-
- pstops_end = pstops_start + 9;
-
- if ((pstops_start - pstops_options) >= 2 &&
- !strncmp(pstops_start - 2, "no", 2))
- pstops_start -= 2;
-
- while (*pstops_end && isspace(*pstops_end & 255))
- pstops_end ++;
-
- _cups_strcpy(pstops_start, pstops_end);
- }
-
- if ((pstops_start = strstr(pstops_options, "orientation-requested=")) != NULL)
- {
- /*
- * Strip [no]fitplot option...
- */
-
- pstops_end = pstops_start + 22;
- while (*pstops_end && !isspace(*pstops_end & 255))
- pstops_end ++;
-
- _cups_strcpy(pstops_start, pstops_end);
- }
-
- pstops_argv[0] = argv[0]; /* Printer */
- pstops_argv[1] = argv[1]; /* Job */
- pstops_argv[2] = argv[2]; /* User */
- pstops_argv[3] = argv[3]; /* Title */
- pstops_argv[4] = argv[4]; /* Copies */
- pstops_argv[5] = pstops_options; /* Options */
- pstops_argv[6] = NULL;
-
- /*
- * Build the command-line for the pdftops or gs filter...
- */
-
-#ifdef HAVE_PDFTOPS
- pdf_argv[0] = (char *)"pdftops";
- pdf_argc = 1;
-#else
- pdf_argv[0] = (char *)"gs";
- pdf_argv[1] = (char *)"-q";
- pdf_argv[2] = (char *)"-dNOPAUSE";
- pdf_argv[3] = (char *)"-dBATCH";
- pdf_argv[4] = (char *)"-dSAFER";
-# ifdef HAVE_GHOSTSCRIPT_PS2WRITE
- pdf_argv[5] = (char *)"-sDEVICE=ps2write";
-# else
- pdf_argv[5] = (char *)"-sDEVICE=pswrite";
-# endif /* HAVE_GHOSTSCRIPT_PS2WRITE */
- pdf_argv[6] = (char *)"-sOUTPUTFILE=%stdout";
- pdf_argc = 7;
-#endif /* HAVE_PDFTOPS */
-
- if (ppd)
- {
- /*
- * Set language level and TrueType font handling...
- */
-
- if (ppd->language_level == 1)
- {
-#ifdef HAVE_PDFTOPS
- pdf_argv[pdf_argc++] = (char *)"-level1";
- pdf_argv[pdf_argc++] = (char *)"-noembtt";
-#else
- pdf_argv[pdf_argc++] = (char *)"-dLanguageLevel=1";
-#endif /* HAVE_PDFTOPS */
- }
- else if (ppd->language_level == 2)
- {
-#ifdef HAVE_PDFTOPS
- pdf_argv[pdf_argc++] = (char *)"-level2";
- if (!ppd->ttrasterizer)
- pdf_argv[pdf_argc++] = (char *)"-noembtt";
-#else
- pdf_argv[pdf_argc++] = (char *)"-dLanguageLevel=2";
-#endif /* HAVE_PDFTOPS */
- }
- else
-#ifdef HAVE_PDFTOPS
- pdf_argv[pdf_argc++] = (char *)"-level3";
-#else
- pdf_argv[pdf_argc++] = (char *)"-dLanguageLevel=3";
-#endif /* HAVE_PDFTOPS */
-
- if ((val = cupsGetOption("fitplot", num_options, options)) == NULL)
- val = cupsGetOption("fit-to-page", num_options, options);
-
- if (val && _cups_strcasecmp(val, "no") && _cups_strcasecmp(val, "off") &&
- _cups_strcasecmp(val, "false"))
- fit = 1;
- else
- fit = 0;
-
- /*
- * Set output page size...
- */
-
- size = ppdPageSize(ppd, NULL);
- if (size && fit)
- {
- /*
- * Got the size, now get the orientation...
- */
-
- orientation = 0;
-
- if ((val = cupsGetOption("landscape", num_options, options)) != NULL)
- {
- if (_cups_strcasecmp(val, "no") != 0 && _cups_strcasecmp(val, "off") != 0 &&
- _cups_strcasecmp(val, "false") != 0)
- orientation = 1;
- }
- else if ((val = cupsGetOption("orientation-requested", num_options,
- options)) != NULL)
- {
- /*
- * Map IPP orientation values to 0 to 3:
- *
- * 3 = 0 degrees = 0
- * 4 = 90 degrees = 1
- * 5 = -90 degrees = 3
- * 6 = 180 degrees = 2
- */
-
- orientation = atoi(val) - 3;
- if (orientation >= 2)
- orientation ^= 1;
- }
-
-#ifdef HAVE_PDFTOPS
- if (orientation & 1)
- {
- snprintf(pdf_width, sizeof(pdf_width), "%.0f", size->length);
- snprintf(pdf_height, sizeof(pdf_height), "%.0f", size->width);
- }
- else
- {
- snprintf(pdf_width, sizeof(pdf_width), "%.0f", size->width);
- snprintf(pdf_height, sizeof(pdf_height), "%.0f", size->length);
- }
-
- pdf_argv[pdf_argc++] = (char *)"-paperw";
- pdf_argv[pdf_argc++] = pdf_width;
- pdf_argv[pdf_argc++] = (char *)"-paperh";
- pdf_argv[pdf_argc++] = pdf_height;
- pdf_argv[pdf_argc++] = (char *)"-expand";
-
-#else
- if (orientation & 1)
- {
- snprintf(pdf_width, sizeof(pdf_width), "-dDEVICEWIDTHPOINTS=%.0f",
- size->length);
- snprintf(pdf_height, sizeof(pdf_height), "-dDEVICEHEIGHTPOINTS=%.0f",
- size->width);
- }
- else
- {
- snprintf(pdf_width, sizeof(pdf_width), "-dDEVICEWIDTHPOINTS=%.0f",
- size->width);
- snprintf(pdf_height, sizeof(pdf_height), "-dDEVICEHEIGHTPOINTS=%.0f",
- size->length);
- }
-
- pdf_argv[pdf_argc++] = pdf_width;
- pdf_argv[pdf_argc++] = pdf_height;
-#endif /* HAVE_PDFTOPS */
- }
-#if defined(HAVE_PDFTOPS) && defined(HAVE_PDFTOPS_WITH_ORIGPAGESIZES)
- else
- {
- /*
- * Use the page sizes of the original PDF document, this way documents
- * which contain pages of different sizes can be printed correctly
- */
-
- pdf_argv[pdf_argc++] = (char *)"-origpagesizes";
- }
-#endif /* HAVE_PDFTOPS && HAVE_PDFTOPS_WITH_ORIGPAGESIZES */
- }
-
-#ifdef HAVE_PDFTOPS
- pdf_argv[pdf_argc++] = filename;
- pdf_argv[pdf_argc++] = (char *)"-";
-#else
- pdf_argv[pdf_argc++] = (char *)"-c";
- pdf_argv[pdf_argc++] = (char *)"save pop";
- pdf_argv[pdf_argc++] = (char *)"-f";
- pdf_argv[pdf_argc++] = filename;
-#endif /* HAVE_PDFTOPS */
-
- pdf_argv[pdf_argc] = NULL;
-
- /*
- * Execute "pdftops/gs | pstops"...
- */
-
- if (pipe(pstops_pipe))
- {
- perror("DEBUG: Unable to create pipe");
-
- exit_status = 1;
- goto error;
- }
-
- if ((pdf_pid = fork()) == 0)
- {
- /*
- * Child comes here...
- */
-
- dup2(pstops_pipe[1], 1);
- close(pstops_pipe[0]);
- close(pstops_pipe[1]);
-
-#ifdef HAVE_PDFTOPS
- execv(CUPS_PDFTOPS, pdf_argv);
- perror("DEBUG: Unable to execute pdftops program");
-#else
- execv(CUPS_GHOSTSCRIPT, pdf_argv);
- perror("DEBUG: Unable to execute gs program");
-#endif /* HAVE_PDFTOPS */
-
- exit(1);
- }
- else if (pdf_pid < 0)
- {
- /*
- * Unable to fork!
- */
-
-#ifdef HAVE_PDFTOPS
- perror("DEBUG: Unable to execute pdftops program");
-#else
- perror("DEBUG: Unable to execute gs program");
-#endif /* HAVE_PDFTOPS */
-
- exit_status = 1;
- goto error;
- }
-
- fprintf(stderr, "DEBUG: Started filter %s (PID %d)\n", pdf_argv[0], pdf_pid);
-
- if ((pstops_pid = fork()) == 0)
- {
- /*
- * Child comes here...
- */
-
- dup2(pstops_pipe[0], 0);
- close(pstops_pipe[0]);
- close(pstops_pipe[1]);
-
- execv(pstops_path, pstops_argv);
- perror("DEBUG: Unable to execute pstops program");
-
- exit(1);
- }
- else if (pstops_pid < 0)
- {
- /*
- * Unable to fork!
- */
-
- perror("DEBUG: Unable to execute pstops program");
-
- exit_status = 1;
- goto error;
- }
-
- fprintf(stderr, "DEBUG: Started filter pstops (PID %d)\n", pstops_pid);
-
- close(pstops_pipe[0]);
- close(pstops_pipe[1]);
-
- /*
- * Wait for the child processes to exit...
- */
-
- wait_children = 2;
-
- while (wait_children > 0)
- {
- /*
- * Wait until we get a valid process ID or the job is canceled...
- */
-
- while ((wait_pid = wait(&wait_status)) < 0 && errno == EINTR)
- {
- if (job_canceled)
- {
- kill(pdf_pid, SIGTERM);
- kill(pstops_pid, SIGTERM);
-
- job_canceled = 0;
- }
- }
-
- if (wait_pid < 0)
- break;
-
- wait_children --;
-
- /*
- * Report child status...
- */
-
- if (wait_status)
- {
- if (WIFEXITED(wait_status))
- {
- exit_status = WEXITSTATUS(wait_status);
-
- fprintf(stderr, "DEBUG: PID %d (%s) stopped with status %d!\n",
- wait_pid,
-#ifdef HAVE_PDFTOPS
- wait_pid == pdf_pid ? "pdftops" : "pstops",
-#else
- wait_pid == pdf_pid ? "gs" : "pstops",
-#endif /* HAVE_PDFTOPS */
- exit_status);
- }
- else if (WTERMSIG(wait_status) == SIGTERM)
- {
- fprintf(stderr,
- "DEBUG: PID %d (%s) was terminated normally with signal %d!\n",
- wait_pid,
-#ifdef HAVE_PDFTOPS
- wait_pid == pdf_pid ? "pdftops" : "pstops",
-#else
- wait_pid == pdf_pid ? "gs" : "pstops",
-#endif /* HAVE_PDFTOPS */
- exit_status);
- }
- else
- {
- exit_status = WTERMSIG(wait_status);
-
- fprintf(stderr, "DEBUG: PID %d (%s) crashed on signal %d!\n", wait_pid,
-#ifdef HAVE_PDFTOPS
- wait_pid == pdf_pid ? "pdftops" : "pstops",
-#else
- wait_pid == pdf_pid ? "gs" : "pstops",
-#endif /* HAVE_PDFTOPS */
- exit_status);
- }
- }
- else
- {
- fprintf(stderr, "DEBUG: PID %d (%s) exited with no errors.\n", wait_pid,
-#ifdef HAVE_PDFTOPS
- wait_pid == pdf_pid ? "pdftops" : "pstops");
-#else
- wait_pid == pdf_pid ? "gs" : "pstops");
-#endif /* HAVE_PDFTOPS */
- }
- }
-
- /*
- * Cleanup and exit...
- */
-
- error:
-
- if (tempfile[0])
- unlink(tempfile);
-
- return (exit_status);
-}
-
-
-/*
- * 'cancel_job()' - Flag the job as canceled.
- */
-
-static void
-cancel_job(int sig) /* I - Signal number (unused) */
-{
- (void)sig;
-
- job_canceled = 1;
-}
-
-
-/*
- * End of "$Id: pdftops.c 9793 2011-05-20 03:49:49Z mike $".
- */
diff --git a/filter/postscript-driver.header b/filter/postscript-driver.header
index a0fedcf6..f269a119 100644
--- a/filter/postscript-driver.header
+++ b/filter/postscript-driver.header
@@ -1,9 +1,9 @@
<!--
- "$Id: postscript-driver.header 9344 2010-10-26 23:45:18Z mike $"
+ "$Id: postscript-driver.header 10424 2012-04-23 17:26:57Z mike $"
PostScript printer driver documentation for CUPS.
- Copyright 2007-2010 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2007 by Easy Software Products.
These coded instructions, statements, and computer programs are the
@@ -15,7 +15,7 @@
<h1 class='title'>Developing PostScript Printer Drivers</h1>
-<p>This document describes how to develop printer drivers for PostScript printers. Topics include: <a href='#BASICS'>printer driver basics</a>, <a href='#CREATE'>creating new PPD files</a>, <a href='#IMPORT'>importing existing PPD files</a>, <a href='#FILTERS'>using custom filters</a>, <a href='#COLOR'>implementing color management</a>, and <a href='#MACOSX'>adding Mac OS X features</a>.</p>
+<p>This document describes how to develop printer drivers for PostScript printers. Topics include: <a href='#BASICS'>printer driver basics</a>, <a href='#CREATE'>creating new PPD files</a>, <a href='#IMPORT'>importing existing PPD files</a>, <a href='#FILTERS'>using custom filters</a>, <a href='#COLOR'>implementing color management</a>, and <a href='#MACOSX'>adding OS X features</a>.</p>
<div class='summary'><table summary='General Information'>
<tbody>
diff --git a/filter/postscript-driver.shtml b/filter/postscript-driver.shtml
index 439744f0..5e93f858 100644
--- a/filter/postscript-driver.shtml
+++ b/filter/postscript-driver.shtml
@@ -69,7 +69,7 @@
dup [612 792] (Letter) put
dup [612 1008] (Legal) put
dup [595 842] (A4) put
- {exch aload pop 4 index sub abs 5 le exch
+ {exch aload pop 4 index sub abs 5 le exch
5 index sub abs 5 le and
{exch pop exit} {pop} ifelse
} bind forall = flush pop pop
@@ -166,7 +166,7 @@
dup [612 792] (Letter) put
dup [612 1008] (Legal) put
dup [595 842] (A4) put
- {exch aload pop 4 index sub abs 5 le exch
+ {exch aload pop 4 index sub abs 5 le exch
5 index sub abs 5 le and
{exch pop exit} {pop} ifelse
} bind forall = flush pop pop
@@ -264,9 +264,9 @@ information file.</P>
<p>The options used for profile selection can be customized using the <tt>cupsICCQualifier2</tt> and <tt>cupsICCQualifier3</tt> attributes.</p>
-<h2 class='title'><a name='MACOSX'>Adding Mac OS X Features</a></h2>
+<h2 class='title'><a name='MACOSX'>Adding OS X Features</a></h2>
-<p>Mac OS X printer drivers can provide <a href='spec-ppd.html#MACOSX'>additional attributes</a> to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:</p>
+<p>OS X printer drivers can provide <a href='spec-ppd.html#MACOSX'>additional attributes</a> to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:</p>
<pre class='example'>
<a href='ref-ppdcfile.html#Attribute'>Attribute</a> APDialogExtension "" /Library/Printers/Vendor/filename.plugin
diff --git a/filter/ppd-compiler.header b/filter/ppd-compiler.header
index 5a36477f..3301bc7a 100644
--- a/filter/ppd-compiler.header
+++ b/filter/ppd-compiler.header
@@ -1,9 +1,9 @@
<!--
- "$Id: ppd-compiler.header 9344 2010-10-26 23:45:18Z mike $"
+ "$Id: ppd-compiler.header 10307 2012-02-16 05:33:29Z mike $"
PPD compiler documentation for CUPS.
- Copyright 2007-2010 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2007 by Easy Software Products.
These coded instructions, statements, and computer programs are the
@@ -19,6 +19,12 @@
(PPD) file compiler. The PPD compiler generates PPD files from simple text files
that describe the features and capabilities of one or more printers.</P>
+<BLOCKQUOTE><B>Note:</B>
+
+<P>The PPD compiler and related tools are deprecated and will be removed in a future release of CUPS.</P>
+
+</BLOCKQUOTE>
+
<div class='summary'><table summary='General Information'>
<tbody>
<tr>
diff --git a/filter/ppd-compiler.shtml b/filter/ppd-compiler.shtml
index c98b95ce..dca2870f 100644
--- a/filter/ppd-compiler.shtml
+++ b/filter/ppd-compiler.shtml
@@ -205,7 +205,7 @@ follows:</P>
<LI>Bits per color. In the example file, we define 8 bits per color, for
a continuous-tone grayscale output. All versions of CUPS support 1 and
- 8 bits per color. CUPS 1.2 and higher (Mac OS X 10.5 and higher) also
+ 8 bits per color. CUPS 1.2 and higher (OS X 10.5 and higher) also
supports 16 bits per color.</LI>
<LI>Rows per band. In the example file, we define 0 rows per band to
diff --git a/filter/pstext.c b/filter/pstext.c
deleted file mode 100644
index 536c3949..00000000
--- a/filter/pstext.c
+++ /dev/null
@@ -1,511 +0,0 @@
-/*
- * "$Id: pstext.c 9533 2011-02-16 21:33:17Z mike $"
- *
- * Common PostScript text code for CUPS.
- *
- * Copyright 2008-2010 by Apple Inc.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * psTextEmbedFonts() - Embed PostScript fonts.
- * psTextListFonts() - List PostScript fonts.
- * psTextInitialize() - Load and embed font data for UTF-8 text.
- * psTextUTF8() - Output UTF-8 text at the current position.
- * psTextUTF32() - Output UTF-32 text at the current position.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "pstext.h"
-#include <cups/language-private.h>
-
-
-/*
- * Composite font names...
- */
-
-static const char * const ps_font_names[] =
-{
- "cupsNormal",
- "cupsBold",
- "cupsItalic",
- "cupsBoldItalic"
-};
-
-
-/*
- * 'psTextEmbedFonts()'- Embed PostScript fonts.
- */
-
-void
-psTextEmbedFonts(ps_text_t *fonts) /* I - Font data */
-{
- int i, j; /* Looping vars */
- const char *cups_datadir; /* CUPS_DATADIR environment variable */
- char *font; /* Current font */
- char filename[1024]; /* Current filename */
- FILE *fp; /* Current file */
- char line[1024]; /* Line from file */
- int ch; /* Character value */
-
-
- /*
- * Get the data directory...
- */
-
- if ((cups_datadir = getenv("CUPS_DATADIR")) == NULL)
- cups_datadir = CUPS_DATADIR;
-
- /*
- * Embed each font...
- */
-
- for (font = (char *)cupsArrayFirst(fonts->unique);
- font;
- font = (char *)cupsArrayNext(fonts->unique))
- {
- printf("%%%%BeginResource: font %s\n", font);
-
- snprintf(filename, sizeof(filename), "%s/fonts/%s", cups_datadir, font);
- if ((fp = fopen(filename, "rb")) != NULL)
- {
- while ((j = fread(line, 1, sizeof(line), fp)) > 0)
- fwrite(line, 1, j, stdout);
-
- fclose(fp);
- }
- else
- {
- _cupsLangPrintError("ERROR", _("Unable to open print file"));
- fprintf(stderr, "DEBUG: Unable to open \"%s\".\n", filename);
- }
-
- puts("\n%%EndResource");
- }
-
- /*
- * Write the encoding arrays...
- */
-
- puts("% Character encodings");
-
- for (i = 0; i < fonts->num_fonts; i ++)
- {
- printf("/cupsEncoding%02x [\n", i);
-
- for (ch = 0; ch < 256; ch ++)
- {
- if (fonts->glyphs[fonts->codes[i * 256 + ch]])
- printf("/%s", fonts->glyphs[fonts->codes[i * 256 + ch]]);
- else if (fonts->codes[i * 256 + ch] > 255)
- printf("/uni%04X", fonts->codes[i * 256 + ch]);
- else
- printf("/.notdef");
-
- if ((ch & 7) == 7)
- putchar('\n');
- }
-
- puts("] def");
- }
-
- /*
- * Construct composite fonts... Start by reencoding the base fonts...
- */
-
- puts("% Reencode base fonts");
-
- for (i = 0; i < 4; i ++)
- for (j = 0; j < fonts->num_fonts; j ++)
- {
- printf("/%s findfont\n", fonts->fonts[j][i]);
- printf("dup length 1 add dict begin\n"
- " { 1 index /FID ne { def } { pop pop } ifelse } forall\n"
- " /Encoding cupsEncoding%02x def\n"
- " currentdict\n"
- "end\n", j);
- printf("/%s%02x exch definefont /%s%02x exch def\n", ps_font_names[i], j,
- ps_font_names[i], j);
- }
-
- /*
- * Then merge them into composite fonts...
- */
-
- puts("% Create composite fonts");
-
- for (i = 0; i < 4; i ++)
- {
- puts("8 dict begin");
- puts("/FontType 0 def/FontMatrix[1.0 0 0 1.0 0 0]def/FMapType 2 def"
- "/Encoding[");
- for (j = 0; j < fonts->num_fonts; j ++)
- if (j == (fonts->num_fonts - 1))
- printf("%d", j);
- else if ((j & 15) == 15)
- printf("%d\n", j);
- else
- printf("%d ", j);
- puts("]def/FDepVector[");
- for (j = 0; j < fonts->num_fonts; j ++)
- if (j == (fonts->num_fonts - 1))
- printf("%s%02x", ps_font_names[i], j);
- else if ((j & 3) == 3)
- printf("%s%02x\n", ps_font_names[i], j);
- else
- printf("%s%02x ", ps_font_names[i], j);
- puts("]def currentdict end");
- printf("/%s exch definefont pop\n", ps_font_names[i]);
- }
-
- /*
- * Procedures...
- */
-
- puts("% Procedures to justify text...\n"
- "/showcenter{dup stringwidth pop -0.5 mul 0 rmoveto show}bind def\n"
- "/showleft{show}bind def\n"
- "/showright{dup stringwidth pop neg 0 rmoveto show}bind def");
-}
-
-
-/*
- * 'psTextListFonts()' - List PostScript fonts.
- */
-
-void
-psTextListFonts(ps_text_t *fonts) /* I - Font data */
-{
- char *font; /* Current font */
-
-
- font = (char *)cupsArrayFirst(fonts->unique);
- printf("%%%%DocumentSuppliedResources: font %s\n", font);
- while ((font = (char *)cupsArrayNext(fonts->unique)) != NULL)
- printf("%%%%+ font %s\n", font);
-}
-
-
-/*
- * 'psTextInitialize()' - Load and embed font data for UTF-8 text.
- */
-
-ps_text_t * /* O - Font data */
-psTextInitialize(void)
-{
- ps_text_t *fonts; /* Font data */
- int i, j; /* Looping vars */
- char filename[1024]; /* Current filename */
- FILE *fp; /* Current file */
- const char *cups_datadir; /* CUPS_DATADIR environment variable */
- char line[1024], /* Line from file */
- *lineptr, /* Pointer into line */
- *valptr; /* Pointer to value in line */
- int unicode; /* Character value */
- int start, end; /* Start and end values for range */
- char glyph[64]; /* Glyph name */
-
-
- /*
- * Get the data directory...
- */
-
- if ((cups_datadir = getenv("CUPS_DATADIR")) == NULL)
- cups_datadir = CUPS_DATADIR;
-
- /*
- * Initialize the PostScript text data...
- */
-
- fonts = (ps_text_t *)calloc(1, sizeof(ps_text_t));
- fonts->size = -1.0;
- fonts->style = -1;
-
- /*
- * Load the PostScript glyph names...
- */
-
- snprintf(filename, sizeof(filename), "%s/data/psglyphs", cups_datadir);
-
- if ((fp = fopen(filename, "r")) != NULL)
- {
- while (fscanf(fp, "%x%63s", &unicode, glyph) == 2)
- fonts->glyphs[unicode] = _cupsStrAlloc(glyph);
-
- fclose(fp);
- }
- else
- {
- _cupsLangPrintError("ERROR", _("Unable to open print file"));
- fprintf(stderr, "DEBUG: Unable to open \"%s\".\n", filename);
- exit(1);
- }
-
- /*
- * Open the UTF-8 character set definition...
- */
-
- snprintf(filename, sizeof(filename), "%s/charsets/utf-8", cups_datadir);
-
- if ((fp = fopen(filename, "r")) == NULL)
- {
- /*
- * Can't open charset file!
- */
-
- _cupsLangPrintError("ERROR", _("Unable to open print file"));
- fprintf(stderr, "DEBUG: Unable to open \"%s\".\n", filename);
- exit(1);
- }
-
- if (!fgets(line, sizeof(line), fp) || strncmp(line, "charset utf8", 12))
- {
- /*
- * Bad/empty charset file!
- */
-
- fclose(fp);
- _cupsLangPrintFilter(stderr, "ERROR", _("Bad charset file \"%s\"."),
- filename);
- exit(1);
- }
-
- /*
- * Read the font descriptions...
- */
-
- fonts->unique = cupsArrayNew((cups_array_func_t)strcmp, NULL);
-
- while (fgets(line, sizeof(line), fp) != NULL)
- {
- /*
- * Skip comment and blank lines...
- */
-
- if (line[0] == '#' || line[0] == '\n')
- continue;
-
- /*
- * Read the font descriptions that should look like:
- *
- * start end direction width normal [bold italic bold-italic]
- */
-
- lineptr = line;
-
- start = strtol(lineptr, &lineptr, 16);
- end = strtol(lineptr, &lineptr, 16);
-
- while (isspace(*lineptr & 255))
- lineptr ++;
-
- valptr = lineptr;
-
- while (!isspace(*lineptr & 255) && *lineptr)
- lineptr ++;
-
- if (!*lineptr)
- {
- /*
- * Can't have a font without all required values...
- */
-
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Bad font description line \"%s\"."), valptr);
- fclose(fp);
- exit(1);
- }
-
- *lineptr++ = '\0';
-
- if (!strcmp(valptr, "ltor"))
- fonts->directions[fonts->num_fonts] = 1;
- else if (!strcmp(valptr, "rtol"))
- fonts->directions[fonts->num_fonts] = -1;
- else
- {
- _cupsLangPrintFilter(stderr, "ERROR", _("Bad text direction \"%s\"."),
- valptr);
- fclose(fp);
- exit(1);
- }
-
- /*
- * Got the direction, now get the width...
- */
-
- while (isspace(*lineptr & 255))
- lineptr ++;
-
- valptr = lineptr;
-
- while (!isspace(*lineptr & 255) && *lineptr)
- lineptr ++;
-
- if (!*lineptr)
- {
- /*
- * Can't have a font without all required values...
- */
-
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Bad font description line \"%s\"."), valptr);
- fclose(fp);
- exit(1);
- }
-
- *lineptr++ = '\0';
-
- if (!strcmp(valptr, "single"))
- fonts->widths[fonts->num_fonts] = 1;
- else if (!strcmp(valptr, "double"))
- fonts->widths[fonts->num_fonts] = 2;
- else
- {
- _cupsLangPrintFilter(stderr, "ERROR", _("Bad text width \"%s\"."),
- valptr);
- fclose(fp);
- exit(1);
- }
-
- /*
- * Get the fonts...
- */
-
- for (i = 0; *lineptr && i < 4; i ++)
- {
- while (isspace(*lineptr & 255))
- lineptr ++;
-
- valptr = lineptr;
-
- while (!isspace(*lineptr & 255) && *lineptr)
- lineptr ++;
-
- if (*lineptr)
- *lineptr++ = '\0';
-
- if (lineptr > valptr)
- {
- if (!cupsArrayFind(fonts->unique, valptr))
- cupsArrayAdd(fonts->unique, _cupsStrAlloc(valptr));
-
- fonts->fonts[fonts->num_fonts][i] = _cupsStrAlloc(valptr);
- }
- }
-
- /*
- * Fill in remaining fonts as needed...
- */
-
- for (j = i; j < 4; j ++)
- fonts->fonts[fonts->num_fonts][j] =
- _cupsStrAlloc(fonts->fonts[fonts->num_fonts][0]);
-
- /*
- * Define the character mappings...
- */
-
- for (i = start, j = fonts->num_fonts * 256; i <= end; i ++, j ++)
- {
- fonts->chars[i] = j;
- fonts->codes[j] = i;
- }
-
- /*
- * Move to the next font, stopping if needed...
- */
-
- fonts->num_fonts ++;
- if (fonts->num_fonts >= 256)
- break;
- }
-
- fclose(fp);
-
- if (cupsArrayCount(fonts->unique) == 0)
- {
- _cupsLangPrintFilter(stderr, "ERROR", _("No fonts in charset file."));
- exit(1);
- }
-
- return (fonts);
-}
-
-
-/*
- * 'psTextUTF8()' - Output UTF-8 text at the current position.
- */
-
-void
-psTextUTF8(ps_text_t *fonts, /* I - Font data */
- float size, /* I - Size in points */
- int style, /* I - Style */
- int align, /* I - Alignment */
- const char *text) /* I - UTF-8 text */
-{
- cups_utf32_t utf32[2048]; /* Temporary buffer */
- int utf32len; /* Number of characters */
-
-
- if (!text)
- {
- puts("");
- return;
- }
-
- if ((utf32len = cupsUTF8ToUTF32(utf32, (cups_utf8_t *)text,
- (int)(sizeof(utf32) / sizeof(utf32[0])))) > 0)
- psTextUTF32(fonts, size, style, align, utf32, utf32len);
-}
-
-
-/*
- * 'psTextUTF32()' - Output UTF-32 text at the current position.
- */
-
-void
-psTextUTF32(ps_text_t *fonts, /* I - Font data */
- float size, /* I - Size in points */
- int style, /* I - Font style */
- int align, /* I - Alignment */
- const cups_utf32_t *text, /* I - UTF-32 text */
- int textlen) /* I - Length of text */
-{
- if (size != fonts->size || style != fonts->style)
- {
- printf("/%s findfont %g scalefont setfont\n", ps_font_names[style], size);
- fonts->size = size;
- fonts->style = style;
- }
-
- putchar('<');
- while (textlen > 0)
- {
- printf("%04x", fonts->chars[*text]);
- text ++;
- textlen --;
- }
-
- if (align == PS_CENTER)
- puts(">showcenter");
- else if (align == PS_RIGHT)
- puts(">showright");
- else
- puts(">showleft");
-}
-
-
-/*
- * End of "$Id: pstext.c 9533 2011-02-16 21:33:17Z mike $".
- */
diff --git a/filter/pstext.h b/filter/pstext.h
deleted file mode 100644
index a8ff4cb2..00000000
--- a/filter/pstext.h
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * "$Id: pstext.h 9042 2010-03-24 00:45:34Z mike $"
- *
- * Common PostScript text definitions for CUPS.
- *
- * Copyright 2008-2010 by Apple Inc.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "common.h"
-#include <cups/transcode.h>
-
-
-/*
- * Constants...
- */
-
-#define PS_NORMAL 0 /* Normal text */
-#define PS_BOLD 1 /* Bold text */
-#define PS_ITALIC 2 /* Italic text */
-#define PS_BOLDITALIC 3 /* Bold italic text */
-
-#define PS_LEFT 1 /* Left-justified text */
-#define PS_CENTER 0 /* Center-justified text */
-#define PS_RIGHT -1 /* Right-justified text */
-
-
-/*
- * Structures...
- */
-
-typedef struct ps_text_s /**** PostScript font data ****/
-{
- char *glyphs[65536]; /* PostScript glyphs for Unicode */
- int num_fonts; /* Number of fonts to use */
- char *fonts[256][4]; /* Fonts to use */
- cups_array_t *unique; /* Unique fonts */
- unsigned short chars[65536], /* 0xffcc (ff = font, cc = char) */
- codes[65536]; /* Unicode glyph mapping to fonts */
- int widths[256], /* Widths of each font */
- directions[256];/* Text directions for each font */
- float size; /* Current text size */
- int style; /* Current text style */
-} ps_text_t;
-
-
-/*
- * Functions...
- */
-
-extern void psTextEmbedFonts(ps_text_t *fonts);
-extern void psTextListFonts(ps_text_t *fonts);
-extern ps_text_t *psTextInitialize(void);
-extern void psTextUTF8(ps_text_t *fonts, float size, int style,
- int align, const char *text);
-extern void psTextUTF32(ps_text_t *fonts, float size, int style,
- int align, const cups_utf32_t *text,
- int textlen);
-
-
-/*
- * End of "$Id: pstext.h 9042 2010-03-24 00:45:34Z mike $".
- */
diff --git a/filter/pstops.c b/filter/pstops.c
index a7bcc079..c0ed32d7 100644
--- a/filter/pstops.c
+++ b/filter/pstops.c
@@ -1,9 +1,9 @@
/*
- * "$Id: pstops.c 9955 2011-09-02 18:14:34Z mike $"
+ * "$Id: pstops.c 10431 2012-04-23 19:19:19Z mike $"
*
* PostScript filter for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1993-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -126,11 +126,9 @@ typedef struct /**** Document information ****/
*ap_media_type, /* AP_FIRSTPAGE_MediaType value */
*ap_page_region, /* AP_FIRSTPAGE_PageRegion value */
*ap_page_size; /* AP_FIRSTPAGE_PageSize value */
- float brightness; /* brightness value */
int collate, /* Collate copies? */
emit_jcl, /* Emit JCL commands? */
- fitplot; /* Fit pages to media */
- float gamma; /* gamma value */
+ fit_to_page; /* Fit pages to media */
const char *input_slot, /* InputSlot value */
*manual_feed, /* ManualFeed value */
*media_color, /* MediaColor value */
@@ -200,10 +198,7 @@ static ssize_t copy_trailer(cups_file_t *fp, pstops_doc_t *doc,
static void do_prolog(pstops_doc_t *doc, ppd_file_t *ppd);
static void do_setup(pstops_doc_t *doc, ppd_file_t *ppd);
static void doc_printf(pstops_doc_t *doc, const char *format, ...)
-#ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 2, 3)))
-#endif /* __GNUC__ */
-;
+ __attribute__ ((__format__ (__printf__, 2, 3)));
static void doc_puts(pstops_doc_t *doc, const char *s);
static void doc_write(pstops_doc_t *doc, const char *s, size_t len);
static void end_nup(pstops_doc_t *doc, int number);
@@ -266,7 +261,7 @@ main(int argc, /* I - Number of command-line args */
if (argc < 6 || argc > 7)
{
_cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options file"),
+ _("Usage: %s job-id user title copies options [file]"),
argv[0]);
return (1);
}
@@ -983,7 +978,7 @@ copy_dsc(cups_file_t *fp, /* I - File to read from */
puts("%%Trailer");
printf("%%%%Pages: %d\n", cupsArrayCount(doc->pages));
- if (doc->number_up > 1 || doc->fitplot)
+ if (doc->number_up > 1 || doc->fit_to_page)
printf("%%%%BoundingBox: %.0f %.0f %.0f %.0f\n",
PageLeft, PageBottom, PageRight, PageTop);
else
@@ -1387,7 +1382,7 @@ copy_page(cups_file_t *fp, /* I - File to read from */
memcpy(bounding_box, doc->bounding_box,
sizeof(bounding_box));
}
- else if (doc->number_up == 1 && !doc->fitplot && Orientation)
+ else if (doc->number_up == 1 && !doc->fit_to_page && Orientation)
{
int temp_bbox[4]; /* Temporary bounding box */
@@ -1485,7 +1480,7 @@ copy_page(cups_file_t *fp, /* I - File to read from */
* %%IncludeFeature: *MainKeyword OptionKeyword
*/
- if (doc->number_up == 1 &&!doc->fitplot)
+ if (doc->number_up == 1 &&!doc->fit_to_page)
pageinfo->num_options = include_feature(ppd, line,
pageinfo->num_options,
&(pageinfo->options));
@@ -1562,14 +1557,14 @@ copy_page(cups_file_t *fp, /* I - File to read from */
{
feature = 1;
- if (doc->number_up > 1 || doc->fitplot)
+ if (doc->number_up > 1 || doc->fit_to_page)
continue;
}
else if (!strncmp(line, "%%EndFeature", 12))
{
feature = 0;
- if (doc->number_up > 1 || doc->fitplot)
+ if (doc->number_up > 1 || doc->fit_to_page)
continue;
}
else if (!strncmp(line, "%%IncludeFeature:", 17))
@@ -1585,7 +1580,7 @@ copy_page(cups_file_t *fp, /* I - File to read from */
if (line[0] != '%' && !feature)
break;
- if (!feature || (doc->number_up == 1 && !doc->fitplot))
+ if (!feature || (doc->number_up == 1 && !doc->fit_to_page))
doc_write(doc, line, linelen);
}
@@ -1808,7 +1803,7 @@ copy_setup(cups_file_t *fp, /* I - File to read from */
* %%IncludeFeature: *MainKeyword OptionKeyword
*/
- if (doc->number_up == 1 && !doc->fitplot)
+ if (doc->number_up == 1 && !doc->fit_to_page)
num_options = include_feature(ppd, line, num_options, &options);
}
else if (strncmp(line, "%%BeginSetup", 12))
@@ -1873,7 +1868,7 @@ copy_trailer(cups_file_t *fp, /* I - File to read from */
fprintf(stderr, "DEBUG: Wrote %d pages...\n", number);
printf("%%%%Pages: %d\n", number);
- if (doc->number_up > 1 || doc->fitplot)
+ if (doc->number_up > 1 || doc->fit_to_page)
printf("%%%%BoundingBox: %.0f %.0f %.0f %.0f\n",
PageLeft, PageBottom, PageRight, PageTop);
else
@@ -1991,16 +1986,6 @@ do_setup(pstops_doc_t *doc, /* I - Document information */
}
/*
- * Changes to the transfer function must be made AFTER any
- * setpagedevice code...
- */
-
- if (doc->gamma != 1.0f || doc->brightness != 1.0f)
- doc_printf(doc, "{ neg 1 add dup 0 lt { pop 1 } { %.3f exp neg 1 add } "
- "ifelse %.3f mul } bind settransfer\n",
- doc->gamma, doc->brightness);
-
- /*
* Make sure we have rectclip and rectstroke procedures of some sort...
*/
@@ -2345,6 +2330,7 @@ set_pstops_options(
ppd_option_t *option; /* PPD option */
ppd_choice_t *choice; /* PPD choice */
const char *content_type; /* Original content type */
+ int max_copies; /* Maximum number of copies supported */
/*
@@ -2402,31 +2388,6 @@ set_pstops_options(
doc->page_size = choice->choice;
/*
- * brightness
- */
-
- if ((val = cupsGetOption("brightness", num_options, options)) != NULL)
- {
- /*
- * Get brightness value from 10 to 1000.
- */
-
- intval = atoi(val);
-
- if (intval < 10 || intval > 1000)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Unsupported brightness value %s, using "
- "brightness=100."), val);
- doc->brightness = 1.0f;
- }
- else
- doc->brightness = intval * 0.01f;
- }
- else
- doc->brightness = 1.0f;
-
- /*
* collate, multiple-document-handling
*/
@@ -2461,7 +2422,7 @@ set_pstops_options(
doc->emit_jcl = 1;
/*
- * fitplot/fit-to-page/ipp-attribute-fidelity
+ * fit-to-page/ipp-attribute-fidelity
*
* (Only for original PostScript content)
*/
@@ -2471,44 +2432,16 @@ set_pstops_options(
if (!_cups_strcasecmp(content_type, "application/postscript"))
{
- if ((val = cupsGetOption("fitplot", num_options, options)) != NULL &&
+ if ((val = cupsGetOption("fit-to-page", num_options, options)) != NULL &&
!_cups_strcasecmp(val, "true"))
- doc->fitplot = 1;
- else if ((val = cupsGetOption("fit-to-page", num_options, options)) != NULL &&
- !_cups_strcasecmp(val, "true"))
- doc->fitplot = 1;
+ doc->fit_to_page = 1;
else if ((val = cupsGetOption("ipp-attribute-fidelity", num_options,
options)) != NULL &&
!_cups_strcasecmp(val, "true"))
- doc->fitplot = 1;
+ doc->fit_to_page = 1;
}
/*
- * gamma
- */
-
- if ((val = cupsGetOption("gamma", num_options, options)) != NULL)
- {
- /*
- * Get gamma value from 1 to 10000...
- */
-
- intval = atoi(val);
-
- if (intval < 1 || intval > 10000)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Unsupported gamma value %s, using gamma=1000."),
- val);
- doc->gamma = 1.0f;
- }
- else
- doc->gamma = intval * 0.001f;
- }
- else
- doc->gamma = 1.0f;
-
- /*
* mirror/MirrorPrint
*/
@@ -2657,7 +2590,16 @@ set_pstops_options(
* Now figure out if we have to force collated copies, etc.
*/
- if (ppd && ppd->manual_copies && Duplex && doc->copies > 1)
+ if ((attr = ppdFindAttr(ppd, "cupsMaxCopies", NULL)) != NULL)
+ max_copies = atoi(attr->value);
+ else if (ppd && ppd->manual_copies)
+ max_copies = 1;
+ else
+ max_copies = 9999;
+
+ if (doc->copies > max_copies)
+ doc->collate = 1;
+ else if (ppd && ppd->manual_copies && Duplex && doc->copies > 1)
{
/*
* Force collated copies when printing a duplexed document to
@@ -2681,7 +2623,8 @@ set_pstops_options(
doc->slow_collate = 1;
- if ((choice = ppdFindMarkedChoice(ppd, "Collate")) != NULL &&
+ if (doc->copies <= max_copies &&
+ (choice = ppdFindMarkedChoice(ppd, "Collate")) != NULL &&
!_cups_strcasecmp(choice->choice, "True"))
{
/*
@@ -2838,7 +2781,7 @@ start_nup(pstops_doc_t *doc, /* I - Document information */
pagew = PageRight - PageLeft;
pagel = PageTop - PageBottom;
- if (doc->fitplot)
+ if (doc->fit_to_page)
{
bboxx = bounding_box[0];
bboxy = bounding_box[1];
@@ -2885,18 +2828,18 @@ start_nup(pstops_doc_t *doc, /* I - Document information */
doc_printf(doc, "%.1f 0.0 translate -1 1 scale\n", PageWidth);
/*
- * Offset and scale as necessary for fitplot/fit-to-page/number-up...
+ * Offset and scale as necessary for fit_to_page/fit-to-page/number-up...
*/
if (Duplex && doc->number_up > 1 && ((number / doc->number_up) & 1))
doc_printf(doc, "%.1f %.1f translate\n", PageWidth - PageRight, PageBottom);
- else if (doc->number_up > 1 || doc->fitplot)
+ else if (doc->number_up > 1 || doc->fit_to_page)
doc_printf(doc, "%.1f %.1f translate\n", PageLeft, PageBottom);
switch (doc->number_up)
{
default :
- if (doc->fitplot)
+ if (doc->fit_to_page)
{
w = pagew;
l = w * bboxl / bboxw;
@@ -3222,7 +3165,7 @@ start_nup(pstops_doc_t *doc, /* I - Document information */
doc_puts(doc, "grestore\n");
}
- if (doc->fitplot)
+ if (doc->fit_to_page)
{
/*
* Offset the page by its bounding box...
@@ -3232,7 +3175,7 @@ start_nup(pstops_doc_t *doc, /* I - Document information */
-bounding_box[1]);
}
- if (doc->fitplot || doc->number_up > 1)
+ if (doc->fit_to_page || doc->number_up > 1)
{
/*
* Clip the page to the page's bounding box...
@@ -3486,5 +3429,5 @@ write_options(
/*
- * End of "$Id: pstops.c 9955 2011-09-02 18:14:34Z mike $".
+ * End of "$Id: pstops.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/filter/raster-driver.header b/filter/raster-driver.header
index e85c2a99..289bffb4 100644
--- a/filter/raster-driver.header
+++ b/filter/raster-driver.header
@@ -1,9 +1,9 @@
<!--
- "$Id: raster-driver.header 9344 2010-10-26 23:45:18Z mike $"
+ "$Id: raster-driver.header 10424 2012-04-23 17:26:57Z mike $"
Raster printer driver documentation for CUPS.
- Copyright 2007-2010 by Apple Inc.
+ Copyright 2007-2012 by Apple Inc.
Copyright 1997-2007 by Easy Software Products.
These coded instructions, statements, and computer programs are the
@@ -15,7 +15,7 @@
<h1 class='title'>Developing Raster Printer Drivers</h1>
-<p>This document describes how to develop printer drivers for raster printers. Topics include: <a href='#BASICS'>printer driver basics</a>, <a href='#CREATE'>creating new PPD files</a>, <a href='#FILTERS'>using filters</a>, <a href='#COLOR'>implementing color management</a>, and <a href='#MACOSX'>adding Mac OS X features</a>.</p>
+<p>This document describes how to develop printer drivers for raster printers. Topics include: <a href='#BASICS'>printer driver basics</a>, <a href='#CREATE'>creating new PPD files</a>, <a href='#FILTERS'>using filters</a>, <a href='#COLOR'>implementing color management</a>, and <a href='#MACOSX'>adding OS X features</a>.</p>
<div class='summary'><table summary='General Information'>
<tbody>
diff --git a/filter/raster-driver.shtml b/filter/raster-driver.shtml
index 1c0c32a9..f56982a7 100644
--- a/filter/raster-driver.shtml
+++ b/filter/raster-driver.shtml
@@ -172,9 +172,9 @@
<p>The options used for profile selection can be customized using the <tt>cupsICCQualifier2</tt> and <tt>cupsICCQualifier3</tt> attributes.</p>
-<h3><span class='info'>Since Mac OS X 10.5</span>Custom Color Matching Support</h3>
+<h3><span class='info'>Since OS X 10.5</span>Custom Color Matching Support</h3>
-<p>Mac OS X printer drivers that are based on an existing standard RGB colorspace can tell the system to use the corresponding colorspace instead of an arbitrary ICC color profile when doing color management. The <a href='#APCustom'><tt>APSupportsCustomColorMatching</tt></a> and <tt>APDefaultCustomColorMatchingProfile</tt> attributes can be used to enable this mode:</p>
+<p>OS X printer drivers that are based on an existing standard RGB colorspace can tell the system to use the corresponding colorspace instead of an arbitrary ICC color profile when doing color management. The <a href='#APCustom'><tt>APSupportsCustomColorMatching</tt></a> and <tt>APDefaultCustomColorMatchingProfile</tt> attributes can be used to enable this mode:</p>
<pre class='example'>
<a href='ref-ppdcfile.html#Attribute'>Attribute</a> APSupportsCustomColorMatching "" true
@@ -182,9 +182,9 @@
</pre>
-<h2 class='title'><a name='MACOSX'>Adding Mac OS X Features</a></h2>
+<h2 class='title'><a name='MACOSX'>Adding OS X Features</a></h2>
-<p>Mac OS X printer drivers can provide <a href='spec-ppd.html#MACOSX'>additional attributes</a> to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:</p>
+<p>OS X printer drivers can provide <a href='spec-ppd.html#MACOSX'>additional attributes</a> to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:</p>
<pre class='example'>
<a href='ref-ppdcfile.html#Attribute'>Attribute</a> APDialogExtension "" /Library/Printers/Vendor/filename.plugin
diff --git a/filter/raster.c b/filter/raster.c
index 4ab189bf..3e979fe6 100644
--- a/filter/raster.c
+++ b/filter/raster.c
@@ -1,9 +1,9 @@
/*
- * "$Id: raster.c 10006 2011-09-20 18:36:33Z mike $"
+ * "$Id: raster.c 10424 2012-04-23 17:26:57Z mike $"
*
* Raster file routines for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* This file is part of the CUPS Imaging library.
@@ -45,13 +45,7 @@
* Include necessary headers...
*/
-#include "image-private.h"
-#if defined(WIN32) || defined(__EMX__)
-# include <io.h>
-# include <winsock2.h> /* for htonl() definition */
-#else
-# include <unistd.h>
-#endif /* WIN32 || __EMX__ */
+#include <cups/raster-private.h>
/*
@@ -300,7 +294,7 @@ cupsRasterReadHeader(
* 'cupsRasterReadHeader2()' - Read a raster page header and store it in a
* version 2 page header structure.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
unsigned /* O - 1 on success, 0 on failure/end-of-file */
@@ -510,7 +504,7 @@ cupsRasterReadPixels(cups_raster_t *r, /* I - Raster stream */
* Copy fragment from buffer...
*/
- if ((unsigned)(bytes = r->pend - r->pcurrent) > remaining)
+ if ((unsigned)(bytes = (int)(r->pend - r->pcurrent)) > remaining)
bytes = remaining;
memcpy(p, r->pcurrent, bytes);
@@ -654,7 +648,7 @@ cupsRasterWriteHeader(
*
* The page header can be initialized using @link cupsRasterInterpretPPD@.
*
- * @since CUPS 1.2/Mac OS X 10.5@
+ * @since CUPS 1.2/OS X 10.5@
*/
unsigned /* O - 1 on success, 0 on failure */
@@ -836,8 +830,8 @@ cupsRasterWritePixels(cups_raster_t *r, /* I - Raster stream */
* Figure out the number of remaining bytes on the current line...
*/
- if ((bytes = remaining) > (r->pend - r->pcurrent))
- bytes = r->pend - r->pcurrent;
+ if ((bytes = remaining) > (int)(r->pend - r->pcurrent))
+ bytes = (int)(r->pend - r->pcurrent);
if (r->count > 0)
{
@@ -1053,8 +1047,10 @@ cups_raster_read(cups_raster_t *r, /* I - Raster stream */
if ((size_t)count > r->bufsize)
{
- int offset = r->bufptr - r->buffer; /* Offset to current start of buffer */
- int end = r->bufend - r->buffer; /* Offset to current end of buffer */
+ int offset = (int)(r->bufptr - r->buffer);
+ /* Offset to current start of buffer */
+ int end = (int)(r->bufend - r->buffer);
+ /* Offset to current end of buffer */
unsigned char *rptr; /* Pointer in read buffer */
if (r->buffer)
@@ -1075,7 +1071,7 @@ cups_raster_read(cups_raster_t *r, /* I - Raster stream */
* Loop until we have read everything...
*/
- for (total = 0, remaining = r->bufend - r->bufptr;
+ for (total = 0, remaining = (int)(r->bufend - r->bufptr);
total < bytes;
total += count, buf += count)
{
@@ -1393,7 +1389,7 @@ cups_raster_write(
}
}
- return (cups_raster_io(r, r->buffer, wptr - r->buffer));
+ return (cups_raster_io(r, r->buffer, (int)(wptr - r->buffer)));
}
@@ -1411,7 +1407,11 @@ cups_read_fd(void *ctx, /* I - File descriptor as pointer */
ssize_t count; /* Number of bytes read */
+#ifdef WIN32 /* Sigh */
+ while ((count = read(fd, buf, (unsigned)bytes)) < 0)
+#else
while ((count = read(fd, buf, bytes)) < 0)
+#endif /* WIN32 */
if (errno != EINTR && errno != EAGAIN)
return (-1);
@@ -1459,7 +1459,11 @@ cups_write_fd(void *ctx, /* I - File descriptor pointer */
ssize_t count; /* Number of bytes written */
+#ifdef WIN32 /* Sigh */
+ while ((count = write(fd, buf, (unsigned)bytes)) < 0)
+#else
while ((count = write(fd, buf, bytes)) < 0)
+#endif /* WIN32 */
if (errno != EINTR && errno != EAGAIN)
return (-1);
@@ -1468,5 +1472,5 @@ cups_write_fd(void *ctx, /* I - File descriptor pointer */
/*
- * End of "$Id: raster.c 10006 2011-09-20 18:36:33Z mike $".
+ * End of "$Id: raster.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/filter/rastertoepson.c b/filter/rastertoepson.c
index 533c7ebb..23d326fb 100644
--- a/filter/rastertoepson.c
+++ b/filter/rastertoepson.c
@@ -1,9 +1,9 @@
/*
- * "$Id: rastertoepson.c 9384 2010-11-22 07:06:39Z mike $"
+ * "$Id: rastertoepson.c 10430 2012-04-23 18:07:59Z mike $"
*
* EPSON ESC/P and ESC/P2 filter for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1993-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -1148,13 +1148,10 @@ main(int argc, /* I - Number of command-line arguments */
return (1);
}
else
- {
- _cupsLangPrintFilter(stderr, "INFO", _("Ready to print."));
return (0);
- }
}
/*
- * End of "$Id: rastertoepson.c 9384 2010-11-22 07:06:39Z mike $".
+ * End of "$Id: rastertoepson.c 10430 2012-04-23 18:07:59Z mike $".
*/
diff --git a/filter/rastertohp.c b/filter/rastertohp.c
index af9583bf..14f7b3ec 100644
--- a/filter/rastertohp.c
+++ b/filter/rastertohp.c
@@ -1,9 +1,9 @@
/*
- * "$Id: rastertohp.c 9384 2010-11-22 07:06:39Z mike $"
+ * "$Id: rastertohp.c 10430 2012-04-23 18:07:59Z mike $"
*
* Hewlett-Packard Page Control Language filter for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1993-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -877,13 +877,10 @@ main(int argc, /* I - Number of command-line arguments */
return (1);
}
else
- {
- _cupsLangPrintFilter(stderr, "INFO", _("Ready to print."));
return (0);
- }
}
/*
- * End of "$Id: rastertohp.c 9384 2010-11-22 07:06:39Z mike $".
+ * End of "$Id: rastertohp.c 10430 2012-04-23 18:07:59Z mike $".
*/
diff --git a/filter/rastertolabel.c b/filter/rastertolabel.c
index e413d7d2..13ecd5bd 100644
--- a/filter/rastertolabel.c
+++ b/filter/rastertolabel.c
@@ -1,9 +1,9 @@
/*
- * "$Id: rastertolabel.c 9774 2011-05-12 06:15:14Z mike $"
+ * "$Id: rastertolabel.c 10430 2012-04-23 18:07:59Z mike $"
*
* Label printer filter for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2001-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -1303,13 +1303,10 @@ main(int argc, /* I - Number of command-line arguments */
return (1);
}
else
- {
- _cupsLangPrintFilter(stderr, "INFO", _("Ready to print."));
return (0);
- }
}
/*
- * End of "$Id: rastertolabel.c 9774 2011-05-12 06:15:14Z mike $".
+ * End of "$Id: rastertolabel.c 10430 2012-04-23 18:07:59Z mike $".
*/
diff --git a/filter/rastertopwg.c b/filter/rastertopwg.c
index d4d67cd5..99837021 100644
--- a/filter/rastertopwg.c
+++ b/filter/rastertopwg.c
@@ -1,5 +1,5 @@
/*
- * "$Id: rastertopwg.c 10006 2011-09-20 18:36:33Z mike $"
+ * "$Id: rastertopwg.c 10005 2011-09-20 18:36:23Z mike $"
*
* CUPS raster to PWG raster format filter for CUPS.
*
@@ -457,5 +457,5 @@ main(int argc, /* I - Number of command-line args */
/*
- * End of "$Id: rastertopwg.c 10006 2011-09-20 18:36:33Z mike $".
+ * End of "$Id: rastertopwg.c 10005 2011-09-20 18:36:23Z mike $".
*/
diff --git a/filter/spec-ppd.shtml b/filter/spec-ppd.shtml
index 670e8991..0f54d378 100644
--- a/filter/spec-ppd.shtml
+++ b/filter/spec-ppd.shtml
@@ -30,11 +30,11 @@ LINE-END = CR / LF / CR LF
<p>CUPS supports several methods of auto-configuration via PPD keywords.</p>
-<h3><span class='info'>Mac OS X 10.5</span><a name='APAutoSetupTool'>APAutoSetupTool</a></h3>
+<h3><span class='info'>OS X 10.5</span><a name='APAutoSetupTool'>APAutoSetupTool</a></h3>
<p class='summary'>*APAutoSetupTool: "/LibraryPrinters/vendor/filename"</p>
-<p>This Mac OS X keyword defines a program that sets the default option choices. It is run when a printer is added from the <var>Add Printer</var> window or the <var>Nearby Printers</var> list in the <var>Print</var> dialog.</p>
+<p>This OS X keyword defines a program that sets the default option choices. It is run when a printer is added from the <var>Add Printer</var> window or the <var>Nearby Printers</var> list in the <var>Print</var> dialog.</p>
<p>The program is provided with two arguments: the printer's device URI and the PPD file to be used for the printer. The program must write an updated PPD file to stdout.</p>
@@ -45,7 +45,7 @@ LINE-END = CR / LF / CR LF
*APAutoSetupTool: "/Library/Printers/vendor/Tools/autosetuptool"
</pre>
-<h3><span class='info'>Mac OS X 10.2/CUPS 1.4</span><a name='QUERYKEYWORD'>?MainKeyword</a></h3>
+<h3><span class='info'>OS X 10.2/CUPS 1.4</span><a name='QUERYKEYWORD'>?MainKeyword</a></h3>
<p class='summary'>*?<i>MainKeyword</i>: "<br>
PostScript query code that writes a message using the = operator...<br>
@@ -74,7 +74,7 @@ LINE-END = CR / LF / CR LF
*CloseUI: OptionDuplex
</pre>
-<h3><span class='info'>Mac OS X 10.4/CUPS 1.5</span><a name='OID'>OIDMainKeyword</a></h3>
+<h3><span class='info'>OS X 10.4/CUPS 1.5</span><a name='OID'>OIDMainKeyword</a></h3>
<p class='summary'>*?OID<i>MainKeyword</i>: ".n.n.n..."<br>
*OID<i>MainKeyword</i> <i>OptionKeyword1</i>: "value"<br>
@@ -109,7 +109,7 @@ LINE-END = CR / LF / CR LF
<p class='summary'>*cupsColorProfile Resolution/MediaType: "density gamma m00 m01 m02 m10 m11 m12 m20 m21 m22"</p>
-<p>This string keyword specifies an sRGB-based color profile consisting of gamma and density controls and a 3x3 CMY color transform matrix. <em>This keyword is not supported on Mac OS X.</em></p>
+<p>This string keyword specifies an sRGB-based color profile consisting of gamma and density controls and a 3x3 CMY color transform matrix. <em>This keyword is not supported on OS X.</em></p>
<p>The <i>Resolution</i> and <i>MediaType</i> values may be "-" to act as a wildcard. Otherwise they must match one of the <tt>Resolution</tt> or <tt>MediaType</tt> option keywords defined in the PPD file.</p>
@@ -142,7 +142,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</pre>
-<h3><span class='info'>Mac OS X 10.3/CUPS 1.2</span><a name='cupsICCProfile'>cupsICCProfile</a></h3>
+<h3><span class='info'>OS X 10.3/CUPS 1.2</span><a name='cupsICCProfile'>cupsICCProfile</a></h3>
<p class='summary'>*cupsICCProfile ColorModel.MediaType.Resolution/Description: "filename"</p>
@@ -181,22 +181,22 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*cupsICCQualifier3: Resolution
</pre>
-<h3><span class='info'>Mac OS X 10.4</span><a name='APCustom'>Custom Color Matching Support</a></h3>
+<h3><span class='info'>OS X 10.4</span><a name='APCustom'>Custom Color Matching Support</a></h3>
<p class='summary'>*<a href='#APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a>: true<br>
*<a href='#APCustomColorMatchingName'>APCustomColorMatchingName</a> name/text: ""<br>
*<a href='#APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a>: profile<br>
*<a href='#APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a>: profile</p>
-<p>These keywords tell the Mac OS X raster filters that the printer driver provides its own custom color matching and that generic color profiles should be used when generating 1-, 3-, and 4-component raster data as requested by the driver. The <tt>APCustomColorMatchingProfile</tt> and <tt>APDefaultColorMatchingProfile</tt> keywords specify alternate color profiles (sRGB or AdobeRGB) to use for 3-color (RGB) raster data.</p>
+<p>These keywords tell the OS X raster filters that the printer driver provides its own custom color matching and that generic color profiles should be used when generating 1-, 3-, and 4-component raster data as requested by the driver. The <tt>APCustomColorMatchingProfile</tt> and <tt>APDefaultColorMatchingProfile</tt> keywords specify alternate color profiles (sRGB or AdobeRGB) to use for 3-color (RGB) raster data.</p>
<blockquote><b>Note:</b>
-<p>Prior to Mac OS X 10.6, the default RGB color space was Apple's "GenericRGB". The new default in Mac OS X 10.6 and later is "sRGB". For more information, see <a href="http://support.apple.com/kb/HT3712">"Mac OS X v10.6: About gamma 2.2"</a> on Apple's support site.</p>
+<p>Prior to OS X 10.6, the default RGB color space was Apple's "GenericRGB". The new default in OS X 10.6 and later is "sRGB". For more information, see <a href="http://support.apple.com/kb/HT3712">"OS X v10.6: About gamma 2.2"</a> on Apple's support site.</p>
</blockquote>
-<h4><span class='info'>Mac OS X 10.5</span><a name='APCustomColorMatchingName'>APCustomColorMatchingName</a></h4>
+<h4><span class='info'>OS X 10.5</span><a name='APCustomColorMatchingName'>APCustomColorMatchingName</a></h4>
<p class='summary'>*APCustomColorMatchingName name/text: ""</p>
@@ -210,7 +210,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*fr.APCustomColorMatchingName name/La AcmeColor(tm): ""
</pre>
-<h4><span class='info'>Mac OS X 10.5</span><a name='APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a></h4>
+<h4><span class='info'>OS X 10.5</span><a name='APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a></h4>
<p class='summary'>*APCustomColorMatchingProfile: name</p>
@@ -232,7 +232,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*APCustomColorMatchingProfile: AdobeRGB
</pre>
-<h4><span class='info'>Mac OS X 10.5</span><a name='APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a></h4>
+<h4><span class='info'>OS X 10.5</span><a name='APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a></h4>
<p class='summary'>*APDefaultCustomColorMatchingProfile: name</p>
@@ -246,7 +246,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*APDefaultCustomColorMatchingProfile: sRGB
</pre>
-<h4><span class='info'>Mac OS X 10.4</span><a name='APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a></h4>
+<h4><span class='info'>OS X 10.4</span><a name='APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a></h4>
<p class='summary'>*APSupportsCustomColorMatching: boolean</p>
@@ -282,7 +282,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</blockquote>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsUIConstraints'>cupsUIConstraints</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsUIConstraints'>cupsUIConstraints</a></h3>
<p class='summary'>*cupsUIConstraints resolver: "*Keyword1 *Keyword2 ..."<br>
*cupsUIConstraints resolver: "*Keyword1 OptionKeyword1 *Keyword2 ..."<br>
@@ -312,7 +312,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*cupsUIConstraints photo: "*OutputMode Photo *MediaType Transparency *Resolution 1200dpi"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsUIResolver'>cupsUIResolver</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsUIResolver'>cupsUIResolver</a></h3>
<p class='summary'>*cupsUIResolver resolver: "*Keyword1 OptionKeyword1 *Keyword2 OptionKeyword2 ..."</p>
@@ -414,7 +414,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</pre>
-<h2 class='title'><a name='OPTIONS'><span class="info">CUPS 1.3/Mac OS X 10.6</span>Custom Options</a></h2>
+<h2 class='title'><a name='OPTIONS'><span class="info">CUPS 1.3/OS X 10.6</span>Custom Options</a></h2>
<p>CUPS supports custom options using an extension of the <tt>CustomPageSize</tt> and <tt>ParamCustomPageSize</tt> syntax:</p>
@@ -872,7 +872,7 @@ PRE B {
<p>The CUPS media keywords allow drivers to specify alternate custom page
size limits based on up to two options.</p>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMediaQualifier2'>cupsMediaQualifier2</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMediaQualifier2'>cupsMediaQualifier2</a></h3>
<p class='summary'>*cupsMediaQualifier2: MainKeyword</p>
@@ -891,7 +891,7 @@ custom page size limits.</p>
*cupsMinSize ..Photo: "300 300"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMediaQualifier3'>cupsMediaQualifier3</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMediaQualifier3'>cupsMediaQualifier3</a></h3>
<p class='summary'>*cupsMediaQualifier3: MainKeyword</p>
@@ -910,7 +910,7 @@ custom page size limits.</p>
*cupsMinSize ..Photo: "300 300"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMinSize'>cupsMinSize</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMinSize'>cupsMinSize</a></h3>
<p class='summary'>*cupsMinSize .Qualifier2.Qualifier3: "width length"<br>
*cupsMinSize .Qualifier2.: "width length"<br>
@@ -933,7 +933,7 @@ are used to identify options to use for matching.</p>
*cupsMinSize ..Photo: "300 300"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMaxSize'>cupsMaxSize</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMaxSize'>cupsMaxSize</a></h3>
<p class='summary'>*cupsMaxSize .Qualifier2.Qualifier3: "width length"<br>
*cupsMaxSize .Qualifier2.: "width length"<br>
@@ -957,9 +957,24 @@ are used to identify options to use for matching.</p>
</pre>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsPageSizeCategory'>cupsPageSizeCategory</a></h3>
+
+<p class="summary">*cupsPageSizeCategory name/text: "name name2 ... nameN"</p>
+
+<p>This keyword lists related paper size names that should be grouped together in the Print or Page Setup dialogs. The "name" portion of the keyword specifies the root/default size for the grouping. On OS X the grouped paper sizes are shown in a submenu of the main paper size. When omitted, sizes with the same dimensions are automatically grouped together, for example "Letter" and "Letter.Borderless".</p>
+
+<p>Example:</p>
+
+<pre class="command">
+<em>*% Specify grouping of borderless/non-borderless sizes</em>
+*cupsPageSizeCategory Letter/US Letter: "Letter Letter.Borderless"
+*cupsPageSizeCategory A4/A4: "A4 A4.Borderless"
+</pre>
+
+
<h2 class='title'><a name='ATTRIBUTES'>General Attributes</a></h2>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsBackSide'>cupsBackSide</a></h3>
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsBackSide'>cupsBackSide</a></h3>
<p class='summary'>*cupsBackSide: keyword</p>
@@ -1035,7 +1050,7 @@ will be ignored.</p>
</table>
</div>
-<p><em>* - Not supported in Mac OS X 10.5.x and earlier</em></p>
+<p><em>* - Not supported in OS X 10.5.x and earlier</em></p>
<div class='figure'><table summary='Back side images'>
<caption>Figure 1: Back side images</caption>
@@ -1055,7 +1070,7 @@ will be ignored.</p>
<p>Also see the related <a href='#APDuplexRequiresFlippedMargin'><tt>APDuplexRequiresFlippedMargin</tt></a>
keyword.</p>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsCommands'>cupsCommands</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsCommands'>cupsCommands</a></h3>
<p class='summary'>*cupsCommands: "name name2 ... nameN"</p>
@@ -1071,7 +1086,7 @@ by whitespace.</p>
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsEvenDuplex'>cupsEvenDuplex</a></h3>
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsEvenDuplex'>cupsEvenDuplex</a></h3>
<p class='summary'>*cupsEvenDuplex: boolean</p>
@@ -1149,21 +1164,21 @@ the special filter program "-" may be specified.</p>
<p class='summary'>*cupsFlipDuplex: boolean</p>
-<p>Due to implementation differences between Mac OS X and Ghostscript,
+<p>Due to implementation differences between OS X and Ghostscript,
the <tt>cupsFlipDuplex</tt> keyword is deprecated. Instead, use
the <a href='#cupsBackSide'><tt>cupsBackSide</tt></a> keyword to specify
the coordinate system (pixel layout) of the page data on the back side of
duplex pages.</p>
<p>The value <code>true</code> maps to a <tt>cupsBackSide</tt> value
-of <code>Rotated</code> on Mac OS X and <code>Flipped</code> with
+of <code>Rotated</code> on OS X and <code>Flipped</code> with
Ghostscript.</p>
<p>The default value is <code>false</code>.</p>
<blockquote><b>Note:</b>
-<p>Mac OS X drivers that previously used
+<p>OS X drivers that previously used
<tt>cupsFlipDuplex</tt> may wish to provide both the old and
new keywords for maximum compatibility, for example:</p>
@@ -1180,7 +1195,7 @@ Ghostscript can use:</p>
*cupsFlipDuplex: true
</pre></blockquote>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsIPPFinishings'>cupsIPPFinishings</a></h3>
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsIPPFinishings'>cupsIPPFinishings</a></h3>
<p class='summary'>*cupsIPPFinishings number/text: "*Option Choice ..."</p>
@@ -1196,7 +1211,7 @@ values to PPD options and choices.</p>
*cupsIPPFinishings 21/staple-bottom-left: "*StapleLocation SingleLandscape"
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsIPPReason'>cupsIPPReason</a></h3>
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsIPPReason'>cupsIPPReason</a></h3>
<p class='summary'>*cupsIPPReason reason/Reason Text: "optional URIs"</p>
@@ -1249,7 +1264,7 @@ http://www.vendor.com/help"
*cupsIPPSupplies: False
</pre>
-<h3><span class='info'>CUPS 1.2/Mac OS X 10.5</span><a name='cupsLanguages'>cupsLanguages</a></h3>
+<h3><span class='info'>CUPS 1.2/OS X 10.5</span><a name='cupsLanguages'>cupsLanguages</a></h3>
<p class='summary'>*cupsLanguages: "locale list"</p>
@@ -1279,7 +1294,7 @@ hardware. The default value is <code>false</code>.</p>
*cupsManualCopies: true
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMarkerName'>cupsMarkerName</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMarkerName'>cupsMarkerName</a></h3>
<p class='summary'>*cupsMarkerName/Name Text: ""</p>
@@ -1293,7 +1308,7 @@ generated by the driver to human readable text.</p>
*cupsMarkerName cyanToner/Cyan Toner: ""
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMarkerNotice'>cupsMarkerNotice</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsMarkerNotice'>cupsMarkerNotice</a></h3>
<p class='summary'>*cupsMarkerNotice: "disclaimer text"</p>
@@ -1307,6 +1322,19 @@ are approximate".</p>
*cupsMarkerNotice: "Supply levels are approximate."
</pre>
+<h3><span class='info'>CUPS 1.6/OS X 10.8</span><a name='cupsMaxCopies'>cupsMaxCopies</a></h3>
+
+<p class='summary'>*cupsMaxCopies: integer</p>
+
+<p>This integer keyword notifies the filters that the destination printer supports up to N copies in hardware. The default value is <code>9999</code>.</p>
+
+<p>Example:</p>
+
+<pre class='command'>
+<em>*% Tell the RIP filters we can do up to 99 copies</em>
+*cupsMaxCopies: 99
+</pre>
+
<h3><a name='cupsModelNumber'>cupsModelNumber</a></h3>
<p class='summary'>*cupsModelNumber: number</p>
@@ -1322,7 +1350,8 @@ the output for a specific model of printer.</p>
*cupsModelNumber: 1234
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsPJLCharset'>cupsPJLCharset</a></h3>
+
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsPJLCharset'>cupsPJLCharset</a></h3>
<p class='summary'>*cupsPJLCharset: "ISO character set name"</p>
@@ -1337,7 +1366,7 @@ assumed.</p>
*cupsPJLCharset: "UTF-8"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsPJLDisplay'>cupsPJLDisplay</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsPJLDisplay'>cupsPJLDisplay</a></h3>
<p class='summary'>*cupsPJLDisplay: "what"</p>
@@ -1356,7 +1385,7 @@ to use "@PJL RDYMSG DISPLAY". The default is "job".</p>
*cupsPJLDisplay: "none"
</pre>
-<h3><span class='info'>CUPS 1.2/Mac OS X 10.5</span><a name='cupsPortMonitor'>cupsPortMonitor</a></h3>
+<h3><span class='info'>CUPS 1.2/OS X 10.5</span><a name='cupsPortMonitor'>cupsPortMonitor</a></h3>
<p class='summary'>*cupsPortMonitor urischeme/Descriptive Text: "port monitor"</p>
@@ -1388,7 +1417,7 @@ to disable the port monitor for the given URI scheme.</p>
*cupsPortMonitor usb/USB Status Monitor: "epson-usb"
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsPreFilter'>cupsPreFilter</a></h3>
+<h3><span class='info'>CUPS 1.3/OS X 10.5</span><a name='cupsPreFilter'>cupsPreFilter</a></h3>
<p class='summary'>*cupsPreFilter: "source/type cost program"</p>
@@ -1447,7 +1476,7 @@ before the filter that accepts the given MIME type.</p>
*cupsSingleFile: True
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsSNMPSupplies'>cupsSNMPSupplies</a></h3>
+<h3><span class='info'>CUPS 1.4/OS X 10.6</span><a name='cupsSNMPSupplies'>cupsSNMPSupplies</a></h3>
<p class='summary'>*cupsSNMPSupplies: boolean</p>
@@ -1468,7 +1497,7 @@ the standard SNMP Printer MIB OIDs for supply levels. The default value is
<p>This required keyword describes which version of the CUPS
PPD file extensions was used. Currently it must be the string
-"1.0", "1.1", "1.2", or "1.3".</p>
+"1.0", "1.1", "1.2", "1.3", "1.4", "1.5", or "1.6".</p>
<p>Example:</p>
@@ -1478,9 +1507,23 @@ PPD file extensions was used. Currently it must be the string
</pre>
-<h2 class='title'><a name='MACOSX'>Mac OS X Attributes</a></h2>
+<h3><span class="info">CUPS 1.6/OS X 10.8</span><a name="JCLToPDFInterpreter">JCLToPDFInterpreter</a></h3>
+
+<p class="summary">*JCLToPDFInterpreter: "JCL"</p>
+
+<p>This keyword provfides the JCL command to insert a PDF job file into a printer-ready data stream. The JCL command is added after the <tt>JCLBegin</tt> value and any commands for JCL options in the PPD file.</p>
+
+<p>Example:</p>
+
+<pre class='command'>
+<em>*% PJL command to start the PDF interpreter</em>
+*JCLToPDFInterpreter: "@PJL ENTER LANGUAGE = PDF&lt;0A&gt;"
+</pre>
+
+
+<h2 class='title'><a name='MACOSX'>OS X Attributes</a></h2>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APDialogExtension'>APDialogExtension</a></h3>
+<h3><span class='info'>OS X 10.3</span><a name='APDialogExtension'>APDialogExtension</a></h3>
<p class='summary'>*APDialogExtension: "/Library/Printers/vendor/filename.plugin"</p>
@@ -1492,7 +1535,7 @@ plug-ins.</p>
<blockquote><b>Note:</b>
-<p>Starting with Mac OS X 10.5, each plug-in must be compiled "4-way fat"
+<p>Starting with OS X 10.5, each plug-in must be compiled "4-way fat"
(32-bit and 64-bit for both PowerPC and Intel) with garbage collection enabled
in order to be usable with all applications.</p>
@@ -1506,7 +1549,7 @@ in order to be usable with all applications.</p>
*APDialogExtension: "/Library/Printers/vendor/options.plugin"
</pre>
-<h3><span class='info'>Mac OS X 10.4</span><a name='APDuplexRequiresFlippedMargin'>APDuplexRequiresFlippedMargin</a></h3>
+<h3><span class='info'>OS X 10.4</span><a name='APDuplexRequiresFlippedMargin'>APDuplexRequiresFlippedMargin</a></h3>
<p class='summary'>*APDuplexRequiresFlippedMargin: boolean</p>
@@ -1603,7 +1646,7 @@ looking up IPP reason codes for this printer driver. The
*APHelpBook: "file:///Library/Printers/vendor/Help.bundle"
</pre>
-<h3><span class='info'>Mac OS X 10.6</span><a name='APICADriver'>APICADriver</a></h3>
+<h3><span class='info'>OS X 10.6</span><a name='APICADriver'>APICADriver</a></h3>
<p class='summary'>*APICADriver: boolean</p>
@@ -1617,7 +1660,7 @@ Architecture (ICA) driver for scanning. The default is <tt>False</tt>.</p>
*APScanAppBundleID: "com.apple.ImageCaptureApp"
</pre>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APPrinterIconPath'>APPrinterIconPath</a></h3>
+<h3><span class='info'>OS X 10.3</span><a name='APPrinterIconPath'>APPrinterIconPath</a></h3>
<p class='summary'>*APPrinterIconPath: "/Library/Printers/vendor/filename.icns"</p>
@@ -1631,7 +1674,7 @@ displaying the printer. The file must be in the Apple icon format.</p>
*APPrinterIconPath: "/Library/Printers/vendor/Icons/filename.icns"
</pre>
-<h3><span class='info'>Mac OS X 10.4</span><a name='APPrinterLowInkTool'>APPrinterLowInkTool</a></h3>
+<h3><span class='info'>OS X 10.4</span><a name='APPrinterLowInkTool'>APPrinterLowInkTool</a></h3>
<p class='summary'>*APPrinterLowInkTool: "/Library/Printers/vendor/program"</p>
@@ -1648,7 +1691,7 @@ Technical Note TN2144</a> for more information.</p>
*APPrinterLowInkTool: "/Library/Printers/vendor/Tools/lowinktool"
</pre>
-<h3><span class='info'>Mac OS X 10.5</span><a name='APPrinterPreset'>APPrinterPreset</a></h3>
+<h3><span class='info'>OS X 10.5</span><a name='APPrinterPreset'>APPrinterPreset</a></h3>
<p class='summary'>*APPrinterPreset name/text: "*Option Choice ..."</p>
@@ -1718,7 +1761,7 @@ choice (*MainKeyword OptionKeyword) or a preset identifier and value
*fr.APPrinterPreset Photo_on_Photo_Paper/Photo sur papier photographique: ""
</pre>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APPrinterUtilityPath'>APPrinterUtilityPath</a></h3>
+<h3><span class='info'>OS X 10.3</span><a name='APPrinterUtilityPath'>APPrinterUtilityPath</a></h3>
<p class='summary'>*APPrinterPrinterUtilityPath: "/Library/Printers/vendor/filename.app"</p>
@@ -1733,7 +1776,7 @@ information.</p>
*APPrinterPrinterUtilityPath: "/Library/Printers/vendor/Tools/utility.app"
</pre>
-<h3><span class='info'>Mac OS X 10.6</span><a name='APScannerOnly'>APScannerOnly</a></h3>
+<h3><span class='info'>OS X 10.6</span><a name='APScannerOnly'>APScannerOnly</a></h3>
<p class='summary'>*APScannerOnly: boolean</p>
@@ -1747,7 +1790,7 @@ capabilities. The default is <tt>False</tt>.</p>
*APScannerOnly: True
</pre>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APScanAppBundleID'>APScanAppBundleID</a></h3>
+<h3><span class='info'>OS X 10.3</span><a name='APScanAppBundleID'>APScanAppBundleID</a></h3>
<p class='summary'>*APScanAppBundleID: "bundle ID"</p>
@@ -1764,6 +1807,21 @@ the device.</p>
<h2 class='title'><a name='HISTORY'>Change History</a></h2>
+<h3>Changes in CUPS 1.6</h3>
+
+<ul>
+
+ <li>Added <a href="#cupsPageSizeCategory"><tt>cupsPageSizeCategory</tt></a> keyword (originally defined in CUPS 1.4).</li>
+
+ <li>Added <a href="#cupsMaxCopies"><tt>cupsMaxCopies</tt></a> keyword.</li>
+
+ <li>Documented <a href="#JCLToPDFInterpreter"><tt>JCLToPDFInterpreter</tt></a> keyword.</li>
+
+ <li>Updated <a href="#cupsVersion"><tt>cupsVersion</tt></a> keyword documentation to list all current releases of CUPS.</li>
+
+</ul>
+
+
<h3>Changes in CUPS 1.5</h3>
<ul>
@@ -1823,7 +1881,7 @@ the device.</p>
<ul>
- <li>Added missing Mac OS X <tt>AP</tt> keywords.</li>
+ <li>Added missing OS X <tt>AP</tt> keywords.</li>
<li>Added section on auto-configuration including the
<tt>OID<i>MainKeyword</i></tt> and <tt>?<i>MainKeyword</i></tt>
diff --git a/filter/testimage.c b/filter/testimage.c
deleted file mode 100644
index 57e3a197..00000000
--- a/filter/testimage.c
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * "$Id$"
- *
- * Image library test program for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1993-2006 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * main() - Main entry...
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "image.h"
-
-
-/*
- * 'main()' - Main entry...
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- cups_image_t *img; /* Image to print */
- cups_icspace_t primary; /* Primary image colorspace */
- FILE *out; /* Output PPM/PGM file */
- cups_ib_t *line; /* Line from file */
- int y, /* Current line */
- width, /* Width of image */
- height, /* Height of image */
- depth; /* Depth of image */
-
-
- if (argc != 3)
- {
- puts("Usage: testimage filename.ext filename.[ppm|pgm]");
- return (1);
- }
-
- if (strstr(argv[2], ".ppm") != NULL)
- primary = CUPS_IMAGE_RGB;
- else
- primary = CUPS_IMAGE_WHITE;
-
- img = cupsImageOpen(argv[1], primary, CUPS_IMAGE_WHITE, 100, 0, NULL);
-
- if (!img)
- {
- perror(argv[1]);
- return (1);
- }
-
- out = fopen(argv[2], "wb");
-
- if (!out)
- {
- perror(argv[2]);
- cupsImageClose(img);
- return (1);
- }
-
- width = cupsImageGetWidth(img);
- height = cupsImageGetHeight(img);
- depth = cupsImageGetDepth(img);
- line = calloc(width, depth);
-
- fprintf(out, "P%d\n%d\n%d\n255\n",
- cupsImageGetColorSpace(img) == CUPS_IMAGE_WHITE ? 5 : 6,
- width, height);
-
- for (y = 0; y < height; y ++)
- {
- cupsImageGetRow(img, 0, y, width, line);
- fwrite(line, width, depth, out);
- }
-
- cupsImageClose(img);
- fclose(out);
-
- return (0);
-}
-
-
-/*
- * End of "$Id$".
- */
diff --git a/filter/testraster.c b/filter/testraster.c
index b7b70b3a..185170dc 100644
--- a/filter/testraster.c
+++ b/filter/testraster.c
@@ -1,5 +1,5 @@
/*
- * "$Id: testraster.c 9870 2011-08-06 06:32:26Z mike $"
+ * "$Id: testraster.c 9926 2011-08-27 09:23:01Z mike $"
*
* Raster test program routines for CUPS.
*
@@ -28,13 +28,7 @@
* Include necessary headers...
*/
-#include "image-private.h"
-#ifdef WIN32
-# include <io.h>
-#else
-# include <unistd.h>
-# include <fcntl.h>
-#endif /* WIN32 */
+#include <cups/raster-private.h>
/*
@@ -1080,5 +1074,5 @@ print_changes(
/*
- * End of "$Id: testraster.c 9870 2011-08-06 06:32:26Z mike $".
+ * End of "$Id: testraster.c 9926 2011-08-27 09:23:01Z mike $".
*/
diff --git a/filter/textcommon.c b/filter/textcommon.c
deleted file mode 100644
index 999e3a59..00000000
--- a/filter/textcommon.c
+++ /dev/null
@@ -1,1214 +0,0 @@
-/*
- * "$Id: textcommon.c 9793 2011-05-20 03:49:49Z mike $"
- *
- * Common text filter routines for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1997-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * TextMain() - Standard main entry for text filters.
- * compare_keywords() - Compare two C/C++ keywords.
- * getutf8() - Get a UTF-8 encoded wide character...
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "textcommon.h"
-#include <cups/language-private.h>
-
-
-/*
- * Globals...
- */
-
-int WrapLines = 1, /* Wrap text in lines */
- SizeLines = 60, /* Number of lines on a page */
- SizeColumns = 80, /* Number of columns on a line */
- PageColumns = 1, /* Number of columns on a page */
- ColumnGutter = 0, /* Number of characters between text columns */
- ColumnWidth = 80, /* Width of each column */
- PrettyPrint = 0, /* Do pretty code formatting */
- Copies = 1; /* Number of copies */
-lchar_t **Page = NULL; /* Page characters */
-int NumPages = 0; /* Number of pages in document */
-float CharsPerInch = 10; /* Number of character columns per inch */
-float LinesPerInch = 6; /* Number of lines per inch */
-int NumKeywords = 0; /* Number of known keywords */
-char **Keywords = NULL; /* List of known keywords */
-
-
-/*
- * Local globals...
- */
-
-static char *code_keywords[] = /* List of known C/C++ keywords... */
- {
- "and",
- "and_eq",
- "asm",
- "auto",
- "bitand",
- "bitor",
- "bool",
- "break",
- "case",
- "catch",
- "char",
- "class",
- "compl",
- "const",
- "const_cast",
- "continue",
- "default",
- "delete",
- "do",
- "double",
- "dynamic_cast",
- "else",
- "enum",
- "explicit",
- "extern",
- "false",
- "float",
- "for",
- "friend",
- "goto",
- "if",
- "inline",
- "int",
- "long",
- "mutable",
- "namespace",
- "new",
- "not",
- "not_eq",
- "operator",
- "or",
- "or_eq",
- "private",
- "protected",
- "public",
- "register",
- "reinterpret_cast",
- "return",
- "short",
- "signed",
- "sizeof",
- "static",
- "static_cast",
- "struct",
- "switch",
- "template",
- "this",
- "throw",
- "true",
- "try",
- "typedef",
- "typename",
- "union",
- "unsigned",
- "virtual",
- "void",
- "volatile",
- "while",
- "xor",
- "xor_eq"
- },
- *sh_keywords[] = /* List of known Boure/Korn/zsh/bash keywords... */
- {
- "alias",
- "bg",
- "break",
- "case",
- "cd",
- "command",
- "continue",
- "do",
- "done",
- "echo",
- "elif",
- "else",
- "esac",
- "eval",
- "exec",
- "exit",
- "export",
- "fc",
- "fg",
- "fi",
- "for",
- "function",
- "getopts",
- "if",
- "in",
- "jobs",
- "kill",
- "let",
- "limit",
- "newgrp",
- "print",
- "pwd",
- "read",
- "readonly",
- "return",
- "select",
- "set",
- "shift",
- "test",
- "then",
- "time",
- "times",
- "trap",
- "typeset",
- "ulimit",
- "umask",
- "unalias",
- "unlimit",
- "unset",
- "until",
- "wait",
- "whence"
- "while",
- },
- *csh_keywords[] = /* List of known csh/tcsh keywords... */
- {
- "alias",
- "aliases",
- "bg",
- "bindkey",
- "break",
- "breaksw",
- "builtins",
- "case",
- "cd",
- "chdir",
- "complete",
- "continue",
- "default",
- "dirs",
- "echo",
- "echotc",
- "else",
- "end",
- "endif",
- "eval",
- "exec",
- "exit",
- "fg",
- "foreach",
- "glob",
- "goto",
- "history",
- "if",
- "jobs",
- "kill",
- "limit",
- "login",
- "logout",
- "ls",
- "nice",
- "nohup",
- "notify",
- "onintr",
- "popd",
- "pushd",
- "pwd",
- "rehash",
- "repeat",
- "set",
- "setenv",
- "settc",
- "shift",
- "source",
- "stop",
- "suspend",
- "switch",
- "telltc",
- "then",
- "time",
- "umask",
- "unalias",
- "unbindkey",
- "unhash",
- "unlimit",
- "unset",
- "unsetenv",
- "wait",
- "where",
- "which",
- "while"
- },
- *perl_keywords[] = /* List of known perl keywords... */
- {
- "abs",
- "accept",
- "alarm",
- "and",
- "atan2",
- "bind",
- "binmode",
- "bless",
- "caller",
- "chdir",
- "chmod",
- "chomp",
- "chop",
- "chown",
- "chr",
- "chroot",
- "closdir",
- "close",
- "connect",
- "continue",
- "cos",
- "crypt",
- "dbmclose",
- "dbmopen",
- "defined",
- "delete",
- "die",
- "do",
- "dump",
- "each",
- "else",
- "elsif",
- "endgrent",
- "endhostent",
- "endnetent",
- "endprotoent",
- "endpwent",
- "endservent",
- "eof",
- "eval",
- "exec",
- "exists",
- "exit",
- "exp",
- "fcntl",
- "fileno",
- "flock",
- "for",
- "foreach",
- "fork",
- "format",
- "formline",
- "getc",
- "getgrent",
- "getgrgid",
- "getgrnam",
- "gethostbyaddr",
- "gethostbyname",
- "gethostent",
- "getlogin",
- "getnetbyaddr",
- "getnetbyname",
- "getnetent",
- "getpeername",
- "getpgrp",
- "getppid",
- "getpriority",
- "getprotobyname",
- "getprotobynumber",
- "getprotoent",
- "getpwent",
- "getpwnam",
- "getpwuid",
- "getservbyname",
- "getservbyport",
- "getservent",
- "getsockname",
- "getsockopt",
- "glob",
- "gmtime",
- "goto",
- "grep",
- "hex",
- "if",
- "import",
- "index",
- "int",
- "ioctl",
- "join",
- "keys",
- "kill",
- "last",
- "lc",
- "lcfirst",
- "length",
- "link",
- "listen",
- "local",
- "localtime",
- "log",
- "lstat",
- "map",
- "mkdir",
- "msgctl",
- "msgget",
- "msgrcv",
- "msgsend",
- "my",
- "next",
- "no",
- "not",
- "oct",
- "open",
- "opendir",
- "or",
- "ord",
- "pack",
- "package",
- "pipe",
- "pop",
- "pos",
- "print",
- "printf",
- "push",
- "quotemeta",
- "rand",
- "read",
- "readdir",
- "readlink",
- "recv",
- "redo",
- "ref",
- "rename",
- "require",
- "reset",
- "return",
- "reverse",
- "rewinddir",
- "rindex",
- "rmdir",
- "scalar",
- "seek",
- "seekdir",
- "select",
- "semctl",
- "semget",
- "semop",
- "send",
- "setgrent",
- "sethostent",
- "setnetent",
- "setpgrp",
- "setpriority",
- "setprotoent",
- "setpwent",
- "setservent",
- "setsockopt",
- "shift",
- "shmctl",
- "shmget",
- "shmread",
- "shmwrite",
- "shutdown",
- "sin",
- "sleep",
- "socket",
- "socketpair",
- "sort",
- "splice",
- "split",
- "sprintf",
- "sqrt",
- "srand",
- "stat",
- "study",
- "sub",
- "substr",
- "symlink",
- "syscall",
- "sysread",
- "sysseek",
- "system",
- "syswrite",
- "tell",
- "telldir",
- "tie",
- "tied",
- "time",
- "times"
- "times",
- "truncate",
- "uc",
- "ucfirst",
- "umask",
- "undef",
- "unless",
- "unlink",
- "unpack",
- "unshift",
- "untie",
- "until",
- "use",
- "utime",
- "values",
- "vec",
- "wait",
- "waitpid",
- "wantarray",
- "warn",
- "while",
- "write"
- };
-
-
-/*
- * Local functions...
- */
-
-static int compare_keywords(const void *, const void *);
-static int getutf8(FILE *fp);
-
-
-/*
- * 'TextMain()' - Standard main entry for text filters.
- */
-
-int /* O - Exit status */
-TextMain(const char *name, /* I - Name of filter */
- int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- FILE *fp; /* Print file */
- ppd_file_t *ppd; /* PPD file */
- int i, /* Looping var */
- ch, /* Current char from file */
- lastch, /* Previous char from file */
- attr, /* Current attribute */
- line, /* Current line */
- column, /* Current column */
- page_column; /* Current page column */
- int num_options; /* Number of print options */
- cups_option_t *options; /* Print options */
- const char *val; /* Option value */
- char keyword[64], /* Keyword string */
- *keyptr; /* Pointer into string */
- int keycol; /* Column where keyword starts */
- int ccomment; /* Inside a C-style comment? */
- int cstring; /* Inside a C string */
-
-
- /*
- * Make sure status messages are not buffered...
- */
-
- setbuf(stderr, NULL);
-
- /*
- * Check command-line...
- */
-
- if (argc < 6 || argc > 7)
- {
- _cupsLangPrintf(stderr,
- _("Usage: %s job-id user title copies options [file]"),
- name);
- return (1);
- }
-
- /*
- * If we have 7 arguments, print the file named on the command-line.
- * Otherwise, send stdin instead...
- */
-
- if (argc == 6)
- fp = stdin;
- else
- {
- /*
- * Try to open the print file...
- */
-
- if ((fp = fopen(argv[6], "rb")) == NULL)
- {
- perror("DEBUG: unable to open print file - ");
- return (1);
- }
- }
-
- /*
- * Process command-line options and write the prolog...
- */
-
- options = NULL;
- num_options = cupsParseOptions(argv[5], 0, &options);
-
- if ((val = cupsGetOption("prettyprint", num_options, options)) != NULL &&
- _cups_strcasecmp(val, "no") && _cups_strcasecmp(val, "off") &&
- _cups_strcasecmp(val, "false"))
- {
- PageLeft = 72.0f;
- PageRight = PageWidth - 36.0f;
- PageBottom = PageBottom > 36.0f ? PageBottom : 36.0f;
- PageTop = PageLength - 36.0f;
- CharsPerInch = 12;
- LinesPerInch = 8;
-
- if ((val = getenv("CONTENT_TYPE")) == NULL)
- {
- PrettyPrint = PRETTY_PLAIN;
- NumKeywords = 0;
- Keywords = NULL;
- }
- else if (_cups_strcasecmp(val, "application/x-cshell") == 0)
- {
- PrettyPrint = PRETTY_SHELL;
- NumKeywords = sizeof(csh_keywords) / sizeof(csh_keywords[0]);
- Keywords = csh_keywords;
- }
- else if (_cups_strcasecmp(val, "application/x-csource") == 0)
- {
- PrettyPrint = PRETTY_CODE;
- NumKeywords = sizeof(code_keywords) / sizeof(code_keywords[0]);
- Keywords = code_keywords;
- }
- else if (_cups_strcasecmp(val, "application/x-perl") == 0)
- {
- PrettyPrint = PRETTY_PERL;
- NumKeywords = sizeof(perl_keywords) / sizeof(perl_keywords[0]);
- Keywords = perl_keywords;
- }
- else if (_cups_strcasecmp(val, "application/x-shell") == 0)
- {
- PrettyPrint = PRETTY_SHELL;
- NumKeywords = sizeof(sh_keywords) / sizeof(sh_keywords[0]);
- Keywords = sh_keywords;
- }
- else
- {
- PrettyPrint = PRETTY_PLAIN;
- NumKeywords = 0;
- Keywords = NULL;
- }
- }
-
- ppd = SetCommonOptions(num_options, options, 1);
-
- if ((val = cupsGetOption("wrap", num_options, options)) == NULL)
- WrapLines = 1;
- else
- WrapLines = !_cups_strcasecmp(val, "true") || !_cups_strcasecmp(val, "on") ||
- !_cups_strcasecmp(val, "yes");
-
- if ((val = cupsGetOption("columns", num_options, options)) != NULL)
- {
- PageColumns = atoi(val);
-
- if (PageColumns < 1)
- {
- _cupsLangPrintFilter(stderr, "ERROR", _("Bad columns value %d."),
- PageColumns);
- return (1);
- }
- }
-
- if ((val = cupsGetOption("cpi", num_options, options)) != NULL)
- {
- CharsPerInch = atof(val);
-
- if (CharsPerInch <= 0.0)
- {
- _cupsLangPrintFilter(stderr, "ERROR", _("Bad cpi value %f."),
- CharsPerInch);
- return (1);
- }
- }
-
- if ((val = cupsGetOption("lpi", num_options, options)) != NULL)
- {
- LinesPerInch = atof(val);
-
- if (LinesPerInch <= 0.0)
- {
- _cupsLangPrintFilter(stderr, "ERROR", _("Bad lpi value %f."),
- LinesPerInch);
- return (1);
- }
- }
-
- if (PrettyPrint)
- PageTop -= 216.0f / LinesPerInch;
-
- Copies = atoi(argv[4]);
-
- WriteProlog(argv[3], argv[2], getenv("CLASSIFICATION"),
- cupsGetOption("page-label", num_options, options), ppd);
-
- /*
- * Read text from the specified source and print it...
- */
-
- lastch = 0;
- column = 0;
- line = 0;
- page_column = 0;
- attr = 0;
- keyptr = keyword;
- keycol = 0;
- ccomment = 0;
- cstring = 0;
-
- while ((ch = getutf8(fp)) >= 0)
- {
- /*
- * Control codes:
- *
- * BS Backspace (0x08)
- * HT Horizontal tab; next 8th column (0x09)
- * LF Line feed; forward full line (0x0a)
- * VT Vertical tab; reverse full line (0x0b)
- * FF Form feed (0x0c)
- * CR Carriage return (0x0d)
- * ESC 7 Reverse full line (0x1b 0x37)
- * ESC 8 Reverse half line (0x1b 0x38)
- * ESC 9 Forward half line (0x1b 0x39)
- */
-
- switch (ch)
- {
- case 0x08 : /* BS - backspace for boldface & underline */
- if (column > 0)
- column --;
-
- keyptr = keyword;
- keycol = column;
- break;
-
- case 0x09 : /* HT - tab to next 8th column */
- if (PrettyPrint && keyptr > keyword)
- {
- *keyptr = '\0';
- keyptr = keyword;
-
- if (bsearch(&keyptr, Keywords, NumKeywords, sizeof(char *),
- compare_keywords))
- {
- /*
- * Put keywords in boldface...
- */
-
- i = page_column * (ColumnWidth + ColumnGutter);
-
- while (keycol < column)
- {
- Page[line][keycol + i].attr |= ATTR_BOLD;
- keycol ++;
- }
- }
- }
-
- column = (column + 8) & ~7;
-
- if (column >= ColumnWidth && WrapLines)
- { /* Wrap text to margins */
- line ++;
- column = 0;
-
- if (line >= SizeLines)
- {
- page_column ++;
- line = 0;
-
- if (page_column >= PageColumns)
- {
- WritePage();
- page_column = 0;
- }
- }
- }
-
- keycol = column;
-
- attr &= ~ATTR_BOLD;
- break;
-
- case 0x0d : /* CR */
-#ifndef __APPLE__
- /*
- * All but MacOS/Darwin treat CR as was intended by ANSI
- * folks, namely to move to column 0/1. Some programs still
- * use this to do boldfacing and underlining...
- */
-
- column = 0;
- break;
-#else
- /*
- * MacOS/Darwin still need to treat CR as a line ending.
- */
-
- {
- int nextch;
- if ((nextch = getc(fp)) != 0x0a)
- ungetc(nextch, fp);
- else
- ch = nextch;
- }
-#endif /* !__APPLE__ */
-
- case 0x0a : /* LF - output current line */
- if (PrettyPrint && keyptr > keyword)
- {
- *keyptr = '\0';
- keyptr = keyword;
-
- if (bsearch(&keyptr, Keywords, NumKeywords, sizeof(char *),
- compare_keywords))
- {
- /*
- * Put keywords in boldface...
- */
-
- i = page_column * (ColumnWidth + ColumnGutter);
-
- while (keycol < column)
- {
- Page[line][keycol + i].attr |= ATTR_BOLD;
- keycol ++;
- }
- }
- }
-
- line ++;
- column = 0;
- keycol = 0;
-
- if (!ccomment && !cstring)
- attr &= ~(ATTR_ITALIC | ATTR_BOLD | ATTR_RED | ATTR_GREEN | ATTR_BLUE);
-
- if (line >= SizeLines)
- {
- page_column ++;
- line = 0;
-
- if (page_column >= PageColumns)
- {
- WritePage();
- page_column = 0;
- }
- }
- break;
-
- case 0x0b : /* VT - move up 1 line */
- if (line > 0)
- line --;
-
- keyptr = keyword;
- keycol = column;
-
- if (!ccomment && !cstring)
- attr &= ~(ATTR_ITALIC | ATTR_BOLD | ATTR_RED | ATTR_GREEN | ATTR_BLUE);
- break;
-
- case 0x0c : /* FF - eject current page... */
- if (PrettyPrint && keyptr > keyword)
- {
- *keyptr = '\0';
- keyptr = keyword;
-
- if (bsearch(&keyptr, Keywords, NumKeywords, sizeof(char *),
- compare_keywords))
- {
- /*
- * Put keywords in boldface...
- */
-
- i = page_column * (ColumnWidth + ColumnGutter);
-
- while (keycol < column)
- {
- Page[line][keycol + i].attr |= ATTR_BOLD;
- keycol ++;
- }
- }
- }
-
- page_column ++;
- column = 0;
- keycol = 0;
- line = 0;
-
- if (!ccomment && !cstring)
- attr &= ~(ATTR_ITALIC | ATTR_BOLD | ATTR_RED | ATTR_GREEN | ATTR_BLUE);
-
- if (page_column >= PageColumns)
- {
- WritePage();
- page_column = 0;
- }
- break;
-
- case 0x1b : /* Escape sequence */
- ch = getutf8(fp);
- if (ch == '7')
- {
- /*
- * ESC 7 Reverse full line (0x1b 0x37)
- */
-
- if (line > 0)
- line --;
- }
- else if (ch == '8')
- {
- /*
- * ESC 8 Reverse half line (0x1b 0x38)
- */
-
- if ((attr & ATTR_RAISED) && line > 0)
- {
- attr &= ~ATTR_RAISED;
- line --;
- }
- else if (attr & ATTR_LOWERED)
- attr &= ~ATTR_LOWERED;
- else
- attr |= ATTR_RAISED;
- }
- else if (ch == '9')
- {
- /*
- * ESC 9 Forward half line (0x1b 0x39)
- */
-
- if ((attr & ATTR_LOWERED) && line < (SizeLines - 1))
- {
- attr &= ~ATTR_LOWERED;
- line ++;
- }
- else if (attr & ATTR_RAISED)
- attr &= ~ATTR_RAISED;
- else
- attr |= ATTR_LOWERED;
- }
- break;
-
- default : /* All others... */
- if (ch < ' ')
- break; /* Ignore other control chars */
-
- if (PrettyPrint > PRETTY_PLAIN)
- {
- /*
- * Do highlighting of C/C++ keywords, preprocessor commands,
- * and comments...
- */
-
- if (ch == ' ' && (attr & ATTR_BOLD))
- {
- /*
- * Stop bolding preprocessor command...
- */
-
- attr &= ~ATTR_BOLD;
- }
- else if (!(isalnum(ch & 255) || ch == '_') && keyptr > keyword)
- {
- /*
- * Look for a keyword...
- */
-
- *keyptr = '\0';
- keyptr = keyword;
-
- if (!(attr & ATTR_ITALIC) &&
- bsearch(&keyptr, Keywords, NumKeywords, sizeof(char *),
- compare_keywords))
- {
- /*
- * Put keywords in boldface...
- */
-
- i = page_column * (ColumnWidth + ColumnGutter);
-
- while (keycol < column)
- {
- Page[line][keycol + i].attr |= ATTR_BOLD;
- keycol ++;
- }
- }
- }
- else if ((isalnum(ch & 255) || ch == '_') && !ccomment && !cstring)
- {
- /*
- * Add characters to the current keyword (if they'll fit).
- */
-
- if (keyptr == keyword)
- keycol = column;
-
- if (keyptr < (keyword + sizeof(keyword) - 1))
- *keyptr++ = ch;
- }
- else if (ch == '\"' && lastch != '\\' && !ccomment && !cstring)
- {
- /*
- * Start a C string constant...
- */
-
- cstring = -1;
- attr = ATTR_BLUE;
- }
- else if (ch == '*' && lastch == '/' && !cstring &&
- PrettyPrint != PRETTY_SHELL)
- {
- /*
- * Start a C-style comment...
- */
-
- ccomment = 1;
- attr = ATTR_ITALIC | ATTR_GREEN;
- }
- else if (ch == '/' && lastch == '/' && !cstring &&
- PrettyPrint == PRETTY_CODE)
- {
- /*
- * Start a C++-style comment...
- */
-
- attr = ATTR_ITALIC | ATTR_GREEN;
- }
- else if (ch == '#' && !cstring && PrettyPrint != PRETTY_CODE)
- {
- /*
- * Start a shell-style comment...
- */
-
- attr = ATTR_ITALIC | ATTR_GREEN;
- }
- else if (ch == '#' && column == 0 && !ccomment && !cstring &&
- PrettyPrint == PRETTY_CODE)
- {
- /*
- * Start a preprocessor command...
- */
-
- attr = ATTR_BOLD | ATTR_RED;
- }
- }
-
- if (column >= ColumnWidth && WrapLines)
- { /* Wrap text to margins */
- column = 0;
- line ++;
-
- if (line >= SizeLines)
- {
- page_column ++;
- line = 0;
-
- if (page_column >= PageColumns)
- {
- WritePage();
- page_column = 0;
- }
- }
- }
-
- /*
- * Add text to the current column & line...
- */
-
- if (column < ColumnWidth)
- {
- i = column + page_column * (ColumnWidth + ColumnGutter);
-
- if (PrettyPrint)
- Page[line][i].attr = attr;
- else if (ch == ' ' && Page[line][i].ch)
- ch = Page[line][i].ch;
- else if (ch == Page[line][i].ch)
- Page[line][i].attr |= ATTR_BOLD;
- else if (Page[line][i].ch == '_')
- Page[line][i].attr |= ATTR_UNDERLINE;
- else if (ch == '_')
- {
- Page[line][i].attr |= ATTR_UNDERLINE;
-
- if (Page[line][i].ch)
- ch = Page[line][i].ch;
- }
- else
- Page[line][i].attr = attr;
-
- Page[line][i].ch = ch;
- }
-
- if (PrettyPrint)
- {
- if ((ch == '{' || ch == '}') && !ccomment && !cstring &&
- column < ColumnWidth)
- {
- /*
- * Highlight curley braces...
- */
-
- Page[line][column].attr |= ATTR_BOLD;
- }
- else if ((ch == '/' || ch == '*') && lastch == '/' &&
- column < ColumnWidth && PrettyPrint != PRETTY_SHELL)
- {
- /*
- * Highlight first comment character...
- */
-
- Page[line][column - 1].attr = attr;
- }
- else if (ch == '\"' && lastch != '\\' && !ccomment && cstring > 0)
- {
- /*
- * End a C string constant...
- */
-
- cstring = 0;
- attr &= ~ATTR_BLUE;
- }
- else if (ch == '/' && lastch == '*' && ccomment)
- {
- /*
- * End a C-style comment...
- */
-
- ccomment = 0;
- attr &= ~(ATTR_ITALIC | ATTR_GREEN);
- }
-
- if (cstring < 0)
- cstring = 1;
- }
-
- column ++;
- break;
- }
-
- /*
- * Save this character for the next cycle.
- */
-
- lastch = ch;
- }
-
- /*
- * Write any remaining page data...
- */
-
- if (line > 0 || page_column > 0 || column > 0)
- WritePage();
-
- /*
- * Write the epilog and return...
- */
-
- WriteEpilogue();
-
- if (ppd != NULL)
- ppdClose(ppd);
-
- return (0);
-}
-
-
-/*
- * 'compare_keywords()' - Compare two C/C++ keywords.
- */
-
-static int /* O - Result of strcmp */
-compare_keywords(const void *k1, /* I - First keyword */
- const void *k2) /* I - Second keyword */
-{
- return (strcmp(*((const char **)k1), *((const char **)k2)));
-}
-
-
-/*
- * 'getutf8()' - Get a UTF-8 encoded wide character...
- */
-
-static int /* O - Character or -1 on error */
-getutf8(FILE *fp) /* I - File to read from */
-{
- int ch; /* Current character value */
- int next; /* Next character from file */
-
-
- /*
- * Read the first character and process things accordingly...
- *
- * UTF-8 maps 16-bit characters to:
- *
- * 0 to 127 = 0xxxxxxx
- * 128 to 2047 = 110xxxxx 10yyyyyy (xxxxxyyyyyy)
- * 2048 to 65535 = 1110xxxx 10yyyyyy 10zzzzzz (xxxxyyyyyyzzzzzz)
- *
- * We also accept:
- *
- * 128 to 191 = 10xxxxxx
- *
- * since this range of values is otherwise undefined unless you are
- * in the middle of a multi-byte character...
- *
- * This code currently does not support anything beyond 16-bit
- * characters, in part because PostScript doesn't support more than
- * 16-bit characters...
- */
-
- if ((ch = getc(fp)) == EOF)
- return (EOF);
-
- if (ch < 0xc0) /* One byte character? */
- return (ch);
- else if ((ch & 0xe0) == 0xc0)
- {
- /*
- * Two byte character...
- */
-
- if ((next = getc(fp)) == EOF)
- return (EOF);
- else
- return (((ch & 0x1f) << 6) | (next & 0x3f));
- }
- else if ((ch & 0xf0) == 0xe0)
- {
- /*
- * Three byte character...
- */
-
- if ((next = getc(fp)) == EOF)
- return (EOF);
-
- ch = ((ch & 0x0f) << 6) | (next & 0x3f);
-
- if ((next = getc(fp)) == EOF)
- return (EOF);
- else
- return ((ch << 6) | (next & 0x3f));
- }
- else
- {
- /*
- * More than three bytes... We don't support that...
- */
-
- return (EOF);
- }
-}
-
-
-/*
- * End of "$Id: textcommon.c 9793 2011-05-20 03:49:49Z mike $".
- */
diff --git a/filter/textcommon.h b/filter/textcommon.h
deleted file mode 100644
index 0597c2ea..00000000
--- a/filter/textcommon.h
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * "$Id: textcommon.h 9042 2010-03-24 00:45:34Z mike $"
- *
- * Common text filter definitions for CUPS.
- *
- * Copyright 2007-2010 by Apple Inc.
- * Copyright 1997-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "common.h"
-
-
-/*
- * C++ magic...
- */
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-
-/*
- * Constants...
- */
-
-#define ATTR_NORMAL 0x00
-#define ATTR_BOLD 0x01
-#define ATTR_ITALIC 0x02
-#define ATTR_BOLDITALIC 0x03
-#define ATTR_FONT 0x03
-
-#define ATTR_UNDERLINE 0x04
-#define ATTR_RAISED 0x08
-#define ATTR_LOWERED 0x10
-#define ATTR_RED 0x20
-#define ATTR_GREEN 0x40
-#define ATTR_BLUE 0x80
-
-#define PRETTY_OFF 0
-#define PRETTY_PLAIN 1
-#define PRETTY_CODE 2
-#define PRETTY_SHELL 3
-#define PRETTY_PERL 4
-#define PRETTY_HTML 5
-
-
-/*
- * Structures...
- */
-
-typedef struct /**** Character/attribute structure... ****/
-{
- unsigned short ch, /* Character */
- attr; /* Any attributes */
-} lchar_t;
-
-
-/*
- * Globals...
- */
-
-extern int WrapLines, /* Wrap text in lines */
- SizeLines, /* Number of lines on a page */
- SizeColumns, /* Number of columns on a line */
- PageColumns, /* Number of columns on a page */
- ColumnGutter, /* Number of characters between text columns */
- ColumnWidth, /* Width of each column */
- PrettyPrint, /* Do pretty code formatting? */
- Copies; /* Number of copies to produce */
-extern lchar_t **Page; /* Page characters */
-extern int NumPages; /* Number of pages in document */
-extern float CharsPerInch, /* Number of character columns per inch */
- LinesPerInch; /* Number of lines per inch */
-extern int UTF8, /* Use UTF-8 encoding? */
- NumKeywords; /* Number of known keywords */
-extern char **Keywords; /* List of known keywords... */
-
-
-/*
- * Required functions...
- */
-
-extern int TextMain(const char *name, int argc, char *argv[]);
-extern void WriteEpilogue(void);
-extern void WritePage(void);
-extern void WriteProlog(const char *title, const char *user,
- const char *classification, const char *label,
- ppd_file_t *ppd);
-
-
-/*
- * C++ magic...
- */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-
-/*
- * End of "$Id: textcommon.h 9042 2010-03-24 00:45:34Z mike $".
- */
diff --git a/filter/texttops.c b/filter/texttops.c
deleted file mode 100644
index 361fe4cc..00000000
--- a/filter/texttops.c
+++ /dev/null
@@ -1,1165 +0,0 @@
-/*
- * "$Id: texttops.c 9399 2010-12-03 06:29:20Z mike $"
- *
- * Text to PostScript filter for CUPS.
- *
- * Copyright 2007-2010 by Apple Inc.
- * Copyright 1993-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * This file is subject to the Apple OS-Developed Software exception.
- *
- * Contents:
- *
- * main() - Main entry for text to PostScript filter.
- * WriteEpilogue() - Write the PostScript file epilogue.
- * WritePage() - Write a page of text.
- * WriteProlog() - Write the PostScript file prolog with options.
- * write_line() - Write a row of text.
- * write_string() - Write a string of text.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "textcommon.h"
-#include <cups/language-private.h>
-
-
-/*
- * Globals...
- */
-
-char *Glyphs[65536]; /* PostScript glyphs for Unicode */
-int NumFonts; /* Number of fonts to use */
-char *Fonts[256][4]; /* Fonts to use */
-unsigned short Chars[65536]; /* 0xffcc (ff = font, cc = char) */
-unsigned short Codes[65536]; /* Unicode glyph mapping to fonts */
-int Widths[256]; /* Widths of each font */
-int Directions[256];/* Text directions for each font */
-
-
-/*
- * Local functions...
- */
-
-static void write_line(int row, lchar_t *line);
-static void write_string(int col, int row, int len, lchar_t *s);
-static void write_text(const char *s);
-
-
-/*
- * 'main()' - Main entry for text to PostScript filter.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- return (TextMain("texttops", argc, argv));
-}
-
-
-/*
- * 'WriteEpilogue()' - Write the PostScript file epilogue.
- */
-
-void
-WriteEpilogue(void)
-{
- puts("%%Trailer");
- printf("%%%%Pages: %d\n", NumPages);
- puts("%%EOF");
-
- free(Page[0]);
- free(Page);
-}
-
-
-/*
- * 'WritePage()' - Write a page of text.
- */
-
-void
-WritePage(void)
-{
- int line; /* Current line */
-
-
- NumPages ++;
- printf("%%%%Page: %d %d\n", NumPages, NumPages);
-
- puts("gsave");
-
- if (PrettyPrint)
- printf("%d H\n", NumPages);
-
- for (line = 0; line < SizeLines; line ++)
- write_line(line, Page[line]);
-
- puts("grestore");
- puts("showpage");
-
- memset(Page[0], 0, sizeof(lchar_t) * SizeColumns * SizeLines);
-}
-
-
-/*
- * 'WriteProlog()' - Write the PostScript file prolog with options.
- */
-
-void
-WriteProlog(const char *title, /* I - Title of job */
- const char *user, /* I - Username */
- const char *classification, /* I - Classification */
- const char *label, /* I - Page label */
- ppd_file_t *ppd) /* I - PPD file info */
-{
- int i, j, k; /* Looping vars */
- char *charset; /* Character set string */
- char filename[1024]; /* Glyph filenames */
- FILE *fp; /* Glyph files */
- const char *datadir; /* CUPS_DATADIR environment variable */
- char line[1024], /* Line from file */
- *lineptr, /* Pointer into line */
- *valptr; /* Pointer to value in line */
- int ch, unicode; /* Character values */
- int start, end; /* Start and end values for range */
- char glyph[64]; /* Glyph name */
- time_t curtime; /* Current time */
- struct tm *curtm; /* Current date */
- char curdate[255]; /* Current date (text format) */
- int num_fonts; /* Number of unique fonts */
- char *fonts[1024]; /* Unique fonts */
- static char *names[] = /* Font names */
- {
- "cupsNormal",
- "cupsBold",
- "cupsItalic"
- };
-
-
- /*
- * Get the data directory...
- */
-
- if ((datadir = getenv("CUPS_DATADIR")) == NULL)
- datadir = CUPS_DATADIR;
-
- /*
- * Adjust margins as necessary...
- */
-
- if (classification || label)
- {
- /*
- * Leave room for labels...
- */
-
- PageBottom += 36;
- PageTop -= 36;
- }
-
- /*
- * Allocate memory for the page...
- */
-
- SizeColumns = (PageRight - PageLeft) / 72.0 * CharsPerInch;
- SizeLines = (PageTop - PageBottom) / 72.0 * LinesPerInch;
-
- if (SizeColumns <= 0 || SizeColumns > 32767 ||
- SizeLines <= 0 || SizeLines > 32767)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Unable to print %dx%d text page."),
- SizeColumns, SizeLines);
- exit(1);
- }
-
- if ((Page = calloc(sizeof(lchar_t *), SizeLines)) == NULL)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Unable to print %dx%d text page."),
- SizeColumns, SizeLines);
- exit(1);
- }
-
- if ((Page[0] = calloc(sizeof(lchar_t), SizeColumns * SizeLines)) == NULL)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Unable to print %dx%d text page."),
- SizeColumns, SizeLines);
- exit(1);
- }
-
- for (i = 1; i < SizeLines; i ++)
- Page[i] = Page[0] + i * SizeColumns;
-
- if (PageColumns > 1)
- {
- ColumnGutter = CharsPerInch / 2;
- ColumnWidth = (SizeColumns - ColumnGutter * (PageColumns - 1)) /
- PageColumns;
- }
- else
- ColumnWidth = SizeColumns;
-
- if (ColumnWidth <= 0)
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Unable to print %d text columns."), PageColumns);
- exit(1);
- }
-
- /*
- * Output the DSC header...
- */
-
- curtime = time(NULL);
- curtm = localtime(&curtime);
- strftime(curdate, sizeof(curdate), "%c", curtm);
-
- puts("%!PS-Adobe-3.0");
- printf("%%%%BoundingBox: 0 0 %.0f %.0f\n", PageWidth, PageLength);
- printf("%%cupsRotation: %d\n", (Orientation & 3) * 90);
- puts("%%Creator: texttops/" CUPS_SVERSION);
- printf("%%%%CreationDate: %s\n", curdate);
- WriteTextComment("Title", title);
- WriteTextComment("For", user);
- puts("%%Pages: (atend)");
-
- /*
- * Initialize globals...
- */
-
- NumFonts = 0;
- memset(Fonts, 0, sizeof(Fonts));
- memset(Glyphs, 0, sizeof(Glyphs));
- memset(Chars, 0, sizeof(Chars));
- memset(Codes, 0, sizeof(Codes));
-
- /*
- * Load the PostScript glyph names and the corresponding character
- * set definition...
- */
-
- snprintf(filename, sizeof(filename), "%s/data/psglyphs", datadir);
-
- if ((fp = fopen(filename, "r")) != NULL)
- {
- while (fscanf(fp, "%x%63s", &unicode, glyph) == 2)
- Glyphs[unicode] = strdup(glyph);
-
- fclose(fp);
- }
- else
- {
- _cupsLangPrintError("ERROR", _("Unable to open psglyphs"));
- exit(1);
- }
-
- /*
- * Get the output character set...
- */
-
- charset = getenv("CHARSET");
- if (charset != NULL && strcmp(charset, "us-ascii") != 0)
- {
- snprintf(filename, sizeof(filename), "%s/charsets/%s", datadir, charset);
-
- if ((fp = fopen(filename, "r")) == NULL)
- {
- /*
- * Can't open charset file!
- */
-
- _cupsLangPrintError("ERROR", _("Unable to open charset file"));
- exit(1);
- }
-
- /*
- * Opened charset file; now see if this is really a charset file...
- */
-
- if (fgets(line, sizeof(line), fp) == NULL)
- {
- /*
- * Bad/empty charset file!
- */
-
- fclose(fp);
- _cupsLangPrintFilter(stderr, "ERROR", _("Bad charset file \"%s\"."),
- filename);
- exit(1);
- }
-
- if (strncmp(line, "charset", 7) != 0)
- {
- /*
- * Bad format/not a charset file!
- */
-
- fclose(fp);
- _cupsLangPrintFilter(stderr, "ERROR", _("Bad charset file \"%s\"."),
- filename);
- exit(1);
- }
-
- /*
- * See if this is an 8-bit or UTF-8 character set file...
- */
-
- line[strlen(line) - 1] = '\0'; /* Drop \n */
- for (lineptr = line + 7; isspace(*lineptr & 255); lineptr ++); /* Skip whitespace */
-
- if (strcmp(lineptr, "utf8") == 0)
- {
- /*
- * UTF-8 (Unicode) text...
- */
-
- NumFonts = 0;
-
- while (fgets(line, sizeof(line), fp) != NULL)
- {
- /*
- * Skip comment and blank lines...
- */
-
- if (line[0] == '#' || line[0] == '\n')
- continue;
-
- /*
- * Read the font descriptions that should look like:
- *
- * start end direction width normal [bold italic bold-italic]
- */
-
- lineptr = line;
-
- start = strtol(lineptr, &lineptr, 16);
- end = strtol(lineptr, &lineptr, 16);
-
- while (isspace(*lineptr & 255))
- lineptr ++;
-
- valptr = lineptr;
-
- while (!isspace(*lineptr & 255) && *lineptr)
- lineptr ++;
-
- if (!*lineptr)
- {
- /*
- * Can't have a font without all required values...
- */
-
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Bad font description line: %s"), valptr);
- fclose(fp);
- exit(1);
- }
-
- *lineptr++ = '\0';
-
- if (strcmp(valptr, "ltor") == 0)
- Directions[NumFonts] = 1;
- else if (strcmp(valptr, "rtol") == 0)
- Directions[NumFonts] = -1;
- else
- {
- _cupsLangPrintFilter(stderr, "ERROR", _("Bad text direction: %s"),
- valptr);
- fclose(fp);
- exit(1);
- }
-
- /*
- * Got the direction, now get the width...
- */
-
- while (isspace(*lineptr & 255))
- lineptr ++;
-
- valptr = lineptr;
-
- while (!isspace(*lineptr & 255) && *lineptr)
- lineptr ++;
-
- if (!*lineptr)
- {
- /*
- * Can't have a font without all required values...
- */
-
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Bad font description line: %s"), valptr);
- fclose(fp);
- exit(1);
- }
-
- *lineptr++ = '\0';
-
- if (strcmp(valptr, "single") == 0)
- Widths[NumFonts] = 1;
- else if (strcmp(valptr, "double") == 0)
- Widths[NumFonts] = 2;
- else
- {
- _cupsLangPrintFilter(stderr, "ERROR",
- _("Bad text width: %s"), valptr);
- fclose(fp);
- exit(1);
- }
-
- /*
- * Get the fonts...
- */
-
- for (i = 0; *lineptr && i < 4; i ++)
- {
- while (isspace(*lineptr & 255))
- lineptr ++;
-
- valptr = lineptr;
-
- while (!isspace(*lineptr & 255) && *lineptr)
- lineptr ++;
-
- if (*lineptr)
- *lineptr++ = '\0';
-
- if (lineptr > valptr)
- Fonts[NumFonts][i] = strdup(valptr);
- }
-
- /*
- * Fill in remaining fonts as needed...
- */
-
- for (j = i; j < 4; j ++)
- Fonts[NumFonts][j] = strdup(Fonts[NumFonts][0]);
-
- /*
- * Define the character mappings...
- */
-
- for (i = start, j = NumFonts * 256; i <= end; i ++, j ++)
- {
- Chars[i] = j;
- Codes[j] = i;
- }
-
- /*
- * Move to the next font, stopping if needed...
- */
-
- NumFonts ++;
- if (NumFonts >= 256)
- break;
- }
-
- fclose(fp);
- }
- else
- {
- _cupsLangPrintFilter(stderr, "ERROR", _("Bad charset type: %s"), lineptr);
- fclose(fp);
- exit(1);
- }
- }
- else
- {
- /*
- * Standard ASCII output just uses Courier, Courier-Bold, and
- * possibly Courier-Oblique.
- */
-
- NumFonts = 1;
-
- Fonts[0][ATTR_NORMAL] = strdup("Courier");
- Fonts[0][ATTR_BOLD] = strdup("Courier-Bold");
- Fonts[0][ATTR_ITALIC] = strdup("Courier-Oblique");
- Fonts[0][ATTR_BOLDITALIC] = strdup("Courier-BoldOblique");
-
- Widths[0] = 1;
- Directions[0] = 1;
-
- /*
- * Define US-ASCII characters...
- */
-
- for (i = 32; i < 127; i ++)
- {
- Chars[i] = i;
- Codes[i] = i;
- }
- }
-
- /*
- * Generate a list of unique fonts to use...
- */
-
- for (i = 0, num_fonts = 0; i < NumFonts; i ++)
- for (j = PrettyPrint ? 2 : 1; j >= 0; j --)
- {
- for (k = 0; k < num_fonts; k ++)
- if (strcmp(Fonts[i][j], fonts[k]) == 0)
- break;
-
- if (k >= num_fonts)
- {
- /*
- * Add new font...
- */
-
- fonts[num_fonts] = Fonts[i][j];
- num_fonts ++;
- }
- }
-
- /*
- * List the fonts that will be used...
- */
-
- for (i = 0; i < num_fonts; i ++)
- if (i == 0)
- printf("%%%%DocumentNeededResources: font %s\n", fonts[i]);
- else
- printf("%%%%+ font %s\n", fonts[i]);
-
- puts("%%DocumentSuppliedResources: procset texttops 1.1 0");
-
- for (i = 0; i < num_fonts; i ++)
- {
- if (ppd != NULL)
- {
- fprintf(stderr, "DEBUG: ppd->num_fonts = %d\n", ppd->num_fonts);
-
- for (j = 0; j < ppd->num_fonts; j ++)
- {
- fprintf(stderr, "DEBUG: ppd->fonts[%d] = %s\n", j, ppd->fonts[j]);
-
- if (strcmp(fonts[i], ppd->fonts[j]) == 0)
- break;
- }
- }
- else
- j = 0;
-
- if ((ppd != NULL && j >= ppd->num_fonts) ||
- strncmp(fonts[i], "Courier", 7) == 0 ||
- strcmp(fonts[i], "Symbol") == 0)
- {
- /*
- * Need to embed this font...
- */
-
- printf("%%%%+ font %s\n", fonts[i]);
- }
- }
-
- puts("%%EndComments");
-
- puts("%%BeginProlog");
-
- /*
- * Download any missing fonts...
- */
-
- for (i = 0; i < num_fonts; i ++)
- {
- if (ppd != NULL)
- {
- for (j = 0; j < ppd->num_fonts; j ++)
- if (strcmp(fonts[i], ppd->fonts[j]) == 0)
- break;
- }
- else
- j = 0;
-
- if ((ppd != NULL && j >= ppd->num_fonts) ||
- strncmp(fonts[i], "Courier", 7) == 0 ||
- strcmp(fonts[i], "Symbol") == 0)
- {
- /*
- * Need to embed this font...
- */
-
- printf("%%%%BeginResource: font %s\n", fonts[i]);
-
- /**** MRS: Need to use CUPS_FONTPATH env var! ****/
- /**** Also look for Fontmap file or name.pfa, name.pfb... ****/
- snprintf(filename, sizeof(filename), "%s/fonts/%s", datadir, fonts[i]);
- if ((fp = fopen(filename, "rb")) != NULL)
- {
- while ((j = fread(line, 1, sizeof(line), fp)) > 0)
- fwrite(line, 1, j, stdout);
-
- fclose(fp);
- }
-
- puts("\n%%EndResource");
- }
- }
-
- /*
- * Write the encoding array(s)...
- */
-
- puts("% character encoding(s)");
-
- for (i = 0; i < NumFonts; i ++)
- {
- printf("/cupsEncoding%02x [\n", i);
-
- for (ch = 0; ch < 256; ch ++)
- {
- if (Glyphs[Codes[i * 256 + ch]])
- printf("/%s", Glyphs[Codes[i * 256 + ch]]);
- else if (Codes[i * 256 + ch] > 255)
- printf("/uni%04X", Codes[i * 256 + ch]);
- else
- printf("/.notdef");
-
- if ((ch & 7) == 7)
- putchar('\n');
- }
-
- puts("] def");
- }
-
- /*
- * Create the fonts...
- */
-
- if (NumFonts == 1)
- {
- /*
- * Just reencode the named fonts...
- */
-
- puts("% Reencode fonts");
-
- for (i = PrettyPrint ? 2 : 1; i >= 0; i --)
- {
- printf("/%s findfont\n", Fonts[0][i]);
- puts("dup length 1 add dict begin\n"
- " { 1 index /FID ne { def } { pop pop } ifelse } forall\n"
- " /Encoding cupsEncoding00 def\n"
- " currentdict\n"
- "end");
- printf("/%s exch definefont pop\n", names[i]);
- }
- }
- else
- {
- /*
- * Construct composite fonts... Start by reencoding the base fonts...
- */
-
- puts("% Reencode base fonts");
-
- for (i = PrettyPrint ? 2 : 1; i >= 0; i --)
- for (j = 0; j < NumFonts; j ++)
- {
- printf("/%s findfont\n", Fonts[j][i]);
- printf("dup length 1 add dict begin\n"
- " { 1 index /FID ne { def } { pop pop } ifelse } forall\n"
- " /Encoding cupsEncoding%02x def\n"
- " currentdict\n"
- "end\n", j);
- printf("/%s%02x exch definefont /%s%02x exch def\n", names[i], j,
- names[i], j);
- }
-
- /*
- * Then merge them into composite fonts...
- */
-
- puts("% Create composite fonts...");
-
- for (i = PrettyPrint ? 2 : 1; i >= 0; i --)
- {
- puts("8 dict begin");
- puts("/FontType 0 def/FontMatrix[1.0 0 0 1.0 0 0]def/FMapType 2 def/Encoding[");
- for (j = 0; j < NumFonts; j ++)
- if (j == (NumFonts - 1))
- printf("%d", j);
- else if ((j & 15) == 15)
- printf("%d\n", j);
- else
- printf("%d ", j);
- puts("]def/FDepVector[");
- for (j = 0; j < NumFonts; j ++)
- if (j == (NumFonts - 1))
- printf("%s%02x", names[i], j);
- else if ((j & 3) == 3)
- printf("%s%02x\n", names[i], j);
- else
- printf("%s%02x ", names[i], j);
- puts("]def currentdict end");
- printf("/%s exch definefont pop\n", names[i]);
- }
- }
-
- /*
- * Output the texttops procset...
- */
-
- puts("%%BeginResource: procset texttops 1.1 0");
-
- puts("% Define fonts");
-
- printf("/FN /cupsNormal findfont [%.3f 0 0 %.3f 0 0] makefont def\n",
- 120.0 / CharsPerInch, 68.0 / LinesPerInch);
- printf("/FB /cupsBold findfont [%.3f 0 0 %.3f 0 0] makefont def\n",
- 120.0 / CharsPerInch, 68.0 / LinesPerInch);
- if (PrettyPrint)
- printf("/FI /cupsItalic findfont [%.3f 0 0 %.3f 0 0] makefont def\n",
- 120.0 / CharsPerInch, 68.0 / LinesPerInch);
-
- puts("% Common procedures");
-
- puts("/N { FN setfont moveto } bind def");
- puts("/B { FB setfont moveto } bind def");
- printf("/U { gsave 0.5 setlinewidth 0 %.3f rmoveto "
- "0 rlineto stroke grestore } bind def\n", -6.8 / LinesPerInch);
-
- if (PrettyPrint)
- {
- if (ColorDevice)
- {
- puts("/S { 0.0 setgray show } bind def");
- puts("/r { 0.5 0.0 0.0 setrgbcolor show } bind def");
- puts("/g { 0.0 0.5 0.0 setrgbcolor show } bind def");
- puts("/b { 0.0 0.0 0.5 setrgbcolor show } bind def");
- }
- else
- {
- puts("/S { 0.0 setgray show } bind def");
- puts("/r { 0.2 setgray show } bind def");
- puts("/g { 0.2 setgray show } bind def");
- puts("/b { 0.2 setgray show } bind def");
- }
-
- puts("/I { FI setfont moveto } bind def");
-
- puts("/n {");
- puts("\t20 string cvs % convert page number to string");
- if (NumFonts > 1)
- {
- /*
- * Convert a number to double-byte chars...
- */
-
- puts("\tdup length % get length");
- puts("\tdup 2 mul string /P exch def % P = string twice as long");
- puts("\t0 1 2 index 1 sub { % loop through each character in the page number");
- puts("\t\tdup 3 index exch get % get character N from the page number");
- puts("\t\texch 2 mul dup % compute offset in P");
- puts("\t\tP exch 0 put % font 0");
- puts("\t\t1 add P exch 2 index put % character");
- puts("\t\tpop % discard character");
- puts("\t} for % do for loop");
- puts("\tpop pop % discard string and length");
- puts("\tP % put string on stack");
- }
- puts("} bind def");
-
- printf("/T");
- write_text(title);
- puts("def");
-
- printf("/D");
- write_text(curdate);
- puts("def");
-
- puts("/H {");
- puts("\tgsave");
- puts("\t0.9 setgray");
-
- if (Duplex)
- {
- puts("\tdup 2 mod 0 eq {");
- printf("\t\t%.3f %.3f translate } {\n",
- PageWidth - PageRight, PageTop + 72.0f / LinesPerInch);
- printf("\t\t%.3f %.3f translate } ifelse\n",
- PageLeft, PageTop + 72.0f / LinesPerInch);
- }
- else
- printf("\t%.3f %.3f translate\n",
- PageLeft, PageTop + 72.0f / LinesPerInch);
-
- printf("\t0 0 %.3f %.3f rectfill\n", PageRight - PageLeft,
- 144.0f / LinesPerInch);
-
- puts("\tFB setfont");
- puts("\t0 setgray");
-
- if (Duplex)
- {
- puts("\tdup 2 mod 0 eq {");
- printf("\t\tT stringwidth pop neg %.3f add %.3f } {\n",
- PageRight - PageLeft - 36.0f / LinesPerInch,
- (0.5f + 0.157f) * 72.0f / LinesPerInch);
- printf("\t\t%.3f %.3f } ifelse\n", 36.0f / LinesPerInch,
- (0.5f + 0.157f) * 72.0f / LinesPerInch);
- }
- else
- printf("\t%.3f %.3f\n", 36.0f / LinesPerInch,
- (0.5f + 0.157f) * 72.0f / LinesPerInch);
-
- puts("\tmoveto T show");
-
- printf("\tD dup stringwidth pop neg 2 div %.3f add %.3f\n",
- (PageRight - PageLeft) * 0.5,
- (0.5f + 0.157f) * 72.0f / LinesPerInch);
- puts("\tmoveto show");
-
- if (Duplex)
- {
- puts("\tdup n exch 2 mod 0 eq {");
- printf("\t\t%.3f %.3f } {\n", 36.0f / LinesPerInch,
- (0.5f + 0.157f) * 72.0f / LinesPerInch);
- printf("\t\tdup stringwidth pop neg %.3f add %.3f } ifelse\n",
- PageRight - PageLeft - 36.0f / LinesPerInch,
- (0.5f + 0.157f) * 72.0f / LinesPerInch);
- }
- else
- printf("\tn dup stringwidth pop neg %.3f add %.3f\n",
- PageRight - PageLeft - 36.0f / LinesPerInch,
- (0.5f + 0.157f) * 72.0f / LinesPerInch);
-
- puts("\tmoveto show");
- puts("\tgrestore");
- puts("} bind def");
- }
- else
- puts("/S { show } bind def");
-
- puts("%%EndResource");
-
- puts("%%EndProlog");
-}
-
-
-/*
- * 'write_line()' - Write a row of text.
- */
-
-static void
-write_line(int row, /* I - Row number (0 to N) */
- lchar_t *line) /* I - Line to print */
-{
- int i; /* Looping var */
- int col; /* Current column */
- int attr; /* Current attribute */
- int font, /* Font to use */
- lastfont, /* Last font */
- mono; /* Monospaced? */
- lchar_t *start; /* First character in sequence */
-
-
- for (col = 0; col < SizeColumns;)
- {
- while (col < SizeColumns && (line->ch == ' ' || line->ch == 0))
- {
- col ++;
- line ++;
- }
-
- if (col >= SizeColumns)
- break;
-
- if (NumFonts == 1)
- {
- /*
- * All characters in a single font - assume monospaced...
- */
-
- attr = line->attr;
- start = line;
-
- while (col < SizeColumns && line->ch != 0 && attr == line->attr)
- {
- col ++;
- line ++;
- }
-
- write_string(col - (line - start), row, line - start, start);
- }
- else
- {
- /*
- * Multiple fonts; break up based on the font...
- */
-
- attr = line->attr;
- start = line;
- lastfont = Chars[line->ch] / 256;
- mono = strncmp(Fonts[lastfont][0], "Courier", 7) == 0;
- col ++;
- line ++;
-
- if (mono)
- {
- while (col < SizeColumns && line->ch != 0 && attr == line->attr)
- {
- font = Chars[line->ch] / 256;
- if (strncmp(Fonts[font][0], "Courier", 7) != 0 ||
- font != lastfont)
- break;
-
- col ++;
- line ++;
- }
- }
-
- if (Directions[lastfont] > 0)
- write_string(col - (line - start), row, line - start, start);
- else
- {
- /*
- * Do right-to-left text...
- */
-
- while (col < SizeColumns && line->ch != 0 && attr == line->attr)
- {
- if (Directions[Chars[line->ch] / 256] > 0 &&
- !ispunct(line->ch & 255) && !isspace(line->ch & 255))
- break;
-
- col ++;
- line ++;
- }
-
- for (i = 1; start < line; i ++, start ++)
- if (!isspace(start->ch & 255))
- write_string(col - i, row, 1, start);
- }
- }
- }
-}
-
-
-/*
- * 'write_string()' - Write a string of text.
- */
-
-static void
-write_string(int col, /* I - Start column */
- int row, /* I - Row */
- int len, /* I - Number of characters */
- lchar_t *s) /* I - String to print */
-{
- int ch; /* Current character */
- float x, y; /* Position of text */
- unsigned attr; /* Character attributes */
-
-
- /*
- * Position the text and set the font...
- */
-
- if (Duplex && (NumPages & 1) == 0)
- {
- x = PageWidth - PageRight;
- y = PageTop;
- }
- else
- {
- x = PageLeft;
- y = PageTop;
- }
-
- x += (float)col * 72.0f / (float)CharsPerInch;
- y -= (float)(row + 0.843) * 72.0f / (float)LinesPerInch;
-
- attr = s->attr;
-
- if (attr & ATTR_RAISED)
- y += 36.0 / (float)LinesPerInch;
- else if (attr & ATTR_LOWERED)
- y -= 36.0 / (float)LinesPerInch;
-
- if (x == (int)x)
- printf("%.0f ", x);
- else
- printf("%.3f ", x);
-
- if (y == (int)y)
- printf("%.0f ", y);
- else
- printf("%.3f ", y);
-
- if (attr & ATTR_BOLD)
- putchar('B');
- else if (attr & ATTR_ITALIC)
- putchar('I');
- else
- putchar('N');
-
- if (attr & ATTR_UNDERLINE)
- printf(" %.3f U", (float)len * 72.0 / (float)CharsPerInch);
-
- if (NumFonts > 1)
- {
- /*
- * Write a hex string...
- */
-
- putchar('<');
-
- while (len > 0)
- {
- printf("%04x", Chars[s->ch]);
-
- len --;
- s ++;
- }
-
- putchar('>');
- }
- else
- {
- /*
- * Write a quoted string...
- */
-
- putchar('(');
-
- while (len > 0)
- {
- ch = Chars[s->ch];
-
- if (ch < 32 || ch > 126)
- {
- /*
- * Quote 8-bit and control characters...
- */
-
- printf("\\%03o", ch);
- }
- else
- {
- /*
- * Quote the parenthesis and backslash as needed...
- */
-
- if (ch == '(' || ch == ')' || ch == '\\')
- putchar('\\');
-
- putchar(ch);
- }
-
- len --;
- s ++;
- }
-
- putchar(')');
- }
-
- if (PrettyPrint)
- {
- if (attr & ATTR_RED)
- puts("r");
- else if (attr & ATTR_GREEN)
- puts("g");
- else if (attr & ATTR_BLUE)
- puts("b");
- else
- puts("S");
- }
- else
- puts("S");
-}
-
-
-/*
- * 'write_text()' - Write a text string, quoting/encoding as needed.
- */
-
-static void
-write_text(const char *s) /* I - String to write */
-{
- int ch; /* Actual character value (UTF8) */
- const unsigned char *utf8; /* UTF8 text */
-
-
- if (NumFonts > 1)
- {
- /*
- * 8/8 encoding...
- */
-
- putchar('<');
-
- utf8 = (const unsigned char *)s;
-
- while (*utf8)
- {
- if (*utf8 < 0xc0)
- ch = *utf8 ++;
- else if ((*utf8 & 0xe0) == 0xc0)
- {
- /*
- * Two byte character...
- */
-
- ch = ((utf8[0] & 0x1f) << 6) | (utf8[1] & 0x3f);
- utf8 += 2;
- }
- else
- {
- /*
- * Three byte character...
- */
-
- ch = ((((utf8[0] & 0x1f) << 6) | (utf8[1] & 0x3f)) << 6) |
- (utf8[2] & 0x3f);
- utf8 += 3;
- }
-
- printf("%04x", Chars[ch]);
- }
-
- putchar('>');
- }
- else
- {
- /*
- * Standard 8-bit encoding...
- */
-
- putchar('(');
-
- while (*s)
- {
- if (*s < 32 || *s > 126)
- printf("\\%03o", *s);
- else
- {
- if (*s == '(' || *s == ')' || *s == '\\')
- putchar('\\');
-
- putchar(*s);
- }
-
- s ++;
- }
-
- putchar(')');
- }
-}
-
-
-/*
- * End of "$Id: texttops.c 9399 2010-12-03 06:29:20Z mike $".
- */
diff --git a/fonts/Makefile b/fonts/Makefile
deleted file mode 100644
index 516b53fb..00000000
--- a/fonts/Makefile
+++ /dev/null
@@ -1,118 +0,0 @@
-#
-# "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $"
-#
-# Fonts makefile for CUPS.
-#
-# Copyright 2007-2011 by Apple Inc.
-# Copyright 1993-2006 by Easy Software Products.
-#
-# These coded instructions, statements, and computer programs are the
-# property of Apple Inc. and are protected by Federal copyright
-# law. Distribution and use rights are outlined in the file "LICENSE.txt"
-# which should have been included with this file. If this file is
-# file is missing or damaged, see the license at "http://www.cups.org/".
-#
-
-include ../Makedefs
-
-#
-# Font files...
-#
-
-FONTS = \
- Monospace \
- Monospace-Bold \
- Monospace-BoldOblique \
- Monospace-Oblique
-
-
-#
-# Make everything...
-#
-
-all:
-
-
-#
-# Make library targets...
-#
-
-libs:
-
-
-#
-# Make unit tests...
-#
-
-unittests:
-
-
-#
-# Clean all config and object files...
-#
-
-clean:
-
-
-#
-# Dummy depend target...
-#
-
-depend:
-
-
-#
-# Install all targets...
-#
-
-install: all install-data install-headers install-libs install-exec
-
-
-#
-# Install data files...
-#
-
-install-data:
- $(INSTALL_DIR) -m 755 $(DATADIR)/fonts
- if test "x$(BANNERTOPS)" != x -o "x$(TEXTTOPS)" != x; then \
- for file in $(FONTS); do \
- $(INSTALL_DATA) $$file $(DATADIR)/fonts; \
- done \
- fi
-
-
-#
-# Install programs...
-#
-
-install-exec:
-
-
-#
-# Install headers...
-#
-
-install-headers:
-
-
-#
-# Install libraries...
-#
-
-install-libs:
-
-
-#
-# Uninstall files...
-#
-
-uninstall:
- for file in $(FONTS); do \
- $(RM) $(DATADIR)/fonts/$$file; \
- done
- $(RMDIR) $(DATADIR)/fonts
-
-
-#
-# End of "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $".
-#
diff --git a/fonts/Monospace b/fonts/Monospace
deleted file mode 100644
index 2512b85f..00000000
--- a/fonts/Monospace
+++ /dev/null
@@ -1,2744 +0,0 @@
-%!PS-AdobeFont-1.0: Monospace 1.15
-%%DocumentSuppliedResources: font Monospace
-%%Title: Monospace
-%Version: 1.15
-%%CreationDate: Thu Oct 27 10:50:21 2005
-%%Creator: mike
-%Copyright: Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved.
-%Copyright: DejaVu changes are in public domain
-
-% Generated by FontForge 20051018 (http://fontforge.sf.net/)
-%%EndComments
-
-FontDirectory/Monospace known{/Monospace findfont dup/UniqueID known{dup
-/UniqueID get 4166841 eq exch/FontType get 1 eq and}{pop false}ifelse
-{save true}{false}ifelse}{false}ifelse
-11 dict begin
-/FontType 1 def
-/FontMatrix [0.000488281 0 0 0.000488281 0 0 ]readonly def
-/FontName /Monospace def
-/FontBBox {-109 -1034 1342 2133 }readonly def
-/UniqueID 4166841 def
-/PaintType 0 def
-/FontInfo 11 dict dup begin
- /version (1.15) readonly def
- /Notice (Copyright \050c\051 2003 by Bitstream, Inc. All Rights Reserved.\012DejaVu changes are in public domain\012) readonly def
-% Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved.
-% DejaVu changes are in public domain
- /FullName (Monospace) readonly def
- /FamilyName (Monospace) readonly def
- /Weight (Book) readonly def
- /FSType 0 def
- /ItalicAngle 0 def
- /isFixedPitch true def
- /UnderlinePosition -213 def
- /UnderlineThickness 141 def
- /ascent 1556 def
-end readonly def
-/Encoding 256 array
- 0 1 255 { 1 index exch /.notdef put} for
-dup 32/space put
-dup 33/exclam put
-dup 34/quotedbl put
-dup 35/numbersign put
-dup 36/dollar put
-dup 37/percent put
-dup 38/ampersand put
-dup 39/quotesingle put
-dup 40/parenleft put
-dup 41/parenright put
-dup 42/asterisk put
-dup 43/plus put
-dup 44/comma put
-dup 45/hyphen put
-dup 46/period put
-dup 47/slash put
-dup 48/zero put
-dup 49/one put
-dup 50/two put
-dup 51/three put
-dup 52/four put
-dup 53/five put
-dup 54/six put
-dup 55/seven put
-dup 56/eight put
-dup 57/nine put
-dup 58/colon put
-dup 59/semicolon put
-dup 60/less put
-dup 61/equal put
-dup 62/greater put
-dup 63/question put
-dup 64/at put
-dup 65/A put
-dup 66/B put
-dup 67/C put
-dup 68/D put
-dup 69/E put
-dup 70/F put
-dup 71/G put
-dup 72/H put
-dup 73/I put
-dup 74/J put
-dup 75/K put
-dup 76/L put
-dup 77/M put
-dup 78/N put
-dup 79/O put
-dup 80/P put
-dup 81/Q put
-dup 82/R put
-dup 83/S put
-dup 84/T put
-dup 85/U put
-dup 86/V put
-dup 87/W put
-dup 88/X put
-dup 89/Y put
-dup 90/Z put
-dup 91/bracketleft put
-dup 92/backslash put
-dup 93/bracketright put
-dup 94/asciicircum put
-dup 95/underscore put
-dup 96/grave put
-dup 97/a put
-dup 98/b put
-dup 99/c put
-dup 100/d put
-dup 101/e put
-dup 102/f put
-dup 103/g put
-dup 104/h put
-dup 105/i put
-dup 106/j put
-dup 107/k put
-dup 108/l put
-dup 109/m put
-dup 110/n put
-dup 111/o put
-dup 112/p put
-dup 113/q put
-dup 114/r put
-dup 115/s put
-dup 116/t put
-dup 117/u put
-dup 118/v put
-dup 119/w put
-dup 120/x put
-dup 121/y put
-dup 122/z put
-dup 123/braceleft put
-dup 124/bar put
-dup 125/braceright put
-dup 126/asciitilde put
-dup 160/nonbreakingspace put
-dup 161/exclamdown put
-dup 162/cent put
-dup 163/sterling put
-dup 164/currency put
-dup 165/yen put
-dup 166/brokenbar put
-dup 167/section put
-dup 168/dieresis put
-dup 169/copyright put
-dup 170/ordfeminine put
-dup 171/guillemotleft put
-dup 172/logicalnot put
-dup 173/sfthyphen put
-dup 174/registered put
-dup 175/macron put
-dup 176/degree put
-dup 177/plusminus put
-dup 178/twosuperior put
-dup 179/threesuperior put
-dup 180/acute put
-dup 181/mu put
-dup 182/paragraph put
-dup 183/periodcentered put
-dup 184/cedilla put
-dup 185/onesuperior put
-dup 186/ordmasculine put
-dup 187/guillemotright put
-dup 188/onequarter put
-dup 189/onehalf put
-dup 190/threequarters put
-dup 191/questiondown put
-dup 192/Agrave put
-dup 193/Aacute put
-dup 194/Acircumflex put
-dup 195/Atilde put
-dup 196/Adieresis put
-dup 197/Aring put
-dup 198/AE put
-dup 199/Ccedilla put
-dup 200/Egrave put
-dup 201/Eacute put
-dup 202/Ecircumflex put
-dup 203/Edieresis put
-dup 204/Igrave put
-dup 205/Iacute put
-dup 206/Icircumflex put
-dup 207/Idieresis put
-dup 208/Eth put
-dup 209/Ntilde put
-dup 210/Ograve put
-dup 211/Oacute put
-dup 212/Ocircumflex put
-dup 213/Otilde put
-dup 214/Odieresis put
-dup 215/multiply put
-dup 216/Oslash put
-dup 217/Ugrave put
-dup 218/Uacute put
-dup 219/Ucircumflex put
-dup 220/Udieresis put
-dup 221/Yacute put
-dup 222/Thorn put
-dup 223/germandbls put
-dup 224/agrave put
-dup 225/aacute put
-dup 226/acircumflex put
-dup 227/atilde put
-dup 228/adieresis put
-dup 229/aring put
-dup 230/ae put
-dup 231/ccedilla put
-dup 232/egrave put
-dup 233/eacute put
-dup 234/ecircumflex put
-dup 235/edieresis put
-dup 236/igrave put
-dup 237/iacute put
-dup 238/icircumflex put
-dup 239/idieresis put
-dup 240/eth put
-dup 241/ntilde put
-dup 242/ograve put
-dup 243/oacute put
-dup 244/ocircumflex put
-dup 245/otilde put
-dup 246/odieresis put
-dup 247/divide put
-dup 248/oslash put
-dup 249/ugrave put
-dup 250/uacute put
-dup 251/ucircumflex put
-dup 252/udieresis put
-dup 253/yacute put
-dup 254/thorn put
-dup 255/ydieresis put
-readonly def
-currentdict end
-currentfile eexec
-17F6ABC0BD4E5B049FA8ED1415B73797205424D2E47FC5DF8590627DC99082760E8B3E17
-0C18AF49528FA9DB386CE480B471EC8797784FB466233A879056FB46290A8F49442020C3
-E00AF7FDB602BAC1C4F8636E32FDDB936FC70C567B075E18878EA286E1D24CC1E14B50B7
-DCDD17FD5295A3F44E0DA80366E61263EA00234FA095739BDE371FED9A24338A8CAB0F53
-5964F1515D62E477A2F1C2BEEA2DF171E3962F0DE53E2763D7DE117F6B5328691D69C4D8
-D071D89F6AB4731DFE0A1FCC4F32351620B2B48E12AEAD940270EF4990B511E7D052C3A4
-2AAEF583BD41B85778646ED2E9A86A73A1089F502672860E7A7A9CFC2F7B2E221C6C9080
-7B7E7B4218C9B10B574C73E195D6C97D1EDC5FA365221BD82148D1ADEA7F235FFC14AD5A
-47E11207058A7A9059FF373F66FEA5A9113CE0BCAF084AAE135556FE84AA4C5A9070BD77
-E7D39A94BA711FDFE442366E9F27F14EF80FFF2C342189C2E28D9FC541F049944C1CF913
-2A014935BF47B42C4E0847A335B4E6CE5016C1B8FC0C3E153C07ADF3C0B00CE001DDF36F
-DE0CC04A25FA1635707299ACB277BFF663DE9558664D1DE90465FBC67BAEA7B1851FCC85
-7364E4BB97470017B40C4D54096C4AE2469A5D037963C7F009DD25A32C20487FF1F1F0A0
-124BF0B10891BC1FBDC65F9192B7236A694E1CFD1388CD27288222AE80032683C803533D
-E6C39DF03BFA02DB5F35C1B99531836F38F6F04192AE3228C0F19841842F5C907529175B
-6BF7B4A8D7B3F27FB39A58B7D3CF11A306701B548C3DC231102A45496B5535C96FBF0412
-004ED0658F28F845F4B0C5F02A680737A738A559E8E6BFCA7584C0A9FAB1B5D3C8995508
-856337933B9A49D0624F25CC06C8243C2A8816426753B631100403B630D81FCA4D08527F
-3AE881DA5332F16C4D8B15F3CBD4DF36430C2199BE5CD27CCF4BE86F5519C046E73442E3
-AEC3F3DAD10948A6AF7740BE87874A288FB27851EF698B571A027E5787BB45BA566A2822
-69423D624D118CA8D14B389A93193F1C8CF64CDC3F0153D4B8CA8AA843C2C26AAC2971DA
-7F52B17B21ACE56A7021C6255A2707BFF033A1477C42C0B5D2001820FC9A8BFFB4E9DBAB
-B595E925C78C9CF87420160DC0B549CBD8A3D12352AFE06CFEF38A2D3715AECCF86E0919
-790BA8FEAE050576C4DFCB416E2DF5FA3B25192F16A935C9CA82C87CC997CA5909B956FA
-1622B10EAD7465B8FE6B347675D7C363581C9B52C9D020AD5CF983284D9359F4C8F9E91B
-C073DAFC702EA788540E72A08668BEA885605C8D42E5F6BAE086F3591C614D438FAB01E1
-3D69768ED2249FF1079E2EE704F9672DF9DF9C8A41CADAE9013809F1DA83673A8398B477
-A13B4B0093E151F6489A2D9BC119A66232A1AB85F31979FBA9EE7F163FD59FE14C72FAFF
-A1CFCC482619E13021FEC7F10C6730E5A7FCAEE84EB5011F13E407591BCE6353D5AD0634
-D4414B008C95F31170FD8F33F83C6B02DDDF05401012E7260A3DD0213857AF9072EF5DA7
-389AE027997C2D7130443A4B2E505A9F17B00E84E142E4ECBFF3AEF2C2C4E84F162E2F7E
-436222EBA20B0DB87346084A2BF64B70B1796729F845D456702C7625AD2CA3D232345C9C
-12B9DCBDFAB9B8F697E5E4EF2D473D119F81A46F6FD8A03AAC73211F36FF824DE6E03788
-BD669A0E7F2813A4AA830C8EF8BE445CABE6019318806D10C5952157FF8F8286C1EE7015
-45C8F60EFA854EAE66835A2046A6915D395F1E0366A459E43236162A929ABE6ECDB26B57
-EAE7CE3731E0DB75ED207292FD83B6B288231E4F3F8170DCB831DF571EC07CE2D698CB6B
-88C63F342E89FA1BE8879269D9F818C4F740C38EB419A8A814E52AC7CA90187730F43520
-115D7388390F20A8119771ED45AE1E58C1DD30B171E7B5B2E75DC63EDF55BCB9D7BF3119
-5E4BC6D91227A24B996F83BF8AA17D3A1DFD34B32E91C4F51C229796662763D1668E884B
-E9BE85D60132A4C45ECFA6FEBEFFD3E34AF21DA897B24A5B836D4DF2E81D1B51FE682095
-63128FFE15E36687F7720F3C980EDED7A794EB420F3E0465B1E93755F64A9C54A24058FE
-E496317919512048C2B01062574EAA66A2F86D01F58D9D252F2A84E7B44A057D8DE0EF2F
-EF7B752B46B1643D7E57D2871CC15D0DAC4852901205AEB7C996A957C4A0605AAC287AA6
-581DD2C8ED591B89BA7126687F970D7D49E84AD96BCE16AFE6508B25E85D530D9A9F7A11
-E788CBC50E80F8A4ECD26C241C37078EDC447DFF2A43ED7BF1E00B6F227926A9913ACEB0
-98B833E54B3FD10F9D0CE4B8ED76549239A7F4FE846B9D57F26B53229856681CA7D3EFB0
-22CCF57311C872CD0D0342A2FFC59E2F13B32D530B0268A4D01A14193D1B17001E205355
-1E42338F7BAE7D9B02780A3D972AE4E904DD34761AA66159CEF52B226277596A2A9433D6
-4B5AA165D9595B99829EEA6E26F4E10DE1B6E0F33BDBB010A036D221B7F4191F4420B6EF
-621566F238B0ACC9A7C41B90823D9DA08E327896CAE4AEE60F860240EC8A89C03E44E2CD
-D4E767F4D457275E3F7AD41D4983D7C6BCEE26E6A7EBAD234DADE81B2C98C1F3F396979C
-04A4E00E6F4AFDDDBE9D9EB775D1A1EE76399AEC7D30D3CD09AFD73601ADF5593B56D0B1
-4471810AF628AF86D1237E3690509FBAB8FB2F4D041CDA612467B254CBBF83780C60C1C7
-AED265168AFC379F832EBA6D6DFA2CE6FBE127690B37309F6A613608BA98A5B77E9ED5E4
-E7C373750542C245C20D10035D1163AE93970F3A8CCA7B5A57DD0503060637DEA1CDC404
-713E1DE9E328DD8D902D24E0C70B17620EA2217B7E51589626FF6923A0D76DE1B480DFC9
-CE2B7BE62919C80623B7E39BBBE748E8E70242233CCCC5899AE70F1A3B380418564AAB15
-E4CCB6BE3A9329C58D8843AA7D287D851168FB531FA694CAE2B9D77C13720A9499C13D50
-B4D6AB2A5BCAE592D465FBADE34CF7316886A7287918889EEB7FE26AB47B5319F833422D
-803421C29FBCCF0D64657D945676C968938B633371EA7B3114BE2C23FD20581CDE846A7F
-C5C57C4A4BFBE5A649B20E3756BA94FA8C45D0542134790D6105890BB01C961ACB87C761
-743FBA8F2549015D6B171EFD0390ECDB7744E185BB9D88BA42C4CCD61CF9AAC20B6E4C0D
-A70F20091A75C9250C9F9287CDDD78D39400A85D28C70E38B38D33903E7496D3EE1FE98D
-B047C84C59A60A58DA8DAC47A058A825544C1B4F4CBDFDD99A04BB691854A20A773544DA
-A39EC11B14C864220F74CC2307075EBB4847AFF216614A471B1B169DCFF4F89FE390CB97
-46089C958316DEFEDDDF9F3BE4A6BCD0423836A7AC3F7A29CC863418B703668188C962D3
-6803BCEF438B47363A40762165AB9671A46F9253DDE8AFC38DAE53F7E34230ADE2830956
-F5B7EB9BE9E0086B7FB715173272B381B494085744ED8F2EDFAA567E2DFEC2861A231157
-818D7DC0898DCB8B8AE30BC0F1A65F018BBDFF3ACBA4436B5E824B6B4CC0F4402856E259
-F1D5F1C770A1589A621F9747B5F7E81908016DD977ADED8019C39BF5CB9AB35CA82CC83E
-AEC842F6913929F8339EC1DCB27A53E3E1006174E2C8CBE4756F6762395DFB5AD85947BC
-63137E05269807A5958D5A346528162B4C1B485E858DDB2ED3AF35A0485CBDECE9A2893D
-C28B94DABA77498C26861FEF72571B5B66477862642465030FA5633E47B24BB8697E5A20
-73945D8E2338E554D66EAF307D9035AC9678414E799EC56AD03EB72A72B227DC18C3B27E
-8AA1679D14FFBABF22FD2EE80C94AD06C34FE7F7597A82E1EFF272F2FCD72AECE10D5102
-BA8682441BAB1E8DD83EFAD74757A96051DE07782FE7B7D7BDF36DF39A434E59F1D2630D
-93B66D1AD1A9565211B13427A036019C538D4C4314905257E8FEB31FC5DD316F606D7BFB
-9CC3829EBCEAAF3722E465C60AB1D7CBA1D2D229CC28D11DF8FAFD2169339C0B61AEC73B
-6FC855B5567FBF05D9088734DDD8755700C80A5C942915811567F103D0CB70611DE63F61
-9B2908AEED0B33A1CD43A84785FF49EE977D5C45E1ADE13672FBB01DB79096DFF6036904
-30B27DD8C0609AB745C238EC6F73B1CB8234794DDD9E1A41681CC004362DB2A97B8A96E9
-C981F7848C4BA5ECCE7CB87713B6B7C7CDB7450AFA5FA6719A8EF035D672A136AD494139
-8E777EBDBCA5DC8A9DFD54654883221071167CB4756FCD042891D85E4B2F5F306F39CD0F
-B2E267665EC0A394A150D73A9AFE7C1098609BB6247A6DD24B01BD3B78DA1E49AAAFF696
-D27A53696FC27DA3B017224587D43372CD3406CCE3AC952D73C9AF01058C8EFFBD0C177B
-204C6DF2CFC597FF177ADCAB6FCBD5F0267B00CA18311A4250FD04DF3809D4DB2C0E4778
-3D905D787362901E1171745B2A66848A3B617F29FE183DF6F746F9011AB14925AAFA1C4C
-159C27D3BF8537D6FAA40A20B47745BD7148C698C450F18D0ADEBA3095F0379B7D0B4354
-E1BFFF0C63C7D745F0085D7239612CB0E5EF4B8FAEF7C19A7300881206500AC612D0C42C
-66F4B99C32AF8CFFB05749260B56B7B425B550C427368E45AB7BB682C9D3E07FAF35DC89
-0AC6191384133DA9DCA3F3977243D277E0A1B833E37C4399B67DC083168310ED294ABA2B
-6A96F5F1F7E8A18E5C8A95CE1E224DBBFFCBE5E54BCD199625EBB5E5DDF1F2795DD53D81
-86A5EEE389B4EA7402B14D2BA4B3D9A1F50079AE9809A0B0A5061764A3320D9AB4B5CF1C
-4BCAAA4CB0F2926A46397B9D8F3B3956E647FCF3034A34B6BAB88BD4C53FB84638DA56D2
-2C65DB9BDEB68FCAD5CAB7B184EAEC585677704583CE9372F90471EA5B68FC5D1DD702A0
-A7668E6C7416E4A5CD646EFD2359DBB7367492BC0B4E6BAFA13D3D3975604E1A187A6E61
-EF6087394EAC2F8FA9FB4C040A994545480329FF5FF9B4727A39356F8A4043A74A9A7E2D
-250826ADD481F91B9DB916A9FD5FE4469A9861A96BDF6BD3DAE13293B9DC2A318A35D7FF
-DBCD241F2FB394644895A3F53C457C752A72E8167E6B7D4495B3C1DF0EC53127509988F1
-49D6C49CDA35B00652F148D3CAEFA3EFD8954E80766AEFCB85953366389FD4DF6D70E36E
-B321BDB176FE7B75CC31A73F4DB7BDF5E0B45C23FFAD7B7EE35B9B6E9EA4141F4F98430B
-D93BE0FCF80D63D7860E9B43D161DA7A68C2BD51E2E95ED7B54A91466D0716603CC41E83
-7004D94DABC5D971330DF98672136E372129A77CB496C7200FE3E287F7936E8002B54C51
-25B364B6E07943A078E2C018678B7E159C1DFDE7633CC3633B38D50C54B98B45DF4A972B
-93B4B4013F8F1EC0083B09F3FAFD2CE2B2ED5791DDC0945679A122F21B4C5D67DA6E5A5F
-2A5893AD3AA7AFD891ABC6860F14EE16DDE548520DC88C2CE6099861B038EB25A01589D3
-2F4AE37FAA4D171416651CCE37FA4EB8D063A0977988E50F9036C0A9C8E99E6D586EED28
-E0FEFBE7406386EB9FBDCBD8DF820F6371C99C6F7A4F2E3F43FD2792A9A2D3F81BD3DC6E
-DEB59B1B4DACC2F278A0C6C1D3B841A73525F311504CEFC8538CD53C487F612D9045AB40
-8B8A76195907E3B679CE68322703C2F80A50401BD44BB5D14080A46F859075C9B51BF0A2
-C42321EDE4254F558FE33357746631F407C16675320B8DF3E24E0FBE2E93BF718CBCCF5F
-F21F013313BAF474F239CD0FE72EB03279791A95BB322DF5C4725763052185CD5CDEDC76
-071B4B2337B406337237A2A6490D75598CF6010D22582B8A12871C17003839A8A8C42E92
-EFC92B7EF0763D7B6481965F890802C7AD345F2FFB5A444DE404C833D1D9DB1CEE2DABB6
-42DB540CB398BD2C16A7383E649A0714154E72D94438FF904755399C1674F5E01CD45590
-CD04C4FE3292356650A3D431D7600426A1475B5919722726468C247BCD565965DA6E4A83
-28644CB1FD2A23B1B45F74E6B4BA9AE065BE873BBB80505D16D54D9DE69026CF1DE8DEBD
-E472F067C70CB4104D23ED0CC9BF68055283A6CC2AAF48FC59A580DA8597F95EBB8F61FB
-C4F6B12FEE888AD60897383AB17D227C0CEF95E86F149ED6B71C2FD67F5A996E8B34C5EE
-23DFFEE49200A250611E32FE3300AEE9BF13790703B6AC983C965F1C52D2BE0BE876D4A8
-85FCE072D5D584B12CF2CF91BD7D7F9EDA1D6FD62F40AB5682312D6138030FA1EBE9B194
-1DA4ABAE5A781EA979F608C6F0D5481CF48AACE9F79031574204447596555188C3D6048D
-B9D7D8D1F0B67DD5F3468E7C7B647DCD1AC3B3C95E1DA6DA05816B49DC8BB86E85C0094C
-6C9A703B88F020363930195842A753EE42B4BEC13B668101203BBB7D5CF7E9C3E39716B9
-85F4BA374147BC7B13BC2515C8A500596D35152A102FA248B9E30D6050C11045B9A81213
-7C228594EE2725F43CCE59D3F1669F0B4722B2171811C2A12B1905C0B40EF1B1957731A3
-A20D29302DB48D061351430549F57084C31D008391BC9D20534EA98CA6F951E00FDE49F6
-22913C19F44E489CF9A80274B43CA60CA5C517C821426D5BFA185649ADC0F1AFFE8ABFBC
-A0A03CF0DB690CAF902219A5580EEB11DD3ED650979550454929EFDCC32C7E8418B80F54
-F0CAD6049E2EB23D5DBC2D680772F03E8F3D19913E6F771AC65C1575AA6968CC6857633A
-C2520C09AE900BA1CED6C5C21C2CF8BCA8D676A539F22DFE03B4134AA8181CB38BB0F69F
-C83517AB3AAB165F2A1FA474E067627199406D26881E8066E509D3C39A1A8C4BF99D4D46
-922EEA6D05F7EBDD33A33774F24A650B9170D2CBC9A69317CF90010F9688EC72B3DFD2B7
-0EAE5DE97C03A5CBC355E8A57F7C36D9AF8DA95B4A307965074244B72B5689F6DA0FD360
-DD95C184A7037397C0598153F96AEBF3E059B042A3251AEBAFDB90631C7A7E52C89E7623
-07487D51B8A019BE505E4078DF87A79565DAEAFCBDCF4D99E658A3A6F33C252CC8FDEA27
-CC974B91269FB2FD905A619159300A0274E79C1F52ACACBF68E03CBA15523A0B2081C739
-3D397D3D4BDF3094FBC5D20852EF7766A4C83B708E2F75008756044AB2B55C57559CF7A4
-636F74B49D18E81057BE38166F87DF24C73B337533DCAFC8F7D4EF0A3C4C6B82E9BFA3E4
-F3116E011FFC4A89B7FB72CFF1B0229D6D578AC85DC6E6C3CB956193689607D6D7A48367
-0D7C529E5C5C223E081E3C6F1F3A2B8BA8EB5C4DBD19F9A5566694EDDAB69837B65C8299
-63A95E321181E4BA0B097FBDF72647838C8B49DE3AA88B6F755317FB1785E12DDA71F944
-49D3D1DBC0C167B3793747D9D6EBF6FA13A74FE1FFB6A2EBBDDE14A21040380DA4BC9088
-C60ED587EDF6E2A00BC041990F00C7568373598310FBB5FE87A1656E381A2C449C63B236
-5BDA6D3C51D1E5A1A0ED408221B2FA8397FE2FC992F990DB3E772F3EA54CB468AD471FB8
-0FB1E1A9CC6444B98D2993F5DAAC9B5CDE3ED8AD6FD8DE80001DC7D67A09B39BA8D0B35A
-CEFD510CF34838F06C72047309CFA29787631CD33E0E4457DF26244706966FCAD9A90668
-A155F9BC4214693A80C3440F56C2A01D87AD998493130C344E9560A88F9969585B6D2D4C
-AEDCA0D1954D6C84E0F717C48548C60B39D0013FC95E3DA0C13796130F3E0D8A240F8ACC
-4BFD93D26A7185DE5AA0C493EF230D0A5EB0DDFBD49A66A61D814D2D03EE94B40A25F8C6
-5F615B8C4402B4FFF0A882316E9123C0267E0773E048658ECF5C0008EC18976EE2F8CB4C
-E5B4C17F857B83E16622180B70F0433488E58826B39221566EAE2A9C350177F10D9737CA
-6ED009C263E3198F02D7A3514B3AA1AE7B0BDBE901D84DC256855A3DFCC83BF51C9B3CCA
-1FD2756DC6D54280E164E942530CC560BDD8FA6AEAD30EF5BD8A4A30EE5755C7A4D7C550
-F0399CCEB87FB781EF298DBA53BF7FC3373388DDE9AE21AFE51A7EADFE83767E8A112DBF
-C595A9B0E833CE7F8ECE227028F10E36B8147340F6C0152DADF434AB60CC64BD9158E0E8
-C30F38FD0D5D7573D43FC3AA9403BE945DF46D040AAD91FF69D0B0FDDAF19EDE36F089AB
-D8E00D8417C463C1CB3292E6AC20CAF026C74FE0F97CF8D7956678D1A104002A68D53664
-A82EAA93112A3BD2B55113F37E8588E78C0429E482259A2A0C11F745A74429FBABB8A53C
-D40101CE27011FE51335D3417E41ED1A8D260EAAB7C3F118B426DF541FFBDA96C4FA9859
-66B99AAB27B4DBFD28304F386879C6DF62242B689DE14BEAA08BF07AE4A38B203B024F88
-808C5E227B6AE750142874E5E59B23AB9B36025B6D67EAE9B8DB60B9A04A388525D1F50D
-C46F8172AD8DACEB870ABB56944F916B492DD6E9D296049973D661689E8A416014D4D2C2
-782EAB49362E9FBFD5BD6F0C95F243BE717535005F99A22FF28A7A02A5F4BA4B1F505449
-61ED383753ADD0D2952FA9313CAA827F3D8F8977C98D760E4BBDC134DFBC0A008230D337
-35A048B81A94A8CB7034DE777595158CBABDB648F1A2325655EB64B42C24D190C2979F9F
-AB4C9DA55299AEADE3801F9956E3C62A77A16746073EBBD364AC634B37671C8F153B8EF7
-D9F110CEE184CE3394349EBFD88E43D15B309DAFF263F4BECF1C581FC4CE876B68D3F1C5
-EB2F001FBA2809FDC3F834833F39B74C9E5018C8A7CBEECDFCB121EDCE0282988BC5BF4D
-156D91F53B4EF6B9FF7D95CF1B39B679F06190A10C3FFF40D461000E3F8E422AC042148F
-E12B5A776BB1F15D44D41CED498A9AEFD2CAF59CDCDE5C4158B8CA1CBDF4FB5AE83D99B1
-A39770AA15397D85F77F42846B0893AE39A0F4612A62A7D963B767DFB1E92A0B73FC65CC
-EDBAD8D74D2C24E08B2D551538DD954D94A80B92E897E8C10D1725988EAF003E9BABE962
-2C9C8D278A6BF1935574C80C6815BDF0BB7011FBEA53A59C0C45D1978A1D3E6A7BCC87F4
-2C5FDC7886044CE5798F06096AB7FB360316E1BFCE3E719A1EA906E0C5949E00DE7AED0D
-E6C25832D30CE1867387C8254F51171A9037C8CBC6D339B4647E9077D605C13E30324180
-A433FF9F3A7BBC3B0B775A860F7BAB63D7538E2092F902F019D29FE8DD198EBD85DF0564
-D39C10DC176F698641996117778D7F899153CB26D568C057DA39FBE2D21ACF39E0756E16
-7FB5AF562F190A7B940A8F4BFF98AE156D74CE4C8CEAAB103FE6F06B7D578E5D7675DBA7
-27FCC0B96031ADF2D3F204EF9DF63D8A4263EBE46B74F1A2CB67D620FF5B2585A53C7CB0
-DA53F6F219B277BE9F8735014BDF61936C3377A6D1348D3C670A65CD057B32DBBFFFF5E4
-D830E9CA83BABE9298431F93884E2083D6ED6DA68A30C7372539DE05E8CC9DD8A748C810
-462687C6B9B75B305C3A31BC32A122365DEB55AF6F6D2BA9468247BC0853E7144E46AAE7
-E0D7C76E8BA15289ED307E0943F5E3A05F051AD2C2EBDC7E2BA46F91B4CA94308D1D2FF3
-FCAB4EDDF761FFCF83C23C979E4D318A51A26424D78E5B215EA33F04E1BE296A9693F065
-9309FF404423775875D73F230FCD5CFB1AEF0F6CE5674F865C300105791111C1AAFC98A1
-557123E1C34749937C8BDE11E41C21B1B0FC53E8C5D199D3289DE09C7D7A95EB23D5192B
-AAA67A13DABCDDF6C48115036065984276B126F294D6BDDFB90BE9319F3A3D031A22BBC6
-05766A7BC934472D23812B37720AC3403189F34F2CAC2B674B04D3B3B46B6662B1C2489A
-2964D8EE5EAAC87A8AC7208E5E87358DDBEF9EBB52B96102CDB82D8BCC5D8A404DA247FC
-C304D7153187BB579C75F71DA411E4B0FA80D2131D11C6BD693F3AA001FB349FA11B5FB4
-9DDC4B2A6443A8932AC4813795934D61D38BAEB1847EE5D3A7D01708524B3933B442709E
-CBF2D39460259D44CE01645BCBCDC2BB9588C855936C6100009D867FBDC902475BB43DA2
-F7A309AE56082F18E670A25BA12213EB7D9BF6679452CD4814353BC62C1ECD5E1A7C50EE
-43277A1D5D124BA9F596E19A29C24C234B1102893D2BEEA07F22450E26BE882D0FDC2AEA
-5457AFEAD360063AF6A079958A343F444DC6EE7126AB88ED079C0165CF95765CC52DBBB7
-3CBECD85BB4F1176C4608201A6E2D3FA69C439B4AB2A9D5441F519DDC85C35C2DEE504DF
-5ED9E958F768E9FED68D18748C8521FD6163FFE0DECF1BA44B11A261A4997D13E045C255
-0CD95881B9BC5D65A7C4AF0DA73A637F4979A3B54B9857402738B1E9FF94CDC075F51817
-CDFE1DC677E938F4ADB9E4CE4DDF4F12EE6C72352175B8389F39F84181C189F1BA529E9D
-8D84B7E36790C1F57CE2117811E986D00B58EEFF6C8121934AF2FC54D09C486A5D9CA8F7
-6887CF4D7FE4841F3222F0C4E4F7D92C014FB4D48DB83FA87C243D453915BD6BDF5278BF
-1C16090730765D68AD17160744DFD19AC8A754915E669074D4F3A9A1F37F7D720B38D5E1
-5D734093944BA853010ED6C6CC7D5D885D6A1366B2FEE42E54718A2DC1BBD437830EF66E
-A0F540524597090FC7C762F19C3946274500428C3C3AAD98D9611484C8CD302D64991438
-1F7E531BEC859E6D6624ADE92B17C4D88AE651E49658CD23840C404E1E2EEA4F56D6725F
-E514D3AE47AB1127EA69CE677705C603CAEB0DA31233E15ACC5D78ECBB90DBA3878F19FF
-F2A62395FE3B8EEDCCBA872A42334251BB515C34F513D2FB745033E903863C24A7F8A47F
-0DE02964F1D3AA92E60BEC967BE17A207ACCC4512B8E8D62E767608FEC0D4F0C6D339364
-0332BFDAA278713788075972FE7B5799FCCA94BDE4C881CE667C4B7D10F1A4CE65766CC1
-F3486E0F23DC940A93B3D88EA329FAB54F531034113FC7970DC304A20FA97FFE7116C6D7
-1504BC0FED9A1C8E617AFED697DD3FA441CB5894D783512E1FFB859EA5686F64381EE1A3
-471572DA94B4D7AAC35E3E77EC8ABBB310D46A70C5AB691B050019B1408DB7D155AD3F75
-27E8FEF1F1492E8C96C96A0EAA70AEE119B244995F1DDAC5F9E1B4EDD07AA389382345EE
-2873FF17B725037B66F7B5B3CB74237808E8A1E8FA6B597F418D62D174E716C0A857219C
-DD489083E9086E5A3564A8D0925003BB0935792B38A458F451CD15D8824E457132B50F8F
-1A486AE2AFAAB124EB8D387A4AD23B552803298F23AB33D96547E1A028FDEE361836B59B
-879F544757214D635D0AD01C8B8D8FD61B852E3F6BFC9281C99D1F360032349FB484BF27
-256B591CAF48AE5A6A1117BFB824F3850E95E75AB6FF948233763934CB18CD290BAE9E53
-747FA478BDB6E343336F58D89E05BAE9B912D484171ED576DE30D6516D68FF80CC6BC36B
-62CCBF407447126E8B3D6D07DF3C187AAB240B84B5D07CEF0CEE8AAD28DEE446F321C622
-0A7E0026C64802A9A006887A170FBCB19B4C29CE1D4E089F5193171CA3D3EBDC1A1286A0
-60C648D24BBBB8791BC400BFCAC653A673F4C3A59C44D364D408B72437C06DAD89512F6B
-9526FF964C3B2646DA7E34E3DC95D2408ED3816C6177133287B88C896EA7D575D1389971
-2A9D3A2E689C003CE2D5DC4073ED052F37A3183BDCE5EB3B509385AC8268DDC54A33F8B6
-865FD8D63ED1C51B89B07DFCA39914F10AE7233C7A62EC9B83A8C6E3CFDA24528B1D1F80
-3C74A108E7239456B412EDCDDD5995A6E56535CC9D47E871B0CF8B36BED4818FDD112A70
-2704D417B79347BA3CF24A1B116937BDCCACF86D8D4C544AE863DA44A29C308F740F5DD2
-3FABD1DC281D722590624DAE38EB4A119F5F271C42169287D8E37D34EDAD684EA20CF29E
-EF4B6BA4D65E41E9E8BD9EF2321C2453DD84C5AA056017E7F5321A3C11614D810D0095E0
-5DA9C4ED65463C672FF360E0104F58A79D7C399F058A9C6BC6298AE226E06F294787A1BB
-0EF6E1AEF499BEE46F2AD81296667E2896098DC7535E1415E7BC0C3844E308807AD7E5ED
-59EFB26E2E6E5FA00B7CB6B1A160DB111AA0072ECB249F30A29643BE8F51276A0DA7ECA6
-03136C0147C73658D218BAD2A6DD880C62186178E527901CA62511326630815850E0F4B3
-7D3EF6B96BACDC9EAE70FDCE411297A167780F749BF79652EC2BDD4E620CFB45B8AA9AC7
-9BFDDF782E3B3A6FA9A0B20F8CD7362AE18479685828245B6069F437171A4678C6C1547B
-5E4E998C8835104327C75298AB50A6A0D2ECFCA02D466C08669A93BDCD3BB186F04770DC
-6AB7C774D2258C4E8C54D56C4EC2FE59EB24697C8BACB485E4DC203630B052FE09D83C97
-781AAA7CDDDD22804591A689B563D318FF5D269ABFD3278C345F6028127C672C3D3D8168
-5739CD11FF84E88C3BF219A41AC1C1272BE1D130A8D01EC18A83906CBC0E02FB4F430026
-5FC5E19B6A5BF67379EA2AD989A1BE64B8BC230CCE5E6782514D465C736B904F42D18417
-EF0A985121A8B155C06E1D0ED8BB3EE89226D931C9A8A0F5E80882DA98C72E346DEA25CA
-C3962B6C5879B6AEA1F91DE7FFF9453F98FF1FB2805B21994C0DB8DCCB8872273BD7D964
-EBA87F2FFBC46DB4FB8FDDB5840A162CD6F6BAF0377B43E5DC9DF9054B1AF843D5A4A38A
-481EB2DCF93C088FB019F8209BDD37502B8190281BA5F0A91171AE14E313617E74B751AC
-AB74070193E0F231497C20484851F0182889D77581BBE0B1539663F844854D59F93CB6EB
-A5CC3D2B3FCCF8D6C3758F5F333033513DB561A9E318F599797BCF0FC43391DD600A91F0
-B478A983687DADDCF974419A58F98338D9FEF2036373B5CAE2CCBC0169413BEE50EA39E0
-AA6E922F751B981FCBAA8702428C7FEEC0BAA712989D5F1CB3692F5EE3A014F716D42CB1
-42FA136A7ED845F781C18C1ECA0B6B10699AFDE08BA05393E413BFCA01C7A097933F87CE
-45D7A7339F2793483DFB43A26B277C5B5D5A3A51CDDD80D0D6C1FA7D16E03DA0F7D86E50
-85D4516BEB44D0AA911A7945B244CD4A83FEC04985877D15CAB67EC734B1749D837AAE24
-1832A1B555172307301CF5D25EF9DB48B9BB1979893FF637A3C3A86A6D1688F0B45A411E
-C8C02AEFA1764F5BB2423707FAE1439295E75E365785FE9B9E5C485779D124604AA59F95
-B8A4025E3D8246CE7AEB3F659B0309C77B6D10FDB120F6A4DF76EE00EF3607EF9D22EBAD
-0DBA789B86339482B98F91CB29598365A5E735EA4B7AB18AE1AA8AB8BFCB207C558BDEE6
-F6865D10C8B3487D342C1F6E74CC0B13B522BC054AD4EA9EDAEA215359465BB97CEB6F7C
-657ABE5577BCDBA7DD3A61B2C99F552BB70479328AD21F95C8A1F98D019CB23B6EED8808
-658742B1AF408ECF70B36ACCD4F06E4D160EA52DEF62E9CED463FB758C6121724B6E31A3
-A097A7D21B0D5A021B28FC000C68F6A4126A5418EB129AA699D04482EEBE82AFE18A7D3D
-0608E71F5899272A4E614E34005578746F6A9D082E29E2F03EF54E9F55D393AD28477E27
-C780AC02449FDFE3314490520FEBA7B38A16E94A302569CFF6958FCDC79561F3F93FC71E
-14E780E4F1E9DA30A9B1CFF569368069B140F5B8E67EDA15D0F25404A32362327A0FEE9F
-9AE430D517AA8465C72E9490C31153E3528F08843A100BEC4D4BFB6C5E87CA088D4D4C18
-2E398D02AD5D8007CA369A83881AC0C886E72D91A48EC085002017066262AD81925B365B
-7E594F3DF58C55A9DD737F2069BF951DB68720AA4043BD6F039AB927F7149DDB7830AC67
-293A70B6906135DFF159B352BE8AE55F1D03AB3BF5642CE1B1A49F773FFA1FBFCFFF851B
-3DA54CC2A5BCC6C2EB2BC5CD41676EB08B727526CBC01FC9C7A076A5342BAABD5341B6B7
-3ED8A27013ECA0861430BE51B07CED3522A6031EE04E74F985F10D3776A206BBA86FD199
-64B37F1A8998F4BCD2599A891C5A61C131B23D29788719C15728644886443D12492C87ED
-8EDFEC9C5620F7AE2C5CAA568333C26C8866A2E2651408D2BA3B40B68875FE271283A331
-F8EACD13FAED2342A5A3A74A1E76B74283898D8B265E0FC9CD3597CFE85FB55B56AC02A7
-55298DAC4A7471FE68872B311B690E5BC0AFCAFC4CD7EBB5326E453BB07A94843935CB49
-095EE8C7AB1BDFB71011CE6A8AB7F51363DCB97AF77C5C1CF0996F7F1A33BA929E9D32F3
-FABF10FF45E9E53A4A80B808548BF1D70383418B57C986341796FC5E1309EED60AD85476
-A7FE1AB5AE38258D917F267ADA978D02FA7F44200954F8230FEAABC0D7ED444864C91AE4
-4D6BFCB7E09DB0014B6E11FE753C6CF12592156B7946465D1D51C8FDFF1671B9DF64FD18
-0680EBDFE37D5B19B60BAF8A1081C8107C0C207941025CCBADF11423B7F09356B7D2B25E
-3C8386FA4F41617DE67D7BE0C3790F853CDCDF996CAE79A0D0113AE8293426662D18E2F2
-92452A9F2D9B3845FC5B9ED4088DB9CC86886D82FE7310F2A158BD57739A0A1C36A7EF21
-6167ADE2542E5124FDD3143D353122182A9AA36A530C96AEFA8ADACF50A5B0266B59E396
-AEA8DF4FBB2AD02EBF24B49D4BEBEA6F1555B5515FE3052CCE0C540D20A82D6EAEA1196D
-5A2C029DFC79E48CE0448F7A9FD83C7F107B40E55383E9656321497CB2742756FBDC2646
-A850AFBB90C1573979B32A29CD3E1C7A3350C9E1727E884CA842E9C60601092595D44011
-BB4F24E8A505EEB5397445011750A059265CF4212B4A5EACF7CEF1E922722B365987886E
-481215C980DAA2114E03DCC02D1BF8B29098F54733B3090E4DCFF294E01915AF5AA3889A
-99F6656F8BB7DBB5844EE7A9FA0FDB8AE67A2634BCFF57B248772F9B5F2E9CF95410060E
-22C51E6437EE48FECCF819B1655F052CE6C6EF2175A54652EBC6C38F7BF60799733741CB
-D7E030198D32B9956AE908436200C6EFF6611568EF351402A3EF854B0736390F7A16B7A1
-50EDD6E39B2E0D42439FD75C1D0311C8C45138AEE49A7DA2F742AE3C21E19F6ABD62198B
-6DC17A3A315AA746961425A18051A0C0C5653D40F9A6D3A542F430DFE71ADAA74586FA56
-9EB935247FBF47098C4D85417C0A3C6E567F7A65B7C23C1060AFD086186E394896D1DE26
-9244085D469240E8391ECD7B219A887F01853AEF9A3191AE70D8D11FB13C7578348599D1
-95186180E4AA0C3419322A318487A712CCC0EE9954C87A6FF2FB447278EA942C101E925C
-95DF648D275C836F03A4D1FA85144C7D57622FAD6BEFDDDD7AE2E931D430E29885E83E81
-4C7DF4DFE157A423A163E1372999E34A0689EF8F66EAFA66BCE76DC6CD5F3317BC7801E7
-F090410D2AB40B640777C30476CF9BD7446A9860594FEA131D308D9AEF8F96B7B8731ADB
-CAAA0FB8585DBBE770852E8A76A43FDF93FE9566F81A02C2AAB4014CD74CFC1682F33686
-418EE5FB80C2DC2A155F16292FB6B5C35B230038A91814B625EBEC0089B75E7F3019490C
-32BE5B78620FEC427B756A3A8085E42ED93304D80108A5D957E479933173EDF77913E5AB
-C5B84133CF6B09FEAAC3A41068883696A3E2FAA73FD401E4A5E58F3F7258207159970234
-FD586D1C34EAE89F2213B28F3597EEE1C0D11CA93310C8A294C88119600944A539795B41
-E332CFAC0E578B7E9E9CDB291FAC7B0CA3C125FD3D783E4D955DA04AF2EA8B5C97869104
-84FB27D05B95C8C8FA91C84AD9BE171106D0AF6AF582343250BA953452E1237EFB0142AE
-5837EBB076D5C7B6F25AF4625465CC89B27977E6CB71AD1D4058AA871CF3FC749BC4B87D
-D7F75D3D18E455C67705EBD876D9073D828D4D083ECD7925822732C07E1581B1FCE4A337
-EC7644EAFEE206C62C1A64E10F0F1603CFC09C98FC36E61A59E9DF4C1D410BA2B775C44E
-91001A452798FFD0954AD15D9D20823B52740716F40354E503816CDF0EDD7B6B97879260
-1204972E0B4F8E783317388D31B2DAD3132653A0585F9EF80BA68093A79B773836CD6E62
-CEF409A9A4007D3D7760167F0719F5A12DACD27BF8E0903C75A2BF680048538EF924B616
-FADD681B2E850B2C6AF69E86C491CCB41F8F9FB000F76155B651133D09135EDE439B6A99
-D4B35A49E2AF4F82A369ADAA500C873732664D50879258A9C663196BC29FBBAF20A7FC9E
-7DC8904DB9536C92E45F958AD46C067DEFC27FDCB71A7A1E2391FA6B6306B71ADBF3D6EB
-1544F077E38D93C9ED11B2CE62D3E94064FE75DBA762BADF76E071BCC5507244670FAF79
-F5B0E11CD72FDF68DDD6C03E6D42E4D505F88554662BCD0CB4F5A0A33CAE7BF80854E715
-8B4E020F2D7517F8B5AAE67675E7518C6A14F00938F36E23DA2172719B351F0A19CE3691
-12DB35771C4EC37F61669D570932E14B82E3B419ADBF6D0E201587E0DC75A1DEE6262DC2
-6EFB9A02174CE7C7BA8E626ED0BB8732AA3618909F69F2D4147F3018494E22ABDC63C89E
-DFEE86E6B21DA05163A32415E6142528918A6936F05948C14B2E34FB4694D5F664AA766C
-5FEFBBA0F344FFA065F5394F621DB9E6427EA543BBAAF77515D7EEFC5186ED5F9EC74A97
-FD1663195D941CD67C91A5217C8D5C7F1BB848C6A3BD03A2BE6A48C1B2E8BE247D02C01D
-B04A994F207D25D5FC46939095986DDDE77FCBF9698D3748D12888D33A7E429AE13C8194
-D624AE196D2F1F384F2B31801B2C3FF3217046A5E11890FE1D63DB4159CFAC405D657BA4
-E47734669D01E953B6702B972981C08A0B028F5655F7C8BD1DDFE145BA1D57129CB9D5E1
-8996C0A0E01285E799F4753CA5879F862A765B6927D7AE8FB474E8169708E1D30E2780A4
-F6893E46DA3F20CBA50BC6B8A310A9BB06713EB126961C97A9F2A4393D663E078026657C
-AAC7E6C723215F0FBE58AF074418AE70EC0E710C97A1CF4A0FF853A8051F18BF4AA7DA5D
-5B52CE39EB779B75843F14E7736363EB213F3DA581741C7D21D8DC268063C46E97FB0B2F
-B525AEC2C6F2D25E0EC43F91225719B4087A92D3A44DF7B5333C64B92862755D5D9566C7
-FFAA3554AB50821AF913213B8738D8FBEB7CF5BDC7E8F191EB3B66A8AC1DD9EF0D5FB967
-B9B1833D8C67F0B6AB2A32F00D20FA51E841BFA6ED035779536EB6EEB30CB751C81D7270
-FF877E2A0EB624FC8CB8D40830B9FE2762FDA8F5A861A0006CE1397598A712DEB751647A
-2E5AA196BD31465961D4CFB2F9E8C5C20BE1C92592B3E457CDD05B11DCEF03127B494B8E
-4AAE645ED3D891973EE5D633A24B19B06B0F2389FD5ECE0FC1C5091B8334209AC3DE128F
-8772D373142113CD296AE0DE58B844496A70FBBC89C09629E095EB1E36DB8E73155735C6
-A4029C1CB8D935F3B563F68AFB6D1DE6D40A59A1F7092466355C7C1A5C3792353FC4A598
-73E5DB876C029895CC933DA80DC11368BB19DEA413FAF2F7652AC6A18ADD92A7D647883A
-4201773313B677A7A1D0F4985FC8714CD9632C8266BF7317E557E79CE1EAFF26C5E19F95
-698799264FC251C8382158ED39E613F3BE87660A5F1F2C6F7D9EC08A901E4800463E6498
-65F2FCFAB56F971730824AED3970830FDF3E57802A4CE2DF1EC509522D0FF75EE464A502
-D77A0E9095DEAA555B6EAB3506F2B13B817B60AA418891969AB75873FB0553874048C1F0
-0A9C61105A9215572B1343571CD14FF0AFA30B040AA95AF309F412692288FF9D941CB245
-5B8FE672B4E78D6FDD3AD9EFBE0EAC354C7AD246456CE0C8166441D72762B6518B6EA8F3
-15898649D17F406FC07C50F87F04C9DC12284D655F3A4A14A3D55E80E2D3D054828CE8A4
-2E33D9963903C2BD11AC757687014D2DED8D1238BEBB7260A96D973B062ECE3D429BEF7B
-63B4394A2B1DE4F56D0729A7956030F8757762F13A90E211B7B245F3E968446F5AB19621
-5C0A0F6F13957C0584357FB760C68D41A89049B5FFC42A021B1AE9217BCFFFF0063877C9
-4E884FF624D80BFE56F79CA93EBD70844BD30D51D57E19634287881CEFF135EC18ED3873
-596C7C9656B31BE31655F2630934492EE1FC3E44B9607F1AD8F4E162C356A1383AE4E797
-0D2FD92A69282CD16663B2B9D199702FD3CA9B6CC7FB12A7A0C2713B3F5E81F844BEEB2D
-F3EE1F31BB05BF57377B9356B776D84711164A49AD69C338D8AA3EAC2F616E735E5677FB
-D54A8140DBA442BFC8CE397B2F7F200E9B8AE8417733F90B2ABD1C70F81259D944090B92
-845767E935B2BB7D5181EF5B3D50FC31585BAC37CFA267B966DE999D3B40B2023F132ED9
-C72F827C28D41751D67B98ED61FE3E611A4AD1AB2C45F303677C79A49F774F710004E604
-0AE91BEFC6C8DB58218637DE4923CDB315E941E5E124AFED06CBD0B75484B7B9DB3179FC
-5759BCE19BE50D07541DDEDF00C0BFCB084FD3BDD10C4EEC22DB607D65C29A6D78178AC5
-AEF0CB466EAE31EEBFC7B25B2AE157C69BC0747EA3222297F4DD937E1523B9864B62A666
-A4ABB9B4B3A908DA0C37059E847AC1405D2E4246A3CB9AD3B39BF3BEF16D48F769B69422
-7D6743C49F6DBCBA1113DF16B64272848F092C34103B40DC3118AF1CAB1E743BE858404C
-3A9831ACE27D3DE50EC75F982D9DC1B6E34BC678A07D214B0A22AA146AB298647927FA54
-222DA2AE878C8A0FCFDCBF90A76CCE2D6CD623818121598C31D0485C900827C91AB17ED8
-3DEE367788418FA250F9841DEBBC95114D82CFF93E8C6164C65CED77D5DDAB4F65FDF19A
-26FDF57FC3AFB4F4D155B1AF747A668724F1E2FBCAB941987A17D4B455A74F4E5DB5BD62
-496B197DF439701DD993EB50F92D161ED2E37170EE2D1DFA169C2AA43752C765FAA87107
-3DE44D8BAA93E6511DC365B68157C81C8F3DAC8C624E58EB22CEEB668A058E23F3DAA93A
-D05C5B1DF3DB0C88D6FD40113A851F1387E9E2EBD2460EB7FB642BDF4CEDF1B22DBC51B4
-2DD058AEF2CB32B20A30F1948A363458FE07B146012FC3842DE485E687408187A89B93E5
-FFBE019CEE53E8A46C3BD54D12D35DD09D638B7033F0E8B48CC29FC898128F2359AEF423
-192C75DFE9EFD8FB5CD2ACD71811F5B8BA259E9F4179CB1385F85C9B1CEDE79C47ABE400
-0ED992A100198FFBFA4ED40B9B55FD2053DC49A2ADCFF0D18FBF9964BB2976D676FE54E5
-5051BF7FE08C5C70E8AB9A363F98DF09D22AFCFC8290E828CFA5E965574043B310D9A570
-98EC92E2876DDADC2AB52B05564EEF2A64AE2327DBD80795618500D96F296E178CEB3042
-F1BC49CD8112A5A373D6A72A8248DF6D682245A134FCB990F9FAB1CFEE41DCCAB9CCA831
-2B833D6D21BDE04BB26F445093A8C7334F58F3B0FE626C0832DB7BE2EE788357695F3B49
-FDF2B8225E7ABB6FF7A51EA4F03F3F4CA1BE00F70D74416FFAC47C4A8480D12FDBDF2450
-5D53A882988C5747FD8729FFD263C88749AAD3FB70B064AF33BD21630FD5853FC8EEBC7D
-91CF02EAD8C57CE136A4B223AF4BAF7D7C08BF31F1718318BBFA9D416594EBC59E8D0BF1
-A2AC0249835FC1C274065D9A28D0B8D751B9677FBE7D970771A8FD96700F00A13AF76158
-AB7437F5EC667D32D8287ECB8A1794383896EA4BD9AE047EBE471A9500E94C3B9EDD0AD8
-24C9D9DAFD1F058929D21244D81A276712454324322A3CFE36FE1CD8172F502F427322F8
-FC8ABF150BF749B132A9E93FCD99AE015F1D75D923F9743C23F0F2264ADE0BD0AA7C1C8A
-4BDDEDE18EBA55BBC33B3C9E9204B1418D7B1CF592A5707805C13D62C284B991C817B643
-00FAB2E0457E59E07CAEBDEA55F1D8FC9F6938509E1A11168539B92705BCC03115D29137
-45D24D1533D6988DBDC21795FB59E25850B74A265C47FF6F7A548066FA6203C503BE4E7E
-1590689F1A4F73B7B39AD4ED10D89ADA19673655EBE215CADBA0FBD85DF65326ADDA0305
-FFF9BE785E52F0797A345F8A49A58A704106EB220F88F27180B3630AA358BBEE6E27908D
-512882ED69166A628B32F06FF47D9D05214A4C8728305DF287A48150F2652EFCB1B7CB95
-AD2746D2F4C10847800E9EBEF69188B770D583A079C79DA8D7FD9349E925E9A9A30F2D8B
-35EE7115158B3B353AD7E4E4E740D93289F2CDBE6A75E6BCC8A0A3221CCE578D3A974521
-9C418768B4E332783174173ACAAC86FB61F81DCABA0F46FD3B90D46BBD8F6469C30DA380
-A5A356499394FD428F7DA46DABF232202A8A293B2DA79B4933D0790630A57DDB232E9E25
-4DA8C370F1B3EBBF9182C71EA3BB243DA9685B9B8C1DC22D73B3BE40AE56B08716D1F035
-586556DC0DFC07AAA66F5B3084B7BF87D0AF89BC6AF8CE1CB73B56A39515D44DFADEF15C
-E018E31E7B4C61B109A6E105505AB97FB8CD2E53D37BAA3B1C2EC25DB055D87245A8BE47
-94A6E03B71A5F1D13B6E5A7E6C5594CAFC6E303CCC61E01516262F9BCAC1B745EE5B2AA8
-C0E8209C20A1EF19E93222C31B95E4B4FCD0F78F7821FE995494A98BD756FE546700A590
-FFB496FF6852E53470E1A5AB253464BDC12CFF3B5DACF8EBB0B99E822322F21999337A6E
-5E849866939D87B2F16DA93B9F8CA7C83BDC49A4F8C5EA64E8F8A1C00E0BEA534C499C84
-4F39E38A06EAA1102A1DFC0E25643EF8A6245427D8E77EA2AC7B352463671EB6DE8571A3
-84D98E1B35C3213F13132FE76D03AA87E5918FE48CBCB8A2F3EA9B1886BB540095D97BD6
-188DA701888410081B8BF49C7043BD8C48E18A51042E92B542176964E292BEAA06E310C7
-FDBFB496D6B7BA5B07A1D36D516EC19C37E1DD06B9F6F85BF740D26FD0DFC09ABC3D4A11
-CEEC922B651C147BDC3124DECBABCC8986F5D48556CCC5AF38F7EAAED9D719B983DE7742
-67F8CEB3302B8CCA7DB832794C3C4F0156E72BED47BFA0F7E4B25E13C0222584601BA304
-FE38C5E96D3B5E709B6F5FBC623FC9BC36A4C4E8D82452D260F13186EBA95EE4DB5D4ACC
-945D0A3C5C1800C1D3198D509F7B8ED0A0E33612E25B9344F1D53CD949CF9F65463B7C58
-4E12D78D3E6CF003F9A4185A37ABC6D5BD7F331CCC01540452A36524DBB34EC2FA260C07
-824D76439B0059A8127F940EFC1FF165005123C6B43C9700034D5AB9C7FA1AB62E9FD91D
-ABDE5F3D5C03A771B0554ABE655545E133AB8C230517D51830492F29E86963AA55E9B79D
-79013BB52D623E660A4D356C293233B79E7263ECE8F8B6EB3E56C82C2051111F49D45D12
-5148AB7554D601BEAA3037CDC84ABA8825658A09C008D19163FE5FD06D56D1A687EBB6CB
-1C9812EE0E765F14077116182F67D3006048F8BE549CC71A354048520E66860A0D9350A8
-864ACEF55EF91E17EFEAB4D6266C9BAA1D6D3D309073C9DE287BC0619D7E37EAAC4B7CDA
-D320D993B7B8F387FB039AA7E1F84AEF034E7845A1B1B5306AD8FDA2834B59F18E6F1A09
-66221CD9531258458E428EA237FCC45BCBB9C5DDE72061FEF2FDE731706A4C92E5B0B255
-49F60FD845C45D940B4C5A4F38740A40DA356A56B8D155477C04A26B747941180F6EEC05
-A5BA892A0D8E4638A812BC405E2775EC3A2D0E3C288D0DEBFF53582FCEAC6936C152B8F7
-6F9D556F2474BF5ACE2B63550FB94C36E29A8501CAA4C22FDCF908C62012639ACAA7619F
-01BF96A552A662DB5664E1DB1A4FDC4E5E9050088D730C8E1F387CBF93619952DD8E23B1
-4A385AC6C222AEB44127DA14539A079EB16991F0CA2D851467828C23A4D524CD5AD92FF8
-0439F6F47D703E9BBAE227628420C2DE818A9D2A6BF085B5262E026C7A04ABE831065F31
-68772805AAA986AD811CB78F3FF8A0FA7A211127BDDA087C1459520F9420CB06AA4518BA
-A8935A97BB88A62EC76AB2990D8D414392E31C68A91E9DA122ADC8AF3BF4CE550CB1D22E
-B2DC916E735D19215C489BD7B62B842970214B0D809639706303AE7CA8E270ECE748D283
-A8370B4F6A37092EC768426FDAEADFADF8598591AFE55984ECAAD3177973A78EAD02CBC3
-F7DB13A7864EC1E7A68ECC54EDE88E7A62A4AEFA9DB238BAF1A22079F23930CBF7CBE82C
-2B98E37F28A47054BD47B48637179F4C57164B26F4EE0B484FC8692AADB29EA0C770C789
-8FDC78DD58B009B4901A678305A0DA4E89B2152A596E13FAAA822DDEFCAA30BD2FFBB1A3
-5DC54BEB87BF96E4C3D25334D86761D7D78C50D71DD13BEC2830A96761CBDDBFADED0A3B
-6A0EFC34F96CF540E238410D22EE85AFD0AF104A624D3F9EE5F04D9D8805D7BB502E0223
-AFD0CE95C2B32B30030AC7385BC898C282A5EA204957853640D4BF963C97540744F4D888
-72006B2239C9EB3390FE16B4C3415F6EC97827597FF791B3D1B3BEE6D0329604ADD0C131
-6B24B8544ABAD72B337F00B8FE300BB4EC7372EFE3AC8156328238B94E66E1EC7CAEF9B4
-D58DED07D9CC777719E2C973EDF779310890AF183F94254B2CA3277120A03222FAD58E4A
-ED28AAB3DA49B5ACF246666A597BF2656CE2960FC95BC24CEAC5431F73074538B8715071
-FF284765EB54207CA22596B3BECAE73DFC68A4F9A287B8DE7DFC27D0F860771239436FB2
-587B07C1FCA6C74A020A819701431808AAB5B6291992D83DC28F2D943AD0DE2D94BEFBE8
-A15AFEB7057DD4A97B4C172CCCDB490E6F9FC265636A35A2DC556648B5F9F80D180FA320
-AC69A0A61A3954BCAD612FABC12D486A0F2FF0457073F61F2A74345B1ECA9DEDCF26EAD8
-D02D3F4678C7AA82907721A828984C6196464440B2255DB9171706819E0BCB7169EB6722
-912EBFDC6CD488FA34A5556F28D2B448A7187B1E15255202DC9DE4F609682B0B6D2F61E0
-4EFEF15CAE39FD3F6F7B32F226C759A17E6C611BBA79D93186C853BD59D73B19E514D770
-89CE29127F5B36F1C0D661597A6FBF85C15307F624630DB6564BC755145BD19088CBA598
-86B29328DA2452957E306EE08CD942AD6FE6697231EB43DBD8D37B4ADD0B4D8947A057B2
-1D9A133A7DEEB89C1D35B3F49F803700CAE8774A4F9BFD45CE309A4342E3B7DC36B6F76A
-7B51A81B70E038E3E4999D6EE027DECBCA548FB5F4DE4C49981D4617133BB3E0919C4778
-B80894FF4437120F1035520C75F882591EFD511B6F47C166C7663EA2DEEE335DB1A3106A
-5FE0C49565C2AAA0BE977DB611B07D38DC41E6DB8F959798286DC0CE835CE64459558D4A
-20DF59F2E8A63E2DB701619617CE4DD55E82EB396D5D701B691533D0B20C3A0C20F5054F
-72EDE3BDC2393ECED94EC52C25A755B58F4E2596702FCA68B64DC554DAC85CFD99478701
-BBF2A47966CF72E683B5934F0EA5DD86F35B1556026AF02BCADE75ED3C579CC1D9430956
-9A53EB8ACBBA2551B9BF06594F66229489319F5A5A94E51281FEF7BE86AF12D8A8A1CF43
-04ACD3B27D6B9A574F09E2C41D245D8873A78D1CDDF4CC88D96D9F714FEDE70ACA30B83A
-797AD3DDA7D6E52A5AF906CAC560813DB2226BA5BBEA60932640ACEAA2E7B2D412068A2E
-49FE781E2544FDF8C762D947871EAA0DCFC183676B5644AE02DB3CAFABFF140BBF755966
-C9BD319925746E320AFD5B157C55E3EDB4D0DC3FA112964D68BE2A5FF08E8B31BC9E510A
-F6CAAFE84C0A103117913E2C9ED8FEFF96B941AC14AE07B1CEE2308E36F617DC33CCF32D
-3A52F4F6561A784FF2C1144625133FA8E30F7A86E82F675F1EB56579077EF6AE086BC2C0
-B389CDB5C5999A1FF3E51BF766227A03DEFF391312065305E5C3BFA97FE7D5E2ABD0AA7F
-609D8A0E524F99B416172F7A0D174196FB411F79A7CA6F8694DF4F5DC48BB58F39460131
-D47167AF47DD3A6AF1E12C75D947F4C130BAA07174DC577B49726123F34FE9C76411FE62
-8E354B43A5F54BE0F210C7523BF018DB36CAD6DB8063F14FC3FD1B4B69706D45E615C3E2
-9F4E1FF8943FA55F1B9B4411BD0DFFA260664CACF3C2C3D9CEEDC1274B71805FEA88C3EC
-E5BBA17D17E6250494278450141FD4A514CE968C33093FE07E64F168388D141E52E46DFB
-1E2A9F4BB5132C1E6FE25245FBBB3B1CB7CF24FE6A134382F9863D4683AD93338D3A6726
-BAC2C4174FCF4A523453EA28F2095CC1159AE0E0927380C93DE4B979E26D56881A2647FE
-0C46D0B6B50B0CA3750D6974A8DE149E252ED68FE33B26E2F04F06FE6C3FEE1E7FD72C05
-135DA55508F10522A7A2D8AB07220E73283F978B50D75FF36E789094CBA1A8E342428B89
-3B9A664939AC711933A2A1C425291A9E95C396879EF54BB6F3DA82E88CA8C34E9CDC22F1
-BAF6588CD3C54DAF5A7873501EDA6A25B793F219D3D229F6A028D34A19A9ABEFF2AAE4B8
-E62A05421D9CC0F78E2709BEB6133A0708BC174F5D745A6CC53E6DEAD27A1E6CD77832E8
-87935BB8736AFA3736E4B4313D6D1B7EB464A02B0C6DC3BC7C84630C2E9DD020AF3F6694
-90BB8CF0185DF9239E0D27B20FBBA001DA7C30F0DAFC8AFBF45C02019E4AB0AAE458B083
-1051F65D0E398A75F52FC3D617A25CDC2EA1FACD7113E0EBA0262595AB5EF65C1D54CB71
-BD87CC35C9BB992E0A63ECB8A1448619148ADADB906DB75076E0DA42BC6501F6B6717C62
-71E3881CC2D6747D0A0BC7B6B982CDA89E2B9D9870C96A86D3A4E1FA0B04140131F302D4
-A36AB220399A6E551FB6051283E405556A1591E402FA9F04B87F1E3C2AD60DE3128EBAED
-2CCDAC808AA1CC5E64052FBCDC1EC710A3551B3AD6E21D20FB112543EE0DE94DED4DD8C8
-6526F470C83B1DB3536D6DD8C8E021B7A9A82C23A31A6F09E15BFBBEE0A8971B3F471437
-F0873BC669016F219A728510C712415C515D3AE02BAD8467A1E0D911448C0CB280C70F26
-14BC2E52782C1CE5E79C783BF880D1B914E44FAD64E140666274D68560DECA2194D70377
-4EC76B35669FAC269409712901F0D3555B60175AC7799E31CAB70D06EA8D9C359C9DB9B6
-A3E02F6923C498617C041C28CD7E57486569429C3E4C89944E0EB150813854E3C2EEC4D7
-37E2DBB99287ECE4279F3E0D9D8EEFED11867F0E05E40DB8858CFC5DDBE873A174D756EF
-5D5E0D5F251F0FC0BFA7F69EF8D20E34B1B3B5D45501DBDB453D82F56BC6271C281A8A1E
-7D0D8C9B920256EF07F4AAC8FE2189485089F52D024BE36045E0BE613F0FFFE13D223B0B
-2478A20B98E76A783A98E7AFC642AC9CB333D6D39AD4E08B2BDA75686951965AFEB5D211
-57CF3DC3B911A4E45144B3D9D4AA4CF13DA039CC95A9CC8DF44CF17F3D09A1823D65CD4B
-29E2408B1C3FC6C1F3980378E1098255136F0D4BF90D0C4C042F1C86D40BB762E72C7EE1
-BC530755416A0DAC2B3DA0E7BEEBE7AEA9A39825EDEBD6CA316FEBB14C701BB7EA4F7800
-3DF2462E2E429FFC3EE8904D963A0017A606EA0E526EFF1E60BF825B2ED9CB42678B6F6C
-E55A893A047A4E5E38F15349B777566334153DE574290C6043694C364A3CFFFD07180F5A
-44CD991A0535D13C91FA1134BC457A455022614F3AFAB921A70603C47C96B5E466942AE5
-83621BA1544F2AABC4CF7C6E8B77F52FE39F5798E2FB9F180E3C86ABAC210C57A0226E38
-75885E3572BD47BE016C361E84754FCE64AC3345393F511C99BBCD70443D497D575BD81A
-47373184CD09ECD9F4A55F1CB26E921A2B8BDDDBC8052EC0B8CC812CCC2353586B0451B4
-791EB68293CB3B4C41B46723D2F138D5BAA8AA4580A5660F0DD13F25BD665D4994908BBB
-74182C783EDA6C5187C32B7D5DDACE8DB1571E7061A063AA56DEE4B0B6F5544437417E0F
-5F07EEDA1263224E5E44B83CB057BF54725859FED215E5B528BEFCA470C8527F40A09AE0
-20CD42E31306D1E9095137CB6E7FA08191BBCD7176B87A372A97671B9CC090936EF7E4E7
-85F1C6B541387A701828AD82A958C34DBE426FB12A03AA3BA2C97535DA8526164DCC150B
-67442F7D6765D16EBE7FAF904F42A8185DD30DE284916705D3D8826DF1D37E668F9669BB
-343D3200509218C5F929E0DFAA7FE3B79646F62835C808BAC29CEF8CA6D8363F0AC7291F
-E45A85DF8F0B9FC14C7182170AB1F51D9D9C33D8D98713CBF0931063EA95EBB031904EC5
-7FA914B7D7B254C3B178E174F807269B2BE5F340A3674FC03D7550017B70C0E53472442B
-3FDD4D1D45437DBC5AD56D690D9098D9DCDB17AAE217F73B54BA5D965EE197EEC8823FE4
-783FB5A4693273C7142728AD3F78946C0A8B7D3714DEAFED570BA2A9DF9240B61ADA22AE
-3F9B21FD1D73D4A474EA14EBFE6AC82B068D08EA2988E7C610EA5097B62DBECEDA5278F7
-27824E5BA9EA442B328C3B02E03C88511DA9C72A271027176EAC2C7B6392E9E99D8B42E1
-2CDD9991E43099C503DA5FB60E5D4F8FD3CB67FFAF46A1DD243D9DF13116880E727A9271
-BB778126C01AF95B75137A0E3831BFF257CA37DE0B3B4DF3C983D091F09519365B2B812A
-0B6273D30B01515013C73AC3B8D9C4520B5267E734651E013B8002D09F3B5BA7984A588C
-F6115DC9EB84C1C9AA0CBC9777D8923B3230E0A2963E08743E51CDEEDE33F7DDB10AFF69
-BAC8682A2B0885B8059661599B805B9684010A3B6DA56E23E265BC209158D3ABC69BD6C7
-6B13BA17F225D990CF0A42C1A37A5EC523FD80E60DD542322B42202D77F646FE34DB9AD7
-9908DF03C1C5C351E542294D245E1098989BCBEEED311FC5E7C8ADD52E52BF6F0F1331DD
-7F874B30B0A16484EE328FEBB0CA559613500BFE6994EA8357ECAEDB310CEA3235A421E1
-85471BFDAA649E3CC9128A0409C454B3C951FFEFFE648F1ADAA14D5317929411AB7D78F2
-B888B63481346F415314E1967919783F8D143EC05B7BC2D5D9F7315F41F0331911FD0018
-44E301CEAC9579DC227E0DF9FE2D217AC8D7B014CCB01DE9AE852AD42FAEF07CD5CAACAC
-324F3C00E330939FF4B5B677DA731FF712A6F8A10687D29A296B0E685A4F52F3009A4608
-8A935788703C71B584A8E855683278077851E1416171568CA50BCB4EBC8DE6C952FEC45D
-37FC6EA2EE7E151A96452C332221961EAED2B6262431C4C7BFFDD59EAEB9E3DBB17C3EB7
-3D90F0F872289F8AC482B4913C0A05E698C91682C37503A38C841C25A8BA855E7C1CD3EF
-5F1E025E58B2EB4599D76DEF57A60CF24E814B3166042F8084B08711D1C68DA4110BFA7D
-E8D3FBBEB3DE32CD01E237A403F8581AC2A015106AD81FA0DF90301D6BD887631A83623B
-4EEEBFEEDA012BD6C504B450A5F43137757C2EC7DB3662748B105F8B22EC030895E0F607
-5BBBF246422A7D0D6E8953CA66170A8947034CD6EE37EB7BBD0D9F02A538AA0F3D2D2076
-8C307F9558765FA715444282C823FFA3E95640778053A383886551D4F86D490FC156636E
-A5A3BD258674262202F4F76746ADD02FE0DCCD540EBD60EAB42D01FE252DBEC93598D6E2
-0312F2F4704AB003FF956FDA5C2A88F716A4EEC93503FA913CA019456AD0A8F6368CF6E5
-AD1B7CE1BB20BF0CB453379DEB3423B0649A6380ED7D0B40768730D37A9A98B2339852AA
-286809BC86757FAF3DD54C18C3CDE9E72FA874BE9D82655E0551DAF13FD665BD14DC7891
-12FCA109A1C73D4B0A7F230E2F9512D0DDC8029983A1984406A5F100567B88BA186329B5
-7A68539D43F67BE6263EFA278181688FA595ED3BC7C7483C4DCDDFFC01E641C231EBD842
-D21B48105397FC32D6A8D555015760029C2CAB13AC8D603CABF46867CABA01A99B95C92C
-3C224E8F59B3B327A01AE685ACFE6D67F28FA6663F6E47466DD0A6665592546D08AB7C5C
-EFD20D6D5115C775E033E0DAC75F2C6411D999DFB21172A8D0D3E427F768CF7535320DBB
-6053BF3A17536AF6B2C00979FED18A593F71146F9DEA8B31639AE0586B24763DF3469507
-3D1172972B5E1CB82BC46A60ACB82FC66B05D9228C67F3FB25E2D91FD11B696C9FE505CB
-9BD2B2D85D3A22595C338574978048050FD13A59C41B3B0CC2868DE4E017B53935793DAA
-3F6DABDA50B06F8141511C3D5093069CD1ECADB90C42431B5188D912A5DF033B633AB3EE
-67E4943935EA094071001B6F8FDFA00C0E8415358DDA77F2DDF4F7E2694CA6933C804849
-54A1DB8B5B6FE3A7A970DAFDDD1107FBC4C596C379881A6B148D21733CB2700FD9F4FDAA
-6DC49C40A6675C0284FB931AB93CFDE9A94FFC23BF259230AE1724F22485864833541367
-D274CE18EC890E4376F48144950FBE566FD285330486F5F23BAD7AF0A636821A122A4970
-35D77B580B5862D776826AA3735AEAE9D5D7D04C4582778F9B0F713A906618632FB653EF
-4FEA9BD993D11E0E51FF3A3DD50EFB462C4251A42D63863256FC819037BE597382C6BE60
-955D060340A268DCDA514793C845FF10EF0C72D6FF27BD1858B49D50516D48D6FD33AF71
-11CD37F5F7F0C4A4508BE16B80565557D025B529ABDAA2850E4EB6D8AA30ECF49B5D18CA
-AB0BE944E0B95AA0BBE9F4CA91A56FBD41983A6703FA0FE415171CE8C11AF45004FAC49A
-4346C206EBF58FFA74F22D21A1E069AC9DEBE6D36156C32E74A4ECD8BE2C0A6983D404C1
-07DE0A75C732AEA64C88389E15D474F8C0E7789B8707E2F46297012F4F51D07A10794D03
-195654BE0F7DF9A4F5F102C5A68CD37D129051620F807301FC8BD8252B4CEEE5EF78E803
-9D41B48CD3262419E9A4F93B678B9F471F4B221E7D165C1D2980CACA79F4E549D2ED61B5
-02E583516547A49E2804F1149855D77A0D86F3B1B429C56523FA773FA9452CD5B6340E64
-B04FDAE2E5B6B234D03E87E2FD39AFA134265000F7A9506F55505874D0B584C504DCD29E
-CCCB8D71485AEC7BC34AB30453AE4E3B2720CBEB6A9C9FDD7FE7DD565902C6BF2118DA3E
-95595C12A7744212827DF07AC5AA7B1E05D42FF38758A3C3105C5F0422030BB0102A9BEE
-0E07E20AA089C118908BD7207E686EDC8FEC0580F7FDD106F202676424FE815EAB287182
-61FDE8A17F2662BDC02C0E109A020C57C8F37C4B606FA2AFB8C0993E2CD1A91AE5BBF801
-390AB8EB8841FEB2B066F565E497DECCC37DFDC2581DA9AE15E8C215DC41FC92AEB57757
-E92E18FBFE36E0E6AF6887671A9578C318C7FF50178B32CC9A046370946ABBE792708330
-D1C370012CFA2BF4A5DF75CF019ABD1882566333B0E637B9935426FB127699885121D83A
-4DB8A43A648A459C83D623EFDF5A60F11ADD585EFF0579C91F8B5ACBE889D4993BA6FCBD
-64318022C3310DB5CE4324954D78F06ACAA1FA4C8C4120DD41DC4EE2CCA72CA36FCC368C
-A31323A17E4CFB07A0A02CA23F8518CE8ACE1548FD4B67F0A5C414C309DEE52E5327E09F
-4B2A07EDAD8A309C54DBCFE3A59B9BFD3174BED78566F6642916B5B01CF4DDABF72BAB82
-60EB5945BFD987B96B80DF607C64747F5344A27DCBF4EB9797BA5D17B7635D0D936833F5
-0AD01CF4B9FFC273C05AD87745D79BA436590D9B50988311A06EAF7CE77B5492A542ED4D
-129DEF268D2BB87D07DA19ABA6D4F78874A0A6960C9934670B9EDC47102EF929581A8698
-A9CD8F43E4F071577730D9D18AC416AB398124D9EBB91AB66A4CADBEDE5043EDF627CC88
-C68DED934ECCABBB9A7FC34DFB1B65ADD724BA67DAAEEBD04679816733D344635D997125
-7B2BA27D1F44A7D7E48F9C9A4A412030AF12FB89B15B07C3B18F9C6EB6AFED69D6A9951C
-3C1563481B46E4AE5841D88BF8C64461CEE73A332AA07C89414B4380D0CFAD8D61C72E68
-6B34B0EA660EE0C8370A99398D9B0166F8A77FF24BE1AD496B0C0E8ED04734527A5A8C79
-64F2568C9B00E98F7165D0594080DFFF7CE5FF8C26097FAFEEE33307E282858726E675C2
-4B4C31AD2B5B1B855B73D553E77D3320E4D88BEFAB426B94EA33FC9AD8FA81B6636CD4BF
-FC2D11BD1F52BC5BAA38C072AB771A9A107554A327EA10452F9C7624BC2DCD6DE2D43EB7
-0298DE357909FF66BE487285902388A024E120D587890FECE3A00376884947E1E6334BBD
-79B4774980E8A110E7BB841F9289805FEED0DA0F4D4B8048F190DE68517EF34963FA1BC8
-F8C575012E01C280B647902BBC2B80365E9A66E28EC8698EAC50CFDF1C6D113827AFEB9A
-45434209C921460BFF483BE373CAD65640FB3A8B7E5AC12CEAEDD5EE1B244FC42CCE85FE
-4D34FB21BEF3EA9B959B6DB1624F05ACA4602052A78FF842BB1148ED529A460DCEFDAE01
-6A10B5B3C9D11ABD14C53020138A9624F0DFC3B1E445290EDCD7F2DBF4BE408EA8EC21D4
-4D9DB728B76DA63AF62EB7F89DC43144028D1098287566586F195B124B89799E3881AE23
-F89DD6610230B09D6B8BDE79BA206B87BCBC18DBE1BC155862D28CD742C38DF8CC906233
-09F933D073491984DA9D927635800B84A1C2350CD18D962DC9A2A235E2443F5EA72DA9F6
-45BE3240B03AB4D9D95C3B57CA05FE3A7011E12B182AAD81B426BB17D44D5C1EB10959DA
-01563CA2260F6010ED7D37609ACF759EDF8C044860FBE3C89213394F03A309C04EE231EB
-FD84191ECF14A020C7A4D7BF855213D927DBD921E2324BBABA6B7A06D69B4271C66F4FC7
-F15DD52ECEEB76C4C97A85CD59A38E1CDEE2F78354B0B71155227553FBBAE0EBF0D625EA
-34B78125DABA3211CA9CF1D4AFA909080061588AF14CB97BC4DCC1E1A0BC04A40B107318
-1CAB643F064192A6074D3220EE050DE3A56D1558AC0F7DA0E2844EB48999EE9409F0F683
-92569D7E7DE78F070FA44C2E8ECDB09578598508EF3B97FA2B585A163EB540F2E8290244
-D60006EF558A5CCCB1D40CDED1CCEBD665A320CB82797F38DE80CF0DA15BB0E13B8CC180
-9D99437A5B25041EF68916C6E601B0432A2DB84C8DE1EBE4AD5A3EE34249E47CDA593424
-7C9E3F3251C59AEEB48BE773A6D775E6723F3B2AA55B2439CF841E1C729153B22550BD91
-F272DFD3EAA1336E94C8AEE4DEAA00C772BF05FFBE35BDE7AE2A0EAFC33A71DEC72B3179
-E4CE0DBFC083372451A7006B32357B94CD7975ADF21D5977D10444C80257874005F8A02D
-317CA3C38DD0F156F191F88A8BCFE274976220F0D25BA30DC195F5AC0CA478FC1173A7CD
-2A93B482916358E8B0ACEC25E51F975E210C895E1200FF2D29419EC300BB8284EACA5027
-69676CFA8099A110D1AA50B5A4523CBAF5FEEE90B605C5CADDFE233D235E008667D7C0C8
-B2BBEE796F1F78F4819A201131D4399FF2CC2D59B05F923780E775A9ECC284A68A2D76E3
-65E687530B96FC564DD173613D190EE8F1E6BAFC238FD9642D356E764860855820937E40
-44A41861BC40DCC84BD6F9969DEC343DC6F3F7C8FE9342793553B5C335CEF67084B9F1B7
-FDC790015B7F9D682EF547C986CBBC0606E0DE60E95AF386CF4A475902C58FC382C5A35A
-2CAC908457D5B69C88E95BCCF40A9B12012DB3F548C3ED3A549BE0E5B0BD17B38022F2EF
-2987ECC4A6EA46BBFAE4D6B330C3FA7DB68F0695F7A52C2E9BA1B97A6A2FB6ABA4B8EC07
-5E01D2C021D66FD6E47A4014E5AB39DAD64DA85D3171D7398BFF397E371C483283854453
-4E7815254A0612E9B79143E83555FFAB3438D5F56CC1B72BAD832D3F03F49675BFF38F9B
-8F1A89D2E739F07B2FD36BFEE46B0F8E22EB6F23710D0BA81F3B421E9691306ED6D87F65
-4FA8C6ACAA3356D8AEF5BABD5F6E6231E64A772C550212A6EB17D9EFB987D124E63EB266
-72F2C1C00DF095C829BA7AE2EC7C7C26FEEEF5C7AF6DCB1C846F6B6DBF3F7AA0585F6396
-0A27CB026B55B06954B296E45841706AB1D655A5EE4B774A336B137EEBB2AF2F958123A3
-A9649E57BD61EAD0FD1B05C16C1AAD5AC103C0CB1BE0DA4BF4DF83A7F47814A64A11B90F
-B0E449D75637E8C8366346E6839AE374FA3A2CCF4437F3F4C21B3649E8F25499556971F7
-210B267ABAF315E8B1D2120AD9D3110258BA296B3BA195931492AB8A28F1CCCB4AA607D4
-7DEE5BF92546FCACFF9D9243B8941D011F272431B2782CACBC99D9BEBC4CA43C90864DC8
-4C800605BDC071902BA524866FA1D98C709BF9200EA73C2FD8F41BEA226F37947CFE0B83
-1BD00F2237535653F63AAE9A6484A558FC74B7475EB0D895E62344F509D216A97B96B466
-24B8C4CDDE55B5E76D06AEBF9877562210AB2113912A2354E60C6986EB1077526250325B
-B926BEACF55EB2D98858849EE63A44003D3FBDC186315D8AEF57F8F829EB61C4BAB6C9A6
-E3626F0F3D7E6BA066E31D3F322D060AB9990A619D26BF75C261C69F2B88A9C28C70007E
-9B2C08AA5E8F73D00BC882F3680CC9A78E6D70DC8884A65D53E86B6A4030027F7D403CD5
-6106F3DAACACCBB4481C81FED3B7A711B04F016E18330367108EE6BD1A3121A9BD33EB35
-E824BFEE0D128D00208F3E1C860CC99AC8174444D75DF99CDEB40EB09C20355DCA68E13B
-630DAFABCBB6BB51FA406C924F40FA40E3FD6DA0C673DF1A2F695E8EC2127D51B6F034EA
-E96345AF0294778C6BDE553B2A9578927C484B51B4566B120F8A074C52318F06033716D2
-563658FCE1FC71C655D3319E3DAE16886B92DF451714283F5C1BC3FF960295B947D0D3ED
-1A101F34565F24519FF5E7764E3C5F2304FC8F6F313CF6864E09FF079C93167E654A7FD2
-4F6550BB972F93C43FB9399A0E82D58A43B926F454F38447110891E0011904A776271E60
-FC7AD11E984AF84FB551AE9E7CB68466AF9AD82FAB71590A265A08A58C16046254ACB03E
-98EFA92EF2EEC42B4733B1BD9FC767DFE45D4E74FE31B3EA3588746D5A6ED60F874E7C00
-88E2E423BF78909FCE19952A9BF46BAB57640CE2478015C7137D87D722254B3A70D848BB
-177F0926A2E8DB72506A41C381B6C9D9F4B22700C5AF711F5EE5C7C1CA502483DEF489EA
-0EE03CDD50292460C7352EA9B5B4A50FCA148F7FB3191432787A1D4EE5AA9080D95B810F
-B13F5267F1486BF1A49740C61E0C6C885E3C5B9B28534CFE99F9C656CBC3500DFEA2C3C0
-68DF8B93243857CCB6D50EA01222C1CD2AC256063A27F29969BCCEB98B677F10FF3041A5
-D78B64EB9034C4D2B3EAB0BCBCC6C3A4E3F9F8EE0BC45A934C97F79E3ED5B9889285F535
-7B5AECE08D84E86C95B68CD40E4D747A33024028EB6D6CC22D05306803C5120BA4988696
-F91F4576E3BF631FE32273E3618F378FE44B56431230AD82B5F7FAD86941DFB3716D4598
-C9B3C3B92E0839F583D28577946992529A301525F1D784C6E8D21999972522D79AC7072E
-DCE82D02F952750C4EF7BB486F202D22C5117C4AF3C61C182C177BD247A4F58A55764371
-235A5BC43A4BF5F2977EFB2B293246BB9A55B4E52C4CC35F4C5362395B69B56CB8E21F4F
-230A12741F10EE5869AFF80FB230EDAE5BACC982A7B715287BE10A2C77CAB7DCB986463E
-00C3CF475A746BAAF746FC1657BFA756A3EF1C5721A9E5129AF438C17CF2717AA26F3B55
-6E16EC7012EA595BE25CAC595AD380BDE9357F70CE740D44CED744EB001FA180E54CEA76
-A0F33436BEF0173CFBE3F450823F53702405E39AA9AE532ACB2D87F94B89385941573FE1
-B00E96F44433409EBC3B007A2BA87A026E9A99AB844F0826F837CEAF0ED515B75FE083EA
-47AD5BCB8DCE6ADEB4DEBD9DDC83554336FB9B23FDBE3E9812E8D388DA8036B2EA0F0544
-5EE65BD22CEA0325423876C76D30F77443A1AD4B8640369327DCB70945C94E625CA480E5
-D18DB76FF293F7FB61730A67DEC184BFCB2CEC8A47476E40533B00EACA213C3A9162C02F
-229EE91BAD96D2E7FC21930BA22596037E2BAA35AF874BDC4ABDC9DF92F2CA2CD38C5626
-4457D579CCA2C2D9A69E72B46BE5B19789934A526195CE74263C4E4EE29AA0F0897E1375
-F9914C3E39CC8E254031F58F1618565CAA96AFC2F8636856214A86A5BDC3B48F05FB5391
-797D5A8DFF2793D1C1346E54C7EE0E6170C82C5F826C58E46902D7AE72F4725410FC008A
-D1DBFF2B0F6D269D5390F43663AF29E2138582F6B223C0C577428E2E320AD6E2D8EC8F9B
-28F4358A71590309F5D75F86078B95A66DCDE939BB502BD0298E6690CC33832DAD2F7133
-EC7CBCF9EAE3134D91FDEB4BC8C98AE7C8020BF3B3D88D8F207880958F1DEFFD714A947C
-1E2A6DBBBA6E150EBBB7576D612BAEEFBA83E85F20F4B5FD8CA126CE2E063A87005E4FC9
-4DF19C2EF01DBE2B45D5F255152BDB78BAA8506BA36190DD155AC40D4448F0DBB3A0C0AE
-FBE24ADC1CC30F4E1412CBC6CD52DF405A4252F8557E8154730E483B8541E663E0BAE8C7
-816D95CA8B6D800446E4665EE726DBF0ED62395CBDE723ACFCF0EBA7D39697EF738A6F21
-CF591045F1CA5C3E68C2CD77143D7F694A7B9FE3348F70719B0F7D805E1BB83A1AC9F346
-1DA81E3167465C8ADDF6EB04F86193152EE00970D2066F79B191EE15E33606D83505C36F
-9E8B05926BC156D236E865636E459EB06DC8A9AE6BF433511AAF8B2F37F0655488CD800D
-BFC43897B1028A659F689618B15FBB801F303FE42402DA3F49CFDC8D03E5C28249400DC9
-44596A2BBF7F3BAD818203685C7C1B13C05CBB7E86EFB28B6C4D1C9D46DD08CA022E54C5
-4C6D84E0B15412F3BB3B7CFEA7A9A06BBCE4C69157ABBDD52FC5FACF0A23A53953C35191
-8379F3FF2F3BF089CF82158BD6E7013F5DC178EE34C55CB37A84C98C2F24A64B34978D95
-F82760C5382AEEC5761418A7D75704EF2EFA8EAD21B8EE44B87A8FFC59EAFE6B2CAA3D90
-CD2CD737421FEF85551E5E499847EF4B9D7D33F72A9B9E739CB294A16041EF1FAE98F726
-AA1460D1C782A2D3A717F925B4AE0E1A32FBA63A20692348F7BCA69DDF3FC0BF734930BE
-518FC35FE0DE9F36E6C6AF15D770FB35B68AFC513969D9A0934131FB9A0A60B351E38659
-E3D6ED518CD1D9BFB40A16AC9E77CDEF94E5C3CF0FAE13076F4BCE2841C7EF7E0B364A1D
-5B932335CE17861FEEE20D02237AA90A704EB6B74477BCA3B8BEBF8CE59E19E861832F0B
-950FE683E1E5C05547F00BBD3478125768EBEADB91C6F3D2529FF871939CC7C10D0F07AF
-58FCC9F8F9538870C3559DDF56BD94B5C1F239E44324C68F756B33989B482C45A7B78D76
-6E95E12F4E8853A430877E892A392C0228C567BBD42BE2E2FFA7F27578842D7B5D05B799
-C080B6E55B53D196FB2C4CFD7BF64115742FFC49465B2B62D80E877AA7E7D9D8811327C6
-6DB937B48FF75E410B5F639F02774678625F24CE25814E5718941D731B2F8F52A61CCEEF
-66D7A63A4D74DA48992E4794B453734C9C3CB488DFBA825C094CD8B9729AD572DE4B4B7E
-557644A0821BFDF2AEB7BF98C740C6F7BB79E0D80891BD9926DA4DAD346C785B381DF173
-23760CC55A8D050F73E8B8B751438037EFD9505DCFE058874FDE5AA5DEDF7B0B1978F714
-3F0981B964DB2F7A55B97C7ADF41DC95CA295C8DF2858BEFB21B94F5957715F982BCA5A8
-D6BD438C12C8E95ACC46E9720C7AF8A61A1D952F80E1D65769283FD18C2ADA03242F333C
-527384FC8E5FC02B32B4802A8AFD6A0FBBD5678CAA927B5E970CAE60F72773BB4CE9E49A
-0455728B49422E2AFCE32DE8528696E6ED42B350B80C39BE82CB53478FD8EA4B63DAE5AC
-3ED27E83AFFCCC52E65675EED25001048297E293DADC529D37B5BFAD0C659292A7D89F81
-88A37651DED8312E33EB4F39EEBA2102712D108E8122F06AAC04528E3EC813EBE0D99EA5
-72E4EA566ABE4FF8FF53362FA3158FA52FC599728D97AA69A5C46FCBF2B0B75D2704F9E7
-CC7CDCCA951FE69E9C2B9B448D44E82D3DE480087E98D1A580354D4D0A8F893DFB7EE4D9
-30990BB3B886A2F0AE65B2F8C5FB109B5B7A69886E73E7883783FB030DA933B5853DDFDF
-EC18E867FD17F24DF97CF72D95C7EC0897D20F2FAE74A9280DDAD0497CA6D099FA350C68
-1A46CCBD7B8E7AB3AD45658B8F8B3DAA18D6C5DF704A51DF6F2DB5F7FC218980B65BB446
-99569FF1D4081B16356114E4E72166A09ADF09827750DFB537E9F3CB07A29E2D4A435579
-8F9FCFA874A4772D04B7AF6306A75C68260ABCC1B2F59C447845735F8D9557A97635C2B5
-046B8AEC2815C5094D918D67638C10C7820BBD26EA458B076D5979E4DEE7DBD341097400
-2DED95CC963CA2D607FFA38BF2F6175E77ED9A8ECE8B81EDCD7FD6470E63E48A68C0BF40
-952AD9C1426B3FA70F59D03F317C1484FEEED313A9B21DD3410F3DAF2D664C8176FF63EE
-2FF4D366A2E12AE43B34039BA38EF175253B582F457EE300E0F4AE056909C751F8E9F889
-EC08A1668980672230F7564C28C98BE3021A863086442F0D1B0169F98CA5460CFA959A93
-61E44F39FD8F5F1395C18B9DE0DABFDCB82717E34E836578901B33EC4CC2AF27E94609C6
-D78FDE2D2EE6D169036CAEE5530FC220D59A1BCE8DDDD67C2902E53E21493FF9DF4F06D6
-0787A3E6D31507E4A924BA17142C4421D2B87ADCC7A1D0861607A50C49E8359E0BCEEBDF
-BF997E7988B54950D1B8104C504AF8B321D155FA250380D4753C739CC0C2866ACB76E1FB
-D3A7CEB9C6DED0AEDCB16CB9C0FF78FC48A3B7B9CB117DDBB3F2EAFCA2A9462C3F125163
-6D130D50AC1C2E4381A5E89C22432DA5646E4D7191EB57F78AE5C8C63190C8A350D7A084
-54619FEADA6DEB239AC9CF577DE28BC967871FEECA21CBC24B7F5BC4656441B627A81771
-7B793E36D510ECD9835595B08C54504A35DCD31FB2354A2E3B9029FF9586BDDED0E8BBA6
-C0DBBEEF15BD4ABA2296F949104B44C7AF0FE063A14CC8498E52DA2497EBF940DE5F6AA3
-3788199C9ABC1A3EDE12C4CD6324EE6C6856BCF9C5B009C150A304BC37ED7581BEF3827B
-ED0C87705C2EE399BBC1A2888BB0EB5BE6CE090C4EC75F44B77EC20C37D890E9225CA515
-0A3710734549550537F5E097610804FE488C0E67F063AE0B685D4AB5FF167D9462A87061
-3E240E17905E7A47119CEA30BB69011C3AAE24AF76EB189D7BCB06EE72CBB7C1225D366A
-661A2DFF5F3E9E5C6AF1D81553146BE97DF02DCB92B690BE5C0D2C44E1A57FEC0BED0149
-9A6D08BCDC64AAC6568A1D3045616E470F23AEF55E642FDF155842FAFF49EFC7F6261F25
-662E6373E1A107326EE123240146DC3E8A7BE75E51FCB2931C8F42A6E76542B763192B1A
-287CF88D28D0C897BECC7924801EC1D7B7B7E519DF69DFA0DADFDA635C9942F0AE4DA3AC
-B6F1EFE8003E1192DE4EBB8C0656DC6BE46462C97C02B63B7A660B12B1E169416683BB75
-DD6AFD649F97018C8DBE0D4CA139D964A7FE98E7E86EC3F4E846C3DAE736F4C348D39E35
-C98D98B96E6A0436F5B5DD9ECA1DCCCA921879F11D42512810B55584A2F72607D20F801D
-029534B9D3D7C2FA984005D00398FE7E549CE68EAA5B2B21D87EC383973C2D7A3A095293
-A510DF4F80074C4919883DF6091561EDD20B440E6FFDFAC0895B3D4EA594B7396B4B3AF3
-78559044AA7863D818DC89064CB7518D7448C749E66B56F9914E538EEFBAF56FE087CDDA
-AA59C8A6146C282DF632571830B849A87E0A1089979BA0B38911386EC7834B8C3D212224
-D76CE946A6DE2B2C246A92CBB976736A586DAFE1B3D62DA86B7ED2C92D1B852FA2DA29E5
-7AE135B93A7110018E0968145A18CA917354614CB1937AD9EDE813A70B30CFB5AEBCA5ED
-C158CF63704ACA8275356C4837B9CA53F4BFE2718FCD0F4502F90632E5F65FBB14C56351
-21B5A367A979E1515FB818FD72D9AE26CBDE09F79C244AE16E4AA13609878D0DC151915D
-151AC0844AE2CD57426FC916E920ED93AD36F9412EEEDC7CBE6EDF7EE7DF16D52CE0AF4F
-2E5470517F51B4D4DC734AE36A66D44BAB9531B8E2AA28A811F08F4283FAF1394E56FFC0
-9BC31790081146224C8A599F9209D59027843EC5C1DF4C9919B0513050868A107F9B48EA
-8D68EDDC6947CBD4031CAEC69E35BA5F7F2CE967A9A645B064059A523A06E8BB5F33CBC2
-70D056A003D76AA7BA382CD149BE61990747C75F16D48EB550EB230CE7A87D8150AE1352
-C3A828660FEC741DF9A0F41677F8ACD0376724B7060B0DEA0478692B3E3EFBEC197768B0
-022B89CE385C383C478221B9128B577FEE85289F1AE5680F3F0BAA120916102059E3EB49
-74EE47955A35175C55EE172D41B79D47A1D69B679F08AE94B8CF805744C571B87A9B53DB
-2C9F9573FE047343039413D96C6E757C9FEC200EDB3AFF4D330DABF5F2FD5A165C137BEA
-4F975CB34D9B372E543A61C95408C284AF4ECB516028144A64CA94CD5B4282257E8820EF
-1CE2CEFEF2B2254C7555950DBC6CE5E30176DBD5DB8DBCA2159961DCE778A703908A4E01
-BA33D7645C00261888C7A63D0893DB6EE0BC2165F002CE8B909264173D563EA04940844A
-F99D5750540EA9AF7EE79B37173C4150F42CCD60053870250E45921EA215D6A318C232DF
-9000542ED5479DCAB19B839D4F2BC2871F552FE440D7EAB59F1E46130D45E1322D1EB470
-AD5948C18BE73A0EC5028E37D6E7A0D2B0305683D244FC5E80207825FD8E587A74900042
-9C60722A87D9C0D96B32159A5E00120A9FB93A5F49014C86ADD51C4A1DE4D5120DC04763
-136663D080AE9A62F7136088200DC77777868075E545F8AFF504E55024DA59E61CC7D28F
-0D2CF46A746EA11F9CC96E28A12F1C4E208D77BC61FC5F7C32CD6210AF8D5167D0781F33
-F55EB7C7BB8DCF35FEAEA7B268051C9BDE278D9AFDC8B1F832A96FEA08ADA9EEFD8B4D64
-525E223E0F8BE2D4492FF02DEFCE293DF9BC0B63FADFC0CF36D86408C198354D60810EC9
-A184885B1049D002D5250D46763042EF9466A3CC6D5D77F15DDED407743E5B0E66F07E2F
-0D6B34DD74B03ABDD904746F47AC74EC694F2423AAD5AC1BA4D92CC812D14AD5BFBE7EED
-E711C2FF2CA96229106E9B1EBCB7B247E9DF0D3497B50AFB597128670D3C37D33E8B3E81
-4CC5939FC944F0DA9F486517F19CF6DBBC50315F25BCDC9E2EC95BC5C32C3873FFBD02E1
-10C4EBDB28C5D812B259385DE0F27DCCEEF80D106CCF483FCCA045664F74BB6F3A93467B
-F8CE0D96A004A1E0432B509E1E28CD71BEF3CC18FEB60DEC9C3C8B4C7DCDC14360C02604
-65A67941AF7445642F51288B5BBE76CBB54DCEBFE0FC2BB4F9DCEAD53743B355DBB7095C
-4869B00D783D56AB252AD6242BAC1D7F71701B0BDCCA9788B29FEB31245E97BA0BBF6167
-570DE4DB44AB1823F301C2804D20BB08494685CEC27C481041C456C5D1024B7787385BA8
-F7799355810EA9BC21F6B14F7A4FC8F85276FFBEACADA152C746133E53A53F8788030D93
-5206C09FC2A130AAF5A6B28BF9F81A3AB72F910FFBBAAC14993777786D6F6B42FD005566
-B7D5C006BCC0DD10EC2D8EA90ED65F8EB52B488F5D5AD6AB2A46FF7C06B95523D79246CF
-34576847ECC644C0A85F3D379DB1F97A246FE3B066D0A6F7B6BA63854EEAC4C82A92C3F4
-53A9A906DF74B5996B96D2A13A1F7EF9682D8F0669D4D241BA1012B13D69CE14263707E2
-22BBB0E36F19ADB165BEEAD76B323B55740716B85043EEF89D393EA418BFA7806FD23FAE
-5D26CB811E5113DA77A37560F82AE3D2F4D8C4970AE092D0E56888D525D45563D0CB4DB3
-5317E01296570AB93CE8FBEE77BEB7E9DBDEE9F3208656C8B536F8E44F89203343DEF8D0
-C6CF20273522C4E2ED3AB104E4C98E0C773C991C89E16BAD8D6EF4D70EB69F9B9E7192D9
-36E057EEB0048168D2199D790379433974A70E9F418899D3822B0354596149DEF74FD653
-162778EC18B4AC9093ED9A6A3B3C76EEC9CDBF5A4A4ED23BF60E04E5D53A1CCE0360E178
-A682D70D86C5E5D8B4DB2BBCF7082558185084F8D8A22C96C7296DABE818F67FA9E5ECB6
-F5064065B7CFD19BADB214DAF76DC8EE0348E93849BCF1940962F297DB8181847B9FA9FA
-6B443B870C7FFC99CAC69584C8CB64B01098EA4D3496EB66CB4A146766706945BE8AC9E5
-1F82AD6B2891A38D0065D37C2ABF340C05F8BEE47A35F3B01485CBD9B4C79D6DE4CE40C6
-E73806BA1CFEBA9C3A0816054A8A41B757375D6A0E013F96D8D168F0A18E44FCE3975699
-FAEE3089DA2C4C743E8F746C7CE589968319BF03874B6F577D2ADF4711B8BD42EB9A51C7
-256916C4258B3EE07BD2CF4431F1C835C2E1E86887E100703EAA07336E54673C3A3EB4F1
-B687442C6D4AEBF412398D1F1465B8FFDC4FEFD5ABD396EEA8FE981E585F3CA45798A874
-EC4D3D7D2BB31E4CD62898F6D6F27E87B2D2E8BB78BA524A54731D04E0A21C19C05C5F45
-357270669300949C580629390B2734F0F1A32C764E0BBCB8177DE0E5B8FE4E958E9651E8
-703C8AB58326FE0449A73AC645B2DE49E6FC099399003449124AEC31A8714834A8601652
-6198B6AEA7A2F0895EA9F9BBEB13311BB006F4F6452C8F23064057B7329D3B98C5C2ED39
-139FA2436C0B610542069B96D6A0027D4C3B79CC646C8E063C38C3EE4145236F955A60D7
-073D6B8DADBD102BE5EB88FEB9B889A0E7FDDE15B9F69F734EDC33F16BDCB9FB84481969
-6CA99D5D5BB5EA6B2C082EBAA52963C8454A0A1E475013829CBC977864B617A14DDDA328
-E086803BC06FEEBE32D8977F9A8376325B773199B29B1CB15CDFAE065B3A127D8D160E1C
-472206B7E4497C9E91B5F487FAFF62724D86478741E6A2FF610256AB92AB688F2AB751DD
-90D96090E98A2C94C59F0756709F828EDF55D4C7A56E329F3085A8F7CBC2765929BE87DF
-11B087B08DA4D082594FB949640C24586FF1C8B505EDAF05C4BE22EF8574AADDC544C702
-C76D7A9096B206979CCF7AE4249552B38A2FA76F2A9E4EA55ECF7E7B4AC88F77B6FE203A
-2D4780CAC541C94107DA1031658D2041ABBDA42FA36A744F55B1B79090B3FC71BA917778
-CCEA41B76A06564B753BA93BF518CDCC98192399E4960A870D13B48A5B18AAFBC7AC0527
-66F9727D135DB7FEB447986F1817A66EA426643E1D2A4127680EB0BE913BFBBF01BCC874
-92F6D772F4823ACB23F378CE68FCDD439A23947BF8AECFD88A8F8FF4E28526920B833CDA
-DA3F234880E1CF5DCB0D1E333809B0BACE4D1A3CF36E122F5258E7B277125C9AC20AC18B
-9323D1C8332E6CE51FF5C7CFD5201E85498BD05430993DD8E18A04C75200C6B883B0386A
-8E81A4A6E3CC28E4D0744D8EAB410D60B93B82B64D387EE84A27DEF4115D554C338EB123
-40E9B6B62FAE4846FBE23DE6EFF018EA67317C8743F171AD6A008CC1190D6ACF47B5712E
-607B1D6A6EBF3EC767F51A6D432CBE352E67FB4D976D852144289006679AAE4E5C582043
-3ED4A6F4DDB4F6056AF923B84B8436BDEBE43AA7FF0A84B71F469C7BF396E0EA95D31AE5
-23B41676AAAC68203F1214E08BDFA403EBDCFCBA37023A566A0BCF34D4237B6A86FAE988
-DDF9D5699021CFEFCF8BCC3862836220C39BCC82553FBA41585259B0494FA1FFD2C92C93
-C4380B885A55A0F4E829CE6EFFC72F6FE64B66E64A2E3B0E82043D164D0EFCBD3CE98D2B
-8EC210F6570A60C92ED09E5B8BA6618BDA36F14BB1B1E6DCCEBE50E612A09660377A67D9
-3B19D79AC625693FAE271348044AD13EA26B4FE7D1520A814C2F7730537068C5C34984B5
-0B8BD7F836B957067E02A65B6D26456BE4334F180030082A26D89091E30D628BCA32307B
-310C0078D3FCD2283D078740BDC955B4DE611BA1D09A04AE30EB30154C0573F459E75557
-A006418C7EA44ABAEF9382C182CC6AE260328551D722FF8D4B06D292E09215F79118A716
-77B0F6B4A7F15BAF61BBABDEFD83C92231DC7E4A491333DCE7B5D1FF92B6D79462D8B95C
-E8300AE364B0D92F7C40797EBBC62F9847C796775385E343FDB02A0726FF6D5E118B8913
-F77E2DE8D7A93359530808B89BA7CE125C2DD1174D30F0EF295CFDC6E4B039283D23F235
-24D860B97851E7A59A8863959F75757E6F9F7BB8C5629675225CE1F9543F3EED0D931D2E
-18A9206F709E5586CF19A965C5CDDE330517E19596DB1A817C3146433FB0220655949098
-0FF33A01F79C04CF7D46D80AEAE67F867DD572EFC12B469C9BE08D9ECCE54050A6331593
-4FBAFBD5E4F2348251582AA624E6743A0C8FA08FB3739A303D919A9796797642F6CD65D6
-7548C40C32912745452600D2093AD67A34D3219CB539CECB093009B13AA77CAE78AECB0D
-A624DA455725B2707A8B27FB75411B96DD0F8F33A31CCA0D0DF08BB08679C6D2F06CF847
-23DDFCC89E54D68DBC2E8AF22D0E20F86317847D41BD78B463593DE423200FCEC1341B6B
-A61B327CD89757825968B6D40BDCEB55BC00827EDF7994C12CFED6A4C16F5F3CE38747CC
-8942C8CE454794209ADCE9A7D2608224AAAC684EE97DC956453071AAB23DAC8D28D1E2EA
-13D28DAFF068BF11859F8E1B8E8C571EA30CCAD1333788647E250577D2E908F41ECA1B5C
-1A2199B479F0D38731EFF6F8DDF3B86FD436D41F24306BE4D1771EF24B287EA32C5A60FC
-BAD6655A20261020A3690E70DCAC494A6AF3214BAEED8C00CC86E861C4BA6F545F94194D
-9FD1736A81A26ADB9BF05BBFED3157D6893014E87FCD8419D750AB2F51711D1D4FCCA860
-FFD22A121805E91AAE796708CF754C5030742FA9AE9CE22FD45089F532C769E906D2D74A
-6C7DADF54ABB9F8CE74AA0E8B86F9CE77CA934DE33404BD07BE3CD88FF1D9C27DF034032
-554121F6214B95B17E1F8B2909C31B93E3BCD416DC76A4D150B7DC1A0D16B57A3E7207E5
-34BDF060F416E97B6C97AD7FC846F6A3CFDC92BAA822FCD90087A19C6C04BFB4BEEECF2C
-E8B184E9D9A72005D2E2B306AB25E7708A36C3C6CE857244BAEEAED79DCC8420EE0DF1C7
-A3BAE477C4DC1EFD1CCDA761F230AC93BAD22F569758FAEA83B6FC12796C503856E171C2
-1B8DE2926E0000BD7BCB2087184865B43DA908765DB836C1397F86C4EF27C6B667D35B3E
-ABE731CD32C0501DA20A26F086373E4CCA74922D3988B857A715B8C70F131A190A33D9D8
-C36E061A60E1B5C63C749AE965EBED843204279D515969A3A5A5C0616FBA3D7DCF19AA8F
-B0B8FE4D5134EAD0CC503F0BBFA49E7C2110BDD4BE27DC7B67DD0F417AF8C33FEC671208
-9D5309074D1B15CD52FD2CF319D1A3B149D7A513AD9D7C0C1EF8CD2CD7031F082B27CFE3
-1CB2737CCA9492AEC194A92BB2E5FDF0A94A30836D1FDCB78D9AD2A3E4A289A7E58177B2
-9D92BA721571204A74441EDA8385B79E67E5AE5F52A2A181E8C22E3343A30AA03E2DF4AF
-B65F91D82A7823D2A172196B613DB060917CB303C574522DFAD536167A501EC998004BBC
-7DCFE97EE8AE4F169D604214B9746475C32B7E557223B20DE15E67DFBE2B4251DE61F732
-9BE3B01CA9D20CC06173FF97EF9C15C4109A1A6A321C4CFF59F448D7021A0A0E2ACBEB78
-C4C7417E652E46DB60BC50D79A8247146CCCD3D288F7DFDD1379154E6E67C3245B8D4F78
-394936ACA8A3BDD330219F916595035D95CF1AC043B3205981126CDB837EC4A69FD88C20
-EB20E8204E3C5388A84F25AC5E96F58BBD258326C4961CC39627359AC1BBD203C878FA14
-6466C407F206184AF3D5666E7A3D6A01A866523FB85A86CBC08C62ABA290248E9E23647E
-4A3D39C6C1A4DB8EBFE9BE7D70B228A3D426D6F5F0B73EE30A462983D166782B02AC2B3D
-CBF181470A396FC272782D83A2F6978586975FF35C955A2A15DDF14A0A152B91344856DE
-24E10D9BCA853424AA1ECA78A8598A300F620C5D5DCAFC26E087A118219F6F17B1A468A8
-B3C2CA6E1113F428BFA8776F863D89B432CCD125F7E37002067D775FADA0365E6314B022
-E782134FCD614431D014018CE7E6A66092EE5113F3E94ABD5CC5EBB42B11DAA52D18C34C
-3A8A973F1BB6AFA1C81BC36EED9595E5AC3ACBD580D6D499273CC5A04FF2FF51CBF886D2
-4A80DC14D0C7C69B04E77E3C0D9DF24D295128632562A1BACE9CB3D69332EB08490CBB94
-37A4CBEDA79BC03409C7EFC8B8C38072D37F9C2EEA32C59644EB148EA83C21534D28211B
-E074DB78285632BE3DEBDE8524490B9CE18FD89374171B546D349828B5C2E9A497539CCE
-B501FCD13C47F4C2C57E7B625963E7159A57A3C18FF6DE06B357E7D125574D6BC2A3B891
-A918E00AF3BBDF845E6E3BB21FFDC4F724085C73B147EC7C72AAFE2C7087133CF8759CE3
-5365425F272C61CF5F96B1490DEDE8E9FE77E6F7FAD03A79DF2E2A90E1A12263EE5E67B4
-4B1A7C1737E4B178FEE720652505F6C5AD062FBEAF7C8134E984B8FEEA448340FEE7E3B8
-54436EE0CF964B7F854AB52C1A7FC0CB455EA3B879034C34361FC56935B400E93022A073
-44F0552946915B6DF0464C8F7DA5EF0C6CC85A877BEAB9FFC4854252FC2D01C275E634B5
-2F4A439AD072ED4917A6132CEA7669CC1D91CFA66EBC689CCA482E9D5DAC4F2D4A138041
-82792ED95C8305E0BCD5B0D70C6E89F7F292FFF59D405B86A00765E0E2A42C18004366A4
-C9AA307E15395495BD16D691EB48649FC2E377B388B6F5A8D519D6CC18B4F2176FA9481A
-BF4A0674FD8627F5A544C3954A4F51C234DD631301465BCFF18734190C48531D3C22A368
-3A8887D4C665D442C58CF05192C957A5B8D5246E925963FB22A4476E74122D5C5A45A64A
-DDD5280D5BCE3DD52BA0C2C5BB01E25C6107BB785D48C5E37EC652343D5DF64124E0544E
-58785F88A7677C2995B938923A3D31BFEBE629A0C0B10E89DC24AD5C5BB67CE96706620D
-44122A38FE39966D83C60B29DCEACE2D5B7C62B8DD63A8C4933EC9C2DB8F0E1EA95C4325
-E6A392A6FA28BC9D8A4614B57D6454ACBE1D4855126AF4F741EA672C5DC8785B9510F1E7
-CD009ABC0DA119E418B9D1732893A71295FFB947382B621A35430765814A4D87BC9225F7
-C30315EE1C82AA20C6694A2BBAB918D6218A862B9606E868B7CE46ADD21F18FC192F3E53
-680F2300AF3404BDA02406D991FCBD977F993BE179ECE640101FF69DD7130AE252104759
-BE35F677641AA99B77998EC68F2C33A8BEB421CDD80A32C85187445EB30F882B11DAA52D
-15208664CED636B5A8630DAC33A8F1A8ABF26A1E28B1E9C5A8BF20B535534D337780DF72
-2D36FB033EFAC9F460A030DBA78B9DA909984C36A8D3A206501585E2E7CFAEE68CFFA72F
-3C55906EF2D704D8815FC8DA8CAD942581B20FE0532732DD02C2E7809FDD9EAE6CDE2B79
-F81DFFEDBF5B25B0F81E884877AD96AC10D4CDE1212BDF99DB3BE6B407AC12D6FF84909E
-B43A9E47C76B6D10F728AC30B0AC9902AB6FC8F894FF1B8EC121C32DAB55C6A781D5AD57
-45F94D85EF8BCC8F2672EDA77E61499065D9C1C6CB105E0DA67E2562663B52D97CE325FD
-4C0C6A01D33FB1D3DBE738088EB49F61BA3A7E70F567109226E247AFF09D9B0A2103C79B
-33467BA06B94DB8BAC62F45935DBCBF027F1C7C36DD12E895077A646392EC61266C98961
-FAE84D5338D421424846807E904E1B276CACA31010E0B3E5F5A05E98B82A5576C060F452
-6CE73581B41C6BFB71867D47293EB5E120E0878CBD4F670B69EE75C203CACDA0B87CD4D8
-6A7FE930BE7BB0D0E004FC34C2A51B5304FE437BAE9F2A2615DD834E6D680A1EED495A87
-5362C820E355D56B2B5D2C70EF2756A992BABD7C94555961A2C39C5AFF95AE8B88DB2B33
-2D0F4551212BD258BD2D6C53A290657A3475E173AF1CC8A893337932D9B35FF9CD005B2E
-7854D0997F23CB9D359D7462EC0827DAA520FAAB6B0A396695DFCA5758BFA64DDF4203ED
-FE4F89457895CE06250121FD57536E08E898DC20F084890D65772A9E242F5A07A0CA75C9
-C3551E79784A8A3256455B6C88CDB8652ECB2A457D00B90E2C0DBAEEED508EE964DF1329
-B34B20E37D58D92B6AA15B5D5F56702C9EB9755025FC8FC393C430CCFA34180ED1BCF887
-05C6E3EFEE8A9D5C99EC0F48CBCC34F37FE10FDCC68B021E14A1D131FCF8D5C2F8FBF465
-8A60A554D418D590E03A268503D12C542393342599828553AD4589E8B0E6DFB2EC663AA3
-B6A37FB206C1B732C18A052A0F309DCA19DAE82D110FD3337A863206216B00317508BA1C
-1859349EEEE49B9D25C897D29C4F28C3757D350B3000612D4C32AB5E072DC92700132514
-30C91CDE6C1035138C683763736103E836DB99ADC686EDE265182E8B02063D76441E6122
-F10EB88DC27F1273BEBC4219A5E6934C51E2A9FD36C7CAA59FC5A5D2049C0781FB48B30B
-750640992D5CE69D1602543B81712E8514041B4991A115956C268DE747B0F136F8819023
-8D14DDE8DDEBB7E147057EFAB2D0F0002CCD0C6D997248A1AA973D284D6A04A3E009EEF4
-3F9E859CFB4833C7E485DF4786089D9061F6F4C1EC74BD179D01636788A88597B7F9742E
-17C41DBEA3E371FC867274D265589AF7BEACF9748E7E21B73318BB6728F455EF9BB67165
-6C39614711B33B96FF3F74EAFFCE174F0CFD3704637E5CD8AAAA0127AC58C82CA7B20971
-670582631831E7E5EDB9A27C26C67165C891679515E0514E6D6CB7ADD9CAE98B9E578DA4
-7B521CE6E8A0AD1DE58A024F954A424B707C462C83F5B459D000E5195F45FC4DD186DDDE
-4E305D1A2743BE9C41B337785B9D57EBEC790987B6E1D03EC686CD01C3E2E14D63E07AC8
-FBDF1D5D1B38A2BC1BFBAE604908BEA0990033F9F4FBBB8CAA310EA2C217EB5FDB8E0B08
-98F64639043595E8D09010D98F959A7BF315716FE1E05109992F33231C10B7296E284A87
-219767CAB7BC5DD096DC7E164E114FCB6CB16F078275B08936A7A036D17B96863A068423
-D4B72E67EA43483968214F6243E538AEFDD7B076B0B6F7CE98A914D2A2332751DA48BCC8
-0A950FD81DACC79DD6E3A2EC69B724FCB10CAAA58272FA64D625557153DC7C1683858F9C
-00C98EC395D7A364E65B33A0A8FF31C7FC19CE7DFB5D77E2B5196C924039F2B4D4859C11
-F3E9D42760F5DDB4A3BC9B78C0CFD18F9B75F4756DDFE2D7C3C8C4A60E6ABD17A234CC78
-10A6AC5778570C86C63B27926FA00D01A204CB6E7EDDFA36476E7278B67789B17EAB6F9B
-384465DC8EA130CFB75204A20E63D0A77F4F2148BF88AF8D86A7CC39FEFCEAFEB7CAF7B0
-65D7CFC437E55773A2F24A1F7156C4488FEE00627ECE1B4CD8F8536B91B477331073BEAC
-A38423E177E3BD2F6E5E31673EEF7C4510D430BE12AEABD40D3E7116C4C91F47CF12E4DD
-6500656EA37E109AB7F5982BEEBDE4C4E1AB125EB84B560F82716B4D672D13CB3D424596
-8B201C3B628AE15A0E35EDAE952720D3D7DC3C373E1589C1B94E758BA485AD155FB984F0
-7EE774778F52A84919E48959C071F7ADA4D5D64A81E8D5D792F9E8DE6C491EF9ED29EF53
-3CE191646D7EA108500A935EC3EC9B4092EDC5920FD07A5549EDA2F643175B7CC27F7AC1
-098BD65DEA60D6780634EAD4FA2117E74458703F9722C9BFAC8863D2BBF338EF586B4E34
-2583F1EE4907414A1FF2DD25BBD2F5F3B10EE054A6783DE20C414E7366BBB3068D0E3CCD
-A8AC3FE053EE1B89F32EA80EAE51D9FE242D06752BECDEF0F9FCC48DD72BF764378C8628
-98B308C826837EEE3C1F745325F1D989D33650C5A11AB9F5C47C20993159CA359ABB6E14
-ABED7BD14F7AB1B604EA8179D2254BB6D2F9F08904B91C645844368329765045BC4B0EDD
-D8A5256C878D64941DCF0EED82A61004E584A8BA9CF9ADF76F5CB0B2F26FA4A4E6499C45
-92ECBFBD4736242A8C64D6E692524B3E663CD47D0341637139F2029358BF07AB385466AC
-BFBDA0A68E684D4132E529F4CA6E3017AB2EA78F4281C290E2EB2A948281C7C466AE758C
-19FB86A7C335C50BC32E68FC5973E533DC14720A90E5AE57F8E8D87B0567F291C797A00A
-B00F1488437F05B149E4CE5B182C5CF82C3B15097C269913088C9A493C976319BFB2C669
-553240D1025AB656ED019592AA7AA98DF352A6F0CD453FB20FDA9BC5E53B003528C1701A
-94F06022EB7DC590D290D564DD37357DD75AFCA9704642DDA1E23E47FE3EAC9E6B5D22B8
-AA0912C8176CB668997D9B9946314647ECBAE379CC2E8A836F697E614CD975560278F0AE
-74EA9A7C10F94564170B11426EB79670083D2F68E3336898E5D670AA4785929A2ECB553D
-356F8AFD7B0F95E8AFE1947C638684800A8720AB299EF7538D6D56FB1B679FA5987BAC22
-A06F3716B089EA008B1DC55E3CD09A39F0A903B8EB764E5AA9C1AC0B5231C440F68D4E01
-C36BAFC2FF18F34087A5B90744D85B8DB03B3F8F3578E1605487328A11ED9C7E7AB8DB6B
-580D7329026F14F24304B195893CC1D091D960730D2C45751109DE55DE39047015AA14B5
-C497C41867A5DA02E7091FB40E952E8ADDCB0117562A04E71739AE2F9F2CF315D510DD0A
-063AEE64F428F29AF03B9436652EE54D68BB45FF0E3A373E5CDDC9AD707A989AEC860A32
-2AB8C2CBE68F36F2523B1145ADF788BDBE0F577AD7F5B082ADA4E4F798199883011BDDE0
-18783C3E8246D2829325798FD75CED42DE6FA551BAB1A8E0637BE3D487AF286EC8B42278
-14FF0E5BD8B32A0C524FF0A0C22C8735BF7145D82F6721E7774D2EAB4C28BCE0634A10CD
-571490C14979ADB3126983F20925E30D7DE2AC03C146432D8B15DEFEF9504467604D9F02
-32F7E56163F09E9BE071FE10FC3CDB00F40004AF8B01239CE23B5F69E37B35D5DAFA76B7
-8576B031E3386C6099407C8042816A4EF9CE790110CF24C114EFDB9C8529A43C41168F10
-A17C2ACD6C4E299A9DE70657E70B16CEDF35EB41392648F09A02E1E4717400DE1A346671
-37A7CD6A6EBC5F48A19FF169A279F815BEAE49B489923AB6243E4C8AF35B4CA1EFBD8EA2
-D21211D869E0D3DA441860B6BC465EA8497507B8323CBC9B41AE6C774EFAA7224385FDA0
-CA5104978442A4279CA25C29401BBA1367CEF35A2BE9D24CADBD7BD9695BE9AF03BD8DA6
-A62111A9B59A24A4ACF6334807CABD977D251213079A7265437C822AE4893BF048B19907
-E997F038CBDD1FD0B412AA2817453698EF05EEF47AB03E9FA77751C57210969591876316
-C83D5052163EDC28DBACB472D2873919B63E9271310702DB9521E8C18020470A4DC60EC7
-A1007BC82BCCFABFA1F575011A9067817930AE0321659ABFCFB4CFD6EA7AA86AEC98D64A
-1854B666D075107ADC85FCDC67D89C379741264E6554B7F60E19A5292D356E64538777EC
-830B8F0931D34A61F9CFF3C37E187D99D5A2E7E876D1E8996F73FDCD7E614101F97B8BEC
-A0744AC91DB473C0103B6820134BA545183483C05E1EF90B59B78305350080D2204D751C
-C8AE8DD9462DD62F0FBCE507F6EF39AAD77024E89975AD12BF8F86130D9B76AC7BC4D4BA
-BEB06B76BA3D77DAF45E769C732882DF011DD3E00845CC703EEDB8EDCAF7A6EF4FAB06ED
-AAE69FA3A9436774577899367B202442BD6CD24377AAAB605114823C26D249CB0E130CF9
-60D8313DC983131AF766483BA063D7ABC0BC24EC06DA0720D4884F9421B9946AC15C30A2
-DFD1375F5CD56D83C8B94CA84D3467574641768C02ED50024DA171F856880506E3AA5840
-1E65B0B73B80BE8CAAC83A1012D1F244F4B99BB4BFF9F001FDA8F06946883B1F0657C3F0
-22900DC7E6EBF936A8D55CD5D0D66291E24240F8B997361BB943B5A9D36900ECE284CD7F
-66047938301E2632D00CEC224B1811F43475B3EBD58006DE58DA2F91EBCE1833CC23C395
-C071663B9A91B8FF22C98D840700E3256087FE0A616FF9C2323FBE8CA67CEE432A2D2AC4
-D00407877B33CB35B83591CABBF8700623D58B8C745C6FD0CDB21A2C7B26BD8495AC72EC
-A551C5B077D0EE92F5A67FBB4D438114D161566167535A3B8BD74EB10382D997C418428E
-F88388B24D9D78C103572341D2BAF842DF6522087E28058CCC1A8A7858EAA41D1F588C55
-282E7AD9708396959DAD7EEA79291F5FA856A15E0DBA1758E9788685F3FE87AD15E29379
-8CA04AD209B10DE234315BC07132D32C82ED96B649EF7BD65B80A45FB3A48C5C3A994628
-118633137D02298916DA8E3EC7598B8FF27058EF911807A26F2189169D7D53A305F89659
-B6AD13AB05ED759A14FC3FA59F36902ABFDE6D02CA63BE37DE57EA0FB0ADE69626B8AFF2
-C4CE000A5AD361A7311FB0503F6C6EAF4E12E90DD26C2FF14CF944F1C7D370D1035DDDE5
-DDACF493116C4B10BEF55FD88CEBC22252BF641FE8E871D2A051F774A5D3D9921D1BA16B
-26765180C16A4800F59B9A6B990340D78EF95CE32DC7F14F34A67FFA19474C8EA4641284
-DBA859874D070F5B345083E1AC095CA5348E0358FE7B10F3DB25027CA0C6F63D034974E4
-64ADDEF24654F73B0473208664323C568A2EE651373FB821BA60F3ED0844FB75754B1D3F
-D47D3097CECD9D8AA2E3C12A286F3AE09EE3F27E136DCD543BC7BDD8F4E1831FB190FBCB
-8B5EB2BB4C91830CDC404EF0F46DA4A9F41345181D0F74F39F36F5D1E2FB935D595E6331
-80AB43D32F82C5F339DEB75288209C1F7E006326239FAD725314A95ED40D51CC657E52C0
-CEC73AC090702C85B9F171C89B2C787F1E7B4EDAA41CFAA83E47CE0BDD74E9AD13E71539
-A19872ADC0B12C705E9B4B271016B208974D97623777A64FD6F4DC176B98B07F9BA07D8B
-949DDE4A4236D3F19F360265D8E745845F2E6D74C1982803330033B524B6692E58EEB2E8
-D1A3EC8575839D85FD65EFBAB49938B9BFFCC0A23D8549BEFFC4FFD9B5644B205E17EFFB
-A6D24813F3F490722DCC5401EC9BB107ABD77D11FDD60D882E20F1993F9F471BDE3DF47B
-13D8BDC905A1EC61E9325D4F6CB62477FCF08BA409B7B1BADDDBD072A8FB38E26AC452FD
-B77D07A223CCE2EF62F7F7365B8C9697413D77A188491448143F300B09DAC3F77EC6E287
-C372410597198B2E7AF074597B6AA4E86AEBB31E56BA401D0E6E94C40A4F6EEC7703C3EE
-06EF6FF5DDFDFC2B7443D67C04D7311BCF21761DCEA797936EBA6098C91A973EAB0A9D6A
-E81C1893C7CE1A8D2181DB792D20C29F3E6C5310DA2F4A25DECE6246ADE8B78C0593ED7C
-62D5D6C89B6EA4AEA664A79DED2FC50F958F8B1C7B92942B4E58323F2BABCA0B77B79992
-4738A89BE91ACC5306B0B6E45D672069AEB3485A0B52E931993E600B2E65F969D17585B9
-23D1E5C75F44E2866DDAF942C6ED937C4B7BF2409F1BF6397FD27BB5DC7DD077F0F988AF
-0677615675590C950D0F9A39EADB0FD85644D3996C41A5B45393BF9FD3EAA4435F9A99CC
-5A35051000E4FB703F801E8B71115A0EA3BE19D5AACCF5B0833AA87FA7CD506C3131B6E0
-5B3B92A493B57268CA478EAB09E71B1DC304A329DC6E7453F4B3721CD13C2B670C19A764
-9CCB29BACB087E768F9A817E893A4A0A7EC4EE391DF074C947B2978A844D944A10E2229E
-0BBD69B27AA210D58954353D1266F57823ECED7EAD0AB583F4F27CEDF3F92D1FCCF34BBD
-ABD82B2BE6BF7F958EAB3F5921D8CEC898D7076524B12D68DB720BB81305F195EF87BA96
-264878A18F98FCB5136177EF743037D4F7141A15744FBA348614DEEAA97A3510FF277A18
-8081B35AB29A53ABCFF2AF1DA946971AA55A72022A6DD32A7F55C05EEC925CE21704A5F9
-C35D5CE2130C32A48EBB7C30EFC34419355761BCD0732AD4B351BD046C32805BB089A3EF
-B013E4F54374E8AFEC10ECFFEE05982915D22E25A2158F5BEED6A95EC6005490FF895CA5
-DB459A2DB44108AC0A9602723619CC2E013155ABD1286C9CC50397CC7AD975A042833A03
-3C2F010A0208D2B5F7FCAC1F4661332E91F43507BC6C55396FFBA9E2965CCA72EA47E3D6
-A0EE5BA53A8DC8579A85383B394A043B26E15EBCE158D95F14C714793513A6E11C0B4FD9
-A02704707112AAB327416114A7E25F6487E6749A8BE860330104E85A2791DE3C98B6D6DA
-8D9F251995C972404D1A0D4F044E828F03848565B821BA154D836BF8BCDE9B4F3968E32A
-D031AEC5216746F5BB0C24B6EA06EC50E0AFB4BEB48CCE75B016708682FBC063DA14314E
-37152516354E42C8A6AEABEC056F7D9B85CE992D20061F25C87125A9DEED6DBDEF357EA8
-68E970CC703B5C8E67F94C2084FED1C6FE0F9BC6D26D132D7A8AB5EAC1B2801ADA11C806
-1D005081A47B901204BFF62BBEC6E119C24E047088B44278CC47816306864CC85A242CC8
-0D2A4A10BACAA701E62980CBB93B59190E7ED184E280B0A20F8CA4749C6375EE133A0A79
-5215D020563EE1AF19A3C573BCF56533C2BE07D4669C21E22FD33530D408714E42371322
-E72A367B66EE7CF614BF7F4647E6FC1B9F9E18867CB630B159D965F6B4CE54BFAC489F10
-FD115E894741C99B40E2810CB37E6F9529CF01989C96E6242D67BDFAF52888F1AEBF1870
-AACAEEFED464733028168BA7FA51311F251B9EB544BB6BB6F5FA90A20BCA883E3804916A
-C83A39F9381FEA3D8ADEEE8A62634D02F3C7FCD8F01268976A3B90C59BFB9AB1F7293C14
-48E00102EF69931EE40BC3FACCAC7014FD78DD06EB156C860DDFCD7963038197189A681A
-AFD7B886C6E7E26C87D4293AE6B1B4E7884FEDEACC9A2B049119147417F3AEB87B33A413
-C4FBBE3D0E5FB7D61B114A85A9C6F4A95D123234A394615192765DD73865CE47E4E0402B
-42D3A1410AA055B18FE654FEC978F28FDB9865B09227A98940613EB39D7B8E4CF55CBCE6
-C13A5ED3DE5F617B495CE502392AC8DCE6A7B8CC7AE9B37943DEF4E6D4015D3936DBE823
-79E1210BC38B20BECCAEEABA24BA09357AD20C0289D2DC03E4CBB007B8B49AC2F1A47CD0
-5037FA11C1E1F36ED2F1DED20FF9D5042D9F9300B5C79C1803A9CFD65D80BEFF3AFFE22D
-A6A1A48AE94C7F647195C920B4FA1E025B960BF661D592FE4FEE71702A7093BCD4AC1510
-7CA7CD0BFF3E766CD241DD6059DB2EE8AC74EFDFE8EAAF57B8AF7AA57B41EDF431549CA5
-DEA22928192F8D1D14F3087C9653F3C8FADB30FB994C72FEFAF5AFA5EFFCEC3725285D25
-19B356ECF7F22D1C6101DBF3F476575476166E599DA264073283C19A8ACCEF9C0EE2C69D
-D9F0FEE3E57CF25CF842D0D3CBA7204B63FF0C4FB0D364BFF2D43D04FAEA7BEAE5300B14
-319DEC628BE834B7F995DDB697963AC750576C154BA3B31C102BAB9BB93272D6799437AC
-9CDD83275AA5A15164757D9D06F95CC444B756237352134AACD5BDA0C41FC0FD98DF9C74
-96D32139692846A141BEDA8E79E7279F1ACB7491ECBABD9FDD1AE69C61B22DCFDC81E440
-B2965F0D82C291D07806957E6D017B8EA7AF37F05F5331BBFEA70A3AB8B078C4F87F4D64
-CCB62D889852BAE9C0FED70BAEB159343A9F3E1F2BBFDE54D5E9353B39B65C16E2412234
-D4E7E1C96D282E1C8D1B38D9B9293FFCDB5EFD759D583C9EE63A407F08A6B212AAD91FA9
-FA501D1C725EA8B08AF2880F1BF0EB6CBF885B70953517189B8536EC2C7960C7E6D5CDE5
-22282682107CF85CB025FBFF2E88FDC5ED4EA44DF630359EDF17BCC33BAB47C302F193E6
-5EEE260DE65D388E935B2471A70A40B5DAAC06911ACD2E5BC9D2853A501EBFB39711151D
-643E9E4F78CE0FE4678ACA19C3F7B45E4DE13696E35FDB7EB7AB60853A6CB942DB425AD5
-CCC11AD042773482E0DBEA11FB1D3810AD5DD26B175339603E4E8F32A14BF7E994ACD717
-AE314DC77EAB6061863F7DFE05D95FEAF8436FA218FC3F59EF8FCA198BE6CCAEB3D4F3CB
-BAF8F585FE5997C4619EF19E53DC30BD017A67E318612FF82EA2553D060B7D406904327E
-779B4980085565B8FD0D7B497FB4350AA989820067B13355329BFAD8D9281F0703A9049B
-75DB584D5FC19F3015BC11EBFFC3BDE393117DEEAF11994DF5B62B5CAB0B16AE64DB714B
-E1ACE83640FEC6AFB4D5A66D7DF0AE5DBF347EF96B535E8ED1839CB030703846EA3D2E78
-6721D7A3409C8C23E7B0A609525D8A675C88E069E4E39C4E06EC3CBF5D65F4FF176DCDF4
-2DE2AD6EFCF7D2EBFA8E3FFB2353676C39B167AF4BAE04624856DD334890E8446134DF7A
-2435D76D4D76090E7B6914873A08688FAD94CD3CF36C10F983A211BC0A8B0276265CFB28
-A976E83092D7B210B997F392AB4B31AC6DD977276E3EA61B4095F5804ABA0E21D8681A5D
-E660B5C095054FEB45E9CDEE557675F66C4380A89FCF51E51347BA633FF52CE6F3FD9596
-5B329DE8A88AEC6F101338F1E0ADFD99212B29B725A6C4997117FF445DE895963F2787B9
-0A892C0A22B2D244834CF54A73082597044AC27F5253BBD4B01C42A69B8DFE25299DF085
-8C545801C56453C0E3659CA5A6F4FA3622968F77EBD8E551C8B5FB354B8192F3978E4DE7
-52544D029EEC168734C623C3DBECF5B362328EEAB289EAC40B85EC5A36FA3F73CA1C9A61
-771E4B2DE1633636F3BFCECC3D70741DEDA306255AE27D4FDBB89B811BBFDEEF8867E490
-C1A731C51EBED996DF36340D570FE89004AE7FEB5F686E1129100685EE41086A245154C8
-1D80DC435DE1253923B72DE0C6B2EE3DDDDFE5C0CDE38F683E7CE4813425EB35F9AAD55D
-3CD3E62314510DF6C2FC0EE94CC188DA028C82FD9BE6C8597B271FD0ECA5FA6AA0704A0E
-9C1EA47EE0DAA990E98E4BCE43EC3ADDCDA75ABFFF6E6FB98AB71271A73C3DFDFAE883F3
-B37A0D2193BD185786280B4DC961470011902D56F511759FAA40308DCE49EA5DE8C073F5
-AB3A29630B93ED1D1EC77A97CB5B157F65B583A96D2D50FD6EE078CD6D7A7CC4A31DFE09
-23A866725740D3E39ABA8305BBE4D4196EFF98A37788B9E71EA6E120DF0E6B9F14BE583A
-EF3F2058C22BAE7DC3B63BC150EA62ED03BC238C27E65DAFB0992DFE8C8F5879B75753E7
-375E76ED56BEDD1C983B9548818E6C2BB71E38BF3F771B65F84706D75FD761A14ADAAD2F
-4BC97ACCC1191441BF0AF940FDF539F961C670AC4C8129C1DF1E479207F50D1E08478503
-409C4E9D165946571AC1CA1D7EF9D31546CA99C1AF6F7611E605A08EE2E49162EFE39E33
-726D6ECF05520DE13F634AAB828595C898678BD119D7F6BE976AE504AF22FCFAB6F930A0
-29E176F442504F3ABAAEF24723311428384D691A98DF4689C6930D8860FEF6E355163282
-700594922D73799A67D834F1551D7BE208615F590781651CEC7AB705EB278B3470D7371B
-A90AC7F0FC6EA11A906030EADF328B63E21A135A4BE6C6C1670C9F795097749D994277D5
-3866BED00493512C771C973CFED9D7125A095FCC4ED15B97E3CF56398981A8ED0D26266E
-5516FBE18D099AB62B457C6D8A1CACDBD04A3F64D4D95A6F65B7DB021DB83C43DFC24A27
-E772D8A805FDE4F4645178693D5CD29B7ED26821B4DD1AAB2D256693A99F612500A903C3
-65889A1266CEF14E112C91F2E2DF5B27A3D979E957C5F70C9AB7F64B88F2466ECA5DD0F4
-465D920F5E78A955878C261079CECD27783086379EC6BDA8CBAD8726167520DCEC08D65D
-4A9BB2729462365F7E3B97E6432EC01F8833870F1877FAE22E893400A346BF8D8729727E
-E7694035DDCEEF10B596B3CE9754E69560A1D8F61AE59FD3CFBD0D1CB94A14AA155C2CE5
-03D238912CA0DA82E700EED99544762C22B8CB36E4EE2C73738CF1721ADDF2091411F98F
-2F7EB86C46E4DB9CF84EE208F6049F73B788BFE5B38328DB074752C8BF9B51327A7E40BE
-F48A409C0B2377236D94327A0A1E36BF296A670F5E75AA2F4C0AC6815D20B635F02B6929
-D72C60CAAFBBA4DC377B5DD92E904EBC2BC2ABCBE404197C803F7878F33FAA8C66EA0062
-CBB1E24BE46D23AF9762C2050F85CF03084FDC271BC0910266FB693A4C5EE4057C2319D4
-3921EC66E5408A0D28DB2C094C92CE16A2A9802A3D075B12D15C0F4F4B603EA70D69D94C
-102436EB6A835D4E9C0937298843750472396D20FD66A039871D21588EDF04E607E03A0F
-E4671CF071D2A24DE7AF33D9C1E3124607854CCC014BB6980C4ACE3B73F1544846CBA010
-A86E003A464014699ADFC587294C8F64F80F1311F4E0B8CC1624B7CBABB7EDAC646C7351
-D67CDD61B352D8E21DFA5D802D5CBA52A364B019FA24579BA36A99414E3B018B8632031A
-365F4A0E9E5CFEE1C936E546C11AC93A2B7EF433C2010FEB3B2F315D806F6D1F42FCDA3D
-144DE40934AD30A14F3AA66539FD901C6A7A9173DD4B2EB6F0F546C43DB1BE141B1E3442
-E0E0DDDBFD1E6C582102C5D3CA9A856A7082530B3C84DAD4FE67C718D7AE874C0B59171E
-2CB2F1BD37A1C4DBB3E767E0E844E6A189A828384D042D055A118DE26D9C5787CB81B102
-F8DDFE285F0D24E0CA87658F2DD9B553B1D52A37B0E0A1E18AAFE6EE4D0CA2E3CBBE5907
-16FB32D9030A6C60523FFCBEA0D682CFD92341BF5C533EB7084EB42EF42A0B6E7D172B14
-805780F54FDBEB03AFD73D2219C74CBC569573B5DA65CDF3CD11D8CD1E3E60DC1AFAF5C7
-417DC5C8BCCDF6E129DE171607901C35ED11B0299BF2104C08158EA843AE803B63CAB426
-842C3B4D93954728352468A44B6A02115782156AB7DE5FA01B7A2C7C3C69BD02999A4F89
-3600E0E79F60EBF221A40269A40904EC3DDE24A4FCCF92DCA20AF2614B11D85F2EF90015
-9C878BE4D889D1471E17AEBFDF34C29ABFBC8B1FE07BA33A5C6B51B3DA5887AF6C6EB0FA
-A7F7AC8EE55FA82C66210012FF0EF781815EB18D1530008AD7EB0705E854B3FA44AA79C8
-EB7A91BC40EFD85DBB3AA61209C03D1C8D70A57AB608FC5EDA04465E8C6545DCF52C867D
-6F2F5175EDF68957BA609B1A5E6F9FB15F628EA7F0D74186E278D45F89F981660029CDA0
-B1CAAEF12FDEF8C4686171A9FD08BB0226DB70C564766AF171C6D25A08C6669F71CE6749
-43F553CCBBDA80CD3C55F283F3068BC8070B96EA52D2853565E00DDD209166FD46C17B85
-604F4F4FBFAC1E7B3FBE13DFF9C2354E625FC87FB3EDE892C48BBF9D11A3FCDF65A29E76
-FCEBA941644FF4485A4E14E5749CAE0CA96819C9B637CFAE5B6CEB8BC390444763570362
-D8B397C3783EE5DFFD08EA0F09DDC3F1A29452B3287443D67C04D6ED1E61B2DB7921A52C
-7D25073B58CBA2699AB8578FC49CA9D550D482F1BC7CD283BB8B02390DDEFDE7CFB447B3
-FE99D6FB4A225DF571790CFA6FF35BA51440BE6740510D7BF8CD55FE16E6F394FABBBFE7
-2D2070BF9CAFFD58FCA0A70BA2F898511477A950293A2197A3E8A7E3FE7AEFCA9DC6704C
-0ACAF82C39784D0D800F52E775150D976F1BC9B9D91EA99E44FC9CC9EBC08DED6F939CB9
-86CE37724553657133AB4903D0950B235130395EFFC27F76466ACE37A323358C6F935EFB
-E8109BDDCE9EA7B22F92DA7A5F5AC992B4FA798C0F670C0467A63FE7571F707053A11071
-F6BD8D93C1B32F1359A827222080AFF5940135A1DA02DFC6AE1113A93E5FC5BDE02F9739
-0FE65F8680B0999EF41AB024E35A88876DF86E413AAFBDDFAD693C0BCD4654FD8F5B9A51
-BEF91593357F8F16B7C59CF6DB3E5B6B5597B8F8EE953FDAB759EF5F42B8D7E0282CBCFD
-DD13062501C683FD109D972DBAB823909E117A55B08E20776A79BA61CE6D84AD8995BE0D
-4D2AD126F6C195AF54998FFB9131E1F3DFC61F6AAD217D0DC339BF8DCE17D074EF5537E4
-7EC63E4B707D0048543D939DCE6852DAF6DC1FCF95D689441B998C8A5EEFA7DFEB894B4A
-90216B335464CA50BEAB87DBC6B3E23AEFD21DBA17B004D9BCD94357EDA82F2E388054DC
-593050F7226E133A937F83462C4A91079B8E96029FA17A4162384ECF11F95D53F3984022
-B02C4C82A702F75C0C3F91FF94571981380466C8BCAB42C2D3A33C282E7E6F5A73EA38FC
-7E296FCF8B1E4C24DB0E2F7F076F659EAED92DA4C9700B6746ECD85995746D648B9FCEB8
-FCF7DE89F299DF6A6D7DD11FAD78270D2F45D75FB0BE0FED1C1290B733212C1D1BFA80B5
-D17CAFD3F3FF5E504B3EA44727AF6F3F37DCED87DB486BAEFC2D7DD7DA55635F671895F0
-EE51D1102B1B491542C9F3CC8F1D1F14CAE5700DC1566B7B44ECDA0150ACB072820C480F
-F92F348C108CE1F70BBB830CB9BC69A3F3E4E52D191BCC2BCE475734B38238725E3F3A01
-84AB62B13458F221C2C505587407B5623B23FE444ED5BEB0F37CA4265FEAEFA74CB365D7
-401CD4C247AF0DE67280316545EA659C2401A8D8F8279A8BEAB4FA83F9AFBFBA32794C7C
-A7268F6BD3CEBC42895E3317C1E8ACC0D82735559AC7EA0378524E879BA243CD6F938C6A
-6BA39385EE7944805C6E3D0CEC912D1D711D90459D032D0F29DDED3320E437A8809727F0
-E42B52CDF7B49A350D8DF3ACC7FA81AED6E290DC3D40BA6A7001ECE8222BFBF2E7D21AF5
-B5DDDE2E531A5042892CAF60BA4BADD60AD61E811BCD9D7608E00CEB90989E48DC676155
-EF3D790B8A4FC96A351DC301FEA7B959A8CB44F228B852CBCE8F9450E4D288E48C3A5D6C
-616B9BE51F38E9ABE16CAE86549316ED8B58E9B0D81E7994BD83A314601CFEBB5413C580
-399D87BF9ADE8D90BB6CC68CC36972159CB55335D74EAAB882A1C3724A2707037E5098C2
-2A6655650DFBB2F87BAA1B3EFF8AC76397A226B95492C64E648FFCC08F8A552E333F1E65
-660AEEAFA3B0296CFC6B300D3C6FBDA01CEE297241588DB27E449C03F0386EDB5D4DACD1
-59BFE6C5915988099909AEFD10008CF1BE8EE8E9F1DCD980DCF0394503177FF49827A3B9
-D9FADC16F0890A6D330146809CB5F3823DB1F9FE042B95146D6880EEFD113174FE00681A
-697ED8BCC6E6B61188903CB3CF5F6248EE181772F5F873B671812B8FA93C1089BBFEC5EF
-0696EE1715FB37348E75AE88A096C1141D19E7AACC7A1DFB282D180E8A08A8C92610D2D4
-E3ABDEAB7DB34FA630A8F5151DF12269454146FF715DA88798240C01F82BCD3BCD81C558
-E6CA13767923803162A8EADC641182B71A205CBF91D93ABD4D194E327234F4FA56F4C496
-40BCDFCCB269A49F449929DE799A99D15460CB9C131CA83204DD513D68F10A07FDC0DCC4
-6B93F8D87EFDE4590E3FE360779B5082401493763FA73519E8CBCA4F815AD8A95BD10135
-3A1F379DBF7ABDACC2E5FD6CBD2AFE90044D86BCEE408AE8A32C89C224EB483256854C72
-E68653701EA2AB54C09F98A365FF042C4018A0DDACE380B54FE568F3C72FF16E73A594C0
-E9F3A228171F6EF548EEB0A2F52A1EF48CD81AE008B8251196854A03D4474EF064C3B9A8
-C92427F5C3297BFED28C85C235272303BBA92E37257868DA3D4CC651A8E8B007AB388337
-29587176479D1F6A95417EDC03D9AA5B6FC390DC64753B279206DF1037A26F38A56D8A5E
-97DA5E3F416F12FA14484C939EBB24CCF60CE0CB682821439DBA8DD842E6AEF330609AD0
-756ED23585F99CA1BF6A9D1520682D939B38408BF49DE661E632FFE11A7B9286AF457698
-1F26E731E8576D259BE89AFD3E96A0872F1992FFC3D5687C5324822D09FE555153E1B03C
-7C1FBDCF72E8B369BC26A0995C6B5F5C3F0B6505AF28033E46CCD32D396F1FCF2BBC314A
-CAF1BB2CDCE7B5E89015E304E1ED36853C9B8C4550894C208398A4596EABD6A675EA1716
-2AD277A409A2809727CB0F7D02F74910093346FE37D14EE063F6D3B6EF9C682988ADFAD4
-75D07035999A7247440FC2DA98D5EF04D718281C8F36719ECF7701D2AEF8B845B983A1D8
-46AD41CE818E1427A23A2E5F842A4BE05A6E867653B6D4530E40B96288C1FB0C49F47CA0
-ED4CE1456C3582C385155F309A5EF60819E3E2EAAB741278811A9DFFBAB54762ABC5F045
-1841D0984BE8960BB21E8642071E442D5EB7491F2261C855151628787A4C699EDA1F05DD
-C578A9CB506FE5308A90B3752D067DCE9E715F12F662C5303CB064B3F5FB46358CB4F803
-21D29935FC49B937C066A1AC82913863D01C1FA85156CD0869652350602D766CB27BE412
-1E50493C0AFAB232057614AF48CBD74C4685360FD02900F8780AA8F0827F2F7E0B0B0306
-80A4CF3969036081462D92FE2DDE06DB413B4E76550706B43AE982AE2467353B8059A32D
-B35DC0D388D6264C573182970C2D0526A6F57AFB21DFC59D22F8D791A214F50D716428A4
-BD37D25A5958BFAE8DABA9E2438270B90440AC7DCD9D4D8A3AAE7E6F0D54FD15D1C8C1D2
-3E04E9BDA3CD2D97C1DE1E6499DD2B2C9D1B789D600EC6B2B9E24739D65D9C8114606645
-D8F2ED5178E3647DC8CE3827E53FFBDFD5948F7302AD1D70987FAF02E5FD03A1B9CCC6AF
-C658B742C88DC2547B3A4EC4CC5414220EAE69E23F7BEC39DC476D24331422D0FF109416
-CDD40545F6802040ECE231B7840CD13B8611D88A25CD60BA268CEFFA145592ECF8CEC07D
-A9846135D35E035CB55F46FD5B9AB7D60CCDE973A3A51AC2F0314471629CB80CE30E6ADD
-71B6819EAE128437C1AA243E869CE668C8BCA434D5A1156A41581D27F3B52DD26BD4089C
-A25EF40DF171EE2109A17BCBC93B05EAC8418F4E415B6AE72CD4211DAA97780F11A4FD11
-A96409AA6BF06A69E6ABF9D31FB157C698F9CD86DEDAB707BA74814C9C96BADB58EEAA87
-3B4D4BE0C4A6FEC42B9AA8A70F57DE8399EB5D574B132BCB2D3FBE7ABCB621BBC3E483E3
-378CEDBD2FC9B758AE746BE44EB4973581E0F402C1738FB987E7C7B32FA9E3DD3E822F7B
-7B79A5D67E0E7C455ACBB780BC94AFB886122FEDE728272B619765C841DEEB915C501C9D
-5E162E25835F660E33C017C88A2BC8D1E93D32CE0C43A83C17937B7E886810F774215EEC
-57A17AFA1F89AAD6751ADE08A4EE4A6DE1208F3A35D927850042155EF6F44BBA6BABA143
-BD726F652D7F8EFB9EF14D281186F9A8BAE057F048D7914429B7BD0D95DECE36C48C6F17
-599FDC8F31FA2A0444C683962895C68AFF8B343B9CE4703A2761AC84B1B31946A7C8373E
-A369BF33219296783C5A3465179E1BAFE1BF8443801C972CF6D28BADDA13F78986F6DA38
-8CE4453D5E7AC0CB518D5C889688F3E54C3C00BAFF896961357BE6B4B487064A9660E353
-E8CD453B5B828AC0F166B50E0C1CAD4CE97469403B22EB2C3FCA6A734706EF4CF7F9331B
-53E13D0A5653473636154D94CCD625F8858B69ABC25762AE4FA1763BCEB2989CCCDD275E
-ED8E95DC14500574276083F59BCA0A2BE8BB1A9A5510C63FB48939BB2ADE959B0342E759
-F556A6BEA0D78099719C9D4FB5D8741598522D483B77155C9030D252E28C2AD364C84364
-39A58ED8E27CCB1469CAAB4CD8B7293BFE89A7BB6B72C4EA5D7C29EBD5B2A9DD66BAE6F1
-9FA45E886E5A79B5FC7A65438695659213E0F4C7A6590911CA0C976668C7C2697C4F0A54
-4E3240D23DE40D53274415F5D6CA333CEE4E6E04EF7C42E84DC0B8F583F83185E1E1CA10
-D210AE0816DBFED7AA382EE1CE6EE1ED7B3F3AEB25DA4B1F3555F39BA2DA5B87B9F78B57
-9B65915E2440B09090E4E8FB0C342933AD8DC8BA3DE1340F00A037CBC4D1E775D3555532
-F828FBAD77499AD45D007BDE4AD065F462D727AAA69E314BFC1055C5FE9637676246DB67
-A6BBB7A78AAF4DD18611871835C218A45DD0852434ACCDEEC60AA4DC48D752FE4303AB75
-654E270D27E951410DC5354E85590305BD4B0631C90E369D992ACE973879CB962EC25EF8
-D01C2F4BC4155F409AA95E65B89D4D1AF4989B6BC3681E913CC4CD798AACE97678D4EB0F
-131D6C2378314EFF41C585571F3901B0D7BBA1E30CD7ED9E4C706446D55B9E269FF75547
-AF498C716FC0A951DCEBC8BFCF05DB2375B79CC1EDC162ABA073F01C06C0D64E4D17A692
-98482F4B4C1747A08B78073D590F5291936AC3016D5C2CF84DD6D93CA7FBF9FC7C9BCD98
-4EC0E07F03D6E632100BC328068B2C9C8BAABBA4E0CBEEE49D37025FD0CD005FE50DE670
-F7BF621CBA9C4723F3D7A6D1BA5AECCEA901403C03B66F6F92D403E4D89C238D75946080
-404B79D35F8D5E0DCDFB0E22AEE8B6BC7D994D05B7AED76A40A22DF9339DE4CD937D54D1
-E09B6660992B6FBC6B36791D5AA53093E29C78BF59E0D137B06FEE0A553939725EC59380
-82954AEB8EE503154E8B56F4B45B6357402D78D1282BFFD0D38D8940F0B3AA1D48419ADC
-33E11C96A48FF09E3A6CCBF7C88A0750868FD61D0BAA581E6A010BE41462FF3F71DE3B9D
-6951D2771373AAB7360AB1A7EF6C04113553AA399FD21B02E1C90FD6FF8DB09B6F485CD2
-EEECFB5CE1C4E0F3675CD792BF28D726C065D5B8BEB92681072CBF17EFBA31BADD5AD401
-C3171B406ED57D757E59AE1C61AB425A580C179771334CDBB633428DDA41FFA7E6BA6668
-568930B3AAB9B51EA7E63845A2D50CDD60F8F60C3FAA5549626895644C1BC9DDAC415BF7
-96137F82FD0FBAA9F66269000CE1421BE1F617564FAC0CDD70AB2B2DDF5C804540182B4B
-EA2608F4C00A220D73EA038B76AAE89BDB8B6496D3F8CFC7FA60701303795C1BA8EED486
-48BC6DBBE06A28E84D4151F85C790E5C6C7862B7B5E1ADAC6EF0C300B1AAE19F092A0D2A
-160208C31B9D36A334511C10339995BBCB3C06D5A7E0658B6E7988FA3704C6E109EB3E60
-687983DEA045BCF7596F869A5FCF88A68982DA5FD4E26F72E758C60917094E7A0BB9E32C
-B16880994E573A73F4CEE17243CFCBB4FD85F64A249B74454654E360DF55D6BBFE5DCBE9
-AEDFF628B1F054645AFF8DCB417683CAA103C4FB59E9FCDEC985F0CB8FE454B245C42F81
-BB62E1128B7581F1634D63FA0DB839B631A5C46A6AA19A0586FF8E1F36639B416C2E348C
-2BC4A28C9A4BAA5274EAF37037C0E0B1F74715F5DC6040AA6BDF49175744A7B214F90355
-2CF60765D50B7A92B7CF05BE188C4934EC815F2F3C274D5DE6945E5A25631DD732EC10A5
-D1D5911919442FB0BA3B411A655B8E9B2937D2EE2B317A9F8656898B2BBA3C93BF7FF001
-FEEEB4701A01F6493C6AE310789AAAB18E543F822AE6389A95F8E07F6948D90DF226DC22
-3FF6584CF81705161648F245BF7A95ED126F084190D003824AF91827912987CC74BBD073
-5898D710810A4057B652E46548031A2473758D5157BE9F657D6AD6E598FD6EA797F66E6B
-AADF37C84C671A8938BD6ABB7B9B3B793EC1B8A70C1284D8C31B180E68BFCA71428EE2FD
-D10185264F9AE8049B64DC56132A74B609867D3B9D4815D1BBC83A6CDDE66504F2917544
-5FEB2E0203BE174203BF266862F83828A462BF880AB22EDB59CB180A8E0CC4259E4DEF1E
-1F3114AF8C03DC00C7B1F39027EBCC62D308E1A99E9C0B4AF746DB1BFC872B10C8D1275A
-93128F35E8883DBAE47AE1EEEC72ED408ADB618C32C9D780AFC63F1F4D3CA1784A0E483D
-401BA2C3E2B8B9A13307028DC563727C72F97C2A7373F9B8B664782C69999D827E4EA508
-585A47401D5274B658CC683401DB1B0977A4214BF0E747116F3A2C06F75395A4A4A5D8D2
-68E17F8AE00E264098436DC1054456A72D426FF4DD84EF7AE9F4C49434CF6C9218E7B91C
-EBA8EA88CBF22F4F2DBCA527FCD11EA79E4E5719E8FDBFF5ED895F5E640353DFD38F6D11
-BA785ADD90035A3D7BA68620F26CBEBAACC14E13C904F0FD147D0D6326D94B42748B7D72
-94BF4F97386309EBC593B8BB4AF0D09C2EC2C666CF0BC151CE7F7F763FEBF83F521CF115
-AE13A8C069F3188140C2E1208BCCF8D05A3A79FBBE8E58232A7438DE1EE565B56146C9AE
-4DC0CA21A5F17B05229FE0373C3291266A413C382CFB63365ECD9F80DC6CFF7C37CDDB9A
-98786B3130B61DDE400B3383D300974B9CA0BE9326C2843267B805D9C2BDB088156A7641
-704B203D0485852AB3017B851D63BB4876A3CA32AB30B87A3A9789D10DD76168B2FC0BE7
-2DC6037A9ED4315DFDAC2691ACBB975B777FA7460A851217B7328BA52876260F0E9A43E2
-962A80174051139EAAE4773184190EB46E72554267C0FD1B9388271B7DED405931F65479
-FCC4596027F11BEA64C684BCCA6896CBE3BA2CB2F71C1AA16B55F63D27CC239ADEF62E8F
-090863B0659D8E41B45B65F91BA24BCCB6FF5F37A03320282156468CFE46F95612300B5D
-1D811C58AE9DDD905174565900634F0E20AA6D7A15E43872300C876087B005CEFCDFBBD3
-10D23C04EA817DE15F350C4F90207637DDCD73BE0834A1651709EC3EBC1F7A73457ADED7
-68D88A2653796D132233C25030EC8E8159D128E2260D60F18097E68B95A56E3C590D4F0C
-E778F72FB0A5E182264651B3B93BB5115BF14FB1D71AD9C9EF953344C4E7B04B16000DF7
-0D8500FB657C4D368B669D92638E0FB331EC3AFDC59E75730FACB442DFC31FD087174379
-B491511BC6727E4C31C2FF756C409508979DC47972A9C0369BB61A450BC888B21213DFCE
-0FB400AAFE8B250112CFBDEE410B03F344E1C6E3A5743304D23BB7897D6DD6A052346AE1
-66C20F309083C0CC33B1B7D4909D8218AACB35134DF67F72752F697C4A6C568ABF2A6BA0
-6138D0DC6FF73066A5E9E559E0A25A0E4BAA0F0544D680C812E16F70CC0F3521491ED1F9
-747958D476519258AF9141DB94B1599F78D80AC9FB2AF393CC98B307DD3DBC5BE037C41A
-CA0450771CD31D126F3577A82E0D32E1E114753962A635DFB27FA9BE95240B38D4B20E64
-651847E20DB85F80D062E80D1377EE0D6A751B5C5E5F89E6A9F09DA05C3BA03ADA1878EC
-6EAA9FB0E3D4A8E707B0EF507256D60F76E25B61421A4DC14CAF733B03F43951CB3A4880
-7664484002BCC03695237E902217ED414DBC57A89802EBF93D4DF4ED83E5CCF8A79BA8C8
-92ACD02A4D1BC0BECB65C3D2CBFFB5B11CC143D37EE56A55338854EA43506FD200B7F350
-EC0DD9A283D0C46C5D3E728F920875DE6D3EAC17B025CFD20823D2C435C120D20F80F948
-6A37B71B68462D9C38AC003E66871047A6DDA56FD5CE319C209DDDE831FAC80D8C6BF498
-DC6B58592451BE41740BEA4766E0D71E540EF881A9110CA16E9ADF2ABD9FF296279AB2F5
-CFCFCF8020D42B01F4CEA91440C7634A4B901E5B2377D6F37174C692ADEF3337C616119C
-AB1735338F2E3AE72B22DEF9735318CF8B69F23E110D8439365C67CABA3D2C16FC96FCD7
-5076AA46F4F5B0DCE6E2D5250E2026609A76C41410B8CF45DC8BCB815E45C07F0C248BAA
-FE71A474EB9CAC749EDE8FED1AC13AEEB5549AC306B1ECF05DAE05E5A339ACCD9FC8E52A
-4EDD4E2E5660CB8640D7DF392BF2CA1B0864C01472B4ED4A7649719276F3709FDF5B890B
-6150DBEE2EF12390B63FAF9C65AE46AF648DA2CAA1AFEFA6982E07C63F810D044BB122DD
-2AA67ED2E98BC3B7505BFAD72E05E228FEB9FFB56068FBBBA1E8193EF539DF257A1D3019
-3B2E42386E6017DEC0593454C76E13DAEC50FCB81BA6ECC997225B79DF89783784083F87
-BFB92457456F60D9424C93CEDD40D4D462359E7060282A5A54E3F8F54C86CF6740A8AE60
-C66DEF9B52513D70B64FB40671EB762780F36180F14724069D029D1B43DDB672A5A6A9C8
-9BBBB54CE48D4D25E61A670344B4D8DDC7E57ADADE6CA7A1BB5134276528D0450E5DA9C1
-B8DDE79D25D3DDF220204561E67855D168FD7ADD01F497AFD5D3E89DD83E069486F55B59
-B91823689873ABA14D5CEAC606FA8393F1B34582F871B6C4131B9C483A4BBED1CD69BA47
-37D050F57ADF9C806CECCDA795101376838E893016CC92DFEAD0699E6BE626FFFAC028E5
-462A1E7CA9AC3FD199B4C4FF894A3E695E18646BA33B900365CE6B810C7D53DFCBD7F8D0
-D6DF20F3B09ABD2C7E862A5C8280E55612343FB741297A6BB95FD9423C4E0602A8F8156E
-365AB54540AD5449FEB3E4D13C94794F17A0BD06D9E26DC3833C87FAA477041D1394E0C5
-993507E130C4F60019FC0B4B74652B2BEF4A9603FDDB3A534001448A8F691C0A97267826
-1CDBCDF47FB4B0A7830B434F180625B451173BA129726834181EAEC346CDDF68F32A57D1
-5ECD44FEB77C2054908C6F6CD73DF94E4FEB47EAB786106F25CEC7020AC7BCE0C45F7935
-46E02937D310ADA5C46379838E266B25127413F0AAE1AC370E3C753C6A7539C8AE525CE8
-9BA7C49158D4205E10C054DF541B7472A0A6040E68897ED029F42E013E0B8EA547A7612B
-157718C7ED485CFE6CF0500C88A0CA1C96A2320535EAAFEFA930325B59E551C8D57BBF90
-2A5A7785E69CA885CB7456ED7D063C93161B7F0AB5C4A33B19CD8F9260114B75BBA018E5
-CFD6EA1CA19DA6A157C632769EEA695B634311B4168E776F9B81AE354455AB0E9BB355BF
-1AD45D85173062B1B2E66F2820512ECE3A912A5383AD544FD4B0269E30EE1D120EA034FE
-5257DD2B857C4812CFCFF94EA3B8AD00E18C2AA887CD8E2801740C69E148DCEFB34B4897
-84D875555B9362A35304998FBA3FBFA98D6902DC326F0F407751DD3ED02C77F9B22D768D
-B8C3BE360CED4964E0D413D9B288E403DC8E6D89EB0B68B4BD3959B151B45FA8BD1967B3
-70D20BC10CBBF7F626F1B4C3F125833567B9E88DA21EF2CA6C209DEC8EA977752467090C
-0467D01B5B0EC2ABAD8596A3A342B120A7E3103B009E8BA2B95378DB329B917C95587A82
-EF5F72890BAAA37264BB4555F5C69D10A4E64A462ECA8B4A1BB166D88036BA071BC33DCE
-3E79FC9F144BC2E446B720155812C06F10752D1391963AE98C4CB8B035C3C8E2F7CCC529
-ED8AC3A052DEFD0302D1F4D5A1BDA6B042C1D90CF84123DCE6A7C29B3AC8FEA16F07A210
-3B2C7098ACFE7FD92682FEDC1132EA886581B798496D59B5AA47CE3BF3A9C7CAC6345386
-F60ADD73B0D52642F4E87461B1C2792155D2123D0D7BA43904891ECB1573D871B973FD0B
-52D76A445B55F960BCD3AC44BF762B7AE12DB4FBBB0409C102445C759E7738C4D3FE2BAF
-B97DAEB3517F5FA545180AE55DD7D4A0BB03EECADD21902226EE99A7156689824D02FBFF
-41FF30B9D94D14348BEAF7D3710725E9A8054DFFA2794D7D5A90482E9A49600885043C5B
-E0E220ADE6CE0FA63C5826CADE8A8363440C47E6E7590CC8F5D445121E8F8B947D8DC4E5
-DB5301E89AEA62B903ABE3AADD4E93A49A83B0BEB040F7F2C320301042CC9D31CCCFFD70
-32DB766066FC83EE7109C6D8DA79610D5E1E94848556E4DE9FCF55DDF8BE524361A4D673
-6F09CB8AFF3347C41B9397538ECF26274DCE7A27E76301007A492E0C6BECDCA0B1C9D1E5
-345AA204F29F361FBAC0211BCB444F8D9B9637791F5D3B869A5117CCD73EC5124F1ECF23
-705209F4CA831C5AE5BE9EEEB390A8666BE40363642DABBE28D1E06182A95ED0F7D1177E
-D3294B4C29D8D1FAAA210543C3850FBCBAC813C21AF5D62621623DA41A27F9DA0ED6B0C3
-A2AB61A913094FA2574C52FA1195521962C8D6B8DB2A10139A9C09AFAC133A8BBACF0A86
-01F38217602E70DB3651DBB083C791E7317694AD1F50FAE278155390264C32975838DE33
-CFB0ECA1B0BD993C2A02E1DC2F46293018DA3AE825AB81621894620054724C3A8D95ED48
-1E899F972E6537B21FFB8A4C55319D15A03ABE885C333BE19ADBC450D58C5DA2B76DA6E6
-2487A71FFD2A851F0551F17A00D165FFC44F204565FD24B0D11C2C21238F5D6F64277FDB
-4D0704DD6271C69F4A5CE05258832BFBB7D303C00EBF68DEF694D77215084C74BD2D89C7
-8FCFA635F694723DC79E99D87F03ABD7A06BC1BD7643092790AE2D15D63D2C98288AD284
-7F48081116C31D98680BF2C03E4C2FE4DA45851E4FCB6FEEA80294ED5709A796716B134A
-8EEE8ADE6C3709541E3D234F952B4B2ACD1422756B8765AAB9C32338736207BFD12DC05C
-4D7496F1AC0797D5A3047F9449A8C5237C75EFFEB8E157B262A833BFFA03A26CA8AA1188
-84426DA94B43BD21B1028EB2A6A30F41179DA886DCBE99AAB28A1B329BFB743ABA0A2F4B
-B4C400F1F3BD3C9A0109F63EE563AFBDC1591BF3CFDC863429A79F6E0A21A749A934EC7A
-08541245B9F3CA401EADE0438C18B9FA2A78B618F38C611F6C053D2F6A0726CD20687DD3
-B09863DC0DBAF040D15DE51397DDEF2712F688D291B71DB3F59A7D87E2F44FFED1144981
-A11BB9824B1F4FB6C9A1CB11867A187796E5076C811A9E085EB5C202E0CDE461CA541CAC
-D3FCDB4031FC78D7410C4D1DE558A5B697F03F9EED11F731678677448420B876AF142242
-574C740985FD2B6038AFCF1A81C4D89D00C73A09C93AFE68E5158B06B1E4A5122A371687
-93C5744583791291A8B8C2CCADC8C1BD233285F91C87566E36545ECBF3A8D5F9B3721292
-8BF2218F2242E3F19F91120CDF7D7B118392A4F3742911D47C4B6B2A61A7F79378DC8DB5
-9DB041A761DB0EFF44C948341C174E5C6660DD5D3E5517EEE0DD88A655F3F9524168CDB8
-AA2A506EED7498CD8A320E2FA42D10B1F16F8FAB5B5E85DEA6DA3005ADE58DB47E35C71A
-C9527AEB0DB1B59D7DBD35A5E5C3643E17139FE1BAF662C7E88031D01A9BEAF71A18DC76
-F8AA4EE94C2575C438BCEDE9118D5124135A071E3DC0B103DB08D7277EB7E9BBCEE953F9
-77E01A009A031D4A204B87C0F0BB722508B76E4F4ECE45295A2FE89A1DCD981EBB4F9877
-246527356F2E8DDD3A67C8A39047F4DBD69B37112BDADAB6342FB6C522FA37CE74FD74B4
-D37D919B612C91586A2F1EC2E1AD95A5DA5F6FC0E260362765A262386FD8B9C27CE5FA84
-EF0B7CA9A77B1C41DDB5CB9450AB1366C00176A7D47DA6E4BDB2C1C548426B69987EEAE9
-66F4A937FA6597B2A1F2A690C3B467C57DC1A6E271B4B4FB7A60EFE602B5A2CDEA496F54
-073DF69EE58BD31963B17870B41EF97E852E286E1EF07D48FD2CEE44F51FBE8FAFE8B171
-82DF3D6343C85AAC1F58494274574A6231652AA194027CDDC257B942A7FA1E9002E9D75E
-80EF552962CC5DD48735A14C8B81020C167319755636653041031E89BD815A299BEE48C1
-626BB77614622D88D310B0E19CB4A9E57C174BC369BF13C727FB452170D9E830ACCA78FC
-F7F0148CA9BC1EAD7CA3BE325B60C676B3C5AAFF6FCA80FBB8737C7BDF51549439E06B38
-79D71DB53A757EC2C2D66FFE2CDD0C166E2981980AA2166112BDD1B14C19916A14403BBC
-7E0FA36A3818F6B4D4711BADDA0B113F6EEE39916EC8952E6A7858BC65BB175488A6BB74
-6E78C5D7C565EB59ED211C5DDA7443653F6467C403F9725AE83953468488A6EA8237CA9D
-538328329A8B23D3C96727A7BE68B59048E394D2BD3E9B5B97E6C88DB0D3B2CA42C1E845
-9B375667990B8B28CAE32BB63B8973E40533D1E5FCB26B2F680F985DF33F37AE6F32B9B4
-CDA270B0B060C8E511A0220EF06F0BE429D2B977A3782A086676AE58C244D74E364533D7
-467DDB36A7B93F27A9B729BB3F0087C01E6E38ABB26A2CCBD35F2AFA01C1A085535F4427
-521B968EF7DC76BA612329090FBCB6C99F73A61BF1B3D0975F2C7457666994C94C5E6FCD
-4D4CCF29DA3E355CC64034655471885713804F44081F1F4C426670A0390BA6D2C25977A4
-91720310D0421B3D5FEB3C88BBD35B2D4132497904A74C3535A15B924023C464CD70D227
-F28490233A568AFE309F6908C0F369189803ABA18497C20B5E47D5D969DA3EFE03059316
-C0CC37688CC42783823A1618AA7C0AB924CF1D4B961CDA7DC6FAAD0E8F742D33ABC15730
-CF0E246173CD0A8F21466C9A4A9F86EE6ED508BCFA0E4AB5AB079F1EBA14D78E4B562F81
-4A1F870260F35D55D415CD2C10EDC209F23BD8A0A0ED6FB8EE11C30EBC2250559B02221F
-7861C08C18BA12E748D7181EA7314E355E27EBBE1B3C00C69C549D4442998259D9966E9A
-6C89F9D8796A0DA2745CE68C3D15368621F9AEDD74264565EFF245EC7D5E235D524D19A0
-6D1512B3A823AFE1944DEEE38E6C365D8EF2917C382A537FD94DEB1F7A959A69A3990033
-F48466A241B4B39E8AB9643677BF42BFA3080B8B389DC2BD74DD9CF7D2D466CAB7CC7EBD
-33FDFC9CBBC0B2A0D3176B3D5D9C78B121705E9AC8DB4B76711A8D299D6EC76386C78241
-FBE1887604B50BDAA81187B0987D0B7A2108A32BAB0406AB8977F4EB25957E88F93D0CDC
-E9121D49CD3FAB7EF4B4627A731C43E7198EBF05E662A2A81F46E0C55510B6D47A5363BF
-63A34E483316B4FAB3BCBD0F190F554E8133E1F31745424E0B29C031D84F24A1250CC3DC
-28384EEA40BDC069C457BD958A8D2ADDDE965903B436FE8BABA1D722F82B6BC781980B54
-86FC63E2F918716776F756BB91752A0F591F518CD941AD6453AC1D5ADB8016E17F0367EF
-973A4F6DF74BDC2691457DB95EA4C5729031B8397663BD0C4388B8E514B279F0F003947F
-9DEEA6E76F6C3D3BC3F64987B5AF5F7D520BC76119DD36265453DF598CFA741E9A404704
-4C2AE3E1E7472CC11BAA4D5A32304447DCE4A766DD19A50542BF90C3F1F93BA6669BCF83
-808634A13FD2AE46048C42A90A8D0768E3BEE2B902E564CF27FAE1AE71E5862A8554967B
-1BC8FD84EDD3410EADF57CB3E4617B65B26A2B90CD6D47E7796217B51BA60D29D81F424A
-4590B5A8FAB9B7404CD142CA01B5ECDACF659A4B4997BF1D1B6F9847D3BF5102CEB53754
-1410448BF07E8E49786A718F56FEE3966C4852147B9193233C8008A2D2DFB70448078B95
-81FA5F9CFBBABBBC5D7E6BED86C9E69E71FB53AC96FA096AA8E6E46B67BD96A58A18AC48
-854D5C6466329B0A9C7C910A0ADFEC02A784B3553FC43E4C2EA8E1382AB1D9C103CD1260
-E3709CD18400AF2936AF02BC37FC32054A73CBF36B98521FBCF62D4F25FC7E0F3989B25C
-084FC5B84F16F1812B52D7AB115F0A80DA3D846A3DE4A83C512778B469CB887EDEA0FC37
-9581C927228B510F441071FC705C98024CC64E9BD21CD7DF90BAE4D271DCEB183FCBAE68
-DC78E977A8D23206CD3D7E3AEC0E8607E24A431C6E24F649370C897A65FECE2BD91C7D82
-F7A1CFA96AF95891FB8A2806CBBD2AF6DE7205E8E7269DD0E8703758F93D0BFE29CD178A
-62BE495A0F7574EDF1679AC65A72C43131B63AA8507A225C447CB2D71E0974A1405E5CF2
-E13C7FE15F3FE046377500E9C4A1D0C2825E49B8AFFA5B54785B39D27D181B0AD38E0E1D
-35C03186235676EB44E268F6308B17B45B2AA604CBBD05E33497F4788E969E01EC50A3E0
-F8A6CDD1CD8950505828E16F2B85AED36EAFC45D9466045D43AD9B3B3B2B92D5AE0A383C
-4C0D8C27BBA70E4A6E7F4D134E4D684B9AD5BC57F19810F88F618F49C66DB98D76F950C5
-25AEDFFFF5641D0DA2532994BFA810022AEB15505DFEB561227DAF7FFC9B2E1578108ABD
-66424877BAEC36FA8FCFCD8E23ABD236399F4AB2FCD5CB2DC84B80ECB9C6EEEE7271999D
-37272C0F8D1A306814BA2D302F7A3D8C08EF5375B38450E852820875DD008B55CD50230F
-9F1C513684B5A7E0BC1C992804AA638CBEDAB8D673556F9ABCAEA81059B0EDC0193FB823
-92E4D7B739E8B0053F84B7891434CDDF773E15DFD66122A300E0A561CBADBC15058310BC
-C9E44582D513D63E90832C521CA6F7E6C70D3A9F461BC33908F1773575043419B5310F74
-1FC502C5E52D7CE3421D0BA35BFEFB54E477106DFA69677F822FEE85CFEAA54EDF1E641E
-D5E73F733F3021A0CA6F5CD5EA5ED8C09B1F3B1CA953E92A4117839A678572DEADA59C50
-BF67C6367BB03CE4FBFEB71F652918939FF2B61C6A89E2278D42FB30BEAF2CE7E6ED6D59
-CC0B941DBB15F4BC70AF627817277ED59A95A3FA22FE35AAB686FF442237C1B4A9FDF6EF
-62E4F90266EEDC96AF7F7D538DF26632B6189C2C74F62106734308EAF30D9A6E25A8FC26
-12180B467359D44B592BC4679DBE01856CE65D2E0FAC04DED5207CAF770198827720A708
-E0667AD7A3EE70879A25C40D468E307E01C4EA8B0FB67A854674010A90CC42CD6821F717
-19055EAB05AF9C9856C6FB31850960CDFF7CBA473C4098A45A1E15C533182D146B64D9D1
-BCC4EBE36F926B2D4BCA8737364CA448CEE8A27610425E06420404B99D7C2FF4E02A90F8
-583262933685471C74FC236671D814DE1F3016BBBEB1780E4DE6489CD71F5DC6DC2BCAD8
-D742B695074F28EB6A91DA6977D8BFEE0A7012DF751455F36459FDD63FE1D1317858A2A0
-EBCC845331CB6BC509661F464ABB2B3341D1AF150993D73D547DBE8E13A249B4CE85D9D8
-3F35B2B7AA450CE28CD22F826F69F7B1F7AC8D802D97FB20536ABDF8CD275E67C22674B3
-1C6B69C7C8410B93FA3FD167764F2DE0DB966B9BAE9168554D718E00A5017263D49F1CA3
-443F1C126EA11DE16A4D19BFC9BB8AC52A5471D755EBD49B535760254143E163B22940A8
-0F2AC318C264DCCEF794B02CE91CFFD152416C37AF6F7F1D151F4143FB808D10D635E811
-CBFEB3EF3C291F8CA480769FA0D3D80E1ABB4199DE5EDDFCF720D95B1F7E57B80D529A22
-49AE1E2DDCDD4CFB478E88CA5EDC7C4A97B7BF8D1DB4CF194227B699D1A5884FA7163E87
-7117F2A46897135F0202B6AD25EA7BE2AAFC933D1E3761F0DA9432A72BF4FA0755CF555B
-7DC892A63879333E1D5C4614215138BD11967D5746163ADF35C13D81DDC09045989E9AFB
-668CD3E34572836F7ED5981CE6ED895DBD5B7BB1AC7BD9A4A197FF9C400050A97F8684A5
-E9732512D1BA6C9F4EB27773CED4ED9E63DDE7DE003BA708798235CF66D0C7517AEDDBAB
-F667F6AFC423511BC344A8CF07EB7C697072B9CDB4958C40685DD2C6317B20ED0CE5DF6C
-204B8029D48783B1AE8EF5FABFFAFBB42BE9D26B4840C04FCF826CF6168DC1533BBD3452
-7D2AE02FF4237675F45ECF4C1994D45E0A15E6D03A3E399BF9B0821AACB73329636833A8
-B4937F8DF6DC557D20FB4C1A33D7E7A2411BF35BB0888ECBBAFC4F1DDDFDF71BCC627304
-C4F92B71BFF5D96A822DC9C71687C1FD37299C4BB76B7F2343741882ED86E05FDFD97CC8
-76EEEE402AC25F9B5945C48629A605632DB0E7D210CAE8C887718F10FF689AF3BC23E960
-A1872ADD99BDCB14CB388B4BED0C9730947ED47775DC9A2B028778ADD281B8A7107C7348
-FF35B6403BFBDBC3AEE99D2DF222D796BE4EEE6071ECA471DB5740647D136B49D2FA83EC
-7C12E402BCBE75C7BE2CB2C058D041A3A390D60165866D1B84A5A21AD65E5B7313071ED0
-CF488AD4CB6D7BC4CE06B620262D4C3952BC443E10EEEF07FE3A1CC72F2921AFA14CE11A
-40655EF499B2FEBAB39B530BB27682D3618705104D6A781ED1463EF6217F8DA8DB308E47
-2654FB4A1F5CB5A147B50FE10357E109DCFF49AC818F53621619B37A9FC57A5DAB97F829
-82D2A91D92888851F9C58DB754808668EA721894C859EBB4E09123B8E21AF0D4ED31092B
-1E866C80FA135E73CB59677CD3E74925A82A6E8AB6A1E28E1735E2BBA3B79CC8D1D6531E
-A41214CB887AA60C94B642AC36F9720A420E64F321A474FBB57576C2B0155450B51EB175
-D39DA3945AD41ACDB958DE15C25913F7C3D7C0AE3A6CB987835B26DEE2F92FB85E7B872F
-1035CC7E7332A9418126BD493C892033FEB7A254B47623F8645C52D240C70F1FEDA77C1F
-87A90806E9AAEF356EAC0758714EC5018B1B481B79B416A2D6DC92D7B22AE75894517C16
-C3DD09C667BBCBDD6C3D36AB00B636323B2B6116125F6319FB4C16A57764E8B879086C2D
-F146DF03073509C72932A516FD7BF9F9B1936B643201F590D1D551C2C5D48BDC93785B5E
-67F1E6EC0A5D14D59A190CF6894060C1953D2DB3C79F48844F7A0B0F0FDC3AEA8A53E33D
-577B67E9213ABFB350929FEB36A97DE7658B441CBAB1F0E26B3FC5612202817A5C2F423A
-AE4430703E9FEA99B861C4A8CC09F79AC6E6F53DCCEB0EE7847CBF73ECF35D4F5530082D
-1AF3AC71BC3918496CE6AABC23D61A98D11BC6D7B40885FB6FF6AC67ECF47C6733390DCF
-A88F9B9326B5D130874910D3E479ADA40777274C02847ACEF3AEE8E0DA0434C9B35859C0
-3D23BFCB376446EA2DE09F42AC3713F0673D7DE567E8A0A1B15A1DC88FC081530804B744
-2B0681289D586D9757631803ABE18DEAE727DBE5DC052A0A1F0E70480DA458FA96A010B9
-57E4D1CB0085713817AFEA72535EC98D71B4B9ECEBE04C51974D94F874B0E3E74D149C96
-BEB4CBDC17D81564C3C84A14F5130A08AC7B71F1A2B81CFF6682062EC4DC6D8E1BDC312E
-ED6ACE315A2A28C772216C052947E079071314DD07BB321F1EC8322F00CE57D3B0E53E6A
-7A2B9002F1ED47621CC255EAB1F3152D5CF2456764014A5DE60DD0CEBED98B584457377B
-F67065F706978C6AA2914A68A942DF2B2742622007655BA8780AEF5086CE17B67B8B3AA7
-E432EAE81226FF8CEC95D0498BCC0FE737DEE690FEC30B80F8DD74F05B9B88794A54611B
-C12F61CF8BBDD49F33C5690E1F03DE89937040BA0775FAEC6ED05026ECC6DC4D0A0EB441
-66ABCC55B3194DFC9213025725A8EA81A3290031FC365D3741922FA26E1499B93C2B59A4
-BC226A3F86FF1551DAB5F9F850ACD311DF36EE86E5B3EAA4579972223DAAF9E475F9BDA8
-4D95A89DBE06611D73BF0717D1FE0258086C1B97103CB62D8DCEA974B41388C00F176979
-E8EFBCF4FFE9144820AF24BCC47EE0597276455F92BD1FA21FE19E1D98E6E8D6BDD6AFAB
-E61C7B650C109A61E1A3C6E92A6F2BD8C872A32DB437E2EFA5A19641608CF2D5E109952F
-8B2D9C0F0B96322665B1698490E37E860900EC392CD42DD9AA6DE6F0E5A5EE7BCD34A538
-95D129885A10D9446993F5CFB6978DBA5B9BAB29773756B9867E4A2561AEA643414BA7E6
-00DA0932D0252E094EEFE73E2AB163397C2266CEC81ED1CB7724335E1FDE7CD753646810
-F94A631F2DCCED349080D4E9BA7E9585E3F52F77114012C081C806A447BA8AE735E406BC
-532B46F55134817DC0B30496C6F5367A4DDB55FE033A236404D643C4C3DDF9D8DAC0F165
-C2B8BDA4194795FF0146830C21CC1E991300548E7A0A0B032BFBD828A960FCE987A5ACB5
-E2224DCCE6CEA1F7C6BE69248B6044ED317F1F3C028142B52DD60DDEA986214D93685E9A
-F3A2D9F7899A614FB41BAE93640B9BD10CC3981505415BD61325AE4E2EDF73E7AFDBDA1A
-D4DD09F759787DA42A474F1B6C134AA6FEE8CB1B5BE1E9AC6AA2D1E60F7FE74EB2FAE2A6
-BD8874F746D14A51F860741F5DCB208C461F8118A4741573CE37DFC57E8B6EEB1D369758
-7956D6255ABB0E047F04D5AF7E59DF62EE011BCB403ABE71C63490F9E3F28096149F866B
-480EC82AB9BCF835EDB42F72B33526DC06CA515920C92FF73CA0C1A1F1F61FE8F373C486
-5DF775DAF6C7BE60F2DD4232B73801BE6BC491FA63205730E4974A531F1E75E74A9ACD2E
-D4A9A9A45FEEA8414614B535372F94E55BF70152086AD2738807B85E0ABB2F5AF149C8C9
-9A9F38A6CF85E31358F8846145F428A89DA1C26DAFCFACAE7992CAC52BE50FBE0EE43CBB
-2228490A00E9716E513C434DFDFC38263D773404743713BB490DE92A2C4F3E2E67032D40
-B31649A0672EB3E41079316EF1020DEE6DC23B95B093FBB87A0A88733645423F72CFCA9B
-4B499F178EE31E5C8B8D432D5872CDC09713CF21DAAC84AFC235E8AF0F8DD6D6CE213937
-7314BABC357F9DDE5B3F2EF4843827A6F0D1DE9C8D0DB30E14F9C94FBA3A7726D6479706
-162D0071B70C19CF32BC2FD0113504C82EEC7669A66331267B4EB18C5F1902B6B2C78C3A
-86E5AA1D2BEBB6AD05539A612C230DA216C24B40029A8CD96B8FF0FF000E816B6A7C4F70
-90E217124A1D6A78604D5A340C278BA9B16CD4B5518E0376B3C518E1493AFA9FDF83C36F
-6F28785DEA18DD992EA6C2909ED188A31E933A0F5B521ED9C46E7A70BAD32D05AFDC381C
-9EA3D56E2E8C48276A82F9EC08440D6468D0DE0577EA8D5171B678F3AC9F3BE2D5DC899A
-4D945959C9990F334EEB92F34B88F256FFA564C591D5B18F79BCF9817E827BE4BA219423
-252095B90DB4347B2D54F2BE6D31B87B525D103680700F13CC1C0F72B0DCCFDC01F2E924
-B5E1442F21025659C39289B7B4AF03169F584C49D38EAC00B1910B823745054F00B322CD
-174BE2AB28915D81A829B6C87486ED7EA4D44D6EDB6BD69C25112E0387FE9826C0F3F2BA
-D1C6BE26E603730DF1C4CB227936404E138136082AD61492923E173484955187CE3DE172
-0FCDFE244D85D3C5716B7A4338A8130748567E0044D3D9DAD19A9785272819ADC5CC9876
-B764CA881499268F67D6FE0ED4C73D463BA920F27CC02D187573082A1793D228D2011E2F
-59A15D7349B2EE7C9E7BE1AC231DCBE9DC98A2796F5FD4A5853B8BAF6F266520CEA0C42B
-0AA848B977E9FBB93F77CC2F6224A339242BA2D7CC565373E3636DC0CFAD06B7C5C8FF10
-392C03A29675102DAA1E7BD4D45A2BCB6F6C73F8C3A6DA9D520F858EE0E4028FF39A7C8E
-AD10A54E91112AD1A6BB7DFF7D3421533DE306FD859D5F750268EF950F4CBA3623B38703
-1FE153AB39B304EC57FC95710ADFFCAC53508224A7DFFF79AB8A24E4DF0846926EA4CDD5
-665E4F1734764B53C911EE8AB436EA08ABF1FC7BDFDD754D22C6CDD1D6EF1786C10688E2
-E2830A80A5AA37C08D1545C24EEA559618C927E4E5A1D6F83CE3CC7B100D4E04561B1BA3
-08A400644C6B49F4D5AA8EC1B5D769D16B28E1FB6DB45B118FD348D2A6F241766EC0BA04
-DD24F51F3F288D954D2C7E3B402361D6343C5A26F78D2C220E83D33662BB0CD33D84209F
-7AED4D30489645AE647D045AB0BD56E20943BBC8642B2DCDDC09F955EFCD74F04337A15B
-9DC924D48D1AF6AE222B76563139CC37966D32937FC5BA436843EB57761B9F052B0BE1F7
-132E40D0F0C783CC80B728B75FB600127673C0FFC2838A8B52AA3C957E978000314DC091
-9D1DE4DCF84280D7939ACCAAA46ED513080442D497C7CBB2EF36C43CB3BD66844691DB7B
-2F1ACF8D9695E03F747E3C0CDC2105871F13D27C3FA07E30A27F5414960DC3A51AC1B569
-F30811EC03218F259BA3E4668F83F6670968C7DFB3E7CFF0D12CE126E4C27DE03595C823
-528C95F4B1C92AE796CD890EBE3DA9746B92A835817B6EAA2FCD276A77436225C44E89B3
-6A0066BB7AA1E94C3203AB45A6E2DAA5DEA3B0F0E068A251CBBF98D376CF76ECBEBCF3E2
-1F375D73BC558151341B01B27E16ABCD30F60FF9A91AF52808606625051C54ECFDD28E8C
-90E211E0174A616C68BFC718DDF2656FA27BE3DF485F050BB57F96B7D1F6531CB2B73B46
-D21629F201D40C5A37B572428805651E2EC179424D8F5251A84384783A83D2C89B6833D6
-D0697FFEEEBFEA9C8CA21A627F50A1168EDE8C5E085B5930192973DD939E36F10AD90B9F
-C02C0B116F922ABDB2A94213E4D9AB7903770FE69017FA7B28894A5CC4C66930FA7FE05D
-35D664AFD098B8A76C9F2EF0A11E36B6D7362B62205AC9282D8082C15E1BA41E8A711DA1
-CFD28A83BEB3ACA3F7095FCE5880F18EE93F9EE03C706AF5547B198B4A08B9731A61141C
-9A953B2A5A3DFEDA3545EAC5D7D8D556E72118187899AD1D13D51B44F1E422F4809BF42D
-FF01E2F05B9BF68849A398CFC799771C1AFC256B7D333549A0A71FB7A8813D5028BB8F2F
-397C1A68F22F3F1B9C2B7C2D4F4EB721E73D6E63BA651C802CE8E57F5CAE8C1F6C4AAEF7
-BFE00547D8344D7741BAE7BA30F21197146C8B31523C1C651420D130A2DBC055FD437CD4
-D92E7DD74D6F1A1027CC95CC028F44F2C5B95E72CD31F200B0A3584946E55B9A6A20163A
-3EC73566552D848290C8EE0C821F08DC9F1AD94C9E94E8C5B865BEBE2047092AFCF291BC
-EE941AF3156D6C8AE07E63B81F27937759F91A6C8795051BFC02164475850E295E6F40E8
-4DEC3874F6762DCDE08F738816A14E5D5423590D87B85F7E0E88EA234561903039FBC1F7
-70ED97405878F62A7AA078601FF5277CAAE4722171DF7954AF82DB007C56E59A7A59F133
-071E193E18D2D24EFBA31F3E598B9FDE11C0416579BA3AF70C8F7F0D069C3BF3FDCA150D
-ECD1E82A3D7E1C11F13D37F27CA578A761A9E5EE2B425EAEB8298120429D457998BCD81E
-81531F1F23CC05417FD802E9C1B7FA92F129CDB8F498C78F9B936FBDB2EBEE402AC25BF3
-CED327EACFFAFB1619E023F018E22F30FAB458228AFFC545AB15D66D4A0B08716E484F4C
-FF688C67B70B3878ED20939A1EDFDF9D62FF19EBD66C9FEA31F18B6221208CF315DF5108
-CE58848845FE2386F9F916108102A8EEA1E6A4806535410FAC7AD182F6F317E0A864DA31
-35FB3C0802E830A039535E66BB3ADCEC299454B7966FEAA81861965F79C0578D5D48F3FE
-5FBAD2239BBF5F107E5FF42EE8EF094D8586E8810522BAA1E231B4FBDD6CF6C62D3B36AA
-8477D9273E95D66CF67F5061EB4E3EC2048518063703DFB7EFF5C2F5A3968FAA705225FE
-9E088D592EEB980C54777F46BB385CD979BBFC34F3870583C13643D449A49D275E38FB4E
-A31E0C69CC3CD31BD790FD0960EEE331BC1C7D47AEE5ECD11D6EF0FDAFFD1FA2C0F33C85
-31357F04EFCD25B6CA2E0800E7CC8B467D4EC22FCE69FA0F1245253B8B3E842C10276456
-ED5D4BA9B19B07B8AE60115D4F423228878C7E6461523A102F03E2C997C826B0E01A8C74
-737BBFCC420E2A864B051B219EB2F65AF711C8034EE858E8E41E93E80D519D7D5B78FDD0
-E4BC44CB9657C8DD9C37EB9ADC2E33E42B02DA3E069B9B20D7A727DE8070E17FB032C9C3
-4F5623EBABB58EE9097C85E0A2D93279EB7F6CCFB82CC798F06208D106AE7E811BB77F43
-E4F96EBDB0E29E9CC6CFFA79A00837A14A424A9E97B16F52CE9C0068C43523E286038ED8
-D91087DD7764B1DCC9FB73CB72A1AAFC3A09D353C64A8E3480D2C3E9D1F583E2437BC1C0
-529AE01639F1CB00AF09CFD84C38037DA70512DCB7242EA3BDADF8429ADEB743E5509292
-37BA921D7AEBE87A100E99B0D806D0AA4B3BA6740FBDAB5D1E0FE3716EE4957BDA0258F2
-70B527DFB9E2FE35FB0A6AB0FFB583B9529FB51BF336852ED0D4135E6408AD228714EA74
-D76CA630E0AE366233CD90CD586C9D8031173646A78B88F1F88B409110801D522DDE383E
-93675E5993EC6C007C5ACF1AA8D0F10A85A144E189273AC6E135E986EBC2A85074D3C290
-1AD3BA21B44827EC7A55EFD8A429FDA1DAD0929E86FA7692CC46E7B312B441806598F2FD
-6090A17540D1140AE17D9A96678347EFDF0B510A8BD31A07F26FDE43A5E012D76BB72FD8
-8A70CFE950A471C724288EA13FCF2A5A7A3D54B2D30BAAACDC818C588BDE628B30011DC2
-5CCFC66F6C7C5F780280D8E4C421A0C30749C2B33EB4AB3882CF161E116498C4204455C5
-B70C59800A0530493F63B843B3BCAAC5F025163431DF3FF39FF9330084D41A696DB77343
-7C3DBD4E794431B80E72838210F2BFDEA75DDE26997A6F28065DEAF13EB71B0B098C8209
-3121ECFE486A0CC366FD76927D530C3448FA16790C4A96F66274D5E7A71427AF984C5004
-620F3011223C4556D8D996A9415812F1868EC9744B1101FFD7876B0F0765CCA2E7BFCEFE
-6AE75779A6AC7876D5435153A48C4B931D23F7AF10A71532249DD0BB4F52514EB90B98BA
-7EFCB01C47BE21CF5C2C82827AECAB3666D9DB46D415C31870CC7934BA73C5736117F639
-45883151F82A1728E5E591DACEFFC0AEE8E0234EE158F45F8CE995953F2D52D0DB5D23F6
-E02079E115F3844925501E263EA3EA7C364DDB44BA125796D630202D46DE831E5FCA2BF2
-8709E4C2A8139444CB401254A0149E4DCBC69AE1438FDC782A6DD7D08134A27C1C32033D
-B1707A8CB8F458B3FAC6643712117752FCBC008F2EEEA842035EDD4E50DFF848E20201AB
-074E662074C5F57290E7FE6EC37D5C1C11EE8DCAD4BB3CFEF95193F16A3AC6CBE11EC609
-111C0C056856B5CBC8C5F59CE7FB37CD8F3B53FE0EE6DCAAF3C933B849FD60852EEADBEA
-C506630B94EB9814AD4A9D31D2F355A3A176685CED59E6F2A6F61458311635006CCA9833
-BE5552DEA87A360F2FE23679A8C5E05A5A8C395FA909C7BC287C6587D2BA7C4C22DC3396
-0BCD0B32BA37DC1C1F59E730B8F1ED109E215993B16FA35C7859B8F8F299449CE26091CC
-5E9A4893D1D1AC688865BEBC3805855B245A9E90F715B904B9761E3EFC7676E9DB688EAE
-D6C5470282E8F065A2CF7CBE00FA66260F1AE895921852BBE6CCC06732EF7290620A1371
-3C98977827D534617AA33769F4A89CE899D29A6048516B0B9E764C4B7A668470CC188EBF
-54D31E95714E4F85F3EEDD46DF34786702A088B30A31D55BBF6EC09153F5A170E28FC2C9
-F39EC3EC34BE68B1B13F39C7138B176B064210B8751043F03C35601891F31570D77B94FD
-05420F77B5BBF0F15B62C06CD8E026D7402D53D5455D608D9A903482DF22066AA82B0927
-918EFC606CEA50534BBC94269A487505D937C2A0FA09DA28BA69A0B90EA305CA02332254
-5AABC58727B5169F010548A30B750484B8A6F33BFD0026BED604C56CE9CD713A05FD9816
-C1A8CF1FFE9A458AD7A3A0B0F4FD0E506608C58669AB9809DAE774920917406CA8E68F9B
-E4C6B9D36C0A31494625FDF84661D20DB004C8E6C1CE34646992D7A2780AA7BD04B7C15D
-8A696817A5D5F4A00D9C25E6695C383C273877B1F75544713AA173E9892ECFF80CF54382
-02A2513C677A4AF1C3BFF5B282C807A77F222ACF5AC497A36DF8BA7C537391827360220B
-40F2AF6FCD3D3A9EB8847899F3FEEBCE598050D7CE593565F3CDDA813453B62983C0D90B
-71BFE793AA1B2F0CE07F43C8D4DD8BF656EEF5C6C3CF0FE90C9891344FE3F4644ED8E98F
-6C1E8C00726BC7B8D2AA8AD0681339EBD2B1BE983E36988BB22257DC27CE5E183AABA617
-D9AF549235E8EC30B37B85BC3F371764AED219FACE0CFEACF611FEFAB312466E6C02B341
-904ADF69B17706D8AB2EA734D8895813DF940ADD72547D373DCF82D1C484D7544B06AD93
-3C4D95655ACBF08429DC60D26DD8690BB9B865D0846FC0D32117612B8A8DA0D6955B38E6
-7B7EB2405F7177097ADD4CF54475866A52BB7FB9DBF8055D96586EC8C634DF0768B27E29
-92CA552A1E4B920C56DBF6E6C03A74745A0AF944DCE92093C8BAAED7B40F2185D776081F
-5B3049BDF295D0C4EEC9E3CC12F9B19922A76724879D842C1851C16A9447296DDD5096FF
-804D0DEA8530DC5D0AFAFFEEEC6B3057F16FADE808E85040E4275FA41A9B7770048508AC
-6AAC18540E2D903789AEA54DE0AFD72E582F596734D44EE33A9A719620F0B17FF028CCC9
-A1DDC29D41D9714C27CCC48A06A49551D8F5754D8AAE52D92D31269C9696924D52A44EC3
-D483A0849738125FEE094ACDC8C09574D7FB5FDAAE0F44497115EF7C152453BF1B6EAD42
-44B784EB072BBBAAF2962F61879D74D8850B1C544ED2AD2483EC46F99CA7E5A281C38C40
-A5BFAB0500A37CADA0FA0DCD05838A4180C0DD8AABAE616FDA7CD77572EBAB61656158D2
-C27C2DA43871390F39B4D3E193CF95C19D2D2B8072857284405C68F5AE101A49F786502B
-8040587DC7E2AD00DF02504FB119202E0FDFDE2DE00D4AFB2B67C8DAC5838050CF1C2D19
-C2D2F17FDA9BB90DA4F6DA74DCED5972E2F8221EA6A0AAE477190CF01D645D452F0E477D
-436DFB6EFF88407904DD172E6CA5E132CBEDE212BEE43C446CEBBCC250D13467915BFAAC
-24AE63D231CB519A0007AECCD201482201282B6C7BB3C4C45392D32D5E6F0A673FB8C27B
-D70813CBB4285D3755BE80CA5EFF3B8CC0738C090F535004A14D6EEA4B56CDB2E70DD71F
-98DB9A8041A2F80882BC5EA1AC8661C20632CA27198917A619646193B4A3EDD8CFA675EF
-5F83AF3D18735EB811698BA7EB58563F0C706A2DC7D372369CE227DE737713C18948DC20
-5D9E574513D54ACF922CC559100D90AA3439E5B3D02E0ED2EA9005F75BF378CEFE680D93
-CDEA6ECCC4B3F43CA57B128FFD4ACF5020CA5258B2A03AB259EEE34B80590D44F58F3D18
-7190011DDC9B6FE1F5D9D8F1090EE4BDB4FB56272C579E33C7A3ED0AB39D96C1AA74E197
-7F30423B3E2AC868292F70B3DC9D2A1FEEE89FF3BBBB195E409C5F473BCDFE107769B6EF
-E8371487FD8408D67313A1E0A6E2E448A0321C0FC931AFEABC4F648E4185DAC8DFA30D9A
-87C0380046D38FBDBCA63BD498FF6F96FB141AC9D0CCF2D58971BDA0703CB600FEC9C22C
-781DD3CF1D0604930CA0D8D9C35C247643892A82095F9F12196EBF4638132CC259278A69
-6BE54B1BA1B56DB1EE0F1C8FE42989AF69E38473B2A4317356A415E1FCCAB2463C80B5F9
-185D0B49D4188DE1B620BA6D108F3D3732BF34FAB723C1373FE6440296A18732444F56D2
-2E4666EB01FD9E25BB52F399EF53375C9280D7F6C3E774A8FE3EAA78EED6A94F85089E6C
-FDDAAE0774DD926D148BFDA4563FDFFE56AEE78D03B9BADC66DF13351F3538D6220D5D3B
-814D6F55C97A4509358DA25B47CB33923506BFE54ABC45FFCE8B35EC6EC9B5EF3AD16EBF
-9FC871736AE364350BCE0C88152854A653BAC1ACA37600276DFBF99E9BB4B19E90A6F234
-A11071922039565046DB5A6912908CB86AD30FD7FE3660C06F05554A0C970AE20BB57E92
-448EBC532764FCCD1FD1F8B7E10FD0EA90E043C3064B246CF3E2299BCD5FCBB0B8BA8C1F
-7A78688A0AE89D73DA9E7D94B20A3566F0870462FC72C6D7390CB82761F428AE82DDBB9B
-DDEB99B653807E6257A2DB61EA8F4FB2C1D133EB3D8D6DDAD980E5DC555C4183B6F1C380
-B932C33ED0AF6426372558F6E01186A41CB25FB6CEA786229ACB9E61A133E138685C485F
-505EEA8B5BCB465E5A697E2D6AFFDF040CCC78B8A7DD2F76EFCD0ECB1DB60B7F6996A75A
-A0059F9458D34FB95925FFF126E616B6FF585B566CB41926564D8BD98D8353DF5725E722
-86E1B9D1DF3644A4C45E3318ED821CE90B2D0495E97C5033C8733756CD10C763C2BC5CD8
-0EE9043A531A0DE7DCE115224D0E272AD0CA70D3E206B070728E093BA13F03E8D419E50F
-F85B3DAED2E7A581948541410B2469172006F0C24854049C0180D0DF6686E314757D9D4A
-7F6D641D499DF6550A60ABA333DB90F4615BACB3C808FF6F58272CC252236B29FC67FFCA
-5ED9063DF8100D915C5B8F10D7B1AD3E848E797F82E9B76786A4524AC083B09D91396DB9
-05F133D6E300AA5FFB1E1D161D00B4CBB09DFEB87CDA9527A23FD4591E2DF7E920A3F4F4
-26A7D3AB614E8D45DB0399550E166F01C4C4F660430642F813212E24C7CB24CBA11EBAA7
-B9F63BB00955F125A92658AFAC7044896843138F90299686F549A427A542B2588230C21A
-09938ED97A7A6382FC70174F303673CE2AE93D8103F5E633298E1DA2C36908F6F6039FD8
-37747FDE7F714A66CD8871AEF65B8A68529FD63F87AF84F3AD411F820AE9BCB84A7EA4F4
-3838492DC675D80FD615CFC9D6EA741C6B91AB432C0CBFE06FFCC562D71C6440176F39F5
-3D810FD4D3810E22089724E8A7F53D295681C2E07334D656EA4D3F7AD037D3B9C760042F
-86A0E2240343EFCAC8E2578DB30BECDF093CFBD0056110EF5834A1E683CD7D624B04AC43
-A663469E0D3AAEF64944EF7C43F8FBA221DC846E86A8866AC53384FD35D10FCF34EB7404
-BB38289451048BBBE520F6018C3F3B8F6FF3FDE4C5F33D89E44DBAF04AC4FC17A4196676
-F16B8A2F02FAC4B8933CE617FDF903113354619906A8637566B3E61FA8C849261A625CBD
-87BA5F1EC6479E7B9423BA14D9CA0C68E11BEAF1D1E948DE44257986388E75DB6FD9AE41
-13C36EA637EBD0812F272EB8381437855C7B0F262728CC886BCB624437F8CA30F107427C
-7D1103CB94B19CB2129FD2B388D62CAD6078EB7528810DC458907A14EA0CA0B0C28DABCD
-988174387FC28FF98B7C9BCCEFA0407D138828621AF7815C13EC04F7FCAF82ACD3E8E773
-B886BBBE2C4F2818E39A2D7F964A29B9E977F53C7107EB586D628F85798E70489189808E
-159E28A8D81FF9D642F3FA4FFDC2059947719184D1E83FD5EEAC7FEFD5DE2DFA8D808AAE
-91FE63E94AAFAE17FEDDE11C1EE21085438581DE1F5EABB4FD2A2C3CE0010492612F5797
-163F19DCA534DDF49FB45D0381664FE5CDEF1CD0C319B6748AC4B8996DED871EECB3E223
-8E924F30CE315DEC278EB94C6206951B2D4E735463650B5020CA8CBC756618AE1D8781D7
-B22ADE2D20CF71A9ED08111EAAF4E3DB1F081CE992ED1F7BFFF2B883EFD95F51CE612CE5
-6588D7A8F342EFB74A989AAA55ABCE83A773333315FAF1AEF25CDC4F19FD2293A51AD64D
-A070635BE2763AEC91BE2DC9F233D8968860E76352E6DA9F7E5EAF068E19CF1DDB22EB76
-FBE149738F247F4369273B6A901705B7DB396F662986D91803DE93D89B8312826CAF94A7
-80EB2EF254FD8F19710452E7EA41399D50177F4A8CD017EA2446C1295B6C1598BCF35060
-4288FB0A9C7CBE9D94E6517CECA11528D286CFBF0D621DA7D93C7D1029FE0C70F20ADA26
-E05A67C4E301A086770130934D6ADD3419070C6E2F0173AE4DA51F478DE9BBE3687D09A3
-A48D7FFCA601801BA38BB9D87F091DD410BD354C24C74E2E049407B8A3A98F90FFA8327A
-6260CEEC0D9CFCB9BD04C3C08FEA15D0884A9017E239335985C85E17697F874DD3EDC192
-AB8542A11C8B5F50A2B737F27E9A4078D72ED0656D5AFD0EB04F76565CA2777930DC4B0E
-62715FE6D2A8A78D8C0187FFF43BF6C434DBB5DB369F4045558E5F4F047554D4641D02DE
-A9A78C9B3B64D32D3415CA488D399273879BB9BA3EB375F630F273DAB8EDC0B015A3728E
-B55013B32BE513A0AC4769876686C9816035C2D199E955DF7A99CC07B680229F2E9C4302
-D5F7F4DD4B9C3BD69982E0DD8699EDC973E55A259376CBABBED36F28024A9EA504154EEF
-B9F2C5649E7338C52CD19690D7BC56CD06D5882366EE32FE4B56D7703237F3D38A4D5C07
-F4B851534F597A1723BD364620757118169DFEA997B90D243990C23B6583EAA176021C29
-923483CC99E04537F611D02C44E99A05FA78A0EF13F05F695F38E3E631750BC0427F162D
-96057F1A50A392131DD979868B617C037D26CB9A92F478C57E822C3E946B1A30388A3813
-39C0A4215EE9314A42BED741A0345B13D16F462E60E493EB57A775B3A01EBE558F8423B3
-047BCA02DCD80CD35A3AD41ACB26D75C92B1DEFF4CE5E8A8332AA185DF670FA87410E36C
-D27F4064090E39970DE94F2A9476DFAA41225BB65C0103F5F2F277F932CB3B1F273464F3
-1C6E88064995D7C6DDA4C597ED8C8AA2174DD99D8769F818CBD824E04EB3458DD29A78B4
-1BACA60903E1BC1AC6527351EE55A550CF7BB448C3926E5AB461E374AAEBF86885B8D912
-23108CA0D5D57C333DFE6EAF41FB5C7071B83EDA33362E2090A76DF9832BB5DF1E3AAFFE
-135801E3634415E1E8A561360B599DDC5F84F3DC12E3A4DA3E325A67DB748F6768D42289
-0520E9FCA4928178B888C4BB626D82D9B52DD2A8558BE9A3013B4492CD8F11CD4B8CA79D
-771D9A9127EB7D3F8AC0E09CF86F94AE011B568EC3A12B6C8B930084C0982FF9400E5308
-23E79DE9CE44B754947CF6EB96BB9C9FA45869AEFC46A19F957B677E93E25D7CCECA4389
-35D70BC5C89EA5E2D1BC207365D7950B8227E70D4CBF3613A1ED87A7CF85485DAB70AC0F
-3CD67859B72D6384000CA9B3831D32CC774B27AC9A2C21A4CAFD3493A2BFC37464066BA3
-4A4BB4BAFA36019452F8A580C4F27BB5D81BDFD8902B510FE95DDB23CC43AAF71E464CB1
-AA6120E3CC15775000BFD24AD031F000F787696A6A6FE9F2EB409B259E706BC64E2BB7A3
-286718CFDD3D1D2F3BBE7218949E69815A570AA59CE6545BC1A2036381515AD097A81D2F
-51AC22395AECC7D208F77CA9ECF5F2C121A7854AEF87CD2170A1F9F7FE9657F2C5C77344
-F7F07A90FC698A63382D7E59D7EBC856553BC2C821A6664E3BFFF963C3671EB7CD32C9F5
-AAD7CF79F066B847C533DE4298824AF0DB3C96B780358DAD0F71CAA85AA876EE8C056864
-FC9F11FBAD9D966AC00667AE21F9DA3555D55D81283142FF4071541CEF9C87882323BC72
-454D5261D13BC65EC5113899474CFD4C05D13D8FCB5F3A49A4967B8C46817DA1E71F7EDF
-3FC7375ADA580A715D37FB8D56B2A9EE3296D302AC10A9C5AF7DB8E92C39EFBDCF74D102
-C9939DB7F7C2293A9BF92E3A81C2A17B1C2048150935B977B85EB6AFBFA266ADF1D7CDE5
-8EEADD8B2D7D2EE4D9FF56CDD2CB1CBDBE229B03353D7370F9149ACBF086403B96B6E859
-952A34C0B58B4891E029FC505417DA6175CC8786CD4326548C65941E17587AAEF46006AA
-01599C4D9C3D66BC8F7776B38822AABEC1D52E1B29702C498D6583AA9BC40F656DD6F74D
-0528F562A31E90F620B7E96FAEA15F1F2F0B68FDDDB00D9FFCDB10635AA54C47AEB4FF60
-EB3E40FC4F82A0F73B8440023753309E443CA66CBB5C02CF7D77DDC5917078EDCF50BDEF
-1341027323183AD881EEB8CE2CE4B983C611508E8911F098ED89DBF2ABBA49F1E7DDBE0D
-6BFC1EE74A839F7CCCCF4A12339519C2EFDA56941A74044CF1B0222361ADF02CADA96F2B
-94AF954304B3CB7635C2E7E6BABDAAD0CADF6127F63A07BE097E6C7FF598272D39D3EC65
-4EC2E9B795C1E6A65C50AC1D540130B16DB5D763B9923DAD3CC2D8DBA1D3D2158C01EF3D
-0F41E368C49FE8AB6DE7774CEB1134B1FED9E8911F9C2F29B8A65D2F030B966444B96EA3
-48E804BB6343A01E2A5A4B3A39EDAC4EC5A8F9F8BCB4377B0A10820E5B5FCD84A1343A02
-CADC1D5EC78CEDA3EEBC08E795D41C30390EDDB0D6228C706CF39C2989618E1A2C86FE80
-32E093F244E65BBD5AE8EEB19AFA5EC0717D5A0365890E707DC35B2B56187314BC1EE8AA
-F3CF2A8E90B5A04CC30BEA3E50101256E48D0DDAE0E8DE05D62DC3AF06655AE331010C67
-EF2377D07B7075866B905644D7003205A1D9380B56386E291962F5A8CC209C4D540CE82A
-02B4E654BD66EDEF1DA488CF02B1F37ACA1566F5FF3E4A25E9DC0FBE6F1CCBF4315DB6EB
-F3027B8751BA5BE3E68C3B428012CDD1F23ED25C9F09B53321698639D37C581873723846
-06606C0B4E522B57B592A205EA908633A20BBFE46689A9C749FCB2C1BA5D4B3EC7DBF4FA
-C810240BD7D2CBF721EA3F824497D9B105348C6DF4E964AADFF293FB406A4678D7E1CD5D
-24E189EAEA1CF128CAC24C3764922AC24104808451776ADDF427A8E1DE5227B82546F1CC
-8FD56C60EA96726924AD39459785E481A86C59E43F2964C332FAF11BEB87EA9F7CB71920
-1E31DB06A94C12CFCFC4CB0E5925B81BD827842A8FF3021BCB63E9CE7BF8984006062267
-DB5F53DCFF1F1C08E053020257982E81CD41F6D55D6DC148CE7E1588146E2E7A721E0C63
-4451BA6D6B0BA5E1434EA112CBC5BC508BAC211A55498D30FEE9DA4BB5D39E19767CE082
-CE5E2737B404708070E8E6F325D8E9A705398C4D2704CD50AB6567411B18D49F2D55D690
-CBB1B4D50EF9893F8071E8423DEC6A6738A92E527446549C87D4BE374C6BAB141331BE47
-B0A1415937AF7A047BF16B2AEFAFEDF28D15B66C241E346884870E8F3ADCAE8A1403CC77
-1EBDBA2F12EC4BC01547238E69EEE4B08FBFAFC2E81CDE882C9D7558501B0BC04175CA89
-D1EA401ACD6AFC5AAC4128539AA1F3ABFA352F69A1322A7E505F68774598F26EF248F658
-D0EB1ED0278DC608903AE7D8DB3A2FFBB486057720D8F7B6039C2BD00FBD67B73E183EC0
-D539325173FE5D5F6443A6D98B967ADFF599124199825EC044717674D4EA3D0CB23058DF
-D156708E37DA80BC192F0D51ACD25D144411F856E36B135403F818297025F27FBF7EEEED
-1D964BD4F0BEA178AC1780B1FAC7D64C2BED556696F164B97CA0C400F8ECA0E508884249
-8F32B23F9AC97B52EC55580C0C7DF9EAA9B8DAAF266DC0A02C2F3AF10D756AFF097A7610
-9C299FDFFBAC8A6C3652285901A145DE49C093F4AC2BE72327C35E6F0756F18C9D219D28
-24230C2F226FB0E9E47291136B363658230009DD11F2A8F23BC2F90E7EBFB384E1BD8E75
-42295AE84096E3BCB7F7E7ECFB394FA8B2C9B4746455DB755A59613D085C34D07BCF89C7
-2EABB16DDBA4C2C09B48A5D21D75CD9529E4684F29479264C9DF6FF211B72559F0BE453C
-C83C1FB4EAE42A8DBC18B2F0DA7DF4CEB2EA36129B469CB59D74C5A6897676B3855E9E28
-5F0BCD467538175CD6485237686CF42A046B714941BFC56FD1ABCDFD292B5368AE331149
-B401F69DD62B294FF941B1CCDDEC0DCD5507889C8310A6FB7D7F3A9F0713AF8E52A5077D
-10ECCD6B5E24B260052A25E09C477D1F4A4710EF521C44F5765EF8DAEE3B7BA4E286D764
-59802F38D8E97D9A557963FCF5CE32A7DD5BF847703BC9314102928DA945BC4301440841
-94AB6BEB1EAF29A147BD1155D2A5E68517E4C347098D4D49AA10A359132C633B02E3AB33
-4BA68714EB41277EE78BDB1418DFC5A584F6541F3EC0EFC75E66263F61CF2DDDC5DE5648
-B14B8A275CAE0728A9B60FD75210FFB3EE02535815F68572A9C29DE316C7A6C991DA22B8
-08CD58C392DAA11A2390AD45CB6161063043C464DFEC11E8B068A0CF516E38BF736AA9FA
-A03AE4EBC45C03A4064A4CF07B171499954D8F93A7598F3D51E953F91C7A70F35C88A384
-97839CB7F9CFCF788932B261AB359F8834660BB0CB5C69A4178BC3A6A98D6DB0C7C346F5
-E44ECE30B1C3E5EB4D203CED8B5DFB17F8211D672013A41F5760D90D593B7079D6F231D3
-03E9C3BFFFDF1E98B8F156BF47EF60F082FB02AB362582361B5274444E6C615A8ADAFA43
-71CBD86CAB86AA91D096EA244AF3C69C4A2F9D62A0F5BDB7649DEF309347F364469383E1
-4B72A52AB0B0DC030D8E785C81724959CD02E1BBDF43E6B92DCC1AB433576ED1F7B7157A
-483C99F4662ECEE5116AFC2B28263AEAE6FC04C656B02E15D619275C7D79894320559E18
-B75EDEBFA7230375F5EB1A66DC3AFF798C6B67D05D8B49F28AEBB509364AFFA36EF12063
-8D958796CDB5409D5D3D8270B4E602A530EA46300695868F972A1E3764FD44BABAB416DB
-AD0E3799FE67EA3A134F9841C79F89AF7FCF182A484627FC0A70A8528346E3C27F655232
-10ED76FDD4626CE3EC9F34F506F9A7F68C50B9434024B7C40A3D1ACE1E616694E442625B
-FB49252EB156B12AACB84BB3985FBB8431A9BC0D1F071F7947ABC095FEB24EBDC9381FD4
-ED98028BE53D441AFA5534C9D27A3D21CCC2EA3B6A652E08CAD80B56751ECB06F18CC9B7
-CEC29919314FB5283AFE5A1951D3669B446F094550DAAD91C36CE3E5D30238C65D2E1D67
-5648C147047FDCF267AACDBBA50B1F9C7959C5F12DBB94B64FD02741211F297176F5F849
-412EDC12029643AE2AF2CAE8552C69A90BA2AB2DED3FC3D5D5E8987CB9B538FF90B693D4
-B842EF7D8AF1055F53FF8442AB5854E94BD016AD3F29CCE91F6D222C7E0D3EF3DE72AD41
-C2E179FC20B4E0E694E50082E944C77CA4D878BA6F19410FF616569C59E94AEC542AB9CE
-BDBC0C9726DB1D56FE5B66463699266E4802B8572C7D2E45DAF827DC6FF7543A45A8B7FB
-908AFA10A67EDA2CC08F677503D0D30D74BA3379234897DBAA955011163C4E0138858535
-1FFDBEB8804F00B6799ACE948E698EBBA5C391BA1D2FC74F20C448FC0BB8766BB3858B46
-2E06F751F2762A5B8DBC4D2B7B96FCB3EACB4757528964DC348C274F757178EB41BBDDE2
-E075E7F340C899F2253DA8D35B2C544792077D7CD7678698C2D8A3E36D440640FF920E74
-7036EE2E46227F170C5F311BA5D89C0EEEAE6BD2CD006C5D18BEEFD521894E5DD7E865A1
-B894E8D3E24AFC5A89D18773A7028DACEC61BDF9CFEA5FD37826AC0A7B51C7CFE3813A36
-8D62036C6B5CE16E56601864092F2997816C600AAF2DF34CB4832981CA5737A5EEE14F2C
-08302588D473353CC126C39CB3F6829CF84358384005A577A7F8E9BEBBE001DCD4BE0538
-6490A8E7BBAB5DBB98B5548E478614B9CB730CFAA373114384BA850D00FC9B4DCFCB6B8C
-A57D4288E62BDF5D36BBC888C6CF5F501BA8B6D8C5D69D5699D80AD979974F42420D114D
-9BD3F2ED149514EF44BBB2746A00E3C633FFA966AD76B0AED0568E44B94C1F820869D86E
-91A78A7C5DB8F454D313637FCD271D92FC20C9F578B21A969EC9B1C015D8FA455AB419B2
-B743CF348AE9BBF466F8FBD617E29374DD71A846A75441CC79C4B1030266EC8E46801E38
-CB9FAC30D2804203AE5CA81D0FAD237EC8D8EA6C544F8BA10B91C2D3A402E940D3092E16
-9D44A95F8292E2DA06C709302F69729A5C5042A009D319FC7049C50DA4653337A6BE5A22
-B325F1C64CAF8682D3D4904654D636DDA229F6F41FE01DFE8CCA48B171FAF8C099A92C28
-D3691CE8EAC30941176151B67198121ACCF7A6EF4FAB0843C385003036DA94117B66FFAA
-0A6A8C007404A9C0781D60652E48D530A656B7E005C5053A8CB7483D1EECC4A85D907859
-982A74B1731BE0B8F4B1E91E4481A68057F9AEFD9438343C1229B0E676842A85641CF32E
-364CE9EDBB8D4603CAF04A5B2111760E1E77370474393F89179413D5B9184938BB00DC79
-FA7602A1A591EAD89E9D7DE655378E10E301B4005D6B5BF682DF253B0D8A34004DE431B7
-C82C1741D9952B20F7312F6B44806226115791D0E38C6A5E855B2197DE0317858F25C62F
-2177D7E6237CD2CCB630FBB13107B25EC2A75EEA8AFE6AE0642AF1F23D171E99AEECB731
-5034D2410795B40495BE25FC6EE051D78792D65BEF57BE88C0DD7A7C6221D0B7ABD88762
-9AB940664A7F4B6261069B5DBC95BDBFB9DEFC25D4DD38B184CEDFB2653553894B7EB379
-4CE19DAD9160266B97A32BFF96C0A1B7B6EC126F34DD8B242AE0FCCFB7DA22EA249A14C3
-E6208F2FF090AB21CE1EBA11D66D654B30CD73CA6B2258F67706792E63E52B1F9829313A
-C0D6FDB303995546B77974C0B07F906944B68B50CBDD7DDA5DBEC4740FC6333D1E62984F
-A9C13C623620B27680BCDEBEE51E3B5841643383374E04BC65E4CBFA38C91ABA62D7AF44
-C721491F6C78A9088DDE50BBFA9CDDA44E567D776559D3E11030CAEE6E5E7D07289CB58C
-852AB6E55F52A6F5730A099C982DD11296E4E33CCF20BF6EBF16C1EF76785F13A1AF9EF1
-A52FF02C06A959B6839550F4FC30D277AD524E215E05B63A9C7B74E2FCACAEF3DE606002
-349C3FD26BA26FFDD6737BEC9C5DAB55F0A63AECC534DBDC2174490980A9AE98B00F6BE5
-2334C6090BDD9AA329F6A66F551B3E41A0DE3EC021C7916F521DB7CF1D5A6B7B9D72851D
-285358554917F453CC15A1D73FD528AD12230892C6774001C56840F60EC5439F6F54F741
-96E6D3D74010F14A30DF85B16D23A7194634CDD9E4D2D74FA1ECB3DB09DE7D7FA438468E
-D1AAA438A463FC988C4460B1C55FAAB585AA17837CE6597B162601010A04725655079C2B
-627139B1A2AD607FC365CA845CE554AC4881BF87DA677B2B240AF10286A947D624EFC074
-1D7EDBF557FC7BF5409AFEEF4535C7A02D9F195B1A20D54C25BB918EC1DE3492D8301448
-81CC8EBA460A299805212312643D95AC08F93ADE8DA467C4286ABC575D17265D7B268809
-C055D44FBBC1672E34B73EC73F114FACCEF8817B3EACC68C88D07249769D0AFA2B797863
-B6ADDE44995C903A35A619EEDDB8F1D76E736C26EC4E8BBEB51B05DBDFD840C0DB53C766
-625664B8506BB1A66DE8A04041ED2F68663BD15E3B932234F37CFF8128E4B2AC1C191297
-D4202B56DE39AEC4006ABE003B7594062C26F206C124E1AD656B8598F190A335A0351034
-388C225B0B542D11E3CC96C0B72789349BBCD9C445C19265D32440F6248F2315A9024BBA
-0CB6B71BD71DA2B06B57FB0483262A653161E6ACFB5E916C22B6DAE5847740A36A40A505
-668EFD5FB438F9F1779C02A19D2C14D6F1DB6B120C060D2ED8BDEE9733497FC9134A82E7
-42970EDA3F136E0740CCAA97EF05658BC1BC0F5855303168E2BCBBA37305459215393674
-3D51B4670061818712549FB6CC007C1F13B8C74A8AEB05B30D37E6587148A94CB7C1F27F
-1B4B37D298DA91CAA996A180DB262FEE001AE974B819D288A619A8ECC8E442D4A2EE0D93
-B89A0FFB9A03EA573BB8D40676E9C67EAADAC5C0A807D7422AB90881515D4DE087893B8D
-A0329DDA3C42689CAE4F29C791EF79B2965F6DBA3C25AB0CE23ACFCCBFAF41ED546B4A05
-0203147147ED047719FAE976A2B71A81A0EDC3DF0A3E03B4CB8208BD7AA6CD91151B1A31
-5AC3C27534D9D73F285CBC0F3D7E0C2CCE2DA1502BD04AE6789ABF17DC7CC9214C67F2E8
-5DE2A1A71AE65A91D7F139756A1A9F912D759CA02A433F0C44E12E8739C4C2BF217B8FF9
-55FB47DCC70B1790B3E906B9AEC41467E5E0E9CA0317BFD62F2A493EA5DF4103A385B56B
-45290A56E816C06EBAEC8D38509777CEBB11CE12509834FB28FA7A19FAADE81BDBF0E427
-46EAD35477D51E467EFAFAC373E3E72012AC7AD85901AB832B8197A5EF7ACC5A9D6362DF
-89CB52589A3CE810CBA525DC46E2C00680EB66CB4E20CC4872B5F6F9BE3636117140C3CA
-545CC3926EE9005FFF15AB7848A95ACAB42E3B565AE93DC7A1CB80B2854EEE6F14422013
-D50C7BDD75E97822BA7C7D65FD383BDD5BE7DC9942888CB7C39CF56F17ECB0676B73D3A0
-2A37319899D89426DA1B299009379DB2C217DC43FC08F4A43E13BF8522A2275EBA64628A
-78B877E2EFF40FBF2B5C628981B0E66643757F5F8412A5B48AF6CE0D230D57100D2F3446
-CA7C8EBF6F3EACC15C3115BA9BD61CF3D6309C18BECDE16EB18F6D008C5C5CA0FA426B52
-5CC0F33A5743D4FAC4830C4B7ADD35ED3BD7F7B072847D2D430DDF667A6FBE49A371BF0E
-BBAD32173AB5928B86FE1F4E74116041E0F6E4F1041BFE588A17C7ECFF96EBCC224EF0E0
-8E3D8566BC221C1991BEE248920A4BF4E424FFD1BD34D1CA66F53DBD6A1AA33B33CE4EC3
-ECE8DF81BC73A54DC350A3939F07521808FD40C566B03124BC7300D28035F2162B76F6B7
-F7A26EFE392EBC35BD718DD1697BC9FA8214A1E137E28308F7C37854FCFC6BD031A851F5
-E54751C2C409A314A0AF104BC8D561A5A8E7C6B0BF4F1EDF9B42F577A9B9AA91D690DA70
-6BFD54903E6A1591588A845EAF9B49A8C5BF35B06AE495F4A8CA94D64163B2BC03482DA0
-BBA8B30CC65711C8B45AB4EBAF027958D578B94DCA70863767A0627B0751AD63EB628BED
-CBD2C89DFC2A3BAAE500389F9D25F1EE6FAF3BD85B018296528A0B6049688B2CF7BB1941
-386D49D254EAA716D29051B9A5295E937F700C7D46872B6D593869A88576DAC22A2F8B3A
-5076656122DD5178AA5FF49A84BBBE20DEE581FAAE017BDA5B7D4886BD8E90755D766EA4
-B2E825F73B8DCAFC4AA1A8263A179EC15E6E7EA656B1BBA6E19756324876082C9CBF9094
-CD62531D1BC54FFD2F9F9DEB6282DE12B66D570EE73905B0287CF19E628533EA058D5FCE
-AB66B6DFADC6AF54995ACB056B8BF3AF89EB021073FA98A4B6803DF89CEAEA3874B09625
-67D46C4D830F0CCA68C7F24B20B94FF73A0D270D2247193214DE5E85775E15F5ABF0C88F
-59931730842A814185AE10BCC62DC83846FE3031B140D6E0E05F4E5B6053F71781B10D05
-81904D48290FB4A157670B791271F7B1B32BDA4A71776B196767EA25D5A935CBE1626C6E
-5B3D8E64F74F03DFC72FB5C63BF586540071EE17C883AE11F2D154EE9AC0B2F7F71D4D08
-CC170A9D5206AF1585BCC8AABC2C2C714DF83AD1FB773CBECCCC388E0D3769CDF84DE17A
-83618678EF40D4171BAF7236BB081887A042DB575528027CDAC918086C6D8FF005639565
-F6676782F78AAA4EAD4ED8162A35E447C2D60A07E6222415B516C8FE60B9C0FD24E78996
-C1316D99AC6BF81AE6A7E53BDB0DF9AD231123474DC9A0105CBB4D98EC4ABB4F9BB4D3DF
-9BEFC99537B06378E91C875FCE12910CA65C33C47F1D8A864D17D5C5B288D5BF6393C576
-ECB62660756C8746C2125A8434A5DEEF7480CBC48C21595A28BC9931AD897C754A87CC3F
-608999E7FE39CE1F60C099357246117C8A074BC1E405EA7FAD3277CA45F5053C2EE050C4
-B93A1F85B90084A12D625DABAF2291ED36699134DB6BBF4AEAD7CFE27379AA6AA93B31A9
-AAAD3F8F998BA94D3CED13C1730326F08928C6A648CD010845C7CAB2B935ED2450239B20
-63D25104A1E9F4DC48BD8BDA6FEC274BE5807DD2355F6CDD587263837ABF3C8CF8466D3D
-9C38D0302F1CE94C967BEF58E6B867C9FE138A7DAA9E7C791865A3E8BA65A254C7032E38
-FFAEAAAD4EE632983D975F167172AFD8FF70A1CF6C90C24B9C1C3E1CF51046BCA8C2F0C3
-D56B931C70848521756E221AECB2F0015B3476FB304B28C4B7966A3F693AC9E1C5D69C55
-8DE014A05981CC5E1AE6083A91594F0BF812B1348B5401E4170AC65CA29A7182073F0E18
-8BDFDA17EF3933750DE211D30CED8B11A1107DE4F12336FEEF5AFB522B2060BB745526FB
-D06E42C1D4C7F529706078FF598EE48C9521793F53F770636FF6CE984FBBDA645DB8E631
-E041B10E43E836B1F8C58C4F2D4A7BDD4165FCD7B19243AC560E80A6FE7A3EB4FFDA465D
-9ADF12EF99FD68D90139A58A53583CD9A0A574B8E0A604E84FCBDCCF67B8A2DE8D411996
-12EB00DBBB8448B80098B458B143C6D1CCEFA354EDD81B01BD6EE4A0ACF2AC0338BFE143
-06DF27EC691542D79715D36E06DE6D7C2D3C9C0A7DF0094CFF0B50FB21D67138DCB7D447
-B45EAC890C4C6E08852F9C00D6DFB9C60A24061A3014844C84BCCDB993E0B8206E5DCD85
-A97D0F1AA82F5AAC40B5D490BC1C60F05B33BFE6F6C07138A4BD1ED177C2FFD13278F53B
-1B20218F1685385A604934223F259646450DEFF801D97C1D38E8621C612A4E49B9CC2279
-7DC683D7AFAFE54FFED9563E880B86C25982D6733EA3B8558461207C91F024640FEB1D2D
-5A7F80D16FC694DDC1A59B7E30D1924ABA53497F37345B31D2429F6804AC66E9FCCCF4EB
-9EE2BF2836E5B55F29D445762ADBF6BAA501E198FC7FDFA66F3474B116E9A77319AFB981
-7C2F4BE21CDCA0FCB65F07DCDB906AE92CC40B4A8E967D91A00E9110BC5E3289AEC2643C
-02F77C6313DB7BCA506CB8BB3F3A434904BBBB46D7C724766DB3BB73422B659F7D5AD5FE
-6DAD7B204230C92AEB30AE4E510478F620BE0E4D6AB477971A22A5C6AA66835513B1E2A2
-278BE747880EA3E1EFAD48ED0B7B5C320B833587A22D5C944F5ACA917C4C49FCA58CCF19
-BD800F5DD3246DFB9A772AEE6DB700127D07167F2D69CABC855BA8850571850D913A0606
-3DAB1EDBB6AEA9724368DABE65C57341467A58E819ACD98BCCCCC971E30F0488694579C6
-C4991EDEFF6DDD79693EA8BAD8AC9495D8884E5B09D163C7A0D343C031CB29F879CC5064
-B65AD297089E7AEC41026B5E055DC47A7C529ED28F3D27A191239D4E3EA911C84084B411
-13D7029A39E6C6A2E931727711F1F06B807841406515B7711A6B96E6AEF79E271C6E7D42
-7146AC3915D35E9C2D4C9E7C5689F7B0371BAADD037840BD034F4C411AB29B36D4314729
-E97666CCED8F1A5AFF6FA352AF6AD9D9343DA8E3F97A8C756B48675750D128A3862C19D9
-086B597EE751BB0D87A3B7A56866CB6AFD2CF8B1B322C9B2493D40BD5B89C4AD69F347D7
-26C22E0E39ECE377C995A611B54C0B2EE3B6CB16673F50779C212AF1AFB93DFB2C931A09
-39A1379C379E3F7327A687B5C4D8D909D3CCC5C3195935D8A09D5E5BFF12E61EFF4FC6E5
-F99A1460C5D1FBA82C84136BCD64D96AD968D6EC728DF4A85573E021734AC6C2100B6F67
-F4E648F5E284618A1868E773D9CC819AE8BB433FD388E971F211301B3ED077CC37FA4B58
-0B50F8BD2309D8E81936C050E3F0C8C7D81A80DA508533BF5FCAA977C17A572DD92CF1A6
-B7172AB4C66890E9F4FEC661AD629FA0FD23E9427C481408A637F9E649DDDC31668366C3
-692B524D9B4DA99938076EAB2343FEEA1560550B8E8CD18D3CB23BDB1AF30F60EFF18936
-46B26A09E5411F6C456917CFC6BF3F74B2079D0AA56935E672464F6444F2E17DB330F94D
-FA7CFF92DB6C800B2311AB86A21658D431EA7C811E020538CA2335B9DFF550C077E83B29
-544FC63F5407B1C9CBC3E6E6259742EC85BAA006D2715D686619A94AC7EAE394915CA656
-B8DE89A462A85CA179C276B4F90C399167DF0D928518DA2A45B3125CD16AEFD65C85801F
-BDA3D139B3B349AA86037B579B8FA94C713DBF1DB2A904652E89AA8281DD58D4CFE3434D
-6C86F0BF7921486C9AE78F322DD841CB43AD7EEAFB5735DBF68D03DFD6640DEFBE22B305
-B33DE7C444D16D31C3EFBDC78547D77962EA985B734970BD6C4B729C7364348B1CC321A9
-46D096A078A45797F63B1734E968CA55B8E905160740F68676AD286C9F44E1A94D17F911
-0EF21F8EFCE27A76D1D7869FD19C5A9AC889675172335D312E8E1DF59ED55F8FC13D0E6D
-9601039BAB9AEF7A4F3BA688E288A089B326E0B582384B9BD80A0BAFA1130E2034F95D21
-49DEA8E5F576EFE035C5E58CE82CCC0B3A95980097B2D4A80BE162C8E3760C3532697651
-2626F6C64864810E304D98D77F13BD535DD5BFCDAEFFFCEDC1CED370DB2EEF6D90E1F0F8
-D4C3FAEE71AD31B0F4798ACD68E1A5FD00A327846DE3AD55B0F493E534AE6E30D2DA7EDF
-3F68459CA7192321B98C8DB02D3399F72A0216F822FB8D0B5B650B38586BF22197F78D31
-55B67843202DDEFF5B04D4230DB2FC50443C21C8C28E7AE0E399767E03BEE4590C4D47F9
-27210114B296F1E8263213544DA56D46BB179ADBA6DC415D6A46679A4A7494AE4B2F0812
-9C5D06F92D2D500F336304FE3454F07A2083D6B6BD5D5AB3D6F917F555C7F7124AAC6F38
-4262A051D865369A95DD8EB9DFE43DCBCE770D3C8BB6630AC2F8DAFCE58C5C4060BAC1B2
-EEBAE9E56AED8725DEBA7CE23DF18E1A52A5B87F39EF416565DA17A5BB6566A8129CFD77
-D3DA3E3583E6F59EAA14F7788C06D3492FC84F7C6BDA74C9FA885EBB7125E87760A1E848
-E9CAA638A813D6EBE8EA2A3E9ABA7DC8C392A066331D9EACDE6C6819AE12A85B096CBFE5
-29BA283C2CB73FC34472C5289914EF347AC8119139A3E6F0CFFB5772D5AB65B276C171EE
-D565CF9B1E629AF962BBB00CD86FED8DCA3DA0BDE9ACB286C516114BDC1AE1AC41DD8453
-795253786205499EF2E971F3DFC51C72AC5225EF4E0D9DEA403F24002591D9F55276CC38
-0DCCFBEB33F7733A1DACEBF1AF33D55029C44364284F6CDC12ED12BBE809666607771634
-90828A6F10683FAC8C3C4DDF38A0CFD1D1FEDAFB7100FD9C02AC8796C7B3B2793D11C107
-DF10D22D9C294A3AD3897431EE593AB265D97450A6B2DC4917ADBF04B04F32F5802EE354
-4D3A95CDDE623A423213D0063B79F8F40EECC82F3C5985CD12B0A46F5AB9DD5175A9F3DA
-06E40950ECD37DE39B5EA6205D9427EF43D5B0D090A62B669E437D0C31B6A03850EA8BCE
-5D2D48C25EDA80913821DEE94881348DF1726A7D61ACD9520267B5C668F46B1660E87E27
-658B7D3C2F1C06ED70D97AB144D22A4CFF4A54D73F703A5AAFCB5AE2C7C5B33CAE3F0BD3
-29600C9BF8BAA060ACD3C4D5A72851A2A18AF29212B1E070EEFC452048CF312134436B5C
-E91FBD2E526CF0A35F42C1D8092DA30270EFF9577ED231B303B472670B458C6B53B1C766
-09159D861584F0901E7C8DED964E9ADB0B424092B4B50C490BC8DF607EB9345C7AA94CEA
-F430F8DD439472CBEBE11C26F9D7C7C5F8F04F6D3D97043E282CC848A1BFC73C095841C0
-ED64E7449BF4CD53A64F0B932C45B0770D6D18CCA6147E9F992A93275AC93D1B3B0F02B1
-9F117034AEA1F3F0F77D482A3DD8D5B2F69122E5B08C067D39A1C25D042D1EF4F47377AB
-CE1C38418BD39E7400F10247FA13291E34BA3CE681CDBD28F3F14EEC90A21C76806DA1CB
-25AB9B96031D1A472C1146004C4DF21E61E07087A8DB5C33DCEA85EBDE4587FB2FBCDC2C
-5C6B92E61C72B067EB5F07233162AFD24FE6A2A9D0BD11F401610D5C5F91E46D36B2401D
-A81BA2716D4AEDA19136E58A14F5A367942B70DED7DB1E0703609FB97F8C72C062934495
-DE54A6C45EE6C8B5F368F2817ACD4A10F14A846C1FF578084779649C4BD01D9CBA1E88E0
-1DB953307EE9BF10E6C17B020FCEEF709840DF73B4CE45D4C2583CF4B357C33DE67C8CFE
-8FFE367E89759117EF10E08899F466D342E75083CAD4795950C026505BA8CDE648FEC333
-BC5842ABEDC3CFCD3B27E707D6EAC3D54FE7B9C964E28AE0FFC96A06802C5A8327FC2CBD
-DBA565FE970FFE18008C9DAD42EA99FF7BCD0656362AFF37432A182C59988B0BF458C370
-725CF7D7F864747CDEFA9688FF6D2CDCB49052F349F9BAC9F8261B5FF65BCD2E531BA32F
-7FD7D3F0E3042811B345E8676907FE71D4FA94437A3A42872285F010D909D468462942BA
-696325E79D943D0E44992A20EA118ACF9CA5F1B20E52719854476111D6479B3842A9CEF7
-749437F57055B19C5FD6993F5737E8555B19161FEF7F3560C6FC498EE8148B6327EC40EF
-7CABBF6B7A99D14A789F6F5431BA4714CDA494E29542EDDBB4A250ACAFB9802B6A3D8FE2
-1CAB7FA79D9682C1B1752DD2E671ED5E4574BFF967156A503753B65075653471F29E06BF
-7342AB3284E9EAC6F14232F32C3B0266416738EB5A138DC33DB2FA3A74E649532B4BA7A9
-AD51E0278FE837ED68A9A5E40AA236314885AEC0DE2BB1811BCC18F0A75CBEF875D886AD
-55A873B8D3FC81BA69DA0C68778CFC5F02C17A851EBACDCFC9A0682D514144CF47382163
-6B1A61CCD572575E6A81671DDAF8C442E4268041F8E03398A9EE0F63B352839BFC4D4720
-0F86CB77549091DAE5FEE2CEFB21F4B987496FB8F993E3CC18EA9CF06442403830E06738
-20BBF3E4690163AECDCF693BEACC77B5591FCE1D2DC11621BE67F9C439F7864BCF981F3B
-8A9CC1F21424AB86102448FE45A42993737F7C09275C627CD601906B75CC9370AD491B59
-2777DD8683ACC7CC961D6CABAB46A2AA65D8FDA3E66DC5C75ECECD209FFBBB76263E036B
-8F62EAD1B802D3662A23A28079CB47ABA48799F3DB0D7E46710675B2C434513E997D189E
-0A9661186D9D623D5B47BB377E4B0CE197D80E9AEE04E55059C6292C52E00D0AD892FE67
-600AFA285DC92263DC1F15EEBCA803647789D4D420FFB53C0CE4A669B4B963D5F2FA6FFC
-3B28AABD6D97AA2F92EA3FF8EDE7AB264CEB19062030F43D8438DA703B68D2615928E4F7
-9687B03BAD9F3447ADD3090BBE186FFD3E42CBA236104DD1D9A8E9357CAD999E889D313B
-262A4232C5926869139EF1165172932601BA4CB406177E25E6150605DB931A70870F5BA5
-1DAB4D15D500B261F9D708174568422C714F30B696095757C66F7D2E6A5CFD146D90F21F
-27F62393B532583B49558C8C6124F2F428794133E093D4FE09805FB2F18BED35D12CA321
-B79B0369E46FE3191F47B07D234866AD7EA52C50F4C0562597AD1F7D186060BE2339C324
-F154C2EDF64C7A40E8419E7542B8CA143E172E3C62471AC1F42342051B3FEA08368A31D2
-56A7D51FAE801A420FA30E5D479283A21B50AF52C6BB4196433D933FAEBE36EC577C59A9
-BF52F260443A622B637FD4F6BFD330F8DAE7E4374E16B8E98BE92E3404CA22763671CE0D
-276981334084462B06763958C81E7D85C76223546F3ADA094E5597AC68967D96CD9E76B5
-0518144684C71739C488751FFFD3B9859E23DFAEBC15A0AAD8417416CD5B47656E8BA799
-BB2ADFA07B90E634895108D5F97BAB5B560F0608C1239F49967B34941B908AA695840FE8
-4519FA60763EF706ABAF2E0C7D407E5DF05807FCDACB17685226D6B5070522D4A6AAC8B8
-77891A1390386A074745E5F4875F625E9BBED05B54D04EB6A6D8352E7E4E47FB7EF432C0
-808D0C139EF7EF5220838D1CFA3A839B10B772D8F2A197E8FCD7EDFAB65B7234A7E1C0CE
-D75C3120A58706A26004C2218744B095AF45009AD3036AEE08068311B20974C4A95C8CCD
-4EC20B2B8B8EC4F2D6F9281968EB51ED0E377E3BEA2481810C3B0B289AE6A3EF50339AC3
-B7F06050B7705C260D942DFE3B104C13728A2140F9E137AE5E476FA67245FC92F1DFD28A
-81CDE2EDB4978F971F668664658A674999A62287F74C8BCDF0C306C20FCE35EB1BB7318F
-9D7BC39F215535A9796A7AE7D117A273DD5F1B0F5FC5F87863A817993C96CC2CC0FE3504
-44698065A0654D045BE4FAA60A218D260FB013868B18AD6DF01B793D298F0CE041671E71
-81893BB81310462FD1906C5F8137FF46937B206588D2715297D008E6AFB90DB28E3D64DE
-73EFC4A6DDE7466A3D1BB402FC04AA80DF2BC39AFD30207230828FABCECFBED8E11598AD
-CA43FE742EA8D1BA8CEBE4449495398E5DE432B8218E02A5340C854455069082EC8AA449
-63A13C0069F468BFC1D3D75D4458383E04268297EFAED1D02B91AE933DECE8DC3337DC99
-D7AD1DC4B999A3AD5E8953C7820BBE425470B21BB61ED6007F236467503327FF73979677
-918B34DBEBC181DB99526586BB6E9889DD810A0CA022C62FCA58F2D4D738A74BA24E2FA8
-29B80401DCB36889A4CA08B77377DEB0C4172DAE920E318DCE78DA14ABDB77EECFA5A1A2
-6FF51D6569AF1218C4256D4B4D206ABBFB1D2C7AC2102815EABF306CDE0615FBA775B5E3
-446A2095C406CC1BFC1BF4A53E65FFF0ED565B45AD332505AFE0F91C8569897834C06194
-6C745ED6618A60065F6E3B3B49A61BF3265F3BB1FCF8A25F4880DC771ABCE6BD03B48C77
-83BDC1CE678E423ADEFE9AB04D40097D8DB062DA0A248D1C81AC57FBCE032B232C6FD553
-8AC5AE7983412BC80D23EB71E4DC3B946FBFC4B98C4250BF8D57CC55D929B55C354A3F9D
-1C5329F36B06CC099C2201E7FA501F75CC7D5579FFAF9F9C63C6DFEDE80B5387117EDB49
-9D3F1C72D650FC120FDFC8E42479469DBCD81AB244C316963CD6EA1C34DA43400C5A2B7F
-E9F0B71EC4EA67255AAF6A2F49982441962CA30DCCDE6F7894520FD2B811619713D91DED
-5D1FBCBB42B1368E7F8F4B8438C515B4661879D353096F880AE278905424DBE523DB7B41
-A5867878E478B85960607BD1C129E85249CA520BDAA479CFFCDA162E46DDE5EF6BED9684
-31F3289735FA2891C13C0C341159905F43BFA6412B6ACF04C2A11B87AD4B41A35385AB66
-68CF890B1E9A43598F03AE5A833A932E5C5A70E498C405CC56BD0BF1074EF1431980F575
-67D7C62291703308B41C4B94A99DB6F6F1F924E791025D5E2F56F3A0B60903FC0CC0B2DA
-8CC5785C6FB239ABB091B7718A9BA16D5A33083289E8347CB56172FF037F6FE1A9F7EF4D
-5D68E23A9A3B9F63C2045AE2B1758489AFBABE23DC1FB610B37DC573D2C0AAF544ACC904
-B69C7775244B1ADB77B51727FC66D02637CF2E9C596A05AB6BEB23295A093AA90DC3C3E8
-F17CEBB44AD7A8BFA8898D6BDA4F84DCA2A30FB5F0D151D8F6666690BC71002F31AF05EF
-E033513CE82E8639B45CD235F24CDB7C7C3576149CE989FECDE2F51FC835CA9A023D889B
-F6DAA3DB5A8AC49DEFF48266333B5B01130F954242A7D5A369CFE937D3AF1C4F2C64051E
-59FC2AAA3871EA827C5B74C70C259FD4DC5DE81E2970519C433F1331D1D08F5DB9BBC9EE
-80D1B7972C7F1514F7116E25DF3E382785504969CC0AB8DEF43F5F45676B2090DE9A775C
-04B5A4613D38FA586F05753CC38A684BF33D2991F909CFE097F97696CA2C59CC20A6D89F
-4710B1EF765EDC4D5A0B7BDD33D8E818D97C9A19848903D1684436488AA7E204F577BA24
-F1D1E0D39ACE2DCB56550281BB24BB686F605B7146660EBB47F8E329EA27F94319D795A3
-71D2D04F6B3DBC4A61D4A7A6B748A60B5D8F3586FF31AC143FB706770E4DAC9A6741EE88
-79870FD251625EE5E77853F6C5D2F621C26757FE64857FE4D0502F84C14825D9BEDAD55A
-35C640D9999543CFA0467165E5AA8E50699A1C13589A862BD656A22A50EB6F479D5C79F4
-585212673DC2BA0DA86109FFA40F5FFA1F660F8C055D2E9B9668B2966DCDACF5F189D835
-C029F51B85111D9D48F507AE75A7BA53CA97B39A5287CA4709DBEB723E6D68BFCA745FCF
-7DEA768DB0FE6140198D62E880E49E2997AB132521C94D259CFFAC9036B0F2C2E15E22AA
-6151E9D4737FD36B9676450E6F7C9E7531FD2F4F307D6D548F37A3DCE2CA5A811EC19778
-12B37C5722AFE78E1425C2C1C06461C1508818C9536FC9117951719B8D431551B4793C81
-CA6938CB75BF746C247A9F48354B0A4BDFB2D6DF3E305218173503195BBBBDDA322153A8
-2085F0FB5ED657637791A4A7E1C1B23CE0F8AFA1ECAE76A3FBB3E6B7A2BDA2E2252B2E43
-4413F7B626AB00CB381737A2BC0837E33C3E25C63852B841E70722F7ECF6238890D63CCD
-2C93F7A2CEF10AA710AFD333322F4907E87A12DEF07F5C7BE344E73CF12CB388BB6F049C
-D9713EBD215989CEEA7473C00E40F79CC0038762139D9FE2B2BBB290C51A3B4B9090D039
-C22B1A620DC1C3128C0EAFF4C62A29AF0338C65B6730BDB7D5A6A7261C04816B7D11463A
-935AA0D33802EC148CB8E7DF6B8FD0FB064BDEABD0DFC3AD5A80CDAE645B7FBBC59359EB
-A0D70699CCB53887530C3AC4E796DDA9AA05F36CC0A6D0C2F616E761CDB1ECEC164974B5
-0C0D38697DF56BD7F7F1772771054F18E3F5EDEBCE00939E70A43766D0E99EADFEE152A2
-FEACA0BD0BDFEAD28E3437753ED58E345FC0D6F4E395667411D4246C460DA5D3BF2F5374
-EAEAE1DF1A76A592C4957BB9C4D406257388DE96591969B30D10DED2C5B647B66CC0BCF6
-146FEF353A20A3A2E40C1A7B7964033816D6A544399965E9C17FC44C524268B0228E209D
-2276C1071535597E57EC3D9C4D8328CA914F54536B1F63C89325D6B26DAB4A5B1FB8260C
-241331D1B55C91406537C5323ADD2E3CDDDC9E199CE067262690BFDCB5184E25795251EE
-181E745001ADEAEE0A9442D57002D48D6B53E693C37E0BC64ADA28301235E9799D9D0AAA
-B4A23F6D8B4EAA5AD3B6B40618330441F6A24E44B160715740198B551C2883CB17FAFFD0
-3B4CE68ACBE3F6B33E29987B5258C1F7DFB87DB89735F05AE7966FF1F2B6546AF2A56918
-3687B6DC7B1AD435DA0209B0AE7CA01A3A3359291B1435C0BF04BDBE2B8778E4EBEE35D3
-17EB5CC7A3F7C5B7743AE69B16A6B9C89491D121617C20CBFA52E93274E6BBC8C0E9924A
-002CBDD7922F3437560E3747B93775FA549457CDCB2A9943AD403BF8AF05EB1CA0EE347E
-E832C6A17A3A53EDD50EF553A0E8D6723D3DAACEB6F81CBDB5B78A5B207A98183C3650BE
-A88F82AF734CE32FFB1118E54FBCBFA2C2705D65FD4A1B3A3734F188078A7B09738C3EE3
-A12FCE8B7221C3041224D324AD3C514EEE792E3D47B1E8DA34AC3E577163E7AAD2C85170
-7D630EDFF8403AA2720B09218E0013FACA789243FD76719860373949951B1907097E01F7
-2840CC3089FBF9A86B01E6E5A882444A3D167A302AEFFD3AA9463A68C7922104E365FEDB
-9BE61D5EC0A3AC5722F2BCC5101BABC86333955964509096B6799F286BEE15441C3DCD84
-A846B35D0B027C48DDCBE123DD9D2DD6A4808F0B3F98BD4BE29E1001905D8606390EEB35
-396A3A981529655D67FF0539BD3E1FF2FABBA0D4393CA781FDE2864DA5D2A0FA6F78063C
-03CA44F27436C3421683D242EF3952B8707863F6DE2E3C94ACFA9FC60EAF7C8D09BE2D27
-BAEAD24C01748E1EC790EF22AF24F1F7BF0AA1FACDFB5C8E0A9B3A1E9E53047E4E791D7B
-9DBC38B9EE8EB0E5CAF79C84E81897A4B202C6A3F22438D9B043D982F605E5C73CB01CE9
-56E9DA66D7BB53F38BC43DD2962D6589AA47BA3E0AD6BB8E0557127CF8F6F83AAAA3597A
-8B57BBCDEEB2223AA2EB36BC84C7BF53F3B7D9C221FE76629512D04EC454D92060750F55
-0E76BCBBFBF9566266A8D033931774C37CDBE5FA71FB43137E5592DD67945201E1D10467
-A3BC5C273DE16E64035C39E4A36D7AA7F4E8389A1FDBF891B00613396194EFDC5B77A9D0
-9AF9C1A4EAE52C87A096FDFF8699EB01E9EFD3F786A7D45AAF8D9D33B934CDFD85C495F2
-09009C628EE54F19A9F02CE631DDC692C3C56D2FF00B8F277A18D1F38A63C394C717A0A9
-0B01AD75390D853D63D0E0678C35022369BC8C985C8229C98CE6BFE1C40770461A5E26C7
-7A7AAB035D6AAA9B0394021020797E627E2E7D17B39FD2E7AC6FEB917A148FB996911869
-49A036A0E5B85D8BCC59570E4C689F2E802262ED26A13C18A57F99A74DA94491C5727246
-D3FA45A7964F212454E119A32738582CD4F5899ED604F76F0327CC1E5746A86CDADA7F97
-E11EBB6524AF8107F3A8F0B8E5F887B799DCF9F9481859EC4E5FF63AF0C294C2AF716EB1
-3EC7DCFB796E3CE4B4CDA1DD15186CDE479CE4EECD1FB27F5A05B69FBDF436EF246E8BD1
-A03FCEA5FB213D81F80D6ED7960896101E046D1101A7522F31AD1BF6C08C5ED8F6574F48
-2B6FFEBF34A2A157567F1B82BCE3A46C14A168B0F4658055BBBA2E9C29A4DF42764F95CE
-0EE9645C6E0BFF33CBBF3436F7A4FAB4B2A5055FF1DCEC075431A99670E03248CBCAED63
-4457D0EFC6565472A356B1169775BF5156DDF85E03688FE2AA31A158A65A1D9AA4489CC5
-6FDA78AB85C35C42B1754180577244C5343C21E222DA72B8BFA097BB860E9F834B62AF9D
-D50481FC4B1B9861A1C2A9F340237C949FF030096DC29FEB028A00A5AEE8507AA290848B
-714C13145AB3F4EA42C8EBBE4A3CC737C487D0DA0CE29BEFBEEE34F5CBE03DC91E5E2053
-F114C70CBE94DEA1653A26DD4CD332F62AB71115DADB2C6B3339878B9997AC3AB5F5ADD4
-9F432AC706A5256DCC4592C30DF40C5C47A2FDC72851FBB0E4EEFDA227B72EAEA758DEA2
-341344315496A6F22D42FFC55B4E90821C251F0D8B5FD3E0802D04E10DCC31E5024D330B
-25AD95CE31981E90BFECB17E786A10ABF9A19220DB82744A43BF5B4DE0FD8C54171EA498
-AD14E0972D6EA90B5CB9846354C855E2E13B369BCACBF8F1852CE60227AB27CC84B9D326
-68E851BCE4086558BA8106D9249C3785F3C59E43827307C87C72033501ED888E32325158
-879454289A07888F09EC7EF1D6F55B92363BC740E170085C4D16547007A66B6F0E1FDB4A
-4FDE032A497377F8B309B5803CB7B450A246A0CAFDB2F8CEE254EC5F6BC7C1EA38BFDD79
-268969FE9DEB9FD896E40E479222BD480EA1AD9E5E0EF7780D3E48D62219E5518499D46E
-DE92464609DCDD07B5C948792B71F1854C114259463E839A2DE74A11A7FD114EDE9329D9
-F1EE8BE5463AF8A04943BF77CF68B0F3CA2571D4BDC19B980F8919AFF6EC80758056F93C
-76758F0AB6313052355085DF8F0BD62C7380AA3D32102F48F4F84C153295AB27F3F55694
-E3C6339B3E34166DB450373B9F326A1E108ECD95B0887A4CB8C54A811B398C0B37289C81
-676CD8D528C75437BB2DA5C83C0FCDA94588BD785E4F800E87FDE1F277AFBC3ED0C5680B
-27DC483446A828114CC9B239D8D1C2D920CF149B097F9A78E35C0BAFA1B0AAE5730BA067
-B142087578ECDED1DD73E8541BACE5FB813E14483193467EF8585682295816C4E29E197E
-ED404E94340398A95A470A9E06BAB7BE0F5FB22338A833F9157594C5030639AE0E69894D
-49098CA950C39937BF17194797AAAB7E076A2087467A2D29683142D84B0810F1C603A95B
-3A81C3225003834CC446ED0944654805AAA164B088489DE9F71701AF4DA42C675388EA82
-CB8368EB21003C19AA278FC474731F2D74A008F24792F651F110E23EFCAC719E2E9C0481
-10968EB515AC09006E062EBDCECDB6D93772EAB20D7C105DB828A891F2711DB786B575ED
-484349390AB27A3A767D8092B7585C8CF32F5FDF2B9D78A27FB8E05C4C25D970602ACA43
-31FC692DC5C7F7C0FC5669DD8B150D7A4EB22218DFAA75E79263D106AE84AA8B573B722F
-BAF6D7F79097AE4007A3E519C107AD00F63069BCA7314000DFF2B06E4A9DC82FD10B27FA
-16775E13913364DA3020F7CDF748CFCEBB7117CC4251031F6795F4289C4A63088E985927
-B971471069135C4DC3BE1FC3912B02F933F26F72297FCBA9F21820493FB49A1A862991E6
-948A274C9C5954AA6BA752D4B4096C953E92D916369F9AD0DA5055521E3420ACAA45D436
-6D061135613BD328630FEDA1634FFCD8E2F23097218C2449520D986694B882081A791CB1
-78925494D19A7EC770AABFB956E69DAFCA7C72698AEB9DA304765F3D9E351022F02B0C37
-9E8897E597144B416A008212A0780DDFB9FC1D89063A05D216AFED272F8836E5356A8BCA
-818D7F491044995DBB9574BFA5B9E346409B9C4F768B59F654E9D607F3D5A078F1F5C0DA
-6EAA9123F369B3341B40BCBEF1EFD9D56DD82A15B550E105F03100B18C7647702879FE4C
-7D61243D5688B2979BF250CB1E594B1A2B9212EB957DBD3D41C0029A06C9BBC302F6E969
-4E998A090296411D7871E35D9B367C1191A3F9A638BDE0784508A7B4475F768C24BCAB2B
-AB375DA779894022D09EFC62788289D9E72B74F7C52F2AB389038D4BDD244E1CC79B01DF
-79E905BF50CFF6A5C06E68FD894BB1CB7E513B33F34400DC38EF8EF6E39268635F66CF70
-D5EF4EBE5D4F36430233785252376CE73CC9E6F83BEF01F6D1C5AAECB6848CA50996581D
-E069F69083ACF3090F29844580712073716A36392BB2FC1049EAA0E114976B098A344B66
-E0CCBDCE847B2D3B620DFFEF1ED2FC8FEB76D1766F76F3855F2C2DE7CF10F4DD4664B006
-2262CA279472C2FC0882A8F0B5A4DAE04D4293FA7E08D7639B3D7FCAEA1124A261BEA0C7
-560C6C52E61802C8502C66D4896EB0D8964E0ADE75283048DD0A1E243690D989A49FF16B
-33740C7A49B820032167807CF695F91C55C0BA6D6AE7FC7368885C674B8BF30931870677
-03A60AD58F42F6766DBE60A74B2C2E7CBCE56EE68DD0D269FDF5765AA414157BC63F5CB9
-123E0532224DEDFEA2E668F3875AE4C5260F93398EF86BD5867E0E18B497FD85C4FF4A4A
-3AADF54256544BCD7811B58134BFC41026132D8D30BF6903C2940157AF0568C9B6BB3009
-7577212F65BDEF06FF06760E38BD32AF61BCFA7E2324D68AB590F2E45A9761124928F6C5
-64BDDB6B51180CBF141F48EF9FF6DAAAFF2E379A2CCE80EC839A2EDB91827F9D1BA0AE40
-FD36DBA0E8ABCE564309F7DDAD96A5C7D87212F8D586F013ED189D6850322E4670CE2D07
-18CB688DAFCF1961FB0F4AFDA71382DE9CD976FC29B4CEBADDF073774D9B8AE9F2374C04
-F704860ACB17F8A16B4051EDBDA362CED1BE1BFD0700524188278DC8D6B22E0D585F26A7
-C4447076AE0998A76AECEB8454959F30BF5A4BEF1495D6549392AE39D97388B5AB14612A
-D6472A6B625134E17B540AC0D514C1239ECCAE5C75C9F7ECFDDDF66320D00052D874E6AB
-792FB1CF5F37BE8F34A14CFAF642917406C3C519EF56C92114E706BCA38731B52D68B9E1
-61BDADBD17A62D1074CBED9FC77F5558CD4970878E0349536745C3DDC0E6BB4CE878B2DF
-361B4DCDC5FDEBE160168F4D0DC81436B008714A2EA3BB569961F07BCDAE095A44F578AE
-6D0E6B5DC7CDD38FCC37177DF292411C89B4B64612C82029570C5A7B9B55F38E063BD3FD
-E00421B42FA18751B624D59495604A52A0DE27FEBBF7689E0DEA085841050DEFB7C9FA52
-D3515731A1BD61D4BF5E82841B221EF88D921E1EFF65F731948CA481E500A46E84487BE4
-E3F9DAC68918F117B77A2B5B68181C914FB764CC5876D2A42CFE47F045F72E5E443B4921
-D0D63323C748984F622F00F63C886F404C671119FEC90A598084F85B4866A5C79E987C5D
-BE5458A2A0FBCE0BA6ECB7433F9D75142DE04FBA357042FA9793BC9803E78E573A14E140
-BAE5E044DFB28D9BF672461BB3A3E50E1BFC83EDFC49A962DEA01047208F49C4CEC837A9
-D2318E35301D2B18DF1E8D828B58FCE8D5F1450E4CCF92BE5CA2B30516A4E585D6C83BF2
-80C7442A4F942584BCAF4C2CB5C2F56170817BF0535EBA87C75BDAA0190710A7E2D4029E
-CC54559EE6424E26F0FF8E1C2D3D012B3FAC397B1A446918F1D299A19B7A28C4D7F146F0
-CA4E29B96D275B54C16B1AC37FAF498462C7BA8D2C11291175FD05A5B3E08290EED58ACF
-680DB2202F229D7A69F982E644285FD1FAF320A0C88E35BEC245D249AFBCF6CAD552423B
-EA2AB070F314FB9B3EE02ACDE1FFA602D19E1805F27D1AFCD58D6D227EA765E6630149C9
-59ABDC3067CC97A797C555FDC59B9E4DE3B0681898C970609B1B6B15A15A65EEE2DEECE7
-2BEFB1E2C7A2BE2B3FF19B2CCAE4937DA4B593A60FBE0E0DF3925043E677D44B5FF7B42F
-73EB65150EC0533B294B675BD7D5CC6A7BB6A4F043FDF87940F8A8CD366BFC008273CDE7
-72EC15D7367371283EE5BC26CD6D46CE665661E16C691727CAB0833942367DE588BBF434
-06F4DD67988AD1C0D5C3D24DA8A833021F65E4E4393959434E03CCBBCC98699A8B1550E9
-C3192D3D3755F81C51E6CCF4C4E6575D9D4EA77261B987C8FC8CF67035D281D76041F70C
-2B2FDC8FCD2719A93FBEEEDF54685031ED2E960D2CCF2B5DB0840B2554B1723A703C41CA
-1E6169F96A1050CBA7A1554FF8A6D7E4BAB0B549664DB9B808FE7C5EA9ABA7B071E71125
-54D021BFF7345D1295333E876E28E14F2274CA0E5E4F3838B775890CC30909661D5B86CC
-4F681967BC8B5B9169C6D8F1B30ACB914E1140C6A5AC5B6855EE83BF9F8C5AC875D93BA4
-1C62B9D44917BD3B46F65B23FA3044FE5A6F812DF1E77139253576ABA80A57B38D315E82
-CE42DBB3BEFA62E400A194B5F59DCBFE915D3B5DC010B4DB140127BBF0195434F5A43957
-881974EAA69CCEB2E588DA124EC3F7CD00F6BB81AC494088F061065C204A851B8890A5F4
-EBE9D680DEC34FC853FBC85E20E3D9DDA86549FE11396BE73B2978AA8A4C80BA94788D8E
-D03D48C88C9E047CAB868D7DB3837EFD41267AFDF4808944506ED385295788CFBCBD89A9
-8DD84168F808E49BD346874FB281AC70FB138E100D914093C582E7C85F5EB6243A941DF8
-253B06BD01E8F75C693123BC20D17307B8E8839CDC5CD180FBBFAFFF702E0E9F6077237C
-F81EBE9737C296BD5180F40EB79A41BDEB37FB0FCBE238F1B86F45D8F25B39FD7DD4DE88
-4F1D9659A27AA3F25CE066D8D84FC09932B8B2D3BC89941CADBA33F7AA87ADC13453C674
-E8AF9CF633ACC730085EC2A843949B9E5BED6AC3ACAEE21D620495A0DC04260AE555D15B
-59143C29566D3331B26DD93469C682409BE8D37BC93424E115F7DCDC95EECD57953BBD28
-974F249FC98A73A384260A0568A69B382886A9AB09B6215E463319F8736865F700134E65
-1D78B9C819501DC01CE5C55A2D58F12D74988AF124CC6C7E213520C940F6F8CB4CDCA9A9
-DD2B569D06A967208EC37AD2F0BFBA7AB7DFE87AD7A5AF4B6E77E2C8F90C9A97D7EC58FD
-2D7ADB97CB6AB5189AB4E5C29A1044887CBF775E09348A2FF946E9D7FAB0A13D7405937A
-EA98600DF50B8FDB161DF14D091B58E925BF12EF3176F3EC504E1E75FB868CC46146389C
-23DBFE0F908356283136F4A2A3AF2C197997302BB3E545907C3295AC0FD06D2069D602DD
-052BFBEE41D7C926B303D4C1CB548EC9537A0F5FB5C31899FD160BD9EC390F2E0F6575AA
-032A78BFB98714D731B0804898F148ADF072B3E714009932FC8ADB363B18B2B15627D3DB
-B20DE94FE90B2CF68F85D7961E9035DE17AA5505254D50704903F28EF414D3CA13077AE5
-A0BEAF8F5E11FEF25C8484A34A1C39FA1E8CE92F42BEB83158BF26EB1944E6213E5B1531
-C7065B2F1449D3D444855727E691A501BE62F659322006FF9A22A5288260A785611791A4
-56E6915D344495E82303F067471E323B888A61ECFCEF90676C5F490A9DD6B6803C5789FC
-A7B0B7A1C7EA4BDEF4463CD5304C626E8D714619CBDD4C4EAE61EA1D2386642DD4DC77CF
-3351FA6ACEB1ECD55CE4308DFE9A09763EA427021D90972F2B8711A98C246FB448FB3FEB
-9887A101F53321CE647B3B9CD077A31915269E6D049E48305F3B2E84351FA7C2394520FA
-BD5EC8CDF9EFAA99573B1788E0C77FCA125F590C38939FDE67561BE1EB47575028ED1F4D
-27A7094B0500824F6FEF2710FCC5768F506616AEAE73807BE2ED2E0DD4C1A337993C9A62
-C7601418A586D038E886E1E22843C38A9F34845DF71AEC30726E9AD413A84081F1E31A53
-73D5CFDF816D8F6CCD90C2B438BBF715F0EDE86DC31341A0899CC6374C573FCF2AF67A47
-5371828212D9AA17F18FF25801F83D0AE19A4712E24C2C024A7505A2FB269EB3E7DDF59E
-7D95DAD916A5D35B7D16A82764DDBB3773CB0C6E3B1F2FDCC0553B26795C348B6C0DBFEA
-E7CA7B74D90257D8AF4F9D4F3C776D858CFD230781D2D6F28CEB29BF4EC4D413DB9B47DE
-E4B36F6CCE14C09A033D580D573C21B4A45DC172C0EA0DF41A0BD5CCCD6479166B30961E
-A2094DF2262D9E81465ED2C66BBF8B28CC4A25CB7C259BEE2C2F0991614D161B25D4635B
-C869B8008A2156BA56B48D6220DEBB6713A035003DEAA0160477F5BF7E336E90CCF67155
-0A55B6A015468E8A8FC8050C979178EBE2F7434E11E6A77E2F99A133F81FB87A75F42EC9
-AE9ED23A3DCB35312036CD819952BCA72525A39594C79C52568556C3A90E95C6E789A99B
-04348DFF652C9A178C5F88EE957D2D037FBCF584AB699B276AC228DB743B4C4548EB54EC
-38F6157163A870C35A4A7861ACC66118FD3EBAF43154C13A4FB8C52AFAF5F7FC67571D85
-F994E66BA3E8ADE5973138F61AFAC440C1EAD910FF8F79B11B73C697FF7D921266E48D51
-DA2FD0B438CCE7BFC1A1233FB8B5D812D8E18846B6401E9CB3A33C514693F19CC21A2500
-FCB0B0EF63EA74441BE9BB70477A63A641B639C54F93F4D4BB8E76D0E6F49D134FEC890A
-B6E118D754ECDB3FBAD7FD4493AD9415ED13C05A0FFD949F3363CD400C5E2B547F1CD6FF
-E503F2F4620579B69415F4BC356F943868F198B4243D250992B83BEBA3F07930F0F93366
-72AE171AD02B20606532EAA8F819AC8968430201EFF0FE42E8CAB1A10431FF0353827919
-847B2B20B0B60241ACD440C8917B4D0723D44A5FDBA7681E9541AB784B1A109473D3AAF2
-C035C27419CE30E5EE3C62F0EA884E4D4F164776DFF12D212629EA3AB2B103F000BE0A92
-298F4D73B79AF1929DF56280BAC6F03ED3F9DCFEF4B138F88758E14D4E90C95DBD9FFC40
-173E6F795689C812D24BB1791879326ABD3CD7FD2985FA950B73099AE1B86959E46C4709
-1278D31A41B159811140598A24861E34F2BF09ECE88BC36747DDD892AE3918C41A961D35
-28D8A8649E626FCDC9551E073855DBC34B57F6D198831CC189FE1C452FCAF8980998D621
-F31D2B9C7794DDC8B32FF3F8BE6934B03CE603020E7A37B51DB4E1FC33F625A8983B95C1
-853A1B1B4D4F4942562DB9A0FFAD4AD95A977DE81139687123317B757CE75ECDC8287609
-6D7797D50287BE38960290831474ACCE3F57676811A5DCEC78E91488C53167DA013E3797
-A9A8C05968C8888B2A55EF2032D66F6174B61CD24D0C62BC49250AE6D9B505371CB15160
-C591809EE7551D40D3CBF88D33F8A3A9412E6221D9E656D22083980999E405957E9D5A36
-64EF1F676EAAF5FA309D23C56C95541E7E51958358B436DC4CA542DF18398AB8E4D05FD2
-D24BC091DDD9F4F963A20791D88703056B5AAB84655B3739821EB288F1A1182F67154973
-AEE39C7E8CA894130CB0A9A811A1DE595BF12D04EA825F2A11A365CD1CA85D7C7F2DE801
-985F64094A9D168AE1F9CF287CE99031D0A1742DC08698572926219E0965501497C9D355
-6E9E32D23BD070BBBE905C512C864DCB8BD9E8AF46FF4CFDE9D86E8F34DECEDD99E8A745
-E72885340086FC17EBA499548D8C535CFAFB42D202DF4C91BF817BB786E577C7508CF99E
-A088D9B070F5A5201D23CD76C9DFF960F0A77EE8CC94FB5CDB8707F8A7420B7FC2AA40D0
-6E04F60C595DD66DD436A4E2BD606121E423E0177B17E73CDC168DDB7806294A1A2DC177
-87C4296B2BB174D55D9255EC44CF850A68DA75BE1B577E8DC80B715876712DF29CBFB81E
-80BE970CB01B9F8018C381EE021B57E01FD3A742CA387317883EB3F06FFA93E0473BDF27
-98D77D6B3A962CF9F42D181FB4AFE59DC053F2C059035649A646F22A927A4EFBA9E6D3A0
-2C7762AC72BC6827D49171F1F57C354FEE5E92E96A30156B8484BB3D9FE7A21B59008AB9
-9692940D35EDFC207A14D20D2FE364ED08F54A255D1F434B432F00C67863997266F64862
-D92AF31C3C7961692F6952157C8922AC8C8061E5CE8E4FE5E024C1324140354E9DC3A768
-B2092B0184FC1A46FAE459AFBC0069ED4C2CEE34ED7D756D65A7474B28FE5F56F6E69150
-6EA2272C75943E3CC9CE5FEB2346AA91136F5B306805EC51D6BC12E5D557F1F290E14CC6
-043CA5CD3D0EF095D4E62BF2068072ED630BF1451B8A35DB5783B6496DA31E98129FB96E
-02175D288D2854C505E2403AC9AE94145AF6D327270DB865EFF70867894567B87FF7E5D0
-16848740741342E871BBD632ECF7673E1C3ED00255BB34A67D709E16EA1E0BD24F6510CC
-C1097402E3994605B5CAD28A48DE6F37787A77488D8C62614F5FC3340E952066B61C9DE5
-1EAE3FBAD5D8B5AC64F8B261BBF06FC677A28EB58F4C8A08A136AF3FE387E24E6B100774
-24D077650EC787BC8498BE6D7A1DB54A690C768825ED63AC24E62E40D5CCB2AD05A2675B
-301C895800F08F936C7175F6BB3A5CBB86536D5EF41B111F3EBAD9769324DA1D88C4E835
-223D976FBE5B9DA39161F6F3A7BA02031BC20EE1143E1FA73599CD30CD43F0552510F0A3
-67E8E0963D12B74C429E15BE22C0AAC2717AAF021D437A784CCFA60E8BE2ECBCD962B1BB
-EC8CAD0439CDB73131D32363354CB9BBAE21B01A27830971D1D7B842E3145D5A400BAEE3
-76C639A3B5D2AD8D51B75F7FA86465DE401BB13FDE3407A093479B87B0E3B2BDF33E9569
-6501ABCD07786B1ECF72DA8083FA1D79873753B466A0423F1B504236B95C497F39F5D5A0
-0417B3D8AF9721E5F3B5ED2DFE47D9BD0930F4E9234F181CD24394891F7B554766BFEFE3
-CB4533E3D01DD656FBE2C170B82393C0F3BBCE9367C9D5735AF8317450C7F4B163CE95F2
-6F2F7DB25CD88EE9B01716DBF1FFDA7FF16D54EA39841BFD3EDAF3684D2298ED45C8486A
-F5014230F331FCFB320D28D5A1A17D02D5593538946C8669B346F4693FADAC663FC608C6
-E091F481E1C39749D26AA37062D7D94115152B214506B91617E829833AE67807905C70A6
-8412293287EEB2286A27DC7D7B9AF75FD4E32DAA4641EFFA2A79A04DA0EFF958F411890C
-A50246E5A1F53315ACE19B22C9C14B897272237374BDA4221E3FD18A7D4E26A09DE3D246
-D604FA90092F188E4D2C6C0144E6D49DE9BC8ED4561B9CD8EE8D308EAD97B6150056AC9B
-9551CDC472A642A9DA02BAC20EC5B57698D68ABD0ABF1B0FB5231479D72CF429C39DB34E
-A75AB17BA21AB31E9DE9E2584C2EEA8BDCA322F0D03291CEFFF011843BD70C43F49551B9
-B10DA24AFC0B79A87B6F493EF73E690A4A705DC8CDE5E2602EC6E99168357A69816EA5A4
-5945A242CC85BF5E7B665DB8276C11483E879A1F9A59E4FC8D6B700519ADD96909BC3EB0
-DDABA0BA75AE8809B6B802FA830E63583622109614A63B928AFE297D434A33BD0A12ED89
-0C15CAD72DBFA7EB5F30B12077EF47A6EC309ED1009141176F7932955588C053DF307C96
-B719564855ACC024859429DCF8DDFB3F7ADE1BD65C9B6A97BF5A56FAE58F41BE9ACC6AAA
-B0356F58900CF66FBAB2E2439C031103D8600FCCB20D209DD510DFE90716F654C539D349
-99130FA43BABF53F8AE298F10CB073B797AA50E00FE9F88D9337CAC4DBB0FE101C28283E
-6D4DB8FAE80B4A998525F647E7023AC5B9BAC987D5A9233541214BF0DCCE6C524BC1C56A
-ED18B4F76F8010AEB8E1024082D22AB60BD9F338AF6228A09E7DFA8438F2ACC066D2CCD8
-853062A5818DA00F1747B6BAB166F40D7639DE8CA985C2808B0010608FC7923C7771F728
-FDAFB1F118E2640C2C42301C465F40817C13E20448F16AC7D42E39FBE359F744C12DC67E
-99A4B92D9691E1F6D2096F11FE4F017A4C2B22E4C550DD25E3E31E8531CE8DE879451600
-4C9236E36E8009F5706C8BEE72F007538DA5918999B97C386DD6D62F7B433DD99B74B490
-263C2AA2D059D2DE95CC604A5442116DAE3264568FFE88A9B1E4801052084DC11101EB03
-E514E220E7BA851FDB7B5C8CF635B2496FF38CE6DAA23FEFE02C25B520473E5E07EB9354
-EC2CB7A7A75FEE158D51A7CBE8EC36DFCD038BC52E9FA6483A5F4815C132B2C40544B08D
-8C8A80B1916609636C2B53FE27E2B4715852A6F035C139F9EFA33ABBA2550B8CEB8F9C0B
-EF80BF543D1745FA88347997D01BEE8A8E2FD52FC40D3BFD3D438FCFA1CC5B4082ADB51A
-5EBE54EE1C95DDAF8E5FF6FCC98C3336A292A0FA05CB5B48C122D6A3330898979AAD071A
-4BAC19B03B03CBA077252506F8E68EBF004B962BB85B15A87FE5497E8F2E208117834E48
-62EBA7AEFBA9A8997F71142BD6F6550F3BB358738B182A9CDD411159DA92B0B3E49E4226
-627A196036ABEED57F176C72B30AE16C1C01B330577FE8FB0C0F7E09BF821BFB4F056A8C
-B52D5797C0FA48A9625292440F76387FFF46837A2445688696830AF32EACB2B6096367EB
-A8C8C42341D2F3EB5D5190D9F7241FB1EC16DF0D6D40FABACD1D7E99EEF4AD6118696165
-3354A8DE539F92DD3426A196A7DC33F92B170D57E48AA80902D9F31AC582A4B569D15C86
-A8E6FC94D75970BC6BCDF2C77318B1DBCC7E398B48FAC8D2E392E93CC37F0BE6186DD645
-EB077151C6F58EE8203B697010EFCA123FA904A4EA80388FFD88C126AF7F6656E66B5417
-8134B77DB4E0797C9213483E787939113C39215FB9F5B3B141512D962C500863C2F362C2
-3B73E9AB89571A003E413435A02FA3569228CC6C0D5EDED34373FC7EBDA1200537C1B72E
-9FAEC2E74E5E6C3E13CEF1B8F332E7CE6CBDC4A17EB9CC265638AE57E28E34CE99CB44C4
-AF96FE97893390FF2583486F7D8B0B2D9B13A8DC0551E8AB85046C9E4091B6D5D5B193F8
-3EB3E2131A6EC9DCC9DE88F4B64E45AE7B5B6CF10D4F812C9C784BF65FD9E942951AD808
-FC9F010A0F45723593A354E578F8FEB67978485F40620C83EEF210B6678CF323437DDC88
-5436567D76EEF3A83448EA76A3306CDE9D5045FB2BCAC94A7A58B21C0166D5C4339566C4
-203535359326524E7AE47FD406959610B24FE98ACE978A82B5F644B112EF6A289C018244
-85AEF2D0C38178851D0D5A6612C861AB52B46597558EE8E588F95BC8D657B02AADE2AA25
-9BDDA214A736CB417F9564699D293A98C7A7615F47806B5424CD1FB7292AD1F2D7DF6837
-675AD97FDCFA6825F4E22A4C0930299B0CCF9BCC67806E4E6A8EEDF449D96634C19EAA00
-912240EADD63C8FB02A227B987A17964F5C867079495B383FAE560309FABE8BBA46C3F85
-E766A98E5B8A980DF3205AFEB8416B4610E6853409B658DE2A7A3C2C6A292FF33A46D9C0
-E34FABFD57E19C89A8F88D8C4798A96F4C8C3655808FF336C7DB56F52E0C6AC761DC0E0B
-39E33065A02A8812D91AD303F3DA2C1D61913C76F1D2DE272503B223ED71DF65A5168433
-A7BB3C3547A7E6A5A190F200992B73151BB9EE0D8D55F9AAB9D2E73677D3AD16D20D553A
-D7A7A1668B19F58E7BB9A5CF973A861645016DC2D07A39D5430D6D1644B88035B8575DDA
-D2DB0E6C040FAD93BD0B8486715821F2D47814EBC7EACE1A5CB5D3A2E19352EEE008F258
-6192627BD0B3033199DACE43803176F7A19946985CF975DD1BB313DC58DDB80A2671637F
-E89D6354DDE8F8825550F1F616DAFCE19CFA095A36BC49B8437C00DB2DFF9B82ED7226A8
-06020769A534706BD6180DDBEDEA953C98D639FBC8130732B42F0C512237F541ECD03603
-8EC9F5BEC45B45F87A324B60E13280A18A2F6F333C34CC254464F774DD53906B7FBC79C1
-CA8CABD58310D272CB49F4B3C83EF616A9743CE5C56BF52B00776EE469A45B18B8457CE9
-DEA7CD6378C87304224B578E213AD3D9E5FF6E642BEFBD59162DF73F0B631C8831132284
-39374839A1DBA4C4B4C4E30B7D411B5247F258F18A8723659A17A52F8194FD810318B32E
-19DC9B355C028E98A36545D65073D0F8F4DFF0F9637C6F599C2F883B10FADE5077B49257
-F16D0ABC0DDD9356F6B10FCB64D6B6ED9888E0312B092DC9D154CE76AC14D14DB564EF77
-0EB48216D431D21672D50AA13307610DA45B3AC8FA46EE7F61D0C643E53B65CC659E91A6
-71BF448EF3FAD8D18794B383523AE67CE1903510BBE2B2D5CC5D29F3DAFF71A54E582E22
-420D62CD7CC8A4E093207432EE4FD0FA3B2E72E5E4E62B450C557BFD0A83C540C1FE9E80
-C62D150ACC0CBCE73BE88F13D7E4D9A3791C806B38D12315C043CC022AC8CD3C61331345
-5D19B2036306F132C074043CBFED8F1C1F60C74F074708D3755A6F28628B31C0D8068669
-C8BB86C6412F32C8D6772CFCEA101D1ECC32AEEBDBE423A7DE28BE36D54D61CED5FABCF2
-F0E731800ABB9B10E413129331BC441F80A6617F9A5E551CB4BF74893227C7D9DF21DC11
-6C7E796F8ADEB43D2D223B4647DC5D53E65786C5A0DE8F3CD5BC6662B051291E36D47414
-F94D999AD31C1D6916EB723436B41A72844806C0A8D4BA41A04F1848DF180A3C3E27D8BC
-961FC8509CB3D4069B33C5E01F3C0B04D55AF2EC4CFC4DD7EEC9AC9426CC907DC70D9EC4
-E428D30D8B28A27EF202E3788C5D14B0AF13D750EB7A8C5C4E5141AB5A477BD660753B64
-EF5C871681283A0DA5AD98DB70A90D72BFDCA0E18450D3091EFAEBAD23EDECF3F016BCF3
-BFBF286FD52B5D38D3D02E8161F8485D3B9B78C485A196C5CA052DFF546E4CAAAA9F9F8D
-925E6F4D842B599E1A482C92F8CC86789F192987C3750771A11076C35415FEA472B29595
-9A437980A15C2136D26C83DA0AD724B1E961251F80B9D751A89A004DBD66C2540F758AE9
-A8D9A87A40CEC4A048AD21AAB511A630EE7C6DB0BFC5516B18140B0FB30CCD128475CF08
-1B10D9E5DED0BE1ED477142BAE698358D9FE9090CF0DE3FFF6692A18E2AEFEE40CF40B0C
-AC0CBFAFD61CA62667B8C6AF75F2C8C610189522E5C334C3EE4C5949629430D193846DB1
-3F2F49284722C3D93FA7553DB263182610D960D1154CE3E72E93D477003E26405DF8457E
-919785328FD7A0EC5E75FEA4A69A4B83A0B1BF8A257C95DB99ACE02E4E1AB1C7381F70EE
-AFF4424E5DBC89F8744C31CEF9E39CBE52AE7B222C3003ECE5CDB70CBC5705BF14A8DD96
-858B2D91BCD9048CF5499B557B47EC7EAD4F691D9C0ACB5AD0EDD67F18D0C60BCC5B26ED
-977B54870AD334A5BC6FE43C10EFC67449DD1EE7E447AAEA62CBBD3708A5C53B50D9A422
-D90DED5D2DE9496DCBA55431336DD959C87DB3C827D74142F295A7FA2AFF3FF16B6B3A19
-1947BEB998BFBA0058C8A0C851E677368674FE190B2498042A1091F5DE30DF16380DD89D
-0F8D076F0AEA1FC15F065FB5F094FD7DCB9BEA369B473A796441BB35C3F7D083CDBA9263
-3AECE8EE5EA3A475C84552463F714F38F73B83ACD3DC7FDC9731E55C25735B62EC439FD7
-421236A8ABF2E15F572D93F863CABB5104F2F71C5CD8360ED6A16F0EA6E20965EFFFAB3B
-9AE5935C206A074C7C3A21F8B50E6E19950DC462F06515B3271974877B0C33B7D2F735C1
-06597443E2C5421CAE134AF0E035786DE9969914E2F0B8982F9496D64DBFE6DDD678B875
-9825EA82937D32C5D3DF19C9F35700C733C65D3AE498C2039D41BBDE6CE9D975E753A022
-67E5354D1739005A656DEA77ECEEAD9D8C3B85512D8BF6B1B5ABD84B6D05CAF87B254ACC
-3F650BEA548DC6EF6B1467BEA6E424945B7A6656F5DBC695D3E5434E0B88E5BE68B5BDEA
-9F91337F7A74A5E7AECF9EC30AA070AC66E8B1D8AA70408B0F11683BBDE539EE5DBF9D32
-9B1A1C8CC14407B0FD0BC4E282D2BB466E3CFCB7E2E375A0DD49FEC7A0ED1CB15EBCF2E7
-F96F1094AA840E618E69EC295ACE5999BE90F77C523822EF0C15585CD816D7918D2AB0DB
-65CB72F1AB5CE5625C75B493E801D7A0DEE575BCF53E4F0BAA2290275470C5F6B49BCF03
-E4E8E31CE64D3A6A6C42ECE25B6BE2D2D8D8A821C4C727806944639CB4DC84777A2CE101
-8CE5EE0470D863ACDBA2B69B48EC7EBB23BC73760396F13BF6A60BB6D664D7B553C2AE9F
-32EE16F06A114A3BC7289747FC6D85BA0332D23EC947B25D6C10750A83027A745C1737AF
-E9BBDB080BEE663646BE3894B184F9B892CA8EF2B3AC255DD53388D87859F9EAF8BC82CD
-B12EE266A079F78EA317C41C505CDFA41B1CDD8A63B884DE1EEFDA7B7DB1EF77D0E98742
-79C50B55DA61FF95BFA7076ADF6BD3586E2120666BBCC3E431CBB19963982E50B9B1F375
-55AD6DA4AB02B305E074972C7961D66C1D1327AB93813F7A7C6C860A81281795033C8AD2
-8FD44E1AF0668D8ED469DC184B612DAFC1529F3AE5D8420B703821A559D58D5C574C15F4
-9C6CB20FCA5AF432FAF63E73F23638129D3E80509C0BE0034458DDE29F5C88807FE1C90E
-5BAC2CFD565D686945583260334165D27B08EF3C7839396EE421686BBFF67996E5FC31F7
-C4C96155412C4E51D5B6C97F6C47AE74BE984B347222CAD8B76EF218F34CB3BDCDBFF446
-C8E52F3E2A121903E260C844B093439194BD3078E158273B28A7674F0528C9306CD09C1F
-8D612881D46B8D4AA4C33206EEF23F0DF150AB91D4EF3A55120E3CABF490A2FDC34F85DE
-0B4C3E712D3DE425B3B0B5053CCF7729D8FF20207EE09D7ECA11A2685FD4AAE6275B9C0A
-E26543A3F0C826FBAB318690FCB471623009FC751E656D31538951000A413132B4C95E2A
-75C56BAD12A492F5F44C14016CE7751831A892BAF050422E459E71A614409DFF87BEAF8E
-9D61471C279C9B2981C3A1D119678516111B965A060822114F9CDA77DF46059D434C6A0D
-D4E57EACFDB4560FD29807C7160051BB778CDD807B3602F6CA02F699E8A42C7A6143B149
-2E78C8796116ACC803B5CEB308B9F8E9F11DCE649719618A9EF689919605EE6FA001E178
-4A008D1D5AA354777566B4F5D496ED915709E2FB39688745DFCC3AEB5D520B77C8066429
-6C67D95C50FB86B9DFBEBA2AD8234EA2C967A02B72DFA5BEA5BEB8DB4A30428FAC98FB5E
-6FBECB93EABA637684F4A82447EC00D422DB058D521299658F7D392FC1B0130A9B995477
-7FC2011549660457BA46B01E4D7AD51D1829BBD0C80576E893816FF1355C006FD22876AE
-654B0D851931E1BF3E80090B762846ADC7EFE333D7C6D529D6B50FA87347EB35438B18B6
-DAB4B45CD3202370F744013D15C01AF637A755734706E667AFF3A498F437465B45255BFE
-C519F8BF9FC37A61707A8D70F26AC6C90C73AC9CBE1A2C7F9D607BFDC999B784C7D15BAD
-C0CED80AEE87A20D3CD2C57834020350B4310B17E62B192D376EF6947C8EE477331DEA66
-CCF090F1787B19397BD8129449C47D5E03EEF8D4B8238105D626115DAE76062AB6A01E4A
-874EE181607F505FAEB9F8743CC79A0C674B8E5BD9EB8D02A5653C8AD1E6CD5FCBE83D12
-A64399F646860E564F1E118C5F18ED59BE775F93A3CDD8F1D4630A48A43C0F2AC8DA9A45
-7562CC56B57A802A3F8543BED0A96363529DD39675BFF7DF6F532D190BFD5C6B8AB3988D
-6D375A117DA0C00AA1C9AB60C5023D52793CAF943B7318DB12377D962E53DB536BE2A1B3
-0199D481CB100B3DFC30F3D01EC4EB8C9CA7CE497440C54A12F1EFA9B50ECF7C6AC073F5
-12AC731C94BD7C24209A1BD1340DD6CA5C787E42DC97E23B125B786D4AA2B149D05EA6AA
-891AE6BA361D1A42665E123EFABCCE667BD894ED319B8CA398EB6A5E213F813FCC912F54
-205D51716450E1744CB2A5A8612EBDE46F35257AAE6D3AEC55D65E07C50736AB52295D2F
-5FF8D43AF818B05071354B5A462DCA72E6A5E482A807802A1DC14132E50425E75C6CB612
-F558228B7659A6CC4F2BEE307FFA31A861D88C994C650DD0F1845A26EF0B8D975B9E2120
-D6C669DE20802B62F23867D708EE1FF1EA35CCD53F5CAEB8EDA12E12A58E9F90D150A692
-194564E1DBB173B1B3AE5795460A5D1204F1C02A960659A0C0063A7D5E7497A581B0972B
-B235C90F7D2F89D6F1279AC5A0A15DCDC5B1391F5E5C94AA03320AFB4895AC4F31F28C29
-3D9F6790243F7070E0AE21864C7A42129AC0EEADAD9D11CD447C307ED64DB0BB41BC3BDE
-C9EDA6638EFDBA140CA92B7AD459482B2F573E29B03381A23176CEC332BBD7219231554D
-C5FE2C2C56676A137945671D5F55E080EF0306681C44B994A5FEB444A672512C424991FE
-6D8D33D099D464B44C8365D37CCF13792CD726375A5DA9CFFB56A5628FD564DCC124D2DC
-4FC1E2AC8C0CD8DBA8E27138B3B5DBF786AFF59096E52C999D6A26C5637F277FFEEF34F1
-841A3420594149463AF075107E62315AA0B2D78CCF9A72D1EB9CFD1E7900B0CF877BE2F1
-C7A0B60A1D995F2C5C37F7EDCD09998E7B7E3E2A2C90D4AF8F9DB1ED529B9C3DFA0531A4
-9359BD1C4BF3B82A095562D38C7F15C3FDAF09BC39B670A529B9B7EDA1683D2410856031
-5737EAEAD181EB46EC51BAB3FE026E532E65F7E76A368C7100DD7AE43F881B45DE624CAB
-E5AEE7D7EAE8CE12230A0336A098760C71E0003321B6F512527AA59726B249BA92A18C1F
-1508D2E3881C1E004B830F9F24A706153F4B4565AB16978D608184FE0FCF816F567911F0
-9BFB10C7FCFE2CDE6ABC0C83657809FB8BE214E5570ACA4CB31226DF4F590BC37EAC8226
-DDFD5DF293A15CEDA79699E59CE459F1BFC0B08DA76C1234F996BF4B2B345A18B1AEBC38
-C04218864D6A7ED071173DB25DC27B8FA8A6DA897D83085CDDD24B3F3F1CF936C74B61F8
-020620AA9114411700938AB9E9269C13F97723E29E86EB5F14D1E86D15E8C8D678EC3CFF
-DA4577F97BE67A8D3F60F56CDF929524E00A400C35BF46F64134324791FCD6DFB72DA7E7
-8B7EAF388F8D3C860E8E295867BD9032E74239F627DC645D0F2E99C6F56E3DD919447CE5
-CD3126F491688A53F54FACAAE5A14C796CD964F693C8556103BF132E93E2D9816282CD3F
-32B84CA3798DD4675F6CC06E0A26C443E8CC9AC465E57DBBEE15BB206798C8ABAE8BF0F5
-DF4F029FAD45DD95671892AA63338E63779E321AC933FA3FFC368412BD62387E45BF0808
-7C3594EA7E6628BF2921F2AD33C4A7AB22DD7EE3272150D07ED085C5EEF85F5CF78FC9B1
-468D9698273BCBF896DA6CD43E088F7AF97AD83BF300817D35F93D74FF285EB6ECB223C3
-9368103876A36B5D84C099136868530F1DCDA96B56560E6B0B18D2C66C7FED082850CA25
-E7947934A1B66176B5C332CB1DA71B6D49754A06873F8C37C2C64A16442F0D983F6B989D
-8153F027A9C8FED72FBB1C2A7A56361BE460D85338E47D0DD878336B040E685C48993D7F
-B6B12CEA753190E47BDE31F458FC098A286EE4EF94A0804EEF0324F92643B4EB5FF1767F
-9D0A99B59B1CEAA7FCB5CF1AE8B5E70E3949B085287554E8BB456CBA6EAC53040C589860
-195605D082EBF7E46BC4A7D2284C6518D8F49D524712B15981CBEE064FF6BFAA6BE46386
-BB84F6C20D8D0EC6A18A6B74C30A4BCB0F2B81F100A6E78DC4EBA3E6B9788F424467BCCF
-FD6C58F5DA79A9691CB6D74DCD537AA085D385318AD6EC7C2F04567BF97EC15A73E963F5
-37CE3F70338D0E3994E0C9412702FD7BAEEE2E7A35A65E57FECD397D3EE54C863E641E6E
-AC90E91A8C0F00D839B5ED9D9B2D7D78088907ED499480BB50EB9EC1FC3608A8FC1A20D6
-0C1F86BB28318444201E7E9F0D812D71B125B467BFBACBEFE734A7635786A7AB03AECF40
-AC5A6262239EF8E0F538231D2ECCC1720CD40D56CDAF38AFC197BDB28AFC98F57FC9588A
-F65EE7268ECB44AEC3F5DA1453F0B4021BDB7D7829043C2B1D55BDDCF4687FF7D5092824
-30AC8A512FCD528156758D24318A9CF77678F040D05FA800B1910B33B7E12213008CCE3D
-B9A5E90F708B26AD23F82CF3088D030B0559A6598FCEA3392073693C64AD3BFEFF0A05C1
-C9BBADB073A756AF42D91F8D88F0839E32C317319AB514A6A24CED9082F6473E2B983EEA
-6724C8D82ED94A9A2BC4F375DFD2C84CCF06F9EBEFC67D357441CD976F0CBAA0C8BC2DED
-B2AD5B5CC894AA880A164B68E2F5031566D8785EB72CB183F23AABFED617A6A9B08F4B8A
-203D029CC05C13537C2FD2C98FF701CBB7FCDCFFF2DD7C1B152D68FD70E9F15ABB7634A4
-CC1DD8BA1F5EE887060F223B792F7D204A338B8A3526841D45D872DF6DC3A9073E4A828F
-B70D993043F881AA83A543EB448B726197AEAC9A78CD6456035E5DCACA540D559601B595
-580EAAB91811B756A069A6EBCB887120F245D9CC70C730BF1F7990D119BA7CB75B5278D9
-045BCACF83947457578586A93E32B03E95942B3C036A21DAF4C6F0C5852EB71499C3B9FD
-EDF36F528E9A0124992798C4BCED2711E4A2BEDA7A7FEA0652962B4448818A141E81BDF1
-2F11F423BF5675CF46B506DBC8FF2C4695FD27FEC069DF0A43B7136791E0A3782FC4C296
-9E06336C4F6109809F6ED605A56D1330046925FB5F62032E0E4E2C3FED27427C8B766C2D
-26738A0AC701E7FD89EA4C9136E5F82306DB83E2E9C2B0CFADCE967B2A8EBCEBD67544A1
-89614D6B61E9C77AA77E3E739C03D593E00B07EA925F6321FF5B8F3C0FDBC3948C6D649D
-96529559EDDFF57ECA28B2C0FE35D90D010C10E6E1B826CA23415E17ED863ED5715E7B4C
-075F0E1806E51DB91E55AC8B64DB7731E8A33C1E8F5C8FBE17309859E5DCB58D10D3F658
-05923AFEC306B4359EC6A6E8F9DE3500799B7C7B322204AE472ABC69EFC886C11DE790E3
-603304713B3312C9CFC76ED0E421E2A034CED3E88D53A8D80A3F28F2CCB9E3358B152EF4
-421447CAB89C002C355274B50ADBA185A44A746FA19D7D481F7CB902E73E4AD2A74A1CE6
-3D9978AC3BD8B0DFD03E09425481F63EE2CDAB4AE17CD75A3AB05F9246B3DDC3E0AF1D9E
-CBB521D540C01CC26CA6F3AA5BB49C804D312BA93E92CF11F6BBAC18A0EF051C52C41191
-8C01263AB5901221AE0F1BA6C924B8F937B49985E6D5C17B54E39E649E6D023F0AA42BC1
-D75A384B05519BB0E4118DEB70D272542D60E64957B749BB76016A1D356C681227228948
-5D89E1CD945BF9DCB49A5B831C082755540A032087A2ED82D166E292303CB1180C49E739
-5E403D0C5E6931ED6E36B52FAFE37CDAE28183F15C8AFE3DCCFD9A48A4BC21669E4D3667
-0DF71C4E6087F5B3ED2FA7AE8B5AAEF2A27F063332527B09D712CA18521744D89F90E9D1
-3BCD7EB332AD7BA8055BB8A859C4C16591FC3CE1474E260A74E3160DE648F815383B0310
-DB2FB9A4587FE13A4E909A83594584CFD382F05EAF8654DF5B44E39496290A7EABC36381
-8978F6C05B5EB3838572EB0C64C1D81E9AA0906FCD84E62B68E2D3BA876D536E7794067C
-9C2370FF2E2E46004062B260CBFC29CB5FA0219C2EC6C8AB8CC4418ED8FDDE6747F8EFA1
-76A6C6D1276845AEC38B41EAB3727BBA0462E2E809D76E0B5BCAC08FED585BA6E5D8D0AA
-3A36FEE108F55C23879B62C0A425F176E3C8C9031BD8B3E1B6C3D8DC383FDE0E36B33901
-50296F6869A4FC7E095517136B547295D1DEBFA341EBAEF34A179B070EEB60AA91839D97
-AA51768827E4A1CD55C5303D1D99341537B13FACB6F490072D8139BBB060FA1A02C93D3E
-08888E313859B439AF27A3E5E7709BDA43F851D13AB5B2EF395A931A99D0A2FD8C6088FB
-33D318D8EE1F7C7EE2D2199A638E3858EEA06B3A167F69FA5AABEE4558773A75610E7E30
-F3062576A2A7FD3E9F08FDAE5F1931A7FAEF85496071AF8E16AEE74C0A756927E0720708
-7846DF0F9A7C5444D007729FB69042683DFD7DB0078199812F85FC9DFF1E45C77C104F91
-37787E3867D5AC37FD7E86D52AC67672D89F04782F980EE918C6152DFE7657C6798557CD
-ABC854E81C980DE5AAD8E0BC259247F73B92572973D482BA7E4F619F50B0DC247ADD0997
-CE4E98A71E4A041F46CE605D32AD047D2E4260033C3FBF80525396507815EEF46960A904
-1B83CF32AFF7712BE97D636B4162190F2D13CACEC58BB25E89496122D23CFA6676E790CC
-29F48483788C724531BB3EDBD557950162907B68541B51ED6DD74C06C2BFD5346CC819CC
-8CD654F17C9E798168C90DDEEE78B6AE37709D35923AAC0EF066146D93C8179832E1A7F0
-44C4637E560853D227D3A14EA62E2428567E0CEBCAA3C43B0977DA30251BCB74E445E981
-6521CF8F1955A9BF920121E4FFD1E022FF42581269DAEEE779282512DD46BDA9F7BCCFEA
-77886D52E0B6A9C64A37AE0564DD09B4868BD1C6860FBFBA2FF022C291AAF670DB7AC717
-D82F709B07DABA0158FA67C0BC0DE958FDA1A63ABD29864C005FFA7FDCF73AFFA597D16D
-51A1E16FED7C1E8DB6972353AE498A9F1B0AC3B778675312C7F01A7533E1A53F31964A3D
-372A140EAACBBF7EEF600F69D8C466905CC21CFD1D1EB70B2469788BCF405ED84412A5AD
-04AE871A79DEE0797426510EA8F790993002857BF2BD33963EC10B329A596226AAD8745E
-EEC9A84BDF4793293D941756C6A582D273467EE704A878C40A1F8E6F4130DBEE6E484582
-4B78AEA786EEDF2E119F0D563C969A64B29F13327C52D03A16CD690341B2E0CA3B622F15
-ECC91DE30A47C82390F5EC38D3A52C24D3F4ED18E8733C1635C25854F05C394686913404
-E6A11B597213B0D506EC7EF6B9A6F4755B5A71099AD0FC9FF11244D70A5B987603F59AC2
-A01F251D9CC39F24FB322ED3FE0A0014A412D7C9A94088C8C2FC99657219FC27B299FBC5
-4E08F729AA6C013BB76CD320B23DDE9D9D9B78A34E6424BA1EB1C95B5005A53F90D3A2FC
-DED3AB361A9388D2EE3FF47F4F9BFB29A1375351FDA929DE5A89346D7BDE86588EA5F95C
-CD052B256653437D4B9F98F82A4E9D860B9E6CF4616E80E743936059A3ECEE59298A2CA7
-D83610215D893D065D73A0079E6BA899593C2D46866E980DC125DDA38519F181E20B026F
-86B1CC7ED4C00C954146B530CAA58C3C52BE08BCD25DE61A6D7F8BF7C7D1E325C4D2D610
-169CCA13C7AFFA18DD3907C06A0FFCC09C7033B9B721871E31E4A25DFF7FC74899E1886D
-8F3BD163AD7C34FB6A948C0FF667D97C8E918D8E663490CC7BB6AAF3689689725C07569B
-D17661CB0990AF49011A3C324CA124C4CF555C021041B7D301FAB7D36518B34771E424AD
-B62E962D8B2C46863DB108E1316AC529A404741DCB27DF4A081965B96ECB7C4564550BE7
-78629AD19568AB733BA2A1599F585BF5132B5B5E59F51BCF1C284AC371799C898950667B
-44E71E5FC7E221C927DA70742469E3BFC1813CF5EAE32F109A87BB258438A6B744D3D642
-5B3C42DC2C542A8382C3B7BE8A5C43DE7E4A123D4130D3ABF3E95568DE13C5A5421352A3
-5A083A98EE09EB0EC99C0C33EC688D2573E9969AE74329D3D6E925C568A5BE0811C333C3
-372551F2A32BD9E0FCE86D3D2E83379BD55634101F863DE3407564E3A1A73D8572341037
-A6E3AAFA61F7ACCAD510F7C17261408E8BCF0AA72436BCF21F69EF6D3128CDFF321A54BA
-3014DBB6E3354197EA88BD4AB5EF052589E3635601EE76508DADC4E2DDD9B9710CD11963
-B8B611C5D089CF34D6DB9E94FA9696EBDFE31DA2AC089FB93B8F5CB31C301607F29494E7
-490278F0E378BFD712EA4AA99234E3205D0F4E0F0705F352B62574B884E571183CF1D44F
-C911A617AA1F23AC0BBE3E088A84D04AC51349E3E92ED227268DCB4DDA76B2DE3B473331
-91087C2A70BC8B0554C3F21D5B5A303F6FD58CD4343F0EB68087715D0086C3938DFF43E6
-92F01DB8319C4C2DB1E2D0B41117431086D4C51B010420F52C94C4B2040FA0FF2ACC4A23
-8C44EDE007896F73FD591E491C9359598F5786978E481141D70BD1FF759CE62EDE7648C2
-9E1C59FA4F7F61A2ED8ADF9E4654F1BF161D7E19FD0CA8307993F2FCDB726E4C92412D6C
-F260767375AD211B46CDF539D66B2CAD7410FEF73A289812B6DFE69F6E6F24A3E66653E6
-C1BC17BA415FDA7E4FD466433CF5AE80827D928EE9A2B4FFE178E37B01E8AF99A8A26490
-0AB2637E25B3B5F4CD857E7CDC2F589CCF52D546F217D9B48C894E11F57BCFD6B6CC54A9
-B2242A8A39FEC8578F3F7D9B726F977F78103E4C2429A3C9B96372F3622D7C6FAD2C660C
-FC73A3BB8539853BB061AB6F1EF3E6447983CCC1131276693F0BC5C2938DDE7864776E92
-8C2AF847D27FACFB07656A2DCDA533FF094927D920E227E9618A47E949E20A61D97412BF
-273AFB50BF67F54190D982231FEFD98ABB2676E59E106F5E3945BB9739A87DB7E0091FCE
-97F86052A8C9E9A49753E66CC322C3051FA489096E2FA9C2E5DF52E439EED2B9D1A8D918
-E19A9C8F97FDC6B9A8982A1AFFAAC4E50899661D2BF6EE5EA6F1FF825114A1B3316BEC52
-EC64416C7161B920D7DE9C339DE346A2BE6792F82CBCFCE4FEE70F04DAAFE5FD13778B1E
-D7F5F6BBC097FDCADD6808536570ACCCF31DEBCAAE581CE6D4C6364E58665C530026FD50
-1FC1B1414B0371D2BE2675E304B041C7E635DC98DEE3F1811EB0995FB3167480F31C8F8D
-85E3B5F1054AB5B5721B7E8C3FFAFC18F50C8EB58A5CA56DDDF3FFBACE09BDCB27852DDE
-9A1DB9A9C4A51092D145A41E07981235051BC56F9319F03FD37B28388FF4AD8007F98B67
-C7E8FA79B54EB9F249A0A383F7AB987B6EDF5508069528D49FA26659AF0203E73A13AD7B
-3F64D294AFF49E42A76D493AEE50B099E049F8750AE058C2863FA2F4EF9EB18F6D2C11B5
-906194F7B480DBE6FE3D6610BD08AEE0078BBA1411B26DDF14B16A3DAEC2B18B29EDD557
-645FF36507654C2A86B7B2D18C5F886E8F02FA3092D35D4802AE25A6CDF17C469E85F67B
-1964A75CF22A241F2580875F639ED480E7AAA04620C6C58B5C839F0B659D9D2AB6EE6E0C
-80EEA564E9CF0F9F7F0E70410426047F0EE92451C92C483AE8F456FD95E21C7549392C5E
-41018826DB42CE4709FEE1A86F6CF18A0DF73A96F8147AD819E5639F95E6CA508B9CD05F
-D0BBCD49AA42A09A168987B7D8747E4D3CAFC699DC40EABBF633E2B6339A824058BDD026
-180BB7BBE9937EC7B87E853DE8308BEBA2D7B1156E0524DB6D983B9EA396B3BCB9A6E425
-8C55325437EFEC9AA659E57B07B838576B65B10A9B4A77304383D9540200A24ABE5663F7
-29C64D293498F678469024A1F552E508B49B610D3EF334279AE58F4BE914742752E9FE31
-1642DF1310E0E54CABB5CFF9CBC0A9FD8C81AC09D7762D9A989C2ECE1B24CED02D991D83
-1E6BBE94F7D981DC75EE82BE1AB6E1021046AB988E5147D3E037E447B1B38834F9FC48A3
-23A734D2DF86BF8313892964B6FD68CB8E4DC0B1EAAE8E85B137E34C22C8F6CF2A5DE4B4
-B914D13FE7C0E3B73AE8A998CD19BA81E3825ADBB97854B7B89C7FFD8E059340566B7348
-36E6FD18BA8B1B60EFD13DB954CF005A501D70673FA63F79FDFFC78571E075E0503A472D
-A3AAADEE2A7EC2710E7E910C9B3866BEF6001C47235AF38A70553649D910DC9195389373
-A87A62E97BD65CCA58128204FAE813DEE989DC1E72D36AA9675A25ECF1B8FB2CA45DF4B0
-23887604842BD3626CC1DB5722382315912FBC9C383275F430A76AC081366D100F40E42B
-7A4D3A3CDEC8C47E8C56C696A756EF3EC9B47CB9570EABDDD906EECC8F754C92B174562F
-118BE4FF9E0E84E15BBE5323267155546449138A613D2767AD28F188442F1FD558F1D09D
-2C296FEB0FD94EDFD259F9C0E11F255FA4C39DA709FF2AC75FC4259BAD43DD8B27127F04
-049683A5A26A38E27654DDFD99247AC366003DF016EFCF2D96C6B2F9858F21BCA07EB0ED
-516C2BC8EE39B0C568FB5FD8886B21632AC942E7E02C7BB24E007A08E8F628D74EE676D6
-
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-{restore}if
diff --git a/fonts/Monospace-Bold b/fonts/Monospace-Bold
deleted file mode 100644
index 5474cd6d..00000000
--- a/fonts/Monospace-Bold
+++ /dev/null
@@ -1,2354 +0,0 @@
-%!PS-AdobeFont-1.0: Monospace-Bold 1.15
-%%DocumentSuppliedResources: font Monospace-Bold
-%%Title: Monospace-Bold
-%Version: 1.15
-%%CreationDate: Thu Oct 27 10:50:21 2005
-%%Creator: mike
-%Copyright: Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved.
-%Copyright: DejaVu changes are in public domain
-
-% Generated by FontForge 20051018 (http://fontforge.sf.net/)
-%%EndComments
-
-FontDirectory/Monospace-Bold known{/Monospace-Bold findfont dup/UniqueID known{dup
-/UniqueID get 4234665 eq exch/FontType get 1 eq and}{pop false}ifelse
-{save true}{false}ifelse}{false}ifelse
-11 dict begin
-/FontType 1 def
-/FontMatrix [0.000488281 0 0 0.000488281 0 0 ]readonly def
-/FontName /Monospace-Bold def
-/FontBBox {-141 -1034 1457 2154 }readonly def
-/UniqueID 4234665 def
-/PaintType 0 def
-/FontInfo 11 dict dup begin
- /version (1.15) readonly def
- /Notice (Copyright \050c\051 2003 by Bitstream, Inc. All Rights Reserved.\012DejaVu changes are in public domain\012) readonly def
-% Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved.
-% DejaVu changes are in public domain
- /FullName (Monospace Bold) readonly def
- /FamilyName (Monospace) readonly def
- /Weight (Bold) readonly def
- /FSType 0 def
- /ItalicAngle 0 def
- /isFixedPitch true def
- /UnderlinePosition -221 def
- /UnderlineThickness 246 def
- /ascent 1556 def
-end readonly def
-/Encoding 256 array
- 0 1 255 { 1 index exch /.notdef put} for
-dup 32/space put
-dup 33/exclam put
-dup 34/quotedbl put
-dup 35/numbersign put
-dup 36/dollar put
-dup 37/percent put
-dup 38/ampersand put
-dup 39/quotesingle put
-dup 40/parenleft put
-dup 41/parenright put
-dup 42/asterisk put
-dup 43/plus put
-dup 44/comma put
-dup 45/hyphen put
-dup 46/period put
-dup 47/slash put
-dup 48/zero put
-dup 49/one put
-dup 50/two put
-dup 51/three put
-dup 52/four put
-dup 53/five put
-dup 54/six put
-dup 55/seven put
-dup 56/eight put
-dup 57/nine put
-dup 58/colon put
-dup 59/semicolon put
-dup 60/less put
-dup 61/equal put
-dup 62/greater put
-dup 63/question put
-dup 64/at put
-dup 65/A put
-dup 66/B put
-dup 67/C put
-dup 68/D put
-dup 69/E put
-dup 70/F put
-dup 71/G put
-dup 72/H put
-dup 73/I put
-dup 74/J put
-dup 75/K put
-dup 76/L put
-dup 77/M put
-dup 78/N put
-dup 79/O put
-dup 80/P put
-dup 81/Q put
-dup 82/R put
-dup 83/S put
-dup 84/T put
-dup 85/U put
-dup 86/V put
-dup 87/W put
-dup 88/X put
-dup 89/Y put
-dup 90/Z put
-dup 91/bracketleft put
-dup 92/backslash put
-dup 93/bracketright put
-dup 94/asciicircum put
-dup 95/underscore put
-dup 96/grave put
-dup 97/a put
-dup 98/b put
-dup 99/c put
-dup 100/d put
-dup 101/e put
-dup 102/f put
-dup 103/g put
-dup 104/h put
-dup 105/i put
-dup 106/j put
-dup 107/k put
-dup 108/l put
-dup 109/m put
-dup 110/n put
-dup 111/o put
-dup 112/p put
-dup 113/q put
-dup 114/r put
-dup 115/s put
-dup 116/t put
-dup 117/u put
-dup 118/v put
-dup 119/w put
-dup 120/x put
-dup 121/y put
-dup 122/z put
-dup 123/braceleft put
-dup 124/bar put
-dup 125/braceright put
-dup 126/asciitilde put
-dup 160/nonbreakingspace put
-dup 161/exclamdown put
-dup 162/cent put
-dup 163/sterling put
-dup 164/currency put
-dup 165/yen put
-dup 166/brokenbar put
-dup 167/section put
-dup 168/dieresis put
-dup 169/copyright put
-dup 170/ordfeminine put
-dup 171/guillemotleft put
-dup 172/logicalnot put
-dup 173/sfthyphen put
-dup 174/registered put
-dup 175/macron put
-dup 176/degree put
-dup 177/plusminus put
-dup 178/twosuperior put
-dup 179/threesuperior put
-dup 180/acute put
-dup 181/mu put
-dup 182/paragraph put
-dup 183/periodcentered put
-dup 184/cedilla put
-dup 185/onesuperior put
-dup 186/ordmasculine put
-dup 187/guillemotright put
-dup 188/onequarter put
-dup 189/onehalf put
-dup 190/threequarters put
-dup 191/questiondown put
-dup 192/Agrave put
-dup 193/Aacute put
-dup 194/Acircumflex put
-dup 195/Atilde put
-dup 196/Adieresis put
-dup 197/Aring put
-dup 198/AE put
-dup 199/Ccedilla put
-dup 200/Egrave put
-dup 201/Eacute put
-dup 202/Ecircumflex put
-dup 203/Edieresis put
-dup 204/Igrave put
-dup 205/Iacute put
-dup 206/Icircumflex put
-dup 207/Idieresis put
-dup 208/Eth put
-dup 209/Ntilde put
-dup 210/Ograve put
-dup 211/Oacute put
-dup 212/Ocircumflex put
-dup 213/Otilde put
-dup 214/Odieresis put
-dup 215/multiply put
-dup 216/Oslash put
-dup 217/Ugrave put
-dup 218/Uacute put
-dup 219/Ucircumflex put
-dup 220/Udieresis put
-dup 221/Yacute put
-dup 222/Thorn put
-dup 223/germandbls put
-dup 224/agrave put
-dup 225/aacute put
-dup 226/acircumflex put
-dup 227/atilde put
-dup 228/adieresis put
-dup 229/aring put
-dup 230/ae put
-dup 231/ccedilla put
-dup 232/egrave put
-dup 233/eacute put
-dup 234/ecircumflex put
-dup 235/edieresis put
-dup 236/igrave put
-dup 237/iacute put
-dup 238/icircumflex put
-dup 239/idieresis put
-dup 240/eth put
-dup 241/ntilde put
-dup 242/ograve put
-dup 243/oacute put
-dup 244/ocircumflex put
-dup 245/otilde put
-dup 246/odieresis put
-dup 247/divide put
-dup 248/oslash put
-dup 249/ugrave put
-dup 250/uacute put
-dup 251/ucircumflex put
-dup 252/udieresis put
-dup 253/yacute put
-dup 254/thorn put
-dup 255/ydieresis put
-readonly def
-currentdict end
-currentfile eexec
-11167FB533773667FB8D3EFE82119D83C5E325D3F9FA9CD7D01B1F3F3E52876279E4660D
-B5D444F0B7CE226ED8DF687C9F94FD3D6282F90864241946A4B8E8575E48452B9C0794B0
-E485E0EE753D96B6C08DFAE68281203752A25CAF8EADA400FDB4F9AC57F07D7C3CED86D6
-7F5FCFCD9D4635282E9D92A5D9598F79FCB9FB1A677408CF7EDE532374FF6A6A9703662D
-17B5D4F6CD9CF249432F8C76D70BD990DDA5FEBDB59A17FC8A068E1DCF23729F4CCF2C91
-59376F20EBE27AC7473D31BBE76EA67D9AC99ED58644032A828859BD9DDE391FC993707F
-97CABF55422D4C37042F25E17BB78E63EABE7783BE0C56F59E74EFBE7783B90310E817D7
-A01D0AC31EA0C9B67EA7A3EAC553F3DCD76270BAFB428DC7AB7EE802E06EC54B705A5A6F
-125250A008FA7375643EDFF171457F65345A08795AE0F1E5FAC5A9CCD3E258A9CF83382F
-B3385DA7FEEB19F6D001A7B5A214115B01B441014E51A9BF8057017663645BCE7E2C6228
-940658CCE20121AE23DB19754C876CF1E7ABB40B2C949C0D45AEDCEF0165C46A0E720BD4
-6260D7AB7E8B5A77F64542DB42BB3C48EF0F9D026C8563478B4B80B60DE0005A3C61B5BE
-DEF534F95EC79CDBCE5AE2CABEAE6289BE6D998B2E0B090DC31F890A264618C9E9473962
-3BCC88789A953C3C9BD07F5B1D7A1621B71A12FE379E85E6562D62C449F1EF7B467D126A
-41D13410BF85D7735CB440A7363A7C9755F3BAA6554FDBF71FFBC2B9EC7EF2BCF0228D5A
-98361A9F79AC87EB346D5AC82847C2FF02AAEAAB6C8272350A534C5BCBD678B28C6F7B97
-44BF3243F970909CBBE5E4116F2A1F56EF992D3EE51889C80FA54C5C9982BFD90C1ED83B
-3D7A917C2588207D5A15D4316C408332591A8845B322124D17D41E10FABF2662439FC0FA
-92B839F0A6AE2065D029FE012F75D7B4B0947202894211CD4786A74385DC0817DDC3A2FF
-8EFD3EE4CE9F31AA40282C2A0E88D02ED77F991C910D3CC20F1A6C513E105A65117D6FF8
-B448255F66674BD2CD7B66EEA96CEE551D97B27E7B0BB692664DB358985F0DCB1E5FA9D7
-F92799971280852C5DB56F5E0788208521AB6B2589034B48624D393F005525342C7441E2
-67D1BD07BBF43C69DC7BEC5A47993AFF6F6A9747787AB8FF45BCDBE88FCF290DD28FB3D4
-2FB726AECC1832A03E970FEC71D7CA532B45C8C5BF64CEA9F6F9483D369EC9FC0D82E3C7
-A5863D816D35503EBDC1CE27C57258E0D773318E88B9006AA04541D8F14B4F23F7B3D23F
-6B4E990457C5525DCA3B63EE75C3A53611FA30AEB04A33EAC156049E60651AE830726330
-C3530A1BE5F3CA8AB63BAD85DA0080A22FA54A6DE4AD3EE96BB9EC60D3EC4AEA7B5FC82F
-8EC803B2C6198E5ABF9B67A82B24D8F5C672E6A825FE0481B1744DBC008B0B1110761F23
-ACF02284979F836FAC0BAA9216C35A5AB25B95197F282592E27C9FBD8D5EFB330B08A956
-B6079D05D4500F00518B164CECA074491CEFF09A99055371AD3D0A9F1DD2EF38B33A0FBF
-6C83E4AB7584D24400671CD568DE38F6DAB1660578C65AFC0FB5AE268AB26D47F38CB9C7
-E48BD5A7D4F62199EF7180D923958A41F3FDCDB0A856375B3BBAF2C4C32752FB0B641240
-E50FD465CB53BEF09BB0D73D204B2064B3B6322A1D227E8D7B4FAB71BBD3E2FFC59712B1
-EEC12CFEAEAA8135895D705C6BD8DC5726A21888E25B675475D53431DE441B7177F41A30
-A216DC48B78D025AF5CFC53ECCF08C494EDDB4D460CADF0E325C81B932F4BE839E5B6F3A
-3AF49B330AB3DD8637D9D0BD305C15D20FB84B14725D4269A78D316B2C2401698B125DEC
-EFC2D7DC0206C6535846C435E5DDCD2294C5ECA8FE4C3342D032CDEC2398A43971E15CDC
-CC308BA14659D338D478ED2C91DFEE282D221AF7150507F3F35054CBA77F7B68B102C7A3
-B0A94AAC5EB7ACC45F29A2B23A8BA397727E1533E78F84870A647D8D2F364F0A9D9CFB1A
-F82AA4A2FA9D4A33E2F508BE63488D4505E4BF2B22029A24EBF8ED5BA75646FBA0B80D8E
-B076A4028B10A89BA8735E03092071307C212B76BBAB410DD4783C8653F472A853105F4A
-0900CD58BDAD0DE8967A8084D49E03CAE74D6724924E2D85411B0E712ED4410F59793490
-429E6271123A4A3B45BE180248BE5F2BF16BFECE9B005C9AF12523C38E6DEBAA9F1BF6D4
-AC2B193FEF981CD5E4ED3573521A82DDBDDBD61F43EFE8CF474FFE43D82DA07FD8A1A494
-6E8C187FC6C85663A05E65BE968841C923CC2AEDC5193F624FE2FA5B4F33232BC9361141
-60C54189960EDF10F1B44C91417CA26FB66E4A89B19AC2280C59CB7C3428A0251E34B5AB
-90368B31EDDFAA2BA749EFBDB7C99EFB9C5E67E9C6C62438E73DEA816919881E804E3D8A
-EF1D5108C4895E2E285618AD7DC3A42F1E28378335D46ECAD9B3058B165257BDDCEFD817
-350ED1B3E3ADF86C3BA4E9624C2E592A8216F4B2700BC88992913406E7DB2B5F5DF3174E
-A6D7639B616AE160282DCFDC85CAE0C73F3E695B09EE0FF5752321EA51A914A7C89FD9FA
-0E66B2F01EC9033EE9DBD246725CB36EEBD34EB3481FC21C4AD3AD26B394E858E3F4C3B9
-4CCF83497813A5CAA32C5FE41787FD97734992458BDDEA1A9CE2D7135A65B592B73FE851
-C2671A257B5518E2C008553432C6FA79BCA95000F31BF7F0AD101A30607D1D34987D89B0
-F3E1A190231908C2451B8FB0D18EC8F873AB09F1419D48B041A02BC4F819FA17E81C3289
-77EF1BCA4E86CDE766B795EC8A1B299F57DBB4C72660533C8A96AE701F9EFBF198FE4D5D
-C66C3EAAB293D0D9D908236037C83A759F2156AAEA78B6AE37DF0AA85A5F89215171FC75
-3A323D43A3295A2462D8902458F15F6345815BECCD373E3EF4F0993F7D52AAD4E2030CB7
-2862D8FA6E6138B71ACC7D62E7261FBD56148C8DE661AE9844FE920ACC2503E278DF0B04
-F669145B9C8D435BD90C3DBA004C09B39227A5409965E6ED90E5082B923D69B0842FDB38
-0D742890F9A9FE4BB8F923FFED2581277AD8FB61E2F17BB90D1A7E4195D7EB3FF833FE3B
-72E696C3DAE0A3A49918540BF1C6046FFF094E01680EA558415209926FBD70B3CB4B044F
-DC5FC844150C311F9C1C031F4D5B99DEE4F72F2307B8EFF74735B1ED593465D0D7998E61
-DA4D497AF119FC332156B8D882B4005FC8850E4DA96B7AE93E1552AEDE068D0E2B266C45
-0753CD2DA48A059CEE49F1E86E2F77F701FB177FA32D5F93FE4D6A01275EEB54692AA6C8
-95EE530E862079535A543DE4067CD630A7D8CC83AB9E04377B8D3A05F23280A6E1D68356
-C76D531990EB15EA707C0E5BB5055F428997E2A731A4F7B5288E54B2C4B949833EC117F3
-0A0575603796041BE985C63F48CD55E76638E7E54BBCCC9D2C73ABE423C6A7159CCBF80C
-8FD931FACC6D8257D9202645B3138E367E160CA3CF22E1C5ACE59AFC77BFDFC25A5D6DDF
-E6C2F6B68D062D0490D05B05B55A7A0C6E56A52A2EADC106E3BB6410205CED012BB49DC3
-6EC89674C22C7D17E3A6AD10A2812095454DA4D44414F42A8678BEB35D372D3851EBC535
-888D9E937906CC0475986D2656E16D78B391E8E8D3E9C91D980D526C6470E79B728ACB9C
-B9F63C6000B9E60AD76959F7B14F06B631778911EA9DB59D8B9BE7DECC68DEEF068032B9
-272227B91840B30B7506A3FD57306015EF686A174F48B734D9070498D2184773E7353A24
-51D3276238B8874FDEB7161D1A8506BEF79EC5245651C29B9251EE17F834D200E2219A3A
-9CD838C9BB31182C00A52E06DA6EA4E446FCFB62C92284116E14C3D38973F1704D5EB2E7
-6E6F88F7444364046AB43C4D7D44A23FA47B5EA158949A3E1F15DE70F40812444C6F0F4D
-A9940F2B3CD1B7B1450C1BFE7A6E111503CFA45FF012A6DED44CBA623FCEAF5262BBF810
-90A4FC1EE72D5EF3852987026F50770F7410E486F1D15D25888C8D88188647F8776CFBB0
-C7D4F02644BD13C84C592DCE82A56F08920B2FB13BAFB405154895458F55DEECAB846104
-7B157C02450E0E529A10559BD8CD9592FFBC923092C1EB0AAE96E5CE64A6D5B636988F69
-EF02E3F5B84451BA2F6CC360B647908FA940E844C3DAE8FAF73E9ED416D6B8A20660EAF0
-2C662828F3E137B0956B15AA9C129A312E753202D429FC734325F1F82A3D9058ADB87688
-4B979CAEFF660A8EF9191F4E0D2CCAE5E5458139A0AD0637319FF41CD7DE9877AB094F4A
-3F27EC8F5C7D42B1D892B829E1DBBFA9295B8383B23658ED25DA227B9F625B89E26C854C
-0130CEB1F82D24E53D5FCCE082433A4029B1B4A5905D25BA809EEA54895220DCAED1B2AE
-879E7BEE3CFA3C71FFBC77AEF4A415C96F2CE40EF47E2080FB59AB00DB4E8D527D9E41D3
-8DE95CBE66EAC589F5831C4BF0BBE1455F4960FE388B84074DA43DF499BE3810C38A4BA1
-D23F3A6C331F09135931FF0A7D77160E3FC9CBF4937D5814A12848C17ED3F62FEE21B11E
-43889F3947F67F66BE8DE7EFA954E2CF8BFFAA33DEE3F3C397FC572DDFD7E42578DC39AB
-7CACDE5A30E25CB6D949E2C89B02E48F70CA2D0FBA47F19B72CCF99B4C71C69B1E1A381E
-F620B2BF283FD34CE116F5C2DD1BB9DAF60BD431A6CD475ADA9F7490E17D5DB183763467
-0C167B8E958A4C476820EB53A778B9131FC7205BCA2EE3791B8FB54AB6996B82B65B8E60
-71529E0E3A721E6306EE6448EC9607C427F543EB8C6717D0BF598F619D36A3FD7C0E3DBB
-E7B5D923DC8EF2BD288C55EF93640E4249E0E9E36E1FCC19CEC8619495B71D84236313E8
-C552ED0F230DBEE3C395269DE393EB34F630A5043B054154A47EE48BCFA1B3DF9D142315
-F1826809F0BADC495B2C7DC93D34155D843427BCF872288B49D2A0AB22AF861112C324F3
-4428FD31584D3B5E88ADD1EDD809DA66F90C756386198CA263562A95BAAA64B1CA36897C
-1069CDE2D44EE87FC186A24C10C23B8F3DE59B41D1AD8E01EDF4C32EE70F053DAB84D24D
-33A6024D7A86570D96B34892F8E299414E7084D99B3C3A89531A7861A39EAEAD9506B0C7
-017E3A730C91AF6857DECFCE2FFF482DB160369A16BD17456EB74258D2D39F7177998A85
-6694D74A57318BBE392EBBCD069FCC8EFB71AC1516E350FE4F936BECB2A8DC4280BF3A64
-27F1B741C4FD53AFB32EB78D9C06D74B5F71DD967E087F733D50655900E086D358B46C2E
-8EA8CB494C0EBBCA4B0A9C74B48E0236F9CA651D73D2DB6FB1F1F6F7561194C8858F3FF4
-B3F46FED001DC472F71BD6E16EC1516605779FBC1FF81D6ED6996F955C001DB98BC8E7EF
-16065AE3A00E7C65B4F080F78C5E0CBC9EF8D4E6A8A3E76258B31BD4F6766A4B00A37AA3
-E5BEC4C495D5B92E701B7423FF09FE895CA54F82D584942A93ADA1C7AC5576345DB685AC
-6E04586E55C997FD31D13FAD4D2FEC0181A8A0BAD0CE863F9052735AE3F245F549B8F2C1
-A5486F65BC217A57D404832AE633EEEDE8806889AEACC54237FC2C493CABE98111D34EDA
-6739E5CA8FA33EBD70757FDC1243E9F1D58D69796A7BE700CB9A39F69ED0D811D4D286D0
-80BCA0D9E78E54B63E640C53BD479106062953EDCD604D10F3FF50620AB8D1B79F1F873E
-E47512F37296FA930C5FCECC28FC6025270DF4B2CBC428ABB88BA940AD55CCA0EBFDDF91
-3AE3271FBFA6DEE0B62D6B94F40053A11410D91A1CA9DB0E9947AB24EC592A9FF3F00FCE
-F1C436A94332952DFD7825CFE35489E12C6A8A7521AA5B32B307A7BE5200E45E1FDC5588
-96F0A32E97E31CF40BBA08833E7D7EF78DDD5D48685B19943705D87E40C235C0EDCDC6E5
-93AEEB193C8957E5A05E17F4609FB3626BD14CB597362AA65699A50DF076A54FB1012403
-E32A3CD7761DFF0B3F41AAC0BD55C1148A24BBF31B4CA15608F12DA8F671D76E33E00AAE
-450412798B7BF74C216E112883E9920B0EDD24701790AEB565D9BF4927BD3856493D6B56
-2C5A231DEFF338A986DEE08AE42A6FB978608C3B9A4A1D8E17164A08E2FDB5D1E1D38AA5
-5E2E4B4D2F5C0317ECE305DCBB207D7599943B1116A0AF9B917E1EE7FEDD285F249B212E
-AA66724290030E1220C5E26EE5623636FB5897E0CE1E0DA00B8E716A963B4A9498E113A2
-C6E68B6D35503EFB27C4D82FE3B48A7005560DF04BC6AAA01EAA47070C81D60C40614920
-12654837A5317AF1D7F24404E050CDB6C3D1B1BA2480FC9940707A9984D507A3C078365D
-30662300B4E28756F69F8B65F9212B4A0FE63448CAAB6331DA9E7DA65347370F03E51135
-591456D774040BDA4BF0D318161C082F69ED644E51EFE26EFC45CFA0391220B09BE1157C
-3E4B55CF5203F2AFA61D7C0F6F281460A761987144ACA50A2834954890D9BC811B72D0D5
-FBE77F8D01496257522EC90143BDCBBC30EB08B9D15097E0AA0AC15F6F7FEEE91224BC4F
-531A65905AE9337D97652775BD7C43740E29EB66AEDF91D658C2A2F9849A26457C8866F6
-F96D59E6721018ED0637D6126F08EF685174F130D9735CA45227B508B52FB7D9BCCA10D3
-BF16A889EEA13847DA7CAB63C73C0F068C3BBEA8E162295F884B7E28BA144E30450A823B
-9025847C739B6EEAD71967F8DBCA0AC8FBBC2A7847BD7B957B8E44EC96CA2888B47F86DA
-786EFEB0C741D7CB67CC25371E59148D4C3ED2C5349A1EBE6B9DC8744EBBA600856B22F5
-1832C41955FF582F4E0337809EEFC33FCDBF9C31723278A8D085F1404D16A573314F2876
-85C67FC651E691B1C12121B0E209E3E7A0FAC4272D58F16863202CC7594D0A6B10A4948B
-1FEE719857ECEA0CFF0D0643154CE968A7E909A6CF9A9672B2159717E854044AA6A13F05
-A3581A47D624126498DF26635EA643734E2DD2A2EFF5D2F70BCDE6F39C9D54F0A1DC05D7
-8BE1C28495B0064C2A18A02859FD8B1F91DB7D29BBBE7401B1891CAEB5BE54468DBE8B76
-74C2257466643C14A9657C1E79627D8743C14B4CD25C03AE56AB0D1D5EF596474C7881FC
-0706543A538D2017E48205664D7443834DE0344BB76CCBFB64824E753FEE37F39581FD32
-27AF8959D869EA87D806668DC29436C60A8C9DCE55349B7C992F821C28A28482843577A1
-44C905FED079A06273C7960BADCB5196F3C9E2DCC87C0B1E03C5B5CC64AFD58CC72DA649
-040DEBDA7ACDA5BE6DEB142FADDFD883DC4F004B7B7FC5A1A8A44AA9C4A6B3CC034D4F92
-CB6293FE7A3EAAADE9568655CC3CF1EF283B1ECD15EDA0A2E3CADE0C3148A5E449CD5D92
-557FC15E2A3B99F6CAB2DE4E3DDD038184E46F1914481C7E5B5A1862C899AAFC1A4965F0
-5C152968522019B3D635C2A67DA80CA60F264E6F75F419ACE6F48F32C5B6FEA7E340DB0C
-5C25F7FA380B1A7D7F4534F0ADB02EA93B4901B581A9EE79D3710248F0A5E03BABC2A066
-5583642E51E78893B375950891A694ED7C18B2CE872619ABE151DC8710F5395E79E5FB02
-5F05A3BD9364756A54FB8B31C81C2285942F9FA6940BF3D676C16FBCCF34A433028A9A0B
-18A39831E0F04F03D7A4465DAB80894AD108CCFD1F004013B9D619E0EB552DAA5BFE0EA5
-53FCC2D38EA0FAA38BC25AA6E954A2ABE35AEC8383E556D1067F2A8F4FEAF745DF55771A
-95502B33A40807C7692BDA00A142A4EB394838F57880B4ADE4D21DA150CB60752D5A11E0
-A309F50D63AF0C59DB2D58EA0C827441997566E8AC0F39C354CE94175BBC62A265FCA7A1
-87B3BE75E83EC96FFFA43F6675D9374771E2AAB0FB1A14E9843F864852CDB0E23D30F1E2
-EF19FBBB4501D41F4878208E041A8B5C0A46B3352A2CD1F5BE78B3C89B58DE076CC603BF
-04163F64660236214F9B029CBE96F0F4DE40C8919EE1FB5435FBDB25083FB3EBD505B0AB
-CCDAE8CF4AEC0DA7D890621D68D0056FBCA5832892EBE9E2BB72A2BCBD224F1D3E8E7AB4
-771CAD9C6A4A0E40A6BFE15313E15EDED08DB8941E04094149B69FAAD438E8C7047C8A41
-ED0B10070C48F804C11FE88BCF655BA3636A4C7426584812DF512535225E8499D867F83C
-86BD170854BE047A028889695FEE4E7FC63DBD109AE00664414FC96496F85DC4BB719BE6
-B7C5BC4D7289028A003CBDF447018981D0A8E11656A4D75D6F5145C5DE04CFD6234551DD
-F89930E9267D1080FAE4F9C66B1BC736C7375B902FA53D9E8BCF2B5A7BC4B6341CD65F79
-9673CF52F26D649882A3A2EB1609DBF2D4A4F02DA65BB417EEEE635485BAD51E96EFD4A6
-BDF0861B1922D31BAE22AEBB9DF54E2C5ABA5B97ECCB069903B2AA28D790560A64E3B93C
-E0D3FDC457944A22A390C874D655AEA7BEA5B305B1BCA2F13DC73F1E8DC7662E20FC276F
-1D29E9D96E8EEF0E3B2B0FAEEF541CCAEBAF485019979872A72A8ABCF89071E28DF389D6
-8418B9EE2488F611AC58EBBC150F3E93AE1B3A1C5426EFC55B22E5A7D1DABF78E4C6D196
-757CA1120B657ACDD4EBD7276EBD4A67A7440B46FA59C59E2E6681FC2BBA58FC8A82804C
-F8C4AC4032B09681B6CCA415C532B91CDF0B0400AA088C9044C3895F3BF46C611BA136EB
-AF72086A9D2BC385201BBD78DF875CD8F7D67C0D4F26D3D9C6345C55FDCE9B26BAEA3963
-A7DB21622C3B3B3DD82DFC66FE74937EE3728FB20328B047463856F9BD4E1B1F0D088A3F
-19408DF937A84D543A5BB17445979A37399586A368E99FC2542D8F401D0BF360CA619854
-EDD0BE31318865A20F221772253518E9E09BE9DF95901147411D4C0879D26D8F930E4B30
-3FFEBD5FBB076BD9BC5B0A4C99F0B85800F25994108428F98697DA6E7C14F1780BDECC94
-16B682AF9E92A7AA7DD0B33EB695DFF884D14BFED98D3D9F84E36ED4FB2DD86F1A42D8B4
-A2EAF46CA449E0ADD9BA067F2DE96897318BDB05A560BED7588999185585F81C9BAA0AA0
-9449C1BE1F14AA0C729E6B66622D18B8D5340B74BCD66B967E6F29365A5745012C881F6E
-CB10CB82B46B7AC551B5ED79C41709AB70B4AB493C4BC6DA1CAE87011B5961A5FF4B0ACB
-17A95F29D49FDE6830C3B2D170968738A8815149B242B4884161186079DD6A1217FE9CE7
-E60E7045A21B10138832AE5C880FD54FEC7B71974DC8704DEB006E01EF9F61F7FC22A117
-123D5A2EA6AC39CDFC6BBB6380404B8F98CCD1E4FF7CBBCACC4AA13F260C081D9AF5108E
-518516A2C58B27CDF940B960FDD3D51AF3FA1BEAA90687FE8BD145E9984AD71187BE737B
-6765F385FC7A58FA771C84759CA27F908038C2B7BDF81DDB6797A3EB4EB6E8ADD3FB9FF4
-E92692577747890EC0CF77796BCC291929FB27FA69F10AC7912D9A7E6FB84DE14D9D6D12
-115A8630F8CD3F26A86F291714B931D3822B8A07E9276659D5F36EFE72858A444557FE0A
-3BDC70E9D52F941E790EE7B7454557B792002BB07AC33F10F2CD2E5E16E88018F6F79D54
-34E408572D30A3316C3F1BD36E1BA16A49C3623317C62ACCCFD869EA76921D729E70F2F4
-63FA8F0035EEDE8EAB1E7BEE4C389DF3BF6625DF10CBF19701381B68525BFE96C2CD919C
-2922EE99525048392C1BCF26B3141B551E9DFE25A2D0E84348BC032C28ED8A118DB6A083
-B1AC44A0EC9184D101FCC6A9CC4F5F9756783376BCB2DC289982795796454835FDF5F325
-DB4DFE924D2C02458FEDED43FE8DAE2EC4BB61536CF755E7E920835455CCE84B5C0C791B
-9CB6D494445F304B173628D8057F45E9860DC8DE045E351750C0E71B2B13F78AE4941AA2
-F3E2E8E05125DFE290AF817D87693AAB16345CF0CF6CBFF594371E9815A5F3360CD52D8F
-095AE10808F33F86E07E4B8A2BB3486F93D04C88FCACC7907E359442D0CAFCC088657360
-6C54F56DDC5039A88396731AFC577DC3324A0D24AA9348245F660A496410E3286B81D6F8
-7999933D898C0FF0D3FCBA5F9D5CF3326B863E941236E31FEF86B7DEF1014D1C6CF86B92
-4FEBF9FDEBD3709805485B618DAD03D15B5C401B94B2F4500F2FBE72CFEC2A69164D6185
-DF5160441DF72FC509EB7C1C1322AA5658B09E1BCE9BC99763E7DE13057E836E57D24460
-DEFEA1CE7C2553BBE5F5CDCA7869B7153A0C5349A7D0B546F971FC63864BA7F00BFE51E3
-905A87F67398D568709D27E5A746970F72EF9C71ABE7CE96044ECF80352F712B605A6B10
-8426A06A27E13FD837C520096D15F9B1A44E6F955E3FACD91B643BF0EE74D3FD6E9A10CD
-F05C01FBC7BEA26D8AE8565CB89BB2E52EC98A4F4898D146084CDF4E6509462D267CE81D
-D7A0E6E2EFEAFA1BBF696803FD40F021716C2838C19D32F741FA334D228E2BD34DA2D561
-E6609CD823CE02EBB683A6F1EECD93C9103E5328143EFF6C9E05956969D2F25AC992FC76
-39B5C238FA4A3157B959B4AF11B6AA05823C015134836A6560EA7F07EC86117511E13B10
-75D0D2259D36E7B8065D930184C7DDB1AC2B42A566FEEA6927313BE91C7EAADA352D9E76
-43D467F94AD5ECAE37BC145278B4048AFDF432B2E2F219661CEE53E159490F1E0FB04DF6
-D42F4B322AC01E5732859AEC445D6E120091996DCE46602EFA8C01EB0E1D8BB6D0D12174
-E4990498577B86CCEF0EF5F7EE913A3A8D78EF9CE4F37B0BE1B5F40A4D0B00EADBD92C7A
-5083E8D4B093D7BDA5B88E08D5DA4EBF7FBDEA06DFB8C5161A92548160163EB7AA97B603
-96D869524163EE546E1E35F764A4879D2DF056A5E77438D45D81F9356A4F8EA0D007E0B5
-DD2441879A48AEEDCB1A2F493C3E648EA138D4DC080022EC7A62E08373CF032F48C2F585
-0589F04122726500E8B29216CCCF6ABC2A04A726224F9B029A25DE8C5965A6ED3F6E3518
-B72C6A0A64802424E91DDBA855C20EC358F6FBD79C30CC6DA41C9C117B23139C150DDB33
-7FC090A907DCB0FA4DCF914E3CB53EDCF7DFB6D2A200F7C2E8401667D828605C64D9A62C
-7360AECC44BC3951D2ABD75976528B0B98913A2741D0E160B48FC0458FF56DDAF4FCF5B0
-6A351BE0A90F851C44BEC636C0AC688226C8B0FD136F2B612BB66ACBA8FF149783F24B99
-A0FFBD405F655FE2DC577E01953716C44965782D86658859FA313876424484951448ED6C
-E43106D4F8FAD95C3163A1AD47AB14DAEE015A257735B0B14BA8C1F807B54E54670BFB7E
-9311D936086C6DDADE803F4E304B6E823A937E1A92C28C5A61D0FA1DA992DEF383ADC936
-E910075C9573B15ED356345ADF2EABFBBF8CB6D1D35DB404CB70DF440642562D8778E5E3
-1C547AA1DD408A97F44048AFF9317364BB3A8D35503CA5F0FA509CD0A20DE629DD243EDC
-163402620ABBCC4E9D7E679A92E7FBC45CCD3923AEC1C20C8F15647B0E661F82C738FC61
-FB3C954B9097633B78D21C958491977377BA0FB845FA5357F3519572002CA6A88FCC39BD
-CB51A2F2BA462905906DC5A76632708E41585A47368D650954826C722853A1B9364D3F21
-0A844A8AB86EF33C8176B76E891F2AEE7C1DD8C6B0A2B52CE2AB398533B6D862593D30BC
-2BC3046C588E63E2C02F17A5336D7B03B8CDEE76F5B8A8AB32F431F9FD1FD85013779781
-274597F8B717CFA22066ED723769550D604ACA4772C711C672FA57A9A30E962E9ABBA798
-AC43517D02EC267E25CA09B5FF087C0498660A975A7BC1F726B9B0362E786A5E6DA97B9C
-83C8B7BE172423C79CD95A2DAD481CAEF11924E4357833DF7692C22ECE4A7C92B6C84B8D
-4E1332A9AC1C897DF2777C9A3C8AA4B77574A5BC296BD2BB4DB715609DEB685CE804B710
-D098CF51391D799C2F59017002C2F2018970BC614F4A4A246A49E795FC2627A5361A474C
-4EEA15FD114C5E067D2F091A25E56A019A2DC6E00F9A3CEAE73F68C7387A2BA310AF9980
-8709635A5A2AFA101FBC0FF8AF9D7F7CC1E44FD2344BE0ED353D24E8624D464938BC13D4
-078B481D9B32937D75B52CFEDAC13FEA859123B76C50856986F05DAFA7AB1885ED53E88F
-57CB20D166DA5B3723AF472A0C3BA1325015BE2097BA520E15E0CCE3FC8D3AEC37F3DED1
-671FDE5EF193849D5141B9956A68DC514D6A9FCD67AF25D8751AA32D114A58728CDF973B
-05464EA3CA55ACBDBC0C2CE814CF10E8639273C33DAA263C217A8C6F1A8EB1BACCB6C7FF
-E50DFE35E2919D0CDD7C099FE7313B8D610C90034EEF74908906ACE8631A193C5C6341DE
-6A311DAC36AC2E9FA441E985249302F9273EFEA3FD5AC02111A0B697CBE2FF96B245D2B7
-0847404C184BFE1E3C883E66D90EA64C797597CDE06554DE22537638509E69D9E18030F9
-E2ACC66700F2429D8C5787837421EEB83B023FF531F48B40EBD3E58A13A0FDFB227C2A28
-C9A81C16A7554BD0831F68AEEC7A1E834BE1F90CC96D7E6C5B06A5EE89B231C183E2BAC8
-4840BE8EE0CD47E46517F6C46F27B3691E5D271781E612602AA935061867860C660E6BBE
-E57583687BE3C61186D98BCF7EBC3A3AFB9B88C7C466DFA58BA37840A537F1206C522FA5
-DCD1C129B51AA8EBEA4F5883B7D1EAD667B178B56FE7D831DAF15C631F52197F7E92B34E
-DD68CFC92859C49922404F21F4BBBE4643501E39AF897D93EC8B89FCAB6BB8912F42E805
-532691D4BBA96077BB351BB9070DC2D5C17D60374AA9C8CC6B6ACF929B77E252F71A6F61
-74FE8058A8DF23CFF45A046CF30031D87FBE2D408BDB0C9939FBF6F16CCA38D97AB8B19D
-7278EF78814FA670EC235651A4703B229B50BA6B3EAEC8A22F41AF0CD01984238C34C2A7
-9E18A8E493F64F74EA3638FC4EF88B7D788648B4A2ABF02432988F9A3C871FCE7C59B339
-4E00539AB825DFDA2C420E378D1A20CD0FB6F060349ACBE266DB820841088A9FF50C2686
-F90561D8248881869D04A809E738761CD091B084610BA958A39CA3F19CBE38437DF0FE69
-D23264E56B4760044F11EC435631D06C6C7934427BAF1015C9BA4E370CFD16F1E892AC3D
-7932504A52DC9D9576CDCE2C37AB393A55180156F6F583B753E117E42F6BA85A64155118
-2FE36FC5D5C4C80F88F8825E88CA9F5CEBA97FD8ACBFA3C87FC906F443361B71F6B2D875
-DEBFADDC1CF3EA8A7D099C30A4207CDCB3901C13FA35DA02FB95DD0E6EB587D46D739A27
-B2A325237F8D33B1413618E8FAF1C9C146581EA841E8B85174D1787BEBEE6E409FD6B64B
-3B066F62CA10009B10FF02A9D708203C02EC1F3309653B617F053754EE9863EB202D7ED6
-F5E47D80B48D99040CD17B44646694D8BB68F39FD6EE4ED77606D35B4B668A16608AF657
-FEB98F826C291B26325B6EB8587CC3EDFF18FDC96C56241ED36A6115BAB6579D5CFEE016
-75D3E4F23ECEDE16AB09586B9F5A56511EAFE9BD38D5B36B0CA45F1992475C129798465D
-0B7E94BE9B308E87794522507AC3AF7B29C91AE0C6ABEAB8989289F238509063C3E74CB9
-393F2934A5FA0EB173E2982F412875AB7F1ACBEBCFCEF7647203869322300D4C110D30EC
-C61E846AD1FE42361F357830D5D6DE7DBCDA6154F8C5B6591EA2580F34C2C5422150BCC6
-E8076F510E571BF3633255677A1971CB0624BB1A6DE11FBE9CD1260FE400240C4C5CC59B
-A1EC6CEE2E054995D33FB5ADC781D78A371A9116CD8F9DC09CFF2F3542BC1DC1B4E61D3A
-7310C9674DC24DEC68073F4A979FFF96DAC759988735089B043BFCFDA203DA4F99D8E719
-1FDFDD18F3B53895F7AD46093B8A9D55CFD2E527A50F46DF23E0288FB8F61E2254DE6933
-DB7E78462CF03E7E454F6774415D3DF25926B9C7E48AE576B05FE164CDBFD3AF56FF9A94
-D0C08EB26C4514140BA55B503A52D98CEC90C721AC3D2E280288D0F73C2A5ACE87AD9798
-E15AED95526210EC6428D10C1422482799D1BF69DD623B1B16DE95592FCB6366B5E91C1A
-3E03F6D086258AE19576E5E66F9E6A8C029E26FB7471ACE648E9A9FC74251ABF854772EE
-B42D96D9C87EEB12785547AB30CFB71FE683C621CBE389225C1F0DD6CC7C24FB9E5AA117
-A4A9C83A78776C0198745A21B6E154A9D560BBA0D419092CF341F1606686D396C9F417CA
-DBFAB2D360D2035196C85A204AC2F0F3B3EB17BD337E6E9D57BB414613A636E22E944FB2
-556D9046E9CCCFE0B82BF68E0148B17CABC0A926DF4885D2572D53435CF8CA462BBD9A53
-AE3673D6C6A7BB9E857B9E01CD95F2336EC1DB562088E8C2B4C6DA9F8E7F6506A6E69D06
-82785BEAFEE2B57C1BE191673F51C6E2DB711667E34518363119A27D7D3618AC791B920A
-E66FDFEE50BFF094E587DF23A4C100EEA75AB4E1B3384F99966543D48A3FCAACFC76E5C2
-00DE81A2DF1C7D7E4FE1D8FF59FE187C6271A80B42C9CC854096BD3FCE15048E7AB421A0
-89C15E9574D535142E877C1D72BC5A1173D157A1B61768CD39FB88D574A1BC3C67BBFDE7
-02EE677084111B8ED795273745892D9260CED632285E633DE80F3DE62FBF73350D71D72B
-84F5A18D3BD43386D05642FDF1FAB29CA63B82E1969679FAA6283160946E0E3C7B3519A3
-5D791580141D2F980023C39C122C2D102E4243502B517678C7A4E522753F91F4EAF73C75
-C644080E3509EDB077EE84E1DAFC06B25101FDF01F1FDEF68C326A6F67253E18A0336EFB
-2375FA4F70A077A2D09471AFD31FF4DB23B1FFEFE8A0CE644E864BE68E05EE75192D65DE
-9D14F9A385AA2B9C4E5BE385FF1E2C8C9ED1C9CF4D48AAE769AE7FD807280FE96EA290B7
-8DC5A9F78F89CE562183C8D8DF90E6AF14B20C0431617FBF64BA977EB5DC3BD63BF0B81C
-AD3D586409EBB6211CCFC8CF02A74A30CB9B3D2BFA8F954E3F9590A664B16E4E3EE7092C
-DE1D42C778AD283AA66B630DCD68C968B393C23CE8D76AA2A9B911AD24D3C73C02B2763A
-088ED7A1CF3B4BD07C9A0DFF7B642708B13B8E9C32923FBF1531AFA279E162804C301BC2
-F69F4E24A05BC2D93BB622B5528D2263FEF2C8A4CC1D6F01C282FEF8A188484450FB1359
-DAE4530DDA82A2B5359165BEDF8FF28880034D8EAC5E7C03A8FDD59EEB8E2564B3889509
-27EDFD59C2CA931F4058C6406DB402B71CDD3EC21F2533903830DC407F814B86ED983E29
-991A94AF27C008B2B448972C6CB7FBC5C30D577774624318C371737D090F67F6C36FC195
-F7E2DB836CEE170DE9ABDB2D99FA06E340CB144F8E65A29F13DDB34D2D462B38C7CB6695
-09D77000F9044C659B941CDDE2CDD35D12D6FE94B502CE6C67824A695D42828E2D111AE0
-752383F579A86B38BFD3F173D34FD9937F11027F44748A8903342287B85AFB49BFE24240
-0049F4683217BD8974D21EF4E373EBE69221DE4FC036AD9CDE8D1986D16260F361255CDD
-6357354CCC036EF8248802C5A9DD6BE470FD647A913409EB0AF9B629050604C166A70835
-3B78E1A2A179B3161553FDD55B036867914EFB8A9436F668860770DC512D8779E53883D4
-DCF5913BE9C0AA9D002788725BDDF0B5FDD0B3E49A4DB4F79E9D28FB4872CDE8999A0E62
-A6A7934A80F1DE7B84672A65513F4B1B845437DBA6DD1DF9ABF70DD356DE74C924213528
-F24124F153637EB9ECFE91AA71DB9A92C19B376F7E409F81BE121349E2D5173B821F018C
-A19039FBD57F6F7012D5E4684D149E92FD9E1EA48F3037B162560E3F29C6AA8100C0A633
-D685733DBB08D30DE48A53E28A3D4776B715355EA7E690664BD3F1F77AED2343A05F748E
-DB986519D8E92CB843BC8C62EB5F46E73D734D079464EBBC97693FB5A95FC3CD7EAD4A42
-AE6090F18938D286AAF8D0AD64C77E46822EEAFBB655A0995110AEA8C61C4F198EEB8E8C
-CD40D1A4317508E96EF47F6C9F4E6D37D81F8296BEACA5FF63732C8FFB8798545E86539D
-6FA3EFB324A89107534E638B54059790DAAF10234064B5C51B1B233F977777FFCF18AEEA
-AC8E9691C9C4E5652B68D4BF4D262565AA53E2E639FA7DE00A6E8E81075DAE11D09DC355
-2DF890E2F4FB7BF42D94BEDD9FF9E708765DBB5E2D86984BB5E9FD3AA69529A7B4A547A1
-3E7DD7AF3DB740A8076FB06D05EDFE10D4F77467D4950E515CCA452D9FD9FB023B7F7AD7
-188060BC823B479ABE20DCA872E7028AB0F44C36DB113876703856A5C632AB2D5F6543D8
-98C9FC6EAD7609E3002A348619733FFB0C715F55842ECA2FA2A1B89DB93A3BA102504DC3
-BE1F54AAC59EC23E6EA3223912EAFC711DA3210451BB58AA7AB7F14B1621C61D9875C97F
-D4DEF3435C6C8BF9BA8574E2D2CC43EA26E34C774953AA0790E650ADC9BF79D57D90F994
-C1EA2B452B4CC7A59463C7CD5675632250C7A51A13B494D7228EF4843C8C1A75E3E2DD33
-3B64FA9ABF7E79185E0CFE9E416B619BAB1F0E27524B1736A97629DB8A9723231E1BB587
-8F94C1A223CABA2435BFDCC4D2879FCCE344F6387E33DC32DD59D38388A7EB620A28153B
-C3BD9BDC43B6918A64E00AC4B27B4BE4A1C7BBF0A6EAF2656E196F70526C7ADCE42B3A12
-DF7DF2DC001F96C1C9D6B74BBC11177772A906922EAA6D745CF0A63DEB2D8C0364D2BBB8
-0A0A2FDA0DCF6E4325742AE90BB62AEAC0DBF0962C8101216C67D0535E96A464BA2185CC
-612AEB75F66FA580590C43D13C7C8C25B858F63AD20258BE0C77809A641A8F8A662B9C81
-0F4B3D1A53A80E062BF3F388A2AE1D4877BE988DEAFB3A5EE0743EE75CD07D7BD867606E
-45AC6243C9C775429CED85E6E5CA20021C6603514D6A6B36C153CA063213F8894ADBE917
-891A1ECF868C64E7BCA2580A0180F6746F4B6016A5326D778EDBC993072DF8D6F78A53B0
-5CBDBD5EDA4C30CD8FA370F701F093A06904AFB9D82167C82E1D069047D37B9A437AD75D
-9F7F6AB574925D167B6C4BEFEC85AD45CAE11BFC1396F5E6B39843E71660875105150AEE
-F2290EFA830DF0B9817D30D52B75FCD43BD20D30ECCA85B20B32698600DD8A8D0BC107D0
-C77B43C87161B766C69F02E81D58DB7006C5D5660DDE997AB669060C70F8AC2FAC3E13E1
-BCBAAA34143320C795625287013C7EF306BAA36A61B9C71F91AEE7E543F4586A7D8BD432
-BE60AFE2EE0DDF5718B227784E7165C4D2C4610ABE9521854902526E553D0A0CBBC26EF6
-E109C7040C3E876F71581B2831BB782CED2D8ABA918859741B1F748E0B8F81B168C7AE91
-25957055231EF91B31C3C09E2FEFF6C1BA4CDAF73B07684306BDF5F735DE2980E24C91E0
-A96B53BF903A23A324E2C3DE3432762CC7995CF5435A07252D6B8053DFA0A02AAA0E52C8
-8AB643C591431E6D3271B7AA05C5B5EC445463AF4E13D37E419947E18F22EF9CDF1BD04E
-2E7F106D231986C21CCF02D103253678E4F56EAE1078993E69B76D07F1DB6B7C91F2C754
-7D521E7FF0ED8DD23A6277AF86E4F67B1D9B4FEC627AA69470922186E477EF75A7D77EF9
-FC4A16ECF9A37597119B804C927377352CEF88AC515D6E914FC1EF5AEA7AF1F3D3802C82
-60305538E678EDDDFA87ACD3BAEF1A09F4F4AE1AC97CC0E7785F3DB18B6EEAE005FCFD6A
-C2A611CB6F4D8671C08791B9FED03755A13B8AD33C3341CE9C4FA948103DC77EF727AE31
-0C00806D7639F922B967830BF717CACFAF26E2331C571CFE01B214ED596815C833CA2973
-1D3B159B691BE5722D8ECFC2FC07E0E2A12FA9E76AA3F13374310C58E8E7CB36C68DD1D4
-3E1EC626199B5B77D977E9786CD9102454834775BEE6EDAB046E7BF335BC4572544D9377
-D60C6C389934E35E40252BB891D295E8A64C12C3790DDB9AE563FBFAC83A3AE606116ABF
-36E94DB1368234A61027B95C152985B30D67C03A99C6C6A6DCAB9AFF3A8B5766302685C2
-A6438B11F72D91D3B1D2DCD97832861DF613EF54D4858B02A73D37AFCB0BE38C44ECC588
-20F47EA30645B18817B79268694829B33EEB7990C52A4057BE22490C688ED1D4B0B8096E
-F6E24114065FDA365D05F9804107459ABF86DB0E7F38378C018003F089E79764B45D087D
-02DBDBE171A3F280F8BB673D13826CDCFC624AF331BA9732D81E16E522B551CFB43117A3
-D2FA42EE3159041494C5B94E66FC3D59C0AFCC0785C89F4810F772E72CF7133CC7C75A25
-BF0648BE3E0EDD3A724DDB9277D8956876F0718ED0FFF0D7CCE2A8CD683D2246EB26C7C5
-0EDA3D83BF795B55207FB1B8F9559D27194AA9B0DFB8900AC8227ECFB43EC08A7B325DDE
-D23F0ABA4A1B771483E181383EE1AD282C1E69B5A9E652EB71934CB6065FFB8FBFDB8307
-785AF2FB59FBDC229974A8714C47302429B17F5B10492C7594D66BC8CE44A8C42755499A
-F34DD4DF71DC73E2DDEB16DA14D446A0E0AEFAAFA47A5290E7ED5AB76C076B892156B159
-A5FD0E83D88CCCBEAE6395046A76559F8F33DBADD30F8D530A342297E4E6BC9E0A0C9F17
-60ECD67C3008E01E34E5F688377CF8B6DAC331FAF3974572242DB1850F972DAA8D73F9B4
-1A21CD8F3ACFAE89915EF1A2E369899F81826565A454B0E68C02625AD18E47742280439E
-B28A956044CE0A1A6E71895528109927487B2E543BE901144FD3AFE5811E2D5937439E5E
-29B6B5CDE26F27174D6DF8D026696953A6ACCB3E84AD623C1183484F38484C41E31D18FE
-52BAF597742D38312C7F83A31DC53EF0FB87325CC73E13A9A8B467C07237D23FAD848035
-AE90BC164C363787E65E8E759BFB8A1D0E36205BD6F9B5D95788E2A8ADE9D6CD15E1437D
-F89755AC4FA834643732D4F5AFB8B379C8A404EB2D5795FBA40A0344DDFE3E0BF2475616
-9AABA8F303DCD70653B3FC4F15565E9A3C53E2190F3F8EE18DF5C5E74A5EBA1375946280
-93BA397B914D8AF25792043641E70260C6DFFDDA2E09DEA65B3C58260635C4E3E0D4E384
-8D7CC744A7D0E00EFE5A4F35B392E536F2EEF714EC49168304DA679F87088CEECC5DDBA4
-EA30D04BDD075553947644E66E5D5F50643FFE8A48D3B16633CD2083F05755BD47B71767
-53983E6F4394FD61B4964F749977AE31C2D5C25C3C40D1B7E070C7A019EC00E3C55A3255
-EBC73C47F2A4BED7BF0387F9E494FA3E2327D76584727AD5E8198BD80A56B7EBA9B0D92A
-D0310E640E53ACCD7DDD57F3A286A301FC3E1ACBE21A4E9C572BB15721A64648027EB8CA
-13BE6FD4C97E304406554A623F3F9FC0F95497D97A325BBCB5735E2A67BAE21C6650F633
-05B25DA1E1DF9417597E09C8EAE3C3AFED656BE4A8021F5AFFCF55CCDED9BDCE2E7E195B
-1BC94C800ED80960503D735684810117CDF144B739AA5F912E71530A244D4C9DD5BC1AA6
-4A6DBACBF7B11706973418E8C2E04CF96E21B56C41162C78FCE26B025FA9E920C9C7641A
-1303D118AC0AFB7C87A371346C19944F5AB905B59AD125C892D213989989BCE2366CD210
-8A07518095BF0051EE471575E0189E41C7350F1DDC40526C34081730EDE9756CA029B128
-6C63DA99B0A4422DED67441301E7AC53A74190D24E9CC438FC2826339FF05E3B58F8FC83
-FB8F58B14DC842565BD87ADF791E8E4413030B60A484128B0A91F91EB8F69B90FAFEE2C8
-7326618D44D4845ED40A2DDA09B5CBE186E330D4BD84A49A28E3F5D1AA6B37773C12FEB6
-885436DA31DF8145CF2A993242E6F2177BC470F58DA16422C8BAF4FFAEBD8B0D4AD5D41C
-A32147945C2158CB5113C64ABA334DA9EFE8A371332F1540E374E0AEBEAB6BDDFFD4545C
-E156121E3348E6BC1D3120D4BA238EBBFE05AFA4FDFB3968494088F06109BD62AF8023B1
-1F8802FA6322E0F11C03C97C229C80C656EC7E96E4B5D7BC8040E0901BECB86D9A4A5C70
-52B867CB27F11307C4CF24BA0F56CF555DF0A8F247D5A98B1B04B19EE9B394B3FF9473B0
-2D943013C77EBEEF429D97B42BD8E25E251FD7BB352C3994DFF181324936F0AE8267CE8B
-657D167E89F690B0079BB26351FC13A13F968BC5E99FD306DAFC454A5F1A7ED0F388CE57
-62AF1A627ED239CE9B4391FCA709030E0734D5D8E1F7F89B3BA991AB9D4AEA597C4B074A
-69F44BC22323039A98347F49DF7A98BF48E617184A03E7276716DC5895B5628A004FCF5E
-01C22F2304746521740C919F3BD418DE025AC898B104BF9D15DAFE189246D3FF215BE37C
-E1134F41B0D0F0AD80719202E6E3691465AC0C9430C80028CBACD2B80A95A6C10F39A5F6
-12DD73AF2C3E4E0770FA137759F5ABFED0186BEAE50031C202975200B58CD5C7AF95E60A
-DDB460008A52BB26F4847E6E290A2CCB1F984E97B899D7B63948411FB074178475CFC3DC
-E212536D720C6F704C1458D45E5F2D7DA34903ECF51947DE98552CB2CC5705494121A96D
-BABFF6E7B1CA155EC91D910DB288BA8DD87736EA60C2B5A35AD67E4C4B323F1CEFD5844F
-1B6947FCC7A11305A1CF3CBE545C891CCB7A10F9685C9E2979F7DED90DD1D5C69B934635
-B1444A33B4CB56210DD269B7CE94BE1282EE7A2E2652CC743F33D25F1E83680DC05392F5
-31CE3343914C7E6C77D9A0AA13DA8E7A97B402924097FFF414076A8E055E76FEB93C4CBD
-8841A560092F4ADCEAB9AD16D7EECD6696BB47AC93950A844B70386F77572A3766CF3AD2
-500DB126AD78931F8FA3D7DA41C1F3E8FC42CFAC03070E28707D0FCA1A6A837521BFC1C1
-86990ABEFB76BA56B8ED8475F19E3B6EB8AEB62EF86989559B76679FF475C79DEC1A0DD0
-FCFA1FE72E35E5A50086F49757FB1E65957488453EFEC4E973A48EEEA0F4D64054DC9667
-0AEF518AE6999EB2A61C1DC53795AD29A18F30369C3F4378B78DD76781E7B96C39D068E8
-819ACD8DDB59E4D0B60D42398E336838FAE48E164F7935EABCF60B8B6CDB887BA75245FB
-F061E3756EBFC0ACA6E0FFE3CFE8D3F67FB75186DF4557165E1A492FD523C7343B1C2D37
-F05C4CEBC077B8DA778BE378F322AC5CC3B06C2A74687B0B3AF9D08D453753B5FC6E4289
-F362954B80C0E4DF1915E1719431244BF87E065B4A033E0B204E6072D006EB10DCB9F916
-0042925BB8A82EE47AB260686DF9EA59803AFD45C4D0B19234F6BE7913519D61B5E6250C
-4E5BC6CF722B53B283F4D5E5D2AA7DE35B5C87FD62C9E9DFFD671BAE7E08E68E11710E80
-5448DE7D5D65F4AA2E27EF0FF16CA3E6569A53745123A9FD7F0DC8A57D1AAD7CAB961645
-F0BFA125101F21F64F0CEC860CE306F02FB0AF49F0C0C6D11B437FEA68992FAA2D6CDB42
-6686056F769470CDA1C158913715FDB4D4687D06545AC87BBD5283D8B9E1FD1B1B0F256D
-7C675712C2A6622A179F5AC2ABCD06070A038068033D07E64E0C70DEAF9D61DB3F4EFEE9
-ACA908C30023FE3CB81597386872FB5D5557BD4461D513B6A62EFCBBD3062E67095F1DBB
-3167E0338EAC1A52B38FED183AB520E882595FA77F561312F83C102B04486D2942CEE713
-92563D7E609E81354D6F8192CE3310890CFE69B41907B023C3451075383E4BCF6102A669
-4B0593D81EDC415CF7EE2C2803CE5810EDC28B09155F92CB20C139B43E07BFAB08978CD5
-65270BD77658B0D4259BBD9C3A2200B64F73ABE0D77CE6D491253C7590F98F3AA8AF8BD0
-5946A659EC1099D13E733C96A4D84405915B12D7A5399645D0C37C1944387D088FB083FD
-22BDF34BB31B396F618C518DA593A9584F8ED6E9F299E72A6F0863B4A3C9F184B1AAFC98
-0CC313B225EE3384D2D814A4E96C744E0DC6A666114241DA125F1178D8F1D986B7D31548
-F9B6079DD38BDBC0AA94F135C44D8B7B6E9A0A0B63FB5BA59152E97F61515F49B906C9FD
-42772EB4016B53417C5A2C8E881B0376656115231306FE3AEDEB6182220C2181DA354D5C
-28E0D758C573C113542CB5346ABEA9B5BF0243146C186DC5AE0BD9505E5517A6224EA50C
-315C9BCBF6707540621B95B9F0BCCA2DF5BF3E8021CE9DDD2A74B6DDB0E9F6DC8E3BFC11
-C0697E87E6C4C642D2172889DDF4C17FCD3E463B30D7A930E4B26BA7289702ED77F2AC66
-BC9ED957863A22905F0996D337CFAE61389D3C70ABE7444E8138BC1BC31F8E572C0CFAD6
-BE60B1AD639AD39BE03AD66728C1CE5B7F2DA53098008E10B82CC2BECEC7B45421F0BDA2
-183588B519182DD0C80B0EF409E2F34C38A7D205CACB19864507CCEF34C5B7A18B9FB51E
-3AFBC0970A799FD34464F7AA8135C32914D4DBC466DE2922595EC4A255405D04139C0CD7
-F162674F39D8C01F1E6062B5C946F2F4F5E2F49ECDFE43D2642272377C5393E9717CE335
-11B8542FFF199FDA0867DDE128B387A39CAA79DAA1DA1388B88A5C921BED6709418DA595
-7C8D96831B6FFAB26238DD3D11181345B4AA07FEE3D76093BA5C069C9CFE9E823416B6ED
-487308D542C84630AAEDDE0B59A256526169B820E56504014812661336692959ADEB6805
-C7091B7899F0EF46299C414925315D10A8C9652931AC7141FBD3DBB0C34476AB2808FF11
-9B10C17C796E67EF18A386F9E55E34E0D32701D1F77C78FB542D49C53337B9074D92DCC7
-0D4AE59389BF27E9CD453608A19855F6A976347AB95CEE2B07FFF6765F97E66978173C61
-61E38E6CC3BB2E278C61BDB601DB7835E9515D347F37A63EC6DADD2F72BCD46AA4FBC82E
-EC40DC7ECB825867B98D6F457BE4502C98DA8756CB9285B7DD1C867B9FCCE8591EF331AF
-44E38E3523AA39BF0922C6F59F1E9343AD34DD39DDF485FAC00B38EFF62E16CECB735ABF
-903630A30396F2912163FA8B23E97F5B81E2B5B538C454967644E63B351B068EF4BA9B3E
-70C65BF5BE8F0352F7C0E25EDB22716A632FD832D51AF2D26C880035D8017C02B0065DF8
-44E289E6D559125A31F76E256197DEEE1F2CE1D0BB7303A3CE177B692D3D0F8931A35048
-F86168DEEF39FEDD4860DBE06F21F21D35E8B982D299CC945E2C8E1D73D1891ACD1AE977
-9584F2F3E9B5621C6EEAFCF91E293996F35562C16AB5F35B6A0B55D9FA85FE3B08692C03
-E453B44C8E1438205A9F18DB136F954C7155DA1288BFB6927A4C308C86C682B78087FC5D
-CD3976667B4CDFB90CF4E882B1C35D9515760DD4ECADABE73C3E9758E0A8A3B01BAA6A2F
-091CFB987E893A722ED935642252512C3C3492FE736403EBFA8FD18FA9E9CC5B0E802E4A
-CF77415626A072B3EA3C637D2F998B91B7A7274C2DB664F4A9D73595C2F47DD61E303403
-04E0DFCF9CF520E33AC7E0978B004641E5B6A88A0657F615C2FAC770AD1DF1E31BFF6E1B
-8A32F32F0BE2A2649B9BF3F046D8ECF27A0AA62909D0A80262633733EFCB4C21A295120E
-9B9D193A12073BB638C3BFE75AEAF1B3F43FBE3FBA8176DBFC8AB0CCD2E874DE912E3A7B
-13421673D66744ACD888E2687051B8CBA461B90E7302963CC5DB88AE64303BE9BABD47BC
-05A780E1545EB389973A5CF4CF9E53953DDD085E617213B10B3836101E98A0638C1CDCE7
-C9E0D9FE79D94FCA6472E2C9C9FAF3D7D9F260FC849EED1236AD5774045E52CB82B0F7A5
-FE589651B53D7E9FE4A8848A702D6D5D0A415337F6E8DC7148ECCF94B23AF1C11616158B
-EB253C903DC963B61D2C27DDF6E13CDA799C54FF9762A1864E516B913C401713B8854414
-B4CA200EBFAA01F382C70F27589796D7EDD4A35334853B33347F231F24C1817657C93000
-2B59E0A2C4A9796822D5F7BFB3193DD9808398FDC53BC25F402AB126C1B2C83914888851
-037FF02EB53642AA0E6CCBF0ED5812527BB367DB4E67A6B8046DA7C215448808EAB80496
-FFADA52671C89E018CBC8D36CF78675E0A721FEE1112BF9C78D478024364E91CFE2468EF
-B6A0BD9E1DA67863124D9F5F996EF1FED356C7FD2AA3DB3E3F6CA36262E896894FED244C
-F3BFAD999C6F42F13D4AF617C03E29DD1F8ED75BD11F94B1BEA408ECFF117610EAFBF4FB
-241AC338E6A8714A92F2A5AEDE86C493792743F648F2AF6E9A2C692A9669180F629947B2
-6474C03FB8B712031E24F7529143F432607D57E81CBB91A0DC6588EAD2DF8AB5C43C45EB
-9DFA398AE8272E43503D987B36504181B2E9AF2357ECD3E6FDEC731B623D921F8D1D0A19
-027876125DC02D8FD29CD8521B36373D4498E2D2D9144C85BA8D5D9AF13BD5C8278F036D
-ADADFACE6FFEFDADFB88D3CFF12B2CA14BBA16CA7267A4CAC32A0EDE215D7C0FC7EF3B6A
-59A33CD5145E2D8E3530F94B5BECFF74357DBA205348FB22D4E3D40F77ACE73BF519CAE7
-5277729978A61B1B9B76E846EE15C8139B927EC9E2F8B684E0E5A30AF34A0027B9F2351A
-B149CE2C8DC951CD54B4D6974E0BD74BA6C2F83BF680F0A01CB39D8B835C097E262A77D9
-55A699E86D30312427EDDD64EF7A3ABA1CCDEC22EFF658FBEB30B8FDF59A9C4185A55704
-530A1499CD700E1D6AD5DBDE3B662DAFEBDBB185C32C7E34406FA6B3878D5B564ACC5D9B
-EDF6C7B42411081423FCD2BEB0AE7EE02272F547D551547A11F8CAF8D9F2CFD8FF3626E6
-3CCFFCF9277E6003911C54371677D671AB17424633B776DC98004EA4EA0917E085616ED1
-273E73F2FB891557CC5A9BB65FF704EE526EBF8B34359AF0381A61059E7B740D8069C128
-0F942C6410FE3ED272251F2653817FDDEF786B1F7BA9C6CE02C56C33D98E937EB303717A
-1AA3FE1CE2D10A5D07F0E7DD4269F44488ED497E75C92657A2CBD792B9E3DEC8C073ED52
-661DC43A52A6A8218385FD37E1D7791E540F225AAA90480B69468660E05F5B826851F985
-8D127FF6ABA8E58C4F69961AD4896B4EAD41D14399A3F7588E04E63FC1435DBD45530015
-D9C5A1DE717D3923919C31B79898FF17D949F47D354CD81840DABDC5585E3ABF11E556F2
-9EFC55559AF05084F95A5900033AC0AA2FE370C49C71411B98B69DAD30D9D9F75DC90A04
-E59234156EB4B9DD2F923A2DF771818759BC86E763FF36898697F37343FE7197EF5ECCD5
-0933E2C446D7AD1AE945A87A3B7F62F8E14899729CEF06BCDBBF29D65ACA3EB4293CEF53
-501735F2DEE6CB331ADC94F27492130776C3E3B422975275C115A1E9882C6A4559A698D4
-46C5CBE11497CB48EE316810CE428A6A08BFFFB3D196DAD7BD4778F216055C79C325477C
-92443E2978BE1EDFDE5836C722B96A070269D2D3A1438374BA6071FAD1FFC511BD8974A5
-803AFAA40E3509B10223D7924DF9215650E9F13E75293B799B4256B7DB4878F3936CFCBB
-33D0A37E209A1E3EA8EE6A3455A84E28552DFD56BCCA0BFB10B7F7D25983D3865A9C617D
-C85CECEF64CD8E470916B0111075DF6D051186CCCF48813C07E53D7DE553FA3B50B6F7D7
-EA60B3EF169527C6206D89C15436344E8C4AAA490C0D6F300D3A18EE3C50D30BE9ACB50D
-5BAED6CA52732E7530C67CEFEC9ACE3659FF09897A62F22A6383F7B62289052485B2139C
-48187D0FD3F64D65EF4E2678AB5133A09D448986C96C383FCA7E3518D91BD02A51BE54A2
-F7221ADC7317ECA49522C765BF38BE70EA692F063BEF59D5465E3D65DB466ECE7568BBB8
-526587C1A4FBCBA6D585509FC29F6223D68C4BA4AB48D83192EF4D323FCFCD2C399BA52F
-776CF7CBC0F7B9F828A7441FC1540DF41FFE91718AC9CCE2EFD9D0E8D8FBCE8402B441A0
-AA2F95E4508D703E86875A48BC8C579A2CC0D3086B99290845A44B3E14B28D95246607D5
-ABD998C92B5CE660D40D31BBA97CAD73DB5ADA4613520BD4C4D19F34A9D3E57D66DB2090
-30CC7F57D5108AC7DF5F528C04A15B360C8CD1ACB78F090AC2518C1EA0D64F0DF393460E
-25C7F07970E49ED6DAF204DD86A718DE11F8DEC66E247880CE1DF51FFD8A5797C63948A4
-80D37C43C508219F322B346B65ADB3A801FFB1033D409838FE05234432EFF0FE2127AB0B
-EBC5890CB026BF94AAC5DD98E4153015B36D30B72E5192DD9D5EC6E8609423DDFF7339DE
-5EAD4AE73019DFBF3BBD13FC154FCCE5F459FF033A826C7C4DE12ADE39CD85D3366B8CEA
-64D4CC905F352424FE9120F447B75A51379885369A73600366055384C7BE79205D2B868A
-1A6246C803C27D558DEE4EE108C013C6CFB8AC1016479E37C0FF0D4371ADE9EDBC986BE8
-A8861975C6761CF9DFB6F89244B2B447AA9E48E8EEBBFE1AD875AFE06D2BD72D0867FE65
-68D316B08DF35217AB5BC65200870036F850433BA2C26D1AF67C859E8DEA24AE44C6F303
-059B3AA2CC0F2DCBFA798E151627BB8CA785FEB783D59D10132725E44133655873FA414E
-C6C9EB631DF1D0D3ABEF257BDFA9B1BBF6C17731195DB3B53EA289A0D3E63F41A330CBCE
-863B1B6352A72A11F54C813595FA055BB5FF7F27735D4D3F5C87ED89FD18A4709B73CF8E
-64F9793F12A0946B974A03C4BE4C1C2CEF752D57E323981438F021334D69737DB7B9A0CC
-4CD5A93A3B9478DFEA4096D143BED8D3C4E19C7BE85436745B6BD0D54DE8DBCD1268E5AE
-D92F8D23596A27B730088F4529D03E2C88966525D62C4A90D4869514362F605EBB9852AC
-904758B83108A59E29BA45404380D86D51EC2567A3574A9C6889B22CC1C23063A782746A
-02F43654B378E2C60A66F583FA666105EE8AC6C54C17AE79D0BDCAEFD951139FD96D45B8
-2F75F1928870A9876678588B6FF4B76F3062A0B895F8095ED27A8E620C2CA398EA161BF6
-9EEE9567D3C4CBE7ABC01D7AF30BFBB269CBBD0BCE7208BE1C94E95639E99337C56FBAF3
-AF87E956EBBBF2D87FFECC8B32220949A038C48BE761CAD77799F8191AC0975236C15458
-A7957630480517AC0F89026DC1B4AF3B005DA7DAEDBE41EA451D4B28516204427BACF5ED
-968101E14C29396B7BBDAA67F10A602207F365E96CC6E050248C46BAE78348C4E016AB3F
-1A1DB7E9BBDF6C8CD37615A12891667153DE23FC013ACBDE84E5E490FDBF9066C1CB00E0
-528714B54E71B5626E71D387B8FD41B21E2DD15CD595EEDD545A90E8F0D02388820B2A97
-527EF7DAA65732B6EE2F07E2936318FB75143DDE8F5FDE804346AEFF05637BF48A705A85
-B6F3863470ED141E118801AD9F47FB05BDC65AAF8F398BD3EB895C3AC5C94DB7CED1AE7D
-1D7311DD67343AE0B5724A8827CC26E463AA76B00F4CD3168F1C92C64EAB1D001907B900
-6B1A12550668E688E2D0ED3355ED0271228CBBE4D56848F0B08EA24B00B5B20BAD06EE1B
-C6606DAA509FDC41D2BE545F9FA650E8FBB0E78CC856A5331A8A6476FA3C44487B9F37AA
-5DBDE9BE2A64C69CE8438170E2B40893AFFC0BE099EAB03E5034458D54BF9B64BEEF7167
-A25AEC8A1F7217E492E5674E4C8B343B9249B384BA88DCC4F8902FD4D535C0246E1609F5
-4285F84C2D4B489369576E74272255C329942F764CD4A51C730C99E7F5F8B7C52DD252C8
-500319E4CBE6C696C77CE1ED8BD05D22E4861CF9D156B95499B3718A47E5BEC9FD72E1DA
-DBDBF137EFD6CF8BCE7D64A27B8C9BF6E24C929BF07F5A62BEC7BC760706D31B98DD8E87
-97559CF8E4357AC49FF6B47667228686A3AE789D68B059FBAB877F3F1BD00841A1F151E1
-EFA94F69BCF41D4F9DB5423430A2AD2BCD53BC87A5178F74EE469772FEFE1153C8454288
-31B12B8276E3E54162B64B393BBF23F1EAB4D1D385FFA5CB3C57809CAD0A453A10661D25
-685A9C56B41A53C3B1CE6E41418D8B8104A2BAF3667EC877C9B6269BCFCAACFAF695EAA6
-BF13891E52B4FBB7543F1BE26A867EE6B515DA051C3C7BA25BA135FC186D4379D9AB4949
-582692485409A5DC52BD6836D8CADC2A48A4F5B4FCDC69099C3EFC7166ED293A795DFDC7
-3FC01A91C9C15219723FEA15A4FAAC3511AE8D0DCCAA1FDDF7E2AF4CBA80E38FC6D2D8E5
-B9AFE27366ADFF0529348BE4E56484F0E31BFB7B9DA4F06626599FEAD323CA644677794F
-541EC7888B181EB0AAED60E6F0E5FB4F2FE2564E2988D6441E58C2C0C1DE63CF65D625B1
-46FC422A0E0E77C43C8FA2CCD310B5694EC8CD1B9A3ABFFA25687D4013C0E5703094D5ED
-37295E540A1B2B2E836FF73B23E8CDD190D1FC04DC6CB9D5947AA853F6748388D400B6FC
-7DCCA73AFE6D1FBC61A7A3AEE4D24BA702A2F4493D484F19CDA1A850C95486E4E4D43F8A
-A584D14F82AA0B3862E1FB06E941A90FEACC607D27AE58CF19399886879BAB287A429D5C
-0C821C26C61F169F1B90CF77878968F56737041BE38776374546623553223E6E2A8682E7
-737528C915EBD41B263DF7E12E4A4C6967FAE40F90DA0D0410E0F22BDE01F018D63A8C23
-C157E72C6910157A63B33AAC9E5F3C58F771B8CD24F0E24C4EC17277C8B8DE5DDE52176F
-A9740EAD3F62125BE32678C35005CD445EEAB9AA1E9A71FD11614426E171EE85F5D9A17C
-536C87D58C5140A64B080966EC5A3E0AED8BACE84496BD019E6023AB562FBC1F28CBF296
-3FF98D715ACEF7BDDDFD65DB78CB3F0E16C440EE636A0D7C05CB97C085F7C5222ACC6305
-4DA8C3F7D950B0399B7250BCB66D0D520AB951530E728B4892779DF0FE56C9A27E279DD5
-02883DD2E2E4013D03491C52B21DCE600D68156106418DF5273C6F6FC9A3E1E9889DCE43
-17628702B21201E48D23A7E0EC5E1DAF104F3BA1F659B8FDCE301C3D7ACAE1B7CD6846BD
-496B16BF6DAC876C117242B3088287DF82F260F960CF90849F515702F71EED275A40A579
-B0B8F707681B5FAB21A81FD992254AFC0D43E88D641445FDAE5D6874C4EC37B2BE38D5B4
-6DEB232B7100BCABA7ABBD53F5455EB07ECFA23B1703A2690869A8D0E60276830D7B4FAB
-231FDF2784CC788CE61A4909B89C5B8A5791FC3160166BAB1BE25E57BFB2D162CFCF36D9
-CE524A56A15DC752BDEE0CFE605E5BA650ACCF0DE4286C70EDDFDF8527A02C3958B17C82
-1769E8EE3E46FCD93AFABBDAE4809836C56C242B0C6C63107AC6C3364B7C79BA5C62BF62
-EB6277B4F6905CB999C568AE118A690FCBDB37433DD2B360A7C66EB52DAEB0662D61DE6A
-74637C6C8B373F9EF9A473486F3A4326ED5A442BD2566912C9531C5EA6BA89553FB67C16
-1933CA4D7FF5886F2F6B3ACEBF939B682968D4B0590B0D39A0871A78EF3885E47F892C16
-FE93101266B12AB988DB622F4E408C442937B56007334AE919983566CCF994B3084C0D42
-5EF94563A51CB142F0829F5398B647AAC6E0010DFCCCCC15BD0EA5A6CC90EF8F790980F1
-4C8A27B2792B3C83E1317CB932DB3B28F008D442D374AA75573F5A324D7C5D6DE8ABE5D2
-CF78A931DCCAD7831AC5A7A5D5DE80E475DB271F0CD21A47B1E7DB5233705ED0D421EC5A
-2BEE73D5949400151866E065B28D6E1F6574E2D335BB542D16EDA5823886430390F9A0D2
-B937F7ABD1DA9E04894ABC066F8CF0B8BC196BC1465A378BA14D2284AE4DEA134DDD7440
-77DBA60CD0F9E478EAE5F7DC0D6309C9EA514D44C279700088581B29BC0136E2F4EA3E9B
-64403DDB054736966C331AC20514637A3CAAD1B27C569045C444D48FFB63091B6D20CC67
-FA5034880794ACF58358861548044DACE9BF02B4A23925639B7A6A5DD4B6AEB2F18C1619
-DA2E4597905CF4A00ADA215FF258BF38FEE6923D67424DC1B05015C8D09DB1FB7F660C6D
-E061FA2690AF2CA528AFDDEAEEBE6291D61955BE374DEBC8A915639DBC5382A17810993F
-92E7EB5D2492E76F6142679171DB74170A6B390CBF7E13CD5307CF04D4C471BE0C7EFEEF
-B36F609D765DAFF2E682983BB0CA6B70B713F1217C8F2272637C8AE97B3E15D5D451AAF0
-44FA166A93B277E334DB8EC58EA397CD013B53DE2D7944387712E80F086942728B9A4877
-C1193716F71ABCD563EA769AA555CA4C48FBAB634B1AACB77C7A576C4DEE78C5CCE3D3F6
-E483B076A4024292A35BC7080245E56B6D58926983C0D9C31206130B3B8AD5CCCF8A8659
-465C36D5C5FBEDD7B455EB4BAFF35AAAA12BEBFC6A7B40AA15B5B957625C37494177CBD3
-E3E59740FE558926927022C6411B9F07ED9BBC31AD206944E56146CA8BC0A9E8C9172C0C
-0B7C46FCB490EBD02E86F69564B8030A3280E376839D680786A0A068DFCF0A3DA5048898
-69C9AF0362765CB583B785FE8C0FDCCE4F39527A7B73565CEC9E798FCE909941522819D4
-519A12043D35DCFA7D9188EDFEE780E04A868346C68A3ACE74B16641873B8985C1F0C263
-9BF63ED86CB556943932F9AC71096EC23E9584C8CEC8E95C52A493E4463B168BEB6F259E
-71B2B22B53554E487A897256E37BD4C1D3B48DA9AA5C5CB8D5D85C61D6E1BE3A607BEF1A
-A8ACD46A93FE3C07D0BB9EBBAAF0433C7E5C6D5040CF9F5AFFB1AD8104D1328005CC5B10
-A1993D3EEAF3C3BA4A0B1A260A72DDA6ABD5358DE5171F1DBAB667AC022F46D3BDE54809
-790CC4EA533392E6C039013D4B0FA21E36143CD9E708C89CB13E09D624551CF86BB79C3F
-13868988903A7C5C744743FC8CC6B48219FBFFA584E016953F8CF342DCD69077D9387A34
-EEFAD0463AD98FCE21EE8342A3CC4B9CC10F6804EE9CAF70FD1C56CFEF02B7CF2D89CBAA
-E45918EC9445AF3D1C43DFA501D9B3789314063A748A6907BEC153F294D6D046B9C76D01
-4CC021D3074C0A2D8E92B45EBF14C1C5AA39546A2362CB8A6FA0F5198AF84119260DA3D3
-A89AAF0A976B1D5A020ED16268C8F1908400DDB8E27F57DC2B00E3E4F0DF1777A934DD89
-311A8C7309C24A670A6A9E03C094B548D223C31521DD7FC2BEB3DEFAF7904EC0123FFBE5
-4E627D9AEF3AD29FBAC003520D0B165F3AE91AC94FD8F3FA9A6BF9FB81863D03BEF8506A
-A74C7DC0B50BD327C6942905BD07FBD62E4C3B16A06070BDFBD80414CB9D5261A5F721CD
-FC7D1F1A6811E1362F9372CBAA3C8DA63BB103B2C10BF6F2504306DB05835B80FB70BC39
-DEC4DB3ED1EC4C2B64CC907D751407B6B8379F449210D0BB68CA1C445ACEEBF9C31419B2
-C4C5B8780991D042AB3948A5C5C8005E0BE1859B13F8AE6D4AF62F00B415BE5BB641B964
-53F037C492B988D839B96AC0FE01DC0EA9E064FF06EFFEFA446F41AE8E44AE58355CBBE4
-57DBEE1EACEBE69E6686B687CFFE11DDF76C2EEEB6662B1A2A176BA63E8800A51160A6DB
-886AC4C5868D17487273984BA2A47F39837F197D6A9B279D71157B6ECC2A72F83C1A5C45
-B17698F3183C00B6A61C732604E5520320309069628602318F4F68DF0BBC2BAC6E90D1DD
-ADAA738EFDC3F63E8F24DEC44D41D2CA546AAB5A88FF61081C144DF568F35C21A887FBAD
-C87166B58486340679B5F844DBDD772E9848400746A207BD04F470D2B2F14A36225FD693
-E1BC7CD6AA3BC7FE471C56B411B084FF8A67B0B42954C0915C7388BCC44DB2CBA0A70F4B
-1692AC59029B8181D12F6A1F22170E04696799AECE8E6B4A96FE89B7A18A4B6684815BAB
-D8D94F98302D44EA827914CFDE8CAC4CE48586630DDDE0FD1F9A57E8AB0EBD27F6A25186
-7986192B6D3F46C796247B1A220455A49745710E32F4D03B4F15636197C6F84967054365
-F7C0B1C20DADB63AA474551586EA5F055F8F3EBB1214ACB3128D4C6FA566C8E506DAD848
-6DC4A245D1977218241A5FC37AF7C03342EEEEEDB2EADED36EC0C43BA42F14E3E9601784
-5780F5C6E5262D96C0C50C87C9CE4E4666D1EF982FA7D4F99EB0A5EF4AB0456FEA1225A4
-E6873C1B6888ABEDCB0D84275EB400E73695564A15E338E00DC77981DE14FEFB40796373
-631102384B1A3C0EC239F19A2DEF2689F75F5D55E22AE9EA06A8A33424765D84E458AF21
-B8C99E6BBBE5517587FF76E7D02BC5AE43007F2228014951C93C50EE50EAB764BFC8A084
-86E97549CC9A8C53E442C8AF409C98382080D32974A105D60383E077138C34F887159B4D
-5745F7B6443B446C5840BB92A3B0BC317EDB0CAC5310AEBF16285AD0C4DCDE6E27C0185E
-9CA90D3086D6E11EB43E65F25F74377AE8BABC97E0D9ACFDC1339D0613600BF6E2F6FCBF
-66A0AAAEBDF0E9B3241F57D08C17612666F8286FC17AD0CCC5AF7F355668E146C3FF61EC
-07A85AD2A655DACD2CC58D5D0216CCE6F8621405AC7A4A160B6B2C9B6C5857D40A5BFABC
-199AD07AE8BE3169A9182F81F80A094608F1C2B894A6CC33CE4DB65AC02E3528601A27B0
-FB7E14B2B97F6391B0CC8963A71C6794E74037CED7C0F2D9B7EA192C44A5C1EC78535F45
-A5A38F6C9E9E811B950B7D0B2BCC7AB21E8B10057E64A72CD86549B52D74C806C242FEAD
-5751BBF62735377DF1C0582C89B0794D01FDA343EFA486AB2746A6780508206D0C42F020
-94F3B8ED6371412FD4CFF17DB123DD857DF02FEF68954C8A64FAE88C67351FFE15834360
-1F9DA7526CDD58BAFD5372A39BB7AF47A04BA972ED382B7CE3FDD92B98B9147EC77C5496
-773F33E58D6B9F48447D3BEB6B12CF2FA194EBD93B318014CA0EFE61E6299E097B394F88
-6D15B7DE6DBDD12A8B38C5D0F328FCA5798E951D950DED554353AFC64543CF6735456CA2
-72333B0797B4CF24D247BC76F9FD325A2044F01046343862E92591CF371C1A2F6118E36D
-2AA1EECFFBE7115C525A722072311E353526224622B96265B29C10F6FA3E35B8B4AC8AB9
-084F74CA7C2E39C19361F97BADE96E7962B8356C92DCCE8B5AB85C48F569001F238D113E
-8E0D83B793ABB238B8DBEDF30F33BE03ED480AE7672942C7F60FBB2B2ED85451DBEC08D6
-3F33AF72437E6598E90C52D62319A1F2018AAB1155506A96D4F2558004CAA6EC715D8EF5
-A34C7779ABAF2CC9A288DD88B96F0F3F1E45A6A7049348446526EF562DAB4EDDD8BB3030
-E913252DED80A8075C1C93E27509193CAEEDC132A3176490B03C53DACCC26417A5838515
-FD4A8093EAF7718341F9A6973474EBD66C63884BC78E318CF04B9D3449196110EB6BC018
-C1DB6CCBCA2ECD1016F1E884320B14B27BB8A15FB42E190C30E45965C32C21104F49FAA5
-B3F983C768BE7C909127C19EE6392D6E9E698D650CEFB7AE48B2442522D88C6D6FDA41DA
-B8B3187F497DA1BDA3FDBC8B71A619063D9461393FFD5A072F237B7FAB49597636B7A41E
-91DE676102B0FB2ECB4D5135C015B99419925667444BAB52923DE73287D3934DCB1BDE9E
-72ECC4C55A55BB24A71B5A37960993BC88A0C66B82C2E2AD597EDAE4F74FE918106413E7
-233C832EAD1D2A2E515D734960730EDB2A8072D539E2C69CC5C9E569109B20670157AB44
-41BC249E8DAECBD9F2115663E7C88AD8C4067158B822CB278DBE410E8B1E3E79D4E20C6A
-E8FBB5746390C823D5D818C3583A41A2D080DF439916FF23709C6E816F7DA9FCC60E5B6B
-FD17813DC59636D33A2523AED576BCDFB0DC88725D6B6F286B2C3DD85E53D825DFAAC9A8
-8572519A254CB4435907A2A57EE96CE3078F80E24C0DB0FC3B047684460F5314B1EE091D
-6CE4B884D06DEEBB7E1ADF4B44376699AEBD7A5F4AE19B5FF8022459E9E2D43117F4C1D7
-630028D14169FBCB72DDBE7E4BFB4B7EE1DCEEEB91623718BD1E5B9E16DD4F3ED2469BC3
-1BE0D51A530DE079DE096431EB3C624898333E4A271A79D33816881ECA7C355C1C0EDE72
-039E2800D050F507D05D8DC2A6F79C1E58D269B1CF397160A813A827B5D5060CE32B3454
-DBFD65339F3B75CEA60BE92A1848B7CA7EB730BFA278E8D549D3DC68E9EB32553FA32360
-4F516DCCC56EB0751383005BCA15849491D9A0BA4227295B88BD819FAE10216E1E2F7CCC
-DE0FA17076C881DC4ED1E03F3004437849D059449BF180F4E5A547218D6CA90D235A179F
-BE73FCDE7531099D073127D048B9D3050959CD6DB6FF19E57BB9F296536E33293F4856B8
-20A8E948E00F7FB3226F846EAB9F1A7DFCB11871E7B85C4A7BE6A023BDB2314FD77868FB
-E02DA316769382443FDE43AD3979D243726923904918AB90A8405B0184189C7FD724DD7A
-E4EA99A6E31C18B5A00448A8146A9897584A935118BBD8F7BA9EC471461E5D932434345B
-630674C3ACD3C97E0A5C1E6FB286D9A3ECF40FA51AD7C1FF9992E0EFB3633F4FE8450FB2
-15947E2AA9E07D07A98723DFF9D31CF3C50C4796D98DEBE12BD475765D8AEA0180CCB73E
-C33CC144FCE23D5D90282349CB17E9FA753A6B8D0F3FA480C5D6D4E11FB30393DC4A774A
-6C568A6794F6C71DBB7A1E0D9F5BF8DAF1EC3CC18CB067FF86201124CA66FD8F7B884910
-DF8511ECA9F027A27CBD235BA14613E32213923BE966B04A79A6328431B07F762BD7AADB
-CAC4E00EC767F91C3BDC7FB20329CBC2A91A98EF384CEAB49CE57F3A4D83C4A690E49D37
-BA278E9D39B92740923B3F3E5B8AA7743F2B8EFAA230C211884999091373843DBE82C2B2
-3FF81D8D7BDD75E9782C9F3BA1C587402A335ED42FE47F837366C61306807EB50BAB23F7
-196DD1080B0389BD1221115F17D9B51FC600C77D5B02D78F05ED65F895AD34CCEB36EFDD
-8A3289F4AC4472CC5513E688B96053B6DB54198E0C0B51C3FA3723AB54F2615E0FD7B488
-B3DF35A895E558A05C100605A213129C0D8DF08C92A772450F2F1EE7806DF2B5C5DB82BC
-4B72137716329403F9CCF85B592DDA02CD4FA4780D60E8B9BD7D079C59070046432F8A2D
-8BCE7098D4A81E6933807B0D9EB617C2D8F7DC8E29A5C10030C93918378EC771EAC7FC78
-9BB4D5D1CB078D4B2F0F239039EF9F1B45D768CF1870089F76F54F86CF4BF7A443A1B333
-EBA476838752720F8ACF49C0147F62068606057E9E8F55D3C26BC0328216D6E55B9A18E8
-BD8FDC0AE1FBD60D1244AE9B060313ED36231A8610D0DB8BBF8B9D0C218082678F828853
-2BF2FCCB4E13251E1FB176AF17CFD1B4E74B195FD65493F74C9755562D91D83CDBBF8693
-161FD054345DC816F885596C6B5F423605D0DA925E27D8A44F6EC50E36C368B29AF9FA5F
-7D634E4390814758A934E216DC092F352B49916F6F117EEC457AF1029FD0FA1B267BF519
-C85866DB602A67F6ADCB772EE699DF5FBE9799BD6B0CDFEBFAF2FFBA9E7D1C7A4E9A8D72
-B1730290E8EF082B6313E162E1C1EFFC7A404C28B4B3E4C9485041E941455CEC85C94BC6
-B727E5872EC049B0F6654CA3F21E107FFC105175C30BD172B8FEE93D16EB85F14DC911AA
-E9CAB4579778040FCC18F15C35F5CB1DDAB8C393476B882571B1C81777835F011B5DC4D7
-91703453E60205ADB46E9F9049F980603DEFA613F14F370EC8729C5D365BC4D128C65114
-833F57FEAA89834597C2AAFCDB74C5CA0A35B6C380EB029CBCEF5B7BE1D253760653677A
-78D18C6230986DA5EBC43888B7CD821C1EDC997A4A3574F695CFBECB60C7F07C5FC4B9CD
-CC49ED481593019AB8400DAE0BCA31F101B5483B3DCC330631F1EC7F4E5D3EB5D6E38ABE
-DE013DBDDD4FF6D9689C2F4F3E7D0F2FAD680B94B5375853A079678C3C2FD7CECE27C8F8
-7603BA3C73B1CA9CD33F9D114630E413F118161CE5C6B38C8C5827710231B9E8905FAD73
-DB3AC1FB0C7883FB8C0A96E05859265637903B41E662CC4D5FB36368E4400737C5F34F1F
-465CB2065E90A9B453C7D2A3102CE69537616A15A462087234A358808EECECF2E1704E35
-0AF5A17DFC5D5E83798E98861B94A1170CB4DA8BCA63957EB1B7E0515CAAEC440A291161
-F6B81BA7DEC7270FD3F2C07B8629E1CE3FF15376660078185A05C41D4FBF99285413F001
-4CE1D20E4EB2EF6676D1AA2FA8A4DC9BD3AF6F664F9B4E4B3BCF606D14AEA0DBC253E9A8
-75AB27F3D5A7328850C2E90B6BDA2420E82BC0ADF07C005357514257694FD442A6E701EC
-CC91B7E0845B17CC8F09892BA35CD5334DD73AA0424AE8A0E1CA52D2109E62EDE237177F
-1B469CDCB95F1ED1934C09C1C71A9061D0C29059C00D7A6CC1DD2AA2DDC209164890161E
-8B4532199F7A5503A4438B3769C9E1F8368764D4F5A5FC7CB397E27844ABC9F2498A6BBD
-B6AA3C33125B52F692D2E4ED469E7B3ED78D60BA285131AA78F581FECEDADBFD2E7932A2
-D96A86944BC7D3F511558E3BFD8AE1250924162874186ED3D12210C79C044682F7BC3029
-D9A352D3533BD903F26A180686482129DE478F6A0FAD7DFCB9EF25F13260B9B0273645B6
-24583701E37773426743C9AD1569FCB3C69277C3958944EB211758D1787C86F9DB344713
-9F522EC5328337AA586BDE5B734EBC6F5F392F7BD9D6910F204C63E9529C9561FEEFF567
-800BCB0E900BB465DE21A576A809A13F3E4FB24A9223B41E52BC297040808840FC7FE337
-7B7B71A0318EFEA9A421FBCF3B797BE09579FC5559C3085163CCD30F2757E457A04923FF
-DD33B439351FBA13AF5DF216A968D8F093540D70222A5F98CF9E6EE6FA6ABA02B3BFFFFF
-1AD6B5A3E48298FDB66E69459C7E9646829B032E99DBC5B4C98731D868D14159E95224EA
-9237CFDF32A20DA1A4CAFC0D55CB9DC4BAE3468A0A91EEACB9F6C76F677DC6BB83BABAC6
-7A7238F67F41F0A67EAE0578F56D3734C87304C0D3800E9B52DBCFF05F6EAA9440691225
-CAAB4C86856463B0E0ECE208CF4920871DB1EADA477879A4C64194DDC2325040FA104327
-FEE2F853DB4515C154B3B8A78419DC4B17C78F14BE6C7E8BB47388B11075474AEC54D6AA
-C53AE725242BA69651DCDDBA6774C3DB95B947A044D009DE74575030C947F25274EB0A1D
-331D25E53F231FE7C2B7817F44B6E98D0B845BD0A31DD9C8E3B6845CC80B259C0B850278
-5E0542CD65CDD0102FADBA33501C1251340F10AC63988FF53BAA60345A145455009B80E6
-D67C8722B22FBB74554A88B0284F641DA252B9A2556B5EC15DE1EB75C0F74CBEF4FF7CA9
-50B90497D23A935511F5B7EEA0B92BC686D71EA186B49B21E9183279379637F8BC3A3079
-3419AB94A6EAB55F602ED0D4EB20BF6AE82050C432FEA1EA3B5BF2A16B879E586C1130D6
-CD5682D7A1F51704EB03EEF129D7994D80183B70E3D60A5EE4CA8E21D4703605FC8E2CDC
-03E1FD17A2B788FD74DA79A0942856C022E9ED417BE6F097328E22717AD8A4976A855FC1
-5B8CDCB66FCAD6E6D87021578F2A3D93CBA708390E849C1A96E234EB91F54F53299529BF
-1BD1DC11722FB9DB27C98F2FB05D62DA1B7EA32CFEA033EF7C1C47B3FFCFD9A4BCBAEE4D
-66C94E8488D397644A2735E9AC8E0A5B4C61504D43D85B27026F15059B0717A0E9C2A893
-FD1A0C53815951FE68958615A581D9F1C22DDB219C3C7213F20C496AA0D04E9B3957F71F
-94A2A9E20FC1DE943A30D72E20E0DC0AD7D974164656FFA36F1940909464CA435D47546F
-4E74ACC7817BB6842CF97FF285E4EABC7CFFC7A314983AD5DE3FA821AEBA7E95252B0524
-D423F8FE71FC1E4D8883876DAB19415FF39A330D8F1F2E9E728F2D47EA05397F8F6D4A17
-7BE4BE649DB34CD403FE663509DB51FA3DBB4F3DBF4C969DDE8E18CC54AEFDBB23E286F3
-EF0AD94165558C2E1E91854A7B2D547735A3BF9A4AD940C328709F99801FD5CE9EB34C2C
-394BC530B2F79D6EB01FB151A20C03F64A76D6018699B09BABE16CCCFC516FE46A906633
-26E06B7BA28EE26134B52B96696BBA8A235103E8516FEDF892039A768C632C39CEDB3AAC
-19D71D351AE1DBDC46ADA5D3D547084243A87FECF11DD3A99C79E08A17969322C177544A
-A0A79990D1C52BDE6777A77DE02D9E9192A6D06D4B1D2FA19A95D1EB5B2F700A3D76D383
-D6D8E68D85759C829BA020BEA26587350B8BB4A22BB437999F0207B51E3C29508CE76AD0
-CF2FDDE225F0A1C2437E8607CD180CCE7A4975A535A9F1AE496A3A7D83A276C67BAA1981
-66BD3AACFA8CF66632E6D18D256F878143ED7EC542D7C29F16B0CE96D65201519B1A1C6F
-941B4812CE4597C92727C2B1E3D41AB59F3B026C32230374B012491D5DC66E20871B0EFA
-4A1989D8AB26B772A7BE6002E4FB4AF7F5DD5B0639FB0E59349A6AD7522240F19DEFAC33
-D0FD050E565E36E87C5CBF0D924A3EC16BCB31277F53770CDC95254C0B9DF1CBEA0D4386
-299D005AC2C1B4985DED85978FA75596D95488F9A16F77CD6572064B658D6FBB7F765CC3
-18C1032AB570E04589F6B56A67E0DA0D485062899BBB0E760E649B0485B13F76922AFF97
-59BF4651ABD8AE83EAB7544A2CF451E9BB18F0C4EEB431D46B65CC1B9049F243FE740FB0
-276059C3A80EAC689D5A511399334BBEFEE83FE0138D3F46FDE381EA63DD0A5AC4E36754
-BA7AC6784CF3A1428945483EC5DF805B846C2C758EEC2DF8A63B55EB7FC0762080071E10
-EEDAE6674E5539B69A6335C68F1FC10BF1F41157D082CB9376292CDD4362F14185D87F50
-369E7B562DD7F75DCBC86A5E8187192B61E3EC233F9E26230855498C1A580470CC20E233
-C8215A825640A89D8E21E4FC2A4EC8CE44778B4C96B217C0CDB6D2645FD5E4DC24D293C3
-84512BDF80C6B99FE14E429AB9C08E7AB2D752F44C1E826E91DF652505F6C84F050707B7
-9E222C6861D5302739CF4561C0A5FF82CCF7E7BB2B3F23360B8B0AFE8D3A272F6EAEB35F
-5419938DA96A1EF1FB50DEFDB9C9895BAA791556F51D3BFDC373AC0FEE03560918977CB7
-851EDC56750C708883149FA8D939B5BC7F7035ED3E2F2CE7295765C0BC09FA3E18D350C9
-9B40E2810C1FD915C2AF3AF93855AEA12DBA06896A51C9B2443E2D9A9068FC76E353699C
-B8A782C2126D7947101849809294F5763E150498F31BFE1D5D8AF704BB59176DA3DF2CF9
-0013ECB8E30250E5AF4152D892F4BE558D140613936DF6F9D43629B1594FBBA870B0FE5D
-1BC168BC183C60BA2ACB3C9BE52F853AD4FC1B009801ADC0FB070C65084ECD3165874E91
-4915B5F188E4CC3BC03240CBE3224662D2B3AB7B3E177E6ED05C7EDC0E96600FF6527A4F
-2A63179E47E74DD67A4D11BB1954DD479D7B66FA38BCBC85411B841D963417853482EDC6
-0753CBD2E0B0EA725170E33CF7B7F801BB348538360EF54A01CEB35AD465CFAF5ECA3EA0
-CE3DA1240E1C94A7F88375ABC46AFB407FED5EDBFDD79AF542956435D271EA685D9E8474
-ADBB88246355C959AE1408A5C4E9209FEF36253B0EA5DF070DF4BB364FFA3386A7FDA80C
-046EE0F54552D258C3BF0C964718077914D4A43854FEB495FC4D421C2939978770ABD337
-3160C7D8C9D81F1F3ECF40D24885AD5F26805DFAFFBE9661031313540B02E71E1B9676F1
-5DA9BC5311178BE39B0FB98F3D7F1064B7E76FE3A15315E234C712AF8542E4E1CA1BC2E0
-8AE69382A34FAEFA2E0F67A6B62144B0C767A45C5DB57648171D43E8E07611E04E230C15
-5A16B786236833B51833EA22321EE4A3B2E273EA7D452957438428BBBBA25E31A5332106
-54AAB61F2302CE54F7B2A0128327D60ECDDE0E455FA05B16747F75D9A27638A174482ED5
-DD91C796158D9A20FB380971BC4E30FF0BC9B9556B4B53085044044AB9418C2144087A39
-3FF2988DAC87F5B872684A327B30E362978BB4903DE7A4C3967F62712B8EA2221CFE4BC8
-72E0EB73E63A06844ECC468DD8C9D2D774C3332553B9FFE6143545F214E3DCC512E15990
-9EA880363696C962E6912D26FEF0618B88BD1587CA13C3A82A423F19CF9347D55D005380
-3B1B91B352177813C3E20C5F04AB4B9A2AA11CD39E11125CEAC385C25299DE0B617D81AD
-8091CE925DBF4675E7D70A515B83800F1115762A7E964FCAE0C61BEFEAE27CD77E39153B
-DAA1C87FBAC70011B9A0F62A838A8122903AC09A39E53F56935778804BF3D025F664A9C4
-3E314ED0673FEA3ED9857079FC6A49A8B77617014A7054017601B5C6E75C8CD05F89C2DF
-D8ED46914521C2D972BBE86480177A3A2B2DD174C77BE7FC9E0069568B392C124774A1D8
-DED4DB00F17024B55A5048A4F33C6EC5B0BB43EE3AAB650D9BE28160D4C0F128BE5FA21A
-A29DC060CBDABAD9BDD6CE0B5A4B2051E038794AEA31C482C2B5586320652D940FC3D6A8
-012EBE0EABD7BC1491162F8FC1C40D07B904B5758515C1286DE71562A790E8A86B6D626D
-6327F9C7EE4EAEF270D5A6081025B95DBB7F57C33B819CD417850311E3CA2899703649A2
-623255DF77C213A59602CB749F49A381C6101D27D7975ECB414D601B1F893AB8B8159410
-E92550514FE10C04C2D218C7B8EFAB3A007816C50B3CB724411558E8DC8520908C205239
-501DB6FF5B5CE1767C7EFAACE931987BE0797361B3565571F440FE447A168AB3360C3E36
-1E6DCF8F6482885ADEEED01DFA23F47C6B44E6268DAA6962225B10D37E57E20D9C55376B
-9D6A880A90D535F91D3893FC09B5409F2D2A428BBBEF2D9DC4686BFF8A863A6CCAE5FCBC
-5090B2B9841AD3205B0EFBFF72AABED459118C799C6B281B64500243BCF11D5531BB74F8
-A7F676670EA1342A41AC8FBCAF459C9D11D5673A0592AFF53ACD4B94904F7FB3759C59A2
-A7E5FC2126ABFB56535D0A6240CDB83223EDE4371D910931D7994AE05CDC24FD81FE8126
-5E40835FCED262A0DEE35F705E0668983D65A8CE7DB1177CA8B7BE0A73A99D4D3C44F401
-DD6CC8CC119FC36438F18A924D6DE1C2040D2BAFE336277A751D6D4D05A828AB3FB8BD48
-A7DE7C166360788AC8DD81662727B330D860166B2AE789181E4231B5AA3A205663024162
-C053F2213D30B5102B3C430F9B67E3FCE64FBA1BB617DE61D2A64FECEF8B6BE7D4074E75
-DD4AA701474CB17982EC4203E1754A19DE41874EE1818BD4F243869BEA6422CDAD1FDE4A
-84A1410C9BC92A32525D6DC52EF3E90F5829CEA418542FCA02FDA62666386F628543CB04
-D08188E6B9B0092E6D00C6C75C5CA9436AD0597C741D4B2C63E585470994B5466C509B0F
-D077B49D87DD6BBEAC8C6C4197B9C0789025B49BDD9534F42CCF987DF9B04B18D19F9343
-A91696E0E206F4DBDEB45D6D7697B49C4FF5584800CB512611EEC8415BFE1983BA96BB82
-3AC3E496D9D79C6426B97A1455E070695A27E407CCFCE7472F147EC95134B89BFFB87146
-982FB4756612EE55A782F303B54670333FC04E707FCB84D255B05D52AFAE8F473E8C4FF1
-F6E95EC1B820ACD2D3E980A1B778C4568693AFD446C6E416C48A45CBAD61564329C4ECB3
-A98B4ECFB3551D1F1C03717D29A5DB62C8F1B21D036714A94CE536D0E84E3E10800AB513
-91E05C62F2A9FFEB3A738E3262E1919FDF43EF49842F6EE5D309FDFFA0B74FF64262AB5E
-813C8042B2F450A5CF7B547A8383039E7C14567EAFCE9644DAB0A54249EDCF4C24EFEF7B
-B3EF129DF5A11E12A78FEBA6080680AF4476F4C0AFF6E8B27B07D6EBBF5B1FEB28341344
-3154B99A65CFE335224F382137E3AC87777A6719AC1CA6832B61AE8CD6A1931105707F0A
-DDA25615B526EA2543F6FAFD00D70E4091B6D5D58C9CD62B19C70D7469F6FDCABAE2A517
-66C9B0DB0AB351973A4E2FDFF81DB1651DEDB905ACC447FAB2B2803E90DF264C96092528
-8211E23246BF45FD1AC67983A7FD5B371581B8BED06B9CF8E6AA6C4BC84771219E7404B5
-6DCD474D9B859D1891FC2231869763E6B8F0615D7AE7B83260DE84BA39D6D60F50BA70A9
-EA8FAC771A0F0A745932D00C1328806D938CAE671B94EEFF484E5FBE9A74A97CAD47358E
-A3CE9F399407407FC199677DD7BB6B7B9B00AAE6EA1633EE18DDBD40FEFD138F8423B304
-4B9E9AB192B7C767D7D63AAC804F0D5309E0FE72A8259BF12DBE7A215B8FC8460C285C4E
-26067E3C558163C1622617B082C6FC941F8563CF4ABECD0DBF79CD5DD86B492E3C46D0DA
-BD16AC96ECD6B41212431FECB4EF59DC7DD3071CE030BD5DE690BCDDEA9A2594C50CF77D
-53B223EEA513B40CEC7005C4F6B6DE2D3680EAFFB6FBE0DE70E7DB5C11F2BD4085C123A4
-73E5CA0785FE70E38E081B5971D4C390A87CF5DD83C8BD63C4307D22A1680792E27FC431
-8D403102A052645B4AAA9BEEE578CA28E2C15DFE12134BCCB2171C15A45C5D4D8ACC0EE4
-A2C8AF801D64D5979E52AC410A69277160104A386D747814F0DC0C178CCC2BB40E175992
-9D3F05ED411630ADFB8E4E57CD223E012F457A8A7C2BEF27BDFD41D3B39673ACEB92A48C
-E3464A8720196A60E21C1736066FD19154C02D7BC22E821C76F4B89185FA39B48B00BB85
-AE14236DFF7E1EE1466C65A1B4B9453D8ACF727CDC0EA04D85E2A4F41976E4833C145444
-B0465FBCF96BEA9554304FBFBA4C39ED11F2E1D9588EAC200B31441889B081775BF75B6D
-7AA3055C85ACFD57DCBDDC12257F565F1980DA3215AB29A2545B2FEB107C91A454DD3C32
-D7D620943472E7AEB5805E64EE7B1D3582A2DD74D439AF03C00478FC35EC9017F1A37B59
-A31A196CFBC38B4921A76E41E3A6E2C0E5059FC3848DEBAA378D87736B01C6710B5B0DAE
-FB06D00BE44EE7C687DBF6CBAE699D88694891A95392324C6C49595C7113FD6D521A182E
-FDB264432F3B661D4E86766A7DCA2E53F72F7FB78A0C436DF0D516EED141D796F3591226
-E617BAE549DFFAC4CFA0F555DF7DFAA525DA35DB699A892B09E654992F99F89CED6273C5
-9EB9C512BFA0465E61FDE63D312B1B2758E645893A19C82A81E5E0F5AE8E51621EAB69A4
-1D425F9F78B47ED5CEC857DA012E641D5C203532691F9177F4531EAE8E6A7D5A2B1B374B
-B921CA70F41E7F32A8D83C54AE01DC76C88A96C1403FEB6942029A86B1306AB096F8A42C
-2D7FE35C7E9F3DD494579CEF39755AAF7C74909CF5F7322C4FFB2C5A196658B7AB49056A
-E3DCABCDFE40DB0912B5E15BBAE08B72D7AFA7D64265F4185401E6E723E151EACB8C7494
-819998FDEE918EE491E4F9D5F889378256F2F7858762A5E049A618ADF34DB73540486414
-1187E3CCF635097AFEE95F695F806BA1419D85C50FA033E4E9FCC155849677B3A20F6451
-D8E4E5AB1BFBD967B5F53C21A30EDF1286A0E19FC557598294586D5184D1CDF8BC83594E
-17333A522E32233DAA8A6EB39A6330013C32A2E74F0EB6234B63D47A4C8D21E1618E5906
-5EB21FA9A926E01A78A60FBD71808A0B75F65786A9E3E08488FE89E433C287DED44763E4
-F317DAE0709D7D54EA969B751F4C62AC976693FCD366804E66B2BA8D955945B86D492E74
-F17C0484FA5C45D7F60DB0D4578C5725A88A9DEF8E5D31EA02411CAF6F703AF96F50FBBE
-6739B57D4C1C318FE7D491C94565DEBC43078303D329E87078EF9B48D66C3E98ACCFEDC0
-A31761AF6854E5C4DAD36C809876D93C06D91416770CE8852B5E54AA22F6EF1A5BAD532B
-E4F55FE7E2AB457F3242030F443975DFB0F2CDCDC1BFE629C8BAE7AF2D21C9BEB3EA10CD
-E4EAC54AC081CD3C0AA161C52BFAC3A9E4F0FF77563D6FDDE73E44E926E1BDFAB4B1A11E
-2B4A7E1D2CF9D6B9DE48D99DF99E0DA53F5A449B344AB2ABFB94BE9E60E6E9B328B58337
-A4D4BD60CBCE14C364A2A1D5C02410C2E8A98CFF3A48D23C752413A4FCCC5C044AC99451
-20B15B31CC5C7B5FC6D80866C1110B45F9B274326656CE6D74F3481B7D5DE8E5AA907509
-C15914FD27CE89F911641DFD588812A8292504EBDA5645E8C510F5E88EF44C573CE46D01
-EFBC6E3E1BE9600D77210B10330748F210F2CEE4841940A78AE1352654139757283F0FE8
-12040846B6B24F1D96EA06CEDF19F0E3359C8B30C3986C2E20F5801C7F74ACA621E8C4B2
-4C38B9888AE24013371F19C80165522AC90C40832C71E617E042ABFA071BAC4D87D91F86
-4209F5073D3E54A26FC2FC8F89DE3C1B121881665D48339FD2FE7B0ABEF5491941DD26D2
-B379900687DC8DAF6E35153F409DD58DA91742E93CFAFD431EDB7A32FF814048DCEF7459
-830CFFFCF958160B1B54525EFC46D8892C30561D0D7780625B0876D816A0099AF1EAE992
-AAB126289D55638559BBAF487E1A9E2F118B3D498C49767B28FA680BAE464632C94435FA
-E32836F8093885A91F66CD5070B91558616853AB410AABF0DABCC02BB85344751A2B2911
-3847CBEDA65616487A853D9104D0E00012F179EEB06D9EC54CB50DCEE655CDEE79F89318
-F8212779CC310304A2F604402C8EB99DEDB3051CD1EC0D03309EBDB8C3B5A89E06C49957
-5E00904DA0106F87D58FAEEB8581EB47E982E29C5ABEEC747205A33C7B05A0CED74C3403
-0012BB647B5AB617AC8508E8A0F254E102406EF1EA86DC39CD9335FC8A5CCB1504757BC3
-AC11BCBE92800AED15E84FC3A6FD8BC6C27C4A13AD946DBC65E45B3C1F72D4D2C1793512
-9CAF2C6C238F1E57F428CA2CA51ED139015DD06B931A9FD41A8A759142F50D4A18D9E071
-3CC7607EF0337C7B401CC2E47F0DDE63B32BC1DF572F94991D1BF97F1BC17DCFAB95A834
-E34652C6BD93277754DBBB1DBAB6F0158CBB6E9304F9A1B5DBB370C3EEF6A0F937A0C7BF
-789CBB57E308D2D3EC0A0F04BC3BAC016AE4CFEFD4A5F5FF9F2289460CC7E6FF27A7B421
-BA3BA86F2A48C2002C4C0379D90B50952B6A629ABEC22143A906752E0BB2DA15C36EF74E
-DB102D691DECF27A7C252D866640FE74BB7BD351C4DB5C8E4956FD73CD6675FC53DCAFE2
-256AC5E46FEF1D0044B5A347682FAF71ED9CC08F231605BC342148E3CAD6A80ACEECC89F
-767E814046DE67F5277CD737D09A62B499DFF7908242C6E5F17987573334AC66ABEE66D6
-1C61D14C3687DBEAA7BE38D248A7B8CC775C5B577305C3F41BAF7C7D64B43E7326133C2E
-795F50EF42EB3F5817277E2690C8785064AB6BC61AB04F578549BF671D88E113DC704764
-91AC7787C2561DF6AE9F3BA5FA24F5F2C49B8B72833D030536BCF0AF10592FF37E223065
-ED6F4BF075F70A7D0ABA84CA427CCACF9A0CFE46A429FA64597C677C71A231C997AF401D
-07FD7FD98F4A5826DAEC4D76B2E6A8DF68AB8EF09A0A6BD0097840364FBBBD4B93950A16
-CD68B07CDCE7C341AB8647A3338B1608D67CEA47D26EB1ACC0F94D928F2930C2CBEA594E
-B773548213CF17642DF03784B9293BBB8BAB745893C2CA0F9450A337E448A282A285867E
-0B0A2F5DD49A23D475709131946B03E8C2F7B2D21DD7F1EE583B22A73D81E5F72136802F
-D917750E53E63031FFBA218DAF8B3DBEC561581706AED8A5CFB6593F5CC98BABB048587E
-C9EE27EC04859B6C233474BA9FA8F8D909B17705C6F2BA0CEF169B46497E712C458354F9
-F0E1B72581F18BF74AE06CEEE0DC27FA684432625C579A29843D44973D4BCA13998DBEC3
-0375F1C05CCA91819C3F7C7F2A240B515AAA8403230F9367CF391F3538ED5BD391E70F24
-51B6CA9F969CCCBB58A05FB86E90BA4FDDAEDDA84A73CD40617486DF08FE7985A55F77A6
-B2CF450665F98F0D173D0DFA608A4E89CA6B7CF2F86134CA0B97FE3FA0856613C7E71D9A
-4389BEBE6C1DDF23A7D617ECF980EB78AC5FE99665CEBDF1BB8C1CF29C345B94591CE29F
-3E77AC66C3A9A1FB34526A1F335E71FC1AB62B4E8237E80CAA0265FDD418322B068FD4AB
-0E603448CC61D57106F1BDDB5785AF5A18C211021FB6F91AEA6112BE9F34A75C6C428EE0
-8101FD9904EEF19996EDC2235F3CAE00B0FD20331597B63535D001A5A2951F4057C83A8C
-04EC71AF466EB9EE31CAE51F453423FC327FCC256D71D4E2D956538C16231BC8E6A54FB2
-85E7D5A967CCDA56DEE48109FA4776F87466F0F62355CA0990097B2BF7F947C0198F13F6
-EA5321370A9CDDD612DEB3C91766A19B4228AD5A4D782D9C51BD3DDF268D53C24F6E4543
-52B2780CC5906D6D08A27AC49043FC1ADBFC07ECC113D815AF2BB5922E42776ADBAFA1D8
-E8608AEDDDA45E181521E5A8C39BFB2E9E72A7342D641574D84AAE3D23F114E2C675E50E
-98C0C4D59107E15753F2E29B2EBAA4D40A0FCB785E0F20FE5EC3F4C42AF3445298625AD4
-656A42B95D3F3BA64495423BCE66806EAD119E6F949E5E0CB7D20D8B218FF77704BA5CCF
-C6B96CDE2E22E2A1866F80C103C986D01BD96F2207438F8132ADF46C5E889C2752458D26
-050C2D2D9996A7E90414880A34BF4F6F7EA862ACC40E6446C8C64BA66314493C05D5552B
-FFD967B26CAFB3238DFB04A14757FCF34B547F81448D5BE2C385775093FA69D2B5264954
-7552C28488251224E4571A0537F87370D575C6093047374077BCDD8315E40EADF2ED65B2
-9BE930D5A78E0E4F21ECB50582FE1501FF48EC392D1717D5037175395D726475E79B5EA6
-68150DA75B9FA24A530FEA3EB4D2E4D73A66C800452FA1053CCEFD77046B058693170362
-AA4EBD8C51C334C4C24AE69086BA5A9AB3E8540E0AC782324DF007DA127A7CC2EAAB55D7
-33201140FA9B632F11D41030ACEDF37F12D4E4801645CE624BA973671E41C1A11169592D
-CC529462D2047E2A5D06FE543E5471D0A0FB591A9D3568D2B642C2DAF22BFAF136DC1635
-11611AE38717F04BCE872368BA82FF9256AAB0AAE93D52A286FC62802FFE2E8FF98414AD
-A2E28D0C07D95FE5C9B025A9AAD8A355710C6085D45BCA501AFE400EE1F9B34545AECCE9
-8DF25A6C7330711288765392C4529746FACD974BD8CB996395FEB547A9D674F5E56D4841
-32A4B48D87A380C52E05C86083677D88696CD2CA221E676C8F950FEB61CC6CE37D055DDB
-83089B0814A90EA5B3EDF692055D7DE2208F5F5151667ADD999A0301E9D2A017634D3C5F
-8B645C726D0BEE71D4098E0739B44D565FF574FE93A250AAB0879413C38763AA3B294956
-BF0649C5495E92262A3EE9E3CDCEFD1DCED80221217ECCD09A04B2759C746D720C3E88E6
-22174A8E496228CE9BEB430557D8AC5A813670400BCF93AEE40CFC554A933EEABB239B80
-EE603F1617B3238E4EAF043699EC674D348997BD3105B8EFCD06E55F78AEA6AFE81EF9EC
-836F4703650D803CD01DC38094F11CFF0B34734308908ED646E5B37BB9524C886DF94F83
-B2D470752A139E6A06ADAEB559E3D5A1F4EEB78F896AAE3D9836D4C7D4576877307821A0
-DCBC61D1318B937ADB53865F9F9B6B90659DC518108B81196CB6E81D676B1EAAF9B0F3F6
-FB499A99BCC7169E7F37E9808634E2A0CA9DF40F204F86FCD7BD135D177ADF005B5D9D9A
-0690DAE940905664994FCA90777CB9B3C4591FC0881FD146A41E9EBE7B8F74DD407642F4
-5BD399C6EF5471E987E01A009F532C2E66305C890B0B582824B527ADEDF668456AF3776E
-4634332C59C3133D8581D47EF6B45B636422CB5FA0B117FE1AE0361B93CAD6850624F353
-FD41296FE84391636A2EF92A3658E07B857DA4FC19889E760494957276BFF9543FEC23E5
-2A7C9174B581D299B52DD03AE726A95634C8BAC12F17B80B3B40BF98BE848CC4837C3CFE
-FE2E3B64B5A8BDE695ED0BA15451AFC5F0576DB1E9E9F29F05D4DD02EC3AE44E15171CC5
-EC254176D86C83C062B7206966E7F0A8822816251C0AC4A746F661897E24D2A44AAE93E1
-259A4C582FA34DBD0B4952CEBD2753EDFCC37ED685FA00E67C455D03072C2A218647B582
-F58270B59936EFFE692E0F27DF5D73AEB8D2CE0970629D51B9EB91C0D2712CC3BC71640E
-9ECA1D662FFA06E071D1E013695854792DDD672080A0AA42657C9664D6D850757DDBB167
-9FF6A837674A5DBF38B2A435C2AE04EB86D351FA0CB82F0D5F00A96D55976B44D6B6BF5A
-75346A8CD71230B6A44268B73188A84C47F09EFD13CBEB51CCF7ECDE43A3BEC6933643A6
-68B023344E407CB2A6055EBD6E75A27B6FFEFBD095828A8C5B9A14FD78AF99BFCDFB0A27
-3313455D19B2036304167E9F8264FE47E1F5AC04EC94FFB3E1D6C90E1758758D2E811C7F
-DF1EB0AF24EF89E907484BD07B8D825B98D99AEDF1FE0D67FC98A0159DD6492503B86C35
-FDBFA654E3CF4B00D0E4E50A77BAFC6D4CD69A668AB5D0436E9A2DA573E04EF308A6A928
-29F21A8419FF3B7689590D3787B3CDAC9B6A98FC0AC7B06DA9748F5765A25708C3E9DEB4
-1DF4EFD5BD9E0C1090BA956EB65087F5FA803CE15BD0FB4090EA9DA33F86512A67CF8775
-BA3C3D834FA4D6798CBE5D5439279DD0EE083DE2026B2EFE83C203C632193D30D390443F
-A5D1D1288C2B7395BF91F3FA657BDD688A562EBBA50DF28EA5834DC1F9CE073B704D2DD8
-594620A53DA722209A6C4A9A906B552B562917A86373C43132B5997CCDFCFA398C35EAB2
-D275883CF4C5AF773B535BBA0CACB12ADBD2B3407C8F046F1D4F391EADA619AA2DB788A1
-93B7F6975889D7676AFB6EA09978E9590E75F7B106112D0B62063A21DC59110EA5E123A6
-51F2BB21FBD6C80083E5B3405835F9AB6DE5A7C579F8F7B006983B897E4C9224BA21EF0C
-DB8546D2F477D280F554F98AABF7F6D7E890B327129F4D43E3BE119D1E9B1D42FA1A7F39
-0941803CC1752DF5A9198AC5AFC71DD6402095EE312A89D1466307F0353A610881A56891
-4EAF39DB13B984A78C1B9EF169EF8781DE0BE7B20698502E8F81BFC06DBF766B3CE28A43
-4801EB4FE9703BA5933AC6F0872CFFCDDADF1135D02714C30D5F54D36DF3415F416D66A7
-EA918A64E00AF9213CF9CFC63B200BBB4402E53DD95BC8B5AAC20E62964AA87173563396
-AFDEF06AC069AFBB08D6600AA3A61C23682551F73B2B7E4DD70392464C439FA6CEE41A1B
-4EC280388A8DF86195788A9B766DCB0E1AD6AB7A1C66A1835D7AAA8FC92741104C6A5553
-C149A5BEB648BD3488C13494D9661FC8F9DD431E9EC1989CA9B35E67A2BC9FED7BC3E362
-6389B29B863DC77F8ED314B47B4B86C9E559A6E41366D47672D9E9314B192833D3752C70
-3A571CF80D6F165C660F42F58DB5CEF453943C7DD0D252476F678E44C6340B7E4D52C927
-5855FEA030BB191D34FBF80C039955C2AC6F0C38F6FFE281A52F13B62543DF45BBDEEC7B
-A2CC3A125963D1524EFF639AFD013A472B336E43E9256C3EBC5910A05F641EA1ECB98857
-FDF7613E9A3790F9FBE16F8B1E9CAC2829EC0B651F00E1B6B56F0025ED82BFC5FE1D227E
-3DC00ED525823F310A834A747ED0FB5F5DAB7EAB307D0906AECE8AEDC3808C53C3C9E954
-6771D79028ED61CE595EACA42B6ACB8C47B1417F1E88391C0CE35415C9FB29106F8EFF96
-82843119AF94F798D7079D40F21B94BB3061C2155A87075846A62B1E1292B465E946AE00
-A3EA7C2057244AC8C4D54A8618AD7B06A833E9C26BD2BF4A40CFC7F7D780DF4C31B0CBE7
-0657FBF4AEED88152E1FCA2956141559002CEA98E7299FD83BC9BF9CA0523697D9E188AB
-2D883665C329A8A4803C8E66072DA31E615FF9254BA8CD94A5C6CA0EE7AAFF3108F48D79
-0523D58E98803CE03FC53E71DF394691240284E210C77595F292696975A206A43AA7FC7E
-C0CEF778307863F56016C13EA6A26299FF417E0668692ABCD895E7CAF13A9C1BEE2B1E62
-0DF960006550CBCFCBBB006257051D7254425C49F840B8EE5A44A61E5AF465A3A831FC26
-A8A2062943955676AC4D5168EE2464067C056B1DCE6FE780108953F9FAFB6F89DC775E63
-6E3EBD3308468ED7B31CCB4D80142AE342D630B919584B2DD67E904A48C5CEEB65C1C84D
-8D2964A4842E8C2A83129C91662137BE032B007A30A0A4D2B31ED3B1F44AD5275FF105BA
-929ADE2B78FBE0F3F34E2E9A35568D96214AC1A347510E8E5EF0C9CCF08798C5B0C09DC7
-3FE817E2BD84AF14627A8210099509770C680C327ED697A255B28E81DF6B512060D47084
-B8AC21EF59C34AA36A9D14A093116EADC45F3F64AB297E114053081C8D6B135B36D25AF7
-7F2050648799554FE6BB50CB6E957E26A0C62788EB76901B438AA6422118463BCE7AB3F8
-C21E007C21A9434A0294650543B58F0925F664585BC875ACBFCF44F5BED0D8AFB0D8FD6E
-215A03ECB350DA054FE30172E920C34E64AC011A655F5A782178DCB3F65FEFE0CAA68993
-DF30FAA2471396F6D74213C38A511773DC7E84A9831C2E8C4B51EFE3D8DD0674050B8DBC
-F1E09ECA5BBCAB73780ACB37D46742594C6070EDC7F5C555FD50044208F6A26316F17B25
-1DDCC694443233702745485F3CA188CD3E1F833C99ED46EE525D31C6518A86B723E890CF
-DE3A834170507C9F24F28A124DDC734BE002039E81148D73F8C86918DE78E07964001EFD
-9A3EE31A0347EC258360D2CA6AEBE7EC4D5FE0A29D415DD78A13B8CB8DA84AC8E480FD48
-F4A9440EABFD6A1C4988A7D6FA7146CBC14FAEB8864C578A81D86C61C0D08AE6D50F5654
-DDCBD02D7D9D9AAA56C417D2A3C42AE47ED81350FF917E7D5D390D4BC8AB934353D902AD
-98BBAE982ECABC933FD33310FEC3266BB373AF3B53D8880A8106253FA48D78899D0E6548
-A9EBCDED56B39BC0FA78BEA9A795BE60BD3D60C1DDF5375DE0800F1FD55AB46B49536F7B
-5986E790A4FFAB8B81B7CEA21980D0634E7B2CC00D1D7A9A7C00A5CBAF65476A714ACE77
-99795EBC2A944A688BC40F2A23DF71B3826654EA7646D2338BF23E216A8EA59AE50DF2E1
-D6A05A86C25EDA267225592F695FFCEC993CFAE93452BB3F2C17470552564F2AB70AAC50
-D49ECC01A418903401B4BC6F3E0D3DAA9CD062AA1A8B93016BC008924F8AA7075ABDC5E0
-01A215A63EC8A8F1FF0E7F5A1102D2D5DBEEDE248904EE28590A4E48C98B4E97DCA69479
-08FEBD5BD880AA737D2A600A71D1CC35B20612F656EF4C125ECF75DC0E1BDB57BB09BB26
-332CD1B9AD52147CDD30D03EAAD4EDF4C7C2E4092C409701BBC8EC163E4C660EB018B0C3
-4D4844EBB910E0566DF844ED250624A6C8BAC481B32024FD4EABA3D4E8A67F83FA4E4927
-A15D64462B3004F5610EB847E9413CE174D64908B0464A144DB43FA1FC8356FBBC00D303
-74E22B3EBB141575D6EA036CF0B469597C57AAAC00F840EDF201E57C0D84929A34108847
-E90C97352CA858A6B1F76E1C772C1DA2A8362D02EC7C112E8755C7D720AC5A2BC528913B
-37E0BDF15147DE30321647D8001FDCFA437709AF90ACF0E56196A9696C0054E67BC6630D
-7D99F3092D8DFEF0C788715D9BC43788542693045A485D5231D731EA740BE448DBB72ABC
-A34AA5B8B2A4EF6E91F61B0A8AD9666808888DD61A09CBF2FA30E812BF1B73EE2D387C6E
-4821DA27733C60795C8EA0E806F74601EB9F3676284A37ECE9495CB87015F18DFB39B9E2
-93303261BE268AA644CC7793A6266C026A06BFDC3074E7A67C8F6B35729CE40D6C343C4B
-95EB9C778F6D513CFAEBC5FBB8AC844D1982F300675B0920C098AB288D12423A3401B6BC
-CE7725E619706B6241BE210CE68A5B3F068C7255C6A0959CCD3AA40627230F27057001DF
-328A741F867833911AC3D24DBC1C79462012801A6E0897F2896AD1B5345F72BB639C799B
-FB4C6EFCC57760C82015F6855099EF7C5DE59C5766BC6DD4F4A61110E8CD93BDD891A83F
-D8DADC0AAF16032E8B02E69F1EF25EF7CA8C23815C38F7FEEC5E4A4F11BF1E0C2275FDE1
-B29CF45A585F47962E6137150F0AEAE31ABAE6DD3D66E54D8B7E6707445857348F6326A0
-9F403CAD72D93B038C91B7465347160DE4FB2F2F81B4BD24449CE03BA177C8E13B3D590E
-A6F4C5CE396D238C642BAD4C5BD4C0B2EC8B935BF9D9A85F64D867799103E285264A5F53
-CBD2E0B0D69176ED284676494369C38711ABCC23E61961F6B46C576B407D273EE84E274A
-E02EC5C8923ED2D5AE650450F5A1665CC148AA0FA6E26143BBAFA846E9263E49C9ABA1C9
-E4ACC9A7E6ED0865B42023F21A1F234F485C4F22B58925B336BF883906ECA1000F456773
-48250626716520CB2CA5DC9EED93F694A1CC6D7EE74CBDC660E3A033EEB0CCDADB32C5FE
-9F5A4BB9BE18F13A6CC678213E631916E283D5B12DD6B9926279CAAF46A469CC3D4EF950
-D701A667C2BFE15292FC3A2ED9E1C916B90C9E25606ABF91FE44BBF18CB230EAEF6B0C30
-3E94C24F82957557840C11F4845C7F2C49337CB588FB9791EF1C40D4CA00CD5254426E84
-391C265D4B21E9FA474843065E306BF794BF3F798505285246B906CA4F343743C5539EFF
-AFFF1F93CBC5DBCA989E64B2133EDC8DECB05FFE150469EC1433E3A3C0B49B7C14EF6069
-CCC488A1AC96C39203C010647ADC1BF32B69623D291608BBEEF2C5FDE603863C91029AE1
-B6287F8576F73922B5192BF1B226ADC2DD17D98B8D0558874DEBF7018C82A9E9AA9D89F7
-DE237D1DFDDE2BD43EFDCE2ADE67906EE2525A667883685DCF78BCBAE353486C96B3831F
-C1E1C7DF12DDB8CF10895DABD16A1DFA87AF1FDF8F4A6DF019395D713269024BA721CA02
-C1E2E605BED8AB8C822CC84903A7E5BA090900F1A409F4B1D30F740325E4995A5C9FFDAB
-1B8480D7B5B8CEE4F35206E13EC960650A2C1D0C4D7D7407A86E583EBA40267A67A8E87B
-19D41649DDEBD7A73593AF94C2366CCC6F81BE9558CCC90CE95060ABA2BB508467640E6A
-726ED96B571CE6F2AC68EC104D3C2D3AD54F8490DE638B77C93595E2B1A44B079F79B487
-B92C12B16B203F91DEC2E7183AE99D79DCE4BDE5B240767D52438DC5AED4ACC691683BB4
-3D2A1636C917B6E270F309D3B75D34FEBF8BA64B01FDDD848D52C30FFAEDE43EA21C9ECF
-487A31ACC1B1405E615C9DB6A9B96BC45114E20FAD0CCA71B410BB14A39997E9653FB11A
-666995E488B650EEA712FCA7206F5228061BD5BC385DAE9CF087449EF683F69F673F30C0
-33DDD590F086EDBC3A72F9B17F488E2B36A381141F355AA1AC81AD4C103101AF96259CE4
-30A0612CA3110A5953666DB362D982687010AB9B81A63256AF6E69AF6D8B3150FE860D29
-E0DE5D686096A3D523EB8CEB214DC73CDCF00D2E98BBC713C6D7883AFFA02188A5E8A8C1
-007EEE1B185AF14BF0D0E06BB144660A5891C8C7710B2B85CED49F14A5D5B028A8FB6464
-3CB3B42D1EC8C334D51A270A3A2D483B223C3D95C733D79A9EACD97F7BB32D28BB381D40
-399F0B9BF194521F189D37040DAFDC8723BF45FAD60D2527503894BCD4B0B746734915F4
-F5B04D4E5044631F40BC3758DCBBB2A2AB63D7B44EEED53991AFD2988E13A7A6C389641B
-32819144DA32DDB3ED45873E6BA0604A9E682558C0BA2B139D29E4986037AD326BDF4079
-B6C071DC3607D52DA49F6BF8DCEF6F04C4AB860D660BC30E758518E16102642A190F89BF
-D0078394DACB5052E74EFEDA5BC176A861D8C5D78C83A46B4D5230786068F12BCFE1E73E
-4F7865D5B86144B26AA5490F229E6FF7CC5964AEB6631B08E2A4EBFCCEA10488CABAF2D1
-576155E6C862855CCF52C74834BE25DFABC0BC4FB7A1EA21B2AAAAE45D1455D844C6AC2C
-C57D081149F6E40B1FE620B697424B85A7177F19BC63E93975A08CF009C4659EF47A3680
-488C43751FCD7D848FF55C472F02029253403CB04872EA4364DEE69934F6D049113FEBC0
-E3E5D978CB8A2423B9910E3901981DAB495C4F323C3E3036BA45B66BCEFB4DB5C7AE91B1
-7A4A956471BC552A1C109EF67D97069D3DD5663063262FF4270CEC1079BC4C4C2AF643C4
-FE0B5F3B39389C104D40B84035710A59AB041F67B5FE2E5D3CA3E720D1C7A3F104A74C05
-DAFEDF29777AD6FAFCEA4854B864DDFC878DAB7C42CE153FA01857AC1D5B1990EB73C82B
-A01D3557E10D14742444761671084F1242C9D2EE9E211465F5F8F0333C77B123D6C03A92
-D0D8B91822D6E20DAD190F4D7A1FB12418D6FE63A2B1148CBE94328ACB42845E27928643
-444C3378FBBA83ADF56A3DF9ACF9C1F2A8F3F2F3814E26D9DE7494E2F709A57E373A594E
-4F64FDFDA6BC3866E3F7BF58127F6337165826F3D20DCB22EE9D7DE5CC14D10DD3BEF093
-2B0D75E289E5A332700C2CC5EDC65CC61C592E19144A13A38E24B1FFF7F904CE261FB76A
-31DE7360290C8B750D92E08A25DCBF3BE97529DD52F004AD59C6721FEF0EA46F1693C5D0
-992C517536B390C86F5E788995B35B6311E6EED72D15594717CF385DF042F8515455E808
-C54A0155E58D4277FFFE04CF0C16E1259F39E84292F592BF936FD50BE54ECAB54BD27CDC
-4AFD246C35D901882765CFA13A381A4F888462CA5A775DBFCF37B864AADD8796ECB2E13B
-4156BDA78E6E7308F3CA382B478A60C441B09483E6CCBD51E02E5664E8DEC087AAC030D1
-431A2301C1034BFE73EBB7F2744F689D09F424F22A48960C991526F7063B78EE26D0F997
-B917DBE51D7D291F54F1C22D3E9F9B8472CED7317B6E91F4BFD2E3623D6F3FD2401BA7CD
-6F93918D2D629AB72C4060B6E72AAA295F0EAD79B0A7C651D5A9FE6348EFC9396664557C
-0D5688F01962E8526CE7A55866CD56847F49BD43A674D6C22EA7EAC1A4D437D2A9BCFA53
-5361CD640DFE5189DEC2AF088359B13C6AE7027EA51DD1E757DFDA89A9BC23BBC1138839
-C549FEA71E42F497440214911982F115D3A9278D2119E0A17F0BB1F8A86B7A776C3EB940
-8819B2602C66C523FE07DC9AEB0E6D4AB6F39A308A6E8F755CFA0F41796159FC55B3A083
-F28494B4C0FC25322D17E6083E79394BA1F444CF84E5DD9D9721121277CAA3E0E380A7BF
-93C2335695E2F34D05CC3C3FA3322A7C863A16A9A5AD4BF1C629BEBFC20FE361AA2C6CC4
-C0D3EAB00097D9D2344B8772B049CF951DCDB1C23C138B2D7DA551A22A53EA2F604D7BDE
-8AB2D034ADB57A65DCA8CB55AC778F9649BBBAF8E7223096CDB9780455268FB9CD379AF1
-DDECC2F7C22A25683BA56EC7AC869150810D8A6A5B854A78DDA6C21C9FDBA227E26809CE
-FD44A8E4593DFA5B9D170A19B9DC779F507FA0B28B5C8E3AC017005FDC519E8CB69B9385
-760AE1A8A111E763FB0C3B083BE1F083AA14DF9CC83142A1DFEE5312097BCD8DDD91F113
-0A3B920FEC7E9383B23F7A396BDF28BD1EBB48934BC490D133D594021C256B698BC4E93D
-1E746522E485DD53C1B7980EDF066F7C7FF9F27FEC20ADDD1FEB09CFC81F2B0E0820B90F
-FB40B66CEA152312DC5E7F8CF45AA0B45636859EA9DA112F76B714CD83CE2803D3BDBBC0
-A3FD5EAA7609A1E4A82DA08701A3AC0818DAD502DECE3A5C7D9B5D6DA50F8535AA1C3C91
-A9358EEBDDBDD94AAF1DDE610E9036E1D5E1F180D426A8B33B4E640BE49073C4B0C0639B
-0A28D6E08D76DCFA2F4B409EA1EFF27437809073F29FED0E64506185022EB0A5F9A54BCF
-ACB0F2BDD859222546338939F73C212749C36D6B0E9AF72EBD059C3838FAC738DFAA69B4
-FA87CFF491D877DFBAD90222DFE9564CDA37E5576BD66F635720F398EB6863C5143FDF5D
-A4F07317547B86C5B335CE05755AAEEAA8A927933B252E82BEF3DE30DFDAC82D1354CB63
-028B03BF59AE93FF30771BC27B186C7A9F7AFA7525F719EC5EFAF2526524BAA29793D5ED
-C1003A42ADC2A344D0E4210254F2DD33AC58649887FED4080AF18554646C01BF9BC54959
-D0C06E459CD818580444E37BD2852F44C8D6FA18F7DB6FC15174524EFDD0BC9867832DB2
-F837374BB8C9031A27B17A386E6D00BA61D49003665E1231D79E05EFF440E48FAEC9CCC3
-5985299B3FA94586B516C2317B1AC9C91005994A84466514D7EBD12AB998D4D99BA37C73
-EE3C723217B4D9BD5A0AAB12760886A8A99A4AAF038EE5626035CAAB42C6AD08EAD6CD2F
-0FCF85C2CE2D6150A559250140D19610DDABB115D625C17455F928B55F762028E49E4769
-872B96F84031DA85ADE6F18D601F6D576C9CB68B8FF011B13DA0DDE4D6E35E5A3E6EEB73
-248161764FB3B122A4F40ACC83CFC073D4657C042248684EAC14C56615AB156BD549C964
-C8E5A5DD901BA9B583B4D176FAACDE48BA78601EC7BBDF45AC7319F7598A93B68088BC1F
-B6B4F429609FDAAF3235BFEDF0AB25B6D2BC024B533E6E300165ADBE42C890F17B9FFF6E
-45B5BAA3A14FB36D26E7DE60CE24F4893BE0E2CC7A780BEB1EAE0C6AA0EDCC3BF991E5B9
-A6F98F5F5428AFE21113C1D8DA34783DC47969B9669EC1F97EFD43FAAF5C02FDB722840C
-108CBFEAC5E0BE99AB3E21CE4E622DFDF8C32250C10D68EB0B6788E5269479CC441B32AC
-1FBFC5660164E498713F6A2809F1BFDD79E8340EBB90481932706B378FE8DE987D5BFA1C
-B688817968E797903E558F8C7D0DEADA0B5F08D3D9D27C92E4DBE0F123261737DA41C264
-E59CBA14C0F60459CA59AC58D1A766EABC8E5CBCE3D94E1779099B56EBA27F5263DB950C
-ECFF97261AC0BF39C4364FDE7BB1CF10DB8C3EF5763BB7976815D78C6F886ECC77F92BB4
-46D284D2948A94FA4E5E59D104858DD3ACEDD4088302B71E6A9DD709D47DF40DA7FF78EA
-7A1E226F2C24E73D292B63100F1A6C98548019DE887E739A4DDB4E1D0676967C64723EF0
-F1CEDBA21FF8BA11539BA9F93E55FA54B3DA6B81C50899ADE4EF9369DADE1FA36E2A889A
-A3C22215AB36718E57BC68FD115801B35CDCD592DB87FBDD9AB399896E4DF414835FCE3E
-EE36D6ED5672E8113B19913958321650C8CCD69DA0D9D7E9C0607715534BA674118C8BB7
-CA7AF1A57328FA73270221F6A2D429D4424F1C13D8CD7C6FDE11B2A119C30EBBEB1DD394
-29B266261E39BDDD5F2446444A9AC581712FCA7B9073E1F4BE450445FC14EA0352D7633D
-75C5C5F24DC0C99B888707A6E9DE9927EAAFF533868CC8ABF725EEB94A96699A0821DCEF
-BB2A1DFD6D566446CF3CA7C80460C0772C5B7D47BA2D601D3EE74A5855AF4A35649D7DAF
-0A87747B37F2B1BC2E13DA21A70EC7D78831B840EE91B89BC147C1A58DBA58FB3749F3CD
-1216FF6DE2271EC85C84D07598EF77275ECECBAEC3C99F7686836A8480BA6BCC30B555A4
-0CD5506DEB52F16CC6B4F7FC8B2D8A508FE947505B6C4DE055A188D28FB639553C63D5DE
-2FB330ADD822C7206651DC5E0C5259E6F3F489C0D57BCEC574BEB3E8CAD2BD4FAD239B9C
-4E6C0F410805E831003F27A569B327A52A5B72446F83813FB2230FB670C2DAA0E36876E8
-82C612BA77B7C486DAB6B41AD9D41A5A8FA66E116F48F8A4573536008C9677D75EA140B2
-C11892F86AD1FC350E49C55069284311885787693154DC010F49927AAB51AD8C816BB00A
-216DB9AC0739409ACEE53EFBE5429DC7FFCEB9F54909649F1CA3DAC3B450703DB8A4DD3B
-170969E3381FBE10637C9E69A646C1E58EE791FA68E4350FA17BB704AC1C746591B940DE
-618B5ECF8FE03DA7E6ECF7F208A004815161E7F680AA7EF1001D6E99526DCC4F9E8F7754
-A56EAF46E1E7CCA21E319FF7E44D531E4BB04B7138E6F6A522B58CCDBBF09EBB18287550
-66CC6E7D2660B9DAEE62164A62E49684BCB64D521F6062904D26D8DB101AE8733777CA16
-B20066E6E88C7BFB3C56156AECC89B449912B0C0F362C949FF0503D9C349003284CAF806
-952AE72AF962F13CAE5A87FDFCCEBB81F154487B260229A9904C44F027C776C4FA9BE776
-DD6D4FE4B8D8C9F52897F843CFD2B14BD3FDE0509659E8065F6790F2C95EC56FCFB366D4
-582422CC5011BDCD3466235BA9212F14F2FA0F377DF05784D75F45E5F863A27879B9BF1F
-DDA7916CDA88995E2B52F93A7433CCA2173C1B3AFD83D736D4555A1BCDC83740E9E69A11
-9B5629B03F5A9D18047663D0A6154C4772AFBE9DB5DCC115263D91F95DF2CCA51A4A655B
-FB0B99EA0BF628C0FFD5564E882303DE00B69D666F3FE93A2F2358E3BB4BF60B6F89A7F7
-9421015C3B64A82FA30A92D62B0D3564ED96AD8C228A30F4BBAEC782E3A01DF417CF9F5E
-8B7BEBB8840BEC912AB7B35BE4EFF43E8891AC25F57DF8AECEFF1840C865A93FD1F6C3E5
-F0E48AFF008F52A23B5F3ED5612823AE23E084A84201F9BAAFA5C1D6670CA499BCD92FA3
-C51C0F5C2262941FFAAD5B4317068E78A1215B8F32E60E77196008D95FBE342426E61DB6
-7DF41434115C10B5E04DABD307EF04426DA652094C53EA304AE96BDD6DAC136E1B0913B4
-6874CECD3F1EC272BC4B5A3264A7C3D8881F2415165383BDAF1DCA39A1C53C3BD45E1665
-16EC26F583D1705592AA862D75CD754B66F0CC89EA5A06351BAB9FEF4A8B592D636C23A0
-7D82581D2E972AF42ECF8CFEFF5168695E998D8A756FBEA0FB03FF2FDBF1A3979767E0E2
-A15F041CF0870AC7105E8A2AF5FBB0E00F212C0430C407278400139624895C0B67AE7649
-207A1EE4A781EE6AF39E8C4A77FD75DB7992CB90D9AC239BED5A56105ADF5E224525B4EB
-DE5D43734ED2BBBA28C8CDE0334C9393DF8CCA236FD8E15D5D970900F4DB12C02FA5E2A6
-837C40C097B24942820B116C7693B43F0870BEF05AEB81D73E2CC42E448712D37C22212C
-280E111F738B765A74DF533182178E6CE806AAC22F5E270E1CFD406902C45BB6A58DE01A
-9D75F874C698BD4A9EE40414A446B6E49C8D198583D4A0B51F8FFE1FB809B8E7EBA85242
-477A9C0AEE9DAA8F7E78A5B73DF068D38CE0A7B36D857862DC2CA4C0FAC20A0B9F7F6BCD
-EEE7EC90079B59F46B7A354D1A8D6D4A71DF790E23C4E106EAEC1497DA2B5E36F3EB9E12
-4D049B5E3D92C68D388E1D9D8749E93D2AE063770EE9B9D9491E62223949D60B11AB8C97
-A87C3CD45D13D1B033272698389E80746211AC1E09ED156F7E3AAE2016B178CD4ACAB399
-0C849249133D5C2F855D55A31697C551581953F622621231DBF209EB003D04CFD33BC791
-7AA01C79C2AFCC2308263D0B886A9524FEF38FB01CC278A73A86B06A0467F6A8E57F488E
-F20C22BCDDF368A4322F629D81680312B763585EADED366B810A95977066B421D630CAA9
-0A18AE200329931AF4A1F4DFA5830DB32425AB3B36A023ACD186B4F51AA3D021B44ECE3A
-042C12DC54CEE0B038DA451724D8DA69CA2ECBC3C9E986263ACB791A659174BC940473FD
-03CBD870A2079E225D78D7AA550A3F42FBC2F027F184F54903A1DEED269E6F2CEE48A7E0
-E9DE7018417C65A6DB9CC89A93B1297981530C330F7988161203354F17ED6184EC023C95
-584E45E8E88836C5263398540DCB7EEDDA5299BA8CDFC93E39287F425DB852EAC42A88CF
-3145792AC6712403EB9BF1ADA24CC204F9757B4EFFACA94F74E5CB546569F0C21EA5DC63
-6A7C20A40C6FFF3B173D7C64DE1D6E47AAD74AEE3B27FF5E577CF3BABDAAF91BF166FE00
-65B36A224C4E83252D7820667A3D7A1EE57326683285F217FC893C374DE7F859DED7C50F
-AD5A30931D50E568A12C43C746018C1C35306EAD324CB66B0F747BD24023CEBC636F21AA
-B1A396FF13A2ED3321EA129F72CE2E2B9FA6E00CAB30CD5E8DBA1703962F33E9FB3CFB01
-E91BADEFD13500034B926A667F48ADC59A4CF6D07FD4E7EA96417B25B08FC1F284EF2B3A
-D0A720A95E1AEB3834C453ABDB93F78CA55544597E02CFC6D818423FA15D5D7AA96D9EE7
-6FB33A9A708DF038B19E7ECF0E068B627C26E5A3C53DFDC0A9678C8AFC496078056F8902
-05A38FBA09155052F80832357B84CA86F3B9C399410FFED89BCAF4ACD808B6C7BE343571
-DD2E812C5CA964B8933141A33895804CA34F77074785B58913B2CCC2445B0D54F4D326EB
-E5D8307C92E0AEBA068341A5A14D3AB5AA38D35C0C020F3AB33608BB9C7C28F7BD1022B1
-5ACAF78740EC7DB4AFA3F8917D5722CED290D5764E7FDEB6B0E9EE78A8E51F4F88FDB506
-87EAB486D0218B9DC1D29FACFB7BE25F4D85C1E8AF20B039E23F1E92C79FB13C7EEFAE44
-6567C47AAAC59487CA15B65D3D14CA2D8AC17A8F3ACD19C7B58C2BBCB22DC2F3DE7FF42C
-A6EF389584E4F59CC35D84EF94F3ED5A604DF5CA83035B54817526302662BA6DB7202638
-B4BC47B6E907B0BC3FCF31D06943FF8E04C1344AE04F96583A8FE674A79615A76807E1F0
-FA1EDC93A9538ACBA48C054B4087CEED23E7B4F1750A7629C333102F38001A7A29DFA697
-A3DFAF60BB89908CD78AF393A469E54A41D31CBD35D2BD98E5C04DB8ABD7C6AF6A47F51E
-2F9F4DB3CAD40A85C32ACEAD6C196981E16F90541929DFC9BDF8293ADDA1840EC116F3E1
-191AA907CC72F75FF0923BE2862199035CA1CD4C423171118BB8D250B5897EC9C2AB8C88
-D7FBB99AA99D6D194B33A9152E8C1750498EAAD12C4EB45C1604FB747BA3FCE8DA3EA4B9
-6861CAB69A1FD8D04011CDE1807BB405DFC1482CB2ED7D3AAA1F8714CC8163FD8F0B36BD
-31AFCAEA934265898AA67B80877BDA58F3E701F78CF052AF02F08D3AA1FCE61EA12D53E7
-022B3824A1B700FDA87D31F3413929CC5D1D287B2B5C91F82D9F6DCBCB599D19B4220E27
-C3AAC4F0999C1723924CD7E9C06AFF56F27054FCD334BD9567217D5BB294CEDBCB77920E
-A6FBA60BF77B255E5FBD2BAE7AA22D0AD45C8322A899C45D0B12B3EFEB4444B0CB284019
-33DADF209B797C0F2E77AEB82AE01F09E7897905A43ACB91D64BC3DFFA88A52F8FE2C901
-78A045A48573C28B02782D54B9BF615CB5FDD714342378CDE02AA661A18893B49723A650
-308A721D0D626460AF055C356B3503F6B4CAEA685B1495CF6AE66D14CA45996137D7E173
-7B1ADCC54A6F30E1E270F4507D9B4B10F647320ED3595D6C1B077C8DA047FE03665AE73E
-68A82F78EF7C1DE60427BABED7396E6C412E44FC8D98AEA402C00A784D3A3FBC7793AA8C
-C87A07101BBF6FA2C3178D93DBCF3E00C95F5C0E2ABEA7158330D7EADDECD7B5EE420BD1
-C4C40016AA88FAD7B44B6DCFD9729B136DD16F7B54470F0FBD3A671A13C5DA0A52258636
-1F2FF96985D9B5B582A1B0E51FF2A2BCB8EBB5018DE067019B6C3DE3A052440D893BE3DD
-414D2FA37489D3E34FC6E97FF94D2A2CE6B460498B996D2E21E2EA92E937E68AA000BC8B
-9349E5DFDA563D70EE336C181E9B12FCC65C40A2507685E03D2D4EFE013BA6D6B36D5D5F
-03E7B0920B195FA23FA98993DBFC8F7DC4B7C6BC72C8280C78C150B99604C93323273001
-6078600837D5B179B1AF3FF5692963612F93A8BED3B2630E9EE9738B5F016B0D42D908F8
-9D67A5555DADA0529F1F0445FDDFB01953E264DD3AD489AC710CBDCADB39A99CFD9A0200
-2CE7F462BA691742EB31B0DBDF6F7F26FCEC9BE173A4D78CB40332EAD8A1793F70598EF7
-CDBEBC02F493DB8C654994F6150B43FB49CBB5E886A515828E25F83C8FE14E782C43E332
-B351A8E68094839AE4BE33E8D026CDCF79995EB0160FC1ED53C1835909A1F51407181A1D
-82B529685DD92FE74A21862FEF7B2ED4962A360BA825B08E961380522CC75BAD11FB7F6B
-15378AFC8BBE9521854926147E47A08D728CB679330AE15AB75213AE7793450108837607
-F592719EDC0420A2D9CCB8A9BD7D58D9C7E4775B753F2E928588DB470F6A23378968AE20
-380CF35131CA742AE80AB160434F7AA2A88B2FE42F54FBEDE83A99D5DDF22108250113B4
-34B8C3F8E46D57658C37E229B4791CDF9B2E2C5CB26A83F4B71739741EDF475222665072
-EEA39059AE36739F8CE47842BD9CCC13BABCF2888CB5AB13A12E83E3E1D0BB27C879D435
-684482F1ACBCA88855A0BA49E685B8EC66ADE40A153F64DD355CEFE3FA55F78E499A0303
-45CD4B0471B73FDDB5E5F3B7233F6204EEDE30D7DF03617F267636A4276F6EE6D065A405
-03081E2FD97C1738247526B2F1E374665F400980561ACA6BA65076EB0A23F4955268851A
-3781AC4CE6687986945A3E0AFAC73DEDB76E2FA23BB33E094DF1FF05602E52A49E1B510B
-5562EF0D58E45430AF43EEE073DDF0EC00614C0E2DF121C173E1ECE36B4D87D0FD9D13B2
-75A7C0C8F9B62B5032B77C8909097B3D4B7482A3623DD75BEF4EF27EDCD3E91F628DC448
-4E15D7D633B3415402E48B1B577EFAB6413CB65CBCA453F5EB78E778055798816D895A42
-22EBC77D51C992C56ECDB984D5DD94BFFD01E3EE1082F6D189E3A4D04D6FD2C206235A44
-2578CCBA9CF00D7D2CFC3BDB2D6CAC8AE35DD17F39E0AE8D0A84AA451789BF3C672F7F50
-CDE8F58C4AD3251B124722AC292A11FE426B0B51B2EE4EC7C65103F1128B54820C458E09
-7376F3295D30ACDD561EAD278082B7FDBF592F5261B0BA27A71B8474EC2815A8E62957FC
-FEDA68BA3300AEBC9FCC1C5ED4ABFB2B91C08AAB32BBA60A669B9BAF89524FA6B3B63AA4
-6191B699D7DC81F8E21A990BBB3F906D4F93C3CADD734FE6BC866DE02D2EE1D119A71565
-752224235EB79D3668084A41D7CCB27C48595EA82BDED902BBD71818547D4E755DD372A5
-276B2EC7C66F730F79C111AB99493BF93BE7F252EDDF129D8F7B7DE6AB41E9F8861AB866
-51F4D928F6449852F6FDF2B84E2D8341D6E7CF35FFA7CFD875A02F83733D2F8EA7FD2448
-7A575976B07F5BC799DB0925F0D6967E0C18DD80906639AEB86B4098A732C969703C8DB6
-E9F1E849E75FC37714D4A745A08EA4B374CFEEEAB664116D809AC06A8B3FB1DF8F71BC8E
-BB5AA0467A728A6446768BC45F128D5EE2596FA35BD65F90DBA5A78B5D02E2FA2EA43FCE
-1D2987C8081EC335A63ADA5DE5F6A87020AECCF4ABE0D17D4AFFE79462708D14E3A5820B
-BA2663912A5CEFBF01788B0BD19D08CA965E30C9B7FDD2B8156F23AF2653BA4D42E6AEEA
-A4A812E561FC68A7316634CBDA855E683AFE67ADB8632345B8718289DA3D1F0B00234049
-08EBC15F22DEB99C37280695EAED4D3EDBC084D9FCE7214B85788B6DD81E5AC6B93B47A0
-4BD833CC79B0AA2D4FCC9707874F3C7149F5F751D1A52F59B014E604984C6B2CCF869B38
-A045E50B957DAA6EEE0A74305705DFF1D7EC14BA595E5EEFBE93903DD31B977525AFBCC5
-7C31113400041DADCB603614F882FD78B88D6931DC3FEDA881B6FE8081110CB885B8EEF4
-58DFD7D303B413024A16D40FBF7792785C2B5DBA567798CE9C99195EF294799EBA4CE802
-3D6B0B1C344C90002AB158D3617EACA713F48AB12C062E8BDD7D7C5EBCA6617547A915DA
-48C5497DD8439BC2C304AA1ECB709867EAD1B4E37305A3FFB1A8E9D52462C769CE6928CD
-CE5521F6C134C61F08832CD620385D38CDAD88BEB32B997D9C8EEFEA6F17135A47116412
-3EA3E64254752EAA4745350ADA708255901462AC021792ED74770B031C21C58A7F50A32F
-ED93D45E5D9DCFC27891989CA4BB010E2DF384657530B1256ECFB2613F7FD59ED67E5288
-048E5994C2EB3DBE5D9E77536B967D7DFCC87376A5075C7CA33B7C36251001F0501137FB
-62E0D60F991CE5E3992C3EA4DF89FE2B75048B35B95C5E6EDDC4130FEFF7586C58629AD0
-752666C8A3A1885096FB0ADA14524AAC57E72F66304EDF923F2547D6AFFC0823CB5A8EAC
-CC46B4786B46D611FD42D633818CE9A23DED24AA2764AC6AE7884AFD1DE22A63AD5B105B
-4042B44E44E8A5ECE975FFB6D14E1BF1924F4EFA0D0DAD4E2CA0F5B1473F6D9A7BFD42CA
-966B065D46D3F97056CB9BBA064E62E6A1CE5836BE83371BA46B58BCADA103A2F0E72F68
-E361D46664551B3AD71FDCCC221DE21C3E78C33D597AF3E533EFCD4573E0C2EDE28FEB42
-6D9B7A423ED593E57D7D5FD7C5D97D0B8AA3C1B1F902E89201E28EA19D0D140F8DBB4BD1
-A62309913048A6A82494D26CBBF9DD4456109471043BEC23E4E3D52BC1A33BD7DA7CD67E
-D13E738B1FCEAFF839598F54FACEA0EB1F7D3C5419C2BC588B16A1CCF8814C0AEAFE671D
-DDB96353D32D1F86191490516C461A4666235CCDC5179B4324B7936E26916DA037699EE1
-622E25173E9E1286306E6034D667CF1510AD4789188F7D0772D2DB127665273683698804
-9B9EB1D8A2689D5C46B5B455492FD96281133AA54945D039BA684A89ADEDA43A9496F996
-EB442E2C020D4EABAC6750E320D8DDC7256BEADCEF54E609B20DF4A6E39CEED8B3D4CA98
-0FF47314CC3A3A3E978C4F8911D5AF92C7A0110902A8F5362DB47F19DBCFFB4789C90A34
-8CFA880D4CB23D284C57072C7880B016C2F4338288D32F641EFF0E1F2D04FBEC6D02C61E
-B27A4146B19A5BCE213327C003B1DAC40740AA1E9FB73911F3777FD976F90FC42D91D5DB
-7ABB08EB6A5E4D367DAB5B31347A726FE7F04854DBA180019823FDFB4A44479DC0F84952
-8BD0BFC0025117A8D6B36FA9F88A76DC36E4DF00A2E3D2BDC2FFBCFCA12E3F4CED77C1EA
-B2AE53A27BE8D1E77A618343F6673CAD03754FC14543BBA5FA50E1D7A8DB2646042879E5
-0D1D259898D91048C8B8B0D421C3FAF3E875D7FA4D7EFA088B657442742D89D0923577C7
-7ACCC9D8319DE2640A2422AB011CC520245A59A1D86CCD5F9D5616A35BA2977AC7686BAA
-AFE1A277F407594D6A60D5231EA34761A78C1AAED1A1A6AB100535435C615B8D89C4E078
-829B475470ADDC46331469053DA6B4DAB9F0B0344D97B744BBE1962200DA293864FD2936
-2A6F74DE71CA9A5A1A6E697CD643D33B89A7314A605E54CBE1CF0EC3AE3F11982EC3B0EB
-5D9505D4BFC7402D6539038C6D5E0B27620F7FAC514CE55B230F9A7AD528ECBCFDCDCBA4
-AFBB51CBB1F892545F88C9C5AEE7D3B522ED35F53696EFA39D72B734086CF673DB0EC924
-556F1CBE7D12A8232E51F563E848D7C9170A2AB0AA5702DCF43AC2DA03403374BD85E3F0
-CBC2EC8D2A823A8ABFAD7FE39742DC1DA40DD0AA6E5E1CC84B3B80C909C2E6E01659194E
-592493C1B1D39EBDA54FE9E501BC06D9F2D5B507B8A6A5A9A56DE260459DF378DB3C5348
-84C391C7BFBB36216286796C176220211850D52596BEDFF1455EB36F869D93F275BC2E02
-07CE5F8E5F07ABE7D6B59E6533462CED7C4288A61A5AA7E206986061233FFF0CCF6EF957
-D9FA5B99FB733BDBB3BA0C66508E483BAA1FD689D51B5175533DE2614ECE76F9BB8C5DE0
-DED71BB2F386E03D51CCAEAF84F0EFB290FCDF2C0219B1EC25CCCC33571E29739D8A0025
-FEDA1849B5EEE32D4DB59456B1CFCA8E8F7108003DBA2A20120DA0D7E3CE40FEA9193615
-2F1EE75A674D8C6624CB60E8A42B218AC9E41EBBB6771DB40D83262877AF2A369A20CF57
-BA61484D323FCFCAC034BBBCD8F92644830578DFA45421988048B1660C823CE8F291E099
-311CF62AE24CA332086F6C9CEE197DA96FD2EB0A8E49D2E7045AE7619916124FF5D85907
-DF15FB7951BE56AC6C10EC2A98AC525012A7A75F39B5A6DA63168608C5D1F8A4188F12B0
-F37049B2E1E70A225DCCE1432B0DC309215BC07A2D68A261664C3394CD4A800E30E77823
-E1D8D98B0002208B09873C0A3E6724B3A1A21C074232C400EFD5D526C213550F826EE84C
-3FEAEADF6CCC9E7FEB9A91DE653D1F4CBAECF29E197FE8B9CE2201E39DBABB02299477F4
-791D5CBB3ABBB53077409E1C4D23E7E43B071E523414A00EB50E0A1BA6CA87896C9191EC
-C6154FA8483509FCB65DB129EACF38D00481C70D5D4A1FA9A3B2E84B321222E1CEBAF617
-A8E7EDB4DF284FFC1429CDD667C52D8F2D79E97BBDEBFA0EBCD52A54C963797F9940942D
-3D4D1E9962C34589D754761089F50A3BFE1F9F51C1F1F67560BBEDFD67680C61337F53D2
-7B2D18B4DE7DA691587FC93909CCC2BA2E853D4590936D3B989502BBBBD9929E370B59F5
-073D7EDA6875A191C5BBB8C0413CFF0444F16685442A6EB0F33EFFB569D3AB77151271B0
-B2C5E7078442F1568B5BEE33BDD450854289BFA1CCD81866AFA983921423678D8C9FB9A6
-D9E77A177CD5434BB12C4615DBC5A21317F9B6775EDE6E44A29AF506F119820B5197BD05
-207E0607F1083F0FA4F1E34E9EEC2AD41DF659EF2473724C7FE34AD74D33B15AC0877234
-224B88851D27BEC30033A417C61798F8C0C35123860ED2569A62BC7B2509CB0DF03E3A49
-9CA57311614D12AED1DC3FB1470726AD11CE5D420F4A94586435E7C18661CFF62BE322D9
-A395002F4DB83E37145BC240CB6E5FDCA11686656EECFB072B3422184AF75C8FAC2B6E7F
-33C3BBCBBC8B894A05BE1B75BD64A3CCB485F7359C785C449AC4CA3EBF59496AAA7D0DAD
-FF7BF3F8300AC6644BB4C8E7613C5A4C309EE67AF77701CC1DF39B0C01A296309FA6DF84
-3875E1A057BC7E5ECB644240AEC11AA4157F67136831E5449EDB5017C03509B78B35B016
-DB6C9DA02AFAA51337B3E6FC0091904D04B328D1D57F33CA77E5BDBD38AFA74A7444158B
-20009EB4A2029AC86EF3076BFA6A97469DF182172D39D9BB16D5F15B526B61FBCA683306
-7097DF4ACCB7CFCABB675161A3EEC657E8A8DA7AB590CBB4EEE9999BD8BD3C2885E3C0DD
-52E7850E680F9CC5048FE8B0BBB656CEDC82C07CB9FEF713BE8C5021CA593E445C034796
-B34DC2ACC85FD770DDBB7179F518BAC017B53293A52859A4220DFADC93FBD31F191E2467
-DEB59636682EA309C19F1C5FC8643D9D7BF9A9F928994D15BF645E83B37DDB833F0422FF
-6422A9545FE2F0B2D959C8839BDA8F2D76E369AB05F324089853CE660EEFC774D714954F
-EBDCD762E9490AB0B5CA9EF9B4DA51665C5CFE10AF8822C0831F80470467CF1F49B88E69
-4C75793F8BD37EEAB798D310F5115C5F5DF6D650D75981132E94140843F8440739AD7543
-82B6A4109CD818116DA0FAD8E0FB22903897A1D4C49284411F0BF018E880AEA118322543
-098F74BCA2C1EA19B2FED0C0D1D74329F4F23027D75C304C2BDC5355D5B5424F000090CE
-EF554020B76DFF1EBF9EB929AC89CD76CD5D0E784207743F1C8C0B2275EF960766295992
-5C97D6D4EDFE071B4AFA15C5D9EB72A67C1FB72FC634337D827603AA7C37E62EB623F5C4
-5E23AB693ED30B6736149463A8A01AB28A087F8C80ABEDF20358899FC34F1B587B017B30
-99E8AA24D9054F66E79DDEC2AC82FBB0115923D68239EF1CCA2CE89E935EEE0C451301EE
-075EE992B3183D0E149A65A12AC23DF90D4B05E79F8A0120123D972B919EC7DCA6F00711
-FAC4F842BE2B8384137E5858EC111C33348E85EBBC6C176169969F30841CE85A381EE1A5
-BAF76C017C559D955FCF8FF05A5CDB40E91AC7BD74CDCB519DCC657F3F3F54DCD402CF96
-FBB2C1EFAA5757CDEF80BC6575CE488E2DC246AE31A3E9634DF5337FAAE9259DEBB8C64B
-5F190C04BED5616CADBA4C014A6290BA5D70D2619724A960D60989F52B79C09433DF6715
-54167E161E4A1455A02846FBD422E4270D03841B3B5888FB8399C1F9645B870ABD3F9199
-B8D81BEF3316A3004D07B378962BCB2A0D6531A948B59B7C46DECD179FD73C95D5EF6390
-A105F0B15BB743B0B7D0A23EB7F9065637B717840FB9A2F7FB7C5DB79DD08DD7E024BBDA
-9453FCF5AE11747C590480EE6003F5330860DCB1219FA7458846C8F25B816BB245D50901
-F892E2489F34259C300EDD02B616FE650D5514AD5734B77C7BED0DC3E495C418B6A9EC0B
-EC39E783C913F71D96E9B0A476CF3F2D0253F90BE85D186A823453B109C79AB859726BDF
-85236314120C93F4D44B55EB5A0C11A2D4602149DC836A2F41AA9F096F4082E3B199BD2C
-AA2653AE68087AA655B4113CBF54998BF44C8837E6DC8FDD599160C1B191C2B18AF7EDBC
-2BCC5CEAD0E765C856E0A39E8E904A821DA88AB030ECBAF39CEB016FD34BCF6049F558B3
-EEE3C1EA53B87E7BC2CD8455209A708590ECBB9566A78262C6268FB2180C3C4825267A3F
-BCAC25E204D05417C85E4C46BE30E4FC876D461967483D9ECC839024333A235C05E61545
-E52220B3E3CE601C4480A959F032244A1CF4204A36CA332EC0258A916D0E68B043F30949
-0DDBB75B000DDB359B315FC9BBDE10A42A3A7D6D506B21D1B48254F84FCA27774A98E249
-FCFCE9E96B7EB51D85A671987AD1F3B35C755667B64DA70EFAF67CE8B14A866AE04CA6E7
-EED0905E5FD17B98D75F91279E033C5FAE681AE10A17C818E79204D6AF3925D70AC627B3
-6B81D9D8D75232F308BE848BB67A87A561821201C796FDF6F39B031F5049490AE19E8DBE
-A908EA44E378232A09032D368F1C22E1E7984FA82E14FE340911E786105AC959A5A52534
-C585F1A85C5DE7F78CDC5B43546C8CA3629906BC586B11DDDF157CF1031B182BA3D335A7
-A779F56FC0C037C2948DFD410B53FCDA94E73B53BB76C71B132405ECD8F0B4AB5262BA72
-230B7420F4E03F7BDA0162F59938DBE1220B5CEB12FF83C7C9606A67078C95075D827631
-1ACC893D484D548A52A547C96A30AE7A3B30FB715770CA5861556BEE0E9D8E837D385C7A
-40D24B46DBB4A23A24ED5844F5ED69D58CFE897C8FB9555D41578C97234763E41E1E3062
-185FADD8A80EB9BF519D1A21C1EF6ED7D16F42F5F083046A63711E79E2B4646EFC2E656E
-55355D7D3E6411B465B535043F9A6A57601D15F4B24D1AF71EB93A0C7C07C85FFC32871C
-1DAF85DA374524B0554E196A18A149870C508BDC9FE22CEF54BEEDBC1820BF4B7DEFECA9
-062F3ADC6E93E560F7D37EF6AE086BFA66D02D82C8454FC5CEB362007AB53947B2A14059
-E449E45A379008271758E200F71807B3664771BFB9C46668BBE1A35AD7B208C9AE0CD84F
-8ACFCCDEF782E5E6D3B21F236F004B41E7E6FDA292970F74127259DD470368EE2C17E7F3
-215DBF172A740F42F74BC74C8A5469974446122D11741EFE5CA3AC65D03154E425C85F6C
-525B3CC38005CC7999643144C6BF34EE658BF922456FB08DA18CAF92332BA728EC95FAF5
-8BFF30FF9F1FF2BF14009A5E6B9536F6C5DF9CDA8C2F34842C8EC1FD510F878F1D3605F3
-47B6C95921C8700AFF9E75B7E2B404D13BF906CACB3A1B0529A3168C31C96ACC12723A00
-455229C1BAFE2DC474FC46E969F6A07CBC2D4C3D9C8C81D9BFD84A95756451670D128EBA
-ED2CEF998B03950827D203804F46DD1F1CEBA6110E29A93DDD2C38E8D02769A9523842C8
-533F6EE2CA11FD585EA4FB551DED51FAC17FD30E0BAAC02D6206159911CA2BCB19CADDAA
-4FA6F2911442CBE8A69FA4CF3CC4792CADFF5FB70D1A8441046F0103A36CDC7B8F82C115
-DDA815EF71DC8295D8BEE1D412DB942B2619D67A5C1F8B06DCC13BEDEC191D9E818E722B
-ADE04C6C358A27D1EC9B5C0C198B9B235EB6DAE815C0561A8C29526AD3212B32A3D4FA35
-831008C5A9AD3B9A8D68903021B9513619868E2F8535DB856AFACC031B890ADE468A9903
-B716040C73E77CC57813869E1AD1FC706BC34DF7477FDFE9A0C21AD33C78AE789D829935
-51CF312B811250B8F6244A098EAABCB3A6EE2DCF7209F04AC039A4EF35867AF00F01657E
-B517482EA86295127A388A8BF4B605ED4E13F03B2A3839990ACEF98156084F5BB2206344
-5941C560132D0349D52CB72C85B983DF6391B885C5C6048D5F74FBBF496C70FE021AA578
-280053474B6C1F9AEC55F6DA9DCCF3CAC7A7DEC6F743A81FA0DCF7621B484589330E3201
-8A1B7257F719BBD0161EC4ACAB731F2026B77298EFA4104EDBA6B299858184FD1D4C907D
-B3A6D0192F8C7DF66D3B0C947AF0F91F7CB09320BC0D0B11CC026162450096809A8D1E8F
-01A09E2D3C64E6C91E2B31AEC3F1607381714BAF0D00240FE58264BCFFDA303E87296DFF
-1BF630DCF9AF3BDB5ECA30991897AED39EC4CF40070109746FBE9D6E5A24F70D8B2D050E
-B63D55AC6D18153F3D5D04E10B704A2B47E7555627A84F394B3FFFB6AB7363A9DBBD11D9
-323050BE1C294A586CCBC043FF952C34582F4D4F8A9F6E71A246B47B7B87AFA9BDA0ACA3
-CC3ED5129B810A98883B1A449E5834344BCF7C09117052EC619C8512DDFC81A68CB6D179
-CB3D6F3BE24A1F29669B7C666A9A0C6148E54BAE665515F5490639C66BA808E40B615EBF
-5B59D3CDEEA96951927E406F696745250F0A5A8B8850C3A3AA7F59CC3F18F3FC141DDECE
-33CB43777CB6359B9015B27CCA83BB4EDA646BEBBEB1FE0BCD0E1114C0F983918DFF74B5
-57B7A614EC0FDB3D1FA926CC76D3B6F0527BADACC1C302DC6D4019E89EF7DD3195494638
-794543E29846DCA17B1724C3B2C09172B9402437E747F22F1C959AFD01C092E87ECC0CEF
-C7C422538164E8E551775CB7660B90009EF7C910845385B97FFC2DD5E8DC1DD3C0B2128E
-9553A042C74308F74DC7F04CA995F9B9870AD1E8F89382E9E9DE8600936F1E2180D59B2C
-B8A3536BD7F2C47142C756D26411B6E5E34B03C49CFE87398C7334C786B729DA1F36028D
-DD5A16009B6BCCA2DD6737C7C4C3CE7004B488B86507D095B567868A6ED59964EA34095A
-DFE44C9FEB502977A1369EDBFBEDE949CF421C576859E181AE2CEABCE6C35A88F5050345
-FBAEE8E1FCD98F6DE17E66DAF5D5929046C074E8D85C4AFDC71367857E8A7B1AC3E526F1
-8B7DF5E90F2DCA4007344D0EE044E663D50BF80300A3F1F1DB03B14DF2CDA7A367F91A5D
-AC834BE8E057EDCE5274252AB3FFC1D1DE90857EED51040A2FD881583184CDD2CDF4D629
-B907353B9F878AF4E46FD64C85360927664DAEB7371EEB887F5AEC4F76C6700824FC8E05
-53A785DE724528E12C1FA1A8D32059EAA3A99E6D481665DA762E6325A4310222D7DF3918
-E96FFB85B3C04D9E7CF4F3328FBC31F736E93559EEC6D60A878990E8108012A2785233E8
-2E57C735254C7B38E16C6C7E7179246054583C7299050C31496993555A1243826532B139
-71188CC8580B73C43CBFD1E8F23369F56EAE15FB0FA461BB771026722695A8F4C6BFFA3D
-76BD2E85D3BBCF1F7F53D23639E39754A4D71B48F1A8C8A18C2004A05EBA0656E3E9884F
-9FCC00D55514EE382FEDB40BA636BA174FE950F2B0BEBB9C926E77ED32B08ECB1F4D4499
-02387444393D3A97BD81109E56701374F13CC9774778ED60E3EAE3C78BB6E0B7ACC43B0E
-5F29F3DF4610E97F86D7DE9CE585E2BC144E1193C123BDDBCFF83336625ADD90F1DEBBF9
-74CE0797BD5369D2E3C448BEF8AC728723EBF987B4F1CCCA1B3FF3C0CF8F0287E3F5430D
-BC67542E10C560A28AB12B3513C1120D8975A6EE71DE0175AD8FB16C3DCE4B265DED2815
-F03C7FDD72E34A27215870758DB124A5D630723BAE250535FF92FFADB0ADA3C4D31D007F
-562836EB114CB81FFE1E9F54756A3D1A8E3CE7DA8EAC4036555B6583937F6307017392F0
-FA28BE83A6C4AC9183B899DE736F86D05A91CCC5545B7AA2694841AA98ECC5712A76011C
-9637D079BCD5295AE2999EC5C032F7ABEC0804E2A2510303EE071A9777E89E32804C51F6
-1458AF5736CFE2DCC50564CF3EFB629FDA6C39CCDBC5417AEAEDD0509A025B43A682B218
-8AD0D62B96ADD583B027B85C532A1F1C2CBDCCA5FD54A3ABA6EBEE74F2568BD9AC0E19BE
-26C1C2436C4FF76B4F50F05A37A1A73A02D155C2DB4A849082AFDB1284F9566407CBF976
-F2D7C124BB538A0B26898CC818BFD9D34D41DA06677516C8D78B6C801B864DE2B7830E1F
-868F33DA7E549639ACF55183CAEDFDEA0664AD59BBAF56FAE34AD40EAA21F539F916E41D
-690419E36D2C268B7F72B86BE962AC175BED26F6411B70A92CCB9D7A27FF88929F0D13DA
-90CC5948B6411F7B04586E283389D530C85CACF958D145C88A34E03781617B40171D3187
-430BB6102B6F1B2C9DE91D2D7BC2A8D5770736B9402415C966FF73EB321FE99505100C1E
-47433619A68E08EBC593B85B638EFF1C484BAC03B045BE97A0E8AB48C929F3E801A3D057
-6415902C739C6F92B15E8AF8DA0DEC3450DF6AF7522ED6F316439B8C6FEF58F96BC9C096
-C6E5C9FA97C1524F6F4B84D614EA7B2217B7DFCA1AE90496066A04DDBBBEB49965526701
-3A7513B3453AD0543D475A82C2CDABEFBF7EE5FE95DF01DD6EB4E2F5B36E5AD98A5CB658
-87327AB12AB875E4D9D7CFD34C4F02325EC3E37553B4EE12DD5CE535B2F6C7651DC26A62
-CAED8B3A97A143029F3EF41678CAC2E5F2CC6EE9BD567FF58F32435045214B62BFB112F7
-14FD95F9BBB4F3B3FB620429E12CD2C52C55E483CCEEA72D524C4CF1D91E80F27ACAF36B
-5BC7D386BFCF9D70D3CC730D5D2C9C75BAAEA9EE1FF093321AF65CCC73B6BA6F977249F6
-746D69E200645A4E40EAE0986FF0CF3F1B5572BF9536DCEA02B6925801D1C466129D45A2
-E927BDBF6D6F84C3548C78E70DAE806CAD180FC468F979685F845BB2311524539B1C7ACC
-C9EF641183A100AB51C155E89961090E2349C601C6769CAC3B1C2537BE0CFD560B9B2369
-4E1B8E9083DF9261B17EF6475C0A42466B4DBC8C601CD82D6236729CB8C80FCB57E7AFA5
-D9D9B35F66E5B29251086BB760BE94831670D955DC8288817A9DBCF7A6ED48038596CD76
-BB2FA5541EF78AF5CE421CCFB286624BF3C98829323A7EE8CDDA3C5DE22044672C8D233A
-C08521CA69962135FDDC8EA4139BCB13B64EC0DEA02C437BF522F41A8768ECC542D5EA8A
-9F85417B598931410BC08259AF88E410B695A9A6EBD730853F2FDFE3FB00875F21E1EF5F
-60D8D8F62E643A6F4D124FD84FD72FD21DCE57144CBEE5EED9C05796B3F59338903913F0
-CA0B073B074A44B1E1951353EE514CB41BF3D50DCFF683CD15836226EE9E73F55D4078F6
-5E3A288CF7F124ED183DDF2C0EDCA6C375160756DC3DC33757CBE85822FB2ADC859CA8CF
-7CEAB1DF3A48E751A6604C3E4E53A9C9CB967813C3181D7E4C1DC954A26EA4B28E23E39D
-C2564845970739B40AC5B267B4CC07C90E289EC9288AD379A7B684B97BFDB45F036BA95B
-EEBB25A5BBFD3F0EFEE2ECDEEFADBEFE80BF2A8C01BA345B29DFA9B25B2D2234F358BB99
-2054FBDB728192CB5EAB19319257140E95B8F31E14BE579364136543A847989F4E410786
-A0A068E38A439250C3D61EBECB1AC741D529A5A74A546FF7BC9F2CEEB11CB98F4FA97BDA
-C74A7EC4DE3948859D3091CE7D8992D2C094590B0AF2038429E30A6BF3C7533A900A4240
-E082BC40535E8A07E55E6FACA93FDCF4BE35823B30A2810DC991AEFE4320F927105101D8
-48A790904C823CBE8286DBC1D8E7CC50B1E5931640FBD0213B0FEB7AF7AC38CCC6B738CA
-74B1FE58BF8B559A7D3AF0D2ABEF706671A977E737B5E49C4BBBE7B412FC8512C17661A8
-9827E24623F4428598A65FC5A79E77736EE2506E5A61DC3ED221F412AEF9FB3AFF6A79F2
-EF15CE24C810321A72FC6705FCFE24032801E3F61EC145D6A82C43DB8E5F9D20AE3FD7A6
-72477CEA2B6D04C24804AA1597A4A3E0B7E3E15D307D8A13D4311F4EA895199D208B23EF
-DB35D975CA9D6D9A036F27FE597C41804A8B5EE10EBD4C16DD09C6228988A780CB315C53
-C2455FFAAB2D71FF87E67EE35A65AB2B8BCC351DCCD62BE2DC199B3574FCEDAD5809517B
-8E3BB1B197078CD7F691B4D0474EA1F398AE3AF07263E8BD0842B8012EBE5F51CD5FF11C
-35CBA2B275CAFC8D0B3D4FAD5B0931C03A3E0F79F31EED87ED8AE3C4F628FE1A1F2205B1
-55BAC7504D754C58BDC458A4B24F8A4E1401AD5B66E3547DCF9409C1C811CC2DF862062C
-74A773A5B7686504B4C7396230D5F2F0A2BE098245EBA1758F20E0E5FE2C94E899AFB774
-4F29CF4D61334CDDD7C38BF479B0CC3DA8E67FB6D3150523C09A24286D86A9F4E1F5C2DC
-CB18719F6087FD27EB5BBD9BEDE21B10C26BC38CD98952A128F4CF48F8651B97F6244F23
-E61EE0FBCB5D3BFD9C2E14792920066CA5E70449C4F13057DFD33A11B71C7991D29A7185
-CBDDFEDA7CFB85ABDB7F854F4342EA020DB708556762994759BBAD1E9F83E7F2961B017C
-4EB56B73B37F019A8B91DF3EFEAEF75E016457A70AA33D31C9BCA76BA4B805646F8264A4
-6C15C2470F4903A99B0D0BF9B7B7D384F640FAE3DF6AC2ECB533DF89838B258D8128F5C9
-1DB7350B9BDF201455D5AAC7C08F39B643D8CCF26AF3563DBA05B5AE422388644CEC7ED2
-3EADA9060442A728F966D50989C477BD2E4BD4E206C8B014D2707DA596661CD7035B526B
-61CBD0FE916D0D7B4B22ABD91B4902C44187E74D71647F7143FAC8E4E9907DBAFE15215B
-6F20B82E09B29630E5F1CD15268481847192856F1BB23A00D7E6522090B3672286DCA1E3
-D2DE32FFC4C978F61180D497D9DF1C1CD48B1857CBD40EA172DA1438862A7A28F570B5B1
-73B53E1E81C6EC11A269001C6E6070CDD0156DE95E320F3B496036C1136F15EE35D79F2C
-962280292A3678BC4DE5D1C2535F09571A5EFF5379BA71C9996B7003F27BE9C810C68D9E
-8D55287AD3D1B570C57CCAFB53109C3EB5674920E6FE3AD170F783B1AF3BAC0BA5CA1598
-6218777F4EE1FD7738963D6DE1D8E1BF1353D5D96DE89C2DE3AD2015265D9077AEA8F26A
-9A391A61A27CB0F9E8CE16A12D1C2128E8CB7AE0E861E3CB56769A07E812F1169A283C65
-A22F19881485367B098EF3B97BB9E41775BBE13F4E1560F2AA0FEBE4A31118F55142E590
-B51D5A0867B89F00D9D461D74DACADA920DB5452D80982761B357AFD2F613113854673B1
-3F0F1EAA566427323E2B35F2FED6339DC28170D90EF4F8E4E77506115BFB2FC891AAFAA6
-59611E9FC6F5384DC5096D54E09567BA8379C7D058CE8A3E203EA28DB122519E483A46D5
-F527919C4AA0F635F6F29C4AC9363EA96B0802002BD547E0C248AEFB8DAA0A75DAE5B8B2
-7C7B4716769521B4F3A8B68B0251CA46BA9B7FCD00B3D4A59002B249860669961FE8F4B6
-B594B68D781B24DEE41869F320C0CA419B596F3AE725B4089A388AC4F84A201392C1AE79
-D6AD6F13023E6412BF29DFBF33F00D8966E8C87FB883F97B1430DDD9EE0D0E8ECE00DACC
-CDDE43F90351DC64D38EB3013CFCAC2792F613EB56CCF8553C3D9A4B2E9544058BCA3B86
-6F2E33A68CB60097D017252DF367F584DD224D38163B6BB1F5E8154C9590B8E3425FD89F
-4575B5150F2C674CE5421E4930766BE7A55D1A01044D2FDA079E1E5CAD18F5F0B7897741
-EE1F4FAD109E503F44526746BB3B5C803047AAB46B1D2CE31F3E026853F52528C3CF6BBB
-6BD36DFB524170B10BC85C070459CDD84D25C0EC712B5E8C8D1E6A736993351DA8261CA2
-81F4013542CB6BF8168AE8F04C55BD7EBFAE0EA6C3B45CD9698C7CD576793A1007E2B391
-0310CC96F4D2C5C0565CFF92468AAD585185BF6A19CA9D27D6E1440CD56CA0AD46F4D1DF
-0DAD5F2A2C1D2B1ADD80030E38080DC4CCD773B7E7A74EE7F9A964BFAD960B2542E6EFB4
-64FFA0ED1C8828B8C266897C0F7AED40851746A573DBF08F602BCF9E1B339BE24BF35D0F
-AE254E6D6170A224FB5225D8859F5C440F96359783D21940DE8553275485D0287DC71919
-A3D81FA8D8167DDA0F42E1CB15A19D673B896729B2A492531E9FB8811837318C24546170
-9F428D0E7B0A6C416FCA1B5B8849B86EB6ACB1B901E2D90E0939F3856934894315E3BDB8
-1DEEFF69B45C8C7871E73E6A20B64362FECA450D8BEA3878AAA0676BC8F9DFF37AFECA0C
-C1096900829EF7DE769DCFA7FF9DF38C9C313829A5B9A7FF7707BC554F1B4FE54214371C
-6681D624954BBBB90BA5AAA44175DC50C6BF1E8A618471C3D1D58471F2567084E503EFF8
-F4083B75F03B7848069ED9AD01AF51BC5A9C3F34E0EF36FFDD3D3DB350740A56231E8323
-60E8327F218D6E7F2490258F03B904CBC4763871F37E1B8C88D592876E0648184954B702
-CA5FF4851485BE6501DE9AF291D2D4A55CE425E405833285358EFB271ECA61CB37942EC9
-9D53EED6939D6E828C6B2E013E0ECE1A60736726F77775C299D6784E51B1863D304A9069
-F217C825FF94E4982C8B3CC30242232FA59A8274011712957B3F1DDF558CAF79DE460A9F
-B15A2D1A3999EBCB3501BE97E719138CBFB37242A4883B3300E20CD21EDBBE0F0D8EDE3A
-D6940338657BE43C6C04EA6C48BD51CE3D064B55EFC5DD632E1084BD01ADDF53C114D329
-438792E470EFAEEA5DFD2FC40553C736BF612A8AB8B0FFE6F16DE99FCA0A0B5026B2A50C
-C15F0886047EBA1F115984B30050C579C1CA97D31BF4167448D89B3BC66EB4A099E4DE4A
-89F186334430655C7A2709930DCF66404322FE8C1AEB3C7952A4DD19CB35C3F50802FD7E
-E82D233FAE8EE5377A6211C0D55E5C188CC858D2A38990ED8B2E804FFD60DA6C477D90DE
-24A93AE87BBA8558770C427EE99A8623F26EA053C077837CB691CD6BA6A22EE8C584594F
-B5A8F2C75D5ADF7EBD927BD53B6F5809A0D6088C094EE056EAB006CB8C4BB2C035D57A55
-57C3BB319E4F0F9BA89129924EB53F7D349C0435A1ACFAABBFF97E9FEF3DB3DF03C21E47
-C5FBC852A8DD098CEA2C335CCDA04F2D2C9E7E38A327C7D78CCA84B96C432EA51C9A3CE2
-37BDEED3EA86D69716E5D60DAA77F31CADE9BB9FA1CFFB8A3A293A5B3FF9FEF03CF96BB7
-F259C3FC6EFC422FC55673819F3F4272A675B2ABCF8A4DB411090346889715D49FB199B9
-6AC6C2981257EA9211FA518AA5E582E35E0034AC42F607F587787EF3A6EA75C1C396FC99
-331D4DE3A906906D334CE8DCACAD9D6880B84BE0068ED1F365B9E7DF9D35E79412BAA94A
-BDF0274B01E64B865E7D4532CD08516C8649BCFD7EE65685B27BD947156ECBBB358C110A
-5D5767808E8D924F31464FD3BFBEB53FDE41411840C1B689963B2A5781467C9E44E681C3
-5CB292DFF210C75FB4014107B364F2D3B8D3394AFC8B14BA28585E1238DCD8395E05852F
-C813E23F7A278E72C7463995EAB78999388E9F093C84F3FE3A164FACC9A0890FBE7CEAFB
-0C988CC963B228D9939928E886095F772F12F8B05F4D66ABD8F3332BF5426002B905A049
-886BD5D9EBA35960612E1DFFC74FB5479E37A19A17BCB600E200FBD9437F1FF156028386
-FA46C79694EF0EDF059E63EEB766646DFFBF7385C0893EA15B3A1C982C051C49F4AF465C
-A9E6E837C463F580B883A93C1E8BDD68EFE50FE6616A831DF101F184D2ACB6112A10720C
-6D173FA6E5C494A271FE20AB7959234BA355301BF8276B34BD198A6F6415C094936BB323
-322CD5957A5BDF76EEC4EBAD015276DEF92868B49CA04FAB36BF6670CA237B4530BF5DE0
-B5774A3E67AAE1EFC2653CF7ACE86FDEB7C8D78B29D1B92170D47EAD57AC140DCB44DC34
-AF59FEBC88B667842227BAE500E6A1DBEBAB7750429B00703863C2D3B3BD0420D3660EBD
-6C14592216F03A404E4E46458A9370BE3A92618924313DE6453AED7361D34CFB4369C789
-770D33E94993EDD582C6140423189EAF3CDD7A672D0DD00207B86A4D8FACE9976D83D81E
-CECF00CE22D20B441038D424E3958FFFB7FF68D6214BFDA59085FA022DBA5C94071A3F72
-1221CE61C19B19542C3321030BF5CE4D8022B49573793EB824E9CB243D0E9EB6B89A34DC
-744450FCDD335E607B45DDF26A57C7DBF83A8C0136ED272D908A0A469C9E61F3CE9EA255
-3D81B9E0B98F323928B0F44D62FF942276A4BF297FE225EDAE82A20680A011229F58DEA6
-9FCE234B22B2AEC35A208E23EC809A5F790F09E11FD738CF62168B1BC2F7DA9564B8D576
-11AAE9CA0094FBAA861B6114A66A4692291D5F4EDF5E230CA8E6526C55B62C8FCD46D435
-6407C7082BCA46845FB9A2865EE0CE8F860278152F0A849BDB8B85E481132797F49DD35B
-247BBE4369FCB4A20FF77D6F791568CFD158CC1319F17868CEF028224D2AF3243EC6740C
-93FE35E7372CF7E68F06DECC8160B7C04F7086F4A4FA66DB58100D6513000C4CC90BB363
-6BC1B6ADE24EA559EE3245CB74502FE440D7ED58AE19B182E0EB645D7BCC5D8CF1EC26BF
-D8BAA713B6215595BF42FC097D5DAB7C030C522A694E027CF558BA7EBD711EA18249BDC3
-DF346537E5FF50755BF03D38A338EDF1974B21FD6E75548FB8E2CACD173F40EB5A9F15B2
-FFC720F0190ACEE2B6E5B040F7B89AB214DD89E1E8AA859BF436EE19C5DE800ABBEA049C
-9B6FA77C93A833C02A11CE4E502D174403B582F617D388CD71407FA8C7060B9F3AE414B6
-63F4B524051CAEEFE1C919346B60DD19E9FEC14191B72DC49CF0FA248E568F6AD137EC5F
-73BC3F3F79CFF305D88447E05B4BC7B25D20B5916787EB38D2BBA64411FE911BAF1C69F0
-FECE979BA0267D3A297E80FE07FB6F6330C3D4E9777C095B74DB138EA9BE483655FDC269
-A8759203B594DB7C9F6AB5909651C4A27B18E51CE5F695C2ACEE18DA6AE89A3BCFF95D65
-365BF11C14A5FB2BD261CF6ABA383FC467C81FFFD366672895BA37633C3A89739B397604
-0734CF9218B3710863906ED0002D0E756F66DDA0B38F40882E388DDAF61AA9EBCC87B0DB
-E04F06F6CD3CA3F24EBC695C1CA0DFDE7DDA8864EDA643FB93E0AD976D5C1F36F65E7A0B
-2B1767B0C302AC325B83FB1BB658381C387FBA199CD1C3EC7602CF0E19C96C10890DCEC5
-6166BD141F3061BB7A0654BEDC8DB922337942873A2F6E8E11FC291F8C16AF1A0C8221E9
-62106D02C4F575F4A9F61287E4C20D948E9E4CC7E74B99776EF3A27A0C2ADF127E60174E
-4BFEA136B745DCA205A07EFBA484F7E0F76E5FA389DBEDDE4557C73C6B8BD6CFE9D0EF6E
-E197EB8A5EB0468F5A80F6E71F9D65382067B3216C740744E671A533F046B48D61845500
-488CF8202A1E91176F97E50970BC00D58CFC9B1BAEC3435DE567CC6B5C601ED7BD437C25
-86E02997F7AFE95F1AD71CCEC4E9C2B9D8D17BDCB66A128122AC0E0CA37CE810AEBB216D
-C4AB46AE69CB2AA97CAC99C1C6A5B112A1BC553658BFA93E931B4F28ECC6C0C43E18FCDA
-5972FCB8882A86CA41349630542DAF536846B01DD5ADCC84FA4AE1CC58EC5B325C4EFFD4
-E32EC77120141D233E5C02CF7A52399AF39D64F4B9000B881F13070D85E8DB91DBD38A42
-08D5C6D8ED42A48272851DE276E5ACF698E6088343F852E0B139E724BBAE48A44EDD7A63
-B5772F61E178C2CBC38F728DC708FD792737E5A495FAA3335133C45CC887FCC94889DB5E
-2DD34C1DC8B2901EF49320B2B8E7708A778A54A540CDF310ECAFE13653DAA2D6C9CAAA00
-7AAAC4D9CBD01F61F0E1D8F35C06019B1D6CCCEC5CD9A1A263CA630C8C14EC325F8E5718
-D4CC035FE652C2A2DCC53B7EB5AB33B43C7D1EDACA8F589C5966BD92DF8B62D56523BD33
-501CBFE506B9061B096C184C5504A61CD6B5E03A8338F5B16ECB0324A8785DF1EE193710
-B76D5301448B0C664F565ED0538257FCFBCB051683FC200D4AD675FC4CABAACBEF11BC38
-E95F474AF3FA7FB187E5876B1F04A26DAD7904E39F3D53A1D5FED70E523867C3E1A5B65D
-BE0B1D6CA84EDEF3D0A24D042CA491D6BC39647EF390BA25E2F998ACE7386F8424E3E03D
-6EAA815E717F835E3528069BC3A65CE58FDC49B602E0418A3972D9E5F6192AF89397AED8
-32CB25A607DDE31B69FB61164EA5633C019B3E4BC93078739879A2364CF42633C07D1BE2
-57AF2B07A1E5ED68B06BFB81CAC77F6D2EA4750266E8919E8911391688D4EADAB19B3E54
-4460DA693474250CA9A864C17B7BB5059C0D08B32400A51339C4ED7385D9C1DD1839D96C
-8C0A6BE1CECD38544854E9698401E33EBF50C1DAAD1652D0EB978D8025D86E07C3DD64FC
-92D362A13E173F1A5D015A43AC3CB57732C6A2A204B990635B607938D99422B450E54B7B
-4CF6D22BE2F6B9E936611A0132538CD1D8AF62A260501B3696EFBB0EE006F658EFD8AFB4
-19C3C8957B3D9DA5F8758CCBD17734D80E2E207A58E8E97B2B9B78012FAA2C73CBE0061B
-EB3F30CC034F7FE5D3251DA71BD8372BCC7F271B5DDF11167AB166C59F63B9923F043611
-52240DAC4CE6B15DD8FF9ED6F74FAB00A4D2D9F89BED255126AEC97ABE2D0C7D3947907B
-0AF2FF6A641A43BFDE3126F54E213C03C54E01BE7DBA01F71E523FCAA4C02970BAFC51DE
-EA7A8530D73D62B5F3F457AFB500C5734AF579603D2CAB9AE49281EED2CC8FF7101B4F45
-F619FE5FD48A83D934F6A0D394B07B1235AC8FA8F3DC3CCD9479D87398074DA6AFC3402F
-21B31DE8621AAD29EFD4F9CAF0A9FA9D9A0D097625412B4FD723E1363E5729F40D8C02DF
-8D222A48C23B2E25CDF4F69D283E006E0679F1BD904A9075FB0A8094C1BBC3400A2BEE5F
-736CDCFE47991E539406DFC399BD0B76D3A5C8F91BC2BCD841E4AFBB521D46B8E0558F4F
-A800637D47167FD2EF79F5251095FFA2F3BDB915015010FA689E4E87F921298735A30EAD
-938B6BA40D4E58042A3065AB059C598A96DEE3AF09237FE8A6BE9CEF014AF36D91508C93
-F7A18393BC321C3A4110B160261477F6D9B6771DC8738D8259BC4FF1F2C1A657638CF4F5
-08AA9400D4AEF4ED4508BB30F35E38D968E008230DFE501A9612966F7E35B6D8DF26338D
-B63BD1B88885992D8D3BC7EFCCD89622689192CF14C328C4E4DED3025E56F3E73FE2472A
-144AF139106A197E00EDC57C2443686A234D214FEE4AA2E3EF978444D4A2BD1373423CE4
-E5F82099974FE66D53972F774F2BCE9003538CC59003D0DDAF9889FBF2519EA31F3A515F
-8D2C0091937DCAD3FC757E18FBA1C37F8FCC69685E95932B3DE60F80837EAE690DCE306A
-EB060698E560BD148CCCB42240665ABD523CB02FE18214AE45C44756E9D3A8183DED7506
-E560EDB4D43E3971712C3D23714B0F83D3BF19C7320FFEFD07E9E8CC573D97FED37FD3DA
-5EE98331C70CEFDB6F6564D8EA0B985F1206239822A4644CF2D7ECDC63FC5D2014359891
-5916E41FB338545CECC1B9E37DBEFCED4A55DB485C86C56EA97DA572A2B74D2650C8C839
-1C57A1FC4F75913C8446846F26614E8C72080DE0FBC3FCF92864DF37F8A3C66109AA56BB
-3CDD02BF5330C38BD39B081AFE90F775FA6C78BBFC51DC0FF37B9CAB4058888CB3D4DB26
-40D7224C0DBF9467C720CBB5F684B2A1CA8951B29182A3913EE398B8E77CB27868A439CF
-9DD03BAA0B60DEF70FF776096D86E71394968B7D64CE289373BFC8BB2CC0BDF78E1178E3
-D6F5473427E7AB841223F963FBB2A5743A823367D9AC4A5ACD8BA483F5BB5AEA19B1E882
-670B74FF997E3321BE8A96D7C0435EB77A36F7AD6AD0C7B21F5C74895090908FCDDFA655
-628898D8FD6218A60C301D959265B430369C564E01CDCB05F42B520625FC0FA93F9736AC
-7D5ABC70D1A25F6A6A95C1CF4A584B51E9CA9FBFC9F24EC4F2257B2AEBBD9581438668A9
-F84CE7E9919C84227D76B11B1BFB61788C69603F0106CE5FA226129EBAC295709495748D
-7E1856EF2F1D5F19458B977506F64AA7E433E4E62662F10FFF43701F2A726C3F8CEB19CF
-D467C3B4E835A99941C7E46101CE2C97683A17530F32808DE665326D6605984689241CD4
-5DDDBB5C964F3FCF7FD89D8B580D941B856613EB1A8E59052B296E8CAB02B561863B3671
-E0E73789B112F7DB5F0B2313B083D17166D05B65DCEE648210AB9D3F3DFFE60EC4649552
-2F101001B3FBAFE7BF2F0EDB70A95C572767FC1880F84A70DBEE39648A176BA8C7C87EDC
-D424245F6F66C910AAC0C60E5078260A698AD823965D83268AC7A98EA0E7A23A7599470F
-F6B2E6C6F32FD3714B210C775DFF039590A0A159BCD248E95CDE7A234CD8F64CCD5ED383
-D2E49F9FF4DB2BC7E7F8E1F45643BBA556CC2A8C7C0D32CCE2D17CE77C6C8B021AF086B5
-1F0649C7E2081705B2C0C57B205E8C6985C849B01EF956BD97F8862BE1B061733C8DECB3
-47F4AA8CCF7FADCC4C335D3917604DBA283DBC054C76199749C7748A48417624EAB6C930
-B403FCF33E8A48AE4D064E70CAF24F68AAF18D1F87E4A920E2796BAEEA34BD4F208C90AB
-87D599E2A4A2427715819D7FD510ECBEA421E32FA9C3B672BB5329FF756B0E4B31C2B16C
-ADB8ED6D90BF002B29D4B4F9AB7DB03B83EC9A165A3F1148A9C1958B8071F279440A019E
-743A624CFD4166857D8DA38C230DBC91DEDCE97E006B242E14CF25EACDE17E7E2A6621F5
-662820DD295589E5BCFEBA6E737C3DEF3D3482D7737CDE224E3509858B999B66F6F365B7
-34C207A58FB6C0DCC099E1A50D95A7BA53E0E51EB4D6B55B681B37FDAC9543F143EE5B57
-292DE45AECC7F8528F70642A9ED6A987748EB0FCF8E4964131787205AAAE1D84B18E2736
-911C20659F9813B7F90F69F2B93360E2983CC40A3122DEA8263FAFD8DDCA7CDF12908042
-F5B2045B3AA8BB0336816C80F1C89F7141CB3C64C08E8879145B10696164E0872635D06C
-186444A971B188D84C0B908CAA9D14DE8E69A758841AD6FA932A648E9694E399F234D090
-D365A315CEF4F66DB8E959A56FBEC35DF6A4E969A49FCAA95FA2797D401DC1B42BD82BE6
-5BDF85A7B8A3FDE93B698F10F675E8E0B7D2AB4B3DB8E0FA5D21184C9487BCDE17AB44BD
-DDC9278A72C83EC2896B02DA5D91F2BF9FD44D56CB65B65DBE0D325427E6456E4046DB1C
-5229F513A4EEEFC319A58334835FA5DDFB73D4C8E92C4A3A2F449939939E07BF9B3B2200
-1488481193B08870E0F077E47E7946186ACAEB9FA732474E2DA080AB573A4DD27BD99894
-F2EED2C80BC44C46596FB47502649BBD83744562DEC7224B1CC54CF28192D3C23956A7EA
-96DBF54D85353CBBA1770E0FB58B6F1852409BCB1BDB61313C3C7C3A349591AEC393EAC1
-BD80E7CCB94C3604C5BA8B0828AF45182C683FF51D2D2C00570F6A172E2F9DEE877B03BB
-45E866CD7E5A99E63B4141C4B12A21F62CFDD331137CD027F94DDF9F054C162D74FA1CC3
-94F404C707DA1F4BD2A8C1C762F243F14FC71E546EBB5733C43AB43FF23BA9C2CB9058CE
-3F3808A129A03B6E13BF8DFFD23A1D02C839FB6ACDE2BAD2474EE64FF7AF05FB40E30A23
-6BE270B787D6FB1FFCC0C4D7625B13217071FE46C2DC56DA79F278C69E85D7856927D0FB
-108EFF1E3AFBCB9CE54BE2F76DD439BB182D3DF1F2796DF6B5733959A950ECCFFE7E0B7C
-6BDF71CCC7DA4FEB31D6FD79C506250FEDE21414A1A842747F350664CF53E6710808AD08
-A6FD26ABD8CC592F693BA372A5C0D0A6F4277A92553CC72CD6212865DA7D032D1904F1BF
-668B0B37511CFBE3AAF595EFE422FB3007AE3022CEB6C87058941DDD0DBF6F9ABC5E8CC2
-6AF7BEFBC1F4B1A03636965919D070FAE1F7F9BF42FF16E9778708478A279DB9DDA512CD
-B372E39B9C5C87CC7A6E55BAE1626E8AA3ED7BAB198149D33D8E79960DEE846CBD2ABA76
-1979C57754955E90D7533C0B38CE5851C926F0738CF4EF1BB2951DCEBAA0A0704870DD80
-FFDF92D2136C1F470FF5345C7A93F4DB72360B4DAE833E2614154FA43A2347FAF4ADEB0B
-73C8FB0AE22A42F80B03C7207F75851AA036C76934BF67B10ED6A5B2000A2F300A9E1552
-FF9F4C66ED0FB34900CB8649CA50BE457B967184D0AE2BAAFFA2AF24881761BA01759D8B
-EA601F2C09E5A15B1289A9BEB266392CF5CFF78EDDE664F3FD6B77A6C10BDAB1E57E4ADC
-2EEA4F2897D2ECA99DBEDB2046C7E889EE2FB30F172EF290BD4E16FB68C14E88A58E3F70
-9895FC431776EC963284E03B6975ADB155128913F0A3C910E6D3F0AA11A1D6D67C0EF96C
-145D63F6E629C61C934BE19A0EC8D5ECB08AB1305C5C53F41628E7AA2945D72A18F5CD78
-3DAEDA17DBC867BD813F81E2D828B09EE77EC5BD7943FAA62E9682214C65735152E0AFBC
-E7808699369C181FAA4977771FD8D716DB2BEA0FA4CFDB606A2EE243E0F4B576A3C5FAE3
-8F67C4E29DC0D86EAEDBBA90803E2AB710F16BBE42748967150D969C2E07115A9B2A2507
-A87F7EBAC946F7178505BD9FB0E08D86DAAF88D8A5EDB321FC2E7915CB80E6C0C2B125EE
-0FC6124990A00E685E157EC94D72CCE6169F852E0D19DDAFAD022C4DA4D19B979D33790A
-E763E04F78D6449C7D3674A12D1C01BD73872284A3D7CE4B551CB80602FA4145DD2E4360
-1CDCF3D6567887A6B0A73B7E1B6BA01DC93C51E9FDA181B20835A75541320F1BA53EE871
-16D938FC03B909D4FC6558223DF057E3E6195C1E26D33B28AE7156B88D7B5A6A85ED8498
-48EF890A5402467A8B11E2DA4719C395D6F40E91535F1DE6C7FE1FA57705A8F1321E2D74
-69593D7E6FD067E07B51E7BCCB382B1B00B655116F3F382D990AFAF26347CC6FDA803727
-C1E13C6429D1F5D5E5D9D56EACCDB32E30AA10DDF5E0294E59123E4C2E020AF1D13A0F89
-99F30A49D8049E7D9B8676D2C13DD896FF4CB82995F6517462886B4D6DC37BE8B13D07BD
-23CC78524F835DB22AAB29A1E6468E8607FE3C9E1B1CDA29B98623C87EF39A2DE0BE849C
-438EEA208FAD0DF05BB478D8E54501EAB704ED405598D38D6A58628BFF784EE969725A1E
-8BF897007D0D6F53025453714BE52FB6A5E4FFADE5563846F778B71FB0D225F8C9AE9985
-9CE14DF67AACCBFAC3AFACF1CC6FFB6BB517C87A382D1AC1615DFD97E52D3020E531B8D5
-C6318FB90D30C2CE9EB7EC0D2DD8FBC83A48BE41F22EFAB7B5CB7262E8BFC1196C69AA92
-EF1AA1D59DE9B1C55D5B7C0019D68F23323CEB4FA767550B090439C2D1867631A97CEF5E
-7871494CBCD1EE56C0EBD4B2EC412EAFFD1783CF073E9B6575CE9642F704486C6CB319BB
-19CD270D1EF9B63FE25255F6CD5D3B77B64FFF7B562742593E6DAB5EDC5E9E9467A1A478
-8BFE80F892B3DD660B1765B757CDF91B61E5AC7C7FA68857656473C32CDBCC21C3A0E812
-FBB939809D552C9394686F8CE36CFC3FE8994D26CF4917CF0F11E0DF8B806B5AC7B092A9
-255EA0364A9DF03B85D67BD2B4B4FABBC8161542814E432486F103F2DF6097DED715E2DB
-B130A753D35EC68126DB76A2952575BAC3FABE2BE9FF73D18E60BA667575FE3327769770
-925F00FE13573F5050DE00CF24CD231CF619B2351371433DB15B1E97AFB39FDC4E07F1B8
-45449EF4CD86B3F0C0BA12D52A81D5386A9B3DDC62E588FA80D5A1E31FF503945EE0FCC6
-841AD3D4E56F9C801E84B01FE978E7684F451822423122221FDCF6702D48CD226DB839A0
-E095A31975298CF2FD71E6423F0FA5191D8BF7E27E6963A23F31131E68278485BBC5208B
-6C5D2765BD053C47566A65DC4B173E1580183763326010D54652BCF7BF68FADE1E3B8B28
-E5C601E241431E665178E56C36AA1125B07D8E4E9627027D73CD5A664B40D82199E3622B
-EB76FC104B2E5A6E009B4AEB180ADE287F763B73A6F8636C0CBAB936F79859941ADBA525
-72CC725A8834FB6247ACFDED0131BD5032ED40A04AB7C655AD7E954E4CEAB74524582D7C
-142FEAEC28F549E36135C085A35DE07E782E72CA53BF7B2C8EE8C3D8346E2C2BA619924F
-FD9E5FDF9564723BC0FBC215BA0F785532DEF5AE95939F027A62A402A7FECD77F064AF12
-9472A23D2118B569DE04888A8ACCFD6DA14E928A7C2FCE35531FF112F93202859771381D
-6D161E6BCF5C6DE9B375DE8E983A64AE6AB75FD52D590B78C13885B46FBEFCABED5BAD69
-04C4624E71B29C4EF6B6C2564485210616C08A3C41C83BD947940BE454185EEB33B0F0D3
-680F9BEC8417063BF03100F3484678BD0F51869F3244EB71775D0397B8DB029D13A2A318
-2320FAC3561E7C994DF8F94EA306736B7059857552CBDA0E2DB4689A1572B509DC658E6F
-5C7FDD812DBBFDDE644F980A58E05F14454F916D4458DB067719254EF77A887D71FA3385
-3D6A8D1FD29885E3F52C6E424EE0AC4E1E64180999A7266C896CC3140A3C59DE77DD941D
-376EBFA09D7F3761704BAA2C738610F39E7FCA335BE7B36F9306795D5B2056C57FC42C84
-66BB9141ADE2ECD7A4ED5BF9251C3091D8B950B95CF07303B165A65A4CD198BFFA8DDB46
-1032A70916E66838CF2A76CF444ECBCB9ED23B3B32143C9A98A395E51CFC281106A7DAF3
-74AD4BDF3089EBE727C93E58025BD6C8D917065C4873A5DB3E90084716C5082F6CBAA4FC
-E60176DA9B75DBC2DC5BEFDEAB261C915A7F68CD5F3296FA854324B661BE571A9CB98157
-9C6FE6A5EFFE43C9933EC292550619B794FEDB97CA0FBDADC4FC665D7955B43BD3B23A0F
-1B76D78F7A1CED8FE598074469135890FE8789FADA3CFD4FB965A1FA62E55328EC450B3F
-1E6B00FE274A494D25E94A2A95131D5E6C8DC6E27B65BEAFCE6095420696940A282C5AA5
-B9E66F243FA307C989352A1D557B83C5855C004D86A4BBEB11BE9F152693A77925B014E1
-6AD084959F78B2A136EA406231AB1509E43176B268B8EE14FBC281CE832FDC2475447A21
-49CD45645A78E4A0027060CAB18394DD5A3E7721B27AEB22C9E98AD563BB5FB2B0A0A759
-93F090DC2249F1CD8ED869E0316A2AD4EDB4C24B18B758AD2C746AA9E7544299C8170211
-6D591080B15C376BA8386FACF02BF9E84AB8C7470483A4D6921CA9A2F191A42BA49928BD
-BA244CF5918E55F59E27D9CE90517F9485D91F1D5B02EC941BEB6AC9C7CE3E684E882D18
-7C9B3EC948A745932BBE4DAF8FA61A84FD7D1BE556891F8C339E63457FB447024A3EF140
-99E8FD37DB2AD623BA1476C883F62395E98C1B99F981F3FCE92A9DEE9D99627F5DA6753A
-F46B1B69666048C981DE59BA35C0481FA33A17D511EEDD45D90AA7576573625F167C3BA4
-35B8FFEFBED92F368B92A0DC32975BB2C9C8B1A121CFC44075474B78B496E953D45B9762
-B2ECD85E0CE52B15510E80AE563235E400CBEAC6EDB602386FE1237ECF4D3C14C92280CF
-F9768E60748AF4865981EDE419204FD2F18FC50E49245260BE2319DC1E624C2E59BFE1FB
-CD04A3F5FAFD8D159E42B8E52E0B2279FA442E613AAE3DB6A1016579D3170F8F489E3793
-12A6E32F45128B15E01373AD0C1449D0E5F31D5DC50EED3EB856629EC2E51616F40C9DB2
-F4EB8BFC519F473A02BBF02FE0E8F86D0EBBDE611081C24B3ABE09239A9682D8D573580E
-86D5FB31227823CABCA34D9BC918F38D9B3273223408871EE2D29133367C6048E0FCD93D
-22144710814CEF24D9680041F020EC73546ABD22B6F521DADB8E1F6AD20AA8F33FDEDDAF
-273CB366CC1F7FE33927075C911FC4D9D8175A7AA4E483C2F4AB658EBD523405F83F5CC7
-E328F3FFA5A66900508DE0682F4B4632880A3C807D606A2038F796B3A150F2202C538F3B
-92DEAAE46528E1BA68E19E6FEB80CBF5155A91C16AA6FF5CA472B4444D0981D1D9F7C9E9
-FCCFF9E67FDFDD78AA2AB765E34C7BC29B2D8BB138AFFC8351FA98DA41C552F6C1479229
-5909A4EF7F4865E16BBE81EA742178C3E86B9D2B957DABD2D6A558921D4FC3429A30BA66
-13783DD39563547E9CD1FBAE6257DA11204DC8130C89C5B80541E0668752872C050A4320
-92BEE57ECC95266FB612532DD8D5465C938AE4979559CBFA8F2D7903E48CF9DEB397EA6F
-31F274D48E8956D337310359199708CEA05DDD64CA417300ABA7EBE4CCB70DB7BB31FB45
-E2B9E0F15423FBB2EE5964278A536790F16ED4F9CE31F6DACE8C0FC489CA73D2457CF3CE
-BB9BEBD0CFD2D1F11816BACCA5D4F9A84EDF8D7F09190C16F1B6D1766AF98A34E5A28693
-B555E507017C1B9A1B9D8D2F52E2899ECEBB6A341BDB98DB0885D97C5BB9D35EB6D18099
-594DA2A6257D5E4806D45CCA23CE2545697E3DF34B6E7558D080B030268AC56A576AEA44
-B4DA78A686340EA9B2249C58381347DE308439CBCB5988DB881340139156FFCA9A8961C6
-2004EB36FB0C77F8B762B388EAE846531CC38B75AEF785311A6F8AD5C0FDE8A61D89292D
-AC55E1920923E91BBDBB40675A3D956163323406F2EAD0BC79E4E31C2C2B22B46D266657
-FD150611305CE08885360A76FF28F3DC837ACA58CAC71443120508A80F9F7086DAAC40A2
-9082706907B9751B19D67567FA243BB6595E1DF225DA36FC4F8D86712B1BEAA0D297AFB6
-D20AB0ECC8CAF709E991604552ADAD7F22F8F229527B60BCD4DD9786AA36A13328881677
-7E00F57F9E562B2CCF2D1F6F6968054D8C9B08FCA9E0DFA07C11BCDA281DE484968626FB
-52B677BCAEF983444B24B0D959B66FBB9631AD4796C435888E09D90B1FE97274D8459A07
-9863D3DF6856A45BF8555999FD430FF9AF50FA060364A727503362129D627BCDDE83F679
-549FBE4258B08DF47BDC2BC161D5E61804588615C5CCC3CA6948C25DC854EDEF94A2315E
-A89ADD8163BFEA9D72B430ADE3D9C17D69C9362D2827EEB15BFE3B8806A8CE373469DCA9
-13FE773C8B9DB720538BCC4D8D5481CA29661C00D1F5CAD55799F363AD2CD563EAAA70F0
-6E250629F63A0ACCD3AB2F89F579557B8299F1642663399DF9DEF3BEBE9F9FB3505E9581
-4D58D1335C9AB341F1928FB7553474865191AD7D8A89C8505B88C1C22BA7E3A88A512AEE
-41B79569560C45B67497A6AED27FBBE40C8B2310157AED1078B9F352B79BCC93DDDE7803
-F479CAF0EB48AC801A0BB9EE972A258F110446154E8DF88DDC10523E8CA22A62285B6285
-E7B3A4AD23216701310C4152DCD1E39F771BF8305D35E0BD42432A0C03AF965756F25CE7
-0869B6DAFAFC69C8DB3631C918A7CB0A1A6E3248C5E1E665E926DAAFC9BED400CD4584AE
-03DAEA56407CFFE84729215EEE16B10BF164B5AD7303A77423679FE14F6626C934A14587
-97A4ECA95603E5F4023CFA4262EA9E949CFF449EF9A82005B23631255E615B060E4BE2F5
-526E06676500DB126EA3D38E3562E1819BB68624010F5A984D446790AC8EBE11C5137500
-1814CCFDB10A27EB87382CF5788150D66B803F0833CD73063F2CDB1C2A56E12F8DF75310
-EDE85042D615FE028F68C668017A2A32594B89C428059DDE3FCDB18F9906C7E813DEA4EC
-C3296C1A21BD4BD3C373E91E0D6B6582D99DF35F5091C09602547B864DFE966532EE4669
-49DEA26C0F7B42D8023F8EDA050D8482361EA43C52FFF4F54335284BEAC3F427B6C59058
-912C233525631F113FB15B888D5112759466A337C37A22346C6A4963E3CB53ACB141A59B
-3BAF30349CA7D8827C2CEEB62EDBD851C2AD9BB8083DFBBF305ACE6868046BD93B59C2AC
-75D6F3B1C243C6EF66533D2DADF52D81DF1397ADC532CE86363BAFD043F9B1B8E6B83547
-4E3BC3018912BE08A570BB4000BB13F249F38DF8C73906EE9ADC7D5630F04BECA0A86EB4
-52ABFECF46D03CBAF4BE02061EA50576A984FEDE9DE35DEDE1988DAF0A6308EC4B6BDFE2
-CB0C7198122C19F73CA7436955379985DDE2ECF851D83A425B4427A4A17AAC64D9E68691
-2645FEEA0A8A0F7A7C1CC0B3E96C519386EC14626AEF3E9E8718877DBDF45C9B8984F81C
-99980A8F8F3C9618F34407CA7916D2C4741AB9B4F916763E1592BA2C2D5979E2256E2D17
-A77905EC38606C3645F1348E77ED501DCB783B8BF677E55415DF7373C47212BC59CB71A5
-4425410E29A19F74A9EA8AA508B19464BD0BD1958931B135DB014C6F358ACB880C189070
-E27188EDAA43009B515994E8F3481A9DFF6DB2D5D474F0957603B0A45A7E6ABA97640576
-11054B1ED7C692263C1B2BC424FC68615E9973A230849E771175432E48746AD8E3A15746
-1622190775BAF10F8BB66D2DF99170760B26DF8714BDF178334D0F90A615939C95DF51FF
-D90B28F5BB67FA593ED31E035342E6F187DFAC21FEB26107E4ABC7F484AE11CAF85543EB
-6FA887B4FEC65A760FA33E6AD078F420D4828B526B37B4AFCDF396459B6338896D7EE8DE
-FA3E10C6087DD4E3F56CA302D955FABDF1EC04A5FE4F12CD40535879AF0AA992D40E53BE
-2EFC1FD35E3DFA33EAFBBA4E851434334BD4551B4228BEB88C5F8D259864132E2B893C98
-2A9560ADB25C06487A75809CE201F001E426EAFDA88F9C7AC36F57B06B212F03AB8FD9D9
-6EB6122E968F3536977ABEF5E75AF5C9C30684D3D7833E3495F7F9BA021B5C4A1F76408F
-B42837E068F91D9D2FB467802873702AF6216CFE60C42B1C8F70E7555AEFAE95B6D44C9B
-967E68064CEED38C09BC1A3FC447FEA9902A26B6D5FCC8A42F47AD2FB2C4DAC61AA0ABFA
-58515C45C912BACA7D3D32EB79DC14A4D8DAD9EC0CF8F4F213D3E109127FB7047D2DC47C
-0DA7A5B790318A1E13163DB7DA71AD64BEC58BCF31A596DC90163B1C46C9175059B27DB2
-D858EB1AD055891E58C34233140240EDA5AD13695EC1FA606EC0CA9CD84293A75829B1DA
-2DBB20D97F96D626D7E6D2332B664BF543849554B07ADAD02CF6DFA3BBA2D8D707810B0D
-20BC441FCAD69B8D986480B1E191FF390FA02B76787CE41E3F779936A2EA8CC0167BA167
-E4E08204BB8F4D0CE908AFF57F1E9CEB3F00C1B863BF65443684BA425888ECA909B2A6AC
-5436D996810370BE779C30D21941A101B2EBFD4F38DE2295CA0FD39AFEFC997377EFE1EA
-C62A9347DE13284235061173CDBD0C97A06045EE97A193E79350B8762ADDDC2494A68628
-173A30563595266EE3AEAE1179EE7CCF47A7F9A84DA4B4120FF6B12FD8784BBB674404C9
-973DB36020A9A7EC459F263213846A56FB52BE79B8D1F52FD8EB086A761C665D94D01336
-D5029A5C9C7D7C1234BB170E90CBCF1AF8E5F5B21CCF7C11F9F2A28384B844B1F8F1E543
-393EA9DFDF15ABB11520408BA5242CE5B5AA7EDA7DD72D3D9B939AB2AA4257764929C8CF
-5F6806A21D524DDBABA96FC46B942AA00F9485C1F071BC6C94E65A153045F88BACB20D69
-6EC1405D8880ED1456162625EF0EDA8ED6022F4E6BCB8800A23F762EA3853E45B4ADE7AD
-4620E7CB83EB1CDBD40ABA6234EBE853B3378EBD4F077AF9E12E692995EE06D45CD4CAD5
-ECED7947A89DCE4A66F1B265BE66BCFAE487B41AC623ACDC6667018626CA450FA2E60512
-23B86144AC9A5169C29FFBAEEB9E1D65CDEF2A5BBD29DDA5021AB9F435C459A3809A5DD3
-6EDDD773C0530A1BE54910B014A6AFCC1D95E36A5C8C7D8DD1DD091D7B14E811D864B1E9
-41122A7867ADB016F949DFAE0BA06FBBBCE87C833C6B244AC48A7481C54FE756C2438B00
-9ABD319AF57D0F69874D274F96A12BD417E8CBA7E20FE608A73A88A935EFB77DBC198005
-1CFB9CBA94E196A412C45CAA4F890DD9334611CA1D8D6F6DFC3C180180F22683BB00B8B1
-0D78BF4D64DE288D2ECA95878C2BF266880E547D3826C5D1F3C6B4B0A3EF0345D8FA66C7
-EC77180BB59A6CA349687F18FF5FB5B10AFDD7A440E20F55650F258A10899BD9467DE2B2
-086D32150FF9242346A6546F9A1548436BEDD02049983A46A2CDB4BBA8BFA5F04D7BCD4D
-35DEBB30496780236DBE224DA28218DF58037509FAAF6BE46DFE5A93C1F072F37D80FD97
-33FDCA1345C468C85CF501D4EE30D36EF5FD87837DDFBD703B8F6AC4AB3DCAAD7E7C5E54
-B6383A74F4533EB9FBA0BD8D1D1703590CE24FC3DA5E5BC929BB6EFAD09F02BBA5E30315
-2AB1CE32A6A2F61448A765D912A8DCD8A8E0003CC2BF739F4DBDB388320D990B9F00E04E
-05AD6B650435F44CA9570D878D89CE782E06C68BA9024EB887C6FA18223F587338BDA034
-893624FB950E74209BBD763A9677FCDE1236B74CBCFDDBEDECB58DB1DC445BE8672ACEBB
-05F0E677D133DDAD4607720462C63FD9409C29C75039A9EC34EF0BD89B3AC6045389A3E2
-136C9A6D502D335789CB74B7F369A6877C01CBA68278828D17C5B7C0DA4F385FA21DD8C4
-C68B9E17A35905DC4006DDD3D35186E31CFD74C26E7FDC450E6729F81FA36000E7EF2AE3
-9C4D80D9A94429DBBCCFC44A7044F424E90C5D156CE1696CFA2EA4742338359287297CAA
-5D616C1F7C7E7E71CE9099028D6516FFAE321143EEA343250553B3249C2937C1797ABCEB
-BFBBA9BDCCD5A15DFB20E3772660DBE2C410BAB6F4B1BBDC61AF96F88BF830C23564D4F8
-2FE22F6B22B63D06D1B40DDD976E19C8B361239546890888FAC5E7ACB15C4762C4871DEE
-EF368A59B6BF8A359E29967FDC8A59E03E357D3B84843B20EAE12741CD9E2F2A3A32CFF9
-1DA33E881008CC686D03A1D55651986C00F7796559D4D8825AA811EE8810B921FE485D43
-1873E682B76E96ADF5A586B9C1C5A876AD507C51545009F09E2241835ABE9C6CBC76D88B
-7BCA368487A11BD7654EA0B1EC5F8EFC9B587718C732037B875ABE9F5D44C82B29FEF550
-B80FC0FF7AF43A6CDDAD7A3E8024A09C04CC5570C1E91B97E7829AE7402C870E5496E8F4
-B12B0D9DD500DB6F8546F7C2F965387C37A701F2B43D236AFDD777537967741E88F7BEFC
-9D9B3C7D6A86B1AB92919A48589CF276BB9F00DA2D7BE38F46C9E5B2365948E32A30D830
-0FA8980D7D7C6ED2252D9465EFF276856698108122833A0B3E774EFDF55A69070FBC7E53
-E955C4E02CA71323261353E8F5D1A4948ED41F4AD7E25585E6DFCF5553C9187632617F3F
-9D2230A478E4BB63497500A3CD8AF78C780E700B14272AB399D2D2FD9979A9F422DD2B92
-8CDDFEED37A40A77F93A1BFB9ED9297B2BFCBF9FD40A44D2227F4C7EEE3066F1020EA335
-91BCB47A260B744919F0359E2AE3C619592C325474063675E5D85DAD5A00CC879EFE071E
-68CA2CBD108FAB3849D312DDB823BBD18D7C3D61DE7A5E4AFEDB203D4056B43EE1D93CA5
-0BCC10AECAA08799E0888B637B6D122EFEDF40DEF30CA93485F424928F3CD6AC66D85035
-F8BEB418C560E00331294B1F57831C33F8ECBB2561837A5A0B0E5E2EA2DC3F72A1C09990
-11BD2F0A0916AD62A8DBA859AE63FD73491390CDE70B0C0B7D36354BAA08BD6014B790FB
-33FB26BF6C2215E16379072959ACBEC5485642A7C7ADB0B826DF3390C36C9B28E724D2A5
-7F57EF0B1846B358669EDBBDA569EA1B28E9AFF2DB2A8DEFECDC073D954F3879175289ED
-9F159376F3D1301EF514B47D3EDD5092C4618A80D20ED37D4EDFC8621CB7E4683AD8B2F5
-51D666B8F39C0CA193BE383B0DD31BD540408314871CDEB6117ECADF8E187D1D5ACF5239
-1F8B2B1C6E6F89A35022D0A2B8CE22B79B200AE116A4E9E097872CFCE5BFF8CE9DDE2E85
-087649207EBEEA22E07187C24404533EEDDDA851CA5E7C18657BAB75029DED2D381CF4AD
-2D5D52A310EF4B8477008C11393D74B34F0FCA4026ED3C12C71941A6D77F501A649C8823
-2D9A1EA080561578DC7A1D591B8E922BA280977ACF3549A24125FBE9049C30CB9DC547E0
-766EEDD5C0210C248C4E7E435C81AF15B187F84C216BD842380436BC3467225938AAC1E1
-FF7CBC6E6C59BBD50767D3BCFE93564F1905AA38F1DDAE4A783E857D148289304F8DF194
-CCE5CFE440CEEDDC5F3CD1E1587F67DBC41DF3CB4F08AD19178CC4B77B1DA3CA02B6F40E
-36984E0439E53877225B9F8576A9A2B57286D6F759A060956CD30B6E37473CBB55D76FA0
-2F4588E66305A1F40DACA56CBCD42883B960B6DE2F91DE519C80D8FBEDBE38024EC6F6FB
-B6FBDD5323235130771153124CB95ABDF622F737A42078D8E81C9965B7324F231A072739
-5129FB30006987B2BB806D414672310FAAD37F3FD005EC54D6BD2170AAB9A21E52A9A7C8
-C6AF03F51488D34B06F22D93E72FA5BF7097918FF67DEF79A6D62CB216ADB114A01CDFF7
-DD387A0CC150E852D4D267187F6A6DD6B78C9E283C9D547DC6373A36F3252CC683CDE9D8
-EB7221146E8C54D1A90DE57003A0CA78440EBFBF35028112B431C508298BAB97DC45875C
-D002FBC1E47BE8096D13D485E2604EEF44B0324B0F494D874A723D080A9A32B9668605E0
-18BDA773FFFE5566DDA289972B087D9E69268B2CC04CC1F22DEA738A2248F370328C7FE6
-D50DCC267BF736C8C3418626BACC805DC44F60A862413D4C76104D6AA64F813ED9766563
-3236CC8EB519A9C3A2D53D20658BD68463BFBB0B97A795A78280B0C05DFA3FAA5EC6E6E2
-879ED3817C5FFD07949528C3C60DC6A8F1C73B7B87975A101AD9097F694B7D3140B2EED4
-52E98F073ED4648992EE76954A712C1804DE95D1C1C98048E5ED790B3269BE49C7653292
-E69CB482E19611F24773F00E483B8541F7D1EF3CB9730F527FF6309EC105CDDC9BE9F9D9
-4C28B3520719E5AB1EACB85BFC4CA92ECE780476DFB3BA759550A261B675ED4E1C1325C2
-EAC510BCF993FA03281FFF75833EFDB168EAF8B2AB92AAB82B389E7086822363A74829F9
-FA36C1703081E55EAC5E6358866EAE8BC04C37770DC97392713F110C143B7CEEFFCDD84C
-A6713C01B4AF3732DE935DCDC2223015E57FBF98DCC32ABA1A989176963124CD353DB3E1
-8998F5F322EBB591528544A4A4E0618076FB07540DADD6D00F8B66A60ED5496CBB703E59
-45EE138D7CD77C301CBF0814A7AEAC93127862431265081273C1E04B6C2B4DD0936D8F34
-98B2EDBF2E2E09397169EC99FB85AF23E929F4871EB8FED7AA77B2E22AD7AE6C86F15B07
-A01B8A1E3F8381CF2A7AA25FD49876DF2E0DB253DED331F7CC0A545BDFF42CACED8946D7
-9661F3A340952AE1CAC541F0F6E66682A22AEE604941AAFE270C3C2AF132C9925A01B35E
-D770156A0AF4EF33B00DE099330D5A874F84A23621C6352DE80952305BF501442710DED6
-97682CB92BFFB645C2A48C49D47F8664BFDA17F5ED7A0F64CA28A05CA58F06A9296E6BFA
-858B5A728B28E12C75D947DBDF779F738D67BE839FC0D80F3DECCF255898CB916E2BCFAD
-74FE85DB8AA036791DEB28487B368F14F1FC79E54D4D94074F8FB530036B09CA8C44468A
-A199990933422C6AAAD716F03358E8FCDE9DF706F0590037971AF1D705DCDB45085D8940
-31468CB922E90E44AAABFE7DB1D6D4BD37081491EF89F46FF4F7FEE501495112CF757202
-448FA93DCDA89464D7AABDDB7BEEFC9671BE5A929DE84677636F12F4BC22A59E22F57BE1
-E680B67FAA2F00FB39B6FC7A48E43DDAB93FE9DD75869375A874B7CD49D22C314D617848
-139D61022A79D94AE1FF9E07C7A7C3437709E09B92A8F33AEC386DD37374051F0387BBD5
-F366C3EA12F5AEA0569D15B22729E006748E900A17E5D4EDD52FCF4561925C7ECEE84B3C
-F29BA83B03EC7ADE70040D898BD3EADCA66DF42045C795ADFCEDE3DFCDAFCC68391DF6BF
-C9CF4A49A45550F6301B581D19B8A8F7CD9E06BE7A3C5358D6A319188A803E8A5CBF9877
-B8E53CBD98E3CF270330BE2BE853E5BEEC128633EBD5471D9E5AE1D67D28E17C752C5443
-E16B6E1AE341E83ED9B6CFCE88A12A7329525C0A3BD2D8AFEF72D727B3104F12BC874446
-FF1E5204DCFC9CE7F772855D63A2A8DE36D382346F8C43D7153B9BDA92AA04600267E704
-E9F43F3D625EE0EE228617C7ECFF39AE97806096BD66B914A43EEF2917100C2F0E1B2554
-C891D50C3A0037190C9AD8BB6563E004696DCE62881C1F6F8F05A96DDAF3F89CDBB780CF
-6B7196124DC1730D05CF821CA85156F7EA996C7E3A44BE8D4EA29ECEB2E49CA7D676EA3C
-874594DA4B8ED45B1568EACD8FF68963E24F2E05EAE0908D1E81165B872F3C6284181CD9
-A06996A7D247A1661D65DC5558E0CBFE14724BE1D44B08A1E06D880D87905E889AEB0ECE
-71E3A9037621470305B423EE63C2BCB5B227B264A4CD5CF8573D8B320004D212B65A44E9
-A856A3631BA02C46868994BC9985F219C9DFCAD9591F2B76B34904DD221E7C9BD2DF06EA
-B632E6CA2A24699AE6C9C6B4937A8293CA61D36F3193D888D5081E4CCB837D93438602EE
-DB2D197BDBCD0A00534B493E250ADEBB1D79238C8F8076801EBE4A282C98750ED7BA28C5
-9B903A26553E03E5B1B99A2B1D13BB6624717357E3F368B65C8B2AB2606577E45345C971
-CE54702D072593814090A9EE9559DBB28B3A3F44328C33F652FF066F87F1B251EA5098F1
-1E970A3505B982A023147D7D8B077E626727B1AEFF6277BB306423D55070829D73895B67
-3E2E6F9A1F954B6EF69507E1BE86D6C594AE270D54C39B1645FDA847DC3D3267AC9E3190
-9A509C03DBFC0A063FE9FA2BDCF21199FF1397A93F13522702B339AF7E6CD121FC2E3D4A
-22132ED26FB31F2EAB17B8DA9AEFD61386EA3EBB771A43B60EFFF3CA55238BE1A0852F8E
-5B78DE572FF42616F1D4A64E40C722AF8E194464F506FB9A6F52E52ECDC7D31287373EDE
-F46C5DEDA0CDAE20AD6C88D6315714304D8589D6A24DCD9A0491598AC69638C04A19C07D
-CEEC1F8325317431B3892F270779A55F293085402C4B4085268AD69995186470A2E2A106
-44AEE77DBC20926ADA20F91B5BDCC0181BB34C18D1FB68A32808ACD569EA71E627FB5419
-EA3228DAE56414EA93250EA395BA750C60084D2BEDF6144E970B0C5C7CF40B05EDB70452
-7775F2D0A55E33BECD54B9F91807B097575929FA313EEA4B8EBA80F9499BE28AF2A3BF03
-CDFA19AFB30DAC150756F90B432083DF21C79616A054384D91F913520EC45133A30C84B1
-C1EFA0D1AA9B4FB33908CD93F76F6A8CD03F8714EB0E688DD3A5931BA940C68DA296B217
-BB6E1BA16FCC974E3E9F45A30B47EBC5CDCC6E2FC6AFDD826A1BB6851F68BB88C2879B21
-81BA06EB195D8775B8CA20B436B664BDEF465309FBFFAA48B0736069FD790DBA0047E4BE
-7591F6B5849B2A1B891895EC40234269370FF1E66AF3D391300E07F7987D3B168C9F4770
-9AEA1367B53613F52EEAA64D8D296396EE3B6338B8479022B19A9992964200413F29C3C9
-9DDC50C2C61B92465E339B9A585CF0BD532B2F2F3B7BC3597AE2B89C686781AB7C1A2A44
-A6A897F1CEB49F63DB43D9DAC45F92880661E79D2C292CF910A3E75013D4D3EE05CC1A7F
-7EFF6810E89660F47D06DF62507A067B1F37A100CA620992848EF811D2B0FFE0FB8A85AF
-D58086E2BF8ABA3FF4435FCEFA66F460BB9919A7EF73B5FC511BB3D4C91BE3E90DDDF6B4
-4A2521451B568A167D4CAA98A2BC114B77B2184D15F98943660EC92BD6D0B5D79449FAE3
-089A4709F68872DCA3AC59ECC84A66EA19DB2FDFEDF7F8E57D90F6FB0E856931EE8EA3BE
-8F3D692E4CBA21BFF24CC7DD3366D5F7E57A190F61502CBA9C274DEAED962E5EE3CE7B16
-2E34BA08806B7358D820009CB348B10F225EA9DCB92B0C0CCA4192C3437043132CA73E96
-6527062BA32227B2DA597C8E3E75436467F2D6895B5AAF1BCF55A02267E5FC21AAD0E8E7
-F2459C0B6EF0C372D72F697DD46475075C4172E50405703CD18C23A6D3E7ED6F526C3EDA
-DC5AF40507AA9A76C86E8136CD695C955D7942553361E63FAAE9C23BF3A24F35F8F9B659
-90D7A6656AE186B1C596A8E3F69748427F0C09F5641F284B674F46CF3D0E2708419C1689
-F40A35DFACD95F8C6A1EE07E7AC8E9FAB58FEE8D52E81D486F5950685CD4EB36EBC16FA7
-C0F420D6ADE912042CD2AA3C60B2468A59DE0A5CDAD889180BF05405064ADE97876CE977
-D6F665803C8BE866AB0F1B08452A478408095AA3B8EB0FE8490AA682DD00CD3AD3592FBB
-54CC977B46E3CE307E7D8EFBA586000BB17EB0F2EFD0B0EE61CE18ECD565DEE97E37CCFA
-323BABB4D6354DA19CD9080C96D13A5E6AA1888B17970D7DA8D1B461822CD70CCCAB9F30
-D48F924C91DE9F3243FEABDE5C3C620CD32A5AEECD6BD20EF890F1457285ECFDBBD22BA3
-FAF661BA18BBC1E6EF81DAA2E2A7CBD7A058ADFF961B5A103D967C610530EB58E2D78DAA
-17BEC7C9176EFE8EE633FC227BDA64E54A6533B6D56B787F5098C47824ACEECD50CF4C3F
-172C3C7DAF7B6EC9FA8775C52609D08B073B784951D66C8AC33222604C634E99E99D28C8
-B45846715733EB3446CDDF659D1BE4B439CF32FC2841AD3DEC81A95B20B04790A669EE4A
-A9B40DCB3BB6F0A68E5A2763A8CE7B72586CB6006FCB68C3EED89E54698EE5928F10F5D5
-616EDBF01C349C20E99261495735C1CAFF99E2B1FC986A36552A37D7B57C1D4EF460ED45
-FEF6967FAEDE8AE1B2C7AD835D31AC8160B760E7A36333B83843EE3F55BA19E2F6CD7D33
-9FF0657577CA58BAFA3AC0B7302E88871974DC65218E856338C81F00E4FB35F8DCCE6208
-D7F1BD45C3792D21C308A3CB7B50AFAD17EDFA027545355991E99C1EE99D85BBE5BBBCED
-4E9C6334ACE88F82894B4B1F81F51DC6BBFB2621CF7ED7FAB3170A5DBF6F5E82BA316172
-60223D7049D20ECFED36DD022307D5ECEC358D4A8E7DE800F7D7C048FB265C96108B6D56
-EFBA19A79D37CA7DF37EA1F778B74CD5BE98A2B13BA7E69DE56365CAC9456A3C248D6828
-6BBAC51CFD6D73BED3BD7A7A7B9800B63D1A94882A52F322CC329F1BD691574732DCC32A
-3425E83B88EEF053240D7C7C643A7FCB0DC7B452E1AF9131CB776D450EBEAC8F282B218F
-D1540E4816E53C488F026A6934CD059DD5A09DB1DD8016815D066551BCFCD503CAE5FC7E
-996E67351A6D681EB67D78F1174B3041096687912F43F6ABD7078C7792EC69A42ADB3F40
-95F326C049344123D0F93EF2D79DA7E77875AE9110F3E87FD87AD187B566DBB723E06877
-462C366B15BCBC0D244C2DA7D033E0BE800D3DEB29B295B6326AF0E5F151D50D6E1AFADA
-88A3E0B990C1660004FE5B25F2BD607AC5A141ADCF984FD2EE49871B9BF5D5A1B3D96780
-B4E0AEEF7B4400AFBBDA0350A1586294FCFB5EC075978ECC7F6222AFBC50C6A0CA10DBD7
-8615D8128DE67FE07F2E3869900367476DA42C78AE359894BF443298166E7C935B310FF5
-E1BB2FA0677A947A7ECF0A89C3FBBD60D4D8104F220360D505EFA6AB9CE111C3137F6E51
-0616EA60ED8D1ADBB1B058BA22A6A76CCF8F0FBC04AAB81C6439F44D5659E937118995D9
-C299BC02E354FD4E62E10AE9D2D80CCC72780909F49E6732A61B131E7AAB8EC3D7EFC725
-A153D69D3204AD5F6A3AD6728C2B9E26D337E846A797A13CDB160D740D11FC38CCA2DB5D
-E33074C7E5601C8573641E40BCEDD6B84CA7D15C1B86F42D4EC74C2CDAF65D5E22929717
-C6237AF09A0461AD9237F71C011BF36C00CC630E0C55D1B04D7D989EA011D282B77A4BC3
-C54B5440557303C245FAEC70FD1945A8556B8033269E6EA1C1DAAD39CF5A1BA9F6448684
-EC60E9809ED363B0134FD6F19F208FDB26A4A828EA42322550BD312044EAD339FD8DF100
-0E9F64428FF8C72C51FDAE3E7A69B6D0BFC9B2664D7864163ADF48D2F3EC3629063A39E0
-0B8B4DF52D2B855AC448BCFC2A3BED94D0CFC4A66FC6CB22D158C9B1FF632CE71DF9E1DB
-CDDCB6AD62101DD1A776CA2A111B283E25D1CFD8B5F238E0FCB2008FC1DDA4EF6CC11C85
-96E38D6DC1CC624C11EFFF6DE5AD410B7773BA0C9C8B9E5F3B7C601222D810E921D55DF1
-575F452CEE78BAC9E306B0801234709349F8C7D603AA39CA94E878781D5355B6A534D5CA
-06B774BA53AF73D36F60705629854BB39552ED6A4508A20633D2FDE04ADC59EFB86BCC91
-AABFC0BC1CC136BBD43D8934C54D3062D129F4AA3A37AAB7E870C6272D32D2E56D0F260A
-75F6037AA30AE59A3A5C3417021026BA3DF9E6E55765F5B0933AECF62E28C342CE6C6687
-6FE4231A5AB35F194D7029849D8169BC54B94F34DCA13AFE4F5261102648C1FF98212831
-D76A892CB55AB502AAF52AD08635464A7C65AA6947F6CE69BE3C7984CD36057A31B2D8B1
-935122CC567A10025B6F4E305D40B600D3147961F914DFF15C07E6971A4B58E2D8F02F4D
-54F50947094617BBDC1811AF2FFD72F5376BD65059737BE960D52C9B41F2FFFD1927F3CF
-750FF71292AFE92B978F1A89EDB201F71D014FBC8D2758687039EEBF1ACFAB367C555381
-EA24C44F1E0EE7FAE39EBA4413FA3DE14F947FF5B3909323BD35193B6E2BEAB668B94A12
-40E61DC39EFB28634214B3A46CC0E00BD66D5B2D92B14A708098207C092B45351778E984
-E75DCC4AF44F9774821AE9FD16F44B733C611D708BA56895FD42150EC39E3A86E7253C70
-480114E55C14AB9F448CDE802540B710B1B22C0BF0CF557FE300A2BA25A0D841084A0178
-338EAE9D3DD9B19B062C76015CD0CE257D80DFDDF86C52FD7BDC4648EDF57FE1DD48C1C9
-AE6A3D17FC3CA05716E302BDF2F219B52E16CA97E63ACF67D27EBEC25BED0450B057D378
-9545B823DDCB91E9162D0B8BA526A918BA140A99E32287165394D51499E3CE10F75C9881
-BB3E3E6734B5380623496697FF66123076CAD8648A11D710988ABE094F9A11F4645E399B
-91444EF95F0317E07B38A3D6FDA2241425A175F8495D25FA347425E419A78BFC62D17F92
-888986182D3DD448C236B84F46C7100EC23F321E73BF1839EF3500A0B147DA4B93CAB290
-CDEA0EC5567AD07078D426A98601D292966C172EEBCF61258B805CE42DEDCBF73995B8E1
-6580EE97FF610B938FCBC6D2DCC05D59E5D9F3BB90981F92C4545DEE34794CBD60FDCDFD
-80449225D216246049948AF7B161D509D34F457F210116D1BDB10AFF53AEA6B51A49FB22
-FDF56471F610550D3133616E184B7D06539032DD560C4B5B54859C4232781326ADDF91C0
-98BFDC7B24A57BC4E69E97707CEA01F58D0E5B72919B202EB8852561D37FA219DE667986
-23D6CD0535C2CD0F642238D80452DF1482B1197076EA7CCDFC3C336B0FC883DE2FABB5DD
-C80041A4104E575BFD65B4EED3BF9CDBDD4B83BCFC7295392850F8EB50C4D85DCF6AECB5
-C88F6EA597966AC63872251EDBF270A94512187EE6483D272D50B5E4B7F4556EB9B474E3
-85DC8A6152FEAB40CA34CCA515302C6FF2E66C42E731673962D2FE5320D577A67AF1B02C
-A3697EA85E771565B97A476E388A5DA358B8A1D30DF2EF680288F20E3F5BAF340B44B7EB
-5E531E569896FDD63DA9AE424B0CC244D99A0256488922A394F2E31FAAA47D95D90BCB0E
-83429ED543041F2B8635F3033122F4E114096D497F6D993541A6CD7A6747232B88A3593A
-71DDC13689EBB077B3552C366A4685B48DB7E9A0102F02A1C1A31662568DD1D4D3D95D9D
-B2C491A04534833CA789145A6570F4B6E8FEEB77A9E9240FA9820695380C4A231D61A58E
-F20C07FB1CE230170387CFA28C408D3251ACE1216FF77CA0D54A35591822489C0CF393B2
-4C26623EBC3A3A9C8DBCC5779A2EB09A8EE6F1EF3D97C107F9BF10252698367A16D05E84
-E0B41817D06814D26FF79AA87661C7C2D5487DE11BE2E4DDD7C926834DF8532652AC8DC4
-43FDD086A256005BFCD9C4D9F05D0EE9650FCA24327400BB5FD44F183227F62720787691
-75AF9CF033C19D7B4D2D52FEF89DC3BA145A1CF750AC8AA71EB65FA16FCB377F0492736F
-33A408D699FA3A9472D422751E333B368FAB32C05E959591C3977F0A9B94E0EAC792E1DB
-BC609E1315D59901672AE9A5ED9381FFB2864EDBF657D8EC8FE580409B0C8AF08892C00D
-DA1D2D32CB52611060BFBDADCC73B272936A150A03EC52B4AB5A196C28394154DDBB879F
-627E656510322DAF03F018E917A40C6C70371658095B7A9CA96575E976DE9D2E3719BE63
-33CE53FA1B970455CC734181CBDF92969555C42909B590908F43C81FBE180F043FF8EE57
-965D3B28C0FEBEEB075B2DE3444B117F6836E12234670651230446DFD71133C169B9D743
-1B26A1E5B251B4E7A170133FF9B403D3F345213A67C80EA3F48E12A2B564B97E5E570651
-070EA250C155D9F7F50D95BF852F1A337B152A2167BBA4F2E1FD348DEA9AC2B2DB341B06
-07422BAE29EFE1F7E1CC7EF9EB9C1CE879C0BC2B4D3E3BB126879C4BCC0F9219D89064CB
-BB943487ADAD2E7A5E6A72FAC3C2002226C24462D7CAE7ABD0687F785028CC6E3C4F1026
-A994669C2320444BC35BC6CF8239FD0A4B4C663EEADF9FE60ED2E4ADD276680C5C84488E
-2956D72DDD2A49BBC3367EB742CC9D69AE615CE4693636373743DE1FC06429C5D5F19E42
-A6285DF5394041362F5F43F219977A7B4101E8A3EF45502DD8E702D677423271333664ED
-727310F0A2F12CB90332228BDA42FF040CA6359948EBBFEA768FE2E85F344E38A48A21DB
-04C8C47CFC95B14DB8ADEA6A4994A366E8D46A4A1453880390130A157DA8B5D14B250893
-C3DDE306C62E466968F1EBFF0AB0224AC7F87B8746B816EC02F7FB710176EC2104662591
-4D2E5083ED6DDD42EB82AE75EFCA4B4017E00B80CF11CF347CF1D9A1F43C5A7E16A47CE1
-CF113A4ED121F109F763DE14B756E396C59E9412CB166FDED494706C7B9BB806387921A4
-C4A1FA6556D82F252E69C479D4314252A146F14A310B0D3861FAA13FBAEDABDE8B238342
-897C50E88A951A7C63670040DC49BEEC93CE42819BC79A5C974E968E523CDFF701B6A0C2
-C1E00D0A2C889BC270C0A94A58B8F44AE45AE3ACF02357A1A78AFE2E09755E0E48BE6221
-A06C91800234AE2E2687049E0372C8B0B2573BA6F044FB9827C1D6DD90234D91CC1BF4CC
-FBF14E163DA400E2BE334A4D806B3A934CB6ED7674DE6267B3BA9BF4820C4D41FF661E7D
-10E0EB3F7358BAD6C01B7E1EB1DEF5996678548E589A2FB993126E55BCD6BC1BB1F0D4C8
-1B1088A7688BF682E63D54F55CAF1C2EFA84B79974439C4F90B8D05DC7C300D450BFCA2C
-240CE0D01156FF5EEA35C9542374BEEFFBFFB332E14526213ECF605DA61DDDE45AEED1B5
-C29217566ABCD452A266C8668369B6C4871FED4D830735A947A15BF41F0210235476E83B
-EE843F80375DC95FD0D3D0480202033BCD2D83DEA1B0DBECB3D55EA6AFB96F5B6FC48B6A
-7C1308346583BADC3B7AA668DD819F81E82747226FB67162B8F921790663FD7C0F7DBE63
-BFA878DA1434AE325EC02D786FECEC94696863A3235D048E80BD57857B7F0E6B84C2067D
-F04AD7AF6AF06195B4FCD01D3257480979D79740D4A5EF82D2D5F6359890B1BDA818B8B7
-43620F6844689B7005B608ACC102444067FC7752EE4FCCCF24321872ED9437AF8D263AB4
-123213968A9801D2F9E902D540FBB430BFDE25C15A8185B42BBE510DF4E9F456286F28AD
-DBEA5596EBDD910C7E375DD40500995C867C2E5BF9AAF54E57E730C3C1F199E78ADEA406
-8AF853A645C0DEDEC05C825DF25511FD40B0B6761547BB986AF1E878F905723580D7490D
-026D2D7A49A2E553010593189A0980DFDB18122405110422806CE79E7088487F7FC5C80D
-33217362356D42CCFFC9F51FC103A68A60E4CBFEEF0852C998FDF4A3CEED447A2D77A9D1
-16F88B6ED092FA4D25C59E731A03ECE98247E96B055EB4176B8BA5F795E6EE92F8DB0446
-540207D9FD913E00D20683128E3B99F3EFA0ABBB945606B30E0CAB0EB6B91D30EC381184
-E5046DD2DAD0A4B5D3C6ECCCFF402C1BF5B42E7AC1EB818BC76B92BDE97DB485A9E4660C
-DC3F409129B5BD00E573E2B4DFE2E0113E288974DBF9AC6BEFE9CA8DD0F73C8443C906CC
-4D21BC9ADFF2E9ACEFEF101A1087EC168EB9EDD54D55CF072F4DAADA363C28D9E2FE52EB
-2A58F4BE72A494F370575246965A4C4670A7F4B47F118FE5BC17ADF7DDAA469EFD6A13D9
-8A148B02700D4D374EFA01E2C6502E6BE36F2FC25CFF1D6A4695110595BD358705674162
-54D33C3DDCBC891265EC7F0FC06BD7BDF70D7000328062F889C4BE68F4FAF0D2C2F5D8B5
-C61C40A3134433C222071270F466D9EEFAC22119C67A9EB2F626DF8CF62F028ED74CF733
-1181D642532801BFB127A1946362F2F8BC33B8651A565ABA0226943CA88FAA9F0D8CAD31
-7B7D2B0B0A5D10907355FEBAA4BFC717BBC99A604178B897CC8CD98A14531E9742FDF11F
-8D17D2ED67DE68CF3E2DBC0FF6A23C876F3101DF942314DF0D06160643C4096C65B90E15
-4E2D0CC44AE46932068856CE3EBD03D8A74EE5BBFF74CCC54F0E1D3EB0756C29923686DA
-2410B414A5CD43855C82BDAB7AE111E284FA77BACBCD412A438F59FA4006C11F4B45C502
-24F939A12289F846A43E1A5EF39DED94922AF63537D12EAE8E4641D5434BFD058FBF163E
-586556CB1E13D15A5487091D9BD004C556CD533A25E40F97AEFB4AFA5A2079C87701E65C
-96405AF89D0D7BB41FEC6C4AE2834F99B1426B47EEA08FF81B13AD5738DCF2013E45FF93
-38652EA8A36B8690ACF0997A1CC2501219AFBFCEEB79ADF018B5A55C8734924D5F6EA575
-F0DE17E3BB3AB11F8930DA1A8F3CACD9A0452145BA4F00BCBF072826F1B6F1B9FFEA2736
-7319B85F39FFA7EBA15305A338452211E2D011E566B2B5A822E478BE2852853A1A8D1270
-C9E5E6B80959DC2C1FA70F62765CB50154AE0FAABAF9BC997BFC4C54F63D4D2B948FAA26
-0ABAC11CF0677CA044B1783FB87D31B1960CB0B21024AD08580B0CD6BC4BE22BF8A144D9
-88063037F1D2F17552A15D47D21CFE1B88298BC7F715555783299A9FDD4D131F1645D195
-E6AC8EC0BBD1827548A0F971080AF1DC214CC3720969B735EB0858DEB89821FCBD047BEA
-1F1F8B5F27C98785342D56C145D03A0469D92E932ADBF560D35D555893B0D2F795918DDB
-D65386906E232A3545C916A9AA57403E5244686BD99006CBDA3E93BF9A22A2F172B58147
-4480A90190018CE07634573D67C93211A9577AAC8799CFE6FED8F9274D45ADA841A66CE1
-EB00BB0330615CF756DDF0D6B9DA2B59480E63F0A40DC2E635EBAE9C5ED7283188B89551
-96C155259DB91835ED78A3D3BF07EAF6CB3B3CF6F4C0633C764D8B76592FDE07B62D7DF6
-F5D16F26EAC7DD91E4296442225A5A02A2990B222BB8A1239B38F83A807F828683935682
-51A567B9F68558885FD32E58C4B22D467DC494F20A3428F68A18F0037E8CF4837FDD62D6
-EA3CB73E8ECDA81132256DD09F7CDE0CDCDBA85DF239F2671E0295031A3184F7A31F5F05
-A29A40534BB0E02C99089977172A469A12D331448D690EFA0E05099A960ECC3D9DCC4BE3
-1447F5D77CF9F59078307213D6666E6D9567AD8A341A10C93A6EE3C726FA3A730835E134
-C83E47BBFFB68A5B8ACA88414800FA1971F0B7162DF5EA90BCBDEC7B2C2916F4EB39FED7
-98DCE6D49E8D36A188A18596C02FA8F8B5B1C9C67BB8BB1369EC2FE51BD0E554F52517BD
-5736CB8B581C4B083F891903EEC740B3F52F404BE51F26FBB90739620719C528DC56AA6F
-185DE3A0145225AAF56C7B8B510F0B6C5BCE56F69DFC3AB39C5A9A6110C54B0C014BFED6
-06808B965E8B4CE61BC3CBE66BCB6AB0C53457E2EF94EAA1B05A3B9C459542579FC7FD69
-043E9A4A79E6688CF835BD981FF5935E7111EC2B4FFDFE1E05825BC54C55A06D737E1BF0
-5F332D6B958078B4F3BB7FB1952960F35C28AC9DE3B8A5443650A22DBD69F43F1008543F
-AD0ADAFE7A2D4CC1158F6DFE38D5ED78CEA0E8B742D86AF575C3DD05E07339D95A52E7D0
-8F28B53F42E0EF55E488782D6DAC953C2B46C759D7AB0FD9D521B996B4F492C762250AEA
-0371EDF1A6C892CC2AAE5E8CF85C9532294A7598152455F1229296BA051DD83CDC08920A
-E0CDCD29814EFBFCD435FB171DC21C75B6765E2FEE6EBC57941C984E05C107F0B696839C
-E94FF8D337BF520AB53FCA1CA456E5404EC1F05F71725E8545FE4DF3E612FC6C14403108
-2EDD3E5150943EF21E845230ED91BB60C95CA91F1389F299667673221A8680DE65D12BDB
-1AFB6C7BE73520179FEAB41FF62A57B14FDE16CDE460F4FEFA016A555445C78CE88DD0EE
-A01D49F22F4516E316BB4EB03E5C012291EA5A5314ADD2D16645075E84E50A11F7ADE384
-592EA0A2AFD06BF19D2AC55F9C7EF98FFE32747DBB496FE6A61F01BBF83E0AB9CAACBBA3
-3598EC42C422EE412EF1B1F1704E7E59F28C354F9F6F5B64E780EEE47370607120870DE6
-2623F01C4F8A46059E4DCDF4CCF5775F157DD756D45AE5AA6BD5EB415B04559796AB1270
-3CBAC585D4DE40AA03CF8DA7BA33D863EFAA0F7B990316A7351D9A533E2AB6576024DE45
-176D6823F31DC55A0CC29B5BDCFEC6C75F5D11D67BDFF15D083CA9CB9DF28DF02AE258EC
-5611ED8D721FE60910CA5484A9F5DF3449F85D7F9900C61F4FB43617446E5E74E1849977
-0A0B686EBE371582B0F8B9D811F40D7B01296DD6D3DADFEB2FCE5DA4D93F97B38251626E
-D3C9350AA320EB926688474DBBA786DF88FE9BB502AC65937890DF9BF4E1F20197F3CD40
-9B2F7766078FABDA9C535FE03BE36DF70FF23BA71CB322A9A18A88CE6ED79AB299A0B707
-6E180B8F282CEDE8551094B7D2AD13360CDD68E0F4B8488324C0ACE44BB04EF246B02BED
-49DFA83A9C5219E88FF327CC0599177FCB71819B2EF4758D1D95911FEA16A6C50ED66FC4
-6B478A4DA493651F59A1F637C656AA6F8B11102EE41C33730E4BF7F400E6947A4F1E153E
-2460624E874EB6BA5FDE3C2026964483783E1767F6E8AA12F646F3C47410F0040DD1207C
-56F29EE16D2DD32C0FD73894A44E87E656D3582E3D615C6053E1B7B70E64279D617A958C
-265B6BD1DE5F706ADF911D83972D46F929331C5BDAB2DCC47D10BA4D62D5B246F99A19F1
-E884117F99304249E8A87C6E6FA5083DC0F9E97626DA3E16AE4ED909D1B7E3A911B99E7D
-9808528039AB0641948F10D793A2AEBC4686BD895773F143559DCFDCD6C09D4C1630E454
-0F112093F70B4C76C5D97D28E6FC8DFE2B2322E000404218CE03458E9196B95E63CD625E
-61C03D7A4271A6A4AD5CB055F113D7F10C69E4F282B9D6EC5A60A901ED1EE9BAB97FD40D
-33184163AA17A3F8EE9CADB38F047772FC8D39E3BFC7C9F5D0A3A277F7BB73C27516363C
-BB23E8B0224234F7FC63206B19687CE91EE596D7F8921A5C7FB1CB746511BC9AEF5B6B74
-45CE95D7B58443C4FB4DCAB1F6819B94336058A708F936D38860AED70500373A4CC6A1CE
-10F2BEF120E18CB10EF236457BD1529A5C6C2DBCBFB85F70F7DBDFCF25B9485E92C02108
-88CD2DD84215188B778BF35BF1381779ECC36974BCCBBC37D7999EDB9EC98C92D7C8BB3F
-798BBEBDD852E320E3540C46C0371AF1CCC1F59D9C78A92F710C28A2B9707C8567A9AAE1
-1642EB8BFF1E9CE99B30A784DEAF11210C44EA275F137EBE69C197039E9D35A8E76C799A
-E73B0D65EE4D1FD59E0E8B32030B6B4CE02E698F7090205E7B466C985ADEADB18CBCE64E
-5074D90C4764823413CDA39DC16CE421D60F485FACA831FDC4EF6204894EB5B108734F3B
-48E6AF64C0BF82E71AEC055DBD588D62AB4585555FCCF3982204397FB4BB4602B313EDB0
-B746734B8E6AF4FB59CA0457D45F6CA15966C3ADB050F7B83D75D43B2D54E8CF9604494B
-7C712E0263E7154B31C205F51F1EFAE4FFBFCD5F522FD9E85AD6C6DEC091D7CD445F56F4
-A6D087280B252E7901A34EB4BA00206E4EDFD63FBDA45A17DFB1873BF8B6E82B4FCF7AB3
-CC1099EDE08FAE748854C9E468C9C8B8FFF239E366B4E8FC76048B0638F7FBB9DB80E711
-91F51D4CA50ABB65E361BE32D12605B10C8ACDCF2101D66928C9D95099C296B33651B44A
-BF0EC9C0B7A6B686AC630264897CD3274A1E87AA8FD7182A124ACCE7CAFE4887E06A7B34
-FC7DF7973AEE69B8381047E2D254375C46BEBA1730FCC6FE4D6564DA9EA963D0B7D45475
-FBBB54BB12F389AE979D1F36E4FAE0EC7A1B2B7B86ECA42C85268E0953A461C8EE02C407
-FC387141C52866DB49D8BFCC065FD264E5F57423E3DBDF1270D2BB7DA6A860D22722E052
-3489A3A0B5F0E7E46DCBABBD89D3E4112A031B37576D35B95452B25B5CD04E18EF24FB0B
-98A00B549599F3E924EBFC4FAEFCE504A1877F69375FFE7E9E7D2EE82CB2C80A87630A98
-88F13C26E568F5AF98F6D30A7C3E20695AFA9B2809FD646A8334AAC86B1020FE968085A5
-70ABD597C472F693F3EDCD5E88767D23293C1F64BA94029DA5921C251FBECA22F1BA47DA
-142810A60CC9090E7996F3B09423D4D850C83F47B497E4C17718020B0DB9915933FD016A
-D32B50CD62E6E20BC09646093ED3BA9F9D0AB09F5B6B01F69CC8F706B3CC3828B7794A67
-3F2C3CAD3A2EF13171C65111A9D34F0FBEA00FCD22C509FDD913C7DC144618BD743B3639
-1E4694442AA86AECC639CB1A857DEBB2D5DBBAC329C4E1AE4F095EBD6259D0EDC896A818
-829311503650962679D627D060C51C4A78E80BF764C7DF2121896E0B02E74B9E65CA2CD5
-5A6ABA7884C961B474FD4AB32172A6E070B29FBFBB424417D6D1F89F6A8BFCC880C82C9B
-7C4F23739259076A57B3BEA79878839E3C0DA5FBC47A52B81724DBD303C58B027F1F1D43
-2DFE420EA7C773BC0884909AD03F7793F40878A46813EA207D855FD8D397DAE056F89394
-602DCB1174532DEDAA96C5907FB020BDB735AFEF6896EB193CB16A56A3274398A20A503D
-B1B66729D094A21DD45E12511715FC962E0F3238630954BA513374FBCE28737B80CEF5B9
-802097BA8D3BF8BF5315838C014B08D9BBF849EB92459D04D0B735E487858E333E140CDF
-71A6B463EBEFF3A86A5E1AB29902A14DB4C72DD9FDECB05F2EECDCC4314A600D6724FE39
-7478CFCC6478622A8441B88BBFF9AACE6FE02E7B96B09BAC4B90A65F04AA6126304339D7
-E450C24922FF6F3027FB0F6AE9C19BF3C633708255E1E9F06B8245485273A72DB47FF9F5
-E5AB05B1D8518691885AFB8DD3350D9305C4DB91FB120F666DEAC0AE0C64EB19106F386E
-E8A848CBCC9091EC8FA9004353981D5C214D920A07B439E78EF98628E1C0CF014D54F271
-349676D7BB0E41418A67DB24F36B3D8953A73D18E95DA0645666B485DA0061B2D49480BD
-C081AE8CE6C696BB8A7224E933FAECAEA2C09551F961556F7D1314A869D1E698DC887BFD
-F0E57FE8459FB5B1EABC88F50FB6B3BE5B6DEED96854201D97A6A199F4C5E0929762832B
-E47A897217131F32718E2FE87A2A5CAF8594242C504CF3C86C73B68C09B05DC02F428941
-F441110CEC6283
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-{restore}if
diff --git a/fonts/Monospace-BoldOblique b/fonts/Monospace-BoldOblique
deleted file mode 100644
index 880b52fb..00000000
--- a/fonts/Monospace-BoldOblique
+++ /dev/null
@@ -1,2445 +0,0 @@
-%!PS-AdobeFont-1.0: Monospace-BoldOblique 1.15
-%%DocumentSuppliedResources: font Monospace-BoldOblique
-%%Title: Monospace-BoldOblique
-%Version: 1.15
-%%CreationDate: Thu Oct 27 10:50:21 2005
-%%Creator: mike
-%Copyright: Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved.
-%Copyright: DejaVu changes are in public domain
-
-% Generated by FontForge 20051018 (http://fontforge.sf.net/)
-%%EndComments
-
-FontDirectory/Monospace-BoldOblique known{/Monospace-BoldOblique findfont dup/UniqueID known{dup
-/UniqueID get 4092906 eq exch/FontType get 1 eq and}{pop false}ifelse
-{save true}{false}ifelse}{false}ifelse
-11 dict begin
-/FontType 1 def
-/FontMatrix [0.000488281 0 0 0.000488281 0 0 ]readonly def
-/FontName /Monospace-BoldOblique def
-/FontBBox {-173 -1034 1654 2157 }readonly def
-/UniqueID 4092906 def
-/PaintType 0 def
-/FontInfo 11 dict dup begin
- /version (1.15) readonly def
- /Notice (Copyright \050c\051 2003 by Bitstream, Inc. All Rights Reserved.\012DejaVu changes are in public domain\012) readonly def
-% Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved.
-% DejaVu changes are in public domain
- /FullName (Monospace Bold Oblique) readonly def
- /FamilyName (Monospace) readonly def
- /Weight (Bold) readonly def
- /FSType 0 def
- /ItalicAngle -11 def
- /isFixedPitch true def
- /UnderlinePosition -221 def
- /UnderlineThickness 246 def
- /ascent 1556 def
-end readonly def
-/Encoding 256 array
- 0 1 255 { 1 index exch /.notdef put} for
-dup 32/space put
-dup 33/exclam put
-dup 34/quotedbl put
-dup 35/numbersign put
-dup 36/dollar put
-dup 37/percent put
-dup 38/ampersand put
-dup 39/quotesingle put
-dup 40/parenleft put
-dup 41/parenright put
-dup 42/asterisk put
-dup 43/plus put
-dup 44/comma put
-dup 45/hyphen put
-dup 46/period put
-dup 47/slash put
-dup 48/zero put
-dup 49/one put
-dup 50/two put
-dup 51/three put
-dup 52/four put
-dup 53/five put
-dup 54/six put
-dup 55/seven put
-dup 56/eight put
-dup 57/nine put
-dup 58/colon put
-dup 59/semicolon put
-dup 60/less put
-dup 61/equal put
-dup 62/greater put
-dup 63/question put
-dup 64/at put
-dup 65/A put
-dup 66/B put
-dup 67/C put
-dup 68/D put
-dup 69/E put
-dup 70/F put
-dup 71/G put
-dup 72/H put
-dup 73/I put
-dup 74/J put
-dup 75/K put
-dup 76/L put
-dup 77/M put
-dup 78/N put
-dup 79/O put
-dup 80/P put
-dup 81/Q put
-dup 82/R put
-dup 83/S put
-dup 84/T put
-dup 85/U put
-dup 86/V put
-dup 87/W put
-dup 88/X put
-dup 89/Y put
-dup 90/Z put
-dup 91/bracketleft put
-dup 92/backslash put
-dup 93/bracketright put
-dup 94/asciicircum put
-dup 95/underscore put
-dup 96/grave put
-dup 97/a put
-dup 98/b put
-dup 99/c put
-dup 100/d put
-dup 101/e put
-dup 102/f put
-dup 103/g put
-dup 104/h put
-dup 105/i put
-dup 106/j put
-dup 107/k put
-dup 108/l put
-dup 109/m put
-dup 110/n put
-dup 111/o put
-dup 112/p put
-dup 113/q put
-dup 114/r put
-dup 115/s put
-dup 116/t put
-dup 117/u put
-dup 118/v put
-dup 119/w put
-dup 120/x put
-dup 121/y put
-dup 122/z put
-dup 123/braceleft put
-dup 124/bar put
-dup 125/braceright put
-dup 126/asciitilde put
-dup 160/nonbreakingspace put
-dup 161/exclamdown put
-dup 162/cent put
-dup 163/sterling put
-dup 164/currency put
-dup 165/yen put
-dup 166/brokenbar put
-dup 167/section put
-dup 168/dieresis put
-dup 169/copyright put
-dup 170/ordfeminine put
-dup 171/guillemotleft put
-dup 172/logicalnot put
-dup 173/sfthyphen put
-dup 174/registered put
-dup 175/macron put
-dup 176/degree put
-dup 177/plusminus put
-dup 178/twosuperior put
-dup 179/threesuperior put
-dup 180/acute put
-dup 181/mu put
-dup 182/paragraph put
-dup 183/periodcentered put
-dup 184/cedilla put
-dup 185/onesuperior put
-dup 186/ordmasculine put
-dup 187/guillemotright put
-dup 188/onequarter put
-dup 189/onehalf put
-dup 190/threequarters put
-dup 191/questiondown put
-dup 192/Agrave put
-dup 193/Aacute put
-dup 194/Acircumflex put
-dup 195/Atilde put
-dup 196/Adieresis put
-dup 197/Aring put
-dup 198/AE put
-dup 199/Ccedilla put
-dup 200/Egrave put
-dup 201/Eacute put
-dup 202/Ecircumflex put
-dup 203/Edieresis put
-dup 204/Igrave put
-dup 205/Iacute put
-dup 206/Icircumflex put
-dup 207/Idieresis put
-dup 208/Eth put
-dup 209/Ntilde put
-dup 210/Ograve put
-dup 211/Oacute put
-dup 212/Ocircumflex put
-dup 213/Otilde put
-dup 214/Odieresis put
-dup 215/multiply put
-dup 216/Oslash put
-dup 217/Ugrave put
-dup 218/Uacute put
-dup 219/Ucircumflex put
-dup 220/Udieresis put
-dup 221/Yacute put
-dup 222/Thorn put
-dup 223/germandbls put
-dup 224/agrave put
-dup 225/aacute put
-dup 226/acircumflex put
-dup 227/atilde put
-dup 228/adieresis put
-dup 229/aring put
-dup 230/ae put
-dup 231/ccedilla put
-dup 232/egrave put
-dup 233/eacute put
-dup 234/ecircumflex put
-dup 235/edieresis put
-dup 236/igrave put
-dup 237/iacute put
-dup 238/icircumflex put
-dup 239/idieresis put
-dup 240/eth put
-dup 241/ntilde put
-dup 242/ograve put
-dup 243/oacute put
-dup 244/ocircumflex put
-dup 245/otilde put
-dup 246/odieresis put
-dup 247/divide put
-dup 248/oslash put
-dup 249/ugrave put
-dup 250/uacute put
-dup 251/ucircumflex put
-dup 252/udieresis put
-dup 253/yacute put
-dup 254/thorn put
-dup 255/ydieresis put
-readonly def
-currentdict end
-currentfile eexec
-1CED864D422F76FD8FAEF6132F502482A3D8B4A45438351BEF76DE83DDF4E51528714B6A
-2E0891A07E6A4C4AF06631204074926585455A5677B5DB36647E8D4B74F135293000FE37
-CEAC7E5D7112AD08238B10F0A7E8C6B22250EC0C3AE0CEC1B5D58D6CE79A5C9E8AA78533
-80CBA7928F215BFBAB9974AFFD4EAE72E2F13FA51DBB826B3345FF4EFECC42059C923D3D
-744770EB5214390157686984CE97B7A323A282FB3942AC23170668648757127D1F629DE9
-F47CC4D8B96EB65B46A5F601947908C6623ED3C619000369C9E67729C539451F62FC5580
-9EE2C0DEDB3928CC0FDD6D955E88BDD03D1ACF344F28493FCB53D4FC1B863FA25220FE1A
-1481C7750500555A9BD2D8D14147C9F8D44BF71EF40F09B0A188725D6B400C688671D7B5
-547DF767FF1075536B17074CB44E973ABC27A9494A2D5880537C8D53A2C7262E53EB25FF
-C4C00E380FF2F8B0A0D33A03BD016174D197257B13A27D23E9EFE76CC0F6D8975A0015DA
-DA093AA1B08F2BD290040DBD6674FF79F4718DA59796045B4D8091C39F6B407D5F2715C4
-E5CCF1F7A8909DC995C81CB305B02836E96488ABED0835D20FBD3507AEA8C9B51EB85BC7
-148CB611417A4A894FEB958C0CFC59F6359567D6A13A0D01A7AC80E9918450DE949D19BE
-31C7FFE9CCB6A9980AC3CFE03409367CCF926A75F8CAF8C2BCE07AE51FA505E0EAEDB20C
-4B530DFF7DABB79822CCAB90A5366E32840749B94EF996104D44B3E13E3EDA856C4CFD10
-3CE65A33CE8A22AFF27E081A93AEC929F7766C0F1F8C8A5414D3BB4C46F8E791D02C1710
-95FFE94019D62F166E3EDBD88B350E8211CFC504E546F14016DA01DFF478C25015A6530B
-8D38CA3F7AF4DB3B8959EACC030207E8239C17E351E737F58960875256AE6BF5094C042B
-F753341EDA79F533F602F673B803394FA140B5F9E0768413A9EA96961CA0002036751C33
-FEFB66DC4FF30585349AF7C9924B9C94E20DD44381028847816BE17FA4D554B30A78AF24
-11318819B1553C659F9866EAE2C775A9E06BB5E90AF8B32B1A7BB290EFFA41F5B5033C85
-401D3B85F125D61EE0B245E0FF52B1F46CA409A86A88A8E40CF38BB9940168BF936734B1
-F45EF8AFE5BDA9F613972D9F61EF5FE3F8D4D19690C2AFC60C3FC4681906BD2570945EC1
-8B6161A8A960546C23964E2B005EB85B4146C5EA93313E99557B8820C6690E945AE88661
-AAB10C0D47BD67CC00C03BA82A04407CD9B692351FBA25E75E4486A21D9A0542762D5A64
-F8B1B879A11EBFBCE426F221372C7DA133D7CC2B2C0F9E6F269B3DDD14A4167F184F76BB
-F0A6AE68F88340051B93CCAC09BBCE3A674F684ADC4F2F5D121A3CDA013FD031637EADC3
-36D6EFF295A86B54867FCFE1F05BF5A73C737040BD3B1A0E924193B83B6BB378B2453D9A
-A3D53B864E1EFA1822D4D2EAE2B310A42389ABF90F4D439E0DC7CF34E8B90439EE25C677
-00F9DD5CBFC6DD5681E3C79F26089F6D569E0F07CDBA2881D812766439FFC0894C0E191E
-054AFA67FC1B1AAC7ACDC5B6D710F1D0D7D6EA32937FBD67CA71A1D5C5EF59A3C0D833C4
-5F78B126A88A81E73971B7E12AF16C4B23086F282FB309755696851DB9685FA9564AD878
-BB22CCFFF759CA65A594FFC2FAD61F774BB8450A09B08631B1E808E267E855F003A5B951
-D8B4BB325401E199F57345709782E2959757EAB5BE7AD6B5BFF17014E3A1A8382819CE75
-EAC4C68377FC032EC0D74603F25A2B1386F7FEEE876467D0DDEE2B2B9D03E25F32137D1B
-4A8F90BBA322636C8571B6E215111579F95C346171C8BFE6777B081660877518D1B44917
-ECAEE307B68D51DF094AAD59DDA212747661AB31A9F31392C4EEDE462668675988A83172
-AD88BAFEEBBE500AFB2A4D9CDC985494CDB271AA0741C0709A2A4991B5EEC213F3BCF107
-E6EC214DEE85916ADD3440AA2A7D24F0645E254639EFD1AA093BAE93015A7FCCADE66817
-F4AFF9E5A10DC390AC33D707D8A8401F93D0318626FB23F8E6226B5C5230FAA6323C32AD
-9F73A91ACC682BEF7AB3A99347316812A926E30DA8AD7CA702E52C73CC37D8A2F8D3D679
-D2F4F17419B85D061833B63DDCA501DB6E5FE81B5F8E601C59057D912CF9163D1DDB4237
-6D4CFAEDCF4E4F66600F71D7C31061A9846A0F153536DAD78AFC80AC89DFBB1CECE4D89A
-DCC95F5E7E03A41A6BBDEAFB3372ACF32ED1D5DA6CF8A768812D69620806585686FF6658
-81AD1D1AB17E7282E6150A3EB40B400ECD78E202FA63A5508EC4D6FD78EC3998991D3829
-B4CAF3B7714AADF0AA04D5239F5BB40A7678938E493E6E58BA9AADAC797A8A7AFAF594E5
-82CE777C987C6E9B4EE421FD1E44B7C3DB349621789B8142C2773C049CD999E3BD26B634
-BC86CDCC6F930EAC04C71A25E8A2D1DE3539C8981723ABBFAF835B9615FA36A3D89E1502
-F46C09FE21AD93811C447461729A4283E1C865419A5437973C07F830FB3645906DE1EF79
-5A4D0DA6079B77C3D0CC1D1581EB24BD9644CBE0FF57D58295D3C1529F95B61F21B4480C
-9B1FDD14B20A776EE20F18FDB5A595778724CD68D237057519E58622DB09E9F86D8FDC28
-1F5FC5BDA84BBB46836244A7510737F6FC411F39FC9A6EB3FCB5D9541C7B3410F60AA52E
-FF65CD9C4D20B21CC0E16A7DF3800DABF3475105AFAF14D2CBFE8C4A0CB98910441699B4
-B7419F0F91E4E7E68F6AE3640B4E82A52856FEC5D51863D14CC9A7E54DFC3F18EA6FE05B
-DDA764A8FFB62408BA412567BCD78692A562E309C2DBCD900AC231610AB97A7701B98440
-5EAB031BD3922A9B29AA0A38BA410AC99CCA246E324FA59BF265924EB41343043C2D8CCB
-FFE1F6EE81437B8C256179A5A69D7C0BAE4F13C59D7356B0FC9878D14CC9F1882E68EFB5
-0B324F590A76A19F01520AFE617A6ED645A9BBB0D4AEF69A01099C2F7F93382700E3C7C1
-2862E5289B66EAAB1DBE13802C29D11452A82968592995686EB09AC67B64CAC41E9177B1
-1A21741097ED55CB5F383DCE927C5EE5FCC13B261589586DCB03ACF7E74C67606A71E235
-A335469B97FDB6DA8613437685ECE63BED792266DB50ECAFBF082DEFE04803CCCAC08B1F
-47D3EEE82D635A9F97975EFD80A316371ADF86031250077B1CC0F403845FAA306ECCAC14
-A194E85663252D9FAEA449B2A2AC2C76EF828F9EEA8556CA4057EE0BEF356C1DCC76308F
-05CD254A737EAFDF2912E74C38C3617EDAE3969A03B01AB3254C909B93979E6226E20D48
-69B44FE0F9D8002A02ED206544DD099567DDA0489BD957DC14818C7CC1264D405BCC9E9D
-A31BA99C5A695E106794694B7FF847497FC8A7E961C57CE3959D71253007B8C2A6733FCC
-B6E43863F782DC8D37C60A226D46AFB6176C9507C7837C1DD2E23559FA1377794CC32079
-90FD6E0EAB77096F8C4896081B5203495207EE8CFCE63AF48840778C1DE08A449953DF83
-D5EC0B82593EF1D059D2C5B9350F21AE58BAB03F57A4CCDD4D4CD8CAF475E0315CA8612A
-C3E66CC597DFD5F4F53BC6788B84C1E2E8A8AD02FEE9D9D5F7471508D7E3F447F55EB1D9
-D54EE8207131F8FB5B2A394C0C08F35E8F93AC9E0D0F93A77C28F9FDE8990CAB8E3908FF
-EB8DC0EFCC98F88315E0DA33B6C6B4B50B17661DE788C1A874BCD2407C3047DC79DD6650
-B6908207965CB5BF7E7B83A7030D30D3799F406C9875E3CFA9A42401CA2C7115B1446472
-4D38382EAD16C042B8F2B352F6A9FC7FBC2E488BE6A2D97FBC1E643FE4CDA2097253798A
-D26DDBD706E4CBC5661BD87E5E488960F643A960E9DE3891163276B377FF96D9D2E93B81
-17DEC91E5D3BA80B14A699C56E8F48DA2EE0A8DFC2C981B106C70E0766CC379D97653EE5
-465EED2B6FEE0C1CD2F4776D30E08EEAFCC427D6420F516F9F0CB3C060659C4CADAAAD94
-40B3FF65406F49F4174C2B0C606A3B03A8BE0F7767139539BDC38B93965ED44BE4E2A53A
-149EE0D512D37958A9BC369452B6A121DFA0BAAEC6E9F6E00533AD6EF857E662C7FF4AF4
-5B7732E3C5A037E3A752682EBA6976330FF3FC1CC6271EB7B2024D2B00386A8A5737F052
-F98A223E309E457645E4D1C91B59E827C451D0CF32DC3B3D725BF5E325F9D2CC1994C319
-2B4C1D05BDCB87122F41D6F72A762FA45509074D76A32974ED953C5257F9EA335152E96C
-1EAD2DFC8B7A85B5DDA1975EA400EF5DEA8F43C82EF663D3E5E122D4EB1C67E7E16CEA46
-F12D63DFECB85A84C7B77637FD330F89503DB4B342124ADE972AA14D81F492A5695225D4
-39A6EDB80209D1A49A7B393D00C1B5429DEE9D81EE2E7570A5E244E6457612C61E3869BD
-772FB5CCCE59811D7CF516105765ACE6B68061B1B411FE664C84A767F66238231C96159A
-21C3CBFEDF73F3B56A25264CD5FCFE91C36977A683B369716D6525FDC97E5D2828F26961
-292D8D5F7279E6C0C87F89827B1ED97187E3EB9E3ED021F23DF98790F5095C6063E144B5
-34FB190D15B1DED675CF8CF5C8FDA3434844ED1BB8E1D93F43D5829E6603AB001D423EA8
-279972CCF3AFB4BF776483A41C607AF581B1031E6DA4D716B7876D7785FA7DA4C74DE445
-33EE4B832B5B27154617AE7C5E32F4CDBEFA77290FE45D80011C0E7BF5BDE91A63708F0A
-FAC6D6AFF5FE1EEB23C187EF486BE3E8EB042616A4763634BE5B4CF31417D6B7A807A3F3
-C3A6F6C285A7C7BD46AB63CA1F9BBE01A4E8E98E4CB44D2F26CCB99A85402F0A474E531D
-9675475FA6F06A7347FD8FA30BFA67ADACCECA881CF703E2E15D8585A9EFE607E311922B
-D9F0F8B7715021C9A90986D4C0E681F024CD13CD38A34DC8415FB96E6DEBA849D1CFD157
-181439E3C004ACF2D5E7C40F2366A89977662CC8D0C0CE03E77F77696871B7BCF85DEF44
-9F1DFD9A9B4F68B870A1ACEAB20CD407A27C5B75533A08CDDF6D0C97650EC5FD4AC0208E
-07C59FA798DFD38FB86AF3E71503F76634DFB15F6323927C87AFDFA9178D71391DC51E76
-75BC787B749BB53926B0BA5FDCFFB241AE27B036C586CCCCFA0896D78A63578A986E329B
-DA9F0E5EB0C5C1DEF06FD3667910600941AA707EF6EA9ACCF721C8DCF7760BFA32E3D5CB
-86E79CF66DE28D80CFF83950238BA7EAF551FC3A8E4EE0302C840E7FA11D2F1BBBEA8EEE
-94C313EB4B47975CFDB214B3134711BCD1F2E3ABDF11E591E9EABFF57C226CA83B3DBAE9
-DD3FC6F2C3C4777E9B5479A7E904D0E1F7D36CDFF6B32323E4218F8CFD5EF467865B2636
-81FFD990E58EA69595D4D86F2122C52BBFB43650FA8145B1B6AF095541123E31E99B3981
-A701C47091FA0C752499D2754E3D6A2E3322730CFA4EABB60807FC81AB82D6A4C81949EE
-75B45A30EFAD61F1984993AB44AE604BB045120D01CCC85B0EB54302E05AF8B5FAAEF675
-62057457ED730857620073F014DB40BDA7E41941A3FCB28A9EB2DA319C3193A90030F0CC
-0DE63B94B68E7548B709AE50267036A770646EF39C64B31DB865D12A60E502DB4EB11C5F
-F784708E3F670FEBB1888296C3753D690EB6D9ED17216471CD3C4D5FB8F3F6DA866E326C
-58E8E892A3E6BF60ACD586D6CC8A0C984EB030E4C5E1883B78C4A04ABACD295FA292830F
-2884504E35363BF69D7B2F16E43F5B94CF2CA934185C684B1F87108B58C0FA15F75F48AA
-A03892283FD1FAB239D5A09BFA310E59F2244FEF8481E1494A263EC2E3D4CC5ABAE4E37B
-D73F74559FF9B32EC960E5689C3E86033F1D20210FC448143FEF0C77809CF789F6B8A55C
-F383BE3D85B82DEDFE4DC4480C508325A5D28216C097BEF9893103004E551D0516E05B33
-1408028C881732A82151E3572C279972EE0DA66503B2A7A7E450F1A4866B9FD0215B7BA4
-84C0E5B95276E6FCC43896D4222EC7ED7CA5A4D873D0E80523DA60CFED59C07C7704072B
-8D988611AB4CE42D6F85CF336CD7FBDB4FD1B13BEF8D97BE6355EFBFC2F53E7D59E257B0
-F71B620746A03C7D7C5B2CCE57177F16490074171B8DC509297CD5E43B498F86C2BCB119
-8C408DC0DDC294DD2253FFC5B03DA71DBF93E8BF8E2AB316D852369AF766C92CB2C82CFF
-4F9247BF252C7712AE3978F76F78AD8C9002426B3736257E92CED2337961A693797AD3A7
-3138CA2489CC0E2AF826E4DDEBBB1C1C2F07C6B98C721A0519A2CA6DBF7AA6CC5C1184AA
-E5A05AD35274696A805327F95544D71747E356D5C1B83431FD8CE05F0378CA6BAA36E7F6
-8CCDA7246655D8866D21E21E63B23440457B8863118B7080AA83318B32D45756D17AAF29
-20A7DCA29679F76FEF9C33D543E54460506CF9254E16656E033D7558A09FE3BDAB6A283F
-0A881A67E3FF025A92F37748527EC24A7337AAA5B6254A5F95FEE2380125D05A25A9BA64
-4E60FBC4C25C2AAC69CDAC16ED0D79188DEFF61692D56DD91481D11F6B6AF7C86CE24BA3
-761E2380974ED69FEBECB22EED4C4E244C635C52E0B162A79C948592CC6BFDDBCA26C8AD
-D9A35E6EDC3D659EAFDE4C4F430133C337461E97D2460BB6C8C2550A500433C5F96EC312
-3044426764FD9EA134359F414F59105A3705DB72BB3199B0CF9240979119D7E0FC27BC13
-849501B45F654ED63F93B6D74590BDA5A019A93A397A59E9B8A41E5F61219F5884390F12
-321281D125799406F9E234F1133BEECAF2EA304AB4C313C902214FB7D7993723772C39CB
-0127B4E82830DE0B9A7D60FB452F70F90ED4CD2D2628A132816ADED99B9F355D20313F71
-1B0586F2A20C90705BBE628F2C9720534FE780FF3EC15DE762EDFC86ECE91A1A9E530C54
-56A887921523806EFAB6E9E397838087921945D0EFDAD8EAD7D27E3C24B4BCEF2C8B92C9
-06A725065BB42F0DE1653DF32C802EE2EC33EBE5FFB0470AE8AEAEF3119ECA6FA4728AF2
-CEED07C5F5024A27EB62475A8254E8DD444685EBC545BCEFF63FBC285208350AF5065CDB
-466FBAB8540D8679430793A202CDB44EEA4082A36797F4308F037F64739247389189E303
-F31A1AF0C1780FD9AADC74528533AC6EEACE64E043E09EC5BE365D706FBCB09338597286
-30962CBE409AEBA4142B80C11603B4276DF35E15E62CD9478711D2CC8454561B687C2463
-9F68BBE2659168C72BF87743E758D33649ABDF6A7A4F42F625B2F83A4F141CFFF14A661C
-9DA1E1D045F6891F82EF2E548E11497164235049BD3E3CE707E99874DFCF2E912DC431F3
-7F9894E3C7BA894BF1677FA0F392BA9FB652BC93D898501C5E6B4E20FA8AC7CE6FDC9AC1
-D86723440BF06D420E78F5B32BEE9BE5DCAE455DF6EF63128622CD90C39B46CB9EE4F45D
-72A5EB1512EDCB4DB7220E561160941421D6860979A039B9E5D5706126A3D65BB8F46740
-2332E34E1709298538D20F5BFD178A2AF0391E93672D1BDACAA87CAD9C13873C98B3BFE1
-D28D783690420FC7A88F50241EDF64BCAC2B64E2B0BEF2B5C646318674EAEB1A15D431D2
-1678A73D2165F9A356E648D47FB6B7B5A889391E194BF80550962C1E996DDE28AEBB2529
-6508102B534332948DE46D92DEA56C8D19A08FAD37A646BE88C0B6178F72FFA422F33D81
-D5C4F69504B96A0CC6FF3F4525E0F78BF4F1B27D7970FF1B2F9703952C823C0E99BBA0E6
-63E413EDA3C4ED453176723D3B91683DA70365774570A5E36C40CEFAF29BB91948820395
-B60D780E7EFF9BF0C7496905628CD5084A34D852EC665C81497DDAE2D38594C8556937E3
-FC505A281C3B582A9288EBC36E39B8A1148AE6B29B265016DBBEE8DDA7B0E9C7EFF37B87
-2E95507CCD7FEF306906F05B7FF2387A2AD253178616AFC3BE56667A9B1875C81D960245
-54B5B785D210EB8285BCA0D3462CB40CC8A7310567AB5C1ACFCF279EDC74DFC8863A0441
-897C6FC2C12B875832FC9CEAEF57543C65AE75987834B1C2ED9FCB266A9B8703C2F53E69
-3375F4BAC0C609D464FC164426B01930746D0C66516E02FA50A95B742A7117DD03D67414
-D40A0E37D0C9340181B3D689A09898DA6B4EBF8B9D022DEF18DCBB58D2AAE351488A28DF
-8C01110345C31A7CCF136CAC367B7609DDF27B64326B1A93D69677314EB62E1603C7E522
-420000203B5A9014148875FFB716CDA3B0EE8558AB8A864DF11BD863A640FFE835E0D469
-F1587F32E5F329C2BAD5B2604B58204B7667397F349D4A5EC7D40F53AC32B5D493F8128C
-295165B31A382D32383E1B45C12992EA246D677319AF5C09E2F540411404949A9825F62B
-5A306FDE4A93720B5067B3433353F3473E078A92F433D8A3E7CDB486131A4EFBA06065A2
-97C4706E1C0049557496AAB1BEA12A9B7BC411608EF41ED6F3EF7288494B9B5B9728066A
-F99B7AFDCF6C245C06FAB5FC1175D9816EB90FF3116A4040CD614F18ED3339C5828BC121
-550D55A8595E4E679F37A744926179453C7E27190D64F3284656CE7C0D334A7420275903
-F9C0889248ACDA0D646C1885FE98F4E2E9DA8353852DCDDC9A36DD4359723FBDD1FC3334
-E4F49C07F30DED223A031BB54AC966DA65C9979D32FA1F3E9B2F46EE773891A4CD8A9BD4
-EF1AF2763F1BB5A3F9067317D9B5BAB7C622F974A3DA0934EBA78E353E220C29FECF3541
-528AC86A4EE2F73AC9D38FEE530D517C00CF43377D607942F881613C9BE20B59D48AE852
-31E81B23EC531003D7505E6584FF64CE940DBF2DB3742B142A20B1C8B6AA07D9538D4E16
-B70AD1D7C07EE5BA566876C92F548A643A158096AE000A8C6E1948D46AF2FE91AA3587D9
-F39E0315C506F739461E8B73ADFD18B15285A15A6161491B7CD85F80C1C7240E35BA7FFA
-40876F878B468DF1B50EC980FBC4C8C62BB16DC81A38A21ED69CD2AEA4A56B093BA9FC57
-1EEF14D429176852D4CB3762BA789C741EFC39C26606E93BD525C2850E99822BE0DA5CA8
-CB749B6A650ABE24C3667428E8DB1C790ACF96E0D4B48441B019D29D85AAD46F3FC6BB14
-8DC9DFFA73A5C6B041C48A60616850C31D1F648757E4ADD8AC4B6EACAA801A88D3043842
-6352AC493AD6D01C83BAA2B645217F62E167B30964B8493EBE3D5370EDECA3F75193416A
-C763EC9318BB4A8651D858AFD090692FE0F3114698F8F7E729C5F0C20BE9EEF9E12AFA46
-8B77608629D6E5D5269898206BD5BB4D6BB72D97A959E793984D26012E4C5BF4B3D70C7F
-43AB875FBC17E8CD19E0E56EE012782E73DC04B62B806142265938B4FB9B366B109921E5
-353E29F046F530734E2E312E953708B41884E50A0B4A7D2BA9A8132BE0FCF7FF5E37F0AE
-7FB48513B73D346FCD60996A2ABC8659A8E93CF9A0E1135BBC4A438E71813F2C217744EA
-4D42E3DB03AE3038CD53F8FEDDCDEDBAE5C69D7EBF6DD4A41A1510A12358D5DA5F98AC07
-DFB9C648B5A72AC100480E34D38B897E9390E223C1E057FC09AA828D2524CFEB0B36E2F4
-794FF8D66E9734AF0559123BB70725C1B466E5230C8BEDB01B073C10F4011D7C0F6F2814
-60A76371335A96AD7469C7C7012A3AF9E1BF900B64384B1FB1804CEA27DC37DCBB64B8EF
-98BC8179AF176295DAE271D686E87D3B9DC68C138FB4F7E2FDD5962B35DC6FD46DD24242
-CC30107200FE6F7730D33F274B6E532FE791EBA9AA79E4049D3E406C74CE152AE8FD1BAA
-96920AB1EB2CCEF4D3E3F58DD499C8458CAEC9FE7F1E91DFB25BEFB7EC37E53EA6A524F0
-6D22F8403643F13063D750BFE2CC05C32380A92172F9071F5B526764B3B98EA9246387A6
-09DB489CCAC4B35B07FCF17955B42ACEE5656DD90B6746EB8D11A8C43AAD98AE1EFF5751
-F313B455A66D646D83D4055FEF177C96DDB064BB5E6F880935CF01D146A8C792757F0CCC
-25F3FF24869BA74D81DD1572901F099C6FEEC45992B8DBB77043A0527F628ABEE2DAEE4B
-EAE37E89071761307BFE39AFF657DAC83DBAD2C5F602917213DB0C5D4A9604F37DF37C3C
-49FF2FF5CB143505FCCB025002F292789FA6690B573DF46E2DD0DCCAF4F5E4369075E359
-5B999C19872053E9930701583E88627BCA93A11BF22CC6F45F440CE2FD768CD93B64ECD5
-4916B0764C459A2689A72E147AE9E66995BF88E4EB0DE2B9067D0FBAAA1658620F4B8F3C
-5B469F5543F02D4DCFFBA5071BBA25C7D025C1635C5F5E2F72A850C3E5F63978689C3D55
-4F139D38F8F28E79D6C96AD77F03BB29A928F5C81FCAB3406BB16B427E26DD0394634FB1
-1134F07F316FAAEC79F04BAA0F2CC7D8BE3E76805500A40DB647A3AB774DD011C6D2D65F
-03B4F2A45079ECE8831C28A4EB68F462561CF76650BD8000FB8971FF4ABD066FFA0C1E74
-6D21E35ACDE42E376A6C6488602674C537CDCF5F163101D4AEE68F0688E16337454C4CC6
-07D2BF89342B8F38438B6E4F142BC7496E17F12F7D241FE0653E8F1AA12BF5E2F91F6886
-20870CC5794A56888CC248E076DBC743CAB5B43D784D9C576755750C79F3116BAF053ED6
-659D9F02375AF7D017CE1DD368481271F3959A5F84F49B1D0C796F547A5DF8551908E48B
-65E05E8DA081C69CFC95FD9889148A5594C1C839EC62D9D12A20B39D4163C193843F829E
-6FA88926D80FBA23988EE8A69544A3B6D72D7B87716A963B4A9498E11893F19395D7DC37
-83FBE1AEDCB3ED86AFF660A4D3E25FA7F21848C1A8815334D443269EB21DBD8794A744B9
-7C9BA089AE6D1F3AC68615EC11DC1A6FDE19B1D732BE963890C6DE995CB4184614B3741B
-A64842BA7486D4774D90FF43CAD4A6D8AB1BA46E0EB7A8812BB1D973F13DB24A043124FE
-60C9C97151A8B582BDA433FFA3B9F734EEA35F1B86674150A50F75543D3BA208743F0978
-C6532B70CF70FD58BAE0B3EF4157279C6E9CA885CD1CEB3694A286993A238AFD737D34E0
-585C5396C21991883B928672AF8E7060F41EB9D955C2F3BBF7378E52964BB318920778EF
-A1EF42EA6D8C53508A79C1DE7D85E0C9A292B820EF3FCF714BB533423A60BA1D5A084A35
-CE918A6867A12FD0C3B3BFD50BB025AA2B304EA290544A2758FACF6BC401A0391B070F24
-C3777E8D5DD438F24CCC919DA93C2D548A2279FAD56A845F4CE6A9912A77B202DCC77F45
-4A3B3BA11741E32D2D1C4F824978A078FEE972A6646FCB3843C655DB8FC065D66434DF6E
-F46BBA42413CA88FAA9F0B2FFD2D753D6B891D8A6B75AE8189123A0DB91B971C00300F5B
-CFC2387EAF61C367C981BFF3F0BFB148227E9A7DE7299DE595B027970CCBB78B0C524CC1
-DA29C98A769081FF8B2EAD1D01A97FB975C084784F33109CE38732F4B7BC2E89E38F7C22
-7E295B9D644CCDF0C3F899203C33DEEA916EE508679BC12117140BF786E118733EF50B94
-E8547E486E9BEEA26D42565201E05B4F7354989423115D89BEB2F1596F2458D7F248483D
-7E1B4E359D679B0F4E1B2C73EC3C37373AEDC75723340A07B4BB35C820D69B0550BFE3B4
-24B44BF1C627C21EA62F4D81E59AE4FF9EE17315064544BA9908A49492439F5F4CA58F3B
-82923CD1045F2A43449ED3BC3FE872A89A470857B1B0FFEB942D08B41E80EA5CD66FACE9
-94559A4A143270F8CCC95D2880C2206E0BA08216A85966E084F061B13887EEE5D335DEF2
-B872D0816C8923B106A629E90ABBC2016A819DB95E63CD4C7B56FE64A917915FB3E9E16A
-E1E74DC608F123DC565D6AA5839F8FCEDCA33258DD1F2471C787E8DEF9FB417D33225428
-874680419E9DBB9479530B26C4385F3FBA517222155729798049856C640C8745A7212A4B
-E7473EEF586E548BDD5ABFB34EFABE513FF7EC3E28CBD7521C8AB00FC7162D85E7D9515D
-E56C53B4BC1FF18CAD6DCDF28317F32F5DC5A2D9F3B15616165F15D7757A05C4A7187384
-1261A65046B57EEFDB367EE48468EB4BEBD7A67368DF534C217E3CFB16F15CA97B986922
-B078C7B76E634EAC55BC29D2376AE295D49C9916F562ADD7823E23EC90CBE7395919DBB4
-6B5E21E56F9A5B204BF0662F68C49E9303623D847763A1AC888D00D7ABCF34C3401D2EE1
-59005343EE15EFB9D5A5A1D330A8D5EB442A1BB47C523A18F4733B76373FA37AF4234363
-03EC4BED56C72AB6316966E2FCB2363FF2D4CA597E68BCC3FE3F139C272C7454B85E9FD9
-E23D8B6A38159E91B587C2B5F01D75817B75315B989E85D71E52CA4F13497F8A11C207D0
-89FD55A01D3251D7553AF6BD067A65158DAA766E24AF513B5711A0AB231087315A3D97C1
-2B5E790F4488FDA7EDCD02DBC2FCE692DB6D56F16BBA576687769642F0169DC57DFD04F2
-FF63861E7C03F841F84AD6C096A57520694E536A26A19D977AF1DA8793C7434764FC12B5
-16BBCB418F59C91ED4BE658224960F0DB0C95879A591F94DC288FD475A32079D31E6C41E
-808FA8D9968817012620E7F30F14B2C1C0A5BE47E647832CF3334F68F4CA0CF338223262
-1A0478FA29D7D90CFCF76D83F39E44A4A878000A6A252BDECE5DA448EEEF21A63695323E
-9C69DAD5E67438DE4F7B20B6B0A035751A39FFBD912F4EFA1713546D0156C53BD3F3BFB3
-AD47F99BA96E0234178A7E980830ABDC6E8C5CE38CF0CC56570447291D422D9ACA5CD12D
-D4444402FE14825BA95670755422399CE362805AFD38C923358F5DB8BF1078C3FC6AB6CA
-E3B057B7760CD16F2EFADE9EA0D40D6296E4BDEB33AD023109148BAEB6307D20AD3F8A77
-F5063C8319ECF4E56586C12982AB630890FFB2158AD97B5AFDEC586DE615E8304FCA1C52
-0369FEBC2C9EEE9068A6DEAC05706FE7E024E8254C4CE5C7404DE853DAEA209E7D067F88
-571FEF20076CF19D6CACD0D29B43E04E132D40C0FEC8FD4FA9A7621BD18215BE346A0F5F
-C6DC05175753865A2D987B947FEDE67B23FE2D3635C357633D57C90C41923F889541D703
-9399785BAA6EF2ADBFA1940227CFEF4448BA652201223FAC24CF955B98087C4CA2664263
-BE8746DFC29FA5DEA877AF83897FE2B068B061B5C05871FA675C449654E6AEAD3A8F896A
-A3588948271FB7F9CD953144CD070DEF9F6CF516C8AD51B47B87766087329889670AB278
-9CF4A2552225A1C997BEE8C3D9FE338609022837E306282A21867ADCD56FA9763D34A547
-8C7C7570B19D04D6164EADCE146E617C85A122E9265746EF9A929CD2A9E341095C7E646D
-95D437FD5BE233E352B27BD9A19D0FAE0FF524257DCDA23C6D5AADF460EE7358D4490D7B
-9DBD68A72EBDF1D266BC974D7F56D3C89850C024CEE759D09214108D6916D34B407E62AD
-89B402AC74F74EF4C0E96569977627C9BB63B6C6F536D1A9CB279B636EDE90A804F32254
-DC167ACDEAF8778B164E36ED23DB890438AEB44487E3355E536835BE443021621DCA9E4C
-8C39A54F4B7C28716329997C1B0BE5CB5FFFC7E99724D5D8C829783D156155639D79DBF1
-FDBF3082B62BCD5A3A04BDD2D94BAFB7BB997ED0A6524DBB227EFB29BD49A240CBF7644B
-AFA665795211AA5735F435336C88EEE7972E94505873F66EA6657AE8A1480119EC9896EC
-EB6C9250F5BE682193B4CF0C9CBAF146D2A61C895BE6518CDEEA1E460EA8119433685E51
-87CC18A77BAFB8C8C411EEE0CC655631E7ECFDCE6C59B397C9D568D0EAF9C6C540E508AD
-3CEC230FFC326F1D9570218D51591C335D89BED38711EDDACE3FDB2F667B1107EB410283
-61F09D4082975C1EC481504D446B0284D017F96B94FA8875B08B11CE175C1CDE5D0CC9BC
-93202FF57BACADCAE11ED701021E7720B88A78AFDDD6D71409E4DE4EB766970C87E3D900
-76EAD2457BD9D819B99CC7B0AE137CC3E018F0EC1450E91D2ED5BDB94D86BB77BA4F291D
-8DC1443FDD001C7EB25B09208B92FA8EA31CD9D0A6DB0059C0B4643D898CD15CDDCB211B
-885155CCF420E1C62B867A923C1071D1B4495FC4914D957D3208D4C0EE082C898D74A063
-2B60AB2D9657B9F510BBE6A2B9AC95D1192350183541E598FCD52B811F4543A1CF25A85C
-12F9B4E51CDBB6067286D7B6919EE8BEE3B3B6C55BA28AF9E7604D13148000CC0C1F2619
-DA17AFD8CE1DFE099B7039FE71D8F6439F0E046C72F76E2CE69E7D787C9AD548563517CB
-72B57FBE712261D00FEC755C108E9020548F4B49D805FF248370459EB32985DFF1BFAA2C
-E0EE93D945744965FD6945525C176FD953B5394E521DA5CE283F147FE0A538C74F326BA6
-60D9721EC2A777B3F9047EEE5535159EDA109AB7CD240520DB61BD088FC45F4A0EB42614
-4AFFD87C7C1DF28DA381BA980D2B144708F7E471230DE98BB691D78F4D8A72B8CB519474
-9D392D4CCD79A03DDFB93F8A8163BD07FECD4851EAF615A49607385852857FCE90F3E499
-3056B7E80244FA21F488EFB3341095E684F428574DDAF149AA105863626B4952129CC819
-06D28957E534DDB5C030E718CE15C9561A04BF18A0F3785CA6ADBB5E2CA74C9166D95FC5
-8537624A9B0663B9D4684E64D1C17BA9DE128EBE66E057FD3CE3B5C7AD929640C7B26B71
-48E82F21A36B86664317A1412DA80BDF4C867852BE5E650B772F6DA9919F32B96860783A
-AB469C9C88A0BA958D3986121F396C4D2183D104DB5D0382A846DF7D40E195182CD24C79
-01C1A9E556EB8CCDE58C61E44E7E80F37568AB5858AB86FBFD0711552F0CEBC1F4A4FB1A
-0D55986B73B49D49911008851EFB478C9E93BE7A1AD4E10FE0222432F64329B0B1577D3C
-E603C0B50AEF8FDB39804ECF0B566C2757DF12F65F3AEFEDCAD98A6B9DE485E0E96F3974
-FC7B196065C86992DE0BA6D4CF123A0CDCB94CEEFB8420916000F18B643DCD6A48FA32D9
-F5FA37D93CDFAA1BE4D95FB3D597CAF2EE196814A3B2E30A494C70EA193DF6647D96DF61
-BFCE1C5043899E5D33176B746ED3F555AA0AC6A6057C0D1B2D283C33142114CE60DE0811
-A8816D22DDE6BC1854B6C8930A5FA6496769388FCF338446838C3FD937C391CE06946181
-83051E106A440443F143CCD973B24B9E5D27E384853212CA4AE98C16B49A4A311A7759D3
-41B4497DCE2627B7D6E4FFF124EDC45B2573371C034707AAC8CD3A3F9547534422428B11
-6F840382D0D36802DB6386A9E73B4E3E4D3BBC0FD636A9F21967B1D550D727CB401598DE
-144B1E04B617FBBDE509F475F0F2181C0F0C6C3F49228D0859269839C52FC2018CDEBA3B
-51108199DDC78BD12E55B48B557E07797FC27BD87D41FE591E26F284B3E80C3B6B4C227F
-25562C846B64143CA3864C1974777D33EB196C29B3391D658208C62B8D0679C5A2380B4C
-95CC97B4192EECE50BB950FA8387505E858D309FB172A852DE81ADE4F7B7D1AACEBFE2AD
-6F0106EDED3D7EED9F3827929B54C17364D62141CF95137DBC1EE377FAEC39147CB344B0
-94AFBA1B7A0A82D41E1FC63DAB168534255D02890B465F496A2625CB78E683DF3B64060F
-255876747A24DDC01E0074211C23F8E28DBD6A6A0FE90C42A35983A92EC58F0383124C88
-9FB29494FE686DA32A5140BFB5E34941EE0A436BC5777AC41D188069BAC81E7E5A76CD21
-3D5312E317771DBE5EC3A6A3DDE1BF1176C051E8949CD8AEA5B12D67B8EF50C3ACB62E11
-73B9C04AAD76EF38A14E2974394080439A18C0194676434BF803672E115B12401E2DB0AC
-7DB89D1D784AECCCE8B0B1541D3494A3DD019EEE3600C839B16070F7373244891AA199D4
-5AE86ECC513C403991885AFB8DFE85B21C3290DE9277B6BE583EDF324C3DEDE193B1D568
-9977EF532122FE8592BE4B649B773685A6BB1EEB7C9A7B00F123A4DD784F52A0D0A88FC1
-292AAC4EED21D1669C7BF24448A28405A6D958F702620DF8DEDCD899B7D88D9E8FA886E3
-87E91ED91318B7C0FB7353FBA22DB282D8AE1EDE64EFE64DD31D2CEC0712454C66502976
-2944EEDCB22AE9D3ADA5D9AA6D49004F5FB72CD0C6594D7D51F56FD7DD5FEF94B0CF6CBA
-C823B03E69EB1F5A067C384EEE3021A4EC292CE7A87CE3A068B51DA6C9BC7A5293553DF3
-21226509A3F95ABC67B047D344BA7595A2D6210E748968EAB2999E24CC2041D1FEB1B7D7
-CCDB4FD8E57E1DB84C47F072CF15CB9425FEB8CEBA0C6A7B807CCD6A640C2DA23990BACF
-69E414FDE169EE9DCF25B85463CFB6B1212A980DF38301DD90961CA8B53AC3E6EE9FF9E1
-54A3DCA66C6644F75164B3DEF201C66BE4D54F108A27689C79B0384070151567A306DC4F
-61E6A5400E74429CA8F6CD35DE63EE5D81D30EB252BC34D99255BBDD7333A73531B4176F
-104318299AE0FC04EE26B4B3B70C39AE5D96A968229113A6C9605483A55AAE4E1B4FE4ED
-C3E61E7E416F905BFC6E7B8B982919BDE420725B76E9F3D2C993DF2A9A71B62202595AB0
-A15C1DFE629AECF2BB6362843CC82646B95C88BB074CBD23361008B6A575B19E27A49D26
-CEF1C27B1DC89A9CFA5725E8C886D376166E813DFEC08ADEE5A31660B1882C4115D12B40
-2D62CB4CB1C938D07FCF89E61B352551AC0B0E37837EAF6AC464C58A79068B2C7FD4FC89
-D471C914D867EE903B948B64B0AB8E3F80CB1A70260E84418014FFDC90F20B07E7DF7751
-17432E151473F92B8D7FC93827D2A1F1A204EAB90CC4E493F962FEBD84B816359F4088D6
-3B9B33B4A2CCFCA49AE19EAD91C9A6D3079C1E0A167C874C16741F3A0243A88E45D1F144
-32B31A286B1112DDAB9E816DF3BBFAA348C75305099E610EB9CAEEE570506483383F3681
-C287B3ECC3CB25835A3594604EDC661BEB1E4EFCEDAD9E4B6B09587C4C2810550FA9CB99
-CF035064646F9DFECF48B98DB27A51B26EDBF083A7EA8BC696DE161CC10301FCEAB82E94
-FA5FB6707DA84B83D8007435F44B216B36EF71DA5E490ADE62D61DB7802070FEBEE23F42
-4BBF0521F693EA29A40ABE744C030FB428C52A4CABD3D5E43283958CF3924290884E1198
-E50DEA4BDA72BB3CF95A1FFC8508139A48AECE8FED2704BB2EB8851E3A7132DCD145203C
-CA826F0453C71FC2581AAB287947A14425D928D75307080488E1A30224D933A090857214
-029F05EAC8F5724F146A5E5E6392DA33465082CF2FA942F83BDC6A6870C0585B1339679C
-8619069983A6FD382142C46F2D63E4B129A62216936FFDCEB97A1C5A9575CCA5A1C421C7
-600AF4CF4640A41F6584D73B5B3AE1A8D98DCBB4F3AF7D2E7316588C1B3BD6FB3E1FA8CC
-EC6C8A857374D1383B0C9D1D314A10EDECF095E3A4069E79A94DD59FE72639FB02413D68
-4FEB3ED14BA97F733516C88771DEC6C4F7AAC18160D7F1C85916ED3F69CC6181574D0C2F
-AF7D3E1EFA05EB5084F4F9BF4DFC6A4DA0985918622D90860C8838C5B8EE35B059733381
-EA94BF0FFCEA70FC4EF0AF2BB2B5FC4BAEF9D0CEA3E8516323451D868F723D01E0B78749
-4A69738FB836BFEE328A0A4541A03012D44B4830F174B7E35B0A25086DF34532C428E41C
-83F0814F0F0D52021F42037B4DF2A6759DAD05A346E019A0633745439D835620555BBA5E
-136A950B9BB234C1B3450E58CACDD658FFFD69B8E87D4EAE015F5427452AE657736DE2E0
-D66DFF9E03E20E37B377AE912B90DF242285B89610A55386CB1BFD83652E6BA1DCA7D1AC
-A79748D0C07475ACFC652460785F6D82D1EB593DCBCFF0157856D5799635FA3E129FC93C
-71A23376E61DDE5014964C4554743312A14FBF83FE99739D6C9C45EA465A4B55EFE80045
-D1021AFDDA6E5E13925F3F69A19741615D56991688E0A794DB1534BB43F010A76D4E29C4
-ECD9A16A90A7588DA1C31500FD55E32B2ABA623524B1E4BD40259F5C746EA160C13416E9
-167D2A5507D8D484427C0C5153E0865241A7BE0C298ACB22E5A2BB24AC7F78DB58415206
-F1C435587D4ED941AB7335D0CFA0528409704BC8FDA106CEFD32B77F1D6A02DEE4B05FE7
-3DF87C5D95533B4983A7FD9C3FD2A3C109F9D1719C372B01073C33C5CDA6E20F91EE2F2D
-AC11D4B111E070DD059698CF18553C4A9A8707046A420F9BC6A6C208906987F2F5883E1F
-8EF30E5A9F78BD73AE6C563EB04FD51AC339900528D76C28AE2913FC28C4CF2F585876DA
-472A01FE1934645BA0AEFD5102C2F36362DDFF6EE3B4A12B63CA06698F06A0F25487EE6A
-28CEEC421948B856D0CD999682277ACB8EB94DD7D88F18FED1725C3F0A9545795ACA2B6E
-9C44687395B6EF3B76806A500019CB2A70C07E571100B7FCF486E0D14340DEF49740B1E9
-65ED400EABD0F69E310CBCAE8714030F5776CFDB057AB354CC2F1053F84EB8008F455DC3
-9870CEB793F611999E33B32E64572D46CEB3E64E0881CA70C576E2FC07AC9349EBF26BC5
-6D4E84EA3C835070D0C52A41DF388C8FFC979174084133CCD6639B616A4A20DB37F2A437
-0EF7E9F11A14D28B18076E8321FA194D9070D1D8226B2911595E3567C156BB1624F63635
-24D1F3634A08E48178D1486C48243DF9156D63B32901417626676305F6ECF88998B46F1B
-50AF077104C052E9A20EAE6924DE1DDBDC99FE3305F4BF802ACD8DEBAAF15A3F8879553C
-B1F4B3D7839D6989775507FAC15DF1B0DC95F554B16E0DF685CBDBB41E4A852CF7DC8A96
-8DA449DD5966EED3F7802A7B12A95CEC94DAF052CADC2CA2D84D7A8FD9BD74F90F47991C
-4FB5C5D9342C445E963AF1CAF3E5DF7AA4D483C9F8EF73CFE48C6A25889E3B5B71CA4E4B
-0FF97995BC83939E986AD7F6B379CAD7FD04C46234D8F85A234A878939110DEBDEAE85DC
-636BE2A646F64D9661844FFEF6D22FB15F5B38C129DDF372C3198992CB6C378E8C306739
-012DD4B486CC3148BA4498EA8C0149E59D4AF1E7A0C00E0F94D58CA91C0C4261F459A4B4
-2F8791E72A634D734A3F5DF66AF91FA8ECD4671C67ADDFFD2E2FD30FCC3EFBF0AEBCE786
-DC44B9316B000A73773D1C354964AA129D82722BE5C666D5DAAC7A087F1BDDEBE3FB9AA4
-CA53FB8684F87577A264E607053D5E321108EE9B8CE78600F1986C9F2510C8AE368BF871
-8C8AD6E2864E257E40602D3107ADF63FD9DA46BCDBDB77B5164C43C9F1D0A1E2A50C7C0F
-7BC6B45BEC60EAF2FC74022B8F0463F39CBCCF2B38318C6EB370B7CC45AFB3C1350F2A4B
-48629916CFF777829AE2904FA90C19C748BFC921ED3985BB03DFEC5E9E250321B75723CD
-1AAFE40242C54B182846A979E80024A9E72029A7205F13157E57C5F40951623EF59EE581
-20E1C1F1EC93870BCDF45A74A731DC31CB5EE13F8C568E4C80C7D9ECE815610F215AE88F
-7157CBCE990172AE920EBED45161194EF998C933252599CA45540855A0E4FEA0866C2D41
-8DA00464051D7C0E2E5932D7D80921BD7F6997C9FC550BDD83433D959768C0E35E8750BA
-0AD159CC296B98CA650724BF9693E410AB6106B9D423AA2EE6A47DD102EAC9B74D66858E
-FFA99A6422C9B5B2D466E817E8ABCD4E953A9DF9CBBFFE5748E6F47DCC8831566DCA5EB7
-26B68A5C1C575340F5D034E15209E7A6C5A3284F3720A5C197111539E4D3F4B3392D8F4F
-C400E3CC89544B440BFB258003A6B7EBE045D625BB3166DF4869F2D8CF74EB7303F0AC40
-93C24843BBFCD9A617E2C7BD53572F0B61DF1BCF677B5439B97483C973AE56D0E206FAFC
-1082F9B2D0D5F900F6575BD6E11FD0863577F4CB1277C1D156711DFFA1012EF22725D52D
-0136939EF40B0F661853385E154C8660C3C472618E7115D705CD837DFB7C0EC85F8B0A59
-DD1564378A8CF2B03768B9CC5AD7ECA0DDDD4D405B0DACD6D13468C833DE9DC82271BC80
-E4A6357569407FB09C289458B2ED792D01A9BBC25ECADAA8F2955811145BD3D681834C23
-28C5E3760EA15AA03D3E0C4E67191EFA44E4A4928089E1224BFB0E79B5BA440E036007D5
-32CB8560DD157D60A5A690894208C9FCA54F32FBBF9C9BCB8A3A9ADCFCF2BCA1564290E9
-832C9E79304A223F60B7B58245E65D598EFC1FA06847E1AAAEC8BB3ACB454AB5EEB9265B
-04589BB8FCB5F87576703AA3594B688F5001053D34F17FAE60486EA07E6CBAE2C6358DA6
-AA1E68A556A1E2B1B2DAEC2302FE04241CA53BAB74E4EF219ABB868FD624B519C70EAB34
-B5A953F17AEB07E867B4317B48B2DAC162B6A9EBFFF4910FFD8A96BDF6E501030928E380
-A6277590835C01A704FAF9C32907990804D0A1F70529C09742422B48586C8762D5E8871A
-F91527187537526FA52601116969BCF7C4FF8A22446A184E9CAC17AF709489FA39D372A6
-6C3D580B183D1AFBD6A21736DE9A09F2968AE69FB587F4FBF7BF281DA926F6F55DB0430B
-B45CFEBC493195A1B98F68A514C64483E30F22A7DAD69FA38ABC4B51110560DF23517214
-081F999A3F1D415D8993C940BC40C481F77402B51E7573801DBE672A8739BE239923B996
-23B97992EE35B62734095822B8331F69EEF8BD26FE6A6FCC0F6524CE9BEEFBF40D70DCAC
-49BCA97837DD526C105AE9624303C120407740601B1808D28F311B42B2EC20E1FDABFF13
-2DC42A1EA01827AC85F44F4E24C9B72BC9EC17361053BFEEA913CA872A24FCAD6415C77E
-59FBC9182B6E931C0580BAFE050432866D75828FBDC44889A794C63F0855E75CB056F36A
-A4F5F72D64E5AC055EAC800972934F2534FBB67469E7E41FB8F5819D03ACCCDEE81EF213
-0E1A4FD88BC7074BFD5D83FEEC51C9D1AFA13EDAC699B3DE2595C88525891F2179D8A0A3
-650CC93EC86F1B79D135BCDF82E797480322E4115A5DF19F16DF7C2557D750347CBFF239
-979DBF0DD515FA7B9A12F57670103E579FE7E7A9E0608CA20D0CB3FD1862E99248035DF7
-008C5972B216D066B473085B42AE54AE3C4651E4961F412E7702535F351F4273A97414A5
-3FF91785AA3A90119E4B93B8BA0375207191A2EAF3600CBD3A2ECE12D8EAF640295AFFD8
-83A7779F6DDF812467E38DB5E6B5F1C1DF8B4A0B95BF02E5C5F896936CB4408BF19CB9F5
-58541953A868C07F1FEA9A3EE0CE28BA312C12336E4B1161A934DB4035DF951B428B0320
-5FCAF9201D34DCBA174888CA3EF9D8E708B7CCE5CC95ABA181B7D251BFD9D6B3D7358EDE
-A8A32B7F85C3F2FAA6D2C8D08751CC807E719311621F76D554B7238E9BBE15F19A7102A3
-0F343CC0110F464BBE35CD3920EC3A3EAE89EEF21717ED7015359D47FD7BFD16CE001058
-0B6DCB1BBAC9FCB2EE435D6AF4284B0CFB140CFC4B7BAD83E8A5EDF7C27C3001225D1030
-0F48379F84B62D77D289B6F2CBAB0CB27B5B9F840EE86072FEE3A858A62753BB5550BE8B
-A63CAA5AB5E3756451A79F6A65D6CAB3DB0FC739345392377CCA2661A58AF73837441681
-567C6E81C0C8944033A4F36D599CA915EFE4D03D95C245298D10FA0A5BC9E9569D84E13E
-9653D44C827182AB29339203E578FB73FD1F1354142BF3D553A6720EA72318EE76E226D2
-AC788224721DD4522A247C18ECE489334991DCAE23D459656224ACD39B04DF5ED6A19375
-DA2C2113CB7B8696EB78522BAA320D94A6C04E9CCE17D07C833B6760173F99151D27C561
-61DFAF6BD81FC42872E3DC8BEF1472CD53E32271A997CEA4A057D8CB8DAE15FA7AB150C0
-D92A1A65CA400C436CA993854B8C18D78F1B593139F5F227ABB34E1590A37886467BB263
-14C735651C3245FBB4F620A013D98499BDCF3BFDD6F1923DD9701F295E50E4C3C74DCE02
-571B4F4CB40C06B325AE0D51CF1D9BA0892ED1DE29419E3B8D6BA907B54A96BB67C1EE59
-31E85906AD2C09A9A964401769446BBE07199EC8EA8E3947B5EC31AC7537F93C9CA4FCAD
-771A110F2D3AC7CB6DBFBBC2855F2F360D8EBB53045AAB46D65D206F03E0F4C453FA6169
-1DD1171543A53B89A2353511525EA85A4A825F3BB6BBD2889CFB8696E89902EB0DDB58A2
-279D214EDD2E20E0DC1F06A02B09AE75B20DCD226D353ED6541007905383551B46C2802F
-EEB4AB6DA75C2ABB220E8168268AA384B3D4F8D9CA591B6BADBC27E4CED9B4324B2C4C19
-80ED6D6F7792FFEA1BF7D9F4D5CF6E52120BBAD41C87C749C042EE247978B45A1B30DA2B
-C2785D51B7E02482A095B8D8A3D2132F9C80ABA4508931AF7A99A07C0286144C4F666802
-A68D63210AD70C872F74D40F72547ABA3F4779DB29A4C86633E273B3DE4B5F52759E171F
-C67D16C74D105780E2B85DAA2D13807660CAB1830AEB605CA7577743D01AB9D001A65C75
-95F576940C1D3E48C8F5FF569E6B17954E98284DAA7C062347F0C043D9B71AE0FE0554F1
-D2C8DDA86EE58CDB0D63C974812D902CA525FA81B3332E4A87A5261D6B3FF4FE11F44A1D
-73804F9DEF69D93F195C05C8C16781252FB8DDE0C59687454BA4D7A3CF762DB5AD308A64
-6978CB14A6A8DC6570806D7016E3B7FC0FF01ADC1D983B8A720AA7882DC49442A7D94A6E
-8F01E5DC1201D9D0747A7DE1500D7BAD256BB6992F5B5E1BEC1D88BA81C11F80F994653B
-36586D1EA5B5F805B16438070875630DB4B42B0CD171B152FB6BA57E9A755F80F91AF208
-2832357ED13E723AEC166195D6D88DDDE42571059A5B8667D28F3CEEBF24002360F226B2
-9C6103C47D98A6A330FDB99A0326B702EEC1D3B8A118F98DDD07ADAF1B24470C8C465217
-172119E78D37FA0E679D3F4EB4BD103D821FD839127AF7A26042853B99C89049A7268D82
-DF8079A1D47144010BC562504310AEA3E2FE85D91CE43275B50FDA31256265A4C318E075
-2C7CC99FA1618BC3979A58399060CBD9C4C8C7D5455A63BBC4963336C5BC72ECB5245CB9
-FEB9D399E925F9C67EC1FFAF1B28A1071A58CAA3AF9ADAD934F4D1459FCCFB856644B2E6
-FA6FFE63D48676EEBFCFDC2CCD9EC64B71A30342D364A165AD365F82C9971C565291E1A4
-FB4A40806D264B5A3EA0EDD1DDD6972D5EE5A27D633D546EBD8D3B184D7740E519857AEA
-F8E2108FA525B504780CA54567B09C188D5D960C2CB3AD7FF016955229DDD88BEAC3BB94
-C955A5A27029E2E76FDFCCFA2538DB7FDF8995A4A785630B22EB30AB37722535C95A432D
-04B82EB054DD30227EEE30D77607A4C2BBFCB2F653CA8895DBEF75AEB36BC7A48DAAF131
-193DC36826ACB8F8F33048F223D6BB88DC9FF78BF729C07E70117D205D39EC03A0C89BDD
-926E7CC6664ED8355F2EC41D9B3CA8B4B58A201BBE9535A5620FB6C100D97161F308B01F
-5E9E22428400DC8F41D6CB367BA6E8CD890D0672E8506B4C6CB352AE06BAA26700E74856
-7FCBE12864C32480CA3A1CED87517146FEC7578E3DC027CF2A59A5A09A3CB76657362158
-5A1BD78D218EAC0B318D8C96F2594734AAFABDBB4C2B6927AD5299698366B1BAF03BCAB1
-E9BC91A11A33A1352BD8F7170AE64A116675C3ABB5840114D8E1208D851BA251C88A7764
-A90E769FA91AB807AC6777F777030BA02DED02C2C391B69282AAC1BD8B99F7F9BC778E98
-B2DAA85A3EF8E9DBDDB7887890B0B2310285DE0EDDB6B4628550AD5C2FCA48FEC21F1BDB
-3C6384784EB6557DF3DBF585103EF3B0276C48154823C79224218011DAF0763BAB3A9CE8
-C412D7676245E96BDD47F2E79E126FFD8AD75139B3B37FB13DDEE30FFAE28F7327B859F3
-14E4514546B87FA7FD4FD545872FB0AE4F8AEAC3B882A23DAE3D98098BA60847B013CAC5
-6577FFE3D8A1FAE941DEDCCDC7101E7DFB0B17F0E11100A2947B73FD8A22341639966D6F
-DAEFF59CF0508E01920C167369109507A6E7ECD9CCFC30F7AA87BA0C1C82BD959FF8C43F
-234EC01C7E2B3AAF12F543FCF5C2A2077DF5E0E9E3A976F107BC8E8856427511FD5EA85A
-BE944C72CBBB3DBF4C9870F2EF2FB3398449AED9E345A43E8A6B0A99EDAF4118C89A3612
-CA99B59D4BBF25800E147BCC6CC51D1B3239DBC3A15CE68ECE1F2CDD6D8732238A922C04
-AB8859F9255477B00DB497320B8017AC48BE9C10D2452A82BDCE5C37953D644D50761302
-FD40AF015C8FF79C82015EBD62EDEAF0C0AC637F54F436ACD2D0876390EF02E29A4E3B3F
-59C7B3E1EDB64B75F0DAF5B401015114F226BC68E31187214A69EAE0261DD7DD59B033D9
-311A2F01E44FC47F13927C1C9921A5881F2172CAAC71B0FE038C1B6CE87B04EFA42DD4D3
-65F6249C359F8071BADA34F2BD0A2A2C7B6B8AFA6A1F765AF2A9E77942190D1929EFC2E5
-509B9066CFB90D5D2A4732088CFFCB20A56A3218B020F491688AFC95CF8240EE7B7C38AA
-13CF17FDA80F40DBFD5F92D1185968B43A26D0E38D0C9F91E7226E5BDE34F083FA117E2A
-EF3CA2FE14C63CF404CF833DFBC09E27D96F5A6C16FBDA79DCF00652DC6AB73C4F6548F2
-16C8B245B15D9B5B29746E53FAA0D95E4C0357A3BE36A6CD993AECB9A42828E934A36388
-FB546D8C9D3531EC7B729D44D8AB61975BC7135E5ED59FEE11F12CF5C9C59160DE698385
-778A751CC279F807DD68BD5CF994340A16FF47147F029468C24E6E7AB08C2C69E9A5C5B9
-8C62FF6197C8455BBDB7BE9D069BADCCBE86FEB495B52BF65CF17C4B1157210C98948036
-55444C22444519D8A72A2899C20138698BD646E94748B62C3CCEB35C56837BEF1BDE5B39
-AF2E40A4D73DD747F1429CB4A953F949B97D56DE8601E7F299C218FA0D367559A750802F
-64DA3BC53F83A733B1379AA57CDB1D657C2EE623A9696CFB580CB63902F87B4786A55EA6
-2BDA6CF94FA9CA44F388138020463F5BEEA1E273BD5BED2E9B08B60558D6A2901929C23D
-2E6A61351A5CFA65DF52819D002CF21CE650520436C9681C60D81582D5568A6A0536E236
-26A13B4CD55903D130BFD7EFF26E806768C8EEA16359FD842898B8DC539E3170D4FCF3B8
-72621BD4C65DFD9F7EDDC0B17BB478990673970D4D4A07C7170698D784360F7A6A53768E
-D9B41AB73360FE08C21855615214C91BAEF2F6A5AB71CA45E4B52326EBFB99A0CD401A7E
-2944424878194E14C2BF7D183EA1B4C0BF9A3B2157EDD6143E9E9B30891F1185C3E2942B
-EC87C1EDE03B77FE7CE0D145C0D918D13EB28EE264DC78409D7FADFB03718C6DF7D50A71
-EB216B5735A990274C349119C8739E5505F23C7025A79F4A22FFCC532981D27A70B94A48
-CDEEDE1590A2A0FBE661ED24CEEEC4DFFADA11F6514A8D7C026D2D685B07F9DFAD07147F
-C7EBD82D9A52AAB50D1B52945ADD441A5F3A6C809127457895402C1AA796582950808F4A
-21BE6BD2FE25CB9576AE1640ECDE763FFCFFFDD8096C9AD89B8B2390A2275F224F2FFFEF
-148E4E1F29DB6BEAE998065B0306535D588F901C3904FF47D1428DDF213BB0D9D558006B
-B5F032CEC1BDF4F8997B304CE400EDB24EE46C97DA278E03B768C2A23C88878B9A79DA41
-68175815CD1336A71D57C6E07CC7B8596425C9F8214F0BC2D99400B9FD644C1F8CF0AD3B
-795B074D9D9CF25C18D3847873744228A6AB058D5D213587F16740AB978CE10EC3274FB3
-DD411E0392432D67C9945091AA3D90F95C3AF2B808FFA37B6C6359EA023D1ACB7A007F4D
-5AAD3D9EE2467F5FD642FF3AAB11451EDE32138525FD48DAC480E29A16561A7FAF95759D
-F83FC7504396991BA3CE2072851D7B962FA387A40F62DA05B81B39CFA6123F5B2CF261B4
-C7A84DAF87238729FF71D6F3DCED7CC97CB9C373D6B150C035853167C49368F16E447A18
-0F7F9D4CC3978E3E6B5F3B4CC7FA3078883D4C8BAC0A94E9B69B7CCB94E6D5898EC61A06
-E5A960058E6A1696C0BE287F24869414CA8D16E761C120FF5116A19EBD39109B0E251664
-DB0A5722B4366151759BDBA4A74204893F585A940EB1BCC870873F6F4E08BC88A239F23F
-FC51016CF6F8CA8830346363BBA0E1FF376EB66174CF31ED9AE04219301EBF61A1BB5E55
-A89EEC27A12666287AE6AEA4D45A3706FDED0A70326CB050B6D25FC56216F932C1294E54
-88E3C331627D85B34875E7B51E4E7AF724CDBABB1F14EB6F23088595F2BF26D88C04D4F2
-4B94D94DD47761AA0A9BF649B06F7A2D56D30FC432FB49B570A53280A341BAB378037DEF
-7FDC3B284C83F7CEE6800CBA2E20844A4DF8F2F5400167D136F810A7A739195896E470F9
-5875E669A770691C885365FBBAD1BD8461B005DBDD60891F12D8D4C8D51C8605B3CFED8C
-EFF997868478A6A9D642789127727FA231B4BADFF182AB67B8D19402633BCD4913957BE8
-8F95E11EFB60934E8F26BD79622385F5D1CC5F7F492BD69C8C4BE47D76EE6466880A1885
-F63C3F4C893032D90FA8CCAEF615340A8424B4B1752C9009DD1EE6E0A10A0BE83DCF2CF1
-E746AC5A62FB5809310D5F64A267028A7EF02493B6DF22012D036A19B4AE3A9ED9A5F9C1
-6EA82AFC6DF1DDD7E243B4464FDC28B63DF4CAB59A58949558B1C1B4DD96800A69D14E7F
-9DA1E1FB6DDEF437C2D31493631E79A41AEF27721579C7B40AC30421726959CA6CFC3F65
-5B309D67F0D50DBD33DE84CCB5EEFDC4923A4200341A8B5F9541428A9B6B94CB973BE6A2
-F39DF0CC141B9CAC1D0F25FD087A176D68BF69C6D2BA5084B586B289B00346DADBB42774
-251ABF854004F12EE97092CBEC6BECA5B74F21DB1BB72C9BBD9C0E11CDB4F64F347FCBEE
-AE58924610D8A5ECC6EEACAAD54B36117A2EA580B9D6FB9635EF4ECC1649D1AC8634CD74
-0D01BA7F6F2379AB2BE4425C02198E8E75FB46CC405F706C2E2CEE54582CC08A239A6DF9
-BBD208AD5AB256C5CA2230DDBBAB210FABE5D4582B22F0E66ADF21F4F755D8E16EB071A1
-3EB431CB00EBA9EE617E43AC2E0DF733151A82D3000DE349C9B9E44227CF001D50E6C62D
-A792040A868EB92A635208145CF8C25F51B698BC3460273AE679D251A43D5D1ED8D5D759
-6743700F9B67ADF9E103EE9C2D1727808433DA9D16ABDAE228FB35FADED5D54816E066A1
-8EC29EF2242125D1687D60655B3EBBD8E6227D0CAEC0E0BDB7845914D063890125E568E3
-8B14160794781E8EB631115576CF5A7E9639B02A28CF363720067EB527988EA1D2DDA4DB
-CD35790CD4F91A253D0A9814143492857A320088FB02B28ADE5CCB4BD7878682E2895B07
-7029BEA07B654A13EAC49FC3E9BE70BFEB73418204F9164A26E47632CB0FB20C643A3245
-4777AE40288C6942D4C0C88FAB77120BC73DEA4EF0AC703DFBBE9FE79796671938382F22
-8A9C5B45C48FA131C17BE362EBDEE57378738DBC29297A9B69A7854A6D702524A76573BF
-F76434BE57EA370D43CCED36DD0223939D362102547E2B7896BEADA8F0B3243979B3B4B3
-4F43500473F7C712B5E3B25BBBCEDDD40797649305E5E7AF2B767CB21C93195FA3B2BFC1
-A5891A91CA879BDD643A4A3B384C7A55718BD872E01674336419D2B1EFCBD888FE8FE9EA
-3F07C87A87BEF21E66F8B26D25841401C499B31DF68FF0491E660E40C79E5EC2312BBF1E
-364F6177BDA9DA10DCB347E40C8F423B12700C4C47DA4B09A27CB14310C7EE8DBFA567DB
-0BA6DF2499B5ECE65519504C42B6813E0B906ED94861EFEBD5281DC0531513893F7EBF2B
-9F43022A81ACE291CA736570C6E099A8CCB59D8E7568AA5D18FBBA8986905D35E9B52D59
-1E36EC95612B25F371F2743890AA44974F54814A4BDCC23F5DC100B5584B09A746938953
-B5D519A50D3F1FCE6040918E3CA5E3DDCF5506055FF493A8AD4F8A081BC3524D88336AF1
-80888D96699045EE95F984547B4D9844C9B596CDFBAC8ADB0194B7141DAA0385470F2AD9
-F542FD1369E418C5B380CE40E2461D3B68E091021E21DDC50D96C5578D73B9E84227EA05
-8231936F4264834C133C58D71D347100684A1F3F5A5B461D669B92BD7A00745C98906EB3
-15ACF12D2E94B597940D85CA5B69506661133A6B11BC940ADB550FD9B3FC14499677212F
-B6166E695839DCEA3F1442E2C9E32E28EFAD1678796946725A1C0C62A1EC5972933A8FA0
-D37AD1D8EFDCA892F53962F57906EDF22B55AAAA17562F2F876C0B5C85197FCD583E2A87
-6C28672FB7ACCB063154A1FFC37A33B104AA37C7417F46EE3D4B59BB4E4DDD58A2EFD829
-71275C35081723630CA67016C8BEB30A7441E0BC9A4973888F0A377D7A3ADDE25981BBB8
-036AA2D9B15B71D54A7BC6C8DF79E7D2D50E97F1DB6E796655F47B5E988653996F1D3885
-60BB63A3C364B5AD590A5DB33524282B3C6A7C228EFBFC222FA475FFF99E83EECDCC09C5
-406985D9B3C00199EE2A620A7F820D1DC40353E0A76B46DA672AE1CFE632FA3523C8B32E
-2C0D7344DE9DEB24C7E311E981B216361C401B2C7E135028BA08D3B91D39099DEB9DBB2A
-4050AD37B9B823815BC6AA107A3C7B935BF259D9FECE88232061E4796B425B5BAF4C5E8C
-4E9190E159743D7F3E4AB2191B8EE8877D8936E5D324FB57E6936F8267C015CE6D04291B
-200E1C964660503C96C4A4B782D09F4D3BA952B7EC7AD5B568D27E3A07B26486BC45F394
-128A011F68B0434829C59772C66A001A50FE3C5F2C4683BD81AD8C4B7F7A25127CDE5E2D
-EC216243C2398A1551F8C1E37939FF94CEC8A9C1CBAC52BF6371DE25BE148EB39FCD9552
-3065F034E4F96B1C5D61120DC87D04E7DED973471C0A3FA1E1E6BE6E2F01DC0199399B87
-5EB88A3E4AA85EFC9D9F28B3DC52319D374AA64118E1383A8A577538C29859090DB65026
-4A866725524BEB3FBBBEF6AB74FE8F786D1FA8AD94BE90794AC7E72DB71DF74F577F169D
-F3B310C2D69D729A2DD755AECBC0E463716BA5DCD4680D4D4F4164420F2B46DBCC60BE6D
-A68DA2B2AF32608266241BDA6CF36E132D83D16092DFF4D138BED509909E250DFD9FAE30
-53BE12A825D3A91E404449013E219BC67A2B18E40D497125A2F39BD16824CA7D2A2E5173
-89D69D5D838BA27ABDA5012B426E58456B2399ECB1B4009CFDD6307F6D104647AAD6D083
-A562E7282007B3B2A0B6FB23F2EEBD0E7F643A9BC7075D893335DB246CCBD8A37DC6F1B9
-649AF15271717A769484B5531A1A7D99A43E90490F86C170193442D01EBF02842D349B7A
-580D601534F1EA401D27D98455EC4A5800F4BF5893EE080441F6CD28226E4F6AEDDDB7EE
-7CE77F2BB54FF006967504CCF02F4875EBA2448C00FF58DA77B50A4F4A007663B5B64B18
-702C96AA0E6F85410580F931BBF249E91AF47477EA284CD42572FEA81C462D7E0CB5F81D
-EBB94225776D69B02F04D76B51BAF103B265139F85EBA00F47BACB0A1FAB9D39B648B5CF
-06E58CF1CC43A431315953006CED0FF5701401B01CE4F335015EB6E41DE8D14F1B5C5757
-1371E7875B17C44B374184836C07D47F4FA44F8E49959BA63A4647F757B3837BD334D2A0
-423E620AC5E1C5B18C3A400A8CCB7119C3331812AD8863FC3A97B470293F83CFC37E8BDD
-D2EEE4C5F88423740C93563603FCEC652CD447869112070497A5141CD7DC66F62EB445F2
-DAFE1378B286E730801959EC5FCED464E1BDB06D725970C08CA0ABB730C12C720E219519
-FEF20F96A1B0FA671565B45FCF41A40D5AFBAA092A09F72ED35FE94A98DCF5649F6AA3EB
-FEE7ADE1E19B4429C4E1E76880C398246201CB067D8A734B23BD3118A8F5F7516E5B1452
-72CB0AD9F41ECD8FA61ED0CA87385B2B45B1BBA6CDBD7B9C9890F727BBAF5EA03273E387
-FBFE8D0143D1B215003C9EECFFC9970AD21B0A7E90F56E53B3409E102F89D95B3EC58DF1
-B1C8D48CCF22BEE22EDEDF25CA18A0461D2C582220ED664F198B93B388FD8CA9CAA6D8AC
-95F10E458BE5480C767D6606675208E4C823FAD4A3B8E77915BD881C345B0A8C34F01B75
-2566AE58CF3BC97B215EAAA7189AD6BCE0A524C0998235A61713C538CBE9769E2350F670
-4BA790CF77CE5BABE376D5C2B2F9EB8D90B762BC59D9DEA5234ED14A949B002258212E36
-D5A22B4D847EA8C4171D74B78A5E225E3D956FE7F8B95FA133C50F864725C1B8F11C2D1B
-3AA7D08C0745209E00B98BBE59E463D60C79122469F9ABB8A7CF777BD90999206C83F8CE
-8C95C79993C20CA63CF556C821C8DD3D5124D2F293E5506D9CA515E026223D115DB59D8C
-883FD825FA3EBB449524F1BE7811BE76856A063BAF9C09A3930417DB889B4DFC1563F688
-02F4AE1BA0EFE463FE884CFAFC0FECD0F4396B006B9230D9D3BBE6757318184EE7EB6FE7
-00E148C53CF3FB7DC90811F6D5CC8F9FFF975EC7DDA685B76D05C0320E7C3AB3479D00FA
-927FB3E9E4363115D05E3D62AC3FD06310DFC6117117AD8BCF44233B05901E32D8A1BE67
-CA059C513BA968CA1EFE077CF8D651540EABC16EA1F61AB1D7F74F41EA52E1BAA0A19576
-5547168636187DE931C6F97C624391A212859C3A95F42DC367AACF13BBDD503FC1350FC2
-FC6259B290A18447FBF37284CE1F00DD81929B13F366C0C4FE86E834DFC7FBF5B4DE4D5A
-33D014E3229A7957A112519134F0794825317A8D56EBA39ED15725CD940D974912D4A79D
-C499D3B2DFD7FD67DC7E79F70A04D5AAF40FFA6A568AA4FE042FC2AE31E83F60671CAF60
-B8425E4F3959FADE3947B2DD3438C7B08D71A036B2ED959168D507274BC4C04BC9A9448C
-0385531153595DF90BCCA1EDD889B3C9F3CE3FE63FC858AE51CACCA7160C3296038EDA20
-38625CE0DD5C236F6F18B3B41FB6D5953F18D5FD4F700A95B08BB10431090C652BFAD23B
-D4A9211D0CF59E5C2D0AAC5708386D14F02858C820A191239D08E6121A77A83FE89BF056
-C42A6A56B55EA35DAD6696F64F3B702C21F4D97D87CB80ADF688E6F1094B00714820BA53
-65CD655C9DD5BC030FB2029972D15CA71610085A1A7CA47E290D5554413EB88B70D94881
-1BA89738DBC0C16EB47A3CB6190E191E67004BFBAB73A067501BD283CA816CAB52515721
-4CF005497DC884ED61CD5F5235EDFC207A0E8BE0696E7F93BC267C1CBD85BF4BFBDB755D
-BEB88A7D4B978AC52B7D1AB8D828448F848EB6D2F839AE9F4BBF34E1BD5DE77FA93F23A9
-D111529C49A295893296D10F51BCF03327CF774BB1AC501BD8BCA58F3E82BEF79C39F434
-845435E9DADBEFA2AD5D79D8B0ADED3DAC9C1AD9E6A24B206C9DBBECD552B2E6DF97F864
-C8925A37EEF8718CD4D277949D389959D852977FCF96E2C46477CA973846DD65AF478490
-028CEF70A4290B22C4DD7514F1DB34820656EAABD1FCDB7A9BEE0C18E577D9F27CC50777
-D55B4EEA53E8F681F76D4791300A06C380E57B35FA48314BE3C4A70D1B73E743A2B264F7
-3E3C73CB25FD2D33D74064BA8803858C8353C1036E09EE4489433C92F43ACAE005051DF4
-A89628CD3B3EB9A569AE2DC5EB290715FB1028B2E32BA7BC4C48AF1FAFD94412BC7A036D
-A31924EE68FEB3ED8DB8340154D5757AB86B7D5D37464D58A22B54E37FA9891FE1A54C01
-D7FA05BCED8CA937BBE67979068B177A777B2B315E6B1F77AB6930DE1372A95A0A1A01FE
-C9405011F1F3AA2252EBA22A54C779661AFFD26FDFB10044D8B68277234762FA2ADF8EB6
-B53B75E663976FFBF7D43502184FA7CF047A8CDC2CF0220E542ED63EE9588C41E35496AC
-39715683CED932BDAC827F5CCB9BE1D3BDDEE2D2C900AB23E2B54766DA16CC227E58E53F
-788F5A8880B5FE8A7355DC73B6B26BF783F02E2CCD5F96794DCECAA0E7A603CAF330FF6B
-D8D56153CB4272AACA3DCAA5932B7F754D23BE23B2282F6C2C59B2C1EE4410F342160BCA
-093ED020E4EDD16C7E6E03FBDB06D510E6680A471E3B4E2C4319FC138B92A8EE4058A0D1
-8D7FCC51D9F16E9B74EC75CB482903BFD27C4A17654A6AD85D608558C6A717D47005A8DF
-B52C28282EEF5B9F7DB1086D19021269438BA974CB8C34A8B85C5542519424FDA394E116
-61636091F18BA443113DB75E9FE5C5B8971E8749D15FAB20B90C10D3682102CCC30CFC3B
-67DC2D519C96B9F607B6BAA01FBD8B78236BDCD6EC3536D15BB3A069272C646403BC64F6
-FD55E28988D01DBEEC75547D4D4A975761E5BDBD5E3D7601065C4F9657D3E492DB6A3558
-037943383B261335F01494978F46999DCD5584F7B5DEA427D20F20E29B1D80AEF1E279AB
-F27AB8410172E203B3945F98FF87A2FEE2B89293BE2F5DBD88A200130143D79A5F8943A3
-D0895650BD6CC2FC5D5675B30B12B4E095F2475F7D8788EC9AA952FFC8DACB281EAEF931
-34A6F83920FF8E7C58441BE339ACCBBCD4C9BA4C8EB9A5F6A45614F991D9EB0A76B2C869
-944CBE0D6C0CA4C8BAD0B897328A4D354C60A31AD9EBC0F97835BF4CB7976BDB95152A1E
-919144C60E884BC6E6857496C77C3C7AD9F52C53A9051238011D41F14687E5B3F666CCE4
-86D16F3CDFB9AEDE1CCB3452A68F5FD75FB96600750457E3C3FA6579BF938439AFC75386
-D1C0A1FE73AD6968DE195544F85CFC697793F1F66DE6CBD8137A918B2C24A99724C978F7
-46BF6AECA401F5D298CD1081970FA904F2E2CBB2D749526C2E14A43970B2B2CD28EE9178
-A58F60F7BE3F87967B4C1BEA2ED73DF6692862CE919E3B406480A69CAB794692D0FD1C6A
-65FB1065BCB5AB47306164C0241A6177D8AD8E629C77F84A1AB5CA62B493C5C016AEA0C1
-E45AE05B54646CA6E134B776D09A11FE04953679CFF2777B01370F482CA655CBA8D1F91E
-07D0106FE37E83267B5432ABB51D56C88EDC58A11D8D90FB5E82BC023C4521A6649B9388
-5BA6C0D139C3BDB8B0325CBC27AC4E8F673E53D84476E1632DD4A09E94D375B65B0FA682
-18609F5996F543A985FB6CA55D302D63F86F234F94C9A5A15B0333F722702682424DA956
-1E6614FFBF8A9293F5750E06BDBB05D3BF6F56865577FCC010643699D0AAD5633BE88939
-AE6324C36A7A5FD5F148162952C357C4FA5E8DCBAEEDD28D71A809ADFD563AB3C4CB790D
-8FC41B81784B3E9C672A2F6A2230E90882EA374A579ED2BF72795E84B089635FC4F2B48C
-D51C418BF26AA4939CFF22A0B37182836E70AC08C971EDFB46A31BA11480BB855D53A01F
-5A0688B2CDB04B9C2CF22A63ABCDC965993AEE1DBE2BE79DA4D1BB595E24E87267FF1648
-D7F8E531B275C5499FD4202A948E2DD9FBC7CEF688566DBC53B886A2F9843F94CDECFC63
-78E6937D4CB278E11EE9E2957D8BA31145058010C98A752CF568AAD0FF5C4C67988868ED
-19762F2F54D6D58A3747A6C5A052543ADAF50DE5AEC5DBFE6A2F78F08A50E5F65C328290
-B383524AD0A1A477A9815C8378DDC0CD7E8CDAF6F097E5DD40900B0DD7A7354A37B9D90E
-7C4FFEBFD1DBFBE33B5EBCA7607243A53EA746FFB8CA2D88E73D2696281CB210E6D5A0D8
-46F669F24E3448DAF1DE413B6248564E718D903654ACEBCE09A7CA994306D924535F5792
-21C39D8E386B1573B9B7C26256419D8B52F4980018DCC0001DC87F590C378EC0DCBAB4B1
-8F362A7F64BD16DE2E647A4B0573D92F1300D5D8423A1FC658E708457646CA9585071B72
-E66A2D919AE292B460E816FDC8CCAD369EB90FBAF5BAC731FDE38CE2E45B755934264D8E
-4EABBA7D6C0C91B4444BEC23D8FE44230223BD612D845BF57659A9594168655749D147AD
-CD4182BA77EC41BA34595990446E1D093CA7264512C12DB9EDCC3A2E97B478DA4A2E7A81
-3CCE2592BB816CCED1196A40E76E4B0BD2EEEA1EA7BF331D497548FEE91A56C7C057C3CA
-E25412546FAA9C1B8382F5F01004E506A0DF3BE419B38AA7196EFB6C9B469E49DD63572A
-60FC9A5483CFB723FA04BAE4AD526E8C3B14E252750A79C13D07CC1A1A424B33586F7072
-F28D5C61DBE7F0EB9BF47110B4CB018190CF5BD564CE48B9775FEA3DC1FBB03206573E02
-C60969330F0DAC03A4EEF803D7F860C14C50D809EA5D5FB13001048D2CEC6B56C2423CAA
-EA0FBBC4FDF550F0EA3D921F522A65CCB0E1F590106F163DE12D1410F35D72E7C6168D64
-829F8144C5B7CC9F902081954923AD742954477ADFDD4D321A593A41806C002B02D9DE03
-38DE6B6401408FB03D282489D23B6CD09A77EC31A7EBE000D54150B03A8610D0DB8BBF8B
-9C7E94419C0E522521585F2B7C657CABEEEBA79F2C8FE57C86F593F805945E7DA313B826
-2DC421EFEBA8237EFCF9B054D12CBCD0A3BB32C4A5BAC3E8C105C32860E80FD83F095A20
-AA4497CB6F4A879E5F7AD6C2A8272E937A61BB95402F130A37261569D47A88D4ADB80A1B
-1EE5FF03D8890B212E3508C408EF145C570FE2656ECAB9EF52657A04456B580344FD4F87
-2B5D5308DB567B1E957073892D8F83A2C8F93CCFC11D3965EA0B985B5521C997786CE86A
-3D9E0A3407EC73E51BCBE2B53D11DD304F0B7469E34A5F6904F5B3807A62534D742DBD4D
-3EED49B28F68BBAF5DB1E261ABD0C7739CC09A4779D5D2AB15ED9762FC6E72F78B71DFA3
-23C29D48F47E44A38D87168413E3F589B9470C79EF8A4EB6216F1F0F74FE2853E7EFF2EC
-902018A4F6FAF4CFA75B646447DA90B8DD612A65ECD9504C751D331B3762DD369EB0D179
-CBB70EDADDF73E58919C65DE73497A87B4ACF06360FEE10E7593507C6663B0FD0308C95B
-F21B9ADE7966A23FA4CD0648051F2CC20ADC25C8F983EC2DC97E2160BCC62CE3051273F6
-3D65913AFAC94E548B6BE0BECE2B704778A24C4348F128A4EF617A7F43AA327193B5BE44
-C2045CB1840DF5FB6CDCBE455EECA489E22F0FF715F4FD6D14A874031C58A8446730D0AE
-D36887A4B33DC943FB6A9469AA781FB0E994AAE327A86408D63885662065330B6AC00AEA
-FADA28C53CB4255EA1858ECD3869BD7A27EB5C9949530081E5E103DB50CB34534A4C63BB
-78E91AC992D1D58F2D08E7706D25CE375CD041F049F762B4B20FA9052DB766881540D4FF
-1BD7A4FB927F0A3ECD257938BE91A220D9FA4E00201CC64A1E9816E9D71E95931A5D018F
-0AF2877F2737A7749BDF3C90A1694FB81EA9C970629EDEDB5EBF19A60EDA5D7419F3EC1C
-A51FF1544B23800B0DDE96AD4E5E660AB20AA419182AC33ECE2A48675FB2D74770AAFDBD
-6C300C6360B9B5FF14B7022BE140C05133BD0D848A605491C156D08EA88FD0C4D2334200
-B8437E6088DB32493099469000426A3CDCC627757C9DF0BFA4E9E0CD5D0C8F3E921B1E41
-48CB6D876F445CA4CB9FD7E7FFD4032B2A97EFB025B182A88CA72212186417A5C373B5A4
-3357E58EEAB3FD609C5DFDE96D4BA104C74D69AC17E20058D0B4E875A53F547DEACEBE20
-CF74242301FA39FA6FE6B0C22C5FBEF3DAE3B2727949C20CB8A1CA7A70C7A09E0BF76794
-BD67F51F3D3A1C2005E4DAA6CA87768747DB8A7ED1334F03D3C3EEBD796AF804DB774DBB
-403B4B0F6820033CBC99BDDDBCCBBAF0FE7C56959608DA53BF83A56606CD524D3A80D591
-AEEA4658F0E252308551371D192F88F5D8D58D2B898C494FB23463837B8249B5EA5B1DA3
-12A1CCFDF4234C772102A6F0405227A48F6B216BEE7520409C77C77B8F962977F9DEC1FE
-098EBC19A77E3B155DF2514D4E8087E0CE8D53B272735F463871AB02BEA13B9E402C2239
-73D2B968E55031BF9A929B6468599889CFC84ACC422439464277D86FC347D3681EF42838
-08CE24709A9A3ADF4621805A61E3AE1252051A00A8DE2ECE5DB8D6D415F2648E7FDF4219
-4F8A063187F64980D3216EA297178A6F87395F40DDF9DEC4D649D74736AEAFBA82E7D0C9
-05D44A8E2F02D356741C23DC37F482F54CE53DE8800BDDBCD170B8F089339C7CAFF13A4E
-2D4C4EE33BAF718DAF51BDDA347FD8760F3297CC169112DFAFC9871CE42FF8C29D7A2168
-0C6E23A2FD776240694B44696F69D11454646066BD4B6ED7BF4CF3550BF0F32FCD0ED0BC
-CE20286B8CB1645C308B74D0EF5CFF8927E1F2FAB0366BE55CD069AA7676E4592FD42342
-617A186D3C144D173DDF6E01F5E5E5A67A9648144BBD646BD3D76BE1AF70EEFBEF0361A0
-4BEFEB59E94AA5CE2400907C9FADCFC3633ABB62F24B0980093FEB72977CC3E44AEA7007
-B4721D8B35BA81A01C600FDFC070A29337FDD56DCBA7EF9DF7364E0230500F9B8A075625
-7B12FAA98EF15E011D6A6D02C84655D15AE62181FA4D0CE38A6FD6B2DE4F57B0B963095C
-95536BD7A53D0FB7C1167F251A9C43DE263D68FAD27C6C10ADFB6D02BD1339CEE7DD6EC2
-FAA687A55AC07E279CCDD84F46A6DEEBBB380B1DE2897DC279C784A9E352683352B059B6
-15990972B53695F73097EE77081F23E15DA3B489A9B088C2D7C76B89948F31D68C3F3FC5
-0243D545C56B62CFBF55E1102D9C761E8A7B0F9A547F9B0935CD78E32AFCE9A451C2F455
-DF2DF4117955D9C9B30619FD8A9EF23827E70FF05B55511185288C06668B65BF67CD8C77
-CE1363B83499E455CDF30270842A22F23D101F7CE773BD709D2E9172B169E25C2AF2B64F
-93DABC5C18CF61B30DE7ACF3B7D746EC1B725B90B767D24DB244DC37A42861250A52A287
-F2B7062AC268559A2C231F3A93E510527BDBC3DFC742B457D774C6FC8B023C02E783F2CB
-C50C4D37DD81433BAE0A8A9CFA280E7008C47CD75E1A77242B5C1ADCAF70E3C0F870C126
-197091879369A7B31FEB8086E1733E377DF5AD77358D296D3C1CB2EB54B7DB9C8E5AB4E1
-005A775EFA44328FD755D84A064876CAA2E1016DA7DCC961F2101A8FCB699B73A23CB866
-51E728C07CB9EFF654EC83A5DAF21DCF2F777535680C32E4A88AA2D7D65F166B430CFE51
-9F252F51640D7443D75CCD2F5E8494D1210B3F5BEC029002C754BF6B506B5715601F5134
-B6D95060BAC8F6CFA2249FE4B5DA5B098873CCD2C5A6E983F6C62C3C0A9274899858AE7B
-5364B4434187B91EFB705FAB6372E3A003D5361138EA6AC70C048E7E05E2F319AA81DE1A
-8D1836CD2B049800B991CFEADF399960C02EAFA33CA1D987B161234EF3A67DC53B6FE467
-857D5897446EC2D4C5FE183320F28B74EF3900815A540EB68C325F038A564A23AE235D12
-A475030624FBEAB5A8A536D0011C89AD8557AA5307A5DD4E46AD91FA15B8D6A297DE7717
-0BC90F8C526B6B9496F1D4C83491DD2FDE4CCE06420D943C5104B0C56DC184D8293D9305
-9AD7C5F6251F7AE7C19BD13AC98FCCF587FA9A223082B43F04267535CBAF822F0DF7A642
-7370794C4CE3723238828BC3459A01D8B363A6B9342CB523A13CE1139525AF0C372F8AA9
-98A3E2962BF6728F815D33AA537B8E27ED9174ED4422ECA87BD9E0EFA86566C4314BCFCC
-324D5FB4105E9A965CD258FB0A2B970FE0A21F951F3C86EDC5543B067E2CE337CDC04E30
-EE665A3725A4110E845D9025978D445DE6284A55197735A5C018D99CAAFE6597F3D58D37
-68EEAE6F5428AB3B23B5F2F9E8EFF5D6DDF1B4BEDC6D245E63F2E5DC0911E8CA2A9DB100
-CCC4EB9C54BEB0EEBB2E1027BFBD041DD39B27C151EA50EFCDA46F4273F74C85AA88B1A6
-7BA9A98C7C6D7C406D8B3F7892565B8856C77668B86A0BA9BF743C5884FB94CB729403E9
-28EA9C8ADB060911FC0E3DCB9B828FDC489FBC1F15FC2D75807EE98AFF5D841D88303A7E
-4CB6DAEC1872D384214EC0E3039478DF79CBB7C12202F9F56F3206FE61B04AECBE1D7757
-0CB8A43D3E145B0ADA7CE219CBC99952BF54D734673632B68AEE6CDA8BA19BF7937100A5
-FA294B86F7439FB59E367CEED44FEA1F4CC2FBA570AC2C32FA6D9F67474BCA9318A84A31
-107CA7AE187454434340DB2F3A0B2B41E552EE49E828C20266B88BD04DBE61AC6FF59A8A
-D065A704C18C315CE79A72B061A94558964300564DE5B41B0BA3A0493851A355ACB34BCE
-7FA00DCDF05F3BB733C9C79BE3F83D6103171A648F81BB138B4996B606A7A8A997761548
-08F89BCC7C81BB14F916F8AECD873406778E51BB93E56C25DFEC6C3778AAD6B537E6F488
-D29898E17B5D38BE14ED70D79A62B9282DDF229114C0BF9830F2E18A4717C45BF1B29A76
-31B60D13A283C7F92EC4EA3D98D2331270030A14BF9A8E07D87E66BC034F830DEFFBB5D9
-9E95293C70571BBC4B65E1AA13DDC945815FA79746024F5751F8FFE718D97B8AF465BA54
-598EAD21B323C3CE47AF7BCBA58BCCCFFFA0FD2B463C85DE8D02378C86BA7D3F44C54165
-E00E64FDF7228570A6F94C2A1F8CC5D947A470552302D6B3850EF092D6923FFD39E01F7A
-B0ACC7B6467877CC301A03136B93A57AC0949D62D3F3E63DFBAF695767877516DFA1CBAC
-F68BED7E2AC83C1612F234CB12A368CEE9657C6519908C7B046494842013EF81A4986D38
-58EAAC69D84FF32CC5CCAE2E438DE88A426365EEE0FE9745DB5B7D494C3ADEE8C6C31EAC
-CAEEFC174DE952E2D668BD28D621DF9C81BA0355E943BA3ADFF04721B586C659494D5A36
-985AF4AA408939371F448293A0C04CBE72C558E4DE12B36F823445A2267806836D265BC0
-8B279386DF1579512252A9CC6F69D83959FD3F1FC6057DBF5F28C644AD4862ADBF133C2D
-5779D96F1EB234FE09E0FFC62EDE6D295F19F52A9A6124197CC250EBF77DECDD5F8B024A
-D635E941AC0CB5CA59F6278FE2AE87F7A005A5A9FBDE7609B4DB903112DAB7B612969DF3
-F99F3D34D95467DCBA57E6755BC80C4D18EF9F440A2562DDED104A80D075F8D0C308B10C
-E31B777B438DF32A77433152571170DD44AF096981632062E3F525ECB3697F3EDD316E15
-2E502A9B8B351710611DDB75B710D6CA9801ADFB57EEBE007527611D47C181C3BA7BADC3
-1210B9FAEF3608350D905791F025960862B0B06B4BFCCE7FD92EDA6D9B2FE67206ED53AD
-E69BE630442EAB6BD2977E3BBFF487CB15A7127B40BFA161D8BA602AE211C8E3FCE684C0
-3E4B7E8148C2F61DD65E1D07355B37E62A6BFC70656B4C32FCDC5926EFE37AED5253F67F
-DF9A556956D96848B81A6E11D005984DC36E99F1874803398FA37966B1A37B8282BF9093
-65A1B89C1E1CC37B02254B75C75D77A39F9D1DBFE7B79F70AD0DD6038D824A7DB8DBBD79
-B6A5302D5859D5925B79A210210103791C4212F579EE900CB3FAF002DB06E0ED6D5E74CB
-71ED20AD85A257F1244C79A2B6E703DADBFFBFFD414C1EF6C7A7CC4B12F72811C0F0DFEA
-A4DBCF715812A3E827C06AF347EE1D72F9FBE9BE3D061DB13CE123C71C8341C2F56762A4
-FD0C1CCCEF591D01E7608B097621C45DBCFA96348DA2F80839F0EB6026AF7C14E73E8506
-FC9C1F68C88CBEE385FC280F18D7817A8606FF3FDD506FABBCC72662B0DF81EE90727ED5
-90306DFE6119A9CBC84172C3D434DDE35039F91591837F903585245D0131DADCB710309C
-596B7A8CF8839B2C347C2493234386F988A7066BE6B26F9EC504868915D71E1EB5E9AD4C
-F2C5F71E761B50FCEB823CAD364F3E5F3B1D10BA4916D915ED0040A920C9C9ECF344E685
-2B805F4B1FC9062625BA815ABECC0EE80D708D0BD141681233E5A483FB2DE7DF9B13237B
-649715BACEAB3F4BF6C6403F8460D190C77E4DAEF62F437361F6B9DA9B4787A68DEC88D4
-556111ACAB7C7BB5F2F1933291DF83425C10895A2B47330B661DDFA456F130D91EEE2A4E
-F9AE28D45DCB80DB7322DD6D7E394D475AEE95D0DAC575AE569BF9D26CBA1CFEC9DF25CA
-A1A701F60B297064A17CD878E101FD6A6F981905E50CD52A807B466465F0526BD502F249
-B8C4408C130D017E6238B5B5BFBFBA518BBF414E11E2D25926362F4EC5E83E6C26B19C04
-D68C4D6D891B10773EF156166D9CABB85F08A1C130D9D35351CC9E7E739460EAB51F3F8E
-A011A2CB3354F759E9EB297219157F02BED05B78BCD8C73E3881C835A7D986A3877815FA
-5ADB7713819D931FD05C53FC0C584C45763B6725094485EE3C48E246A1E8968C6DA8979A
-2D12CF4A97A8822BA5A066F62333C313694562FBBD8ED26D32E8D09426D0AFE33BFF61CE
-23F03ADFE9FFF17EC5063381102289356B1696475310DB04806487792F7EF42CCDB4B8F9
-9DE168D16AA56321F29B09EAEDAA9727CDE7DBBEB62F33EC6FF1E9A74696A7F4B15A2684
-968D5CF34F65E88601368BEA29104246000EF93B64098CBB9F26DB4EA1791C48E245109D
-23F39C97F87BE05A31B4AEB6B7A8E49A4648F8A6AA3EB1B80E2A0014CC18A59B43441A81
-D78794CC162D367AC2E22C4985C0EC45B9E29F1D00EFCB898807DF65A3373208127922EE
-E16DB24D335DA01050CED1BE9470624CCBBD978063F6C538F90CED1FF48A83E404FE5DD9
-2DC2DEDB2324409E78583E5C7874A9661480386FDC2FD62329D5BB33AE4B5ADE5FCB9BCD
-B016857AE69032C019ACC0D16E07C92B252C2AD5E2AB2BC9A1BC074EB697D7842AC5F61F
-6832A8942C6BB35E3802123DDF726304D74F10FE22E386C2AEEE158BEC56DBDD264A2321
-1A3D0B53183DB2F74A306D00758DF51ECAE68DD8944FAC719EF56190017CE10DA46066D8
-AA27F9D6B8BE4911E2FE16D77303A58EA4C184BA139F7D39C4B1BE8C72B8104D1FF671BB
-DFB1C1F8E518CAD156D4ABB057B622287CEAEEB574F2C202462FE2575EA7D8CD820FB4C4
-B87F022D732D07DD009845BA831A6E2A248D5ADF9C179276905A494DD35E4F7E581141BF
-AC76849B0F38B5A726049BFC2196C38B6EF6F7A0D38730CF3CF850A689553B7595070858
-97211A03A40B37BFB57363CCA5CDFB04E01759813DF0B67A693FADFD5692DBCBC543DC30
-65192915E654112AF3676DC58854D602C427315FDB2E0624D826BB60B5EBFB4CB190299F
-930D0385629EAF0C0EB37F4C01C5C770BF1F0F825A2A4B6FE50D2DB566D5B7A819FAD0A0
-0E4A7E8686E9FA936C0315622C95735E251FAB0407814B0F2F848860B942A413C7F43239
-C413EFFB4B01C1CF1BB9AD882DF6A3B64B5B7C7F0EB4E707DC5012133AB2493E7C3A88DB
-5D0A51394FC7D6E66ED529D16686537DE3FB1EA7116363C4F5945B344FDF031FDDECDACF
-34F2458908AE0F62E2D200A9B147C1FBC1877FB41DF6979AFA02071312BEE01A786E5EE1
-FF1B4462913540CDB34B783D104BE4071888AAB52177898F5537712D8DA1B09BAA0F094E
-8174BD25333D3043CEC70925961865785A6F81359B7A580D60134A293C8DF73F9896BD62
-809715A8C846915E7E636CEFD18125CDFF15E380A8901B0BD2B7CDFB80916D4839849795
-A7231BDBBFB9858A7834BAC1FF8B8365D9602985E8D8EDF33D04AF77E24525460278EF7F
-03AFD42AEC3F4201F8C56C2F4885F0CE693EA5BF4F62A8CD61F3A7827A1C40FA52228ABC
-8D19EE1089AB3E80336EF6070B9EB31781EB9C6F6E3BF3BAB61443BFB63C08BBADE7E842
-67C6A44128F33D7843DEBBA3BA7E723E91922C437D24A329E72547DE8ADE2C9676C2A078
-A12CAAEAE690A31FA18076FA77BCFD1EFB5762ACE44FDB97FB5219DCF9F542F87A959EA2
-F118162323B46DA8A0C116269D8301850EA28761CC0E5ED06ED48968EBBBACB891CE73FA
-52B7C262C73DAE25843C00923D04893302DC2EA0EEC7A2CBBFD949A3B4135F5AEF66411D
-CDE7856F7FDAA0E630C3BBD42305182E3475589B41461360EE1B72298D97825C499D9F49
-653AD3EACEDB5F9790BECB554A643AF9F1CD3455DD51E79FB0A6221C4FAF81BD822A1BE1
-AB8F8B18E4141787961546744132ECC7F19EB3E81863CB6B3FAB60D3963D6E6F106A2558
-589B07BA69CD18152F8A8B884BB24FF318A071CDC695F6D8DFF7D04E16F0AFE7BF2F03CE
-F6977E0CA4B46C24E22FA22C0B9DA11EDE76B5B511B1DDB6CDE7C314EC86E2B79E1C4FE5
-357797A5EA3373FB14A212440F6CB0821AF449122D94828CC38E44AD6C7C7FA78B932192
-55ACF779D9634B75999314B31F79003E030054010133046C6CA9AF0FF33AEB9E7C63553F
-F34203EEBF0E3F104453C1430A3642E79A4F5D708551C4751C9F4DF3862FA15814A10567
-69516410AA29695690A5DF3E7B407A2E5F05C8DB7AFA0132D5F43177388FCDB17B325990
-1AA479F19C138122AA2EC5674A7D41D85233345FAC3ECBEDE642BE5669128E17DDA2D86E
-34088BB76C64685FF98F01D48175847E0F49E2404E9C5E9F9073F3796DC575468B53F9F7
-39F93EA3FDF18DAC9489FFBB9B18F150CED84E6A4241580023C622129B1A91A8079CA92B
-1A8B26B955986833D3144BB4EA25866AD4B499247D44EF273ACB2F1637F195AE7E89541F
-C6B70C8064F12B696A0C9BB09DED5F41E19914918F7F4834428A01350DDAFF763611C173
-12EB28618542E8EBF479BBF5B120E02ECCF7D3F9638979F0602194DC2512C682FC947B4C
-CD5BE48F0CD4BAF3710BB42195ADC7DA9EAEC09E124D49E7CBAF579616DFAB94961998E1
-4EFD0128982A15580D1A2ACAFC740EAD92FAC43E7FEFB551EB9322A8EA302B573A6C4B90
-87041EEE1D7B60CF1E50A88F59EB46F1DE9F9760F21B8EB325E90B536AD68829FB965237
-5097A06AAC312372A7D3EA7134A53C253505997B4FB2BC25EC2ABC8BAFAEE96BEB6EE940
-A76AEDF4F00EDAE82434B3D5C8B854BFF71EC073A0DE2D98FDA384E4DDB1D84704BAB88E
-DF057C84DE21A1F7C4FA509F1E22C7B8FF788DA95A7215DEE81784B7F47643CB85D08DAF
-425E251EB72FE482CAB41D49389B323E66D27863D719D78C676EC91981B0E516C21942E4
-66804EED7E214B4EED83A1831D925019709A3EB1B2CE62491339DEA3A3890107CC5C486E
-F7A861D7B023B2835A87F62008BCB96748B6037BE07D54A22AA4206C85BF24208016BFDF
-EC4E68D8CA14CCFEC2CE496819159C153610C4521D312B8538FD3AEEC5FEB1021FE9595F
-767ABEE99B952F0AF794FC4D7FB0BA7B8CD73B543ADF833989ECA557EF2FE9E80C786180
-FE2B6249F45440E94C98C00ED7B95EF5AED26A9058826EEFE0377F4CF786450929E290E1
-D89E70679A7BA87CB29FCBE1A79F24A2713D182F1BF990340FD0E00012A25801BC643A9D
-DA70E046D123E7E64B884B0F8024639E055D6F7FAE5CC5108B68125C02EE9EC0C41368E5
-6F869A55ED15563BADF2F88086EAD3E67E8714AC03D2A12B7E99C2947D6422E5F11B74EA
-2CC153B8409A2A03C0AE3AE784AB05475F3D086EBC28089DDCF12C8D4324A8659EDB40DD
-5AE08B2752D196ADBD0E540590A414A6BC6931CD78CF0D78B23080B4D5C5D86B9E4E0EC5
-3D774845DF7C74D07F242655018AAA23E64165DD462F5D2A282B5165096732D55A3946BC
-C00AEFA41085AB8F2B6BD34C065DA2C9C2999903FBF17E9E7E39E874981E9A850504F7D2
-A1B69C85F532C6749BC675FC181CA05F486858C0F22BFEC83F14D4754C3C42F0AE0ADB56
-9A48214A9DBB6D163E528E4DE29157A8E7089EFF2E2AA6AC85AAAE8925CA4A019DC38668
-418C964DDD2EE6F2B92BA48E10789DEC415FA94C81CB95093F71BA384081A7A01D3C2DBB
-A934E37E27B4232C8A3802CAB57BE8BC899635B620F54FA5639EA9BFAA5294E57856664B
-B3B3DFBE40DFA0E09A14ED2DBE9C47CB032A86D9482D29959E21FE32CEBAB87FBEA9D283
-7044E2161D62CCCF0A3E3195F874F78AE00DAC349EFCBA46A8419CE0A7788B1A2527DE7F
-1908F9C67D4C59DFA016D21F61D3F29AA54763F81F2837C5D4DB2807F3E47EDF257588E8
-64FEDBD51B1C169035F1B64D80EE209C5A2315B961D33E4957E11A2225F0E8CA0BCC1E18
-9428EF1FC4BBFF887EDF1375E2768129D8558658D78D876F455FF4F0C65F35004AFBDEC0
-F99C007905DB17D92A64B5D1A390233820D41BEA0F2B732B12BAA6777E96A94F23CCFB02
-2AB8BF09CF9EE6960FFA056EBDB46B04B8F187D05CEB9CF0BA0F796BB494D5F511010E0E
-14BE33E45C807F4FD23AB76B0F0E3969010DB86834D787B8E0F92689807033BEF513DED8
-EB3EADA76AEEAADBB191518A950F227A0ACBEDEB778F43FCB3A281F7B7C35F58BB1B3814
-49E40140D8059E950413B9CD3F93240629B030023DD6233C59ECA2035392E64869AF7FD9
-4116ED71B821F0AEE5A68CD691653C2D6DAAB8AFE466D5D7F1BC3ADD65C0AF0EAAAA1486
-DEF5F16684DFD78B7A41F7816CE8A787019D9ABD2F4E4253C9229A2DF73C22DF22B93A8E
-4FFC4769448A3E00CF85A939424EC3856CBA520420BB7001372D2F703C5B36CCCFCC5BC0
-1619D9DC961BDB0D9A2FB18759149632141348364E794B15E7BC79420F0711382127B262
-292FBB7F4D0B37A7627E8EC5F5FC374B98B18FF02DB2F442D8DB5ED06F90C3BBB17D05A0
-5D7D11A6A7C2E62F15E7644ADDA44F1A3CC71B61645C7497C242DED8199E31DB0A247C08
-1739BBE040E7CC7299BF09DC0CE4CC6C59BA7D1867CD3CF518ED80959FD8B26748EBFE0F
-DF816836E57738FEE205BE2941BF7F155FFF82EB877B7DEE42BAAF4BF2E2057453611C33
-B2FC235D7141ACBCF65F068F2A90A86B8D19B6A0D7223024B42CD6D71C04EE865279A1D1
-6A401D2393058EB9A16020EC8E69943F631333D3C08C9892F8FA620CACC3D1A4F411FB78
-A6CC30F441BE858EB8ED7A92164C59FAE8C5C6F275C2025FC60E326FC2F7CD6EC4612DC7
-1D58EC6E363D90BFD5A93F552F7C3A6DE059A13C14CA2C15D35E1E5E10775ADC9D925185
-1ECE6C1AD5BF430846F62165FB21A393838DC98C2501D598E83EE90B31378D4D92CFE8C9
-869538BA6614A71D3F29E455DDEF8321C2AD78CC2C0A832B3D0F1C09E3B5FA99B121C283
-0200791629A4094DE00EB9AEC55670263DEF10783A699D69BF861FEA783A51937E1BB83B
-D96026CD631C7CC3C7EF3BB698700B307079EF2F28F52FC05FE409E020B5E044D1766C37
-55064E5B49FA1FCC37E6D8341525F9DC92B35455711091F1229AA39B397E9ED05EEE7797
-B9A9EFB8FC162EABECFD465756E8B747A3041355178430CB089E1CA3783DE19454F97E0B
-3B24813D695BA962CE2046C8F2778B0A7808D046AC0713E1A6DAD26033D153421A24E667
-AA649DA942425C45875437F703E68F68AC5F5AF9B4E087FF4AB87DA00D174E090D834BB0
-14B00764C1CAA2AD4FA2B457858F2784BCA840C7A8BC929505056E3BF3FF533D94C9CE14
-76DA773403FC3F80E1A2335699A55079B6993B0FB187499392167930A874EB1954E6DA45
-C9591EEDC1E8247F237C8657B6FAD992B9426D584E116EBAD9B9F2214A8E850F541A208C
-A8792F3980B4CF5E75970884DD7583FE277F82ADC1FF35E5F3FB216AB68C353B25F34C0C
-F2C4A60B1E51EE88F7BA84FB1C23601FA2270049E573C05218BEEFD56DF0A648665DB6B7
-81C3B0B503202DC005B8F2F00430288086BC3B4D0625BA2966630F71DC0483FC43DC4AD4
-AFBEFCE65FB61CE89F07FF29B9A9007700503043B24CD9DD8BF9E4714CA99B9504BD7FBF
-DAF7ADBAD4168CBEDD5EC802F2DFE773585C5162E564CF1C39BD04CDAA50C2032956EE47
-948EE6628F9EC006711877235813960C9926CBF2372B9329C3CCE4F4190FACCF33B25BE9
-BB4DDEB7E91E8D8ED843DF6F0352E51AE0670C4E0A91E78664D5F88F77F6B9EFFD25071A
-F9BF35C2D572275E5FBC2461277DCB0DCE505C6DCDF913CE7A99DA563AC06E1C4B07D7BB
-0A24BA8CDFEDD3C16107DA2195FF9677EB104C08C085D6364BCB745BDE0D313D93E318CD
-F7929B299185C098642464F491E64EF9A2DC1DBC34153495AD62F886309CC6B6571D6177
-91D94AD5A337912569067DFA1311EA41D5455C24D3B60ED3E698E10978C10FFB9A7C2137
-92A6FC31939290392D8ACD3253593287DFFC13CC9D80870AF32A2B82AD21C49560FABC56
-48FE43EE74D71F0E6D8008100FDC812029C4F1FA3ABE01A4EE9D99A2FA574F93BBC6F17C
-7301329B2363DF36FA029621D478A795F9D564EE356CEF0A1E60ED1DBF5FA08590D677D0
-9A1FFF7CF8D657D3D1CF2915BD56B44BCF420FF4A523162CA1791A56287BE773D74F7246
-F52C0D1E22AEA987241202665D0F5EA6391ABF31F16A5BE4353FFAAC2408A0680A33752C
-D527145AE349CD781E339C8A9D87E5C0B1312F5B3C150FAFB4588ACC7D6357A5A3B4510A
-556A7FAD44643F04BC6D42A23E83640091DC70FBE51B57A7E0EF1E2D6112624AA21136AA
-A1B1C6DBC1D1515491F0EE3F9C4338B58E3D0603E1C12A0588118F9261139CE44B5183C2
-AEC863C7D7CAC0DD272FC5142FDD80FC668A6CE709CD7F297DEA655A767CB8A088474BDF
-5EC4263121C7B3F154D8396B2470FF226A397257FE5D24EFBD3AE08CEB5CFE9194DC4C6C
-147F24D3B36830FAB0AAF03DA1442C1E5E77951538CC9A022370A8C3E39273E4B8E3FB8D
-28EE116FEB770A6F223CFFD7925C64CEDB8A7D66212CB443B2A0207EDF102672ADDF2084
-5C2D36FF281B33BD3408CF628D7637F1E92A5D2168DBB183BDF98D99E5A68D9995AE6123
-3675A1AE7BDBD80642E27D6271437F24D28884C90351E819D9785E556334E20EEAFCCDE9
-2929DF0BAC01FF12B56C2B4EED3E554F3ABC0096BC7E5D9409C923E9ABE6032B20784815
-DE1C1663D6EC86D7476A0E9698CD3B201F5F9CBFFBE604C4C2E823045473B0381B1968ED
-20DC0D0EC89487B4FFF6F3F83A3D68EE78868FE5262235C3609C6756BE484D87923175F4
-80A084A25B5776FF76742A70F7A60D8B76C3E13409A38A258E3E334F66FEE4567A68BF1C
-8CEC4A80CFA0361BF63B7A0D5A0819C85E1A9EC223C0569857D730688E6D177E4BEB8E31
-F873625E39573842035C5C6D66D923654A8FAD9421E1026987A9C825505DB5382184EFD3
-6C84BDA96B464796D72571760CADB46199643060A0552D8DF95A9E6C30787CBD2F57B0FA
-D1FA43FBB1E488FBDAE8273BA4F191398652EC86743D32FD5708673AD1D39F62425934FC
-AC949F047C873CB94E4A3CCE44A458EAF26953DE54F645CA7B35553204A0F5C7A32E92E5
-27785DE73A3E2A3A3FCB54EA4E395E73C5C89F64B77EE218F935AA4C42106A33C78D03A6
-90813236AEE3E50C2C44323B83401444174174DE4895D090CDB64274B70F557204C772E2
-D1C47C79C1EC238D5B345F7D9CBF27C6B98C5163E6D1D93F23F311DFD594658B903480F9
-A475D3A3D9BF909D042CD76AF8D574D71BA12EB33259C745D3FF5403E579F794EC95CA20
-9959A9CDF439138715101F9FFB3E867A2FEFC41EEE21AC816B7E48F340634714E98CFB91
-E97CDEC4C25CFF567676460102255E8BF37C8B4BFA821EF0165779094CC8ADEBE5778333
-9B9F4DC83DE0360DC52628543D41E0FC9EF2EA434DB9520C2CF5E74863D9BA197F8E7A97
-912643D24CD024E6468A188E0D1E903C48B9A996ECF5D9B64A64E026046E90F5C92CE2F1
-260BC6D4F298DA5A10B3620C4BEBB5C721B830ECC1DC8CDB86AAD6C20C9EB56DE6520D0E
-29B6C3EB14A93D43B951CC2C690B277B426B84E4BBB4E1719278150A03C450A9FB44F6E9
-16DFC8986441969A50F06A4483EA651839C31E89A9E4644E96094DE5320CE79DA5499528
-AFDF9C150A4CB53A4EF9BAB6989BA5D0703A4F2F5D4CBC95719C0518DED3474F875DE58A
-3A2C369EDF2BD851E5F2E0BCCD47A0452C8751E45DE47CC2C340EF4AB6F4F885B0C2C21C
-8E8B252249C5B45EFA5B3E8A27CB39556A262F03A04639280ED71F8D01E12E4FF9D37C3D
-3DF6164A4C300E495CEF60F368C4F5277FDC5B27E369483237780072A6709BB6B1E32F33
-53AEDF5A0B1A30EEEFFAEC01A0E9630E5A50BABC081DCF71997F181CC310023AED5BA74E
-769DA4D3FA84951BA80EA57C39C805F1C4B42C7673403CDE1573E1641B76F1AE22E57954
-48B4C46AB50E3EA8B82FA89C9BEF737337168E18498C3653AC2BA51C757A15A8BE8B1675
-FCB325B5130E13C36A66E3056C8A0157DB84F7D6636EB06B83FE198579DF5135C77839D9
-548214B53BD51BFC1EBB8CF2E4B1ED77EAF56E953221F95D30D6F16DCF13A57664DB4DB2
-B45DBB6410A9963DEE6496DCADA35B5AEED478EC9297FCB64555373F4ABE73D92B97CDFC
-0D83E4D2E80C6433533451BA99E9B2777492AB98DCB69C2AB9737E5A075FA29CB29307BD
-315A4A67E7A5519B55CD6DC3E241AA0A067B0FFD337D72FB0B5B290982EE91CAC2504A02
-71315319A641ED197E14017EBCFF2B124E1D449C5A692BBD0E7486686DBEE2F15552583A
-A52385CC9064ECC3873A1530112161BDE2008B484BB616459466E66985829F8415D83DB3
-4736B604DEB0E730A3ABA6D04ADE6666E303C40BA9B35FA5C753743239361A8AD23B80CD
-AEEC9B8BF6CFE55D9EFAABE474D9BE5F06255EB903315DCD4E2D3469D08AE17F2813D7ED
-F8B3B5D004347932D9B38955E27B786CCF0724784E0D545588B51460D9C2572C6E4C4B4F
-9A01217FB8F2FBD0757BDC1882292CA04C24E7828D9A6F64B151A4EF2507C3D3EEB98F76
-77D041A5DCBED1BDB61B43034F4F6F5807953BE78631376E6D3AC14411587526E7DD2E68
-9D6241942A0C990123F2FB111F926A68B809DC5CA2CDED30262E71CFA275767F76D5514D
-9B7A435A07670F011DDDDD31D8B944151A6A47C6EAF3AE44881252A078F261814A06492F
-628BC815F32E0B889863A15409164250C9ECBFAE7A749AACEA6AAA3FBF9BBF40722DAE91
-167BFB833791D3426DF713F829F60F3F9638E1559B82C3704E048AC9879E4AF5C70C9641
-BBA5C04816B4EA6CDA7BE2DC728364587A5E7FFEB8DA7BDBFCB842FCEAF179244EC8B247
-7AB7337897FC0946AE494BC487510CA123CBFAB3B7EDCEE9DA82C37D55AAB651B887E6F0
-5A71F2331B1FF033A1D553186C786C224B1CA80D6693F4F6A948E338BE6CC540E86FEFED
-280166B01B5B8F9B278A91E1BC632C3B06A4BC08530D8F1C89A6928E91B8E7C393C9AE2F
-91F826E8AA3E11C72CBB0A552EA0261D5912A191127D351B12371E985C6DB66834869EBD
-746F758FB0140C248852AECB41CC4972B6CEA24800F2528CFA99E667FD10EE57CF671099
-527AA11667321AE9277E4293811190986CEEFE93FB7C4A1F1A5884BD786B13F8B73A1A46
-19257501BEBE4E2A6BC3DF7BE7451D9364F00EF318111A8E4FC065022AF0EC88040267E7
-BA268C6FEFBA8AFB91120EFE066B8B23E40A0A0F209D3097881CC2B7141BDAF8FF7C5964
-4C029DDA226401B9B98C6A53AF6A93B39F6E3673A3054EEA3CF8CAFADAE0805018CFA969
-7E879B9C31521B340B288FC8910E5B6E061A027A4C69DA1BF038999D693108AFB70D0DBA
-A90F3B2C073FE4251064E1FC887AD3708256487DA8EEE60795CF11DEAABF0CCD9CE8E372
-AD4CC8C8DC413B9D2019440173F6F83CC66ECA28C8029C1AB834DF7BF2AF0E0D86C66BA2
-6EF90A1761FBADC03C1FE598D954339A2970A5C9EC56236D9183E6155A511A272D005087
-14F8749B03A5A2B9DE2886B539F1A377FAB65ED3437D55988512B1B1C638015B0ECE68C5
-3AEC61020E34BD8E6AD7659399F0E1D8D23F5EE282BC764249B664D75FAFE67CB5A9DA4F
-2094ECB30CB6B68D52AA665BBA751B446118C74148DF979A0FF173364D79202606AC2756
-8D41821B1E4D4175411CD766FCA1C25093E6CE9A37C2048755DB82D7448526B59766288C
-9225108E8E86261B57C521991CDC273C0BD25EF4434670C80AF8DB7300F26A9701537DD3
-8FAD0BB2E9EB8F0FC9F2C8629BA97AA1980C39E9BE5740501BD4D57D71235C84C3EF6B4D
-CA3D1EFCDF79B8D4EB7C29EC5AB15EC38B2104745E45235A1F37F19E921CB2213F1A91C1
-C392817E7D3AD3A6ED1EC8EE290CF5B1CFA2BF21DF8B9069F4496B7E80E7E96673B77EF3
-AD7B2FD6653510AB77BBF1AC8A07DDE48A8C2AD11EAF2CA95540A164C1B0834106FCED12
-E179477B185DF43148633CE3AF60539493D0C88173C0E63CB5A44790FE41C211966EE03D
-424F492C2C87C04F0C28CAFEBEBEA7D11AC959E0C8A88776B4372E356C913943BFC88983
-1C8F95A399DFD02779301D05205EBB921C1F52AA522746CA533AC829EBF7235FBCB0AD82
-69A64B2C68748ED4843FB583151429A1E9537CB40960FFE9C9340CC11BEE00EC7005641E
-964F4B0183C49262F3202EB6525EEC66CB68B27185B7DBE343FBFE8BBB34393DA1FBE929
-50702ABD341F45EEAF0EE66C848EAC04CFC854FC058A9418834B4F18E6D861AB31DC1C42
-DFA8D939921067BFF8815B708537A120CDB13E775802C57A0D0CCBC6ECD4CA0DDAD91F01
-97DDD9118990BD71A1CB241B88DDE7EA4F13236CBCD7CA64FC858CBF1E5A38C98C19E3AE
-AC0B7B256BA7E15F0E49C84A437DF190A81D0E179B2AFD03A427F2F9AD83DD2A4EA893B5
-BCDA0F09C419FF0D0EE4A811886E2784800865CC8177D4E80FA005C014AD9B124D3D060B
-526237FCAF98F23D1F7195F72CDE4E72B87FC4A872FA95441483FEC58EDE0C8B97909B95
-D5FF189C0D49053B187E0A1A8AB85DBB6D765EC78742E334378EDAD7F2FA77E9CED5F652
-295145D463126659E0F6BA982BDC32363FCEC79AAD13248135E6A28222BE0127D807306D
-C94C817B649AC020B8B3DDB18CC5B05B83014A10DB5FB9AE6BE4A078FF056EF661B2F4BD
-B422CD7E80AE9B6835330AFF67FF1024136EF097F4DD5344D37FD7562802B2A1713431D6
-FC1EFFEB21A02267D7F6B2552C97FBCD4BDE4214DB01C1376F07928CABFB1106B02FD2BA
-BDC8C71D0278DCB64375613479FBD3D7D893D279A3FBE92BC92BD99B6FEF817344AC2DD6
-EEF172D3BB609E961180734E1B4C4F4B2D704BA4D1D3103BA4F62DAAD46DF7136070EB14
-549FE8C727CAF060D877D22E21F474F9627507EB1FE2A28534789407DB20FD6D6D9F5CB0
-7CCD392440EDA0E18E1A5EAA7B2C8BEB249A627EEA58DCA375DAE4EA816AEE7BE8BD92AC
-AE63C97BA1DF13081EE64198B83926153C8AD6F1C86FA73986BFAA5F0EF5091A4B591BB3
-32ED4334E6D67A0288D390261E88FA39574FEB6F7B19B808DC87426BF13BFE2F76ED7103
-87A5283D27CEF752B20D831D8494A2E35DE7F68856AFB67B6EDC883C45840C6E83F1E9D9
-4E4351D50BB9A03B0F0B0527CCEED0081C96A029EF47F68A1BFB0A5DC673A0C8254216CB
-D84693230437E107267B9244E2287BC6CBCDF73B24DB5B947D5738568471FA1FFAC537B2
-BF13C99D56230D49E12AAFDF51B03265A9A14529147FDE45C234282644C9BAD0C6892861
-029C9F27E4AE13F8278E135E89E81A7E552B11DCAD49507502B47B1580A6222672EE9C3D
-A05B74A4719A849179B6C93BECD1F18FDC9CDB1EA52ADF96D29409B9B9DD63861A2C74F5
-1A99843FD141AC60A49FA6A134FF4C4328AA9D95BCE4B89B4BE4CFDC1DF3603DDB0D7DCD
-E1A3FEC7059299A216BF88469B5C9B16C20680B14D414902E8A7D80E5429AA24D94EFDCF
-500C1F1ED0F3853E2715598355B9440AFB9A8D06F6C038EBE0574B24E3A168E93833F462
-B24FA106DD40C967878248B2E1D58CB8E4646DE1F2B5BCF7FC02B4BC7DF7593737F583AF
-03264E5C35FBF1227DEF2C4F6889C2F77C3B84638CB682645D0F2E99E0C4EF9ACEBB11CF
-0F658F7D3163C488C6E642B5B03C1E40F69BC2293497374FB157F42111ED5B96E04040D1
-8C0020820B37A22DA38F4E21A64FFC24131CCA0F575529157E9A59EC6546004241A8F51E
-9E85066AB22B72FA003CC868F965DFC34A2A0055FF86443CD3ABD3EDC30E9196C20629B2
-AF3A1A0C42C88C20449F889A39BDE45EEA0551AA0BF0E9641D7D1FE0F3C286C7EE34800C
-20A72C954EEE657FB36E10ACDC18D165C8DEFEC48D154FBA121CF1066508A075A669612D
-26B9309F2CD33B2109AE9E6B1EBD4391F7B66F625367766F8CF0B8BC2D201124CFD9920C
-B61F71C4781B459ED271EED5937FBA4359FE1DDA7F3907ADD7C15ED021E7735985E6AA8E
-F21011A13E5CED0B69877C636D293BB99AE7B9457E8C4B84C4EC695C5944622B5F47DEB5
-1F3D653C7ED73B53D16B504E761B8C105CBA84E45B408B415045310CFE8D693AAC924ED6
-C61A12C7B0CED04E630D8A04F8838F286E646960120FE35D0D13F9E273DB647A999F1580
-C1448CDA80B9489BB8E5E4507A7A5B5329A2E962EED597E4B7C4E6C72740EEB351A3364D
-0B0689BC2658395E2B69A8FF0600EC50868404BAF6792A59983C6E372DDBEEA9953870AD
-319849F018362B016EC38C0B7F947402449352CCCDE055068417434416F0475EC82A5441
-987A472F59AD152C56FE81F1501E88D0BA843083736F783C366CB18C8A787FCB60E6F8C4
-3B56BD458D9A42FBFFBE128C928DB06C7BF8F2C0FE209B25DBE0F28C1CBC8328C8E868E1
-F1DA76549F34B6FEC13E1400B2F9A66E00D89CAA99B2DDD6A0BFC73C09C7D774CC05629A
-E23AF62DD1E58D3843EAE55452281A0DC2B31CFCE75A7FEAAB90041602CA5293EA58F8ED
-C18635ED0234B9799A12388C2AA469FEE8CFE1B112F7BE610990CD51BB13D955CD02D571
-323F565D7BC240FE71E3A3A1B92BB9A1C7EC2EC6406F06AE7C0D14262319D389A7CD8D34
-D41313DE9B2336963A5EC892A8051BEEBED24ADCB1F0BBDE77C4E3AED1D777C0EF2F1AAB
-DEE62B1967964C98CA08561EA234879DFB0F50BA067E1462CB63544786D56935ADCE3E7B
-399B1B3D0098DC19E4EFC04922CCC28609390A7B163D66853C2C8FF94591CD1DF499DB82
-F0F6FB7FB6D3571735528F544C16786CFCC7FA10D28FFBDB6C455AF2A6E1F6BECC080B6B
-EFAEA5D51607A260620EDD1DC6E8AAB588BFCAD39A98E028BD26DBCCB149D818E0B91BF0
-8AFB55C618FDEDC15ED7055521BC90689E61965FBF22172F584827852B6DCD8FD466953F
-D16A806E20C5C96064F28BAC94F3A7818B18EAAD9BBDFA0FC302E663B989D97A76E925C1
-CD1307E43C97F88DD731AC971B862E99633A531788BDAA4847A1FD124660B00000007168
-72191B3F124402B990F3C379862AE823A3646762EF68A69D3AA91C56F50B10807C915447
-38AB8EB6C01618880F72A6C2DA6764158320CFBEFC9F23A0C1DB0AED395C70B28C4D47F9
-7C5018499E45AE5407C03CDFA41D02E18F7AE56346D872B03CD5FBDE0D0DBF11C1FD313D
-E0A7856974BCBE0EB331CE51D190BFDE4C08BE9CFF6F2A32072454EBF4DDDD1E3B9CDE7F
-9ED3B2C1C5C60A12813DD88D75CFA6A9CC4583764D40C7001764B69A739EC079E7ACA5C4
-1DDAD7D15C8807719EDCB3054D9DE3DA92912F019B50B62C8C4AE9488CD7D683565B2031
-DBE9E7573595ABA60602B6023C1D4DC8370A529873DFF92DE908CFBFAEE97B0273CE36AE
-6C931F5282CD2341DAC0D6DC59A693FF4AE740E77322F8073471F6CB3CA99E7A530F5E82
-7E4C5185E015655F784855E4989F27CFB02AEFD20C3D0E9E4C1346ED248A6EBEE2BCEB80
-1B912CE4AE5475DCD5D0516397CC74589AD3D52E70A9DC423CAB42BE428CC2DFA56E2C9B
-DB4F083F8A7B3B2B9063EAB3FC255A489707792141F87A2FCE77B89AF7099DAAE3EBBE9B
-3655691A5538305B664C75DF2DCFCD53C87C38D9EDF8F7DF8A808851ED31E8348C77CA4F
-3AEC6C2BE721FA3CE9D54B72B414A0992AC3A9DEFCF40579F59B0E30EE3A9B599772936D
-5E5B921D5693FD702A30BDECC82AE6CC10132C2B6C697326CDB3201D35C4396887B5CD1F
-1909A0C3A19BA71AAE02E8639B6AD1426866196F0F9F0DEAAF8BDC53720674296BD41161
-DAA21FA4534BA100FA41161734E310C6E88B8BACC050174028F4DF483785184B30AD1BD0
-2EEE2F93A187C5F48EB3ADB9D63AA4D52D76AB07B93CDA7F12F3C7D9E58DB297D2048375
-5E5C6D1B8F9C5C07A142E0A68177BD7AB073CFB934EF14D9616B15BA2B38AB4FA4B5877D
-04F5308D74D642B46352FD84B4FFF058C282D308AD2AA99270964618A04C0E522AB7A4EA
-123FEC9A47F13060E534C0C58C327B063D59CF96413E176031FB21F3AF9E3BF1BA6521EB
-C71336E468A8FFD6AC2EEAED7ED016D2775AD2A7432534704B399BAD93E0A1FD5C8E6FDF
-E8DE157ED4FBFA62C5F0D12DFE4C519713A76D6B2D35FFAC7C0B90ABAA8BEC8D2221FA39
-5685428736398AB87F9B73F7094E02A5019A360FB5E0A2857AB2439999377C9D4B1529B8
-D8DC1EE0B68D1A5AE1BE39949A8D53F9274D51650124E4BC873C07FF0786CA64EAE168E3
-B8E0210945249FA48059080232CBCB56A910E40D14A479F193BFBBD701384407A2DC56C9
-BEE9A4F3F011F02D0AE09C3F6EE0808336C70C6BD82525858EECB6521238C717469BE58B
-6865E2E9867FC248A82B44142F5E825665F6780B03015A6CD2B1592F36B7F1C03D58DCE1
-9588FC260148D0DE42196BD052136CA1BD82BBC0AAAC6ADE4500B9F374DCE51779697BFE
-670245D126066964B61D59864EB636C43D6ABA70429614DB400CAC2ED06D85D3E7C3D9DB
-B5E2E7EAD6031B9798EDF30772FB9CA88F52D2A56C1CBA8F95202DA92870CA6EAD0358F2
-183C791783746255B2E87EA261A1D9C4B7B9B4174D412BDC01F4AC19DA76C423992291A0
-B0B85C1F62AAC83B253D8C251DDC43D921AE994E7122F7A49EDC473B0D9B71D8801A0D43
-B589E6C1395255D3515A637670589D6BF4CB75870D2BFF2491B7DF7EF95F04C0531C3C00
-6BA3CBFE26F52EB9D041DB138FEF272218451237E60685E66390659CB98F178E3BEB8834
-6B1E49C6D9EEE0677281D460E3AA55250A0D8D37DF9DDDE21F002A70E2F9A22F0AFAED24
-80C169B2BEF14DB7E75ED43E2317948F2F5F17A8A301E5DD65D1950AFFB85A1B4A26AA89
-104519AB57E70A3F506453128E1614BF850F371F29A9CA224B2B258C9830F3046D4F1C8D
-3DCA9AAAC020617CEDB6FC6E1EDC69E17812FE92EA38C97ED91987A65C72FA48C353326C
-DC7BD08632C96BF3C9A7C095391BCD9335E8F254E937A77855854EF20235319423D2DBC7
-DD2435B9EF9B9CE1046B95421A98E910196E802263650E5D2087E34E384ED7FABFB6DBDD
-48342333407D7163A1B1031F841AD55FDBE7C1553CF17CF057652E243CDCFC8F86D8911C
-C6DA2FA6BD522ED649C52DB102498790D6D55EF2AE27790595E8D8489EFC05F505566958
-33A31087D230F6041DEB7173D2BFFF6B59E643B532C2649D4902CA7FBD79F3347ED28EDE
-D5EFC41B0B6CC97F6165806BABA7930768FE8E4B8313A5C9D69BF0B029CFF51B9470A22D
-98A6257A6BC6B34F11536130A980D985E24F69E0846C395DA6C35C036940E609F9677B0D
-EA2B923A92626EEC8E224E2BED76CBCCF6F2DC14CF8D90BDEC80E7088CA871846C68247D
-C4912B6DBAD4C97A472C1FEB6B2B460929E374B23975046E6081E210116ECB0F3680D99F
-E7BC4794EA19037638DFD2ABEB7365F2A7BDFA3C7766B3FF642F0639D897A3F0772EF880
-EAC10E1BA44C207039C64D2DE51AB6F71E703F36B24F9BCD0179853B815DBAB59057E8F4
-7C74B338BF128922C8057518CB7FA34AF8F590BDB76296E4258570F5CDCE24B4F9755C88
-F4F3CFAFFA1EF7EA5052A2C7D8A823D0A1EA7740A726FDD7B1D28D17B01A0EFCD601F20E
-FEFB1688FBB375573F54EA1913230461B54B64174D7C99ED8A2DD269CB60B02050A2B300
-C0E7039663C388C4670BA295EC5BFAF496DFC11816ECFB433AB94380D1982DF52B362305
-289A0EA2205C91DAD93A6428491028D50A987C5501D0FEE5509196EFD2CD36D695B71289
-E2A4A96BB065C0D9242351C6A3732E49D51B5E472F9EF2524716B7478AB7460F43267CE5
-6B2DFBEE8D34E1BA79A57B175D8B9496BA2C806C2F6CDFDEB0DCCD0D813E79E766FB8548
-9087D61E7506F04102C2DCDE9B44EF10B38443F7207B707A265E1111FC0E411F04A64524
-3465AE5AD4FEC01561DFB4C1384B8FF54A0AEBBF189822B63ED986B8197B3B1085087B01
-B9EC606AF3C1CBEF701224ACAC1BAB4DE76FE28BC7F538DF318EBB3CDA0E9FB06214F497
-BC2926399C79CCC70A464C2B58D51A52BF06A5650D21929E4C2EE5AB624F5EFA25E64B63
-2ABBC3285A79C5576ABE016283D08E19246B77166612E83B2244A1BF5A7CAE45A691AA7D
-BC31377285E78F094870584C23A2216453B9F0804BBF32FFDF810A2DEE41CB2743472A57
-D050F61E285D232C6EA0C2EAC1C0FECA0E489970C7B83D6F1D64B187BCBDF29815CAFF8B
-8EC2AC2705DB255240A5A435A0B0AB6F2C9451C7E14FED26DA327D432A30B672CC7E0D99
-8653AEAA0DC7FB4161E604CEF7464934795E01C7CD625A2C7C4988CCD213C19CE963C6EC
-F45078DD17A158FB2F9FD1241FE5FE0C45D05AF19E5C5D5AED76D297414EBF0E95E451F8
-B61EF47D7A80B240518FD2BD42C53B96BCB17F04B850CC889859887A2EBCA1499C10D034
-D545C5101EC917FD27B1F87B4460B8D5036A7072070ADB83573796D07A4C4C5348FA845E
-C31C83BAAA79D880FC9965C08621C9BB6A982CACF2E9076CC88F14F4E2B1403A980AA310
-33CC1C16B108D3C390F95E87D6DA3FB4E9AEECA82F70424F82C243D0F0DB273FEFA8F57A
-CB2994DF51CCD21C45A00F60EED00CB7C2CB6D131A57AD4CC98FA2BD0313E15AB964221A
-6662B6319E305F2D2255741DA5465C9602E7AA3558B98B906B4AEC3AC8CBF877E51AE0A3
-CD1423A0AFD38716B0B74C7F492412AB575D9DA05634E20D34026A1E02B58806AE95378C
-8018A42F273FE95E72C6E8BC54646FDC010E807B2E78AEE753E9A223B8B014CE464AB7BC
-5C6FFB19A0687C0FD300BFA19FA2E9A65FD2A4BB8B5E6967289A70EB18821A32CA0751A5
-972A6F3E3054E10972F59A9DCDEFC5DB1E9FDD87003B98228BDDC733DF066CA5490A902F
-2930EA9C937B586CDBD433532E6230F87773FFB354BDEEB778ACC289F3015C5158828790
-BD620956700DBDD6C2A9CC76FCA2868936D279495651B5798491478B1B77CE6656E8FB2A
-69FDFCC2C8FE04C5C6AF6054C01678278164ACD9CB8C7BB41E0A4A4A3513283C38B03B6C
-27E66FA995F58346B724189632494406D7B8E6CE243C5BF1CDE8C87AEB0E6F43C52D5D3D
-4F3F9C876FB9ADA96302D73FD3DD51D82E1314024C5B1262CC009052C4E598A2B7D855B7
-BEF4FB97D65D8B26B69CA86C173CE21A159B3765FD48A6E978137FB2C7B9C4A39A94EB09
-A9825BCFB87EDB546D917F4BB3B618906C643280D3A33CC87311002B465D440C5FE3B8EA
-1C3AFE1CBA90999683875070513E14D37D5AC6214D5E38748901D3740350CBABF87ACACA
-FBE7CB2A97332D9BFED8B0A7EB95BCA79E8D4D6A80C1162A49C73961822A568D43BA71A4
-90E3571845A95B8AC2313098F7C3379DB959167CA17281F8FC7933F10BAF70A573981F5E
-02810780D9780AE94EACC4F4A2D1BE14649E1B776175FB5EAF25DE613686161995472B24
-86AC004708550BCF2CE0CF3032A02BEA90E1163319C20894648844A936D39C7A266060A6
-093B59CBDD59E4FC67AF429BCBFB4037DEC87FD9CE0FC26D488C1987E0D6A79AB19A7601
-3C3286ADA28464BE78C5C591126978FE183EB480403432664318992C47600105BD1C223C
-E78F8F5B3C1C56F298C28B700886B9E467E7ECBA6BFD0BCA114CC74CFE8252FD9FF4C39F
-AD3071CC0E832A9F4BF89F9AE4FFA1FF02CE797052DDE080C175AE529C61B639D842BDBD
-B8D349090DDA8F503C909349A69BDC6D972805B15D2E8D321E9296E3E0965E7BDB040FAD
-CA90D1BE06E438AB653E7553EB43A4430E3AB1A43BEB97715FE97A8B76A7B5B1262DAA01
-DFF0259186017062090F6B9A35B9962DF2F7EB85B6D20A693B1D925DB4BF06996F60BDD4
-6C2381937E21B3299CF3BAA565727DFBFCD38BF24143D400CF99A7F3D09D17D5E1CBA49A
-9C607D434EDDD31BC70D277CDDCC5CE03C001B53CB1D448A87DB676F6BE0681BF57F66C0
-43BA1BF6889DC9F054A544C4D498B74988D5DC13262AB95205386343ED6D3C077B058B57
-4C464D02E35DD342CF013B84CBA67538AE13A3F50BE444014ADF085E95D736139E1646AF
-7C4A401E25B3511364DA040AEAFF801A664E71B0D2C6E46B510A97D5B75B2377E54BC7B8
-C4B368602743EB5856E4385C4FB3F364C54239B5794F69E39791CE5BD967BD03E212B8B6
-E14336AF3900878E5031993E3043B23376975A43CB032C9D9C1E485CF34F3A1F2055AEC7
-9A2D2E68CF82F1CA0DDF7200B9FE4172947540769AC5FA6AA53A87E6A79AE9CAC84C0FE5
-F0C0752F85329F95AB21AC314B7D32C538E70112C12A34DF2CE7127E5696F88CF65BD083
-5E57CF98FE8AE4873FD1EDC9F775E6920E87000CAF9C8B7FE3CA5A84A5AFE056CA8D5610
-69F8979E13055582F11FADFDE7BF60FA9EF36AEF0D85F29D94CE5C571574EE03FCE5E5BC
-A5B2D3E4FA107FED636226B59D00CCE51BEB891DFE12F04BCEEC13606B051D5A50B08F93
-D0B3ECDE4EF0DE6E06829E559BB2AEBD02D0B7A1C505743ABBFE54A9682123C3695E86C7
-54465D3A60369CF9C3FA800658DC52000B8F6915A9F5549849EE092CFA885BD5FA96E6E3
-D04DE784BF6F17F333AC90FD8AFA98ED04F003E47A44893E943B6504791D21FFEE630A7D
-026F82D0B903496D3E08DC35768EE6FF9AB617D29193A5FDF8A0976336297CA65BA71A1F
-56E19EEBAF4AC438B9807AC1F4CB0DC9F740910E2BC32220D37A337FECB98301B0A203DB
-739DC361838D4577296B9DF5E1DEF57DBFCA489801685288238CD8DA085C709663DE7F84
-127FC9E6C4FCDF327532C87635A6D7822D36583930BC9FA1746966A175670A2EE77D5FE5
-DB0F43189C37191F0ED80A333E8B117508E17C010FDDAA44820EF17FA9AFBDB754507F4E
-1AC0D09A0FAFC80ADA11DA469995CD7FAF67CD8E29AB323C03B6A1DE80B684FC2AE84B46
-BFE4748300EF789A12A166FCD29ED3AED2FDC431BF9B3A450E2B15BDCE9F15C13E4C28FF
-15E145C661B3EF6DF748C32129BD734087B8DF6A5C00B4765F2B518ED29FC53D283587F1
-2B62F177D14E3956A64C425AD811AE6833F2E095AC0F7BED54333095002EF33824F6A7C2
-3CD332BAEC7AB22642A5331A0C1656E3E2E4FA99825B5F1A04350BD96AD4E491F97E47C9
-F5FDEF0466EE0566D5F2ECBDC2C3B0DCA65728196BC139EDA445C7B5435E293F50C91CE5
-4FF3AB7112603BE44D41198C3A5BF2CA4BC460C0BD8D86073948C452AFD0A35CDF30CE1F
-AB58276DC2A49CE15CB2C1EE44E0C3E07D73936CF675B1A40B1A2DA5C61BFE4E56C92FD7
-CFA03B2D6A9A108054AE303195132BBBCEAE17F83B7B9140BB11DC6D2A3B17A46CE4FD4E
-0EEB5FDBF8028B1E7052C602C5E7BC63D6F6A9172032D538B495C3D8E3DB6FAFB0CEE41F
-35884819BB65463B11378A7526B582A4D2EE1726615B66E8514B4173C47B399F86ADAF7F
-E7F7C08A707A30AE31400B603A31951A7F617BC16E5905ADEA0197382CF2F799F8ABE8DA
-134FC37C99767D4ADFD45502F189ECF7D08471186F4D29A054DED0C5AFA56A8AB3AD5F3C
-71D784803E0237F41B764C6A91676BF4623E80803231960AF3B941EFD842235968071455
-F1BECCB46F437930B443A1C4F681AE595A7F7057496C5BF98FECFF07CE1B4E3653B7AF75
-2F647322BF2FD773C8C79B305EA2365EB878FEC55A277066560401CCA10AB996645BAE4E
-728E34864C7F2F0ECECF66C0387B2DADBDA23EBC4C0B904C5D152C9856EA1FB76D10BFE0
-7213A87551081FDBEFC207AE33B860649D445724095B28D45354590E967DA4960814E184
-2ED400AA72982427E378092623D784272A07450265A89A88C13F0A71A03C4234EE525034
-2F5F28BAF685A2D8AD6C195B4CC3ED9DFC0E82910D692ADE7236347002251126C4CF7C82
-175624CC08445EC64357BE592FA06FFE3FB52720F4CCB0A78173F0BFE317F2C22EC52607
-C9479BFEDD6FF60EC8F1F613251BDDED25F2639E469B344B86ABF4BAA8A9E05C5AA49C91
-826B39636461E805364EA49E222129B12D357641D89411DC5081064473E78BE378BE642D
-16B4CA3D926E508E5905AB84C588EF25E3AE064348C93A28880A02B0665C2486BB41BCBC
-8CDB229607ECFD58E01D99D71BC1AE9DACE87D02D7567D570CE3BB7EBB5877A5E309B181
-0E75AB6AA6E2A72B9DAFDF89862C96141D72DAAA090F0EC8A239F1CB565C7B7523ADD890
-76109390815D4D128B26523BF36FFEEB3D1DEFB8C44460FE64C11F1183A99BBF9C5D7BAC
-B644531BC4873EEF693B2E5401D764F0172127F873786FE8A95142DACBEE14E4B1E11E5E
-13B3015B6344C9B27CAD49C457FFFDA86E0097D8533F76344AB561593CC09BDBC1758F07
-9F31AFC4BFCCFDC2D54B8FA7F1265E8AD350C44C940B8111B4A59D078423535205A22202
-92F892CC2A5AA50ABFA912D6FB0304EA164E191CCC659DA1E00B2DE5A6830B60D69AC9D3
-CEFEFC2CB0DC016B7FB41D5853A0BE141DC15CAE07A90E56187BAF3716B7A7CC839FB123
-69DCD8656F62C1E631FCED16D171A3521ACF60675FFD2911A20DFE45A57887984AE2C41C
-A8C6C24A12445E167CAC1A3FAF610DDCC8649C6F6CF07AF89125C6F37C70B682BB77394D
-F4F6E7A111A0ACA9CD25E1679891B3FE9FDB3EDDE1D3805DF7C42BC5FE4A6D91C7042F67
-6ECFE15B9A90AEA755B3E032C60A71554102A9FF4C2E9E467F0B7DB9CA0F2AC3CBC3CDFB
-8DC2A7365807E409E75E89047415598A8720B25CD32FBC18C12EF6E1F9A193132C0DA8AB
-134A567DE1BA0583E12BA2045A36C298ECC4F909510D29ACAE1EED825ADA28437F457BE1
-94FA7EA3ACD0119F438ED2A2A31BFC511BCC3CDBCDF34B6DE3DFC6F4836178D9BB35BF9A
-C546AD2D1527D1B020D2A975E83848CC431CCDAB997A195E2AB6B3D5A8980D5824EDA901
-EDBD85AA2B82480CC76BA911F2D4F7E2675E69F4005412AB2E88861A7D925EBDE0799075
-F858F32B8BBEBE0F6138D4C8AEB2EA647046C533519867FCF286E04AB146CE6EF4080A8B
-2026BDA70349038DE8C2B71B2B2834E57D4D486F95CAB49C4DDC2DD17D8C959101CD2DF3
-D9E4E9FEC4CC05B2490A90A30C898E8588CDEAC838565BD0B6B494F2DFA565A606789728
-0EAC877E47201EFF4329FE524BACE5E90E8525CA1F5206B83D1FBD284D1109651141B4F1
-CD1D1F5A0406B90E4FEB435BFFB60BEC00454F406B6CBCC3883F8D470226A8214207DA07
-76CEFA99D769166A8327F8543039B44FE297A1EC1611713846E67B20E0DF311F715E4CC0
-3D1AD8EE1D14FE0AA2D55D1C30F9C1F12C9D8BB8E5429FDC4247AD4718B634AE34213480
-45B9ABE0C2E231914402548748A388FFE3D5148DE9F9BE6CDC21DEE4B5F9FB0C3A52EE12
-A9B23D6815E76979C6266A811157E380AF6C7911D55DD522FB766932E2CD361406517268
-43C8C1EA841219D167757C201022045656A45FA93AEA1B404B16882F20BC30B36FC2DB62
-96DC200D567BA9B4D49366EC4D3AF556013DA5878F04B437257CCCD164EA4460E472DBFD
-AF091AF1C2131C55FD31E7DE78BF0380C4B34C89528CE0A36ECEDEBFFB34DC33AF1006F7
-EAE6444F7F063BD1B1B9C88850B1997D3A24BD1650FF98744C9A0CD6F7246CE22A1A91AC
-D1EA6FBD9237C32B80D6BF79B40A3E622E83DFF1366BC6B7B6295D5785BA00342C146BC2
-527FCF50B73C17B76D6B4B0B98BE03BAD8A67C7D547C866DB6FCAC78C69735F26DE9FE2C
-D9504F5AF31727791158F17D129677F5F9BAEF97A1899A7DAEEA53E70EC6C822C3F893B7
-3A4C313551553E902E762BC58D8D1E9508D9D3355D5FC528DA87BC94DD9EE305ED737379
-CEAC96549D3E7E505A13F11EBBF0BEAD38601BE5BF68B1EBBC504F8D9B4219307F7DE93B
-EA6B153F5BB35E2B50AE9309229698580334EA4590E06E41D834EF86DECDF64687DF0258
-6AB142A457531A9103D49D0D64FD583046A107210FF1FD544A8B07EA3DFCC04ED74BA498
-E927C72907E896B8E6C0C0FD016A42B6F45AD628761A78C405C51BC07DB9D90D54674B0C
-62F43785115A94708879349142D612DACF210116A3EE5F0AE9EFFFB694C328C73EB4FA11
-56E38C4E25BFCF9F441C2B0A6752091DD9F9C2175495B973CCC0EBDCD43125CADBE4DFA9
-3E11EE051D6D46B0B8A8C4DD6443D392CB7801D131DD58696594B1FFA5DB9D70F46E1C7A
-84B445E50922880FE987BF899BB603CA937D4DD3386C24D24AD31038CD9C5727AABF3DF3
-0FA105F554A39A091655147C8511B818A5932FA9B33C2B1DE319C5F704BD439ED6E1B8DD
-FDBFFBBB038B350E1B8579A1B2F55B24FCAFCBB6905F24C82A3FCE3374F979405E69BD62
-6346E4531E130DA4358CC11FAC6E705228CD1D4BD865DE15F2C8629E77CE5152E3CE5207
-D42D9265A4F27C5FC3AF11712F1736F56CAE5DB347163DE798EA934C189E5FD6ADF49DD8
-4E9692559753CAE3584F3C43902F775B9534A4B541DF22DDDF723339562A5785E37CC808
-47E59091A5A339467B57F15902EBD2399B55A19E098ED661A475A559E465A502CA339B3C
-64A55AA28D3DDF57133DE6FC6443B563A0D49F898E0CBF45E55748AEA9E7A215D26E07B2
-C8CEBD2D9D233D8E86D53D079691EA21DE11F9C4FE0D3C904C5FDCDF2301BE7C896C2FE1
-036C2B3D9EC21292BF87593E27BBDA40DB83CA23F65C56064816657C97DD53CFC7FB54E5
-353730E625C5B31F030BB0E1D09429E6C6496EBCB17C114667F9B8A31ED328AF0EE9E7F0
-1AD0E70AF25BF2BBE8F99A4AAE42A6466347CE5FECF91355D61A312C550AABF782CBF1CB
-649FD914B4AB1EC2BBDC6EFD65621921858E9CEAD02447DAC2CCD4D9D880BCB1513A5AF0
-D931F417C1342554E7EFE9529B18CB931453AFA51E2830037D2DBA79C565EDF25A0A7059
-315E242D82F2A32DACB9D86C62658FFB7E5A11D00B59CF45B48C1682FE8FC4A4FA41746F
-E6F734D86B7CA91C976D40B64601831546DF211405F1F44FB6B8FAD3E880B74B66A93783
-F12CBBA01B8D456A1BB0DB78EF455B230B53F95C4E7B13EAA9A8BD49F886CEDBD9066819
-085B30488B011B125737F16BB6B31908808E7B076BF88E2F23684929602C888BB3A51D29
-A3D8DF55B39A48E5115E686380452EC5784D09C44ACB5EB20ABF8DFA9DF66344BCFCF175
-A877296E511AC83765358D8C091B91A6C70AAEF9A66C2F36F6387D5795B60261381CAB7D
-9A1EF15EE18683C485317692DC0CCC859F5DCF51C3930355BEE5592A9E5DEE4360E8151B
-582E019C674501C0F27D1EEC05B1F55FE9F79C5FCA04AEC51BF01CF8BF5DEFA0C9DA4DF1
-0D923E6E56D35364023C84D9D71D68168A73ACA6A6CB8304C1A830C3CC7155D9C5141DBA
-165A1C733FF5320A1D1028B7B543D2A1516071D0C02AC030E52BF79E464D8938294A7D92
-5874AE6FCB352EFD4790F6973A627FD2979C19FBF19D2870FAEB6BE729D34FED4C87264D
-65FC15436A57DA96DC09C7CA864CEE0D98AE9C498F258C4599CC97A1B9095825760D06A5
-C53E257F54407EF4DEBE04606D65E3D09C01535736D3852089D8FC0D2CEB60BE19D959F0
-CE1858D5B4B72A953FDD1CAB16B1768236162A67C1B77CC4DF6393A480DA4223B65C9747
-67A08C86DD75BEBC418E370D5C2853523D68852E705A4BE611142EF56ED90583181D8559
-9AD285830BE0986BD8FABE86377F5529A5749A30C89A272711A694AE29E2700034B6B620
-5413F9BB288AA9B0BDE0E91CE8643E96C8A771FEFD1EFED94DF8D67CABBE928E3A845723
-BA2B85A2BF2BB4F784F2324040C42292BA0966DF1A495D7DA80B9B79F76D10F1A12D53E7
-A16B3175CBC39C1BE14A36CA1E3C7CABD9F8DA323243F0703C3BBABD48B1CD35BBF2755F
-2508FD2D66FDDD1DC21D232CCDD7CA5E749A841F82EFF35249BD72B0820CC69FF176164E
-EB3E885E1DA18762FCD40761FB5C91D692F2678BA2BC45CF1BECC0A8C28EFD62D1EE29BC
-2CA29D922AF0A592E19AC004573F357ABCFA00916487664065D3864EFBC54AE0A70952EF
-676B5087CDD43D9540C784DBAFA0C0ACB72E35CF6D82789E3352A16D379A4C26118C4B5B
-8E5C7258B2B9082556A1B018085F19168CB7787CA06283382260FA3743D036EC4142DD7D
-2654BF95651123718193310928CE49B532F6B26181B078228B97B4BACCD79F6A8DAF1004
-096284F2D45BA3BA14F1D0CAD558239BF696B1F2D6F6AA2D11693B497A7FF12BEB36F65C
-C453320F8241820AFA96FB54E83DF38BEA9C7A004EE4965EB7104982F4D7847D397B9EA5
-9F93C61BD259C3BAA15323EDA020E35DD78B7FBE6D7CAFC5C34D9C8A60B079EA6A3123FF
-B7352EA72DB9BF6C80E7D97AC188A9B8BEEE3C80819D35EDF1CE62AC4DA459EB208BFF41
-4A3EF9C4E3514F44EEDF60CB817EC66E3D698702B5DC889EE0C064A387C7487DD97B4EE1
-2792DAB796E4123E9D7F3191B22F2481A4602CFDE1E708EC6BFA63C771058B380EE6AD48
-2524F9F1FB75D470EC11226A138F4B9E5360AB443D5091B324271E8B251297D8236E3C5C
-E92AB19E2005DB4A8BB12950E6A3C47C16229F300F8BDEB8A54211BA195589F6C8CE22C1
-A32B3610EF0E43458132703F86AB9CCAE7F99CD7DA69EEE32CB011EEED797C841ADED034
-4BE043DC76BC7E5F877620283E923259EC2100FB83832D104A256105EE8FA5742D7E252A
-7539334AAACF79E4EFD98C32661AFCEEEB5A9CE44B2CEB765C6FC6B361E95CBAE60A8680
-D2741C9AC12B834BE5EE4F498B1FC7137BCDC32A225DBB86B1F342BE3FBB03A17624066D
-2D652F7F7F8D431AE8DC401FA2FC64AC056A9F29DFFBDE1E07BA398624F3337B6001D1B4
-F54E9E67B059415D43144EA8DDECCB6B57022B678CE554EC7979BC4DE26BBDA16059A3F1
-16457844011864CEA021FC099B7FC141923CEE982E2915C6D0C28767027E139BBA2EB02D
-49DD1B247EFC7A2A1504C4DCAF35305671CBB20B2BFEB0EAE475ED4AD53293B94A6E6AC8
-41FE1E9CACBADD1744428F6F992348A3B1D391CF65C86E2F1E57382D245C920C7CF3140D
-6AF604F686019AF155ABC0B0BB9835FC49755277A5DF9E6F0A7B8E91EEE7A2287704D71B
-64D4F6D0C927DF674B35A38E98CD7ED00B76966B2E44912BB1EB240C25AE3DE8E7668062
-55CFEBBE98D8A49657D1B230F8A9AFB157AB3BF74C8485F5A275B2C065797A9B3E1021DD
-7FC20AF45DBB60346C53E3CEEE031619153CAE0CA4A3C25458D73EC46E8B7196CEFFAD73
-6243CD4F81D73A2A7D0C3F58DFDEACFD4330655FA5082CB75FAEA9B99D8BE6A0FFF920FA
-9F8AA5CC2EFD3BD09C3B8A94BA03D1411D6AC5894A8402330D5564AF8E75AE549A11BD49
-E15B20F7879DAF938B09E430CE1B57EDD9346CA8AF022DE5548A4726D49E8DC439D7DE79
-7C006A7AA78B018A1D68E15AA83FAF97394FA4F0E1460DA5AA9710656AA1E294016F2F8F
-D7B10DFCD2D10AB59308DE6108C3D44CA6B5B1A0A5408E6FDCBDE1B5CF86CD7A9F815146
-B9721F11ECF3EFF7640EAEE03D8D3B4B4F055C6EA18A7FF129F369A1FDEB7B71A3223890
-BCAE11DB2848941B6323221AD976E5986280844ECB67C4A1ACE6BC87517A2DDB2F928A01
-8727B99FDCF0D0CFF57A0BEB04C7DA62E41E9623AF0FA6EB651E0D1C9C72140CFF8A7A2B
-BBA67EEF1AD2419BD5D399E09F2BAE43881E8AC834E46F6F1C96B6EB4DEEB32637DAFA37
-89C2BD92A4989F9AD822A6483D516A143EEF6DE93ACDFF3B118F8B80865EEA782EEF6DEF
-D8E5E9252B378E3F09E770F38CF1A71A5CA9E872EEC7E1AB4AE8B4DCEA41630FD47B9602
-81A711304DDA075014AD733B83D5631276F636D4A470C1DB8F5B1E1AC5B005FE2B5B4D79
-346B39D86048D7066C0F5476FA7E8A8F7D48488F49507237719121AAE83EF6938AF31754
-5C848CE4E8A118A8093F5720CC4884D3886A5BEA6312782D229ECDC11D4AA1731A5B098E
-DAFBB3EAF2C539FBFE55E96C1129EF344000D8DDD7C7CD53196B27AB252155A634FEA9D7
-971E3079ABD8F38DC7C166B5DC2D0B1C66D776BA678C5C57E8EFDD55EFA2F5B5FF8DADC6
-0F18A0026B3159C7FF28D5283E6835147CE4D5E5ECB6A8E537CDD7F8F7A0E7B6FC53292E
-FE0F780D9B58293F527159A8440C09FD842877464711F7256DD732AB76D834EFD0C5557B
-DE603FCF0E35B4025848595E585A7707A33F0693022B06FC2032659BA15DA56C183E51DE
-A5A8921061E9ADC27AB380DCFC851ABBD9A51632F60EF08C2FCF84A86A89516D66DBB232
-A4EF10707682B9AF6A9B584766C8432FE43BD4D2111F81446E0D508817D6E6742261939E
-36C71EE1945C10C1CF6FCA1236AE71A10957B57B1F8F69EDACBBB9898735D2071C073E43
-6585FE7EB0BC41E40DC59BCE6C311D84F9C41929DEE8317615033CE146B3C8DD7C1DFC28
-471226DCBB5A003FB6185793B313EACB67A443C60A2A7873EA4F13C0DEE9209D4829FBDE
-5E93380F14C2F04448CCCE8C92A0494E4F5BE68792D35D019F1C4279D261579261B6A990
-6ED88C23D9D7993D36FB0F0ACC744B14FCA75D62AFBDBDDE020DB4EC979F9A816DB0AA8F
-767A0CA4D561E00EE5917AA1FCCD701A8FA3BAC8AF96268B9E141D891F15B918882FBDF0
-4B611708AB3D464936D9AB17E781DE646C2BE7EBABF82F4D547F09719EB03FC702894480
-9E8C963D076BCF1DD1C29F3E6A57DDD550B4C50C940363F0015EC80F170B282BF9E9E8A8
-7E11B31975583D1B8678BE0F782DD2DA711A0EFDC5EFD9BCB47C4C458AE693207F67915B
-388CF71C508BE8A2E3336692A068097AFC21A42DF45A12CCD4E6E005857D04328032A455
-070E65A5F1574DD06B48CB94508FC3DAB04FC0D777C24F1B8A32F5401919441A01C7FEA8
-90AB7C15FE2FCFE62713F42E9ADECCFA5114E46E8FE38448282A694BEC76034775C730DE
-B2813ED4E2EB75C8D2CF9F6EAA42A82C5C711BE920E4497E4DC4F60ECD923B6F21FF8C9B
-2AE3EB19CBB422FD027B4C8CC503F523E7B18DD1858D1DA08C9B0D0B9C9870D549436AE8
-D21746C86310CB94923304496CB2112D91AFEA2776A9CC7CD79D381AB7E251B6B13E8DCC
-36DB7BDAB3AD9D22C7A9F6CEEE7C130E3753C4AFC946839697EFFDBC4005EACCDFEFC029
-9D259947810AFE57002A3FD3B9446977345BC5D5D53B6F9722C47DDA534BFF98C2433B0E
-EA965E20ABEA481A9C81C612ED51CCC35A74CDB473AD0A5D2E42950AC1F66DE6393BC9B7
-B02B00441EF8CC421695854293874A7168496467FACB15062D50600824D18F65E3FB83DC
-C5273D5743A84DB5CF9D38AAB1478BC6CC1F849ECDDD397DC56D1B1BA395684520D68729
-FF5132F4F7B48A17DD6FCC303871D6AA2F29CAEF2EF77E0C149829B9225746D43286D1D0
-940E765628810673F32809AE451309BDBAE942726E9A2D57711683B3C4D39F6DC393A20F
-BF0A8F4F73E8A103B3D9B12572BA4B846A0A9EF3702546EB97A046264F067FDC72CCD091
-E357B618687BE9E5C7E667914F44EECBF3DA82C9464380981288AB2F9B058DB262EF5BB3
-0A4E0327AF77B82AAF49479A96A6CE7051D2277EEBF286FECA3B0CFB56E1A94B147620DF
-BB6207691D8E751D5E468B36BD64C8220F2883A5DA60346EED5616F924660658111CE6A1
-0FE807C63FB67BECA2AC00D98C47B5F1CD6B9FCAA51848D97EAED90AFA582F925DB9DD91
-F77B73CE5BCFC0A8B21C4A75862B345ECD68545A4ED15FD4A3235429019E3C922537DFF6
-F0C2907B10D068D116EACC7E0C82EECD67C0A377E367500BAA0B47EE6444C4FA196C7DCB
-F1B080A2531A96E2A874DDD02793E72C1D259C3004474DFC91F2BA21554D2DBA3E4613D6
-535691E6E4AC04940353EC25951DB2D4EB2FCE5D701249B835FFED7C78225A84A24D138F
-631AB67295866BBBD000C1D5BD26B43EBBE4740716DA3D8293CE4E359792F7120811B32E
-2B378B876D41E70631187CEF898EDE78C0A8986CA30889A8F53C2344384E3FEFFBE7AF07
-171E031BFA6536E2E6719D934F74B39169E1D912790256B06BAD12CC3AE588B2B2DF1C7B
-ED6A3E99773C25BA78DAB1C8E902D65E4E55FA9005C4D80819AEB20723269B6C091AFEE9
-29D46C11C198A7BB0D4260EC9464156F655EB1D460DB7C72D932CA927D39EF98F35EB6DA
-7F8143A443DA3D0E909E6B846DC2DFBED888DB41F2C03D9C9B61F31B2E8334DB7205FA8E
-C2B94D71CCF61FDB51C66D8AF7A47417DEC7FFBD8A052779869E709F3B36BB74340E78D0
-3BED0A4618738C9D2C3C447C0D50BAFD176208820D1F314E21615B7A4397883F8D59E65E
-80A814CB6E8FBA91B0C410A8B7E37188C1849AA206A66162902591AA90F18E0426C586AE
-80F63CD8764DAB7FE811172A87AEE833E935F5F56AED5062E2B35F6077EA26AD8DBB1011
-745F36D936EE50A88144F211B37D8C169938EDBAF26E277DC7A921C0154317BB081A7537
-F0FC37CD6EBDB6F97130CCE08B85690E173D7158367C616412A63D0B8ABAEB47B1BE35D3
-23456EFCF7962953F630002DFEA23DF4672FEB5DA149B713FC91C94505596471E44D590C
-54FC5D336DF319A98AA87DB9D313B9DB208DDAF46FD5469AF90F548E704DE24E3344B95D
-6EED106864FAD4001FD8DE48DEB22C8AC3FAE18F7B176804DCE5AA2144A073FC9BFE4CAC
-CD6CA534902429E28CBEECFA8D984A71E77B5662A1AD114F301F548F192B11ED7EB56BB3
-F8FE62001753FBF161D538878778501F917441F9C5DC3B39704BC1A234117157303EEB24
-EF453A1E05208A07B8AB22DA331527E0871EE7D713917E86C80D2FEC3B934E5B7540C672
-34D0FA0E4AEE6A5B1706F2F3AE147690A76815F5575A5C5B44682028A065FE8037E10526
-5F282058D027620C117A57CACB77AE153E8517134168668E79017166CC435DD24831DE0F
-65872D49DF581C872FBD74E0E2502B9C0C741322E9CA72152E7DA26D84696366D3DB5C56
-943FE579F99CFE384EDEFEDFB30F7EF5ACFF5BB88327E5A63B796C7EA2461B21419592B3
-65DABD1DB63F6AFE1B959CD018163A48D82D0D36284F118263E9D2B8FA2E3104BAE034E1
-A1DEE263980EFDB385CD6D687D1092752D7E3A6C46D678BA2A2F3E208988AEF16EB2C67C
-0C5DDFC85C6819746A034BE35F5C6DC967D64005E4104A7EC6C55CEE199CAD3F98D83A22
-E9A32D0B0F4E7DDC4BF81D77914EC3C3DA3AAF51424CE3B50AB293152EF0EC717F16815C
-4ACCEA27FFF69DAD5AC1DD549C6CB01F23F3C5A3DA340CD914849991C554202076C37DBC
-7FD48DF9DF23F5DDDBCEFE0114A2877C31385A184742AF5AB3007908A359240E9DBB0AC9
-501B7BAA815CC273D953E0D50802CAF8C00FCC054B10F0AB7C072C573FC4D3EF018754EA
-32203E847125B73AD879F613804FFB9470CF39D0694155B3D5D500E3379A163C86CB1AD7
-85C3AD12B724AA4F203C212FC0FB7051CD0EEFA161920E515FC83EBE802800D1C851E085
-B069541D8E183032EE5FB6D8200376FF0FA5786796E7B33352601711A2323AB0F2CB64A9
-B71C936643B259BB73CAD6D04B33201FD772599DC49B9611533D53630A3C91A6DA4E3CFF
-519BB469F2C23613B0D445D98377E8EEE6218E0CF7333EB5C4257AE30DC6F8FD35C5978D
-4071F0D9464C260223902E3C76703BB2E3B3FDD9ACB3F6E43C3BBEDDDAA846A4893A6E6D
-6E8D5AF8FD12DFCBEF1B5D8F537AEE87AD8AB3B486910F0013FA6239528F698F61B6A2FC
-FA7CDF66B238222B989DD390A1647AFDB9AB7E287F5CD96B7E443C293B39C7C8A91A207D
-E7F0A73A48387C9955747277BCA7E97EC37EF0741EDC541F9804C12F95F3325F2E80CCCE
-0CA03C931C7FFFB7419BB3B2A3A67325DAE74C4D597C41E922B09ED70F411F7E29486C5A
-3D94A857CC69502C6DFBB6E63780DC3908B989F01116B28CD8BA096CD0B09B3EF4AC8E64
-55FC7300CD8861EE2F1FEEFCC03D95FAE9DCA58000441A1D3419B77DA35E80CA40C0C49C
-E1DAA21511AF32DDCCF3935CF78808330C469C4F12481571303335C945937C0080E56DF3
-ADAE10198495A9E04DA1AD8453A5C3B7D9E6E8A8F6F57BA249F0E9CCDFCD8D25C8E39BCE
-2B158052D9112093EDB087E2DAAA0C835634BF21B6C767D7D622BFC669B78040109BD4E3
-673468377348A6EF3D0E6D1D7BE8A07BEAE0D72CC158FFD8904003E7D928F7F9B78097AB
-A98804FF2BEEB62C695333EA76444009C03751DA71269219D0B30BE98C710803DC3C1159
-2CF0B2D8317B13358B3D96F2B79F801E303417DC8FFA4C1B5B246C5167410518BF7B122F
-072E1C356BB87B6BAA4B36609C3CBC4FF578ABCB0A9B4241AC991354B9BE34E831FBDDA1
-D97665C37DD1AA4E2E2AF3D41D2E9561646C40D622883D790D6986C60A2E5B2D27D9370F
-0F2E57DBCEBDB45A6244D1DDE4F64D30B94621B21EBDD2DD7F87E75E9BC4F47F1E94450F
-AB7D3A2687C66FE4495A05AD81E2C0AB09B4814422272290A024FC55819E7DDB08666BB6
-FF9C9C4F1AB70697649197C550C48D221DD1BFFD20AD9B43F876F19CD818F3EBAD352B94
-03A050E79CA2A369363033508882A1B63D0755B43E01BBDFE55E7F6C171E1A6BB37365F5
-6241C6DF75D3E1B1364A655982D595C66A186310A5B2B3A4C99D39069337E0B7F3448D7E
-E8AB0C5EF3AD79CD8D9C86C1E54392437C1077573076513C0DACCE6D16A3ECCED9C438BC
-F7859B1ECB294B03260BA9D9890424DAA816587C4004FF0905C6026A04E130E3B59F1952
-02270BCEFD5B7CF306389D3F255EC17C85C6C53D597E11DB5C1E0902508F22044441EEA9
-A474CB66BC40D45A2E0DEF1C83FC4432E155567ED91D8A928D2986479F149E4AB3987D95
-93B419964BFCA0E042CCF7807B125F29E22A488BDB19285FCAB04AC29A564D599075B2E5
-B3CF0C6D53BCC23C1ED6A5206A6AE91E2F21AFDD4542D64A85F397B3CB0DC1F2A0C2AA87
-5C38974242DFB90B4CA67259D610BC8691037931C69D18242CF469FADC88CDC85FDEB881
-A431ADFD4071F3C856EE5BA0196D1A7F157887642EB50C8662ACF5BBD27C4038206FD907
-8AB7146AF5B02FBC3B84E61DC936C2B79F204C8765D6F366CE1DE4FAA944852EA71AA25E
-BFD160E6286C927FC76EB19F4C5878B5D847FC5A941B8F2A1C7C38A0C310DDDB5D171E4D
-0A1774ED965F237A5396E5A94F87367DB141DACB4448F67789C26DCE06FA01C92014ACD0
-1209D727E37A5C64067B2DC0F91530D8AAF59DE0D750B2A18BE91D7A3362EB026C438FAB
-EB0AB75C8B2F4137D843BE8EF156CFA20563E291B34F19F97081D4E43F4A62DC72591D54
-289D839CD857540EFA38AE1A02A13EEE35A0A4A3576FF6AD5598A76B3E83FB67F5062FDA
-4A2DA616282CEFC090E154EBEE481B906CC206AC6A5A9AA442265E95CA379785B96E76DC
-D4095708AF8A65DC213E42581C59359F3B48EFE9F20AA85E04EBD4F8B4B8201607BC2CFF
-FC71D43AB06A3D82E766054F2A54734A38A714058C7573B847C8A3A82304638F2579F037
-83B88E29709F5AED8F17F68BFED85C7589F5343D8A1B73935D693E70E49F67EBF2E85104
-F1A384F7D6BB00AB4067F816CB11C71C625136E073E4C98486A5972DF70B5537693FF55C
-DA94FFF774F7C10120F4836B9E26941B8AD2E48B90D71ED129A48DB73DDC0E7CD569272F
-33014FABEABE382BC029832CA1A7EEFBCBD24CB435B58703F1E9909FF7D30D37154F2D5A
-29CFDBE1892DBAACC07E68544AD4A1E672DD620A5EA6F84B360D6B0C9D2A16600731892F
-4BA194089DD0D829F7DDE7885C7FDB37B8DB601623B7B398070E617E2DB13AA6B7C7EDA1
-352570A133F0DD267E23EF4885DDD4B6A2EFAD3B55741CE7B36475A878228A200A49202D
-13A9EC655051C1EC4FB61E9D3C1029D21C4B943A64479F82B247759FE49DBCD64EAD1605
-81159DDDF18584457D99949AF2F2EE4F2E3AED242C25919F51CB76A188867D5959D8AF10
-FCCC2DD8D2EBD266B751EDF244BB8284A4705E1A4649A050348AE54A048E515F29469FDD
-B04A905C3B9C2B3744455C781BE4487DB56A085A9BDF8F8256FA4C1B37DFF3295F5418AE
-C03ADCB277B3157A1DA2D7176E12B334A49E7CB311D6BEE45459160E34B024E8B68A1768
-E83A7B8D7E0D5167E4BC7EA55157A20C82EF009A2631CF53205E11B7D0E7675329822052
-C2FD7C1FA61D269A90B94A4F103E6FB3EF6B1B0304ECF573EEBB1A432F7AC539EB7D40CD
-C2F67D1D3E87E6B66CC16B63E00EA442036DA83A7E3CC8F2946CA59FCC0C085D642DE6CF
-7C8B642EE62B830ABCC7CDE13DEE8C11A4718ACE97C8D47BE41AF8DFB4A95D44EDD219FA
-137541C53086519D6F32112A2507D37B2EB7D2FC10AE66CC5D5A2D6A4F8E6F084A95C923
-CB40B8437D3D51231B50C72DC5FEC25ADEAED8D72EA6FE59859CD3512F36A0A46D55607A
-AA143A65CCA0203366C702554B905A093B2E845FD90002C689CFCFFF02586DBEBCB11688
-7FF863EA45DD0EED511F4CAF921015383CA0391E393A44419B34E82789A62502C19B3287
-DEF1F5B24C60F5677576902DCF76F00BC4D3A056875990D18BA69154154C76B2BAA38ACC
-39C8C1D55892583B7C32CBE6411834223200F22B416709FCF635EA5016BC3CCAE42C68EF
-AA30B0EE474890D25C9EB745915FB60F517600C7F380582C7BDF4B34FADC9C60CB139D03
-626F4DAC953F9446C02331E2804245F7AF2BABE7FD2636854AF0CC676792580B228AF541
-6172AFF0C2FD5730C2D71C9FA3E17D36F9AA4120E180D025B710EB9F95AD8AE31B66D872
-20F028D258A85409CDF37158F840C2F418A0470357AA99A825A9537D24BCEB415329EB6D
-5D985445AB19B08ACFC1F58510119ED297B034334EEAEA319D0EF5F7DBE4836DF61041FE
-071BCDF1644E9C2D924251049CEEB73548286CC1EA170F0895771CED237B33FA8EAF5571
-E22C890F0B552D319EDE4A59928F14FFDD911F08C17E939FC035D7AEEFCD77AB4A2E7C4D
-91B25D75F5C6CE9122C27E0E4A033417F389CF8796EE0F55794001AD285C9285436E983C
-94ACA66A8C8027689688D0FA18DB23BEEF57C73CE751FC6ED14FB4D9601080258B7D4885
-4CF3F9A8DC58E073B3D2961729AD90372490C0202095ABF65A8C95691D7A32DC000B6FB3
-EFE315D903FF04A6B366788B5A5FADA322BDC00BFE337DFEF5EA0B899E36CC226DCE1B75
-CC352F71064E7F05420E4C3D1102F55E082E04F1CDA182E5DFFB5EF1283E721CECC5978A
-A1EFACAB70A21438B380BE3A972AF19381FCDFCC60FF173ABA8BC049D0D9F22DBD722FED
-1711CCDF75C710D083B0F3A56338A7708DEA014BA01943086306885854CBBFB8E372AD75
-6A00B5CE723A2558D80EA8B34F987AF7828CC5457865D9299E3070077F8D04D94C569806
-97CCB42D01ECF928629FDDC07CF668E87ED8313BDAA0D5FD84B0B416FA83998B1ABC0B03
-A3E43B188B7D74287A1463CF2967C7FF64335B205A69E974789EF5741A6CA9A3B62FAE04
-37B957A01ADC30C6C1CEBFAA7044161B9A094377D57E4E990FEA040EE9E37414D70376A3
-66D16916752F4F51F45171892908A53A3F6EE0497A69CE4D4F4085B1BC10F65623456980
-DDCE8C933CAC5C779D518720F5B8F511C8FE4C53E23103A12B2FA4DD02938ECA2AE76C58
-000D38B2FA467C1E1A8A442F9EC4F02E0DABB0204F2AE527B6F7CC775DCD07DBD96C589A
-B912F727B9B81FCDEC5B3761842E845FDB6CF3840CF0F183F2ECFD28A92BB4F5CCE7DE8A
-ED8912F728E39646F57DDD2816BCB3BE81DBF41DB3D3837BDF55B60E083EEFCD1A012A38
-846E025EC9AF4CA745679C60F88F01E3AEE7B65599AB02836F7A1F192466F5F729483DD8
-7C2E1CC75A61F0D7171C85DB04073B9A319A2F2B76C632AF2ED220FD9D7A1F9010836070
-E0D864D1D31180C1B6E35B6CA08D7261CC843915F15F802B3613E14218DC9EB7548A5680
-C1A9E7A6AB73A75DB974B4359BC428F1CDD2BA5E7F4590DCD96F1C3BD35AAF8549463541
-2A28027140D352FD0D9EFD97CCE7A86729432B246EDBC0A54EDDD6E67636A6F908BA5BD5
-0A90F4F1365DEE1C1E8989C0AC6C4A64861096C1B1D3CFAE51DDDD96CC24C5C11275EC50
-5F8DBCB44E345EBEEAD458D458A177542F5EE64FEEACA55A61AF8738E6BF38A6C9B211DC
-F7F2675EB86CF3711C97FF23FB5F5FEB1867467158BC75F7BF7414BA151937085005B8DA
-A6D82F31DCA1007E8D3D317D13BDE2428072D2A3A2743EBD214348B15EC3504426FDF73E
-3588BD1789A8FB8BCC1E1A021BF64D274EF0C9FAC95EB50E2D7A1768E82BDB5A4239DD1D
-9DD8E1775D3BD4CC4C07523E74FA545D5D650E9BC87B80E41EAAAD235833D1CF3B6B9411
-4EC21687773049E082646C8F29641D858D9890B41FE8C54649F840A0B81166130722EFFC
-A6446C5509D988E0B4A9AE8E8765E1DFEF579A6D658C4781BA3B3DACB899F0AC467B9C14
-C66C8930E9A8558C8A19AFD95FFF4A3DADD1DDF80245C2F5F91D23B39CAAF4D2BB1216F6
-4490CBDD7FEFED8406D62DDA4A4B0F0FD80487C9752A0948F74930FD47AAD59FFB8B5540
-DE795994B0B6F209699D1DBFE7B7A94DF25522C7BF57C77EE9530784756D2FD8D058B9F3
-BEE20B4BCD63C950F9A4A01F66680608D66AA87E2FE5FBCC265505325711299F6E8F54FD
-1686C4B532C504753EA7BA292A91A0FEB9E5BD690F1FC1D1B16D3B9870CB2CD14F7454A0
-8F365FA3FF1F0A8A33F9476A7053BF19ADB66EE28825530115BF79F60AE108B28822EC6F
-313C14E43C02FE8871307F481D8B00F0E7C847A3F239723F4003226EE84B31A72F19BE81
-CB986F92710E37B1F6F263403CBB97392DDC7550F03A1ED56165B3082314995D75A4588A
-C4E503C6BFF1E642802E0C3F1058B45E370D3DEEC937533E1CCAB26BEA94E9F89F6C5DE7
-6701DA7753CD1FFE77A42B11765EC6F80520EE01878ACB37096CB9C091387AB3BD68205D
-1CA6E5BDFFABB2550E6B942F65FA977D55A459DDBFE4E17581CC19FC3B589F976EC22F91
-8E95546F8A447EA621DC289B7B7D67CC9C246322B221E6EFF507C2DBD4A93E41C2F7AD94
-4BBBB57372F85E601FFB6984CA66A5B7E98650E84F498AF13C4B0EEB0038953B5A33DEA6
-9CAD47277A632B26BE464E87951E89B8E0C051BC34220EC245E6E31383B22980AC124D84
-3662E9A1C8663100520AEE44DA661F4307BE10122C14D706993A586C7400BA3C74F020B2
-047CCBE55A6DCCA5AD37AACF9ADC82A59060518FA39649A726CF23543CE91A1A1070FCFF
-CA48C8C6A9B02CC28479D8F58040984250C0AA0F581DFC8A5F978EC3DEAD276FBF7722C0
-2C3E41D993368CC019110A5ABD10C1ACD5A5705160AF288A60BA2AFD20D22099265BD254
-28EDA9461AC8193680AD019787902636FF81AF8C0CFE7BF8C064850BAE2E652CAB330EAF
-13508DC67B881361C4F29B45D9885BC4CE554493AB16F995A98D40B7DB137953488710E2
-03295B129EB42BE45B089F8F40D505380EC2EC7C1DDCA1940DB8678A1CA0232F3140FDC9
-C00FC77392237C66F9A0A8B88A7D7D7162F72A1319BB22E8DDF62DDE64C9796FEB38C360
-D00F5C94FB772344423AECC5B4491B100A2A93D716B57B5B44083101335682DC6BCAC0DC
-B500EF88D04F4F955A1214F56508DFCE4299A8B5DDE9A997E431A55B0E8DB6CA1C332502
-200C5C5899731AF052BC28D2980C00DB0DAEA4CA5EAF199A5DBD0BF794AC18CBACC20981
-96FD0AC31CEB455C61991445EBE8AC899B9AE530847D5DF608D011437B2FB24E4A1C45F8
-05FE4FF8D4109B5394447D7C9FAE9F57EB904B7D6635C77377D84D628F0BB1898FD9DEB9
-3E82CC2ACF52553E9ADDEB1E275280C62E4E8AC9722C5E1CB54DE4C4DCCCE6166F7F70C1
-50747CE19775F12C19E4A81599CB9C57918A42BB0E9AA638429B13B606EFA7EE2FBD7632
-0275BA3CCEB743B7101BCDDB2CE5EDF843E8944E4D87E1BBEF47C9D5611E1805CA0F2850
-CF8A205D53F054DD143C3C90D9605C3B7AF045C553A6332D791209DE72E02C146312B25A
-9A5F4AFDBCD83EB67685ACF487664FCF0CA5C455F5848E18A5ABCC174F55984E368335D7
-BC77BE4E2923147A111FC8CC57CBFD5BD87D09867347F01E11DA0780E4FDE4DDA54833CB
-10ED212340A0180CDC5924F675AC6DAE629555524297FD133BBACC4F51BA326AB7D07DCE
-2093D6DC8E6126DEDE9ECBA129DF931399C72CE690C0B119B117A14E3AFC18094DEF65C8
-4DE9705255D3D411BDC6958D872CBAB28C9586DA888066A2A00B05FB21B5DFE2B9B4C87A
-A0C4D7B91EFC7E8076DC5817C35652903605B78FEBFF1B4783A170D8060FC151CE533755
-7B8B3B1EE083114F977201446CB8A5BFB5DDF0852365330CD5C82CFA9BB2DFA6BABDF675
-45586F4D28605BCCCD80BA8B59B501C629D6E6BD5D676665462D5DB2784C5D6D8A42B406
-11700F3A27FD143BC1EFD859F7705C795EEEA9FFE57E25AECCC5C7E270833AA9604C6248
-612C356B6D9937E3B770F3B4FD632A0D8778C5EE2CE62C4E780AF5CFAC1C7C564637044C
-0C8C90B9BD886F9BDC287FA97D4B4F4E4E8D7816BB25DD740D8C9307B94DFC8E8E91F41A
-189E20E2B438AFC4F42607744E8BF74F3106312D7480A71840D4994ECB0A7A088784AA68
-84BF4DA162D5C38A4EC6354D19F06313DF2D4167B57BD2E5F544490D711E4B97F8D5B68B
-F4098D8C9F2D8B8256EA8CCE05D189DEF0E86938052C44D7DA68445A6AEB7AEFD865BC96
-592DD991DB7FF294AC7DD8241E23DE5C908046179B44B9E8A79472154E254D44BD9FFF4A
-435B05DEB14C08377D2ABCB8A26F706A366335F2DBFBF5D59B9DA9C67CB396A17A40C874
-C28E4AB5E242B6AE244EF37D90C8699BF1F2D5F8CD1D3130C0CA72B7040991FA90B3C413
-699CEFA97113609A486483E2A72DDF26953094C4E2970A243DE23963F929C3CED76AB062
-8072F5AF6EE3F950DCF88F57F33CABA2C8E4598D4FA6AF46656512E180DEA02FE3BC8701
-C4EFD669BDB52129FEC53E6FC55499680208E6A874BE255EC21B8C75A9D0D8A2622A4CFA
-7E6BB9E8986AD3EE513F341C595AB2A14784466170C4D6DC2E9BAC82B988CA2609FF4B01
-185CC5A2B639A028E4A378503F55C147E6F8B30CFE5380A7A07981C15BE3C7120257C67B
-4B603314DC2B65A2E4036151713B934F460FBC1B052417B907F70FA06E2219F310E34443
-A17AD4524ADCD140341BF982EE4D8DE7D969AC5621129C600231B16E97B62B6F618CBBCB
-638020E75A77DBE28CB0EC9E4221F5D573DEE815512CEBEA629E6761617E69BA730B1EE6
-14C96D5758E519783F0862FB4F5C10D444882A344972A91E12051B2B29DFEF503D8762AD
-895871D7CD4CC8BE62E1315831FC25712EA1C4DAFE49CA332CCDB5AC2C2D67F6594D592D
-221B7DE7E93261E9D34179DE194AB2F4F4DA9DF9EE3EFAFEA6F1193940AED5655FEFCEE9
-E38DB186C5B5DAC4B0AA13A89EA5E81303A681133ED154B164E3A1D416DF8623A38213E8
-049B876C7C22F625A57248C0B61E4DE518F982E11672AF1765984203B7B7A17C2CD7C7A3
-847B6FCE423541C14C6712572DBE3BB99D1144021286B4E3939560998BC16A6CB47F9905
-BD48B9E25D1B548F6AED304BAD2823E364DAC055423B76800ECDA7C554211DB47BD28200
-79FE362F799925A8BEC4B4770574290D0654CEC588933BE1845BE51FDA15760DAB3257C2
-67E89BA950E833DDF7D7FC37F54AFE1954B006E3C758ED7BF3B28217EF77FFE36196D8A0
-A81157CA87889D7239BCC205459C3A11B808545C8A256F97F3B7369EDD1CF5D916E71B0A
-77BBC006A71865EB15837635FFAED75D3172D91BF820230392B102D1C6AE05F36AD0236C
-90133DEAF1B0F7658B6121D1F2F293DBCC6524C89A3554827D44601BFAB910BB7C908B8A
-7EB7E84221ADDE214CDEB6B74765F2E8148F013F4D6CFEC4C7BB344D82B176D665A98424
-CC385736C4E1D81808ED22869C8132E5EFBFCCDFD1DEF732C3604BB683E4728EB60386E4
-D03D08E76B36DB7D39F07F505FC13A336B7AFF4D9587D1EFA16105FFFEEEB8BC2406766A
-D3742312A7DA69A7B666A178BE43DE659D46CFB1A0309EBEF7B886EA3B3B554EB7225644
-EEDCADBBA3978EA1EB59B35EEE61BF1396A61922DC59487016F66561EFCEA19F30295719
-156A8C9099F0C07B5C076DCEA85C4924ADB96095AF46C1F9BA08BFAD5A4DC49E95CAB635
-CF1DFAE9A1FDB81E27609EEBE67A9636AF703415EFBF5EF0EAF7C10B1B04F139E60FE96A
-6BB3104555EF08139F1641575A227E86F0DF716C829AEB4BC5CA32128AE75286C6CE0147
-F4D6873FF3B94A6CA54F701B9494B380D65E691F988CF7C6D74BF67A42F169FE5AF96CDA
-656683349FBD542386DB635D09CC032C6BD486D08ABCD17A69C7FBDB61378024D2866932
-47E834F7BE079A875D8243E46E1533BCD01EAD3BB390A727226935F1BB5A9A1C395C92FB
-679D980E6E67EECF4DEB74D75C164D53DAA8AA3955A91C29F28AECFC65BA8D7572374DE4
-F35056460B36941E7E0BAB36B8C28E081A29D92526D2F19BE960DB6CB355003BEB9B3054
-2A56413F77FCFA28B73258A8F4D473C04F8876C2B32901F62FDCF97261B3CF09D0BD6087
-ADD051543706CDFEF061C5F909E6BACFB2DCA11F38DA994E7BE7373AC2877648A0628662
-00AEE5E012297FFFCF714986436209EAFF78C09FBD9C54160A4D4C0629FE3F85CE065438
-8A996B462D6F520EFEDF8EA2578FBD42753A2882BB3FFFE6F65A89D0A74E27F306BBED76
-1F35A13A1DBE04D998F5CD63054D98D5A209E82637FB48929F7C70C154F66B6E40DB0F74
-18C103D628A4BEB3BD0455D886D752D58009ACB9D52EEF4F119F22CE23AABF40C558BA77
-5363C68AEFA720A3B14576B1EFD95405666BDB2966B36C206DF8DC7C2797412602A7603E
-C13F0F2FE5747134C666FC26974D7FE913158CBEDA9AD94535099E136A43B962A93F881D
-880E205772643F2B60C8BCEC7E4612BF86F9C0FA3A2F13191C1A6C3D50B35D6E07F8ED98
-1B6D2F8DE15FD9709A8E541A0276CCA6542FF3B921CF5A5EB6FA0AFD68A952114C9A3F8E
-3B3FF6CFB9EAAB6DBBC62F38461824B3D0831C5E560C6459E6453B629B95F9D2CD117AD6
-E038075BE1D25A833FCB17D3FF657B483AB6CB82FE2AF17EC4AF1FDCC3FD6942A0425826
-3DE038F6D17E3F79404D44819424A2A4C559D44241D5F577FD60A00990FC2D14C271DBA2
-177747C6DE94CBC7C9C72D0459752D7E9680CE0181DBB43180AF135BCEE65DEBE77C1687
-078AB912E9183A60EE6229F6B9ADBA395A5559739C3E29C8B0EB221A036BA888FABE661B
-F4D4EE0B4B6D62C5A6C96EF3C57A8B104E14B9DF763CC16B81729D771B557C4CD2191384
-0B40201E52A80869810ACF32FF93C005CD90B15F8628832CC689542A4D4DE58B55B050B8
-3E246BF54510B53218A2C556758FCC89C07E5E7D892AB0B9264529368EF16CC4BD6348B9
-57F2D5AAA98E0F999D4D400E77CBE175D35F004A19AB64F00169769EFE8E7D287A7C024C
-A1A0D3F915EFBB25CF9604BBDECDA184C0D81EEB197FFC04B2190687D6086DC57FC08F7F
-2DA512C57A3B9CE44115F9A6A7434E203CAB798A8ED7A68D9DEC0919B0B7B334337B652C
-34F200CA9C679806B47152B2325AA1D1275B62F78B8610CE4D37F7F7DDD281AE294B7DAB
-508AFE5492C4A497DF7D37837D43ED2A3D91C04ABCA7B0F7414A451ED560D20B0164DB0F
-227CC753A9CD526F8C57468912A3780F3E9A6D626405FB486F6945AED27C48661FE726AF
-EDF3D69BC7ACF0CC657CFFD5347869D16AC4C6ED41F643C9BC981425125B563065DD7963
-22413E1EBADDAA6993AA9629CF048863BB3AAE34B44308D27C48B6F4F9E8E1CE6C471466
-678EE304328CCD8EF1DE777AE28EA758360EE7BE768332794871E18009B99351710E22F1
-83146E57B21C72EB728B83C9BC618904CC0094FDB26814C8667AFA12D26076575D26106B
-1407B08EBAB89EEEE0CAF34616054550D610DB759C168E26C08557822B995606459FE74F
-1D085225CF359A8092A9175FB03ECA2812D7467622F4F0132EB4B1DC6C40CC969842000C
-3DDEDCDCFA0E8CA62B214E34F1051F468224AA8D0867170019FE82F745DB85ACE622A175
-E50A3A371D5580313E08E2BE5A6262A83CF8B6DF0A02F258F81C636D02F381AB20166A5C
-AD53633533D61E534CFAB2899BFAC061ED7734EF53E7652C6D56186FC27D54991C8411CD
-D2E9D048910765AF119118607413B556016B075BB4245947B9ECB4DE17C38172AF945904
-92630EF8789A3B7D973C9152A4EAA90AE6C984622AAC31DD7952553DB1289CD44C16A3F6
-7FCF7BB135F885F083A539D05DD1128322FBA172737E00842BD674AE3AD8CB68D95004F7
-0EB5E23E04182E56D4E9355FEF193B4606D4C3D6B9275521AC4EE52E7148DE5196E7F84E
-A8E19C639D8D20F70EA1D413CE48295B47880A8535F8E0A626E913543AD381A8259FC5FA
-593DBE84701260503BFDF27E719A99635B710F44EB5382AC3E6444E6B7C6D5931AD45866
-08F06FD25CFFC918DFB136AE01275EEA017BFD989D0236E7297EAE998B198FD2DCA030A3
-B851EF96074946664C4C12A680DF7A412475EF3E641DE2644A11F9FECF59332241712B76
-4E6F32AA42AB853E51078416EAE47704A0063CDE2E539A46DC16516C1E4680A8B1785BF6
-CFA86A558F74164390C3D35DB0CB7659910B6709393EBF9397920D1CA964859983FB49BF
-7DF5472D866E654ED33A10B1726A5F3DA71B93CF1A21AD65ED51DEBE5625236470C49485
-AA53F0271E41C2A20553C67DC3388EB8C51EBF88E533B014FB9CCECD1CE071FEB8353D85
-E89DEDC7AC71C3873601B71CCC7BA3B5988DED9FF85CD350ED374EB8BBF2813854EACAE8
-3460EC71E78B7EFF1EDC8EB3E7AF2764C63760B38F6015B5299A1B1969251CF1E80B8E50
-4EC30439ABD13E9FE242520E37F523A1CE4008A75E490C2D5283F66FF5CEF6A97FE86B78
-4551D1B4BA916A12CD2BF1434FC74F43342297E4E6BC9E0A0C9F54ED31CDF86C93847E27
-B3C4DF7815D96E6DC9E88DF85BB7956FEC3DE7E867765E6986DCF54BE77F07AC3E36F27D
-C4C0BCAE8CF485A549534819543CBBF33C6DC3B04766DBC4DBEEE029DF6D7AF91D1170E6
-1F7968397BBFA987A4C4BC74CE816AAC3646A02C8E216BF2CED3FBE06C98AD6C5168A570
-98AFDC8F3D4C59616DBA4D3DD61E7774F6583644B27E85A670EA442C9D575265A892A87D
-07583509186E84C57EC343221FCB436F363AF502CB6CE631EC7711DBB3C37FCAD34D110E
-B82FF2F7209B3F68EBCA22D918D3FE424215139DC75CA266904FD5F6D40269D39517051D
-5B077D26B22F5D3F07CEB35444782EAC7DD819A401590F38571C148EBEA2E682E472DBFA
-43103B2183117A9002D04D419A7DB18BE5365FE9F8E2F8498035A992ACC07EE86E1A2AAE
-1258DC4B4C6F8D0D930B31FD0EEA876D0D726C7328DC4D5C76B6BEEE6190EB3B650F88D6
-45BC3FB7822F2DB69C2174C93E39A70320B47816BA3E8EA313BBF34C3EE729112A0C9254
-1D09C9BFDB31F939E8D03E31BD3263500F7B92E6072E1A418F7A70112C7C3609799A7203
-3A1809AAA623C58E93213D12DD3A8C37F3E156A7435A42D3AA20E62DC8D4D69BC694DB70
-533729E878603C0CFFEE8D5A4C1A7F29EB6E07799846CC096A8257643A9F85D5CC913E03
-E72C1030636E078D42761C2C3F0E1E84C205B4D8A3D17F63BE4D70ADC45F2DDF2B5121AA
-A4AB3D909D1FE0179CF72BDEA0250B110CB4F74648535A1E9BE45A8844EB110F60C490AC
-BAA48F32526582B619AF1DCEEA109B7DCCE048996547BE21D4DF519608B5ABDA68ABCDE7
-AADC339F5626E64C93110B21C112E12B5E75F15A8FF5B0DCDFE85A1E2F0968E721C242E0
-4B9543CE6D394F8D00B20A007EDA10672C511445DCD8470ED2413862E6809C15A2E9205D
-E522936138B66C44D5BB9B20C908A6CC8D6F6DEDF3568E5EC6672107A24032130CB5D5CC
-B8849075CC87FF04B7D8D5370E0294C87D20283B1E6D54679D4E73CBD1D7BE72B992E0C7
-0686C5BC456FC44BD468B6B1BB22D7DACC0FF36C94AC831D391CB9FCADE8F469A5F89414
-B22001501F06BA70414A074A4B7A6A0F2AA2AEA1DAE282C549ED6F656394D187E68940DD
-EEAFD5414238578E2A5757134DA9B6730BEDDF727773B2EC1A17E4DEEEA30482475C93BC
-484083883EAC5E0D7AA0DAC552FC82F99D6522FEFD818F8023B1F945FB86AB96713B3041
-03F2B5E3913A5D769D5033B2B23D69BB7F21E34B0E808A750A89885CDB2B65B490F7EE6F
-DD0A636187F0271C9DA27274A01D4380A02BDECD5D7A5A1AE228C22532838CCA3750A8FF
-48D831F27F3712E85B956F03F534D2A478F8F819EDE0071BF9132F78DC0F5B7D578FC0DA
-B3BA0CAC5FD186610C32FF89D130E0AB9E9E2980D9069D4AF6EA32E2ABFFE99B09BF4FF6
-588E56A2A87DB9313742A901826BFD2C80526CA519010BC7290C8B3A9F47B917343D0698
-E17565724A7DB1207EBC6B16B449D9E8B67F7CF227AF62815C71E553F644B89ACC4B9EE3
-A8CB7073905DE06FB65E44E0A762AA5D3A109B5A9092658CFD43E64F634BC8C16945DE3C
-267546354C88EA3C459AF00C4DA9214692BDA482D65130CB6ACAAA37CFAF3CB336090A42
-E7C67D0961B02F1B2C167726893D18FA3092EA8B2CD553480FCCBCE14BE635D0399225A5
-F65F995B463D640A43FBFD8892A6DD3E0B284455EACD55F2F973023DB12EC59EFAADE85F
-55139137DD595514800B235421CCAC9B0CEF4701977406565B494E6AA763FDE3127B2695
-6F0E38CEE9988649FDC62BB0C46DA3D253ED787F2997F0285CF008F7E34586E304AC3AA4
-87316B18797A189483105B0B4F9C96BC191A337667B58678C725BCCC51A5DE3FC6564C2D
-35432A453B0E92F550EE81A89AE84B79C3A0E22E6A23D0F2C263660AEE964EA461A40BE5
-8D2B1CEC1CD8342B764DF2A9901F20B0A7B44E5EAB40D3F0A0601794E5B42ECB812AE487
-4B96EFF33C2BA5801A2511B074F335AF4A530880F73F7A4344D22B2A9AAEC85B1D26C878
-201247E53901F4C41CEE45555EEBB174270919C0448DAC16160EB7AE2B09E96ABD9C09AE
-B7A95C4B5226D8F3125DD27E6CF0CF6E2A0D5CD6BFB414ABBC6C4A382E5B7F34BF4BBFAB
-013F885C4F224147075FDAACA41AF49F4D9034C22B0B9483DE0B075E641B5B3ABDAD073B
-0374B79BF3A07FCD45C148C8374401B57421B9B57CCAA25D4C8CC7C9EC5BFAD5879CCC93
-665C1BE2826EBB24893C36F75F9617BE4A54E01FC7A2F52DC845C95AAB9505EE18E370CC
-B5F6DFDD80DCDA36A05051C3478022A57E91F4A078F5B486F88C17763C285A2CDB6615BD
-62544FBAC5F75939A9153D31ED2CB79ACA1FF6F2483EA35AA9CA0582C2F2DE156E8BEEB7
-EF12CF7453475E7460A3E92DC95BF6189CE2144B23D4FE778E29AD6120B5B93F441D6FFC
-0310F8F22E39393A21F342A59688B6C11A66A3AF852AAA03C46A932587AA5D3685A3F4DF
-B1B857FB12619686F7FC6C2430B9C24F1311DDBBCFC8FC294D84EF5E99FF22EF6BB4B2D2
-20B301EB713FA8C76EC566A253A5A7DD2323D70FF5B48F2CA57A9D3F94C737326D2CBBD2
-2D7FEE0100D039D28474A64372EEC52C616F800C2CC1B53BA93A18E153CB91E089EF0F12
-318E3A844F017EF68C496477D1EFBED61D215ABE6467563A625FC0563E2A113B6A58C7CA
-75ABA028750E3444F6B19DBD850DA52880F3D8B765A8E9310A1F22502BF2ACD7A3E40191
-3A1D8B7B79BA0CD8D85225CC31474CBAF4479834FF184475C7FB6EACCDD0D5F1733FC56B
-BFFEA34E08A0B7EC795FBCFD8149E900F00B6E207B6E9464880A5344C309FD2BBBC58D32
-68EF30C36BB5A5C892013E8832BA813AFE822D11B3E3ACFD02CA56421671DA938398F57D
-11FD157449D3E423DB6A0A4EBCE845936F542BEB5B31406A6B5C8842783A5E19A6E8FDC7
-94D322239F4866F9EFD89CD88D9FF11C167AA63A9B6707DB1356D757C80623F10B31C661
-FE9D9F118208851FB3DDB8B0DD1937005B15D900B8B854C4571F3A9C1D0D67909E1AA591
-A59B2A45B5D8F481EF7B5DD6D4E6C8CD5FBA9C812F8BEB1C2A6E4BF8F51D7A507D6B6E18
-1991B5D4955FE3210612526CF495CDF2C3CD39A26F4BF6D98DD43C4D407D261C603B837F
-E8E09B15F403D721FA990224D46FEA9D7931D4CAFE3181F21B3B47A1D3910913C3110A1A
-45EE125EE773556E17EB3BC516E336B2C7733D8FE30FB7C22626BF7D94EDF00FD945EC44
-0D4570B85180A90BC46B280069BBF5B69A3DCEF13EF0F159B07FD5DE0289EAC807EFD6F8
-30A20CFE8DEF807947EC1442EDBC9C32701A9CE873748F33ABE5BBA35A85453DFAFC4CBA
-2F01ADE4DECE86290C4DCDFD676DA97B69BAC7A8BD920C4345DDEC907CA183FBDDD2638E
-D5432F9188CEA76B10E40260C4A8B559FBC422C41143432EC319E1727E8989EEF94B85A1
-8FE398A4928F6554DA075ECAF0A5B9305580853E010CB59142F847621234B4B7DAC52D86
-151E920633C2951731D4534A174CA7685E8F617EBA01DC1C756F91F8456DE200DD557AA6
-830A506DF674D90871943F822ABAC2867414D3B9D8D410E8BE29C00C7FBFA5B03858146B
-DEEB557A662A30F1C858376DFADD19125C60CF5A73C1B4B0BA6B6218F1BAE096C21F004D
-8716DBEC943156F291C61FA23F1FC37C20CA2CA6CD42A3A1223CC0DA7ECCC0D4C2604EF5
-796F53C1749E6B5E2E22F52A2BA077D324253BFAD6563AC2F6126B3F94E160D579BD0DE3
-8806C554406E63CC803A83D29E0DDE72B999D345E655899DD0E9873CA47C216C902A7443
-3F54D6D8BB3A716DFA65239FA2AF27DE88A97E521119041FC89312C4B23AC10861590A65
-871B7F0731BF11E3712182E7FD8AC4C94C366E93BE90243B0F5C29201E418CDF3DCD649F
-0D9A0C1696B0EDCB31616DB976F4761FD47AFC1872CAE6802FB506DD67737DCC10A658C1
-DA0CD9A920A96E5CECB844A302FF0C312C5D7A8801203EFDED0049FF37E9887132A484C4
-1D332E72A6FCE3C3D48705D86F4187910AEAD72CED404526CDCE1B8A34C91FFE62BCC410
-64663903D557C5CEE087600C09E32C8EB537EA43F56C62E78DA50FD5F598C0FEC55BD912
-BADFA2F5DD75523FB189146F92B31FDF6BCDD1119867C6480B258FB96A916092301679EA
-E82FE1D96EE14E382B00484A2F983FA5272B2B86280917EA80DA0449286CE2042B893755
-EC15ADDD93C432CD6989F9B6B8DE2A83A94F2B5FF22CC849DAB24A224DEA14A11BD68F10
-06FA67E62E6507B027F21A940F7E63A09BC9BC5299143AEA8B008665C9EB1F584D7070B2
-FD5B5E0C10FDE0AE740FC6C5FFBC1693FF4D2285D87392FEAC408409016980AAC25D93BA
-3C3F5E1F432706E6122FE76519F584F96A552D58855495FE5F0F4919DF8285C668416523
-DA7F2703095BFB3621FE24F6F2C97C073FC5AED60F7A32CDDF72327A1A0D32D58BB98F97
-01FF1F6CE4ACB58F44090E39269DA552D9E242806BBBEE9B65A619728E863896C26AE155
-6CE6915DC42ADB2E3A386FC4CBE64EF8CDD835A84783991F9274DF20FB6B1FEC860E54AD
-44F85774FD50E3B7817173C23DD46003BCE91605B7F861666F0774489635F4611060EA85
-8D66ADAA95B2BB066285F485B6CFC8FD3754B01CA01266D27BFD2712F4DECF25AB7FEDB2
-A4455070BB51804379A3D4D184E89B1D1BF94F870800CADAA95FB57B1227F0B691D253D4
-A85EFB1D8D182049259115AD8272544FBD0CD49E7A9F551E22F027272C60A1367CEA64CE
-49A07AA8183B4B471D83072DF31DBD739B6F64158165F8941084E880C8CC46F06F3AC420
-B70E97D8A8B3DE6478633FBD016C258DDD12DE9062988CB9CEC82E21D9960971AFBFE9C8
-B2DB92E3F848653BF165A78118962E8DBE219E4FDCD68BA661541B0220B2AA0CAD74284C
-8F28AC3E19638A0EB29903E703FC1145A0E9D33584455E5D1FA7BD6A733F8D8AA9AFF447
-583B0176258139CA3757A4FEA374425E9BE34B4683B392B6E334951FDF4E6047077B7011
-39F27A73FD2B4B115D8D408EA5E14636470794941040894AB66F19EFCFE812AB289C3315
-2EB58271E458B257F63715B3C05B454AAA50290F32AD47F089DABB1C480D92D69FF08211
-7C867A731F50E3EC9DA99D966AE570F584494A3A55EFA002D97D3A0EAD08DAD1494E57FD
-61EF7BA94C4D0C3E85732A07994726452A69DB3C27DFAFEA6BD6A2D192264E6B4B846A30
-A6BB1625381511EE16BE4CD4D5C7CE332A8524AD748DE4ACC5E08F3167E99F63B785964D
-B5871FCE8BB244F5DA0C7F00C5D198B13904D2B57A8399420AC2DF333B638F2A29B2E261
-D447F2AD9EA4F11128EDD65C6524A6B53412A7E92B1F3D7B4F7338A1CEB909357ADB0819
-57C48AD11E96AF967A60638E91B6FEEB4AD90C33F98AD1EA2B51F302B51D6D1ED82DBE81
-3DA68ECE9BD145FA28B7B6A5D6A9F7141439DFDA0E2D59530751F16B010326B54FCEEAEE
-2E5644C6F693FECC5AFB1F64CCA65DE08A89584B90D0B6B5C5F4CF75F2C2B1CFD0D32B2B
-F7101CE6BAEE7D0E845E975D44FDB3297D0944B9268E367A2608BF4BABFE4142B692CD16
-73AC17BBFB416A37580302558CAC6F7549CD60B75C9B5960A86E050612E9EE6DEAF19EE2
-6219E9C5D28AA076B3FA2504C1523269F093A0E00268E765CEF7DA0DF01AA3DAA12926B1
-A89D9BB8ABEA16CA2D2867790C7553E1E87F8CDA07810A4D94AEFFBC15FBF4D543BE0967
-B11D2FBD221D5BDDAF28718E4042000F5FBC07CD343FC7E6D9A94B8F6E9EB3B02D5BC584
-9AFA37ED5AEFAD28217ED06986DB0F51D4632CC5D1E2A49B950C3666815FB44BD4059294
-7401269A17539E88901FCE325629E59AD0CC15D6C3FF32D2497DC7A9797582D88C7F03CC
-F2F230692DD463F4A471540737E6995FC32200E7BDAE53AC1465188312C2FB7B52ED98F9
-FE530B8F1CF8A6675FB9E603F58BE9CAC46585B6D305D888822806BC5FF084210489FB79
-2E511A939E01E69AD152624777EE98EA396DEC7D2C633290FBA60BBC153D9A0C1DC5A269
-740EF5CF4B2879A839932E1C8850D1EF95E8B5A0D719351EFC71D7AEEF92EF29D3C41D90
-86DDA4AAA9735908CFEB590E365B69B2D2FEF8193FB2CB24113859F3BD2E99F01F2B1B4E
-080300193B5AB6F7711522EEC833D74A13F8686A6E585E7B6315FA28EA544B4EAE4EF62B
-88B781FED5741046AC84484CDD1B670017F0D0D2F19D3EF24E984B14CD052E3B38553850
-6307817BA3938801B9E1D137447D979B5148AC1B822D49059EEB945AEC4DC1EBEC2FF6CD
-DFB19A0370A02F9CAA30B6725A6CDCBCA72242B805E6559BFD292668FB5ECE523F0F44E0
-E75D483645B6988AFB0D5E8EC5688CB56B69A7B6A7F160ECC40894BAE45AD555571CC25B
-A86E81C5931DC238346DACF3EA05C078D309693F1E812BA249D84F6AD605D073B22AC83A
-F2749BF32A32C9115AC414D58A78D96A0F480C706266244B6A668486F54A16973E7A83B6
-36EB03E66507A277958C19D9AD4DE66BEE89B7463731F724DF5650CBE74EC300665131C4
-01BCC4D03891C6ABB61FADEDD7C83D56F35BAD5D731E0B3EA4F9C9A07FE5D3DCE21B5BAA
-1C8E79B19E38CD61EB802B2C2F467D1A8129D45788B85C9F7B53232501ABC0768CF3830C
-308A87783868ACC346DD0141702B517E5C07B5E29B238E55549F98EC3BBDB67EEC173ACB
-0DD4B3550D958C7E777D39F9C21CAA5B51404C28DE12061DCA1CD427089D2AD99D23DF19
-B0729235CA955CBC5E4077A0FFBF3BB64ACF02204B706733BE9CB2EFBFDF21F62E4E7ED9
-34A78E626472A53747557AE2C209324D1F8278E31FF96305F0BB41DB5B165AED08AD9312
-F1FBF368E09C4A4004649E40D578DECB4A1F82EF4EAF76BD8CDA9C4C61EB1E187E7E319E
-03EFEF18E4969C5DCAB53D8CF41AF5D4DB3D9CCBE23D1A126CB60B1864DEF1B702995622
-9BDFF2387711F1F06B807841406515B774B970666855333607B4DBEB4B670F6A452AD43D
-FA2F83DF711AAEFD9FD74A307335AE574B4097AF88C2B4C928BDBF40F822BA98F7F8CBE6
-26DB9AF8DB0B6A309680C026E9FCAC9A541974056EEA1A0F9F71AF08237DC5FA78D8C38E
-5E057DD2812E4591CA207000DD62CFF38CB97C8049B8CFDF0CE6BA900CCC85E02C758C1C
-27B00DBC3FDDDE584457C872ED79218368C8D8F36079045A6B9AD62AAD7A53E2ABF1AA60
-4AB15BEEF2736FC7AABED55B17B8E665B58D03CC42F70EEA4AF5F1D82B4EA91ED721C498
-DE4DBFF06C3E58E0350BF931D27189680C68C68D73555F02B76F1A786B4FEAD6D6FF846E
-370790C8529BEFE512A8AE178689A55C747FB7603D3F9A4BFC36FE91CF212CCC569CB895
-7680FD2D466A1C057C0022B4972841AE7746C47813AA324519B461AAACCAE87134DAA64F
-093742B7B3B691274EA2148071E77E636AE14ECD0CC3C9CC7C18ADB23954FBE043DB23E4
-DA069CDD55E908173D71582A774B57793F5228274CA43C4EC01FE31CE14699656A9EB6AD
-9468D7CA25467349B9F56CF2873A09467107F6B9C20147D2095B7294FCBB671EDF0B804D
-76F6E1AA7CE9D7CF60CDF7F85AD1C410422A779B908F3E6F6C8571B6FC4F7F012FB99FEB
-4292E9F354A3E9DAB81E22D4C75DA3BE9C8868BF2395D815D097010EF8A6A58CC91A6FBA
-C59344E785465D4B91F7633D1718D16852CE793825CC4B422EC90C3216999A55400FE0F7
-CDC38A0F6360802991885FEB799FFDB3C1C87C0127CA781A22BFB9AA8A6D6E414DD2C31C
-CA6304577E4D617A5388657632349D4F49D1582152E43683200FC465146137FF942F1888
-44975B7A2E508083B0261E8EACC54747310FFA32C00A0DF9B59F77A360349E259D9DB841
-47ED76941E8C8C6F053116A004C3998B7C84D94B60044480D048AB31F355B8F6768C189B
-E4A024183988E8C3717BE19D29B4BAA4A94A3624C0DC4F8A7A99121DCC71EA32D2B8D6E3
-B4DAA6B632E8D64717D32CC76C1322BF2FA82D3C349E7FBFAC44BA0304E4AB4A8689D819
-CC3A0DD336BB7E45CA84991DE87CA3C615E3DDED468DC67E402BAFE01E096C61E0BE0645
-AD50A227015278116EAEBF7895E5513E4A811BB90E1D2E204F3E0E656B3F75D25008E84A
-9FC4AE44628B7B38A484E23992C2C1EC229EE966480FCEEE199F0892689FA18B489F2C31
-F2F2196620809EF6E0524D99A86C627B053EA195870585D6B3C54C3B55C80E352482998A
-2673772C4524BB4467A867FD953C07504C6154201CF96D422D0A3151342FC9C66DE45FD1
-29EEDFC9ADF67374A4C1CD2E76048EA9D4212A32F468E74007A6C3A8251DAAC735228DA0
-5C245346BFB1903F217D62F63087721672EC60B846652D9CE8AA2350919ACB2D8490C6B0
-5B63EC808D611BB1D7AC1CB102AD7350773DC8248384D1FCD72953CE507723529CD4202F
-AAA080F519FABBFA48C620A1511A2FCDA8BA96E7784520AE0093AC58623AFCDAF0EEF6B2
-5DC8813512254752576AA9608DBADCA38F319EBF5164C1244FC3B6DF2523D8D8F19D23E3
-53C1C484FA52DA7B8D84D71100B076BC3082DDF29D6A14AE8BBC72B1626F882C1B98EB3D
-F31DE2C5174A0AC1E5F2F82EB3CFA93EF6741473DA694CE020EAC6E1EF41636351E12946
-E3BA2B1D0246D059563F2BEDE7A67648AE6CA534F32E52FE7F4F2CC936F9EF70C8EF1597
-A073E36D237BD34A3CA8BAD7D01C54BA5012C690D680158A694D2CC0362B7FFB8A888A39
-F2CB418D7FDEC46B0E5F104A032581415B083A992D6E8CB4D0E9FA93ADDACCE7BA34D919
-9E579DC050DA9032B1C8ACE46D1E2D224556FC0FFDC35FED173D86FFFED1AAE13734D1DA
-D2F06EDFC4FD311FC2279A79783B7C56928D5EA6F8FB4560776F99BABD3D228E8C62CCE6
-C06B7A122FC441CC5490C9085C8A469F524403B8ACF9A607651464467DE098CE068FC171
-55ED9489C819F31A3BA4E1EA3C728212D8C40CC1FDA9EC60AED881A93A411592719E4FFF
-B035AA8F25B9DA96D536969496A96B05BACF2BF1C7BA6EC50759CE388EB3625683C753E0
-E3383877F4B2F74B1951730F51ACC3B0107B6DAE39AD2B17E78B4194F5C8D162CA37104A
-E00F81F7E254B4D1104C01F404F41CEF92CBA628122589CED905CDE34196FE690EDE9CD9
-AEB0B9D7645D051E78CDDC34B58A64308A2CAE739A825F18525688E03E6138F5DA8D8898
-539F5E4BFC1C64DB496A16D9542674AD655EEA6DAB57AE3FD9058532AD0301CA47AD0B4C
-6998716CEF388E0B2FAD6D14578958FFA3330E3759FB8EBC2C25C61EF372235135D2853F
-CF308CF00441DEB973BB742C7CF4AB0C189B9FAB10C7969777928CC525D9C122781AEFEE
-8B82537EB27D7B264F5CC973B096B13C688DA097128CA6467997A5401DCD797F08EBF73F
-AFB5EFAE784C63F5D81CB073FA5DDA3B8F78FBCB37AD0CD54514F07C59B6FEDF0C86FC6C
-C0C5E03D5B75B147D0EFE4A484A55555F7FB840BC2DDC488A1AE3C26A22A7975C57090C5
-D2A8E484E6E7831AA47BAD43DF7C1D5C92AFE866DCE8E0B81E5D36DAA24FEF28D44C5E67
-18B277E8CED636116EF9EFC5DD3F06241C40F23A6334BD4C7DB7523C565A669C19EF1578
-329B297AE7F4EB69E25EC5F9BA77635BDED28ED33E3D1FCC4EC257E4BAEBE188003E3AC6
-BB930837230D7625415B260E4CAA348690646BD20F33E1022E1926AC163A59CB3BAD761A
-CF10756E27B6FF79801478D2B3F1CEA0B64835439C60AA4D861B7C4FF471A169482B751A
-C64854226AD0E38528F72B72FD8472D83909464F26AD09804D05D3B6DFAAEFBF0D0AF345
-CE1BD364299B1646141C294AC917E55458DEAFDDF0A9734218D5F5685F0ADDEBE6231377
-006D9E3FB3FEC843050CE2050D818396BA57EBCBA3ACF483A42EAF1C434B35216305BBD3
-F9598DDE9BEE0B47A4B8984849063BA638D97AEF425CE3C5A82F3A4B2CCFCF9711B77599
-32D10869BA44FD4DE4D9EAA863C811DEBE27EB910C265492A45BAA73973E3D8849218608
-0B6285D62F797879D6E118341BBB8AA44D0FE79DD91FD58F988D53AD07C17AE0EDA91C84
-8F2E83031A8BE1569D1E7FF432BDC605E434CD52BDBD52BDFA689A6A52AA4204BBF90ED6
-5A206B03D55B8E275755DD2853D6D944AC74107C3160AD7E87324BE16F5B0D6FC37DC819
-8259AD5C06483BC15F983B4FA914BE907B9AE230E655EB1FBAE374EBFB84553420C34D61
-AB2523A8C838526A9C88A1467E0C27AE1C3DEC1B011D156C8D8C2AEA0B7ABDA324656AB1
-AC7D4F5CEC922426E9D5DCAD965E0D4D0C5F4A223230E157A22DDFA14FFECEB183168421
-CB6462B3109211D59D9F00AE30827E55F27C17A7248446A21F4107973B0BC987919E692E
-1F76F7F540F7A4C440597B265290601FCCEF11BAAD4FAF3DDC4AE6218213F42F2BB253BC
-E6B0EF2E6C3858988141C626DA7A65D7E48175E4DE032CF76619736AE7BBE01C026A3970
-EC79C5DFE931F076DB5F674C163E5367F03AE6E2E7271B273CE5EF0004D7AE89B63DB32C
-0064FE4980ADCDE7357820F5943FF1B2AC49DBA19B2F124F15C7AEED84CA6F15C30A9A39
-3C7D492A0460E2000CDA313E9E420C5F5E47F959CC2329B6F8A1B7B818F0D44A2A176614
-D847F360F445A4168693257AE71D832577FD2E432EFF0E9322B3B4A404EE13501645466F
-5CE3B19EA1016D089DF6F96E5377A68592B981E728FE3DFB2449C7F187B3DED6F5DB1D55
-14FAD8DC06D95B6B4377AD1F0BCF7B744EC490328CB734FB1A45506F9B6EA2B85E7CF093
-742CB10D1D5FB7664A9A7DA82C2C2DA07F43A95CDFD02B9EE4D954B2BBDA540689DE8A37
-62219CEDEDE4C78F7E314EB519996C0610ABD85C749012C63973AE84DE4BF8B6B1333024
-BB6E856DE3BED4C890DA1B7612689910607EBC32814DBBDBF179AC0E7C8C0A31B19775EA
-14DDC7057CA38E53EE24A11CFF34A4E78672C14B215A8F7B70F3B6231E8C9E2206052580
-902E05AD3FFE970ED2228053898E3EE2605B4D4B364D463F0F3ADECA545BF39E0B14E0E3
-A7E5429E661A9718CC86D935E11FB2DC10FB436AAB75BE0AA27B8480AEA99AE6ACC68698
-7D69781BC4791A2A202B0289BADD16C29FD7A5C7C1146E51B4441F1BB5CBBB04D54C336D
-B0AD62057F7F97AF8F7BFFAE47D1BD86D2936B8BABF25E91E41CD8917AAF282949F0D9EB
-1D4ED2B89478BC159FD71E7207A65437B20D18144E4BEFA99C89983FBB71240EAAB20E62
-40E63F517EA139D1AC71946470F28E0BC26DFCFDD4533FA5BFC0C663F53C42BBFC16CB96
-8C0E61E2A6C4DB7B688ADD4E2F9D1010FA4B4E8E278236C66C7C1E5FE6B3EF982A970C22
-11006A98ABA967E7BCFA17176463E2509AA6218FE0A7CBEBD9F9151370FCC669EEA0AFA7
-265F498B879C4C94AD02327D680059C8F7A388260D1013DB99887C5BED8A68925C3D9E0D
-56335F93A402BE584D1798266F41C5FF3C647DDD2C2D788A7A56C8278303C0E9F20F8595
-4F6B47B79B6CB9C6FC80AE76BABFEC2B750B5ECB267A6866AFC68A51F6FAC54B84B9FDE5
-54165EC7104F5626108754BF07116A75EDE93A35CBE84FE778DC3BD50A8421A959B512D7
-E7881889E5AD2DCAF9CEF64E86A98BF5384D4F341B53CED94D430F3DAEFB506EA693FA23
-6830EC178791B015ABE069A44CE20752334986A43EC06F8ED44B0796FA741F0B18BA5821
-10C4D7C3B9B681047FBCF17DCAE103ADA23C9D41955B2C0DF276D5DEAE83A941E8241B51
-DD9FAC40AE8FA3B9308470CCCE30E17C1C015019E1A69BE8A054194A1190B956F414D473
-DC5605BC7284C0025F01A715D7282736704B3E824BEC160772EA327572384DFFA650A292
-FEF417B2C4B395AF893BCA339134D3BDE3E4A8CE7D76E2556C59D7292003C5487DF76D55
-4549FE9977FDDE5460389F32D5663656528C257C2057EA3EB5D70D20F550824C71DE3212
-32A29241C8BE67ED9540B3F461A001C8F63898DCE28423A3F5CE806DEE0B50E8F5A76C86
-530491F67C48B8683996B6BBF6DBC1666BC6E9B2BF4624701A67B52F792333DC12CC6142
-B2568EBB0ADDD4F9F3443D45204B013E098E62C6ABE0FB14C2158574A7C0B24EDCFE3557
-2C5C30294889CDA3C7C1C67558AA3C05D012F516479DEFCAB7ADB890F9E96E9615634176
-5E8BDD3CA8E85DA76443A538AD530EAEB42E6876FC74AF2B6AC2526F64C8D323B5F5CFC3
-BAE26A4F30D4477EFBDF054BC83513705CE5830AF048CFEBFB4AADDF2E7483A4F1860D18
-7D318914C3622F4EA58942D5527484D2AF2D0AE2DF74A1975268F9ECE82E364F5A3B186E
-39A4A10049D6358C044B6B05E9B90217D0A3BC0EBE473DF1A7CE2A4DA8D5648DE7BA58DF
-0335B7A4C4DB44B2BC583DF0394BBF14541329B64142B6FF4E37F523DDAFD8C1067DBE8E
-4770563B8AE958C26BB51920158795D0A4DE9DDD3C2874A572436749FF5535BDB59E8C83
-E421F605083516551E89A2FE34FB9B4AE55036A3D7ADC71F64281A3C54EAAC2670CB34E2
-AE94E71943719DDD21B8AA335EA3181896301B065FB0519AC8160BF9FE18957E5B72396E
-240ED3A9779F04FBEDC858B2DFCA71863A17E73D53958AAC58CED0DD0026D562BE9F395B
-49C12C0C29D4B84C28881D17B10F5026F8B208BAA6DA070F94110587A76E00282D3CC5BA
-D88C3A9A714C063F8B325495644DCCEC332257733448C50A40DE95BA8E5AD73FBBE404AE
-EA1B1F49DE4F9F1770B73ACB5E9CC4B5D1204A97335197B14DCB3DA403DA430EF0C2CB46
-E050B1E17FE0105A619BCAE09A33CA4DD54E84B8568299C1F2EB116C16D54DE40D9880D1
-B2FE45706CF0340CD591FB94B130BF0EEEB3F1EA675B032AA0A780F0E0E69A63E932E01F
-43EB43DE97EF02CAD65BD2013569695789971D843DF14DEE9A32A1EF22BAAD4A4468AC40
-588EFF9BF91CE0C09C30DF0E2504AB95E85E70F6769679C12EC83204FF0C5CEC67A26CAE
-748F530A80ED96E3C6D28F8F12F5B3A7A53B1BE5B096B0D186784402A3CC1D4EE4162128
-D0FF956979EF79DEEDB9732249CA150D159D1FF502E33E4A305F066A9617BCB637DEB999
-DE15A2DFCF9297E2E93F65D90A233B7F512882AB88439B26B9C672A08EC301262BD37164
-37191838D992F15154E96EA15454E4EE9E9D4C01CE2090120620F5E5A0849036975EDDE7
-9E207B17DFA344C8300D07BF024C89B9621F8FDA10A5032197BA4B6C127FC68C3D1397E2
-88219E9F151363321807084F8596DB0A24A8D6E41732C843C01843A9B4D9C1041D28C7F3
-F4DD289EAE019B6E8A3CA2952A8BFAAE3CFA6F0527BD3CC9544196A0DBBCAE1F095C3674
-B34358049CF212CD96530B9875DE99D93BFF4D87E544C7FF8E79F757ACBFC7DED0A8FB1B
-4BD53D1E76FE95E930E3F329DF6310107223E4E576F38CECAEF561B5E95CAAEAD603B792
-F1B1BB7EBE2C73E7144AD8D50F0581AE74C9A811A52E986FB6E249F9290E515639900754
-C8FBF4ABD9F642970190D28CF4BEEFC7C39D1271DE2A357949A69BDC6D8343487BF6BD25
-1C1DBC1132B1FA6FDB4D3233ED570D9310F8C9DD92B7217EEDAE942A25DDD6D5C24BB4F3
-9809C658BCD0CE41C70709AB8899E4956D9615C1A2B1A627E47CCC17DA3454291667EE26
-AF97D99AECD1F7AAA7AEC910734786FC797D819AA8D539D10EE8DEF86E4499010310E241
-C9FCC7F3E2B0FCC692D9B2D8346717A5781E6AACF1A891E2E6E65225F35026AE348E0E16
-7475CE6A9A0C14FB588A483B9483AC475043907935061B48D03677ECFEB8377235E44F7F
-581F02557B6F009E964A4C345494EF9EB4427ABF1D2DECCE71A87D55C57ED6E561CFB835
-8C8A38E387531A6D04AA87F5AA92D73B2DF8C972402001B9FA67DADE45F803540AD55272
-AAC3A49F23F910EBEE137F616544F86DC7E33CF672859A545677018279B5D1AB673640DB
-4EB45C3049D2BAB6116D34B3CF6A88ADFCA5A657E93C32EF5912DBCE65C9527C068D03D5
-A23A29E934391FB4317CADA46B7CA8A4F0440CACC958028D20197C1F1C0D3CF39F107548
-5928CFC10177DC70FB5133A7ECC5C82C978858DC1CF44A53B4461E85B6591131B19806BE
-EB57CF868D200A7F27567F124140D712AC0DF6D6FB8045671207AB0CA4735D4422EE8133
-3E0143072416E707CDEC20286F72E3070E374D79D95CE144AEEC86E6DC9001B991F15CDE
-9EE7E8368B4BACF9DBA6E83848E5A3088C2858C71BB5841E990BEF89DE5ED42A6EF9F0B7
-8127DBF344A29104E9272D0ED77B5C32D245B17293C54F8D939E314350B42D95A3A2F4D7
-6FEC437F8CA935638E8558D7919ABD0DBD6323F83AF703B38E8445FDCACC8F1919D2BD4D
-808D18FE28285B62FA958B34CFF05150BFC884F0A323F67CBEFB98B393607F500530A1BB
-CD2E2C93D25EF97621F872091C13D1BACDCE7DF636FFA29B24C51111E7C10F0FBD250FD7
-0899B2D370B955A7B467F9C726CCA0C1B05938FAB3357BD97FFC32A78589BAD9B54CEB88
-E0C95CDF9387637A043394276D50FD4E6A6170DB7325B11EA2145BAD3643F51114332630
-229198CC4A68C207E61284CE848E0CB6F9F7FB24E72D5D0877F2697F39F7F9F713FE2360
-A199760E993836E477943388D08EF210C1C782E086639B507CA9CD5428FFF902EA82B280
-DD203279043B62ED9C93150CE5D365C3ABB3C353172273AFF2C75BCB68FADEC1964DAABA
-777D83401AA12D8B5173796F691D8A2E9BE7FDA49421AB46A014EF1C566B78AA4889C684
-D45B5C9181DCD1B12D4BFCC354454B6A85C4FA25E74D55A1C6CCE8C4FB9ECAAF885BE22C
-A5DBE8ECBCF909D4487E6C64DD9B489DF6BF4B1F2A38B7D18983B2E41696D55446FE1261
-11A0940EB96A23142770F5A17CD8D89E85C6CF269F6041B0F32467D1DE4C0335F543CC07
-492BD7BFD0209DFEEE502FEE06D2D0EA9A0F81CD36DBBFA8E386BF486338444DCA97AA8F
-83FDC85A8A88A801854C22B3849467A660173E5E81C055E30CDC869B1BB9C367923A3491
-F51197DC9971B477FE060AAC5C91FF8D67677C3B08705254972D8CBB0DB05A10771844A8
-4391AC7B60179F20E345D2C9DFDFE1C42D947DB12F84F1CE05991AB56FE498345230BB3C
-7F92A3AF86D20828D86E931BEBC818BE595D2E17D3F9E105E39649E89E13656F9461087A
-36E1DB0DCD850BBCD07249227B65E494CE8C88BC106F7CEA5EFE48E482F66F5F6763A766
-0262501535FA5FC71CFA87BFDA2F8FD2BFF0553D2008EBF081BC56BBA010C00081EA5D80
-190C4FFD7A105FE500915F6F652A0A00FF97A7C825E8617077473C38B5D820C24F78E387
-A776A8904C265AE4CABF3D1845011DB66A4D732F842FFD7CA1F5FB53714D0EA9F43AD20D
-280FEBA87134571F5405A57094243FB22E12635ADBF0D1900E93684D1D8B5EB04D9D01CE
-A3CAD54C9B4666E336DC6EF82DA6915CEC1F11C89E249B0A5C460BE552BFB4AD545CEE0A
-3A97B65EEBDE82FA1893442E7446C901C50838934D82DB73DB7780946506B966CA83A142
-5D1A82EA07C3941EB1942325E258A5F39BC9D7B8D84F7AC876C9E47B854BE1D40154A54A
-DC42BBB5E5D318A6E8B2B985F2F87F5A2486F261CCB59F171111D04D29E38CCB692F21D4
-E5909148ABDA6CE4FCD577E3EB39D8199C63E1EE22443B0176D84D2EC501F16BD5B01826
-67DCD1C99DF0A8B3F27BEDD2917BB900484171D2AAA6E0B39FED994DEA6FBA6877EF4D94
-F552177A83541F4111D1EAFE83A5D102A011726403648B148DEFD8754E91E52BFA9A5F80
-273475A427EF5C5CA4D981A2D98AA00A4BEAA2779FF342B5EC0A452F860620B88AFBAE3E
-1FFC666C05647B3E73CD54BF35FF47411585FC84CFD702FA116EBDEB396AF5D9C298C3CB
-BD97E8EE08EAADB0C854F18D2AC5D08771ABBCE5B70895E8F04C3CCC49525BBA4407E081
-62A272E0F623578EF4502FE2DD325DD87021079967B1FD01B95E8A0CC6E65317D947B340
-7B42052106F27ECBF69B431C6D73F9CE9220BE91C38E1AA2F9779E128BDA6A76ADE5AB3E
-B9744A6365A95368D5F7C9C297F5AF8C0E21B16FB8B8DDDE4AC3EE393BE599B2B3E3698D
-38C84A69DA371E8C323EA53BB232F07A761473580CC3F0CBD5C73FFDAC3BAFBB1D9E7D77
-1CA641EFBB2A190E8DFCDAD040736BE41D29723711CE965926CA4A56C6E4C5FEE60C6634
-C3B3BBE74BB0ACB8BC0FF9C426679D863DC1745AC462037444B6631529D8A8BB22EF605E
-53297B146FC90E7A751C5E151545E89281BCBC7271731E5B0362994090B2560A8E62858E
-860FF9644008AD601B15FFD2BC3D25D06FA0D78F003AC39D89FE621C1E368BB9221E2C59
-15A56634D5EBB299635F48DFA2BD37431E224E38CED95C183604B9CC3C8B153434D6DBA9
-CA955106159337D2709025F848B5440990957B0F12D416F823A75EA2567DD02849BB9B98
-FD5F32844E8F24ABDE050C333DCD9C9E4DFFD97C22C0045740B6B3E94DD8964F1E601544
-4465655844C809A51B9658EFBBA085489139EBD2344E68FFCAF99BC6C50C68C0C03EC1E4
-0C378E68F1CD3A8C459D732377514B1CF1594627569C16F9441AB05F9B4D7B1A6AF79E5F
-E62D1DAAF71234F31509DD947BF67EEBFA0FAD13B794D4292516AB84FB96F5DD8C6D65C6
-0B822B78E917D7BF5BA9F2A4C90D94625B0DD2E31AD0D12EB3AC5F882F72D07F88045B35
-55AF20B6AA3648EFD5CF73798F3CF86B139C909D1D253FDDCF78F0915EF8CEFF7FAD6CD3
-C784BB88B8F31D1DA52FC67500D064DE56C233C333CAFD866D102FAFA71A2B2FCD2715EB
-47C5B65909EAFDC5250EDB78FDA4854EF0706F226C1191ED8E1ECD79A43BAF7154547059
-D567146000900625B22D3F7E356DFEBC00D4B6E6C1296A4E4038973B9156D5D748B6C0EF
-0B82B459E24670C9A951629E57FA90935E710899C37A5310822E99AD7D7B32018DF94FF0
-E723CDFFDBA6BE5DE8FC147C794E9FBD12D3CC53C5E14A328F6FC6C6FA479A0E0F760253
-899B220E7ACFB537262764F994D680BD4A48F618E7FFE9E92FBB09ADA32A7656B14E53C6
-B43774A908AC61698B44B4FF91D6BBDA42D53DDF348CD277A2A07A0ED439FF4D94F769D7
-6FAFC6F19F7A307927FB233796CA701B40A1C3E93A98703802B5D41F8A57F0D699B7ADEF
-AD6D130B06C3D34C8D2414A21C75D4FAD9EEF2791AAF7731033336E141E15CFBCD7C3923
-C663CB78D678F222738BB970C5ABDEC1C983D465F71D8189A9F1A031875460CB9E46FDEE
-A4074549FDE7A01F209409850C6848DBD1C9EA058A28D224363CD796F106683166A00DF8
-F5239AE3288F9D0C14E05217849FA07DB6DE17148462C0AC9195FF3C20B76C452DC58273
-3B81BB7526C69124C4AEFC411FBC581C29E01494C28F40A9FA088AA7B727E5C6D8842122
-79BC38AF7593B2A53E8B0FAB585CEF88D5F497727EF2342F89EA4901DD5FC97AFC1BB805
-817AF7C8FB9E1055D8A2DE3DC09C09BB71A999CABB055C4E2600D91BD4A0A6FB2E9066DB
-CDAD3FC26D0921B2B9ABDCF99D74CEEDAE954EE6AC80E6AF69EAD98BBF0F14788D973381
-5714B6C0BDA27CB3E7235065ECF910CF27DA939D6354D3CDB120FA8E0E1C28E48445BF7F
-06CE9F6867641A9238175665ACA110E8908243CB693C60D369E1C12D39ADCB6350395F6E
-7ACBB1FBA75E91D21C141394842D6D107CB412C754C0068DB283EEBF44046213B55C2BC2
-5E403DE803680684F0F5E2054548D3AA52D5EB1F4E8D32279697818359850B50DCAE5559
-B000B4D74C97AD069101159A5FC03C66FD88F44824E0D28681870E6FF118DB32ECD10A88
-1540C1B63BE33ED8EA640F50C47055797C2E6A04BE027BA3A2E8F9344FA48BE1EF0D3A58
-59F9CFF0FDFF085F78712C711D4AEDA295775AD416408D226C4DDDFED69F5FFDDBD3D6BB
-590EFE0CBA5404FE99FC4AA90D53FD3CEA35AB8042784717D1EB67529B74825206798862
-08D744892CFE8944B9EDB4452072D39363878167C371C3BE4816955959F7773BB66AB794
-2A2EB43BA482610A388035F9542C3D321BF1B1FFE827812A6C9A2F22B17CE0D04BB34653
-02D0F9331F41370AEA4F1B09AC2AF71F588B250D4B777CE024E9280CFE9EB36D9CADCFBB
-4C1BD4CCD1C035B15D736C6F49AC229909BC877036E6F584D4155E0D20AC99E41040AE3A
-23A0645A1B3C8C9553840388140AC1B49585231B98797C1C19D483A6E69FF566E6DC0AEC
-71807AC1F4D3DBEBB2F4A4F6576DBA8A0B1B8643C9BD1D97A912E90A737268F6A91E0A70
-FEE73DAEED851EDFC631701755AC7B2EA3EC8990EBFB3EEB64B75FF320BA84821750BE74
-F2F2C8097EE95B2402D6F4C31E1BB947A5F86168745F8BE621289CB65BB1AA299214F52F
-80950D6AEE089AD94BA4D19B9767B4B3D3CA631DBC1B2A37B3BE026429532E717BCAEF7E
-8BCE17D47F40F3665C00A0BD87BB6033CD56FA275BF4BD06CF4F2B0ED24A061064092815
-9D73667E820E4235F1C4E629610A1C260C43774831CD75A5375399644CA9C46BE2F516C6
-7B059743008E82085EC673CCCA702BF07B8A9F57BE338D2D0F8D2FF6090F3AA1BA20A9CF
-C02EC2471992118F070FEFD45B3C0FC0B55162490FA9D9DD60A6732532F1AC45A4D5ADA8
-DAD9ED5D24080E2C94F6A30ACAB0F075A50EC19544623D14A5A9A783A61A75D6F6E6249B
-7B4AD8EDDD1154ECCA8ACA427736DB27758A0D7AD3F79745FAEF53B171D96FC735281986
-C4214ED6754154011F4D0B1BF910142DA99D3BAFC74D8F2BFED52422BEAA5DE0BD18538F
-1C8CA315FBE5510954227B90718FB84785E0ECD9243B7C991690D2A7ED913E5080A15D27
-927BF869EB1279474726B8317FBF9B77774B2A97C294D56D02C40087DAF596AC35C2BDBE
-CE3CC534DC34CB2042F85F686F4FF4098890439464D56CD011FCB85BA87C6B51E9C0ABCC
-EB9A96152F5137E6590DE02C9E9C24D133FF585394FC59779F64E1AEBED7A007A269482E
-E8943604DD95A632EF16B0888DD6080EEDAFE8F386E05427DA25E6D15E38BAC599A57266
-C416F20DB2B81BFB7AF0F10223DF1E760C2B3EF6EC37AC447833E8220604CB3643CD2CE9
-53FD9E2D22F6053A7780F79DD161807B661E196C77DFED2AAA7ED10253943A7FA2C25602
-3586BF0508910EA8C688036557439C183A1E9B9165DC2BF055E58DDB25672E7E701B3CCA
-056B592AE84DA9278C95328EEDECA8E7A4FB521D3646F3195D9A21517DF98B334AE2E201
-BC4D0D3162B6D0F53F801263DB7AB69F1D2998038804A2A8E96E588853D7BF448C3DED2F
-CCB995EBD6520A2C6FED07E13EE3E546FFAC962C6C30F570B8BDE1ED758550150515C927
-2C6760A12A097D07A6A8AC10C5FBB66E29BF85A74AB804A6CC99FE01946620D14C3B8B6F
-FEB0C74E4EA1A225D5B9B5DD45389FCFCBAE9D45AD3C7F3E875C0FAB231F7902B5C860F0
-2B4A13B39AE999E051B7B8D05BBED72B29ABF13ECC485FC1EBF0DCE452ECCFE6F230B2E6
-B778E45197B80EE42F4ED63DAAA570C4ABF8CE4B30AF7B694B70780F96BC9742F7F1D3CE
-66AD5E473D8CD8002A436B078918949013B721329F9A931DF6F084FA5FB7C66BA81B6980
-0CC79452F5EE2991BFA84EA8689A5B7D20AEE04B0E5B0FFC03B8D8D1DF4F1D3FA29BD6F5
-433809C897B31F184AD02C8E9FEEFCA647EACE79EEA1DB444269C3F88EBB896B2A81995E
-9030FD059C48589B1FECD0F98490152F1A1CCA7929F19951D345E342A805FE72B4A1B4BF
-F2730AA22A41D1E07A890AA61F2B9B6607191C92D052A673B15FD49145611AF6754E4F32
-C12533BCF702626D7F1E44A7D7150640F09819CEAA1C0A2E2E8FCC3CB262CF29232A38B7
-F0EF66086AC8197B5226C5D69A6F57F16733BEC14D8E7A47509BE951DF1B810CCF6932FF
-4DC57D208B13AB86C0E22569A6C11661C91711C35C61BDB6268C82E08AC53589A13FFB3C
-F5EDBEC7E7A41CB81401DF66295606B544A9DF4924416423D6732B4631EB73266E370083
-16D0DA6106AC038C1406A5B6F8639BE3EE6C880F9DDE71085C6446F9F2815E2A6ADFCA93
-5A7BFDF4D5AFD5CC7C8C487D57B090A5CB7A7712E207FA7000E39CCB41AABB32923D5E1B
-C8D7F2C05D9A3FFDAE5AB0BBA940A8A25114CE99B207FC2DB264D44472B188C5CB9F41C1
-913B880EF8108348BEB174712B2FC1192F37175C5060C9B1F63F729A4E94D0DA524E2DDC
-ED8C1F460B782DC62F4C23C6C0FDDCFFA7E2F918CF417C2A4ADDDE53381F65E3DB52D291
-C72998809B59818B71BF922A04C053E2921679838CF482AC654E982A60D2C097C4A5B134
-34657AA08F5568536FFD2574AA4A88873C762371971480ABF1290A05AFDDF9C072DD721D
-EF36CACA75F4AA4E28F965AC02A54735E167A7DABF06ABD1FB339E34848F1CEAE16D4744
-0107AD4A526B99C6396BDC4426B858BB7FE38037F46E180E3F8108C79E457904E0AA9BFF
-6D3E9B2A89D3F40ACC279C87F0A1DA1245AC6E766F7FF56A7F7DB7352673036D8162CB5F
-C666B6F2E944E19F78EF0B87EFAEFF4209A5F83A563A6954873F88B2CB402462804E2850
-C1C5379CF747707E54B6FE28163C31E581B5951E1A12169B1496CFFD8D862FE0126A0460
-7435B53E7E1453255BC1BF14B67D8275CE9DD068529E5314A28087EA792E841448B2720B
-FCAC76DBA06A85D1FFA731D06757170CFA16D6758D5E371655C64747E1FBEFDA27115923
-C701004B5E38E32E4E9FFC294639B67A0A8BBB44D6050AD78A41747910AB112CC7D995CF
-004B43B8C0AE28049672D0591392A2EF95A8021F2AB281DA86EC270D683060B8D9D6127A
-CD4D5900209C117295822A9963D86D5B85D66E4502E5D2E03DF43DF5A162F502C454E971
-09A24B58B9BD864D5E11F8818811AAF0FE432527F897C7B9B1853DD7E73250BDC414A83A
-85C6916FA701AB3B71AF0AA8429DB2A9F85BA74E49DDCAC5174C927F28C1970D0FCFF89B
-ED30E83163D21EE4741659EBD12F2FDDC934E812ABF1A0A0CD1D2AF47DF045BF6C6CC15B
-4E61D058650AAAB48CB9027757EBB21398C5899AB5876F13E23655A7AB3C19AB2D3BD7AE
-55F808B6F4409012629F99A24FA15581F9EAB68177DD80DF8A78F0440E5FDDDE882A0976
-076F1B708C63FECE076193E53934681157F1EEAE0DB94A68289A3963775E0793C3FE3862
-9A6D3161E25A76A5CC1017884136E801A9EC1958AEAEEEB543BEE46B55FACAFC0A8B0814
-9121CFDAEDF975B4722D7EAC6768779DE79D4031D42622D3B2EC0A8DB5BB117DE455F37C
-7E5A948088828127F042301446E89F67A6748440460844A5DACD816D728B00C725C771EA
-647896AC27708EC7F9C858CD6E5264BA8DE4D1B2662CD161C0099FFA627070C7A228BE5B
-F38052CFE6640BD91780ACB62158ED53E83CB21BB2DD3C2C40B70CAA21FCFF4BD6F07220
-67A644BE891798B0FCEB7FC5365ED584349903AE4BE36990F66113C3E3E2A12A2B822A5B
-D334342AAA886A4C3460598A6D2C6C120369E27F5D8DC14D2C79C7B5215F0D6D0D7D7F69
-AD2A561C66C113DF9F60548A6725826E9C508BA07AAB59F3BFCC74D70D3D00546745392E
-FDF15D348F0A5E36AD6C250CDD7D4AC53DD79991F36631371908BB9CDCF2089F4E37EF58
-E9A5AA78F3896AB9769C510A5965BFA79E40083388A56649126390F24312A4AC2D05C2B9
-A5CAA54F62628212354D6EFA8875F4B424732598FD8ADD1DA5459243D233D95F8840D51F
-93847579566AE17644FCC7165E551BB9BFE7666E02F77CAE781D41D2EAD5388553E06363
-99653C07C45F603D6C017AC9DAAFA14339F25210A4A91DEC0DDED2501D38C15AD3371153
-CE2CB9E7A77DFA80BBAED85CD46D3495AF1D3BA9246885CCAB880908970E87B0BBAB6447
-A611956A2614BB89323FE3546868CD7C558C0BE2DF1F3649C0190BBDD38C8168DC698555
-2E913FA8BEC47F2ADA8211F4FC25EA75F5BF578FADF6707F051A0DDE5CC99C83DE55EAB3
-D81F40A05370B3609A9EE133982CAECB4108661833572E5360D31CB29916146F3D43C127
-E1DD71CA9413C462AEF379BAAC990E9C3BCF2C22E90F15AE7CF1DC3C52A44894E123881D
-B6396ABA0C77AA2EA0BBD78C7312C9B9FC36271B058DAD3F57C44F57CB825908CB62B3A5
-CE1BA60AD20892AA2A559C53E8A883E9F9CBBA38D13E8E71A8C008861454A58087E729F1
-C50723854AE1F620D3E2D716697529BF345A269ADC240B8EB1593604E08A12E8C184EA2D
-A26B206A5643EF0071D752A3D4982A507246F237880919ECE1538E34EFBB9D991129B948
-A0D37A10321F792A35C6602F5191D34100396E0E89C0CD41CF82D1A3E55FBF6575DC08EF
-59485DDB2F33B1689738ECA78A59501F8A838D3BB960C025617D8C50855F31044D02F076
-8B5B1E6058737389AEC850E66C6F478F96C5C1D2F451841C30D6C1EFFC5B780D26A3BB24
-AA555A045DE634041EAE5F0572AB927AFA68877A77FF3AE277505B133BEF87C2899DD7CF
-A9275F03B6B8461DD1791D0B0558E2E7A36295DAC3CAF878BC670E6B005FA34E78938F50
-DE3B75424769ADD07717737AB4E965A9565C1459C3197B545A64A5F22F7F3BC0A0641122
-85134DF7405EB961B367250242455D9896F92FD1B784AF5DF40C408B0F30A4689168029D
-B522BFBE784FBCADE1D1301EACB5EB09DE63E20D5B313D2D04DE931862F08309633401FD
-2117426434AB74A5A8480F6F9466E93FED5AF4DF1B3C81E5ED77DA855D1DCC9803DBFBEF
-79994E045DCFA6FAF3BF1DEA57EB30FCFD0BE7A17855D82DEE77AD5F61C08DFF00958DFF
-B5604F75DC8CC24623F582BCD220CDFE0D340A1C476D09289C5213DD812A0BAEAA492E8E
-AF3436C2D490FB5104DF3139BA8D5DC7AF08BD1C9517206FCC738B626C3E29E590E2883C
-30A4C745F59E54463086B20B76628FA4DD6E295144B43C87311DD11B559472034543C376
-65CD9B874ACEF7028F342E2B34CA04260ABF8C8E6193A64B94B6E1EA6DB6AC39FF3EC27D
-A41A460DB7FB38555E272E1CDB792E682E887EB5C5AC5C0D4037C2BEE840A825AE864D34
-B205B65BA9E9B4D07A16FD1D285EB96E172E89A1024E5C0BEAAF1E37861ABE6767B98CDB
-50C786E66AFC82AC474391C08F1FD549FAD7401F72E04B3A9A6C52C1B697E9D4E3E33122
-EEE5D0C72B03CCE96FC3D26966FC06C9BA4B7B838076796DC95CFA3FC222B3097C43BEE6
-251843EC7E8C81377481BA2C5F77C47C2BBC53FCBD8305C557C2FF07B9CEA70184E9DB31
-98CD10E6D6B9D3ECFF62AE429193DF88CF2A6548766C2DDAD04C3062D17BD5F4AE274043
-07735A6DD95F65E3CB850883474E57A0376F867507756D7FA74D0ABC7AC4ADD08E0AEF53
-39B613F64A33F92ED360B7C0A65F8F81290408D0B8752B7C03796629304BB83A455D51B7
-4C89ECDA38CBE83C5FFC54A7E5CAF3E2636865BEB3D6092CB7E4EFE6B13F710988F1B492
-9F4EA0676EA6B8495DF63F8BCFFCD47EE238221BA37F1C53B40A20D70347145DD5A04858
-4F1B55173B2808416CA7BDDA7775DC4F208742F7DE0382C97916342A192E47D3BE4454E6
-A2F80C8B72550D55E9B463299A2008334589CD4B5C19FD948BE6F9991EB7988F004E3BB4
-EDCFFD47BCF21276935650AACC3169B54109D8C02EE11D3B2670A7CD006DBC704EAD9F5D
-3D1678C93199034AC92DD1959D25423A135441DAB773A78739663959C3AF3BE598102B4B
-504DE19444E3BBACD584E15F6BB0D6AAC894FE5F86999096DF225232AA65B122511D3D0C
-6AF2A7B25273CDCE5F4791416BD85DF4841C49ED8179DAA39FBE9E8A5D0A1BE58D67A0CD
-CED550F9E02274A337EED7DFA9C3E23AB6AFF8F782AB4DBA173D8D0DF5A687070A4F8782
-DEFAC64D97487B10BB114338A16A081C64853076AB441E0598135A79028847D19229E650
-E96257DA27FA1C78F42302D996744BD5DDCAD26FD13F21B2D31ADD3878493ECDEDF6A257
-CA47BB5203286AD59910C8BE7604244C6E0041F3AC99029A5C61CF29A105FE4572BDBD01
-8B55B411B4CED2FB4F793F842CE40F2F8D07D8E10E79587970FD254F4106278DC7FC6E86
-6D7A1729C01D612A7FF65A63CF1C27CC79AA57699B0188285F474BA5BE90322DA6F653ED
-3BD73542F9557352A042731F7448ECC6F931218E6B25ABC903E201F61BF1A7796135506A
-DC2091CC49E8776202498C3C779C5A0DAA64C92D65FD3002E359062E1051FEC9DD47DDB2
-08AC3EC609544FC692BC2638E17AE95601E0153EEEAF7FF294CAB662116B455AEFA27744
-FA0AE2C7274442ED99491738BF4E832BD2991C59C2D94665FB6FE9EDD8BBD65EB2936F9F
-8855722E84B50DD6EE83331138EF9779751C13E8757A54DDEE891507D2D00289B8667C6E
-D9DF722391C9A4C7BBC146C735253EFC8E7B436134CEC60EE2ABC2F999EAF00352F141F6
-B3203DFD0FCEEF69B74CC180714A56B020B8832D291F17398E5B219300AB472699C5FFA8
-45878442020D780E1F2DD784AD116221769CB0C92A8B9864D646FC6DE853C19AFA0C9034
-6AAA5ECF81394BAB6F82035CF59E4CECA428E4D9513C5DE593D9B2A9EA127510CC68B5E8
-43A17803AC404DDDAC646E6E73C63C63001DA49CEDB5630B2E5A4231CD3F21DCABE8B3A0
-3ED509459FFFFB2457F1D5608E09448CA76E516407057805B82CAEE2B5FDF19BA480D93A
-396EFE8199D04CF81E08E979C2C84EAEBC3CAD9DCF81189FF9A1ACF3FC19A88B30020EAD
-5DE7A2EB7804FA0DA9BF71A339C3A304F51E47F11F9F0F754B04473A3ACADF6FFF079CD6
-C6F6B58A4BD5B340AADACEFDD5140B637EB3209BF8FB72B493643CFAF4900AAFC63A4EAF
-D7B9A4A241ED10FC7CA1490304E2DDE4B22354B33253B41438CEDFA00E5146648B219E4C
-E22D7BEA2EFA6A063DC8B1772371E3698C243C48CA4705352C3996DA94B1258B79C0B4D9
-63E69A95DD8318CBCB338354B91AF6852EE956A28F0DE835004D7F96C0E149DE50241951
-0621F7317209D1E1FD2172242E4B079FE328941BB0720194EFB48EAA04E59196EE8611D3
-325D1C12A3947C9E8453042F5F6F4B7B381BBDD7D927A8FABE70AE7282291265E7AEA516
-8E8D1BA24C71653323E26AA6344BC0D9F1717255E81D4C6A8B4AEE128C71F228D5775ED8
-257434AA754C770309C9FD1E8D1B69A12A78A726C80A9F74136FEE214D9EA87DD2E07F79
-53C78272BC75F22F54BA647413B5500051159EFC793BF1F44A6B8053414A331AE9AD43C2
-9AB2FDFA1107242078E6B581EA6DB98A73EDFB2AB8D733A91F8137C92E27ABB2ADBDF87D
-E8B9086A12D3D9F7F5CD98D8393FD4D55F8FB26E849373C89C5FBE982C59A13FD4C655D0
-DD98A9056D4F4C36CF1611CE5B1931F38077D845F1D0CB9A32FA9E9560F3DE0D90B922E8
-EDCFF38CE0F00B53894EDE37276432C4786665233C4B72A2E770C1A6B137EBCD8275F64D
-F1C19140C3A4186408993F112C44EAF2EB0D97FAD7503835AD56965D66B85B037984B561
-B125093AAECF14B8240026FD89389E6B1485C76EF24B838E1E67ACE175054E8EB18DAC7B
-9FE59483EDB1EF741098E13D72AE7C263A8102336E6AA6492DF4C098FEF95D7B73F90CCD
-3A77ECCD01816353DC819A90AEC7F58CB524B91D861D24DC8565ED19C3E44B91F6FB76C6
-E34B107A33EEA9BA30E8046DA880C4F6C7A5C3E58E45B4061E400F12F63219DB2DB438DE
-57CB2ADEA50CE263FAAB683A5F993657C38A7301C8F0971A258465A2A03915341AF17D89
-B60A4A6E35153F4089E7394EBE36F3FA0E52D561C6954E60080A4CD4BC3DCB8C38E2F835
-A4F7EE9D8CC16A8FB6F205B4B9B9052517956A19D11038ABCBC28ADAED8AF15A274F634B
-D4EE6FA279A872A087A53486CE9F0230F464B877E9CF8002765094E2E3B08F2F479F311A
-A80699980FBD99914C09E6677161DACAE71884A21BB600BEB151D1698CBCB8F3C4CA9222
-8BEC63501DA8BD9819EB03006A427402FBC8C702E9F8CF2B0DCDC7BFCF0A5081A47BE7F6
-56366881FE8FB14E160E786A080B98A9CC17E0B52F93E31EAEAC7AF0FA0379C64F7EFC69
-5B80F3EBEB7745F3FABFCF0B4FA1AA56CFC3485B50C09783DE242F277D1054891CD9E78D
-C67525BC2308F66F9CA11AA6AD31D48C3FE3FF0346ECD3648F803C50B86DAC19B0DD85DD
-D09CA881CE34034530BBD51EB6075147CF0077AEC54690677B17334DE7DE56AFDFAA80A3
-D8F9700A9DB28A760C5DABFF102D5138EAD1E697D050D4BB9E6DDD28F0D2C669F0713049
-29534D421413BC278180F1172594DEE9DDBF4BACE639DBD04EA2497A4E72032C5C981038
-7749BA925E3E46CA02CCF1AC8C2931D1F538EED1B3B725C6C4AAC7D65DB7DFA4F86257D2
-69BA6B0CA4902214C3A37D0D2DD45E2427599F3C55FD813840A251F96DEF09C7E72D7007
-59A90A9F65B1DC63CB2020CEC0BCC6C54F428B8AEBC5FBA51EDEF53D88378F012C780D7F
-A904DF1DA8B7148308BF2175B11B83281E132FB20AF80ACACB781EEB48894FE148F5FA96
-3AAECF094DB605BE46AE4EECDB1B8C1C64308F6F21239596B12DF0CFA846A09810F803BC
-BA672B89004AD755D201D19CEBA6C99873EEDEC4929078513912D0815566BCBE3994F345
-68151B5B3375936A8825CA58392851D1A873DFC8BA308C58AC1F9EDBEAFAFDEE682C071A
-BA64798C8486AF1510073C04773B4CDF2B77C3C4E3A3EC365FC4E08FC93B116F8F183947
-28029EE89EEC18724AC9D36A2BE1428D90F85557C4D2AD1442855DE6CF1D06C0BA192F79
-2D08D3AD3FB804AF6B68B3885556ADB4A4D11CC336B1B998344083129C66446868CB7657
-E8946E25AC33ADD0BD39D1D3396FA15B344B4BBA42C4F6265BA738A58FA31AFEA589A025
-428664B136A771A9B63606A6E63A29376255DDF52E89C2336454C3452110A4D0C73A27BD
-D2A47D47744A3B9A4B84BC63349FF5C75A6CE2010E70B24A053C9BC8DB1089F4CB4047F0
-D102860A352BD4F0E9B2FE00C730CA3620434DBBB5180092CED4F7CBB8021E705F4C13BC
-759B366A4D054B804EA3A8A9604674EC0DB26E93112CB244FEB1DA9CF920CB24DF6A0E7D
-7F3B117B9E62ACAE126303EDFEACD893A8947CC822D84757FDD6460A0A344E31D1E8FE98
-FACAAFB39C49EEFDF56DD8014572563FBD5527097CC805E6B03066A81E6120337F83D1C7
-BAE66253655316248F0CE35FBD61A2372D7B8A1573D34211AD49C592716566EAFA3FFB23
-50B54A4FD1521FFB1DE011FCD82792B93D87788F8409AFD40C7448DF74CAB5343D62C534
-26F0120A12C601E35C4A17788FA6086B3B4C7C70F1043198C61E3EA717533971E8F78E56
-17C84A3B5EE522B4C7C33FB5F1B93089EE7EC6D3FA90EB7C886D04116C3C0947FC5F3B85
-45636538CBCAA1DDBA880A0D5A30FFFB07401B25CA5572D41426D4A6D98F3EE01AC1BFE6
-D40C58F4A2413631E59140F65AEBC0990A76BE20C2996D00053F353945CEC87AB8970B88
-20DF8527A018548EEBC55906E04B0A3A498877B2D1ABAEC069260F05541301AAFB158200
-DCD67355FC73930DD4B47DE9ED0501CE7E38823203CE6D714E5501DE6C9922187592236C
-E424564D6FA776E1EABC1000B2A854D06860F6ED7668C4D5DB5CABF4E89D9E05166CDCBE
-D679B2E1645790F968D0F12843561B95FC90B8CD75EE2D053CBAE61E215082E5609C1146
-32C8B81CF298E477C0427D4CC68E6FCDB88393BE8520CA93DF1E3B519980FB3523BB18B1
-99F1626457857CF7641AC66E257634B349B2D5A8728DD02A890391BF2EF8C6358E4BEFE1
-6A214068AA175A1E7FF734960FDDC28989AED8261D18B4D996372FDF4788AED732041886
-24521DBEB9985BECDA0A6CE64DEC42A2539CCD4F55323057B8AD70BBD5B05872B864FFFF
-2D627668ACC1D8D1908C1E3E2C76D45DD2058C717C02D279B0AC4B2E526C657FF7C5DEB5
-3538D1B2116AAA957A6B16F0CF83430395996462F8183F71041D543C330183A941CC5E37
-8C348ADA81F946090676425EDD0EAD6EA996CBBDBF83B606D78B08684BBEBCFFED1D0875
-6CF352F872A71DFEB693608F24E3F4D663E53661B35A0BBEB3B630489FBEA39BCD26BB90
-0923FC711CDA89442435FE3A491FA23170B6223A577282C24FB7E895E2A0715D2B78F20F
-F1F9B06AA9D754FBB32CBBBA06663C59B7A8B22E666B26F2B9D8C55179953581E756BEBB
-82CB10E21A7F590C6569324ECC4C34DB4BFD9EFA84897068199ED8344A438A1FFA475534
-0EEB53B8E087515ABA25BA2B1414EE4F86E257387D4C0C7D010888AEF962069C57450925
-6C3F0625BFD6909356DD62C01875C69204C843E6BA873049D72ACEFBCD9106FD45B8E9B9
-8CED3AE42ADAE6A7BEFE925BF6421E88540D9E599CCBFB9E8DED2C5DE0B7AC4B331EAD42
-DEE8EDC35312B1062CAECCBC903CEB8F67897BEC2305B6C333FB766D92C6CDBD77CB4F31
-F63AE1C04A249361D2EF6E0BAAEB7FA3B87E0BE0E1E50C1F480AEE2DD2B6B4D7DD89A020
-8C9B43ED6F46F3883AB7E53869E3C2ED3DB0DBB1A05B1629E48B3D7F420F02FDA6B1CBB9
-3DEF237CDE1F7BD8C80AC7AE5388C30335378E0E374D0C41EB824BAF001A4C47C399F301
-13B442A2C1B27EC161CF528FC2B256579E3C96AD5F4575454449B3B5E1CBDB300A364C7E
-6675B6B924B48E58A0629E729941C3830D23968002C56F84F53CF124E771FC83CCAA3363
-5A130FD70D9422B524BEBC6FFF2369A71DAABD932B9D4ABEE240F07A4DE04C280D9CDC39
-A52D9B09799279368965C40C32771BCBA0EA9BFD488BFC3D154B8E421391BC7081D27262
-B40B8B953C02432B8074CE466299EE8BA9A0BF0D47F797EB5A8300B1E80EB44EA0C0D51F
-8577BBEFE06C2C31199B4B4483BDBC10B9821B7CBCCA73E4A96932ACB5DFA52B2F3F346A
-444EED0B3B0E81E8B65867CAEC517B99B84F574AB31FFABC2E0DA312F12E549436538E9C
-82417153110E8060C80101B8AB8955FBC6FCB64499BC6AA18EB6DFB9406304B2FA5A003A
-650C15B78EF641381F9A474623E69167793F9896DC82AC4A01FE4E267E9713507AB69A60
-DA690E3F3031CB836256B21FC26BE0B340FBB84AFA550F7ED8C3D0DAB80AA2FEC258477D
-6576F86E6D8FFB91F99917A1EFD4902BC12AECE66A5EBCC6585ADE4D96CDF5A78D10EED9
-4D543079A9F60B3650D17C81748189C5A1859982574E1E821E943AD2C59000D8CE586E64
-178DECF669143E9D12131FA2AB2516A3472C7B41DBE5E8D2812FC7DBBC2415055EC1EE77
-A1BC7FAEC22051FDFA79F47C5D511C3F55DEC0369CE994D574299A9E3AB915935C654D71
-F3FD4988F5265EB95349304260ACFB633722F5AE8F43D3EF4ED5A0D333AB72ED10C1BCDF
-30A2C85CA9A4B10DF95613BB465C2757CD153E81A1CB4B6D6B7A723BF5FBDB791B38E900
-EE8CA0F36399A767FEEB1C239880F13643BFF60481776C3856A033436C14768B09134DD7
-2C79C88DB4A5E7AF3F76B4806DFA232841268CE4D3D6D8FCF5820EC52B713C9ECAF0320A
-5E94C45E93A785D5F4DB8E5A1F43BB8AF4218EBC91BF88D10311EC6812F42BDAB8BA486E
-77AB14763C2E489EED940D934AEB3840BDEDCB9307830202AD02B3E7E27E0358F8502DD0
-F01935DFA95F69B68F5CD4F90ED84AD59DEF5E62508CE3A5AF67B2FFE39D37C59E5251AB
-5E26C96C0B08D593BDB3F7ED93F9BFAA609723BF87BA135847B8535611C5E4EA0BD324F8
-3B38289C3C5D54713A58DE72FADFB4B89E7F4C40261C1779B97CB9F9570530D5943A00EF
-FE435F5541AA079CC0E8452EF366D9DC18B0A6A0454FF9AFF47957973F77B9806373C9A3
-D048558F532788AECECD659B8B2751958B3F454011DB88F3BEB0D50053DC70B0244AC1FD
-20D70C444E1CB00399EC559D6A2513DBFC001689156FB89CCEDC3EA3C9B70BF2FDB3A1C0
-9CF814E7F1332B7C752DA6B2910663D3E0AB53E89A236ED66418A280FB4A561DF005B08F
-885D58BEF1429418D81F67A00403D87E16519FACA45298D16ECD5CE1839D3BDBCD784710
-8622BCFBCE4C100602211E6762998BE4F6F211EB916468F587A4DCFCC2030FA5FCFE8018
-1299E339E35ECDC494D4314368270D837927C46EDC1299FA541480A07F085D583F2B9390
-EF3B4A2A8ECA8B28648D8132A0D5B37E353731056BAC85AE7491369809C4A06ED7B0CB7D
-BB71404D67DCEADEF47603F7C1A3337AC93CA5510F022893466AF4C74C24428275C44E23
-0FFA5972C9D36359FCE3899A3D60EF63920F154DD39CCE56BA57E540C1A3497B3EFE96A5
-EEAEE028AC28D81A541F833A62C8F7AC492BF304C632A023C7A170F8B3ECAA4284CD01A5
-6F74B4A41F1FD464BF46C890325D17CF9C8ADB8AACDD9CCA20015374111DACDA8744BE20
-DD6C99E09B51AB2287016DD65383E8918B5557B78578CECCA7EAEFF8E9BE9E1B13A24613
-C953C5BB45BB74A5A935F32E708927D5FDC1805B5EB9745D35654E25BA50FBBD7DB58D7D
-6F70E102C640B771CAF3C1C138AA9A828E79F377A1FC8913012E5547D3602B22B4C365DF
-269CBE55BC4AA79FABC53F01EE7D809481DDD3EE602A7266B7280DAFDC68259CBA490414
-84E4EADF0F8E4CEA8A8CFF260B8F4C9C5A3F2ED699B4CC72DADF932F844E65C1BD385CC0
-F2EF81820D16CBD8CE2B27ACEC225FD1DB77723EA0F03B1CF07630B907C7494EB4CAA725
-18144B1E15B0B34E8F3890269BAFCAF6DF4EDF3861ECB5266C285085BF4E1C6FC0FBA7A2
-6504467B734692FC2C9797D1B6536FD42314CB0FBDC0B104EBCA6539F47A97E1C8974876
-9BF5EC71AF381DBAF9016B5A794EF38776FD9F811F31EB98010FB1FCBBF23A00794E2FC5
-9637254DF49FB9C0F459FDFA0AB0C8C040AD780D6CF3C9173472B8A6F041D3B30720C1C0
-324B977866A3F892FE9A12DE84A6F0D723ADC584A17C055F07F4BEC7486D6B064885E410
-B48509BBD815C3BC2D57F23515AC82551CE3D334424F3456944460013BC5B7B43AB19D7A
-62C9C2431CAB250705DDA8CD0395FC754AF7E0B10BEC12EF69100A831CEB62F5C016142C
-32B8A41F852F57BA1DF144C2A534C06559BA009A92E345305589796697EF28E097DC06FB
-8465A9DBDE8F5C38BD9D0EFFC3712F9F070F1FD50BF691811F94E12F26D47AC350C01C96
-BDC13416E1272D457AD210AFD2822408337E8BA7E63FF468AE68983966BDE984F4894F2A
-47E982E29C6855351180079ED4E9D53912764533F5EE35A93B31A4885855A31DCC719522
-8D266F9C539DF45036A97F920B717D08ECF274B66EBA30E223A49D67975E8962F617C107
-23261A6FA71061BF91EDC235B9288E4D856FF764A5E65AAA044865D0666523B24CA1AA3F
-87A58577ADE42B6DD75960840BBE46C584818A5C7E4E0FC13D41E9E1062BF50260E86A39
-09C5C59BE2E8301ED90C22A42CD5DCC436AF0A0E8987853B1FBF316986DCF54BCE866D05
-1992116762A7E54B08DB4E6126604B30F6D304E3D1B8FC6E602E11D791648C024661CE90
-7A6808EEBC6E3E2C0CFF9A9C6DE679F7E0246CFAB927F1D1A642958267645432FD9861D4
-92DE7CD99824C0A7D93A27F279C0D9919E4D14BC0855F4B562447974B2ECD1171B848D17
-8216047A6834390D7704EB2D6B16EC16A478C69AAD1A4F766FDB6D609628AFFA7F34796D
-0667AE68EAF4D3BF8C7316A99E5CAC797F0220A930B7F3005EC0C72A2A925DEFD27F2DE0
-8120030CD29A9F5553E5609363E34A9526327EB61AC707C48F
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-{restore}if
diff --git a/fonts/Monospace-Oblique b/fonts/Monospace-Oblique
deleted file mode 100644
index 93229277..00000000
--- a/fonts/Monospace-Oblique
+++ /dev/null
@@ -1,2706 +0,0 @@
-%!PS-AdobeFont-1.0: Monospace-Oblique 1.15
-%%DocumentSuppliedResources: font Monospace-Oblique
-%%Title: Monospace-Oblique
-%Version: 1.15
-%%CreationDate: Thu Oct 27 10:50:21 2005
-%%Creator: mike
-%Copyright: Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved.
-%Copyright: DejaVu changes are in public domain
-
-% Generated by FontForge 20051018 (http://fontforge.sf.net/)
-%%EndComments
-
-FontDirectory/Monospace-Oblique known{/Monospace-Oblique findfont dup/UniqueID known{dup
-/UniqueID get 4136343 eq exch/FontType get 1 eq and}{pop false}ifelse
-{save true}{false}ifelse}{false}ifelse
-11 dict begin
-/FontType 1 def
-/FontMatrix [0.000488281 0 0 0.000488281 0 0 ]readonly def
-/FontName /Monospace-Oblique def
-/FontBBox {-239 -1034 1512 2105 }readonly def
-/UniqueID 4136343 def
-/PaintType 0 def
-/FontInfo 11 dict dup begin
- /version (1.15) readonly def
- /Notice (Copyright \050c\051 2003 by Bitstream, Inc. All Rights Reserved.\012DejaVu changes are in public domain\012) readonly def
-% Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved.
-% DejaVu changes are in public domain
- /FullName (Monospace Oblique) readonly def
- /FamilyName (Monospace) readonly def
- /Weight (Book) readonly def
- /FSType 0 def
- /ItalicAngle -11 def
- /isFixedPitch true def
- /UnderlinePosition -213 def
- /UnderlineThickness 141 def
- /ascent 1556 def
-end readonly def
-/Encoding 256 array
- 0 1 255 { 1 index exch /.notdef put} for
-dup 32/space put
-dup 33/exclam put
-dup 34/quotedbl put
-dup 35/numbersign put
-dup 36/dollar put
-dup 37/percent put
-dup 38/ampersand put
-dup 39/quotesingle put
-dup 40/parenleft put
-dup 41/parenright put
-dup 42/asterisk put
-dup 43/plus put
-dup 44/comma put
-dup 45/hyphen put
-dup 46/period put
-dup 47/slash put
-dup 48/zero put
-dup 49/one put
-dup 50/two put
-dup 51/three put
-dup 52/four put
-dup 53/five put
-dup 54/six put
-dup 55/seven put
-dup 56/eight put
-dup 57/nine put
-dup 58/colon put
-dup 59/semicolon put
-dup 60/less put
-dup 61/equal put
-dup 62/greater put
-dup 63/question put
-dup 64/at put
-dup 65/A put
-dup 66/B put
-dup 67/C put
-dup 68/D put
-dup 69/E put
-dup 70/F put
-dup 71/G put
-dup 72/H put
-dup 73/I put
-dup 74/J put
-dup 75/K put
-dup 76/L put
-dup 77/M put
-dup 78/N put
-dup 79/O put
-dup 80/P put
-dup 81/Q put
-dup 82/R put
-dup 83/S put
-dup 84/T put
-dup 85/U put
-dup 86/V put
-dup 87/W put
-dup 88/X put
-dup 89/Y put
-dup 90/Z put
-dup 91/bracketleft put
-dup 92/backslash put
-dup 93/bracketright put
-dup 94/asciicircum put
-dup 95/underscore put
-dup 96/grave put
-dup 97/a put
-dup 98/b put
-dup 99/c put
-dup 100/d put
-dup 101/e put
-dup 102/f put
-dup 103/g put
-dup 104/h put
-dup 105/i put
-dup 106/j put
-dup 107/k put
-dup 108/l put
-dup 109/m put
-dup 110/n put
-dup 111/o put
-dup 112/p put
-dup 113/q put
-dup 114/r put
-dup 115/s put
-dup 116/t put
-dup 117/u put
-dup 118/v put
-dup 119/w put
-dup 120/x put
-dup 121/y put
-dup 122/z put
-dup 123/braceleft put
-dup 124/bar put
-dup 125/braceright put
-dup 126/asciitilde put
-dup 160/nonbreakingspace put
-dup 161/exclamdown put
-dup 162/cent put
-dup 163/sterling put
-dup 164/currency put
-dup 165/yen put
-dup 166/brokenbar put
-dup 167/section put
-dup 168/dieresis put
-dup 169/copyright put
-dup 170/ordfeminine put
-dup 171/guillemotleft put
-dup 172/logicalnot put
-dup 173/sfthyphen put
-dup 174/registered put
-dup 175/macron put
-dup 176/degree put
-dup 177/plusminus put
-dup 178/twosuperior put
-dup 179/threesuperior put
-dup 180/acute put
-dup 181/mu put
-dup 182/paragraph put
-dup 183/periodcentered put
-dup 184/cedilla put
-dup 185/onesuperior put
-dup 186/ordmasculine put
-dup 187/guillemotright put
-dup 188/onequarter put
-dup 189/onehalf put
-dup 190/threequarters put
-dup 191/questiondown put
-dup 192/Agrave put
-dup 193/Aacute put
-dup 194/Acircumflex put
-dup 195/Atilde put
-dup 196/Adieresis put
-dup 197/Aring put
-dup 198/AE put
-dup 199/Ccedilla put
-dup 200/Egrave put
-dup 201/Eacute put
-dup 202/Ecircumflex put
-dup 203/Edieresis put
-dup 204/Igrave put
-dup 205/Iacute put
-dup 206/Icircumflex put
-dup 207/Idieresis put
-dup 208/Eth put
-dup 209/Ntilde put
-dup 210/Ograve put
-dup 211/Oacute put
-dup 212/Ocircumflex put
-dup 213/Otilde put
-dup 214/Odieresis put
-dup 215/multiply put
-dup 216/Oslash put
-dup 217/Ugrave put
-dup 218/Uacute put
-dup 219/Ucircumflex put
-dup 220/Udieresis put
-dup 221/Yacute put
-dup 222/Thorn put
-dup 223/germandbls put
-dup 224/agrave put
-dup 225/aacute put
-dup 226/acircumflex put
-dup 227/atilde put
-dup 228/adieresis put
-dup 229/aring put
-dup 230/ae put
-dup 231/ccedilla put
-dup 232/egrave put
-dup 233/eacute put
-dup 234/ecircumflex put
-dup 235/edieresis put
-dup 236/igrave put
-dup 237/iacute put
-dup 238/icircumflex put
-dup 239/idieresis put
-dup 240/eth put
-dup 241/ntilde put
-dup 242/ograve put
-dup 243/oacute put
-dup 244/ocircumflex put
-dup 245/otilde put
-dup 246/odieresis put
-dup 247/divide put
-dup 248/oslash put
-dup 249/ugrave put
-dup 250/uacute put
-dup 251/ucircumflex put
-dup 252/udieresis put
-dup 253/yacute put
-dup 254/thorn put
-dup 255/ydieresis put
-readonly def
-currentdict end
-currentfile eexec
-12D37711F3EF58D4B0160CA0E8A8B30BEAB80C582DE4028394F513096550F71FA11E0919
-505AD6B7CD35BB9BC351DECCB83DC12688E510CD157D892C101B29A3F7371CD20D496932
-3EB249027679D3DB7582D953F033C85D9B05B2E5B9E3F8CC14BCEA62C23DCEDB24A737CE
-0B749199BDC0ED14B3F80C24B773C7D94E0C32CB6CABC70B74F04C589AE25F78DAF2C485
-03C9800E9816B03D596C6E3855892618845E5102FF46233B460979463BD7A820DDD6835A
-95C220225DFE27AA6BB31E99C60F679AC7C5A3363C40EF4C555EB47B0B8DB21ABCDD571D
-28DE4719336D102E1E7D1EDCC5B3B0E60354D35EB856F234AB60D3C84342CB01D8747F93
-73140C128A546250AD327045F7903E144A248D16DBC150EBAAE66ED529E3E69214BF4A15
-12C2CA07FCF9A1CA5DD6D5A3577FF552FCE29E2CE9236A470FD258273428609693228B91
-5420FBA3ECF0A2406B4484196374D33A6C4ECFB322185AB88BAE99CB4FF8147A0C4D3274
-29B1B69D3985E21294AC5BF3777F72FD8986BCFF6374642612A36E01B5F19A4C313C684F
-B4A10E6D366CE685E4D566655263E514862031506A3B886388753592B0F9A5D61EE9C644
-3E5E6BCD8E4FB03ECBF8955C142520D0F71F7E4DC8C45E335345B990BE35EEF99170556D
-05A25CFF99E21151C7C1407675D515921EDD3FA3B98A58FBD14CDF1AB6AEFF424587D2F3
-CCBAA445F12ACC21F1AFB0EBA2D9D9EFED2C77A01C7B4FF0042E9BF457442297D0989DE2
-DC27042B646D45A9BCB9D9B80AAD373DC283EF83A52BBC4FF0B2E17194CF18618BEB8CCB
-BA24F7B836924BAF4DA12D018EB41F3307ED0F6B29C51B20D92FE58C27CF5E7D8A3386EB
-04685234F0D2D1704EFDE3C72CAEE80A17BFC25C4ECE7DA8A4F9044856A19794E13B9199
-279CDE03A30495084E75DB7C213CEA250A5DE3A17D168335FEF9BE57291A770F53502F9F
-78ADC6BAA3223B013B120789D9672B286D7713F8AE9802A4424B889344D6D06B280F60AC
-A1A81A0D8ED436C84543D86A866C981A4A8ABD3488FE907F39B32311E4C2EE313AE91061
-A1FE81235477F816259BA0D0151DCB3F28B2F59518B09E249369379B19E5DFC19EE63BEA
-CBB0636880CB367BB50ACF4767E2A9E9BD7F0339D4128C54E622D4C39C5FB383438B4A73
-9BC3A717D1E3F8A8CE7AC4FB789C7531FCDF82C32E4C8591C3D707E6CEB702C2D210627C
-558FB139108437B8E9D99B2F8532F76709E821391A07BB1A9305F62EE8F9E1EA1844FFAC
-C5205E5428D155457F451A8177E75D61195BC5A9F564297E4C36C9D3F730D1ECDF921096
-C42A26E66BFDB9AE5682CE255B0DF1265A763798CAEA7A3138CAE6A7F6711899EE2FE701
-D825DF705F2BA8D8C6A6FC077C7F63C35D0CC5A183A03EEDB7A81D71092717E60CCD03D9
-D7EA295AE3407BFA22C26CF4D7689B46CB49FFCDC43F3BF5B3A49E53387FF86B4267B880
-361199FE0B20B7955DE33F541FFFA0DAD7917CD64ABBABF977ED46127DBCFCB179757EB8
-BC08D07CA46AAF440882C7ACC9B93C575C363FA81F381CCBA6B3ED329D349D8D7E3E1884
-8327A19CA6C83DDC89005AB7D6725D11AC8BD6F2C7CE8B10131F7A82484D03A3C6D854AD
-4E173EC6852F0E46D46F6B85B2641AE69CA53069AE2B330F57223C297E09358F7DE81F08
-CAE980A507F685FB2156714E7E9E88D88FBCAACF86ED25335647B1238F31BDD5D820EE43
-821F5CF2F7D9A67586D99E9D4931AAA7C2D32FAEE392CD9FA4DB8F69D76C3BBB48A10CAF
-BA3E78F64701913B414845FE6A5F78A24CF5CD29097FE21032C5FFB34F107F51B3D8C848
-2100FE54272E0E17B79419FC0AC8966CCB7AFCF723A8F721B06CC80CE0B07B92DFD20E93
-BF01ED0C72F6385A49524A7AF5EDF658FCEA7475FC6CA315926826FAD3A90FEB182B6651
-B1966E20F7300D288DB7A53402D5D8D0A748E3C0D21B9DD078FE8560B40C06B2A7037659
-A8603518F2A67C62BBD9A29F452723A8EFE6CFA2C356EDFACDC8AE936533498DB168588B
-6B96C1FA3A2740E3BAF4470783C49202FB9D1A9A9DC3B375F1187CC1DFECBC616584EE00
-BD76FE39C6EF0B7A7ED422042C1EBD392A51BB458F920DC197915A74CE8E6635EAA0A772
-426427212311ADCEFEE54E075B8E03ABF3D4F7939D35809F0B6AAFFD9C08562B9E6BF8CB
-B6E3303A1B3851920EEA8EA61B081D22A585403C8D25E645987434DA4A16E57A585B4097
-3FE63FF99E2BB9B860DEC906F8FC183A6C57570859D7E381A6CEDCECFD566DD50CA67801
-ACC6151D9C6D7D5A3A19C5A283EF37F1F418A469BA10E45EBAB0432A366C1549CB402F12
-DD99AC7F802EB9D2B56899BEEB60C65C6B22EEB9A00C680E94E8B190B1C3A395B6535C3A
-3831D857819FC23F840B273D3133F1BF243EDCF846D8E308E04F6A38B5C73502F34C6680
-0AF88F2E920E39CE4C31DB700CE6A2777048E4B2509EDD822FB0036D888B86ADD2A01C8C
-AD1EDAF950AA9EE999B4EECA0DBF02064602085C18FFF27707F09511AF5611DC76220CF9
-FA55BB850E7F4359A9B597ED3E3298B765D9AEA76484DCC7338551FAA0F1BB8CA3D0A628
-5BA8BD8E8342155B682CD6C8FBE6631D627C4616E80114385D6B52E2C827D5E7A2C1CDE2
-B32BF8686B1E6A3E8689D1C2191C6C3E9697633E65521500EC357746647364248682F2CC
-37AE635B876025B85622049F99B824C32D060CC599FD4CDD9BB51530FAE7EA750DFB07AC
-A3226EA764D547F7158AD27B0187FB701626E7364C72377402A88754F1D3B5842031E319
-9DC3FAB04D7A3C1FF486AC03EDE9CB78A5E911F56B06635ADF5867E64C2871317AA8B298
-3F0FEB5251C244D589A8C9BE5A9C6382F9B409CE2D4F19AF79FDD4157C326A43EC78BC27
-FA5384398C5F927955B2B67EE653CC6EFDCAF7C23C0D08B8C3DC41CB5844E057EE1A277F
-8DC7FA99594391BA6DFF30FC9FEA550E58F39934675E587698AF82F00F428AC930567362
-B401C42AA7B9B4FEC9443E9AF5FB3E999A94ED088D97CB11E6955BC9E561D59EE34BA1ED
-A6C9217EF560D154BA8F19865CB8C913F12986A48DE78E9D284C0885C8B69DB0CB47560F
-D88FC212B29C91E004D18376A09A184ED29866DC4A179293A52A1BA548E6F8439B326A16
-2FA0CE6AED75A05FA30EF09A72CFE06124BDF8016C638725770D529A0163954177D45382
-3A74FD8E44B3773EA1280431E880CD2398A944C4D045AE91138244E0BC15343D6AD7225C
-20406C0AA1A4257FB281C2FC949CC3D215F827F782F9F4BD121F67794A8F13F19FEA800B
-6C7240E804D6FBACC9A2CDB6E7D24F6C61E89CB47C94D8E961ACB9355A12B42486447C02
-7AF9D7B1C4F0E4CAA8E28BE31684D721083208D76482B9BE451A4F0426F5DA9A2413D98F
-CA9BFC29E1A8680172ECF33C7218D796D6447FB643974250FE831F4D5F0ED8ACD2B0E9E8
-DC6479E203625F2C5D62F96244773D954ED8F9B4D74A0D8426A9A61176EE6AA0DB4BB3FD
-8E0F9F49119F2F2F1EDFAF9FCE35316F718A3DBCD0DA416574C87366E3321DAE1798F437
-7FF418523E807C3D80C80A5057F16781ED3CDE4EA1AF173093712B3F76DA73D0FE64E273
-C4309D9BF5CB0308A3BFCDC1D7BF1830D22C77414BEAF5868006615536737E20C438265E
-74B43F267E748B834FB03691FE68D944561F1DEB1CA295E442C6EBC274B6D9A0D4C2BCC6
-5D6401049EBC97F0F7A5678389267B0D6C10757954FAD66FEB12875BF4349BBC775A0804
-00E25D70A165C7ABE5F5F4427DBE548C9701E20CE28356478DFFA5F08C30FC08228CD6F3
-C6B030734A683BC5196F3D29C43E80F96D4EE3DD54785633987F385340098B5498A7DC1E
-07D42614FE6F1BA7068B0677345C695A494BBF150C8E4F91EAD66E387856CB09986439A4
-03A2EA248EDD1D00A4D490B9DC4BD11E36E155EBCA715B513D991A19548B417539B36308
-0D7E8E3ADECC1073EAF675C90D5897E13CA0AAAB196E8A48F867F0F71E5E5E24C36D5492
-E476ED92090842D327E4682E483F082FF71BD290542C19242F596801E9B67386498D3855
-BD5AFDF1A0A6AC211B38278F7ABDEB586EE5FD5ED91382EED8677D8A1792B270A46812DC
-BA8A1379D5E5B7413CD43C6CB3E447E49F35CF2E7BC2E99229286B2A636F83C16BECF6E8
-63E23449DB08CD8FDF0F5F8EDE5A410131B866B55C6BBA8528C17072EAA042662D855A3E
-5D164BA81ECD230EEFBD2A37F823D410469B05F3198B56400B89B6637BEDE2A19465F240
-338ABE767699529CECBBAEF4879AC00A6639589927A1CA91298FD051FF15223EC94FBB3C
-1C61D1611D05E59ED9BE06C0C9DB3C311CDA93CFD321508D1187007207A02EE50F422383
-DCE98954FF609844A8AE9C29B56C1AAC1238D45FA35A3DA527E3FB618CAEC32EE156BFB6
-2E8F66F6FCA7EA0B9BCF0A144A05FD8FE25BFF681E3AE6784D6A670FA08776299E0ADA1B
-A972D1E35CE0BDA9F06F8A8B96C8750CF25E24F69A0A49C65F7A9716FA4C5F3CEF3512F7
-AC82BE0C5F21A6876F73880FC7CEA205B4286929ED2513D38A5695208A5CD4DE401B214A
-BE67DA7B8B2C63F5B06BB039D7294DC883723FB83F736A5EE8A02C9F968FCFE5556E52D7
-9E070ED53CF85FE574F52C9446E61BC83DDE8C5AB547B08E19561E6F4B84D422DE6DF197
-3B2572006AAE0CC1F19E342389DF278FF04BDC5CBE51E27FA51D696B123DA5B342648532
-FAD98EBE03894533AFE4BECE638CA5785DDC9D7ECEB71E59B01285978563920DBF542794
-6B13DF1BD0C0D349B77290CE840C17E9F71A7E34F3EF3472AB04E9DEC00BC4C258F522AB
-15C73CF78CCB3A83D7A2047FA52A4C7196C4E750C14D77EBF5C799702BB84B646BF7F9A1
-2A6D27166F7AC9B7A2D6B6062627331C8435A64C04096FEEF7867334828680E41990E319
-334217DE53F32DD9FE73537D000A5493EBC0B5282FC1D72E0DFEEB51694F6B2DF87F3E80
-858DADF97EA3E4A864AC9AF980B1BA0159E7E046EF395143D2C2AAC26A0FC3A8F1ADB37B
-6E3AF132D51D9ACBABDB4244AD14C837A30C3B9CA47CEA267845DFD9FD5A0522BB50BC0B
-CADD7730E893A06E8F175DF29B4092EDAE7CB28F8FD389C14EACC8FFDC815355B9FB564A
-F8C33D5871ECFC0CD0E33A0AAFD6F7323A3FD696B4EE641249BFDF82EAC73D0D823A5BC0
-EC34C42269F5699F129273CC384C8A17BEDC4BA4E384BE7D6213EB49FFFC5C98FBE27877
-85F64405CA64B5F2C10470B82BC1471F59C8EEEC668D88CF0441451E275328E3903A54D9
-216F0F70F63DCE071BA66B31E59EF5731CC778455222D441C0809C690AA9E70AEB6546AB
-6B6D27A66004E67813F7509A3F2B2FFD717A77FBE48A7480FE4F2E0E9DF61D378D817928
-926F8F202341E945DDD9F747F6AA931A9369326C3AEECFAE75D289691683E6635E215E10
-9C76807AA3B71450BDEAC4AC8A55F7B6B7933745E2F3F2F3049CE858B10E17F8C236B247
-FAC04A7C3E6298C1A2036E14EE164AE8478FA4AE6F24A9E542D3D2B450E4EDEE099AA693
-16E89A308123CC5DF3E4822A5B57C7FEC21271BFA0168C3309ADF2DABEA0610FB18ABF69
-5622E7A1C371B3EC501D52A1DFB94AC84E30A500449867BEFCB5A07DC54A2F961F296DF4
-9829E92B8E0928315D60103EAF984847A6FF6185F8C1EEAC3A114F7588AD864F3A16B94E
-3AE4E0738E13B6190AF3A27427DEA99F8A6491CF60C2F8F5C8A524CDDFC5AF2F7304DF82
-DD8E2F273DC82A9F0F7812297C485AE2B330DBE5B0C2E91922484FAC56649226FE104F57
-E88622612FD6CC084725C3C717D6B04432D13EC9DD5BDE98FA56EBFD2C7FC973AB611168
-C43379538659B695DEC62E8D58BEFCF44F9F0F52273D998C6BD8766BF4B26E479DA21563
-04B1248C80C58E7A9609B64934AD07C1945F03AD258D32D4D47B6C1A95D44B135F380A64
-C7ACDDD22D510DCD056A38C8400F21900F1692BF2210F6B161EB8C6E7702291C0CD2123F
-6EDA46B95BAB323A99784F32A3FAADE6599CAF43F3CF39D43776A205B6024F6DCB27349E
-C394FD27D389C1CED32138732AF2EDD4215A8E81A058BDF9797E0EE81D13B7773897EEAA
-B71BF9D0D6D913DC0887442A470D5878766BC30C065E64456A88F88F754C3B6CC402BD8F
-BE60B69F6CF942EC531A6768887DC1D6C08A690109E86D08D9470B9A684D751101A2821E
-48805AD36D0E6D3BFF33FFC4994645AD2B599188B30649ADF04EF349B934E99E3D767C6F
-95DB404233259FFA5BF4CD809B4E08F51653D72C2C24B7419B49585672244128A45AF33A
-82BF11CF4B402B322D7DD20410A85B28CD32DBBCBAD192079514ED52996086747DEDB275
-8C8CD1F05B82B0BB80F5A0BD1C7A2F726B29F6D8DBDC9E199C494A8682D3A12F3430388E
-845B4878CF87871AC6914DCE0E7AC20407F04B3A41EA5EE88C23AB19D61E5446ECA0CD77
-0D6992CA5DFEE0265BF81AD4EAF93BD5C068D1A0FB1704499AC8F16E26754ABBF318E528
-D7B12C0CE352E4FB67A1F6DBAF06C9EE5C0A04A926EB75A2E76E1050CF4300721B0F130C
-E912C53166696D93B131CE8D487FE3B5A8450EC7A8961479FBF29E63DA9B03E79F2FE5C7
-14B57DAAB035A0D2A6A9BB5FED68F49C58360E5E974709D12AAD0680E1C0145526CE2C88
-36FC489C50D8D3FC5C0AE2C517030391268B306D231A9BB1E881928727235C693FC86B6F
-A9A62D337FCD128CFE1BCACDABE9F384B90C10DF4967A447D53828F62E753D639E4432AF
-361F680C212BFB50065241FD8403C80D5FD3F57A60643D586449C76238BAD444D1282943
-FBF39869CCADCDCD0815A484C494FA16930F3636FE854A1530277D1232303C0A86365066
-89FFD5E3C5AC028CDD18A3FB360C8973AEE50FA93127D6C7B3F323689F3075CEB2017BF8
-BF827381B96044E245DA2A845A536E053A1D5B540A8A27745547FF27CC9368EEACA827C7
-A47E56107A68B58A4ADC9B4A56C69C16A061F50C79A7034D317FA0F61A123D749AE3A140
-4D8A29EF631D5F925C8116256B40B81EAA31C326F4902BF46D68C5D6930EC624F3F50587
-9CB9DE9740CA93D36B8C84FF21E7E2AE48FAB457A8973106BA5A4A9D35D19AEAB1AE1E2E
-8794C96BEA993A03C1CAC00697D95BF3287D7B14701DF8EF79683F2771A444D334E7074E
-0B1602CC3D08293FCC6815946798BA56470783A0BCEEF3BBAE34D9ADDD47EC0E23E63505
-67965078615B540448EFE238DF5F70F1439123534B37B01D7189DFB6B21E783474B476F1
-9857F50753D49ACB4EA73BAFD9727E3EDB0ABD056CA73046DD3743451C0C2E54AC8646A9
-C1E269B570605A92E28FF146F6C9E49FEBC2B0D1946D673064640F610FC762ECBF415845
-E80463295D0EC0F6CDD35852CC9126E08DA99B91A75CF7EBD86466AE0C381E87E9D99BEA
-1F6D35F3603AF79212C5146712B20727A4CA38A6CD684B5503BA1C18590EDF890902448D
-ED527E7EB9A15623500BDA827261BEC6E0AFC5D644DD384BA6B3BBA29EF93FEAC2BA6C56
-82AAD04CA8FEC95DC915B8566A268801A7242DACB08C0A47122DFE37EFE10B721CF410A0
-471163142D46D3FEA4282739312E53BF815FA207F0DDFD7200FE6F7730D33F25ECCCE770
-2765D198251988F9D85E4828719243D6275E563E439F7F7162BDCC0BE33CF25EDA87DB8B
-D51D0B64335C358ADAE488D997D3ED523C3187A50D1E287E00552844DC66F3417D145635
-3984699130F9B7E860359DE4B14195307288A8EED3BE2AE04339CE84BC1C1D02861C32BA
-47C050474FA44D746FB2BCC7A1469C9246DF0725F6B854FA1AB68D68E96228E2CB7834E8
-01684DDB14552974A23ECA2254EF2B6D195650ABF1E2BD69B2BBE1BF520CA77E748C0152
-FC5665C36AEBD0002190FA221DD3115ECAF905114FA7222822523711E48DC71EF5FF7BC0
-9BF1C3DEA0283B5868357DBBFF7B4C6F91C47F941B40F03259AD826AE6FF057EF4B07B9A
-058C4B7BDF58C6FE1D71FE9F5E96ACEDF8DB833A4CBE46BDF8009F0FBECA3314AFBB162F
-0545C10E45F1F697A2B895849DE0EA02F2770349317E43BE527A3B1D808785CA305E06F6
-84935F0E7AA4E015A8A4FF3E8F7E6E5472D161EA42B964F48D1450F9E52D5CB33C5D84B1
-4138225527E6680BB40D7E73B2CB4BEC73EEF10629E9C614DDF422DCE8E4B6F64DFC4ECC
-3C48660A9E1983F4A84E4EB254D5EDA7E1A6736D98D878502A6320CC661E4F47418B4D4A
-9D0DD2A9733C000A0AD41583095DFF2D1AFDCF6ECF69C85E5C9BB3F202BDDFB142E6C18E
-60B07D7EA40340938542A5EA036B354AB35FA8FA0B9391765A8C498B85F454AEC3F177F6
-8A122FFC8976D4AC99A370B3B7D706EB1BD36B3AE5D51C9482FFADA8DC7584795E8696F2
-81A0F0E3E9912BEA16AA15597B801EE5571F4BD4FB95052049A663FFF72DF8FC6FA0CBFD
-A15889F230C5AA3B25F4DA1500DC0302010956C520A7F73E1A7A938E895784C05399030B
-D4452FF0BA27AC1563BFF0BA19B2C5427E2E6B8A06BBAB6137DB007FC4692267B0D10ED3
-1C0341AAA6F3BF586940AACD797830468685029B2284346296F1500FE92FABCDAB796F35
-46274B8A69AEA68FBC6E1EBAE3957865D7DC284EA7A6CED43CFC91B1CFA4038F413DFB36
-491FBDB1902914D92F2E45BCE9EBCC1484C97058783BA2C17F42B57A180C0F4E35B71090
-CB0A51F6AAD0A5B01E9AA7B8E69FA463B54A124AC05B01A942526B070244A2ECB6DBA5F8
-01DB459733371F92936CDFB4F35F7DC4ACDFE02A4002186F98A1000FA168B6B409D152ED
-D5BE9141CBE10E0EA1C17687E011FFA488E8D9DA7D75E847770AD67132F8DBA4DAB8E567
-54CE8BD5B72DEA699E2EDB0BC2868B71E012E631C747F23F5C221BE43E034DE187BDD469
-E712F4FFFF09597BDEA4E71E76693FC639F758606E99774C1FEDBB5F121AB9B0240D1AF3
-86B28EB0024E13C0CCB25457F4996665A9F68682995960BBBB9622C70E1910C36BF19E5D
-AE05BA5AA16E07F1E26F00C5009F6D5BF8B2AB9A3A34ABCC391B1EED111BB98B0A357D67
-91EDB58EA4B24336B4C0CD8994CD552E29288AB0A7FBF948891C41639412F0F2B70FC00D
-2C509270C53B5EA1306176290600581E0E7A793FF3C6A085B9C627F941E36C4D6D31154F
-6CD00209EFB60C1AAE01636B10484C673C58881FF8B54AA1EDAACC309F1C72C434247C7D
-ACA423249AFFC2ED1E53D1B862FB553E583C4694C99B6116AE9F6BAF64D2B512C9C624FD
-EAD7A00D757B5526D4AC98137C875D0E0E051ACBDE4996DF3B4D5719114C22D5DCF02A06
-4DBF81847FB12C931C2D8F6E9C557666DD6AF7B28E7E763DA7BE334EB3FB89DC1D5D8F12
-6ABFCDB56CE31A41E098375CD932B9ED53E5DCFD6A943A983F071F8B6EC1C35DAC748BFD
-32B8FAA674B8F902B433BF12F554D391B56A3C8E36B6AADCD9489CFF80136FC575D7E64A
-957656B2C4FC270F23AD3790BCC95E85894C61108A9EDA8EC4D22E9846ABE07A528583E3
-3084991834D424B8D52EA04CF93C1275FBAF578710888BAB0E447C395F0988035DBF6B79
-D65169437CD509EFFF8D61A333C909BAD589AA1069281E3DD8A266D4809471F65218DFB9
-9CF1D4A6C4C07B0A508DE36F53D506B25268058512AADAD9E9EEA08EE51C0B12977CC9DA
-DC195E944C659D2E847FA471A403D3069BCFAC82479AD29FCBEF4EF6C93EDEE4F0C0E44A
-34F25718B7158938A3A9CE183D707D4F789A5BD28F331C23B3290AFC5E4504794654A814
-BCD943F786F603E24C01E81C1E8577047C3E85BB4D861278CE2E7E32193D1849A9A310C8
-419214AB037971D051A9355EADEE4F56DECF0B20C0AE7A396797480EE47FF822F96DFDB2
-39122A3C8F8A83B8B3E105B3950C8E5703BFC5E591437422FD417A71797DCD2872FDD9FF
-28EFB8E20B2EC948F0D4EB1C67E7E16CEA436DEDE1B17E0C4A11F1E91D3CE839DEC8390A
-FF3C58953D098B24597766D01BD59A89ADA6F1040482EBA4157EF2FE71B220551809013A
-B5B47CFFA33546A676DFF72EC6D1A04D82750805E38EAEDFAD935833B94133FD5FF8A58A
-5A01CD5715627E74E0856D1F8455F6379F2E8256CE604480CA874DBA0D06E190833A8015
-7BB75CA24E95175821FE790DF854F15E7EDE318E0C0171FAC8BEB5390B47D5814E4D1F13
-0FDCA640E0FDB9D0A5068E98158FE775AF2D0C7D9136087E00E07B67AFC8FF6DD8FD9CCE
-ECA3ABCD3DD58DF9F14C032941B13E01BF6EA44844D52FBC037A47BD94310EC47A1F7B54
-B6BC07C7092D8946CF949C654EC1AA520804F8531C1534BFA935FAAD3B9D7EC925BB0C4E
-2C7E8E205C09104B8FDD7F8AE970107E94EC5C2D5A7F28DD7C0BD6C911CCAD24CC303D5F
-0C6C9A4A585247D5EBE57AC01E7D8E3A384DAE4803718C1C81D3035324BDCA7BB452A030
-89FDFEB64728A25EACA1F4AB96A6749C4BFD6DF72102371863F719D55825AE83673701D7
-C5139567073180C72C6CF38A0CBEBDDB043D2B412BFC25A08CBB18FDA0AE80554DC1082D
-E4D70908AA0C667073F0CEC5655C947CDBE6C501B1E38BE843A5A8CB02312EB04CB098F0
-638ECBF704DEB82CB1AE8CFB27B368D95A72757162884704BC4A74DC7ECCCFD1842D8957
-BB1AF1B020A97A149AAC0E0BA7699703E9879E49F122A838BC7465161E9C4C62E02B38AA
-396C1E65209428DC112B08AA731031B4198BF48048132ACA9B40FAAC94A236BD16BEB9C6
-83A511F57E22ECE0C6C63C0A3C5366FBC488DD3CCB19CA471ECD0B895B644C2735C8D008
-945C02FB39F91ED4D633C151251CAE4E82B18B55D978E6A7DAFD6F4D5497EFC807AE9AC4
-2BB5E96A8630756DD2EF1A7529AAB9DC1CD2A98C9F70ECC97D8D1F920A5EDAB809C7BEAD
-04B8E0C3266E1C2601FCDC61B73007294ED1176FA5C5E94075A95BABC2589B04B2DC6A7F
-2A244975EB7CED7636A6216A7CEBE34CE405D1C2BBDCF3D30D0B65AB3F92357B9AF56455
-2F36A611924DBC9C90AEF0F6DA64EBB58510AA8AD7BC633B8340A942721C69B39A01A69C
-28E44C520708800484B236420555098D369EAF3A1251B128881C6A71F464B0DC77B9D1B0
-68B476024784DF5B722667126F0ED991F123124FEEF22BEE19DA1869CA12E0C94229BBA5
-B2CDCDE1BAD1DD53B2A713C4EFBDE270F0C8AB7F9AA27FA800DB025FA10B2FDBFE4B8A98
-A1283CDCF35BDB1A6291884C494FC6224B965B55742FC5DAC852C0D014CBE5D8E64406AA
-5845853F669A1667A543E64D5F86444D0CC1C4F796B0F51C0BBEFC8A7195C72566851BFD
-01D5A7F44A707448E67D202D89994F2BDA312FF16B5287D1D13E4FF8CA905D012B2DCC06
-42DD1A85636EE7981F13C099535D935C1A1FF5218CB190A58BAB01C2F502323676ED3AC6
-AA4485008B7D142EB15455355811F1FE8B7FBBE5D93534A4936308067A6F6C1D80F6A287
-696606946C8D61C244DFFFA6FAB178513EC0F1724B24B3F26F1725471AE031FF8E15109E
-A992D90EFDEDF8796BE5C16425E1E1391680C229067BA9C69CDC20077C02364C6E62EEA2
-CC5A7EFAE6A9493FB1FCC5C93228AB5DBDA8A2BF8161FEC4492B02B4F29CE42BA9C5ACB6
-8708C055BA56CF6210662112EBAF899E62CDB2EB8A685EFBD1BE151B4F2CCA5DEBB90B5E
-55FEC92DAABBFAF7C3778BA79A59B131682568FD96640F3794EB7C57A508DDEA025C7120
-89F193118946022A9024289B2FD5D6FBB8B8413B0DF5F65227DC12E99B7B657F846D798B
-F5E74A3DCFFF1B9E1EADBE5A22268846CB5749B22A96CB7C2A7E1BF47E9E8F5FF7354314
-3112230BA9E8A3218442BB7DDA51AB8641BCC1A4F6D25B53A4ECDC171F1B384C6546F6D8
-7239CF09E6C8573BD593FBA1ED2C42443F6090EA7A5F4AF4781270BFD801F57F42A7C51B
-AA65AFCADED310E6F29FFF5D641C2807B8CC4DF05D45CA5BB072F73E5A7364851C7DEFF5
-270D676F9F86E425D14171E3862B7FAAC43E181CE165BF319EF549BC8B5C3D3EC51017B5
-8FCC9817F9E527D8DD01F33C9B99A98F675312D26BB76FA0DFF8B239A1CC7AD1A5AA9333
-8AC724B6A4C9B5CADFBFF718A5593C51E476468BBCF2E5E77A151DD9DA236E5765CC545B
-AD8D10D62B238BB574D665D0A6CEC479D1719D587C1362C2AF7C04793B2A7B20C297D5AC
-0F96F6019E1648B603AD04F8817F6A6F5E568A775850DEE71372303059B137BB129580D7
-D10134DECD6D801AA62089EF6A573DE96E0958552DE214E3615A306B798B6D68314DBF57
-4305E2B09CE8816EA4515CD6D2FECD2EA452FC01F62464E73FA7006117556487B6F58197
-5EE9CA6DCA4480FB0B9450FA07B5FED7528ECC235BD8D3A24CA63382B0DDCADAC78384D1
-E5A6EA0646E3655E6C86C323CEED8F76A53677A70AC54CCFB97A3713E5209E1A0F9B6863
-289A62261BAD054A7A495C3D0F883735284B7ED4A624C39C8A03B93FA9BB91BB396C0E4F
-E3A173A5100CC25ACD1E3967588C56F6F3E70AA6E9F5621E4B9F3A25C0ED1B89054EE11B
-ED849B16F521BD9A143D0B29796D66BD57B4011EC290045DDE9C4800C2D0D1DE24501859
-50DEDB737635EDE2D1559E0BA7C0B361BBAC80FCE4E4B35746B8865813930ABAA5BEB288
-1D820EDA6A683CA4A94EECDB1BD0415D0586C844C66736751640C5E8055C6093FED9F84D
-EADE6273926A863D231C9B461B41EFEB4D945D529AF5BF494858A5E5E0A0BF1B179B697A
-F25A3E29991DA1DE79DF293961AB7CA49846941E82FC59B1C06B9BE8BA005138F6979DF2
-7909F57060DE9028ED61B1EDC811A60090CDEBD7781D628BAF2C540FC7B4783BB1763630
-96B50637075013D726F9D0EFA2ACF762929C06075D5992B5E386496B381858B6AB040CEC
-184571C870023678728ED7332630969C86BF521693DE56D09D6D8B0B37511C7D714E9932
-6DD501DC3AF262A1837BEB8AE03DC161F61251A615103EFFFBA7757615F60F7AF5DFEE44
-5F9E832E4794299721776D643A4395D21F905685BA9038521F05E3C3E5BD1D3EF9C229CA
-695BCA0132C4A64A71334D9E76C48F6F4D5901CBD9DAEBE194071FB0FE7D2C5C395DF93A
-C1C64AA36EEDF18B1CA6E2B510E52A35091AE7673924F36F7AAEB981B9957A3EF3123C5E
-05AFF67CDB142D00CD16E03754BF6C68CFA2D734333AD69B3A3296EC597C8B76CC3232AB
-45ECC8B2C90253A7001485D49E6310FDB5DAD3E7EEB4305BE7DF36342C4B1E11E0945B5D
-EB63198EE676FEB7D3382D0CA6EC11E11E8130AA9740FA070EB518CEAD8C85D8BE693FC7
-15B31D6CEB164254D322B7032075DE964C94AD8B28BA58A3A30EA9DE79234F4DE0CCE216
-DC09F22CFFC1E740B082DF65F10F9D9D173E1F4A996F16D5DDE396179B4CE389A555C3BF
-BA3B9059418EE567C4DC661C151F9EBD8F2E006288A6CF3B86D8F260E15E77682FE2976F
-14D4E69ECE6B15C1042EBDABA1D24D9758EC60EA675421D5556C26A83CAC3B003F8426F7
-98195AF444EE55CA608A69408D69B7B103FE873A1CBDE862A7F7C4B27E778D4ECEB1F596
-C4796B37DDA26AE61A4579506AC65F72BE3D01C2BFC79556913780F541E26E5316F6A56B
-5C92DABA9B7B9A9E80BDD4FF1D3F27559F83021D89CE8497F665F2CF2FED3805F8CA7D36
-355E41188F853B192CC64320849EA08D09BC87D24DEFFA9196F75F00893DF4A069BB4340
-A9A451102003DC8FEDDDE6B648EE1675851310D15FE319BFD1E411DAC0402698598396EC
-9B01FAA040F37D13D65D9F88120D6212C7BE51B98FECC29CBEFBA669EF8B73A39EF24D86
-8C692FBD3C55724FCC7BA3912B87998A4E50566ED69BB2742FCD60FD3BAD55EBFAAA0E9C
-8BB15FD2BB7BD82D65E722297E9173E09D8C228A76755A3611170CE15924D3F2BC9FFDDE
-B0F2CDFC4CE44B6507B03916E334B4FE336473D0DAD959DBF3B11684D09C67872EB406DC
-E8AADD34D2A0FE88056B2184D2B07825749A3131CFBA4A6885CF4D84D914DEA0A4DEBD54
-F35F031C2B4C18D2C0E5DA80463FC86645A3B63209C53BD98B394398E506D8E34F0637C6
-BD702B6BAB0E45F12EA06112EDD4983034410D96D3EF907D32C71AD4953A8C90FB289510
-70AD7E985BE69AB6D180E110FDF29770905DDEC7DF995FF72724A275CE8CE825B9322B9E
-B301DD7E90A6075123279F9EA89333E39457333EBDFC5F07AB1563003D0E766A010F2342
-A5E210C256CA182DF768439CCBFC43477E25E15BFDB3A224BC1C9D67B0A0EE160B7142B3
-58330DC30E49446C18969AB491CBEAA64AE611F587A3A7F7BD3B206CD034D0EFDC12C992
-4FC9F60EB7A7B7BDD94E900C5A58AAC8C17B3588A95D614197E1D5D1013888DCBD84F7C2
-51DDBDB5E1EE146350A94679DBE6A67BD7EFF924C402C23DB55C00664754CC9E4D3B1422
-16AEB7A712CE85947C4680102B651F83DFE71428028B258E722D827C2C347CE087C741CD
-F0846675E34D56EF99E21854CA02AE9BF9B41B34E58A1D5144A6E9D698172FC2D8E8DC49
-098B77980978D67285DA23F821896D3ACFE7ACB6FD5DD87AE6D07F5FDE7AA553A869E594
-BC2EBEA2E0ABDD5E747FCF0F7D1381F9E121E97B11456F80215AC688AC777CFB9419D95C
-DAB35AF315C5C83114FF51BD583F17EC51A911F255521B3DE63C5B0A016EDB98722E0B15
-FE68117B4406CAE3F29DF6CC813569882C169070F6F499DAD42E1ED6DEDBFD464D352B53
-0BB28FE2554FAFDD48FFB9E1A433E94681A5B9DB2AA285BC5CDA48C1BF7AE7999E5A6678
-D9ABB9A68BD4A60756C13ED1975E2107F6D1FC4FCB2E18FC25E68DD2E53A623D15B95541
-31F1DD74E82AF748119B40F6E4E703DEE1856BACBBFF672DF548327A95F3B52DD40105C3
-604A24047CD989DDDBBCCA27D28F3BCD681CD55AFAA1CC5F29B39FE1D6B59FBADAE71196
-CD83F5329C9B969A5BA06BA67AFC193C4BDA78A275C64E2D82F373EDB713498ACCA9FE26
-9FC4736828D55A98AB9FE487AF40164FC38085F9DE01332E3710F22EA52DA9CAA28DDB5E
-3AA72EE9444F818DB13EAEE426543DAD3C78D48B513DFF77C18555DA53B33B04C8887199
-7B2C9E86E12E94AF3F379D196532D2CDB84741211A584B7560DEBA3C53CC78E240186671
-8D295EA11162384F00A727EA4B7EE6527DD7DFBBF5966FB4372A35BD2FA7BB7A6FCFE23D
-AAB6570FA52506E3EF532E7E7930298FFBE47D48641C0E26D1BA636AEDCDE13DDFB3C822
-DC32C43759F016752DE8F256DF5B57EC3C623C05037F1E41C38C66D18A27610CA8BC0E5E
-FE4FA49EB0E287E855990B9C83A103A1151727B192496B318A0730AC902D7C4B154155A9
-47AEF1B7255276631566EE5B995D9596517E42DE25FFC666FC0703336FCFCAA2B97031EF
-9B95FD714ACB1A47A249DA377A6EC9338558939C6327B90B77249CFB4CE6FC947BF1E88F
-17F20A194DDD37657E8D5BC31F624B6976A0078063FF707BADEF04391782C6660BCA4623
-17BC929F6411D2351B9DD2F67CE4BE04D251829BA6E5ABE574FB3D3D8D2858AC7B87F3E9
-951F0FAD71060D85DD3BF22DF505778932D2C7CEE2BD318C0E9601D085FD258C6ABC091F
-EC3F44C639B2852EBB31BA5522AF78BEDDBBC52E804D5DDF23DD119B951551695BE44C23
-5DCD52729FE0FD451F9CEF413EE55AF45128E35BB451D654496CF1C8C2BEA6C95F87040D
-928EE96A22AA91E8166577727896E7A26EA5298620E50832956DC5B4B95986C69079A1B6
-8F64DDDCC518AAEC30D9E908BEA76C19D54388435012C2F8ABAC88BD1F82A1083F729569
-0A4076112B601F35B1E104720EB73D88E0E62CC0FE278EAF5BE953AD8D44604C35D05A14
-7123538297A5B80677AE45EBE1620302B8248F2B0CCFA068CBF76C863CDCEDF677AFEF18
-F4934012F795C9CD39EED5915DDAD4F640BF75DC91CE77E4B449703C1FBED867745F67C9
-BC48C987BCE8B838D35930735744DB987AA4E8EDC83236D764D1237028F6AE8A6CCCA003
-692C28CD708F1C9F4B0468140AECAEEDC465455D8C69159ED0AD0D0B004A8B51ADFDEB3D
-82220B8D2DBCC5E1CC0F550E44B83FA668B30044A2E9978A810D4EF995490065DCFDEE41
-E94DAA51D26F13EB8218220FCB1F0F32D5B5C15E715A4FCC605B2F8800F44B82633A83DE
-FA4C3430104CE6650AF07AB2668E751DA4845205FD29B7B03F46B51DEDC3B6DB3E534E15
-AA0B33BD6E0D2C5F8442EF326828B9A3188EB15DB04F301A98E00710AC5CFBFB9B2B99BD
-5AED103DE636341AB7B03E24016228C0DD81EC95D5A8B8EE1C44944858784C024BE6C8FB
-D038801D2423D09711C5FAAB0E16C87D307B53FA9F874E6FBF1004E47C6A6907DF86BA73
-9DAAD79101866EF02234D746C72BC60A69F7BFC111C5C26B87440D836432E283EB0CB8A9
-39ACB06AF4FF3857EEC12A1BD1189514CD518060FC75DDB601F545CCC37676ABE3EDD86A
-7FA54DA5C33D42861E585D05EFD8B41D42F7A9A904F48FD96E30EF9C74433B35B1EC9F3F
-15607376F04695749F917ACA32779CE1CD986051E43C2EE748542E4C7CD50E3C30DD46B7
-C6F809D1051F977E7D351C67403B913BE5273A97429416656D83C0BE7C08CBEF00BB4651
-D0D5CE1E8885A32CBC72DD26CAB330BE9845425E048B1EE1AC7591F0F0CC9F73E1EBF665
-76591E3DD449304DAFDFB6A44C7BC4DCD9202AA223C9128A961792E3C0DFDA3515BCABBA
-78F38651862266E779C228C596BBF3903F097765DA142C99E5185BE9DE2F01AFFF441965
-198BD1FBE9BB8D61BA6C685BEBCBD4381C20F71F8DEBEFF62D7946B04C7D357E54ECAF48
-A49EEF2ED25179C1C3FD45268363FA20D07A84D60484C712A43D224C57551FBDAF4973BE
-EC02A16076184E3108DCADFA44B93710DB3388E633AFA06AFEC76802F05EFAE2CFC74A5B
-AF3600A46B026AB514EFBB7184C75BD39FE9427F6F0F9D2435BE1B26BBD4816A72B8AB67
-DA7A6960F5A7A0E7FB1F83DCA6E3E8E8F1BB11E22D378FA743B7791E981D117A2E8126A0
-F3CF5C9B0C35BAF8B66211813FE63B029E2A3913CAAC2603AA4AC900EB8428FDF58DE83C
-D998B69BCB6ABB67FAB1647806FE19FD695372D671EA0B6566719938456CC79D265C9791
-725AD53DF396BFA79E945F4AD42DEE0C69C995EE8DC3D8E85BF383DA9C1256AB133CECC2
-49A3BCBF384F53AD50B3A58606F4A92D68DF6C072E66997978A92EF5124DFAC8B3938E60
-94C0FAF7556D0F75925FE99AB3E80FEA8042A977931E75635051DC896059C30D7ADC38E8
-90131D3472CE1BBBBABF231728199245250B618AA5F830D20C8B1117E4406C97F59A9A76
-205946764DECECD486D1C217242CF8C58263535485E89344DEFAB9D94079EC177AF6DC31
-051EA610E81026B7569A061E99309A04CC3977C9BBA45E88B6AAEBF585B5C79E42548C23
-060E0E103CE6EA0897B43EAA35366DEFC5B1E5E673424D707F05C770F31218BF56855627
-8C9F75A113F5DB640C2EDB7F9D3138A5C314243030CE2BC58F4EFC9B546E407A1764118F
-F9D2208C6219D088CD8A214CBC0C1DF55772A04DFABD89E08F7C98455E8A5F1F82BA749C
-7C5C5E6CEDABDB9B3F6E1D717ED97A50D0906BD4682D9A529B3530F29113A35D5681980B
-8D099BAC264E382DCFAB0419F3313453A080795E7CF66860ECCB8782191F4CB0EB2D2965
-F14D28EB35DBF1C95437674D84C1C331F4EE99C8DECD6946069B3A4A7DEEE0E48E817AF3
-08C28DF99E67A4413655CEB10BECCB27448530B1688517F0C5DBDB97A17C6F12C6AFBF55
-AB5AC791F5363E56AFDC38DAB07B7A47B9FBEA91427847C5EC1D584FF56E6F2735FCEC80
-DEB8D89F90090A11819D08591A37EC3948E36AFD44237CAB16533CFB51B50E1EBFC4A6D7
-BFA520FDA738662AE6C0214DBB2723FBFFC986E9DD47A493FC0090575CCDDD6C38EAA038
-3858C077F57E1DFDA8DA95C9A18D9432DA2C86DE069CB675D9C8189EF01C567CE476E0B5
-31FE688044569D34362235F894E746E6306C03E76E615571D9CE6FB31D63BF1DAF29AB76
-27C0D02D7760EFE583C8C2FAD4AF0A90AE91642F2F20725858CBC2FABB5A5A36F19A3C6E
-455DDEBAF968A90312E83193605CE8E5454E396C2C59557EFA1BE1E0F8A0AADD060F77E3
-C642635484956025266155DE24655C44BB0B4D07099D81760DD0823EB9EBABBA27A559F4
-8803E6999B782A4D91C388B46E1EBA6E8BF7CE9080F46B539A507F5DD17AAA05D05A551C
-B57918F3AF43390187E3765548F4E5A3360A95C80DD6AE1B26E1F90B8391A3872ECFBA2A
-087415ABEBB9119CAA1D411EF7E0F0737AB30979A30B2ECBC8EA42F38B41421CFC94BFB1
-FD30BAEB6AE340D043A15138AC4A7FB12CC0AB80547DA81D91166B09CB56A5504C048DF4
-D4E1E7083B5EF010A38F4BD375A3918D25B05026FFEF87AC25AB554EE74AEED323B4AE63
-0F1320CC97909D2819A8EB0A90AB5F1147DD888AEC5D42C8C5F2B2728A80AE8673831189
-D76571F665756C2C01AD4F936EE0E607C27FA9B8E38BA5C67B52E7A50E09AFB2D0610A00
-863C59F7A1BF14A5D3FF8954CBBC3D13F709B433822DB8CA2E64BA1FDA4F9478A5AF24FC
-A4427F49F39EBEDD3BA9DF9B2ACE9FCB01BCC9153A7DE685AC5284427B0C573A6E5D9013
-86834552B2356F11011083B65724EF7F8C7D7CA259E0C03793B9EEEDA5B6DA8376E72EB8
-033A415DE664EA5CF53B88655FC02AE5E530C6A90F443F740444956B60F6ED760294DBC1
-9F492DB3A5D4E532D0DBD9EE8139092D3E89D7CA7490400FA4EBE56334B1A17C9826AEB7
-74749C9193FBEE0414C7E7877E26B8274283F14A14AC7CA27139CBB8CB89A6D38DA283DD
-3D421153DB2D917391215433E356E64E4A07F6D82EED542FBEDAFD11D0BD4EF3041C6865
-2ACBB1FE71C6B7B3850FF45176850FFD64D18D4D55BA5E74D037D3CDFC62563CE2929233
-1E42E636DEBE14DE81804C1A15903CFBE782409A1E8684819BE6AD86F1C0EABC03F4CCA3
-A959E0B6C57F02D29062A6F0E3E5978C4726C01F607307C16F5F64460E81042B8E2F6524
-EA16F9BC21AE861DEE4013959FBA74E40B750AEAD9607FF6D15D96F6C28F4E9398C70CF4
-1B654A2A337FC8AEC523F27F6C5F0DA4B2D4A3758A0DAC65BF2167DEA823C3D108D3661C
-CC47D80C948444701335BC4DF8A8A8E433776FBBBDF0C97E985DA1311451CC85AF9E5BD2
-FFF576BC8E4A79C92A00678761D47D093A26796DE0316A80BA5CE0BB69E188F4C38E7BEE
-45C8DE646991071844CBB503847613EC82BCD6950F44D64D8117B52E3A63402C09931410
-D7A1AA9A04F9815D52C3BB9FBC829F9DFA76ACD77BC751475979D82275B709AF02783A64
-A633CD8F213DDE9216664C22E9F9AE3370B282E9098B86D4FDE991FB9D16D04C0C7F5262
-D539102F6529D73F20D1996061515A8F1219B228502590166332AE7D27CC822ACCF92861
-5091818F53CE6A7F1C5A68CCC3D6C7BFC81167C3C2294C9591B71CEFFC88A245E16484DD
-1080375D15B6A3BBDE47CD198D0BE312AE1F5F6EF6DE4A2CA38A717D7104466509C8593B
-FA6B5DB6DF788C6952A28E25CA9E20D636EF9E84FE3CE4D3A4647464F79111A610A1AF84
-E0BD4B8F7BA06C3AF012C74C91DEC0C597E6F4C19546D258D9E53E7943D6694EE85C74B4
-93276817411892299BC02A2CFB065F5655DD87E69743313801CAF098FA1C56841174EF0D
-4A7F27B2E91762069656895B9FCC9434434ED722BB9A532606688F303D0C514B31D179CB
-DED0DFF008F09184FA548FE7C276989AF46C9C63000814F90372A1295717CE87B2D9EA55
-34C0A4D467A0F6A32482B8139AC4240E3569476BD4F8D5CA5CD62F28BD2FD820602FB678
-69D696EEFFF2C173D2C7EBA377390670908EA07A7E90BA16790314AA8A923B234C8ADA37
-25888BC9A631A4A5B308378369C29B79966AB44E3F4DF846B0438C31B6143C9C3A003C86
-A2119FC5FC1509BACEE7A9A1EF43945214A1E37879CABF18B7A18E8BFF45E9C5E7CF05C1
-81F2BF236310B0AC2B1D45E0F6E3961AFA34CD8597914B6D503F7F5BB964B7DDF195A95B
-FD5F3FE49340767491F213D849B3299AE439801B84A2718489868599F29DB6849A5471D9
-043C6B4BCB4AAA48DC6CA3DCDBE782D3113463400F09399DB804AA81FAEA98C6C7FF513E
-1CEFDDD822C4A5ED4F0EC1AD96EBC6A713BB82FAD69C3E914AE2CE2AD2DE8FA301364658
-0987D4836813D3DF7BA9A77601FE3DD487408794D7167D6297BB19C8ECA466D56F130AB5
-E0ACE40D575558A8221EF634AA1D43CB10B8CB8ABE6EB2EBF97C8ECBCA498BD740A73DF4
-0CDE64C2C0F2D1468C01047ECC2320A9FB6D965C83A2CC768323CD1FF3590D6DE86AAA5A
-4ADF258AFA132E8D8C04AA614E11D26466CD9F265AAE7D8F3629857C73946C1CDE7EE21E
-15C1ABC4A1F591DC1CBC14B66269525A664419D0C9AA2C4713790AF5E23B566EE38D0530
-886A48F041B8B009C5522B55E63813023C763C68545AEF0FBDF2674C94219D0233EE3D3D
-165B31C9BD4B9F27649B860D935D77557035BDF4238B499C5CEE68E946454034E4841914
-987B718F237862C350178B8FCBFDDDE9E184B3EA11240ACAA8AB1880410F42E0C66D7A2F
-CD1DF1A3E421353590D9880F7A5A0065314D2E892D45090526A1378ED18A694F6820EDAA
-5599C2EAA34954D28B021848397DADFB07F7529EE0C975F5AEB815D91BB7CEACD2888F3C
-9EB8BFC41EEF2883618CCBAA18890E36B6CD9973E0A0665387DDD9829DABD9DE59C20652
-6608C3FE3D5033C33DF477762D37F080E3CC292D9E18348B2200956458F0CE0987B39876
-733331F948C4F15C818AEB8F829C03DA8BE6EEB40AF79A1686AB9A289FFA67BE3A42C396
-D5D24246959921707E84C9D4BA448BD725D6DDF0F735C9ACA2FF7CC28B75A81100CB2B6E
-05B75DECBC1204C68ADD1B324CD24F99E5ADF9DD3A41CDF704184E27303DA98C72037B29
-276445BE607B12363036C6EA298E2B47890FE0C3948DD0AA3D0FAC17ADA775F58FCC520C
-3B289ABB6315218DD1D5A6F36198EF93C58096B8A4A97D6B49278A7E41E0ED9C9D28186C
-C8B5D8DC860505D94B5BE90D1765C154C43238EEFD91F5A385B6FCDD19272F1E9E3E50D3
-83C523509B45D8A166727E8022861AB6D8A8DA71EF875A19362015DA1672CAB7E9D80E0F
-93A00867BF6A4B2894CBC866BD744013E8FED49596E6D0CE6D18D5CF56CFFB2BBC53FCBD
-9F2B1D7221A7F5B539AA962F74E002DFDB8A1425A881DA6D62DB3E1E43CD9C20C4B8C0BE
-FCE4B01FADC43B7406529B30BDD270098761F3BEC88EA6AC40C5143AFF3B926512F2D560
-F381B90202556D8E3AAE54712179B1C33131D52A4423676F83EEB850FD9D3281F4E092C4
-A3B402DEA3D01774B5BC9AA527D7E2A28EA9E6097064DF15F9A0F5B1AAE25ABA18689AC4
-2F1E2F1BEFF552DC96BFF8798FCD5877FB4F4B5082AF6D3F24293C7D34344959BA691E53
-8575D64484F2B36F1223DBC2A9959793C29DAC7C28E334775A1081818099D1CA68B693D9
-ED1D3163BEE2611E01B87E8B443A0D8AD12F251752E7850C29F2A535971E4BF055EF7322
-652B71CDFA987F4A51269AE8783EBD530F6180AD15739754EADD4811134E25FF8D2C6FC8
-9FB63D240BA9E80CFAEA02523BAE484EEF08045792885AD55A5D77F4A6645001DF9A596C
-877DF33EBA8E728567A4C4FE3D848C7C16E8A3B156AFFBCCAE51E668656929F9D061648B
-27093B54604B900461B0E9ECF73718C3B5FB199592BC7C59466F041BA9963920E2174F59
-7F943A02728D5B7FF69735757F5071904A2F6FA79DFD8F35E96DD4F92ECAF58A184CD6F3
-C05E50A25BE5E77BB2856AF8C71C69BDB8EFCC82EE65BA7841387E9CD655FDCA5707DD67
-26B96EF73B36B83362698C5945C75AAFDBBDA1ECA470512B7E11CAC4FFA3C3C66A07BFB0
-1F927E762871045195410E088ECB16884172E616721D58A5F51B5CC0AD3B3858180E1A36
-76CE2B46D4D91D06B146F81BED26358E5301AFD2DBB78D60F9F1A6185B50BF7A18CD41C1
-DD9065950F64ACDE99EBDCA136676247E455813438395B2D3FFEB24A2DE4D8D742EBADC7
-CEA283AD867A1239C224B59D55BEB159D6E4F5E588AD01DD7D398AD7BA539E6F82F8AAAF
-9F5F1A7444DEDCBFD014548440DF870D701E9485467492E832E235FDC1AA087952B7126A
-017E73A40F8CF1EB23E9BE25B942B2CAD61746F5277B807FFCD1C99CE3B2EC69FE5A648E
-92A04C71CDB188935DCFC4D261DCD29215431D80A7979C571CB7E1CCBB7E3627DDCE9717
-148CA0E8BD7F7F22BE4ECF15E8B6CF1B0B98D55A3285DC2819172495EFE082B32E72FD3A
-91986A13CCEDC5D832C77A4B559175C53EEE61089B4580FC39F34997A4DF83E427FE668C
-3D89C417FE22308176F895549F6E5BCE6EB9AC04675AA645BFB2D81A22CB7B30CA206A3F
-01B9FDABC7055B295236A79DF2522E4BB918AB2643351186D695E56E61CFF970A4118686
-E85A4D2E34C515D0203848CD2E92566F38E1D0DA886DC2BBDABF5B3D7B4BDEC68C5FE6C1
-8EA7E92F5470CA95AA5CDDB9936632E9DDDBC7FDDB86D4E96CCE3E8C579874BEED51CBE4
-D861D6657AE53192DB369EA930F87A9CD2FD7F9361D7CD884062870D4149126AC714B191
-1AC77CAFDD1C48686AC3474BDB9ED4B73EF67193714A392C4B273E919AFFA7EFBE7C690C
-82E547D56C79ACC4935BAD6C4F333FB5774FE84084EB940DD7E002410132F4A84894E2E7
-4661DC6CA73050FF3BFC04AA8959E9C91D2EABD7447839F3B32E1ACF1482E6DB7ECF37BB
-EE26C27AC90BDAFE91F8D92534DAE644CFC38E2A2C540A3868B0E16A6DDB60B02628A94D
-5702C1EC2211AFC1A9F7E888B90263734588B6FA7BD2CFFF5B56F91A70633C1353885C24
-8C5FDF9CA938673645E3D320D7C5566F4CF7C9C6E86C9945386A16FCB72D342D936B0E30
-6EBECF12E4F45A6CEC4947A71D674128FB0F72C198E4F4227CF98E2F3CDB7E7AB55AE127
-1C2A39C526CDDFB66A183B6589505CA7F5EE98C400A6C760441B01000F2ECE968EBA5DE5
-102C3974AD4716D7789E07AA39A3458740D9F55D5B35DC0B557CBA9661B6588B37F63173
-7579616AB866890E1AF0B90399F1F7E95E18703E6F723E70B2C00B6640EBB44353DC5A25
-D007F285A25B3241BD80CF83C220ADB9288AE09FA0DBACA187671CAE9C04B61AFA10337E
-75FE9FF0A4BF03605D0FFE41DEEB2F2DB93CF868CC7155DE51819D14FE17986BD187DA95
-96C1904E8AECA0F6DEEE83C9D8CEBEF4C0D13D5D5A13E6F3839CF955A6AAE6F7F5DE124F
-0174F811324CDDBFF0247214BA4A343959EECD37D67EAB103B4B9CBDE0FB77ECD1AC24A2
-C9FDB80D0C07AFE58C4839CF9D4CE6B78A1173AE2F05C51F17827754A8EF22B5FA54F3E5
-9ADD2A1103F898664DE8ACDB89929B04776F51E241134E9A77F071CA83DEF1E04EF457C7
-56A29D540B3ED164BAE4BA2C56967BCF5BA142CF8640CD829A952063BF1D9714AD903999
-F3B59167E2B440BA083635B6A11A652E94AA1135F9E00B0BEB10B533811FEBC64C7107EE
-7A2B4CEB6D019A305F633A9229121A9E1097C289129181CA5EDFDB7F9EAC133C6025FEB9
-9C9BBA2BFA67603A7790A146174C061889EC6A77DAE40C6C4E002263203BD6BD05D3699C
-7C21644A24D562DB3C2CEBDABD3DA2F607458CD4EDB1FF6F9275F767B8FF38AF5DDEA7FD
-A18A1CC091BEDABC7C1A959031009969572A97AC1C6836F3C24F6960ADB94D89C5FFEE9B
-3391C4671A09EA87B8675CE4D3C473E3B8A750671BC95439E75243100CCD0E0873A6A218
-C8E574583C968E46EC6115266614DCF130AF7F2CB1DB978B409846735D7B29F1F8042921
-7C32639EBF476E5B0EF1367F65F0600DD11C0142BA2386FB01479DED4F8AB419AB5A82DD
-66295577726A4C30D92A8972B72D0EC338487B630E86FD7984A97502583B27F5D1BA3A0A
-8236ED3B99EF2AFC4018CF8EA12D89158A04353B33FAB1E638F1817E72E8B6AD3C58A86E
-0DF708B6F1EAB273E746FDA3A8013271F16D3F0DBA72A07FB48CA2E0815F5635EEF35FBF
-27DF180FE2F9522E57CB690E4DF7BAB0C4F07D34BB8984D569340061B64C6D1B5B5E2090
-31A81A794634F445055CAFCE9E72BC0724EE4C9CE1F94D461E9619B3CFB47B5C404D15E0
-3C61B1F11D23808893679372E8BF24AA8D6D443F9A29C2908331F799593CBFD1AC2EAD9D
-855295E0B486E8AD72F570B3D768D775D4EDE2B9E48FAB6EF2C3A72F458D8B2DC2D534A8
-55FC77ACB99BDA7B5FD432D848815D327BE30A97556203F1C4276993E1A83329E62E8288
-7ABC85C17622A83B380B8E0C381376DA627C5852F0A031B80E22273170CA4D1367B183FA
-169F6EA37C541C3E4EC299A8F34835D56AAE798E69B233309FFA71761469CC4736E2D627
-073DB92380000DA1B9D6353AD27DB894F3DCA36918E7CA103B60B1AEC505D6BA9B22A92F
-BD69B9B2EFFD277157AEBE234B579E82D829D06DC06E67A4AF366F76D9321CFEF7DB3167
-3024556E61DD0FF006848A044D80407DDD75F123B155681F47C15283A44286FAE9549D8E
-49477A38347F5AC9940F511E0222BDF46263DE6DBE16990D0975C2279487BCAA41177833
-C54F854836CD22346F409021DD7424D157B2E6DC9CD664EABD2B5352B1326C1C046D6E91
-306E84D44B798DFACAFABCF352426442DA14795EE6EE5A1E451238E946943534A0E4D53F
-5CFF56D8AA689FE7E45D8974C5CE1D4DD9608AA42A873D0A0257D8766E7DEE544C350556
-5E58D358F0AB8DC7038795861DDADC8B0387D823F3AB985FFAE915019CE53B91A2666F39
-73143D04434D1B572ACF9B335F0B921E1E49428DA8AB0BD8D09B351C8BCA247A86FF7253
-4EF78A5150BA14BDBA2D535D5A46017518104E810EC678C9202699159CD05060C1C9A5DF
-7421F17177B9141550BC2B2D9F2BC5DA1346AF811667AA0F5DDE7F690B366F6FC9C3A488
-B88D827C24ADE4AF85A5D5CEC82BED8485EFADAB9D9CBFA07A879A9D6141EBCB10028BDB
-83DC99174B710E444714AA5D275073EFD6C542654E303D4F61826E7C505FDECB175C31F3
-455A2E835D12123392DB79B22ADCB30658228C0142B6D271FEACA94A186539740AEE942D
-11F4B10B00C6DA85D934FDA37B37332E61C66AB95EBB5473308E3F2E33F220CF1960202E
-5A2A81C85E8E831D4A48A7A9CB178A3F59AEFC408EC69D76722CE9FE89F5B7F1A31C7606
-32EAFE6DB673C6E76B0E472B2F0844506A481EAB5479CF0C559F02718F76D41F78B2CED2
-19D72BD4D9CFA3F99F1B8869E0A8AE58F40DCFBEB1B8FDB98032C3430E7402B9B1A93141
-74557B5A1CA485CFCF20D6830140FE0FFDE105A08DDB301E2109E5E371C2EB2568481443
-51F989472D19D12AB51C7F23AD18B592118EBB0945747EBD9F4DABE0C8EF4F3B8AAF5FA0
-34B3FDB56EC249523B1A3C32BC4A6719AE510FB82BE0CC27D6D4FA2A806941EA8E3CDEB8
-A30F91078D22260FFD25E57D8B3BF7A743031731EB7396D5E9A949039FB9ED19E38D5C5C
-644696E3EC29B78591F522484829BD1A58FA3595AB26E0566838DA3ECD428D905824B697
-3FBF19090E11E99B789B61C0BC97C86C7FFB32FAB5C7FE00EECB9C8C126C55C959A6B06B
-C709F0923589F9E540E746AC6949DE143744799EBEF6761AB9DA2E06127C18617324286C
-874740B4B5F82DEC59585397A4B75A5FCE31AB26478A7BF1AEE14AF3098F589C1FB7C010
-ADF80512E936F57CDE3B8E244B00A80054664EF33B5BA3E4FF2F43DE74496A57C0F13B65
-A60A2F4CE599BB104E72EDBF9BEDE7B943F9404760B7A79AC38AC19086516CB33AF7F962
-0157DAD4D4AA68B8C96A66AC15C526A1711081F56738F3238EF37EF609BEB0792D41941F
-6F1C7D95E0391CFF720A51755979EBE6323C653EDAF0808644E41FACCC09C29E1A210B10
-881AA79E4D9714F33A96735C3B2D0B13EE6272BD4D157E7FADE7F6BE9825E5655E80A018
-5EB33917002B5342002CE5D24859B6EA11E571FBD6F1F753974F965E7B5A8E0B3BAA8AC4
-A6C6D56EC55E44BC9D42C8A9AA29249B420DADF448F6DE76D1DC62763D5B01A4030A7D78
-28BBF81417BB287B267F64F8676174097E43E99785609F9C542ED5D29121D5626A9C7461
-5B145C86C2AEE98A127B25A990D9D73987958DF6831FC937B06AEFEEE14583B91590C768
-7A9FC1CEA0EAAD6F29FFAE96F8ADAA658DE66B8567E8A9E56D866B8A9A08C3D389B3373A
-AF2D0AABBAD35D8F3AAD5D04B69CD31F7BE8ACFF96CE6DB8C42E9F842E4254EB34C2DB18
-F0BD1D6EFF4ECDDCB5E77E92CE64F20260E68903EA705FBACBDAAC6CDD7FB431948F1504
-876DCAE96AA501F25FC5707CAE2DA29E995B6C4BC6CE6C641CED312FA02000D9057627ED
-14D531443C740E7CA081652087E0360C095652A1CC56A27B7FA61B3420ABACDAF14E02AC
-C80FD7B412A97CE4F33DAD5C747EF14281EBEFD492468839338802E42FBF554DA46DDE16
-88D26DB26DD3613986E9D28D14D4BAF9F739F93E8EC34A2BBA207294D8212D2CFE560918
-A72DDF5A537C4571281DAB8743A487D8C370D67C0EFD1698BFAB848E86D24DA2D213712B
-BA731CA3F76B657051083119FDA759A58F8CEF458085052FB1440D6938E438774FF94EF8
-896FB0AC6A92DAEA2E7C00BD76000C5BA8BAB7E5282952B4F16BB9AE8265F8637118A4FB
-F229CA87AE41C6ACDF9F8D318D6C3028A70BBB245DFB2E1137E3BE90284B26E8FF4CF77D
-66231F1BAFF98284128D08E8FA4FA75981A22F45CC026B1906FAB73C2FC219D3F7253831
-17A24392036B26AEBF3495F3300F63AFB9F0FA950673F5584FB20CDB57EB0E947F31DD76
-945838D69875CD1A4E7D2AF5382044DFDE866E37CCE23F3D06B1F5A941FD06CC0550D64F
-312A9D6A655414490AB1B1FD54E34748E1D408782FCF8FA6A611232CC7218B4A0EB93CD2
-09876191651777FB56BE434096B02918A658A7403E45F59A1CDDAC1BA53DD186DB8E35A6
-4078C11DC0DE5165205CBE612FF365C193BA540F5C6CDCAD0255E361622E94607400A330
-BCFABF835275473D4C7767015963CE0FB7DC88B4AEB660FBE4F86039E51DEA6DB4DD229F
-73D4A0A322C6D349A4C8BB304B96B32DC129DDF372FC424D1815C4EC51C9B0743D6831E2
-6BB5E28E89DAFC8845F00E47992877FD57EE0C02A76FBE2FDE8802A176E8A03509AE57D2
-0CE44217026FE28F2E06435ABF13D27875C5B4C6057DB1E1F70163C1011972A9C0DECED7
-6C8B547B8202977D802062E4189713D7F579093F4B9A72C69516F1179DC3512584977589
-461AC3D1BE8BE1C05867EF6FDC26E3B82D9CF9D159DC0CC1F9D6F94166A60E6CB9FF3FA6
-0D2B136FB725DE769BC3A8B64722456F049421CB7F863A357B318A979C3513C9065F5CA5
-93022DF125C9DBFBB822B1F84936DC5314F17DDF2960FEE70CA3E7289409EA5AE6F15DA6
-0E407C6262D41D52C864705B7DD26AF2CB813689E24E9673686ACB1970FB41CAA49378F4
-31C53F3A08AC7AF4D13F7FA81B6C3F71FF999380205C74E1B29B5A4FBD349783DF613FE7
-E2CBC7AA7B424965C42EF2CA80C60E0EC6F7665BB3CBC009F0F5C6D4E8ED5CFEF0E5DB9E
-3DC006C98706723B2BEC309ED20CF1CDC60D66BB478B87E8947419ABD499CCE74F80FE97
-89041D176C3BEDC9EEF152024E3678134EDF755D8C247E3332F7ECE95E649E73A54C5BAD
-228A629F5F6C8EF48935C8591910230DC5D04C395325F0C211BEC315F26F84AE8DE9DC91
-A9B5796CA0ABCD4774CC3DE12C39C2FC257165DD8A7E458E87CB67B6A487F10C351C4881
-0A636E4109845E0C664C47A2E11F9C99BD72570B26E854B4BCBB49F4011CB2CA4464FA72
-6DD8C1F05C69527991D634487D48BC554A80DC32B334D3BF6D65F1AC32D0E764825C8760
-8B6317DCDC713644DA60322D68CE38FAB781D24E14B19E711BCDB629AF7DB032CC9C4393
-195992B6ED1AF8B84AA21B5E3BB12EBA01DAB58DCC2E9549747FD222454D0327C66D62E2
-7EEA7AD48B09DE56F0968E271E59E8965E16862B7968A14078BBA821C2A4487F877E3932
-1D56C51B010AFB2844BB7E4AA57E3AECEAF7213B1C70F6EB993706C4F2A613257027370F
-CCA30A862ADC2D07E4619A8F753B13B94C275A14403C97CC131A924EEDF78933502A8E93
-344E91F5A238B236B228DC9FB65C60F8888DCA6B8A1EA897530D193537FF73E8DC70B3EC
-4CE290AAAABFAC0EB4C9534C7F3EDE90E840A1CE7975204FE70B52ED5576B0956E62EE25
-7857BB5DEF2AFD8D46228E9625C5C0FE48311A07CA246ADFD9BA1435340914455C0CAA4E
-92914E7AF31E25438AA05FA2656094BB31855A27BCDC45683EFF1291934C3C115D8CF919
-7A245EFEFE3F7FDEC037ECDFE70737A4D961CA634AE153B01F03B1A9F72B602A8358D258
-E03E54AF79090DB322ECE0CE33377E42E5373F443E851550E5D44F06C1C513173CD04D47
-9A9E70C9774780821872EFC100F5F5F34A1E0754E037F6F5917EF5126E5F12D46BDDC038
-2D11C217839C1DFE8D34BE69124B3934B22B4E8225BFCB2F265E197474B9349BAF2C1FCA
-352EF3F4AFAF1074DDB24E8A70218C83DA835CC97F6C55B6FC10C199BC9EE1033F6F2890
-FEFC3998D9F2941E350297F56B377A0EB5BA47A8195331A7CF3BFE934A97B88F18A38551
-3EA97201C200B5419E83D8AE47D6D6F3E864CFCA8A874DEEA5CADECD31CECFD46771E9FA
-7B24F3509E6B0B04F8C4C1C8E27DB0F2F9E0A422988B2D525670841C73E5D11F4B1DF7AE
-9AE2D8A3B5C354446C86862C687A3C21CA35FF2E962FB591310B8C0213A914278B65C7C2
-83E1CC558F6091BF4B159428BA249CDC3395D72E1D5E998C88F379A5C0DBFFE5833349FD
-5C61034AC1EEA717B26646D9024C3D8763F3B33E60A5BADFB514937B9AEA89009F5F6779
-8D5D92AB0CB3D57FB123DD852BA04E3C0AE9D8021F0735B69289822FE2727140AD5B911E
-376B13EAFACC44BB0F0A8DB9079DF3F3720779B5BF1C02CE47463281F6E496AB7695291F
-26C2E02A026A104C8EC76E0DE5D7272A3B83A947E3568DD72E8B2DA7869D1FF74F6E6C0C
-70CF5EB3D5D650498D267117C37DD3FB5870C84FB972E5C52DC3E0CCE6FA398D4807F1ED
-F253D014AFFE0C5EF86A8E431D1EB82D6D223809BCEA39DAF9AC1CD37243CF73E0635BB6
-6B8887C9C2B2C740F8373237B52A89E589D811C40C5170A7B7ADC6C5643F76C4D5031862
-961B7E211127BD0F716CAC04C4F8D8D0958FCF4D420947354D495BAB0C0D2D76030FA004
-910DC71A861857B1B073C6CC56691822B8749EC78741ED8EB2FE26F37E1F9A3B36947EAD
-661BA045810DAE798DAB615C0FA2B242209D8EE04BA06A78FDA985402076CB3A893E5364
-2C998BBA5F530C8944EEBCCF46B9BA42AA25E0D859953A948E85A8022C68EBD496553B68
-2555030C9336F53FE11C84168F19533F5AA4BA9C94FD120491D55C1D3FAB459F80F70034
-48F1AAAD448969D1DDC31D65619CD33070EC9BBF9B4A53C180015AB0D807744FB32AC68A
-DFD7986E082D57C22EAD0C5352E86911E8088BF50E5F9E1D70241959CD3C18145B258B50
-261CC153E7CAB9BD1E723209024540E123C2333D5A5C4C45ACA1358790816CC30F3D9BBD
-8453E76263FC425F7C2E41F79B402DD79552BE2C837B3048BD534F90B3AE2CB1F15A559E
-C00F1E783101866534B0039C433AF1DEA08C4CBAB477327EB3A56AD0F7AF75CDEE8D96A8
-0BF499251B400B85B4D157DB4E54184AEC11547522A187287E945DBC7E31CE99E8499737
-2675C3059133BAE517DC46AE28E735C72E31B30AAF58CE26BAD1FC878E54A72D0C44F980
-4C9D5D93947A846B01F61AD1325CFA2DE62664F181557BCB92050CD697A26133B06D6C6B
-2B2CDF60CE774CC5EF0CE86EA4E4879ECFE1C9B03E3EC73E35D53F5A1DC2AC8105953D02
-277742EE13CC39195503F2F5C8C29CDA7E4D54AD44DF4BAF5006FB9C081A938A5B51EDF0
-A20A005D40125960D589531F23CBA7C55CCF78C72DDBC8E9D84BC2A0C95DC0134FC564CD
-B08777FFD70A0EF725693F54E8C46CD77A5B9FDC91E83AD010DBA9802E3E140943706AA9
-2FE69EC2474E61FBFDDECD7FA0641290E709A9145D8ABF5DC42285CD98CEC24BA9A7345E
-BAF82D4461F027FD8C609CDC0EFDB7696CDB4116EBB91F0FD74676DD5E5C880CC9531A26
-D0256575BC551C3CB40BC4382B30302AB0B891201F818BFDF6D4BC88DA3E4CCCD97DFA0B
-C01A7FD9BF8DAA71C8D18B08E213AA8FC7ED8E3172F80615EB510FCD5AC5D508047BE71E
-5C0E2F8E200E2BB4A8BD0C4ACE1D5CDFBBF09C74516F09AD40BB4DCB48310BD33D28B81F
-B6D0D04144E925C43A7CEE48D7772344EEBCF29D226ACACF8E693C74A0C11DA4177FB477
-6148575C305615CC381612776C6C6ADF8A92408F434717F365CD54EC0507D77032A1EEB6
-6478EC198AAE86D1DD2719CB3AB7A34757C07DAC27ED8A2EE44C55EB3F7074DBC98738E6
-175EBE6393151DF9EEBFFA3B8F5CACE947311B9CAA3C9BD0FB3B359EB30A910D2128D437
-E9216956AE6574F55D25E0E5D8A8E0C96293CBE723960A373ECE00A392D78456EFD6E287
-D57562DB3BC3D2A7E767ABEA1D7231C4888B7F7DA7DB7ADF3EDDA0815CFF72C4A40E6CB1
-2D55239788BCDC55F9F4FA9772782128F15E16E71F33F6C5B75BE8DEF23D8B4E0DFD8173
-879DB3411147841801D556A6390538919D7D2608F5140F564EADF2DC08DF0AD03F8C126F
-FC49829551BFBF7EF652359414F56CBB309705B39D719A5DACD7401D6AB251FCC278936F
-5A0DAE9A899AB62B9A33FCF22092DA0984A4BBC5C90C6F0448D48BF510E9FC8C9B67C447
-1271E9ABCCBB65A4D92DD146C910AC34752CE16939378F0030039D7DC4187B66257475C6
-AB2E3883693090DF350A42D3ABEDE7E84B3EE9187FF09775889B28DF0C1F289AA28E9EFC
-ECE418B40D7AE3EBDA065B2C1B0AFEC58B67199E52E33FA3A305708BE5A2B5C88795617C
-DA1EF1314095D09920B6EAC7FFE58978DEDDA2F17E598278DA325949A4C14C5C0EB76029
-1E325DA7F4DD83F453B6DC912C790EEFF754F69B308DAE37ED42DEE308EFE13437599F15
-406532D885197F621DD87FEEFFBC70BD47AB8FA0FAE972242FBA4F7A7F09D01628F87645
-1D3A6B885B11F74B42C8FDE4DC02F0E677F0A7132B751720464BC97DE5BD08EE4170E7F5
-036BEEF0824340EAB34A358635B8279825717994AE76928D15502BBAC200294388F53B1B
-C01EDEBC38390B986B27E68AEF3C05883E851BF71A6EC8A3DA59A3767D40005DD98704CB
-EE22059B92062B96273D77BA9BCDC6D856102AC322CED73033E6E86DE0CF2B015570C46F
-9BB93DD4979472A4BB5DF56ACA2F9636B6A11253421FA471BB93A5561874B43C99BC2EDF
-333511242334B62A0BD58E9161260561B9CB3CED25518A3CF7691ABFA61980BD4E5B6FA0
-7ABB135421400F7086EB0C4FF44E220A7FE7D92A159BFC63E4D01700E719D56BB6F440E4
-142852FFBE5ECC6B6A1A66D20C7F07A5AE5909685A3A71922C7AB0D1C18A27BB6E6044CB
-B8D2C5A86785378EF5CC4167479142722523E12132F03E5D408F69CDAAFA5C55FB6E8AF5
-8EFB0D41B8448A2E30C66C99B5524AF66BC0F8C5BDEF2B8F0877C5E316ADE6BF0FC19DDA
-AF9F915CF3119AED62D21C33DCE3F7EFAFF5A7B0CDC005CE387D4B16C6030F751DF94863
-99BC7E769FAF52EAD494C8154AF2CA80A6982C7F5B2206D9D4B39B6E61956ADFC144723F
-99BA540F0C9D1DE18921A04A3206DECFF8D04C727FC9E88DEA9C056E2179B22AD2607017
-9A901B66146D0951DDFD1B9E384EB181D7945A4F83F2A06EB41A2459903FB0AC43CBCA77
-1F62A2E9727007042980C7FF98F349CE0CDCFF6F3447C3AF2712CA82D6828DB71C48A1EE
-E331572A4591BD9D3FA077E2F29D0DCF9C68CFE2B6A71FBAFB0E02C241582E09E3C848B2
-CB8AB75D633C42598FA07F85D5EC3F577079CF2F0E68162E66D83176EF3B23291D741AA5
-77D747220835A8B966049F3AA22CFC0D6B1F55EBB917EF80B50487FF81BA7ADDB90CC430
-CAD43AD6199CF4CDE68193659F7E4860F259EB99B56C0E62390597DE3E05983AD165982B
-E8305FF7E77363A9CE624FBC98626C21F6723F61352E036656B96277E783D4E6BD0EDF58
-5611C8D7BB3132B9E7C21B65B6EC5E3BF908677F6A5C5DD76BB16CDE31232CF2DD3F437B
-BCBA6901A99D9692EF82FF0F8CDF49DAB5A947DC27007F604C3D2CA84455F9F30A75BA00
-71B9C36D21B4080D1C9CD31712527B8A6B5D6C39C29690E92E036D49E186D640E2F45673
-789BE4F96524657EC01BBF37F792212AC8688FCB572D26D10ECB727A316DD79CAD673E6D
-2897D77D5EA7723E541C0BD23F4CD3DC2A5B9E2EFA15A024E825CDCC81CCB5B588CE4B18
-1D6E90D3EC7CCD947D371B98CC18A30C33E90EB7A5C180A6D500758CADE6787D5E89779A
-067C2DEC491D78466EFC113586C71C5B7E2697685BF5AF1C6806BD2FD63DD7A5202F3C50
-93EC7D2C129E0C3A8CC8950CCB2901894B1233AB3F71CA25E34BED65930899A695EBBC51
-2F28FE435C99ACDB6CFBF1836CFC762BA9FEF40EC118CA6B8ED46BBF94082D4CB52FA712
-397BC0C630D77283AF633364F319FBCCDF6756304CB60B8A14AC86F62AC180AADBCAC4E0
-077C3299BD7486A05378F35430E5E1FB84A01A7C4A0B48DCD72BA02699B8087B5858C7FD
-A52A85F08BD02409CE14EF70619E0D344612BA9971C830A0FA719F6EA5F3ADDB460C1430
-4A987565651FC9D13B307E48B7BDD9EC6CE1459E6062C2267D20D5D17992A4B84027B410
-36DDBAA9670152215FA62B5054356BDFFFA7F623EDDFE2BB20A935AED52A2EC844973BB6
-BEB38FBD1D4B21B9D802569D6255049FD9175DAFB66E7FB6E30170D872BDD64BAA1B16FE
-81AC65EE9053D339A0C009DC5364D958ABF3E87D38A4E9ADCE9037BF4FC62E8D3D1812EA
-8028CCA0852526736660713DA8E3B4C0CF2940659E8BB23F3B553D4FCD40EDE971697C27
-E41F2A6C0C29139B2209D091003326D69A2F081AC4B7F61BE46AC6662574D463DB86338F
-40BC2640EF0CAC42C1DEE896C41DC6DC5A86B1A0E5CED10D826660947B11AA1E9AA44692
-E63082D4527C7CF7ABCD388E7ADC0C1EA3E4845469B19505F5E5FD66B65C50F9AB02BBAA
-73B8EAB789D7F226365500A2E9ECD9A220BE7BE3D04635E9C95CC1196749F6B07151AD92
-12ECA4122683808000AD54E24730571C9BACE4A563029DB9B921CFD536954CE064DA5D1B
-B49D74C55D08B1753124965A402A52188F44A14D9C28449C665266E999D7605E719175C7
-6070B3A4A28B6ED3513322386B2B65689A4B65788A6BD0A869468B4F3544C6E6E6ECE246
-506B988CC39625ED5148E0F620482A198DFD8CDDECC485F003B7A752B1B46B00DE60FE76
-D86911A37A0C26EE72968C5783CDB1744192EFD434CE8BF0B1C45DCF7226F120E85C800D
-0C97EFC7159B9CC14EE505042F371750E32F98485337BB26D4BB702BEDA217CAF9F0863D
-733B2406270DA91A556BEA4D620A8155258DB0DC3C11EBCE82561957B2AC8204DDA993E7
-58CCEFA6989442B696635B7D29AAAE8E14396E72F838E305E79F25B5AD19D4310A368419
-E3F773930F2D6BAF2C8DAC2F2C7F3420594BD9E1AC2D6CD7A185F7F673984ED76D18B836
-388084525C12BAB5BFA4844121E86E4C747B283ACA5C61E672679AE73940CB44ACB61CD7
-18DC458AA1CFB314A0769445D0D06EBA26549A4EE1AF27005D27ADDADE65EF1FC6EE7BDC
-CFA6881D20F2B22972FC4357BF445008069FC6AE550B2D9BA16D565667364E1800167E33
-0A36ED921DDF850A3F993F0B00B1C378004CB008A631D30FD498D676AC38783DE7103FE4
-F314BA9168C19B0FC49363EE43704A9A119B360B5203EDAA03E7DEE736D7E6E94CB80CA6
-42C856E2AF8D68315141E7E9E9F63B48A9F3AEE965F0B62483F3C5AF47CF61DC4EEDBAA9
-F70846E660A7FED078BD46445CE45ED58C63AC224AAC16885D3F4E3F94F0779E180693E8
-B4A15469CEB06D6ADBC5DEFD221406A8C48B95A72303F54DA54B745B504DFC5F522CE50A
-EDC0D27842FDE517791D8389ABF07F352EA4A752D4DB20B50CDEF5CEF9C6C8EF510FEE9B
-F1737412D9CDE528A66B37A4BB9272BF9C8292BAC9EC2F66E730C3D038E981638C503993
-FF43DDA2C59AD94337CA7B45FE8C270334D4B330682344E372B08A09BF9AFCA47B68656C
-1428369C660EFF4392C79DA407B29373D09D4EA1157A8A8D1D81D38034DE3E7272DB3525
-4547B81EA3B0E2C89E60992C4E95D17968EEFA64BF116B4A9A2C0C0B242DF6A571CCBBB7
-6A58E80D84D48D18C5B2F75CA84A7B7AACAEB5548F2A13D95C8918C4EA6C8087F866DF76
-46538BDCF0B13A918A64E00AEDC53F222D8BA4AA75D90121FC69AA03E8B07E1FD92A67B5
-02B9BC301225181043E987D5930FC2E3C77553BE300959CD767FF441D019828837680A8D
-DBAE996F1B3739EEBCA8CAE9AEDCE3E3784EDDCFA86EC38BD460F979CFF0347BBBD36DEA
-F8DB645DC277536BF8F1BA745EB4A2127CA7B71253C6539A31299156F12E07E5C9591C45
-0C0E804503F8F4520C9FA55A490F6C827004FE2413123851B780FF78743B72C9E1499B81
-77773A6788D1101D8551E12C46BFAAC185F7B6C9916796B3A351DBACF4A69A515EA1F765
-67B5A62DD9D6FBDC9574F8CC8DD20EC6AF803477B8C78497EA757DB04EEDB5F3522B1CF2
-E4EDCF923B14A6E4AAC3413D841EB5ECBA4116CE6549E55BDCA1DA667AE75F9626998ECB
-5D82C4D207BF45C16A728847E952E8200194A04288336F8FC2AAD5FEDD5D17287B77882C
-42E5F956B9DEEFD55ECDD8354C0CA47BC0164B2294C4B2DED139084B4C1213B74CF02E17
-C4B43FFC034A2051CFAE1CF99D72492C567A750C704AB26AEEAD7A06D3D98616FDB0C0E3
-34D99387EBB43874FC89A225720BDFE02090EFFF13CAA7EAD31827B6DE1E98E450DAADD1
-515D7A65B28AF7057C7B26720025A8918D1A6810F2147D64230FF7925FB42A7AE373C210
-5C99311C02EA1B33361D538B7742BC02B68E238BB4B62A4785B27F071D3F1AF43BEDEE81
-F7717E213F352B861562C314EA8E03B8EDF986E488A1664547CFE7A59DB4B657FAFD0DAE
-15ED435D89355108E44135142B60C2FFBEDF32F28DF01F02F2DE4C3C40E95CB0D8D64E23
-672A423743DDBDD3AED5E910E634C9BAA69C8F6B33C8D0DEBF5FA56D7E6D51E7EC3A8DE7
-14DA3A104DDF5FBF10EEFDF85520ED2B71F11EB46ED74F70BA58146EF447CF88E92D99BF
-681D3DC3DB4AD32D0915FD7C458D3AE35A060C59FD3A8B0B7E99A3A7F8978CBF381A6235
-D7534A4D11472936DBFDCD33844B8E36205089FABA95BDADBB0B55F9C8814E5F283413A7
-08CC3D15F487E170DD7DFE8C471FE85C06383D444F65298EBA6FC3761D7F8D6F18916A16
-EA794043EFFCB72B5837672E8999904EEA79EBE0D3464CB48E9AEDCDDD2FD9CF7C111C57
-2C280A48DC5B83052ABEF370DC98EDB610EA5E43C5A9A8BBFCF10917003E4E25943534A0
-E4D281F2CF61C6E7C0C10AAEBF23B7CAB563CE25555B82462A71A2D0C511390117AFC3D9
-3C948C1F37F052C17EC23E87B3B43B4E874A723DBD01DC97602F498A1993D8E6A5AF7426
-9E487DF83C45F7F9DE891963DDC7099951AD3E59AC9E5586AFB026A66E6FF8B3A9DDBC51
-79E697BA2B46BC285AD67722E8087F813B774AA31E66BBD187AD9876315619C33138DA8D
-834BC729A8948E617CD7A4B802D0F7FB484807D09CD337097462B9690533562506B7DC80
-7CE404B4A1C2899535B13540A75DD666E1ED18CF75D95A3FEB472B7A596A007455682108
-01948D18DF7E008D8086552D5F472341BEC1A3E2856B445C0099339B9FE2ACDCBFF172FC
-5BFA8A63067E9EAF13AC8D6F0FEAB24FF4E326A252BAE6F48175927E7D45F2A84CCC0AAA
-1400A922DFBB601E2129A649464C417901D7EE4B66B91A6DF5B787F9B6B758E2DDF58724
-37F4658116E04EFACCADA54863E874F314AC25C4D10858A2EAF9687A4C45AAFB755251B0
-E2A298855AA83D44F254C832073A4E065694BF538C63CCC8CB0C3AE89663E24906614A15
-2DB4E4EC5FCB83A229285C1CE0B52954FB21A166142D8F82B60997DD39ABEDB4D3A8680B
-8BED2755297909B1D66724FF4B556FE99D26C655F7BF055A529562F4B1DFD7A16166CF1F
-75606228E96A320CAD4C2589BC86C4940FE50CDFE12BD5EB50A5A2B0223A6358FE07FCD6
-C791193E83A8B66766BA2F2E3D15E3275C27ADF65E2088D058082ACD6B7AA272B26967F1
-7606DA71E7CA51EBF5662FB025419DC26D155113947B966933287A14F066AC40D7028A08
-07130DA33A7DFA24144A05BFFB1D979252E83F21A493F7149C33D7508523CD56C09F3963
-322C64BC63B8CCCD8FE84E0DB44917107B6567579983BE44F73C9E524F44956C93D85975
-E4531A3DC0FA9CDB9916DA0432E4EF9C48FC9FC482BC9744F6D818889C4B5D0B766D2243
-B50B9EA3F0D20DE6A86F7D0C0F4B58E3B526C2DD36E01BCBC6EB8364B15909C335D8FCA4
-7845F72F203AE4FE8F9D0FD1F1364DEBF7EF7CB08D6BFA764A7E79B9D76A412D879D2709
-0F4D54A848C5EFD424C553A5CE0486D29AC6F2C6B372DFE8DF265097F184F2B88CB3C690
-052719F268460D78153B97D77F824C82B466DAFF2630CB263115406B8B91C9FE8E9AE54C
-A2C96C85789610964525453B9D902ACFE6EB379887C72B472189B9E7CD6033F2E57E9C90
-206E218B9834ED77760A12FA0A5A6F86D2C226E1DDA31A5CF2D0EFBC4AA20242D662A869
-CC6A8C5E4B3732A9985A2BC6DEF9A1FE49309CF5557695B66955CBC49938FF605AB6F57D
-CC7D570CC84A8F10C50D2DEC2BF6746CA9F256725BA75D273325E24D04AAF0F2DD9AA3F5
-F282773B5CB4B5DB26ABE691245BE7A3FF07C4AF6817725B03419F1B72068A5EA81870C9
-93E040F4BC52C454FD43AC24E3A7B909582F2AB3584FA66031EABC8CEEDB7DE30D3FA311
-A41DAC1CC909AEA330FCFA89BEF8D0D5217172BE25BCB3DC180DAAC52B9A95E588ABEE17
-105E3DA435AD2698CF07035DD5C19C8DCD58480CCD20C1FF529D37B5BF95716DD5B36F74
-B58FE28847962E7C3E2ADD93C91B529C48233EADBC2668AF421CEAFC5D8C65DFCB6493E0
-5A86E7A5CDAC1CB839DF0E099E67A2F8A7CB966BE497C573A5506AB4944AF2FD770F5834
-ED14B897BBAD1F3218007AB429C3250F7EB284AA16149DE1E6B6B540B5AEC33C4BE0A12A
-11C3D63B8574C6B2B4155629FC9C13EFADB572BF35C2939226A90310A067B4F47A8719B6
-63035EC0FA87AB6FE5515F1B1419C12F06BF3D49393481B7F45534B71FED5E1B8F8B6480
-28AED0652F5C7FC254C25858EDCC0B92C6E6145A8DECF4CC54C822A6EA80F62122A58FD3
-1BFC6FBD5DE46F258D4215FC361C0B8BA50E3D63E7423EBD6EBDEF07696D25A6FB25F44A
-5D747225006F4AEEE6EC177CEAC8DDB0A7D9F536BC69B59A5AC650AF57F92798785D44E5
-79EE905CB999C568B7DB553BD63184F22E59FFBE661535B35770A1EFB0F6530B455DFC54
-1A4CA7E19136D9F3ED1A7C8F58752296CF5232C45902E6129AF4380E677A74D06E2A3A01
-9C72A32A8555E52F5113112FBC4A2A42BCE68F7F5484D650CD206B0787C1875E7BF15183
-3FCE25FFA474F67497605D6C6517BFF948E873E4AC2BDB6995045E489D6310C22F6B4582
-906FB0A5484C4BBCE8FA61D80E4277EF0D37D09B869C0A174B97BB3E127776A0FFA4D941
-B0BC194C78F189369E13D86645749416506452668810DFB0B4011A40E60CBF7CFA855CA0
-F36C517B959FD11587B9C6C6EDA0FA01FEBDA786B36F3E21948F878D6DCAFA94E10509FF
-5F8DDF25EEE7CB8E058F0BE6FB4DA87C28F225763AEB26BA7BFD8A52467F096A759F4379
-C150E63BBE70940EBD573424ED3559B16F83D22068E16633D95A0267E18EF9391B9199B5
-80A91B7A74BBF60CF13E4EF71AD3FFF9ED5604D73BD0C5A15812A439A3FE6641F2DE8B52
-EF0BC70B7693FEA9CA49F93525D29B037AA40A33FC2199C3F29139FA63408048F29B7F3C
-6EB0CCEAF6C51D4AD842A315257AEFFEE6D5A02C9A56A144B0AB2837402ECDFE10B85F84
-88A87D9512E0FDA5CA64AB541E1BE99C9B89EFE7D3F17874F7593FDFBDE867653562CFA9
-C06BC81560883D1F051CFB128310229768A77E87DAD9A45810446E4E116341AAA3D4B332
-68322B7DC8984E41EAA6826393C2319424202AFF4928CEFDC24D7EFF4B64533FBC25164C
-E0083FC7DBF81E663C4E1746A7A7E4D7C0EC4CB4D9FD396508D6A96CD400C85212F522CA
-F4F6290CC2843E2B632571FAE0ADFD99A7E3F9831B0EE07340BF0C7D6EDF95DEDAD7D492
-DCD83D871ECE63ADC0A50C3E76E5157D3872E0F78E036B3A36459E78484C9307B3DCB831
-A99D9411C1CF4EAE117D651BE3BC04C2AB067E512F0F89A566F275DBBEB231DB42A0A197
-C301F33F4E65EFDDAEF015999BBC1FB75E1F6A7925D3E2075E98E314BCC10C94877F0B0A
-007708984B326817A532F7AAE87E026AA715FE64373BBEBAE99A0F83CD0C77173DB845C1
-028F25015FC3DA0488676715D3EC8D1149A90AE16F418218404CC465D4EE8BEDEEE36F47
-DFDC27D07FB5F4EC0BB8DB4601DCFD54A2BE85A9476000D20181311F5B6F4111CFE1A850
-DAC7C23D30B674627F1A852FAC1F0437D18E6B3CE4FC7911FE7255390E0739D2A83DEAC7
-02185389034889A8A437BF74BFC3A5BA6BB8735A8FEC009D55492F7D43C5C6F92E469260
-4723A88723FD31B20AFBD42C150EE51108B05E8F7027ED40735A1D63931FD3CD5833FA1E
-C77980CFA0F7A8C47164639255AD00AEC0764BAEB2045025B7C6536309CC9A38291A1F6C
-141D1A42F33BAF14C5844C13E8AFF8A7CB4AEC72E6039A60CC67F03DB21AAF2976BDA0A3
-9D92A848D743DAAA36C288ECBDFB46D53E958762B1FD0F570F40154838506B656A081473
-18FF01FFBE5D17C131949F5489E4C74EED3369A496D05E0C9256EE92D3424E95A30485F9
-A00B0595FDBF84B03BC9672A4816D2D290AD1DF00E54C668DFE765D9EC28815477D7FB69
-781C0A050660946AB8AB1E29EE5ECB2C1A272591CC48EDBB5EBF26D765E24F5CF4BF43ED
-17E5BBB55C55DAF106C46E4D8241E4AA01AF7CCF79176FB4BEE78D5299C313E2DC300237
-D1E149743E16081CF124BBCD7D9325125C9C9AAD57E86A94D18CF62D4E0785F820A9B7F9
-E3AE3FAF0F7DB0262BE9BA917540B8CD3421643A01CB26F81555B05DA466F1136A7F3E80
-3461C2F063ABF750BC814579689D3CAA094035CA96298F7F264C6546143DA15C6E085DB5
-2065E8ECACDEB3ED4FC0D1AA4B01E3ED36211DE438DD1B3712EC858D66BD3779C96D4994
-234A8FD8C1340CA9EA51A2750A6B0C65EE1C54C321F4D060F7F5F07B49C9528AE0A1D45B
-5549FD72B0A15BF903B1F70B92458817DB0FD9F1731E82885835A717B0A1304BC067338B
-1638D51E99D5C23872D4CE5097B89635C3BF28D6D2FC96BBD80C26BEA1968B8A59C278A9
-8BA49B1E59E3584E54DA5998C5E70AF167DAE2710F7656169647D2781AD1C27766703FC9
-6C08A0739EC521182A77410F2E2A788B47C745B4B0A2313F49AC8802EA461F04F3D54FE5
-58D2B21E9348C19FF519939154AA3ED07E24D3C15971F380551408C897D618749CB38BAF
-625434B73061407AC05E0D7B0885791153FC0AD5C3275C03F528FCEA3BE91D9CA9C3B402
-3C931D467854D68DDBC0FBAF70D38365C0C76344472A876E74C04CEA12DAB0A55E776BAB
-CAEEFE1CB7E834BEE48DBC155599C4A0BC00E6B8746D7D0B9CDBABC463D8E2688F46F126
-520ACADDFAE65101EDA0F523C6B9503D8FD1A5B9F0B6DBF0C286358D92FDE66720F5AF47
-CA87A0B6E04E46BFBF21EBD5CDEA194B6425B5ECF81518178E0259E386F5F852C6870E7E
-034582EC658F59C2E07428737B36B77B9AD3BD6D28EB1742453C5D4867FE879805A80331
-C6E52C0557E5D036DB1EE67E7274AF769DEBEB23121AD503E3023A8515FD5ADEA11AA020
-2BCFE0AE826A09874CCE19AD2A2A188C7331127751342E542258D3996DABBA1B6DF80323
-5B6A223DE4F193B862224F807F99C0749994F0C72CC784AF11C411D34D649FDA1C77CB0D
-BE519001F9E757BD8035A0C9AEA86609B71A4622D5C78589502CD2DD58709544A76526F1
-603F205AACDCB62EEF46D9042A2C9E76B887826827C6F22D73760CDCDD0FBEB827BD2E1C
-3B5B0726A08DD2AEB614FFFD02C36F9E8B404160C909B70414BC8DE600A5D56479B83015
-9B8E61AADC8C8AA077816ECB6317A9B16D30DD8D4499FFAEE87CE97F72453A37D187D91F
-A0C29A65A8F9C88ED22CF19CC0B40324449CA4E7751D77A0D76669AD420216EBDA92CFFC
-50454E7EDDC5C4DAF66B67675B576ED2C90EDD9F8182589ACEF1B034D2F848D0CBFAF84E
-38B7C42D2670D0A5E382FA11AD3F2FD6BC79EA02C074644F35842D1DAEF70507A361A0DA
-03F5517B789C5684461F698F2FB20A7801CA9EE12981B5A793A481F48E33B596832AE4EB
-7AF3681CC464F6895127CF10D14477611CF8AA88D0F6888225DBE342A708BD62EED4FF31
-CCC1ADB38DAB151C94E9A1554980B3C077683DCC0513ED4C55D57BBBA0ADB8A5E79A1B4A
-BE43C703948452C44F1734F1C433797315C644A8E76D13DDF5E0296143F61FAD14E16ADE
-97BC12ACC5DDEE482231A9E9145E69D63CFE889A1BEE0907362C60ABF581EA8541E36ECB
-30457098E7DA18D6FFD57901AEB7913C59AF691D1A1FD3DF485F7EE669A5915EABA6456F
-955F2D2F7D56CE0E349EA743B3F44ED555AAEB7F2A71711E08FB67B9738928AB842F6111
-2B9126C7474753CFB458EBF75D817175179B3FA956F1D998C52FC9CEC7217440889D0481
-CB91C8A8D1D1C6967964C7DCE3D9EB0BE6598DA5708DBDEE4EDF76CE91E128732A8CF56E
-C8BA08828E9B270A818F98FABCA757BF3C3855C6DB448F7A4A6853522F7541D46AF3818D
-B905D64847078757E0110C0BE6AF4BFF722FBAF5D8A4138BFFF94C7678A10F9FD850998D
-B710D5BBF763B8A70491CA4D53124CB95A953B080CC31174646AD474BBF5BDF057A1186D
-B083E6E762C669E935A02D60EC62FB71B6990D25BE44E949C85D1582611D826197E8F617
-CF2FC506489E59CB380E2ECA368916347B1E1B59DC1AC765676B904A63D7F8CCB1F7E2B9
-B8290B30E53B28F6FBF55D191BFBCB51F3BDDA71C7A9B1152F686191B0AD05FEDD3FC37D
-42AFD7B3021D255DB7A00E6C2B3E714BAF7E61BFE8B7A88BD5B6EDE4C1DCADCC30565AFA
-1E2458F35E44CB6F7228BA384CC1B7A64CE912998D42572F45A30B2C4F919BB21F66E1AE
-6C787773E419E1AC1AD41A3DDC044C1BEC45CA2D0382A11C1543683F9DE1302FEB0C9DF1
-8BF8B9F0272132E1CFEB54E38A8B90C3F5630A3EF083C73C4E83BF0C312F09D5352F41CA
-7C8EBF842E7F46F3D97C4AB03040640B95D465D50789EFD68A12F1A450AF35844A7A2302
-3F25728A85EEA2D9D124C4B04AFA44205E110CF923A4D713552FFAEDAECFED8898AFF89D
-BB682A961D1F815C3F978B9C190006959D4330D772C884F6B0C77B2D1FF722DD86448C76
-A68AF642A08994966D3C2836D7063A59B168AABF47179CDD6D6F902C601A89FEF38E5A69
-9753828649B3470B5A03A2B58AA910B758ADCD5739611894DAE786D5AA005A5826DBFE38
-8B0F4105BC76C0437FEE9CA6C861FFB1EEF6620B7562B44AA0D29D1DBFE7B7954971087F
-E8D291A0DB5E4CB0512B104EA6044CB75C099716AABCB5EC89B14BD18F5D1A73E9A8DF5C
-A593BDA22FA28D8837519C38432667684C7C23594AEA6B39E3A819B72A00652C205B02B6
-F8127CA0C7381B8D433B86E6DDAE2ED9482345792276F4604A9208AD8CABAE8B0A0BD0D2
-7D0D5955C20C6E4425E295F5AF9FCA7DF682FBDD5B8B107B5FDBCBB0D751B2D2BDA99314
-A9CC66F9E92FF5048E5A6AE2B8B03611C7000B0903491DA44123CCBBC67B1D4086C22ACD
-08599534BC98EDEE0A73117ED20679CF3D9ED1506774C67526D9AF3DEC36B9FF799479DC
-52A70429F79C8878509E8DFB756BDA3D76B31B9BBD77DAD3956B1D951C157F02EDF252E8
-D02AD799A9DED7B38B352FD0841B96DAB3A3562F68178448DD8F1F5FE40438933F97530D
-0E6C918C571B921F9F7B054B798CA04426237F4085044F7395D0E4FE3CAB961348D11912
-E5FC311138A82F470FF3C8DF00B1B0563BE81C25AB58E95CC392203F9668BF187DF43482
-BCEA0456394E31DA0819AB3E71FB8E02FDD90E05A39D0D5B4EF919E958B862C3A96A1275
-F66C689964B85C4C60A9E6D44EC9900B85245C8CAC2847882497A97043255228B8C29529
-12EA890FF254BD8C584126DAD1B2AC1AACF528564883F0C15C41A8749EE4AEF5FB514940
-060D3397DDAB08DB2113F942B03375B4A2AAAF9501734C17DC220BC97E367C2160982356
-2ED3C739164B659C480317952AFF044A4550DF79113B4F7FDBEC7B332EDFCAB7DA5B4AA1
-469479B4490EA5462191AD1B336DB782BF7A2CBFD7D4B885E2083110511FDE57459457D6
-68D29B1E31E734B30E4EE6AC28E8D74A2DEDD48BA964776BECDED8A86934A88D60A85279
-9E9C65EE342F2555ACCC0E47202CE451274D76C6FAA943BDDB5C35855499141FA589F452
-C5F424280D5863C7ED7544701C4B0660AC835D58905E458947DC5C220540D1FEBB4F18BF
-7649596ED3C3F8D76CD146E5B5995F406CDC2F8D1D0D7CD4FD1BFF5907BBA5AD0B475F85
-D4C75829E57476F12E1315742C875008A96A06A76627DD694E1EFC09D05159B101C8613B
-F0FA5E027B1C7F089D07B48BAFB047E4A75B101B417F82FF32BAAB877D7798A2DFA48A40
-85C47A5DA67FF503552D60295D5C61803C2700879C685494886505DB291413B22C7CDD3E
-9C36F74A88E53FD9AE6E4AD73025C80555094DD7D1A171A1F85833A390793DCC86DC25B3
-1BF605ED87669F1D4D44FE035636746A80865E4320BAB50B42B6A6037B1A7134AA8B42F6
-4A85B58C318E600D80E892B337786190C009CDA82D95786A6F723408E1F79C330221E753
-F1A30D90450D9FCE6539A7E4B2AD69557746FDE8E4E6207FDC9068C400244A0CBF276F84
-A2286A98A9B4A60457D3C1C2B1FFBEBBA67DA76E0B3D1027B914755CA8152E1CA4542714
-9F709EE182D12B9D653D960F7242567EFE61643037028C97B19D96BE9F5EDA4230A329B2
-78CA496D0C8894CF6FF8A410AA93EBD0F54CDA812CB5935DAC06DC7968F1FD4DA26B621B
-CB0C9FDD45A51E5043E501E17A042CC421E80413C5861941796E1F0213C02A968CB5CF10
-EEA25AA24095839B12D6C260D99B5C42B65C40824D408464B30D6F9E02E8686294CEA8A9
-39AF573CFFCAE51DFCF51D229D3753F144CBB1ACFE9253F5E36CB4199CB5768E6E1CE224
-396923C6E1C9B1ACDAD64CE0DF19C102CCBE2F7D206EEE22350016B1DFD13EC06891C41A
-353318C8744A912692209F590799C99741F3656DE0110C310E8F460C3B94C7F5EC4598D3
-786D7C297707C6CA9CD9AA80A18141C9937EA927FFD3586CA76ECA5E5335DF22CB4AFBC1
-8DAAA401CA2CB71E1E97BAA78CA4D1AB912028138B9901EEAA6E17263C540958263A509C
-1E3C266138BC36DFB2B82E145C794AF0606D7B9724E40BD70E3B83D7B32E32E0BE470279
-C05473C3649009D96F47300ED3668B9F140E65746CEE1DEEE623734F93E1C309B3F5E5BA
-EFA93C4E96DDB8E14DB661CC2D23995A845F8916079EB740DF80158A8740C15DE4B367F8
-85B1755C69254BEB14DBDEDA5279C0A4BD93D43B940AC1AB933C20EC96B8B833DAB56BD9
-15C46666D22E72B629E97EB44CD41B441F6E079E40FA868F3D74CE320D23402BED7C4A49
-4468869683DD4BF0C4B59BECAD9706D091FF749B749DFCCADAAA2907457760A7A2269285
-F31D4D815E0AF703CF9A0D671F4637881245B134D4E25A8DFB7E58F7DD06912E6FB27CB4
-1B137208E30C0BF65FC3C078E9AD98BA6A46E3D29F035FB6A430964B84D9CE91A03F6719
-614D8F12760A8EEA1999780E00AD8FEE24095D7FEF3BD669042F0D03010814916A66401A
-3183CC41D8EA4423A97EFD187FC1D832146031D4837294C35EE6E1E0E8ABE8F68CEFB5D5
-97C10241B7D8D83F281221F1B84FBA400A586364C58E1B611CE0E2092E0734FA0EA881F4
-2A8E82E9B02C0A5BBB21940EB06554D01940FE87BD2BC7D03032646D583028436B495E6C
-A8F58566A946BD076D693177F13DF96B3A43C1650085A23D199A4773C717DE2A19BD8C46
-C0D6487698620D89A1A07FA0205D14870AA43C6ABFA2599A84AB5CDD18A66F6540320B28
-A1A9904402F62213DD74DEF28E2260842BA1F5ECC26C2450352EC67BC2C956C325B1F996
-4051364A7592346F0C28DD2C52BA5123691B47B857284B4862961504778C8B5E06ABD1C6
-F37E2343C185BCB458D42DA166D9479F8E529BFAB0AC782010BE8E526F5E4C17BF9A6BDA
-F8BD46522BB6A877C54ECCE890C389FCC576B605B65C7D17A483FDA2C826A6E8F27915FC
-9E006666AD30D11B31AEF6DD8BB9FCEFB655F4D7DB73767FE1FACFE15CEF7FB27C3ACFE3
-4E761F9BACEDC1CDEC22B0F50619FF7AED2689F2EE768CB0BAFB857680B15D9CE8AB0A24
-36450529F86FE3A7CCCCFF0287092F18AD672F424DB6EDFD50AE8EDD481022EA1FFD016E
-E3B4BC8583BCFB45436471B5B4340892F390E061E0F28B4019812B0CC299C3D70151F87F
-15018D49097A50B1EB5B90A736ECBD060A802A30632C2A681FF14E1ED5AC77726CC1B76D
-378180CBEC15DEBD4CA283F2441B1E02CF8CC7D91A212EF2E0B1F194C196D731EF43A420
-2E0A1BAE1C3C1F060688BCEC9C24B07984F8EC84242EF6660E7966DAED4AD845FC859DB0
-71F1EA8C7E9E5235058EC9C42ABB815C699A883344E95504F9C5F6BF340DF54AB9BDD438
-B8D63DEA04CBBCE565E3D78B71C6E2C04D4E1EA83DDB824C8AE8E9CC621CC1C75906F900
-D2152DF36AE9390162C3DDDD20E79F9402FFF7A1D66377037D2A5E8F9E0889F55C711DB6
-38AFACC568A1B4E4EA06E3A3B749DF4026A0EFD2AD56BD458D9A5837F046F81ADB9C1872
-71238A54CDB3290187DB1504008362EFBB553C0167B5B58DDD5DD0788B4806D02AFDACB7
-78DC36578DB5486BFF8FA27ED2705587C3B0A471DC74A47479EF2B7F0D35A77D9683CCCA
-F64C5E79F57F96DA3EE6666053089561CC89A0AD22E9DDD5AAE38F6ABDA3476E5BF7EA15
-B4D782E42F6B1E778C9CD33436D1B2B72FE8B01E18E01C6558816D0ADE36FDF34B8D8F2A
-A15E028CE59BD9DE568683CFCB8ED3CFA289CDF4525A46BB7B0A91A62491A09821633CE5
-C54994009761A3E6DD30D61612EF66F49E190A2EF1D189D75C9EAEF9CD21E505F9CF63B9
-5B399B25C2808CED1FC3F6BCD950156394711567792045A8C90A10A193650379B5F44F80
-B9D3C265064754B0390963D2A060AAD443CF6C377C6DD81E4B313D94CD22DE546C56CE4F
-06FFB5C4D703D1CEB9E9957ACDA546D0B327450F212252B3686FA87442CA18B2B0D2C1E0
-F91CCD54AD769C78D4E719BBC32554B6F486ACC1EFF4C8A3DEC5C359821715C2B64C2CD8
-43D25F4899375AD2011C3A89914CBEA23970C20ABFC55AC3318BB03FE1B061CC5E1C6BCF
-B4E5A9488F08845DC4B03A79CCD15CA393BFF66051555DA32B68BE66DB340662F445782E
-EEBEE5CFDB73AE4F9864435B828D168F17B59E9ED6B1E4DBBEBED2075911DFEECF1D97F2
-C57D0D5EB64FCDF7BD4F2F390F0182C997AEA6B3D5C5AB9CA14A3928F6358CCE901D205A
-ED5C22BC9838128C8631B69B02787A956865F15EBDB937DFBEBAC70381767AA7EF592146
-BE4EC825A96C8695E9DF2490962D6A9F877E260A19362995C03E00B44DAE22F3E1AFFECC
-ECF056319ABDD8009FE30466EAD5BFF178E43BEE8445C0F3A4CFADC000CB29A66736B803
-46E6BBA25CB8EDADED812DE0D7962C2C05A0DAFFE6AE2604F628F823659537651DEE00FF
-795ABFB6C2FAA5E2531A36DD12AA069E8E0EAD1C6737FAA3B412F97E6D5DAB28460AB7E8
-160E0656C551452575ED47630A545FDFBB6763F61CC4BE7BD81AFD6861AEF0B34044B583
-836311C2BD2F0A5C74A455962A1991DC75DFF5BD46265C8805FCABE04238795013F09F40
-D2F2F7C5D12F251752D938DC7C9BE00E5F7506E51E0EC4A7AED0FFBE5353DD0A6FC560E8
-3FEEEEAF01316D5386633AE96A5609FBA122684608F90C54E9E3C1700ACD31686FAF7BA4
-84AE837057BB3FBEB1B6C9AEE7412A74C5EC366F682BAE51CA425FB274D17C41D0DA1632
-751E2D58CB0837549DD2296065176FEE15365363284E0F4778575C464110F5CFB186E92C
-B488958079B3DDF229F4448C19B24023C1EE9F226EED46316480F01DAE2D4A5EA42A3DB3
-85E3668A3CDFDAAB384BD79DF85A103A8E09561B4E826D3079658295512DDCDB7AC7ED56
-0966855109359E217E44805FB55FCC926CBBD27D34D5D1339D9306CEB6BF3468616AF144
-765C64DBCFA2BE91F92AD7DB47DC92CCB3297AA99593851BBD29C07E7011584945C5F390
-E048B582367C97BEDC1B31BBB1D2D8C038C05DD28E3915D6E35ECA809B335190DAB354AD
-3D3EF2A5E3FFC5D8F0F7A87A8EE9C6F9E07154919054DCE87D8FFE62E279CC05A4DA0BD8
-B933A49F7FEFD11E241DC1E4786B73D15FABD2915541B9019AF06EA28A1DB0FC3ADDE1B8
-A370187BC285F66D544A23184D17E346CDD21C0B1ADAD499D78EE0258279A8FBB802EB50
-887CE8290DE6F29AB3F6D0884BF63AC982A21682CCA88BBA82A237F39AC8D1EC827CBB72
-559AF2F5E640B1E43AF7448258469187427A600608E5FFCFB50D3406D453D30B830D0B44
-B7BBDBF0A5F00A33A4BA6429C9D3460BD6DCA861970E123E67CDC85ED1A304FCD0C18B1B
-19CA443F0B85423F4EA44E0A31DCD363CF59630319D2ABA44E822902062C4194D1B4A04D
-DF98F54946C5769EDEA86028E88DADC98D785521AB79728C029FE0515C9BB6DBDCA26033
-1B28F70CE1445AEDCC0E267903013BA6F98A564E6FB70FAD1343200A4E3AFF261381434F
-4C8E3DCC87F1482C99E9E2EFC4A0D7352DAC825045D1CB8E102D9FF018467759C808D863
-55C4D25B3D1097317FDD11BA90BED164B5204A40110751287F19926A82FDC6E8216584CF
-CB1B805BA9237ADA8D5BED21A89F6628495EE78DBBEC0163316E7301AAF1315E00302F64
-D22A33EE587C3116003CFBE41718A07DC7CE295DF8D7CDF05245C46893759E0F2DD35507
-CCA29752106D0CF2DBC8CCF6ABA8826EA7B0455585B26DCBCF0F598A7DBA8FBF04879EE1
-82637DB44C1FD37E7A74481A333CBEFE4B413D8AB6A3F4DFFC471A611CC70C55618499B6
-5EF14ABA68839AB4656971DF193FBC70467BEB52171F3E140FF40BA1C77BF02500842784
-4A06AD4F0ADE586113BB339DDA9FA72FD99DA3B1FCD26D25E79B28069013D8FBF48897D5
-2B92448BECA722F486F3EF5C751FD6DFD0560987137C75E466FF9F2002B7CE576A9282B1
-ED5450AF132C858CC092E7CE3CEBF5C78E3DE84D130CB8E1C9A9D08495FA3918969D06A7
-8D10750170BC3ADBB4628BFFAEDB8F47A2197D95DB975DDE5FEB8FD97AAA479AEEC667A4
-8DC0D8D44C02F7B7497A394944AB7094F3396623AE275B60F32AE74A3ED40FAC1B465F26
-6A8FE9162EA850F4DE855DC492315E3DB9390000F84363328D4891009B8F10AB08F1E4FF
-DFCD0B78719F59B0FEF3F2D7990F388EAFEB85C6F8383D3E50F3317EDD0B44AB566F798F
-F7B1CF7C9CD522350CD1D92E56061D508E66FAB2756999B57075108DC7A0AAB4D77849E1
-00B8B7B5690763983245CE5B96853F7E1E90D5807B02C0E44FB50170AD7AFC8CA8229AD7
-941453154232B97C0CFFB5D710DD5B4AF78146FAEB62DC9E73F72BCD539713B683311ACB
-BFBC5533E9800939175CDC5634FEF7D7BD135D6347EE83118C6FECD86799534165E063CA
-5461B7AB4002D1972C22665FE8F75B4A6E7CD2D868311ACC98E29AED65A9DD734A55E7D9
-43A4F53D0602F79E2EEFD38BA394581DF5895435A9E8FA35DBF89F3F7E00E09EC5858D12
-6D0993DC87BB9331168488F7B12BA780D07450007F067B824CD0D7F0FCD3EF8D5DABA99E
-BFD130AC89B20F0E2BFD4F8256D1B4041F90E3E145DF48A61BBE573394B2E70CF92F274F
-4639A6910E6E6945DA69476BA89E1CE00241213B739E1C9A0A9B352DE885B04A47B10BFA
-4A040533606F2585F78DAC66EA103984E5484A06D583AEE68BD0D8415B0F6CE4505E571F
-3A21899D8CE43837035AECF430D1AB85A8AB0080BB31D421FC1818C32CC591417CBB595A
-7FB281122ACC1742E7A7B6807AE5AF3F98C94B85ABC8FE8482F5CD9F7A0A18DA819D2A8E
-A1841FB1255E3F4DCD1FC2BD3E182A45AFF9E888D7B3D49F4C5272722BF9CFBA654CEE4B
-09C0C9897B4495BB6D38B00F0E4CF7891D61CE6542FD8F84C2590C62C47E967790F812E5
-D0DC81571ED64FB311336B154421EDCE032F253098D7360F2079719047F9A47F2AE63CA8
-DFBF90423BCC6630F75CA70936096BBB9719034946F340464563DCA8ED94EAC3837C497A
-50315ABFF0CEDC6CB3B7B1C30A8442648734645999BA94AB7EAA67798AB5407CB484344B
-86204DBB56D3627091D3709FAAE6CA20AB5733F556C40059E56B42DAF823CD0F5139B240
-7CB44AF4DDC58EB2499525536E01363B4E1A36331838E88C6F0BCF423F70DAA9ED12B5FC
-98C606C301616A1DCE9DAB545FA0ECDD8B967DFD1C1F096D242CB1368A7075BF72E12B91
-A953923276693A46023276B9BCD24108A524C40026E305427EFBA8D9A8C87D1AEEEA0AA9
-F4BD27476FACEB36ACE046FD8A5AFE4123B6944DA5E7BBE7C4F608EB0DA74DF816ED7453
-6DD277F8E59F65AEA8541DA98E492DFD48504D645345E957129E2A60FC5BAB29BFFE74E6
-4D66EF0BEBA0B02A78BDFF4CDA36A04C20AD552AA92BB75D52A78745C7B47F7D399C17FD
-C56C1588083E04035263D46D90144165184F0E630A4FB68874E4C715A3708E84A8C08142
-988557DE1FE684AEA24BED59A1AF602A04F7E916FECB96D2D2149E71642AAFE15B0E399D
-3C66A5944B4B0BA234670AE5D78380041161A606B33BD1B38D9F53A592D3C021F6636731
-6110C7E4DF35E8BB85F649E568ADFF1736A1B27E5B13AFF8C4504230D877FDE932AEFC2F
-F9E0BFC61BFA1541A6F2C6F53A22311DBA8A8067D67EC1A240E27F85FC0D46C4DD2F519D
-7B72897EA5B38704848B4834AE19C7BD5E19E5C65BE109EB9B02CB0376E603B1B6BD18A3
-CF63B906F8BA66BB52B1BCAAFE70BD7A2A184424DC53C91582F47173486998947B074A87
-B49FB5148B6FF3FB34FCCD25CF2940042E7E90EF0E9DA4B520F123CFDABD3B3CD2DD8CA8
-039F6CB5E379D17FF8C3E7F9F597A25201332F0062A0E6A06CA14750DA000B4570B4B3D4
-859038CCA94E63854AD5DF2AEB672F92D99F6E5B03A8A174D64695141A12F8D6E0BAD839
-D104B24B2B02F83B30910AAE4978C9558D256F12A120EFCC8BBC9FE8122DA3BB72C7A77A
-F47200C9C18DC6560B9D3B82AACB581A4F3735B4D2D215CCA7046DFCB3468917E96B6A67
-865B57BD51428A0221225C3A79D3D129B52497ED727331C1924340B127752929C29EEF01
-677C812CC6AEFCBFF1E3D24594D430E0164B6B933EC66A7FD00B4E701657F6766A186BCB
-872F32AB18CEEBD3E14574AA775B3A73B3BA7BE94916FEA42716105E6326C21A59B62AD1
-681A9672934A3EE224B4E634B6B4DA3EF82969768B243092A98BCEAD10097659B9264DC7
-E83CA911201CF43984F4384DDD10F5E7741F78F3013591AE7541965489C0CE0B2C78228E
-2148182930C04ACA997CB303C5C096147E25E0773262E62A8FBB81351EE809D416F63B48
-615E95245EFAE2FE041D10F0755A3FBED883200C13537A1FC5B1CA14BB847C8BA1049B6F
-7CFD9784512E4D2582198F8594B4B689772DAA8EC2AC7969E3B20DAF8A17D36C91F1A5E7
-4FA921F611BFEE1982F590D8BC0613CA86B0338CA0F5FA6107B9CABEE94D143C98DAC455
-F64B2D213C5F3CE2F7430673D5E2224765ED4341D8FD04864F8861369ABE41DB25207682
-C81BFE06C3513FA019456A976CD751B29F4E65C7853DC7E5AA99539926284A316DAAC56F
-64767BC4BEDACCE77C7D8C774F0896034ECF9B9E418203D94B94018D126ED69E431D792B
-89FAD0AD799A0660B1282C226C03EA2E2EAD24432912D2D405A7A5130525AB9A4C6BE1B3
-CCF9094EE61401F04BAE9CDE3CFB0A0A1D33054F993EF6A6A8F1E026E744F19F19F8DD45
-01199F97E79F711C1C219532B448CCEDB409AA0EA129135C1791AF1BE7FECC1C9B1D89E0
-906EC96620278EF044C18228F5CBB67DBB36C7BD10DA5378224949CB6B2EDFAC66404F22
-42AF5508383B90080331ED71451BB59A8A2B91E05365884DDA3A23C9BA8A043C9A5E399E
-5A4350138459B562729D850CAF38D18C4DD8B6F9D8D69402099C0791C82FD8F1937B1F8B
-05E3D4E22DF453D2E8CE4248BB5A61CAC9E36908DD9049CA1EAA4E7773D54F9BF82D4447
-010C37DC6CB5A199B0BCA9AA3743592E651B69D1D4BD2563135944545A1DD8CA0B1928A4
-93361DEE737C834868A6CC2B6BA3A44E198D1EC12123BB95103C8699B4B76D7062ECADF3
-13FC6AFB6D364ACEE2091991D4045CA2A5E33C7BBFC82149C437FC423ABDEDD7E4BCA0F7
-BD1ACA371A129F11735758E0E88F453DB813998F91CDC3428B5D8FFDBAC983213F9C35C9
-C6B5B1DA85C0F0FF0089BFFE9269AA245A8F8BA47E373D2AEAF9F492835B1A3B3AD9AD49
-076B2DA90C516B95C8D603B758D285B811C97A3B28BD0DFD924F4F4A6C6B1C1E0F7E51EB
-582914400A9B2610D008D43D9623BFA18A64B6160A72606CEF0A31DF88C7ECB3327A0F48
-3B0DBF54F1A02BD3DF36AADE1A65D4ABBCFC72149DA3992CFBF54D1DA3DAC66DB428DF19
-90F4C7923A23EFAB36FEA4B00661289D7FB382ACFBB03C6C82B58A46701FB75E36E1C697
-7026DF6B66554C2C36397230657BFF069FD03DFF9128A2240EBE1B838512F48F1482991D
-E0AD6B6590DDB2052564F6798C1BB88C06D53C4D4C76A4BB1C35355468B3C71547D76010
-C8902F5DF9C07A43E99230DA6CC708BEEF6D3E976C07404DE4A1C7BBF11CEAD519AA6006
-EEFD89D2CC4351FC3E72415E8965B1785AD0E29EE59032F6D0487941940FD8EB73B9CE70
-704AE65D7C3E7E30FC066DAFAF38E2A19025F628E7FE6054694D7AD21ADA5B747E54AD1D
-4DD57BFCADCDAD35E795A23BAA5171B8081EC9803B8FE6242AB1B421A20C6CD6A107572C
-9DA40E22D64E0D053972699180A9B5062CF460A715CF99CFDA1861BA3876047D969CD8F5
-889104DC3CD6A91E6765BD2CCF49F21BAABCCCC6984D5DDC1F872F85A45D42C490352D53
-70695AA4420AC5E6A0CE1C5B72186FD1FDFC64CB7680ABAFFB390C494FDA8852E6523BB8
-E184A625027F79620D9712D570AA5E2DE15863B222F7F5880DCB462BBEC2B5198E005DD1
-17B6867C218FD965BEC790161999B8D27E7694909828261593BE4DCE97FE5868285EEDEF
-EAB74A5707DC3C7824C1D4B170F729D9E04A3891E2C90FBA545FBB6F8883C60ADAEFD251
-6453F30B02B63D0438F927ADD8CABC0F78290C5D0433A1C611E4754BB72DB7A96364D9AB
-8B698A63CFABED083D9DB7B3934DA6FED9C162D33BC52D95F98632C93A8B6611C5C3CFAD
-B32DE2F520ACC68788CEB420269963C96B341D7702F7830FAE6CE78D23A99258FCBC3955
-9EA5748F18B560FBB1557019420217FC3FF9E1F98FA219728C74FFB024771CAB8A1675AB
-F57B229870ABE51416A8D5906D27EBF989A3F4C6A94E0B9CC383C5F161B0079868B17D03
-2C992D39EEF4FF295EE6331E26022D098D1753BC6F949C0FA5567C8CBB382A92D13881F8
-734E4AFD1E7157D9ED6DE9EE7DA0B8A08F54B7C8121D9D4A5805373016BE8DAA8B2C20A2
-CCC748F20209A63A4A7988AAC44D829241E0033FE88CD314A751EA836287DB68B32C9F5D
-0808946D8706556B3E597F70857C9C1ABC8728E256E9A34CA4D88D08A12AD64C1344E0A6
-7FCAF84A2E338B6734319ABB816F50BFAF49009AD63FCF1C9A4C7889485D7D6A3804A5C3
-52534EEE795E391609D1B6500321D29935FC49B937C061D556BBA407DF6A79C3372E1B91
-9539E5C21B816C060642188482BA31D8F3C4CAF759F7710E269235EB9F47C2699CB14C6E
-0CB2DBA8CA246D4F8A4D95B4452A4AA20FED42E66C415FF1FB74BBB434FFF1831BECD82B
-23B04ED0C66B5E1CCE3E166EC586CDB122D6FBDCDE2444230D932261DA28CA59BA47B23C
-461E0EF7AD3E03C501EDD54727F14196906C9413FEA8E2DDB9C7B955B3A7B83D91DA4BD0
-2C7FD4A96FD70634E2069AD2189A546F0B4FCF0DCB00C0E5F3527A3F0FCAD178C8D2BC4F
-4ABEB2250B4EEFBA149604B1A3D2178279E28B7E91E859E110510CD6C87D52E74CAF03AE
-69A5D08D4F6A45B3DA591EC6198259C39E4ABA9D417336E18E0E07CFC28C84B466F034AF
-A8541DDCFA4038288A6BA7A2503AA194DBAEBF3DEEF9BE93EFCDC351442B48AA8C0C9B67
-EAB4F75821E1FD55E60757D11BA394F8F336242890254F43F598650EE6EE730FA54E7EE7
-AF00FF3F55703D39B2623C7657E4CBB969AA8D7CE187C0119E485E391F57A6A42B2EBEB8
-F22B0F46012D822C8EC9ED9FB4085AE3C5FD36A9628B07B1A963337BA95E1EE89FD3ACBE
-4921FAC06134DDBF72062F31B1D351020C16B886A36CA9D5EEAA6470CF5044C7B6710392
-1577D9D5CC9E49A36C30ADF473FE06CAF00A5DDB44475F74152D2E520A1975CD1C0A15F6
-A47893FEC6BC00E1A44E8F6A1651D39BEE76E67C83B735872BECCCF0F907207778C4664E
-85C7D637FD201814BBC7D1C6200038B17F75E08B23F4AD0737259F9C07C47556FAE21B18
-1A110F056B1A612375A511FDAD2C291CF389622FD073F292ED09953B11E2A6626E6A4CDB
-8B50B8F9C7147114DF64C9FD8CD2E064CD9A3EB95555FB2B8D6E8A4BCDDC54E97E9F0B5D
-D3815077F6A825F924FCA5821E78BBB3E493F77CC71FCB3A5D9092453A0084AFA1ECF49C
-384A274B9B2CE36C0B1413C473D041B4BE0080B561F7A03F5A1641A6FCD1959506EFE270
-88ACA5283BF1D38901F2E071BBA4B2E35BB79D9CE9CD3B776C7348EE014D21BE0421CBE0
-4026C044120006AE1816528B353850C3577F4A0CD8BBABA169DE487AFBDA975B850736F9
-1345BE2B5ED8D94DC2505B8D6218F3167050BFE7E723008CA3C29E3244509D0893C580F9
-4FAE8F724DEB1EE280AE8993C9502E9F40477FBAAE9C3F9DFD0A78FC38D537FC0BD23851
-8499DD3CC9E583C292D200B9A082008E52604EE8AABDF15DB108C8D5A693CD829C8812F1
-0CE53781E50A9D234AB33BE6693C3FB59B921DB35FDD87A393F137D0CE119CE835138F18
-7F2338E0AED3D973652DBB79D7761D39B8A819BCED55B483BEA6B5E971E06475D03E2B9B
-B3B9D6677636111D4725EE36A077BE72347358A1EF91E5FFB77A0ED25542DD3FE9D7BC18
-596E2DF47A12A43F324444FE90226A63DC1CD5F265CD7EF81FE20A592D5A181B7AA251A8
-0CFDCDFA15B8A43A88F6889D2EDF93093DF25CC232BD1DB179536A1E3C46274F7F36A443
-86A764B04DFA73FF34D7BCF86C0A5122EA5332CA1D797DCCE9BDC7C8516BF80532BBDCEE
-A7C2A883683CC3CBBF1E96490C2B7D21DA99A3D6A0ED78252B12E1C97CE41D2B837E948E
-94BAB7BD87C929D8FAED67A8FAC5AF8E73F2518428646B0A70387CF9DF41DF0F4B5E7A5E
-786909F6FF0CB78649EC9F653FE445B4D588370E86EFDCB1EDAAD1D2601725EDD7CB78E7
-E815A4B76528F51FB88CF25A44B187001C63988B6E32531DD4E961DF683D794C0AE3DF76
-D0C29D5A279E668E08501979650610050BE7FAA5B67B93E47C807D22B26CE24B9BEB46F5
-B09C4A4683ECE59E931850DFB86108AD5937DA19A2132BC076AEFADF3AE07F65451E7A69
-5A583E0741864156E31C4DB9795ED7BCEDEEAE6ACD259FBDEFD4B4F4F187726A7A247974
-7B22593130F566D3DFD71E500EDCA19CD8B7B7FB5EBAD025660F5D8B3F24A224D741BB9E
-84942742D9D88E771B721E72859DF2CFFE2B288EABC083FAA26D815BA98A7A9F701395A9
-7A8058CDC1CF51740E293F51B6F0D61666A365235AE1296E1C9485A0043F651DF417CB94
-E53A1D79AA96CD5D8AFA0637EDC6CDAA761FD5F4E712745FAA66F74E7CA9D4C7929884D5
-32E12C92625B882AE1B60E0BFCB317DA1704F8A9337A42A8BE38DBDDEDC1E6FA9EB01F4C
-FB0BA8A2B29D02D9DBE63D2D592348A645747C55A939E94753887A853D3DBE03C0BF8BB6
-C4892B94415E60C3B7927B3B7BDCF56B45189044192DD6CF8FD192C5929C1741B6E53FE0
-7B4CD9EF8409287D791BE417165B54D5FFEF0F742984E18340AA54EC8D3E0D7A479F269D
-B8FBD0671C09E265CBE33A64CA9BF752D334803C09D32EA7EB774C32EC2E2D8706173E56
-C6A9690179F2191453DA57206855397146877BC55A562AF975C3715AA39F85C39A681FBE
-F83A7377E88E569732533A5EA193CCB76318E9D6ADD7400BB9CFF14D698C4179033570C6
-D00D70E5EEF63015399E5F49C4DEBF22666D76B6D60F801D023FF4EE8D63A1DC0709481D
-491F88979DC7AF7260BC0EE1CAD6A7A3EB0CE78C93865884383489F457F2AC5CE0C832F3
-F4B81820F37DDDB712560F066ED63777198E3491EBF087DA503CD59812FB082ED11E072C
-1C1482D879AE9F461ABBD5D4BE7D8B50D50C55DDF9C49D64FF968207614A85DF8DD56502
-809FA54B200F7DD9A6D4262AD7F0CF61F87A69DEE18A9B8C67F1CC152A8509E64211A064
-F39F3CCE5894A8EC0E23C9A557DF5FD50E2A5CAA3338C1781D04CB638A47C7A5A6FF8230
-1867BFD856A6BF11BA8DF56963D17291AA202C991F7EC97B501F79CEEAE44474806A06C4
-00BA8E8C5AC49448ED4C248327E2CD223B9199ADA618FF99F8DB84065C36A8205F5D3356
-C690D972B139D97449C080821798A70E55801EB4532D0EA1C05DC635932D1848310C063E
-05BB58B016A99FDD3102CF2BF2AFC5C6FAD3C031FA24F9BDAAC454529565E4EB52F838EB
-D4A61A32FFB3A5768F3B1135629AFFB808AA85788B3BA755AA51A6580803B6CE45D94581
-849CF2FA75442E759F1A544237938E831F504BF6408034B034009BD82E623AA31B66D128
-2741C8692C56E3F251BE3D582C32A9B770D5DB3E9DA9BF50A527B37DD41C425623F3B787
-7186F26937B3E04E291EE805DCEDDFA214158DFE50A3ACCD0DABAB73F5F51BFCA200C466
-B9A786E7CFF65F4B24C29D39A844A6F6D6BE41C298C2BCCC5CBDBF3C3B731121F834E230
-C8AA3BF6E2C40EBFFF4723BC0B2AC407B93DBEBEDD49CD639EEC65777A5B6F94B8DC1C59
-05040D8E4B205068BDBD5F812058D4D8BC2E16114D22D81701D36665CEC878D148AE79B0
-F67957B5505708ED3D98FA55BAB6FD20E2C8BA1C326F514AF29CE979DF66BF1F71A579C2
-EEAA176A3632CE7F136885EF3D530C15DDB59C28CC8E820F55E31667E8D8555DF76807CE
-3B37007E37A06AB32A21B2DD297C72785A88AD6F45784224D29241B013663073D8E1F7C1
-DD2BF95BF7C74B8743B31EF48655049EAD7BB13B87E648BF938059202183DD2970BCE1ED
-3018733F8E5B7EF9255A29ACF581426DDB9224858BB380AC7BFFA1DC8D2589A83FAF5ACB
-A4985D845B3F635046887AA62327FE0B0F020239E9FC7477821F7BD43EA2EBF1DC9CCF32
-FF6111507BF24557126C3BEAF30DCAFA051E3E9C26882BC3F4915F54AF9965505D89D11A
-562EA74783739F0C788D0BE3547F16F9BD13F96D861B2DAB90A4BD23043D588D9B583C8E
-15E9530D006DB4F17E0B4EA0A851397C4B781D707F98179B6E212A6FD87E2509B6AE4CF9
-EEEC87747374BB2144CE2E7A70B0F2C03A69493F9DD476675AF200F15EBEA4F7770001F5
-461B9079488E9FC1FE2EBC86DFE8CA2D2ACA5F746804F639228E813C8A1D1680F0A12499
-CE56678DFCF24FFC05C80F78989CDFB4F0CDA8E66428511E9BB0ACB8EC04161CC575AEA7
-522A229C75815C78B3248031DE073E0C5E538BD886F85555AA2E0A0456C2933A95E83AF7
-D16C8F8DA487452AC84487EC764A1A2EB1CC754F517FAD18C7F76769E67E3363D8881823
-6949A35827574BD65623CD4FE89C0F11AC2E050584CA49DEF1C513A8F7690652F963447E
-DC79D866F8C42EC7F3092DF52EBCF6E64D19E44CE1403BBC3A29C56CAFA903D315D42058
-A01E6124B82F1093A3027891C49FF06C8C1638563F92BA051AA5F750FF5F6108F6C0071C
-E9CA1CC669841592DE89A5383CEA9207C9DEF1A4FD137847A80630FECCE16A6454F4E857
-80A9B166DCFC50AD94E332CBC546CBC0A39507C8205050473351C6263B33FD705594E654
-06B19A80DBDD061D12BB89775D6BF4933B3FBF3BAF6B287A32EA01ED2B5B33C48715EF5F
-4650C9B92EEDE15F46DC093FDE463578EB377697703D7ED7C0E576001487567316B333E9
-CCD75BCBA59E69E1AB62F39D0546EE67FD4C1339A93E01951F0C2A38A994406406D2C64B
-D719DAF35CBB25BBC68E6DA6016ED0AD7E1930CB951C1CC22A8D82E144969FF25FF153F5
-D7A7A6608471BC31ED1F4B4E6E58173FDD83FCAC6FA079FE172CAB3BF667C0FAA4827244
-1445223D78002593602829313EEB37EF4EF8C96129E96484E36328213B9DD5F55B731167
-FA55DBCE903768321B2F375FF1323016F7A8C0B401BF8E2A983EBAC57AA4CE5668BBE152
-E1BAF5615559760ADAAFBBF1EA43703AAC9A74F21383017152EA311AC3D3F8762E1D8918
-887A0BD9E880D3C052A48B4EDEE667370097EFDE700B49D0A19F32AA3B43C9B58A3EC400
-DED3BA2829B90F54D8F0B3BECED9136941272DC0332FDDEAABBE38A0F8BE05287CB0D281
-DF55F4E8AB705B54DD026BC09E5831A64C728D9895D21E1FBD24D198ECD475CEEA216726
-E8BB15D4F8E946B5B097CC9C89E79470F0DEE451DB14D96C994DAFB07A0221BD48F79587
-DFC722BE7B360A93B98B42443494076BA779417DA3C17BFBE69B4B547A3EFAC6552E4D4B
-9B03D51C863CCB46A8ED112C0B19608879DEAC918544B43B4199B2C0DA7B318FF13E0CF8
-47612E7279C334F681AC44CEBAB0D6E141506AB98322FE9F41430E69FA2F482CEFD68F3B
-1280C9B6EA383C053F9474397E8800A6DB961655D18ABB68600F570C2D02E4750622174D
-6A9AB48B05DDB2D56D74DAA537A642E1FBB63E55FDCD54615D08EAC22EF484FADB9862C8
-6FE2E6C300A367EECFE4337110796C21F60F9CA9D034917B1C98FA45EC79DA8DCDB216E4
-A3DD97F0C51F7828743AA768F2E442D2264DE35D7F191AE874B856C8473ECFF241A46AA3
-C2261E74BAEC485E0602ACDF8FF0A0077E84E6C8330951209C87E117DC57D6018E7D4EDB
-E79E6F59C75D8D030B442B65B3513F74610B98C40E3C2D500D41ACECA44257F8E24B0B19
-4B6C8E20C51E61AE4F633F8586B52CF2D9438958C52F7DB15B499E69FE3BDC8E983CC34F
-80B57FE1279254A228E7286CE78E771BF9436154847370D7DAEA0D995D9D7FC2F0637731
-29E076BF10576E480C1D82C29648A2AD8CD36814C67045E4A67737C22B5B5EA48387D991
-E35B8DB9695290D7CA13B1106C6FFE40A6EFF1DAF1A841F3A5F75B68D441687872E91EAD
-4AE10D047756DECBFBE4F87262C2008D4ABEE51A0641AA309631D7E54258182E56901E59
-D1F6C7F15E8D3FB2CA70AE578B2CA08C65FFE542A479407F98D06F398DF54DCC16FBE30C
-67FDD4A3227238EED53CFE2AE0088A1E2F9AA08917947C4CF795D3E464D55987C4DFD14E
-EEE7C9EABC34C4F4C77B56C8E486BC35E38DCAB4E7FA1746C5854175AF400460BF82BDE3
-C9E066F4ABA7E1DAF6C04035AB86B1289E3702FF3DFE4FA431238AE487D486150A1C52D1
-047B1663D12962B478BB1E4B750FAA1E2A09ACE4AE89058F3E2B928167FEF099922EA552
-6435952A7ACECF1650B319BB3BB8734F9F54696B556BEA7EEC47E4A77D81280415E02DC2
-3F4D9A73F44AAA9646671EFEA5549FCC9A5915239DDA6E1C872F742B28A203AA88401DB7
-00C36DD78CEA2A9293E8768D5C59721D16A41000A2E1B230DFAF4A1BAC797DDB85BCC5A5
-A38BE413D0270D7259289AD4788D1D9769234BAE6CBA1DF835601A76CFA75C005C0EB325
-6A100B43C0AC0D0051084902D68F0517C91EA5F4161961644230055C97947D5756C62F12
-C550E113B2A88EC56345C965D81EDC09F62AE036C18AAD798250E5A0A07E607F3E2D0ED7
-B889CC2961339149DA012D74F290574735CF2706FAFF605861571D78FB92A8CDDC84C83C
-BEBFC000D43211962C578111F8FB8E8506EB1871A518CC7313242FA11F8D51BFC3797637
-F5E1AC8EC1435B36D98BF1BF34C960C6CE650D5115A7A244ED7489BDB7F6514BE25372F0
-9E3F378CF95A0E462C0E0E1B4E84696F1977059079AA626D0F441D2CE7F4B52A49B14FA1
-19762B9FF8966772E936F0C6BBB0B24F7846FA1109562BB57A995AB8DA48C9EDD5E90FC3
-4C51EE9DFF7A2D4AC959320FE10B800C83E9B83FC89FA220F965DB0495A4EB5EB1AA21DE
-5EB75C0CC0619C9C38F942CD525ABD40EAC721322D47D7117D750325AECC9A021D1A12D9
-D439AFC0425F9046622EA9F34FE1FAE58C428311D62DF1FACA2127AA627E91F5063FE47D
-F727DEE5B989E1D4A89B900FA7A9CE3259A3A86D966609FC254CBE319DBF40FCB0515567
-A54AFDCA6CB575C49E893A136D1680BA06CD3C427E1D1DD707AEF67C44B89A4CCC1F40BD
-64820463144AFF0DB7CF78F08BEC8C7DB7356EBE85A0DFFAD4D3DFA0F7F4AD70E7A5B49D
-9E51D73AF08C7B65B9914071A837733C0819ED07223BCEC52D623D29CFC3463233DA8E44
-02C013306E90993BB54CD78043BFCE18E490443AB6D7567FDBB9C5ED761968B39DD21669
-EC5DBB5DC7205B279B3095460CEE2273600AD169C649D846A1DB9E6524A7FD5D9EA9C9F1
-A02CBF4D9874ABDDCCE5F70F7B3F408F6186A0CBF83EC8A342D7CCC022C55BCB472D5896
-069976044EE83A88622CB1C774EA75B34DE55D618E7D22D50ADD05328B59F9AA9B683EBF
-4741311B7C07541228ED36A71F9175F4D0EFE9C11B0AAA03403F1BD623F43B4E8C8A9E5D
-8D2B43F240C89DECE40B79C64DF6FDA815F08D51BACDD7D6932B73F74A3486993CDA0834
-3812F920486140EE379675C07291435631EEB4E03CB5DAB603EFE0545CF4130F9D7D421D
-5114A4FEE9E4B2897BC6D232ADB685C55EDF8C2A8C47814A38B8C7BF34FB777360449448
-90946A15CDE17EF60BA40E77DAF5BECFDCA9A09FFCB93D0010A161BFDD40EBF7605EBA0A
-50C3BFC9B8A48CFB895FA52EDDD86221D6EBEB0E9A3D8D0F80B88DA1B8099DCDD7703C53
-0C90F979DA5A2CF528B610B5645087D2CCF5D8F639E420AACF09F97231C3250DEFF28978
-43F44E473AEE74810B77D8449877E45AB5A30E29A4E98CD78F57A47A195C3CE22A5BDED9
-1B3C576D10D7467B3940542E70A7DFC92F4876E384131982D7680FE05A5812C80621EFC0
-A2F0BEA16B3D4D9C07B8AC4A540C803246CE437DA13FE610EF3211F81CB7801C642279E4
-9CF563ADD932DE6ECA45918DDBE97DA17B443C7BA15FCF39D91F9C4501B03E56B9F6DD75
-F3A47EFA6B7D9702EDF6C79C9183F37DFC805E5689F27B53D5487767B276AA037A210C02
-AE23A2C4C89E6CCDD49FF5FC857B2E8B8A9976C238456D000DBD35B00A9401657DF88913
-BE616D0800945CE1404968E78028B727B6DB6547F5155F4C5E0C97C3FEC8882EDFEF555E
-98E76A3BEEBE09DBCDA40C2C35BC1A8C7A6B7812AFCB1468D527F723C947F56B9B1B4A45
-BC11CE5C3CA9D950E4729A242866E226A66E3D8F71D9AE73F0F8740E2974CAD28FE613C6
-B67BDFAEC416CF799EABCA17EC183A0FC013A16EA73B5156AD203C2D07898D20AC23D03E
-C5E4534F153440C72D3DB5DAB3EF1AF626472D039892379A39E894B10BE22EB8296E209A
-8C823E4999F6BF0A1D3CD90825C752A98AA190A2E19266329A49014C772510AFB6B85D23
-FC3811B1BE5CACAB09B5D46E3813DDFF41B8ABBF8E8ECC2CB14D48632DA2E5F5F748E14A
-8877B8E5F2E2621014B93A7AF3113E3A8B3BCDDB1CAB7E7FEDEB79E1825E27151E7C74B4
-CBCB8B40A82F1F333AD206F18835FA8EE49BAF6E22E851DF09857DD303CA2CCDABE607FA
-78740F70DD481DBD1EE04F730B5A3762082B1B47E69F39201D42A8E21F0F48CB5EF716F2
-4E3B4B20E53CAC08BF494E71495B4E95E46B6AC1802F01DBCFA8DBD1A3ED82894A5DC263
-700908A3AB700075586F3F3406496A1DBF40121744A9A1C51D3E135CBDBB5BA68D3BABA6
-21AAAB308EF3B0287A32AB2E584FECA9A3E00E0A3A7C038C225C51788C3D13232240EADD
-63C8FB02A0471517FFC82E8E2AF6AC526F0A3DEE7726821ED3627638AD691FD4B240B9FF
-613B72C089D11C22C610F9B9E244EDC11BFEBEB5B1C5E4B4A4362683363B14FCFFD748AD
-339C432D31744B43591ED1DAC1721A9FAB9DA2B016070D89914C0EDDA9EFC894440C8B4F
-3CE96EC4DEFCC4C57AF0DF67C40575095323A5D73D671D2A716A787DDC6837A6AF455F6E
-B524888B98EE8E8F48FC9443899D3CC6FCF6EA214CF462BE414302FA0B39C1DB687B5186
-EC46781405BED3DD98FA23D796D197E9CA2287D4494E876F8AE61898792E3794AF5B3901
-815FBC50E7876043D1F14E61A6F998617EB751C113739F035F4E9DA35DD53DBAAA91056D
-1EEC865258540B185DF50A01862EED02EE626051FBAE63DF6D94666EFAF4ECE522CC8066
-EBEC91734715C3919932E28169F49981D7316E982C287F716FFA8D61B939F8A47899D57A
-C3D845FFDB0F21BBF2AFB9980EB0D4E180B4A22A902299FCA5B157AF5DDACDF2C9DD3E58
-2AEC6BBC869919860893B9FCFA4881FF8AD0D10066CCA51A0B63D478D1DD7BFDED04DF2F
-58186AF02494A6EEE99FB66AF9F3B7C6A9E1BBA52AF2FA10596044F7A9D4B0CB337AD6AC
-5BF8CDBB69390F7536B977311C6C9127F26DEE4378A17CC931587F77F14DDEAD5DDEE1E8
-B57FCBE1382D9529880BEE3DF9FDDC6A3F9C6056988E5FDD101A54459F6932133871851C
-4871EF219571A1FC43A42BF14E8B029D8AD6EF458B59057FD6BA634ABA8D6C11EEF4BCD9
-402F47D4739BDDF22948A9D5E7754F621D27565CFC92BEBD62555B12BEE04955923A9E8D
-6B0C3D336E8345FBDD40B8E7C9A43DB83A895EEDDE6211EB1360FB016A9DC23F5055839A
-9A71775D8A45056735F14F87600916F187A53C323C86CDE455356176FB014584B4A04126
-3FA11150B2DEA71B44BB130243973600B3A9204C13304853D33A15CCC111C0F08360DA8A
-A2C615A72FC79C1B128D04ABA0E92A138CBFB37253EE80A18BC9D92B5845E895A7DC4060
-41AB37F3D4827254BAC860D6EDE8C5912D8DAE2F943A4430269FC9F9894024C73C90D77F
-0FC81E16F618BF7DFC1AF1CB2EC0972F62B30F5B37747A8AE2C7A2C7C34595B8F1DF513B
-973BE2F1ED822FD4BD7D5B07BDDA6006019700257B103BA495F9148012C4CDB2C3180DE0
-B395BCACDE2FFFBC1C64DA5D7ED1738B68AE483E5007EF90C9A770D73988849F2D2D6EC7
-734422A7D0BD41042988E4F215A81B4D2545A2C84A1CB218825221D3E33D5D5A2DA7E91F
-90B275B9F73571286905C58ACE35E0FCAEA9A9BAC32784C8CFF609B09114D6836AE6315E
-4943E9AFAE0905E0516603C5CC2C54C364CDF9282DB7BA8DFE921D7B4833C48A8045A60E
-ADFE47F9E1818BC4F97657007DEEAB9DCA84280E3014EEBF7D4D0D1DBFEDB072B20CC4C2
-BDC4414DA5070757F4EB8F65B1DC1D8C934F9BC20F516A9C6295724DCAB93A9CFB0D75CE
-A6237E7F225DB1CBAA18C679E2C6F0121FC59D090E5DED3306F50DD0F92D5D9FA2003095
-CE6C5157C569F3E5FC02D4F3FA115B9B294C74CF95DDED62CF1E5490A6FBC97065247D4E
-23D1E39B0EFEC6663C27674AFCEFBEA9E482909EF6B6B8E3AAB9FC169B0DCC8449B50A08
-221406F001A4D140579FA9338C675DAD54E854CF359452C07D07EC05F28301D94FCB46DA
-0D0F5502DB24BBA0364EFF694A7F4E86FEB6845CD59493BCDE8BBC61A30FA209B890F097
-5600D91FD896E6E0DD0626B4BCA3487AE1C577320E0C251AEDCB44910510CE89CCFAAFAA
-CB88770FA29636576011B67C6FBEA6A310AD45A006100C4473E844ED4DDF69341BDB9FC8
-3D37F678B9F7A2BEF245F823186C56AB3667795C79EC85D68B9A34E9779E29889E67DF20
-26B22D42C423C1425A678D8868543E96DFF0EA75C3666B0EC85A015B7048F5ADD08EFB1D
-B674AF6D008808168A8EF8EAA7D43F942043F3508D6AAE60CAC9C9950B81C5ED863B6653
-0C98AEBE1942E63CBA37FA6E02DA11AB27F8579BBA5220635D424AE097A88C830B3D42BD
-6B7D89F6F40F63B362E5215373F943ECEF08666D86D2D3AF045EDA7F9F796A5522608F6E
-3FAD8953F166C11FD0688B127AC306770C934311A4890C48ED4EA8D12D04C5E2FF9B6DE1
-5253DFA7627F3600C89884B2B3861B364FEB31805A1D91B95D2DAAE9D16538DDCB94EBC1
-23F63ADE7C1B9D48E526EAEC0FFD822160DE068723170F5B753B5C10A0A79CD09ABF1E96
-A8811EB377BA65F37ECBC966A054A65FBE686C3BE9FA4573BF86865A5D997FFB690841A1
-F273016436C3D76351BAE06BA745BF00F27428B1113B5351567C9B254948D8A91F6927DA
-381F993B0F941458CE5F5189091A65B5D90FEF01051919863C47FB4EB11D18CCF8E5C8AB
-3E518A0923BF4AA13F83BB3FE88A4C3D680B7FD65D649E0159C6C9151FE7959E77699105
-B8E4E1B10C0C5B56C400325D32EB5716BD0FB13AFC7A424222B970A894C7D33BABF63B59
-EF13538F526CEA62F5856F1BB23A00D7E65220E5241D7EBCD0F84C44ED3EB468DA011023
-4358E69CB5AD8C0B53F2AC1D014358CA2C2A3C901AC5B2850DF73455D690D3944BB641E6
-995053A40D4A513425BE0A17D619DF7ED39076E9FF9163282CBABEB14BF7E4A49A5D93C8
-69B9F57C9D86AAD074633AA533F5734F2B98B0CFF7ACD4726BB1CB239032FBA59B3D0FEB
-3F3C169C667807380CAF379766B5984B4CD3D71975B62EBEFF09056E62917083E35CAFD5
-6FEB1C7A89658F46733CDA47E99797EFB6E48332D24C1B9766F92D4D4AC4EF17CF6418BB
-CD0694C26CD6B5421AFFDC33764719826667B6F88E604F982049D286A35B5EC47E07605C
-A8D53448C6A436B183BAD32E8138CF289C5D0ECAE1A2818BC3CAFA0B02C9097BDF043F15
-8625F6B756D85C81A4B42865A4AF790BE63EB95C72BE08598898E801FABABC845EBBA1B4
-4D4ED41CFF1CD460612F8C2B249B1A206656B2CFC3910C57465343DCA6DF0DCDA3F6DE56
-8D6AD6F83DDFEE9DE523EC0BC45138BB80B7315D894B27D73C4C1DC582BBA0A8917E2E10
-F94369E0A956F61EE11CBB2B45ED6027D448538B36C471D2D3BB6BAF447B60F6023F55A3
-24A5C71573438FBF1A7B40A746A73F5E1B51FA3F38DC9A2806BCA0B8B6817B1A265826B3
-27D425929BDEAC8136A91329B43EAB1AF325960D105915D185E0522CAEF00A15A2014F6D
-E29C3093AFF98028F5061818F8783B37FD1881ED44D6516EFBADD5D6B500D5502BFE6A5D
-908A07BABD50514A1484901A51AF83C338624298070D04C1DC09D03E565C7D25726E37AC
-1D1A9F5DB891126F9944BFA1080C7906A263BA892363087DFCBF6B92D9AF9CA1D7781A99
-9DD794B3385C18AD819D9558CEEBC46F9097E9B6CE6A00F1BD43C98730CB80D48937D0D7
-36862809C16C794C4435B41DFC392291E699EBE1AA54537375B6FBB27F1230B77A0A05F9
-2BFA166CDB8B180036DB3F48E4851A538C628C8D5D9CD556317A0CF0E6C28183E07249E6
-D6D47F35F1C3220596EF0CC1F0580ACB2B029B5A5B0C10DAEAD5D3F698CFEC641F16D80C
-0225611726C1D8C4482A00038BEC8E0B9EF7263C32DF0F80E01473C41307FD9C10742079
-9F2E0486F5C937EBFA48B7B61DBA9094AFF525790B61C3858F76685675BC6ABD1B9E9A8C
-A17C98CF85E49D6CB5A6B7CEE52D67EC249CC2681F802C06FFC639BF3A0EEF23AE39AF5D
-C3E77F63D07EC30E4B3E06F74E707DBDE5B6DC0DC1A9DB02ECA2FBA6C87CDF278EA55812
-40495E2C138BE9CD3AE2A1A427151A5EE3CDCE28421B137B1427CC48EEE8EC1355B48FB2
-86F40371EB9DCAA5E163C65967FFD4FBDF7B358463D00AB081ECE83596C2EA2F3CBBD847
-6D6EEFF31FD8A0E3CF4B6362BE42331CC2737891CFA525B1CE62F2FA4B1F2FCBA54D0452
-B77579DD1C56DDDD6DFB2DCB816B47FEFE0E84D3A19FEAD6290FBF751BAA095C068334BD
-77F0F04DEB6443DA99E84D250849045DBE0ED267F2789B475127E6C57059359EB08AA04D
-3FCEE5B1E61EAFD90B19668647CC52FE842FB9D5A58E3E50E4CD7A2EBF1FC9DDF4CA4B0D
-29AAAFC8344627C9BC74C49BD24774EB0CC6DA70B3F3BEE134F298528373CA8B96121B31
-2C5D02525A1166E8A644D04194DF8E1D9323FE92DAC4833CF0E08C716716069AAC65A421
-142B305E97E668A32B397244555BB14653C18384550BB417C05EC9343BE28E62845ECB49
-AE6AFD50A5619CD1F5779FE6AE1C2A2C10420F0E9426AF4614FE2E6E925214E0ED5C6133
-E9E44ABC962770A4E598E8D4300F9C93CC152C5067FFAE77FE9A171A5E463D1E9E5A332A
-564281F49055D0A99F49A20368EA7C75285EF8215FC37FA69A66101EE4E2E32A1A2AA753
-8EE3FAE3D4C31F96C34A74677BC9221FB904F777F69D2B85825E09C8BEBC973E4AE85EFD
-123507D5D428372188270978D9C7ACEE75DB5D1F1E2988832870B7EE4F5366DE20237EF3
-E526DC33E2A4FA186A43325779EE8253D76DD1C4FB007F1A2B8E0272334A5956C488ACB1
-1D09C8399B4181B626636F6EFED9A5086BDA64AFA3677A48D13464C2E0813421D96B08F5
-F3B7D2CBF5B2875A1C217F4677B026B21A07A8C61140B1A91D552A1947952448D7492460
-FCFAB5A22A7E9BFC577ADAFEE42FB8C0EAD717071E54493AA7BFAE960641332AFF9AD94F
-9FA05A94FD5CB6014FBC8D274ABD58DE566F621672550D2453ED92AC8E317D6D28F5A443
-D211A3A65005F8A18006D2EC7749AC8F57FA4142BDD1D62EB99A2C4A2EA448AD5DECCAD8
-7B54EE483B40CE76CE2CC0239B0B50C8AF29E007A10FADC1863D9844B2380052383F333A
-29A7168871919497C878D7DDFE5D22667C51FFF6C2926B3D219D3A3C02EDF6A9FAD14E90
-90D293156E00F6292F11808EF0E73CA26147998707EA4ABFF7B77A5E29ABACC005EF74DA
-D402BB1AACE7CDFA12F93421506980C275BACC61B292DD800E07E1D640A187E73A0B682F
-0005D5BD5F6E53171C376B1573B9F1FEF247AC3494D828991A9050C2B85870A9C2E08C14
-A92632C3553AFE16C771A3FF2DE42949E1AD0665A0BAC07C8B1C9622873C54DCAC6D642C
-1F050F2CF566713BC4C09E28AD0E7CC6986CDCF68D5D8DAA0B20B6310E4198A1B95BB262
-7B1816093B84234255C361928DB4BC5AC3A67A487C540394E833E3D879B3C96ABD4ECC4C
-95FE7718D1D6443C84458B694AD25EF8824F947569C001931C133D999D6DB574698BB17C
-B86246A3559E4E4EFC079D0BC9FBE3A8668DF9311E7EFFE4316B47C4982168D69331CEFB
-AB51A1BE03A6C2CCCCAFE7BFA2A836AB5819FC8E18E33C4CA59955247D0EF9AF810141E7
-B60D58D38A2A5F4686C1FBCC929A2601EEED2A4A4DE9AC90F726F1D1A16BDCCFF5280A6D
-52B626B3D927E606189991FF548FAC99C1DAC6B894B4BAA370678060B1D6CE7D1F74E251
-920D7279E493017DFB862ACA5BA417A9A975E4D6736C2DEA7418CC1A07DD3812BBBE56C6
-F3CE5DBC16353009E547376D99F03FE9A087C29A1161F2629D00206C219300B1D09F4BF2
-AD8475A269466201C57EDB25D8A458E4FF1424FDF09B1879F5AC6512952D56EA719263D6
-F8BD77D3B5C04A2D9E27EEF0FF3F42484F667DD1B3E483C45DA8057AF1C3746820D7C663
-5C363BCBF2106DC618AA1F46C34E9562F33EE3D392A6072FA236BDFED8D8FFE526694AAD
-A68AF0ED535F0E1E2CE19ECABC2FC66ACB07E44FDFF7111639117086B1876725BEA99E8B
-D0CD8055DB154A8A7BE4165118C104A5C1B2629B4C948EF51A68C7A3B5ED70C2AB40F0A7
-53B75AF07F4248699B03A7654C366AA3A25121D8590E787FA902D5E29516BAD7C842C649
-41EB1350B2BAC0E28946943E0D5C227326D7B1C3939FA481245B19E7959B770DB9355DE2
-E5B6FB5F66E273BB9CC91527F87F35E95AAD29D867A0D35E9E6B1BE8F1EAA06FDEF2BF33
-E694D4747D525AFFF997EC367C1E1D0B55C2146BBE47581FF99824269E43B795FB02F80F
-83B1BB3222C6A48B9651325E4A6274BE9047DABB7FC9F85751DC9239E82CBC5ECA22358C
-8EB9DA76B9CBF92894268C49CDE4F67B6299CB46FAF1A8E42FD584BA74C47767613325EC
-95CBE6A43BEA5FF97C7C2195E970504893EAC878AAEC0CC2E86CCEC442DB62FA15C4BEBF
-35D8AD91711A689415A84DA6AD6D1E2646E363D143FFCE360B3E9D282A84559B1202AFC8
-41A603E80631FA5F1914411B13811ECAB8CEF64906B0361F5F558A22026F46FC88A389CD
-E0B23523E884686C7D4D9FEB4C3D66BC410E2111A73988E73CE96CC26A9ABAF3C860D8F2
-658FD13A44F3DA9B5E53E348FA51B64299FCBF16D16E07CFD4C5446614FFAED07FFE9E25
-A10696029806CE3E23582A1FFC5B83185A0411E8353BE08D7AC131E2BC7B7A8EA6B36653
-82B2C4C217CA8A09ABADE43A7A5249643758B7FD0CEAB8A9AD8E8ADF1A9D13C2E5EAEBE6
-D29ED3734EDF200A92E19490CF4E42DFEA28AFEEA7FEBCBEC1645C6A101B51303BAFB113
-8D90761074D935F9F553787C1F653FFA3DE1A8808D185F38D57DB5E1B16C1EE5B1385C4F
-3C9FAD7CB2460DEAD9DEB549303502AFF17660B9330D162C891F1039B68ED4682BE6BC89
-7800F158A24B07539CA9CFC6324D52054527406D915BC0932F1D7A86E2FD1F649386CA6C
-6E27C50CB7A63862D606CDFC3ED8C6328A756AFB01865C264FA74B586E5A6D34CA48CC74
-24B5EE73BEACE92A3A4D97BFBAE51EDC60643B8FCF024EF05E263C0BF15AC37665BE3428
-86F6B507B63463EB2DBBB5B2EC5CA4F227F9D5CB0124BDCE2C0AB3D4358273910E916D43
-6FF95985D564BB420489DD1A0919C8100EA03EC5702A9925C68C86B4972C118B04016533
-BD9726054B7B563BEBBCD62CCC5A08F133ED0554872DE4188F1F15D52CB5592B1E35A319
-C6E5EFBC10CEC89E9DD78884E18FBCC408378351B276FB389136ABAC62515C1F5C3D3755
-3E0FF12DC19621DC4E6C148FC4F56F8FE32CDF567DA11F80ABB91D224D4AA7ECDA2A5035
-9825F25B2150EE449C101935B44549EB3E6830D551C551E1501D7CE5B3968B770016F605
-8F0CD392393DE4576167DF1061732E9F7A42464610BF841387941487AB1BDF04AD40EA13
-90A50F076215B6DBA43231647418BDBFD39FB143D43E0B8912F36348FC7A1CA96DEA49AF
-416D8A6CE75EA49395667E19CABC2B8D43543A488B130A2D85386518D86987BDF99A26D8
-B4EE1E29A4BBB8AD0AD4A27B346FB5F9E8E5F180F0D5748FD98A64715954A3125A749A43
-EA2B18CD4DAD93656B8FD9CE27E5EED5BBC369C060BBB43B4038ACFEAE8D437A354CC373
-66B2715885DDE1BE0F5DCF688E5AFE08E163264DAC1BCCFE9666B01970F2F16B47772ECF
-751055380EF0002FC3877CD3F89FB0D9E018A6541FB71AA3F6CE602C4DE2920386F01185
-E2CF256CD8F8EB24F460270B6CB8982C46CA5E58566ACF504EED68FEB0255B6D58B33687
-551FACECF40487D58D4DB520A1BF372DD3B66710DF6224E9B6D2EC15B31EB4E41A6CFD53
-42E3FF218807059B0EC60B96CA5F9F4CEBDB3ADA79C16624824F479F5FFF981B0E109BCF
-8C15D2254FF75BCDBDD4AFFB96CEA4968C38611FC2204054673FA7AF01DADAF779AE58E6
-8600044320439E79D45D56352B704E5F12E56ED1788E0817DB76B80F134C9752F0082CC1
-D4205003C0B2E73BD54138B10E0A16CB57A0ECBD17DED50FCDF7BDD848576E87868A911C
-C5F0B1C36BFDDCE813366DED05732C46C9DADA44D71E94C3C4A5030EF7061684CA509C70
-8A242B8A39D649530F379E81A1F5B4456A452038BE180E35889AB052D14823392AEE2379
-FF3564A86A2F50AFF40962F665F3C005CFF6992FB85040E6601D20135D7227F05892F344
-2578C821EE1F00E68E0475C0266FE10458A18634B226AF224A80FA07A1E3A29FF6AD2838
-CCCCEE4E5E9035220AE9F53C02DCA89F00418FDF632653C5C64BEED2209ED102489720BB
-D735B06159B60BB162997140BB6AA99CD063B94A7DE5098A8CEE9A1AC5ECCB0E0D12D399
-27FF2FF621919638D4205E39DEED766108D63938FAB0DB2B2C9D1BDFCB14517C7E98369A
-7BD3E31ACCCCEAFB954D92A22209C9E825CB38C9B5A529823B0A85BAC2605864B022BE5B
-B8DAA6312E8DEFE04593F4E8D0284DBBA42CDFB7C189F280FF48B79891EEF4FCF59A413B
-7CFAA37EF7A154DF78808E4AB8CDA33FC51F6E389227BA952469AD2D7BAC328342467482
-FE311D122B9AFE8A16E9B6F5551CBEE36A3EADD5FE7A524A556F3D7AB3217FD8C574DF32
-083E0D1EA61A8E01E3BE1392BD2955486E289C3E1727FE71C50D1B50E4B7D945C5555851
-AFE225EAC181B0EA541AF40AE45309B4BE2DE1BC9B36E0B7849D0844330F3850572B3869
-FCA1BFDA818FFE1CB7095423D611D85890BDAC15318028FE9F3033D1DCAD9381B9237247
-D65829AB81AFB878C7EF54CBB6CA38526AFFF404662434D7714FD8A5D0800C8FCDF69A5B
-A6938079F41D08E80746259C7D7D24E149E2C55424223CCC1AB2008545CB8C5B51CEB8FE
-DAC374E94A7836030F536F34A55352ED405D9C31AC2F82FF072B9B885968D534C9792F45
-1BC48E942D28CFF06246597246776530F72392C98D29CCDDBD9063EC24D559437B844430
-0D2D742E08C0126F4116198C72AD9D95E83A534A6D353FE873038825687C3AB0281600CD
-FB2558D70450E14684F610E144A7568C471334FBEDE0CBFE913297A657321182AFD4045B
-D5D205551C6F9B904781B32529C2AB0FE1DEE6269CF6009203027C9425262CA5AF2EB250
-493B9C1018F2907DCC656816D57FE4C987CBE7F7F1BF0EAF8AA40E23B456093B3DA29C21
-5CC7F911ABD9ED34866EAEA9E1E7998C4126CB3B44F7A8075C37640E0AABFF1B9B0EF003
-96A9CA8999EFEC2FDE533584B5F49BB4DB1E121B581E12F2392E7ABBCEB56B35E8D0E507
-980457C24100377B95668B167C6E5388760883BB173A6993A88104A3E08747F1B75F553E
-65E448C8188A3942182FEF0593BDFDAD67691E125012714A0B4A61F5E918980E1A167A32
-D7CC3D46435CF3F2A84458F309661A2095792F79D1CA6378DF864A308E162F1D8B35CA85
-98045B55B19BFB7D18C05B0216F5A7B75167E7866537F3F8F6BFCEC95B946B4AB1B0B015
-E45ACFBA6F4E24FFBD0FC639591A95337ACD84FCA6A164857EAFFF41D00138A582E321A1
-D6205B3E73E2A55882FD873FDAD0F9D205D47F75055FA3863E5210EF6A56F8D12397E3BD
-EDBBF54C8A328E62E03BE58D301B285E398A7AC55F6E08493099CCF7A70E79CA81E275BC
-86805E22DC3126C98916CC09B06CCCEEC5B66469CCB92AA21B71A49A2596076818B17ADB
-301590C5CA8635CFB881832F8621E6C15EF5D59F20F75098FBC0A7E79690CB5CB3F746FD
-D8B0A8B92AC145E9303ACF6FC91820119325FF5D8BEDA62446311A73D89739E628B907DD
-AD9B8CB60E076AC1092DE241A56495D0C1A5EBC43888BB8DD087BD6CDF38E1DE93630923
-CD7F57AF1604A42B70D2E073935E66025F44ABB3E8B620E065810AE1D2415D7A58175D06
-B7CB4C211499F9F9EC43B92C3E93DCDF03699D731DD288C1651A62A25AA9BAEB1B79AC89
-974C233D6ABEE67B4729A746A700348845A42953CD858ED53F385288ED83EC2B54C2F416
-3D4E2E5011485D9293567429D4BA52F1F4CCCD80BA8B59B501C629AE567F24C3AAFEAA0B
-4612ECA7694CBDFF876C3B9B5391D6EC38DD10166C3CF3CFEB02DAF1EDFB661899D3EBC2
-556EAD791F18381618D14F7B7B115A35DC0E8E282B8D1B4C9E68B09E9C8589837660444C
-89E477BA7BD0CDB39EA9FADEA33A9990458A06660A30EDB737BD11627B68DF9445A34D4E
-4993BA9E24CEDF0FD6955CECA5C9C79A340AB31096FCE9FFD84B2F49C8D504F55F413860
-7BC83217782E1A269E662DE79C67506F14AF71EF7302282256C1894AFA5DEADE51BF4222
-F2D0F1F4FC1EA7E128D7645E07941187D5CF65EC19667F2D204222C6958BF58525124ECC
-17C02EFB44881DBFC89A8D5D73A05295B71AD83BD9C54ACF1FF0C542D13DD9CD6957078B
-FC5F8A0BA938AB3466F44919BD38C5A0B14E899208598792AC43F532D41C6B8C4393DBE4
-472B5339C02B620F6D49C0B0BA93BEAC6373539881206C1F8E5A0F4241D0116737C4EE62
-575A47D79F1DE2569516D24FCEE9B7829CD545FE71D3DAE6FCE4BD780437E597F5849135
-D69B7E51E2D6A83FD3A8E67FDB1825D2A56E4BD7D6ABC291D052997EEDFF0DD618211607
-1D1CE4B60708315358C989BDE51C97FF5F2B2141893287F822D6AE440A811FEB93E0E600
-AF51552FE111FA4AB014A89EF562FA552A8CFA6E5CFBE95D81B7E50C04BE883DA4E460E0
-83438DF33E15F8D759FCB651B18357B40094736416124FF1D59B4B7BE4940CC5875676CA
-EE4A30F059BC59596E693595CC889B2627B3392C5EB267863CB753908FEF7712BA9ADC4B
-E47B18FE8807AFF106669E8EED7E0DC5AEB3DA3FFD8AD8D8B841626B800B5B82292D8A56
-D5E9FA394EB1686C441CE523407401BB4044C4C5BC448888BF122AC6D703AD6333EABC52
-C999312CB3E16FE4FF2FC8859D8662CCD6E35DA8B02BD22E776020C3BDD774E9A24EB72F
-7231F1B9B3A096E4A47AF15B4AAE20946F8358BCAB1D5E3FF566D361508DE82D46038A28
-BC879A9E75016FE30A8AFBCB1F2ABDECB4ABA14CAA2323A5DA6C57A712EC6CAFB1FEDF0C
-235E50B30127F62CF88E77362F6CCA0810E29B35EE5B7BB29920BAF6FFAB5EB3FF5377CD
-A310FBD9AF79001E8583748164CD7C4138DCBA043B67CA3993C385B9F054585517E4F73C
-C5F63F46F78235501F636BA4BB41BD0CA9BCEF79F0CFBFA446E09EF8C6B915AD718CA59D
-B97A78CEA2195C968842C94B36EBA1F3DADE4872E3FD7542D6E477EE9343CE5F801BAE59
-CBE5A2F66DA2177389308B526493A523A9496C7C928F021542A1D6676CB3207979AFD6CE
-2E4B37B3E3621312782607BE9F9598D470564F6C3E502FA2067C1DB36C0928D7491F5119
-72EA2A488D3A4A0BAAAFC021FC89DEBE05D7E992122A5887ABD7C88AAF0B12E3A0E6457D
-E7BDDDAE5C4449AD3D0EBC9B0BA6C5A72C2EF5048238A8595B33F570FE36F1C9A3ADC38A
-1EC604428BECD165520FE81172BBD2DC01EE2A923F88DF8A6CD992DE1875FE3C122B42A8
-2F4CD38D5336DE782586385878CEF7124AF8454C75E92B4AA8786F40B0414497A099F755
-F1BA0AB892066BBE83E472880AD336EA7012100B03D06E9BC9904651AA7F93B107EFF61F
-6A2F7CA20240BF1D3E83B3256398CBECC74F8882E40B3E10C0535ED23A8214E19464082A
-DDF3F590F9CBB75F06820A1DAF1DBBA19CA4D57B7CDB841980BE2E879E8D83E74FBB3EF9
-7D644DFCA51DAD4F342534160CF07F8822082DF31D8A6282711D849DA3F583B32ACB48E3
-0C130028571B9565E61BBF8253E97435F60AC0C91934C5A3FFECA5155B25455D59C18CF4
-66AE7A467EB5799BF2488B1568340F368267625F1ACB7FA34A8E582B0528FDFF256154C2
-F4F2D0F61A03D13A58E01548646D6B4659B4613E83476159E8E597546BD1F7902FD0DFB1
-71390A36A8389E25388391BAE75567201CD1A6225F774AF5E3132222EB969BCE588E1E18
-15BC60934C8E132627D342B1F7D780F9B5DC657A975387202EE08E957F3D123B4C115F71
-CA9CD0A5ED37C7626C8596E9A4DA7FF5A114A85E545F89C3694F3FB28A5224CA6F930538
-9B76D686F13C370887F75F88F50C98974857520DD8806736D034C188403234F1CEC012A1
-17F9DC0B03346D88401DFEA09A28944CBDF75E79EC6B26F204CD6D4F7CF02FB3066E7085
-BC35AD0CF7CF47AF38524C05B13E51A8BECD2B4EB4E9AA3A7FBF08A1E71A61B2ABBBB10B
-714A0E46FFDF3FFEE96BAE962C10B8FD824E700E3ED94FBB1E03AECF77CDF572F623ABF6
-9D1AF511F65408CCCF16BFB2F1A0895D5CF069A78A3ABF523D4053F8A4F6DA0F3C6247A4
-5F2F6F21C964B50EF4615BF41283B6C655E55397A6FBC23249D306151A4E5F57C26AB256
-345B45B3D81AB1AA64C80F09C6000ADE9948C42E03356C0377EE74E17281985B8ACBC958
-EB9289159091E36937DF725063C434D30DADEDC3007066C7302D0B12F8CCCDBAFC57BB30
-261918964E42F08D1345D4018BB1E84E31B0F57210033C0EF479D1ED0AD35CB7178B173C
-6AF59A4824FE5FAA88AA847FF999B3152F7C12F7258F7C5DA155B8BC0F166D9B6AD20188
-3154BFCC9E3B9B267FF8831BFB906C6CBA7D05842E95129D60B562678A322B94BC988601
-E8E32A6C507F02005BB1CB8B220A6903B4F621ECA9FA513FA4ABA25D107A39ADD5D32593
-5D8875831F02E4556E6EF278C01E8A7FFFFCD1D5EB4689A2DD86D291F473120B984218F7
-DBCFD434EAB3EF19D1A67F4EE9D239FBC0BAE239D0C634D29950EEB6FC06F0481A10B225
-7B80E1F0395CCE4C4291A54A5154FF1B0896D2E0CAF112D0E534F014FCD73082FE9E8A67
-ED23FDD4F7C37651FDBEDF999D44D9BD7D57EF6038598BCE94ACC2B6C0BCE60433F834E3
-524E3FA6028B6D5DE7631B10A2BB1C77BAEE351FC7373C175D3878502C2DC5D40596ED3D
-8940052DCDC8EBE7F1853D85B06AF9114FD739E558F0FCA26F3817A990605F9C9807F900
-A18C71248300BCFD22D7857C390431356FA4BF993357647D9A094763D668B7908CA93E2E
-EAB15E34E48B1EAF8082C6FCBA7DA5E9848B33BC59D6B50C9CB5108F3C356A45A854338D
-81881FC425875EC59D361ED95CE99FD7A279A807671C8141A000A5419E8B9549F3617114
-6077CAF18A152CD041F94E113DEE2932F1AD09D55359B7B39F4771F15521DE58C311D143
-AFA24A92D36037968DED5FA71402B34442F9820F31D1C608124C2B50EED276FD06CB04B2
-3D0579FAC4ACD7C674EC5E6527AA352E38B35B14FD647E645CBE09C5D3EBC76D35D02820
-C91A1E422057E99A86EFC9845EBD5735B8F61A957B44C33F7CA9502E08F39E24111E73DD
-7C5BF59212BE06698913B89C221944A9E539B1E79038B3E2D2FC40DC4D9115256D8BEED0
-343FFE190D6242A3054711C86A20E0C4DFE2C270375DBD1009A6ED640D505F25F475E0A4
-DBC0D9840A68F2E657C1AD8AAD7A260AD74DFBDB32B2C6CCA9A49361755DFBC09935041C
-BC531A5924CF763C29DBE8F169BBE77A261B1DFBF1504A04CE7C3EFBC0E36DB1CD256AB7
-F40C272E2C3C217779A2D45E1A33E504A32183552ECB71EB562040C03D276A91590A286D
-2A90E7A292B21AC7FC70082F18903E2B3246A66D95C47F7FA0099524F38018566485DDE1
-4FBB810C07BBBC487546F0C2BB295D1BEC35D797B0A6AE0616ED8465BBF239A46FEFE3F2
-E20F85E3E383C16D6F97044B6E4E80DB26953D609F8AE0FDDC92A41FF2A7EA7744585B51
-27F7D1D756487DF4D75289DC3FB822A16E1A8063D5BD6B2D7201DBF78BF4A34FD17D8133
-F8662DD9704ABE347C405D6111474E69C5F22552E4C6EBAB4A6537B46FA2EFADB55485BE
-A4359C8BE0B2A696BB946E89A5AB3EC81AB9B584E6EC841BCF4192EF82EFCEA357C90039
-3AD2705B9BEBC894E42369F7CDB749E1A174EE4CB77454CE86BAB1B631899C547321C9EE
-0499149D87F3FF59D13335D54177268569DE1AD675BCDB9281C21ADADDF54B32E62B3EA1
-2FC565A670778959ACB4C4A36B6FEB86B174D3FFB0B2617B2A84EA37BA5B4DAE6B7F1DA7
-36C01E446799F135BD5573B086D61B5D902097E93C9460E586BC8C5FB863507F7938B02D
-90EE19C51E00DEFF3764A3483F52777644D3F20C0B99A8807F25FD6080373B09C68B45A7
-BEA9F0731DE751BDF4147C690A9E767DB679A8F51849D094DC1E8209EF159084231610F4
-187ED2875D1E93A2C977C3F1C86614B60F81B31CFCF2086E91C3A09456F376DF76F6F4C5
-6F6D96CA852C7B749255150C5C16453A84B9FADBBF40273B18FF8E61F309B649BE8C8BE3
-75F739C6CABCC9FF39CFAB9997E77507A7EE5D521C769F6A9A03472C51AF83D6682700F3
-9D1114A04992A23768D8547D668A9C1302DFE2A2011E3B0A101ECA1A41A79C2AD80DA863
-CBC5D77DB3FDA136ABFA30603EFB15F99F848F18B2B55D3038E7E7F6B691350D3C0D6766
-4D0849BFE0CE481B1B732326AB02CE44BB2C15122A57D42264349E72BD47BE006DACE8F2
-A0ADAC696138227F9ECFFABC0466C2EB581211CC0A24061CDB43FBF37A4E8BA1434A35E0
-2AF6B5914D493F64328F8590CDCD38169368F805D5B64AC0F4B996ADA8879157AA0EE3EA
-605553CAEFB6D31B01F66016C64F7188556D66F185A29164AAB1ADFC1FFE71934CEC127B
-147F36AF98AA9A7877A7188EE0160EE26705D1AD9B5F86D8B6BEE71C1BA240FC2A903D65
-0C3C69CCCDDF00222CB01141C0F03958D9BD5524D8C31D4554073E2DB0169849487244D2
-2A28987A82DDAA0CD060C8A8740F1A11509152B4602A6D0DDC4456849FE5E402F9ED88E1
-DDF8E5AD854B5FC77575AD955C95BD033D69F4A2D2EA6B6EF587EB16ED3E0F52E7578FC7
-F22324AFB86353B1EA4C51179440F2CC64A37A92BDE6A88B24104CB8EC78C660A40E43E0
-27E0EB69D813A3C29C9C3614E6408532FA474CF9FC5AD498F8335DF4A04BAD633110405E
-EE6A5E40D6BD7E23337B1B623735BC3130720DFD1FD1A86C4A90145EE483728278C48E5A
-CCC333FBE140DDBE0A28168D6B2BDB902491E0340DC052C28FEBB140B85BF1FC4DC35582
-1752E935381556DFE0A1439A0BC810F9527331CA35508E3D0A451B3D285D37A25F1F949B
-9C9ED1BEF8289E5AA1A3BA045CA7CB647F1C1A528D85938E04ACB1E7F08F5ED3D18C9E86
-7AB607E8BACF757C98BB71878979DE3862927977A0CE431174DF24872B21988D6AD35B07
-42C01ECC82FD805CBF22BA02CF596876EE1E135254A8BB6DAEEBB2BFF9911EFD7C3A25B8
-55B95EDAAB6F25A31BB29BDF2B0FC3E0F4479DD96BEF601E4DF77A459B73B69A9C55A87C
-D63851038A7ABCC475BBA0365C4CEF17A742D1371131397AA139032620E16D89B3BB7A1F
-7B018BDC6EC29A8FC02D6C6E943EC1B1A718DB6AC51BD7C5FDCBF2BF792CF9ADCE89D130
-DC5C200FE8625BB13A02F45E06A53B7D186838EEC83906E8298CF83CF5A28EBA36D67F56
-64EC006E350266F7D2C81ED295F572CAA52FCBCA9B605E421DF4E9393D1E775838992B7F
-63BA394188312C75E64F9BF0217E6E31905945D27BACA0693E0660563A0BE2868E22A604
-C901BD00FD8E9088C4255B2583EEC2417AF39CBDB672845EF9BE24901D270059E7EF3C99
-0BDCED89538A8CCFA5A0BEBBEB671720576DD349566E591ED760FBFFEAD66148F05D37E2
-0833FDE02A4E85F2CE08B0E03DCEF68D454E135F8F07BF93724E0B7E0FE769A0AAC5B513
-F4A763347B10B50B88792E1CB3E6E948B75A8835DBCF188436153A2C2B44CB18D8996FEA
-75324C8973D1F0E4A3942E2A05E43B3C4AA46EF7B54039542193CF76CAF775DFB15B31F0
-41AD173F8821FDDBD7275618B37F2693A29C9A990B7BDE96FC532242929F81B1B61025CA
-717236C5D41ABD690EC853317D21B20C2CD6E9701202305CC34F5855934E03F1F58A0D32
-D73602B07ABB1904173E09D799769D7127B665537FD6FCBE10E725CF814B83475FB8E443
-027F490BB8488157A4208D031ED3992E2E0EE89C5E19AE11B16E95452F86B04C3E233A13
-02B300C9A21E2D920B49DB479AD034860B77C8C1279EF314FB4073B6077625270113848F
-BFA4C6D1CC72D3DD8DAB5298D5A5BAF7E832FB36B13875D241286EB56495FA62909539F8
-9D043095F5B32E10F59B8204F0C598FCD78FBAE872D833662FE913E595E3A2073A41CB74
-5AF21AF5790DFC9D3CB011FEEC385B5DCED039630C8BEDF0790C235CF0174F3DF205DFC9
-A621B1A32351499845F888DCA445879AF5871EDD1572FB6B07B52A583A288434502D0333
-FF418B95580F4DE9B2F5BA2906F074AC91F566E5E394AA7695A161D01DEC146BFDE0448D
-E6DD22D7A3C0BE7D02A29EBE15AD1F302299D673379CA3C2E500C573B8F81E0ADE5F59CB
-BB8E0B5EDFFE4797C763D4FF7CE0117EE17E80CAC2A3EE7840C03867DC19B51885FC6ACB
-FC0EC204489CD1A6ECACA8112FC1603C254E40049812D1BA5C561C1224BA56B97FD66DFF
-C43D96FDD510AC6DF46A9C7AB22FDD5E9318C4A5F598E34A3E60989577333E2CF7AF6129
-FAEF2704C1C3B997691E484675D62AFCD81F86A6EF5FA4DAE7D4F690BDA5E35D0C3EAB49
-A377A2A0B6019DDDD8E293738FA7503120A91AE095F613B3F925BB4D433A67090AD6AA88
-37979DC1DBE9FD46CAB54F1D9AB5B9E20CEB07AA93346801BF8EE52977FE36EB1CC51587
-FE57ADAB168CF8A7B95665F65FEC3F3EA5920401402D8D22A3D4000DDCB5D06C5A901430
-865872360B37C1277EA4C31B32C16C9EDCC6162049204A9A028943915A7753F72452ABB9
-901712C494B0E175E27B99F6F34A232A826ABDA15D82D4FD0AD88BA50545A5D9A4E3A90F
-51987EBFFF48CC52D8E7FBF1121DEDE46BCC71F7F3941EE02897013189FD60D9F41C2F3D
-86A0C693DACAA72D68404118DBE5524D07B1D2EFFA1F54EF0D0205FDECE28BB1080F2112
-AD17E04A000C581BDBA02571C412DBC9BDF10FBFDE1CB328239362BB008ED70FE062B84C
-E93030327374F47D62D4740DFD23B3F1FBAEEC619ED18446690E0339D2BCCDCFE3DA5D5A
-215224657F8CB4587553B7344A4CCA78DF1D955679F3C308317D8EC48269D5E1A9917E0C
-46BD6D7284BA185DEC43E31CE9B148CF708C722AB59CE7429617978F678E7B42B6DAFE8D
-CA1690208AF9541B8EF5C8057A459A6D6BB3F0410DD1DAAE469A71B7A416CACE53E775AD
-CA8787E88CEE3F57834B13D46A5DC1215DDFF7668A9CEC79FBBA1964F794F71D7BC2567B
-10AAA3EFBC22781C66B3C89B7973748CC35978F844A5EE16CDD95BD4AF3C6C63C79577A1
-20B893398A583BDEFC646E917250AFE307E1FB053C3A8EFB26CD4F65D58DAE816549C502
-DCEFE24A4DDED6ABC44FDFBEA9A92B2F78F20710997E683F8D9BDB7C603A9204CD90E932
-7ADF5B551419354EF67AFF7225026D2703874F841A034FBCB33267D8794C1C1BB9B26F16
-04BBCEE30D6D2BA30AB3F8E03E0DB4D57190A570686C420FA4775B5F8D984C4C7505DF4D
-309ED3BF16BB32B62241928BB3D978E10CEEC6AA72A00F786AC72F6ADC5E1BF1A234B6E2
-06FD0F6DB21BBB5D0D800BC43197CEBAE8AF770BBFAD4E41488AE5A8283EBD2E58BB4BC4
-5DBAE530D05418381BB610F5AD1AC375681618A7913CEFDB93815EAD3006729FD89DF4B2
-39E5DE1DCCB4BEC942EDBFCCC34C46704F5B31BEECC45558BD2E2DF554E6130112161BDA
-86C779B47D9E79EE1A6C41A722F1C8710C5470F02B98B6A102A962E456827E7A8E9C2527
-5F9EF9B0D3420A3CF1F96B798CE32F47C076A1973AA532ED91B44B6627D5ECDB94E488CC
-A0E54247BD99B1035769E7DCBC91BA655EBC0576E42738B7BAF5F7A19EFFFB78E0DD567B
-51C9064ACCF00AA9D6AA5F8EE73AC3FDDC1F501DC67D9257629C767B9AE582A1BBEE8C0C
-1B4BA4D5830FDC6C3A3D164EC1B30B8EA721ECDE61AECAF5DEDE7CE02F336A22E302D711
-AC6B83152A1B41C67A5D3EF767153F5FB882D0448B39B8507ECEEA86CE74EAACC8AC3E78
-E20FB23FD92C81D2EBD9014530F0AEED1595039D94AD48CCA8BE1C77233A9AC19CAF5A45
-CE5E96C5B2A962E8DC39339A2B10975C18C5B6162226221AD8BB4307F64E2B2C4F01FDF3
-1A6DC4966C9D6D2E3D5E92F0D21DF7779E35404C97B632DFF66716FBF8993294CA6B09BA
-8F7F840DAC99DF3D75413A0F417416C7FEC264D6CC58355B1290692666A47E47F0BA3CFF
-5DBC8EE2F4FA068D8059C1CF153C65BAEEC4F8196600B9D5C09DA14C8D5F87D88FC7DFEF
-B797D33E292D4A6201AC0DFA4B50285805501F3AF1E2A48C3493FE2DB06589B0C045B0BE
-5A2C5601F2F4644E6FBA9263BAEC6008760AD7833187540BDE0DA3EC762393EA778DF052
-BB978B708C7A2DAC5D62B2B4BC6EDA8DE77E548366C34411463BF5DACFAB701D0F64E937
-F5188E46151F8D47932243856F3727904404BD99EFC5F0AC5DD895CFD4067B7F338E2DF2
-BA69A84D26FCA6DA0ADF101669B9B502DA75D202F863D2AB8F821937F180352211F24835
-707B5D821DD71A74E4B9562370F2C61A228FA42F12983E32C15B13AF9F2D59CFE9FFE1D2
-4412F40E1BC6D90E8D943DFB8D5A36EFBDC7836025D6193A8B7AFDBA1EC3455F2EC95A6C
-BCADD64C7D41322C98479EFF511BD4BD70C06EAED0DEFFA2790649282EDCC5F3ECFBB70E
-7D62E1184DF3A46B154DD1AED7BA74CA7841DE08B4DB92DCF4F1C2EA54738F2BBD8A7B70
-0EC21D05AC8650A7F1802EF604A9DE97E8BCA273D26D97972ED752E3E9CA7D3FC11AF401
-D01398DEF5206AA94D0A79DE65F02C3E9A02C2DEAA900017DB7C0AD39F93BC2EB27F2E64
-3BF0FA8AE458C73B62B7709AB58D8AF25511B5C3FFDC5F45C4DF09400AB5E69054AB6BAE
-57D427BFC6A6A65DCAC262E99797304D660B672E72BF8BEC5FCFD074A5D1E949634D1DDD
-3399A80D693E3494DE56E1D0CCDD217FC6C6A2F4D6ECB7E3636E438ACD4E6B7166B27342
-2298824C5C547423EEBAA5FAFF2FF810A73C2BCC057F7FA1E96F21D665D377F727CA2FB8
-93307ADB216DB69824B72312242DE1105C4D7B048476E64C71F4C4659F084916660CD035
-85B922CB2EB7FE0E940A7A122313A85E0AAAA7A2699B4D1227D8A2F8F59B8FA5F6CFB63B
-7ED2F9AAEFB6A71D186815A0CE5816A787E25288A9CCBCFA886423F776DE6C09B17858FF
-CDBB8A52CD54BDDA98CE2BBE25849A2B4B113B6B7044431419512A00CBC8E5703E5A4A1F
-954BABB0CA465884524BD70CE67D6FC9E2BD7E0615DF712866788A17AF26D842CEDC9EEB
-B0A3061963958B9140BE41E74B7893265FAA57FE53140658DC931F0B897D0E857AE3A337
-F04D884ABE8D8E1DF1632DCFC2BB65E4BB2791B215957D5EDAD04A4D1F4372414D26CD68
-3CD89B893EF0CA895C2D36FF87A1CFB2E9F1A628CD59432046022B3E44BF2B5D5DE76F51
-5165FC2EBB07FBB23F262C07066D215DC73EDF780FFBC54502E57C69DDFC77D9896D3824
-D4749482FDBDEB40058FBF293BBEDC8C7AAFACCBEB160334D29AA7F61F34B929F020F8FF
-17CE610B0E0D1823DF605B2E145C9E78AF8396E4AFB267C7679ACB0B7BCA258F7AEFBDA5
-E49F3C3A17F0290F9DC6C5F51F193E2DB779CF8081C733BA0D7FFBB9EA3A2FE3ABFB4782
-B2510CA124ADFE0BFBA82C46A0BFC430C2CFBFE41DC3DFC070FA9DB38F0D33982127C8CF
-74AF1001B096849C8A518B6CA05445858EF78DE8B3B6F3019CEC8E10775EF9842DCB56AF
-982AB270C89644AA55B486BCD8616B440105FA6C34298422C994EF6C30C1574ADEBC0F43
-85029231FF5FA84AAEFAD31442120059A7A1D24BB44D14844A039F366ABCA742A6279402
-7B53DD4431B167F07AC0EFC75ED8545431371D5FEEF2E51649D1AC862FD5E8C18ED86FC9
-9639B861D2B502A2B5F75062891ACAD88D39729CE2CB515DF3C49413A974476A515E3F15
-E071A6A82D5A51036FABDCFF62659D0B54DC1B9E68945E87A4CFC0E4D285D23BD9583126
-4D2B4E4515A7B34F83A077F848306AD71CDB2B5E6F701DF84AC82CE1096B987E2DA09727
-CBD0DACE976AB94EE6B133C09B787C80F275DA36605CF5955FC706A332E3140B43AF9C02
-9C23C489C5C15F77F076C6A21DF7B91E9249E93854406CDCF2EAA68DEA68BABDF5AFB702
-CD9457BC4FDEC0251834A5FE1EBC40D1C8F21C3C56B2558E1EBA3AFD3E0B53AC7793E078
-73F8A219C6057DBF6BC066367D953F44EBCE2704D2258344AD65CA865CAC50085E5E321F
-B66E4404028E313876B65E5CCE58DDECD17DE76874030B63B267639147EBDA692745AE09
-775C4CC4C0B44469A01BA55B87913D834952541CC527D6D24238A5CAA83CDEAC1D7B5449
-7B6F9F57E0AEBCC7EE2DF0CECCFFC7FDB46DE41FA6E6D41AEC58E9A2CF359F9762ADC653
-5C52FE93E9FFE3225887009B596AC2B29336E0EEFF29738D4181D339F0FBEF72D29C750D
-FE1318CA42C5393D639E7650AB689225BCE2072C88526B9AF5B970CAAB8331D89B888345
-BC5E839314B671E70CD895F56D945E8584A7A956EF105BCEC436117D4BDB3791A741B7BB
-5B2F0033241EC02B40B75BBAA4C99D5F48FB370569C6E42B8747476E405B9D683D2FAADC
-7C4A02FCB91C654F47C80AFFEE61D2310619E72C36695090BBBBFB5E0B7169B96BDBC9EC
-4E8AD00B36B4FBB0B849CC04675277733D2FEF6A6EE9C83BE4900D02B95B516DD10A53FF
-4431B3BE8C68AE823BA121DBC6C22470BEAE5AF5441CA8208D3DBBC3C444704E7644F8C6
-11B0890325648B2EC17FBAE41012E7D49566E5016D94336D4C701DE2805AA001E79C9032
-C64838049D8D065A171C11F06BE58A478B9299B3A517C73CE84EF38D07F291EDE3535CB8
-D769308C2252C63839CCAC3BC9E8A24E871D90398F3187E3557E40A24FB1C61FCA55BB70
-5EC3B1ADE33F0C6340338B197654B373EF588D43E710869321FCCE8A00596981C49B185C
-DA92F64E0A65CD32D9448491EEEF78E4F410806EF4D6DC5F7804E99B87E640CFC46B6975
-AD18A05C470D233D23A20B4F85E8E008301D9763C4CB53A6CB6F380A439DDF64E4F69367
-446A0B57A0E98A6ADD0CF0CAEEC82BDEA2D130AA246EA0E4FA2E8DBB4459D5FFDFD7798F
-842CA8BC7458DDAE4C28FF65568617C25E0CE82CE644B3F6445C7408E257FA1791199F5E
-711023E5BC7E5AB961E867B06B83418954EF9A59EAC6566D572B4E97B5C6750A49636929
-562C6E0E2737F5B9BC06EBEF9FE62D9CF4FA509A42D192482B878757B319F886FA9EEF7A
-563DE61A0BABBD76B9A9FC2009A9049FC6662C32434B6C8F4E410C2F5A146EB951D25138
-47D03A64A453B748A14D2A2FC9AE56A9585F1E6725ECFAAB26E99418F8F2F944AFFF32D8
-AFED5E292F40728B8804D91737AA9CDC05485F9F7031841B12F431355EA522C674101B83
-09CF71D8D27477286DC05428F7E8443EC7E4471CF97ABB18753524A79A1B331CAB1E3FE3
-6D19BFE3724777670FA07CAA0A501E1B5524E62C15D0B888414300EAB0DEA137D43A0B70
-FB6563163E0AE68D160B96B4A71817DCBD24BDD8FAD76ED2ACF5E0CE1DBB5AD9A1AD4B98
-997987FBB15346F93053314D53CF4BA6A9FC6B3EEC4E5DE20393D00A6D69FD55B98E3045
-C27469B46C39C40B0F5BF53DC1142AF67212F469FE7F7334A39CF19443C1243FAF6B05AD
-1FDC50457F06D14F119EC724269EAC946793DA2CFF0C1AE736320C5F01B51F2780277D4F
-A77680C81BCB7FA34A8F4F63F07CC619DB4BA4AE94420E532E6D06558D8B0D9299DF88E5
-479F1C82178C7FDB90830CEAB719A0EC4DA5E66DE2D4B97F11113E0DDA557353222E6329
-8F21D925AEE6FAF6121AD7F2E7F805F88901E53E353152729A737C197937EF857257BC70
-0890EABC66A8DDD6F4636DF744612B2E744BCA5D376D2CE87993132742B66FEA1AA5A4D1
-0A5DB79DC3EC04D88B5B5CCC988AD647B7719AFF1F2FDC55B7DD113655F19E6D47D2CFD7
-B2BDF4FD564A6798D3696B5BAD5F7A3E8609B9D9D0DDC4F32F2798052ECF1EF3793B16C1
-F489004AB008CA729064EA7193D2AAFFA934AC2DE6CB00FFC86A54B11426A97A5E161899
-4DD7FD85144308CC4C376272E86849BDB4351A9CB9BAC62C53FF3D06580CD2CAC229FDAC
-CF8BABD15E1D7D81A2388597FCF2508AF5F8D189B5E5A86441E73002DCE94CF0DD953575
-470ED6D6AD57F62FAB4EEA0EE65C5C2FFB9FCFD5F850DEF261314A155A18AAD1B47EAB24
-FB7C0408B1C3DC80C6FF2D6CAA3348BF792803DDBD9258C694FA9A4FEB1D3BE1E22562D9
-46D3BF713B8ECC1532BACC2ACA978761621A122252F5CF0A658C06EFFD96B39B7EAA7C0C
-E691FFE170A91871B6DED3BAB734E733ADC503B5AF97D595247FA80B81AF8ED77F99B192
-0731917779642446DA30FC7DD5A5661F9268302D2B812D750A3F144C89038A6F573B0C62
-EC227C3C5970D8EA34781CF49E56E1ADF0743CE23940279CCDD27AFB7BB7B740F579D9FA
-B7BF912D52F35DFAA22B7D182C022E2FAB7BD0D90F7B6A03D0D6EBA225C70E07CC00F2A4
-599DC63A9218C17AB08927C0AFE57C6D3F0E7E2240A8E0C3CC6CD9854BE51B7F69040BB4
-ADEF206D2110DD52D5746D0085D583E67DF440125C26EB27BB8EC054A2AFEAAAB3139B53
-653E4C82D085D35BE137B6E30FA4C81EB3F968B12B2F4DB0AC653BB3E13BCBD9994C47DD
-99727A7BB5908BFAACCA7EDEC566AB58DEE6B4CA521699CB6C3C7460440A522145347A0B
-9B572D96702B497B8F9C3EE612B3445781F3FA7AAC78DA64950EFAF975623382BB6FF724
-3B1078C354E6F4CFE12BB8F374100D8E9033460B5911D4A18BAEE611272EB961EDABF97F
-F350744757DA2435292D03C54CBA103EB72626EC2680077B5DA99E248BC7581F791F157D
-0F0A359070827288F6961A8B42F98C948AAEE02CA29166EBED6F41CC2B14274CC8CBE8BE
-70EACDEF5DED806EBEF4FDB794A1A9EF45E6BB01183CC4058DD5D6BF33CB6A195DC97AAB
-72DAAA73A8922281DAEFEE6EFBE9E66F1B4C6D5A72830D9CBDAF7CC287ABB0753DBA936A
-B515518C6C121E52BD84359EC983A7DEC5E395DBECDD837788A01387CA0CA84F6984A9DA
-4D93CB543AA1101AF32021F2D2530300C6A16C7B27FC6D98E8E192AD089E9D10F10243A0
-1403222518D2B80A79360F81472FBAAFF0348BD16D8AD6888CF4971C2B61A8DA0A469009
-45F508DF6DE8F7A061EE437A227887D1C24BF05EA03A0B79CED06821B6A53F8275C885E9
-F5891E8DFFE67F22BDFE05507F478C90D8A90424097FA970E2B5C88820520C79AD9B539A
-A10EF6701499CB72F33021E5066D86EF1B2AEE8165CAC5A97E3C20E24229C072A41B515D
-3B1AD941352CA33927D63A7B0065AA432994EF31520C80F4FA3E68CA9CA548AAD31A64E8
-D383F59BFEBC0288E76332EDF7DCEDBABB3E068DF02D19FD7D0FDAD1BE7EF4947524554E
-EA87550C141BF3EA6A20FF4834D2044AC7733FFCBF34EE678ACA19A3A8FE3D943C2B3505
-242111C2B6307A00989A20E8CB7E4267AECDC4E6F5F9CD70568C5AA8A4E899E404C7CEED
-9989C788AFE029340B6A3D6376476181D19844598ED5CCF1AD2CF4A676FBFD17C0EF5BE4
-66CBA814647C2E0B5A2D85F3D3C8C16242848ACC70063D67918F800424305F2140A76BE5
-AC8A5CE0E32E26618F308EA578CDCB1CFED7CD12AFEABC6F6A236BE927BD11AD0A961943
-56C174C7881373770078D3D9BDF23CB838C5D64F923EC5831B791D5604931A8834AA6D95
-A79FC44C7DFC090CBBCB177A42A22E6897CE9376D17FE945E1E813AA473CC1530A7A834D
-0EC298E73517624640BB35203A089D9483D047A87CA2646DBD18EB02BB9F0EE711FA83BB
-BE07B54F1B7AFF9F36575BA99F81F75326F59D9EE26D4E4F642004285B6BAF192396F4C7
-731C5504593DF687B274EF80F27105F4569AF2EF4C5C5E88D476A73EC4444ABAD8E9AB3F
-950C9CF21BD78ACE310C328F988CF22A7EC165E724DDA3F25D403B28A1B61F668C013524
-32458C657E8FA6CBD2E6E91106AF5B9C8EE170FD1FB323404E4101CC134FE8F0887AEEF2
-3013CCFDFFDCFD5FF60897B720A00204E8544F51735C976EC497BDDC085BD209F756C77E
-296716650CC169558746490D024BD14FA54EB4E0CB75E8E91FA2E256F3DB4844308C7998
-A0EFE04FC6B14B73A43AE16D586C6683520A82286BA58D24ECEC212CDD93D2810EB4856B
-13D432AA6CDF05600A12C7FEAF7B990E9E8CBB8AAE023FCBDF953180AF6913D0DE5B8660
-E23AC2B170320467ADC89CD584E9A366F063ACDFD5FD44E5BAB3B7167254ECFB222AB3FF
-2187E43CBA6FB705317EE5DAA8D9F5DB83957CD64508A61EDA6B5D5BDEEFB2C6214DD059
-8AF10A03A486022A8DB111374E8442CA13D467BE84BB1001E7B9DBCAF50F767330FD3F62
-A310CDF232600D7DFAD998A0EA10EFFC49A702347E6C23BE9027C2BDE2E9A14CD55788CB
-0C8B4891930AE2BB346CAC0A2CA7C904D2343316A6F4202E22D4E448049B18EBE76FE3D9
-7EC95EC99264B6F938108A36CDC5C4D7DB364F89E9371EABC18B1CE08CE519BB2C4973DC
-4C0ECA366D8C6CC07A2DD320B997D5987297B330703D2A2DFE33EFAE86200B750D1A2D2F
-762E43A94523A2136492B440F6551374F3591FCE4D37F7C192C592133B3315D3435A9DF0
-F2F3F621ADCDF53F9CEB8E7B332E701AFFF13641C88DF71858352BA45506D267877FDD8E
-BEE4E80EBF692631C7C7133012E4CA6082B90533BE3082C34084385CD16C7A4B7123EDFB
-66EE5F20C2C66226542B98B437C6925E7CB65C02F4C659DAB78FC4ED155C312DBCD5BC7A
-F588D049D52655E57D3964D3BB713C6F7B33296292BB6273D626EFDB0CC6E0D346F8383F
-315C275FC9FE745C9CC2416F3E1B896CE9D4621E0B1798959434E380E5672C9301474FE5
-C50B8344DC9BAD4ED7A57F965ECB1F9DBE601D2967701D4C083529B6DE730D9940D03381
-EFCD0F2E5632CD6948F1C7D3B624A248786D69E581B916263DF67B7AD6C34F034B3F48E4
-D26F64BBAD4B57E5E3E4B11BBE3EADF529E0473547DFA0781ABACA0F03AEAE3C14884A2B
-47AEFD5174D2A5F45530A8C9A0B7C66DCA9CCB84AD031574B6D3FC3E6F1B0D794D061CC3
-3FBF13B5CFC934C0561396DC77DC2AA6FE3AB54B6215EE21A65582A8A9585AFA2CAF8194
-B3B887EA4C7F71696F93642371258BDD862C0CF23B819B194777DA8503A584CB26B849F9
-5CF461F3321BBCCBCA5DFCB054837FB3C288ACC2F394158F2263A8D4956ED155081F1A93
-B5180BFB3B694BFFD214C63D1CC0AC82521BA89EFE47A573D8FADF7C7B31CC98ACB47E9A
-517CD04C18F8A8116592704192274FA9D817D49AFF1BF2EDA8273B04A86E308F51336DA5
-FC70705D6142F000986593A7BBD524A4A03F5A1831E7434B0700B89EC3D45BFC3CBE0841
-06E053FB46BED0AE359A76CFB808CCB22DE78B1A88415AC79249BA9F9BC5BE2C3041DAE1
-9F6B46545F534821E0BF703A6AC49F4DF2D24A4A90AED84C71F87799BCC37ED9FEADEF35
-97ABB6D731757C04C00002C40F34DA0F35E39F6330A1651F89C321627DF1D1289C1C6782
-35D205CDBDE6BE95F64A2510AD7CE06D51BFB98E7AEAAAD4E2AC15E631BF136E4082B01E
-409BD78C495C88D3B62E3112B7B72268C4B1BF55E4FF2EB726ACD3A99148B0D0DC516294
-1E9B8C97C861AD1551703D9B1B17D1613F8BA6917B319BC2910728C5B46EF2CF9E1A06E3
-645C52A5D4F72494C1C18F858D211D2EE721FE457969D9A9BAECB4A0058780025142153E
-9B94CF1B20B717D5F9AC5BA9271B4CD61628402FC3883ED1D43BB2EE931614D871E7814E
-5ECC895E6CD9BB8A27F55004E7BB3E4A09B1D9C5D6B49140BA231B867F68F3A3C9981BF3
-9D9BCDDDB6330C8329FD52B1F1B6A7E392AD3EAA4D8E63BF3A895365FFAF54F297126CA6
-3FC07DB3763E7D2B79D2974BD0A380AAB25DB48F06BED0CD275640E5759C966A22E2437C
-11E92131BDDA040BAEDA876D8861FC551F32591621A14BE6EEA790B77752FA636B8A627F
-51428CD373F2ECC19DC714100A200E098E262FCDDCA6328A18B060219FF495AD46AB95DB
-2E33D5A697E5D25CB5F0FCF988D62C9AC53E415735BF0DFFDEE23ECA22528B3D66DFF37C
-77EDA16945BC694775901CFA106809ED3B59312B4A1023AB13738FF47921A0601D0A56A7
-4FB9F6B73F1564EFA5F2A31DB04365A577A1D9DF9FFFE6A4692E2ABF7DA3876BA90B7FB3
-168962EB38E03DC5E06E1633947848968BD649CE9B3064CDD5F88477195EDD4018F60FB3
-D2BA8190C9B2165FB5DB5AD79240CFBA8D4B2DC061F5392759EA162CE0FBDAB3D8EC991D
-3238D835F27F6440F50942305538B3EB8B4C9CB46ADC7A0DEF82807C277B9CDAEB65B874
-1E3CCA532A619367426CAAFADE5756F0C22E6FBA7CA826E663ED6716308482C957703BA0
-FD4322B105202352E9091B44793A849E17B9D4931D7E4FFBAAFF32D1705FF5D82A878139
-0B5CBB1E5E00A02E80C299CC3C9612FFC9AE200C4F4B919E958039D4628480A7A0279EAA
-DD0D28BD5E1D07BC18D66FA86EC9843665066045DC5DEE15146D9B4CEC6B0CA6EC946967
-3A464C46BCFF5451383B65B62D348907887BDD77931996B56645F118E9392215662998D8
-51AE73BC084FF9931D22E5012F6D18ABF618DFB01CFCBFE1A2C53B61B84D3B85A5D04196
-FC8A0E507A87560ECB8E2DB3CA84A2C97AFEE1005F6A44E00E3924527B1FCB8A3954C746
-D6F0E4266940814355AB8B57D3AB85A89EFFD1E384FD8E832E6A846D6B8DAF0C99C3803C
-F9BC1CC4A1B611DB8B3B3F1763F6BB877952ADE48CD9BEDEF049137CC2F0D859CB4EB075
-2A1E581D835921533C868480469430E3AE90B9C965B4130B20E22A060A182827628CFA56
-FBED3BE7A4C078E939BD9F79D1A51017DB08B27472B813B5D94CE9CEDCEF61AD4AC1DFA2
-37261EB3360CAA70EB0AEBB1777928B2199791EB0F4E0DA70F0A59DDB0B7FBD49AEF255C
-BF51C0F35AE0A242100AB96E0A2B51F82D5413FA7AA2C603F913066AB8AC55FD474829EE
-82E5DBC360130AF5FAE5EE9159B5E09ECE9678DE75A50F49EA5C24FEA536658D48417F7B
-5DC4737FAF73D41EA93B3889B9FE272D79788E337120691A76D0820E24F5657DF5CF2BA4
-BCE1799E533A991BC20CC52CEF9142186FBFB77E214A4311A243CFB5AD566995DE9CF7C4
-06D4235FA3ADE98D6C6CF3DAA3AF13106D38C4FBA7DD764FA38225DC7C41BEA8E87F6013
-8D320F004E832F52EE5D716F21C47ED0BE801523BB94D9691B393704380A58722C70E0CB
-F70EAAF9B5CABA0D298A0152E246CF19A63DDFCE9D45E691EBD404B4EF6F14B3AB70329C
-286C3CF24CED4D7591E4FC548ECB3B7864677028CD1073C949F6E334E528D62EB1EF23CD
-E94DBB71E289FD419A9D51579BEE2F1E66C0EDBD29A32859F1E5CAB29264EC3D6AD03E0B
-7BCA83FE20945CA48A4BF76C1F89B747DDD06BD000373561D123AB04AF26D1A785AB792A
-95ECEA3DC6F5E36A143204A17492A6C3C9F974D73919F4830BC2ADF839B83753C3C58011
-BA6975CEE5655357AA6981C18EAB50DD25E4956D2912BDC0B401BF8E3E719D34D4543E00
-6570D7F59EE1E6E683B53B0DB9A8DD3C188FBF57C719C8E1A35EB957151D5CA1208DC55F
-F81AE455B267013FE1515015206F1DA5E7F9F56C1F0A2FE55C1724CDE3E00C9FD055F198
-ED0E75DABCBCA26D558C90BEBAEF6F67D9DBE1758FA9C67FD49528CFA39AA21A4CB6D797
-C5E81AAAEADA6E7EC773F9C5ED0D2B0E722BBC8D449F5692E6FD2E90EB3673648EC34907
-8D99E469FEC7D6F63606E607BF946C78C1347CE1CF45DF42036AF0DEBA6AB19ECF358DD8
-C691742D3A0FB495C0947C3528B0AF579C16598750E475F169C1A36E8DCB33D2151CBE14
-52496F4F9414BC8EFFEB38D22714D2388B56035A4D431EF4D07D126CA898324F2BE44E42
-BDD930AD74363F011B2EA953CA48A7065C5E21B0B0E9C87FEDCFCA17AB6DEE77B167F31F
-6E157B289EDC38F47D836250303B7A6662825E184A464B3B6BAF6A31627EEC2E932E617B
-16806DAF25E7A6CEB17E89C602FBB0191592BDC0244293F46E0E698281FA9B697EA945FD
-9063410A495A75AF971B7F50331D3FE964B3B2E7C6EA890198D4AB7D515F58936D7104AB
-67013017B699EB3F3DF5F49744076536B951160156CB7F9D64B035C6BF0C3119ABACE506
-F15605840976E567A1ABA8B94B3B956A2982806AA50413B5F89514E0B065A6710FCF6173
-5C91FA417686324F69A98BD4EF2B0EB1A3CE20DEBAF35E592CFC68CB3F1640B91D20D415
-08DFC28FC3AD0143A8EB9BCDCD2D2BB45844D387845FEC9A6C9E26F495573F7435B6C62E
-93DAC158FFDB41A137F5DAF1F8FA134C26A1A40BCB646E26A513C76A6EB07B559522863A
-6373062B7C033FB23364CD9540C146CC7D0C1F33A137E5BE097F7FDE6281EB9B9C2F8203
-6DC40494242533C561CF736393C54CA3306FB4974FD76685D26BFA885CAF41AEE3B4230F
-DF98BA4EC7646D3F25A8A337C557E4AD260C6246EECDBCF0BED340BFAE2A0BE007640D51
-A583D0747A5F354406DF9D3544CEE1A8E45E0C3ED5B5727171DE29E75ED1E06E4B878C08
-1EA5AF1FBC2CEEF821380656867929E482C13FE6D3FCECA67CC16450E0BDDC5996D7B281
-7E15F29F94780F3E4561A3F0D53DCAD7295D68013E2A12F73E2887F500C5C40497802B5C
-69FE8CA2F4EBEC94CEF708EB00D4E44C73741A432687036ADDD9021FC35ED215E742BA4C
-D8093F29B90132352A60AA49F1A6351C80D63BFCDD2C4E136F18D605FC406EEBD81FF609
-F396669F082D83B9E1C9573A21C8BFF715FA8401CD7B5DF1BB56C709A32AA27DA08F2BFC
-4CC9D74491D7452C51C19D585407E97414FF616B8EB4FDB31672B93EF09B1478907D3B22
-8AFC23A38B48E0B1AEED91089548C135CF3BE546F737BBDAF3A3DB727B8AEED13A2CE344
-56ECCE70D653AEBF7B71EAC15074263FB58C10985830EAEE832E65609A6651374DFFB88A
-CFD2FA6BB43ACAE247BBD826E54B6F6AB6DDFF4A51F5DCA90062BD3E033AC713FB95862B
-540B9EF93991984FB86936A0841FD6491989B55980D917A53663A63952B9CCB826ADAB9B
-DC71EAE0BD3B580E767F7CDAD1E0EE09C9A5F015610FF572B4778D19260E5C5154AEB615
-F494F6905F04B1420E9C4531A7F6A8840E79A83AA20DC7BC86C9F51B0D10F6F0DA001852
-FDFFB7E60D675CEEAD92F73756A91D67A760145DC0EF8565833F84C50D0E17A3A1F33676
-E467012444D09186160B317F0D6063194E46E5A484CEF017C919D3E063AE2E79171D937B
-1536CA40EC4E4C71FB24CC038B20CE25504189986C5195E7C89D71DA60F40C8E34BD62EE
-44018745746F174D3E30E8F2AC3CB4165474B456A8E4BD62244C4698B6C18630122561F4
-6A5776B7961FE532C7DCCED058CDF95197466C2D6B5ADCC3A2BB6487B5DFFF6E95612798
-18FB8D213AF93B346458431C42C697F3E98EF51A234B8D717718B7EC360F181BCCA72A74
-C99FC0BE536FBC7F71B32AC4F85035EAC720C49C03CAC855FA49D1BEEF2799B86D21F3DE
-5F3BA47568811A2909D19CB06A3B62A285744DDAD31745AC58AB7D9BBFDAFF5E86EF4806
-5BA5BA3E78F6B85DED5261177F0B7D20B03ED496B3957A34A4ED1D493FF084653D014BE4
-1DEA598AD3EE6907A53828B49DF06C3BF1CEF5AB6946BF2E56D646077AFA325482FF16F7
-93656A895E24CB4263E382CDE6D67C5506FA7E0BD0B20BDFE0766803BC9DF615E456FCA4
-8BC2E2AD6E4348414F748F031E23854AE6FC92650A55DE479AFAD409836481881C04729F
-DC49DF2D9FC46D2BFB3B68DA59CED1280D0A97C7BFFFEBFC72E9BBED16C24B734343C111
-4A999791D052352ED194974774876A84B7B9339B85E6566B1C721A535A378AF89D834374
-78DAA191261D4C83E12F372EB245CBB39AF956E9A28289BDA6399BD2390618BCF9AC4EDD
-18CAA6EA6AF116C9560FA860C615467195720014657D4767D70F6817979FEED7A181CCAB
-AF11554132B382423713EA8F05092EB14DFF6F06E1A813BBC84091E76038D6E3DA10DCFF
-81E750DAAA2BF7BB75C4B1A3347DC8436E47D1B9780DA48842492B86E7D9DD848E1E8F62
-4BA0B054DBBE5328F208952E19707BDC6012F04A475D47D8C7EB6A64C2AFAE3A363CAD97
-936DF3D6347D8CF1862818495A6836AE1343272EB8F34BB4C3F9B0A631E922C920446DA8
-34E9C2F3551BF71677176A1F414188645F43BAD39FBC3453265C05EAF83C3F8B85CB80B4
-B3B5AC99B901E6E2C9A1C065848A814033FA6D5551954D4B36BE89E01C1CD16949005298
-CDA21D4BA36577A9784DAA57DFDFD0621EAEE192200CD5932A18442B6E925280A7B52D2E
-8C7116DC0CAE26B92A9A81B5B6B62836E3857CD38F2F5AB075E642760C0B442725756915
-413B2636001AC3D87FBFABC43D6EDD8D111B01942EB7FA47D71AA4520026FB22834DF914
-791FDB207DF0897D89A0057B2BA1DBDDDDE182DD14C85EF10D35F6ED8CD2398171EE25C7
-9C54D90C059A566A0936B8716CA905803FBD950BC4595D9F4CB59C37574AAE4055D5B472
-DE1E6DD3A7C58CED64FFE344AF8B8698F8F1D2FBFEAAEA7F136EA0044472CDE262C7FC8A
-0416A868086A5A9A2669B7C6B97482C570FB3192255D5DA008C9E13D1F5A4A3EDB7A5C35
-F71797DAC5B5F32A5C03C429198D56BC5B8BBFBF890C6A29A4DF397B2863B75FFD8DA751
-95F747DFC65379BA575CFE55A02C589CC8E62B8A8623FCC135E90ABD9900782B42378CA2
-C55BFCEED08EBCACB61C53C5678787DC29D2455EC3A379C1ECA2707DD3E8C008E26C42E6
-C48C8E3B9E0F667C541B963313F4FEF02BD67EFEFC63A1A0093A95F15FD139398A4CAC17
-83471AC10E3598688E1A6E261AE763A28C58E8A5B9CE4DD7B8971764340B9862AF36C89D
-F6708F535653BA9CE2711624A646B1D1BE8AB250275A1718841830BFABA2A900AD276D4D
-592A5D7164C6A7B00A62B08C7F27ACBC78C91E91298AA4B56D090B0A8546549B2BD2E3BB
-6FB39B6CDC7EBFB5798FC9589DD707C01842E40FFD597F2BB1B3EE4408F9D38600804C82
-2ABEEDAD6AA6EA75BAEF32E3C33CDA01847303D9C142140FA1B6E71E2BD3C78F5ABEC001
-66B2D689A8C4B0A7A1C32F3AB9DE8CEB7D20B59524656606DB340F4B7727FB35D2176112
-F91C3AABAC27DE231F74AEE1F6CDB49E2844F40F5F01FC9E96465FAD1D10E1A921D81F9B
-3F13CF82DC97DEE3462F58797B21E6DE4279A153669FE49D78CFEA9835D5A85ADE360B6B
-4EBA9BB8E9FF8AFD2287EE69877FC6C5593A69114EB174AD40F150282B1939D8A3BCFDF9
-74A8864679AFA7619D7EF1F347AD39E2899DDA9EA99E112D15E809E899A2294CC42F4EC1
-251631ED566907E1947F95ED61DD306F67BE79407AF36F34DAECABF7057555BDBE1DF645
-433F5DC42894C3CCF54D21C17B64FBDDB881A2C27765017B51BFA8147BF24157E7CE1314
-79D5C001348767CF1E82A9A43BECDF2F173A42292C8145FDB705CCEFD9ED6CC945A4CB6F
-6DAF4DDECB1DEBB0ABD084011D033F0A06F66D9E2C40DACDC790BD663A2436F50B3A91BB
-27B40F6B05B4D84169CA16CA7C7E609957A918BD60284C78DA035DC6215AA76115F0FAF5
-4C90315EB8A8F3FF25734F79300F0E676D06836B5FD19BED6CC7DF74548575820A735D25
-89F676D0129D8A44EB47AC1B673657EFDCE874541E2179437B9393978525FBB93A1CDB32
-1D1E47B3B6FDE0924CAD789284CE6F18837E89CD0E1739CEDA90AF44ADA49DB336934144
-D8BED19D5090A3E79B6A96E303A45E0DF44E795A08E1B5612BD05BE52E0508D60E5979ED
-B9BB44EB5851737FD5660B71661FC76DB3F9347FD7CFDD2E9C23AC26F805AD8E70A52F73
-B11DE295E3285A08BBEDFBD62C67A540400A01D6FD969896C8D5C46C7093646E530824E2
-C9DFF21E870EEF04CABCB2F62EAC60C1B62CE5403A1B5620DF7A3065B44C7D28366AC821
-86E49974DBA9CAD1249E3EDD876981C595BAC7D05F18D6430F31B96879DFE16021590211
-9F228B03E1378D8E9F7080D517F8C668CC27A9A60F74134827F37CC38C65E577D1DCEEDF
-2A207906E90A51A72AC31C4431BBB18242DE354DCAF50978E619E8A06CA801937B522396
-AD588A1FDEB567116CDFF51876FA3640027CE40CBE18D9423F05EDA77E876433F496FF70
-0D89FD7B47B848C5336C80A5EC644FEDB3F4A9EA02AA43A6EEFCDD27762051D2DE2DA02F
-A03CD491478948B3039FD532751EA70F56C254893A034971CA7F65BFF5662D4A61AF91BF
-752BAB772A556644F711EEF61958DA954494C50941CE83C6B7B6B2859AE7E9754FABA903
-35437EFE4C7B2B36B99251E0C8122A16E4F9C883DC4CD72B5E2A854622B73E6E3C4DA098
-1B208CBCEF104F5777F2BAF65746B7EC51F3C51AD38A12089E4971BAED178A9302F20DC4
-88CEDEB2CD8BF9607912EBF7B0BFC3F226228C96C0C128C498FA351081022E47F62EFB15
-23545AA028A8CE0F56C85BE3186D6811E4B86B31EE3234C595D34164B27D40295D2C2DC8
-1BED866C6A0405C4742CDF5A2563524C93AB0D350CD8B3DF7D219379F302A3A1C12E0954
-09698ACDAC5A2A89B7F54C846A0378E44E923CFFDE69B53F62FC661571E22880B065261C
-B0929D4E234503B81FCD8771685310EF5CFCB2210073EE65770F445B93EACC6DE6556C80
-59794A7499C2402066996593653192CE60E4907FED614060F4A9F68F0B949C33A7D5672C
-60317CC5AD98FF3301C2176E6CEAB2EF6ACEF60B6FB96F553CD8CCB05C2B1EED6044CB83
-40DF43DB21B567EF0A5657704E4DE711FC3EA7933BAEE7744234A369326D1B0BDE34A8C7
-2E328F30FE150DFD111D75122F29CED31C666793100CC8B69A17CFE330BCA55848B86397
-F9DD4950D6DF2B4486E26AA8FFB58445EBB14BBCCA683F3DCF2AC64025ECA14151D278C2
-977A9E046EAA361E658451DF157386033AD47B48C674EBCCDB79B8032A7D8FC01C8AD15F
-E1B9A410C5D4B51E20AC8E8DDAC4BF6020A2751114FB024A96B95E3053F38A3E9444CF7C
-C666B514EFDCCC3E167CA0B5F8095EB8D4060937718F6D8705A15B3E515201D9CB804467
-25B98EA469785969D46E24F05EA3AFDB074901774745286056761846B80553F0D3460CF8
-29C7794E4A360D3C731448086638214DC101591F4531543E9DB6BBEB1B91DF1FB3D1C4EF
-B13058C4B339935CFB4660CDB385C473BF7ABA5B5BC69083FEA6A17C6D04B23E9437C8ED
-14C680DFC74453C4FF2A6BEED2BB7DE8B346EA2DEAE4435DF08305BCE245ED67E41DBBF2
-96E3E10562A55D667D3F9CD286FDC42624B4BAF764E3C3378C8135A99F314C1CAC47B3B2
-E1FB39499594B223CC03EAC5F75BA3D91D892883D2843B29397BE6E06842D48B75DF75E5
-480F6501AF694E0E76D228DF52219C15E7F33267A9D1C3515308EF73D3DB303FCB9497AB
-FA1236E8DBE95DE4EC90A9592CE96949D0DC55EF858A18DD37AF76A51EB3B98BDE0ED83E
-7F4C6297245315E685559B4AA1D37E47053657E710D0AA3CCD41ECCCECC286BD133B64A2
-E8583148702FA532121E1E7B058BA1D24E7DF660A9E130BB8BE6DD87D005CEBAB1C8E87C
-34C3EA39378893ED7752DC543535761B4A237ABD04B53080196D79D692DE2E53B7167B6D
-76DA2279335AC5BF986E1AEADD9EE3A100756B15353BECE08FA788CAB5F63BC7AD58C442
-4AB03866AE0E18D4DC71BDF4B58A79C75D616933A31BD5BC14A2743E4A1EB88D90DB1854
-F132A946B090E2A092F71CD84239403C0CAFE30A7900061AF680F855DA5E91B023830B93
-48050178113D7831EFB051CA8534A3FA88222FB85D1A1E9D99936C49DE0A1DD7C8383F29
-B9B2EE1CD7064488D60C7E76F4F2DB018A4B9C95CCBE2F9CD7DEDE9501BEAA9C0D08C590
-1F9211AEF3AAC99DEFBD5F9C431EAA31798BD7D3A3A5604892F44CB3B736E8F8F79202B1
-6E9ED3ED418EF08539CD3DD9E624BADD761A44835AC95D5D07F7D67B93EB70AD8E86E0EB
-5AC1D4263F51E84583E424D0444B673747A8B353A780A6F8549F11A4962641A47CB1C3E3
-C4A241D244BA92AB05E6BA17BE0D6DC648C1F9D5F88EC20E103D1589D0E86D2B27CC077D
-810BD20514BE94853BCCFEF33D7655EE94DB8559BE3FC78C539E70F84E20534E7A5D6930
-A02889A4A82BA058888AB3EC75769BF961283481CF006D73FFA088EE019BB4AA990FC858
-621437BFB2D79C49157B5757CDC8EEAAD540E02BE1404EEBDC0B7BF094B80789D03B5F7F
-5756535B392A64F9617ED0856A7D167A78032855ADF1E672851A439D9DF57967EFC56D44
-FCC6D878C31CE7904C70433721C4E981F2643C08D96E4753850A4F427FA3D984E00832BD
-53437FDAB0A491C81CD6CF81D8BF5247E01CAD335A6DC9A69962B5830DEE96B57C9B08A0
-A5F401CC9CE286D3FB2B24F8E77508E4182551B4EE7B8139B80B805B64923ACE685CD576
-BF57A5F538B3F03C38B7DDFDE686B8F79271F8E4E909960D6D36523D4A217E4036AD4C84
-1E228DEC38AD432162211F5BA65FE03E0796A29EB8A8C4DB9BEA37E5C15A4AFF900A3456
-723DD6CB1F8BE7C5372A815691A92B5F1DD97BFC89FA5EBCDCC61AE4EF0245684ED4FC18
-7631D4292A94C9E3BBA81159E3688CAF6FC988236FAD971D774B54626DA436D10BD42A1E
-86036DB36914728E66B8EEA3B432126A5C1F0FF3928557A3D7583BE21007D81D40D8359D
-83075211A8366B16613E1B40EB840DFCCED4063CF06117963EF200E0FC0A558B1B69DED6
-08A00C25C68AA7EA0D902047A0981330DB2788E994E2196FED97CE2E777C0213532CB19C
-A28B07792F57F19433A14D1E6506958E8B6483D3651A1EA10D988C541CDA715DE138B612
-76926F9793C603B1836E4E9A4DE110A69D60E0F9BB0D5DB9F4B67209EFBE8D69D4C20B15
-0640052CD4367DDCE4722A87E9914B7DF541DEFA52278ECEB60572E0CC31AFC6C30ADEF7
-5898DB0B4A5D00F169688EC5212983AD3DCA6604CD2B3FD4A351EB4661F025716B2DCA8A
-F52CE6D269979C1F7E7942F583B2CB678F8DC52CB250C603D48B206D5547816C220AF203
-609BFE7B53CE4C88178C95A4E8F2F8B4BACB1CA5EF4CC1E76347AA958F2789D441AA1193
-C56ED7B27A0099B3EEBAC6AA6302891D3F16A913D980522CDDD8E3303437EC9AFBC4858E
-D3DD92E3E329B34B344718E4950DE3829812896AA20A9480582570DC88FD7F4AC2F46B24
-CDDD8EC6BE4862DE1412F427B698B83AF5A0EA767778564F3C3CA40EA60281099297E104
-E46E308BBF5EF23CCA84F9D6A6F773157582EE0F1BC477274999637E199E269DAD3D67BF
-D3EBBE840CD906E73A31EC7EB044E41F6B72367F6EABF54DA9F1664A1664338E202105FE
-E7F071026D12CEDC2D86D581C496B400D58CFCBB7B2A551BDABAFAC1125090DDDEFD4F55
-55B21AC1F6E5DDAE6700935C521AE129F886598539C41D07FE2680F25442BC29BDE2902A
-07FEEEB0A14E4F0201483BDD99D4142194BA2FB991F76B35D0DC31526A417212E5151E31
-60F3AD665ED99E0C7E50A43F58B2D6A8A075A96DFAFEA84C12EAD776CC6A3445771DE987
-DD0775A8DA30A1D0B92ED1D1A8B3E0133198B33C58A9E79943083C1EF44C0AE8A12D3BF6
-7CE1EF00C97E220DF31245B47F4720DA1F1B66A11A1AECBC9183C654DCEE7A16D47A3503
-74458A7303ECAC951588D2DEFE51919ACE2093697639CF60467FE9E43DC30B9FD53D4C22
-DB1F7B81EC206548C1E6E6B6CFE038764C4702F62CC23C38AFBC762D24E7625804867B40
-1626B14B8E45C6D9641B591D868FBADB07FCBE00C193F2F13F174648665CDA538E8977FE
-E8B54B74CD4F84BDF7A1D2D1E64539F146D3D116BEBBAAEA5FED99C5DE42526EEFBB78CB
-F8AAEC9F769B94FEF470C60E0B2F79C7F99D8C9C7C32A68302B352496255FB3785F74B43
-B4A173961F9018930515E6D1A57897420C404F32B3A0E2CDBBF8B53DCCDA0F0954BF6F80
-2638FBACAE414DB6C63F60ABFF719EAC3831C7D5AE46AAA7BECE1B71875D46504E61C29A
-3AFA16498509FC57DF4B4BF40CD4D8D59399EEF835D97EEF06B373F6E006EC22FC61BD13
-99EB69F248D991725232C1C5BBFFEBF0477A08BDD42F32FA43C5F5C06C2BF639E1C86F0D
-8E49B70E134B038781A1E85AE2A16FD1364479A5A46EEB1191390F469D0C573079523D1E
-F2B049171F9345AC5FAD682E4CAE51E1717FB19F8AAED47B7572EFD188806BD9FAE5AB42
-37683C9797DEB62E1FD9DD5CD1D477918D19D004AE0334E7F6A705C4B6D01FEDD05DA5FA
-063F81B6C6842D81A774C04531F708045021B8F11243E2C3F3EF7FAF5BA95C117B9DD6E1
-AABBC678F5046CBB55FB58849B6500A1A9593AB0BE9E2CD823FD35F60A485C3DDA2A36E4
-D13984CFFDC0992E39CBE5CD18076A92820D874E2576C83A6B02384D33F07DF51788BBF8
-27DD031A3520EAA36248860261133BAB4441635E255AE14B59B37B35CACB94688809FC1E
-DFAD40EB2307B2E0B8303BD47A15F736F58A4B7D8ACC44141E5E7D85D24B6CD12591633B
-7A005A49120406ED1CE82835C70426862D94F10BE0A51C894074506444BC899136DCE869
-D20F94E6E1D67F579E94D83DBD0B2230E55B90E01088DDA3748DEB1A7FBEB2D9D5625149
-06F512CAB6655C97060CE906ABD62996B2F1EFB10585C49EB019986CD391C1250C9E290F
-435A19B3035A30B415C614D64E396E5AF2970E36BB508E4AA4A030C9A38ED4D04B967E2C
-F5BDFC66833DCC48BC43772864DC29337040BC9AFBBA5E6272CEB78222394AF8362D32AF
-C1AA0E3359A4DCF2A98F14C1876631E2C98E8E29C41655F970963592C4BA3D028420B197
-559C882A42896CA2FCAE8919352A02C39BF565A6841E3B181234E3750125F983E415A065
-137F3C67B80FBF6390B53BEDBD3ABF8E11C807C89B1420C37C790BAFFDE9EFFDE9092673
-DFC748B14ADE1A7B9883C545C0C145DA0D404571F94F4A161F7A747EFC311D1F52C33CF5
-993D987161F2AF52920FE97AEFC3651767C8750FDB45920C972401A337517BB88B3B65EC
-B1E6A67B6B0728E3A1E46B1FDCBBE1D3757D715F91AE74F3740D2329944246FFC50665A3
-87B472AB71CA71539C2D15C56AEE7951666BB869FDDB6D91FB4F90A00163E7F1F4634472
-46DC61B4B08ED312157BA05105B93F0F8DE781CFB59480E1B8596A3354C8783CEF52EFDC
-74C9D143C16088448B8A9CBBCEC59900B16961E845CC92AAF400943EEDFE174CB3E465DA
-6D92240D8CEED8557EC7631EA9D2B4F0758CDD9847D703A5623FC1C96D321482243A6E9C
-853FA07459B8DF72F6D6CADDE4D92A8B110566984A4B8678B8CC8FF4B2F4665030FC2B47
-A0102CBB3D8F4E0C40D761D05BF4B9A684FCE51A5F750093AE65299413225E64BB20D6C3
-E287D934DD3040DEFDA92AFBA6E79483DF64FE3CB9B265F7CDDB2F5DEA767D5967CF0393
-B7405BE70F810DEF309C5D2EE786DBD819EA4A4253125AEA8DDE8F9AC42AB35E11773CC8
-434462261939FE3EE8F30383450E3C6CBB033FC839332F6B6092E724274A89C86BB4ECCE
-2FF70EF35268E9EFD66F1A75222BAA8CC9F9F4BB4943CB28207C633004F31E0721FA48B7
-D1E9D10A0694EF6A58A1F01EAA6BE615F2B1BAC49B9CC0A77FE251B7CF5611ACB1A0BD53
-8ABF1BE4F584AABB038F4FE84606BD96CF25FE9146651587023F868B13557E4153F2FAE2
-070BE3D081C4CC5410E803F04FC2284EDEE54DD387DD61F0B3C2A1815B35DBE6FFE337D0
-7C50DFF344C2A4D9921DC7FD0FBA8CA06FB07CED571BE57E89C3E429B40F0D8EDE7B522A
-32AF6249D1EB966D27A5424495A82F15DBC8FC90B8619C0363AFA45C26D60FBB408606D9
-A37B385582513B61641595F7328A1EC830E90BB7C8B186552E2F645E2F09553BAA432558
-DEAEDDD0591CA23F19E6B9D2143F0CFC9550A43DE70F69A66A89C4E505E02FDF77C87E3F
-A3768B12B7B7137C5DF761978563CC1C81AF9B7721D1E21A7E18CFD583EE4BC928E75AE8
-3F4DEF7A587D0AF30DE0CF4D74872360DB3BCD6529906995C1294DB90C93B44EBFB95527
-3D0B704C529EE441EA8E1EE2E3B03B7BA50CEC0C34AC176EB56AADB692EE9A53C215AB0C
-5736A3A4EC7E37F2ED5E4BDC7B82D0E35E06915E068FD974F225E70461D780906A7B7831
-AA07687C177FE71B84A4136C7A6BF2FE6408A9C7049795C49326069BF24244430A960ABC
-ACE67533486D6D5C6CA89D71904C5C48D02969628A2184F6B36C5FFB64A671116196BBE7
-4FA57CA9CC66378C0CF086FBDF05DFA609BCED01EF21DB027551B888242BDD941C302340
-0C2622E8557A0E12DDF981313D1F5953B57835592C8828C102C16EC39D06B63F31C373A2
-5077672A1134EFE0D4437E8F38AB373B214EB5F2BE1F6D80A07E1AA296AB7F974EE1DD76
-EED4B86A3CBA0E3C9D9F1A12F5E58913054D4557C2CC1C2C147196C7CB1435CC90C5D7CB
-D2379FE287CE562D9B7660E157E175ECCE8AA94B1173665484D19D65A9B191D4C09D43B7
-90D1DA313C09025020B2315B0112B8E059E01525EE0AF0189CE06A307801725A26B2B3D1
-F0A1BFA9056E1D7DF67B1A8E82946D5328AAB07A9D90E21F5163B1E3DD6D789068C8A1DB
-553FCEA69C14609A69805B3333EB608E4744C58C454DE66723A7794D09DEF7C6C981DDF8
-1B84B3E498D055ECEB6E8372D331861437AA69AE7D9A0932F4E71B9930D6F2DC38161257
-A32B87A7D37D200A5B9B5B257C0C9833BF04F91496BBAE83E9AE742362D8E74E0A4AE5CA
-029B5CA078EA6D8F00B1ABB84A08FF1C03BA539128A42166D06E09FA8AE71B74A216ECCC
-82DB316C9589BC68456F8ECD9B4BEF1E12506D537B6BE4CBB15C969B05D2F220B6E2678F
-4F2D497DFB72D8F9584FBF0D363547F84E1B28FEA0C869A090FADD5B90E36B88326F6589
-BCFD8FDAB3993532F04949DB9EC2D2F2F1360E2E75AE76A6796A2E7AFED4DAB1B7B10D54
-33AB4C76331AABAE0D3ACAAA62C1BC3F72662EC71B76568BF3450B45C2D09BECB562A49D
-3428A9DEED6D956CE1AFD83D90A0FC021957B45B8C03CDE0579EDADAB4BA570B29809545
-3A1D56FB60FCF22C038803ED3908D09A5E4E3EACD180A6D355FD7EB96B05305E841DED98
-07F75F133A6CA5D3415D0376504634B8DC2AC7A5BB53F9A3A032A878DFFA224FAD7A22B6
-9416767480B814D12E7D316D07AE8AA5117C04503B2E194F5CE94EFEE005DA30AD9114C8
-BA99323CF76547C24D607E40B62C51D86B672675E6F0730ABDC9B7B186D7EFDC4BEE86A6
-6456C4074BAF42818B46DB83D70FC8D1CA702CBB672B38BF0E776B52755468462B2EA034
-DA32113FC26E122261018D3A125D174D301FF7B16B57A406CD70110AD35710C2B67B7330
-CEC7B6B33770572AA9227AC52B0D6C6D0E25515C5844FD5D24140E01F3A4099BE114B94F
-DB65580BAB585F3561FC997C5DFC1A27A5AB4CC6DAB5DF46F3D575316C81A2049089FCD4
-1E4740F4D16EEB08F117EEED488A6A9DE20B498CB60E48EB5A0839134B9F102BFBBBA982
-74ECB5679EBC7CD178B6F179ED979AE8E9A41763A97B4E14A7AB6A2C1A446615786CA3FA
-32BAC716808B486702635502AA9F336C101A6E6A5F3033F5A92E13B9DFEEA4E7E98422E3
-3D051264262DAF41BDE94B43E0A375A42C59702EF2C43445C5EC7B6002BDE7C342F52AC3
-A5844A0EE75F5670C8B80AEBDDB2FE3D28BD6961037C0C54BE5ED708F683D1494DDFBCDC
-976AB35442BB049A5ABAD1246996AB4E56CB0DC9596EE6ED06D02BB2DF9A7C9CD5B07BDB
-7AD345607291736909E194D93DC68A1C612945A264A81603A9D0DFD5435DDB97F42957BC
-AB7D6B400E2943A3F455918135E6EFFB0AA5E9C3509860CB5727363AC596CA1D08979225
-814CBD4A22CB979E1A6F6B9BD0359E782E852F51DAB107EFB2C2F1CE5D69D5471704572B
-65A8B8B45305088AF7FA401348962022C952067504E39F3E879025FBE8E5ADD940B6D4D1
-737101C3999B9C6F58B259219AF84F1C146AE2DDF02C492FB5F582E739F1D1A3A0752CBD
-5C401C91BFA7BE13F936DDA112AD87ACFAA7DF7CDB341443967E8CE3091F024329934DA6
-AE431187CF6C1955744518EDEFA73ED94EF60764C59EC21CBB08EA73512314A7E0658DCD
-B61CDF37259EDE297DDDD7022DF5174DE5FA5216E566D1AF3249DE12E3A4EEF90A125EB0
-5633B85E3A12463693D5E2D6C01F5353761DE77FC8BDEF35FE0432E1CE3254F0F50A1B77
-C2245BB6DAA558E893F89AD98296C328D37C816CA808943AC488BC0090A4DB29DB0EAE82
-C89337A7C3FD1B4000202C42489974411B7B63D69BCB12E7EE7173E51D1DA17D7C82E6D9
-F810E76A97A9F118F1989B9DF448249BA2AD095A9698BB74D744C9ABCADAD6260E069C9C
-73B05D41228C475C1207FB4AA8A14562FDC889D6870F5D045073F18D8716944B52A7F9C5
-0005002C0D1032B7F3ED2F60E9B27D056D1BF9AE3B1C9B4AE9A76EFAB3EB926376080C14
-5100DBBA2FAFB47E119443AAC33CD4A49DBB8C0E8629C56B8427AA94A6E076EDD6A16574
-336E6AC1D23E04E9BDA3CD2C926604C4E8170A3B9599FBFA9D3C8BD6192020E0296968C2
-EFA8C621C0FB0AFD399FD8E14CCDD94D5C6406D6B1A2564507BC818467322EDC55C3A3EE
-E343DC08142264D205F542C023F8C82CAFAF6DC194E2016202247696F03CAD55224FDBCB
-0E8DD2C9DC53F5BA9DAB23C033C788CBA2382EEA7390EE61A9672345EE2749CCA136632B
-34AA12A5FC16974E9EB835A5598ADA0898BA5C87757D5EADAB5D0F71E4B75B8B1D711128
-E277A973EC136CAFFEF269A28B00881991B33CC8C5DF618B95C049CD97D746978B6C3AC0
-CB9EF6A51BD9702D0C14AB484DA4AC2400BDC557CD5E57A2421ADEC7F2326370E6F5D5C2
-9DAC782AB9255D0F4D0C98E7F9E0D7D31B114B1BD18AA2510E4F4A97582A15F170C12EFE
-80842C1D3FB9C74F40DDCC8517FB123EDCA605305E841DDB1E5AD5448DD4972A20045021
-196CC951B8C99E3F000CF984252686EBBDE5DA0593C8514F131FA94949AAE1AED3E780CB
-0504CFAD74171757769C8B2F51D54DBDE3EEB48E75486B4A75E4431F8BCD1A985C4484BB
-1B5CA35F1BFE7B3A7C41A42B66756A229A7A5A0DA6B7A5084EEF6B8AC804C17F1E88E5C3
-D0C1D55BD687A9803A1AA74A60C0360873B37C79B09A1B823C3C8AA322BFA2E9B77701D2
-BD815C11DF5C55C393B73F98B73A500EEE6CBDC9E4F5405C73C3B635D6D0CA58BB47D41B
-25149C3962190A1CB6FE7A8D6D4E26A205733F42BE8A2B0A8B4573C92CC98FDD07318671
-F3D3D5C7C757DD5AC7350F64E70381D190A05C674AAA796DE36886AA50955B422BF5995B
-6F8EAD32715151456AEF2AD3D16FA3120B0E95D817F9CCCF7B2A55D529272B1E1BC060B9
-9F6342A1229DD8EC1DDFE9B59DBDF216006E98EC1AA5A1F55EA3D7EDCE63ADE2D4A3BE57
-E45A1FFFC04D1C9F1466583BB2AD58AF695DB3DC075327144B35BC40EADC993BF3BB97EC
-A3F7756324E46DC6F4A13CE5266433C90FDEF6F46D38A9CE9DBD993B941AABE630ACA87B
-B14EE46C977EAF512A769611F269A17D6A7889F28F4D38CB9F20580F6F4F5324FBF8F6B4
-F6C101ED306407463004171F3C8EEC70B9A2FBAFE213D1450F9E368E56183F4449780F4C
-20171C3354E3AFD7D31B9CD7979F57FE545B06F40AB613B5B91D21D9E50B7B01E057F02D
-DE24F4720972007D62736223D8C3C442CA0BBC8F31D29387399CEEC87700982A394A11CC
-C73E118113558A4D44BA30924C4310F7C83F2C6D3FF570FCB031C12322CBD38CF98053AF
-BEC2E7DA168EAB3B646713AD5C3FB0CAC7BE1D7CC779FDBEDA2FB78CADFB0EDE7BC13C17
-531C20EFA0C63BC58AA447545EB89FE0271198D71AE26924F939A063521C082560D97EE9
-6130A6F6EB7CB75BADBA1A8A00736860986EC623DA35F8210E26B843345B941C0C0B262E
-B8EEB95482CB4EB437431E541F1C2820699258B1D17229E1DC8D7B170742CA64773F8062
-330A53950E929080661E588C1E4B85B5235130D50876837EF131D3F01CB0508954F39838
-ED8A7F38E5E7AEC8A74FC71EFE42E03E01B3CE075AC305B223B03944F9C39193A9EB6334
-FE05EFB242FECDEB2CFB62E0852B8AE333A92B8CD54F33318B1B22A8FBE47619A40D2CE1
-226735134BD860754D2804FC482441D48F1239B2D53E0ABD6FA1D556E4551203DDC5C79A
-F0169D0306F1BD451D9FAF5A200FAC1C833CD3E72E37AF7D95860D2D04A1FCAE8EDCC522
-255D759C135B7812CBD0A6EA9BDCC084E528A533B79FE9CE5BA00E86448CA798C6CA5B05
-5EF88EEB8EB276D2E84524D64468EA6D25F062CE4D47C1E15CD734BBD04308FF67DA439D
-577A00E4824EBFCB2EA5A00B55655157AFA0DA8FBBBC520A39B37D9FAE15A2CC90DE8B11
-9F69965BD22F20B63A3DC8C71A15510F85AC76F3248D2E5593266D9874E3C099649F78A1
-85F07DC3D9C1CA1FB2FCDF2808945571904E3E37A00EAF493BFDF11E9B6D4DD951C76EB9
-9BA671641E4A3FFA7C16F3AF41ECE3EDAEB91B0D8065D2324856C13B02C6666AE0DE50A2
-EB8380E0CF9665C3005EBFBC1AC075D05713A70CDD5590E7B9A54CDAA5F5BD2463AE744A
-A12F29C1C2D241712C3A80DC860C4BE572905586FCF974241213D073D3AFE446608B31B9
-E4F368D5627A50E0D55F22899B18E8BBD1DC96EA7EE8411650950B38E5E977E25A210070
-B8BCD0C109AAA5E1D838AFB35A25B0C32267672D34D5E1F139DFC10AE6D23F14B07190A6
-0DA8E6522D3050EACCE19A9D1C762BFF247CADBD1D1F172C006DB745A3F4D05D33957DFB
-471AE4ACE69B8AE49D8257B8B88D36865C0301D3DBF8114850A2B05D2A8121B3335DD399
-067962216367A8E8CC834D69BF7E16D06B4C7F602F908DA3903FEAC017228C976741A421
-C49048140D1B8D484153AB948A01CD7113C0AB9BD5466F8A26557E9F984BEA514EBE72E8
-C38FAB5F634EAB033C960539945FFDCF63E1DF47A8C6BF4460F6DB6778BE2D90B90BAEF4
-6AADCACBC8D1DE9BA3E9D4A2A8EB70F5CC3F02ECF6D76BCFDCAB9BBD36DF52DF860D64E1
-F0958B74361BA4298D792AF1D119905FE6D3067BFA8146CE1633D5C4658847F3F9E18143
-F1AB4D35C953AA5105FF94FC0C345E478B5B1D4584CA7BC050A31740EDE0FAC5EFA57126
-2CDAE360AB92ACBFD23807A0394160A8EF0B0F320CE3685040D091289DBCE3454B1ED51C
-83D8EDB2C86C71805DDBD584BB61E88A673ECD1535F5891EF7695F182F783B59ECBB0DA0
-B445D7AB5DF5C9BD042929611182301813145BAAC4D54644E93BC8FD2CEDE0207B5D60ED
-FF95CE7CC60DA632FEA04F8BC518E4A5197BBE065062556EADE480A86B8A2E0C9F1BF739
-1102D97C4D6A33B05C2EC5F457306266572C06274ABA9EEDB8F3C4E405EB5F132AB3E947
-CFF44017C6D8B79980DDEB698BB03BEB0C864A0766EDE34FED65FA889C5F149736CB7640
-B13BDA9CC6D5BF72FBC3009CB4FF5A877CA3E973A2A08FF25B212B8665DC4D6630B6EB48
-0D6E1E8DCA6F34AC6EAA482A4C6AD1763E17665BDE15BC08806A3FF8BE68584C8EABDFB1
-1E415329EFD07459890671D21872E0B0CB2EE1577B4A9283F224E3D0CA7106ED0C91FFFB
-4A3B8CBDB5E528C8D95D19741F16DF780F6D49FF6815351D0F0D92A0CD72FD14A19E1DB9
-97C3CC11BD6FB2AEB5281951D508A3EAAAFBB048B87AFC7CAB9BBE1D1C407D52978B6AC4
-6136E779209453BC2A6A86C198D1DFD8818526715228EBB5F411E1554004F48FDDD2607B
-E0D3979B82E35B78985FAC19CC95022D1F0AB9358CFE21C27BAB89AE4B03CD35565BC65B
-E6E25BBC43F5298B14000AC0867BAE57BCBC40E938C304F37D9AC390A90BB5ACC906599E
-789066315EEC0C15FDEC2F6E637A3082C85B2ED6BCFD621F033396CF1B7330D97265F873
-C92A64271C6CD63635758B05C10F67831EE579EF0B4AEAC245BC87541C1E7561E24B5E01
-B323E220BF1170BE5A4319684883C910556AB899372CF97C572D1AA86A34D826D6D4A048
-AE28B9D3E63A00A6CD36A5C4472E1B7840FD3B09A16190BB63588E98921E17D4180AA540
-56457195934F082F0C0F7D104E9271FB8E7D0CECCD395BCFF6539B76EC3FDBB1363A56ED
-366E8F9DD48A9349E4DD8A78C5B683E8365F3D0B4F2F8DE3D70B0B8825667406898EFF52
-A957499AE83E6FD2037CBDBE6B9265B0CB7323F86AD386F7A65CBFA93DD00255BBA82F96
-34A80487F68BC69000869F6CBDD217096BBE6BD9179DEEBE12422C308CE023854FBC077B
-BF1B820172633D8F70B26A302EE6B64258FE46DA73AB8C384756200C95A5623D0F2A41E4
-7EE54394A784941A06F082C737B9C6C5855C5F11729D6777E38A6B5F061C8E324CD2469C
-37B564AED2568502B980A054BA7007E8D9ED7733D3956BF5A3AD62C262CFA0BA9BFE0772
-7B67909D59A0084BBB85DE630245D514D86A920891417AB9FBC93863498E04E1DB27EC92
-6F5455BF6A5D09BB6C4968E10A177CA4B057E7D360F4646C986BDC5FB0C7ADA94D69F257
-96A37E10F1C62FE65D66790A0599D0A20ACD87AE4ECAD36C45678542E8D8E364DA954F9E
-E832D403BAD839441AA6F7118FD8C18B5C36F20EA984755E672FD1C2DECC0F6764711C3E
-7F6710BB8C7911BBDDB001B9CCBDD363B8CD618CF15ED57B63E5436047E7FB5BAE45D062
-D2EDEC99D9335118AC31D73AC1770FD0E5618608C7F42507753B5115520D4E220339B3B8
-AC54C83451996E8A489FA86B1E6C990A5000614688D4C29AD6EF8010131BEC1AD2670F9C
-DBAC78485175F999CDFFB8572F30648EB8F49548850B6CBED30114EFB970C8A58E814239
-CB0C1A855ECB24E0E38A6F4AC9EA5D255A9EE180F41213F8168F03E4F646411AB5B4AFFB
-B17C2533092A51313D3556E734FA0970E0760CE24A573A511EDF00457F348C5E465C1AF1
-198BCBA0CA6DB414B66EBF68E557E2EA72E80D7615B3A3017214BF1525A6CCCD1BBB3925
-C42E13E162797DC077B2674BCA2265F48F72407B24CA2002C2DBD2DAEFE4D0BF1B1D682E
-40B74BAD6C4B69328848F208D5ECA1A49B6F59E89B306FC5C47E6C007A5B0E5380538B38
-1DAAB61199AF1857C9D0649570534B486FB5144D9588547716F848A8015C8C2D21995D4C
-860802DFB07E4DF45E09C7D7FD5EE824CE4128ADF624250D69ACC87A0A10F647E7575DF1
-E7ADE6B0BCF063411797D563441EBCFB213F200A4CE96623BD6CF127727364E0450EFE99
-288E9A3B1FA4A1E776C9BC581931B72749EF0DF7D786F898CEB10158B705BD15B6A9ADC9
-9C7E2E3624905EC361BEEBA65E43FEDA49EB8F8A85187973C5D19FB54BDDCD79E42E2C08
-130865F10D7D600246548D33303B617CD6F81E0A11F4BC23DA3B167E5B2FBDA8BE051C49
-536C4B0940C61A954418AFAD8B0B19D85DEB12B1219DE27FF75797D0DA16F00F80AC113D
-F19AE8BF86FCBB602F3BC696611935FDCB61F05EE17FDC36E0B1087187F80D5C3EAE1B17
-DC1BA5817CBA5C3CBAB6BD6455AA2C3B44B57494B8BD08859C1213B24A62755F7CCA048F
-63F3F430CCEB00BBF39343F25AD4B6C62039A3F7B943344F86312E7566620694B77C5B69
-2AB977A7331B5F38D883F9B7C4F89E4A66F725E0EBD8E988AB9AAECF32D31C75A3E6849C
-32E4F06196DB937008FFA15DA36CA90BECBE909AEF6CA20E2315C82BA27385D08720E1FC
-BD5652AE843BE5F3D457B7F488E7AFDDDCD29BDF7ACEDF1075ED819674E47D0FC92DB7FE
-0AFDE6D58685F855FFDF52CE51B9C2720A82712A4B7BD96DE3EA95CD1635ECF7663C1D54
-A885A6AE72D84462639C52F987138050CBF73A5504F66D1430DFACF226FF12069A80ABDD
-0141CC2E05524BAC464CA4C59AF2912A2A4EA112F8C8A0BC4C908BD6C0BBA0123110F3E9
-CE3A216081892A19AC53FAD507E34110EFC7D4699A98849C5502F9DCD4418FA81EAC9481
-E4C20B4F46BE4DD134FFB03E47D6547D6540E1EA036167460F2922629E01ED36553AF423
-0050BBA670A4B74790B213D70D7ED543F9787E8920551C4703DB62110EF2E30DF12E91F6
-8AE86C3C6F9EB3043C162C0A0CFF7D4FA90CFDA5278D2B47D265D06CC33FCDDFDF3C68D3
-6BEDCBABB491F89962A46F90923C51EFEACB39FA22A36CDDEA38855682F126AEBEC06558
-94CE26C769392D71F1C4CBC34E3A4565EE74D67AB272327B457D346B756322FCA806938F
-BFB118244CE3B164ABB58135A96B7E1211220995376CD058DDBC291AEFEE79A41501AA17
-BE5200BA08E047BF985A97A8DCC1640E279DD35938B57C186918F163012A4C947D665449
-5CAC149C96F6A40502ACF8BE05D671777DCD218EF7FFF41AF93A80418A2AB81FA89120BC
-91A462F034E8801E1251BC3327321C7C0652ED3B26CB8B6CADF42AE3D97A8DB1A732E452
-FF187A97A2E03372667F91825FF3CC861B4122A1A0A3F4564323209DCB8FD2A886E95F58
-1539C74E4F5A0EC5B63DFB416F3859B46DCDBE7D724DACA0C5B6483FEABF3F36D6B13D2A
-49DACF1EAC4FA6C7B161A22CD876F5D511C2C2FC96C8B3AE53311E2D9468874BBB9E6B4B
-D18C5DA32F4E00923F59D2FC2079BD4BEDFA9E960249C650EADF2937CF7E339FD103CF71
-AF2549D4E9763E75A84744E73F70B669B6808258677265A9C2A48D95CF90D1E1585B4B60
-D19CA105909FE1D0EBCF533562ED6953C71C3CBD9CC474B6F6418A87C6B608E9D62CD3B4
-15565A14EAA18B23199A1521B101314B38A6662F5EE6390C9DEB538F5AF1BCC84DC9CA33
-E2D403FB1FB1A2E12D485D534F1A8A27447B5F9F13ECE527F7CD3CD9144AC5F137637659
-8199D0EE633CCD95797F4D55447D3105AA87498F1FC8B8750A440C46ABF820EF499F9D5A
-2818FFC414EEABC029AD6F961CA43BF94BFAEEDB8962A6124A192E1343E16A5E20204016
-B5175FF8252310B60F276148849E8556BBBD44CB9E59F5992AC845CDB2BC3B33BD7F0816
-2C36B7D91BD17A37F77A7938A5209FE92DEAD16A595E91917F6E49ECAD8C7B01F1565089
-815BAD961827931E718DF2B1F9743B938ACA21B648916FA76C5C99BFAC1DA9526A8F8793
-733B8CB1123A12E1FAEFE75332D850FB7F296539E76031DDEA6851EA00D97F7B83945C3E
-5C29D9B7F31B9A7B541B7640C17347CB2E39C15FDCF8C8B8ECE605239020783F333064E9
-ABBF3236976CC021E852C2D1C1A95D6DFD5746E076D14E75D2D31D0E93260802D9B4B846
-865DDE6FD59150562F6EF062B5DFE7C136978FB4A84ECB6AD463E199CB6ED2A9EDD7CBED
-D8BB618DA4E68319C7F194C0DEE2AF19A36943837505AA05FCFA86550C704A7EF74227D6
-58BFB33945D1E1FF102C91F6378D54AF74F1CEB81BEE7A848B8C933E4F9AB1D6914D9010
-9FF6C47194AFE0004A7245ABA2CE53A6C0B8636FB445E1D27E631618DCEE6E1FAFA19B28
-A3FF71FE46241F832D43FA786CAA4B5125821F13BA3023B54DC4E59CBB027C1720432DED
-5D53E05E2E830F53F6CEFFA0F17394A13EDC3ED8EE8493523394C5C73CA15C428E481D73
-FD4BAC226F9B923A1BC380535B19161F12034CC22DB93B335E1D603F8FAFF5BAF4410A02
-C8D0391C8B118EFBE289DD957956EF0CAC55D68F2069FF4D24ADE54DC83286E790F7EC12
-2EA9CE466BDD9175E8D50EF54A5219997A440C689634B35CB4C440327CD35CB05AE77E39
-87D742854CEC4E4784D4C1B06340295D19C1944BCF826E96FF84B4C80E173892B6DEAB45
-DFC0BF6CE1142215881A64D73D10AE8BB835CAFEED23A7810FB3FA4E8D811809BECD7062
-2C9C6CE8725C331F42F991BC35674C0E451EB19887FF4792D738D4E22E4BB897C03E79BA
-7F79F5CBFC2FB014BB58DEFF61A4AF62F3029F6829CF1DF5BD69FB1C73C68E36F2B3B1B2
-30B1D436D6DCA96563DA655E275ABB2AFD15D313D000D8E3F0D3461421D52B2A22623249
-E155D6276A5E6E0B5746C1BAB10B628092CD035976220A0121A3D16BC6B6F222511DA119
-E245943C5E7D68E32308EFD355CA3438436A5942292295282CB1FCDAE8B7A3AD3CB39CCC
-5A6DDC8FC771700383C268F4D676E9DBDC33C14688F23179089396251728AF49BE24D02A
-7CA4B1AA3CC148FB87E7C87EE41FE22723009FE89BD2DC689DDC9F034931ED7802B014F1
-C20D8F53EC110CDF35B8360FB1C58C9AA0F366260F36D21232E89FA1314476FFBA7F3AB8
-935147AF814D3BFF97635B11AB9EA47F6EF5952ABE438B536CF0FF25848F7480DFF36F43
-7CE6BD8701F4394A80E4D62731086ADAEEC41E6017A8AB72F890E9ED036C13BE24A7F2D0
-ABF1999B865B61349C501A9024FD08A319FB8E5DBA6E7283E8FC0BE48B9672CECD1F1091
-23A155914F163FD67AA466048A46DE447257D86C493B90178F37A23D66D192E552E46CB8
-E3C6D39B4CF574DF2C38CA6C74D0881E6E5C068766AC2898185BB326890F530984F3F31F
-57F80C0220E2CDC14CE937420869C037B4C197C44B59FF91FAD5DAA875A7802A293679A8
-2AF31176B3DBDCA9FB5BF5C40038E7F119C61B7554F35DA79D942B9BE756497B3C9B7A19
-E5BCFFFD7BDD046EED61780D4CC5A7F8E3A78B7B2414212870BA0D27FF3C01B2AB030EEB
-8F036B48673D6AB3460BB45939214BAB345B8D1FD6D2CDD3CAB37376244A7AC0FA3DF861
-60A193EE77CCCA93B2D984FA9CF07A54E9207EE127EF5B877A561216609567F9BD907BB2
-11A7383579FAB14FFACCFCC0E260DDCE27377C32FC039FF52A5D8059E7D4CFC880B0D634
-51482FC24A8E711B3D962A0926F4A0FBDF29036E0499FE6F5D115B7A95A059D6FCC36C87
-03DB34BB67B65F511637D91C428EED31371E9E9A00FA82BAC36AE2FDD0ADAD995E0E96FB
-C909C5AC04BB213EBB5865A2CCE6942DD92EC73AF8C7D554A4B32910C7CE57EE79D11ACB
-26D7CADECC469CF16953A50DDB0FF9A909F0382FC342CB38E2F3D8EDD0DC5919433386D1
-14B708E1AE5F01C2F08B8C8741D67BD1F02B4934A76D79B095AF43B68958BDE13D0F570B
-71128A40A050BFF9C5D944C09A4B5D8AD0758B497771699B4E577436B15E31EF7D804663
-F768B9F5C9829EFFD5B479E1A0813E49D48705EFCCBCB2B23A7F0C39DAC69E7E35D7F4BA
-770945D9F36A39D251B6CB76C88AD374E177B0F9D703865A69CEB6C0157419E781888F73
-47D0D641C43FF3521C3F380E26ADA5237ADE8C5FEEC8AF046C1B46903941181D958F16D1
-908D95A62869DE2DFD0AAC4D7441238B2ED50CDF729B10961883EC733F806C587C2D8F7D
-B205AA3E7F6E34D5A2A2003E8CFDD22A63DAC1B04A11D77A6830CED7D9DA87BBD9E8D278
-275D1626D31054A23E9283FEC3D634BA1544AC5AD0E28DBD03C5CABF697DEAAE65D6167D
-0E2EC4BC6C3B91581AC32B45F7ABA1B825848552D1413D1B5111168959A23F54C5B8E5E1
-B49C4096D5F546388E1279891E01D1FFDF63940F7AA520570B408C9C2CDA7F5A4B058919
-53B35D7523EA69927469DC90F6D8E15782204AE32885DC6BE6107D5EEFB29F69FBFECE44
-70CEFB37D0093844BE3ED424EFF064CF724A54B6B720ED020E70ADAC6716787FEEA1F22C
-84A5E59BC6A643A29F50E3B76E6658D5BD8CA3554EA68CBFACD0CA0882B8E3389EE7945B
-AC71B219233EE299C4C8FFB3BEB77BD483DE2A89DE4E697FA3A057EC47448CB99A7F1696
-00BBE4735D36408548405A8D4CE4209445DD0C4FFAA271ADCD14DDAA1598D44247156649
-1009AFC9B40874D4499857EF50BA7038F25A2159AAF9AC535EE1BC83E515D1439057F042
-C62DCB063AF8F014090AC771CC83DDFFFE0336CD4F14E3B6397E7AA442FF3C385A5A4B59
-2080801CC0BD5EA5F608A7936BD16248E3CAA7B49A475BEC9720EE44A06921A93375F344
-013752C467DB023F3F01FA7F427121DE5C4AFF495A06932C52FAA62C043B22ADA265BC90
-61B7702F9E44E326B54A423A472D23817F6135E05C1DDE477A9E27F42F5555E8FC22060B
-D53ECBCA45C31C09BACC68EEA5126EE5E73502F2CF42BC5916B95590B778D556C4DB817B
-2780787590B62405840D01F6B5301260E1EF0856219246C2CA7FBFB307FA728241E9A08F
-F8FE0F6E708228172358EB98895B3C3C7FBAB501BEA9911A6C6769456E491C89B2FBD751
-C9339E174850B679B47118416AF8E849438FA52C4E2A0D1D8AB94385FED3747F9A8E78E5
-47FA728DA9C44F5D2296072A8ED789FAFFD237802988A20A8C16F78A50D2AB87A2BF8EC2
-8503F757AC6E9E556686A37D84D7B9DD81345E70D212D3D83E7D074A2BD9191D05205B27
-56E74664E1C3169AA601EE6276EB238E3EB9586C37ED4089E5C7AF97021FDADB6AAAF8ED
-54CF169A574A7A6066EA74B3A255CFE9B6FDC2EABF4915325BEC03173370C41B71A65C08
-C4C809A78F52E89A27514E2771572235B8CE4E21229953786A90542924444BF56C163D41
-BCBDA2BD5981499D1BBFC7F7FDCD4EBAE43341EE9EBC04A5B3E86ABAACEE27AAAAEEA722
-63298EF83E19321B7CF9B1FAE2520159C2731E6023FBDDC81296BD2303788705D7A6FF72
-5ACD9365879F3742C0A375E23B124F85E2E533F958EDD9CEF05698E4F7E2C035EE665851
-E1B9B324D381BECE9AE126892F2B51826E44B80DF026FED2832BE1414CDC410B142E9248
-380FB3EF59A1CB8944C21E3B8F0450293E6FCE004AC4B002989C877AC2648964D137D881
-7C37A778E0EB56D243F6606A883875808323739C0B55B5F82C5BBC389566B7C24604D9E1
-9070CD37A2199B77BD81C6C0E4317AA361CD7F3D4CB2EEACF59D09FCB317C2E5656DD9EE
-54D8D9C2FE364E21FDCC38F9FBE33457A70B75A4F9BE1DF8B6577B9E103F2276B77BDCA6
-0AB499915F331113F04C81F9572AFD95245AD3573A195D9CD1AF7D26FAB028F7A821DE62
-8132A99E8B39D4597457CBA2281394CF68069397BFB22BCF992989D8AFAFF25129A9F9CE
-040FCB4752291D822EBD224DAC909194EAA4A07FC65F1EDC6C2D376190875FB8D2D19820
-7F71663705D83FE18CCAB848C11C5E112193D753B6A2BD9183054AE6021629E7927E4064
-9CEB4114C9B59F9827B98A70052FB67B5C45360C9C272DCD0C7DAC2A515707F6B63B2718
-B53B84441A28F777122D848B490C796185AD91E8474267D48B36DA7E3A7F70FC0F9319D3
-F937FD90AB3859794AC608FB96E283ED974159234761B8A114C8856FA00353C44D5C3976
-54488B0CFDBBC5A243595E2950E2ADFF06568551EC636B7D18FC1E68130F6623EB109415
-5F58F46A636EB98B30DE84A313ED1ED0EC0C8032B21ECFD11F2292A31E24E702D4723F50
-632F9D91DFF52142CFE2749A16B5B81F0ECEF869A7486191A3A910AE94C24471231B733D
-FD6645C3856F341C0E1ECC17432635133CF66336D3C2C4F103C3EFE59FC7E45545A0A5A0
-CA19C0DBBF2B8CD3CBB482CD5BA7EBCA2CD5AC9E0C201FA4ACE28F00EB491ECEC3871AA9
-C0A303D585F94FCE1365117A59BD2644CE990F0A04239ED4B52CB5A0639BE554A2FFB03A
-B9BC1E6C7989680B41BE26D2B01EFFE47819E737BBDB28868E0CEA2FFE4C7300B82E3016
-3BEEAA5EC834B2A2509BE99FCA5B087861C63EE1F84AACFA6FD77543D91C9C2E525BE531
-C02FF04A1F50C50B1F9CA7157F8A7787DD417868E48A035904BDA647EACC821F0ABB4053
-F19B502075211F1E1BD2714EE43D1AE7E19F8D13354D331E1935BB1246544EFA1DE7390F
-7A561A6CC3F48C222A9C6C0B3A89714A16B3F61B6E26E3238FD641D431C7F6EC8005ECB3
-113C00A96AD8842746CF3D457F0F951D90C797716C3E8A08059207DBBB40D9095D8074E1
-069E36841ECC7EBF2081F293C194A044F5FD536D0F3B6551AD3CEA2FB84A5A32E20E34E2
-CDC9AF5E6839C3521EBECE2F4B39788F313FAB6D0F089BE45A7F4FB021D15C2661BA55F8
-691E8A9E5AE18FA617E5AC262F24962132E051BA7DDBBD3C5E7B3256ED5BBF7A670E0091
-B3AA0F6860559521C858CE6FC640029FD9D5FE03D1CC485A27080DE3BA08A36DDF87C81E
-CE731AF1CE3F87FB19F91E324FF044110AE7C39110F9787C7F69E9C09FFBE37BA8B3DD17
-9B1EA5E176D6562DAC43992B8B5AED68898B6D56189426727100A36D92E2CB96672F58EE
-EF30E90EC2569CEE9DA1B590F16B88E5E55FAEE2477E36E9CECA4D4DD9E969FC0D27CB94
-B5C3E738635D3C9AB4A0191CB553399EBB25D1D43DDA545A732B66DCF18A913EB214AAE9
-A408BC1E04449C07E114142FC22AC8639359B2413F3ADF5303088B00DBCD6AAF1ED46964
-F749F420207CE7CB3A27A4C260E174E17C6892695B3167B65271C232F1C67BCAD83B0216
-278FAD19834B58E7E1A2813EAB45DAC586EDEF11FF9CFC828811CC290C4EA40017A4BBD8
-889D5373B0002C0DCE55B2EABAB80E58B4341F386781264AD72C9B251255C0983AEB350B
-03410B4C7E7E2ABE655E3A7AAB548D49C1EC489006EF4167BE2EA41CAD999E4CD6328ED0
-726C61B51EDF0952909C38480A6E801ADC241B50A972D31C7AC63BEB3746172F1CAFFA20
-D6E1009B9B1E79308ED3CD70D3F2975B0D241D8CDFD191A934E83E0BF3A938E19B3C461F
-566B19516C068AD6BA4DF7CB37EA8343DB1ECD5CAEE329432E15147CE61AC4EEC2866463
-557C05CD59FCE1659245B7D8AB628F2ED8B24F6AD0B1AD37797FC20C098445EA1F43E3B3
-388550D0AFD24C74AAB269C1FE7596CF8F010D665111305ECFDEF52E89C240510D5D83F8
-FFC38DD47A537F55F7F79CB460F36812A1E3C26E8A7DD6131DA076BFA93D6C03E6E4C279
-D720B41A9CCD6A58EE1BD43A3035CDCE464BDC7CEBD79B867F30B0D15400B897A5ED7324
-A4A75568BD1211D036A5710F23C7A2E1D3F7E45C929FDA7ED13EFBEC7604427BCF853F92
-D954E627D0ED842663CFB64A2A6358C86F80FFB6A955C17B04B096D76B03DA9660D93004
-C44AAB74C40F99C702BBF33C4FE471ED4E6A0ABF3B15B340708D5D16FAB80D1E51F7D1A3
-8C7AC19A871C5D47963CE3CB961AF75A47C09B7AE97A3EB1C16D64D12A0798D5CAB48F68
-0E6B2DD1F7BCF7FD97719CBD7FCA4BC1CF31640675AB798F7A7CCD4E4A109E0E00A806F5
-8888F7A7091A9B7CFD350599C9AA0E7F679AB200035F48A57172C499737631A4F442F3A1
-BF5A3E5A2B77E02B66768DB9E76AE46E403E0E4BFBC1F14256ECD89BDF623F266389DF28
-AAC38991DDD4743F4A3B8EAEA45BF38EEFD1B7D3998B9B8542E78EB9FEFCB9D256EA8EA7
-6B56BA2A4849598F03483C59ED550D3508D12B35E4B82C2703883BBAFC0885BAE8B1440C
-D2E368939FFE45BFEB172FCC597F19B089FC567332C97C3567C9DA05A3B99DADAB2BA61E
-B9CFC9C1407322118C7B7BE2686FB5DBF0D31C5116F2F232AC8C3B6B1ED3E36AE2E9A638
-1E714212A76D2733DCF8F2BA8C1BB345A8B3D98162EE87C308539AEC3EC8EDA6CFDC423F
-BDF208A89A906314950C1877A12E14C1DCBE5033474850128DFECB859E33F6EE578BB384
-DDC252AF788BD61E95E5375D134D6457B0A4690D7239440FF37E9F67CF10D1EE312653A0
-22702614C537EE7FFC677F630A079A98139EAA23FA2764B1D37CF5360002711890C12374
-CE980C83FF11E102C7AC31E4D96862CD3B8A77FB59FB8F3932750F21929B00912332196F
-D9AABC0E4703C7BBB695FB1EC820CB6F69B9869FB819DD43AB4000BF70FA0320B5D3D2DF
-8801021F0B0A45EEBCA8BFE6B616DCA4641358A4A18CFC749B17058929CAEFE146183C73
-BFD0BC668BE2EB8CC7003FBFC5F79373DAA86E4D9B65953031DCED7595D7779FA985FB1F
-176161B955D22591CD434DA21E63FD9DF743B49B16A5ABE84E74293B1CE2BB4E2481770C
-9B90A6641984001AF9E6DFB280D37922ED6A77D3C92F9E0F82B4CEC5FE92CFDCDF708EA3
-47EE98261C07F434E88A2042877D47C813992A1DBED99A6898288156CA26C7E473988BE2
-F5EC8DDD0FEE7D552832B69523330C12C6F0A307CDA286454EEBEB0B236AF69390B6FD9D
-3546DE7015FBA1D36B08769D5DF07FFCC8AAAC31825F0F515813221E1D467F126CB9BDCD
-E95DF5C7D64FF789BDB3A3339130A974D96606CBB812C8AEE855F29C5BDD9BA49FBDD481
-14DB68A228B685F35B5C33A9CE2CA9E0C30690831780284D6A75C9F9D86CC5A492EA5264
-09E1A2736EABD5FEF257F027B7363F8BF39519DB2940A1DFF0B3DCEC5CFBEE09633B4DF2
-6C29184ABEC66BB894F685BCF2AAF1301B1AB15398050C86A84E87491489F15FD2907D7D
-ADD73C36FD0F7A40E021077CDD8AAA237DC9CB5E13C00EB7E91353BC58E0B8870BB319F5
-074B651F0D5179AABF87D023AFE75B3AA68D62FB959A5B6EFEA8D204C09F72B038A8C5D0
-9977F1457ED158E3BB57CE63EC2EE4577DE42F9D91AA5ADF0460374A36C972C33616D040
-2D8C1257C018B736CAD8BC182ECF63CEA524C8B3835E9CBF7618D930717C9DF018778787
-B5BD608E6DDE644B3CEC092A232B66420872C1412751FE7A72D604B7C01CB200506DD521
-F45DAE82F0C7CD4AB3B8E2E1B5A9B3D13546DA5A45A3195DC9A550D428882299614F9E8D
-47E1674C7A95FE4B8E5EDA9D9499614A78DC322870B32E916C14088CFA3A76BA4F7CE4B6
-5C979130800F2F2D998F48DC5A2EC1CD18496402265677FD28F48CB38145EBDB30D2BBFF
-15CA9FAEC6802D7BDC7F1A281DB9A6553B7D3F757A1FAA6AB91C0D31757FBE705EFE4C71
-AB0749AEFFE6768B35A0AC03636F4757B38C2F4C0A78EAA3557473913AC1AD37B72E79FB
-75E2DA3A4A7AA867032A952D519BC5FC9BB684D0F21A661DEBE79B1C1513A16D8E32EB13
-E8DBB3F132C87ECE0972BF63001E8B9DC6C3F445191D536F8983B142BD94DD8F41C8756E
-EFDB106BDEE3224FA448DAC03ACA80AE79B7DA40347D3C3A643B915C51BFCB861438C546
-1A59FB26B538BDFBB8D7DE77955A8FE6016F770BAB928D277CD4C2B3FD3839FE75308F21
-826B36084E485927C5DB75AA7B6133F468C71D218307B40CFE1BB6AD24E3C2240EE17084
-AF6C1E0D83CCE1699FDDB4763BC15F722D0383F5F4638785268FC439EB0A8C6B5AF7B938
-957DD111A83BA935CCF13A9DCBCAC9188CA67EDF1A6D18A34C956DE87418EA5E4796E59B
-D981015C8D276CF4D8884AE423314AD62781108BA767131E08302A926C44B858B792DC52
-FBD6D15B5E9C4CABAA159FB5BCA5CAD068A5A718613598B518D015D3B6C43A01A5540849
-EC15F399A1DDEA9BDC47B409B10067FCCDA5932FD02BEF518433D8E7C83BA8567A2248DC
-2271BB39F07414DF7655BCA33FA7811592168ABD559F49EC0F7968E87130093E607C2F1F
-087154DA681D1C92C1B5EB87BFFF15C7DB4F8E319E42BDEC5B95A2F816BFC0A0CE997CB8
-BCCEA3DF23280D4C922482CA09EDA8C31F9C5FD9C22480DE591A3649A29F0293F976F366
-7A66D3923D6BEBD0C1A1F06C11C2C4207B2981E91DF0C0ABC84CE8B7B23B4837C51E2A94
-A7E3AB209AB5B99D40F39B1DE342502818A23235455B56BDCED3ACD910CD92E9E71DEF41
-0E3A01D9B7156F9DE0FC8916AB29D79F5B093C1CDD19CC1FDD6FFBD050ED563CA3C60022
-404A2E53E9EA3186A3177A57FB4B726DAFA37A4FD45D2C191E3E771C0CDA22EFAD7915B2
-15CCBD2A35E04CDF4779FE80B980ADE2D2E71B8F936D905AD7382B08C43A3ED6BBC5578C
-80417621C7A3A87079ADF2B635671C36A1F57B971FF2918E14E80549150AB492D9709508
-ED98B983A9D40188F93847967A10FD16DFFE2C1276EACD959435C36899210DBEA62023A7
-ED706126E4E5E005B7608F078E3F0A42E87C84B37215F883E0F078127D47C4B362CEE951
-69F92B2887F67A3F1D02BEBF0277BA479264E7AD5E1087F613330246606F4907D3BA39C4
-644B7F9BC608BAC3107D9C66FF7CD9E9D624703055DFE0262E96B17BF017579001A7EE29
-4F4217B697CD9A397D35D8CB781D9FE282D9082D273AB082CCD017D7843E1AE3A41613F1
-F69AE113E8A993C83FFDBEDEFA92A9101B54D1AFB5BC7B41F3AB3C610E60AC17861E45B7
-34D7706BF6971921CF0E5344DC613EB31AB4E31775D990CEC15AF459BE474959EB24CABD
-ED3B7D6A6540AA81B806D326D7614808FA2039A6675AC11F4E90EED294E867A84116FB5D
-89BEB45F738B1275BBB4106108FB19D6EA4CA71E3B0C2BEA1EAC19D27EB928EBACA9DD62
-75865C4B86025B626202116190ECF58F149257C62C70EEEC110B540C636BBF747801A21F
-B32A82CCF24062325AEB3B5DFEDD49AE625635C34CC330A93F1029F3A3A731537A0BF076
-C938773406C1670F4976AD1AAA5D3629EFE797A1133A683FBEC7DB8C480B32CA888ABB6F
-049CDD5D65EAB1E23EABAEF26756618BF3CBA5D62286C938D3F6F20C731DB6044B89AF92
-F58FE18DC156E0F0D7A548C6D838F57899D7A693A6D158E5B9A19D4CCE4CE574FA1F9570
-7092879FA2C3F4AC5F223E3E0A174B97BB2CBC7815A20FF509B43D6EA17D515BDD9B3CF9
-4827C88EB2AC1FD13192752DB92070FBF319E4DD93EC6C9287108E248BC3F814CF3F85A4
-F6EEDCF1B78BBEE9987BB0767968894F13E299C79F50E052B7627584F1C78BC8EA588B4C
-FB6C1204AAD2D47B42955EEE8563913BDC8167B5E82B48F3243F218E8832BCEED22BEEB6
-1B434A2AA2E93CB5654868F0A7E049852EE328F6A555AE92CB23702AE1B71B5E6EDF1BDE
-ED68CA1E96EDD0A9B214C02A429479FE612C312D8B8BBE3DFD711D25D816709B78125476
-4AC1676AEB53B4CE261AD842C485829A8DBB25956041C5BBACB27B75F0659622F2791718
-110991560C261EC4834C976182843A56DC1918191840DFE95A5FA00624A6C24228805545
-4E7EDDCC9CA865B10991C4B73BBC16BBF6F0F4D4058FE9163BAC69EFB2A3269FE9F2A092
-BE8F9D59D9AD9F434998B44AB3892EA4360C38BFB150DA95EEEBA94B419D9D126410188B
-475E794541F41D5C9D12D96BEDA86DF04640E6D766F0276BA1D0EE6E3B47A758D8D2D6DA
-90B97B6ACFFA7D7BFEDF0BF7101F32248C7C72560F770D52AFCDC8F285846E00F5B0A83F
-346B85D71DD49927304D228E2BE7980904A813AD23D5EE752D210FA2EBF72200914C8AA8
-ACD6B586437EAC4287C0D3C569E1969E71797949592DD7E1A65096819C7F3ED6218F1D0E
-6FAFF3597787C9AF1C875E66878D55C64B2140B873C14F9D344E80F6E1434D0814B3C55C
-7FF47038B2DD9104B7E836E0804B3E4042F5E1627E4C871AF0C42B498BD34475CDFD89CE
-72E8D6DEAE27C84CBC4270348B684D5DB84C025A0CDD01F010F345ED7C75251990AC320B
-AFF49806BAC46C8E87895DAD7D223A89AACBC9745439B6FB5B8603010AB29F2F9D3EB3D8
-24E2471720BC1ED2EE9BB61682AD6328D642B131780AB02A598BA9806C8327C43E1880D8
-37C5CDEB36BFD7812569F2FCBDF7B68934689238D59AB7D111FBF5BAD7DB4E85148373C9
-6016A50269968F2DB4824C1BA985C6FF1AC4BBB99F57232795F390BEA26222E79BB218A2
-23E68505A11925BCB27A403E5D27C9FB0EAFB29B7B6396CC58431D267FDB5DA11A64662A
-EF150E3C268732F5EAC6C2FDF28FA507531ECAEBD55F4B0AB89D8F4C4CD41EAA211EDFD6
-65091948FF530681FBE7919E476C4DBE1397C51E4AA2C4BA1F0BBA3ED714E766E2638ECE
-21B08E93C2EE29FB886C75B9436D2ADEB232736CFB5BAEED34EB47FF78CE41C6444377DE
-8B7970BB19E9B52F5422305F14BB7AF0BF98F46D1D1E17B13E679C99112388F39827338E
-E36498823D40CAB56D7C2749AAFF144D3F89A703F2F416C34592AAA4C6C30A96F3287868
-CE6F6EAA22A55E06F5D353F441E62A851A138B6E26631EF586EFA6952D428AF7D71901A9
-7E5BA59D462E10388C233E191AEEA380D9E2E23579C4345DB63F7691D0378F950B9CD2C2
-C0C17A8CF6144A7E81CDB3A5DAF7F2AE6A5F92E6910CA0D7A50569EA890FF71DD49D5012
-BD3FA623A1331BDE94EA4D2CD2C538AF787632B6339925FD6CBFD8ECBA7CC464B31DFFCA
-F79AB027945A2C1E9C058ED8F0F3221A0353961BB2B2EA75876B74EDDDAFB7ABFEA39F38
-36A8E19C9372D3CD704A19B301BAD2801B16BEFF75BCADC90D2EEA514A199105FDAB37EC
-8A75B14E67B638CAF1ADFBAF70D38355A66B513BFEDBBA2CC6981C25E364297C873C908E
-A288D930A8A18AF24C38B92F520DB5A41D708A438BC39356730D028198A08AD3430237FB
-8EC675CE19EAF97C06CDF706B138EAD722EAD2C7C6108A4C474210CE38A7A4EB0FF573DA
-59B024BED3579A7C870AFF17EB284527030EAD8F515D18EE490FD5D32545527F38BE7B7D
-CE9C1D1283B1771AAD8953E6D89EBC068E1C42C8431D6EC365F736652C4D74C627BC0689
-A3F273D9D9D94FF32CC504AADE91D4E17105EBA804952F566F0849A34B4E150223E5ED27
-786FD43209CC4F4EE8F4DB98D2C1DB336AE17E745DD8EB3D95A9984A632475430B0E80AE
-49A5118C73F0E060C7AC98A8F03E9E7BCA9492AE7D5CED0AA5F177E5EA1F6FFB5AA43A13
-76C8FAD9344ECD8E6B64EDA15AA52B37DDE5AEF3242C236D2C5B401000EE78D62A889665
-2553636E765463181099C47679428ED39AD2F77F8F35DC07A726666751D8DF804635DB17
-C4A81D61036E8CE9CE5E441226584EC469082C6C765909DCE05DD9C9D932F295EB587B37
-C7C32818BA4126B809ED89CEC7F14494720018DC93BC5F2635B5F1ADECFC9B4D2B028FFE
-AC248B2663FCD7A43E5468B43FA11E3BC439A5B519DFCDDE7403AB81F0771A7D85BCDF08
-B2C1DF316723EBCB4FBCEAA61454F48D6A354FCAA92E58757D9CE79F92166468522C00BC
-FFD765E0F3BCCE1C41E1717BDAD21746C86310CB9490510FCE6DB36CAD377215650FD82B
-9E3FD5E1188EB4D87A216B9B475DF5B634C39C87DD4B89EBF8DD52E7850E680F9CC7E610
-774D1F96C682B067FDC4456954D74B9D1FF2C18CCB9FB0C059517D174974D58D3376C32A
-53A2F6C1E6844152C3EB1E954A095D9EFCF72158B0C58A1B55EB29741FFD07F55030A9EC
-945C351CEE57273FBD4ECFDA6EB2A4FC374E1763B50648C68678B5FB5CDA2DA8D87EC85F
-738F2C2F2DFD4F93E44CD2BC2BB5B8103073EC603487DB06311F97BBFBACF934E3524EC4
-3006CC8A613AD9DDADE1023D0044F0C27F577900A62888C75FCA2B1F7DC59683028FE95F
-78039BACCF4E9710D3594B1205B5B08AAB01B04827A82516467C561E80484C2AF83781E0
-F947645951BC5CA167AADE20C8AE192CF9F800C409971D09BD173FE2FB130D8C543F4B57
-D7170BF0146B6138A12D9B04B717CB244E68A023E96E30918A1CBBC4A17EB994398BD47D
-CE04656333D38F705EE4ED3A75E569A68409CBD18DF1FD537ABAE8E5D4E67D45FE12CD4B
-5ADE49AA221D208F8C0C93FA8D659A01F2B9AC7869AAB3A69C1DC5B48FB8A91039BBA6E8
-3FE9985115B0B304F0E5293FFE5BC54CC84840EF951EAE7E4A1F0D4D1231E0A2F505F54B
-9CC2E373991495EED14DCF911DB949E4FA0016D5DD8D1126BE6A149AACD3B51F26347320
-A064FA81697B41AA19D5EBB8500022559BBCFFEA94E6F6F5C8755D9B669418107341FB18
-6855A75AAB2D1FBCCD70DE7120277E9B9D8C9BAE1CED962255F61D28EE29C001D0758578
-0B24E2F7B0CD7EBE33EE42A55A217C5832730B414D5109844A5E9934CA865AD2AE9127C7
-CAC28FE451C17A44C8C79395762EB7747B2DD7780DA0B2145CD2732B2D62724271FE4B5D
-96B882BF2C73F1E2BB9D700B83CE16AE2D6AB9726E12B09872EA940C1FADFEF125F89D09
-1FE5580E48ABF5493F9D8CC50CCCE629D6F8ACAF3998943225C5D2D795A1A10E2C1AC6D8
-B057F4A8225F0B24E4D6410F4A38D75D14601250E427EBFDD43AAF5E5C1EE0CCDB6D4504
-E3F854ED2EF4E8BDFA1F7422AB86B17896E6D3D0B14B81C515B489C3BE5B471461D6901D
-B39949A0B137BF9AF0C3A8124BB3FB4C1DC43A9ECCC48DB999E5FEB94B60DF942AE440AA
-4E69A70EEE8860EE2CE8570ABFA7519AC16AA1991540596881033B01CDB54E4DB401430B
-20696CD808C73AEBB6E61A5C41C96D7FC338E6E92A112ABF427C6E0EB23E278B3E5967BE
-13998C6786382093F74E2B067D428E9877F44DF94F6FEC76109987F3D7F13CE7C4C24648
-61128BB2C51BC858F4B87C3B3938698B4CE4CEAC0A73D872D5A43269B11B95D85FDB1F49
-545527BB2AA699944776B9A623DF59DB1B3035A6177A713667D78F7457C950D2664BA6DB
-1076009612A6806B24AB931A8466BE6EED4BC7776F1AB926213490BDA0F8E65E84B960D2
-625E6FC88744371574FC22DE9CAC8E37D0F0BEDACE16C034A588888EBA681CB89FB9D2E5
-3F04BAE4629739F91C372321D3F2653E4D24439E6B8AAFD71184436B86AA3D9C0B170A54
-728385BF8B6ECCDB25ED1D3363837400E80789F16FC73CD235568FE7F51385693E41555A
-F53AB56069EBF4F2B5D0C7859E988DCCAA37F0AD98EB34169D3E9BF7C664BE123640569D
-89F1C34BACC3B967853750B3627FD055A2AE8B2BBD6DDC2F6AC54BC7FF5122A540D0D200
-FF8FCF17DFD821E8034BFFEC18E1CD7DF35D4E1D80614347D92743B7CBE2910AD330A5B1
-C1D5DC95379F601A289069159AC6183E283257AB2C97C8BB3D6500B012BC6A9F47B0A57F
-2639AAD56552486847B304AD088CB8AEB07D032C4C275029A69563E350F3D64A67A7B88D
-561AB9C9DE1FC593DFC448FAD9E42063AF99A70DC8EFDB928FEFF2225FA1DE159DE073E6
-3A55D312B9B1810B375E116D79617D0F348EB2184E8A150E94223C792193E1A096646EE2
-A0D82C33EBB19E422988824963C50BAAA8598B9D51DB4149A366F621852EF0B17B4A41A2
-3436A438D8E65735F6B4D1E2EF89A12E4002AC8E585BC407EE6F34CD2D7046E042C463EE
-EBC4971A00B9A5F29102455E787BC66620D627385BAA3812F6B0BCF03AF1728064E1A8B7
-D7F5574C5DC22F5C0472CBD0E351F430823302827B31BF2338D85F80DDCCD3EA5E49B9A8
-8B8BBE6B0132C8198DA4436F609C27D13E7E561F05E783F04630B3EC03272F33E3F08419
-D5B4C16B386DCA42D17E89D7ACF46F6F4A79BBA082700F7F98327F2C7E62D8B1E6BFAF8C
-212819FB632C3DCB4AC92A8A0F94F350FB0BE0C89503CD0A52B3AE4817C2CA7193563FE9
-20CC6F4E24C116AB47AF0E3313702E1E96BD9817C1297C30FC7178314E401E4CB3847ACB
-1CBB1A672D928C1945E6629F626F66A679E9E39263C3A6804BA6A7D18F0CD0F1E01FEAFA
-7786ECD7026C94DD0310F20E8BF525CF5EB072E1EE59E66FDBF54880401F7F66A4C5D019
-297B0EF4C6D3478BFE76B93FACE72F5CDEFFABEBD78DD06E377787E873CB76C7F5130748
-E42599B216AF2254DDFC5AA8146EA01E76FFA094DD65EBF264C301F1311A53E86082E20A
-9B5E98CADFA0A10BE2A96CA3D0A33104911C1EF4CAE7E4E7CE3F6A765952D3E72E914DEB
-FC50474634A05EC92FA59914A798E42044484FB6F7E3E5D1AF45828422B971D5E7B91601
-848A2624DC276C47F14441338E47FF6F1741A38939A8B75ADC8702F0553ACD787BD49F4C
-D4D2CA40759C000A619BE27C2923D72438EB49D684DBBE48DBC67AF1935C9833B9E25252
-1E2869C7E808FC1ACD822659AC94F94FF2E11174FB7A7D199EDE962C61672D9F5D2C93F1
-BC99052FB782D94B08617E3C7BF232D9EDD6FD466A2ED7E55318F6E789E4A09F636B91E9
-6EE41F556224A8108BE1CFB2A83A57BA6C8995B6F7A5BE1D454A18CBF2E71FFC4D23A3B4
-9A202FEFF154CCE053BFABCC83CE4FE091E31B4759761F3D535348EF85AE276108592DCA
-9A84E1EA28786F871636712C1B85B412DFE705AC768AC8F5B65BD49CE921CDDB5C4D41DF
-BB2A7F14263AD2295F25ACFBF3F621D19437F0DDCB174280EA65836E9DCE638364E04085
-29F239946EB500E4455E7B79A412EB03C72D7D18A1EFC6A5C86AA2987C43E3987A5EF3F4
-F35712C790EB5137ABC92B2DAE1CD4E06E21B0DC03E2503687BA0DB73A4DDDEFB41C3BF5
-199ED14731480556C59F1127993C587517CC2406EFA6529122D90D9A9E4C1400B97B5DA0
-3A17AC4C5E238267969046365CA9ADE8D7C76746091704DF72709098602891ED11EE7AF8
-FD7B26DDE5E9CBD0BAB0E2E8C2B6BD49F2FF4CD016EE88B55F087152E7B2E4F67D081FAB
-847050548D26D0FE5365833D2A4791018284552C1F40D9ECE2605A3BE0EE2ED5DECE4D4D
-A8D5D81ED6101786D8AF3E5EBEB78FBECD7D3B471FF8C6900E12D0F45671D44DA582421F
-9BBD5759CDCC9FEE1991520E8F84BB8ACA4A370237E4C4FF92BE8EE6C307DFC47078E167
-DA4C7B2740B9A429012F4BB8519507F2A18F51BDD82168B9576E29531A5B26CD7B0FD7DB
-6E346CAB301B33CEBEE1F3D61D73B7D6145F89985653445FA519F91597A0F984DADE3094
-7109124D39A2A7E6D1CFDAF96A73FA0849075111F1ABC010A6871CC05709441C20CEF9B9
-A9AD1A8B1C207D0FE1E7D9D238D0A65EDAFE0BB3802D68CBF0B4CC151A8B330DD04E07DE
-C3329735761D7FDE1ACC1B0E86566891E6AE571EB4936A3BC13A3684A52CAF7B7BD84C73
-C68F436156F5A1F05A1898FEAD0F35CF7778CC824139B47484C71C4EE3625F86D1B12317
-7620B46984D92F7C1D38D392F8981CA76FD1678CFDD43FA5F2A5B5F92FEDFF593F699866
-F063DA7E0AD329FF3C45A2236A3F7A6D420E3A66B2BE1BFBF1CC584BE3B68BA2714DB085
-1B803EB1A075C6B1495099C0A5CC7C51369BE2A79E23D793BCD72A8BD7DEC3E180ABF90D
-D5D4137A796716083BBDD2C75EAEE01531EABFBD93F8D442525DD798E799D7EA30AB15BD
-9A20FE527E524FD7D6BD01884C12044BD7E81DE8293F50F63201D31838FDC0C7B20EEB93
-2372EA2F80F325EBE41BFC037B9FFB5150E421E2E785B5DDB910C3569DCE72A9441AA858
-D0325B3BF2FB3FE83A3D558A63AED58F48C5ACD609D5E1B048A6B519E061E601F4387F03
-7049B8CD97F402EED07DF88A9FB133E9DE42A205727495050C9C6B9D346E0B159C704A3B
-99F4F4A11A7B530F48BA5EFE0C6141F6F973C844BD43119D3AF52E22D2C6B615E53FB90B
-E1683719BC94124D51559326EDCFE600F75B0427CCE88D215A5B57F6DC59F504F2A7AC5B
-2B90F94AD673C8872A03DCDEB8712634E1BA3CB2E227ED6535160B62FABBC22B7FBA8174
-70E62F61792B40AAA5454010B2B008FB1DB7C11038CB98C8CD5401C95DB173A4AFD3CC0F
-7E5F19B6DFDC8BDF118786ECE351307B0E4C30233C0177781085FA1B2C5D1EF51BF9490B
-B6D1CD1C18F0782098F9E484F9420D635C79D6AC0740B7AE70BBBFEAF8B8958BD921D2A9
-798546BDD7858F810FEB5D84CF411AA3827A50420FE741BC3812CDE1865F4A2EF6A25A4C
-ED7EB24CCD38095AFE425D3B0A90539A1CD93DE3F35B020D047EFCE7E1C5C18633B419A2
-1167ACFD3CC3EE0629C0717AE994F151BEFF9EF0AF6E0F14358FBFBA8B61D669ADA8C47C
-AA03859AD7E8C07FC39514A8A85E5C5D02B5DDB48725BC15B70AB80FF7F563D481106810
-D8DF1EE07EAF9DB56374124F654CCB454E3C7B0BB490E0D9CB50460E1857C32C95021954
-35C010736A65A00FC28A348ECD4B494F5FEF4D236FBCB951535C546F248F0BAA11F372DD
-67F838667C2657A7ABC4631530F275D7A5ED73DEC263A1749630C251ED3F5B9708876730
-0ED8DBD0F588D874267EE87E8486B700B58DE87DA46980B752B5EAA853699AE65D50A6D5
-1A41D217244B8BC5C39D98272731E8D605EEABE0E6E487BC89F5962D2423DAF0C580D424
-719EBA7E9FC3C8C49AA2ED9BF1B679C51EC07D7C4F4401DA63B66AF7061BAE89C443718E
-EEA6FBD03E21DDAD5A1B2C251FF101AADE3FF3243F71CA14F19F71E3CB8689BE24E506C3
-C2E9BF2ADC82BFDBAD0C07082B75EAE1ECD31A8B90B9A582FEC64B65A8DF81E54B867EEB
-E71C191443897E25FAC6EDE419F11912D284F8819AF00617BB03330055E5C49023BD472E
-B32FE903E2C3A3BD9452389DA13CB1E4662ABFE88ABCA6DF0E55878CADFE425B8BF42313
-9107696719E947249B70C02251E24CBB3F3E027245651181113F3C2DDA0FF61B1243B6C4
-CDB870D3E05B7DA867C1853A6F8E53CDDD654831048A6F58EEDE299A70E0C18C02600DA3
-7D1507535286BD1C167BF37F925C8468967709EDBF94DFE0BFCFF11F0B715C77BF1FF7D7
-0BD8258DBDEE61ED4785F85DF2C52157FEC3C01282226FCC96E0ED8CDC8874A209E54A9C
-0E8EDA0887E0561CE0B3ECBAB1019F39132E6DA0FE6761379C4424EFC66C36EB4AD7D125
-B88A0A7C19ABABD4A60FBDF0CC1414A77837EB57609D6E4C5DA8A37D18B05B4F755776FC
-1930C15DFA2B545D8DCC65B7C8C4A3B9A8DBFC8C64CF90C1047828084070516FF3897E5C
-CD223CA4E5DE09834C960D0483F48156CB48B73EB3387A01208AC9991949027675AB9AAF
-B3D1AE8791DDA72EEA9053C50218F89B65935D6E40979F583456658C00C593034A067B3F
-5B9F7177E6032F1F6BC96AD544F8B98472724D7F48C91D08B4CE91B5EE736A22996CD971
-34E2D4221E0891CA4C8708A6059DB1C48350106A304F7000A1D165D44CCD6F6EE7EA5434
-4F5506C13BA5D12A04548D75D266E0A027DE905EB4DF15ECA1CDFA1D4EE0B9D650AFF4A6
-3ED6A0AD78D63938669B505CD5B799DDB4A3BAD89CAB921F18D26DC9B581B0E28EA395A2
-349B5909107EE11E9CC364961A335C913A34094E63C9163E45A5FF43D3B58E5101E8E2F0
-AFCE604BC96F676F942301846A6F3C54AF5A4D60F37B7A4C3BE982FDEE76F0B8
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-{restore}if
diff --git a/install-sh b/install-sh
index 26ccc4a0..3fbba8e2 100755
--- a/install-sh
+++ b/install-sh
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# "$Id: install-sh 10496 2012-05-22 21:38:54Z mike $"
+# "$Id: install-sh 10487 2012-05-21 15:33:01Z mike $"
#
# Install a program, script, or datafile.
#
diff --git a/locale/Dependencies b/locale/Dependencies
index 4543566c..7a08bb2b 100644
--- a/locale/Dependencies
+++ b/locale/Dependencies
@@ -1,28 +1,22 @@
-# DO NOT DELETE THIS LINE -- make depend depends on it.
-
-checkpo.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-checkpo.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-checkpo.o: ../cups/language.h ../cups/string-private.h ../config.h
-checkpo.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-checkpo.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-checkpo.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-checkpo.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-checkpo.o: ../cups/transcode.h ../cups/thread-private.h
-po2strings.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-po2strings.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-po2strings.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-po2strings.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-po2strings.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-po2strings.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-po2strings.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-po2strings.o: ../cups/language-private.h ../cups/transcode.h
-po2strings.o: ../cups/thread-private.h
-translate.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-translate.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-translate.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-translate.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-translate.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-translate.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-translate.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-translate.o: ../cups/language-private.h ../cups/transcode.h
-translate.o: ../cups/thread-private.h
+checkpo.o: checkpo.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+po2strings.o: po2strings.c ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+strings2po.o: strings2po.c
+translate.o: translate.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
diff --git a/locale/Makefile b/locale/Makefile
index 331aed55..45cfd76b 100644
--- a/locale/Makefile
+++ b/locale/Makefile
@@ -1,5 +1,5 @@
#
-# "$Id: Makefile 10270 2012-02-13 17:13:21Z mike $"
+# "$Id: Makefile 10424 2012-04-23 17:26:57Z mike $"
#
# Locale file makefile for CUPS.
#
@@ -54,7 +54,7 @@ clean:
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
@@ -133,15 +133,18 @@ pot: checkpo po2strings
cd ..; xgettext -o locale/cups.pot -cTRANSLATORS -s \
--keyword=_ --no-wrap \
--copyright-holder="Apple Inc." \
- --package-name="CUPS" --package-version="1.5" \
+ --package-name="CUPS" --package-version="1.6" \
--msgid-bugs-address="http://www.cups.org/str.php" \
*/*.c */*.cxx
(cat cups.header; tail +6 cups.pot; cat cups.footer) > cups.pot.N
mv cups.pot.N cups.pot
echo Checking cups.pot...
./checkpo cups.pot
- for loc in *.po; do \
- echo Merging changes into cups_$$loc... ; \
+ for loc in *.po ; do \
+ if test $$loc = '*.po'; then \
+ break; \
+ fi; \
+ echo Merging changes into $$loc... ; \
msgmerge -o $$loc -s -N --no-location $$loc cups.pot ; \
done
echo Updating cups.strings...
@@ -169,7 +172,7 @@ checkall: checkpo
#
# po2strings - A simple utility which uses iconv to convert GNU gettext
-# message catalogs to Mac OS X .strings files.
+# message catalogs to OS X .strings files.
#
# po2strings filename.po filename.strings
#
@@ -182,8 +185,8 @@ po2strings: po2strings.o ../cups/$(LIBCUPSSTATIC)
#
-# strings2po - A simple utility which uses iconv to convert Mac OS X
-# .strings files to GNU gettext message catalogs.
+# strings2po - A simple utility which uses iconv to convert OS X .strings files
+# to GNU gettext message catalogs.
#
# strings2po filename.strings filename.po
#
@@ -215,5 +218,5 @@ include Dependencies
#
-# End of "$Id: Makefile 10270 2012-02-13 17:13:21Z mike $".
+# End of "$Id: Makefile 10424 2012-04-23 17:26:57Z mike $".
#
diff --git a/locale/cups.pot b/locale/cups.pot
index 72ac93ca..ddb65575 100644
--- a/locale/cups.pot
+++ b/locale/cups.pot
@@ -28,12 +28,13 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: CUPS 1.5\n"
+"Project-Id-Version: CUPS 1.6\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
+"POT-Creation-Date: 2012-05-23 16:24-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -47,7 +48,7 @@ msgstr ""
msgid "\t\t(none)"
msgstr ""
-#: berkeley/lpc.c:433
+#: berkeley/lpc.c:434
#, c-format
msgid "\t%d entries"
msgstr ""
@@ -153,24 +154,24 @@ msgstr ""
msgid "\tUsers denied:"
msgstr ""
-#: berkeley/lpc.c:435
+#: berkeley/lpc.c:436
msgid "\tdaemon present"
msgstr ""
-#: berkeley/lpc.c:431
+#: berkeley/lpc.c:432
msgid "\tno entries"
msgstr ""
-#: berkeley/lpc.c:403 berkeley/lpc.c:415
+#: berkeley/lpc.c:404 berkeley/lpc.c:416
#, c-format
msgid "\tprinter is on device '%s' speed -1"
msgstr ""
-#: berkeley/lpc.c:428
+#: berkeley/lpc.c:429
msgid "\tprinting is disabled"
msgstr ""
-#: berkeley/lpc.c:426
+#: berkeley/lpc.c:427
msgid "\tprinting is enabled"
msgstr ""
@@ -179,11 +180,11 @@ msgstr ""
msgid "\tqueued for %s"
msgstr ""
-#: berkeley/lpc.c:423
+#: berkeley/lpc.c:424
msgid "\tqueuing is disabled"
msgstr ""
-#: berkeley/lpc.c:421
+#: berkeley/lpc.c:422
msgid "\tqueuing is enabled"
msgstr ""
@@ -191,61 +192,61 @@ msgstr ""
msgid "\treason unknown"
msgstr ""
-#: systemv/cupstestppd.c:436
+#: systemv/cupstestppd.c:454
msgid ""
"\n"
" DETAILED CONFORMANCE TEST RESULTS"
msgstr ""
-#: systemv/cupstestppd.c:3781
+#: systemv/cupstestppd.c:3800
msgid " Ignore specific warnings."
msgstr ""
-#: systemv/cupstestppd.c:3785
+#: systemv/cupstestppd.c:3804
msgid " Issue warnings instead of errors."
msgstr ""
-#: systemv/cupstestppd.c:392 systemv/cupstestppd.c:397
+#: systemv/cupstestppd.c:410 systemv/cupstestppd.c:415
msgid " REF: Page 15, section 3.1."
msgstr ""
-#: systemv/cupstestppd.c:387
+#: systemv/cupstestppd.c:405
msgid " REF: Page 15, section 3.2."
msgstr ""
-#: systemv/cupstestppd.c:407
+#: systemv/cupstestppd.c:425
msgid " REF: Page 19, section 3.3."
msgstr ""
-#: systemv/cupstestppd.c:360
+#: systemv/cupstestppd.c:378
msgid " REF: Page 20, section 3.4."
msgstr ""
-#: systemv/cupstestppd.c:412
+#: systemv/cupstestppd.c:430
msgid " REF: Page 27, section 3.5."
msgstr ""
-#: systemv/cupstestppd.c:355
+#: systemv/cupstestppd.c:373
msgid " REF: Page 42, section 5.2."
msgstr ""
-#: systemv/cupstestppd.c:402
+#: systemv/cupstestppd.c:420
msgid " REF: Pages 16-17, section 3.2."
msgstr ""
-#: systemv/cupstestppd.c:372
+#: systemv/cupstestppd.c:390
msgid " REF: Pages 42-45, section 5.2."
msgstr ""
-#: systemv/cupstestppd.c:366
+#: systemv/cupstestppd.c:384
msgid " REF: Pages 45-46, section 5.2."
msgstr ""
-#: systemv/cupstestppd.c:377
+#: systemv/cupstestppd.c:395
msgid " REF: Pages 48-49, section 5.2."
msgstr ""
-#: systemv/cupstestppd.c:382
+#: systemv/cupstestppd.c:400
msgid " REF: Pages 52-54, section 5.2."
msgstr ""
@@ -254,147 +255,147 @@ msgstr ""
msgid " %-39.39s %.0f bytes"
msgstr ""
-#: systemv/cupstestppd.c:571
+#: systemv/cupstestppd.c:589
#, c-format
msgid " PASS Default%s"
msgstr ""
-#: systemv/cupstestppd.c:506
+#: systemv/cupstestppd.c:524
msgid " PASS DefaultImageableArea"
msgstr ""
-#: systemv/cupstestppd.c:540
+#: systemv/cupstestppd.c:558
msgid " PASS DefaultPaperDimension"
msgstr ""
-#: systemv/cupstestppd.c:613
+#: systemv/cupstestppd.c:631
msgid " PASS FileVersion"
msgstr ""
-#: systemv/cupstestppd.c:657
+#: systemv/cupstestppd.c:675
msgid " PASS FormatVersion"
msgstr ""
-#: systemv/cupstestppd.c:677
+#: systemv/cupstestppd.c:695
msgid " PASS LanguageEncoding"
msgstr ""
-#: systemv/cupstestppd.c:697
+#: systemv/cupstestppd.c:715
msgid " PASS LanguageVersion"
msgstr ""
-#: systemv/cupstestppd.c:749
+#: systemv/cupstestppd.c:769
msgid " PASS Manufacturer"
msgstr ""
-#: systemv/cupstestppd.c:789
+#: systemv/cupstestppd.c:809
msgid " PASS ModelName"
msgstr ""
-#: systemv/cupstestppd.c:809
+#: systemv/cupstestppd.c:829
msgid " PASS NickName"
msgstr ""
-#: systemv/cupstestppd.c:869
+#: systemv/cupstestppd.c:889
msgid " PASS PCFileName"
msgstr ""
-#: systemv/cupstestppd.c:944
+#: systemv/cupstestppd.c:964
msgid " PASS PSVersion"
msgstr ""
-#: systemv/cupstestppd.c:849
+#: systemv/cupstestppd.c:869
msgid " PASS PageRegion"
msgstr ""
-#: systemv/cupstestppd.c:829
+#: systemv/cupstestppd.c:849
msgid " PASS PageSize"
msgstr ""
-#: systemv/cupstestppd.c:904
+#: systemv/cupstestppd.c:924
msgid " PASS Product"
msgstr ""
-#: systemv/cupstestppd.c:979
+#: systemv/cupstestppd.c:999
msgid " PASS ShortNickName"
msgstr ""
-#: systemv/cupstestppd.c:1354
+#: systemv/cupstestppd.c:1374
#, c-format
msgid " WARN %s has no corresponding options."
msgstr ""
-#: systemv/cupstestppd.c:1466
+#: systemv/cupstestppd.c:1486
#, c-format
msgid ""
" WARN %s shares a common prefix with %s\n"
" REF: Page 15, section 3.2."
msgstr ""
-#: systemv/cupstestppd.c:1325
+#: systemv/cupstestppd.c:1345
#, c-format
msgid ""
" WARN Duplex option keyword %s may not work as expected and should be named Duplex.\n"
" REF: Page 122, section 5.17"
msgstr ""
-#: systemv/cupstestppd.c:1724
+#: systemv/cupstestppd.c:1744
msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
msgstr ""
-#: systemv/cupstestppd.c:1370
+#: systemv/cupstestppd.c:1390
msgid ""
" WARN LanguageEncoding required by PPD 4.3 spec.\n"
" REF: Pages 56-57, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:1706
+#: systemv/cupstestppd.c:1726
#, c-format
msgid " WARN Line %d only contains whitespace."
msgstr ""
-#: systemv/cupstestppd.c:1378
+#: systemv/cupstestppd.c:1398
msgid ""
" WARN Manufacturer required by PPD 4.3 spec.\n"
" REF: Pages 58-59, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:1729
+#: systemv/cupstestppd.c:1749
msgid " WARN Non-Windows PPD files should use lines ending with only LF, not CR LF."
msgstr ""
-#: systemv/cupstestppd.c:1362
+#: systemv/cupstestppd.c:1382
#, c-format
msgid ""
" WARN Obsolete PPD version %.1f.\n"
" REF: Page 42, section 5.2."
msgstr ""
-#: systemv/cupstestppd.c:1393
+#: systemv/cupstestppd.c:1413
msgid ""
" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
" REF: Pages 61-62, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:1401
+#: systemv/cupstestppd.c:1421
msgid ""
" WARN PCFileName should contain a unique filename.\n"
" REF: Pages 61-62, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:1436
+#: systemv/cupstestppd.c:1456
msgid ""
" WARN Protocols contains PJL but JCL attributes are not set.\n"
" REF: Pages 78-79, section 5.7."
msgstr ""
-#: systemv/cupstestppd.c:1427
+#: systemv/cupstestppd.c:1447
msgid ""
" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
" REF: Pages 78-79, section 5.7."
msgstr ""
-#: systemv/cupstestppd.c:1410
+#: systemv/cupstestppd.c:1430
msgid ""
" WARN ShortNickName required by PPD 4.3 spec.\n"
" REF: Pages 64-65, section 5.3."
@@ -408,381 +409,376 @@ msgstr ""
msgid " cupstestdsc [options] -"
msgstr ""
-#: systemv/cupstestppd.c:3776
+#: systemv/cupstestppd.c:3795
msgid " program | cupstestppd [options] -"
msgstr ""
-#: systemv/cupstestppd.c:3708
+#: systemv/cupstestppd.c:3727
#, c-format
msgid ""
" %s \"%s %s\" conflicts with \"%s %s\"\n"
" (constraint=\"%s %s %s %s\")."
msgstr ""
-#: systemv/cupstestppd.c:2228
+#: systemv/cupstestppd.c:2248
#, c-format
msgid " %s %s %s does not exist."
msgstr ""
-#: systemv/cupstestppd.c:3865
+#: systemv/cupstestppd.c:3884
#, c-format
msgid " %s %s file \"%s\" has the wrong capitalization."
msgstr ""
-#: systemv/cupstestppd.c:2298
+#: systemv/cupstestppd.c:2318
#, c-format
msgid ""
" %s Bad %s choice %s.\n"
" REF: Page 122, section 5.17"
msgstr ""
-#: systemv/cupstestppd.c:3468 systemv/cupstestppd.c:3517
-#: systemv/cupstestppd.c:3556
+#: systemv/cupstestppd.c:3487 systemv/cupstestppd.c:3536
+#: systemv/cupstestppd.c:3575
#, c-format
msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
msgstr ""
-#: systemv/cupstestppd.c:3422
+#: systemv/cupstestppd.c:3441
#, c-format
msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
msgstr ""
-#: systemv/cupstestppd.c:2369
+#: systemv/cupstestppd.c:2389
#, c-format
msgid " %s Bad cupsFilter value \"%s\"."
msgstr ""
-#: systemv/cupstestppd.c:2455
+#: systemv/cupstestppd.c:2475
#, c-format
msgid " %s Bad cupsFilter2 value \"%s\"."
msgstr ""
-#: systemv/cupstestppd.c:2944
+#: systemv/cupstestppd.c:2964
#, c-format
msgid " %s Bad cupsICCProfile %s."
msgstr ""
-#: systemv/cupstestppd.c:2551
+#: systemv/cupstestppd.c:2571
#, c-format
msgid " %s Bad cupsPreFilter value \"%s\"."
msgstr ""
-#: systemv/cupstestppd.c:1802
+#: systemv/cupstestppd.c:1822
#, c-format
msgid " %s Bad cupsUIConstraints %s: \"%s\""
msgstr ""
-#: systemv/cupstestppd.c:3372
+#: systemv/cupstestppd.c:3391
#, c-format
msgid " %s Bad language \"%s\"."
msgstr ""
-#: systemv/cupstestppd.c:2413 systemv/cupstestppd.c:2509
-#: systemv/cupstestppd.c:2595 systemv/cupstestppd.c:2653
-#: systemv/cupstestppd.c:2708 systemv/cupstestppd.c:2763
-#: systemv/cupstestppd.c:2818 systemv/cupstestppd.c:2871
-#: systemv/cupstestppd.c:2993
+#: systemv/cupstestppd.c:2433 systemv/cupstestppd.c:2529
+#: systemv/cupstestppd.c:2615 systemv/cupstestppd.c:2673
+#: systemv/cupstestppd.c:2728 systemv/cupstestppd.c:2783
+#: systemv/cupstestppd.c:2838 systemv/cupstestppd.c:2891
+#: systemv/cupstestppd.c:3013
#, c-format
msgid " %s Bad permissions on %s file \"%s\"."
msgstr ""
-#: systemv/cupstestppd.c:2353 systemv/cupstestppd.c:2439
-#: systemv/cupstestppd.c:2535 systemv/cupstestppd.c:2622
-#: systemv/cupstestppd.c:2677 systemv/cupstestppd.c:2732
-#: systemv/cupstestppd.c:2787 systemv/cupstestppd.c:2842
+#: systemv/cupstestppd.c:2373 systemv/cupstestppd.c:2459
+#: systemv/cupstestppd.c:2555 systemv/cupstestppd.c:2642
+#: systemv/cupstestppd.c:2697 systemv/cupstestppd.c:2752
+#: systemv/cupstestppd.c:2807 systemv/cupstestppd.c:2862
#, c-format
msgid " %s Bad spelling of %s - should be %s."
msgstr ""
-#: systemv/cupstestppd.c:2887
+#: systemv/cupstestppd.c:2907
#, c-format
msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
msgstr ""
-#: systemv/cupstestppd.c:2185
+#: systemv/cupstestppd.c:2205
#, c-format
msgid " %s Default choices conflicting."
msgstr ""
-#: systemv/cupstestppd.c:1783
+#: systemv/cupstestppd.c:1803
#, c-format
msgid " %s Empty cupsUIConstraints %s"
msgstr ""
-#: systemv/cupstestppd.c:3500 systemv/cupstestppd.c:3540
+#: systemv/cupstestppd.c:3519 systemv/cupstestppd.c:3559
#, c-format
msgid " %s Missing \"%s\" translation string for option %s, choice %s."
msgstr ""
-#: systemv/cupstestppd.c:3408
+#: systemv/cupstestppd.c:3427
#, c-format
msgid " %s Missing \"%s\" translation string for option %s."
msgstr ""
-#: systemv/cupstestppd.c:2398 systemv/cupstestppd.c:2494
-#: systemv/cupstestppd.c:2580 systemv/cupstestppd.c:2638
-#: systemv/cupstestppd.c:2693 systemv/cupstestppd.c:2748
-#: systemv/cupstestppd.c:2803 systemv/cupstestppd.c:2855
-#: systemv/cupstestppd.c:2978
+#: systemv/cupstestppd.c:2418 systemv/cupstestppd.c:2514
+#: systemv/cupstestppd.c:2600 systemv/cupstestppd.c:2658
+#: systemv/cupstestppd.c:2713 systemv/cupstestppd.c:2768
+#: systemv/cupstestppd.c:2823 systemv/cupstestppd.c:2875
+#: systemv/cupstestppd.c:2998
#, c-format
msgid " %s Missing %s file \"%s\"."
msgstr ""
-#: systemv/cupstestppd.c:3101
+#: systemv/cupstestppd.c:3121
#, c-format
msgid ""
" %s Missing REQUIRED PageRegion option.\n"
" REF: Page 100, section 5.14."
msgstr ""
-#: systemv/cupstestppd.c:3086
+#: systemv/cupstestppd.c:3106
#, c-format
msgid ""
" %s Missing REQUIRED PageSize option.\n"
" REF: Page 99, section 5.14."
msgstr ""
-#: systemv/cupstestppd.c:1993 systemv/cupstestppd.c:2034
+#: systemv/cupstestppd.c:2013 systemv/cupstestppd.c:2054
#, c-format
msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
msgstr ""
-#: systemv/cupstestppd.c:1888
+#: systemv/cupstestppd.c:1908
#, c-format
msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
msgstr ""
-#: systemv/cupstestppd.c:1820
+#: systemv/cupstestppd.c:1840
#, c-format
msgid " %s Missing cupsUIResolver %s"
msgstr ""
-#: systemv/cupstestppd.c:1979 systemv/cupstestppd.c:2020
+#: systemv/cupstestppd.c:1999 systemv/cupstestppd.c:2040
#, c-format
msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
msgstr ""
-#: systemv/cupstestppd.c:1872
+#: systemv/cupstestppd.c:1892
#, c-format
msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
msgstr ""
-#: systemv/cupstestppd.c:3594
+#: systemv/cupstestppd.c:3613
#, c-format
msgid " %s No base translation \"%s\" is included in file."
msgstr ""
-#: systemv/cupstestppd.c:2274
+#: systemv/cupstestppd.c:2294
#, c-format
msgid ""
" %s REQUIRED %s does not define choice None.\n"
" REF: Page 122, section 5.17"
msgstr ""
-#: systemv/cupstestppd.c:3159 systemv/cupstestppd.c:3173
+#: systemv/cupstestppd.c:3180 systemv/cupstestppd.c:3194
#, c-format
msgid " %s Size \"%s\" defined for %s but not for %s."
msgstr ""
-#: systemv/cupstestppd.c:3139
+#: systemv/cupstestppd.c:3160
#, c-format
msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
msgstr ""
-#: systemv/cupstestppd.c:3313
+#: systemv/cupstestppd.c:3332
#, c-format
msgid " %s Size \"%s\" should be \"%s\"."
msgstr ""
-#: systemv/cupstestppd.c:3274
+#: systemv/cupstestppd.c:3292
#, c-format
msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
msgstr ""
-#: systemv/cupstestppd.c:3021
+#: systemv/cupstestppd.c:3041
#, c-format
msgid " %s cupsICCProfile %s hash value collides with %s."
msgstr ""
-#: systemv/cupstestppd.c:1943
+#: systemv/cupstestppd.c:1963
#, c-format
msgid " %s cupsUIResolver %s causes a loop."
msgstr ""
-#: systemv/cupstestppd.c:1925
+#: systemv/cupstestppd.c:1945
#, c-format
msgid " %s cupsUIResolver %s does not list at least two different options."
msgstr ""
-#: systemv/cupstestppd.c:2143
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#: systemv/cupstestppd.c:1148
+#: systemv/cupstestppd.c:1168
#, c-format
msgid ""
" **FAIL** %s must be 1284DeviceID\n"
" REF: Page 72, section 5.5"
msgstr ""
-#: systemv/cupstestppd.c:562
+#: systemv/cupstestppd.c:580
#, c-format
msgid ""
-" **FAIL** BAD Default%s %s\n"
+" **FAIL** Bad Default%s %s\n"
" REF: Page 40, section 4.5."
msgstr ""
-#: systemv/cupstestppd.c:496
+#: systemv/cupstestppd.c:514
#, c-format
msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
+" **FAIL** Bad DefaultImageableArea %s\n"
" REF: Page 102, section 5.15."
msgstr ""
-#: systemv/cupstestppd.c:532
+#: systemv/cupstestppd.c:550
#, c-format
msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
+" **FAIL** Bad DefaultPaperDimension %s\n"
" REF: Page 103, section 5.15."
msgstr ""
-#: systemv/cupstestppd.c:1005
+#: systemv/cupstestppd.c:623
+#, c-format
msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
+" **FAIL** Bad FileVersion \"%s\"\n"
+" REF: Page 56, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:725
+#: systemv/cupstestppd.c:667
+#, c-format
msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
+" **FAIL** Bad FormatVersion \"%s\"\n"
+" REF: Page 56, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:741
+#: systemv/cupstestppd.c:1025
msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
+" **FAIL** Bad JobPatchFile attribute in file\n"
+" REF: Page 24, section 3.4."
msgstr ""
-#: systemv/cupstestppd.c:780
+#: systemv/cupstestppd.c:1213
#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-#: systemv/cupstestppd.c:936
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
+msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
msgstr ""
-#: systemv/cupstestppd.c:897
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
+#: systemv/cupstestppd.c:1227
+#, c-format
+msgid " **FAIL** Bad LanguageVersion %s - must be English."
msgstr ""
-#: systemv/cupstestppd.c:971
+#: systemv/cupstestppd.c:743 systemv/cupstestppd.c:760
+#, c-format
msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
+" **FAIL** Bad Manufacturer (should be \"%s\")\n"
+" REF: Page 211, table D.1."
msgstr ""
-#: systemv/cupstestppd.c:1129
+#: systemv/cupstestppd.c:800
#, c-format
msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
+" **FAIL** Bad ModelName - \"%c\" not allowed in string.\n"
+" REF: Pages 59-60, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:605
-#, c-format
+#: systemv/cupstestppd.c:956
msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
+" **FAIL** Bad PSVersion - not \"(string) int\".\n"
+" REF: Pages 62-64, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:649
-#, c-format
+#: systemv/cupstestppd.c:917
msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
+" **FAIL** Bad Product - not \"(string)\".\n"
+" REF: Page 62, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:1193
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
+#: systemv/cupstestppd.c:991
+msgid ""
+" **FAIL** Bad ShortNickName - longer than 31 chars.\n"
+" REF: Pages 64-65, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:1207
+#: systemv/cupstestppd.c:1149
#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
+msgid ""
+" **FAIL** Bad option %s choice %s\n"
+" REF: Page 84, section 5.9"
msgstr ""
-#: systemv/cupstestppd.c:3735 systemv/cupstestppd.c:3757
+#: systemv/cupstestppd.c:3754 systemv/cupstestppd.c:3776
#, c-format
msgid " **FAIL** Default option code cannot be interpreted: %s"
msgstr ""
-#: systemv/cupstestppd.c:1266
+#: systemv/cupstestppd.c:1286
#, c-format
msgid " **FAIL** Default translation string for option %s choice %s contains 8-bit characters."
msgstr ""
-#: systemv/cupstestppd.c:1239
+#: systemv/cupstestppd.c:1259
#, c-format
msgid " **FAIL** Default translation string for option %s contains 8-bit characters."
msgstr ""
-#: systemv/cupstestppd.c:2081
+#: systemv/cupstestppd.c:2101
#, c-format
msgid " **FAIL** Group names %s and %s differ only by case."
msgstr ""
-#: systemv/cupstestppd.c:2126
+#: systemv/cupstestppd.c:2146
#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
+msgid " **FAIL** Multiple occurrences of option %s choice name %s."
msgstr ""
-#: systemv/cupstestppd.c:2103
+#: systemv/cupstestppd.c:2163
+#, c-format
+msgid " **FAIL** Option %s choice names %s and %s differ only by case."
+msgstr ""
+
+#: systemv/cupstestppd.c:2123
#, c-format
msgid " **FAIL** Option names %s and %s differ only by case."
msgstr ""
-#: systemv/cupstestppd.c:582
+#: systemv/cupstestppd.c:600
#, c-format
msgid ""
" **FAIL** REQUIRED Default%s\n"
" REF: Page 40, section 4.5."
msgstr ""
-#: systemv/cupstestppd.c:481
+#: systemv/cupstestppd.c:499
msgid ""
" **FAIL** REQUIRED DefaultImageableArea\n"
" REF: Page 102, section 5.15."
msgstr ""
-#: systemv/cupstestppd.c:517
+#: systemv/cupstestppd.c:535
msgid ""
" **FAIL** REQUIRED DefaultPaperDimension\n"
" REF: Page 103, section 5.15."
msgstr ""
-#: systemv/cupstestppd.c:623
+#: systemv/cupstestppd.c:641
msgid ""
" **FAIL** REQUIRED FileVersion\n"
" REF: Page 56, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:667
+#: systemv/cupstestppd.c:685
msgid ""
" **FAIL** REQUIRED FormatVersion\n"
" REF: Page 56, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:1056
+#: systemv/cupstestppd.c:1076
#, c-format
msgid ""
" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
@@ -790,68 +786,68 @@ msgid ""
" REF: Page 102, section 5.15."
msgstr ""
-#: systemv/cupstestppd.c:687
+#: systemv/cupstestppd.c:705
msgid ""
" **FAIL** REQUIRED LanguageEncoding\n"
" REF: Pages 56-57, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:707
+#: systemv/cupstestppd.c:725
msgid ""
" **FAIL** REQUIRED LanguageVersion\n"
" REF: Pages 57-58, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:759
+#: systemv/cupstestppd.c:779
msgid ""
" **FAIL** REQUIRED Manufacturer\n"
" REF: Pages 58-59, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:799
+#: systemv/cupstestppd.c:819
msgid ""
" **FAIL** REQUIRED ModelName\n"
" REF: Pages 59-60, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:819
+#: systemv/cupstestppd.c:839
msgid ""
" **FAIL** REQUIRED NickName\n"
" REF: Page 60, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:879
+#: systemv/cupstestppd.c:899
msgid ""
" **FAIL** REQUIRED PCFileName\n"
" REF: Pages 61-62, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:954
+#: systemv/cupstestppd.c:974
msgid ""
" **FAIL** REQUIRED PSVersion\n"
" REF: Pages 62-64, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:859
+#: systemv/cupstestppd.c:879
msgid ""
" **FAIL** REQUIRED PageRegion\n"
" REF: Page 100, section 5.14."
msgstr ""
-#: systemv/cupstestppd.c:1025
+#: systemv/cupstestppd.c:1045
msgid ""
" **FAIL** REQUIRED PageSize\n"
" REF: Page 41, section 5.\n"
" REF: Page 99, section 5.14."
msgstr ""
-#: systemv/cupstestppd.c:839
+#: systemv/cupstestppd.c:859
msgid ""
" **FAIL** REQUIRED PageSize\n"
" REF: Pages 99-100, section 5.14."
msgstr ""
-#: systemv/cupstestppd.c:1078
+#: systemv/cupstestppd.c:1098
#, c-format
msgid ""
" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
@@ -859,29 +855,25 @@ msgid ""
" REF: Page 103, section 5.15."
msgstr ""
-#: systemv/cupstestppd.c:914
+#: systemv/cupstestppd.c:934
msgid ""
" **FAIL** REQUIRED Product\n"
" REF: Page 62, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:989
+#: systemv/cupstestppd.c:1009
msgid ""
" **FAIL** REQUIRED ShortNickName\n"
" REF: Page 64-65, section 5.3."
msgstr ""
-#: systemv/cupstestppd.c:335
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#: systemv/cupstestppd.c:347
+#: systemv/cupstestppd.c:334 systemv/cupstestppd.c:353
+#: systemv/cupstestppd.c:365
#, c-format
msgid " **FAIL** Unable to open PPD file - %s on line %d."
msgstr ""
-#: systemv/cupstestppd.c:1478
+#: systemv/cupstestppd.c:1498
#, c-format
msgid " %d ERRORS FOUND"
msgstr ""
@@ -950,7 +942,7 @@ msgid ""
" REF: Page 43, %%Pages:"
msgstr ""
-#: systemv/cupstestppd.c:1480
+#: systemv/cupstestppd.c:1500
msgid " NO ERRORS FOUND"
msgstr ""
@@ -983,55 +975,51 @@ msgstr ""
msgid " Warning: obsolete DSC version %.1f in file."
msgstr ""
-#: systemv/cupsctl.c:216
+#: systemv/cupsctl.c:210
msgid " --[no-]debug-logging Turn debug logging on/off."
msgstr ""
-#: systemv/cupsctl.c:218
+#: systemv/cupsctl.c:212
msgid " --[no-]remote-admin Turn remote administration on/off."
msgstr ""
-#: systemv/cupsctl.c:220
+#: systemv/cupsctl.c:214
msgid " --[no-]remote-any Allow/prevent access from the Internet."
msgstr ""
-#: systemv/cupsctl.c:222
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-#: systemv/cupsctl.c:224
+#: systemv/cupsctl.c:216
msgid " --[no-]share-printers Turn printer sharing on/off."
msgstr ""
-#: systemv/cupsctl.c:226
+#: systemv/cupsctl.c:218
msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
msgstr ""
-#: ppdc/ppdc.cxx:456
+#: ppdc/ppdc.cxx:455
msgid " --cr End lines with CR (Mac OS 9)."
msgstr ""
-#: ppdc/ppdc.cxx:458
+#: ppdc/ppdc.cxx:457
msgid " --crlf End lines with CR + LF (Windows)."
msgstr ""
-#: ppdc/ppdc.cxx:460
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
+#: ppdc/ppdc.cxx:459
+msgid " --lf End lines with LF (UNIX/Linux/OS X)."
msgstr ""
-#: test/ipptool.c:4383
+#: test/ipptool.c:4404
msgid " -4 Connect using IPv4."
msgstr ""
-#: test/ipptool.c:4384
+#: test/ipptool.c:4405
msgid " -6 Connect using IPv6."
msgstr ""
-#: test/ipptool.c:4385
+#: test/ipptool.c:4406
msgid " -C Send requests using chunking (default)."
msgstr ""
-#: scheduler/cupsfilter.c:1438 scheduler/cupsfilter.c:1465
+#: scheduler/cupsfilter.c:1431
msgid " -D Remove the input file when finished."
msgstr ""
@@ -1039,27 +1027,23 @@ msgstr ""
msgid " -D name=value Set named variable to value."
msgstr ""
-#: systemv/cupsctl.c:211
-msgid " -E Enable encryption."
+#: systemv/cupsaddsmb.c:285 systemv/cupsctl.c:205
+msgid " -E Encrypt the connection."
msgstr ""
-#: systemv/cupsaddsmb.c:285
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-#: test/ipptool.c:4387
-msgid " -E Test with TLS encryption."
+#: test/ipptool.c:4408
+msgid " -E Test with HTTP Upgrade to TLS."
msgstr ""
-#: scheduler/main.c:2062
+#: scheduler/main.c:2021
msgid " -F Run in the foreground but detach from console."
msgstr ""
-#: systemv/cupsaddsmb.c:287
+#: systemv/cupsaddsmb.c:286
msgid " -H samba-server Use the named SAMBA server."
msgstr ""
-#: test/ipptool.c:4389
+#: test/ipptool.c:4410
msgid " -I Ignore errors."
msgstr ""
@@ -1067,83 +1051,59 @@ msgstr ""
msgid " -I include-dir Add include directory to search path."
msgstr ""
-#: systemv/cupstestppd.c:3780
+#: systemv/cupstestppd.c:3799
msgid " -I {filename,filters,none,profiles}"
msgstr ""
-#: scheduler/cupsfilter.c:1467
-msgid " -J title Set title."
-msgstr ""
-
-#: test/ipptool.c:4390
+#: test/ipptool.c:4411
msgid " -L Send requests using content-length."
msgstr ""
-#: scheduler/cupsfilter.c:1440 scheduler/cupsfilter.c:1468
+#: scheduler/cupsfilter.c:1433
msgid " -P filename.ppd Set PPD file."
msgstr ""
-#: systemv/cupstestppd.c:3782
+#: systemv/cupstestppd.c:3801
msgid " -R root-directory Set alternate root."
msgstr ""
-#: test/ipptool.c:4392
+#: test/ipptool.c:4413
msgid " -S Test with SSL encryption."
msgstr ""
-#: test/ipptool.c:4394
-msgid " -T Set the receive/send timeout in seconds."
+#: test/ipptool.c:4415
+msgid " -T seconds Set the receive/send timeout in seconds."
msgstr ""
-#: systemv/cupsaddsmb.c:289
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-#: scheduler/cupsfilter.c:1441 scheduler/cupsfilter.c:1469
-msgid " -U username Set username for job."
-msgstr ""
-
-#: systemv/cupsctl.c:212
+#: scheduler/cupsfilter.c:1434 systemv/cupsaddsmb.c:288 systemv/cupsctl.c:206
msgid " -U username Specify username."
msgstr ""
-#: test/ipptool.c:4396
+#: test/ipptool.c:4417
msgid " -V version Set default IPP version."
msgstr ""
-#: systemv/cupstestppd.c:3783
+#: systemv/cupstestppd.c:3802
msgid " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,translations}"
msgstr ""
-#: test/ipptool.c:4398
+#: test/ipptool.c:4419
msgid " -X Produce XML plist instead of plain text."
msgstr ""
-#: systemv/cupsaddsmb.c:291
+#: systemv/cupsaddsmb.c:289
msgid " -a Export all printers."
msgstr ""
-#: scheduler/cupsfilter.c:1470
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
#: ppdc/ppdc.cxx:442
msgid " -c catalog.po Load the specified message catalog."
msgstr ""
-#: scheduler/main.c:2059
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-#: scheduler/cupsfilter.c:1471
-msgid " -c copies Set number of copies."
-msgstr ""
-
-#: scheduler/cupsfilter.c:1442
+#: scheduler/cupsfilter.c:1435 scheduler/main.c:2019
msgid " -c cupsd.conf Set cupsd.conf file to use."
msgstr ""
-#: test/ipptool.c:4400
+#: test/ipptool.c:4421
msgid " -d name=value Set named variable to value."
msgstr ""
@@ -1151,55 +1111,43 @@ msgstr ""
msgid " -d output-dir Specify the output directory."
msgstr ""
-#: scheduler/cupsfilter.c:1444 scheduler/cupsfilter.c:1472
+#: scheduler/cupsfilter.c:1437
msgid " -d printer Use the named printer."
msgstr ""
-#: scheduler/cupsfilter.c:1446 scheduler/cupsfilter.c:1474
+#: scheduler/cupsfilter.c:1439
msgid " -e Use every filter from the PPD file."
msgstr ""
-#: scheduler/main.c:2061
+#: scheduler/main.c:2020
msgid " -f Run in the foreground."
msgstr ""
-#: test/ipptool.c:4402
+#: test/ipptool.c:4423
msgid " -f filename Set default request filename."
msgstr ""
-#: scheduler/cupsfilter.c:1476
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-#: scheduler/main.c:2064
+#: scheduler/main.c:2023
msgid " -h Show this usage message."
msgstr ""
-#: systemv/cupsaddsmb.c:292
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-#: systemv/cupsctl.c:213
+#: systemv/cupsaddsmb.c:290 systemv/cupsctl.c:207
msgid " -h server[:port] Specify server address."
msgstr ""
-#: scheduler/cupsfilter.c:1448 scheduler/cupsfilter.c:1478
+#: scheduler/cupsfilter.c:1441
msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
msgstr ""
-#: test/ipptool.c:4404
+#: test/ipptool.c:4425
msgid " -i seconds Repeat the last file with the given time interval."
msgstr ""
-#: scheduler/cupsfilter.c:1450
+#: scheduler/cupsfilter.c:1443
msgid " -j job-id[,N] Filter file N from the specified job (default is file 1)."
msgstr ""
-#: scheduler/cupsfilter.c:1480
-msgid " -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-#: scheduler/main.c:2065
+#: scheduler/main.c:2024
msgid " -l Run cupsd from launchd(8)."
msgstr ""
@@ -1211,22 +1159,18 @@ msgstr ""
msgid " -m Use the ModelName value as the filename."
msgstr ""
-#: scheduler/cupsfilter.c:1452
+#: scheduler/cupsfilter.c:1445
msgid " -m mime/type Set output MIME type (otherwise application/pdf)."
msgstr ""
-#: scheduler/cupsfilter.c:1454
+#: scheduler/cupsfilter.c:1447
msgid " -n copies Set number of copies."
msgstr ""
-#: test/ipptool.c:4406
+#: test/ipptool.c:4427
msgid " -n count Repeat the last file the given number of times."
msgstr ""
-#: scheduler/cupsfilter.c:1482
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
#: ppdc/ppdi.cxx:133
msgid " -o filename.drv Set driver information file (otherwise ppdi.drv)."
msgstr ""
@@ -1235,27 +1179,23 @@ msgstr ""
msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
msgstr ""
-#: scheduler/cupsfilter.c:1455
+#: scheduler/cupsfilter.c:1448
msgid " -o name=value Set option(s)."
msgstr ""
-#: scheduler/cupsfilter.c:1456
+#: scheduler/cupsfilter.c:1449
msgid " -p filename.ppd Set PPD file."
msgstr ""
-#: test/ipptool.c:4408
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-#: systemv/cupstestppd.c:3787
+#: systemv/cupstestppd.c:3806 test/ipptool.c:4429
msgid " -q Run silently."
msgstr ""
-#: systemv/cupstestppd.c:3788
+#: systemv/cupstestppd.c:3807
msgid " -r Use 'relaxed' open mode."
msgstr ""
-#: test/ipptool.c:4410
+#: test/ipptool.c:4430
msgid " -t Produce a test report."
msgstr ""
@@ -1263,100 +1203,89 @@ msgstr ""
msgid " -t Test PPDs instead of generating them."
msgstr ""
-#: scheduler/main.c:2066
+#: scheduler/main.c:2025
msgid " -t Test the configuration file."
msgstr ""
-#: scheduler/cupsfilter.c:1457
+#: scheduler/cupsfilter.c:1450
msgid " -t title Set title."
msgstr ""
-#: scheduler/cupsfilter.c:1458 scheduler/cupsfilter.c:1484
+#: scheduler/cupsfilter.c:1451
msgid " -u Remove the PPD file when finished."
msgstr ""
-#: systemv/cupstestppd.c:3789
-msgid " -v Be slightly verbose."
-msgstr ""
-
+#: systemv/cupsaddsmb.c:291 systemv/cupstestppd.c:3808 test/ipptool.c:4431
#: ppdc/ppdc.cxx:452 ppdc/ppdpo.cxx:259
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-#: systemv/cupsaddsmb.c:294
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-#: test/ipptool.c:4411
-msgid " -v Show all attributes sent and received."
+msgid " -v Be verbose."
msgstr ""
-#: systemv/cupstestppd.c:3790
+#: systemv/cupstestppd.c:3809
msgid " -vv Be very verbose."
msgstr ""
-#: ppdc/ppdc.cxx:454
+#: ppdc/ppdc.cxx:453
msgid " -z Compress PPD files using GNU zip."
msgstr ""
-#: systemv/cupstestppd.c:333 systemv/cupstestppd.c:345
-#: systemv/cupstestppd.c:478 systemv/cupstestppd.c:493
-#: systemv/cupstestppd.c:514 systemv/cupstestppd.c:529
-#: systemv/cupstestppd.c:559 systemv/cupstestppd.c:579
-#: systemv/cupstestppd.c:602 systemv/cupstestppd.c:620
-#: systemv/cupstestppd.c:646 systemv/cupstestppd.c:664
-#: systemv/cupstestppd.c:684 systemv/cupstestppd.c:704
-#: systemv/cupstestppd.c:722 systemv/cupstestppd.c:738
-#: systemv/cupstestppd.c:756 systemv/cupstestppd.c:777
-#: systemv/cupstestppd.c:796 systemv/cupstestppd.c:816
+#: systemv/cupstestppd.c:332 systemv/cupstestppd.c:351
+#: systemv/cupstestppd.c:363 systemv/cupstestppd.c:496
+#: systemv/cupstestppd.c:511 systemv/cupstestppd.c:532
+#: systemv/cupstestppd.c:547 systemv/cupstestppd.c:577
+#: systemv/cupstestppd.c:597 systemv/cupstestppd.c:620
+#: systemv/cupstestppd.c:638 systemv/cupstestppd.c:664
+#: systemv/cupstestppd.c:682 systemv/cupstestppd.c:702
+#: systemv/cupstestppd.c:722 systemv/cupstestppd.c:740
+#: systemv/cupstestppd.c:757 systemv/cupstestppd.c:776
+#: systemv/cupstestppd.c:797 systemv/cupstestppd.c:816
#: systemv/cupstestppd.c:836 systemv/cupstestppd.c:856
-#: systemv/cupstestppd.c:876 systemv/cupstestppd.c:894
-#: systemv/cupstestppd.c:911 systemv/cupstestppd.c:933
-#: systemv/cupstestppd.c:951 systemv/cupstestppd.c:968
-#: systemv/cupstestppd.c:986 systemv/cupstestppd.c:1002
-#: systemv/cupstestppd.c:1022 systemv/cupstestppd.c:1053
-#: systemv/cupstestppd.c:1075 systemv/cupstestppd.c:1126
-#: systemv/cupstestppd.c:1145 systemv/cupstestppd.c:1189
-#: systemv/cupstestppd.c:1203 systemv/cupstestppd.c:1235
-#: systemv/cupstestppd.c:1262 systemv/cupstestppd.c:1780
-#: systemv/cupstestppd.c:1799 systemv/cupstestppd.c:1817
-#: systemv/cupstestppd.c:1869 systemv/cupstestppd.c:1885
-#: systemv/cupstestppd.c:1922 systemv/cupstestppd.c:1940
-#: systemv/cupstestppd.c:1976 systemv/cupstestppd.c:1990
-#: systemv/cupstestppd.c:2017 systemv/cupstestppd.c:2031
-#: systemv/cupstestppd.c:2077 systemv/cupstestppd.c:2099
-#: systemv/cupstestppd.c:2122 systemv/cupstestppd.c:2139
-#: systemv/cupstestppd.c:2181 systemv/cupstestppd.c:2224
-#: systemv/cupstestppd.c:2271 systemv/cupstestppd.c:2295
-#: systemv/cupstestppd.c:2349 systemv/cupstestppd.c:2365
-#: systemv/cupstestppd.c:2395 systemv/cupstestppd.c:2409
-#: systemv/cupstestppd.c:2435 systemv/cupstestppd.c:2451
-#: systemv/cupstestppd.c:2491 systemv/cupstestppd.c:2505
-#: systemv/cupstestppd.c:2531 systemv/cupstestppd.c:2547
-#: systemv/cupstestppd.c:2577 systemv/cupstestppd.c:2591
-#: systemv/cupstestppd.c:2618 systemv/cupstestppd.c:2635
-#: systemv/cupstestppd.c:2649 systemv/cupstestppd.c:2673
-#: systemv/cupstestppd.c:2690 systemv/cupstestppd.c:2704
-#: systemv/cupstestppd.c:2728 systemv/cupstestppd.c:2745
-#: systemv/cupstestppd.c:2759 systemv/cupstestppd.c:2783
-#: systemv/cupstestppd.c:2800 systemv/cupstestppd.c:2814
-#: systemv/cupstestppd.c:2838 systemv/cupstestppd.c:2852
-#: systemv/cupstestppd.c:2867 systemv/cupstestppd.c:2884
-#: systemv/cupstestppd.c:2940 systemv/cupstestppd.c:2975
-#: systemv/cupstestppd.c:2989 systemv/cupstestppd.c:3017
-#: systemv/cupstestppd.c:3082 systemv/cupstestppd.c:3097
-#: systemv/cupstestppd.c:3135 systemv/cupstestppd.c:3155
-#: systemv/cupstestppd.c:3169 systemv/cupstestppd.c:3368
-#: systemv/cupstestppd.c:3404 systemv/cupstestppd.c:3418
-#: systemv/cupstestppd.c:3464 systemv/cupstestppd.c:3496
-#: systemv/cupstestppd.c:3513 systemv/cupstestppd.c:3536
-#: systemv/cupstestppd.c:3552 systemv/cupstestppd.c:3590
-#: systemv/cupstestppd.c:3731 systemv/cupstestppd.c:3753
-#: systemv/cupstestppd.c:3861
+#: systemv/cupstestppd.c:876 systemv/cupstestppd.c:896
+#: systemv/cupstestppd.c:914 systemv/cupstestppd.c:931
+#: systemv/cupstestppd.c:953 systemv/cupstestppd.c:971
+#: systemv/cupstestppd.c:988 systemv/cupstestppd.c:1006
+#: systemv/cupstestppd.c:1022 systemv/cupstestppd.c:1042
+#: systemv/cupstestppd.c:1073 systemv/cupstestppd.c:1095
+#: systemv/cupstestppd.c:1146 systemv/cupstestppd.c:1165
+#: systemv/cupstestppd.c:1209 systemv/cupstestppd.c:1223
+#: systemv/cupstestppd.c:1255 systemv/cupstestppd.c:1282
+#: systemv/cupstestppd.c:1800 systemv/cupstestppd.c:1819
+#: systemv/cupstestppd.c:1837 systemv/cupstestppd.c:1889
+#: systemv/cupstestppd.c:1905 systemv/cupstestppd.c:1942
+#: systemv/cupstestppd.c:1960 systemv/cupstestppd.c:1996
+#: systemv/cupstestppd.c:2010 systemv/cupstestppd.c:2037
+#: systemv/cupstestppd.c:2051 systemv/cupstestppd.c:2097
+#: systemv/cupstestppd.c:2119 systemv/cupstestppd.c:2142
+#: systemv/cupstestppd.c:2159 systemv/cupstestppd.c:2201
+#: systemv/cupstestppd.c:2244 systemv/cupstestppd.c:2291
+#: systemv/cupstestppd.c:2315 systemv/cupstestppd.c:2369
+#: systemv/cupstestppd.c:2385 systemv/cupstestppd.c:2415
+#: systemv/cupstestppd.c:2429 systemv/cupstestppd.c:2455
+#: systemv/cupstestppd.c:2471 systemv/cupstestppd.c:2511
+#: systemv/cupstestppd.c:2525 systemv/cupstestppd.c:2551
+#: systemv/cupstestppd.c:2567 systemv/cupstestppd.c:2597
+#: systemv/cupstestppd.c:2611 systemv/cupstestppd.c:2638
+#: systemv/cupstestppd.c:2655 systemv/cupstestppd.c:2669
+#: systemv/cupstestppd.c:2693 systemv/cupstestppd.c:2710
+#: systemv/cupstestppd.c:2724 systemv/cupstestppd.c:2748
+#: systemv/cupstestppd.c:2765 systemv/cupstestppd.c:2779
+#: systemv/cupstestppd.c:2803 systemv/cupstestppd.c:2820
+#: systemv/cupstestppd.c:2834 systemv/cupstestppd.c:2858
+#: systemv/cupstestppd.c:2872 systemv/cupstestppd.c:2887
+#: systemv/cupstestppd.c:2904 systemv/cupstestppd.c:2960
+#: systemv/cupstestppd.c:2995 systemv/cupstestppd.c:3009
+#: systemv/cupstestppd.c:3037 systemv/cupstestppd.c:3102
+#: systemv/cupstestppd.c:3117 systemv/cupstestppd.c:3156
+#: systemv/cupstestppd.c:3176 systemv/cupstestppd.c:3190
+#: systemv/cupstestppd.c:3387 systemv/cupstestppd.c:3423
+#: systemv/cupstestppd.c:3437 systemv/cupstestppd.c:3483
+#: systemv/cupstestppd.c:3515 systemv/cupstestppd.c:3532
+#: systemv/cupstestppd.c:3555 systemv/cupstestppd.c:3571
+#: systemv/cupstestppd.c:3609 systemv/cupstestppd.c:3750
+#: systemv/cupstestppd.c:3772 systemv/cupstestppd.c:3880
msgid " FAIL"
msgstr ""
-#: systemv/cupstestppd.c:1286
+#: systemv/cupstestppd.c:1306
msgid " PASS"
msgstr ""
@@ -1370,32 +1299,12 @@ msgstr ""
msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
msgstr ""
-#: filter/bannertops.c:784
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr ""
-
-#: filter/bannertops.c:805
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr ""
-
-#: filter/bannertops.c:775
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr ""
-
-#: filter/bannertops.c:794
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr ""
-
#: systemv/lpstat.c:750
#, c-format
msgid "%s accepting requests since %s"
msgstr ""
-#: scheduler/ipp.c:11234
+#: scheduler/ipp.c:10045
#, c-format
msgid "%s cannot be changed."
msgstr ""
@@ -1420,7 +1329,6 @@ msgstr ""
msgid "%s is ready and printing"
msgstr ""
-#: driver/rastertoescpx.c:1775 driver/rastertopclx.c:1800
#: filter/rastertoepson.c:985 filter/rastertohp.c:711
#: filter/rastertolabel.c:1134
#, c-format
@@ -1432,7 +1340,7 @@ msgstr ""
msgid "%s not accepting requests since %s -"
msgstr ""
-#: scheduler/ipp.c:718
+#: scheduler/ipp.c:691
#, c-format
msgid "%s not supported."
msgstr ""
@@ -1453,10 +1361,10 @@ msgid "%s: %-33.33s [job %d localhost]"
msgstr ""
#. TRANSLATORS: Message is "subject: error"
-#: cups/langprintf.c:86 scheduler/cupsfilter.c:719 systemv/lpadmin.c:805
+#: cups/langprintf.c:86 scheduler/cupsfilter.c:714 systemv/lpadmin.c:805
#: systemv/lpadmin.c:856 systemv/lpadmin.c:906 systemv/lpadmin.c:962
-#: systemv/lpadmin.c:1060 systemv/lpadmin.c:1113 systemv/lpadmin.c:1170
-#: systemv/lpadmin.c:1481
+#: systemv/lpadmin.c:1060 systemv/lpadmin.c:1112 systemv/lpadmin.c:1168
+#: systemv/lpadmin.c:1478
#, c-format
msgid "%s: %s"
msgstr ""
@@ -1629,7 +1537,7 @@ msgstr ""
msgid "%s: Error - unable to access \"%s\" - %s"
msgstr ""
-#: berkeley/lpr.c:396 systemv/lp.c:624
+#: berkeley/lpr.c:395 systemv/lp.c:623
#, c-format
msgid "%s: Error - unable to queue from stdin - %s."
msgstr ""
@@ -1665,7 +1573,7 @@ msgstr ""
msgid "%s: Invalid destination name in list \"%s\"."
msgstr ""
-#: scheduler/cupsfilter.c:572
+#: scheduler/cupsfilter.c:567
#, c-format
msgid "%s: Invalid filter string \"%s\"."
msgstr ""
@@ -1675,7 +1583,7 @@ msgstr ""
msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
msgstr ""
-#: scheduler/cupsfilter.c:463
+#: scheduler/cupsfilter.c:458
#, c-format
msgid "%s: No filter to convert from %s/%s to %s/%s."
msgstr ""
@@ -1693,7 +1601,7 @@ msgstr ""
msgid "%s: Sorry, no encryption support."
msgstr ""
-#: berkeley/lpq.c:295 scheduler/cupsfilter.c:1226 systemv/cancel.c:237
+#: berkeley/lpq.c:295 scheduler/cupsfilter.c:1221 systemv/cancel.c:237
#: systemv/cupsaddsmb.c:144 systemv/cupsaddsmb.c:171
#, c-format
msgid "%s: Unable to connect to server."
@@ -1704,7 +1612,7 @@ msgstr ""
msgid "%s: Unable to contact server."
msgstr ""
-#: scheduler/cupsfilter.c:429
+#: scheduler/cupsfilter.c:424
#, c-format
msgid "%s: Unable to determine MIME type of \"%s\"."
msgstr ""
@@ -1714,12 +1622,12 @@ msgstr ""
msgid "%s: Unable to open %s: %s"
msgstr ""
-#: scheduler/cupsfilter.c:667 ppdc/ppdmerge.cxx:112
+#: scheduler/cupsfilter.c:662 ppdc/ppdmerge.cxx:112
#, c-format
msgid "%s: Unable to open PPD file: %s on line %d."
msgstr ""
-#: scheduler/cupsfilter.c:397
+#: scheduler/cupsfilter.c:392
#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr ""
@@ -1729,17 +1637,17 @@ msgstr ""
msgid "%s: Unknown destination \"%s\"."
msgstr ""
-#: scheduler/cupsfilter.c:440
+#: scheduler/cupsfilter.c:435
#, c-format
msgid "%s: Unknown destination MIME type %s/%s."
msgstr ""
-#: scheduler/cupsfilter.c:1432
+#: scheduler/cupsfilter.c:1426
#, c-format
msgid "%s: Unknown option \"%c\"."
msgstr ""
-#: scheduler/cupsfilter.c:421
+#: scheduler/cupsfilter.c:416
#, c-format
msgid "%s: Unknown source MIME type %s/%s."
msgstr ""
@@ -1769,195 +1677,195 @@ msgstr ""
msgid "%s: Warning - mode option ignored."
msgstr ""
-#: ppdc/sample.c:319
+#: ppdc/sample.c:310
msgid "-1"
msgstr ""
-#: ppdc/sample.c:310
+#: ppdc/sample.c:301
msgid "-10"
msgstr ""
-#: ppdc/sample.c:402
+#: ppdc/sample.c:393
msgid "-100"
msgstr ""
-#: ppdc/sample.c:401
+#: ppdc/sample.c:392
msgid "-105"
msgstr ""
-#: ppdc/sample.c:309
+#: ppdc/sample.c:300
msgid "-11"
msgstr ""
-#: ppdc/sample.c:400
+#: ppdc/sample.c:391
msgid "-110"
msgstr ""
-#: ppdc/sample.c:399
+#: ppdc/sample.c:390
msgid "-115"
msgstr ""
-#: ppdc/sample.c:308
+#: ppdc/sample.c:299
msgid "-12"
msgstr ""
-#: ppdc/sample.c:398
+#: ppdc/sample.c:389
msgid "-120"
msgstr ""
-#: ppdc/sample.c:307
+#: ppdc/sample.c:298
msgid "-13"
msgstr ""
-#: ppdc/sample.c:306
+#: ppdc/sample.c:297
msgid "-14"
msgstr ""
-#: ppdc/sample.c:305
+#: ppdc/sample.c:296
msgid "-15"
msgstr ""
-#: ppdc/sample.c:318
+#: ppdc/sample.c:309
msgid "-2"
msgstr ""
-#: ppdc/sample.c:418
+#: ppdc/sample.c:409
msgid "-20"
msgstr ""
-#: ppdc/sample.c:417
+#: ppdc/sample.c:408
msgid "-25"
msgstr ""
-#: ppdc/sample.c:317
+#: ppdc/sample.c:308
msgid "-3"
msgstr ""
-#: ppdc/sample.c:416
+#: ppdc/sample.c:407
msgid "-30"
msgstr ""
-#: ppdc/sample.c:415
+#: ppdc/sample.c:406
msgid "-35"
msgstr ""
-#: ppdc/sample.c:316
+#: ppdc/sample.c:307
msgid "-4"
msgstr ""
-#: ppdc/sample.c:414
+#: ppdc/sample.c:405
msgid "-40"
msgstr ""
-#: ppdc/sample.c:413
+#: ppdc/sample.c:404
msgid "-45"
msgstr ""
-#: ppdc/sample.c:315
+#: ppdc/sample.c:306
msgid "-5"
msgstr ""
-#: ppdc/sample.c:412
+#: ppdc/sample.c:403
msgid "-50"
msgstr ""
-#: ppdc/sample.c:411
+#: ppdc/sample.c:402
msgid "-55"
msgstr ""
-#: ppdc/sample.c:314
+#: ppdc/sample.c:305
msgid "-6"
msgstr ""
-#: ppdc/sample.c:410
+#: ppdc/sample.c:401
msgid "-60"
msgstr ""
-#: ppdc/sample.c:409
+#: ppdc/sample.c:400
msgid "-65"
msgstr ""
-#: ppdc/sample.c:313
+#: ppdc/sample.c:304
msgid "-7"
msgstr ""
-#: ppdc/sample.c:408
+#: ppdc/sample.c:399
msgid "-70"
msgstr ""
-#: ppdc/sample.c:407
+#: ppdc/sample.c:398
msgid "-75"
msgstr ""
-#: ppdc/sample.c:312
+#: ppdc/sample.c:303
msgid "-8"
msgstr ""
-#: ppdc/sample.c:406
+#: ppdc/sample.c:397
msgid "-80"
msgstr ""
-#: ppdc/sample.c:405
+#: ppdc/sample.c:396
msgid "-85"
msgstr ""
-#: ppdc/sample.c:311
+#: ppdc/sample.c:302
msgid "-9"
msgstr ""
-#: ppdc/sample.c:404
+#: ppdc/sample.c:395
msgid "-90"
msgstr ""
-#: ppdc/sample.c:403
+#: ppdc/sample.c:394
msgid "-95"
msgstr ""
-#: ppdc/sample.c:320
+#: ppdc/sample.c:311
msgid "0"
msgstr ""
-#: ppdc/sample.c:321
+#: ppdc/sample.c:312
msgid "1"
msgstr ""
-#: ppdc/sample.c:393
+#: ppdc/sample.c:384
msgid "1 inch/sec."
msgstr ""
-#: ppdc/sample.c:181
+#: ppdc/sample.c:172
msgid "1.25x0.25\""
msgstr ""
-#: ppdc/sample.c:182
+#: ppdc/sample.c:173
msgid "1.25x2.25\""
msgstr ""
-#: ppdc/sample.c:441
+#: ppdc/sample.c:432
msgid "1.5 inch/sec."
msgstr ""
-#: ppdc/sample.c:183
+#: ppdc/sample.c:174
msgid "1.50x0.25\""
msgstr ""
-#: ppdc/sample.c:184
+#: ppdc/sample.c:175
msgid "1.50x0.50\""
msgstr ""
-#: ppdc/sample.c:185
+#: ppdc/sample.c:176
msgid "1.50x1.00\""
msgstr ""
-#: ppdc/sample.c:186
+#: ppdc/sample.c:177
msgid "1.50x2.00\""
msgstr ""
-#: ppdc/sample.c:330
+#: ppdc/sample.c:321
msgid "10"
msgstr ""
-#: ppdc/sample.c:452
+#: ppdc/sample.c:443
msgid "10 inches/sec."
msgstr ""
@@ -1973,39 +1881,39 @@ msgstr ""
msgid "10 x 14"
msgstr ""
-#: ppdc/sample.c:432
+#: ppdc/sample.c:423
msgid "100"
msgstr ""
-#: ppdc/sample.c:343
+#: ppdc/sample.c:334
msgid "100 mm/sec."
msgstr ""
-#: ppdc/sample.c:433
+#: ppdc/sample.c:424
msgid "105"
msgstr ""
-#: ppdc/sample.c:331
+#: ppdc/sample.c:322
msgid "11"
msgstr ""
-#: ppdc/sample.c:453
+#: ppdc/sample.c:444
msgid "11 inches/sec."
msgstr ""
-#: ppdc/sample.c:434
+#: ppdc/sample.c:425
msgid "110"
msgstr ""
-#: ppdc/sample.c:435
+#: ppdc/sample.c:426
msgid "115"
msgstr ""
-#: ppdc/sample.c:332
+#: ppdc/sample.c:323
msgid "12"
msgstr ""
-#: ppdc/sample.c:454
+#: ppdc/sample.c:445
msgid "12 inches/sec."
msgstr ""
@@ -2013,39 +1921,39 @@ msgstr ""
msgid "12 x 11"
msgstr ""
-#: ppdc/sample.c:436
+#: ppdc/sample.c:427
msgid "120"
msgstr ""
-#: ppdc/sample.c:344
+#: ppdc/sample.c:335
msgid "120 mm/sec."
msgstr ""
-#: ppdc/sample.c:252
+#: ppdc/sample.c:243
msgid "120x60dpi"
msgstr ""
-#: ppdc/sample.c:258
+#: ppdc/sample.c:249
msgid "120x72dpi"
msgstr ""
-#: ppdc/sample.c:333
+#: ppdc/sample.c:324
msgid "13"
msgstr ""
-#: ppdc/sample.c:241
+#: ppdc/sample.c:232
msgid "136dpi"
msgstr ""
-#: ppdc/sample.c:334
+#: ppdc/sample.c:325
msgid "14"
msgstr ""
-#: ppdc/sample.c:335
+#: ppdc/sample.c:326
msgid "15"
msgstr ""
-#: ppdc/sample.c:337
+#: ppdc/sample.c:328
msgid "15 mm/sec."
msgstr ""
@@ -2053,187 +1961,187 @@ msgstr ""
msgid "15 x 11"
msgstr ""
-#: ppdc/sample.c:345
+#: ppdc/sample.c:336
msgid "150 mm/sec."
msgstr ""
-#: ppdc/sample.c:292
+#: ppdc/sample.c:283
msgid "150dpi"
msgstr ""
-#: ppdc/sample.c:377
+#: ppdc/sample.c:368
msgid "16"
msgstr ""
-#: ppdc/sample.c:378
+#: ppdc/sample.c:369
msgid "17"
msgstr ""
-#: ppdc/sample.c:379
+#: ppdc/sample.c:370
msgid "18"
msgstr ""
-#: ppdc/sample.c:253
+#: ppdc/sample.c:244
msgid "180dpi"
msgstr ""
-#: ppdc/sample.c:380
+#: ppdc/sample.c:371
msgid "19"
msgstr ""
-#: ppdc/sample.c:322
+#: ppdc/sample.c:313
msgid "2"
msgstr ""
-#: ppdc/sample.c:394
+#: ppdc/sample.c:385
msgid "2 inches/sec."
msgstr ""
-#: ppdc/sample.c:279
+#: ppdc/sample.c:270
msgid "2-Sided Printing"
msgstr ""
-#: ppdc/sample.c:187
+#: ppdc/sample.c:178
msgid "2.00x0.37\""
msgstr ""
-#: ppdc/sample.c:188
+#: ppdc/sample.c:179
msgid "2.00x0.50\""
msgstr ""
-#: ppdc/sample.c:189
+#: ppdc/sample.c:180
msgid "2.00x1.00\""
msgstr ""
-#: ppdc/sample.c:190
+#: ppdc/sample.c:181
msgid "2.00x1.25\""
msgstr ""
-#: ppdc/sample.c:191
+#: ppdc/sample.c:182
msgid "2.00x2.00\""
msgstr ""
-#: ppdc/sample.c:192
+#: ppdc/sample.c:183
msgid "2.00x3.00\""
msgstr ""
-#: ppdc/sample.c:193
+#: ppdc/sample.c:184
msgid "2.00x4.00\""
msgstr ""
-#: ppdc/sample.c:194
+#: ppdc/sample.c:185
msgid "2.00x5.50\""
msgstr ""
-#: ppdc/sample.c:195
+#: ppdc/sample.c:186
msgid "2.25x0.50\""
msgstr ""
-#: ppdc/sample.c:196
+#: ppdc/sample.c:187
msgid "2.25x1.25\""
msgstr ""
-#: ppdc/sample.c:197
+#: ppdc/sample.c:188
msgid "2.25x4.00\""
msgstr ""
-#: ppdc/sample.c:198
+#: ppdc/sample.c:189
msgid "2.25x5.50\""
msgstr ""
-#: ppdc/sample.c:199
+#: ppdc/sample.c:190
msgid "2.38x5.50\""
msgstr ""
-#: ppdc/sample.c:442
+#: ppdc/sample.c:433
msgid "2.5 inches/sec."
msgstr ""
-#: ppdc/sample.c:200
+#: ppdc/sample.c:191
msgid "2.50x1.00\""
msgstr ""
-#: ppdc/sample.c:201
+#: ppdc/sample.c:192
msgid "2.50x2.00\""
msgstr ""
-#: ppdc/sample.c:202
+#: ppdc/sample.c:193
msgid "2.75x1.25\""
msgstr ""
-#: ppdc/sample.c:203
+#: ppdc/sample.c:194
msgid "2.9 x 1\""
msgstr ""
-#: ppdc/sample.c:381
+#: ppdc/sample.c:372
msgid "20"
msgstr ""
-#: ppdc/sample.c:338
+#: ppdc/sample.c:329
msgid "20 mm/sec."
msgstr ""
-#: ppdc/sample.c:346
+#: ppdc/sample.c:337
msgid "200 mm/sec."
msgstr ""
-#: ppdc/sample.c:242
+#: ppdc/sample.c:233
msgid "203dpi"
msgstr ""
-#: ppdc/sample.c:382
+#: ppdc/sample.c:373
msgid "21"
msgstr ""
-#: ppdc/sample.c:383
+#: ppdc/sample.c:374
msgid "22"
msgstr ""
-#: ppdc/sample.c:384
+#: ppdc/sample.c:375
msgid "23"
msgstr ""
-#: ppdc/sample.c:385
+#: ppdc/sample.c:376
msgid "24"
msgstr ""
-#: ppdc/sample.c:250
+#: ppdc/sample.c:241
msgid "24-Pin Series"
msgstr ""
-#: ppdc/sample.c:259
+#: ppdc/sample.c:250
msgid "240x72dpi"
msgstr ""
-#: ppdc/sample.c:386
+#: ppdc/sample.c:377
msgid "25"
msgstr ""
-#: ppdc/sample.c:347
+#: ppdc/sample.c:338
msgid "250 mm/sec."
msgstr ""
-#: ppdc/sample.c:387
+#: ppdc/sample.c:378
msgid "26"
msgstr ""
-#: ppdc/sample.c:388
+#: ppdc/sample.c:379
msgid "27"
msgstr ""
-#: ppdc/sample.c:389
+#: ppdc/sample.c:380
msgid "28"
msgstr ""
-#: ppdc/sample.c:390
+#: ppdc/sample.c:381
msgid "29"
msgstr ""
-#: ppdc/sample.c:323
+#: ppdc/sample.c:314
msgid "3"
msgstr ""
-#: ppdc/sample.c:395
+#: ppdc/sample.c:386
msgid "3 inches/sec."
msgstr ""
@@ -2241,43 +2149,43 @@ msgstr ""
msgid "3 x 5"
msgstr ""
-#: ppdc/sample.c:204
+#: ppdc/sample.c:195
msgid "3.00x1.00\""
msgstr ""
-#: ppdc/sample.c:205
+#: ppdc/sample.c:196
msgid "3.00x1.25\""
msgstr ""
-#: ppdc/sample.c:206
+#: ppdc/sample.c:197
msgid "3.00x2.00\""
msgstr ""
-#: ppdc/sample.c:207
+#: ppdc/sample.c:198
msgid "3.00x3.00\""
msgstr ""
-#: ppdc/sample.c:208
+#: ppdc/sample.c:199
msgid "3.00x5.00\""
msgstr ""
-#: ppdc/sample.c:209
+#: ppdc/sample.c:200
msgid "3.25x2.00\""
msgstr ""
-#: ppdc/sample.c:210
+#: ppdc/sample.c:201
msgid "3.25x5.00\""
msgstr ""
-#: ppdc/sample.c:211
+#: ppdc/sample.c:202
msgid "3.25x5.50\""
msgstr ""
-#: ppdc/sample.c:212
+#: ppdc/sample.c:203
msgid "3.25x5.83\""
msgstr ""
-#: ppdc/sample.c:213
+#: ppdc/sample.c:204
msgid "3.25x7.83\""
msgstr ""
@@ -2289,103 +2197,99 @@ msgstr ""
msgid "3.5\" Disk"
msgstr ""
-#: ppdc/sample.c:180
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr ""
-
-#: ppdc/sample.c:214
+#: ppdc/sample.c:205
msgid "3.50x1.00\""
msgstr ""
-#: ppdc/sample.c:391
+#: ppdc/sample.c:382
msgid "30"
msgstr ""
-#: ppdc/sample.c:339
+#: ppdc/sample.c:330
msgid "30 mm/sec."
msgstr ""
-#: ppdc/sample.c:348
+#: ppdc/sample.c:339
msgid "300 mm/sec."
msgstr ""
-#: ppdc/sample.c:243
+#: ppdc/sample.c:234
msgid "300dpi"
msgstr ""
-#: ppdc/sample.c:419
+#: ppdc/sample.c:410
msgid "35"
msgstr ""
-#: ppdc/sample.c:255
+#: ppdc/sample.c:246
msgid "360dpi"
msgstr ""
-#: ppdc/sample.c:254
+#: ppdc/sample.c:245
msgid "360x180dpi"
msgstr ""
-#: ppdc/sample.c:324
+#: ppdc/sample.c:315
msgid "4"
msgstr ""
-#: ppdc/sample.c:396
+#: ppdc/sample.c:387
msgid "4 inches/sec."
msgstr ""
-#: ppdc/sample.c:215
+#: ppdc/sample.c:206
msgid "4.00x1.00\""
msgstr ""
-#: ppdc/sample.c:223
+#: ppdc/sample.c:214
msgid "4.00x13.00\""
msgstr ""
-#: ppdc/sample.c:216
+#: ppdc/sample.c:207
msgid "4.00x2.00\""
msgstr ""
-#: ppdc/sample.c:217
+#: ppdc/sample.c:208
msgid "4.00x2.50\""
msgstr ""
-#: ppdc/sample.c:218
+#: ppdc/sample.c:209
msgid "4.00x3.00\""
msgstr ""
-#: ppdc/sample.c:219
+#: ppdc/sample.c:210
msgid "4.00x4.00\""
msgstr ""
-#: ppdc/sample.c:220
+#: ppdc/sample.c:211
msgid "4.00x5.00\""
msgstr ""
-#: ppdc/sample.c:221
+#: ppdc/sample.c:212
msgid "4.00x6.00\""
msgstr ""
-#: ppdc/sample.c:222
+#: ppdc/sample.c:213
msgid "4.00x6.50\""
msgstr ""
-#: ppdc/sample.c:420
+#: ppdc/sample.c:411
msgid "40"
msgstr ""
-#: ppdc/sample.c:340
+#: ppdc/sample.c:331
msgid "40 mm/sec."
msgstr ""
-#: ppdc/sample.c:421
+#: ppdc/sample.c:412
msgid "45"
msgstr ""
-#: ppdc/sample.c:325
+#: ppdc/sample.c:316
msgid "5"
msgstr ""
-#: ppdc/sample.c:446
+#: ppdc/sample.c:437
msgid "5 inches/sec."
msgstr ""
@@ -2393,79 +2297,79 @@ msgstr ""
msgid "5 x 7"
msgstr ""
-#: ppdc/sample.c:422
+#: ppdc/sample.c:413
msgid "50"
msgstr ""
-#: ppdc/sample.c:423
+#: ppdc/sample.c:414
msgid "55"
msgstr ""
-#: ppdc/sample.c:326
+#: ppdc/sample.c:317
msgid "6"
msgstr ""
-#: ppdc/sample.c:447
+#: ppdc/sample.c:438
msgid "6 inches/sec."
msgstr ""
-#: ppdc/sample.c:224
+#: ppdc/sample.c:215
msgid "6.00x1.00\""
msgstr ""
-#: ppdc/sample.c:225
+#: ppdc/sample.c:216
msgid "6.00x2.00\""
msgstr ""
-#: ppdc/sample.c:226
+#: ppdc/sample.c:217
msgid "6.00x3.00\""
msgstr ""
-#: ppdc/sample.c:227
+#: ppdc/sample.c:218
msgid "6.00x4.00\""
msgstr ""
-#: ppdc/sample.c:228
+#: ppdc/sample.c:219
msgid "6.00x5.00\""
msgstr ""
-#: ppdc/sample.c:229
+#: ppdc/sample.c:220
msgid "6.00x6.00\""
msgstr ""
-#: ppdc/sample.c:230
+#: ppdc/sample.c:221
msgid "6.00x6.50\""
msgstr ""
-#: ppdc/sample.c:424
+#: ppdc/sample.c:415
msgid "60"
msgstr ""
-#: ppdc/sample.c:341
+#: ppdc/sample.c:332
msgid "60 mm/sec."
msgstr ""
-#: ppdc/sample.c:270
+#: ppdc/sample.c:261
msgid "600dpi"
msgstr ""
-#: ppdc/sample.c:251
+#: ppdc/sample.c:242
msgid "60dpi"
msgstr ""
-#: ppdc/sample.c:257
+#: ppdc/sample.c:248
msgid "60x72dpi"
msgstr ""
-#: ppdc/sample.c:425
+#: ppdc/sample.c:416
msgid "65"
msgstr ""
-#: ppdc/sample.c:327
+#: ppdc/sample.c:318
msgid "7"
msgstr ""
-#: ppdc/sample.c:449
+#: ppdc/sample.c:440
msgid "7 inches/sec."
msgstr ""
@@ -2473,23 +2377,23 @@ msgstr ""
msgid "7 x 9"
msgstr ""
-#: ppdc/sample.c:426
+#: ppdc/sample.c:417
msgid "70"
msgstr ""
-#: ppdc/sample.c:261
+#: ppdc/sample.c:252
msgid "720dpi"
msgstr ""
-#: ppdc/sample.c:427
+#: ppdc/sample.c:418
msgid "75"
msgstr ""
-#: ppdc/sample.c:328
+#: ppdc/sample.c:319
msgid "8"
msgstr ""
-#: ppdc/sample.c:450
+#: ppdc/sample.c:441
msgid "8 inches/sec."
msgstr ""
@@ -2497,51 +2401,51 @@ msgstr ""
msgid "8 x 10"
msgstr ""
-#: ppdc/sample.c:231
+#: ppdc/sample.c:222
msgid "8.00x1.00\""
msgstr ""
-#: ppdc/sample.c:232
+#: ppdc/sample.c:223
msgid "8.00x2.00\""
msgstr ""
-#: ppdc/sample.c:233
+#: ppdc/sample.c:224
msgid "8.00x3.00\""
msgstr ""
-#: ppdc/sample.c:234
+#: ppdc/sample.c:225
msgid "8.00x4.00\""
msgstr ""
-#: ppdc/sample.c:235
+#: ppdc/sample.c:226
msgid "8.00x5.00\""
msgstr ""
-#: ppdc/sample.c:236
+#: ppdc/sample.c:227
msgid "8.00x6.00\""
msgstr ""
-#: ppdc/sample.c:237
+#: ppdc/sample.c:228
msgid "8.00x6.50\""
msgstr ""
-#: ppdc/sample.c:428
+#: ppdc/sample.c:419
msgid "80"
msgstr ""
-#: ppdc/sample.c:342
+#: ppdc/sample.c:333
msgid "80 mm/sec."
msgstr ""
-#: ppdc/sample.c:429
+#: ppdc/sample.c:420
msgid "85"
msgstr ""
-#: ppdc/sample.c:329
+#: ppdc/sample.c:320
msgid "9"
msgstr ""
-#: ppdc/sample.c:451
+#: ppdc/sample.c:442
msgid "9 inches/sec."
msgstr ""
@@ -2553,15 +2457,15 @@ msgstr ""
msgid "9 x 12"
msgstr ""
-#: ppdc/sample.c:256
+#: ppdc/sample.c:247
msgid "9-Pin Series"
msgstr ""
-#: ppdc/sample.c:430
+#: ppdc/sample.c:421
msgid "90"
msgstr ""
-#: ppdc/sample.c:431
+#: ppdc/sample.c:422
msgid "95"
msgstr ""
@@ -2569,20 +2473,20 @@ msgstr ""
msgid "?Invalid help command unknown."
msgstr ""
-#: cgi-bin/admin.c:2443
+#: cgi-bin/admin.c:2368
msgid "A Samba password is required to export printer drivers"
msgstr ""
-#: cgi-bin/admin.c:2439
+#: cgi-bin/admin.c:2364
msgid "A Samba username is required to export printer drivers"
msgstr ""
-#: scheduler/ipp.c:2430
+#: scheduler/ipp.c:2283
#, c-format
msgid "A class named \"%s\" already exists."
msgstr ""
-#: scheduler/ipp.c:1034
+#: scheduler/ipp.c:1004
#, c-format
msgid "A printer named \"%s\" already exists."
msgstr ""
@@ -2727,7 +2631,7 @@ msgstr ""
msgid "Accept Jobs"
msgstr ""
-#: cups/http-support.c:1257
+#: cups/http-support.c:1284
msgid "Accepted"
msgstr ""
@@ -2735,7 +2639,7 @@ msgstr ""
msgid "Add Class"
msgstr ""
-#: cgi-bin/admin.c:883
+#: cgi-bin/admin.c:882
msgid "Add Printer"
msgstr ""
@@ -2748,15 +2652,11 @@ msgstr ""
msgid "Address"
msgstr ""
-#: ppdc/sample.c:172
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr ""
-
-#: cgi-bin/admin.c:210 cgi-bin/admin.c:284 cgi-bin/admin.c:2864
+#: cgi-bin/admin.c:210 cgi-bin/admin.c:284 cgi-bin/admin.c:2745
msgid "Administration"
msgstr ""
-#: ppdc/sample.c:438
+#: ppdc/sample.c:429
msgid "Always"
msgstr ""
@@ -2764,16 +2664,16 @@ msgstr ""
msgid "AppSocket/HP JetDirect"
msgstr ""
-#: ppdc/sample.c:459
+#: ppdc/sample.c:450
msgid "Applicator"
msgstr ""
-#: scheduler/ipp.c:1159
+#: scheduler/ipp.c:1079
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
msgstr ""
-#: scheduler/ipp.c:352
+#: scheduler/ipp.c:325
#, c-format
msgid "Attribute groups are out of order (%x < %x)."
msgstr ""
@@ -2826,36 +2726,36 @@ msgstr ""
msgid "B9"
msgstr ""
-#: cups/dest.c:827
+#: cups/dest.c:1680
msgid "Bad NULL dests pointer"
msgstr ""
-#: cups/ppd.c:343
+#: cups/ppd.c:345
msgid "Bad OpenGroup"
msgstr ""
-#: cups/ppd.c:345
+#: cups/ppd.c:347
msgid "Bad OpenUI/JCLOpenUI"
msgstr ""
-#: cups/ppd.c:347
+#: cups/ppd.c:349
msgid "Bad OrderDependency"
msgstr ""
-#: cups/ppd-cache.c:148 cups/ppd-cache.c:193 cups/ppd-cache.c:231
-#: cups/ppd-cache.c:237 cups/ppd-cache.c:253 cups/ppd-cache.c:269
-#: cups/ppd-cache.c:278 cups/ppd-cache.c:286 cups/ppd-cache.c:303
-#: cups/ppd-cache.c:311 cups/ppd-cache.c:326 cups/ppd-cache.c:334
-#: cups/ppd-cache.c:352 cups/ppd-cache.c:364 cups/ppd-cache.c:379
-#: cups/ppd-cache.c:391 cups/ppd-cache.c:413 cups/ppd-cache.c:421
-#: cups/ppd-cache.c:439 cups/ppd-cache.c:447 cups/ppd-cache.c:462
-#: cups/ppd-cache.c:470 cups/ppd-cache.c:488 cups/ppd-cache.c:496
-#: cups/ppd-cache.c:523 cups/ppd-cache.c:567 cups/ppd-cache.c:575
-#: cups/ppd-cache.c:583
+#: cups/ppd-cache.c:148 cups/ppd-cache.c:195 cups/ppd-cache.c:233
+#: cups/ppd-cache.c:239 cups/ppd-cache.c:255 cups/ppd-cache.c:271
+#: cups/ppd-cache.c:280 cups/ppd-cache.c:288 cups/ppd-cache.c:305
+#: cups/ppd-cache.c:313 cups/ppd-cache.c:328 cups/ppd-cache.c:336
+#: cups/ppd-cache.c:354 cups/ppd-cache.c:366 cups/ppd-cache.c:381
+#: cups/ppd-cache.c:393 cups/ppd-cache.c:415 cups/ppd-cache.c:423
+#: cups/ppd-cache.c:441 cups/ppd-cache.c:449 cups/ppd-cache.c:464
+#: cups/ppd-cache.c:472 cups/ppd-cache.c:490 cups/ppd-cache.c:498
+#: cups/ppd-cache.c:525 cups/ppd-cache.c:571 cups/ppd-cache.c:579
+#: cups/ppd-cache.c:587
msgid "Bad PPD cache file."
msgstr ""
-#: cups/http-support.c:1272
+#: cups/http-support.c:1299
msgid "Bad Request"
msgstr ""
@@ -2863,115 +2763,80 @@ msgstr ""
msgid "Bad SNMP version number"
msgstr ""
-#: cups/ppd.c:348
+#: cups/ppd.c:350
msgid "Bad UIConstraints"
msgstr ""
-#: filter/pstext.c:278 filter/texttops.c:297 filter/texttops.c:309
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#: filter/texttops.c:472
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#: filter/textcommon.c:613
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#: scheduler/ipp.c:1460
+#: scheduler/ipp.c:1380
#, c-format
msgid "Bad copies value %d."
msgstr ""
-#: filter/textcommon.c:625
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-#: cups/ppd.c:356
+#: cups/ppd.c:358
msgid "Bad custom parameter"
msgstr ""
-#: cups/http-support.c:1424 scheduler/ipp.c:2549
+#: cups/http-support.c:1451 scheduler/ipp.c:2350
#, c-format
msgid "Bad device-uri \"%s\"."
msgstr ""
-#: scheduler/ipp.c:2590
+#: scheduler/ipp.c:2391
#, c-format
msgid "Bad device-uri scheme \"%s\"."
msgstr ""
-#: scheduler/ipp.c:9423 scheduler/ipp.c:9439 scheduler/ipp.c:10652
-#: scheduler/ipp.c:12158
+#: scheduler/ipp.c:8224 scheduler/ipp.c:8240 scheduler/ipp.c:9454
+#: scheduler/ipp.c:10968
#, c-format
msgid "Bad document-format \"%s\"."
msgstr ""
-#: scheduler/ipp.c:10668
+#: scheduler/ipp.c:9470
#, c-format
msgid "Bad document-format-default \"%s\"."
msgstr ""
-#: cups/util.c:928
+#: cups/util.c:929
msgid "Bad filename buffer"
msgstr ""
-#: filter/pstext.c:324 filter/pstext.c:362
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#: filter/texttops.c:364 filter/texttops.c:402
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-#: scheduler/ipp.c:11250
+#: scheduler/ipp.c:10060
msgid "Bad job-priority value."
msgstr ""
-#: scheduler/ipp.c:1490
+#: scheduler/ipp.c:1410
#, c-format
msgid "Bad job-sheets value \"%s\"."
msgstr ""
-#: scheduler/ipp.c:1474
+#: scheduler/ipp.c:1394
msgid "Bad job-sheets value type."
msgstr ""
-#: scheduler/ipp.c:11280
+#: scheduler/ipp.c:10090
msgid "Bad job-state value."
msgstr ""
-#: scheduler/ipp.c:4061 scheduler/ipp.c:4513 scheduler/ipp.c:7267
-#: scheduler/ipp.c:7414 scheduler/ipp.c:8857 scheduler/ipp.c:9126
-#: scheduler/ipp.c:9974 scheduler/ipp.c:10199 scheduler/ipp.c:10548
-#: scheduler/ipp.c:11142
+#: scheduler/ipp.c:2974 scheduler/ipp.c:3426 scheduler/ipp.c:6078
+#: scheduler/ipp.c:6225 scheduler/ipp.c:7658 scheduler/ipp.c:7927
+#: scheduler/ipp.c:8775 scheduler/ipp.c:9001 scheduler/ipp.c:9350
+#: scheduler/ipp.c:9953
#, c-format
msgid "Bad job-uri \"%s\"."
msgstr ""
-#: filter/textcommon.c:637
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#: scheduler/ipp.c:2194 scheduler/ipp.c:6809
+#: scheduler/ipp.c:2049 scheduler/ipp.c:5622
#, c-format
msgid "Bad notify-pull-method \"%s\"."
msgstr ""
-#: scheduler/ipp.c:2158 scheduler/ipp.c:6773
+#: scheduler/ipp.c:2013 scheduler/ipp.c:5586
#, c-format
msgid "Bad notify-recipient-uri \"%s\"."
msgstr ""
-#: scheduler/ipp.c:1506
+#: scheduler/ipp.c:1426
#, c-format
msgid "Bad number-up value %d."
msgstr ""
@@ -2981,68 +2846,48 @@ msgstr ""
msgid "Bad option + choice on line %d."
msgstr ""
-#: scheduler/ipp.c:1523
+#: scheduler/ipp.c:1443
#, c-format
msgid "Bad page-ranges values %d-%d."
msgstr ""
-#: scheduler/ipp.c:2633
+#: scheduler/ipp.c:2434
#, c-format
msgid "Bad port-monitor \"%s\"."
msgstr ""
-#: scheduler/ipp.c:2694
+#: cups/dest.c:676 cups/dest.c:1333
+msgid "Bad printer URI."
+msgstr ""
+
+#: scheduler/ipp.c:2495
#, c-format
msgid "Bad printer-state value %d."
msgstr ""
-#: scheduler/ipp.c:320
+#: scheduler/ipp.c:293
#, c-format
msgid "Bad request ID %d."
msgstr ""
-#: scheduler/ipp.c:305
+#: scheduler/ipp.c:278
#, c-format
msgid "Bad request version number %d.%d."
msgstr ""
-#: cgi-bin/admin.c:1485
+#: cgi-bin/admin.c:1484
msgid "Bad subscription ID"
msgstr ""
-#: filter/pstext.c:337
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#: filter/texttops.c:377
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#: filter/pstext.c:375
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#: filter/texttops.c:416
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-#: cups/ppd.c:358
+#: cups/ppd.c:360
msgid "Bad value string"
msgstr ""
-#: cgi-bin/admin.c:3409 cgi-bin/admin.c:3655
+#: cgi-bin/admin.c:3290 cgi-bin/admin.c:3536
msgid "Banners"
msgstr ""
-#: filter/bannertops.c:666
-msgid "Billing Information: "
-msgstr ""
-
-#: ppdc/sample.c:296
+#: ppdc/sample.c:287
msgid "Bond Paper"
msgstr ""
@@ -3051,40 +2896,40 @@ msgstr ""
msgid "Boolean expected for waiteof option \"%s\"."
msgstr ""
-#: filter/pstops.c:2072
+#: filter/pstops.c:2057
msgid "Buffer overflow detected, aborting."
msgstr ""
-#: ppdc/sample.c:263
+#: ppdc/sample.c:254
msgid "CMYK"
msgstr ""
-#: ppdc/sample.c:372
+#: ppdc/sample.c:363
msgid "CPCL Label Printer"
msgstr ""
-#: cgi-bin/admin.c:1486 cgi-bin/admin.c:1525 cgi-bin/admin.c:1535
+#: cgi-bin/admin.c:1485 cgi-bin/admin.c:1524 cgi-bin/admin.c:1534
msgid "Cancel RSS Subscription"
msgstr ""
-#: backend/ipp.c:1899
+#: backend/ipp.c:1921
msgid "Canceling print job."
msgstr ""
-#: scheduler/ipp.c:2674
+#: scheduler/ipp.c:2475
msgid "Cannot share a remote Kerberized printer."
msgstr ""
-#: ppdc/sample.c:288
+#: ppdc/sample.c:279
msgid "Cassette"
msgstr ""
-#: cgi-bin/admin.c:1708 cgi-bin/admin.c:1872 cgi-bin/admin.c:1884
-#: cgi-bin/admin.c:1895
+#: cgi-bin/admin.c:1655 cgi-bin/admin.c:1797 cgi-bin/admin.c:1810
+#: cgi-bin/admin.c:1821
msgid "Change Settings"
msgstr ""
-#: scheduler/ipp.c:2206 scheduler/ipp.c:6821
+#: scheduler/ipp.c:2061 scheduler/ipp.c:5634
#, c-format
msgid "Character set \"%s\" not supported."
msgstr ""
@@ -3097,15 +2942,15 @@ msgstr ""
msgid "Clean Print Heads"
msgstr ""
-#: scheduler/ipp.c:4965
+#: scheduler/ipp.c:3878
msgid "Close-Job doesn't support the job-uri attribute."
msgstr ""
-#: ppdc/sample.c:291
+#: ppdc/sample.c:282
msgid "Color"
msgstr ""
-#: ppdc/sample.c:262
+#: ppdc/sample.c:253
msgid "Color Mode"
msgstr ""
@@ -3120,87 +2965,79 @@ msgstr ""
msgid "Community name uses indefinite length"
msgstr ""
-#: backend/ipp.c:775 backend/lpd.c:862 backend/socket.c:395
+#: backend/ipp.c:786 backend/lpd.c:871 backend/socket.c:395
msgid "Connected to printer."
msgstr ""
-#: backend/ipp.c:682 backend/lpd.c:685 backend/socket.c:314
+#: backend/ipp.c:691 backend/lpd.c:694 backend/socket.c:314
msgid "Connecting to printer."
msgstr ""
-#: cups/http-support.c:1245
+#: cups/http-support.c:1272
msgid "Continue"
msgstr ""
-#: ppdc/sample.c:374
+#: ppdc/sample.c:365
msgid "Continuous"
msgstr ""
-#: backend/lpd.c:1008 backend/lpd.c:1140
+#: backend/lpd.c:1020 backend/lpd.c:1152
msgid "Control file sent successfully."
msgstr ""
-#: backend/ipp.c:1219 backend/lpd.c:460
+#: backend/ipp.c:1233 backend/lpd.c:464
msgid "Copying print data."
msgstr ""
-#: cups/http-support.c:1254
+#: cups/http-support.c:1281
msgid "Created"
msgstr ""
-#: filter/bannertops.c:854
-msgid "Created On: "
-msgstr ""
-
-#: cups/ppd.c:1070 cups/ppd.c:1110 cups/ppd.c:1355 cups/ppd.c:1458
+#: cups/ppd.c:1113 cups/ppd.c:1153 cups/ppd.c:1398 cups/ppd.c:1501
msgid "Custom"
msgstr ""
-#: ppdc/sample.c:368
+#: ppdc/sample.c:359
msgid "CustominCutInterval"
msgstr ""
-#: ppdc/sample.c:366
+#: ppdc/sample.c:357
msgid "CustominTearInterval"
msgstr ""
-#: ppdc/sample.c:352
+#: ppdc/sample.c:343
msgid "Cut"
msgstr ""
-#: ppdc/sample.c:460
+#: ppdc/sample.c:451
msgid "Cutter"
msgstr ""
-#: ppdc/sample.c:248
+#: ppdc/sample.c:239
msgid "Dark"
msgstr ""
-#: ppdc/sample.c:244
+#: ppdc/sample.c:235
msgid "Darkness"
msgstr ""
-#: backend/lpd.c:1093
+#: backend/lpd.c:1105
msgid "Data file sent successfully."
msgstr ""
-#: cgi-bin/admin.c:2168 cgi-bin/admin.c:2179 cgi-bin/admin.c:2224
+#: cgi-bin/admin.c:2094 cgi-bin/admin.c:2105 cgi-bin/admin.c:2150
msgid "Delete Class"
msgstr ""
-#: cgi-bin/admin.c:2253 cgi-bin/admin.c:2264 cgi-bin/admin.c:2309
+#: cgi-bin/admin.c:2179 cgi-bin/admin.c:2190 cgi-bin/admin.c:2235
msgid "Delete Printer"
msgstr ""
-#: filter/bannertops.c:735
-msgid "Description: "
-msgstr ""
-
-#: ppdc/sample.c:290
+#: ppdc/sample.c:281
msgid "DeskJet Series"
msgstr ""
-#: scheduler/ipp.c:1426
+#: scheduler/ipp.c:1346
#, c-format
msgid "Destination \"%s\" is not accepting jobs."
msgstr ""
@@ -3216,71 +3053,63 @@ msgid ""
" location = %s"
msgstr ""
-#: ppdc/sample.c:445
+#: ppdc/sample.c:436
msgid "Direct Thermal Media"
msgstr ""
-#: cups/file.c:308
+#: cups/file.c:296
#, c-format
msgid "Directory \"%s\" contains a relative path."
msgstr ""
-#: cups/file.c:280
+#: cups/file.c:268
#, c-format
msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
msgstr ""
-#: cups/file.c:297
+#: cups/file.c:285
#, c-format
msgid "Directory \"%s\" is a file."
msgstr ""
-#: cups/file.c:268
+#: cups/file.c:256
#, c-format
msgid "Directory \"%s\" not available: %s"
msgstr ""
-#: cups/file.c:253
+#: cups/file.c:241
#, c-format
msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
msgstr ""
-#: ppdc/sample.c:354
+#: ppdc/sample.c:345
msgid "Disabled"
msgstr ""
-#: scheduler/ipp.c:7316
+#: scheduler/ipp.c:6127
#, c-format
msgid "Document #%d does not exist in job #%d."
msgstr ""
-#: filter/bannertops.c:820
-msgid "Driver Name: "
-msgstr ""
-
-#: filter/bannertops.c:831
-msgid "Driver Version: "
-msgstr ""
-
-#: ppdc/sample.c:284
+#: ppdc/sample.c:275
msgid "Duplexer"
msgstr ""
-#: ppdc/sample.c:238
+#: ppdc/sample.c:229
msgid "Dymo"
msgstr ""
-#: ppdc/sample.c:440
+#: ppdc/sample.c:431
msgid "EPL1 Label Printer"
msgstr ""
-#: ppdc/sample.c:443
+#: ppdc/sample.c:434
msgid "EPL2 Label Printer"
msgstr ""
-#: cgi-bin/admin.c:1923 cgi-bin/admin.c:1935 cgi-bin/admin.c:1989
-#: cgi-bin/admin.c:1996 cgi-bin/admin.c:2031 cgi-bin/admin.c:2044
-#: cgi-bin/admin.c:2068 cgi-bin/admin.c:2141
+#: cgi-bin/admin.c:1849 cgi-bin/admin.c:1861 cgi-bin/admin.c:1915
+#: cgi-bin/admin.c:1922 cgi-bin/admin.c:1957 cgi-bin/admin.c:1970
+#: cgi-bin/admin.c:1994 cgi-bin/admin.c:2067
msgid "Edit Configuration File"
msgstr ""
@@ -3289,7 +3118,7 @@ msgid "Empty PPD file."
msgstr ""
#. TRANSLATORS: Banner/cover sheet after the print job.
-#: cgi-bin/admin.c:3680
+#: cgi-bin/admin.c:3561
msgid "Ending Banner"
msgstr ""
@@ -3309,7 +3138,7 @@ msgstr ""
msgid "Enter password:"
msgstr ""
-#: scheduler/client.c:2441
+#: scheduler/client.c:2427
msgid "Enter your username and password or the root username and password to access this page. If you are using Kerberos authentication, make sure you have a valid Kerberos ticket."
msgstr ""
@@ -3401,7 +3230,7 @@ msgstr ""
msgid "Envelope DL"
msgstr ""
-#: ppdc/sample.c:278
+#: ppdc/sample.c:269
msgid "Envelope Feed"
msgstr ""
@@ -3525,11 +3354,11 @@ msgstr ""
msgid "Envelope You4 Long Edge"
msgstr ""
-#: ppdc/sample.c:249
+#: ppdc/sample.c:240
msgid "Epson"
msgstr ""
-#: cgi-bin/admin.c:3723
+#: cgi-bin/admin.c:3604
msgid "Error Policy"
msgstr ""
@@ -3542,43 +3371,43 @@ msgstr ""
msgid "Error: need hostname after \"-h\" option."
msgstr ""
-#: ppdc/sample.c:364
+#: ppdc/sample.c:355
msgid "Every 10 Labels"
msgstr ""
-#: ppdc/sample.c:356
+#: ppdc/sample.c:347
msgid "Every 2 Labels"
msgstr ""
-#: ppdc/sample.c:357
+#: ppdc/sample.c:348
msgid "Every 3 Labels"
msgstr ""
-#: ppdc/sample.c:358
+#: ppdc/sample.c:349
msgid "Every 4 Labels"
msgstr ""
-#: ppdc/sample.c:359
+#: ppdc/sample.c:350
msgid "Every 5 Labels"
msgstr ""
-#: ppdc/sample.c:360
+#: ppdc/sample.c:351
msgid "Every 6 Labels"
msgstr ""
-#: ppdc/sample.c:361
+#: ppdc/sample.c:352
msgid "Every 7 Labels"
msgstr ""
-#: ppdc/sample.c:362
+#: ppdc/sample.c:353
msgid "Every 8 Labels"
msgstr ""
-#: ppdc/sample.c:363
+#: ppdc/sample.c:354
msgid "Every 9 Labels"
msgstr ""
-#: ppdc/sample.c:355
+#: ppdc/sample.c:346
msgid "Every Label"
msgstr ""
@@ -3586,11 +3415,11 @@ msgstr ""
msgid "Executive"
msgstr ""
-#: cups/http-support.c:1300
+#: cups/http-support.c:1327
msgid "Expectation Failed"
msgstr ""
-#: cgi-bin/admin.c:2431 cgi-bin/admin.c:2450
+#: cgi-bin/admin.c:2356 cgi-bin/admin.c:2375
msgid "Export Printers to Samba"
msgstr ""
@@ -3616,45 +3445,40 @@ msgstr ""
msgid "Fanfold US"
msgstr ""
-#: cups/file.c:312
+#: cups/file.c:300
#, c-format
msgid "File \"%s\" contains a relative path."
msgstr ""
-#: cups/file.c:287
+#: cups/file.c:275
#, c-format
msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
msgstr ""
-#: cups/file.c:301
+#: cups/file.c:289
#, c-format
msgid "File \"%s\" is a directory."
msgstr ""
-#: cups/file.c:273
+#: cups/file.c:261
#, c-format
msgid "File \"%s\" not available: %s"
msgstr ""
-#: cups/file.c:259
+#: cups/file.c:247
#, c-format
msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
msgstr ""
#: ppdc/sample.c:169
-msgid "File Folder"
+msgid "File Folder "
msgstr ""
-#: ppdc/sample.c:178
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr ""
-
-#: scheduler/ipp.c:2569
+#: scheduler/ipp.c:2370
#, c-format
msgid "File device URIs have been disabled. To enable, see the FileDevice directive in \"%s/cupsd.conf\"."
msgstr ""
-#: driver/rastertoescpx.c:1899 driver/rastertopclx.c:1924
#: filter/rastertoepson.c:1117 filter/rastertohp.c:845
#: filter/rastertolabel.c:1273
#, c-format
@@ -3665,20 +3489,15 @@ msgstr ""
msgid "Folio"
msgstr ""
-#: cups/http-support.c:1279
+#: cups/http-support.c:1306
msgid "Forbidden"
msgstr ""
-#: filter/imagetoraster.c:1188
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-#: cups/ppd.c:699 cups/ppd.c:1259
+#: cups/ppd.c:742 cups/ppd.c:1302
msgid "General"
msgstr ""
-#: ppdc/sample.c:268
+#: ppdc/sample.c:259
msgid "Generic"
msgstr ""
@@ -3686,22 +3505,22 @@ msgstr ""
msgid "Get-Response-PDU uses indefinite length"
msgstr ""
-#: ppdc/sample.c:299
+#: ppdc/sample.c:290
msgid "Glossy Paper"
msgstr ""
-#: scheduler/ipp.c:4039 scheduler/ipp.c:4439 scheduler/ipp.c:4977
-#: scheduler/ipp.c:7245 scheduler/ipp.c:7392 scheduler/ipp.c:8834
-#: scheduler/ipp.c:9952 scheduler/ipp.c:10177 scheduler/ipp.c:10526
-#: scheduler/ipp.c:11120
+#: scheduler/ipp.c:2952 scheduler/ipp.c:3352 scheduler/ipp.c:3890
+#: scheduler/ipp.c:6056 scheduler/ipp.c:6203 scheduler/ipp.c:7635
+#: scheduler/ipp.c:8753 scheduler/ipp.c:8979 scheduler/ipp.c:9328
+#: scheduler/ipp.c:9931
msgid "Got a printer-uri attribute but no job-id."
msgstr ""
-#: ppdc/sample.c:264
+#: ppdc/sample.c:255
msgid "Grayscale"
msgstr ""
-#: ppdc/sample.c:289
+#: ppdc/sample.c:280
msgid "HP"
msgstr ""
@@ -3709,75 +3528,87 @@ msgstr ""
msgid "Hanging Folder"
msgstr ""
-#: ppdc/sample.c:179
-msgid "Hanging Folder - 9/16 x 2\""
+#: cgi-bin/help.c:143
+msgid "Help file not in index."
msgstr ""
-#: cups/ipp.c:1291 cups/ipp.c:1311 cups/ipp.c:1345
+#: cups/ipp.c:2687 cups/ipp.c:2714 cups/ipp.c:2737
msgid "IPP 1setOf attribute with incompatible value tags."
msgstr ""
-#: cups/ipp.c:1254
+#: cups/ipp.c:2650
msgid "IPP attribute has no name."
msgstr ""
-#: cups/ipp.c:1727
+#: cups/ipp.c:5487
+msgid "IPP attribute is not a member of the message."
+msgstr ""
+
+#: cups/ipp.c:3083
msgid "IPP begCollection value not 0 bytes."
msgstr ""
-#: cups/ipp.c:1519
+#: cups/ipp.c:2873
msgid "IPP boolean value not 1 byte."
msgstr ""
-#: cups/ipp.c:1577
+#: cups/ipp.c:2934
msgid "IPP date value not 11 bytes."
msgstr ""
-#: cups/ipp.c:1748
+#: cups/ipp.c:3104
msgid "IPP endCollection value not 0 bytes."
msgstr ""
-#: cups/ipp.c:1494
+#: cups/ipp.c:2848
msgid "IPP enum value not 4 bytes."
msgstr ""
-#: cups/ipp.c:1491
+#: cups/ipp.c:2579
+msgid "IPP extension tag larger than 0x7FFFFFFF."
+msgstr ""
+
+#: cups/ipp.c:2845
msgid "IPP integer value not 4 bytes."
msgstr ""
-#: cups/ipp.c:1690
+#: cups/ipp.c:3045
msgid "IPP language length overflows value."
msgstr ""
-#: cups/ipp.c:1404
+#: cups/ipp.c:2764
msgid "IPP member name is not empty."
msgstr ""
-#: cups/ipp.c:1237
+#: cups/ipp.c:3122
+msgid "IPP memberName value is empty."
+msgstr ""
+
+#: cups/ipp.c:2633
msgid "IPP name larger than 32767 bytes."
msgstr ""
-#: cups/ipp.c:1654
+#: cups/ipp.c:3011
msgid "IPP nameWithLanguage value less than minimum 4 bytes."
msgstr ""
-#: cups/ipp.c:1623
+#: cups/ipp.c:2979
msgid "IPP rangeOfInteger value not 8 bytes."
msgstr ""
-#: cups/ipp.c:1596
+#: cups/ipp.c:2952
msgid "IPP resolution value not 9 bytes."
msgstr ""
-#: cups/ipp.c:1707
+#: cups/ipp.c:3063
msgid "IPP string length overflows value."
msgstr ""
-#: cups/ipp.c:1650
+#: cups/ipp.c:3007
msgid "IPP textWithLanguage value less than minimum 4 bytes."
msgstr ""
-#: cups/ipp.c:1477
+#: cups/ipp.c:2831
msgid "IPP value larger than 32767 bytes."
msgstr ""
@@ -3785,47 +3616,47 @@ msgstr ""
msgid "ISOLatin1"
msgstr ""
-#: cups/ppd.c:351
+#: cups/ppd.c:353
msgid "Illegal control character"
msgstr ""
-#: cups/ppd.c:352
+#: cups/ppd.c:354
msgid "Illegal main keyword string"
msgstr ""
-#: cups/ppd.c:353
+#: cups/ppd.c:355
msgid "Illegal option keyword string"
msgstr ""
-#: cups/ppd.c:354
+#: cups/ppd.c:356
msgid "Illegal translation string"
msgstr ""
-#: cups/ppd.c:355
+#: cups/ppd.c:357
msgid "Illegal whitespace character"
msgstr ""
-#: ppdc/sample.c:283
+#: ppdc/sample.c:274
msgid "Installable Options"
msgstr ""
-#: ppdc/sample.c:286
+#: ppdc/sample.c:277
msgid "Installed"
msgstr ""
-#: ppdc/sample.c:302
+#: ppdc/sample.c:293
msgid "IntelliBar Label Printer"
msgstr ""
-#: ppdc/sample.c:301
+#: ppdc/sample.c:292
msgid "Intellitech"
msgstr ""
-#: cups/http-support.c:1306
+#: cups/http-support.c:1333
msgid "Internal Server Error"
msgstr ""
-#: cups/ppd.c:342
+#: cups/ppd.c:344
msgid "Internal error"
msgstr ""
@@ -3833,20 +3664,16 @@ msgstr ""
msgid "Internet Postage 2-Part"
msgstr ""
-#: ppdc/sample.c:176
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr ""
-
#: ppdc/sample.c:168
msgid "Internet Postage 3-Part"
msgstr ""
-#: ppdc/sample.c:177
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
+#: backend/ipp.c:307
+msgid "Internet Printing Protocol"
msgstr ""
-#: backend/ipp.c:301
-msgid "Internet Printing Protocol"
+#: cups/dest-options.c:839
+msgid "Invalid media size."
msgstr ""
#: filter/commandtops.c:125
@@ -3854,7 +3681,7 @@ msgstr ""
msgid "Invalid printer command \"%s\"."
msgstr ""
-#: cups/ppd.c:1377
+#: cups/ppd.c:1420
msgid "JCL"
msgstr ""
@@ -3914,52 +3741,52 @@ msgstr ""
msgid "JIS B9"
msgstr ""
-#: scheduler/ipp.c:10249
+#: scheduler/ipp.c:9051
#, c-format
msgid "Job #%d cannot be restarted - no files."
msgstr ""
-#: scheduler/ipp.c:4079 scheduler/ipp.c:4309 scheduler/ipp.c:4364
-#: scheduler/ipp.c:4541 scheduler/ipp.c:4987 scheduler/ipp.c:6907
-#: scheduler/ipp.c:7285 scheduler/ipp.c:7432 scheduler/ipp.c:7732
-#: scheduler/ipp.c:8681 scheduler/ipp.c:8703 scheduler/ipp.c:8875
-#: scheduler/ipp.c:9100 scheduler/ipp.c:9143 scheduler/ipp.c:9992
-#: scheduler/ipp.c:10217 scheduler/ipp.c:10566 scheduler/ipp.c:11160
+#: scheduler/ipp.c:2992 scheduler/ipp.c:3222 scheduler/ipp.c:3277
+#: scheduler/ipp.c:3454 scheduler/ipp.c:3900 scheduler/ipp.c:5720
+#: scheduler/ipp.c:6096 scheduler/ipp.c:6243 scheduler/ipp.c:6543
+#: scheduler/ipp.c:7482 scheduler/ipp.c:7504 scheduler/ipp.c:7676
+#: scheduler/ipp.c:7901 scheduler/ipp.c:7944 scheduler/ipp.c:8793
+#: scheduler/ipp.c:9019 scheduler/ipp.c:9368 scheduler/ipp.c:9971
#, c-format
msgid "Job #%d does not exist."
msgstr ""
-#: scheduler/ipp.c:4573
+#: scheduler/ipp.c:3486
#, c-format
msgid "Job #%d is already aborted - can't cancel."
msgstr ""
-#: scheduler/ipp.c:4567
+#: scheduler/ipp.c:3480
#, c-format
msgid "Job #%d is already canceled - can't cancel."
msgstr ""
-#: scheduler/ipp.c:4579
+#: scheduler/ipp.c:3492
#, c-format
msgid "Job #%d is already completed - can't cancel."
msgstr ""
-#: scheduler/ipp.c:8901 scheduler/ipp.c:9185 scheduler/ipp.c:11175
+#: scheduler/ipp.c:7702 scheduler/ipp.c:7986 scheduler/ipp.c:9986
#, c-format
msgid "Job #%d is finished and cannot be altered."
msgstr ""
-#: scheduler/ipp.c:10231
+#: scheduler/ipp.c:9033
#, c-format
msgid "Job #%d is not complete."
msgstr ""
-#: scheduler/ipp.c:4094
+#: scheduler/ipp.c:3007
#, c-format
msgid "Job #%d is not held for authentication."
msgstr ""
-#: scheduler/ipp.c:10006
+#: scheduler/ipp.c:8807
#, c-format
msgid "Job #%d is not held."
msgstr ""
@@ -3972,10 +3799,6 @@ msgstr ""
msgid "Job Created"
msgstr ""
-#: filter/bannertops.c:623
-msgid "Job ID: "
-msgstr ""
-
#: cgi-bin/ipp-var.c:1059
msgid "Job Options Changed"
msgstr ""
@@ -3984,23 +3807,19 @@ msgstr ""
msgid "Job Stopped"
msgstr ""
-#: filter/bannertops.c:631
-msgid "Job UUID: "
-msgstr ""
-
-#: scheduler/ipp.c:11258
+#: scheduler/ipp.c:10068
msgid "Job is completed and cannot be changed."
msgstr ""
#: cgi-bin/jobs.c:198
-msgid "Job operation failed:"
+msgid "Job operation failed"
msgstr ""
-#: scheduler/ipp.c:11294 scheduler/ipp.c:11313 scheduler/ipp.c:11324
+#: scheduler/ipp.c:10104 scheduler/ipp.c:10123 scheduler/ipp.c:10134
msgid "Job state cannot be changed."
msgstr ""
-#: scheduler/ipp.c:10097
+#: scheduler/ipp.c:8899
msgid "Job subscriptions cannot be renewed."
msgstr ""
@@ -4008,19 +3827,19 @@ msgstr ""
msgid "Jobs"
msgstr ""
-#: backend/lpd.c:183
+#: backend/lpd.c:185
msgid "LPD/LPR Host or Printer"
msgstr ""
-#: ppdc/sample.c:239
+#: ppdc/sample.c:230
msgid "Label Printer"
msgstr ""
-#: ppdc/sample.c:455
+#: ppdc/sample.c:446
msgid "Label Top"
msgstr ""
-#: scheduler/ipp.c:2215 scheduler/ipp.c:6830
+#: scheduler/ipp.c:2070 scheduler/ipp.c:5643
#, c-format
msgid "Language \"%s\" not supported."
msgstr ""
@@ -4029,11 +3848,7 @@ msgstr ""
msgid "Large Address"
msgstr ""
-#: ppdc/sample.c:173
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr ""
-
-#: ppdc/sample.c:300
+#: ppdc/sample.c:291
msgid "LaserJet Series PCL 4/5"
msgstr ""
@@ -4045,91 +3860,67 @@ msgstr ""
msgid "Letter Oversize Long Edge"
msgstr ""
-#: ppdc/sample.c:245
+#: ppdc/sample.c:236
msgid "Light"
msgstr ""
-#: cups/ppd.c:350
+#: cups/ppd.c:352
msgid "Line longer than the maximum allowed (255 characters)"
msgstr ""
-#: cgi-bin/admin.c:2468
+#: cgi-bin/admin.c:2393
msgid "List Available Printers"
msgstr ""
-#: filter/imagetoraster.c:668
-msgid "Loading print file."
-msgstr ""
-
-#: filter/bannertops.c:744
-msgid "Location: "
-msgstr ""
-
-#: ppdc/sample.c:281
+#: ppdc/sample.c:272
msgid "Long-Edge (Portrait)"
msgstr ""
-#: cups/http-support.c:1521
+#: cups/http-support.c:1558
msgid "Looking for printer."
msgstr ""
-#: filter/bannertops.c:753
-msgid "Make and Model: "
-msgstr ""
-
-#: ppdc/sample.c:277
+#: ppdc/sample.c:268
msgid "Manual Feed"
msgstr ""
-#: filter/bannertops.c:780
-msgid "Media Dimensions: "
-msgstr ""
-
-#: filter/bannertops.c:800
-msgid "Media Limits: "
-msgstr ""
-
-#: filter/bannertops.c:769
-msgid "Media Name: "
-msgstr ""
-
-#: cups/ppd.c:746 cups/ppd.c:1314
+#: cups/ppd.c:789 cups/ppd.c:1357
msgid "Media Size"
msgstr ""
-#: cups/ppd.c:750 cups/ppd.c:1318 ppdc/sample.c:271
+#: cups/ppd.c:793 cups/ppd.c:1361 ppdc/sample.c:262
msgid "Media Source"
msgstr ""
-#: ppdc/sample.c:373
+#: ppdc/sample.c:364
msgid "Media Tracking"
msgstr ""
-#: cups/ppd.c:748 cups/ppd.c:1316 ppdc/sample.c:294
+#: cups/ppd.c:791 cups/ppd.c:1359 ppdc/sample.c:285
msgid "Media Type"
msgstr ""
-#: ppdc/sample.c:246
+#: ppdc/sample.c:237
msgid "Medium"
msgstr ""
-#: cups/ppd.c:339
+#: cups/ppd.c:341
msgid "Memory allocation error"
msgstr ""
-#: cups/ppd.c:359
+#: cups/ppd.c:361
msgid "Missing CloseGroup"
msgstr ""
-#: cups/ppd.c:340
+#: cups/ppd.c:342
msgid "Missing PPD-Adobe-4.x header"
msgstr ""
-#: cups/ppd.c:349
+#: cups/ppd.c:351
msgid "Missing asterisk in column 1"
msgstr ""
-#: scheduler/ipp.c:7308
+#: scheduler/ipp.c:6119
msgid "Missing document-number attribute."
msgstr ""
@@ -4138,59 +3929,54 @@ msgstr ""
msgid "Missing double quote on line %d."
msgstr ""
-#: cgi-bin/admin.c:737 cgi-bin/admin.c:2180 cgi-bin/admin.c:2265
-#: cgi-bin/admin.c:2904 cgi-bin/admin.c:3158 cgi-bin/admin.c:3269
-#: cgi-bin/admin.c:3979
+#: cgi-bin/admin.c:736 cgi-bin/admin.c:2106 cgi-bin/admin.c:2191
+#: cgi-bin/admin.c:2785 cgi-bin/admin.c:3039 cgi-bin/admin.c:3150
+#: cgi-bin/admin.c:3860
msgid "Missing form variable"
msgstr ""
-#: scheduler/ipp.c:10620
+#: scheduler/ipp.c:9422
msgid "Missing last-document attribute in request."
msgstr ""
-#: cups/pwg-media.c:473
+#: cups/pwg-media.c:535
msgid "Missing media or media-col."
msgstr ""
-#: cups/pwg-media.c:392
+#: cups/pwg-media.c:454
msgid "Missing media-size in media-col."
msgstr ""
-#: scheduler/ipp.c:7862
+#: scheduler/ipp.c:6673
msgid "Missing notify-subscription-ids attribute."
msgstr ""
-#: cups/ppd.c:357
+#: cups/ppd.c:359
msgid "Missing option keyword"
msgstr ""
-#: scheduler/ipp.c:4220 scheduler/ipp.c:4245
+#: scheduler/ipp.c:3133 scheduler/ipp.c:3158
msgid "Missing requesting-user-name attribute."
msgstr ""
-#: scheduler/ipp.c:488
+#: scheduler/ipp.c:461
msgid "Missing required attributes."
msgstr ""
-#: filter/bannertops.c:222
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
#: cups/adminutil.c:254
#, c-format
msgid "Missing value on line %d."
msgstr ""
-#: cups/ppd.c:341
+#: cups/ppd.c:343
msgid "Missing value string"
msgstr ""
-#: cups/pwg-media.c:380
+#: cups/pwg-media.c:442
msgid "Missing x-dimension in media-size."
msgstr ""
-#: cups/pwg-media.c:386
+#: cups/pwg-media.c:448
msgid "Missing y-dimension in media-size."
msgstr ""
@@ -4207,7 +3993,7 @@ msgstr ""
msgid "Modify Class"
msgstr ""
-#: cgi-bin/admin.c:883
+#: cgi-bin/admin.c:882
msgid "Modify Printer"
msgstr ""
@@ -4219,11 +4005,11 @@ msgstr ""
msgid "Move Job"
msgstr ""
-#: cups/http-support.c:1263
+#: cups/http-support.c:1290
msgid "Moved Permanently"
msgstr ""
-#: cups/ppd.c:338
+#: cups/ppd.c:340
msgid "NULL PPD file pointer"
msgstr ""
@@ -4231,31 +4017,31 @@ msgstr ""
msgid "Name OID uses indefinite length"
msgstr ""
-#: scheduler/ipp.c:1222
+#: scheduler/ipp.c:1142
msgid "Nested classes are not allowed."
msgstr ""
-#: ppdc/sample.c:439
+#: ppdc/sample.c:430
msgid "Never"
msgstr ""
-#: ppdc/sample.c:265
+#: ppdc/sample.c:256
msgid "New Stylus Color Series"
msgstr ""
-#: ppdc/sample.c:267
+#: ppdc/sample.c:258
msgid "New Stylus Photo Series"
msgstr ""
-#: cups/ppd.c:1906
+#: cups/ppd.c:1949
msgid "No"
msgstr ""
-#: cups/http-support.c:1260
+#: cups/http-support.c:1287
msgid "No Content"
msgstr ""
-#: cups/util.c:1297
+#: cups/util.c:1298
msgid "No PPD name"
msgstr ""
@@ -4267,20 +4053,20 @@ msgstr ""
msgid "No Windows printer drivers are installed."
msgstr ""
-#: cups/request.c:571 cups/request.c:914
+#: cups/request.c:566 cups/request.c:908
msgid "No active connection"
msgstr ""
-#: scheduler/ipp.c:4490
+#: scheduler/ipp.c:3403
#, c-format
msgid "No active jobs on %s."
msgstr ""
-#: scheduler/ipp.c:329
+#: scheduler/ipp.c:302
msgid "No attributes in request."
msgstr ""
-#: scheduler/ipp.c:4121
+#: scheduler/ipp.c:3034
msgid "No authentication information provided."
msgstr ""
@@ -4288,11 +4074,11 @@ msgstr ""
msgid "No community name"
msgstr ""
-#: scheduler/ipp.c:7108
+#: scheduler/ipp.c:5919
msgid "No default printer."
msgstr ""
-#: cgi-bin/ipp-var.c:436 scheduler/ipp.c:8438
+#: cgi-bin/ipp-var.c:436 scheduler/ipp.c:7248
msgid "No destinations added."
msgstr ""
@@ -4308,15 +4094,11 @@ msgstr ""
msgid "No error-status"
msgstr ""
-#: scheduler/ipp.c:9389 scheduler/ipp.c:10634
+#: scheduler/ipp.c:8190 scheduler/ipp.c:9436
msgid "No file in print request."
msgstr ""
-#: filter/pstext.c:438
-msgid "No fonts in charset file."
-msgstr ""
-
-#: cups/util.c:922
+#: cups/util.c:923
msgid "No modification time"
msgstr ""
@@ -4324,25 +4106,24 @@ msgstr ""
msgid "No name OID"
msgstr ""
-#: driver/rastertoescpx.c:1918 driver/rastertopclx.c:1943
#: filter/rastertoepson.c:1147 filter/rastertohp.c:876
#: filter/rastertolabel.c:1302
msgid "No pages were found."
msgstr ""
-#: cups/util.c:916
+#: cups/util.c:917
msgid "No printer name"
msgstr ""
-#: cups/util.c:1800
+#: cups/util.c:1801
msgid "No printer-uri found"
msgstr ""
-#: cups/util.c:1785
+#: cups/util.c:1786
msgid "No printer-uri found for class"
msgstr ""
-#: scheduler/ipp.c:7511
+#: scheduler/ipp.c:6322
msgid "No printer-uri in request."
msgstr ""
@@ -4350,11 +4131,11 @@ msgstr ""
msgid "No request-id"
msgstr ""
-#: scheduler/ipp.c:6715
+#: scheduler/ipp.c:5528
msgid "No subscription attributes in request."
msgstr ""
-#: scheduler/ipp.c:8774
+#: scheduler/ipp.c:7575
msgid "No subscriptions found."
msgstr ""
@@ -4366,39 +4147,39 @@ msgstr ""
msgid "No version number"
msgstr ""
-#: ppdc/sample.c:376
+#: ppdc/sample.c:367
msgid "Non-continuous (Mark sensing)"
msgstr ""
-#: ppdc/sample.c:375
+#: ppdc/sample.c:366
msgid "Non-continuous (Web sensing)"
msgstr ""
-#: ppdc/sample.c:247
+#: ppdc/sample.c:238
msgid "Normal"
msgstr ""
-#: cups/http-support.c:1282
+#: cups/http-support.c:1309
msgid "Not Found"
msgstr ""
-#: cups/http-support.c:1294
+#: cups/http-support.c:1321
msgid "Not Implemented"
msgstr ""
-#: ppdc/sample.c:285
+#: ppdc/sample.c:276
msgid "Not Installed"
msgstr ""
-#: cups/http-support.c:1269
+#: cups/http-support.c:1296
msgid "Not Modified"
msgstr ""
-#: cups/http-support.c:1297
+#: cups/http-support.c:1324
msgid "Not Supported"
msgstr ""
-#: scheduler/ipp.c:1598 scheduler/ipp.c:11856
+#: scheduler/ipp.c:1518 scheduler/ipp.c:10666
msgid "Not allowed to print."
msgstr ""
@@ -4410,19 +4191,19 @@ msgstr ""
msgid "Note: this program only validates the DSC comments, not the PostScript itself."
msgstr ""
-#: cups/http-support.c:1251 cups/ppd.c:336
+#: cups/http-support.c:1278 cups/ppd.c:338
msgid "OK"
msgstr ""
-#: ppdc/sample.c:280
+#: ppdc/sample.c:271
msgid "Off (1-Sided)"
msgstr ""
-#: ppdc/sample.c:370
+#: ppdc/sample.c:361
msgid "Oki"
msgstr ""
-#: cgi-bin/help.c:90 cgi-bin/help.c:131 cgi-bin/help.c:141 cgi-bin/help.c:172
+#: cgi-bin/help.c:91 cgi-bin/help.c:132 cgi-bin/help.c:142 cgi-bin/help.c:172
msgid "Online Help"
msgstr ""
@@ -4431,48 +4212,43 @@ msgstr ""
msgid "Open of %s failed: %s"
msgstr ""
-#: cups/ppd.c:344
+#: cups/ppd.c:346
msgid "OpenGroup without a CloseGroup first"
msgstr ""
-#: cups/ppd.c:346
+#: cups/ppd.c:348
msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
msgstr ""
-#: cgi-bin/admin.c:3750
+#: cgi-bin/admin.c:3631
msgid "Operation Policy"
msgstr ""
-#: filter/pstops.c:2220
+#: filter/pstops.c:2205
#, c-format
msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
msgstr ""
-#: cgi-bin/admin.c:3400 cgi-bin/admin.c:3484
+#: cgi-bin/admin.c:3281 cgi-bin/admin.c:3365
msgid "Options Installed"
msgstr ""
-#: scheduler/cupsfilter.c:1437 scheduler/cupsfilter.c:1464
-#: scheduler/main.c:2058 systemv/cupsaddsmb.c:284 systemv/cupsctl.c:209
-#: systemv/cupstestdsc.c:429 systemv/cupstestppd.c:3778 test/ipptool.c:4382
-#: ppdc/ppdc.cxx:437 ppdc/ppdhtml.cxx:174 ppdc/ppdi.cxx:130
-#: ppdc/ppdmerge.cxx:369 ppdc/ppdpo.cxx:254
+#: scheduler/cupsfilter.c:1430 scheduler/main.c:2018 systemv/cupsaddsmb.c:284
+#: systemv/cupsctl.c:203 systemv/cupstestdsc.c:429 systemv/cupstestppd.c:3797
+#: test/ipptool.c:4403 ppdc/ppdc.cxx:437 ppdc/ppdhtml.cxx:174
+#: ppdc/ppdi.cxx:130 ppdc/ppdmerge.cxx:369 ppdc/ppdpo.cxx:254
msgid "Options:"
msgstr ""
-#: filter/bannertops.c:674
-msgid "Options: "
-msgstr ""
-
#: cups/ppd-cache.c:156
msgid "Out of date PPD cache file."
msgstr ""
-#: cups/ppd-cache.c:1366
+#: cups/ppd-cache.c:1381
msgid "Out of memory."
msgstr ""
-#: cups/ppd.c:752 cups/ppd.c:1320
+#: cups/ppd.c:795 cups/ppd.c:1363
msgid "Output Mode"
msgstr ""
@@ -4500,7 +4276,7 @@ msgstr ""
msgid "PASS"
msgstr ""
-#: ppdc/sample.c:269
+#: ppdc/sample.c:260
msgid "PCL Laser Printer"
msgstr ""
@@ -4536,11 +4312,11 @@ msgstr ""
msgid "Packet does not start with SEQUENCE"
msgstr ""
-#: ppdc/sample.c:369
+#: ppdc/sample.c:360
msgid "ParamCustominCutInterval"
msgstr ""
-#: ppdc/sample.c:367
+#: ppdc/sample.c:358
msgid "ParamCustominTearInterval"
msgstr ""
@@ -4562,7 +4338,7 @@ msgstr ""
msgid "Pause Printer"
msgstr ""
-#: ppdc/sample.c:457
+#: ppdc/sample.c:448
msgid "Peel-Off"
msgstr ""
@@ -4574,19 +4350,19 @@ msgstr ""
msgid "Photo Labels"
msgstr ""
-#: ppdc/sample.c:295
+#: ppdc/sample.c:286
msgid "Plain Paper"
msgstr ""
-#: cgi-bin/admin.c:3418 cgi-bin/admin.c:3699
+#: cgi-bin/admin.c:3299 cgi-bin/admin.c:3580
msgid "Policies"
msgstr ""
-#: cgi-bin/admin.c:3425 cgi-bin/admin.c:3768 cgi-bin/admin.c:3781
+#: cgi-bin/admin.c:3306 cgi-bin/admin.c:3649 cgi-bin/admin.c:3662
msgid "Port Monitor"
msgstr ""
-#: ppdc/sample.c:287
+#: ppdc/sample.c:278
msgid "PostScript Printer"
msgstr ""
@@ -4606,7 +4382,7 @@ msgstr ""
msgid "Postcard Long Edge"
msgstr ""
-#: ppdc/sample.c:304
+#: ppdc/sample.c:295
msgid "Print Density"
msgstr ""
@@ -4614,11 +4390,11 @@ msgstr ""
msgid "Print Job:"
msgstr ""
-#: ppdc/sample.c:349
+#: ppdc/sample.c:340
msgid "Print Mode"
msgstr ""
-#: ppdc/sample.c:392
+#: ppdc/sample.c:383
msgid "Print Rate"
msgstr ""
@@ -4626,7 +4402,7 @@ msgstr ""
msgid "Print Self-Test Page"
msgstr ""
-#: ppdc/sample.c:336
+#: ppdc/sample.c:327
msgid "Print Speed"
msgstr ""
@@ -4634,52 +4410,44 @@ msgstr ""
msgid "Print Test Page"
msgstr ""
-#: ppdc/sample.c:365
+#: ppdc/sample.c:356
msgid "Print and Cut"
msgstr ""
-#: ppdc/sample.c:353
+#: ppdc/sample.c:344
msgid "Print and Tear"
msgstr ""
-#: backend/ipp.c:1519
+#: backend/ipp.c:1537
#, c-format
msgid "Print file accepted - job ID %d."
msgstr ""
-#: backend/ipp.c:1509
+#: backend/ipp.c:1527
msgid "Print file accepted - job ID unknown."
msgstr ""
-#: backend/parallel.c:286 backend/socket.c:424 backend/usb-unix.c:195
+#: backend/socket.c:424 backend/usb-unix.c:191
msgid "Print file sent."
msgstr ""
-#: backend/ipp.c:1470
+#: backend/ipp.c:1488
msgid "Print file was not accepted."
msgstr ""
-#: backend/ipp.c:1871
-msgid "Print job too large."
-msgstr ""
-
-#: filter/bannertops.c:648
-msgid "Printed For: "
+#: backend/ipp.c:1895
+msgid "Print job canceled at printer."
msgstr ""
-#: filter/bannertops.c:656
-msgid "Printed From: "
-msgstr ""
-
-#: filter/bannertops.c:876
-msgid "Printed On: "
+#: backend/ipp.c:1890
+msgid "Print job too large."
msgstr ""
#: cgi-bin/ipp-var.c:1047
msgid "Printer Added"
msgstr ""
-#: ppdc/sample.c:272
+#: ppdc/sample.c:263
msgid "Printer Default"
msgstr ""
@@ -4691,61 +4459,16 @@ msgstr ""
msgid "Printer Modified"
msgstr ""
-#: filter/bannertops.c:614
-msgid "Printer Name: "
-msgstr ""
-
#: cgi-bin/ipp-var.c:1045
msgid "Printer Paused"
msgstr ""
-#: ppdc/sample.c:303
+#: ppdc/sample.c:294
msgid "Printer Settings"
msgstr ""
-#: backend/usb-unix.c:132
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-#: backend/parallel.c:234 backend/serial.c:256
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-#: backend/lpd.c:611 backend/lpd.c:997 backend/lpd.c:1079 backend/lpd.c:1129
-msgid "Printer did not respond."
-msgstr ""
-
-#: backend/ipp.c:881 backend/ipp.c:888
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-#: backend/usb-unix.c:429 backend/usb-unix.c:513
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-#: backend/runloop.c:253 backend/runloop.c:371
-msgid "Printer is not currently connected."
-msgstr ""
-
-#: backend/runloop.c:392
-msgid "Printer is now connected."
-msgstr ""
-
-#: backend/usb-darwin.c:1286
-msgid "Printer is now online."
-msgstr ""
-
-#: backend/usb-darwin.c:1307
-msgid "Printer is offline."
-msgstr ""
-
-#: backend/usb-unix.c:139
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-#: backend/parallel.c:240
-msgid "Printer not connected; will retry in 30 seconds."
+#: backend/ipp.c:1893
+msgid "Printer cannot print supplied content."
msgstr ""
#: cups/notify.c:126
@@ -4756,18 +4479,12 @@ msgstr ""
msgid "Printers"
msgstr ""
-#: driver/rastertoescpx.c:1882 driver/rastertopclx.c:1904
#: filter/rastertoepson.c:1093 filter/rastertohp.c:817
#: filter/rastertolabel.c:1249
#, c-format
msgid "Printing page %d, %d%% complete."
msgstr ""
-#: filter/imagetops.c:817
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
#: cgi-bin/classes.c:173 cgi-bin/printers.c:176
msgid "Purge Jobs"
msgstr ""
@@ -4776,7 +4493,7 @@ msgstr ""
msgid "Quarto"
msgstr ""
-#: scheduler/ipp.c:1593 scheduler/ipp.c:11851
+#: scheduler/ipp.c:1513 scheduler/ipp.c:10661
msgid "Quota limit reached."
msgstr ""
@@ -4789,35 +4506,29 @@ msgstr ""
msgid "Rank Owner Pri Job Files Total Size"
msgstr ""
-#: backend/ipp.c:1878 backend/socket.c:475 driver/rastertoescpx.c:1923
-#: driver/rastertopclx.c:1948 filter/rastertoepson.c:1152
-#: filter/rastertohp.c:881 filter/rastertolabel.c:1307
-msgid "Ready to print."
-msgstr ""
-
#: cgi-bin/classes.c:171 cgi-bin/printers.c:174
msgid "Reject Jobs"
msgstr ""
-#: backend/lpd.c:1004 backend/lpd.c:1136
+#: backend/lpd.c:1016 backend/lpd.c:1148
#, c-format
msgid "Remote host did not accept control file (%d)."
msgstr ""
-#: backend/lpd.c:1089
+#: backend/lpd.c:1101
#, c-format
msgid "Remote host did not accept data file (%d)."
msgstr ""
-#: ppdc/sample.c:437
+#: ppdc/sample.c:428
msgid "Reprint After Error"
msgstr ""
-#: cups/http-support.c:1285
+#: cups/http-support.c:1312
msgid "Request Entity Too Large"
msgstr ""
-#: cups/ppd.c:754 cups/ppd.c:1322 ppdc/sample.c:240
+#: cups/ppd.c:797 cups/ppd.c:1365 ppdc/sample.c:231
msgid "Resolution"
msgstr ""
@@ -4833,15 +4544,11 @@ msgstr ""
msgid "Return Address"
msgstr ""
-#: ppdc/sample.c:174
-msgid "Return Address - 3/4 x 2\""
-msgstr ""
-
-#: ppdc/sample.c:458
+#: ppdc/sample.c:449
msgid "Rewind"
msgstr ""
-#: cups/adminutil.c:2169
+#: cups/adminutil.c:2052
#, c-format
msgid "Running command: %s %s -N -A %s -c '%s'"
msgstr ""
@@ -4850,11 +4557,11 @@ msgstr ""
msgid "SEQUENCE uses indefinite length"
msgstr ""
-#: cups/http-support.c:1309
+#: cups/http-support.c:1336
msgid "SSL/TLS Negotiation Error"
msgstr ""
-#: cups/http-support.c:1266
+#: cups/http-support.c:1293
msgid "See Other"
msgstr ""
@@ -4862,12 +4569,6 @@ msgstr ""
msgid "Sending data to printer."
msgstr ""
-#: backend/serial.c:783 backend/serial.c:942 backend/serial.c:1064
-#: backend/serial.c:1158
-#, c-format
-msgid "Serial Port #%d"
-msgstr ""
-
#: cgi-bin/ipp-var.c:1061
msgid "Server Restarted"
msgstr ""
@@ -4884,28 +4585,28 @@ msgstr ""
msgid "Server Stopped"
msgstr ""
-#: cups/http-support.c:1303
+#: cups/http-support.c:1330
msgid "Service Unavailable"
msgstr ""
-#: cgi-bin/admin.c:2905 cgi-bin/admin.c:2951 cgi-bin/admin.c:3108
-#: cgi-bin/admin.c:3127
+#: cgi-bin/admin.c:2786 cgi-bin/admin.c:2832 cgi-bin/admin.c:2989
+#: cgi-bin/admin.c:3008
msgid "Set Allowed Users"
msgstr ""
-#: cgi-bin/admin.c:3154
+#: cgi-bin/admin.c:3035
msgid "Set As Server Default"
msgstr ""
-#: cgi-bin/admin.c:3254
+#: cgi-bin/admin.c:3135
msgid "Set Class Options"
msgstr ""
-#: cgi-bin/admin.c:3254 cgi-bin/admin.c:3428 cgi-bin/admin.c:3810
+#: cgi-bin/admin.c:3135 cgi-bin/admin.c:3309 cgi-bin/admin.c:3691
msgid "Set Printer Options"
msgstr ""
-#: cgi-bin/admin.c:3980 cgi-bin/admin.c:4024 cgi-bin/admin.c:4042
+#: cgi-bin/admin.c:3861 cgi-bin/admin.c:3905 cgi-bin/admin.c:3923
msgid "Set Publishing"
msgstr ""
@@ -4913,33 +4614,28 @@ msgstr ""
msgid "Shipping Address"
msgstr ""
-#: ppdc/sample.c:175
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr ""
-
-#: ppdc/sample.c:282
+#: ppdc/sample.c:273
msgid "Short-Edge (Landscape)"
msgstr ""
-#: ppdc/sample.c:297
+#: ppdc/sample.c:288
msgid "Special Paper"
msgstr ""
-#: backend/lpd.c:1045
+#: backend/lpd.c:1057
#, c-format
msgid "Spooling job, %.0f%% complete."
msgstr ""
-#: ppdc/sample.c:350
+#: ppdc/sample.c:341
msgid "Standard"
msgstr ""
#. TRANSLATORS: Banner/cover sheet before the print job.
-#: cgi-bin/admin.c:3671
+#: cgi-bin/admin.c:3552
msgid "Starting Banner"
msgstr ""
-#: driver/rastertoescpx.c:1866 driver/rastertopclx.c:1887
#: filter/rastertoepson.c:1069 filter/rastertohp.c:793
#: filter/rastertolabel.c:1225
#, c-format
@@ -4950,16 +4646,16 @@ msgstr ""
msgid "Statement"
msgstr ""
-#: ppdc/sample.c:260
+#: ppdc/sample.c:251
msgid "Stylus Color Series"
msgstr ""
-#: ppdc/sample.c:266
+#: ppdc/sample.c:257
msgid "Stylus Photo Series"
msgstr ""
-#: scheduler/ipp.c:4636 scheduler/ipp.c:7878 scheduler/ipp.c:8587
-#: scheduler/ipp.c:10085
+#: scheduler/ipp.c:3549 scheduler/ipp.c:6689 scheduler/ipp.c:7388
+#: scheduler/ipp.c:8887
#, c-format
msgid "Subscription #%d does not exist."
msgstr ""
@@ -4976,7 +4672,7 @@ msgstr ""
msgid "Super B/A3"
msgstr ""
-#: cups/http-support.c:1248
+#: cups/http-support.c:1275
msgid "Switching Protocols"
msgstr ""
@@ -4992,41 +4688,45 @@ msgstr ""
msgid "Tabloid Oversize Long Edge"
msgstr ""
-#: ppdc/sample.c:351
+#: ppdc/sample.c:342
msgid "Tear"
msgstr ""
-#: ppdc/sample.c:456
+#: ppdc/sample.c:447
msgid "Tear-Off"
msgstr ""
-#: ppdc/sample.c:397
+#: ppdc/sample.c:388
msgid "Tear-Off Adjust Position"
msgstr ""
-#: scheduler/ipp.c:7582 scheduler/ipp.c:7660 scheduler/ipp.c:7676
-#: scheduler/ipp.c:7694
+#: scheduler/ipp.c:6393 scheduler/ipp.c:6471 scheduler/ipp.c:6487
+#: scheduler/ipp.c:6505
#, c-format
msgid "The %s attribute cannot be provided with job-ids."
msgstr ""
-#: scheduler/ipp.c:8109
+#: scheduler/ipp.c:5118
+#, c-format
+msgid "The '%s' operation attribute cannot be supplied in a Create-Job request."
+msgstr ""
+
+#: scheduler/ipp.c:6919
#, c-format
msgid "The PPD file \"%s\" could not be found."
msgstr ""
-#: scheduler/ipp.c:8096
+#: scheduler/ipp.c:6906
#, c-format
msgid "The PPD file \"%s\" could not be opened: %s"
msgstr ""
-#: driver/rastertoescpx.c:1794 driver/rastertopclx.c:1819
#: filter/rastertoepson.c:1038 filter/rastertohp.c:764
#: filter/rastertolabel.c:1189
msgid "The PPD file could not be opened."
msgstr ""
-#: cgi-bin/admin.c:750
+#: cgi-bin/admin.c:749
msgid "The class name may only contain up to 127 printable characters and may not contain spaces, slashes (/), or the pound sign (#)."
msgstr ""
@@ -5046,11 +4746,11 @@ msgstr ""
msgid "The fuser's temperature is low."
msgstr ""
-#: scheduler/ipp.c:2242
+#: scheduler/ipp.c:2097
msgid "The notify-lease-duration attribute cannot be used with job subscriptions."
msgstr ""
-#: scheduler/ipp.c:2225 scheduler/ipp.c:6840
+#: scheduler/ipp.c:2080 scheduler/ipp.c:5653
#, c-format
msgid "The notify-user-data value is too large (%d > 63 octets)."
msgstr ""
@@ -5075,10 +4775,6 @@ msgstr ""
msgid "The output bin is missing."
msgstr ""
-#: filter/imagetoraster.c:466
-msgid "The page setup information was not valid."
-msgstr ""
-
#: cups/localize.c:325
msgid "The paper tray is almost empty."
msgstr ""
@@ -5095,30 +4791,44 @@ msgstr ""
msgid "The paper tray needs to be filled."
msgstr ""
-#: filter/imagetops.c:322 filter/imagetoraster.c:683
-msgid "The print file could not be opened."
+#: backend/ipp.c:909
+msgid "The printer URI is incorrect or no longer exists."
+msgstr ""
+
+#: backend/lpd.c:619 backend/lpd.c:1009 backend/lpd.c:1091 backend/lpd.c:1141
+msgid "The printer did not respond."
msgstr ""
-#: backend/ipp.c:898
-msgid "The printer URI is incorrect or no longer exists."
+#: backend/ipp.c:892 backend/ipp.c:899
+#, c-format
+msgid "The printer does not support IPP/%d.%d, trying IPP/%s."
msgstr ""
-#: backend/ipp.c:748 backend/ipp.c:863 backend/ipp.c:969 backend/ipp.c:1298
-#: backend/ipp.c:1446 backend/lpd.c:819 backend/socket.c:374
-msgid "The printer is busy."
+#: backend/ipp.c:757 backend/ipp.c:874 backend/ipp.c:980 backend/ipp.c:1313
+#: backend/ipp.c:1464 backend/lpd.c:828 backend/socket.c:374
+#: backend/usb-unix.c:131 backend/usb-unix.c:424 backend/usb-unix.c:507
+msgid "The printer is in use."
msgstr ""
-#: cups/localize.c:311
+#: backend/runloop.c:254 backend/runloop.c:374 cups/localize.c:311
msgid "The printer is not connected."
msgstr ""
-#: backend/ipp.c:726 backend/ipp.c:759 backend/ipp.c:859 backend/lpd.c:798
-#: backend/lpd.c:839 backend/socket.c:353 backend/socket.c:386
+#: backend/ipp.c:735 backend/ipp.c:768 backend/ipp.c:870 backend/lpd.c:807
+#: backend/lpd.c:848 backend/socket.c:353 backend/socket.c:386
msgid "The printer is not responding."
msgstr ""
-#: cups/localize.c:337
-msgid "The printer is out of ink."
+#: backend/runloop.c:396
+msgid "The printer is now connected."
+msgstr ""
+
+#: backend/usb-darwin.c:1286
+msgid "The printer is now online."
+msgstr ""
+
+#: backend/usb-darwin.c:1307
+msgid "The printer is offline."
msgstr ""
#: cups/localize.c:335
@@ -5129,34 +4839,38 @@ msgstr ""
msgid "The printer is running low on toner."
msgstr ""
-#: backend/ipp.c:741 backend/lpd.c:812 backend/socket.c:367
+#: backend/ipp.c:750 backend/lpd.c:821 backend/socket.c:367
msgid "The printer is unreachable at this time."
msgstr ""
+#: cups/localize.c:337
+msgid "The printer may be out of ink."
+msgstr ""
+
#: cups/localize.c:315
msgid "The printer may be out of toner."
msgstr ""
-#: backend/ipp.c:735 backend/lpd.c:806 backend/socket.c:361
+#: backend/ipp.c:744 backend/lpd.c:815 backend/socket.c:361
msgid "The printer may not exist or is unavailable at this time."
msgstr ""
-#: cgi-bin/admin.c:932
+#: cgi-bin/admin.c:931
msgid "The printer name may only contain up to 127 printable characters and may not contain spaces, slashes (/), or the pound sign (#)."
msgstr ""
-#: scheduler/ipp.c:904 scheduler/ipp.c:1216 scheduler/ipp.c:4285
-#: scheduler/ipp.c:4456 scheduler/ipp.c:6371 scheduler/ipp.c:6674
-#: scheduler/ipp.c:6988 scheduler/ipp.c:7548 scheduler/ipp.c:8314
-#: scheduler/ipp.c:8370 scheduler/ipp.c:8693 scheduler/ipp.c:8959
-#: scheduler/ipp.c:9048 scheduler/ipp.c:9081 scheduler/ipp.c:9404
-#: scheduler/ipp.c:9797 scheduler/ipp.c:9878 scheduler/ipp.c:11029
-#: scheduler/ipp.c:11484 scheduler/ipp.c:11814 scheduler/ipp.c:11896
-#: scheduler/ipp.c:12188
+#: scheduler/ipp.c:876 scheduler/ipp.c:1136 scheduler/ipp.c:3198
+#: scheduler/ipp.c:3369 scheduler/ipp.c:5101 scheduler/ipp.c:5487
+#: scheduler/ipp.c:5801 scheduler/ipp.c:6359 scheduler/ipp.c:7124
+#: scheduler/ipp.c:7180 scheduler/ipp.c:7494 scheduler/ipp.c:7760
+#: scheduler/ipp.c:7849 scheduler/ipp.c:7882 scheduler/ipp.c:8205
+#: scheduler/ipp.c:8598 scheduler/ipp.c:8679 scheduler/ipp.c:9840
+#: scheduler/ipp.c:10294 scheduler/ipp.c:10624 scheduler/ipp.c:10706
+#: scheduler/ipp.c:10998
msgid "The printer or class does not exist."
msgstr ""
-#: scheduler/ipp.c:1384
+#: scheduler/ipp.c:1304
msgid "The printer or class is not shared."
msgstr ""
@@ -5180,20 +4894,20 @@ msgstr ""
msgid "The printer's waste bin is full."
msgstr ""
-#: scheduler/ipp.c:1011 scheduler/ipp.c:2407
+#: scheduler/ipp.c:982 scheduler/ipp.c:2261
#, c-format
msgid "The printer-uri \"%s\" contains invalid characters."
msgstr ""
-#: scheduler/ipp.c:4262
+#: scheduler/ipp.c:3175
msgid "The printer-uri attribute is required."
msgstr ""
-#: scheduler/ipp.c:995
+#: scheduler/ipp.c:966
msgid "The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
msgstr ""
-#: scheduler/ipp.c:2391
+#: scheduler/ipp.c:2245
msgid "The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
msgstr ""
@@ -5201,16 +4915,16 @@ msgstr ""
msgid "The subscription name may not contain spaces, slashes (/), question marks (?), or the pound sign (#)."
msgstr ""
-#: scheduler/client.c:2464
+#: scheduler/client.c:2450
msgid "The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to enable it."
msgstr ""
-#: scheduler/ipp.c:7643
+#: scheduler/ipp.c:6454
#, c-format
msgid "The which-jobs value \"%s\" is not supported."
msgstr ""
-#: scheduler/ipp.c:6918
+#: scheduler/ipp.c:5731
msgid "There are too many subscriptions."
msgstr ""
@@ -5223,53 +4937,49 @@ msgstr ""
msgid "There was an unrecoverable USB error."
msgstr ""
-#: ppdc/sample.c:444
+#: ppdc/sample.c:435
msgid "Thermal Transfer Media"
msgstr ""
-#: filter/bannertops.c:640
-msgid "Title: "
-msgstr ""
-
-#: scheduler/ipp.c:1587
+#: scheduler/ipp.c:1507
msgid "Too many active jobs."
msgstr ""
-#: scheduler/ipp.c:1481
+#: scheduler/ipp.c:1401
#, c-format
msgid "Too many job-sheets values (%d > 2)."
msgstr ""
-#: scheduler/ipp.c:2728
+#: scheduler/ipp.c:2529
#, c-format
msgid "Too many printer-state-reasons values (%d > %d)."
msgstr ""
-#: ppdc/sample.c:298
+#: ppdc/sample.c:289
msgid "Transparency"
msgstr ""
-#: ppdc/sample.c:293
+#: ppdc/sample.c:284
msgid "Tray"
msgstr ""
-#: ppdc/sample.c:273
+#: ppdc/sample.c:264
msgid "Tray 1"
msgstr ""
-#: ppdc/sample.c:274
+#: ppdc/sample.c:265
msgid "Tray 2"
msgstr ""
-#: ppdc/sample.c:275
+#: ppdc/sample.c:266
msgid "Tray 3"
msgstr ""
-#: ppdc/sample.c:276
+#: ppdc/sample.c:267
msgid "Tray 4"
msgstr ""
-#: cups/http-support.c:1288
+#: cups/http-support.c:1315
msgid "URI Too Long"
msgstr ""
@@ -5305,78 +5015,76 @@ msgstr ""
msgid "US Letter Small"
msgstr ""
-#: backend/serial.c:796
-#, c-format
-msgid "USB Serial Port #%d"
+#: cgi-bin/admin.c:1959 cgi-bin/admin.c:1972 cgi-bin/admin.c:1996
+msgid "Unable to access cupsd.conf file"
msgstr ""
-#: cgi-bin/admin.c:2033 cgi-bin/admin.c:2046 cgi-bin/admin.c:2070
-msgid "Unable to access cupsd.conf file:"
+#: cgi-bin/help.c:133
+msgid "Unable to access help file."
msgstr ""
#: cgi-bin/admin.c:526
-msgid "Unable to add RSS subscription:"
+msgid "Unable to add RSS subscription"
msgstr ""
-#: cgi-bin/admin.c:815
-msgid "Unable to add class:"
+#: cgi-bin/admin.c:814
+msgid "Unable to add class"
msgstr ""
-#: backend/ipp.c:1616
+#: backend/ipp.c:1635
msgid "Unable to add document to print job."
msgstr ""
-#: scheduler/ipp.c:1628
+#: scheduler/ipp.c:1548
#, c-format
msgid "Unable to add job for destination \"%s\"."
msgstr ""
-#: cgi-bin/admin.c:1060 cgi-bin/admin.c:1420
-msgid "Unable to add printer:"
+#: cgi-bin/admin.c:1059 cgi-bin/admin.c:1419
+msgid "Unable to add printer"
msgstr ""
-#: scheduler/ipp.c:1326
+#: scheduler/ipp.c:1246
msgid "Unable to allocate memory for file types."
msgstr ""
-#: filter/pstops.c:456
+#: filter/pstops.c:451
msgid "Unable to allocate memory for page info"
msgstr ""
-#: filter/pstops.c:450
+#: filter/pstops.c:445
msgid "Unable to allocate memory for pages array"
msgstr ""
-#: cgi-bin/admin.c:1526
-msgid "Unable to cancel RSS subscription:"
+#: cgi-bin/admin.c:1525
+msgid "Unable to cancel RSS subscription"
msgstr ""
-#: backend/ipp.c:1920
+#: backend/ipp.c:1942
msgid "Unable to cancel print job."
msgstr ""
-#: cgi-bin/admin.c:4025
-msgid "Unable to change printer-is-shared attribute:"
+#: cgi-bin/admin.c:2990
+msgid "Unable to change printer"
msgstr ""
-#: cgi-bin/admin.c:3109
-msgid "Unable to change printer:"
+#: cgi-bin/admin.c:3906
+msgid "Unable to change printer-is-shared attribute"
msgstr ""
-#: cgi-bin/admin.c:1710 cgi-bin/admin.c:1874
-msgid "Unable to change server settings:"
+#: cgi-bin/admin.c:1657 cgi-bin/admin.c:1799
+msgid "Unable to change server settings"
msgstr ""
-#: filter/commandtops.c:421
+#: filter/commandtops.c:420
msgid "Unable to configure printer options."
msgstr ""
-#: cups/adminutil.c:911 cups/request.c:1022
+#: cups/adminutil.c:911 cups/request.c:1016
msgid "Unable to connect to host."
msgstr ""
-#: backend/ipp.c:704 backend/ipp.c:1119 backend/lpd.c:778
-#: backend/parallel.c:219 backend/serial.c:241 backend/socket.c:333
+#: backend/ipp.c:713 backend/ipp.c:1138 backend/lpd.c:787 backend/socket.c:333
#: backend/usb-unix.c:117
msgid "Unable to contact printer, queuing on next printer in class."
msgstr ""
@@ -5396,12 +5104,12 @@ msgstr ""
msgid "Unable to copy CUPS printer driver files (%d)."
msgstr ""
-#: scheduler/ipp.c:2848
+#: scheduler/ipp.c:2649
#, c-format
msgid "Unable to copy PPD file - %s"
msgstr ""
-#: scheduler/ipp.c:2903
+#: scheduler/ipp.c:2704
msgid "Unable to copy PPD file."
msgstr ""
@@ -5415,80 +5123,68 @@ msgstr ""
msgid "Unable to copy Windows 9x printer driver files (%d)."
msgstr ""
-#: scheduler/ipp.c:2825
+#: scheduler/ipp.c:2626
#, c-format
msgid "Unable to copy interface script - %s"
msgstr ""
-#: filter/imagetops.c:141 filter/imagetoraster.c:301
-msgid "Unable to copy print file"
-msgstr ""
-
-#: backend/ipp.c:2012
+#: backend/ipp.c:2034
msgid "Unable to create compressed print file"
msgstr ""
-#: filter/imagetoraster.c:242
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-#: cups/util.c:601 cups/util.c:1655
+#: cups/util.c:602 cups/util.c:1656
msgid "Unable to create printer-uri"
msgstr ""
-#: scheduler/cupsfilter.c:1241
+#: cgi-bin/admin.c:1850 cgi-bin/admin.c:1862 scheduler/cupsfilter.c:1236
msgid "Unable to create temporary file"
msgstr ""
-#: cgi-bin/admin.c:1924 cgi-bin/admin.c:1936
-msgid "Unable to create temporary file:"
-msgstr ""
-
-#: cgi-bin/admin.c:2227
-msgid "Unable to delete class:"
+#: cgi-bin/admin.c:2153
+msgid "Unable to delete class"
msgstr ""
-#: cgi-bin/admin.c:2312
-msgid "Unable to delete printer:"
+#: cgi-bin/admin.c:2238
+msgid "Unable to delete printer"
msgstr ""
#: cgi-bin/classes.c:260 cgi-bin/printers.c:269
-msgid "Unable to do maintenance command:"
+msgid "Unable to do maintenance command"
msgstr ""
-#: cgi-bin/admin.c:2048
+#: cgi-bin/admin.c:1974
msgid "Unable to edit cupsd.conf files larger than 1MB"
msgstr ""
-#: cups/http.c:4192
+#: cups/http.c:4272
msgid "Unable to establish a secure connection to host (certificate chain invalid)."
msgstr ""
-#: cups/http.c:4182
+#: cups/http.c:4262
msgid "Unable to establish a secure connection to host (certificate not yet valid)."
msgstr ""
-#: cups/http.c:4177
+#: cups/http.c:4257
msgid "Unable to establish a secure connection to host (expired certificate)."
msgstr ""
-#: cups/http.c:4187
+#: cups/http.c:4267
msgid "Unable to establish a secure connection to host (host name mismatch)."
msgstr ""
-#: cups/http.c:4197
+#: cups/http.c:4277
msgid "Unable to establish a secure connection to host (peer dropped connection before responding)."
msgstr ""
-#: cups/http.c:4172
+#: cups/http.c:4252
msgid "Unable to establish a secure connection to host (self-signed certificate)."
msgstr ""
-#: cups/http.c:4167
+#: cups/http.c:4247
msgid "Unable to establish a secure connection to host (untrusted certificate)."
msgstr ""
-#: cups/http.c:3929 cups/http.c:4224 cups/http.c:4257 cups/http.c:4274
+#: cups/http.c:4008 cups/http.c:4304 cups/http.c:4337 cups/http.c:4354
msgid "Unable to establish a secure connection to host."
msgstr ""
@@ -5496,48 +5192,44 @@ msgstr ""
msgid "Unable to find destination for job"
msgstr ""
-#: cups/http-support.c:1634
+#: cups/http-support.c:1748
msgid "Unable to find printer."
msgstr ""
-#: filter/imagetoraster.c:266
-msgid "Unable to fork filter"
-msgstr ""
-
-#: backend/ipp.c:2034
+#: backend/ipp.c:2056
msgid "Unable to generate compressed print file"
msgstr ""
-#: backend/ipp.c:2938
+#: backend/ipp.c:3009
msgid "Unable to get backend exit status."
msgstr ""
#: cgi-bin/classes.c:450
-msgid "Unable to get class list:"
+msgid "Unable to get class list"
msgstr ""
#: cgi-bin/classes.c:549
-msgid "Unable to get class status:"
+msgid "Unable to get class status"
msgstr ""
-#: cgi-bin/admin.c:1321
-msgid "Unable to get list of printer drivers:"
+#: cgi-bin/admin.c:1320
+msgid "Unable to get list of printer drivers"
msgstr ""
-#: cgi-bin/admin.c:2959
-msgid "Unable to get printer attributes:"
+#: cgi-bin/admin.c:2840
+msgid "Unable to get printer attributes"
msgstr ""
#: cgi-bin/printers.c:467
-msgid "Unable to get printer list:"
+msgid "Unable to get printer list"
msgstr ""
-#: backend/ipp.c:922
-msgid "Unable to get printer status."
+#: cgi-bin/printers.c:569
+msgid "Unable to get printer status"
msgstr ""
-#: cgi-bin/printers.c:569
-msgid "Unable to get printer status:"
+#: backend/ipp.c:933
+msgid "Unable to get printer status."
msgstr ""
#: cups/adminutil.c:565 cups/adminutil.c:769
@@ -5550,22 +5242,26 @@ msgstr ""
msgid "Unable to install Windows 9x printer driver files (%d)."
msgstr ""
-#: backend/ipp.c:636 backend/lpd.c:417 backend/socket.c:275
+#: cgi-bin/help.c:92
+msgid "Unable to load help index."
+msgstr ""
+
+#: backend/ipp.c:642 backend/lpd.c:421 backend/socket.c:275
#, c-format
msgid "Unable to locate printer \"%s\"."
msgstr ""
-#: backend/dnssd.c:529 backend/ipp.c:318 backend/lpd.c:200
+#: backend/dnssd.c:781 backend/ipp.c:324 backend/lpd.c:204
#: backend/socket.c:171
msgid "Unable to locate printer."
msgstr ""
-#: cgi-bin/admin.c:814
-msgid "Unable to modify class:"
+#: cgi-bin/admin.c:813
+msgid "Unable to modify class"
msgstr ""
-#: cgi-bin/admin.c:1059 cgi-bin/admin.c:1419
-msgid "Unable to modify printer:"
+#: cgi-bin/admin.c:1058 cgi-bin/admin.c:1418
+msgid "Unable to modify printer"
msgstr ""
#: cgi-bin/ipp-var.c:432 cgi-bin/ipp-var.c:521
@@ -5576,82 +5272,61 @@ msgstr ""
msgid "Unable to move jobs"
msgstr ""
-#: cups/ppd.c:337
+#: cgi-bin/admin.c:3186 cups/ppd.c:339
msgid "Unable to open PPD file"
msgstr ""
-#: cgi-bin/admin.c:3305
-msgid "Unable to open PPD file:"
-msgstr ""
-
-#: filter/texttops.c:282
-msgid "Unable to open charset file"
-msgstr ""
-
-#: backend/ipp.c:2018
+#: backend/ipp.c:2040
msgid "Unable to open compressed print file"
msgstr ""
-#: cgi-bin/admin.c:2683
+#: cgi-bin/admin.c:2608
msgid "Unable to open cupsd.conf file:"
msgstr ""
-#: backend/parallel.c:246 backend/serial.c:261 backend/usb-unix.c:145
+#: backend/usb-unix.c:141
msgid "Unable to open device file"
msgstr ""
-#: scheduler/ipp.c:7329
+#: scheduler/ipp.c:6140
#, c-format
msgid "Unable to open document #%d in job #%d."
msgstr ""
-#: backend/ipp.c:359 backend/ipp.c:1380 backend/ipp.c:1576 backend/ipp.c:2024
-#: backend/lpd.c:484 backend/parallel.c:150 backend/serial.c:190
-#: backend/socket.c:158 backend/usb.c:237 filter/bannertops.c:183
-#: filter/gziptoany.c:71 filter/pstext.c:89 filter/pstext.c:249
-#: filter/pstext.c:266 filter/pstops.c:305
-msgid "Unable to open print file"
+#: cgi-bin/help.c:364
+msgid "Unable to open help file."
msgstr ""
-#: filter/texttops.c:263
-msgid "Unable to open psglyphs"
+#: backend/ipp.c:365 backend/ipp.c:1398 backend/ipp.c:1594 backend/ipp.c:2046
+#: backend/lpd.c:488 backend/socket.c:158 backend/usb.c:237
+#: filter/gziptoany.c:71 filter/pstops.c:300
+msgid "Unable to open print file"
msgstr ""
-#: driver/rastertoescpx.c:1814 driver/rastertopclx.c:1839
#: filter/rastertoepson.c:998 filter/rastertohp.c:724
#: filter/rastertolabel.c:1147
msgid "Unable to open raster file"
msgstr ""
-#: filter/texttops.c:216
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#: filter/texttops.c:180 filter/texttops.c:188 filter/texttops.c:196
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
#: cgi-bin/ipp-var.c:795
-msgid "Unable to print test page:"
+msgid "Unable to print test page"
msgstr ""
-#: backend/runloop.c:95 backend/runloop.c:322
-msgid "Unable to read print data"
+#: backend/runloop.c:96 backend/runloop.c:325 backend/usb-darwin.c:613
+#: backend/usb-darwin.c:657 backend/usb-libusb.c:343 backend/usb-libusb.c:378
+msgid "Unable to read print data."
msgstr ""
-#: backend/usb-darwin.c:613 backend/usb-darwin.c:657 backend/usb-libusb.c:343
-#: backend/usb-libusb.c:378
-msgid "Unable to read print data."
+#: cups/dest.c:3402
+msgid "Unable to resolve printer URI."
msgstr ""
-#: cups/adminutil.c:2205
+#: cups/adminutil.c:2088
#, c-format
msgid "Unable to run \"%s\": %s"
msgstr ""
-#: filter/pstops.c:568
+#: filter/pstops.c:563
msgid "Unable to see in file"
msgstr ""
@@ -5663,37 +5338,32 @@ msgstr ""
msgid "Unable to send data to printer."
msgstr ""
-#: filter/imagetoraster.c:1246 filter/imagetoraster.c:1343
-#: filter/imagetoraster.c:1384
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
#: cups/adminutil.c:821
#, c-format
msgid "Unable to set Windows printer driver (%d)."
msgstr ""
-#: cgi-bin/admin.c:3926
-msgid "Unable to set options:"
+#: cgi-bin/admin.c:3807
+msgid "Unable to set options"
msgstr ""
-#: cgi-bin/admin.c:3196
-msgid "Unable to set server default:"
+#: cgi-bin/admin.c:3077
+msgid "Unable to set server default"
msgstr ""
-#: backend/ipp.c:2797 backend/ipp.c:2874 backend/ipp.c:2882
+#: backend/ipp.c:2868 backend/ipp.c:2945 backend/ipp.c:2953
msgid "Unable to start backend process."
msgstr ""
-#: cgi-bin/admin.c:1986
-msgid "Unable to upload cupsd.conf file:"
+#: cgi-bin/admin.c:1912
+msgid "Unable to upload cupsd.conf file"
msgstr ""
#: backend/usb-darwin.c:1985 backend/usb-darwin.c:2009
msgid "Unable to use legacy USB class driver."
msgstr ""
-#: backend/runloop.c:124 backend/runloop.c:377
+#: backend/runloop.c:125 backend/runloop.c:380
msgid "Unable to write print data"
msgstr ""
@@ -5702,127 +5372,120 @@ msgstr ""
msgid "Unable to write uncompressed print data: %s"
msgstr ""
-#: cups/http-support.c:1276
+#: cups/http-support.c:1303
msgid "Unauthorized"
msgstr ""
-#: cgi-bin/admin.c:3622
+#: cgi-bin/admin.c:3503
msgid "Units"
msgstr ""
-#: cups/http-support.c:1316 cups/ppd.c:364
+#: cups/http-support.c:1343 cups/ppd.c:366
msgid "Unknown"
msgstr ""
-#: filter/pstops.c:2228
+#: filter/pstops.c:2213
#, c-format
msgid "Unknown choice \"%s\" for option \"%s\"."
msgstr ""
-#: backend/ipp.c:501
+#: backend/ipp.c:507
#, c-format
msgid "Unknown encryption option value: \"%s\"."
msgstr ""
-#: backend/lpd.c:346
+#: backend/lpd.c:350
#, c-format
msgid "Unknown file order: \"%s\"."
msgstr ""
-#: backend/lpd.c:317
+#: backend/lpd.c:321
#, c-format
msgid "Unknown format character: \"%c\"."
msgstr ""
-#: backend/ipp.c:548
+#: cups/dest-options.c:770
+msgid "Unknown media size name."
+msgstr ""
+
+#: backend/ipp.c:554
#, c-format
msgid "Unknown option \"%s\" with value \"%s\"."
msgstr ""
-#: filter/pstops.c:2211
+#: filter/pstops.c:2196
#, c-format
msgid "Unknown option \"%s\"."
msgstr ""
-#: backend/lpd.c:332
+#: backend/lpd.c:336
#, c-format
msgid "Unknown print mode: \"%s\"."
msgstr ""
-#: scheduler/ipp.c:11686
+#: scheduler/ipp.c:10496
#, c-format
msgid "Unknown printer-error-policy \"%s\"."
msgstr ""
-#: scheduler/ipp.c:11669
+#: scheduler/ipp.c:10479
#, c-format
msgid "Unknown printer-op-policy \"%s\"."
msgstr ""
-#: backend/ipp.c:520
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#: backend/serial.c:379
-#, c-format
-msgid "Unsupported baud rate: %s"
+#: cups/http-addrlist.c:710
+msgid "Unknown service name."
msgstr ""
-#: filter/pstops.c:2419
+#: backend/ipp.c:526
#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
+msgid "Unknown version option value: \"%s\"."
msgstr ""
-#: scheduler/ipp.c:429
+#: scheduler/ipp.c:402
#, c-format
msgid "Unsupported character set \"%s\"."
msgstr ""
-#: scheduler/ipp.c:9370 scheduler/ipp.c:10599 scheduler/ipp.c:12140
+#: scheduler/ipp.c:8171 scheduler/ipp.c:9401 scheduler/ipp.c:10950
#, c-format
msgid "Unsupported compression \"%s\"."
msgstr ""
-#: scheduler/ipp.c:9504 scheduler/ipp.c:10749 scheduler/ipp.c:12169
+#: scheduler/ipp.c:8305 scheduler/ipp.c:9551 scheduler/ipp.c:10979
#, c-format
msgid "Unsupported document-format \"%s\"."
msgstr ""
-#: scheduler/ipp.c:10732
+#: scheduler/ipp.c:9534
#, c-format
msgid "Unsupported document-format \"%s/%s\"."
msgstr ""
-#: scheduler/ipp.c:1447
+#: scheduler/ipp.c:1367
#, c-format
msgid "Unsupported format \"%s\"."
msgstr ""
-#: filter/pstops.c:2501
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-#: scheduler/ipp.c:1545
+#: scheduler/ipp.c:1465
msgid "Unsupported margins."
msgstr ""
-#: cups/pwg-media.c:467
+#: cups/pwg-media.c:529
msgid "Unsupported media value."
msgstr ""
-#: filter/pstops.c:2545
+#: filter/pstops.c:2478
#, c-format
msgid "Unsupported number-up value %d, using number-up=1."
msgstr ""
-#: filter/pstops.c:2579
+#: filter/pstops.c:2512
#, c-format
msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
msgstr ""
-#: filter/pstops.c:2630
+#: filter/pstops.c:2563
#, c-format
msgid "Unsupported page-border value %s, using page-border=none."
msgstr ""
@@ -5835,7 +5498,7 @@ msgstr ""
msgid "Unsupported value type"
msgstr ""
-#: cups/http-support.c:1291
+#: cups/http-support.c:1318
msgid "Upgrade Required"
msgstr ""
@@ -5851,42 +5514,27 @@ msgid ""
" [-u allow:user,user] [-u deny:user,user]"
msgstr ""
-#: filter/pdftops.c:109
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#: backend/dnssd.c:174 backend/ipp.c:307 backend/lpd.c:189
-#: backend/parallel.c:127 backend/serial.c:167 backend/socket.c:135
-#: backend/usb.c:183 driver/commandtoescpx.c:57 driver/commandtopclx.c:57
-#: filter/textcommon.c:518 monitor/bcp.c:62 monitor/tbcp.c:61
+#: backend/dnssd.c:241 backend/ipp.c:313 backend/lpd.c:191
+#: backend/socket.c:135 backend/usb.c:183 filter/commandtops.c:74
+#: filter/gziptoany.c:50 filter/pstops.c:264 monitor/bcp.c:62
+#: monitor/tbcp.c:61
#, c-format
msgid "Usage: %s job-id user title copies options [file]"
msgstr ""
-#: filter/bannertops.c:118 filter/commandtops.c:74 filter/gziptoany.c:50
-#: filter/imagetops.c:123 filter/imagetoraster.c:215 filter/pstops.c:269
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-#: scheduler/cupsfilter.c:1463
-msgid "Usage: convert [ options ]"
-msgstr ""
-
#: systemv/cupsaddsmb.c:281
msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
msgstr ""
-#: systemv/cupsctl.c:206
+#: systemv/cupsctl.c:200
msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
msgstr ""
-#: scheduler/main.c:2057
+#: scheduler/main.c:2017
msgid "Usage: cupsd [options]"
msgstr ""
-#: scheduler/cupsfilter.c:1436
+#: scheduler/cupsfilter.c:1429
msgid "Usage: cupsfilter [ options ] filename"
msgstr ""
@@ -5894,11 +5542,11 @@ msgstr ""
msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
msgstr ""
-#: systemv/cupstestppd.c:3774
+#: systemv/cupstestppd.c:3793
msgid "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
msgstr ""
-#: test/ipptool.c:4380
+#: test/ipptool.c:4401
msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
msgstr ""
@@ -5965,7 +5613,7 @@ msgstr ""
msgid "Version uses indefinite length"
msgstr ""
-#: backend/ipp.c:1656
+#: backend/ipp.c:1675
msgid "Waiting for job to complete."
msgstr ""
@@ -5981,15 +5629,15 @@ msgstr ""
msgid "Warning, no Windows 2000 printer drivers are installed."
msgstr ""
-#: cups/http-support.c:1312
+#: cups/http-support.c:1339
msgid "Web Interface is Disabled"
msgstr ""
-#: cups/ppd.c:1904
+#: cups/ppd.c:1947
msgid "Yes"
msgstr ""
-#: scheduler/client.c:2451
+#: scheduler/client.c:2437
#, c-format
msgid "You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%s:%d%s</A>."
msgstr ""
@@ -5998,11 +5646,11 @@ msgstr ""
msgid "Your password must be at least 6 characters long, cannot contain your username, and must contain at least one letter and number."
msgstr ""
-#: ppdc/sample.c:448
+#: ppdc/sample.c:439
msgid "ZPL Label Printer"
msgstr ""
-#: ppdc/sample.c:371
+#: ppdc/sample.c:362
msgid "Zebra"
msgstr ""
@@ -6018,15 +5666,11 @@ msgstr ""
msgid "completed"
msgstr ""
-#: scheduler/cupsfilter.c:355
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-#: scheduler/ipp.c:7201
+#: scheduler/ipp.c:6012
msgid "cups-deviced failed to execute."
msgstr ""
-#: scheduler/ipp.c:8031 scheduler/ipp.c:8281
+#: scheduler/ipp.c:6842 scheduler/ipp.c:7091
msgid "cups-driverd failed to execute."
msgstr ""
@@ -6035,71 +5679,71 @@ msgstr ""
msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
msgstr ""
-#: systemv/cupsctl.c:147
+#: systemv/cupsctl.c:141
msgid "cupsctl: Cannot set Listen or Port directly."
msgstr ""
-#: systemv/cupsctl.c:158
+#: systemv/cupsctl.c:152
#, c-format
msgid "cupsctl: Unable to connect to server: %s"
msgstr ""
-#: systemv/cupsctl.c:201
+#: systemv/cupsctl.c:195
#, c-format
msgid "cupsctl: Unknown option \"%s\""
msgstr ""
-#: systemv/cupsctl.c:203
+#: systemv/cupsctl.c:197
#, c-format
msgid "cupsctl: Unknown option \"-%c\""
msgstr ""
-#: scheduler/main.c:190
+#: scheduler/main.c:189
msgid "cupsd: Expected config filename after \"-c\" option."
msgstr ""
-#: scheduler/main.c:222 scheduler/main.c:229
+#: scheduler/main.c:221 scheduler/main.c:228
msgid "cupsd: Unable to get current directory."
msgstr ""
-#: scheduler/main.c:296
+#: scheduler/main.c:295
#, c-format
msgid "cupsd: Unknown argument \"%s\" - aborting."
msgstr ""
-#: scheduler/main.c:289
+#: scheduler/main.c:288
#, c-format
msgid "cupsd: Unknown option \"%c\" - aborting."
msgstr ""
-#: scheduler/main.c:256
+#: scheduler/main.c:255
msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
msgstr ""
-#: scheduler/cupsfilter.c:1214
+#: scheduler/cupsfilter.c:1209
#, c-format
msgid "cupsfilter: Invalid document number %d."
msgstr ""
-#: scheduler/cupsfilter.c:1208
+#: scheduler/cupsfilter.c:1203
#, c-format
msgid "cupsfilter: Invalid job ID %d."
msgstr ""
-#: scheduler/cupsfilter.c:363
+#: scheduler/cupsfilter.c:358
msgid "cupsfilter: Only one filename can be specified."
msgstr ""
-#: scheduler/cupsfilter.c:1256
+#: scheduler/cupsfilter.c:1251
#, c-format
msgid "cupsfilter: Unable to get job file - %s"
msgstr ""
-#: systemv/cupstestppd.c:260
+#: systemv/cupstestppd.c:261
msgid "cupstestppd: The -q option is incompatible with the -v option."
msgstr ""
-#: systemv/cupstestppd.c:276
+#: systemv/cupstestppd.c:277
msgid "cupstestppd: The -v option is incompatible with the -q option."
msgstr ""
@@ -6133,19 +5777,11 @@ msgstr ""
msgid "idle"
msgstr ""
-#: test/ipptool.c:373
+#: test/ipptool.c:373 test/ipptool.c:515 test/ipptool.c:539
msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
msgstr ""
-#: test/ipptool.c:508
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-#: test/ipptool.c:532
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#: test/ipptool.c:590
+#: test/ipptool.c:597
#, c-format
msgid "ipptool: Bad URI - %s."
msgstr ""
@@ -6155,15 +5791,15 @@ msgstr ""
msgid "ipptool: Bad version %s for \"-V\"."
msgstr ""
-#: test/ipptool.c:501
+#: test/ipptool.c:508
msgid "ipptool: Invalid seconds for \"-i\"."
msgstr ""
-#: test/ipptool.c:571
+#: test/ipptool.c:578
msgid "ipptool: May only specify a single URI."
msgstr ""
-#: test/ipptool.c:524
+#: test/ipptool.c:531
msgid "ipptool: Missing count for \"-n\"."
msgstr ""
@@ -6175,7 +5811,7 @@ msgstr ""
msgid "ipptool: Missing name=value for \"-d\"."
msgstr ""
-#: test/ipptool.c:491
+#: test/ipptool.c:498
msgid "ipptool: Missing seconds for \"-i\"."
msgstr ""
@@ -6187,16 +5823,16 @@ msgstr ""
msgid "ipptool: Missing version for \"-V\"."
msgstr ""
-#: test/ipptool.c:617
+#: test/ipptool.c:624
msgid "ipptool: URI required before test file."
msgstr ""
-#: test/ipptool.c:551
+#: test/ipptool.c:558
#, c-format
msgid "ipptool: Unknown option \"-%c\"."
msgstr ""
-#: scheduler/ipp.c:9037
+#: scheduler/ipp.c:7838
msgid "job-printer-uri attribute missing."
msgstr ""
@@ -6299,7 +5935,7 @@ msgstr ""
msgid "lpadmin: Unable to connect to server: %s"
msgstr ""
-#: systemv/lpadmin.c:1332
+#: systemv/lpadmin.c:1329
msgid "lpadmin: Unable to create temporary file"
msgstr ""
@@ -6309,7 +5945,7 @@ msgid ""
" You must specify a printer name first."
msgstr ""
-#: systemv/lpadmin.c:1342
+#: systemv/lpadmin.c:1339
#, c-format
msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
msgstr ""
@@ -6502,16 +6138,16 @@ msgstr ""
msgid "no system default destination"
msgstr ""
-#: scheduler/ipp.c:6889
+#: scheduler/ipp.c:5702
msgid "notify-events not specified."
msgstr ""
-#: scheduler/ipp.c:2179 scheduler/ipp.c:6794
+#: scheduler/ipp.c:2034 scheduler/ipp.c:5607
#, c-format
msgid "notify-recipient-uri URI \"%s\" is already used."
msgstr ""
-#: scheduler/ipp.c:2169 scheduler/ipp.c:6784
+#: scheduler/ipp.c:2024 scheduler/ipp.c:5597
#, c-format
msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
msgstr ""
@@ -6530,7 +6166,7 @@ msgstr ""
msgid "ppdc: Adding/updating UI text from %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:412
+#: ppdc/ppdc-source.cxx:410
#, c-format
msgid "ppdc: Bad boolean value (%s) on line %d of %s."
msgstr ""
@@ -6540,192 +6176,192 @@ msgstr ""
msgid "ppdc: Bad font attribute: %s"
msgstr ""
-#: ppdc/ppdc-source.cxx:1797
+#: ppdc/ppdc-source.cxx:1796
#, c-format
msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1115
+#: ppdc/ppdc-source.cxx:1113
#, c-format
msgid "ppdc: Bad status keyword %s on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2034
+#: ppdc/ppdc-source.cxx:2033
#, c-format
msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2720
+#: ppdc/ppdc-source.cxx:2719
#, c-format
msgid "ppdc: Choice found on line %d of %s with no Option."
msgstr ""
-#: ppdc/ppdc-source.cxx:1699
+#: ppdc/ppdc-source.cxx:1698
#, c-format
msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:934
+#: ppdc/ppdc-source.cxx:932
#, c-format
msgid "ppdc: Expected a filter definition on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:957
+#: ppdc/ppdc-source.cxx:955
#, c-format
msgid "ppdc: Expected a program name on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:396
+#: ppdc/ppdc-source.cxx:394
#, c-format
msgid "ppdc: Expected boolean value on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1095
+#: ppdc/ppdc-source.cxx:1093
#, c-format
msgid "ppdc: Expected charset after Font on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:449
+#: ppdc/ppdc-source.cxx:447
#, c-format
msgid "ppdc: Expected choice code on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:437
+#: ppdc/ppdc-source.cxx:435
#, c-format
msgid "ppdc: Expected choice name/text on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:505
+#: ppdc/ppdc-source.cxx:503
#, c-format
msgid "ppdc: Expected color order for ColorModel on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:494
+#: ppdc/ppdc-source.cxx:492
#, c-format
msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:516
+#: ppdc/ppdc-source.cxx:514
#, c-format
msgid "ppdc: Expected compression for ColorModel on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:697
+#: ppdc/ppdc-source.cxx:695
#, c-format
msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2906
+#: ppdc/ppdc-source.cxx:2905
#, c-format
msgid "ppdc: Expected driver type keyword following DriverType on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:828
+#: ppdc/ppdc-source.cxx:826
#, c-format
msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1079
+#: ppdc/ppdc-source.cxx:1077
#, c-format
msgid "ppdc: Expected encoding after Font on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1690
+#: ppdc/ppdc-source.cxx:1689
#, c-format
msgid "ppdc: Expected filename after #po %s on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1207
+#: ppdc/ppdc-source.cxx:1205
#, c-format
msgid "ppdc: Expected group name/text on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2620
+#: ppdc/ppdc-source.cxx:2619
#, c-format
msgid "ppdc: Expected include filename on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1503
+#: ppdc/ppdc-source.cxx:1502
#, c-format
msgid "ppdc: Expected integer on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1682
+#: ppdc/ppdc-source.cxx:1681
#, c-format
msgid "ppdc: Expected locale after #po on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:355
+#: ppdc/ppdc-source.cxx:353
#, c-format
msgid "ppdc: Expected name after %s on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3278
+#: ppdc/ppdc-source.cxx:3277
#, c-format
msgid "ppdc: Expected name after FileName on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1060
+#: ppdc/ppdc-source.cxx:1058
#, c-format
msgid "ppdc: Expected name after Font on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3109
+#: ppdc/ppdc-source.cxx:3108
#, c-format
msgid "ppdc: Expected name after Manufacturer on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3142
+#: ppdc/ppdc-source.cxx:3141
#, c-format
msgid "ppdc: Expected name after MediaSize on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3232
+#: ppdc/ppdc-source.cxx:3231
#, c-format
msgid "ppdc: Expected name after ModelName on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3295
+#: ppdc/ppdc-source.cxx:3294
#, c-format
msgid "ppdc: Expected name after PCFileName on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1158
+#: ppdc/ppdc-source.cxx:1156
#, c-format
msgid "ppdc: Expected name/text after %s on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1247
+#: ppdc/ppdc-source.cxx:1245
#, c-format
msgid "ppdc: Expected name/text after Installable on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1783
+#: ppdc/ppdc-source.cxx:1782
#, c-format
msgid "ppdc: Expected name/text after Resolution on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:481
+#: ppdc/ppdc-source.cxx:479
#, c-format
msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1575
+#: ppdc/ppdc-source.cxx:1574
#, c-format
msgid "ppdc: Expected option name/text on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1609
+#: ppdc/ppdc-source.cxx:1608
#, c-format
msgid "ppdc: Expected option section on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1587
+#: ppdc/ppdc-source.cxx:1586
#, c-format
msgid "ppdc: Expected option type on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1766
+#: ppdc/ppdc-source.cxx:1765
#, c-format
msgid "ppdc: Expected override field after Resolution on line %d of %s."
msgstr ""
@@ -6735,82 +6371,82 @@ msgstr ""
msgid "ppdc: Expected quoted string on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1006
+#: ppdc/ppdc-source.cxx:1004
#, c-format
msgid "ppdc: Expected real number on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:574
+#: ppdc/ppdc-source.cxx:572
#, c-format
msgid "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1864
+#: ppdc/ppdc-source.cxx:1863
#, c-format
msgid "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:363
+#: ppdc/ppdc-source.cxx:361
#, c-format
msgid "ppdc: Expected selector after %s on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1103
+#: ppdc/ppdc-source.cxx:1101
#, c-format
msgid "ppdc: Expected status after Font on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2795
+#: ppdc/ppdc-source.cxx:2794
#, c-format
msgid "ppdc: Expected string after Copyright on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3398
+#: ppdc/ppdc-source.cxx:3397
#, c-format
msgid "ppdc: Expected string after Version on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:730
+#: ppdc/ppdc-source.cxx:728
#, c-format
msgid "ppdc: Expected two option names on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:374
+#: ppdc/ppdc-source.cxx:372
#, c-format
msgid "ppdc: Expected value after %s on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1087
+#: ppdc/ppdc-source.cxx:1085
#, c-format
msgid "ppdc: Expected version after Font on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:229
+#: ppdc/ppdc-source.cxx:227
#, c-format
msgid "ppdc: Invalid #include/#po filename \"%s\"."
msgstr ""
-#: ppdc/ppdc-source.cxx:974
+#: ppdc/ppdc-source.cxx:972
#, c-format
msgid "ppdc: Invalid cost for filter on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:966
+#: ppdc/ppdc-source.cxx:964
#, c-format
msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:982
+#: ppdc/ppdc-source.cxx:980
#, c-format
msgid "ppdc: Invalid empty program name for filter on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1629
+#: ppdc/ppdc-source.cxx:1628
#, c-format
msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1601
+#: ppdc/ppdc-source.cxx:1600
#, c-format
msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
msgstr ""
@@ -6830,13 +6466,13 @@ msgstr ""
msgid "ppdc: Loading messages from \"%s\"."
msgstr ""
-#: ppdc/ppdc-source.cxx:2413 ppdc/ppdc-source.cxx:2645
+#: ppdc/ppdc-source.cxx:2412 ppdc/ppdc-source.cxx:2644
#, c-format
msgid "ppdc: Missing #endif at end of \"%s\"."
msgstr ""
-#: ppdc/ppdc-source.cxx:2514 ppdc/ppdc-source.cxx:2549
-#: ppdc/ppdc-source.cxx:2579
+#: ppdc/ppdc-source.cxx:2513 ppdc/ppdc-source.cxx:2548
+#: ppdc/ppdc-source.cxx:2578
#, c-format
msgid "ppdc: Missing #if on line %d of %s."
msgstr ""
@@ -6851,24 +6487,24 @@ msgstr ""
msgid "ppdc: No message catalog provided for locale %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1652 ppdc/ppdc-source.cxx:2883
-#: ppdc/ppdc-source.cxx:2969 ppdc/ppdc-source.cxx:3062
-#: ppdc/ppdc-source.cxx:3195 ppdc/ppdc-source.cxx:3328
+#: ppdc/ppdc-source.cxx:1651 ppdc/ppdc-source.cxx:2882
+#: ppdc/ppdc-source.cxx:2968 ppdc/ppdc-source.cxx:3061
+#: ppdc/ppdc-source.cxx:3194 ppdc/ppdc-source.cxx:3327
#, c-format
msgid "ppdc: Option %s defined in two different groups on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1645
+#: ppdc/ppdc-source.cxx:1644
#, c-format
msgid "ppdc: Option %s redefined with a different type on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:707
+#: ppdc/ppdc-source.cxx:705
#, c-format
msgid "ppdc: Option constraint must *name on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2496
+#: ppdc/ppdc-source.cxx:2495
#, c-format
msgid "ppdc: Too many nested #if's on line %d of %s."
msgstr ""
@@ -6893,12 +6529,12 @@ msgstr ""
msgid "ppdc: Unable to execute cupstestppd: %s"
msgstr ""
-#: ppdc/ppdc-source.cxx:1731
+#: ppdc/ppdc-source.cxx:1730
#, c-format
msgid "ppdc: Unable to find #po file %s on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2652
+#: ppdc/ppdc-source.cxx:2651
#, c-format
msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
msgstr ""
@@ -6918,7 +6554,7 @@ msgstr ""
msgid "ppdc: Unable to open %s: %s"
msgstr ""
-#: ppdc/ppdc-source.cxx:2055
+#: ppdc/ppdc-source.cxx:2054
#, c-format
msgid "ppdc: Undefined variable (%s) on line %d of %s."
msgstr ""
@@ -6928,17 +6564,17 @@ msgstr ""
msgid "ppdc: Unexpected text on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2925
+#: ppdc/ppdc-source.cxx:2924
#, c-format
msgid "ppdc: Unknown driver type %s on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:908
+#: ppdc/ppdc-source.cxx:906
#, c-format
msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3155
+#: ppdc/ppdc-source.cxx:3154
#, c-format
msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
msgstr ""
@@ -6948,17 +6584,17 @@ msgstr ""
msgid "ppdc: Unknown message catalog format for \"%s\"."
msgstr ""
-#: ppdc/ppdc-source.cxx:3409
+#: ppdc/ppdc-source.cxx:3408
#, c-format
msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1016
+#: ppdc/ppdc-source.cxx:1014
#, c-format
msgid "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2165
+#: ppdc/ppdc-source.cxx:2164
#, c-format
msgid "ppdc: Unterminated string starting with %c on line %d of %s."
msgstr ""
@@ -7027,7 +6663,7 @@ msgstr ""
msgid "processing"
msgstr ""
-#: systemv/lp.c:639
+#: systemv/lp.c:644
#, c-format
msgid "request id is %s-%d (%d file(s))"
msgstr ""
@@ -7044,7 +6680,7 @@ msgstr ""
msgid "scheduler is running"
msgstr ""
-#: cups/adminutil.c:2276
+#: cups/adminutil.c:2159
#, c-format
msgid "stat of %s failed: %s"
msgstr ""
diff --git a/locale/cups.strings b/locale/cups.strings
index e1795c8e..745be0f8 100644
--- a/locale/cups.strings
+++ b/locale/cups.strings
@@ -117,28 +117,27 @@
" %s cupsICCProfile %s hash value collides with %s." = " %s cupsICCProfile %s hash value collides with %s.";
" %s cupsUIResolver %s causes a loop." = " %s cupsUIResolver %s causes a loop.";
" %s cupsUIResolver %s does not list at least two different options." = " %s cupsUIResolver %s does not list at least two different options.";
-" **FAIL** %s choice names %s and %s differ only by case." = " **FAIL** %s choice names %s and %s differ only by case.";
" **FAIL** %s must be 1284DeviceID\n REF: Page 72, section 5.5" = " **FAIL** %s must be 1284DeviceID\n REF: Page 72, section 5.5";
-" **FAIL** BAD Default%s %s\n REF: Page 40, section 4.5." = " **FAIL** BAD Default%s %s\n REF: Page 40, section 4.5.";
-" **FAIL** BAD DefaultImageableArea %s\n REF: Page 102, section 5.15." = " **FAIL** BAD DefaultImageableArea %s\n REF: Page 102, section 5.15.";
-" **FAIL** BAD DefaultPaperDimension %s\n REF: Page 103, section 5.15." = " **FAIL** BAD DefaultPaperDimension %s\n REF: Page 103, section 5.15.";
-" **FAIL** BAD JobPatchFile attribute in file\n REF: Page 24, section 3.4." = " **FAIL** BAD JobPatchFile attribute in file\n REF: Page 24, section 3.4.";
-" **FAIL** BAD Manufacturer (should be \"HP\")\n REF: Page 211, table D.1." = " **FAIL** BAD Manufacturer (should be \"HP\")\n REF: Page 211, table D.1.";
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n REF: Page 211, table D.1." = " **FAIL** BAD Manufacturer (should be \"Oki\")\n REF: Page 211, table D.1.";
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n REF: Pages 59-60, section 5.3." = " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n REF: Pages 59-60, section 5.3.";
-" **FAIL** BAD PSVersion - not \"(string) int\".\n REF: Pages 62-64, section 5.3." = " **FAIL** BAD PSVersion - not \"(string) int\".\n REF: Pages 62-64, section 5.3.";
-" **FAIL** BAD Product - not \"(string)\".\n REF: Page 62, section 5.3." = " **FAIL** BAD Product - not \"(string)\".\n REF: Page 62, section 5.3.";
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n REF: Pages 64-65, section 5.3." = " **FAIL** BAD ShortNickName - longer than 31 chars.\n REF: Pages 64-65, section 5.3.";
-" **FAIL** Bad %s choice %s\n REF: Page 84, section 5.9" = " **FAIL** Bad %s choice %s\n REF: Page 84, section 5.9";
+" **FAIL** Bad Default%s %s\n REF: Page 40, section 4.5." = " **FAIL** Bad Default%s %s\n REF: Page 40, section 4.5.";
+" **FAIL** Bad DefaultImageableArea %s\n REF: Page 102, section 5.15." = " **FAIL** Bad DefaultImageableArea %s\n REF: Page 102, section 5.15.";
+" **FAIL** Bad DefaultPaperDimension %s\n REF: Page 103, section 5.15." = " **FAIL** Bad DefaultPaperDimension %s\n REF: Page 103, section 5.15.";
" **FAIL** Bad FileVersion \"%s\"\n REF: Page 56, section 5.3." = " **FAIL** Bad FileVersion \"%s\"\n REF: Page 56, section 5.3.";
" **FAIL** Bad FormatVersion \"%s\"\n REF: Page 56, section 5.3." = " **FAIL** Bad FormatVersion \"%s\"\n REF: Page 56, section 5.3.";
+" **FAIL** Bad JobPatchFile attribute in file\n REF: Page 24, section 3.4." = " **FAIL** Bad JobPatchFile attribute in file\n REF: Page 24, section 3.4.";
" **FAIL** Bad LanguageEncoding %s - must be ISOLatin1." = " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1.";
" **FAIL** Bad LanguageVersion %s - must be English." = " **FAIL** Bad LanguageVersion %s - must be English.";
+" **FAIL** Bad Manufacturer (should be \"%s\")\n REF: Page 211, table D.1." = " **FAIL** Bad Manufacturer (should be \"%s\")\n REF: Page 211, table D.1.";
+" **FAIL** Bad ModelName - \"%c\" not allowed in string.\n REF: Pages 59-60, section 5.3." = " **FAIL** Bad ModelName - \"%c\" not allowed in string.\n REF: Pages 59-60, section 5.3.";
+" **FAIL** Bad PSVersion - not \"(string) int\".\n REF: Pages 62-64, section 5.3." = " **FAIL** Bad PSVersion - not \"(string) int\".\n REF: Pages 62-64, section 5.3.";
+" **FAIL** Bad Product - not \"(string)\".\n REF: Page 62, section 5.3." = " **FAIL** Bad Product - not \"(string)\".\n REF: Page 62, section 5.3.";
+" **FAIL** Bad ShortNickName - longer than 31 chars.\n REF: Pages 64-65, section 5.3." = " **FAIL** Bad ShortNickName - longer than 31 chars.\n REF: Pages 64-65, section 5.3.";
+" **FAIL** Bad option %s choice %s\n REF: Page 84, section 5.9" = " **FAIL** Bad option %s choice %s\n REF: Page 84, section 5.9";
" **FAIL** Default option code cannot be interpreted: %s" = " **FAIL** Default option code cannot be interpreted: %s";
" **FAIL** Default translation string for option %s choice %s contains 8-bit characters." = " **FAIL** Default translation string for option %s choice %s contains 8-bit characters.";
" **FAIL** Default translation string for option %s contains 8-bit characters." = " **FAIL** Default translation string for option %s contains 8-bit characters.";
" **FAIL** Group names %s and %s differ only by case." = " **FAIL** Group names %s and %s differ only by case.";
-" **FAIL** Multiple occurrences of %s choice name %s." = " **FAIL** Multiple occurrences of %s choice name %s.";
+" **FAIL** Multiple occurrences of option %s choice name %s." = " **FAIL** Multiple occurrences of option %s choice name %s.";
+" **FAIL** Option %s choice names %s and %s differ only by case." = " **FAIL** Option %s choice names %s and %s differ only by case.";
" **FAIL** Option names %s and %s differ only by case." = " **FAIL** Option names %s and %s differ only by case.";
" **FAIL** REQUIRED Default%s\n REF: Page 40, section 4.5." = " **FAIL** REQUIRED Default%s\n REF: Page 40, section 4.5.";
" **FAIL** REQUIRED DefaultImageableArea\n REF: Page 102, section 5.15." = " **FAIL** REQUIRED DefaultImageableArea\n REF: Page 102, section 5.15.";
@@ -159,7 +158,6 @@
" **FAIL** REQUIRED PaperDimension for PageSize %s\n REF: Page 41, section 5.\n REF: Page 103, section 5.15." = " **FAIL** REQUIRED PaperDimension for PageSize %s\n REF: Page 41, section 5.\n REF: Page 103, section 5.15.";
" **FAIL** REQUIRED Product\n REF: Page 62, section 5.3." = " **FAIL** REQUIRED Product\n REF: Page 62, section 5.3.";
" **FAIL** REQUIRED ShortNickName\n REF: Page 64-65, section 5.3." = " **FAIL** REQUIRED ShortNickName\n REF: Page 64-65, section 5.3.";
-" **FAIL** Unable to open PPD file - %s" = " **FAIL** Unable to open PPD file - %s";
" **FAIL** Unable to open PPD file - %s on line %d." = " **FAIL** Unable to open PPD file - %s on line %d.";
" %d ERRORS FOUND" = " %d ERRORS FOUND";
" -h Show program usage" = " -h Show program usage";
@@ -182,42 +180,34 @@
" --[no-]debug-logging Turn debug logging on/off." = " --[no-]debug-logging Turn debug logging on/off.";
" --[no-]remote-admin Turn remote administration on/off." = " --[no-]remote-admin Turn remote administration on/off.";
" --[no-]remote-any Allow/prevent access from the Internet." = " --[no-]remote-any Allow/prevent access from the Internet.";
-" --[no-]remote-printers Show/hide remote printers." = " --[no-]remote-printers Show/hide remote printers.";
" --[no-]share-printers Turn printer sharing on/off." = " --[no-]share-printers Turn printer sharing on/off.";
" --[no-]user-cancel-any Allow/prevent users to cancel any job." = " --[no-]user-cancel-any Allow/prevent users to cancel any job.";
" --cr End lines with CR (Mac OS 9)." = " --cr End lines with CR (Mac OS 9).";
" --crlf End lines with CR + LF (Windows)." = " --crlf End lines with CR + LF (Windows).";
-" --lf End lines with LF (UNIX/Linux/Mac OS X)." = " --lf End lines with LF (UNIX/Linux/Mac OS X).";
+" --lf End lines with LF (UNIX/Linux/OS X)." = " --lf End lines with LF (UNIX/Linux/OS X).";
" -4 Connect using IPv4." = " -4 Connect using IPv4.";
" -6 Connect using IPv6." = " -6 Connect using IPv6.";
" -C Send requests using chunking (default)." = " -C Send requests using chunking (default).";
" -D Remove the input file when finished." = " -D Remove the input file when finished.";
" -D name=value Set named variable to value." = " -D name=value Set named variable to value.";
-" -E Enable encryption." = " -E Enable encryption.";
-" -E Encrypt the connection to the server." = " -E Encrypt the connection to the server.";
-" -E Test with TLS encryption." = " -E Test with TLS encryption.";
+" -E Encrypt the connection." = " -E Encrypt the connection.";
+" -E Test with HTTP Upgrade to TLS." = " -E Test with HTTP Upgrade to TLS.";
" -F Run in the foreground but detach from console." = " -F Run in the foreground but detach from console.";
" -H samba-server Use the named SAMBA server." = " -H samba-server Use the named SAMBA server.";
" -I Ignore errors." = " -I Ignore errors.";
" -I include-dir Add include directory to search path." = " -I include-dir Add include directory to search path.";
" -I {filename,filters,none,profiles}" = " -I {filename,filters,none,profiles}";
-" -J title Set title." = " -J title Set title.";
" -L Send requests using content-length." = " -L Send requests using content-length.";
" -P filename.ppd Set PPD file." = " -P filename.ppd Set PPD file.";
" -R root-directory Set alternate root." = " -R root-directory Set alternate root.";
" -S Test with SSL encryption." = " -S Test with SSL encryption.";
-" -T Set the receive/send timeout in seconds." = " -T Set the receive/send timeout in seconds.";
-" -U samba-user Authenticate using the named SAMBA user." = " -U samba-user Authenticate using the named SAMBA user.";
-" -U username Set username for job." = " -U username Set username for job.";
+" -T seconds Set the receive/send timeout in seconds." = " -T seconds Set the receive/send timeout in seconds.";
" -U username Specify username." = " -U username Specify username.";
" -V version Set default IPP version." = " -V version Set default IPP version.";
" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,translations}" = " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,translations}";
" -X Produce XML plist instead of plain text." = " -X Produce XML plist instead of plain text.";
" -a Export all printers." = " -a Export all printers.";
-" -a 'name=value ...' Set option(s)." = " -a 'name=value ...' Set option(s).";
" -c catalog.po Load the specified message catalog." = " -c catalog.po Load the specified message catalog.";
-" -c config-file Load alternate configuration file." = " -c config-file Load alternate configuration file.";
-" -c copies Set number of copies." = " -c copies Set number of copies.";
" -c cupsd.conf Set cupsd.conf file to use." = " -c cupsd.conf Set cupsd.conf file to use.";
" -d name=value Set named variable to value." = " -d name=value Set named variable to value.";
" -d output-dir Specify the output directory." = " -d output-dir Specify the output directory.";
@@ -225,26 +215,21 @@
" -e Use every filter from the PPD file." = " -e Use every filter from the PPD file.";
" -f Run in the foreground." = " -f Run in the foreground.";
" -f filename Set default request filename." = " -f filename Set default request filename.";
-" -f filename Set file to be converted (otherwise stdin)." = " -f filename Set file to be converted (otherwise stdin).";
" -h Show this usage message." = " -h Show this usage message.";
-" -h cups-server Use the named CUPS server." = " -h cups-server Use the named CUPS server.";
" -h server[:port] Specify server address." = " -h server[:port] Specify server address.";
" -i mime/type Set input MIME type (otherwise auto-typed)." = " -i mime/type Set input MIME type (otherwise auto-typed).";
" -i seconds Repeat the last file with the given time interval." = " -i seconds Repeat the last file with the given time interval.";
" -j job-id[,N] Filter file N from the specified job (default is file 1)." = " -j job-id[,N] Filter file N from the specified job (default is file 1).";
-" -j mime/type Set output MIME type (otherwise application/pdf)." = " -j mime/type Set output MIME type (otherwise application/pdf).";
" -l Run cupsd from launchd(8)." = " -l Run cupsd from launchd(8).";
" -l lang[,lang,...] Specify the output language(s) (locale)." = " -l lang[,lang,...] Specify the output language(s) (locale).";
" -m Use the ModelName value as the filename." = " -m Use the ModelName value as the filename.";
" -m mime/type Set output MIME type (otherwise application/pdf)." = " -m mime/type Set output MIME type (otherwise application/pdf).";
" -n copies Set number of copies." = " -n copies Set number of copies.";
" -n count Repeat the last file the given number of times." = " -n count Repeat the last file the given number of times.";
-" -o filename Set file to be generated (otherwise stdout)." = " -o filename Set file to be generated (otherwise stdout).";
" -o filename.drv Set driver information file (otherwise ppdi.drv)." = " -o filename.drv Set driver information file (otherwise ppdi.drv).";
" -o filename.ppd[.gz] Set output file (otherwise stdout)." = " -o filename.ppd[.gz] Set output file (otherwise stdout).";
" -o name=value Set option(s)." = " -o name=value Set option(s).";
" -p filename.ppd Set PPD file." = " -p filename.ppd Set PPD file.";
-" -q Be quiet - no output except errors." = " -q Be quiet - no output except errors.";
" -q Run silently." = " -q Run silently.";
" -r Use 'relaxed' open mode." = " -r Use 'relaxed' open mode.";
" -t Produce a test report." = " -t Produce a test report.";
@@ -252,20 +237,13 @@
" -t Test the configuration file." = " -t Test the configuration file.";
" -t title Set title." = " -t title Set title.";
" -u Remove the PPD file when finished." = " -u Remove the PPD file when finished.";
-" -v Be slightly verbose." = " -v Be slightly verbose.";
-" -v Be verbose (more v's for more verbosity)." = " -v Be verbose (more v's for more verbosity).";
-" -v Be verbose (show commands)." = " -v Be verbose (show commands).";
-" -v Show all attributes sent and received." = " -v Show all attributes sent and received.";
+" -v Be verbose." = " -v Be verbose.";
" -vv Be very verbose." = " -vv Be very verbose.";
" -z Compress PPD files using GNU zip." = " -z Compress PPD files using GNU zip.";
" FAIL" = " FAIL";
" PASS" = " PASS";
"%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes" = "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes";
"%-7s %-7.7s %-7d %-31.31s %.0f bytes" = "%-7s %-7.7s %-7d %-31.31s %.0f bytes";
-"%.0f x %.0f millimeters" = "%.0f x %.0f millimeters";
-"%.0f x %.0f to %.0f x %.0f millimeters" = "%.0f x %.0f to %.0f x %.0f millimeters";
-"%.2f x %.2f inches" = "%.2f x %.2f inches";
-"%.2f x %.2f to %.2f x %.2f inches" = "%.2f x %.2f to %.2f x %.2f inches";
"%s accepting requests since %s" = "%s accepting requests since %s";
"%s cannot be changed." = "%s cannot be changed.";
"%s is not implemented by the CUPS version of lpc." = "%s is not implemented by the CUPS version of lpc.";
@@ -470,7 +448,6 @@
"3.25x7.83\"" = "3.25x7.83\"";
"3.5 x 5" = "3.5 x 5";
"3.5\" Disk" = "3.5\" Disk";
-"3.5\" Disk - 2 1/8 x 2 3/4\"" = "3.5\" Disk - 2 1/8 x 2 3/4\"";
"3.50x1.00\"" = "3.50x1.00\"";
"30" = "30";
"30 mm/sec." = "30 mm/sec.";
@@ -584,7 +561,6 @@
"Add Printer" = "Add Printer";
"Add RSS Subscription" = "Add RSS Subscription";
"Address" = "Address";
-"Address - 1 1/8 x 3 1/2\"" = "Address - 1 1/8 x 3 1/2\"";
"Administration" = "Administration";
"Always" = "Always";
"AppSocket/HP JetDirect" = "AppSocket/HP JetDirect";
@@ -611,42 +587,31 @@
"Bad Request" = "Bad Request";
"Bad SNMP version number" = "Bad SNMP version number";
"Bad UIConstraints" = "Bad UIConstraints";
-"Bad charset file \"%s\"." = "Bad charset file \"%s\".";
-"Bad charset type: %s" = "Bad charset type: %s";
-"Bad columns value %d." = "Bad columns value %d.";
"Bad copies value %d." = "Bad copies value %d.";
-"Bad cpi value %f." = "Bad cpi value %f.";
"Bad custom parameter" = "Bad custom parameter";
"Bad device-uri \"%s\"." = "Bad device-uri \"%s\".";
"Bad device-uri scheme \"%s\"." = "Bad device-uri scheme \"%s\".";
"Bad document-format \"%s\"." = "Bad document-format \"%s\".";
"Bad document-format-default \"%s\"." = "Bad document-format-default \"%s\".";
"Bad filename buffer" = "Bad filename buffer";
-"Bad font description line \"%s\"." = "Bad font description line \"%s\".";
-"Bad font description line: %s" = "Bad font description line: %s";
"Bad job-priority value." = "Bad job-priority value.";
"Bad job-sheets value \"%s\"." = "Bad job-sheets value \"%s\".";
"Bad job-sheets value type." = "Bad job-sheets value type.";
"Bad job-state value." = "Bad job-state value.";
"Bad job-uri \"%s\"." = "Bad job-uri \"%s\".";
-"Bad lpi value %f." = "Bad lpi value %f.";
"Bad notify-pull-method \"%s\"." = "Bad notify-pull-method \"%s\".";
"Bad notify-recipient-uri \"%s\"." = "Bad notify-recipient-uri \"%s\".";
"Bad number-up value %d." = "Bad number-up value %d.";
"Bad option + choice on line %d." = "Bad option + choice on line %d.";
"Bad page-ranges values %d-%d." = "Bad page-ranges values %d-%d.";
"Bad port-monitor \"%s\"." = "Bad port-monitor \"%s\".";
+"Bad printer URI." = "Bad printer URI.";
"Bad printer-state value %d." = "Bad printer-state value %d.";
"Bad request ID %d." = "Bad request ID %d.";
"Bad request version number %d.%d." = "Bad request version number %d.%d.";
"Bad subscription ID" = "Bad subscription ID";
-"Bad text direction \"%s\"." = "Bad text direction \"%s\".";
-"Bad text direction: %s" = "Bad text direction: %s";
-"Bad text width \"%s\"." = "Bad text width \"%s\".";
-"Bad text width: %s" = "Bad text width: %s";
"Bad value string" = "Bad value string";
"Banners" = "Banners";
-"Billing Information: " = "Billing Information: ";
"Bond Paper" = "Bond Paper";
"Boolean expected for waiteof option \"%s\"." = "Boolean expected for waiteof option \"%s\".";
"Buffer overflow detected, aborting." = "Buffer overflow detected, aborting.";
@@ -672,7 +637,6 @@
"Control file sent successfully." = "Control file sent successfully.";
"Copying print data." = "Copying print data.";
"Created" = "Created";
-"Created On: " = "Created On: ";
"Custom" = "Custom";
"CustominCutInterval" = "CustominCutInterval";
"CustominTearInterval" = "CustominTearInterval";
@@ -683,7 +647,6 @@
"Data file sent successfully." = "Data file sent successfully.";
"Delete Class" = "Delete Class";
"Delete Printer" = "Delete Printer";
-"Description: " = "Description: ";
"DeskJet Series" = "DeskJet Series";
"Destination \"%s\" is not accepting jobs." = "Destination \"%s\" is not accepting jobs.";
"Device: uri = %s\n class = %s\n info = %s\n make-and-model = %s\n device-id = %s\n location = %s" = "Device: uri = %s\n class = %s\n info = %s\n make-and-model = %s\n device-id = %s\n location = %s";
@@ -695,8 +658,6 @@
"Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)." = "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d).";
"Disabled" = "Disabled";
"Document #%d does not exist in job #%d." = "Document #%d does not exist in job #%d.";
-"Driver Name: " = "Driver Name: ";
-"Driver Version: " = "Driver Version: ";
"Duplexer" = "Duplexer";
"Dymo" = "Dymo";
"EPL1 Label Printer" = "EPL1 Label Printer";
@@ -789,13 +750,11 @@
"File \"%s\" is a directory." = "File \"%s\" is a directory.";
"File \"%s\" not available: %s" = "File \"%s\" not available: %s";
"File \"%s\" permissions OK (0%o/uid=%d/gid=%d)." = "File \"%s\" permissions OK (0%o/uid=%d/gid=%d).";
-"File Folder" = "File Folder";
-"File Folder - 9/16 x 3 7/16\"" = "File Folder - 9/16 x 3 7/16\"";
+"File Folder " = "File Folder ";
"File device URIs have been disabled. To enable, see the FileDevice directive in \"%s/cupsd.conf\"." = "File device URIs have been disabled. To enable, see the FileDevice directive in \"%s/cupsd.conf\".";
"Finished page %d." = "Finished page %d.";
"Folio" = "Folio";
"Forbidden" = "Forbidden";
-"Formatting page %d." = "Formatting page %d.";
"General" = "General";
"Generic" = "Generic";
"Get-Response-PDU uses indefinite length" = "Get-Response-PDU uses indefinite length";
@@ -804,17 +763,20 @@
"Grayscale" = "Grayscale";
"HP" = "HP";
"Hanging Folder" = "Hanging Folder";
-"Hanging Folder - 9/16 x 2\"" = "Hanging Folder - 9/16 x 2\"";
+"Help file not in index." = "Help file not in index.";
"IPP 1setOf attribute with incompatible value tags." = "IPP 1setOf attribute with incompatible value tags.";
"IPP attribute has no name." = "IPP attribute has no name.";
+"IPP attribute is not a member of the message." = "IPP attribute is not a member of the message.";
"IPP begCollection value not 0 bytes." = "IPP begCollection value not 0 bytes.";
"IPP boolean value not 1 byte." = "IPP boolean value not 1 byte.";
"IPP date value not 11 bytes." = "IPP date value not 11 bytes.";
"IPP endCollection value not 0 bytes." = "IPP endCollection value not 0 bytes.";
"IPP enum value not 4 bytes." = "IPP enum value not 4 bytes.";
+"IPP extension tag larger than 0x7FFFFFFF." = "IPP extension tag larger than 0x7FFFFFFF.";
"IPP integer value not 4 bytes." = "IPP integer value not 4 bytes.";
"IPP language length overflows value." = "IPP language length overflows value.";
"IPP member name is not empty." = "IPP member name is not empty.";
+"IPP memberName value is empty." = "IPP memberName value is empty.";
"IPP name larger than 32767 bytes." = "IPP name larger than 32767 bytes.";
"IPP nameWithLanguage value less than minimum 4 bytes." = "IPP nameWithLanguage value less than minimum 4 bytes.";
"IPP rangeOfInteger value not 8 bytes." = "IPP rangeOfInteger value not 8 bytes.";
@@ -835,10 +797,9 @@
"Internal Server Error" = "Internal Server Error";
"Internal error" = "Internal error";
"Internet Postage 2-Part" = "Internet Postage 2-Part";
-"Internet Postage 2-Part - 2 1/4 x 7 1/2\"" = "Internet Postage 2-Part - 2 1/4 x 7 1/2\"";
"Internet Postage 3-Part" = "Internet Postage 3-Part";
-"Internet Postage 3-Part - 2 1/4 x 7\"" = "Internet Postage 3-Part - 2 1/4 x 7\"";
"Internet Printing Protocol" = "Internet Printing Protocol";
+"Invalid media size." = "Invalid media size.";
"Invalid printer command \"%s\"." = "Invalid printer command \"%s\".";
"JCL" = "JCL";
"JIS B0" = "JIS B0";
@@ -866,12 +827,10 @@
"Job #%d is not held." = "Job #%d is not held.";
"Job Completed" = "Job Completed";
"Job Created" = "Job Created";
-"Job ID: " = "Job ID: ";
"Job Options Changed" = "Job Options Changed";
"Job Stopped" = "Job Stopped";
-"Job UUID: " = "Job UUID: ";
"Job is completed and cannot be changed." = "Job is completed and cannot be changed.";
-"Job operation failed:" = "Job operation failed:";
+"Job operation failed" = "Job operation failed";
"Job state cannot be changed." = "Job state cannot be changed.";
"Job subscriptions cannot be renewed." = "Job subscriptions cannot be renewed.";
"Jobs" = "Jobs";
@@ -880,22 +839,15 @@
"Label Top" = "Label Top";
"Language \"%s\" not supported." = "Language \"%s\" not supported.";
"Large Address" = "Large Address";
-"Large Address - 1 4/10 x 3 1/2\"" = "Large Address - 1 4/10 x 3 1/2\"";
"LaserJet Series PCL 4/5" = "LaserJet Series PCL 4/5";
"Letter Oversize" = "Letter Oversize";
"Letter Oversize Long Edge" = "Letter Oversize Long Edge";
"Light" = "Light";
"Line longer than the maximum allowed (255 characters)" = "Line longer than the maximum allowed (255 characters)";
"List Available Printers" = "List Available Printers";
-"Loading print file." = "Loading print file.";
-"Location: " = "Location: ";
"Long-Edge (Portrait)" = "Long-Edge (Portrait)";
"Looking for printer." = "Looking for printer.";
-"Make and Model: " = "Make and Model: ";
"Manual Feed" = "Manual Feed";
-"Media Dimensions: " = "Media Dimensions: ";
-"Media Limits: " = "Media Limits: ";
-"Media Name: " = "Media Name: ";
"Media Size" = "Media Size";
"Media Source" = "Media Source";
"Media Tracking" = "Media Tracking";
@@ -915,7 +867,6 @@
"Missing option keyword" = "Missing option keyword";
"Missing requesting-user-name attribute." = "Missing requesting-user-name attribute.";
"Missing required attributes." = "Missing required attributes.";
-"Missing value on line %d of banner file." = "Missing value on line %d of banner file.";
"Missing value on line %d." = "Missing value on line %d.";
"Missing value string" = "Missing value string";
"Missing x-dimension in media-size." = "Missing x-dimension in media-size.";
@@ -948,7 +899,6 @@
"No error-index" = "No error-index";
"No error-status" = "No error-status";
"No file in print request." = "No file in print request.";
-"No fonts in charset file." = "No fonts in charset file.";
"No modification time" = "No modification time";
"No name OID" = "No name OID";
"No pages were found." = "No pages were found.";
@@ -983,7 +933,6 @@
"Option \"%s\" cannot be included via %%%%IncludeFeature." = "Option \"%s\" cannot be included via %%%%IncludeFeature.";
"Options Installed" = "Options Installed";
"Options:" = "Options:";
-"Options: " = "Options: ";
"Out of date PPD cache file." = "Out of date PPD cache file.";
"Out of memory." = "Out of memory.";
"Output Mode" = "Output Mode";
@@ -1031,39 +980,24 @@
"Print file accepted - job ID unknown." = "Print file accepted - job ID unknown.";
"Print file sent." = "Print file sent.";
"Print file was not accepted." = "Print file was not accepted.";
+"Print job canceled at printer." = "Print job canceled at printer.";
"Print job too large." = "Print job too large.";
-"Printed For: " = "Printed For: ";
-"Printed From: " = "Printed From: ";
-"Printed On: " = "Printed On: ";
"Printer Added" = "Printer Added";
"Printer Default" = "Printer Default";
"Printer Deleted" = "Printer Deleted";
"Printer Modified" = "Printer Modified";
-"Printer Name: " = "Printer Name: ";
"Printer Paused" = "Printer Paused";
"Printer Settings" = "Printer Settings";
-"Printer busy, will retry in 10 seconds." = "Printer busy, will retry in 10 seconds.";
-"Printer busy; will retry in 30 seconds." = "Printer busy; will retry in 30 seconds.";
-"Printer did not respond." = "Printer did not respond.";
-"Printer does not support IPP/%d.%d, trying IPP/%s." = "Printer does not support IPP/%d.%d, trying IPP/%s.";
-"Printer is busy, will retry in 5 seconds." = "Printer is busy, will retry in 5 seconds.";
-"Printer is not currently connected." = "Printer is not currently connected.";
-"Printer is now connected." = "Printer is now connected.";
-"Printer is now online." = "Printer is now online.";
-"Printer is offline." = "Printer is offline.";
-"Printer not connected, will retry in 30 seconds." = "Printer not connected, will retry in 30 seconds.";
-"Printer not connected; will retry in 30 seconds." = "Printer not connected; will retry in 30 seconds.";
+"Printer cannot print supplied content." = "Printer cannot print supplied content.";
"Printer:" = "Printer:";
"Printers" = "Printers";
"Printing page %d, %d%% complete." = "Printing page %d, %d%% complete.";
-"Printing page %d." = "Printing page %d.";
"Purge Jobs" = "Purge Jobs";
"Quarto" = "Quarto";
"Quota limit reached." = "Quota limit reached.";
"Rank Owner Job File(s) Total Size" = "Rank Owner Job File(s) Total Size";
// TRANSLATORS: Pri is job priority.
"Rank Owner Pri Job Files Total Size" = "Rank Owner Pri Job Files Total Size";
-"Ready to print." = "Ready to print.";
"Reject Jobs" = "Reject Jobs";
"Remote host did not accept control file (%d)." = "Remote host did not accept control file (%d).";
"Remote host did not accept data file (%d)." = "Remote host did not accept data file (%d).";
@@ -1073,14 +1007,12 @@
"Resume Class" = "Resume Class";
"Resume Printer" = "Resume Printer";
"Return Address" = "Return Address";
-"Return Address - 3/4 x 2\"" = "Return Address - 3/4 x 2\"";
"Rewind" = "Rewind";
"Running command: %s %s -N -A %s -c '%s'" = "Running command: %s %s -N -A %s -c '%s'";
"SEQUENCE uses indefinite length" = "SEQUENCE uses indefinite length";
"SSL/TLS Negotiation Error" = "SSL/TLS Negotiation Error";
"See Other" = "See Other";
"Sending data to printer." = "Sending data to printer.";
-"Serial Port #%d" = "Serial Port #%d";
"Server Restarted" = "Server Restarted";
"Server Security Auditing" = "Server Security Auditing";
"Server Started" = "Server Started";
@@ -1092,7 +1024,6 @@
"Set Printer Options" = "Set Printer Options";
"Set Publishing" = "Set Publishing";
"Shipping Address" = "Shipping Address";
-"Shipping Address - 2 5/16 x 4\"" = "Shipping Address - 2 5/16 x 4\"";
"Short-Edge (Landscape)" = "Short-Edge (Landscape)";
"Special Paper" = "Special Paper";
"Spooling job, %.0f%% complete." = "Spooling job, %.0f%% complete.";
@@ -1115,6 +1046,7 @@
"Tear-Off" = "Tear-Off";
"Tear-Off Adjust Position" = "Tear-Off Adjust Position";
"The %s attribute cannot be provided with job-ids." = "The %s attribute cannot be provided with job-ids.";
+"The '%s' operation attribute cannot be supplied in a Create-Job request." = "The '%s' operation attribute cannot be supplied in a Create-Job request.";
"The PPD file \"%s\" could not be found." = "The PPD file \"%s\" could not be found.";
"The PPD file \"%s\" could not be opened: %s" = "The PPD file \"%s\" could not be opened: %s";
"The PPD file could not be opened." = "The PPD file could not be opened.";
@@ -1130,20 +1062,23 @@
"The output bin is almost full." = "The output bin is almost full.";
"The output bin is full." = "The output bin is full.";
"The output bin is missing." = "The output bin is missing.";
-"The page setup information was not valid." = "The page setup information was not valid.";
"The paper tray is almost empty." = "The paper tray is almost empty.";
"The paper tray is empty." = "The paper tray is empty.";
"The paper tray is missing." = "The paper tray is missing.";
"The paper tray needs to be filled." = "The paper tray needs to be filled.";
-"The print file could not be opened." = "The print file could not be opened.";
"The printer URI is incorrect or no longer exists." = "The printer URI is incorrect or no longer exists.";
-"The printer is busy." = "The printer is busy.";
+"The printer did not respond." = "The printer did not respond.";
+"The printer does not support IPP/%d.%d, trying IPP/%s." = "The printer does not support IPP/%d.%d, trying IPP/%s.";
+"The printer is in use." = "The printer is in use.";
"The printer is not connected." = "The printer is not connected.";
"The printer is not responding." = "The printer is not responding.";
-"The printer is out of ink." = "The printer is out of ink.";
+"The printer is now connected." = "The printer is now connected.";
+"The printer is now online." = "The printer is now online.";
+"The printer is offline." = "The printer is offline.";
"The printer is running low on ink." = "The printer is running low on ink.";
"The printer is running low on toner." = "The printer is running low on toner.";
"The printer is unreachable at this time." = "The printer is unreachable at this time.";
+"The printer may be out of ink." = "The printer may be out of ink.";
"The printer may be out of toner." = "The printer may be out of toner.";
"The printer may not exist or is unavailable at this time." = "The printer may not exist or is unavailable at this time.";
"The printer name may only contain up to 127 printable characters and may not contain spaces, slashes (/), or the pound sign (#)." = "The printer name may only contain up to 127 printable characters and may not contain spaces, slashes (/), or the pound sign (#).";
@@ -1165,7 +1100,6 @@
"There is a paper jam." = "There is a paper jam.";
"There was an unrecoverable USB error." = "There was an unrecoverable USB error.";
"Thermal Transfer Media" = "Thermal Transfer Media";
-"Title: " = "Title: ";
"Too many active jobs." = "Too many active jobs.";
"Too many job-sheets values (%d > 2)." = "Too many job-sheets values (%d > 2).";
"Too many printer-state-reasons values (%d > %d)." = "Too many printer-state-reasons values (%d > %d).";
@@ -1184,21 +1118,21 @@
"US Letter Oversize" = "US Letter Oversize";
"US Letter Oversize Long Edge" = "US Letter Oversize Long Edge";
"US Letter Small" = "US Letter Small";
-"USB Serial Port #%d" = "USB Serial Port #%d";
-"Unable to access cupsd.conf file:" = "Unable to access cupsd.conf file:";
-"Unable to add RSS subscription:" = "Unable to add RSS subscription:";
-"Unable to add class:" = "Unable to add class:";
+"Unable to access cupsd.conf file" = "Unable to access cupsd.conf file";
+"Unable to access help file." = "Unable to access help file.";
+"Unable to add RSS subscription" = "Unable to add RSS subscription";
+"Unable to add class" = "Unable to add class";
"Unable to add document to print job." = "Unable to add document to print job.";
"Unable to add job for destination \"%s\"." = "Unable to add job for destination \"%s\".";
-"Unable to add printer:" = "Unable to add printer:";
+"Unable to add printer" = "Unable to add printer";
"Unable to allocate memory for file types." = "Unable to allocate memory for file types.";
"Unable to allocate memory for page info" = "Unable to allocate memory for page info";
"Unable to allocate memory for pages array" = "Unable to allocate memory for pages array";
-"Unable to cancel RSS subscription:" = "Unable to cancel RSS subscription:";
+"Unable to cancel RSS subscription" = "Unable to cancel RSS subscription";
"Unable to cancel print job." = "Unable to cancel print job.";
-"Unable to change printer-is-shared attribute:" = "Unable to change printer-is-shared attribute:";
-"Unable to change printer:" = "Unable to change printer:";
-"Unable to change server settings:" = "Unable to change server settings:";
+"Unable to change printer" = "Unable to change printer";
+"Unable to change printer-is-shared attribute" = "Unable to change printer-is-shared attribute";
+"Unable to change server settings" = "Unable to change server settings";
"Unable to configure printer options." = "Unable to configure printer options.";
"Unable to connect to host." = "Unable to connect to host.";
"Unable to contact printer, queuing on next printer in class." = "Unable to contact printer, queuing on next printer in class.";
@@ -1210,15 +1144,12 @@
"Unable to copy Windows 2000 printer driver files (%d)." = "Unable to copy Windows 2000 printer driver files (%d).";
"Unable to copy Windows 9x printer driver files (%d)." = "Unable to copy Windows 9x printer driver files (%d).";
"Unable to copy interface script - %s" = "Unable to copy interface script - %s";
-"Unable to copy print file" = "Unable to copy print file";
"Unable to create compressed print file" = "Unable to create compressed print file";
-"Unable to create pipes for filters" = "Unable to create pipes for filters";
"Unable to create printer-uri" = "Unable to create printer-uri";
"Unable to create temporary file" = "Unable to create temporary file";
-"Unable to create temporary file:" = "Unable to create temporary file:";
-"Unable to delete class:" = "Unable to delete class:";
-"Unable to delete printer:" = "Unable to delete printer:";
-"Unable to do maintenance command:" = "Unable to do maintenance command:";
+"Unable to delete class" = "Unable to delete class";
+"Unable to delete printer" = "Unable to delete printer";
+"Unable to do maintenance command" = "Unable to do maintenance command";
"Unable to edit cupsd.conf files larger than 1MB" = "Unable to edit cupsd.conf files larger than 1MB";
"Unable to establish a secure connection to host (certificate chain invalid)." = "Unable to establish a secure connection to host (certificate chain invalid).";
"Unable to establish a secure connection to host (certificate not yet valid)." = "Unable to establish a secure connection to host (certificate not yet valid).";
@@ -1230,49 +1161,44 @@
"Unable to establish a secure connection to host." = "Unable to establish a secure connection to host.";
"Unable to find destination for job" = "Unable to find destination for job";
"Unable to find printer." = "Unable to find printer.";
-"Unable to fork filter" = "Unable to fork filter";
"Unable to generate compressed print file" = "Unable to generate compressed print file";
"Unable to get backend exit status." = "Unable to get backend exit status.";
-"Unable to get class list:" = "Unable to get class list:";
-"Unable to get class status:" = "Unable to get class status:";
-"Unable to get list of printer drivers:" = "Unable to get list of printer drivers:";
-"Unable to get printer attributes:" = "Unable to get printer attributes:";
-"Unable to get printer list:" = "Unable to get printer list:";
+"Unable to get class list" = "Unable to get class list";
+"Unable to get class status" = "Unable to get class status";
+"Unable to get list of printer drivers" = "Unable to get list of printer drivers";
+"Unable to get printer attributes" = "Unable to get printer attributes";
+"Unable to get printer list" = "Unable to get printer list";
+"Unable to get printer status" = "Unable to get printer status";
"Unable to get printer status." = "Unable to get printer status.";
-"Unable to get printer status:" = "Unable to get printer status:";
"Unable to install Windows 2000 printer driver files (%d)." = "Unable to install Windows 2000 printer driver files (%d).";
"Unable to install Windows 9x printer driver files (%d)." = "Unable to install Windows 9x printer driver files (%d).";
+"Unable to load help index." = "Unable to load help index.";
"Unable to locate printer \"%s\"." = "Unable to locate printer \"%s\".";
"Unable to locate printer." = "Unable to locate printer.";
-"Unable to modify class:" = "Unable to modify class:";
-"Unable to modify printer:" = "Unable to modify printer:";
+"Unable to modify class" = "Unable to modify class";
+"Unable to modify printer" = "Unable to modify printer";
"Unable to move job" = "Unable to move job";
"Unable to move jobs" = "Unable to move jobs";
"Unable to open PPD file" = "Unable to open PPD file";
-"Unable to open PPD file:" = "Unable to open PPD file:";
-"Unable to open charset file" = "Unable to open charset file";
"Unable to open compressed print file" = "Unable to open compressed print file";
"Unable to open cupsd.conf file:" = "Unable to open cupsd.conf file:";
"Unable to open device file" = "Unable to open device file";
"Unable to open document #%d in job #%d." = "Unable to open document #%d in job #%d.";
+"Unable to open help file." = "Unable to open help file.";
"Unable to open print file" = "Unable to open print file";
-"Unable to open psglyphs" = "Unable to open psglyphs";
"Unable to open raster file" = "Unable to open raster file";
-"Unable to print %d text columns." = "Unable to print %d text columns.";
-"Unable to print %dx%d text page." = "Unable to print %dx%d text page.";
-"Unable to print test page:" = "Unable to print test page:";
-"Unable to read print data" = "Unable to read print data";
+"Unable to print test page" = "Unable to print test page";
"Unable to read print data." = "Unable to read print data.";
+"Unable to resolve printer URI." = "Unable to resolve printer URI.";
"Unable to run \"%s\": %s" = "Unable to run \"%s\": %s";
"Unable to see in file" = "Unable to see in file";
"Unable to send command to printer driver" = "Unable to send command to printer driver";
"Unable to send data to printer." = "Unable to send data to printer.";
-"Unable to send raster data to the driver." = "Unable to send raster data to the driver.";
"Unable to set Windows printer driver (%d)." = "Unable to set Windows printer driver (%d).";
-"Unable to set options:" = "Unable to set options:";
-"Unable to set server default:" = "Unable to set server default:";
+"Unable to set options" = "Unable to set options";
+"Unable to set server default" = "Unable to set server default";
"Unable to start backend process." = "Unable to start backend process.";
-"Unable to upload cupsd.conf file:" = "Unable to upload cupsd.conf file:";
+"Unable to upload cupsd.conf file" = "Unable to upload cupsd.conf file";
"Unable to use legacy USB class driver." = "Unable to use legacy USB class driver.";
"Unable to write print data" = "Unable to write print data";
"Unable to write uncompressed print data: %s" = "Unable to write uncompressed print data: %s";
@@ -1283,20 +1209,19 @@
"Unknown encryption option value: \"%s\"." = "Unknown encryption option value: \"%s\".";
"Unknown file order: \"%s\"." = "Unknown file order: \"%s\".";
"Unknown format character: \"%c\"." = "Unknown format character: \"%c\".";
+"Unknown media size name." = "Unknown media size name.";
"Unknown option \"%s\" with value \"%s\"." = "Unknown option \"%s\" with value \"%s\".";
"Unknown option \"%s\"." = "Unknown option \"%s\".";
"Unknown print mode: \"%s\"." = "Unknown print mode: \"%s\".";
"Unknown printer-error-policy \"%s\"." = "Unknown printer-error-policy \"%s\".";
"Unknown printer-op-policy \"%s\"." = "Unknown printer-op-policy \"%s\".";
+"Unknown service name." = "Unknown service name.";
"Unknown version option value: \"%s\"." = "Unknown version option value: \"%s\".";
-"Unsupported baud rate: %s" = "Unsupported baud rate: %s";
-"Unsupported brightness value %s, using brightness=100." = "Unsupported brightness value %s, using brightness=100.";
"Unsupported character set \"%s\"." = "Unsupported character set \"%s\".";
"Unsupported compression \"%s\"." = "Unsupported compression \"%s\".";
"Unsupported document-format \"%s\"." = "Unsupported document-format \"%s\".";
"Unsupported document-format \"%s/%s\"." = "Unsupported document-format \"%s/%s\".";
"Unsupported format \"%s\"." = "Unsupported format \"%s\".";
-"Unsupported gamma value %s, using gamma=1000." = "Unsupported gamma value %s, using gamma=1000.";
"Unsupported margins." = "Unsupported margins.";
"Unsupported media value." = "Unsupported media value.";
"Unsupported number-up value %d, using number-up=1." = "Unsupported number-up value %d, using number-up=1.";
@@ -1306,10 +1231,7 @@
"Unsupported value type" = "Unsupported value type";
"Upgrade Required" = "Upgrade Required";
"Usage:\n\n lpadmin [-h server] -d destination\n lpadmin [-h server] -x destination\n lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n [-r remove-class] [-v device] [-D description]\n [-P ppd-file] [-o name=value]\n [-u allow:user,user] [-u deny:user,user]" = "Usage:\n\n lpadmin [-h server] -d destination\n lpadmin [-h server] -x destination\n lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n [-r remove-class] [-v device] [-D description]\n [-P ppd-file] [-o name=value]\n [-u allow:user,user] [-u deny:user,user]";
-"Usage: %s job user title copies options [filename]" = "Usage: %s job user title copies options [filename]";
"Usage: %s job-id user title copies options [file]" = "Usage: %s job-id user title copies options [file]";
-"Usage: %s job-id user title copies options file" = "Usage: %s job-id user title copies options file";
-"Usage: convert [ options ]" = "Usage: convert [ options ]";
"Usage: cupsaddsmb [options] printer1 ... printerN" = "Usage: cupsaddsmb [options] printer1 ... printerN";
"Usage: cupsctl [options] [param=value ... paramN=valueN]" = "Usage: cupsctl [options] [param=value ... paramN=valueN]";
"Usage: cupsd [options]" = "Usage: cupsd [options]";
@@ -1344,7 +1266,6 @@
"aborted" = "aborted";
"canceled" = "canceled";
"completed" = "completed";
-"convert: Use the -f option to specify a file to convert." = "convert: Use the -f option to specify a file to convert.";
"cups-deviced failed to execute." = "cups-deviced failed to execute.";
"cups-driverd failed to execute." = "cups-driverd failed to execute.";
"cupsaddsmb: No PPD file for printer \"%s\" - %s" = "cupsaddsmb: No PPD file for printer \"%s\" - %s";
@@ -1371,8 +1292,6 @@
"help\t\tGet help on commands." = "help\t\tGet help on commands.";
"idle" = "idle";
"ipptool: \"-i\" and \"-n\" are incompatible with -X\"." = "ipptool: \"-i\" and \"-n\" are incompatible with -X\".";
-"ipptool: \"-i\" is incompatible with \"-X\"." = "ipptool: \"-i\" is incompatible with \"-X\".";
-"ipptool: \"-n\" is incompatible with \"-X\"." = "ipptool: \"-n\" is incompatible with \"-X\".";
"ipptool: Bad URI - %s." = "ipptool: Bad URI - %s.";
"ipptool: Bad version %s for \"-V\"." = "ipptool: Bad version %s for \"-V\".";
"ipptool: Invalid seconds for \"-i\"." = "ipptool: Invalid seconds for \"-i\".";
diff --git a/locale/cups_ca.po b/locale/cups_ca.po
new file mode 100644
index 00000000..cde14d65
--- /dev/null
+++ b/locale/cups_ca.po
@@ -0,0 +1,7285 @@
+#
+# "$Id$"
+#
+# Message catalog template for the Common UNIX Printing System (CUPS).
+#
+# Copyright 2007-2009 by Apple Inc.
+# Copyright 2005-2007 by Easy Software Products.
+#
+# These coded instructions, statements, and computer programs are the
+# property of Apple Inc. and are protected by Federal copyright
+# law. Distribution and use rights are outlined in the file "LICENSE.txt"
+# which should have been included with this file. If this file is
+# file is missing or damaged, see the license at "http://www.cups.org/".
+#
+#
+# Notes for Translators:
+#
+# The following prefixes MUST NOT be translated: "ALERT:", "CRIT:", "INFO:",
+# "NOTICE:", and "WARNING:".
+#
+# The "checkpo" program located in the "locale" source directory can be used
+# to verify that your translations do not introduce formatting errors or other
+# problems. Run with:
+#
+# cd locale
+# ./checkpo cups_LL.po
+#
+# where "LL" is your locale.
+# Àngel Mompó <mecatxis@gmail.com>, 2011, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: CUPS 1.4.6\n"
+"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
+"POT-Creation-Date: 2012-05-23 16:24-0700\n"
+"PO-Revision-Date: 2012-05-26 12:28+0200\n"
+"Last-Translator: Àngel Mompó <mecatxis@gmail.com>\n"
+"Language-Team: Catalan <ca@dodds.net> <>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\n"
+
+#: systemv/lpstat.c:1876 systemv/lpstat.c:2001
+msgid "\t\t(all)"
+msgstr "\t\t(tots)"
+
+#: systemv/lpstat.c:1879 systemv/lpstat.c:1882 systemv/lpstat.c:2004
+#: systemv/lpstat.c:2007
+msgid "\t\t(none)"
+msgstr "\t\t(cap)"
+
+#: berkeley/lpc.c:434
+#, c-format
+msgid "\t%d entries"
+msgstr "\t%d entrades"
+
+#: systemv/lpstat.c:756 systemv/lpstat.c:772
+#, c-format
+msgid "\t%s"
+msgstr "\t%s"
+
+#: systemv/lpstat.c:1857 systemv/lpstat.c:1982
+msgid "\tAfter fault: continue"
+msgstr "\tDesprés d'una fallada: continua"
+
+#: systemv/lpstat.c:1481 systemv/lpstat.c:1826 systemv/lpstat.c:1952
+#, c-format
+msgid "\tAlerts: %s"
+msgstr "\tAlertes: %s"
+
+#: systemv/lpstat.c:1880 systemv/lpstat.c:2005
+msgid "\tBanner required"
+msgstr "\tNecessita un bàner"
+
+#: systemv/lpstat.c:1881 systemv/lpstat.c:2006
+msgid "\tCharset sets:"
+msgstr "\tConjunt de caràcters:"
+
+#: systemv/lpstat.c:1845 systemv/lpstat.c:1970
+msgid "\tConnection: direct"
+msgstr "\tConnexió: directa"
+
+#: systemv/lpstat.c:1836 systemv/lpstat.c:1962
+msgid "\tConnection: remote"
+msgstr "\tConnexió: remota"
+
+#: systemv/lpstat.c:1800 systemv/lpstat.c:1926
+msgid "\tContent types: any"
+msgstr "\tTipus de contingut: qualsevol"
+
+#: systemv/lpstat.c:1884 systemv/lpstat.c:2009
+msgid "\tDefault page size:"
+msgstr "\tMida de la pàgina per defecte:"
+
+#: systemv/lpstat.c:1883 systemv/lpstat.c:2008
+msgid "\tDefault pitch:"
+msgstr "\tDensitat per defecte:"
+
+#: systemv/lpstat.c:1885 systemv/lpstat.c:2010
+msgid "\tDefault port settings:"
+msgstr "\tConfiguració del port per defecte:"
+
+#: systemv/lpstat.c:1806 systemv/lpstat.c:1932
+#, c-format
+msgid "\tDescription: %s"
+msgstr "\tDescripció: %s"
+
+#: systemv/lpstat.c:1799 systemv/lpstat.c:1925
+msgid "\tForm mounted:"
+msgstr "\tFormularis muntats:"
+
+#: systemv/lpstat.c:1878 systemv/lpstat.c:2003
+msgid "\tForms allowed:"
+msgstr "\tFormularis admesos:"
+
+#: systemv/lpstat.c:1840 systemv/lpstat.c:1966
+#, c-format
+msgid "\tInterface: %s.ppd"
+msgstr "\tInterfície: %s.ppd"
+
+#: systemv/lpstat.c:1849 systemv/lpstat.c:1974
+#, c-format
+msgid "\tInterface: %s/interfaces/%s"
+msgstr "\tInterfície: %s/interfícies/%s"
+
+#: systemv/lpstat.c:1853 systemv/lpstat.c:1978
+#, c-format
+msgid "\tInterface: %s/ppd/%s.ppd"
+msgstr "\tInterfície: %s/ppd/%s.ppd"
+
+#: systemv/lpstat.c:1831 systemv/lpstat.c:1957
+#, c-format
+msgid "\tLocation: %s"
+msgstr "\tUbicació: %s"
+
+#: systemv/lpstat.c:1856 systemv/lpstat.c:1981
+msgid "\tOn fault: no alert"
+msgstr "\tEn cas de fallada: no avisis"
+
+#: systemv/lpstat.c:1801 systemv/lpstat.c:1927
+msgid "\tPrinter types: unknown"
+msgstr "\tTipus d'impresores: desconeguts"
+
+#: systemv/lpstat.c:1462
+#, c-format
+msgid "\tStatus: %s"
+msgstr "\tEstat: %s"
+
+#: systemv/lpstat.c:1861 systemv/lpstat.c:1875 systemv/lpstat.c:1986
+#: systemv/lpstat.c:2000
+msgid "\tUsers allowed:"
+msgstr "\tUsuaris permesos:"
+
+#: systemv/lpstat.c:1868 systemv/lpstat.c:1993
+msgid "\tUsers denied:"
+msgstr "\tUsuaris sense permís:"
+
+#: berkeley/lpc.c:436
+msgid "\tdaemon present"
+msgstr "\tpresència del dimoni"
+
+#: berkeley/lpc.c:432
+msgid "\tno entries"
+msgstr "\tcap entrada"
+
+#: berkeley/lpc.c:404 berkeley/lpc.c:416
+#, c-format
+msgid "\tprinter is on device '%s' speed -1"
+msgstr "\tLa impressora és al dispositiu «%s» velocitat -1"
+
+#: berkeley/lpc.c:429
+msgid "\tprinting is disabled"
+msgstr "\tLa impressora està deshabilitada"
+
+#: berkeley/lpc.c:427
+msgid "\tprinting is enabled"
+msgstr "\tLa impressora està habilitada"
+
+#: systemv/lpstat.c:1484
+#, c-format
+msgid "\tqueued for %s"
+msgstr "\ten cua per %s"
+
+#: berkeley/lpc.c:424
+msgid "\tqueuing is disabled"
+msgstr "\tla cua està deshabilitada"
+
+#: berkeley/lpc.c:422
+msgid "\tqueuing is enabled"
+msgstr "\tla cua està habilitada"
+
+#: systemv/lpstat.c:1792 systemv/lpstat.c:1918
+msgid "\treason unknown"
+msgstr "\traó desconeguda"
+
+#: systemv/cupstestppd.c:454
+msgid ""
+"\n"
+" DETAILED CONFORMANCE TEST RESULTS"
+msgstr ""
+"\n"
+" RESULTAT DETALLAT DEL TEST DE CONFORMITAT"
+
+#: systemv/cupstestppd.c:3800
+msgid " Ignore specific warnings."
+msgstr " Ignora els avisos específics."
+
+#: systemv/cupstestppd.c:3804
+msgid " Issue warnings instead of errors."
+msgstr " Mostra avisos enlloc d'errors."
+
+#: systemv/cupstestppd.c:410 systemv/cupstestppd.c:415
+msgid " REF: Page 15, section 3.1."
+msgstr " REF: pàgina 15, secció 3.1."
+
+#: systemv/cupstestppd.c:405
+msgid " REF: Page 15, section 3.2."
+msgstr " REF: pàgina 15, secció 3.2."
+
+#: systemv/cupstestppd.c:425
+msgid " REF: Page 19, section 3.3."
+msgstr " REF: pàgina 19, secció 3.3."
+
+#: systemv/cupstestppd.c:378
+msgid " REF: Page 20, section 3.4."
+msgstr " REF: pàgina 20, secció 3.4."
+
+#: systemv/cupstestppd.c:430
+msgid " REF: Page 27, section 3.5."
+msgstr " REF: pàgina 27, secció 3.5."
+
+#: systemv/cupstestppd.c:373
+msgid " REF: Page 42, section 5.2."
+msgstr " REF: pàgina 42, secció 5.2."
+
+#: systemv/cupstestppd.c:420
+msgid " REF: Pages 16-17, section 3.2."
+msgstr " REF: pàgines 16-17, secció 3.2."
+
+#: systemv/cupstestppd.c:390
+msgid " REF: Pages 42-45, section 5.2."
+msgstr " REF: pàgines 42-45, secció 5.2."
+
+#: systemv/cupstestppd.c:384
+msgid " REF: Pages 45-46, section 5.2."
+msgstr " REF: pàgines 45-46, secció 5.2."
+
+#: systemv/cupstestppd.c:395
+msgid " REF: Pages 48-49, section 5.2."
+msgstr " REF: pàgines 48-49, secció 5.2."
+
+#: systemv/cupstestppd.c:400
+msgid " REF: Pages 52-54, section 5.2."
+msgstr " REF: pàgines 52-54, secció 5.2."
+
+#: berkeley/lpq.c:554
+#, c-format
+msgid " %-39.39s %.0f bytes"
+msgstr " %-39.39s %.0f bytes"
+
+#: systemv/cupstestppd.c:589
+#, c-format
+msgid " PASS Default%s"
+msgstr " VALIDA Default%s"
+
+#: systemv/cupstestppd.c:524
+msgid " PASS DefaultImageableArea"
+msgstr " VALIDA DefaultImageableArea"
+
+#: systemv/cupstestppd.c:558
+msgid " PASS DefaultPaperDimension"
+msgstr " VALIDA DefaultPaperDimension"
+
+#: systemv/cupstestppd.c:631
+msgid " PASS FileVersion"
+msgstr " VALIDA FileVersion"
+
+#: systemv/cupstestppd.c:675
+msgid " PASS FormatVersion"
+msgstr " VALIDA FileVersion"
+
+#: systemv/cupstestppd.c:695
+msgid " PASS LanguageEncoding"
+msgstr " VALIDA LanguageEncoding"
+
+#: systemv/cupstestppd.c:715
+msgid " PASS LanguageVersion"
+msgstr " VALIDA LanguageVersion"
+
+#: systemv/cupstestppd.c:769
+msgid " PASS Manufacturer"
+msgstr " VALIDA Manufacturer"
+
+#: systemv/cupstestppd.c:809
+msgid " PASS ModelName"
+msgstr " VALIDA ModelName"
+
+#: systemv/cupstestppd.c:829
+msgid " PASS NickName"
+msgstr " VALIDA NickName"
+
+#: systemv/cupstestppd.c:889
+msgid " PASS PCFileName"
+msgstr " VALIDA PCFileName"
+
+#: systemv/cupstestppd.c:964
+msgid " PASS PSVersion"
+msgstr " VALIDA PSVersion"
+
+#: systemv/cupstestppd.c:869
+msgid " PASS PageRegion"
+msgstr " VALIDA PageRegion"
+
+#: systemv/cupstestppd.c:849
+msgid " PASS PageSize"
+msgstr " VALIDA PageSize"
+
+#: systemv/cupstestppd.c:924
+msgid " PASS Product"
+msgstr " VALIDA Product"
+
+#: systemv/cupstestppd.c:999
+msgid " PASS ShortNickName"
+msgstr " VALIDA ShortNickName"
+
+#: systemv/cupstestppd.c:1374
+#, c-format
+msgid " WARN %s has no corresponding options."
+msgstr " AVÃS %s no té les opcions corresponents."
+
+#: systemv/cupstestppd.c:1486
+#, c-format
+msgid ""
+" WARN %s shares a common prefix with %s\n"
+" REF: Page 15, section 3.2."
+msgstr ""
+" AVÃS %s té un prefixe comú amb %s\n"
+" REF: pàgina 15, secció 3.2."
+
+#: systemv/cupstestppd.c:1345
+#, c-format
+msgid ""
+" WARN Duplex option keyword %s may not work as expected and should "
+"be named Duplex.\n"
+" REF: Page 122, section 5.17"
+msgstr ""
+" AVÃS La paraula clau %s de l'opció dúplex pot no funcionar com "
+"s'espera i s'hauria de dir Duplex.\n"
+" REF: pàgina 122, secció 5.17"
+
+#: systemv/cupstestppd.c:1744
+msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
+msgstr ""
+" AVÃS El fitxer conté una barreja de CR, LF, i CR LF com a finals "
+"de línia."
+
+#: systemv/cupstestppd.c:1390
+msgid ""
+" WARN LanguageEncoding required by PPD 4.3 spec.\n"
+" REF: Pages 56-57, section 5.3."
+msgstr ""
+" AVÃS Es requereix un LanguageEncoding segons les espec. del PPD "
+"4.3\n"
+" REF: pàgines 56-57, secció 5.3."
+
+#: systemv/cupstestppd.c:1726
+#, c-format
+msgid " WARN Line %d only contains whitespace."
+msgstr " AVÃS La línia %d només conté espais en blanc."
+
+#: systemv/cupstestppd.c:1398
+msgid ""
+" WARN Manufacturer required by PPD 4.3 spec.\n"
+" REF: Pages 58-59, section 5.3."
+msgstr ""
+" AVÃS El fabricant requereix les espec. del PPD 4.3.\n"
+" REF: pàgines 58-59, secció 5.3."
+
+#: systemv/cupstestppd.c:1749
+msgid ""
+" WARN Non-Windows PPD files should use lines ending with only LF, "
+"not CR LF."
+msgstr ""
+" AVÃS Els fitxers PPD que no són del Windows han de fer servir "
+"només LF com a final de línia, no CR LF."
+
+#: systemv/cupstestppd.c:1382
+#, c-format
+msgid ""
+" WARN Obsolete PPD version %.1f.\n"
+" REF: Page 42, section 5.2."
+msgstr ""
+" AVÃS La versió del PPD %.1f és obsoleta!\n"
+" REF: pàgina 42, secció 5.2."
+
+#: systemv/cupstestppd.c:1413
+msgid ""
+" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
+" REF: Pages 61-62, section 5.3."
+msgstr ""
+" AVÃS El PCFileName és més llarg de 8.3 i viola les espec. del "
+"PPD.\n"
+" REF: pàgines 61-62, secció 5.3."
+
+#: systemv/cupstestppd.c:1421
+msgid ""
+" WARN PCFileName should contain a unique filename.\n"
+" REF: Pages 61-62, section 5.3."
+msgstr ""
+" AVÃS El PCFileName és més llarg de 8.3 i viola les espec. del "
+"PPD.\n"
+" REF: pàgines 61-62, secció 5.3."
+
+#: systemv/cupstestppd.c:1456
+msgid ""
+" WARN Protocols contains PJL but JCL attributes are not set.\n"
+" REF: Pages 78-79, section 5.7."
+msgstr ""
+" AVÃS Els protocols contenen el PJL però els atributs del JCL no "
+"s'han definit.\n"
+" REF: pàgines 78-79, secció 5.7."
+
+#: systemv/cupstestppd.c:1447
+msgid ""
+" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
+" REF: Pages 78-79, section 5.7."
+msgstr ""
+" AVÃS Es protocols contenen tant el PJL com el BCP; s'esperava el "
+"TBCP.\n"
+" REF: pàgines 78-79, secció 5.7."
+
+#: systemv/cupstestppd.c:1430
+msgid ""
+" WARN ShortNickName required by PPD 4.3 spec.\n"
+" REF: Pages 64-65, section 5.3."
+msgstr ""
+" AVÃS Es requereix un ShortNickName segons les espec.del PPD 4.3.\n"
+" REF: pàgines 64-65, secció 5.3."
+
+#: systemv/cupsaddsmb.c:282
+msgid " cupsaddsmb [options] -a"
+msgstr " cupsaddsmb [opcions] -a"
+
+#: systemv/cupstestdsc.c:427
+msgid " cupstestdsc [options] -"
+msgstr " cupstestdsc [opcions] -"
+
+#: systemv/cupstestppd.c:3795
+msgid " program | cupstestppd [options] -"
+msgstr " programa | cupstestppd [opcions] -"
+
+#: systemv/cupstestppd.c:3727
+#, c-format
+msgid ""
+" %s \"%s %s\" conflicts with \"%s %s\"\n"
+" (constraint=\"%s %s %s %s\")."
+msgstr ""
+" %s «%s %s» entra en conflicte amb «%s %s»\n"
+" (restricció=«%s %s %s %s»)."
+
+#: systemv/cupstestppd.c:2248
+#, c-format
+msgid " %s %s %s does not exist."
+msgstr " %s %s %s no existeix."
+
+#: systemv/cupstestppd.c:3884
+#, c-format
+msgid " %s %s file \"%s\" has the wrong capitalization."
+msgstr " %s %s el fitxer «%s» fa un ús incorrecte de les majúscules."
+
+#: systemv/cupstestppd.c:2318
+#, c-format
+msgid ""
+" %s Bad %s choice %s.\n"
+" REF: Page 122, section 5.17"
+msgstr ""
+" %s Mala %s elecció %s!\n"
+" REF: pàgina 122, secció 5.17"
+
+#: systemv/cupstestppd.c:3487 systemv/cupstestppd.c:3536
+#: systemv/cupstestppd.c:3575
+#, c-format
+msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
+msgstr ""
+" %s UTF-8 incorrecte «%s» a la traducció de l'opció %s, elecció %s."
+
+#: systemv/cupstestppd.c:3441
+#, c-format
+msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
+msgstr " %s UTF-8 Incorrecte «%s» a la traducció de l'opció %s."
+
+#: systemv/cupstestppd.c:2389
+#, c-format
+msgid " %s Bad cupsFilter value \"%s\"."
+msgstr " %s Valor incorrecte del cupsFilter «%s»."
+
+#: systemv/cupstestppd.c:2475
+#, c-format
+msgid " %s Bad cupsFilter2 value \"%s\"."
+msgstr " %s Valor incorrecte del cupsFilter2 «%s»"
+
+#: systemv/cupstestppd.c:2964
+#, c-format
+msgid " %s Bad cupsICCProfile %s."
+msgstr " %s cupsICCProfile incorrecte %s."
+
+#: systemv/cupstestppd.c:2571
+#, c-format
+msgid " %s Bad cupsPreFilter value \"%s\"."
+msgstr " %s Valor de la cupsPreFilter incorrecte «%s»."
+
+#: systemv/cupstestppd.c:1822
+#, c-format
+msgid " %s Bad cupsUIConstraints %s: \"%s\""
+msgstr " %s cupsUIConstraints incorrecte %s: «%s»"
+
+#: systemv/cupstestppd.c:3391
+#, c-format
+msgid " %s Bad language \"%s\"."
+msgstr " %s language incorrecte «%s»."
+
+#: systemv/cupstestppd.c:2433 systemv/cupstestppd.c:2529
+#: systemv/cupstestppd.c:2615 systemv/cupstestppd.c:2673
+#: systemv/cupstestppd.c:2728 systemv/cupstestppd.c:2783
+#: systemv/cupstestppd.c:2838 systemv/cupstestppd.c:2891
+#: systemv/cupstestppd.c:3013
+#, c-format
+msgid " %s Bad permissions on %s file \"%s\"."
+msgstr " %s Permisos del fitxer %s incorrectes «%s»."
+
+#: systemv/cupstestppd.c:2373 systemv/cupstestppd.c:2459
+#: systemv/cupstestppd.c:2555 systemv/cupstestppd.c:2642
+#: systemv/cupstestppd.c:2697 systemv/cupstestppd.c:2752
+#: systemv/cupstestppd.c:2807 systemv/cupstestppd.c:2862
+#, c-format
+msgid " %s Bad spelling of %s - should be %s."
+msgstr " %s %s Està mal escrit: hauria de ser %s."
+
+#: systemv/cupstestppd.c:2907
+#, c-format
+msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
+msgstr " %s No hi pot haver APScanAppPath i APScanAppBundleID alhora."
+
+#: systemv/cupstestppd.c:2205
+#, c-format
+msgid " %s Default choices conflicting."
+msgstr " %s Conflictes amb les opcions per defecte."
+
+#: systemv/cupstestppd.c:1803
+#, c-format
+msgid " %s Empty cupsUIConstraints %s"
+msgstr " %s cupsUIConstraints buit %s"
+
+#: systemv/cupstestppd.c:3519 systemv/cupstestppd.c:3559
+#, c-format
+msgid " %s Missing \"%s\" translation string for option %s, choice %s."
+msgstr " %s Falta la traducció de «%s» per l'opció %s, elecció %s."
+
+#: systemv/cupstestppd.c:3427
+#, c-format
+msgid " %s Missing \"%s\" translation string for option %s."
+msgstr " %s Falta la traducció de «%s» per l'opció %s."
+
+#: systemv/cupstestppd.c:2418 systemv/cupstestppd.c:2514
+#: systemv/cupstestppd.c:2600 systemv/cupstestppd.c:2658
+#: systemv/cupstestppd.c:2713 systemv/cupstestppd.c:2768
+#: systemv/cupstestppd.c:2823 systemv/cupstestppd.c:2875
+#: systemv/cupstestppd.c:2998
+#, c-format
+msgid " %s Missing %s file \"%s\"."
+msgstr " %s Falta el fitxer %s «%s»."
+
+#: systemv/cupstestppd.c:3121
+#, c-format
+msgid ""
+" %s Missing REQUIRED PageRegion option.\n"
+" REF: Page 100, section 5.14."
+msgstr ""
+" %s Falta l'opció PageRegion NECESSÀRIA .\n"
+" REF: pàgina 100, secció 5.14."
+
+#: systemv/cupstestppd.c:3106
+#, c-format
+msgid ""
+" %s Missing REQUIRED PageSize option.\n"
+" REF: Page 99, section 5.14."
+msgstr ""
+" %s Falta l'opció PageSize NECESSÀRIA.\n"
+" REF: pàgina 99, secció 5.14."
+
+#: systemv/cupstestppd.c:2013 systemv/cupstestppd.c:2054
+#, c-format
+msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
+msgstr " %s Falta l'elecció *%s %s a UIConstraints «*%s %s *%s %s»."
+
+#: systemv/cupstestppd.c:1908
+#, c-format
+msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
+msgstr " %s Falta l'elecció *%s %s a cupsUIConstraints %s: «%s»"
+
+#: systemv/cupstestppd.c:1840
+#, c-format
+msgid " %s Missing cupsUIResolver %s"
+msgstr " %s Falta el cupsUIResolver %s"
+
+#: systemv/cupstestppd.c:1999 systemv/cupstestppd.c:2040
+#, c-format
+msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
+msgstr " %s Falta l'opció %s a UIConstraints «*%s %s *%s %s»."
+
+#: systemv/cupstestppd.c:1892
+#, c-format
+msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
+msgstr " %s Falta l'opció %s a cupsUIConstraints %s: «%s»"
+
+#: systemv/cupstestppd.c:3613
+#, c-format
+msgid " %s No base translation \"%s\" is included in file."
+msgstr " %s No s'ha inclòs cap traducció de base «%s» al fitxer."
+
+#: systemv/cupstestppd.c:2294
+#, c-format
+msgid ""
+" %s REQUIRED %s does not define choice None.\n"
+" REF: Page 122, section 5.17"
+msgstr ""
+" %s NECESSARI %s no defineix l'eleció «Cap»!\n"
+" REF: pàgina 122, secció 5.17"
+
+#: systemv/cupstestppd.c:3180 systemv/cupstestppd.c:3194
+#, c-format
+msgid " %s Size \"%s\" defined for %s but not for %s."
+msgstr " %s Mida \"%s\" definida per %s però no per %s."
+
+#: systemv/cupstestppd.c:3160
+#, c-format
+msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
+msgstr " %s Mida \"%s\" té unes dimensions inesperades (%gx%g)."
+
+#: systemv/cupstestppd.c:3332
+#, c-format
+msgid " %s Size \"%s\" should be \"%s\"."
+msgstr " %s Mida «%s» hauria de ser «%s»."
+
+#: systemv/cupstestppd.c:3292
+#, c-format
+msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
+msgstr " %s Mida \"%s\" hauria de ser el nom estàndard d'Adobe «%s»."
+
+#: systemv/cupstestppd.c:3041
+#, c-format
+msgid " %s cupsICCProfile %s hash value collides with %s."
+msgstr " %s cupsICCProfile %s el valor resum (hash) col·lideix amb %s."
+
+#: systemv/cupstestppd.c:1963
+#, c-format
+msgid " %s cupsUIResolver %s causes a loop."
+msgstr " %s cupsUIResolver %s entra en bucle."
+
+#: systemv/cupstestppd.c:1945
+#, c-format
+msgid ""
+" %s cupsUIResolver %s does not list at least two different options."
+msgstr ""
+" %s cupsUIResolver %s no llista com a mínim dues opcions diferents."
+
+#: systemv/cupstestppd.c:1168
+#, c-format
+msgid ""
+" **FAIL** %s must be 1284DeviceID\n"
+" REF: Page 72, section 5.5"
+msgstr ""
+" **ERROR** %s ha de ser 1284DeviceID!\n"
+" REF: pàgina 72, secció 5.5"
+
+#: systemv/cupstestppd.c:580
+#, c-format
+msgid ""
+" **FAIL** Bad Default%s %s\n"
+" REF: Page 40, section 4.5."
+msgstr ""
+" **ERROR** Default%s incorrecte %s\n"
+" REF: pàgina 40, secció 4.5."
+
+#: systemv/cupstestppd.c:514
+#, c-format
+msgid ""
+" **FAIL** Bad DefaultImageableArea %s\n"
+" REF: Page 102, section 5.15."
+msgstr ""
+" **ERROR** DefaultImageableArea incorrecte %s\n"
+" REF: pàgina 102, secció 5.15."
+
+#: systemv/cupstestppd.c:550
+#, c-format
+msgid ""
+" **FAIL** Bad DefaultPaperDimension %s\n"
+" REF: Page 103, section 5.15."
+msgstr ""
+" **ERROR** DefaultPaperDimension incorrecte %s\n"
+" REF: pàgina 103, secció 5.15."
+
+#: systemv/cupstestppd.c:623
+#, c-format
+msgid ""
+" **FAIL** Bad FileVersion \"%s\"\n"
+" REF: Page 56, section 5.3."
+msgstr ""
+" **ERROR** FileVersion incorrecte «%s»\n"
+" REF: pàgina 56, secció 5.3."
+
+#: systemv/cupstestppd.c:667
+#, c-format
+msgid ""
+" **FAIL** Bad FormatVersion \"%s\"\n"
+" REF: Page 56, section 5.3."
+msgstr ""
+" **ERROR** FormatVersion incorrecte «%s»\n"
+" REF: pàgina 56, secció 5.3."
+
+#: systemv/cupstestppd.c:1025
+msgid ""
+" **FAIL** Bad JobPatchFile attribute in file\n"
+" REF: Page 24, section 3.4."
+msgstr ""
+" **ERROR** atribut de JobPatchFile incorrecte al fitxer\n"
+" REF: pàgina 24, secció 3.4."
+
+#: systemv/cupstestppd.c:1213
+#, c-format
+msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
+msgstr " **ERROR** LanguageEncoding incorrecte %s: ha de ser ISOLatin1."
+
+#: systemv/cupstestppd.c:1227
+#, c-format
+msgid " **FAIL** Bad LanguageVersion %s - must be English."
+msgstr " **ERROR** LanguageVersion incorrecta %s: ha de ser anglès."
+
+#: systemv/cupstestppd.c:743 systemv/cupstestppd.c:760
+#, c-format
+msgid ""
+" **FAIL** Bad Manufacturer (should be \"%s\")\n"
+" REF: Page 211, table D.1."
+msgstr ""
+" **ERROR** Manufacturer incorrecte (hauria de ser «%s»)\n"
+" REF: pàgina 211, taula D.1."
+
+#: systemv/cupstestppd.c:800
+#, c-format
+msgid ""
+" **FAIL** Bad ModelName - \"%c\" not allowed in string.\n"
+" REF: Pages 59-60, section 5.3."
+msgstr ""
+" **ERROR** ModelName incorrecte - no es permet «%c» a la cadena.\n"
+" REF: pàgines 59-60, secció 5.3."
+
+#: systemv/cupstestppd.c:956
+msgid ""
+" **FAIL** Bad PSVersion - not \"(string) int\".\n"
+" REF: Pages 62-64, section 5.3."
+msgstr ""
+" **ERROR** PSVersion incorrecte - no és «(cadena) enter».\n"
+" REF: pàgines 62-64, secció 5.3."
+
+#: systemv/cupstestppd.c:917
+msgid ""
+" **FAIL** Bad Product - not \"(string)\".\n"
+" REF: Page 62, section 5.3."
+msgstr ""
+" **ERROR** Product incorrecte - no és «(cadena)».\n"
+" REF: pàgina 62, secció 5.3."
+
+#: systemv/cupstestppd.c:991
+msgid ""
+" **FAIL** Bad ShortNickName - longer than 31 chars.\n"
+" REF: Pages 64-65, section 5.3."
+msgstr ""
+" **ERROR** ShortNickName incorrecte - més llarg de 31 caràcters.\n"
+" REF: pàgines 64-65, secció 5.3."
+
+#: systemv/cupstestppd.c:1149
+#, c-format
+msgid ""
+" **FAIL** Bad option %s choice %s\n"
+" REF: Page 84, section 5.9"
+msgstr ""
+" **ERROR** Elecció %s incorrecta %s\n"
+" REF: pàgina 84, secció 5.9"
+
+#: systemv/cupstestppd.c:3754 systemv/cupstestppd.c:3776
+#, c-format
+msgid " **FAIL** Default option code cannot be interpreted: %s"
+msgstr ""
+" **ERROR** El codi de l'opció per defecte no es pot interpretar: %s"
+
+#: systemv/cupstestppd.c:1286
+#, c-format
+msgid ""
+" **FAIL** Default translation string for option %s choice %s contains "
+"8-bit characters."
+msgstr ""
+" **ERROR** La traducció per defecte de l'opció %s elecció %s conté "
+"caràcters de 8 bits."
+
+#: systemv/cupstestppd.c:1259
+#, c-format
+msgid ""
+" **FAIL** Default translation string for option %s contains 8-bit "
+"characters."
+msgstr ""
+" **ERROR** La traducció per defecte de l'opció %s conté caràcters de 8 "
+"bits."
+
+#: systemv/cupstestppd.c:2101
+#, c-format
+msgid " **FAIL** Group names %s and %s differ only by case."
+msgstr ""
+" **ERROR** Els noms dels grups %s i %s només es diferencien en les "
+"majúscules."
+
+#: systemv/cupstestppd.c:2146
+#, c-format
+msgid " **FAIL** Multiple occurrences of option %s choice name %s."
+msgstr ""
+" **ERROR** Coincidències múltiples de l'opció %s nom de l'elecció %s."
+
+#: systemv/cupstestppd.c:2163
+#, c-format
+msgid " **FAIL** Option %s choice names %s and %s differ only by case."
+msgstr ""
+" **ERROR** L'opció %s noms de les opcions %s i %s només es diferencien "
+"per les majúscules."
+
+#: systemv/cupstestppd.c:2123
+#, c-format
+msgid " **FAIL** Option names %s and %s differ only by case."
+msgstr ""
+" **ERROR** Els noms de les opcions %s i %s només es diferencien per "
+"les majúscules."
+
+#: systemv/cupstestppd.c:600
+#, c-format
+msgid ""
+" **FAIL** REQUIRED Default%s\n"
+" REF: Page 40, section 4.5."
+msgstr ""
+" **ERROR** ES NECESSITA Default%s\n"
+" REF: pàgina 40, secció 4.5."
+
+#: systemv/cupstestppd.c:499
+msgid ""
+" **FAIL** REQUIRED DefaultImageableArea\n"
+" REF: Page 102, section 5.15."
+msgstr ""
+" **ERROR** ES NECESSITA DefaultImageableArea\n"
+" REF: pàgina 102, secció 5.15."
+
+#: systemv/cupstestppd.c:535
+msgid ""
+" **FAIL** REQUIRED DefaultPaperDimension\n"
+" REF: Page 103, section 5.15."
+msgstr ""
+" **ERROR** ES NECESSITA DefaultPaperDimension\n"
+" REF: pàgina 103, secció 5.15."
+
+#: systemv/cupstestppd.c:641
+msgid ""
+" **FAIL** REQUIRED FileVersion\n"
+" REF: Page 56, section 5.3."
+msgstr ""
+" **ERROR** ES NECESSITA FileVersion\n"
+" REF: pàgina 56, secció 5.3."
+
+#: systemv/cupstestppd.c:685
+msgid ""
+" **FAIL** REQUIRED FormatVersion\n"
+" REF: Page 56, section 5.3."
+msgstr ""
+" **ERROR** ES NECESSITA FormatVersion\n"
+" REF: pàgina 56, secció 5.3."
+
+#: systemv/cupstestppd.c:1076
+#, c-format
+msgid ""
+" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
+" REF: Page 41, section 5.\n"
+" REF: Page 102, section 5.15."
+msgstr ""
+" **ERROR** ES NECESSITA ImageableArea per PageSize %s\n"
+" REF: pàgina 41, secció 5.\n"
+" REF: pàgina 102, secció 5.15."
+
+#: systemv/cupstestppd.c:705
+msgid ""
+" **FAIL** REQUIRED LanguageEncoding\n"
+" REF: Pages 56-57, section 5.3."
+msgstr ""
+" **ERROR** ES NECESSITA LanguageEncoding\n"
+" REF: pàgines 56-57, secció 5.3."
+
+#: systemv/cupstestppd.c:725
+msgid ""
+" **FAIL** REQUIRED LanguageVersion\n"
+" REF: Pages 57-58, section 5.3."
+msgstr ""
+" **ERROR** ES NECESSITA LanguageVersion\n"
+" REF: pàgines 57-58, secció 5.3."
+
+#: systemv/cupstestppd.c:779
+msgid ""
+" **FAIL** REQUIRED Manufacturer\n"
+" REF: Pages 58-59, section 5.3."
+msgstr ""
+" **ERROR** ES NECESSITA Manufacturer\n"
+" REF: pàgines 58-59, secció 5.3."
+
+#: systemv/cupstestppd.c:819
+msgid ""
+" **FAIL** REQUIRED ModelName\n"
+" REF: Pages 59-60, section 5.3."
+msgstr ""
+" **ERROR** ES NECESSITA ModelName\n"
+" REF: pàgines 59-60, secció 5.3."
+
+#: systemv/cupstestppd.c:839
+msgid ""
+" **FAIL** REQUIRED NickName\n"
+" REF: Page 60, section 5.3."
+msgstr ""
+" **ERROR** ES NECESSITA NickName\n"
+" REF: pàgina 60, secció 5.3."
+
+#: systemv/cupstestppd.c:899
+msgid ""
+" **FAIL** REQUIRED PCFileName\n"
+" REF: Pages 61-62, section 5.3."
+msgstr ""
+" **ERROR** ES NECESSITA PCFileName\n"
+" REF: pàgines 61-62, secció 5.3."
+
+#: systemv/cupstestppd.c:974
+msgid ""
+" **FAIL** REQUIRED PSVersion\n"
+" REF: Pages 62-64, section 5.3."
+msgstr ""
+" **ERROR** ES NECESSITA PSVersion\n"
+" REF: pàgines 62-64, secció 5.3."
+
+#: systemv/cupstestppd.c:879
+msgid ""
+" **FAIL** REQUIRED PageRegion\n"
+" REF: Page 100, section 5.14."
+msgstr ""
+" **ERROR** ES NECESSITA PageRegion\n"
+" REF: pàgina 100, secció 5.14."
+
+#: systemv/cupstestppd.c:1045
+msgid ""
+" **FAIL** REQUIRED PageSize\n"
+" REF: Page 41, section 5.\n"
+" REF: Page 99, section 5.14."
+msgstr ""
+" **ERROR** ES NECESSITA PageSize\n"
+" REF: pàgina 41, secció 5.\n"
+" REF: pàgina 99, secció 5.14."
+
+#: systemv/cupstestppd.c:859
+msgid ""
+" **FAIL** REQUIRED PageSize\n"
+" REF: Pages 99-100, section 5.14."
+msgstr ""
+" **ERROR** ES NECESSITA PageSize\n"
+" REF: pàgines 99-100, secció 5.14."
+
+#: systemv/cupstestppd.c:1098
+#, c-format
+msgid ""
+" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
+" REF: Page 41, section 5.\n"
+" REF: Page 103, section 5.15."
+msgstr ""
+" **ERROR** ES NECESSITA PaperDimension per PageSize %s\n"
+" REF: pàgina 41, secció 5.\n"
+" REF: pàgina 103, secció 5.15."
+
+#: systemv/cupstestppd.c:934
+msgid ""
+" **FAIL** REQUIRED Product\n"
+" REF: Page 62, section 5.3."
+msgstr ""
+" **ERROR** ES NECESSITA Product\n"
+" REF: pàgina 62, secció 5.3."
+
+#: systemv/cupstestppd.c:1009
+msgid ""
+" **FAIL** REQUIRED ShortNickName\n"
+" REF: Page 64-65, section 5.3."
+msgstr ""
+" **FAIL** ES NECESSITA ShortNickName\n"
+" REF: pàgina 64-65, secció 5.3."
+
+#: systemv/cupstestppd.c:334 systemv/cupstestppd.c:353
+#: systemv/cupstestppd.c:365
+#, c-format
+msgid " **FAIL** Unable to open PPD file - %s on line %d."
+msgstr " **ERROR** No es pot obrir el fitxer PPD - %s a la línia %d."
+
+#: systemv/cupstestppd.c:1498
+#, c-format
+msgid " %d ERRORS FOUND"
+msgstr " %d S'HAN TROBAT ERRORS"
+
+#: systemv/cupstestdsc.c:431
+msgid " -h Show program usage"
+msgstr " -h Mostra la sintaxi del programa"
+
+#: systemv/cupstestdsc.c:234 systemv/cupstestdsc.c:276
+#, c-format
+msgid ""
+" Bad %%%%BoundingBox: on line %d.\n"
+" REF: Page 39, %%%%BoundingBox:"
+msgstr ""
+" %%%%BoundingBox incorrecte: a la línia %d.\n"
+" REF: pàgina 39, %%%%BoundingBox:"
+
+#: systemv/cupstestdsc.c:305
+#, c-format
+msgid ""
+" Bad %%%%Page: on line %d.\n"
+" REF: Page 53, %%%%Page:"
+msgstr ""
+" %%%%Page incorrecte: a la línia %d.\n"
+" REF: pàgina 53, %%%%Page:"
+
+#: systemv/cupstestdsc.c:218 systemv/cupstestdsc.c:258
+#, c-format
+msgid ""
+" Bad %%%%Pages: on line %d.\n"
+" REF: Page 43, %%%%Pages:"
+msgstr ""
+" %%%%Pages incorrecte: a la línia %d!\n"
+" REF: pàgina 43, %%%%Pages:"
+
+#: systemv/cupstestdsc.c:176
+#, c-format
+msgid ""
+" Line %d is longer than 255 characters (%d).\n"
+" REF: Page 25, Line Length"
+msgstr ""
+" La línia %d és més llarga de 255 caràcters (%d)\n"
+" REF: pàgina 25, Longitud de línia"
+
+#: systemv/cupstestdsc.c:192
+msgid ""
+" Missing %!PS-Adobe-3.0 on first line.\n"
+" REF: Page 17, 3.1 Conforming Documents"
+msgstr ""
+" Falta %!PS-Adobe-3.0 a la primera línia.\n"
+" REF: pàgina 17, 3.1 Adaptació de documents"
+
+#: systemv/cupstestdsc.c:362
+#, c-format
+msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
+msgstr ""
+" Falta el comentari %%EndComments. REF: pàgina 41, %%EndComments"
+
+#: systemv/cupstestdsc.c:342
+#, c-format
+msgid ""
+" Missing or bad %%BoundingBox: comment.\n"
+" REF: Page 39, %%BoundingBox:"
+msgstr ""
+" %%BoundingBox incorrecte o inexistent: comentari.\n"
+" REF: pàgina 39, %%BoundingBox:"
+
+#: systemv/cupstestdsc.c:372
+#, c-format
+msgid ""
+" Missing or bad %%Page: comments.\n"
+" REF: Page 53, %%Page:"
+msgstr ""
+" %%Page incorrecte o inexistent: comentaris.\n"
+" REF: pàgina 53, %%Page:"
+
+#: systemv/cupstestdsc.c:352
+#, c-format
+msgid ""
+" Missing or bad %%Pages: comment.\n"
+" REF: Page 43, %%Pages:"
+msgstr ""
+" %%Pages incorrecte o inexistent: comentari.\n"
+" REF: pàgina 43, %%Pages:"
+
+#: systemv/cupstestppd.c:1500
+msgid " NO ERRORS FOUND"
+msgstr " NO S'HA TROBAT CAP ERROR"
+
+#: systemv/cupstestdsc.c:395
+#, c-format
+msgid " Saw %d lines that exceeded 255 characters."
+msgstr " S'han trobat %d línies que superen els 255 caràcters."
+
+#: systemv/cupstestdsc.c:390
+#, c-format
+msgid " Too many %%BeginDocument comments."
+msgstr " Massa comentaris %%BeginDocument."
+
+#: systemv/cupstestdsc.c:382
+#, c-format
+msgid " Too many %%EndDocument comments."
+msgstr " Massa comentaris %%EndDocument."
+
+#: systemv/cupstestdsc.c:402
+msgid " Warning: file contains binary data."
+msgstr " Avís: el fitxer conté dades binàries."
+
+#: systemv/cupstestdsc.c:410
+#, c-format
+msgid " Warning: no %%EndComments comment in file."
+msgstr " Avís: no hi ha cap %%EndComments al fitxer."
+
+#: systemv/cupstestdsc.c:406
+#, c-format
+msgid " Warning: obsolete DSC version %.1f in file."
+msgstr " Avís: versió del DSC %.1f obsoleta al fitxer."
+
+#: systemv/cupsctl.c:210
+msgid " --[no-]debug-logging Turn debug logging on/off."
+msgstr " --[no-]debug-logging Activa o desactiva el registre de depuració."
+
+#: systemv/cupsctl.c:212
+msgid " --[no-]remote-admin Turn remote administration on/off."
+msgstr " --[no-]remote-admin Activa o desactiva l'administració remota."
+
+#: systemv/cupsctl.c:214
+msgid " --[no-]remote-any Allow/prevent access from the Internet."
+msgstr " --[no-]remote-any Permet o impedeix l'accés des d'Internet."
+
+#: systemv/cupsctl.c:216
+msgid " --[no-]share-printers Turn printer sharing on/off."
+msgstr ""
+" --[no-]share-printers Activa o desactiva la compartició d'impressores."
+
+#: systemv/cupsctl.c:218
+msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
+msgstr ""
+" --[no-]user-cancel-any Permet o impedeix que els usuaris cancel·lin "
+"tasques."
+
+#: ppdc/ppdc.cxx:455
+msgid " --cr End lines with CR (Mac OS 9)."
+msgstr " --cr Final de línia amb CR (Mac OS 9)."
+
+#: ppdc/ppdc.cxx:457
+msgid " --crlf End lines with CR + LF (Windows)."
+msgstr " --crlf Final de línia amb CR + LF (Windows)."
+
+#: ppdc/ppdc.cxx:459
+msgid " --lf End lines with LF (UNIX/Linux/OS X)."
+msgstr " --lf Final de línia amb LF (UNIX/Linux/OS X)."
+
+#: test/ipptool.c:4404
+msgid " -4 Connect using IPv4."
+msgstr " -4 Connecta fent servir IPv4."
+
+#: test/ipptool.c:4405
+msgid " -6 Connect using IPv6."
+msgstr " -6 Connecta fent servir IPv6."
+
+#: test/ipptool.c:4406
+msgid " -C Send requests using chunking (default)."
+msgstr ""
+" -C Envia les sol·licituds fent servir la fragmentació "
+"(per defecte)."
+
+#: scheduler/cupsfilter.c:1431
+msgid " -D Remove the input file when finished."
+msgstr " -D Elimina el fitxer d'entrada quan ha acabat."
+
+#: ppdc/ppdc.cxx:438 ppdc/ppdhtml.cxx:175 ppdc/ppdpo.cxx:255
+msgid " -D name=value Set named variable to value."
+msgstr " -D nom=valor Estableix la variable indicada al valor."
+
+#: systemv/cupsaddsmb.c:285 systemv/cupsctl.c:205
+msgid " -E Encrypt the connection."
+msgstr " -E Xifra la connexió."
+
+#: test/ipptool.c:4408
+msgid " -E Test with HTTP Upgrade to TLS."
+msgstr ""
+" -E Fa una prova amb l'actualització d'HTTP a TLS."
+
+#: scheduler/main.c:2021
+msgid ""
+" -F Run in the foreground but detach from console."
+msgstr ""
+" -F Executa en primer pla però separat de la consola."
+
+#: systemv/cupsaddsmb.c:286
+msgid " -H samba-server Use the named SAMBA server."
+msgstr " -H servidor-samba Fa servir el servidor SAMBA indicat."
+
+#: test/ipptool.c:4410
+msgid " -I Ignore errors."
+msgstr " -I Ignora els errors."
+
+#: ppdc/ppdc.cxx:440 ppdc/ppdhtml.cxx:177 ppdc/ppdi.cxx:131 ppdc/ppdpo.cxx:257
+msgid " -I include-dir Add include directory to search path."
+msgstr " -I dir-inclòs Afegeix el directori inclòs al camí de cerca."
+
+#: systemv/cupstestppd.c:3799
+msgid " -I {filename,filters,none,profiles}"
+msgstr " -I {nomfitxer,filtres,cap,perfils}"
+
+#: test/ipptool.c:4411
+msgid " -L Send requests using content-length."
+msgstr ""
+" -L Envia les peticions fent servir content-length."
+
+#: scheduler/cupsfilter.c:1433
+msgid " -P filename.ppd Set PPD file."
+msgstr " -P nomfitxer.ppd Estableix el fitxer PPD."
+
+#: systemv/cupstestppd.c:3801
+msgid " -R root-directory Set alternate root."
+msgstr " -R directori-arrel Estableix una arrel alternativa."
+
+#: test/ipptool.c:4413
+msgid " -S Test with SSL encryption."
+msgstr " -S Fa una prova amb xifrat SSL."
+
+#: test/ipptool.c:4415
+msgid " -T seconds Set the receive/send timeout in seconds."
+msgstr ""
+" -T segons Estableix el temps d'espera màxim per enviar i "
+"rebre en segons."
+
+#: scheduler/cupsfilter.c:1434 systemv/cupsaddsmb.c:288 systemv/cupsctl.c:206
+msgid " -U username Specify username."
+msgstr " -U nomusuari Especifica un nom d'usuari."
+
+#: test/ipptool.c:4417
+msgid " -V version Set default IPP version."
+msgstr " -V versió Estableix la versió per defecte del IPP."
+
+#: systemv/cupstestppd.c:3802
+msgid ""
+" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
+"translations}"
+msgstr ""
+" -W {tots,cap,restringits,per defecte,dúplex,filtres,perfils,mides,"
+"traduccions}"
+
+#: test/ipptool.c:4419
+msgid " -X Produce XML plist instead of plain text."
+msgstr ""
+" -X Retorna els plist en XML en comptes de text pla."
+
+#: systemv/cupsaddsmb.c:289
+msgid " -a Export all printers."
+msgstr " -a Exporta totes les impressores."
+
+#: ppdc/ppdc.cxx:442
+msgid " -c catalog.po Load the specified message catalog."
+msgstr " -c catàleg.po Carrega el catàleg de missatges indicat."
+
+#: scheduler/cupsfilter.c:1435 scheduler/main.c:2019
+msgid " -c cupsd.conf Set cupsd.conf file to use."
+msgstr ""
+" -c cupsd.conf Estableix el fitxer cupsd.conf que cal fer servir."
+
+#: test/ipptool.c:4421
+msgid " -d name=value Set named variable to value."
+msgstr " -d nom=valor Estableix la variable indicada al valor."
+
+#: ppdc/ppdc.cxx:444
+msgid " -d output-dir Specify the output directory."
+msgstr " -d dir-sortida Especifica el directori de sortida."
+
+#: scheduler/cupsfilter.c:1437
+msgid " -d printer Use the named printer."
+msgstr " -d impressora Fa servir la impressora indicada."
+
+#: scheduler/cupsfilter.c:1439
+msgid " -e Use every filter from the PPD file."
+msgstr " -e Fa servir tots els filtres del fitxer PPD."
+
+#: scheduler/main.c:2020
+msgid " -f Run in the foreground."
+msgstr " -f Executa en primer pla."
+
+#: test/ipptool.c:4423
+msgid " -f filename Set default request filename."
+msgstr ""
+" -f nomfitxer Estableix el nom del fitxer per defecte de la "
+"sol·licitud."
+
+#: scheduler/main.c:2023
+msgid " -h Show this usage message."
+msgstr " -h Mostra aquest missatge de sintaxi."
+
+#: systemv/cupsaddsmb.c:290 systemv/cupsctl.c:207
+msgid " -h server[:port] Specify server address."
+msgstr " -h servidor[:port] Especifica l'adreça del servidor."
+
+#: scheduler/cupsfilter.c:1441
+msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
+msgstr ""
+" -i tipus/mime Estableix el tipus MIME d'entrada (auto-typed si "
+"no s'especifica)."
+
+#: test/ipptool.c:4425
+msgid ""
+" -i seconds Repeat the last file with the given time interval."
+msgstr ""
+" -i segons Repeteix l'últim fitxer amb l'interval especificat."
+
+#: scheduler/cupsfilter.c:1443
+msgid ""
+" -j job-id[,N] Filter file N from the specified job (default is "
+"file 1)."
+msgstr ""
+" -j id-tasca[,N] Filtra el fitxer N a la tasca especificada (el "
+"fitxer per defecte és 1)."
+
+#: scheduler/main.c:2024
+msgid " -l Run cupsd from launchd(8)."
+msgstr " -l Executa cupsd des de launchd(8)."
+
+#: ppdc/ppdc.cxx:446
+msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
+msgstr ""
+" -l idioma[,idioma,...] Especifica els idiomes de sortida (locale)."
+
+#: ppdc/ppdc.cxx:448
+msgid " -m Use the ModelName value as the filename."
+msgstr ""
+" -m Fa servir el valor de ModelName com a nom de "
+"fitxer."
+
+#: scheduler/cupsfilter.c:1445
+msgid ""
+" -m mime/type Set output MIME type (otherwise application/pdf)."
+msgstr ""
+" -m tipus/mime Estableix el tipus MIME de sortida (application/"
+"pdf si no s'especifica)."
+
+#: scheduler/cupsfilter.c:1447
+msgid " -n copies Set number of copies."
+msgstr " -n còpies Estableix el nombre de còpies."
+
+#: test/ipptool.c:4427
+msgid ""
+" -n count Repeat the last file the given number of times."
+msgstr ""
+" -n comptador Repeteix l'últim fitxer el nombre indicat de "
+"vegades."
+
+#: ppdc/ppdi.cxx:133
+msgid ""
+" -o filename.drv Set driver information file (otherwise ppdi.drv)."
+msgstr ""
+" -o nomfitxer.drv Estableix el fitxer d'informació del controlador "
+"(ppdi.drv si no s'especifica)."
+
+#: ppdc/ppdmerge.cxx:370
+msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
+msgstr ""
+" -o nomfitxer.ppd[.gz] Estableix el fitxer de sortida (stdout si no "
+"s'especifica)."
+
+#: scheduler/cupsfilter.c:1448
+msgid " -o name=value Set option(s)."
+msgstr " -o nom=valor Estableix les opcions."
+
+#: scheduler/cupsfilter.c:1449
+msgid " -p filename.ppd Set PPD file."
+msgstr " -p nomfitxer.ppd Estableix el fitxer PPD."
+
+#: systemv/cupstestppd.c:3806 test/ipptool.c:4429
+msgid " -q Run silently."
+msgstr " -q S'executa en mode silenciós."
+
+#: systemv/cupstestppd.c:3807
+msgid " -r Use 'relaxed' open mode."
+msgstr " -r Fa servir el mode obert «relaxat»."
+
+#: test/ipptool.c:4430
+msgid " -t Produce a test report."
+msgstr " -t Genera un informe de prova."
+
+#: ppdc/ppdc.cxx:450
+msgid " -t Test PPDs instead of generating them."
+msgstr " -t Prova els PPDs en comptes de generar-los."
+
+#: scheduler/main.c:2025
+msgid " -t Test the configuration file."
+msgstr " -t Prova el fitxer de configuració."
+
+#: scheduler/cupsfilter.c:1450
+msgid " -t title Set title."
+msgstr " -t títol Estableix el títol."
+
+#: scheduler/cupsfilter.c:1451
+msgid " -u Remove the PPD file when finished."
+msgstr " -u Elimina el fitxer PPD quan ha acabat."
+
+#: systemv/cupsaddsmb.c:291 systemv/cupstestppd.c:3808 test/ipptool.c:4431
+#: ppdc/ppdc.cxx:452 ppdc/ppdpo.cxx:259
+msgid " -v Be verbose."
+msgstr " -v Mode detallat."
+
+#: systemv/cupstestppd.c:3809
+msgid " -vv Be very verbose."
+msgstr " -vv Mode molt detallat."
+
+#: ppdc/ppdc.cxx:453
+msgid " -z Compress PPD files using GNU zip."
+msgstr ""
+" -z Comprimeix els fitxers PPD fent servir el zip de "
+"GNU."
+
+#: systemv/cupstestppd.c:332 systemv/cupstestppd.c:351
+#: systemv/cupstestppd.c:363 systemv/cupstestppd.c:496
+#: systemv/cupstestppd.c:511 systemv/cupstestppd.c:532
+#: systemv/cupstestppd.c:547 systemv/cupstestppd.c:577
+#: systemv/cupstestppd.c:597 systemv/cupstestppd.c:620
+#: systemv/cupstestppd.c:638 systemv/cupstestppd.c:664
+#: systemv/cupstestppd.c:682 systemv/cupstestppd.c:702
+#: systemv/cupstestppd.c:722 systemv/cupstestppd.c:740
+#: systemv/cupstestppd.c:757 systemv/cupstestppd.c:776
+#: systemv/cupstestppd.c:797 systemv/cupstestppd.c:816
+#: systemv/cupstestppd.c:836 systemv/cupstestppd.c:856
+#: systemv/cupstestppd.c:876 systemv/cupstestppd.c:896
+#: systemv/cupstestppd.c:914 systemv/cupstestppd.c:931
+#: systemv/cupstestppd.c:953 systemv/cupstestppd.c:971
+#: systemv/cupstestppd.c:988 systemv/cupstestppd.c:1006
+#: systemv/cupstestppd.c:1022 systemv/cupstestppd.c:1042
+#: systemv/cupstestppd.c:1073 systemv/cupstestppd.c:1095
+#: systemv/cupstestppd.c:1146 systemv/cupstestppd.c:1165
+#: systemv/cupstestppd.c:1209 systemv/cupstestppd.c:1223
+#: systemv/cupstestppd.c:1255 systemv/cupstestppd.c:1282
+#: systemv/cupstestppd.c:1800 systemv/cupstestppd.c:1819
+#: systemv/cupstestppd.c:1837 systemv/cupstestppd.c:1889
+#: systemv/cupstestppd.c:1905 systemv/cupstestppd.c:1942
+#: systemv/cupstestppd.c:1960 systemv/cupstestppd.c:1996
+#: systemv/cupstestppd.c:2010 systemv/cupstestppd.c:2037
+#: systemv/cupstestppd.c:2051 systemv/cupstestppd.c:2097
+#: systemv/cupstestppd.c:2119 systemv/cupstestppd.c:2142
+#: systemv/cupstestppd.c:2159 systemv/cupstestppd.c:2201
+#: systemv/cupstestppd.c:2244 systemv/cupstestppd.c:2291
+#: systemv/cupstestppd.c:2315 systemv/cupstestppd.c:2369
+#: systemv/cupstestppd.c:2385 systemv/cupstestppd.c:2415
+#: systemv/cupstestppd.c:2429 systemv/cupstestppd.c:2455
+#: systemv/cupstestppd.c:2471 systemv/cupstestppd.c:2511
+#: systemv/cupstestppd.c:2525 systemv/cupstestppd.c:2551
+#: systemv/cupstestppd.c:2567 systemv/cupstestppd.c:2597
+#: systemv/cupstestppd.c:2611 systemv/cupstestppd.c:2638
+#: systemv/cupstestppd.c:2655 systemv/cupstestppd.c:2669
+#: systemv/cupstestppd.c:2693 systemv/cupstestppd.c:2710
+#: systemv/cupstestppd.c:2724 systemv/cupstestppd.c:2748
+#: systemv/cupstestppd.c:2765 systemv/cupstestppd.c:2779
+#: systemv/cupstestppd.c:2803 systemv/cupstestppd.c:2820
+#: systemv/cupstestppd.c:2834 systemv/cupstestppd.c:2858
+#: systemv/cupstestppd.c:2872 systemv/cupstestppd.c:2887
+#: systemv/cupstestppd.c:2904 systemv/cupstestppd.c:2960
+#: systemv/cupstestppd.c:2995 systemv/cupstestppd.c:3009
+#: systemv/cupstestppd.c:3037 systemv/cupstestppd.c:3102
+#: systemv/cupstestppd.c:3117 systemv/cupstestppd.c:3156
+#: systemv/cupstestppd.c:3176 systemv/cupstestppd.c:3190
+#: systemv/cupstestppd.c:3387 systemv/cupstestppd.c:3423
+#: systemv/cupstestppd.c:3437 systemv/cupstestppd.c:3483
+#: systemv/cupstestppd.c:3515 systemv/cupstestppd.c:3532
+#: systemv/cupstestppd.c:3555 systemv/cupstestppd.c:3571
+#: systemv/cupstestppd.c:3609 systemv/cupstestppd.c:3750
+#: systemv/cupstestppd.c:3772 systemv/cupstestppd.c:3880
+msgid " FAIL"
+msgstr " ERROR"
+
+#: systemv/cupstestppd.c:1306
+msgid " PASS"
+msgstr " VÀLID"
+
+#: berkeley/lpq.c:560
+#, c-format
+msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
+msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
+
+#: berkeley/lpq.c:565
+#, c-format
+msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
+msgstr "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
+
+#: systemv/lpstat.c:750
+#, c-format
+msgid "%s accepting requests since %s"
+msgstr "%s accepta peticions des de %s"
+
+#: scheduler/ipp.c:10045
+#, c-format
+msgid "%s cannot be changed."
+msgstr "%s no es pot canviar."
+
+#: berkeley/lpc.c:189
+#, c-format
+msgid "%s is not implemented by the CUPS version of lpc."
+msgstr "%s no està implementat en la versió del CUPS del lpc."
+
+#: berkeley/lpq.c:651
+#, c-format
+msgid "%s is not ready"
+msgstr "%s no està preparada"
+
+#: berkeley/lpq.c:644
+#, c-format
+msgid "%s is ready"
+msgstr "%s està preparada"
+
+#: berkeley/lpq.c:647
+#, c-format
+msgid "%s is ready and printing"
+msgstr "%s està preparada i imprimeix"
+
+#: filter/rastertoepson.c:985 filter/rastertohp.c:711
+#: filter/rastertolabel.c:1134
+#, c-format
+msgid "%s job-id user title copies options [file]"
+msgstr "%s identificador-tasca usuari títol còpies opcions [fitxer]"
+
+#: systemv/lpstat.c:754
+#, c-format
+msgid "%s not accepting requests since %s -"
+msgstr "%s no accepta peticions des de %s -"
+
+#: scheduler/ipp.c:691
+#, c-format
+msgid "%s not supported."
+msgstr "no es permet l'ús de %s."
+
+#: systemv/lpstat.c:765
+#, c-format
+msgid "%s/%s accepting requests since %s"
+msgstr "%s/%s accepta peticions des de %s"
+
+#: systemv/lpstat.c:770
+#, c-format
+msgid "%s/%s not accepting requests since %s -"
+msgstr "%s/%s no accepta peticions des de %s -"
+
+#: berkeley/lpq.c:552
+#, c-format
+msgid "%s: %-33.33s [job %d localhost]"
+msgstr "%s: %-33.33s [tasca %d localhost]"
+
+#. TRANSLATORS: Message is "subject: error"
+#: cups/langprintf.c:86 scheduler/cupsfilter.c:714 systemv/lpadmin.c:805
+#: systemv/lpadmin.c:856 systemv/lpadmin.c:906 systemv/lpadmin.c:962
+#: systemv/lpadmin.c:1060 systemv/lpadmin.c:1112 systemv/lpadmin.c:1168
+#: systemv/lpadmin.c:1478
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: systemv/cancel.c:294 systemv/cancel.c:357
+#, c-format
+msgid "%s: %s failed: %s"
+msgstr "%s: %s ha fallat: %s"
+
+#: systemv/cupsaccept.c:68
+#, c-format
+msgid "%s: Don't know what to do."
+msgstr "%s: no sé que fer."
+
+#: berkeley/lpq.c:236 berkeley/lpr.c:344 systemv/lp.c:584
+#, c-format
+msgid ""
+"%s: Error - %s environment variable names non-existent destination \"%s\"."
+msgstr ""
+"%s: error - els noms de les variables d'entorn %s tenen un destí inexistent "
+"«%s»."
+
+#: systemv/lp.c:231
+#, c-format
+msgid "%s: Error - bad job ID."
+msgstr "%s: error - ID de la tasca incorrecte."
+
+#: systemv/lp.c:219
+#, c-format
+msgid "%s: Error - cannot print files and alter jobs simultaneously."
+msgstr ""
+"%s: error - no es poden imprimir fitxers i modificar tasques al mateix temps."
+
+#: systemv/lp.c:505
+#, c-format
+msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
+msgstr ""
+"%s: error - no es pot imprimir des d'stdin si s'indiquen els fitxers o "
+"l'identificador de la tasca."
+
+#: systemv/lp.c:461
+#, c-format
+msgid "%s: Error - expected character set after \"-S\" option."
+msgstr ""
+"%s: error - s'esperava un conjunt de caràcters després de l'opció «-S»."
+
+#: systemv/lp.c:480
+#, c-format
+msgid "%s: Error - expected content type after \"-T\" option."
+msgstr "%s: error - s'esperava un tipus de contingut després de l'opció «-T»."
+
+#: berkeley/lpr.c:240
+#, c-format
+msgid "%s: Error - expected copies after \"-#\" option."
+msgstr "%s: error - s'esperaven còpies després de l'opció «-#»."
+
+#: systemv/lp.c:264
+#, c-format
+msgid "%s: Error - expected copies after \"-n\" option."
+msgstr "%s: error - s'esperaven còpies després de l'opció «-n»."
+
+#: berkeley/lpr.c:209
+#, c-format
+msgid "%s: Error - expected destination after \"-P\" option."
+msgstr "%s: error - s'esperava un destí després de l'opció «-P»."
+
+#: systemv/lpstat.c:231
+#, c-format
+msgid "%s: Error - expected destination after \"-b\" option."
+msgstr "%s: error - s'esperava un destí després de l'opció «-b»."
+
+#: systemv/lp.c:138
+#, c-format
+msgid "%s: Error - expected destination after \"-d\" option."
+msgstr "%s: error - s'esperava un destí després de l'opció «-d»."
+
+#: systemv/lp.c:168
+#, c-format
+msgid "%s: Error - expected form after \"-f\" option."
+msgstr "%s: error - s'esperava un formulari després de l'opció «-f»."
+
+#: systemv/lp.c:391
+#, c-format
+msgid "%s: Error - expected hold name after \"-H\" option."
+msgstr "%s: error - s'esperava un nom per pausa després de l'opció «-H»."
+
+#: berkeley/lpr.c:103
+#, c-format
+msgid "%s: Error - expected hostname after \"-H\" option."
+msgstr ""
+"%s: error - s'esperava el nom de l'ordinador central després de l'opció «-H»."
+
+#: berkeley/lpq.c:180 berkeley/lprm.c:123 systemv/cancel.c:124
+#: systemv/cupsaccept.c:123 systemv/lp.c:189 systemv/lpstat.c:291
+#, c-format
+msgid "%s: Error - expected hostname after \"-h\" option."
+msgstr ""
+"%s: error - s'esperava el nom de l'ordinador central després de l'opció «-h»."
+
+#: systemv/lp.c:371
+#, c-format
+msgid "%s: Error - expected mode list after \"-y\" option."
+msgstr "%s: error - s'esperava una llista de modes després de l'opció «-y»."
+
+#: berkeley/lpr.c:263
+#, c-format
+msgid "%s: Error - expected name after \"-%c\" option."
+msgstr "%s: error - s'esperava un nom després de l'opció «-%c»."
+
+#: berkeley/lpr.c:153 systemv/lp.c:288
+#, c-format
+msgid "%s: Error - expected option=value after \"-o\" option."
+msgstr "%s: error - s'esperava opció=valor després de l'opció «-o»."
+
+#: systemv/lp.c:441
+#, c-format
+msgid "%s: Error - expected page list after \"-P\" option."
+msgstr "%s: error - s'esperava una llista de pàgines després de l'opció «-P»."
+
+#: systemv/lp.c:308
+#, c-format
+msgid "%s: Error - expected priority after \"-%c\" option."
+msgstr "%s: error - s'esperava una prioritat després de l'opció «-%c»."
+
+#: systemv/cupsaccept.c:141
+#, c-format
+msgid "%s: Error - expected reason text after \"-r\" option."
+msgstr "%s: error - s'esperava una explicació després de l'opció «-r»."
+
+#: systemv/lp.c:354
+#, c-format
+msgid "%s: Error - expected title after \"-t\" option."
+msgstr "%s: error - s'esperava un títol després de l'opció «-t»."
+
+#: berkeley/lpq.c:111 berkeley/lpr.c:84 berkeley/lprm.c:104
+#: systemv/cancel.c:94 systemv/cupsaccept.c:101 systemv/lp.c:116
+#: systemv/lpadmin.c:438 systemv/lpstat.c:137
+#, c-format
+msgid "%s: Error - expected username after \"-U\" option."
+msgstr "%s: error - s'esperava un nom d'usuari després de l'opció «-U»."
+
+#: systemv/cancel.c:145
+#, c-format
+msgid "%s: Error - expected username after \"-u\" option."
+msgstr "%s: error - s'esperava un nom d'usuari després de l'opció «-u»."
+
+#: berkeley/lpr.c:125
+#, c-format
+msgid "%s: Error - expected value after \"-%c\" option."
+msgstr "%s: error - s'esperava un valor després de l'opció «-%c»."
+
+#: systemv/lpstat.c:157 systemv/lpstat.c:171
+#, c-format
+msgid ""
+"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
+"option."
+msgstr ""
+"%s: error - es requereix «completed», «not-completed», o «all» després de "
+"l'opció «-W»."
+
+#: berkeley/lpq.c:241 berkeley/lpr.c:349 systemv/lp.c:589
+#, c-format
+msgid "%s: Error - no default destination available."
+msgstr "%s: error - no hi ha un destí per defecte."
+
+#: systemv/lp.c:330
+#, c-format
+msgid "%s: Error - priority must be between 1 and 100."
+msgstr "%s: error - la prioritat ha de ser entre 1 i 100."
+
+#: berkeley/lpr.c:352 systemv/lp.c:592
+#, c-format
+msgid "%s: Error - scheduler not responding."
+msgstr "%s: error - el planificador no està responent."
+
+#: berkeley/lpr.c:305 systemv/lp.c:537
+#, c-format
+msgid "%s: Error - too many files - \"%s\"."
+msgstr "%s: error - massa fitxers - «%s»."
+
+#: berkeley/lpr.c:287 systemv/lp.c:520
+#, c-format
+msgid "%s: Error - unable to access \"%s\" - %s"
+msgstr "%s: error - no es pot accedir a «%s» - %s"
+
+#: berkeley/lpr.c:395 systemv/lp.c:623
+#, c-format
+msgid "%s: Error - unable to queue from stdin - %s."
+msgstr "%s: error - no es pot posar en cua des d'stdin - %s."
+
+#: berkeley/lprm.c:87 berkeley/lprm.c:172 systemv/cancel.c:214
+#, c-format
+msgid "%s: Error - unknown destination \"%s\"."
+msgstr "%s: error - el destí «%s» és desconegut."
+
+#: berkeley/lpq.c:150
+#, c-format
+msgid "%s: Error - unknown destination \"%s/%s\"."
+msgstr "%s: error - el destí «%s/%s» és desconegut."
+
+#: berkeley/lpr.c:274 berkeley/lprm.c:139 systemv/cancel.c:156
+#: systemv/cupsaccept.c:164 systemv/lp.c:496 systemv/lpstat.c:452
+#, c-format
+msgid "%s: Error - unknown option \"%c\"."
+msgstr "%s: error - la opció «%c» és desconeguda."
+
+#: systemv/cupsaccept.c:157
+#, c-format
+msgid "%s: Error - unknown option \"%s\"."
+msgstr "%s: error - la opció «%s» és desconeguda."
+
+#: systemv/lp.c:208
+#, c-format
+msgid "%s: Expected job ID after \"-i\" option."
+msgstr "%s: s'esperava l'ID d'una tasca després de l'opció «-i»."
+
+#: systemv/lpstat.c:504 systemv/lpstat.c:543
+#, c-format
+msgid "%s: Invalid destination name in list \"%s\"."
+msgstr "%s: el nom del destí no és vàlid a la llista «%s»."
+
+#: scheduler/cupsfilter.c:567
+#, c-format
+msgid "%s: Invalid filter string \"%s\"."
+msgstr "%s: la cadena del filtre «%s» no és vàlida."
+
+#: systemv/lp.c:418
+#, c-format
+msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
+msgstr "%s: es necessita l'ID de la tasca («-i jobid») abans de «-H restart»."
+
+#: scheduler/cupsfilter.c:458
+#, c-format
+msgid "%s: No filter to convert from %s/%s to %s/%s."
+msgstr "%s: no hi ha cap filtre per convertir de %s/%s a %s/%s."
+
+#: systemv/cupsaccept.c:198
+#, c-format
+msgid "%s: Operation failed: %s"
+msgstr "%s: ha fallat l'operació: %s"
+
+#: berkeley/lpq.c:97 berkeley/lpr.c:70 berkeley/lprm.c:67 systemv/cancel.c:81
+#: systemv/cupsaccept.c:88 systemv/cupsaddsmb.c:86 systemv/lp.c:102
+#: systemv/lpadmin.c:239 systemv/lpinfo.c:88 systemv/lpmove.c:73
+#: systemv/lpstat.c:102 test/ipptool.c:304 test/ipptool.c:321
+#, c-format
+msgid "%s: Sorry, no encryption support."
+msgstr "%s: ho sento, no està compilada la compatibilitat pel xifrat."
+
+#: berkeley/lpq.c:295 scheduler/cupsfilter.c:1221 systemv/cancel.c:237
+#: systemv/cupsaddsmb.c:144 systemv/cupsaddsmb.c:171
+#, c-format
+msgid "%s: Unable to connect to server."
+msgstr "%s: no es pot connectar al servidor."
+
+#: systemv/cancel.c:317
+#, c-format
+msgid "%s: Unable to contact server."
+msgstr "%s: no es pot contactar amb el servidor."
+
+#: scheduler/cupsfilter.c:424
+#, c-format
+msgid "%s: Unable to determine MIME type of \"%s\"."
+msgstr "%s: no es pot determinar el tips de MIME de «%s»."
+
+#: ppdc/ppdmerge.cxx:96
+#, c-format
+msgid "%s: Unable to open %s: %s"
+msgstr "%s: no es pot obrir %s: %s"
+
+#: scheduler/cupsfilter.c:662 ppdc/ppdmerge.cxx:112
+#, c-format
+msgid "%s: Unable to open PPD file: %s on line %d."
+msgstr "%s: no es pot obrir el fitxer PPD: %s a la línia %d."
+
+#: scheduler/cupsfilter.c:392
+#, c-format
+msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
+msgstr "%s: no es pot llegir la base de dades MIME de «%s» o «%s»."
+
+#: berkeley/lpq.c:153 systemv/lpstat.c:558
+#, c-format
+msgid "%s: Unknown destination \"%s\"."
+msgstr "%s: el destí «%s» és desconegut."
+
+#: scheduler/cupsfilter.c:435
+#, c-format
+msgid "%s: Unknown destination MIME type %s/%s."
+msgstr "%s: es destí de tipus MIME %s/%s és desconegut."
+
+#: scheduler/cupsfilter.c:1426
+#, c-format
+msgid "%s: Unknown option \"%c\"."
+msgstr "%s: l'opció «%c» és desconeguda."
+
+#: scheduler/cupsfilter.c:416
+#, c-format
+msgid "%s: Unknown source MIME type %s/%s."
+msgstr "%s: la font del tipus de MIME %s/%s és desconeguda."
+
+#: berkeley/lpr.c:139
+#, c-format
+msgid ""
+"%s: Warning - \"%c\" format modifier not supported - output may not be "
+"correct."
+msgstr ""
+"%s: avís - no es permet l'us del modificador de format «%c» - el resultat "
+"pot no ser correcte."
+
+#: systemv/lp.c:468
+#, c-format
+msgid "%s: Warning - character set option ignored."
+msgstr "%s: avís - s'ignora l'opció del grup de caràcters."
+
+#: systemv/lp.c:487
+#, c-format
+msgid "%s: Warning - content type option ignored."
+msgstr "%s: avís - s'ignora l'opció de tipus de contingut."
+
+#: systemv/lp.c:175
+#, c-format
+msgid "%s: Warning - form option ignored."
+msgstr "%s: avís - s'ignora l'opció de formulari."
+
+#: systemv/lp.c:378
+#, c-format
+msgid "%s: Warning - mode option ignored."
+msgstr "%s: avís - s'ignora l'opció de mode."
+
+#: ppdc/sample.c:310
+msgid "-1"
+msgstr "-1"
+
+#: ppdc/sample.c:301
+msgid "-10"
+msgstr "-10"
+
+#: ppdc/sample.c:393
+msgid "-100"
+msgstr "-100"
+
+#: ppdc/sample.c:392
+msgid "-105"
+msgstr "-105"
+
+#: ppdc/sample.c:300
+msgid "-11"
+msgstr "-11"
+
+#: ppdc/sample.c:391
+msgid "-110"
+msgstr "-110"
+
+#: ppdc/sample.c:390
+msgid "-115"
+msgstr "-115"
+
+#: ppdc/sample.c:299
+msgid "-12"
+msgstr "-12"
+
+#: ppdc/sample.c:389
+msgid "-120"
+msgstr "-120"
+
+#: ppdc/sample.c:298
+msgid "-13"
+msgstr "-13"
+
+#: ppdc/sample.c:297
+msgid "-14"
+msgstr "-14"
+
+#: ppdc/sample.c:296
+msgid "-15"
+msgstr "-15"
+
+#: ppdc/sample.c:309
+msgid "-2"
+msgstr "-2"
+
+#: ppdc/sample.c:409
+msgid "-20"
+msgstr "-20"
+
+#: ppdc/sample.c:408
+msgid "-25"
+msgstr "-25"
+
+#: ppdc/sample.c:308
+msgid "-3"
+msgstr "-3"
+
+#: ppdc/sample.c:407
+msgid "-30"
+msgstr "-30"
+
+#: ppdc/sample.c:406
+msgid "-35"
+msgstr "-35"
+
+#: ppdc/sample.c:307
+msgid "-4"
+msgstr "-4"
+
+#: ppdc/sample.c:405
+msgid "-40"
+msgstr "-40"
+
+#: ppdc/sample.c:404
+msgid "-45"
+msgstr "-45"
+
+#: ppdc/sample.c:306
+msgid "-5"
+msgstr "-5"
+
+#: ppdc/sample.c:403
+msgid "-50"
+msgstr "-50"
+
+#: ppdc/sample.c:402
+msgid "-55"
+msgstr "-55"
+
+#: ppdc/sample.c:305
+msgid "-6"
+msgstr "-6"
+
+#: ppdc/sample.c:401
+msgid "-60"
+msgstr "-60"
+
+#: ppdc/sample.c:400
+msgid "-65"
+msgstr "-65"
+
+#: ppdc/sample.c:304
+msgid "-7"
+msgstr "-7"
+
+#: ppdc/sample.c:399
+msgid "-70"
+msgstr "-70"
+
+#: ppdc/sample.c:398
+msgid "-75"
+msgstr "-75"
+
+#: ppdc/sample.c:303
+msgid "-8"
+msgstr "-8"
+
+#: ppdc/sample.c:397
+msgid "-80"
+msgstr "-80"
+
+#: ppdc/sample.c:396
+msgid "-85"
+msgstr "-85"
+
+#: ppdc/sample.c:302
+msgid "-9"
+msgstr "-9"
+
+#: ppdc/sample.c:395
+msgid "-90"
+msgstr "-90"
+
+#: ppdc/sample.c:394
+msgid "-95"
+msgstr "-95"
+
+#: ppdc/sample.c:311
+msgid "0"
+msgstr "0"
+
+#: ppdc/sample.c:312
+msgid "1"
+msgstr "1"
+
+#: ppdc/sample.c:384
+msgid "1 inch/sec."
+msgstr "1 polzada/seg."
+
+#: ppdc/sample.c:172
+msgid "1.25x0.25\""
+msgstr "1.25x0.25\""
+
+#: ppdc/sample.c:173
+msgid "1.25x2.25\""
+msgstr "1.25x2.25\""
+
+#: ppdc/sample.c:432
+msgid "1.5 inch/sec."
+msgstr "1.5 polzades/seg."
+
+#: ppdc/sample.c:174
+msgid "1.50x0.25\""
+msgstr "1.50x0.25\""
+
+#: ppdc/sample.c:175
+msgid "1.50x0.50\""
+msgstr "1.50x0.50\""
+
+#: ppdc/sample.c:176
+msgid "1.50x1.00\""
+msgstr "1.50x1.00\""
+
+#: ppdc/sample.c:177
+msgid "1.50x2.00\""
+msgstr "1.50x2.00\""
+
+#: ppdc/sample.c:321
+msgid "10"
+msgstr "10"
+
+#: ppdc/sample.c:443
+msgid "10 inches/sec."
+msgstr "10 polzades/seg."
+
+#: ppdc/sample.c:6
+msgid "10 x 11"
+msgstr "10 x 11"
+
+#: ppdc/sample.c:7
+msgid "10 x 13"
+msgstr "10 x 13"
+
+#: ppdc/sample.c:8
+msgid "10 x 14"
+msgstr "10 x 14"
+
+#: ppdc/sample.c:423
+msgid "100"
+msgstr "100"
+
+#: ppdc/sample.c:334
+msgid "100 mm/sec."
+msgstr "100 mm/seg."
+
+#: ppdc/sample.c:424
+msgid "105"
+msgstr "105"
+
+#: ppdc/sample.c:322
+msgid "11"
+msgstr "11"
+
+#: ppdc/sample.c:444
+msgid "11 inches/sec."
+msgstr "11 polzades/seg."
+
+#: ppdc/sample.c:425
+msgid "110"
+msgstr "110"
+
+#: ppdc/sample.c:426
+msgid "115"
+msgstr "115"
+
+#: ppdc/sample.c:323
+msgid "12"
+msgstr "12"
+
+#: ppdc/sample.c:445
+msgid "12 inches/sec."
+msgstr "12 polzades/seg."
+
+#: ppdc/sample.c:9
+msgid "12 x 11"
+msgstr "12 x 11"
+
+#: ppdc/sample.c:427
+msgid "120"
+msgstr "120"
+
+#: ppdc/sample.c:335
+msgid "120 mm/sec."
+msgstr "120 mm/seg."
+
+#: ppdc/sample.c:243
+msgid "120x60dpi"
+msgstr "120x60ppp"
+
+#: ppdc/sample.c:249
+msgid "120x72dpi"
+msgstr "120x72ppp"
+
+#: ppdc/sample.c:324
+msgid "13"
+msgstr "13"
+
+#: ppdc/sample.c:232
+msgid "136dpi"
+msgstr "136ppp"
+
+#: ppdc/sample.c:325
+msgid "14"
+msgstr "14"
+
+#: ppdc/sample.c:326
+msgid "15"
+msgstr "15"
+
+#: ppdc/sample.c:328
+msgid "15 mm/sec."
+msgstr "15 mm/seg."
+
+#: ppdc/sample.c:10
+msgid "15 x 11"
+msgstr "15 x 11"
+
+#: ppdc/sample.c:336
+msgid "150 mm/sec."
+msgstr "150 mm/seg."
+
+#: ppdc/sample.c:283
+msgid "150dpi"
+msgstr "150ppp"
+
+#: ppdc/sample.c:368
+msgid "16"
+msgstr "16"
+
+#: ppdc/sample.c:369
+msgid "17"
+msgstr "17"
+
+#: ppdc/sample.c:370
+msgid "18"
+msgstr "18"
+
+#: ppdc/sample.c:244
+msgid "180dpi"
+msgstr "180ppp"
+
+#: ppdc/sample.c:371
+msgid "19"
+msgstr "19"
+
+#: ppdc/sample.c:313
+msgid "2"
+msgstr "2"
+
+#: ppdc/sample.c:385
+msgid "2 inches/sec."
+msgstr "2 polzades/seg."
+
+#: ppdc/sample.c:270
+msgid "2-Sided Printing"
+msgstr "Impressió a doble cara"
+
+#: ppdc/sample.c:178
+msgid "2.00x0.37\""
+msgstr "2.00x0.37\""
+
+#: ppdc/sample.c:179
+msgid "2.00x0.50\""
+msgstr "2.00x0.50\""
+
+#: ppdc/sample.c:180
+msgid "2.00x1.00\""
+msgstr "2.00x1.00\""
+
+#: ppdc/sample.c:181
+msgid "2.00x1.25\""
+msgstr "2.00x1.25\""
+
+#: ppdc/sample.c:182
+msgid "2.00x2.00\""
+msgstr "2.00x2.00\""
+
+#: ppdc/sample.c:183
+msgid "2.00x3.00\""
+msgstr "2.00x3.00\""
+
+#: ppdc/sample.c:184
+msgid "2.00x4.00\""
+msgstr "2.00x4.00\""
+
+#: ppdc/sample.c:185
+msgid "2.00x5.50\""
+msgstr "2.00x5.50\""
+
+#: ppdc/sample.c:186
+msgid "2.25x0.50\""
+msgstr "2.25x0.50\""
+
+#: ppdc/sample.c:187
+msgid "2.25x1.25\""
+msgstr "2.25x1.25\""
+
+#: ppdc/sample.c:188
+msgid "2.25x4.00\""
+msgstr "2.25x4.00\""
+
+#: ppdc/sample.c:189
+msgid "2.25x5.50\""
+msgstr "2.25x5.50\""
+
+#: ppdc/sample.c:190
+msgid "2.38x5.50\""
+msgstr "2.38x5.50\""
+
+#: ppdc/sample.c:433
+msgid "2.5 inches/sec."
+msgstr "2.5 polzades/seg."
+
+#: ppdc/sample.c:191
+msgid "2.50x1.00\""
+msgstr "2.50x1.00\""
+
+#: ppdc/sample.c:192
+msgid "2.50x2.00\""
+msgstr "2.50x2.00\""
+
+#: ppdc/sample.c:193
+msgid "2.75x1.25\""
+msgstr "2.75x1.25\""
+
+#: ppdc/sample.c:194
+msgid "2.9 x 1\""
+msgstr "2.9 x 1\""
+
+#: ppdc/sample.c:372
+msgid "20"
+msgstr "20"
+
+#: ppdc/sample.c:329
+msgid "20 mm/sec."
+msgstr "20 mm/seg."
+
+#: ppdc/sample.c:337
+msgid "200 mm/sec."
+msgstr "200 mm/seg."
+
+#: ppdc/sample.c:233
+msgid "203dpi"
+msgstr "203ppp"
+
+#: ppdc/sample.c:373
+msgid "21"
+msgstr "21"
+
+#: ppdc/sample.c:374
+msgid "22"
+msgstr "22"
+
+#: ppdc/sample.c:375
+msgid "23"
+msgstr "23"
+
+#: ppdc/sample.c:376
+msgid "24"
+msgstr "24"
+
+#: ppdc/sample.c:241
+msgid "24-Pin Series"
+msgstr "Sèrie de 24 pins"
+
+#: ppdc/sample.c:250
+msgid "240x72dpi"
+msgstr "240x72ppp"
+
+#: ppdc/sample.c:377
+msgid "25"
+msgstr "25"
+
+#: ppdc/sample.c:338
+msgid "250 mm/sec."
+msgstr "250 mm/seg."
+
+#: ppdc/sample.c:378
+msgid "26"
+msgstr "26"
+
+#: ppdc/sample.c:379
+msgid "27"
+msgstr "27"
+
+#: ppdc/sample.c:380
+msgid "28"
+msgstr "28"
+
+#: ppdc/sample.c:381
+msgid "29"
+msgstr "29"
+
+#: ppdc/sample.c:314
+msgid "3"
+msgstr "3"
+
+#: ppdc/sample.c:386
+msgid "3 inches/sec."
+msgstr "3 polzades/seg."
+
+#: ppdc/sample.c:3
+msgid "3 x 5"
+msgstr "3 x 5"
+
+#: ppdc/sample.c:195
+msgid "3.00x1.00\""
+msgstr "3.00x1.00\""
+
+#: ppdc/sample.c:196
+msgid "3.00x1.25\""
+msgstr "3.00x1.25\""
+
+#: ppdc/sample.c:197
+msgid "3.00x2.00\""
+msgstr "3.00x2.00\""
+
+#: ppdc/sample.c:198
+msgid "3.00x3.00\""
+msgstr "3.00x3.00\""
+
+#: ppdc/sample.c:199
+msgid "3.00x5.00\""
+msgstr "3.00x5.00\""
+
+#: ppdc/sample.c:200
+msgid "3.25x2.00\""
+msgstr "3.25x2.00\""
+
+#: ppdc/sample.c:201
+msgid "3.25x5.00\""
+msgstr "3.25x5.00\""
+
+#: ppdc/sample.c:202
+msgid "3.25x5.50\""
+msgstr "3.25x5.50\""
+
+#: ppdc/sample.c:203
+msgid "3.25x5.83\""
+msgstr "3.25x5.83\""
+
+#: ppdc/sample.c:204
+msgid "3.25x7.83\""
+msgstr "3.25x7.83\""
+
+#: ppdc/sample.c:4
+msgid "3.5 x 5"
+msgstr "3.5 x 5"
+
+#: ppdc/sample.c:171
+msgid "3.5\" Disk"
+msgstr "Disc de 3.5\""
+
+#: ppdc/sample.c:205
+msgid "3.50x1.00\""
+msgstr "3.5x1.00\""
+
+#: ppdc/sample.c:382
+msgid "30"
+msgstr "30"
+
+#: ppdc/sample.c:330
+msgid "30 mm/sec."
+msgstr "30 mm/seg."
+
+#: ppdc/sample.c:339
+msgid "300 mm/sec."
+msgstr "300 mm/seg."
+
+#: ppdc/sample.c:234
+msgid "300dpi"
+msgstr "300ppp"
+
+#: ppdc/sample.c:410
+msgid "35"
+msgstr "35"
+
+#: ppdc/sample.c:246
+msgid "360dpi"
+msgstr "360ppp"
+
+#: ppdc/sample.c:245
+msgid "360x180dpi"
+msgstr "360x180ppp"
+
+#: ppdc/sample.c:315
+msgid "4"
+msgstr "4"
+
+#: ppdc/sample.c:387
+msgid "4 inches/sec."
+msgstr "4 polzades/seg."
+
+#: ppdc/sample.c:206
+msgid "4.00x1.00\""
+msgstr "4.00x1.00\""
+
+#: ppdc/sample.c:214
+msgid "4.00x13.00\""
+msgstr "4.00x13.00\""
+
+#: ppdc/sample.c:207
+msgid "4.00x2.00\""
+msgstr "4.00x2.00\""
+
+#: ppdc/sample.c:208
+msgid "4.00x2.50\""
+msgstr "4.00x2.50\""
+
+#: ppdc/sample.c:209
+msgid "4.00x3.00\""
+msgstr "4.00x3.00\""
+
+#: ppdc/sample.c:210
+msgid "4.00x4.00\""
+msgstr "4.00x4.00\""
+
+#: ppdc/sample.c:211
+msgid "4.00x5.00\""
+msgstr "4.00x5.00\""
+
+#: ppdc/sample.c:212
+msgid "4.00x6.00\""
+msgstr "4.00x6.00\""
+
+#: ppdc/sample.c:213
+msgid "4.00x6.50\""
+msgstr "4.00x6.50\""
+
+#: ppdc/sample.c:411
+msgid "40"
+msgstr "40"
+
+#: ppdc/sample.c:331
+msgid "40 mm/sec."
+msgstr "40 mm/seg."
+
+#: ppdc/sample.c:412
+msgid "45"
+msgstr "45"
+
+#: ppdc/sample.c:316
+msgid "5"
+msgstr "5"
+
+#: ppdc/sample.c:437
+msgid "5 inches/sec."
+msgstr "5 polzades/seg."
+
+#: ppdc/sample.c:5
+msgid "5 x 7"
+msgstr "15 x 11"
+
+#: ppdc/sample.c:413
+msgid "50"
+msgstr "50"
+
+#: ppdc/sample.c:414
+msgid "55"
+msgstr "55"
+
+#: ppdc/sample.c:317
+msgid "6"
+msgstr "6"
+
+#: ppdc/sample.c:438
+msgid "6 inches/sec."
+msgstr "6 polzades/seg."
+
+#: ppdc/sample.c:215
+msgid "6.00x1.00\""
+msgstr "6.00x1.00\""
+
+#: ppdc/sample.c:216
+msgid "6.00x2.00\""
+msgstr "6.00x2.00\""
+
+#: ppdc/sample.c:217
+msgid "6.00x3.00\""
+msgstr "6.00x3.00\""
+
+#: ppdc/sample.c:218
+msgid "6.00x4.00\""
+msgstr "6.00x4.00\""
+
+#: ppdc/sample.c:219
+msgid "6.00x5.00\""
+msgstr "6.00x5.00\""
+
+#: ppdc/sample.c:220
+msgid "6.00x6.00\""
+msgstr "6.00x6.00\""
+
+#: ppdc/sample.c:221
+msgid "6.00x6.50\""
+msgstr "6.00x6.50\""
+
+#: ppdc/sample.c:415
+msgid "60"
+msgstr "60"
+
+#: ppdc/sample.c:332
+msgid "60 mm/sec."
+msgstr "60 mm/seg."
+
+#: ppdc/sample.c:261
+msgid "600dpi"
+msgstr "600ppp"
+
+#: ppdc/sample.c:242
+msgid "60dpi"
+msgstr "60ppp"
+
+#: ppdc/sample.c:248
+msgid "60x72dpi"
+msgstr "60x72ppp"
+
+#: ppdc/sample.c:416
+msgid "65"
+msgstr "65"
+
+#: ppdc/sample.c:318
+msgid "7"
+msgstr "7"
+
+#: ppdc/sample.c:440
+msgid "7 inches/sec."
+msgstr "7 polzades/seg."
+
+#: ppdc/sample.c:11
+msgid "7 x 9"
+msgstr "7 x 9"
+
+#: ppdc/sample.c:417
+msgid "70"
+msgstr "70"
+
+#: ppdc/sample.c:252
+msgid "720dpi"
+msgstr "720ppp"
+
+#: ppdc/sample.c:418
+msgid "75"
+msgstr "75"
+
+#: ppdc/sample.c:319
+msgid "8"
+msgstr "8"
+
+#: ppdc/sample.c:441
+msgid "8 inches/sec."
+msgstr "8 polzades/seg."
+
+#: ppdc/sample.c:12
+msgid "8 x 10"
+msgstr "8 x 10"
+
+#: ppdc/sample.c:222
+msgid "8.00x1.00\""
+msgstr "8.00x1.00\""
+
+#: ppdc/sample.c:223
+msgid "8.00x2.00\""
+msgstr "8.00x2.00\""
+
+#: ppdc/sample.c:224
+msgid "8.00x3.00\""
+msgstr "8.00x3.00\""
+
+#: ppdc/sample.c:225
+msgid "8.00x4.00\""
+msgstr "8.00x4.00\""
+
+#: ppdc/sample.c:226
+msgid "8.00x5.00\""
+msgstr "8.00x5.00\""
+
+#: ppdc/sample.c:227
+msgid "8.00x6.00\""
+msgstr "8.00x6.00\""
+
+#: ppdc/sample.c:228
+msgid "8.00x6.50\""
+msgstr "8.00x6.50\""
+
+#: ppdc/sample.c:419
+msgid "80"
+msgstr "80"
+
+#: ppdc/sample.c:333
+msgid "80 mm/sec."
+msgstr "80 mm/seg."
+
+#: ppdc/sample.c:420
+msgid "85"
+msgstr "85"
+
+#: ppdc/sample.c:320
+msgid "9"
+msgstr "9"
+
+#: ppdc/sample.c:442
+msgid "9 inches/sec."
+msgstr "9 polzades/seg."
+
+#: ppdc/sample.c:13
+msgid "9 x 11"
+msgstr "9 x 11"
+
+#: ppdc/sample.c:14
+msgid "9 x 12"
+msgstr "9 x 12"
+
+#: ppdc/sample.c:247
+msgid "9-Pin Series"
+msgstr "Sèrie de 9 pins"
+
+#: ppdc/sample.c:421
+msgid "90"
+msgstr "90"
+
+#: ppdc/sample.c:422
+msgid "95"
+msgstr "95"
+
+#: berkeley/lpc.c:213
+msgid "?Invalid help command unknown."
+msgstr "?Comanda d'ajuda no vàlida desconeguda."
+
+#: cgi-bin/admin.c:2368
+msgid "A Samba password is required to export printer drivers"
+msgstr ""
+"Necessiteu una contrasenya de Samba per exportar els controladors "
+"d'impressora"
+
+#: cgi-bin/admin.c:2364
+msgid "A Samba username is required to export printer drivers"
+msgstr ""
+"Necessiteu una nom d'usuari de Samba per exportar els controladors "
+"d'impressora"
+
+#: scheduler/ipp.c:2283
+#, c-format
+msgid "A class named \"%s\" already exists."
+msgstr "Ja existeix una classe anomenada «%s»."
+
+#: scheduler/ipp.c:1004
+#, c-format
+msgid "A printer named \"%s\" already exists."
+msgstr "Ja existeix una impressora anomenada «%s»."
+
+#: ppdc/sample.c:15
+msgid "A0"
+msgstr "A0"
+
+#: ppdc/sample.c:16
+msgid "A0 Long Edge"
+msgstr "A0 costat llarg"
+
+#: ppdc/sample.c:17
+msgid "A1"
+msgstr "A1"
+
+#: ppdc/sample.c:18
+msgid "A1 Long Edge"
+msgstr "A1 costat llarg"
+
+#: ppdc/sample.c:37
+msgid "A10"
+msgstr "A10"
+
+#: ppdc/sample.c:19
+msgid "A2"
+msgstr "A2"
+
+#: ppdc/sample.c:20
+msgid "A2 Long Edge"
+msgstr "A2 costat llarg"
+
+#: ppdc/sample.c:21
+msgid "A3"
+msgstr "A3"
+
+#: ppdc/sample.c:22
+msgid "A3 Long Edge"
+msgstr "A3 costat llarg"
+
+#: ppdc/sample.c:23
+msgid "A3 Oversize"
+msgstr "A3 estès"
+
+#: ppdc/sample.c:24
+msgid "A3 Oversize Long Edge"
+msgstr "A3 estès pel costat llarg"
+
+#: ppdc/sample.c:25
+msgid "A4"
+msgstr "A4"
+
+#: ppdc/sample.c:27
+msgid "A4 Long Edge"
+msgstr "A4 costat llarg"
+
+#: ppdc/sample.c:26
+msgid "A4 Oversize"
+msgstr "A4 estès"
+
+#: ppdc/sample.c:28
+msgid "A4 Small"
+msgstr "A4 reduït"
+
+#: ppdc/sample.c:29
+msgid "A5"
+msgstr "A5"
+
+#: ppdc/sample.c:31
+msgid "A5 Long Edge"
+msgstr "A5 costat llarg"
+
+#: ppdc/sample.c:30
+msgid "A5 Oversize"
+msgstr "A5 estès"
+
+#: ppdc/sample.c:32
+msgid "A6"
+msgstr "A6"
+
+#: ppdc/sample.c:33
+msgid "A6 Long Edge"
+msgstr "A6 costat llarg"
+
+#: ppdc/sample.c:34
+msgid "A7"
+msgstr "A7"
+
+#: ppdc/sample.c:35
+msgid "A8"
+msgstr "A8"
+
+#: ppdc/sample.c:36
+msgid "A9"
+msgstr "A9"
+
+#: ppdc/sample.c:38
+msgid "ANSI A"
+msgstr "ANSI A"
+
+#: ppdc/sample.c:39
+msgid "ANSI B"
+msgstr "ANSI B"
+
+#: ppdc/sample.c:40
+msgid "ANSI C"
+msgstr "ANSI C"
+
+#: ppdc/sample.c:41
+msgid "ANSI D"
+msgstr "ANSI D"
+
+#: ppdc/sample.c:42
+msgid "ANSI E"
+msgstr "ANSI E"
+
+#: ppdc/sample.c:47
+msgid "ARCH C"
+msgstr "ARCH C"
+
+#: ppdc/sample.c:48
+msgid "ARCH C Long Edge"
+msgstr "ARCH C costat llarg"
+
+#: ppdc/sample.c:49
+msgid "ARCH D"
+msgstr "ARCH D"
+
+#: ppdc/sample.c:50
+msgid "ARCH D Long Edge"
+msgstr "ARCH D costat llarg"
+
+#: ppdc/sample.c:51
+msgid "ARCH E"
+msgstr "ARCH E"
+
+#: ppdc/sample.c:52
+msgid "ARCH E Long Edge"
+msgstr "ARCH E costat llarg"
+
+#: cgi-bin/classes.c:169 cgi-bin/printers.c:172
+msgid "Accept Jobs"
+msgstr "Accepta tasques"
+
+#: cups/http-support.c:1284
+msgid "Accepted"
+msgstr "Acceptada"
+
+#: cgi-bin/admin.c:570
+msgid "Add Class"
+msgstr "Afegeix una classe"
+
+#: cgi-bin/admin.c:882
+msgid "Add Printer"
+msgstr "Afegeix una impressora"
+
+#: cgi-bin/admin.c:444 cgi-bin/admin.c:477 cgi-bin/admin.c:525
+#: cgi-bin/admin.c:535
+msgid "Add RSS Subscription"
+msgstr "Afegeix una subscripció RSS"
+
+#: ppdc/sample.c:163
+msgid "Address"
+msgstr "Adreça"
+
+#: cgi-bin/admin.c:210 cgi-bin/admin.c:284 cgi-bin/admin.c:2745
+msgid "Administration"
+msgstr "Administració"
+
+#: ppdc/sample.c:429
+msgid "Always"
+msgstr "Sempre"
+
+#: backend/socket.c:129
+msgid "AppSocket/HP JetDirect"
+msgstr "AppSocket/HP JetDirect"
+
+#: ppdc/sample.c:450
+msgid "Applicator"
+msgstr "Aplicador"
+
+#: scheduler/ipp.c:1079
+#, c-format
+msgid "Attempt to set %s printer-state to bad value %d."
+msgstr ""
+"S'ha intentat posar l'estat de la impressora %s a un valor incorrecte %d."
+
+#: scheduler/ipp.c:325
+#, c-format
+msgid "Attribute groups are out of order (%x < %x)."
+msgstr "Grups d'atribut desordenats (%x < %x)."
+
+#: ppdc/sample.c:126
+msgid "B0"
+msgstr "B0"
+
+#: ppdc/sample.c:127
+msgid "B1"
+msgstr "B1"
+
+#: ppdc/sample.c:137
+msgid "B10"
+msgstr "B10"
+
+#: ppdc/sample.c:128
+msgid "B2"
+msgstr "B2"
+
+#: ppdc/sample.c:129
+msgid "B3"
+msgstr "B3"
+
+#: ppdc/sample.c:130
+msgid "B4"
+msgstr "B4"
+
+#: ppdc/sample.c:131
+msgid "B5"
+msgstr "B5"
+
+#: ppdc/sample.c:132
+msgid "B5 Oversize"
+msgstr "A5 estès"
+
+#: ppdc/sample.c:133
+msgid "B6"
+msgstr "B6"
+
+#: ppdc/sample.c:134
+msgid "B7"
+msgstr "B7"
+
+#: ppdc/sample.c:135
+msgid "B8"
+msgstr "B8"
+
+#: ppdc/sample.c:136
+msgid "B9"
+msgstr "B9"
+
+#: cups/dest.c:1680
+msgid "Bad NULL dests pointer"
+msgstr "El punter de dests NULL és incorrecte"
+
+#: cups/ppd.c:345
+msgid "Bad OpenGroup"
+msgstr "La OpenGroup és incorrecta"
+
+#: cups/ppd.c:347
+msgid "Bad OpenUI/JCLOpenUI"
+msgstr "La OpenUI/JCLOpenUI és incorrecta"
+
+#: cups/ppd.c:349
+msgid "Bad OrderDependency"
+msgstr "La OrderDependency és incorrecta"
+
+#: cups/ppd-cache.c:148 cups/ppd-cache.c:195 cups/ppd-cache.c:233
+#: cups/ppd-cache.c:239 cups/ppd-cache.c:255 cups/ppd-cache.c:271
+#: cups/ppd-cache.c:280 cups/ppd-cache.c:288 cups/ppd-cache.c:305
+#: cups/ppd-cache.c:313 cups/ppd-cache.c:328 cups/ppd-cache.c:336
+#: cups/ppd-cache.c:354 cups/ppd-cache.c:366 cups/ppd-cache.c:381
+#: cups/ppd-cache.c:393 cups/ppd-cache.c:415 cups/ppd-cache.c:423
+#: cups/ppd-cache.c:441 cups/ppd-cache.c:449 cups/ppd-cache.c:464
+#: cups/ppd-cache.c:472 cups/ppd-cache.c:490 cups/ppd-cache.c:498
+#: cups/ppd-cache.c:525 cups/ppd-cache.c:571 cups/ppd-cache.c:579
+#: cups/ppd-cache.c:587
+msgid "Bad PPD cache file."
+msgstr "El fitxer PPD de memòria cau és incorrecte."
+
+#: cups/http-support.c:1299
+msgid "Bad Request"
+msgstr "La petició és incorrecta"
+
+#: cups/snmp.c:1002
+msgid "Bad SNMP version number"
+msgstr "El número de versió del SNMP és incorrecte"
+
+#: cups/ppd.c:350
+msgid "Bad UIConstraints"
+msgstr "La UIConstraints és incorrecta"
+
+#: scheduler/ipp.c:1380
+#, c-format
+msgid "Bad copies value %d."
+msgstr "El valor de copies %d és incorrecte"
+
+#: cups/ppd.c:358
+msgid "Bad custom parameter"
+msgstr "El paràmetre personalitzat és incorrecte"
+
+#: cups/http-support.c:1451 scheduler/ipp.c:2350
+#, c-format
+msgid "Bad device-uri \"%s\"."
+msgstr "La device-uri «%s» és incorrecta."
+
+#: scheduler/ipp.c:2391
+#, c-format
+msgid "Bad device-uri scheme \"%s\"."
+msgstr "L'esquema «%s» de la device-uri és incorrecte."
+
+#: scheduler/ipp.c:8224 scheduler/ipp.c:8240 scheduler/ipp.c:9454
+#: scheduler/ipp.c:10968
+#, c-format
+msgid "Bad document-format \"%s\"."
+msgstr "La document-format «%s» és incorrecta."
+
+#: scheduler/ipp.c:9470
+#, c-format
+msgid "Bad document-format-default \"%s\"."
+msgstr "La document-format-default «%s» és incorrecta."
+
+#: cups/util.c:929
+msgid "Bad filename buffer"
+msgstr "El nom del fitxer de la memòria cau és incorrecte"
+
+#: scheduler/ipp.c:10060
+msgid "Bad job-priority value."
+msgstr "El valor de la job-priority és incorrecte."
+
+#: scheduler/ipp.c:1410
+#, c-format
+msgid "Bad job-sheets value \"%s\"."
+msgstr "El valor «%s» de la job-sheets és incorrecte."
+
+#: scheduler/ipp.c:1394
+msgid "Bad job-sheets value type."
+msgstr "El tipus de valor de la job-sheets és incorrecte."
+
+#: scheduler/ipp.c:10090
+msgid "Bad job-state value."
+msgstr "El valor de la job-state és incorrecte."
+
+#: scheduler/ipp.c:2974 scheduler/ipp.c:3426 scheduler/ipp.c:6078
+#: scheduler/ipp.c:6225 scheduler/ipp.c:7658 scheduler/ipp.c:7927
+#: scheduler/ipp.c:8775 scheduler/ipp.c:9001 scheduler/ipp.c:9350
+#: scheduler/ipp.c:9953
+#, c-format
+msgid "Bad job-uri \"%s\"."
+msgstr "La job-uri «%s» és incorrecta."
+
+#: scheduler/ipp.c:2049 scheduler/ipp.c:5622
+#, c-format
+msgid "Bad notify-pull-method \"%s\"."
+msgstr "La notify-pull-method «%s» és incorrecta."
+
+#: scheduler/ipp.c:2013 scheduler/ipp.c:5586
+#, c-format
+msgid "Bad notify-recipient-uri \"%s\"."
+msgstr "La notify-recipient-uri «%s» és incorrecta."
+
+#: scheduler/ipp.c:1426
+#, c-format
+msgid "Bad number-up value %d."
+msgstr "El valor de number-up %d és incorrecte."
+
+#: cups/adminutil.c:292
+#, c-format
+msgid "Bad option + choice on line %d."
+msgstr "L'opció + elecció de la línia %d és incorrecta."
+
+#: scheduler/ipp.c:1443
+#, c-format
+msgid "Bad page-ranges values %d-%d."
+msgstr "Els valors de page-ranges %d-%d són incorrectes."
+
+#: scheduler/ipp.c:2434
+#, c-format
+msgid "Bad port-monitor \"%s\"."
+msgstr "La port-monitor «%s» és incorrecta."
+
+#: cups/dest.c:676 cups/dest.c:1333
+msgid "Bad printer URI."
+msgstr "L'URI de la impressora és incorrecte."
+
+#: scheduler/ipp.c:2495
+#, c-format
+msgid "Bad printer-state value %d."
+msgstr "El valor %d de printer-state és incorrecte."
+
+#: scheduler/ipp.c:293
+#, c-format
+msgid "Bad request ID %d."
+msgstr "L'Identificador %d de la sol·licitud és incorrecte."
+
+#: scheduler/ipp.c:278
+#, c-format
+msgid "Bad request version number %d.%d."
+msgstr "El número de versió %d.%d de la sol·licitud és incorrecte."
+
+#: cgi-bin/admin.c:1484
+msgid "Bad subscription ID"
+msgstr "L'identificador de la subscripció és incorrecte."
+
+#: cups/ppd.c:360
+msgid "Bad value string"
+msgstr "El valor de la cadena és incorrecte"
+
+#: cgi-bin/admin.c:3290 cgi-bin/admin.c:3536
+msgid "Banners"
+msgstr "Bàners"
+
+#: ppdc/sample.c:287
+msgid "Bond Paper"
+msgstr "Paper de valors"
+
+#: backend/usb-darwin.c:1846
+#, c-format
+msgid "Boolean expected for waiteof option \"%s\"."
+msgstr "S'esperava un booleà per l'opció waiteof «%s»."
+
+#: filter/pstops.c:2057
+msgid "Buffer overflow detected, aborting."
+msgstr "S'ha detectat un desbordament la memòria cau. S'interromp."
+
+#: ppdc/sample.c:254
+msgid "CMYK"
+msgstr "CMYK"
+
+#: ppdc/sample.c:363
+msgid "CPCL Label Printer"
+msgstr "Impressora d'etiquetes CPCL"
+
+#: cgi-bin/admin.c:1485 cgi-bin/admin.c:1524 cgi-bin/admin.c:1534
+msgid "Cancel RSS Subscription"
+msgstr "Cancel·la la subscripció RSS"
+
+#: backend/ipp.c:1921
+msgid "Canceling print job."
+msgstr "Es cancel·la la tasca."
+
+#: scheduler/ipp.c:2475
+msgid "Cannot share a remote Kerberized printer."
+msgstr "No es pot compartir una impressora remota sobre Kerberos."
+
+#: ppdc/sample.c:279
+msgid "Cassette"
+msgstr "Classet"
+
+#: cgi-bin/admin.c:1655 cgi-bin/admin.c:1797 cgi-bin/admin.c:1810
+#: cgi-bin/admin.c:1821
+msgid "Change Settings"
+msgstr "Canvia la configuració"
+
+#: scheduler/ipp.c:2061 scheduler/ipp.c:5634
+#, c-format
+msgid "Character set \"%s\" not supported."
+msgstr "No es permet l'ús del grup de caràcters «%s»."
+
+#: cgi-bin/classes.c:195 cgi-bin/classes.c:322
+msgid "Classes"
+msgstr "Classes"
+
+#: cgi-bin/printers.c:182
+msgid "Clean Print Heads"
+msgstr "Neteja els capçals de la impressora"
+
+#: scheduler/ipp.c:3878
+msgid "Close-Job doesn't support the job-uri attribute."
+msgstr "Close-Job no permet l'ús de l'atribut job-uri."
+
+#: ppdc/sample.c:282
+msgid "Color"
+msgstr "Color"
+
+#: ppdc/sample.c:253
+msgid "Color Mode"
+msgstr "Mode de color"
+
+#: berkeley/lpc.c:204
+msgid ""
+"Commands may be abbreviated. Commands are:\n"
+"\n"
+"exit help quit status ?"
+msgstr ""
+"Les ordres han de ser abreujades. Poden ser:\n"
+"\n"
+"exit help quit status ?"
+
+#: cups/snmp.c:1006
+msgid "Community name uses indefinite length"
+msgstr "Els noms de comunitat tenen longitud indefinida"
+
+#: backend/ipp.c:786 backend/lpd.c:871 backend/socket.c:395
+msgid "Connected to printer."
+msgstr "S'ha connectat a la impressora."
+
+#: backend/ipp.c:691 backend/lpd.c:694 backend/socket.c:314
+msgid "Connecting to printer."
+msgstr "Es connecta a la impressora."
+
+#: cups/http-support.c:1272
+msgid "Continue"
+msgstr "Continua"
+
+#: ppdc/sample.c:365
+msgid "Continuous"
+msgstr "Contínua"
+
+#: backend/lpd.c:1020 backend/lpd.c:1152
+msgid "Control file sent successfully."
+msgstr "El fitxer de control s'ha enviat correctament."
+
+#: backend/ipp.c:1233 backend/lpd.c:464
+msgid "Copying print data."
+msgstr "Es copien les dades d'impressió."
+
+#: cups/http-support.c:1281
+msgid "Created"
+msgstr "Creat"
+
+#: cups/ppd.c:1113 cups/ppd.c:1153 cups/ppd.c:1398 cups/ppd.c:1501
+msgid "Custom"
+msgstr "Personalitzat"
+
+#: ppdc/sample.c:359
+msgid "CustominCutInterval"
+msgstr "CustominCutInterval"
+
+#: ppdc/sample.c:357
+msgid "CustominTearInterval"
+msgstr "CustominTearInterval"
+
+#: ppdc/sample.c:343
+msgid "Cut"
+msgstr "Tall"
+
+#: ppdc/sample.c:451
+msgid "Cutter"
+msgstr "Ganiveta"
+
+#: ppdc/sample.c:239
+msgid "Dark"
+msgstr "Fosc"
+
+#: ppdc/sample.c:235
+msgid "Darkness"
+msgstr "Foscor"
+
+#: backend/lpd.c:1105
+msgid "Data file sent successfully."
+msgstr "El fitxer de dades s'ha enviat correctament."
+
+#: cgi-bin/admin.c:2094 cgi-bin/admin.c:2105 cgi-bin/admin.c:2150
+msgid "Delete Class"
+msgstr "Elimina la classe"
+
+#: cgi-bin/admin.c:2179 cgi-bin/admin.c:2190 cgi-bin/admin.c:2235
+msgid "Delete Printer"
+msgstr "Elimina la impressora"
+
+#: ppdc/sample.c:281
+msgid "DeskJet Series"
+msgstr "Sèrie Deskjet"
+
+#: scheduler/ipp.c:1346
+#, c-format
+msgid "Destination \"%s\" is not accepting jobs."
+msgstr "El Destí «%s» no accepta tasques."
+
+#: systemv/lpinfo.c:300
+#, c-format
+msgid ""
+"Device: uri = %s\n"
+" class = %s\n"
+" info = %s\n"
+" make-and-model = %s\n"
+" device-id = %s\n"
+" location = %s"
+msgstr ""
+"Dispositiu: uri = %s\n"
+" classe = %s\n"
+" informació = %s\n"
+" fabricant i model = %s\n"
+" identificador = %s\n"
+" ubicació = %s"
+
+#: ppdc/sample.c:436
+msgid "Direct Thermal Media"
+msgstr "Paper per impressió tèrmica directa"
+
+#: cups/file.c:296
+#, c-format
+msgid "Directory \"%s\" contains a relative path."
+msgstr "El directori «%s» conté un camí relatiu."
+
+#: cups/file.c:268
+#, c-format
+msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
+msgstr "El directori «%s» té permisos que no són segurs (0%o/uid=%d/gid=%d)."
+
+#: cups/file.c:285
+#, c-format
+msgid "Directory \"%s\" is a file."
+msgstr "El directori «%s» és un fitxer."
+
+#: cups/file.c:256
+#, c-format
+msgid "Directory \"%s\" not available: %s"
+msgstr "El directori «%s» no està disponible: %s"
+
+#: cups/file.c:241
+#, c-format
+msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
+msgstr "El directori «%s» té els permisos correctes (0%o/uid=%d/gid=%d)."
+
+#: ppdc/sample.c:345
+msgid "Disabled"
+msgstr "Desabilitat"
+
+#: scheduler/ipp.c:6127
+#, c-format
+msgid "Document #%d does not exist in job #%d."
+msgstr "No s'ha trobat el document #%d a la tasca #%d."
+
+#: ppdc/sample.c:275
+msgid "Duplexer"
+msgstr "Unitat d'impressió a dues cares"
+
+#: ppdc/sample.c:229
+msgid "Dymo"
+msgstr "Dymo"
+
+#: ppdc/sample.c:431
+msgid "EPL1 Label Printer"
+msgstr "Impressora d'etiquetes EPL1"
+
+#: ppdc/sample.c:434
+msgid "EPL2 Label Printer"
+msgstr "Impressora d'etiquetes EPL2"
+
+#: cgi-bin/admin.c:1849 cgi-bin/admin.c:1861 cgi-bin/admin.c:1915
+#: cgi-bin/admin.c:1922 cgi-bin/admin.c:1957 cgi-bin/admin.c:1970
+#: cgi-bin/admin.c:1994 cgi-bin/admin.c:2067
+msgid "Edit Configuration File"
+msgstr "Edita el fitxer de configuració"
+
+#: cups/adminutil.c:337
+msgid "Empty PPD file."
+msgstr "El fitxer PPD és buit."
+
+#. TRANSLATORS: Banner/cover sheet after the print job.
+#: cgi-bin/admin.c:3561
+msgid "Ending Banner"
+msgstr "S'està acabant el bàner"
+
+#: ppdc/sample.c:2
+msgid "English"
+msgstr "Anglès"
+
+#: systemv/lppasswd.c:193
+msgid "Enter old password:"
+msgstr "Introduïu la contrasenya antiga:"
+
+#: systemv/lppasswd.c:224
+msgid "Enter password again:"
+msgstr "Introduïu la contrasenya un altre cop:"
+
+#: systemv/lppasswd.c:212
+msgid "Enter password:"
+msgstr "Introduïu la contrasenya:"
+
+#: scheduler/client.c:2427
+msgid ""
+"Enter your username and password or the root username and password to access "
+"this page. If you are using Kerberos authentication, make sure you have a "
+"valid Kerberos ticket."
+msgstr ""
+"Introduïu el vostre nom d'usuari i contrasenya o el nom d'usuari i la "
+"contrasenya de root per accedir a aquesta pàgina. Si feu servir "
+"l'autenticació Kerberos, assegureu-vos de tenir un tiquet Kerberos que sigui "
+"vàlid."
+
+#: ppdc/sample.c:73
+msgid "Envelope #10 "
+msgstr "Sobre #10"
+
+#: ppdc/sample.c:74
+msgid "Envelope #11"
+msgstr "Sobre #11"
+
+#: ppdc/sample.c:75
+msgid "Envelope #12"
+msgstr "Sobre #12"
+
+#: ppdc/sample.c:76
+msgid "Envelope #14"
+msgstr "Sobre #14"
+
+#: ppdc/sample.c:77
+msgid "Envelope #9"
+msgstr "Sobre #9"
+
+#: ppdc/sample.c:89
+msgid "Envelope B4"
+msgstr "Sobre B4"
+
+#: ppdc/sample.c:90
+msgid "Envelope B5"
+msgstr "Sobre B5"
+
+#: ppdc/sample.c:91
+msgid "Envelope B6"
+msgstr "Sobre B6"
+
+#: ppdc/sample.c:78
+msgid "Envelope C0"
+msgstr "Sobre C0"
+
+#: ppdc/sample.c:79
+msgid "Envelope C1"
+msgstr "Sobre C1"
+
+#: ppdc/sample.c:80
+msgid "Envelope C2"
+msgstr "Sobre C2"
+
+#: ppdc/sample.c:81
+msgid "Envelope C3"
+msgstr "Sobre C3"
+
+#: ppdc/sample.c:67
+msgid "Envelope C4"
+msgstr "Sobre C4"
+
+#: ppdc/sample.c:68
+msgid "Envelope C5"
+msgstr "Sobre C5"
+
+#: ppdc/sample.c:69
+msgid "Envelope C6"
+msgstr "Sobre C6"
+
+#: ppdc/sample.c:82
+msgid "Envelope C65"
+msgstr "Sobre C65"
+
+#: ppdc/sample.c:83
+msgid "Envelope C7"
+msgstr "Sobre C7"
+
+#: ppdc/sample.c:84
+msgid "Envelope Choukei 3"
+msgstr "Sobre Choukei 3"
+
+#: ppdc/sample.c:85
+msgid "Envelope Choukei 3 Long Edge"
+msgstr "Sobre Choukei 3 costat llarg"
+
+#: ppdc/sample.c:86
+msgid "Envelope Choukei 4"
+msgstr "Sobre Choukei 4"
+
+#: ppdc/sample.c:87
+msgid "Envelope Choukei 4 Long Edge"
+msgstr "Sobre Choukei 4 costat llarg"
+
+#: ppdc/sample.c:70
+msgid "Envelope DL"
+msgstr "Sobre DL"
+
+#: ppdc/sample.c:269
+msgid "Envelope Feed"
+msgstr "Alimentació de sobres"
+
+#: ppdc/sample.c:88
+msgid "Envelope Invite"
+msgstr "Sobre d'invitació"
+
+#: ppdc/sample.c:92
+msgid "Envelope Italian"
+msgstr "Sobre italià"
+
+#: ppdc/sample.c:93
+msgid "Envelope Kaku2"
+msgstr "Sobre Kaku2"
+
+#: ppdc/sample.c:94
+msgid "Envelope Kaku2 Long Edge"
+msgstr "Sobre Kaku2 costat llarg"
+
+#: ppdc/sample.c:95
+msgid "Envelope Kaku3"
+msgstr "Sobre Kaku3"
+
+#: ppdc/sample.c:96
+msgid "Envelope Kaku3 Long Edge"
+msgstr "Sobre Kaku3 costat llarg"
+
+#: ppdc/sample.c:97
+msgid "Envelope Monarch"
+msgstr "Sobre monarch"
+
+#: ppdc/sample.c:99
+msgid "Envelope PRC1 "
+msgstr "Sobre PRC1"
+
+#: ppdc/sample.c:100
+msgid "Envelope PRC1 Long Edge"
+msgstr "Sobre PRC1 costat llarg"
+
+#: ppdc/sample.c:117
+msgid "Envelope PRC10"
+msgstr "Sobre PRC10"
+
+#: ppdc/sample.c:118
+msgid "Envelope PRC10 Long Edge"
+msgstr "Sobre PRC10 costat llarg"
+
+#: ppdc/sample.c:101
+msgid "Envelope PRC2"
+msgstr "Sobre PRC2"
+
+#: ppdc/sample.c:102
+msgid "Envelope PRC2 Long Edge"
+msgstr "Sobre PRC2 costat llarg"
+
+#: ppdc/sample.c:103
+msgid "Envelope PRC3"
+msgstr "Sobre PRC3"
+
+#: ppdc/sample.c:104
+msgid "Envelope PRC3 Long Edge"
+msgstr "Sobre PRC3 costat llarg"
+
+#: ppdc/sample.c:105
+msgid "Envelope PRC4"
+msgstr "Sobre PRC4"
+
+#: ppdc/sample.c:106
+msgid "Envelope PRC4 Long Edge"
+msgstr "Sobre PRC4 costat llarg"
+
+#: ppdc/sample.c:108
+msgid "Envelope PRC5 Long Edge"
+msgstr "Sobre PRC5 costat llarg"
+
+#: ppdc/sample.c:107
+msgid "Envelope PRC5PRC5"
+msgstr "Sobre PRC5"
+
+#: ppdc/sample.c:109
+msgid "Envelope PRC6"
+msgstr "Sobre PRC6"
+
+#: ppdc/sample.c:110
+msgid "Envelope PRC6 Long Edge"
+msgstr "Sobre PRC6 costat llarg"
+
+#: ppdc/sample.c:111
+msgid "Envelope PRC7"
+msgstr "Sobre PRC7"
+
+#: ppdc/sample.c:112
+msgid "Envelope PRC7 Long Edge"
+msgstr "Sobre PRC7 costat llarg"
+
+#: ppdc/sample.c:113
+msgid "Envelope PRC8"
+msgstr "Sobre PRC8"
+
+#: ppdc/sample.c:114
+msgid "Envelope PRC8 Long Edge"
+msgstr "Sobre PRC8 costat llarg"
+
+#: ppdc/sample.c:115
+msgid "Envelope PRC9"
+msgstr "Sobre PRC9"
+
+#: ppdc/sample.c:116
+msgid "Envelope PRC9 Long Edge"
+msgstr "Sobre PRC9 costat llarg"
+
+#: ppdc/sample.c:98
+msgid "Envelope Personal"
+msgstr "Sobre personalitzat"
+
+#: ppdc/sample.c:119
+msgid "Envelope You4"
+msgstr "Sobre You4"
+
+#: ppdc/sample.c:120
+msgid "Envelope You4 Long Edge"
+msgstr "Sobre You4 costat llarg"
+
+#: ppdc/sample.c:240
+msgid "Epson"
+msgstr "Epson"
+
+#: cgi-bin/admin.c:3604
+msgid "Error Policy"
+msgstr "Normes d'error"
+
+#: filter/rastertopwg.c:403 filter/rastertopwg.c:418 filter/rastertopwg.c:429
+#: filter/rastertopwg.c:440
+msgid "Error sending raster data."
+msgstr "S'ha produït un error quan s'enviaven les dades de la trama."
+
+#: systemv/lpinfo.c:103 systemv/lpmove.c:88
+msgid "Error: need hostname after \"-h\" option."
+msgstr "ERROR: es necessita un nom d'amfitrió després de l'opció «-h»."
+
+#: ppdc/sample.c:355
+msgid "Every 10 Labels"
+msgstr "Cada 10 etiquetes"
+
+#: ppdc/sample.c:347
+msgid "Every 2 Labels"
+msgstr "Cada 2 etiquetes"
+
+#: ppdc/sample.c:348
+msgid "Every 3 Labels"
+msgstr "Cada 3 etiquetes"
+
+#: ppdc/sample.c:349
+msgid "Every 4 Labels"
+msgstr "Cada 4 etiquetes"
+
+#: ppdc/sample.c:350
+msgid "Every 5 Labels"
+msgstr "Cada 5 etiquetes"
+
+#: ppdc/sample.c:351
+msgid "Every 6 Labels"
+msgstr "Cada 6 etiquetes"
+
+#: ppdc/sample.c:352
+msgid "Every 7 Labels"
+msgstr "Cada 7 etiquetes"
+
+#: ppdc/sample.c:353
+msgid "Every 8 Labels"
+msgstr "Cada 8 etiquetes"
+
+#: ppdc/sample.c:354
+msgid "Every 9 Labels"
+msgstr "Cada 9 etiquetes"
+
+#: ppdc/sample.c:346
+msgid "Every Label"
+msgstr "Cada etiqueta"
+
+#: ppdc/sample.c:121
+msgid "Executive"
+msgstr "Executiu"
+
+#: cups/http-support.c:1327
+msgid "Expectation Failed"
+msgstr "Ha fallat la condició del valor que s'esperava"
+
+#: cgi-bin/admin.c:2356 cgi-bin/admin.c:2375
+msgid "Export Printers to Samba"
+msgstr "Exportar les impressores al Samba"
+
+#: systemv/cupstestdsc.c:172 systemv/cupstestdsc.c:189
+#: systemv/cupstestdsc.c:214 systemv/cupstestdsc.c:231
+#: systemv/cupstestdsc.c:255 systemv/cupstestdsc.c:273
+#: systemv/cupstestdsc.c:302 systemv/cupstestdsc.c:339
+#: systemv/cupstestdsc.c:349 systemv/cupstestdsc.c:359
+#: systemv/cupstestdsc.c:369 systemv/cupstestdsc.c:379
+#: systemv/cupstestdsc.c:387
+msgid "FAIL"
+msgstr "ERROR"
+
+#: ppdc/sample.c:122
+msgid "FanFold German"
+msgstr "Paper continu alemany"
+
+#: ppdc/sample.c:123
+msgid "FanFold Legal German"
+msgstr "Paper continu legal alemany"
+
+#: ppdc/sample.c:124
+msgid "Fanfold US"
+msgstr "Paper continu americà"
+
+#: cups/file.c:300
+#, c-format
+msgid "File \"%s\" contains a relative path."
+msgstr "El fitxer «%s» conté un camí relatiu."
+
+#: cups/file.c:275
+#, c-format
+msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
+msgstr "El fitxer «%s» té permisos que no són segurs (0%o/uid=%d/gid=%d)."
+
+#: cups/file.c:289
+#, c-format
+msgid "File \"%s\" is a directory."
+msgstr "El fitxer «%s» és un directori."
+
+#: cups/file.c:261
+#, c-format
+msgid "File \"%s\" not available: %s"
+msgstr "El fitxer «%s» no està disponible: %s"
+
+#: cups/file.c:247
+#, c-format
+msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
+msgstr "El fitxer «%s» té els permisos correctes (0%o/uid=%d/gid=%d)."
+
+#: ppdc/sample.c:169
+msgid "File Folder "
+msgstr "Carpeta d'arxivador "
+
+#: scheduler/ipp.c:2370
+#, c-format
+msgid ""
+"File device URIs have been disabled. To enable, see the FileDevice directive "
+"in \"%s/cupsd.conf\"."
+msgstr ""
+"S'han deshabilitat els URIs dels dispositius de fitxers. Per habilitar-los, "
+"vegeu la directriu FileDevice a «%s/cupsd.conf»."
+
+#: filter/rastertoepson.c:1117 filter/rastertohp.c:845
+#: filter/rastertolabel.c:1273
+#, c-format
+msgid "Finished page %d."
+msgstr "S'ha acabat la pàgina %d."
+
+#: ppdc/sample.c:125
+msgid "Folio"
+msgstr "Foli"
+
+#: cups/http-support.c:1306
+msgid "Forbidden"
+msgstr "Prohibit"
+
+#: cups/ppd.c:742 cups/ppd.c:1302
+msgid "General"
+msgstr "General"
+
+#: ppdc/sample.c:259
+msgid "Generic"
+msgstr "Genèric"
+
+#: cups/snmp.c:1016
+msgid "Get-Response-PDU uses indefinite length"
+msgstr "La Get-Response-PDU fa servir una longitud indefinida"
+
+#: ppdc/sample.c:290
+msgid "Glossy Paper"
+msgstr "Paper fotogràfic"
+
+#: scheduler/ipp.c:2952 scheduler/ipp.c:3352 scheduler/ipp.c:3890
+#: scheduler/ipp.c:6056 scheduler/ipp.c:6203 scheduler/ipp.c:7635
+#: scheduler/ipp.c:8753 scheduler/ipp.c:8979 scheduler/ipp.c:9328
+#: scheduler/ipp.c:9931
+msgid "Got a printer-uri attribute but no job-id."
+msgstr "S'ha obtingut l'atribut printer-uri però no el job-id."
+
+#: ppdc/sample.c:255
+msgid "Grayscale"
+msgstr "Escala de grisos"
+
+#: ppdc/sample.c:280
+msgid "HP"
+msgstr "HP"
+
+#: ppdc/sample.c:170
+msgid "Hanging Folder"
+msgstr "Carpeta per penjar"
+
+#: cgi-bin/help.c:143
+msgid "Help file not in index."
+msgstr "El fitxer d'ajuda no és a l'índex."
+
+#: cups/ipp.c:2687 cups/ipp.c:2714 cups/ipp.c:2737
+msgid "IPP 1setOf attribute with incompatible value tags."
+msgstr ""
+"L'atribut 1setOf del IPP té etiquetes amb valors que no són compatibles."
+
+#: cups/ipp.c:2650
+msgid "IPP attribute has no name."
+msgstr "L'atribut del IPP no té nom."
+
+#: cups/ipp.c:5487
+msgid "IPP attribute is not a member of the message."
+msgstr "L'atribut del IPP no és membre del missatge."
+
+#: cups/ipp.c:3083
+msgid "IPP begCollection value not 0 bytes."
+msgstr "El valor de begColletion del IPP no té 0 bytes."
+
+#: cups/ipp.c:2873
+msgid "IPP boolean value not 1 byte."
+msgstr "El valor booleà del IPP no té 1 byte."
+
+#: cups/ipp.c:2934
+msgid "IPP date value not 11 bytes."
+msgstr "El valor de date del IPP no té 11 bytes."
+
+#: cups/ipp.c:3104
+msgid "IPP endCollection value not 0 bytes."
+msgstr "El valor de endColletion del IPP no té 0 bytes."
+
+#: cups/ipp.c:2848
+msgid "IPP enum value not 4 bytes."
+msgstr "El valor de enum del IPP no té 4 bytes."
+
+#: cups/ipp.c:2579
+msgid "IPP extension tag larger than 0x7FFFFFFF."
+msgstr "La etiqueta d'extension del IPP és més llarga de 0x7FFFFFFF."
+
+#: cups/ipp.c:2845
+msgid "IPP integer value not 4 bytes."
+msgstr "El valor enter de IPP no té 4 bytes."
+
+#: cups/ipp.c:3045
+msgid "IPP language length overflows value."
+msgstr "El valor de la longitud del llenguatge del IPP desborda."
+
+#: cups/ipp.c:2764
+msgid "IPP member name is not empty."
+msgstr "El nom del membre del IPP no està buit."
+
+#: cups/ipp.c:3122
+msgid "IPP memberName value is empty."
+msgstr "El valor de memberName de l'IPP està buit."
+
+#: cups/ipp.c:2633
+msgid "IPP name larger than 32767 bytes."
+msgstr "EL nom del IPP és més llarg de 32767 bytes."
+
+#: cups/ipp.c:3011
+msgid "IPP nameWithLanguage value less than minimum 4 bytes."
+msgstr ""
+"El valor de nameWithLanguage del IPP és més petit que el mínim, 4 bytes."
+
+#: cups/ipp.c:2979
+msgid "IPP rangeOfInteger value not 8 bytes."
+msgstr "El valor de rangeOfInteger del IPP no té 8 bytes."
+
+#: cups/ipp.c:2952
+msgid "IPP resolution value not 9 bytes."
+msgstr "El valor de resolution del IPP no té 9 bytes."
+
+#: cups/ipp.c:3063
+msgid "IPP string length overflows value."
+msgstr "El valor de la longitud de la cadena del IPP desborda."
+
+#: cups/ipp.c:3007
+msgid "IPP textWithLanguage value less than minimum 4 bytes."
+msgstr ""
+"EL valor de textWithLanguage del IPP és més petit que el mínim, 4 bytes."
+
+#: cups/ipp.c:2831
+msgid "IPP value larger than 32767 bytes."
+msgstr "El valor del IPP és més llarg de 32767 bytes."
+
+#: ppdc/sample.c:1
+msgid "ISOLatin1"
+msgstr "ISOLatin1"
+
+#: cups/ppd.c:353
+msgid "Illegal control character"
+msgstr "Caràcter de control no permès"
+
+#: cups/ppd.c:354
+msgid "Illegal main keyword string"
+msgstr "Cadena de paraula clau principal no permesa"
+
+#: cups/ppd.c:355
+msgid "Illegal option keyword string"
+msgstr "Cadena de paraula clau d'opció no permesa"
+
+#: cups/ppd.c:356
+msgid "Illegal translation string"
+msgstr "Cadena de traducció no permesa"
+
+#: cups/ppd.c:357
+msgid "Illegal whitespace character"
+msgstr "Caràcter d'espai en blanc no permés"
+
+#: ppdc/sample.c:274
+msgid "Installable Options"
+msgstr "Opcions instal·lables"
+
+#: ppdc/sample.c:277
+msgid "Installed"
+msgstr "Instal·lat"
+
+#: ppdc/sample.c:293
+msgid "IntelliBar Label Printer"
+msgstr "Impressora d'etiquetes IntelliBar"
+
+#: ppdc/sample.c:292
+msgid "Intellitech"
+msgstr "Intellitech"
+
+#: cups/http-support.c:1333
+msgid "Internal Server Error"
+msgstr "Error intern del servidor"
+
+#: cups/ppd.c:344
+msgid "Internal error"
+msgstr "Error intern"
+
+#: ppdc/sample.c:167
+msgid "Internet Postage 2-Part"
+msgstr "Franqueig per Internet en 2 parts"
+
+#: ppdc/sample.c:168
+msgid "Internet Postage 3-Part"
+msgstr "Franqueig per Internet en 3 parts"
+
+#: backend/ipp.c:307
+msgid "Internet Printing Protocol"
+msgstr "Protocol d'impressió per Internet"
+
+#: cups/dest-options.c:839
+msgid "Invalid media size."
+msgstr "Mida del suport no vàlida."
+
+#: filter/commandtops.c:125
+#, c-format
+msgid "Invalid printer command \"%s\"."
+msgstr "La comanda de la impressora «%s» no és vàlida."
+
+#: cups/ppd.c:1420
+msgid "JCL"
+msgstr "Llenguatge de control de tasques (JCL)"
+
+#: ppdc/sample.c:53
+msgid "JIS B0"
+msgstr "JIS B0"
+
+#: ppdc/sample.c:55
+msgid "JIS B1"
+msgstr "JIS B1"
+
+#: ppdc/sample.c:54
+msgid "JIS B10"
+msgstr "JIS B10"
+
+#: ppdc/sample.c:56
+msgid "JIS B2"
+msgstr "JIS B2"
+
+#: ppdc/sample.c:57
+msgid "JIS B3"
+msgstr "JIS B3"
+
+#: ppdc/sample.c:58
+msgid "JIS B4"
+msgstr "JIS B4"
+
+#: ppdc/sample.c:59
+msgid "JIS B4 Long Edge"
+msgstr "JIS B4 costat llarg"
+
+#: ppdc/sample.c:60
+msgid "JIS B5"
+msgstr "JIS B5"
+
+#: ppdc/sample.c:61
+msgid "JIS B5 Long Edge"
+msgstr "JIS B5 costat llarg"
+
+#: ppdc/sample.c:62
+msgid "JIS B6"
+msgstr "JIS B6"
+
+#: ppdc/sample.c:63
+msgid "JIS B6 Long Edge"
+msgstr "JIS B6 costat llarg"
+
+#: ppdc/sample.c:64
+msgid "JIS B7"
+msgstr "JIS B7"
+
+#: ppdc/sample.c:65
+msgid "JIS B8"
+msgstr "JIS B8"
+
+#: ppdc/sample.c:66
+msgid "JIS B9"
+msgstr "JIS B9"
+
+#: scheduler/ipp.c:9051
+#, c-format
+msgid "Job #%d cannot be restarted - no files."
+msgstr "La tasca #%d no es pot tornar a iniciar - no hi ha fitxers."
+
+#: scheduler/ipp.c:2992 scheduler/ipp.c:3222 scheduler/ipp.c:3277
+#: scheduler/ipp.c:3454 scheduler/ipp.c:3900 scheduler/ipp.c:5720
+#: scheduler/ipp.c:6096 scheduler/ipp.c:6243 scheduler/ipp.c:6543
+#: scheduler/ipp.c:7482 scheduler/ipp.c:7504 scheduler/ipp.c:7676
+#: scheduler/ipp.c:7901 scheduler/ipp.c:7944 scheduler/ipp.c:8793
+#: scheduler/ipp.c:9019 scheduler/ipp.c:9368 scheduler/ipp.c:9971
+#, c-format
+msgid "Job #%d does not exist."
+msgstr "La tasca #%d no existeix."
+
+#: scheduler/ipp.c:3486
+#, c-format
+msgid "Job #%d is already aborted - can't cancel."
+msgstr "La tasca #%d ja s'ha interromput: no es pot cancel·lar."
+
+#: scheduler/ipp.c:3480
+#, c-format
+msgid "Job #%d is already canceled - can't cancel."
+msgstr "La tasca #%d ja està cancel·lada: no es pot cancel·lar."
+
+#: scheduler/ipp.c:3492
+#, c-format
+msgid "Job #%d is already completed - can't cancel."
+msgstr "La tasca #%d ja s'ha acabat: no es pot cancel·lar."
+
+#: scheduler/ipp.c:7702 scheduler/ipp.c:7986 scheduler/ipp.c:9986
+#, c-format
+msgid "Job #%d is finished and cannot be altered."
+msgstr "La tasca #%d s'ha acabat i no es pot canviar."
+
+#: scheduler/ipp.c:9033
+#, c-format
+msgid "Job #%d is not complete."
+msgstr "La tasca #%d no s'ha acabat."
+
+#: scheduler/ipp.c:3007
+#, c-format
+msgid "Job #%d is not held for authentication."
+msgstr "La tasca #%d no està aturada per ser autenticada."
+
+#: scheduler/ipp.c:8807
+#, c-format
+msgid "Job #%d is not held."
+msgstr "La tasca #%d no està aturada."
+
+#: cgi-bin/ipp-var.c:1055
+msgid "Job Completed"
+msgstr "S'ha acabat la tasca"
+
+#: cgi-bin/ipp-var.c:1053
+msgid "Job Created"
+msgstr "S'ha creat la tasca"
+
+#: cgi-bin/ipp-var.c:1059
+msgid "Job Options Changed"
+msgstr "S'han canviat les opcions de la tasca"
+
+#: cgi-bin/ipp-var.c:1057
+msgid "Job Stopped"
+msgstr "S'ha aturat la tasca"
+
+#: scheduler/ipp.c:10068
+msgid "Job is completed and cannot be changed."
+msgstr "La tasca s'ha finalitzat i no es pot canviar."
+
+#: cgi-bin/jobs.c:198
+msgid "Job operation failed"
+msgstr "Ha fallat l'operació de la tasca"
+
+#: scheduler/ipp.c:10104 scheduler/ipp.c:10123 scheduler/ipp.c:10134
+msgid "Job state cannot be changed."
+msgstr "L'estat de la tasca no es pot canviar."
+
+#: scheduler/ipp.c:8899
+msgid "Job subscriptions cannot be renewed."
+msgstr "Les subscripcions a les tasca no es poden renovar."
+
+#: cgi-bin/jobs.c:103 cgi-bin/jobs.c:114 cgi-bin/jobs.c:195
+msgid "Jobs"
+msgstr "Tasques"
+
+#: backend/lpd.c:185
+msgid "LPD/LPR Host or Printer"
+msgstr "Amfitrió o impressora LPD/LPR"
+
+#: ppdc/sample.c:230
+msgid "Label Printer"
+msgstr "Impressora d'etiquetes"
+
+#: ppdc/sample.c:446
+msgid "Label Top"
+msgstr "Capçalera de l'etiqueta"
+
+#: scheduler/ipp.c:2070 scheduler/ipp.c:5643
+#, c-format
+msgid "Language \"%s\" not supported."
+msgstr "No s'admet l'idioma «%s»."
+
+#: ppdc/sample.c:164
+msgid "Large Address"
+msgstr "Adreça gran"
+
+#: ppdc/sample.c:291
+msgid "LaserJet Series PCL 4/5"
+msgstr "Sèrie Laser Jet PCL 4/5"
+
+#: ppdc/sample.c:43
+msgid "Letter Oversize"
+msgstr "Carta gran"
+
+#: ppdc/sample.c:44
+msgid "Letter Oversize Long Edge"
+msgstr "Carta americà gran costat llarg"
+
+#: ppdc/sample.c:236
+msgid "Light"
+msgstr "Lluminós"
+
+#: cups/ppd.c:352
+msgid "Line longer than the maximum allowed (255 characters)"
+msgstr "La línia la longitud màxima permesa (255 caràcters)"
+
+#: cgi-bin/admin.c:2393
+msgid "List Available Printers"
+msgstr "Llista les impressores disponibles"
+
+#: ppdc/sample.c:272
+msgid "Long-Edge (Portrait)"
+msgstr "Costat-llarg (vertical)"
+
+#: cups/http-support.c:1558
+msgid "Looking for printer."
+msgstr "S'està buscant la impressora."
+
+#: ppdc/sample.c:268
+msgid "Manual Feed"
+msgstr "Alimentació manual"
+
+#: cups/ppd.c:789 cups/ppd.c:1357
+msgid "Media Size"
+msgstr "Mida del paper"
+
+#: cups/ppd.c:793 cups/ppd.c:1361 ppdc/sample.c:262
+msgid "Media Source"
+msgstr "Font del paper"
+
+#: ppdc/sample.c:364
+msgid "Media Tracking"
+msgstr "Seguiment del paper"
+
+#: cups/ppd.c:791 cups/ppd.c:1359 ppdc/sample.c:285
+msgid "Media Type"
+msgstr "Tipus de paper"
+
+#: ppdc/sample.c:237
+msgid "Medium"
+msgstr "Mitjà"
+
+#: cups/ppd.c:341
+msgid "Memory allocation error"
+msgstr "S'ha produït un error d'ubicació de memòria"
+
+#: cups/ppd.c:361
+msgid "Missing CloseGroup"
+msgstr "Falta el CloseGroup"
+
+#: cups/ppd.c:342
+msgid "Missing PPD-Adobe-4.x header"
+msgstr "Falta la capçalera PPD-ADOBE-4.x"
+
+#: cups/ppd.c:351
+msgid "Missing asterisk in column 1"
+msgstr "Falta un asterisc a la columna 1"
+
+#: scheduler/ipp.c:6119
+msgid "Missing document-number attribute."
+msgstr "Falta l'atribut document-number."
+
+#: cups/adminutil.c:273
+#, c-format
+msgid "Missing double quote on line %d."
+msgstr "Falta una cometa doble a la línia %d."
+
+#: cgi-bin/admin.c:736 cgi-bin/admin.c:2106 cgi-bin/admin.c:2191
+#: cgi-bin/admin.c:2785 cgi-bin/admin.c:3039 cgi-bin/admin.c:3150
+#: cgi-bin/admin.c:3860
+msgid "Missing form variable"
+msgstr "Falta una variable del formulari"
+
+#: scheduler/ipp.c:9422
+msgid "Missing last-document attribute in request."
+msgstr "Falta l'atribut last-document-number a la petició."
+
+#: cups/pwg-media.c:535
+msgid "Missing media or media-col."
+msgstr "Falta el media o el media-col."
+
+#: cups/pwg-media.c:454
+msgid "Missing media-size in media-col."
+msgstr "Falta el media-size al media-col."
+
+#: scheduler/ipp.c:6673
+msgid "Missing notify-subscription-ids attribute."
+msgstr "Falta l'atribut notify-subscription-ids."
+
+#: cups/ppd.c:359
+msgid "Missing option keyword"
+msgstr "Falta l'opció keyword"
+
+#: scheduler/ipp.c:3133 scheduler/ipp.c:3158
+msgid "Missing requesting-user-name attribute."
+msgstr "Falta l'atribut requesting-user-name."
+
+#: scheduler/ipp.c:461
+msgid "Missing required attributes."
+msgstr "Falten alguns atributs necessaris."
+
+#: cups/adminutil.c:254
+#, c-format
+msgid "Missing value on line %d."
+msgstr "Falta un valor a la línia %d."
+
+#: cups/ppd.c:343
+msgid "Missing value string"
+msgstr "Falta la cadena de valor"
+
+#: cups/pwg-media.c:442
+msgid "Missing x-dimension in media-size."
+msgstr "Falta la mida x a la mida del suport."
+
+#: cups/pwg-media.c:448
+msgid "Missing y-dimension in media-size."
+msgstr "Falta la mida y a la mida del suport."
+
+#: systemv/lpinfo.c:470
+#, c-format
+msgid ""
+"Model: name = %s\n"
+" natural_language = %s\n"
+" make-and-model = %s\n"
+" device-id = %s"
+msgstr ""
+"Model: nom = %s\n"
+" idioma_natural = %s\n"
+" fabricant i model = %s\n"
+" id del dispositiu = %s"
+
+#: cgi-bin/admin.c:570
+msgid "Modify Class"
+msgstr "Modifica la classe"
+
+#: cgi-bin/admin.c:882
+msgid "Modify Printer"
+msgstr "Modifica la impressora"
+
+#: cgi-bin/ipp-var.c:425 cgi-bin/ipp-var.c:516
+msgid "Move All Jobs"
+msgstr "Mou totes les tasques"
+
+#: cgi-bin/ipp-var.c:364 cgi-bin/ipp-var.c:423 cgi-bin/ipp-var.c:514
+msgid "Move Job"
+msgstr "Mou la tasca"
+
+#: cups/http-support.c:1290
+msgid "Moved Permanently"
+msgstr "S'ha mogut de manera permanent"
+
+#: cups/ppd.c:340
+msgid "NULL PPD file pointer"
+msgstr "Punter del fitxer PPD NUL"
+
+#: cups/snmp.c:1053
+msgid "Name OID uses indefinite length"
+msgstr "El nom de l'OID fa servir una longitud indefinida"
+
+#: scheduler/ipp.c:1142
+msgid "Nested classes are not allowed."
+msgstr "No es permeten les classes imbricades."
+
+#: ppdc/sample.c:430
+msgid "Never"
+msgstr "Mai"
+
+#: ppdc/sample.c:256
+msgid "New Stylus Color Series"
+msgstr "Sèrie New Stylus Color"
+
+#: ppdc/sample.c:258
+msgid "New Stylus Photo Series"
+msgstr "Sèrie New Stylus Photo"
+
+#: cups/ppd.c:1949
+msgid "No"
+msgstr "No"
+
+#: cups/http-support.c:1287
+msgid "No Content"
+msgstr "No hi ha contingut"
+
+#: cups/util.c:1298
+msgid "No PPD name"
+msgstr "El PPD no té nom"
+
+#: cups/snmp.c:1047
+msgid "No VarBind SEQUENCE"
+msgstr "No hi ha cap SEQUENCE VarBind"
+
+#: cups/adminutil.c:788
+msgid "No Windows printer drivers are installed."
+msgstr "No hi ha cap controlador d'impressores de Windows instal·lat."
+
+#: cups/request.c:566 cups/request.c:908
+msgid "No active connection"
+msgstr "No hi ha cap connexió activa"
+
+#: scheduler/ipp.c:3403
+#, c-format
+msgid "No active jobs on %s."
+msgstr "No hi ha cap tasca activa a %s."
+
+#: scheduler/ipp.c:302
+msgid "No attributes in request."
+msgstr "No hi ha atributs en demanda."
+
+#: scheduler/ipp.c:3034
+msgid "No authentication information provided."
+msgstr "No s'ha donat cap informació d'autenticació."
+
+#: cups/snmp.c:1004
+msgid "No community name"
+msgstr "Ho hi na cap nom de comunitat"
+
+#: scheduler/ipp.c:5919
+msgid "No default printer."
+msgstr "No hi ha cap impressora per defecte."
+
+#: cgi-bin/ipp-var.c:436 scheduler/ipp.c:7248
+msgid "No destinations added."
+msgstr "No s'ha afegit cap destí."
+
+#: backend/usb.c:200
+msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
+msgstr ""
+"No s'ha trobat cap URI de dispositiu a argv[0] o a la variable d'entorn "
+"DEVICE_URI."
+
+#: cups/snmp.c:1034
+msgid "No error-index"
+msgstr "No hi ca cap error-index"
+
+#: cups/snmp.c:1026
+msgid "No error-status"
+msgstr "No hi ha cap status-error"
+
+#: scheduler/ipp.c:8190 scheduler/ipp.c:9436
+msgid "No file in print request."
+msgstr "No hi ha cap printer-uri a la sol·licitud."
+
+#: cups/util.c:923
+msgid "No modification time"
+msgstr "No hi ha hora de modificació"
+
+#: cups/snmp.c:1051
+msgid "No name OID"
+msgstr "No hi ha cap nom d'OID"
+
+#: filter/rastertoepson.c:1147 filter/rastertohp.c:876
+#: filter/rastertolabel.c:1302
+msgid "No pages were found."
+msgstr "No s'ha trobat cap pàgina."
+
+#: cups/util.c:917
+msgid "No printer name"
+msgstr "No hi ha cap nom d'impressora"
+
+#: cups/util.c:1801
+msgid "No printer-uri found"
+msgstr "No s'ha trobat cap printer-uri"
+
+#: cups/util.c:1786
+msgid "No printer-uri found for class"
+msgstr "No s'ha trobat cap printer-uri per la classe"
+
+#: scheduler/ipp.c:6322
+msgid "No printer-uri in request."
+msgstr "No hi ha cap printer-uri a la sol·licitud."
+
+#: cups/snmp.c:1018
+msgid "No request-id"
+msgstr "No hi ha cap request-id"
+
+#: scheduler/ipp.c:5528
+msgid "No subscription attributes in request."
+msgstr "No hi ha cap atribut de la subscripció a la sol·licitud."
+
+#: scheduler/ipp.c:7575
+msgid "No subscriptions found."
+msgstr "No s'ha trobat cap sol·licitud."
+
+#: cups/snmp.c:1042
+msgid "No variable-bindings SEQUENCE"
+msgstr "No hi ha cap SEQUENCE variable-bindings"
+
+#: cups/snmp.c:997
+msgid "No version number"
+msgstr "No hi ha cap número de versió"
+
+#: ppdc/sample.c:367
+msgid "Non-continuous (Mark sensing)"
+msgstr "Discontinu (sensible a les marques)"
+
+#: ppdc/sample.c:366
+msgid "Non-continuous (Web sensing)"
+msgstr "Discontinu (Sensible al web)"
+
+#: ppdc/sample.c:238
+msgid "Normal"
+msgstr "Normal"
+
+#: cups/http-support.c:1309
+msgid "Not Found"
+msgstr "No s'ha trobat"
+
+#: cups/http-support.c:1321
+msgid "Not Implemented"
+msgstr "No implementat"
+
+#: ppdc/sample.c:276
+msgid "Not Installed"
+msgstr "No està instal·lat"
+
+#: cups/http-support.c:1296
+msgid "Not Modified"
+msgstr "No està modificat"
+
+#: cups/http-support.c:1324
+msgid "Not Supported"
+msgstr "No és compatible"
+
+#: scheduler/ipp.c:1518 scheduler/ipp.c:10666
+msgid "Not allowed to print."
+msgstr "No teniu permís per imprimir."
+
+#: ppdc/sample.c:146
+msgid "Note"
+msgstr "Nota"
+
+#: systemv/cupstestdsc.c:433
+msgid ""
+"Note: this program only validates the DSC comments, not the PostScript "
+"itself."
+msgstr ""
+"Nota: aquest programa només valida els comentaris DSC, no el PostScript."
+
+#: cups/http-support.c:1278 cups/ppd.c:338
+msgid "OK"
+msgstr "D'acord"
+
+#: ppdc/sample.c:271
+msgid "Off (1-Sided)"
+msgstr "Inactiu (Una cara)"
+
+#: ppdc/sample.c:361
+msgid "Oki"
+msgstr "Oki"
+
+#: cgi-bin/help.c:91 cgi-bin/help.c:132 cgi-bin/help.c:142 cgi-bin/help.c:172
+msgid "Online Help"
+msgstr "Ajuda en línia"
+
+#: cups/adminutil.c:955
+#, c-format
+msgid "Open of %s failed: %s"
+msgstr "No s'ha pogut obrir %s: %s"
+
+#: cups/ppd.c:346
+msgid "OpenGroup without a CloseGroup first"
+msgstr "OpenGroup sense un CloseGroup abans"
+
+#: cups/ppd.c:348
+msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
+msgstr "OpenUI/JCLOpenUI sense un CloseUI/JCLCloseUI abans"
+
+#: cgi-bin/admin.c:3631
+msgid "Operation Policy"
+msgstr "Política d'operacions"
+
+#: filter/pstops.c:2205
+#, c-format
+msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
+msgstr "L'opció «%s» no es pot incloure a través de %%%%IncludeFeature."
+
+#: cgi-bin/admin.c:3281 cgi-bin/admin.c:3365
+msgid "Options Installed"
+msgstr "Opcions instal·lades"
+
+#: scheduler/cupsfilter.c:1430 scheduler/main.c:2018 systemv/cupsaddsmb.c:284
+#: systemv/cupsctl.c:203 systemv/cupstestdsc.c:429 systemv/cupstestppd.c:3797
+#: test/ipptool.c:4403 ppdc/ppdc.cxx:437 ppdc/ppdhtml.cxx:174
+#: ppdc/ppdi.cxx:130 ppdc/ppdmerge.cxx:369 ppdc/ppdpo.cxx:254
+msgid "Options:"
+msgstr "Opcions:"
+
+#: cups/ppd-cache.c:156
+msgid "Out of date PPD cache file."
+msgstr "El fitxer de memòria cau del PPD no està actualitzat."
+
+#: cups/ppd-cache.c:1381
+msgid "Out of memory."
+msgstr "Sense memòria."
+
+#: cups/ppd.c:795 cups/ppd.c:1363
+msgid "Output Mode"
+msgstr "Mode de sortida"
+
+#: systemv/lpstat.c:1191 systemv/lpstat.c:1195
+#, c-format
+msgid "Output for printer %s is sent to %s"
+msgstr "La sortida de la impressora %s s'envia a %s"
+
+#: systemv/lpstat.c:1185
+#, c-format
+msgid "Output for printer %s is sent to remote printer %s on %s"
+msgstr "La sortida de la impressora %s s'envia a la impressora remota %s a %s"
+
+#: systemv/lpstat.c:1209 systemv/lpstat.c:1213
+#, c-format
+msgid "Output for printer %s/%s is sent to %s"
+msgstr "La sortida per la impressora %s/%s s'envia a la impressora %s"
+
+#: systemv/lpstat.c:1203
+#, c-format
+msgid "Output for printer %s/%s is sent to remote printer %s on %s"
+msgstr ""
+"La sortida per la impressora %s/%s s'envia a la impressora remota %s a %s"
+
+#: systemv/cupstestdsc.c:399
+msgid "PASS"
+msgstr "VÀLID"
+
+#: ppdc/sample.c:260
+msgid "PCL Laser Printer"
+msgstr "Impressora làser PCL"
+
+#: ppdc/sample.c:149
+msgid "PRC16K"
+msgstr "PRC16K"
+
+#: ppdc/sample.c:150
+msgid "PRC16K Long Edge"
+msgstr "PRC16K costat llarg"
+
+#: ppdc/sample.c:151
+msgid "PRC32K"
+msgstr "PRC32K"
+
+#: ppdc/sample.c:154
+msgid "PRC32K Long Edge"
+msgstr "PRC32K costat llarg"
+
+#: ppdc/sample.c:152
+msgid "PRC32K Oversize"
+msgstr "PRC32K gran"
+
+#: ppdc/sample.c:153
+msgid "PRC32K Oversize Long Edge"
+msgstr "PRC32K gran costat llarg"
+
+#: cups/snmp.c:1014
+msgid "Packet does not contain a Get-Response-PDU"
+msgstr "El paquet no conté cap Get-Response-PDU"
+
+#: cups/snmp.c:993
+msgid "Packet does not start with SEQUENCE"
+msgstr "El paquet no comença amb SEQUENCE"
+
+#: ppdc/sample.c:360
+msgid "ParamCustominCutInterval"
+msgstr "ParamCustominCutInterval"
+
+#: ppdc/sample.c:358
+msgid "ParamCustominTearInterval"
+msgstr "ParamCustominTearInterval"
+
+#: cups/auth.c:199 cups/auth.c:367
+#, c-format
+msgid "Password for %s on %s? "
+msgstr "Contrasenya per %s a %s? "
+
+#: systemv/cupsaddsmb.c:252
+#, c-format
+msgid "Password for %s required to access %s via SAMBA: "
+msgstr "Es necessita la contrasenya de %s per accedir a %s a través de SAMBA: "
+
+#: cgi-bin/classes.c:167
+msgid "Pause Class"
+msgstr "Posa la classe en pausa"
+
+#: cgi-bin/printers.c:170
+msgid "Pause Printer"
+msgstr "Posa la impressora en pausa"
+
+#: ppdc/sample.c:448
+msgid "Peel-Off"
+msgstr "Desenganxar"
+
+#: ppdc/sample.c:160
+msgid "Photo"
+msgstr "Fotografia"
+
+#: ppdc/sample.c:161
+msgid "Photo Labels"
+msgstr "Etiquetes de fotografia"
+
+#: ppdc/sample.c:286
+msgid "Plain Paper"
+msgstr "Paper normal"
+
+#: cgi-bin/admin.c:3299 cgi-bin/admin.c:3580
+msgid "Policies"
+msgstr "Polítiques"
+
+#: cgi-bin/admin.c:3306 cgi-bin/admin.c:3649 cgi-bin/admin.c:3662
+msgid "Port Monitor"
+msgstr "Seguiment del port"
+
+#: ppdc/sample.c:278
+msgid "PostScript Printer"
+msgstr "Impressora PostScript"
+
+#: ppdc/sample.c:147
+msgid "Postcard"
+msgstr "Postal"
+
+#: ppdc/sample.c:71
+msgid "Postcard Double "
+msgstr "Postal doble"
+
+#: ppdc/sample.c:72
+msgid "Postcard Double Long Edge"
+msgstr "Postal doble costat llarg"
+
+#: ppdc/sample.c:148
+msgid "Postcard Long Edge"
+msgstr "Postal costat llarg"
+
+#: ppdc/sample.c:295
+msgid "Print Density"
+msgstr "Densitat de la impressió"
+
+#: cups/notify.c:82
+msgid "Print Job:"
+msgstr "Tasca d'impressió:"
+
+#: ppdc/sample.c:340
+msgid "Print Mode"
+msgstr "Mode d'impressió"
+
+#: ppdc/sample.c:383
+msgid "Print Rate"
+msgstr "Ritme d'impressió"
+
+#: cgi-bin/printers.c:179
+msgid "Print Self-Test Page"
+msgstr "Imprimeix la pàgina de prova pròpia"
+
+#: ppdc/sample.c:327
+msgid "Print Speed"
+msgstr "Velocitat d'impressió"
+
+#: cgi-bin/ipp-var.c:792
+msgid "Print Test Page"
+msgstr "Imprimeix una pàgina de prova"
+
+#: ppdc/sample.c:356
+msgid "Print and Cut"
+msgstr "Imprimeix i talla"
+
+#: ppdc/sample.c:344
+msgid "Print and Tear"
+msgstr "Imprimeix i estripa"
+
+#: backend/ipp.c:1537
+#, c-format
+msgid "Print file accepted - job ID %d."
+msgstr "S'ha acceptat el fitxer d'impressió - ID de la tasca %d."
+
+#: backend/ipp.c:1527
+msgid "Print file accepted - job ID unknown."
+msgstr "S'ha acceptat el fitxer d'impressió - l'ID de la tasca és desconegut."
+
+#: backend/socket.c:424 backend/usb-unix.c:191
+msgid "Print file sent."
+msgstr "S'ha enviat el fitxer d'impressió."
+
+#: backend/ipp.c:1488
+msgid "Print file was not accepted."
+msgstr "No s'ha acceptat el fitxer d'impressió."
+
+#: backend/ipp.c:1895
+msgid "Print job canceled at printer."
+msgstr "S'ha cancel·lat la tasca a la impressora."
+
+#: backend/ipp.c:1890
+msgid "Print job too large."
+msgstr "La tasca d'impressió és massa llarga."
+
+#: cgi-bin/ipp-var.c:1047
+msgid "Printer Added"
+msgstr "S'ha afegit una impressora"
+
+#: ppdc/sample.c:263
+msgid "Printer Default"
+msgstr "Impressora per defecte"
+
+#: cgi-bin/ipp-var.c:1051
+msgid "Printer Deleted"
+msgstr "S'ha eliminat la impressora"
+
+#: cgi-bin/ipp-var.c:1049
+msgid "Printer Modified"
+msgstr "S'ha modificat la impressora"
+
+#: cgi-bin/ipp-var.c:1045
+msgid "Printer Paused"
+msgstr "S'ha posat la impressora en pausa"
+
+#: ppdc/sample.c:294
+msgid "Printer Settings"
+msgstr "Configuració de la impressora"
+
+#: backend/ipp.c:1893
+msgid "Printer cannot print supplied content."
+msgstr "La impressora no pot imprimir el contingut subministrat."
+
+#: cups/notify.c:126
+msgid "Printer:"
+msgstr "Impressora:"
+
+#: cgi-bin/printers.c:204 cgi-bin/printers.c:332
+msgid "Printers"
+msgstr "Impressores"
+
+#: filter/rastertoepson.c:1093 filter/rastertohp.c:817
+#: filter/rastertolabel.c:1249
+#, c-format
+msgid "Printing page %d, %d%% complete."
+msgstr "S'està imprimint la pàgina %d. S'ha completat el %d%%."
+
+#: cgi-bin/classes.c:173 cgi-bin/printers.c:176
+msgid "Purge Jobs"
+msgstr "Purga les tasques"
+
+#: ppdc/sample.c:155
+msgid "Quarto"
+msgstr "Quart"
+
+#: scheduler/ipp.c:1513 scheduler/ipp.c:10661
+msgid "Quota limit reached."
+msgstr "S'ha assolit el límit de la quota."
+
+#: berkeley/lpq.c:515
+msgid "Rank Owner Job File(s) Total Size"
+msgstr ""
+"Rang Propietari Tasca Fitxer(s) Mida total"
+
+#. TRANSLATORS: Pri is job priority.
+#: berkeley/lpq.c:511
+msgid ""
+"Rank Owner Pri Job Files Total Size"
+msgstr ""
+"Rang Propietari Pri Tasca Fitxers Mida "
+"total"
+
+#: cgi-bin/classes.c:171 cgi-bin/printers.c:174
+msgid "Reject Jobs"
+msgstr "Rebutja tasques"
+
+#: backend/lpd.c:1016 backend/lpd.c:1148
+#, c-format
+msgid "Remote host did not accept control file (%d)."
+msgstr "L'amfitrió remot no accepta el fitxer de control (%d)."
+
+#: backend/lpd.c:1101
+#, c-format
+msgid "Remote host did not accept data file (%d)."
+msgstr "L'amfitrió remot no accepta el fitxer de dades (%d)."
+
+#: ppdc/sample.c:428
+msgid "Reprint After Error"
+msgstr "Torna a imprimir després d'un error"
+
+#: cups/http-support.c:1312
+msgid "Request Entity Too Large"
+msgstr "Entitat de petició massa gran"
+
+#: cups/ppd.c:797 cups/ppd.c:1365 ppdc/sample.c:231
+msgid "Resolution"
+msgstr "Resolució"
+
+#: cgi-bin/classes.c:165
+msgid "Resume Class"
+msgstr "Reprèn la classe"
+
+#: cgi-bin/printers.c:167
+msgid "Resume Printer"
+msgstr "Reprèn la impressora"
+
+#: ppdc/sample.c:165
+msgid "Return Address"
+msgstr "Remitent"
+
+#: ppdc/sample.c:449
+msgid "Rewind"
+msgstr "Rebobina"
+
+#: cups/adminutil.c:2052
+#, c-format
+msgid "Running command: %s %s -N -A %s -c '%s'"
+msgstr "S'està executant l'ordre: %s %s -N -A %s -c «%s»"
+
+#: cups/snmp.c:995
+msgid "SEQUENCE uses indefinite length"
+msgstr "SEQUENCE té una longitud indefinida"
+
+#: cups/http-support.c:1336
+msgid "SSL/TLS Negotiation Error"
+msgstr "S'ha produït un error mentre es negociava el SSL/TLS"
+
+#: cups/http-support.c:1293
+msgid "See Other"
+msgstr "Vegeu altres"
+
+#: backend/usb-darwin.c:543 backend/usb-libusb.c:273
+msgid "Sending data to printer."
+msgstr "S'envien les dades a la impressora."
+
+#: cgi-bin/ipp-var.c:1061
+msgid "Server Restarted"
+msgstr "S'ha reiniciat el servidor"
+
+#: cgi-bin/ipp-var.c:1067
+msgid "Server Security Auditing"
+msgstr "S'està auditant la seguretat del servidor"
+
+#: cgi-bin/ipp-var.c:1063
+msgid "Server Started"
+msgstr "S'ha iniciat el servidor"
+
+#: cgi-bin/ipp-var.c:1065
+msgid "Server Stopped"
+msgstr "S'ha aturat el servidor"
+
+#: cups/http-support.c:1330
+msgid "Service Unavailable"
+msgstr "El servei no està disponible"
+
+#: cgi-bin/admin.c:2786 cgi-bin/admin.c:2832 cgi-bin/admin.c:2989
+#: cgi-bin/admin.c:3008
+msgid "Set Allowed Users"
+msgstr "Definir els permisos dels usuaris"
+
+#: cgi-bin/admin.c:3035
+msgid "Set As Server Default"
+msgstr "Establir com a servidor per defecte"
+
+#: cgi-bin/admin.c:3135
+msgid "Set Class Options"
+msgstr "Definir les opcions de la classe"
+
+#: cgi-bin/admin.c:3135 cgi-bin/admin.c:3309 cgi-bin/admin.c:3691
+msgid "Set Printer Options"
+msgstr "Definir les opcions de la impressora"
+
+#: cgi-bin/admin.c:3861 cgi-bin/admin.c:3905 cgi-bin/admin.c:3923
+msgid "Set Publishing"
+msgstr "Establir com a pública"
+
+#: ppdc/sample.c:166
+msgid "Shipping Address"
+msgstr "Adreça de lliurament"
+
+#: ppdc/sample.c:273
+msgid "Short-Edge (Landscape)"
+msgstr "Costat curt (horitzontal)"
+
+#: ppdc/sample.c:288
+msgid "Special Paper"
+msgstr "Paper especial"
+
+#: backend/lpd.c:1057
+#, c-format
+msgid "Spooling job, %.0f%% complete."
+msgstr "S'està posant a la cua la tasca. S'ha completat el %.0f%%."
+
+#: ppdc/sample.c:341
+msgid "Standard"
+msgstr "Estàndard"
+
+#. TRANSLATORS: Banner/cover sheet before the print job.
+#: cgi-bin/admin.c:3552
+msgid "Starting Banner"
+msgstr "Bàner inicial"
+
+#: filter/rastertoepson.c:1069 filter/rastertohp.c:793
+#: filter/rastertolabel.c:1225
+#, c-format
+msgid "Starting page %d."
+msgstr "S'està començant la pàgina %d."
+
+#: ppdc/sample.c:156
+msgid "Statement"
+msgstr "Declaració"
+
+#: ppdc/sample.c:251
+msgid "Stylus Color Series"
+msgstr "Sèrie Stylus Color"
+
+#: ppdc/sample.c:257
+msgid "Stylus Photo Series"
+msgstr "Sèrie Stylus Photo"
+
+#: scheduler/ipp.c:3549 scheduler/ipp.c:6689 scheduler/ipp.c:7388
+#: scheduler/ipp.c:8887
+#, c-format
+msgid "Subscription #%d does not exist."
+msgstr "La subscripció #%d no existeix."
+
+#: ppdc/sample.c:157
+msgid "Super A"
+msgstr "Super A"
+
+#: ppdc/sample.c:158
+msgid "Super B"
+msgstr "Super B"
+
+#: ppdc/sample.c:162
+msgid "Super B/A3"
+msgstr "Super B/A3"
+
+#: cups/http-support.c:1275
+msgid "Switching Protocols"
+msgstr "Intercanviar els protocols"
+
+#: ppdc/sample.c:159
+msgid "Tabloid"
+msgstr "Tabloide"
+
+#: ppdc/sample.c:45
+msgid "Tabloid Oversize"
+msgstr "Tabloide gran"
+
+#: ppdc/sample.c:46
+msgid "Tabloid Oversize Long Edge"
+msgstr "Tabloide gran costat llarg"
+
+#: ppdc/sample.c:342
+msgid "Tear"
+msgstr "Estripar"
+
+#: ppdc/sample.c:447
+msgid "Tear-Off"
+msgstr "Estripar"
+
+#: ppdc/sample.c:388
+msgid "Tear-Off Adjust Position"
+msgstr "Posició d'ajust d'estripat"
+
+#: scheduler/ipp.c:6393 scheduler/ipp.c:6471 scheduler/ipp.c:6487
+#: scheduler/ipp.c:6505
+#, c-format
+msgid "The %s attribute cannot be provided with job-ids."
+msgstr "No es pot fer servir l'atribut %s amb les job-ids."
+
+#: scheduler/ipp.c:5118
+#, c-format
+msgid ""
+"The '%s' operation attribute cannot be supplied in a Create-Job request."
+msgstr ""
+"L'atribut d'operació «%s» no es pot subministrar en una petició de Create-"
+"Job."
+
+#: scheduler/ipp.c:6919
+#, c-format
+msgid "The PPD file \"%s\" could not be found."
+msgstr "No s'ha pogut trobar el fitxer PPD «%s»."
+
+#: scheduler/ipp.c:6906
+#, c-format
+msgid "The PPD file \"%s\" could not be opened: %s"
+msgstr "No s'ha pogut obrir el fitxer PPD «%s»: %s"
+
+#: filter/rastertoepson.c:1038 filter/rastertohp.c:764
+#: filter/rastertolabel.c:1189
+msgid "The PPD file could not be opened."
+msgstr "No s'ha pogut obrir el fitxer PPD."
+
+#: cgi-bin/admin.c:749
+msgid ""
+"The class name may only contain up to 127 printable characters and may not "
+"contain spaces, slashes (/), or the pound sign (#)."
+msgstr ""
+"El nom de la classe només pot tenir fins a 127 caràcters imprimibles i no "
+"pot contenir espais, barres (/) o el símbol coixinet (#)."
+
+#: cups/localize.c:353
+msgid "The developer unit needs to be replaced."
+msgstr "S'ha de canviar la unitat de desenvolupament."
+
+#: cups/localize.c:351
+msgid "The developer unit will need to be replaced soon."
+msgstr "La unitat de desenvolupament s'haurà de canviar aviat."
+
+#: cups/localize.c:343
+msgid "The fuser's temperature is high."
+msgstr "La temperatura del fusor és alta."
+
+#: cups/localize.c:345
+msgid "The fuser's temperature is low."
+msgstr "La temperatura del fusor és baixa."
+
+#: scheduler/ipp.c:2097
+msgid ""
+"The notify-lease-duration attribute cannot be used with job subscriptions."
+msgstr ""
+"No es pot fer servir l'atribut notify-lease-duration amb les subscripcions a "
+"tasques."
+
+#: scheduler/ipp.c:2080 scheduler/ipp.c:5653
+#, c-format
+msgid "The notify-user-data value is too large (%d > 63 octets)."
+msgstr "El valor de notify-user-data és massa llarg (%d > 63 octets)."
+
+#: cups/localize.c:349
+msgid "The optical photoconductor needs to be replaced."
+msgstr "S'ha de canviar el fotoconductor òptic."
+
+#: cups/localize.c:347
+msgid "The optical photoconductor will need to be replaced soon."
+msgstr "El fotoconductor òptic s'haurà de canviar aviat."
+
+#: cups/localize.c:331
+msgid "The output bin is almost full."
+msgstr "La safata de sortida és gairebé plena."
+
+#: cups/localize.c:333
+msgid "The output bin is full."
+msgstr "La safata de sortida és plena."
+
+#: cups/localize.c:329
+msgid "The output bin is missing."
+msgstr "Falta la safata de sortida."
+
+#: cups/localize.c:325
+msgid "The paper tray is almost empty."
+msgstr "La safata de paper és gairebé buida."
+
+#: cups/localize.c:327
+msgid "The paper tray is empty."
+msgstr "La safata de paper és buida."
+
+#: cups/localize.c:323
+msgid "The paper tray is missing."
+msgstr "Falta la safata de paper."
+
+#: cups/localize.c:306
+msgid "The paper tray needs to be filled."
+msgstr "S'ha d'omplir la safata de paper."
+
+#: backend/ipp.c:909
+msgid "The printer URI is incorrect or no longer exists."
+msgstr "L'URI de la impressora no és correcte o ja no existeix."
+
+#: backend/lpd.c:619 backend/lpd.c:1009 backend/lpd.c:1091 backend/lpd.c:1141
+msgid "The printer did not respond."
+msgstr "La impressora no ha respost."
+
+#: backend/ipp.c:892 backend/ipp.c:899
+#, c-format
+msgid "The printer does not support IPP/%d.%d, trying IPP/%s."
+msgstr "La impressora no admet el IPP/%d.%d, s'està intentant el IPP/%s."
+
+#: backend/ipp.c:757 backend/ipp.c:874 backend/ipp.c:980 backend/ipp.c:1313
+#: backend/ipp.c:1464 backend/lpd.c:828 backend/socket.c:374
+#: backend/usb-unix.c:131 backend/usb-unix.c:424 backend/usb-unix.c:507
+msgid "The printer is in use."
+msgstr "La impressora està ocupada."
+
+#: backend/runloop.c:254 backend/runloop.c:374 cups/localize.c:311
+msgid "The printer is not connected."
+msgstr "La impressora no està connectada."
+
+#: backend/ipp.c:735 backend/ipp.c:768 backend/ipp.c:870 backend/lpd.c:807
+#: backend/lpd.c:848 backend/socket.c:353 backend/socket.c:386
+msgid "The printer is not responding."
+msgstr "La impressora no respòn."
+
+#: backend/runloop.c:396
+msgid "The printer is now connected."
+msgstr "Ara la impressora està connectada."
+
+#: backend/usb-darwin.c:1286
+msgid "The printer is now online."
+msgstr "Ara la impressora està en línia."
+
+#: backend/usb-darwin.c:1307
+msgid "The printer is offline."
+msgstr "La impressora està fora de línia."
+
+#: cups/localize.c:335
+msgid "The printer is running low on ink."
+msgstr "S'està acabant la tinta de la impressora."
+
+#: cups/localize.c:313
+msgid "The printer is running low on toner."
+msgstr "S'està acabant el tòner de la impressora."
+
+#: backend/ipp.c:750 backend/lpd.c:821 backend/socket.c:367
+msgid "The printer is unreachable at this time."
+msgstr "Ara mateix no es pot accedir a la impressora."
+
+#: cups/localize.c:337
+msgid "The printer may be out of ink."
+msgstr "Es deu haver acabat la tinta de la impressora."
+
+#: cups/localize.c:315
+msgid "The printer may be out of toner."
+msgstr "Es deu haver acabat el tòner de la impressora."
+
+#: backend/ipp.c:744 backend/lpd.c:815 backend/socket.c:361
+msgid "The printer may not exist or is unavailable at this time."
+msgstr ""
+"Pot ser que la impressora no existeixi o que ara mateix no estigui "
+"accessible."
+
+#: cgi-bin/admin.c:931
+msgid ""
+"The printer name may only contain up to 127 printable characters and may not "
+"contain spaces, slashes (/), or the pound sign (#)."
+msgstr ""
+"El nom de la impressora només pot tenir fins a 127 caràcters imprimibles i "
+"no pot contenir espais, barres (/) o el símbol coixinet (#)."
+
+#: scheduler/ipp.c:876 scheduler/ipp.c:1136 scheduler/ipp.c:3198
+#: scheduler/ipp.c:3369 scheduler/ipp.c:5101 scheduler/ipp.c:5487
+#: scheduler/ipp.c:5801 scheduler/ipp.c:6359 scheduler/ipp.c:7124
+#: scheduler/ipp.c:7180 scheduler/ipp.c:7494 scheduler/ipp.c:7760
+#: scheduler/ipp.c:7849 scheduler/ipp.c:7882 scheduler/ipp.c:8205
+#: scheduler/ipp.c:8598 scheduler/ipp.c:8679 scheduler/ipp.c:9840
+#: scheduler/ipp.c:10294 scheduler/ipp.c:10624 scheduler/ipp.c:10706
+#: scheduler/ipp.c:10998
+msgid "The printer or class does not exist."
+msgstr "La impressora o la classe no existeix."
+
+#: scheduler/ipp.c:1304
+msgid "The printer or class is not shared."
+msgstr "La impressora o la classe no estan compartides."
+
+#: cups/localize.c:317
+msgid "The printer's cover is open."
+msgstr "La tapa de la impressora està oberta."
+
+#: cups/localize.c:321
+msgid "The printer's door is open."
+msgstr "La porta de la impressora està oberta."
+
+#: cups/localize.c:319
+msgid "The printer's interlock is open."
+msgstr "L'enclavament de seguretat de la impressora està obert."
+
+#: cups/localize.c:339
+msgid "The printer's waste bin is almost full."
+msgstr "El dipòsit de residus és gairebé ple."
+
+#: cups/localize.c:341
+msgid "The printer's waste bin is full."
+msgstr "El dipòsit de residus és ple."
+
+#: scheduler/ipp.c:982 scheduler/ipp.c:2261
+#, c-format
+msgid "The printer-uri \"%s\" contains invalid characters."
+msgstr "El printer-uri «%s» conté caràcters no vàlids."
+
+#: scheduler/ipp.c:3175
+msgid "The printer-uri attribute is required."
+msgstr "L'atribut printer-uri és obligatori."
+
+#: scheduler/ipp.c:966
+msgid ""
+"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
+msgstr ""
+"El printer-uri ha de tenir la forma «ipp://NOMAMFITRIÓ/classes/NOMCLASSE»."
+
+#: scheduler/ipp.c:2245
+msgid ""
+"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
+msgstr ""
+"El printer-uri ha de tenir la forma «ipp://NOMAMFITRIÓ/printers/"
+"NOMIMPRESSORA»."
+
+#: cgi-bin/admin.c:474
+msgid ""
+"The subscription name may not contain spaces, slashes (/), question marks "
+"(?), or the pound sign (#)."
+msgstr ""
+"La subscripció no pot contenir espais, barres (/), interrogacions (?), o el "
+"símbol coixinet (#)."
+
+#: scheduler/client.c:2450
+msgid ""
+"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
+"enable it."
+msgstr ""
+"La interfície web està deshabilitada. Executeu «cupsctl WebInterface=yes» "
+"per habilitar-la."
+
+#: scheduler/ipp.c:6454
+#, c-format
+msgid "The which-jobs value \"%s\" is not supported."
+msgstr "El valor «%s» de which-jobs no està implementat."
+
+#: scheduler/ipp.c:5731
+msgid "There are too many subscriptions."
+msgstr "Hi ha massa subscripcions."
+
+#: cups/localize.c:308
+msgid "There is a paper jam."
+msgstr "S'ha encallat el paper."
+
+#: backend/usb-darwin.c:379 backend/usb-darwin.c:438 backend/usb-darwin.c:505
+#: backend/usb-darwin.c:526 backend/usb-libusb.c:235 backend/usb-libusb.c:256
+msgid "There was an unrecoverable USB error."
+msgstr "Hi ha un error de l'USB irrecuperable."
+
+#: ppdc/sample.c:435
+msgid "Thermal Transfer Media"
+msgstr "Mitjà de transferència tèrmica"
+
+#: scheduler/ipp.c:1507
+msgid "Too many active jobs."
+msgstr "Hi ha massa tasques actives."
+
+#: scheduler/ipp.c:1401
+#, c-format
+msgid "Too many job-sheets values (%d > 2)."
+msgstr "Hi ha massa valors de job-sheets (%d > 2)."
+
+#: scheduler/ipp.c:2529
+#, c-format
+msgid "Too many printer-state-reasons values (%d > %d)."
+msgstr "Hi ha massa valors de printer-state-reasons (%d > %d)."
+
+#: ppdc/sample.c:289
+msgid "Transparency"
+msgstr "Transparència"
+
+#: ppdc/sample.c:284
+msgid "Tray"
+msgstr "Safata"
+
+#: ppdc/sample.c:264
+msgid "Tray 1"
+msgstr "Safata 1"
+
+#: ppdc/sample.c:265
+msgid "Tray 2"
+msgstr "Safata 2"
+
+#: ppdc/sample.c:266
+msgid "Tray 3"
+msgstr "Safata 3"
+
+#: ppdc/sample.c:267
+msgid "Tray 4"
+msgstr "Safata 4"
+
+#: cups/http-support.c:1315
+msgid "URI Too Long"
+msgstr "L'URI és massa llarg"
+
+#: ppdc/sample.c:138
+msgid "US Ledger"
+msgstr "Llibre major americà"
+
+#: ppdc/sample.c:139
+msgid "US Legal"
+msgstr "Legal americà"
+
+#: ppdc/sample.c:140
+msgid "US Legal Oversize"
+msgstr "Legal americà gran"
+
+#: ppdc/sample.c:141
+msgid "US Letter"
+msgstr "Carta americà"
+
+#: ppdc/sample.c:142
+msgid "US Letter Long Edge"
+msgstr "Carta americà costat llarg"
+
+#: ppdc/sample.c:143
+msgid "US Letter Oversize"
+msgstr "Carta americà gran"
+
+#: ppdc/sample.c:144
+msgid "US Letter Oversize Long Edge"
+msgstr "Carta americà gran costat llarg"
+
+#: ppdc/sample.c:145
+msgid "US Letter Small"
+msgstr "Carta americà petit"
+
+#: cgi-bin/admin.c:1959 cgi-bin/admin.c:1972 cgi-bin/admin.c:1996
+msgid "Unable to access cupsd.conf file"
+msgstr "No es pot accedir al fitxer cups.conf"
+
+#: cgi-bin/help.c:133
+msgid "Unable to access help file."
+msgstr "No es pot accedir al fitxer d'ajuda."
+
+#: cgi-bin/admin.c:526
+msgid "Unable to add RSS subscription"
+msgstr "No es pot afegir la subscripció RSS"
+
+#: cgi-bin/admin.c:814
+msgid "Unable to add class"
+msgstr "No es pot afegir la classe"
+
+#: backend/ipp.c:1635
+msgid "Unable to add document to print job."
+msgstr "No es pot obrir el documenta la tasca."
+
+#: scheduler/ipp.c:1548
+#, c-format
+msgid "Unable to add job for destination \"%s\"."
+msgstr "No es pot afegir la tasca al destí «%s»."
+
+#: cgi-bin/admin.c:1059 cgi-bin/admin.c:1419
+msgid "Unable to add printer"
+msgstr "No es pot afegir la impressora"
+
+#: scheduler/ipp.c:1246
+msgid "Unable to allocate memory for file types."
+msgstr "No es pot assignar la memòria pels tipus de fitxers."
+
+#: filter/pstops.c:451
+msgid "Unable to allocate memory for page info"
+msgstr "No s'ha pogut assignar memòria per la pàgina d'informació"
+
+#: filter/pstops.c:445
+msgid "Unable to allocate memory for pages array"
+msgstr "No s'ha pogut assignar memòria per la matriu de pàgines"
+
+#: cgi-bin/admin.c:1525
+msgid "Unable to cancel RSS subscription"
+msgstr "No es pot cancel·lar la subscripció RSS"
+
+#: backend/ipp.c:1942
+msgid "Unable to cancel print job."
+msgstr "No es pot cancel·lar la tasca d'impressió."
+
+#: cgi-bin/admin.c:2990
+msgid "Unable to change printer"
+msgstr "No es pot canviar la impressora"
+
+#: cgi-bin/admin.c:3906
+msgid "Unable to change printer-is-shared attribute"
+msgstr "No es pot canviar l'atribut printer-is-shared"
+
+#: cgi-bin/admin.c:1657 cgi-bin/admin.c:1799
+msgid "Unable to change server settings"
+msgstr "No es pot canviar la configuració del servidor"
+
+#: filter/commandtops.c:420
+msgid "Unable to configure printer options."
+msgstr "No es poden configurar les opcions de la impressora."
+
+#: cups/adminutil.c:911 cups/request.c:1016
+msgid "Unable to connect to host."
+msgstr "No es pot connectar a l'ordinador central."
+
+#: backend/ipp.c:713 backend/ipp.c:1138 backend/lpd.c:787 backend/socket.c:333
+#: backend/usb-unix.c:117
+msgid "Unable to contact printer, queuing on next printer in class."
+msgstr ""
+"No es pot contactar amb la impressora. Es posa a la cua de la següent "
+"impressora de la classe."
+
+#: cups/adminutil.c:726
+#, c-format
+msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
+msgstr ""
+"No es poden copiar els fitxers del controlador d'impressora CUPS de 64 bits "
+"(%d)."
+
+#: cups/adminutil.c:691
+#, c-format
+msgid "Unable to copy 64-bit Windows printer driver files (%d)."
+msgstr ""
+"No es poden copiar els fitxers del controlador d'impressora Windows de 64 "
+"bits (%d)."
+
+#: cups/adminutil.c:522
+#, c-format
+msgid "Unable to copy CUPS printer driver files (%d)."
+msgstr "No es poden copiar els fitxers del controlador d'impressora CUPS (%d)."
+
+#: scheduler/ipp.c:2649
+#, c-format
+msgid "Unable to copy PPD file - %s"
+msgstr "No es pot copiar el fitxer PPD - %s"
+
+#: scheduler/ipp.c:2704
+msgid "Unable to copy PPD file."
+msgstr "No es pot copiar el fitxer PPD."
+
+#: cups/adminutil.c:487
+#, c-format
+msgid "Unable to copy Windows 2000 printer driver files (%d)."
+msgstr ""
+"No es poden copiar els fitxers del controlador d'impressora Windows 2000 "
+"(%d)."
+
+#: cups/adminutil.c:610
+#, c-format
+msgid "Unable to copy Windows 9x printer driver files (%d)."
+msgstr ""
+"No es poden copiar els fitxers del controlador d'impressora Windows 9x (%d)."
+
+#: scheduler/ipp.c:2626
+#, c-format
+msgid "Unable to copy interface script - %s"
+msgstr "No es pot copiar l'script de la interfície - %s"
+
+#: backend/ipp.c:2034
+msgid "Unable to create compressed print file"
+msgstr "No es pot crear el fitxer d'impressió comprimit"
+
+#: cups/util.c:602 cups/util.c:1656
+msgid "Unable to create printer-uri"
+msgstr "No es pot crear el printer-uri"
+
+#: cgi-bin/admin.c:1850 cgi-bin/admin.c:1862 scheduler/cupsfilter.c:1236
+msgid "Unable to create temporary file"
+msgstr "No es pot crear el fitxer temporal"
+
+#: cgi-bin/admin.c:2153
+msgid "Unable to delete class"
+msgstr "No es pot esborrar la classe"
+
+#: cgi-bin/admin.c:2238
+msgid "Unable to delete printer"
+msgstr "No es pot esborrar la impressora"
+
+#: cgi-bin/classes.c:260 cgi-bin/printers.c:269
+msgid "Unable to do maintenance command"
+msgstr "No es pot executar la comanda de manteniment"
+
+#: cgi-bin/admin.c:1974
+msgid "Unable to edit cupsd.conf files larger than 1MB"
+msgstr "No es poden editar fitxers cupsd.conf més grans d'1MB"
+
+#: cups/http.c:4272
+msgid ""
+"Unable to establish a secure connection to host (certificate chain invalid)."
+msgstr ""
+"No s'ha pogut establir una connexió segura amb l'amfitrió (la cadena del "
+"certificat no és vàlida)."
+
+#: cups/http.c:4262
+msgid ""
+"Unable to establish a secure connection to host (certificate not yet valid)."
+msgstr ""
+"No s'ha pogut establir una connexió segura amb l'amfitrió (el certificat "
+"encara no és vàlid)."
+
+#: cups/http.c:4257
+msgid "Unable to establish a secure connection to host (expired certificate)."
+msgstr ""
+"No s'ha pogut establir una connexió segura amb l'amfitrió (ha expirat el "
+"certificat)."
+
+#: cups/http.c:4267
+msgid "Unable to establish a secure connection to host (host name mismatch)."
+msgstr ""
+"No s'ha pogut establir una connexió segura amb l'amfitrió (hi ha un error en "
+"el nom de l'amfitrió)."
+
+#: cups/http.c:4277
+msgid ""
+"Unable to establish a secure connection to host (peer dropped connection "
+"before responding)."
+msgstr ""
+"No s'ha pogut establir una connexió segura amb l'amfitrió (s'ha tallat la "
+"connexió abans de respondre)."
+
+#: cups/http.c:4252
+msgid ""
+"Unable to establish a secure connection to host (self-signed certificate)."
+msgstr ""
+"No s'ha pogut establir una connexió segura amb l'amfitrió (el certificat és "
+"autosignat)."
+
+#: cups/http.c:4247
+msgid ""
+"Unable to establish a secure connection to host (untrusted certificate)."
+msgstr ""
+"No s'ha pogut establir una connexió segura amb l'amfitrió (el certificat no "
+"és de confiança)."
+
+#: cups/http.c:4008 cups/http.c:4304 cups/http.c:4337 cups/http.c:4354
+msgid "Unable to establish a secure connection to host."
+msgstr "No es pot establir una connexió segura amb l'ordinador central."
+
+#: cgi-bin/ipp-var.c:365
+msgid "Unable to find destination for job"
+msgstr "No es pot trobar el destí de la tasca"
+
+#: cups/http-support.c:1748
+msgid "Unable to find printer."
+msgstr "No es pot trobar la impressora."
+
+#: backend/ipp.c:2056
+msgid "Unable to generate compressed print file"
+msgstr "No es pot generar el fitxer d'impressió comprimit"
+
+#: backend/ipp.c:3009
+msgid "Unable to get backend exit status."
+msgstr "No es pot obtenir el motiu de la sortida en segon pla"
+
+#: cgi-bin/classes.c:450
+msgid "Unable to get class list"
+msgstr "No es pot obtenir la llista de classes"
+
+#: cgi-bin/classes.c:549
+msgid "Unable to get class status"
+msgstr "No es pot obtenir l'estat de la classe"
+
+#: cgi-bin/admin.c:1320
+msgid "Unable to get list of printer drivers"
+msgstr "No es pot obtenir la llista dels controladors d'impressora"
+
+#: cgi-bin/admin.c:2840
+msgid "Unable to get printer attributes"
+msgstr "No es poden obtenir els atributs de la impressora"
+
+#: cgi-bin/printers.c:467
+msgid "Unable to get printer list"
+msgstr "No es pot obtenir la llista d'impressores"
+
+#: cgi-bin/printers.c:569
+msgid "Unable to get printer status"
+msgstr "No es pot obtenir l'estat de la impressora"
+
+#: backend/ipp.c:933
+msgid "Unable to get printer status."
+msgstr "No es pot obtenir l'estat de la impressora."
+
+#: cups/adminutil.c:565 cups/adminutil.c:769
+#, c-format
+msgid "Unable to install Windows 2000 printer driver files (%d)."
+msgstr ""
+"No es poden instal·lar els fitxers del controlador d'impressores per Windows "
+"2000 (%d)."
+
+#: cups/adminutil.c:639
+#, c-format
+msgid "Unable to install Windows 9x printer driver files (%d)."
+msgstr ""
+"No es poden instal·lar els fitxers del controlador d'impressores per Windows "
+"9x (%d)."
+
+#: cgi-bin/help.c:92
+msgid "Unable to load help index."
+msgstr "No es pot carregar l'índex de l'ajuda."
+
+#: backend/ipp.c:642 backend/lpd.c:421 backend/socket.c:275
+#, c-format
+msgid "Unable to locate printer \"%s\"."
+msgstr "No es pot ubicar la impressora «%s»."
+
+#: backend/dnssd.c:781 backend/ipp.c:324 backend/lpd.c:204
+#: backend/socket.c:171
+msgid "Unable to locate printer."
+msgstr "No es pot ubicar la impressora."
+
+#: cgi-bin/admin.c:813
+msgid "Unable to modify class"
+msgstr "No es pot modificar la classe"
+
+#: cgi-bin/admin.c:1058 cgi-bin/admin.c:1418
+msgid "Unable to modify printer"
+msgstr "No es pot modificar la impressora"
+
+#: cgi-bin/ipp-var.c:432 cgi-bin/ipp-var.c:521
+msgid "Unable to move job"
+msgstr "No es pot moure la tasca"
+
+#: cgi-bin/ipp-var.c:434 cgi-bin/ipp-var.c:523
+msgid "Unable to move jobs"
+msgstr "No es poden moure les tasques"
+
+#: cgi-bin/admin.c:3186 cups/ppd.c:339
+msgid "Unable to open PPD file"
+msgstr "No es pot obrir el fitxer PPD"
+
+#: backend/ipp.c:2040
+msgid "Unable to open compressed print file"
+msgstr "No es pot obrir el fitxer d'impressió comprimit"
+
+#: cgi-bin/admin.c:2608
+msgid "Unable to open cupsd.conf file:"
+msgstr "No es pot obrir el fitxer cups.conf"
+
+#: backend/usb-unix.c:141
+msgid "Unable to open device file"
+msgstr "No es pot obrir el fitxer de dispositiu"
+
+#: scheduler/ipp.c:6140
+#, c-format
+msgid "Unable to open document #%d in job #%d."
+msgstr "No es pot obrir el document #%d a la tasca #%d."
+
+#: cgi-bin/help.c:364
+msgid "Unable to open help file."
+msgstr "No es pot obrir el fitxer d'impressió."
+
+#: backend/ipp.c:365 backend/ipp.c:1398 backend/ipp.c:1594 backend/ipp.c:2046
+#: backend/lpd.c:488 backend/socket.c:158 backend/usb.c:237
+#: filter/gziptoany.c:71 filter/pstops.c:300
+msgid "Unable to open print file"
+msgstr "No es pot obrir el fitxer d'impressió"
+
+#: filter/rastertoepson.c:998 filter/rastertohp.c:724
+#: filter/rastertolabel.c:1147
+msgid "Unable to open raster file"
+msgstr "No es pot obrir el fitxer de trama"
+
+#: cgi-bin/ipp-var.c:795
+msgid "Unable to print test page"
+msgstr "No es pot imprimir la pàgina de prova"
+
+#: backend/runloop.c:96 backend/runloop.c:325 backend/usb-darwin.c:613
+#: backend/usb-darwin.c:657 backend/usb-libusb.c:343 backend/usb-libusb.c:378
+msgid "Unable to read print data."
+msgstr "No es poden llegir les dades d'impressió."
+
+#: cups/dest.c:3402
+msgid "Unable to resolve printer URI."
+msgstr "No es pot resoldre l'URI de la impressora."
+
+#: cups/adminutil.c:2088
+#, c-format
+msgid "Unable to run \"%s\": %s"
+msgstr "No es pot executar «%s»: %s"
+
+#: filter/pstops.c:563
+msgid "Unable to see in file"
+msgstr "No es pot veure al fitxer"
+
+#: cgi-bin/ipp-var.c:598 cgi-bin/ipp-var.c:618
+msgid "Unable to send command to printer driver"
+msgstr "No es pot enviar la comanda al controlador de la impressora"
+
+#: backend/usb-darwin.c:735 backend/usb-libusb.c:454
+msgid "Unable to send data to printer."
+msgstr "No es poden enviar dades a la impressora."
+
+#: cups/adminutil.c:821
+#, c-format
+msgid "Unable to set Windows printer driver (%d)."
+msgstr "No es pot configurar el controlador d'impressores per Windows (%d)"
+
+#: cgi-bin/admin.c:3807
+msgid "Unable to set options"
+msgstr "No es poden configurar les opcions"
+
+#: cgi-bin/admin.c:3077
+msgid "Unable to set server default"
+msgstr "No es pot posar la configuració per defecte al servidor"
+
+#: backend/ipp.c:2868 backend/ipp.c:2945 backend/ipp.c:2953
+msgid "Unable to start backend process."
+msgstr "No es pot iniciar el procés en segon pla."
+
+#: cgi-bin/admin.c:1912
+msgid "Unable to upload cupsd.conf file"
+msgstr "No es pot penjar el fitxer cups.conf"
+
+#: backend/usb-darwin.c:1985 backend/usb-darwin.c:2009
+msgid "Unable to use legacy USB class driver."
+msgstr "No es pot fer servir el controlador de la classe USB antic."
+
+#: backend/runloop.c:125 backend/runloop.c:380
+msgid "Unable to write print data"
+msgstr "No es poden escriure les dades d'impressió"
+
+#: filter/gziptoany.c:90
+#, c-format
+msgid "Unable to write uncompressed print data: %s"
+msgstr "No es poden escriure les dades sense comprimir: %s"
+
+#: cups/http-support.c:1303
+msgid "Unauthorized"
+msgstr "No autoritzat"
+
+#: cgi-bin/admin.c:3503
+msgid "Units"
+msgstr "Unitats"
+
+#: cups/http-support.c:1343 cups/ppd.c:366
+msgid "Unknown"
+msgstr "Desconegut"
+
+#: filter/pstops.c:2213
+#, c-format
+msgid "Unknown choice \"%s\" for option \"%s\"."
+msgstr "La tria de «%s» per l'opció «%s» és desconeguda."
+
+#: backend/ipp.c:507
+#, c-format
+msgid "Unknown encryption option value: \"%s\"."
+msgstr "El valor de l'opció de xifrat «%s» és desconegut."
+
+#: backend/lpd.c:350
+#, c-format
+msgid "Unknown file order: \"%s\"."
+msgstr "Ordre desconegut del fitxer: «%s»."
+
+#: backend/lpd.c:321
+#, c-format
+msgid "Unknown format character: \"%c\"."
+msgstr "Format del caràcter desconegut: «%c»."
+
+#: cups/dest-options.c:770
+msgid "Unknown media size name."
+msgstr "El nom de la mida del suport no és conegut."
+
+#: backend/ipp.c:554
+#, c-format
+msgid "Unknown option \"%s\" with value \"%s\"."
+msgstr "L'opció «%s» amb valor «%s» és desconeguda."
+
+#: filter/pstops.c:2196
+#, c-format
+msgid "Unknown option \"%s\"."
+msgstr "L'opció «%s» és desconeguda."
+
+#: backend/lpd.c:336
+#, c-format
+msgid "Unknown print mode: \"%s\"."
+msgstr "El mode d'impressió «%s» és desconegut."
+
+#: scheduler/ipp.c:10496
+#, c-format
+msgid "Unknown printer-error-policy \"%s\"."
+msgstr "El paràmetre printer-error-policy «%s» és desconegut."
+
+#: scheduler/ipp.c:10479
+#, c-format
+msgid "Unknown printer-op-policy \"%s\"."
+msgstr "El paràmetre printer-op-policy «%s» és desconegut."
+
+#: cups/http-addrlist.c:710
+msgid "Unknown service name."
+msgstr "El nom del servei és desconegut."
+
+#: backend/ipp.c:526
+#, c-format
+msgid "Unknown version option value: \"%s\"."
+msgstr "El valor de l'opció de la versió és desconegut: «%s»."
+
+#: scheduler/ipp.c:402
+#, c-format
+msgid "Unsupported character set \"%s\"."
+msgstr "No s'admet el grup de caràcters «%s»."
+
+#: scheduler/ipp.c:8171 scheduler/ipp.c:9401 scheduler/ipp.c:10950
+#, c-format
+msgid "Unsupported compression \"%s\"."
+msgstr "No s'admet la compressió «%s»."
+
+#: scheduler/ipp.c:8305 scheduler/ipp.c:9551 scheduler/ipp.c:10979
+#, c-format
+msgid "Unsupported document-format \"%s\"."
+msgstr "No s'admet el document-format «%s»."
+
+#: scheduler/ipp.c:9534
+#, c-format
+msgid "Unsupported document-format \"%s/%s\"."
+msgstr "No s'admet el document-format «%s/%s»."
+
+#: scheduler/ipp.c:1367
+#, c-format
+msgid "Unsupported format \"%s\"."
+msgstr "No s'admet el format «%s»."
+
+#: scheduler/ipp.c:1465
+msgid "Unsupported margins."
+msgstr "No s'admeten els marges."
+
+#: cups/pwg-media.c:529
+msgid "Unsupported media value."
+msgstr "No s'admet el valor del suport."
+
+#: filter/pstops.c:2478
+#, c-format
+msgid "Unsupported number-up value %d, using number-up=1."
+msgstr "No s'admet el valor %d a number-up. Es fa servir number-up=1."
+
+#: filter/pstops.c:2512
+#, c-format
+msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
+msgstr ""
+"No s'admet el valor %s a number-up-layout. Es fa servir number-up-"
+"layout=lrtb."
+
+#: filter/pstops.c:2563
+#, c-format
+msgid "Unsupported page-border value %s, using page-border=none."
+msgstr "No s'admet el valor %s a page-border. Es fa servir page-border=none."
+
+#: filter/rastertopwg.c:147 filter/rastertopwg.c:155 filter/rastertopwg.c:164
+msgid "Unsupported raster data."
+msgstr "No s'admet les dades en trama."
+
+#: cups/snmp.c:1112
+msgid "Unsupported value type"
+msgstr "El tipus de valor no és compatible"
+
+#: cups/http-support.c:1318
+msgid "Upgrade Required"
+msgstr "S'ha d'actualitzar"
+
+#: systemv/lpadmin.c:668
+msgid ""
+"Usage:\n"
+"\n"
+" lpadmin [-h server] -d destination\n"
+" lpadmin [-h server] -x destination\n"
+" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
+" [-r remove-class] [-v device] [-D description]\n"
+" [-P ppd-file] [-o name=value]\n"
+" [-u allow:user,user] [-u deny:user,user]"
+msgstr ""
+"Sintaxi:\n"
+"\n"
+" lpadmin [-h servidor] -d destí\n"
+" lpadmin [-h servidor] -x destí\n"
+" lpadmin [-h servidor] -p impressora [-c afegir-classe] [-i interfície] [-"
+"m model]\n"
+" [-r eliminar-classe] [-v dispositiu] [-D descripció]\n"
+" [-P fitxer-ppd] [-o nom=valor]\n"
+" [-u allow:usuari,usuari] [-u deny:usuari,usuari]"
+
+#: backend/dnssd.c:241 backend/ipp.c:313 backend/lpd.c:191
+#: backend/socket.c:135 backend/usb.c:183 filter/commandtops.c:74
+#: filter/gziptoany.c:50 filter/pstops.c:264 monitor/bcp.c:62
+#: monitor/tbcp.c:61
+#, c-format
+msgid "Usage: %s job-id user title copies options [file]"
+msgstr "Sintaxi: %s id-tasca usuari títol còpies opcions [fitxer]"
+
+#: systemv/cupsaddsmb.c:281
+msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
+msgstr "Sintaxi: cupsaddsmb [opcions] impressora1 ... impressoraN"
+
+#: systemv/cupsctl.c:200
+msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
+msgstr "Sintaxi: cupsctl [opcions] [param=valor ... paramN=valorN]"
+
+#: scheduler/main.c:2017
+msgid "Usage: cupsd [options]"
+msgstr "Sintaxi: cupsd [opcions]"
+
+#: scheduler/cupsfilter.c:1429
+msgid "Usage: cupsfilter [ options ] filename"
+msgstr "Sintaxi: cupsfilter [ opcions ] nomfitxer"
+
+#: systemv/cupstestdsc.c:425
+msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
+msgstr "Sintaxi: cupstestdsc [opcions] nomfitxer.ps [...nomfitxer.ps]"
+
+#: systemv/cupstestppd.c:3793
+msgid ""
+"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
+msgstr ""
+"Sintaxi: cupstestppd [opcions] nomfitxer1.ppd[.gz] [... nomfitxerN.ppd[.gz]]"
+
+#: test/ipptool.c:4401
+msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
+msgstr "Sintaxi: ipptool [opcions] URI nomfitxer[ ... nomfitxerN]"
+
+#: systemv/lpmove.c:125
+msgid "Usage: lpmove job/src dest"
+msgstr "Sintaxi: lpmove tasca/font destí"
+
+#: systemv/lpoptions.c:553
+msgid ""
+"Usage: lpoptions [-h server] [-E] -d printer\n"
+" lpoptions [-h server] [-E] [-p printer] -l\n"
+" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
+" lpoptions [-h server] [-E] -x printer"
+msgstr ""
+"Sintaxi: lpoptions [-h servidor] [-E] -d impressora\n"
+" lpoptions [-h servidor] [-E] [-p impressora] -l\n"
+" lpoptions [-h servidor] [-E] -p impressora -o opció[=valor] ...\n"
+" lpoptions [-h servidor] [-E] -x impressora"
+
+#: systemv/lppasswd.c:476
+msgid "Usage: lppasswd [-g groupname]"
+msgstr "Sintaxi: lppasswd [-g nomgrup]"
+
+#: systemv/lppasswd.c:479
+msgid ""
+"Usage: lppasswd [-g groupname] [username]\n"
+" lppasswd [-g groupname] -a [username]\n"
+" lppasswd [-g groupname] -x [username]"
+msgstr ""
+"Sintaxi: lppasswd [-g nomgrup] [nomusuari]\n"
+" lppasswd [-g nomgrup] -a [nomusuari]\n"
+" lppasswd [-g nomgrup] -x [nomusuari]"
+
+#: berkeley/lpq.c:670
+msgid ""
+"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
+msgstr ""
+"Sintaxi: lpq [-P destí] [-U nomusuari] [-h nomamfitrió[:port]] [-l] "
+"[+interval]"
+
+#: ppdc/ppdc.cxx:435
+msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
+msgstr "Sintaxi: ppdc [opcions] nomfitxer.rv [ ... nomfitxerN.drv ]"
+
+#: ppdc/ppdhtml.cxx:172
+msgid "Usage: ppdhtml [options] filename.drv >filename.html"
+msgstr "Sintaxi: ppdhtml [opcions] nomfitxer.drv >nomfitxer.html"
+
+#: ppdc/ppdi.cxx:128
+msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
+msgstr "Sintaxi: ppdi [opcions] nomfitxer.ppd [ ... nomfitxerN.ppd ]"
+
+#: ppdc/ppdmerge.cxx:367
+msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
+msgstr "Sintaxi: ppdmerge [opcions] nomfitxer.ppd [ ... nomfitxerN.ppd ]"
+
+#: ppdc/ppdpo.cxx:252
+msgid ""
+"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
+msgstr ""
+"Sintaxi: ppdpo [opcions] -o nomfitxer.po nomfitxer.drv [ ... nomfitxerN.drv]"
+
+#: backend/snmp.c:218
+msgid "Usage: snmp [host-or-ip-address]"
+msgstr "Sintaxi: snmp [adreça-amfitrió-o-ip]"
+
+#: cups/snmp.c:1064
+msgid "Value uses indefinite length"
+msgstr "El valor té una longitud indefinida"
+
+#: cups/snmp.c:1049
+msgid "VarBind uses indefinite length"
+msgstr "VarBind té una longitud indefinida"
+
+#: cups/snmp.c:999
+msgid "Version uses indefinite length"
+msgstr "Version té una longitud indefinida"
+
+#: backend/ipp.c:1675
+msgid "Waiting for job to complete."
+msgstr "S'està esperant que acabi la tasca."
+
+#: backend/usb-darwin.c:457 backend/usb-libusb.c:193
+msgid "Waiting for printer to become available."
+msgstr "S'està esperant que la impressora estigui disponible."
+
+#: backend/socket.c:444
+msgid "Waiting for printer to finish."
+msgstr "S'està esperant que la impressora acabi."
+
+#: cups/adminutil.c:793
+msgid "Warning, no Windows 2000 printer drivers are installed."
+msgstr "AVÃS. No hi ha cap controlador per Windows 2000 instal·lat."
+
+#: cups/http-support.c:1339
+msgid "Web Interface is Disabled"
+msgstr "La interfície web està deshabilitada"
+
+#: cups/ppd.c:1947
+msgid "Yes"
+msgstr "Sí"
+
+#: scheduler/client.c:2437
+#, c-format
+msgid ""
+"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://"
+"%s:%d%s</A>."
+msgstr ""
+"Heu d'accedir a aquesta pagina a través de la URL <A HREF=\"https://%s:%d%s"
+"\">https://%s:%d%s</A>."
+
+#: systemv/lppasswd.c:254
+msgid ""
+"Your password must be at least 6 characters long, cannot contain your "
+"username, and must contain at least one letter and number."
+msgstr ""
+"La contrasenya ha de tenir com a mínim 6 caràcters, no pot contenir el nom "
+"d'usuari, i ha de tenir com a mínim una lletra i un número."
+
+#: ppdc/sample.c:439
+msgid "ZPL Label Printer"
+msgstr "Impressora d'etiquetes ZPL"
+
+#: ppdc/sample.c:362
+msgid "Zebra"
+msgstr "Zebra"
+
+#: cups/notify.c:102
+msgid "aborted"
+msgstr "interromput"
+
+#: cups/notify.c:99
+msgid "canceled"
+msgstr "cancel·lat"
+
+#: cups/notify.c:105
+msgid "completed"
+msgstr "completat"
+
+#: scheduler/ipp.c:6012
+msgid "cups-deviced failed to execute."
+msgstr "no s'ha pogut executar correctament la cups-deviced."
+
+#: scheduler/ipp.c:6842 scheduler/ipp.c:7091
+msgid "cups-driverd failed to execute."
+msgstr "no s'ha pogut executar correctament la cups-driverd"
+
+#: systemv/cupsaddsmb.c:233
+#, c-format
+msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
+msgstr "cupsaddsmb: falta el fitxer PPD per la impressora «%s» - %s"
+
+#: systemv/cupsctl.c:141
+msgid "cupsctl: Cannot set Listen or Port directly."
+msgstr "cupsctl: no es pot establir Listen o Port directament."
+
+#: systemv/cupsctl.c:152
+#, c-format
+msgid "cupsctl: Unable to connect to server: %s"
+msgstr "cupsctl: no es pot connectar al servidor: %s"
+
+#: systemv/cupsctl.c:195
+#, c-format
+msgid "cupsctl: Unknown option \"%s\""
+msgstr "cupsctl: l'opció «%s» és desconeguda"
+
+#: systemv/cupsctl.c:197
+#, c-format
+msgid "cupsctl: Unknown option \"-%c\""
+msgstr "cupsctl: l'opció «-%c» és desconeguda"
+
+#: scheduler/main.c:189
+msgid "cupsd: Expected config filename after \"-c\" option."
+msgstr ""
+"cupsd: s'esperava un nom de fitxer de configuració després de l'opció «-c»."
+
+#: scheduler/main.c:221 scheduler/main.c:228
+msgid "cupsd: Unable to get current directory."
+msgstr "cupsd: No es pot obtenir el directori actual."
+
+#: scheduler/main.c:295
+#, c-format
+msgid "cupsd: Unknown argument \"%s\" - aborting."
+msgstr "cupsd: l'argument «%s» és desconegut - s'interromp."
+
+#: scheduler/main.c:288
+#, c-format
+msgid "cupsd: Unknown option \"%c\" - aborting."
+msgstr "cupsd: l'opció «%c» és desconeguda - s'interromp."
+
+#: scheduler/main.c:255
+msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
+msgstr ""
+"cupsd: no s'ha compilat amb compatibilitat per launchd(8). S'executa en mode "
+"normal."
+
+#: scheduler/cupsfilter.c:1209
+#, c-format
+msgid "cupsfilter: Invalid document number %d."
+msgstr "cupsfilter: el document número %d no és vàlid."
+
+#: scheduler/cupsfilter.c:1203
+#, c-format
+msgid "cupsfilter: Invalid job ID %d."
+msgstr "cupsfilter: la tasca %d no és vàlida."
+
+#: scheduler/cupsfilter.c:358
+msgid "cupsfilter: Only one filename can be specified."
+msgstr "cupsfilter: només es pot especificar un nom de fitxer."
+
+#: scheduler/cupsfilter.c:1251
+#, c-format
+msgid "cupsfilter: Unable to get job file - %s"
+msgstr "cupsfilter: no es pot obtenir el fitxer de la tasca - %s"
+
+#: systemv/cupstestppd.c:261
+msgid "cupstestppd: The -q option is incompatible with the -v option."
+msgstr "cupstestppd: l'opció -q no és compatible amb la opció -v."
+
+#: systemv/cupstestppd.c:277
+msgid "cupstestppd: The -v option is incompatible with the -q option."
+msgstr "cupstestppd: la opció -v no és compatible amb la opció -q."
+
+#: systemv/lpstat.c:1231 systemv/lpstat.c:1234 systemv/lpstat.c:1237
+#, c-format
+msgid "device for %s/%s: %s"
+msgstr "dispositiu per %s/%s: %s"
+
+#: systemv/lpstat.c:1218 systemv/lpstat.c:1221 systemv/lpstat.c:1224
+#, c-format
+msgid "device for %s: %s"
+msgstr "dispositiu per %s: %s"
+
+#: cups/snmp.c:1036
+msgid "error-index uses indefinite length"
+msgstr "error-index fa servir una longitud indefinida"
+
+#: cups/snmp.c:1028
+msgid "error-status uses indefinite length"
+msgstr "error-status fa servir una longitud indefinida"
+
+#: cups/notify.c:90
+msgid "held"
+msgstr "En pausa"
+
+#: berkeley/lpc.c:209
+msgid "help\t\tGet help on commands."
+msgstr "help\t\tproporciona ajuda sobre les comandes."
+
+#: cups/notify.c:131
+msgid "idle"
+msgstr "inactiva"
+
+#: test/ipptool.c:373 test/ipptool.c:515 test/ipptool.c:539
+msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
+msgstr "ipptool: «-i» i «-n» no són compatibles amb «-X»."
+
+#: test/ipptool.c:597
+#, c-format
+msgid "ipptool: Bad URI - %s."
+msgstr "ipptool: l'URI no es correcte - %s."
+
+#: test/ipptool.c:362
+#, c-format
+msgid "ipptool: Bad version %s for \"-V\"."
+msgstr "ipptool: la versió %s de «-V» no és correcta."
+
+#: test/ipptool.c:508
+msgid "ipptool: Invalid seconds for \"-i\"."
+msgstr "ipptool: els segons de «-i» no són correctes."
+
+#: test/ipptool.c:578
+msgid "ipptool: May only specify a single URI."
+msgstr "ipptool: heu d'especificar només un URI."
+
+#: test/ipptool.c:531
+msgid "ipptool: Missing count for \"-n\"."
+msgstr "ipptool: falta el comptador de «-n»."
+
+#: test/ipptool.c:408
+msgid "ipptool: Missing filename for \"-f\"."
+msgstr "ipptool: falta el nom del fitxer a «-f»."
+
+#: test/ipptool.c:389
+msgid "ipptool: Missing name=value for \"-d\"."
+msgstr "ipptool: falta nom=valor a «-d»."
+
+#: test/ipptool.c:498
+msgid "ipptool: Missing seconds for \"-i\"."
+msgstr "ipptool: falten els segons a «-i»."
+
+#: test/ipptool.c:332
+msgid "ipptool: Missing timeout for \"-T\"."
+msgstr "ipptool: falta el temps màxim d'espera a «-T»."
+
+#: test/ipptool.c:345
+msgid "ipptool: Missing version for \"-V\"."
+msgstr "ipptool: falta la versió a «-V»."
+
+#: test/ipptool.c:624
+msgid "ipptool: URI required before test file."
+msgstr "ipptool: falta l'URI abans del fitxer de prova."
+
+#: test/ipptool.c:558
+#, c-format
+msgid "ipptool: Unknown option \"-%c\"."
+msgstr "ipptool: l'opció «-%c» és desconeguda."
+
+#: scheduler/ipp.c:7838
+msgid "job-printer-uri attribute missing."
+msgstr "Falta l'atribut de job-printer-uri."
+
+#: systemv/lpadmin.c:131 systemv/lpadmin.c:375
+msgid "lpadmin: Class name can only contain printable characters."
+msgstr "lpadmin: el nom de la classe només pot tenir caràcters imprimibles."
+
+#: systemv/lpadmin.c:614
+msgid "lpadmin: Expected PPD after \"-P\" option."
+msgstr "lpadmin: s'esperava un PPD després de la opció «-P»."
+
+#: systemv/lpadmin.c:457
+msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
+msgstr "lpadmin: s'esperava allow/deny:llistausuaris després de la opció «-u»."
+
+#: systemv/lpadmin.c:364
+msgid "lpadmin: Expected class after \"-r\" option."
+msgstr "lpadmin: s'esperava una classe després de la opció «-r»."
+
+#: systemv/lpadmin.c:120
+msgid "lpadmin: Expected class name after \"-c\" option."
+msgstr "lpadmin: s'esperava un nom de classe després de la opció «-c»."
+
+#: systemv/lpadmin.c:558
+msgid "lpadmin: Expected description after \"-D\" option."
+msgstr "lpadmin: s'esperava una descripció després de la opció «-D»."
+
+#: systemv/lpadmin.c:491
+msgid "lpadmin: Expected device URI after \"-v\" option."
+msgstr "lpadmin: s'esperava un URI de dispositiu després de la opció «-v»."
+
+#: systemv/lpadmin.c:574
+msgid "lpadmin: Expected file type(s) after \"-I\" option."
+msgstr "lpadmin: s'esperava un(s) tipus de fitxer(s) després de la opció «-I»."
+
+#: systemv/lpadmin.c:202
+msgid "lpadmin: Expected hostname after \"-h\" option."
+msgstr ""
+"lpadmin: s'esperava un nom d'ordinador central després de la opció «-h»."
+
+#: systemv/lpadmin.c:221
+msgid "lpadmin: Expected interface after \"-i\" option."
+msgstr "lpadmin: s'esperava una interfície després de la opció «-i»."
+
+#: systemv/lpadmin.c:594
+msgid "lpadmin: Expected location after \"-L\" option."
+msgstr "lpadmin: s'esperava una ubicació després de la opció «-L»."
+
+#: systemv/lpadmin.c:274
+msgid "lpadmin: Expected model after \"-m\" option."
+msgstr "lpadmin: s'esperava un model després de la opció «-m»."
+
+#: systemv/lpadmin.c:417
+msgid "lpadmin: Expected name after \"-R\" option."
+msgstr "lpadmin: s'esperava un nom després de la opció «-R»."
+
+#: systemv/lpadmin.c:294
+msgid "lpadmin: Expected name=value after \"-o\" option."
+msgstr "lpadmin: s'esperava nom=valor després de la opció «-o»."
+
+#: systemv/lpadmin.c:313
+msgid "lpadmin: Expected printer after \"-p\" option."
+msgstr "lpadmin: s'esperava una impressora després de la opció «-p»."
+
+#: systemv/lpadmin.c:164
+msgid "lpadmin: Expected printer name after \"-d\" option."
+msgstr "lpadmin: s'esperava un nom d'impressora després de la opció «-d»."
+
+#: systemv/lpadmin.c:525
+msgid "lpadmin: Expected printer or class after \"-x\" option."
+msgstr "lpadmin: s'esperava un impressora o classe després de la opció «-x»."
+
+#: systemv/lpadmin.c:975
+msgid "lpadmin: No member names were seen."
+msgstr "lpadmin: no s'ha trobat cap nom de membre."
+
+#: systemv/lpadmin.c:762
+#, c-format
+msgid "lpadmin: Printer %s is already a member of class %s."
+msgstr "lpadmin: la impressora %s ja és membre de la classe %s."
+
+#: systemv/lpadmin.c:989
+#, c-format
+msgid "lpadmin: Printer %s is not a member of class %s."
+msgstr "lpadmin: la impressora %s no és membre de la classe %s."
+
+#: systemv/lpadmin.c:175 systemv/lpadmin.c:324 systemv/lpadmin.c:536
+msgid "lpadmin: Printer name can only contain printable characters."
+msgstr ""
+"lpadmin: el nom de la impressora només pot contenir caràcters imprimibles."
+
+#: systemv/lpadmin.c:105
+msgid ""
+"lpadmin: Unable to add a printer to the class:\n"
+" You must specify a printer name first."
+msgstr ""
+"lpadmin: no s'ha pogut afegir una impressora a la classe:\n"
+" Heu d'especificar primer un nom d'impressora."
+
+#: systemv/lpadmin.c:96 systemv/lpadmin.c:149 systemv/lpadmin.c:253
+#: systemv/lpadmin.c:339 systemv/lpadmin.c:393 systemv/lpadmin.c:510
+#: systemv/lpadmin.c:647
+#, c-format
+msgid "lpadmin: Unable to connect to server: %s"
+msgstr "lpadmin: no s'ha pogut connectar al servidor: %s"
+
+#: systemv/lpadmin.c:1329
+msgid "lpadmin: Unable to create temporary file"
+msgstr "lpadmin: no s'ha pogut crear el fitxer temporal"
+
+#: systemv/lpadmin.c:402
+msgid ""
+"lpadmin: Unable to delete option:\n"
+" You must specify a printer name first."
+msgstr ""
+"lpadmin: no s'ha pogut esborrar la opció:\n"
+" Heu d'especificar primer un nom d'impressora."
+
+#: systemv/lpadmin.c:1339
+#, c-format
+msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
+msgstr "lpadmin: no s'ha pogut obrir el fitxer PPD «%s» - %s"
+
+#: systemv/lpadmin.c:348
+msgid ""
+"lpadmin: Unable to remove a printer from the class:\n"
+" You must specify a printer name first."
+msgstr ""
+"lpadmin: no es pot esborrar una impressora de la classe:\n"
+" Heu d'especificar primer un nom d'impressora."
+
+#: systemv/lpadmin.c:656
+msgid ""
+"lpadmin: Unable to set the printer options:\n"
+" You must specify a printer name first."
+msgstr ""
+"lpadmin: no es pot establir les opcions de la impressora:\n"
+" Heu d'especificar primer un nom d'impressora."
+
+#: systemv/lpadmin.c:474
+#, c-format
+msgid "lpadmin: Unknown allow/deny option \"%s\"."
+msgstr "lpadmin: l'opció allow/deny «%s» és desconeguda."
+
+#: systemv/lpadmin.c:629
+#, c-format
+msgid "lpadmin: Unknown argument \"%s\"."
+msgstr "lpadmin: l'argument «%s» és desconegut."
+
+#: systemv/lpadmin.c:624
+#, c-format
+msgid "lpadmin: Unknown option \"%c\"."
+msgstr "lpadmin: l'opció «%c» és desconeguda."
+
+#: systemv/lpadmin.c:580
+msgid "lpadmin: Warning - content type list ignored."
+msgstr "lpadmin: avís - s'ignora el contingut de la llista de tipus."
+
+#: berkeley/lpc.c:76 berkeley/lpc.c:104 berkeley/lpc.c:140
+msgid "lpc> "
+msgstr "lpc> "
+
+#: systemv/lpinfo.c:137
+msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
+msgstr ""
+"lpinfo: s'esperava una cadena d'ID de dispositiu 1284 després de «--device-"
+"id»."
+
+#: systemv/lpinfo.c:190
+msgid "lpinfo: Expected language after \"--language\"."
+msgstr "lpinfo: s'esperava un idioma després de «--language»."
+
+#: systemv/lpinfo.c:207
+msgid "lpinfo: Expected make and model after \"--make-and-model\"."
+msgstr "lpinfo: s'esperava una marca i model després de «--make-and-model»."
+
+#: systemv/lpinfo.c:224
+msgid "lpinfo: Expected product string after \"--product\"."
+msgstr "lpinfo: s'esperava una cadena de producte després de «--product!»."
+
+#: systemv/lpinfo.c:155
+msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
+msgstr ""
+"lpinfo: s'esperava una llista d'esquemes després de la opció «--exclude-"
+"schemes»."
+
+#: systemv/lpinfo.c:173
+msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
+msgstr ""
+"lpinfo: s'esperava una llista d'esquemes després de la opció «--include-"
+"schemes»."
+
+#: systemv/lpinfo.c:241
+msgid "lpinfo: Expected timeout after \"--timeout\"."
+msgstr "lpinfo: s'esperava un temps d'espera després de «--timeout»."
+
+#: systemv/lpinfo.c:265
+#, c-format
+msgid "lpinfo: Unknown argument \"%s\"."
+msgstr "lpinfo: l'argument «%s» és desconegut."
+
+#: systemv/lpinfo.c:259
+#, c-format
+msgid "lpinfo: Unknown option \"%c\"."
+msgstr "lpinfo: l'opció «%c» és desconeguda."
+
+#: systemv/lpinfo.c:252
+#, c-format
+msgid "lpinfo: Unknown option \"%s\"."
+msgstr "lpinfo: l'opció «%s» és desconeguda."
+
+#: systemv/lpmove.c:133
+#, c-format
+msgid "lpmove: Unable to connect to server: %s"
+msgstr "lpmove: no s'ha pogut connectar al servidor: %s"
+
+#: systemv/lpmove.c:119
+#, c-format
+msgid "lpmove: Unknown argument \"%s\"."
+msgstr "lpmove: l'argument «%s» és desconegut."
+
+#: systemv/lpmove.c:97
+#, c-format
+msgid "lpmove: Unknown option \"%c\"."
+msgstr "lpmove: l'opció «%c» és desconeguda."
+
+#: systemv/lpoptions.c:150 systemv/lpoptions.c:168 systemv/lpoptions.c:244
+msgid "lpoptions: No printers."
+msgstr "lpoptions: no hi ha cap impressora."
+
+#: systemv/lpoptions.c:219
+#, c-format
+msgid "lpoptions: Unable to add printer or instance: %s"
+msgstr "lpoptions: no s'ha pogut afegir la impressora o la instància: %s"
+
+#: systemv/lpoptions.c:521
+#, c-format
+msgid "lpoptions: Unable to get PPD file for %s: %s"
+msgstr "lpoptions: no s'ha pogut obtenir el fitxer PPD de %s: %s"
+
+#: systemv/lpoptions.c:529
+#, c-format
+msgid "lpoptions: Unable to open PPD file for %s."
+msgstr "lpoptions: no s'ha pogut obrir el fitxer PPD per %s."
+
+#: systemv/lpoptions.c:99
+msgid "lpoptions: Unknown printer or class."
+msgstr "lpoptions: la impressora o la classe són desconegudes."
+
+#: systemv/lppasswd.c:173
+msgid "lppasswd: Only root can add or delete passwords."
+msgstr ""
+"lppasswd: només l'usuari primari (root) pot afegir o esborrar contrasenyes."
+
+#: systemv/lppasswd.c:302
+msgid "lppasswd: Password file busy."
+msgstr "lppaswd: el fitxer de contrasenyes està ocupat."
+
+#: systemv/lppasswd.c:431
+msgid "lppasswd: Password file not updated."
+msgstr "lppaswd: el fitxer de contrasenyes no està actualitzat."
+
+#: systemv/lppasswd.c:398
+msgid "lppasswd: Sorry, password doesn't match."
+msgstr "lppaswwd: la contrasenya no coincideix."
+
+#: systemv/lppasswd.c:253
+msgid "lppasswd: Sorry, password rejected."
+msgstr "lppaswwd: s'ha refusat la contrasenya."
+
+#: systemv/lppasswd.c:230
+msgid "lppasswd: Sorry, passwords don't match."
+msgstr "lppaswwd: les contrasenyes no coincideixen."
+
+#: systemv/lppasswd.c:199 systemv/lppasswd.c:218
+#, c-format
+msgid "lppasswd: Unable to copy password string: %s"
+msgstr "lppasswd: no s'ha pogut copiar la cadena de contrasenya: %s"
+
+#: systemv/lppasswd.c:304 systemv/lppasswd.c:312 systemv/lppasswd.c:329
+#, c-format
+msgid "lppasswd: Unable to open password file: %s"
+msgstr "lppasswd: no s'ha pogut obrir el fitxer de contrasenyes: %s"
+
+#: systemv/lppasswd.c:364 systemv/lppasswd.c:377 systemv/lppasswd.c:408
+#, c-format
+msgid "lppasswd: Unable to write to password file: %s"
+msgstr "lppasswd: no s'ha pogut escriure al fitxer de contrasenyes: %s"
+
+#: systemv/lppasswd.c:446
+#, c-format
+msgid "lppasswd: failed to backup old password file: %s"
+msgstr ""
+"lppasswd: no s'ha pogut fer la còpia de seguretat del fitxer de contrasenyes "
+"antic: %s"
+
+#: systemv/lppasswd.c:458
+#, c-format
+msgid "lppasswd: failed to rename password file: %s"
+msgstr "lppasswd: no s'ha pogut canviar el nom del fitxer de contrasenyes: %s"
+
+#: systemv/lppasswd.c:389
+#, c-format
+msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
+msgstr "lppaswd: l'usuari «%s» i el grup «%s» no existeixen."
+
+#: systemv/lpstat.c:1039
+#, c-format
+msgid ""
+"lpstat: error - %s environment variable names non-existent destination \"%s"
+"\"."
+msgstr ""
+"lpstat: error - la variable d'entorn %s esmenta el destí «%s» que no "
+"existeix."
+
+#: systemv/lpstat.c:970
+#, c-format
+msgid "members of class %s:"
+msgstr "membres de la classe %s:"
+
+#: berkeley/lpq.c:582
+msgid "no entries"
+msgstr "no hi ha cap entrada"
+
+#: systemv/lpstat.c:1043
+msgid "no system default destination"
+msgstr "no hi ha cap destí per defecte"
+
+#: scheduler/ipp.c:5702
+msgid "notify-events not specified."
+msgstr "no s'ha especificat cap notify-events."
+
+#: scheduler/ipp.c:2034 scheduler/ipp.c:5607
+#, c-format
+msgid "notify-recipient-uri URI \"%s\" is already used."
+msgstr "L'URI de notify-recipient-uri «%s» ja s'ha fet servir."
+
+#: scheduler/ipp.c:2024 scheduler/ipp.c:5597
+#, c-format
+msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
+msgstr "L'URI de notify-recipient-uri «%s» fa servir un esquema desconegut."
+
+#: cups/notify.c:87
+msgid "pending"
+msgstr "pendent"
+
+#: ppdc/ppdc.cxx:113 ppdc/ppdpo.cxx:93
+#, c-format
+msgid "ppdc: Adding include directory \"%s\"."
+msgstr "ppdc: s'afegeix el directori inclòs «%s»."
+
+#: ppdc/ppdpo.cxx:134
+#, c-format
+msgid "ppdc: Adding/updating UI text from %s."
+msgstr "ppdc: s'afegeix/actualitza el text de l'UI des de %s."
+
+#: ppdc/ppdc-source.cxx:410
+#, c-format
+msgid "ppdc: Bad boolean value (%s) on line %d of %s."
+msgstr "ppdc: valor booleà incorrecte (%s) a la línia %d de %s."
+
+#: ppdc/ppdc-import.cxx:264
+#, c-format
+msgid "ppdc: Bad font attribute: %s"
+msgstr "ppdc: l'atribut del tipus de lletra és incorrecte: %s"
+
+#: ppdc/ppdc-source.cxx:1796
+#, c-format
+msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
+msgstr "ppdc: el nom de resolució «%s» de la línia %d de %s és incorrecte."
+
+#: ppdc/ppdc-source.cxx:1113
+#, c-format
+msgid "ppdc: Bad status keyword %s on line %d of %s."
+msgstr "ppdc: la paraula clau d'estat %s de la línia %d de %s és incorrecta."
+
+#: ppdc/ppdc-source.cxx:2033
+#, c-format
+msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
+msgstr ""
+"ppdc: la variable de substitució ($%c) de la línia %d de %s és incorrecta."
+
+#: ppdc/ppdc-source.cxx:2719
+#, c-format
+msgid "ppdc: Choice found on line %d of %s with no Option."
+msgstr "ppdc: s'ha trobat una elecció a la línia %d de %s sense cap opció."
+
+#: ppdc/ppdc-source.cxx:1698
+#, c-format
+msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
+msgstr "ppdc: #po duplicat per l'idioma %s a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:932
+#, c-format
+msgid "ppdc: Expected a filter definition on line %d of %s."
+msgstr "ppdc: s'esperava una definició de filtre a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:955
+#, c-format
+msgid "ppdc: Expected a program name on line %d of %s."
+msgstr "ppdc: s'esperava un nom de programa a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:394
+#, c-format
+msgid "ppdc: Expected boolean value on line %d of %s."
+msgstr "ppdc: s'esperava un valor booleà a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1093
+#, c-format
+msgid "ppdc: Expected charset after Font on line %d of %s."
+msgstr ""
+"ppdc: s'esperava un joc de caràcters després de Font a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:447
+#, c-format
+msgid "ppdc: Expected choice code on line %d of %s."
+msgstr "ppdc: s'esperava un codi d'elecció a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:435
+#, c-format
+msgid "ppdc: Expected choice name/text on line %d of %s."
+msgstr "ppdc: s'esperava un nom/text d'elecció a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:503
+#, c-format
+msgid "ppdc: Expected color order for ColorModel on line %d of %s."
+msgstr ""
+"ppdc: s'esperava un ordre de colors per ColorModel a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:492
+#, c-format
+msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
+msgstr ""
+"ppdc: s'esperava un espai de colors per ColorModel a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:514
+#, c-format
+msgid "ppdc: Expected compression for ColorModel on line %d of %s."
+msgstr "ppdc: s'esperava una compressió per ColorModel a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:695
+#, c-format
+msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
+msgstr ""
+"ppdc: s'esperava una cadena de restriccions per UIConstraints a la línia %d "
+"de %s."
+
+#: ppdc/ppdc-source.cxx:2905
+#, c-format
+msgid ""
+"ppdc: Expected driver type keyword following DriverType on line %d of %s."
+msgstr ""
+"ppdc: s'esperava una paraula clau de tipus de controlador després de "
+"DriverType a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:826
+#, c-format
+msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
+msgstr ""
+"ppdc: s'esperava un tipus de dúplex després de Duplex a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1077
+#, c-format
+msgid "ppdc: Expected encoding after Font on line %d of %s."
+msgstr "ppdc: s'esperava una codificació després de Font a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1689
+#, c-format
+msgid "ppdc: Expected filename after #po %s on line %d of %s."
+msgstr ""
+"ppdc: s'esperava un nom de fitxer després de #po %s a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1205
+#, c-format
+msgid "ppdc: Expected group name/text on line %d of %s."
+msgstr "ppdc: s'esperava un nom/text de grup a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:2619
+#, c-format
+msgid "ppdc: Expected include filename on line %d of %s."
+msgstr "ppdc: s'esperava un nom de fitxer d'inclusió a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1502
+#, c-format
+msgid "ppdc: Expected integer on line %d of %s."
+msgstr "ppdc: s'esperava un enter a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1681
+#, c-format
+msgid "ppdc: Expected locale after #po on line %d of %s."
+msgstr "ppdc: s'esperava un idioma després de #po a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:353
+#, c-format
+msgid "ppdc: Expected name after %s on line %d of %s."
+msgstr "ppdc: s'esperava un nom després de %s a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:3277
+#, c-format
+msgid "ppdc: Expected name after FileName on line %d of %s."
+msgstr "ppdc: s'esperava un nom després de FileName a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1058
+#, c-format
+msgid "ppdc: Expected name after Font on line %d of %s."
+msgstr "ppdc: s'esperava un nom després de Font a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:3108
+#, c-format
+msgid "ppdc: Expected name after Manufacturer on line %d of %s."
+msgstr "ppdc: s'esperava un nom després de Manufacturer a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:3141
+#, c-format
+msgid "ppdc: Expected name after MediaSize on line %d of %s."
+msgstr "ppdc: s'esperava un nom després de MediaSize a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:3231
+#, c-format
+msgid "ppdc: Expected name after ModelName on line %d of %s."
+msgstr "ppdc: s'esperava un nom després de ModelName a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:3294
+#, c-format
+msgid "ppdc: Expected name after PCFileName on line %d of %s."
+msgstr "ppdc: s'esperava un nom després de PCFileName a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1156
+#, c-format
+msgid "ppdc: Expected name/text after %s on line %d of %s."
+msgstr "ppdc: s'esperava un nom/text després de %s a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1245
+#, c-format
+msgid "ppdc: Expected name/text after Installable on line %d of %s."
+msgstr ""
+"ppdc: s'esperava un nom/text després d'Installable a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1782
+#, c-format
+msgid "ppdc: Expected name/text after Resolution on line %d of %s."
+msgstr ""
+"ppdc: s'esperava un nom/text després de Resolution a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:479
+#, c-format
+msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
+msgstr ""
+"ppdc: s'esperava una combinació de nom/text per ColorModel a la línia %d de "
+"%s."
+
+#: ppdc/ppdc-source.cxx:1574
+#, c-format
+msgid "ppdc: Expected option name/text on line %d of %s."
+msgstr "ppdc: s'esperava un nom/text d'opció a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1608
+#, c-format
+msgid "ppdc: Expected option section on line %d of %s."
+msgstr "ppdc: s'esperava una secció d'opció a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1586
+#, c-format
+msgid "ppdc: Expected option type on line %d of %s."
+msgstr "ppdc: s'esperava un tipus d'opció a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1765
+#, c-format
+msgid "ppdc: Expected override field after Resolution on line %d of %s."
+msgstr ""
+"ppdc: s'esperava un camp de substitució després de Resolution a la línia %d "
+"de %s."
+
+#: ppdc/ppdc-catalog.cxx:341 ppdc/ppdc-catalog.cxx:353
+#, c-format
+msgid "ppdc: Expected quoted string on line %d of %s."
+msgstr "ppdc: s'esperava una cadena entre cometes a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1004
+#, c-format
+msgid "ppdc: Expected real number on line %d of %s."
+msgstr "ppdc: s'esperava un número real a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:572
+#, c-format
+msgid ""
+"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
+msgstr ""
+"ppdc: s'esperava una resolució/tipus de mitjà després de ColorProfile a la "
+"línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1863
+#, c-format
+msgid ""
+"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
+"of %s."
+msgstr ""
+"ppdc: s'esperava una resolució/tipus de mitjà després de SimpleColorProfile "
+"a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:361
+#, c-format
+msgid "ppdc: Expected selector after %s on line %d of %s."
+msgstr "ppdc: s'esperava un selector després de %s a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1101
+#, c-format
+msgid "ppdc: Expected status after Font on line %d of %s."
+msgstr "ppdc: s'esperava un estat després de Font a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:2794
+#, c-format
+msgid "ppdc: Expected string after Copyright on line %d of %s."
+msgstr "ppdc: s'esperava una cadena després de Copyright a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:3397
+#, c-format
+msgid "ppdc: Expected string after Version on line %d of %s."
+msgstr "ppdc: s'esperava una cadena després de Version a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:728
+#, c-format
+msgid "ppdc: Expected two option names on line %d of %s."
+msgstr "ppdc: s'esperava dos noms d'opció a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:372
+#, c-format
+msgid "ppdc: Expected value after %s on line %d of %s."
+msgstr "ppdc: s'esperava un valor després de %s a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1085
+#, c-format
+msgid "ppdc: Expected version after Font on line %d of %s."
+msgstr "ppdc: s'esperava una versió després de Font a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:227
+#, c-format
+msgid "ppdc: Invalid #include/#po filename \"%s\"."
+msgstr "ppdc: el nom de fitxer #include/#po «%s» no és vàlid."
+
+#: ppdc/ppdc-source.cxx:972
+#, c-format
+msgid "ppdc: Invalid cost for filter on line %d of %s."
+msgstr "ppdc: el cost del filtre no és vàlid a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:964
+#, c-format
+msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
+msgstr "ppdc: el tipus MIME buit no és vàlid pel filtre a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:980
+#, c-format
+msgid "ppdc: Invalid empty program name for filter on line %d of %s."
+msgstr ""
+"ppdc: el nom de programa buit no és vàlid pel filtre a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1628
+#, c-format
+msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
+msgstr "ppdc: la secció d'opció «%s» no és vàlida a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1600
+#, c-format
+msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
+msgstr "ppdc: el tipus d'opció «%s» no és vàlid a la línia %d de %s."
+
+#: ppdc/ppdc.cxx:251 ppdc/ppdpo.cxx:123
+#, c-format
+msgid "ppdc: Loading driver information file \"%s\"."
+msgstr "ppdc: s'està carregant el fitxer d'informació del controlador «%s»."
+
+#: ppdc/ppdc.cxx:187
+#, c-format
+msgid "ppdc: Loading messages for locale \"%s\"."
+msgstr "ppdc: s'està carregant l'idioma «%s»."
+
+#: ppdc/ppdc.cxx:126
+#, c-format
+msgid "ppdc: Loading messages from \"%s\"."
+msgstr "ppdc: s'està carregant els missatges des de «%s»."
+
+#: ppdc/ppdc-source.cxx:2412 ppdc/ppdc-source.cxx:2644
+#, c-format
+msgid "ppdc: Missing #endif at end of \"%s\"."
+msgstr "ppdc: falta un #endif al final de «%s»."
+
+#: ppdc/ppdc-source.cxx:2513 ppdc/ppdc-source.cxx:2548
+#: ppdc/ppdc-source.cxx:2578
+#, c-format
+msgid "ppdc: Missing #if on line %d of %s."
+msgstr "ppdc: falta un #if a la línia %d de %s."
+
+#: ppdc/ppdc-catalog.cxx:418
+#, c-format
+msgid ""
+"ppdc: Need a msgid line before any translation strings on line %d of %s."
+msgstr ""
+"oodc: es necessita un msgid abans de la cadena per traduir a la línia %d de "
+"%s."
+
+#: ppdc/ppdc-driver.cxx:730
+#, c-format
+msgid "ppdc: No message catalog provided for locale %s."
+msgstr "ppdc: no s'ha donat el catàleg de missatges per l'idioma %s."
+
+#: ppdc/ppdc-source.cxx:1651 ppdc/ppdc-source.cxx:2882
+#: ppdc/ppdc-source.cxx:2968 ppdc/ppdc-source.cxx:3061
+#: ppdc/ppdc-source.cxx:3194 ppdc/ppdc-source.cxx:3327
+#, c-format
+msgid "ppdc: Option %s defined in two different groups on line %d of %s."
+msgstr ""
+"ppdc: la opció %s està definida a dos grups diferents a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:1644
+#, c-format
+msgid "ppdc: Option %s redefined with a different type on line %d of %s."
+msgstr ""
+"ppdc: la opció %s està redefinida amb un tipus diferent a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:705
+#, c-format
+msgid "ppdc: Option constraint must *name on line %d of %s."
+msgstr "ppdc: la opció de restricció ha d'incloure *nom a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:2495
+#, c-format
+msgid "ppdc: Too many nested #if's on line %d of %s."
+msgstr "ppdc: hi ha massa #if imbricats a la línia %d de %s."
+
+#: ppdc/ppdc.cxx:374
+#, c-format
+msgid "ppdc: Unable to create PPD file \"%s\" - %s."
+msgstr "ppdc: no s'ha pogut crear el fitxer PPD «%s» - %s."
+
+#: ppdc/ppdc.cxx:266
+#, c-format
+msgid "ppdc: Unable to create output directory %s: %s"
+msgstr "ppdc: no s'ha pogut crear el directori de sortida %s: %s"
+
+#: ppdc/ppdc.cxx:287
+#, c-format
+msgid "ppdc: Unable to create output pipes: %s"
+msgstr "ppdc: no s'ha pogut crear els conductes de sortida: %s"
+
+#: ppdc/ppdc.cxx:303 ppdc/ppdc.cxx:309
+#, c-format
+msgid "ppdc: Unable to execute cupstestppd: %s"
+msgstr "ppdc: no s'ha pogut executar cupstestppd: %s"
+
+#: ppdc/ppdc-source.cxx:1730
+#, c-format
+msgid "ppdc: Unable to find #po file %s on line %d of %s."
+msgstr "ppdc: no s'ha pogut trobar el fitxer #po %s a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:2651
+#, c-format
+msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
+msgstr ""
+"ppdc: no s'ha pogut trobar el fitxer d'inclusió «%s» a la línia %d de %s."
+
+#: ppdc/ppdc.cxx:198
+#, c-format
+msgid "ppdc: Unable to find localization for \"%s\" - %s"
+msgstr "ppdc: no s'ha pogut trobar la localització de «%s» - %s"
+
+#: ppdc/ppdc.cxx:135
+#, c-format
+msgid "ppdc: Unable to load localization file \"%s\" - %s"
+msgstr "ppdc: no s'ha pogut carregar el fitxer de localització «%s» - %s"
+
+#: ppdc/ppdc-file.cxx:50
+#, c-format
+msgid "ppdc: Unable to open %s: %s"
+msgstr "ppdc: no s'ha pogut obrir %s: %s"
+
+#: ppdc/ppdc-source.cxx:2054
+#, c-format
+msgid "ppdc: Undefined variable (%s) on line %d of %s."
+msgstr "ppdc: la variable (%s) de la línia %d de %s no està definida."
+
+#: ppdc/ppdc-catalog.cxx:435
+#, c-format
+msgid "ppdc: Unexpected text on line %d of %s."
+msgstr "ppdc: hi ha un text inesperat a la línia %d de %s."
+
+#: ppdc/ppdc-source.cxx:2924
+#, c-format
+msgid "ppdc: Unknown driver type %s on line %d of %s."
+msgstr "ppdc: el tipus de controlador %s de la línia %d de %s no és conegut."
+
+#: ppdc/ppdc-source.cxx:906
+#, c-format
+msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
+msgstr "ppdc: el tipus de dúplex «%s» de la línia %d de %s no és conegut."
+
+#: ppdc/ppdc-source.cxx:3154
+#, c-format
+msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
+msgstr "ppdc: la mida del mitjà «%s» de la línia %d de %s no és coneguda."
+
+#: ppdc/ppdc-catalog.cxx:463
+#, c-format
+msgid "ppdc: Unknown message catalog format for \"%s\"."
+msgstr "ppdc: el format del catàleg de missatges de «%s» no és conegut."
+
+#: ppdc/ppdc-source.cxx:3408
+#, c-format
+msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
+msgstr "ppdc: el testimoni «%s» de la línia %d de %s no és conegut."
+
+#: ppdc/ppdc-source.cxx:1014
+#, c-format
+msgid ""
+"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
+msgstr ""
+"ppdc: els caràcters finals del número real «%s» de la línia %d de %s no són "
+"coneguts."
+
+#: ppdc/ppdc-source.cxx:2164
+#, c-format
+msgid "ppdc: Unterminated string starting with %c on line %d of %s."
+msgstr ""
+"ppdc: la cadena que comença per %c de la línia %d de %s no està acabada."
+
+#: ppdc/ppdc.cxx:365
+#, c-format
+msgid "ppdc: Warning - overlapping filename \"%s\"."
+msgstr "ppdc: avís - es superposa el nom del fitxer «%s»."
+
+#: ppdc/ppdc.cxx:380
+#, c-format
+msgid "ppdc: Writing %s."
+msgstr "ppdc: s'escriu %s."
+
+#: ppdc/ppdc.cxx:148
+#, c-format
+msgid "ppdc: Writing PPD files to directory \"%s\"."
+msgstr "ppdc: s'escriuen els fitxers PPD a la carpeta «%s»."
+
+#: ppdc/ppdmerge.cxx:136
+#, c-format
+msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
+msgstr "ppdmerge: LanguageVersion «%s» incorrecte a %s."
+
+#: ppdc/ppdmerge.cxx:176
+#, c-format
+msgid "ppdmerge: Ignoring PPD file %s."
+msgstr "ppdmerge: el fitxer PPD %s s'ignora."
+
+#: ppdc/ppdmerge.cxx:160
+#, c-format
+msgid "ppdmerge: Unable to backup %s to %s - %s"
+msgstr "ppdmerge: no s'ha pogut fer la còpia de seguretat %s a %s- %s"
+
+#: systemv/lpstat.c:1784
+#, c-format
+msgid "printer %s disabled since %s -"
+msgstr "la impressora %s està deshabilitada des de %s -"
+
+#: systemv/lpstat.c:1773
+#, c-format
+msgid "printer %s is idle. enabled since %s"
+msgstr "la impressora %s està inactiva. Està activada des de %s"
+
+#: systemv/lpstat.c:1778
+#, c-format
+msgid "printer %s now printing %s-%d. enabled since %s"
+msgstr "la impressora %s està imprimint %s-%d. Està habilitada des de %s"
+
+#: systemv/lpstat.c:1909
+#, c-format
+msgid "printer %s/%s disabled since %s -"
+msgstr "la impressora %s/%s està deshabilitada des de %s -"
+
+#: systemv/lpstat.c:1895
+#, c-format
+msgid "printer %s/%s is idle. enabled since %s"
+msgstr "la impressora %s/%s està inactiva. Està activada des de %s"
+
+#: systemv/lpstat.c:1902
+#, c-format
+msgid "printer %s/%s now printing %s-%d. enabled since %s"
+msgstr "la impressora %s/%s està imprimint %s-%d. Està activada des de %s"
+
+#: cups/notify.c:93 cups/notify.c:134
+msgid "processing"
+msgstr "s'està processant"
+
+#: systemv/lp.c:644
+#, c-format
+msgid "request id is %s-%d (%d file(s))"
+msgstr "l'identificador de la petició és %s-%d (%d fitxer(s))"
+
+#: cups/snmp.c:1020
+msgid "request-id uses indefinite length"
+msgstr "la request-id fa servir una longitud indefinida"
+
+#: systemv/lpstat.c:2048
+msgid "scheduler is not running"
+msgstr "el programador de tasques no s'està executant"
+
+#: systemv/lpstat.c:2044
+msgid "scheduler is running"
+msgstr "el programador de tasques s'està executant"
+
+#: cups/adminutil.c:2159
+#, c-format
+msgid "stat of %s failed: %s"
+msgstr "stat de %s ha fallat: %s"
+
+#: berkeley/lpc.c:211
+msgid "status\t\tShow status of daemon and queue."
+msgstr "status\t\tmostra l'estat del dimoni i la cua."
+
+#: cups/notify.c:96 cups/notify.c:137
+msgid "stopped"
+msgstr "aturat"
+
+#: systemv/lpstat.c:1017
+#, c-format
+msgid "system default destination: %s"
+msgstr "destí per defecte del sistema: %s"
+
+#: systemv/lpstat.c:1014
+#, c-format
+msgid "system default destination: %s/%s"
+msgstr "destí per defecte del sistema: %s/%s"
+
+#: cups/notify.c:108 cups/notify.c:140
+msgid "unknown"
+msgstr "desconegut"
+
+#: cups/notify.c:117
+msgid "untitled"
+msgstr "sense títol"
+
+#: cups/snmp.c:1045
+msgid "variable-bindings uses indefinite length"
+msgstr "La variable-bindings fa servir una longitud indefinida"
+
+#~ msgid ""
+#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
+#~ " REF: Page 211, table D.1."
+#~ msgstr ""
+#~ " **ERROR** Manufacturer INCORRECTE (hauria de ser «Oki»)\n"
+#~ " REF: pàgina 211, taula D.1."
+
+#~ msgid " **FAIL** Unable to open PPD file - %s"
+#~ msgstr " **ERROR** No es pot obrir el fitxer PPD - %s"
+
+#~ msgid " -E Enable encryption."
+#~ msgstr " -E Habilita el xifrat."
+
+#~ msgid " -J title Set title."
+#~ msgstr " -J títol Estableix el títol."
+
+#~ msgid " -T Set the receive/send timeout in seconds."
+#~ msgstr ""
+#~ " -T Estableix el temps d'espera màxim per enviar i "
+#~ "rebre en segons."
+
+#~ msgid " -U samba-user Authenticate using the named SAMBA user."
+#~ msgstr ""
+#~ " -U usuari-samba Autentica fent servir l'usuari SAMBA indicat."
+
+#~ msgid " -U username Set username for job."
+#~ msgstr " -U nomusuari Estableix el nom d'usuari per la tasca."
+
+#~ msgid " -a 'name=value ...' Set option(s)."
+#~ msgstr " -a 'nom=valor ...' Estableix les opcions."
+
+#~ msgid " -c config-file Load alternate configuration file."
+#~ msgstr ""
+#~ " -c fitxer-config Carrega un fitxer de configuració alternatiu."
+
+#~ msgid " -c copies Set number of copies."
+#~ msgstr " -c còpies Estableix el nombre de còpies."
+
+#~ msgid ""
+#~ " -f filename Set file to be converted (otherwise stdin)."
+#~ msgstr ""
+#~ " -f nomfitxer Estableix el fitxer que s'ha de convertir "
+#~ "(stdin si no s'especifica)."
+
+#~ msgid " -h cups-server Use the named CUPS server."
+#~ msgstr " -h servidor-cups Fa servir el servidor CUPS indicat."
+
+#~ msgid ""
+#~ " -j mime/type Set output MIME type (otherwise application/"
+#~ "pdf)."
+#~ msgstr ""
+#~ " -j tipus/mime Estableix el tipus MIME de sortida "
+#~ "(application/pdf si no s'especifica)."
+
+#~ msgid ""
+#~ " -o filename Set file to be generated (otherwise stdout)."
+#~ msgstr ""
+#~ " -o nomfitxer Estableix el nom del fitxer que s'ha de "
+#~ "generar (stdout si no s'especifica)."
+
+#~ msgid " -q Be quiet - no output except errors."
+#~ msgstr " -q Silenciós - Només dóna els errors."
+
+#~ msgid " -v Be slightly verbose."
+#~ msgstr " -v mode lleugerament detallat."
+
+#~ msgid " -v Be verbose (more v's for more verbosity)."
+#~ msgstr " -v mode detallat (com més v's més detallat)."
+
+#~ msgid " -v Be verbose (show commands)."
+#~ msgstr " -v mode detallat (mostra les ordres)."
+
+#~ msgid " -v Show all attributes sent and received."
+#~ msgstr ""
+#~ " -v Mostra tots els atributs enviats i rebuts."
+
+#~ msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
+#~ msgstr "Disc de 3.5 - 2 1/8 x 2 3/4\""
+
+#~ msgid "Address - 1 1/8 x 3 1/2\""
+#~ msgstr "Adreça - 1 1/8 x 3 1/2\""
+
+#~ msgid "File Folder - 9/16 x 3 7/16\""
+#~ msgstr "Carpeta d'arxivador: 9/16 x 3 7/16\""
+
+#~ msgid "Hanging Folder - 9/16 x 2\""
+#~ msgstr "Carpeta per penjar: 9/16 x 2\""
+
+#~ msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
+#~ msgstr "Franqueig per Internet en 2 parts - 2 1/4 x 7 1/2\""
+
+#~ msgid "Internet Postage 3-Part - 2 1/4 x 7\""
+#~ msgstr "Franqueig per Internet en 3 parts - 2 1/4 x 7\""
+
+#~ msgid "Large Address - 1 4/10 x 3 1/2\""
+#~ msgstr "Adreça gran - 1 4/10 x 3 1/2\""
+
+#~ msgid "Printer busy, will retry in 10 seconds."
+#~ msgstr ""
+#~ "La impressora està ocupada. Es tornarà a intentar d'aquí a 10 segons."
+
+#~ msgid "Printer did not respond."
+#~ msgstr "La impressora no respon."
+
+#~ msgid "Printer is busy, will retry in 5 seconds."
+#~ msgstr ""
+#~ "La impressora està ocupada. Es tornarà a intentar d'aquí a 5 segons."
+
+#~ msgid "Printer is now connected."
+#~ msgstr "La impressora està connectada."
+
+#~ msgid "Printer not connected, will retry in 30 seconds."
+#~ msgstr ""
+#~ "La impressora està desconnectada. Es tornarà a intentar d'aquí a 30 "
+#~ "segons."
+
+#~ msgid "Ready to print."
+#~ msgstr "Preparada per imprimir."
+
+#~ msgid "Return Address - 3/4 x 2\""
+#~ msgstr "Remitent - 3/4 x 2\""
+
+#~ msgid "Shipping Address - 2 5/16 x 4\""
+#~ msgstr "Adreça de lliurament - 2 5/16 x 4\""
+
+#~ msgid "The printer is low on toner."
+#~ msgstr "S'està acabant el tòner de la impressora."
+
+#~ msgid "The printer is out of toner."
+#~ msgstr "S'ha acabat el tòner de la impressora"
+
+#~ msgid "Unable to create temporary file:"
+#~ msgstr "No es pot crear el fitxer temporal:"
+
+#~ msgid "Unable to get printer status:"
+#~ msgstr "No es pot obtenir l'estat de la impressora:"
+
+#~ msgid "Unable to open PPD file:"
+#~ msgstr "No es pot obrir el fitxer PPD:"
+
+#~ msgid "Unable to read print data"
+#~ msgstr "No es poden llegir les dades d'impressió"
+
+#~ msgid "Usage: %s job-id user title copies options file"
+#~ msgstr "Sintaxi: %s id-tasca usuari títol còpies opcions fitxer"
+
+#~ msgid "Usage: convert [ options ]"
+#~ msgstr "Sintaxi: convert [ opcions ]"
+
+#~ msgid "convert: Use the -f option to specify a file to convert."
+#~ msgstr ""
+#~ "convert: feu servir l'opció -f per especificar el fitxer que voleu "
+#~ "convertir."
+
+#~ msgid "ipptool: \"-i\" is incompatible with \"-X\"."
+#~ msgstr "ipptool: «-i» no és compatible amb «-X»."
+
+#~ msgid "ipptool: \"-n\" is incompatible with \"-X\"."
+#~ msgstr "ipptool: «-n» no és compatible amb «-X»."
diff --git a/locale/cups_da.po b/locale/cups_da.po
deleted file mode 100644
index 85446e4e..00000000
--- a/locale/cups_da.po
+++ /dev/null
@@ -1,8692 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f mm"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f til %.0f x %.0f mm"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f tommer"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f til %.2f x %.2f tommer"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s kan ikke ændres."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 tomme/sek."
-
-msgid "1.25x0.25\""
-msgstr "1,25 x 0,25\""
-
-msgid "1.25x2.25\""
-msgstr "1,25 x 2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 tomme/sek."
-
-msgid "1.50x0.25\""
-msgstr "1,50 x 0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50 x 0,50\""
-
-msgid "1.50x1.00\""
-msgstr "1,50 x 1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50 x 2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 tommer/sek."
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/sek."
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 tommer/sek."
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 tommer/sek."
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/sek."
-
-msgid "120x60dpi"
-msgstr "120 x 60 dpi"
-
-msgid "120x72dpi"
-msgstr "120 x 72 dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136 dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/sek."
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/sek."
-
-msgid "150dpi"
-msgstr "150 dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180 dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 tommer/sek."
-
-msgid "2-Sided Printing"
-msgstr "Dobbeltsidet udskrivning"
-
-msgid "2.00x0.37\""
-msgstr "2,00 x 0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00 x 0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00 x 1,00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00 x 1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00 x 2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00 x 3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00 x 4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00 x 5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25 x 0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25 x 1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25 x 4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25 x 5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38 x 5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 tommer/sek."
-
-msgid "2.50x1.00\""
-msgstr "2,50 x 1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50 x 2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75 x 1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/sek."
-
-msgid "200 mm/sec."
-msgstr "200 mm/sek."
-
-msgid "203dpi"
-msgstr "203 dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24-bens serien"
-
-msgid "240x72dpi"
-msgstr "240 x 72 dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/sek."
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 tommer/sek."
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00 x 1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00 x 1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00 x 2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00 x 3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00 x 5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25 x 2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25 x 5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25 x 5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25 x 5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25 x 7,83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "3,5\" disk"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3,5\" disk - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50 x 1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/sek."
-
-msgid "300 mm/sec."
-msgstr "300 mm/sek."
-
-msgid "300dpi"
-msgstr "300 dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360 dpi"
-
-msgid "360x180dpi"
-msgstr "360 x 180 dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 tommer/sek."
-
-msgid "4.00x1.00\""
-msgstr "4,00 x 1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00 x 13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00 x 2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00 x 2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00 x 3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00 x 4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00 x 5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00 x 6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00 x 6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/sek."
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 tommer/sek."
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 tommer/sek."
-
-msgid "6.00x1.00\""
-msgstr "6,00 x 1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00 x 2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00 x 3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00 x 4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00 x 5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00 x 6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00 x 6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/sek."
-
-msgid "600dpi"
-msgstr "600 dpi"
-
-msgid "60dpi"
-msgstr "60 dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 tommer/sek."
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720 dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 tommer/sek."
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00 x 1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00 x 2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00 x 3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00 x 4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00 x 5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00 x 6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00 x 6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/sek."
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 tommer/sek."
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "9-bens serien"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Accepter job"
-
-msgid "Accepted"
-msgstr "Accepteret"
-
-msgid "Add Class"
-msgstr "Tilføj klasse"
-
-msgid "Add Printer"
-msgstr "Tilføj printer"
-
-msgid "Add RSS Subscription"
-msgstr "Tilføj RSS-abonnement"
-
-msgid "Address"
-msgstr "Adresse"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Adresse - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Administration"
-
-msgid "Always"
-msgstr "Altid"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Bruger"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Ugyldig NULL dests-markør"
-
-msgid "Bad OpenGroup"
-msgstr "Ugyldig OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "Ugyldig OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "Ugyldig OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Ugyldig anmodning"
-
-msgid "Bad SNMP version number"
-msgstr "Ugyldigt versionsnummer på SNMP"
-
-msgid "Bad UIConstraints"
-msgstr "Ugyldig UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Ugyldig værdi for kopier %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Ugylidig speciel parameter"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Ugyldig værdi for number-up %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Ugyldige værdier for page-ranges %d-%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Bannere"
-
-msgid "Billing Information: "
-msgstr "Faktureringsoplysninger: "
-
-msgid "Bond Paper"
-msgstr "Bond-papir"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "CPCL-etiketprinter"
-
-msgid "Cancel RSS Subscription"
-msgstr "Annuller RSS-abonnement"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Skift indstillinger"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Klasser"
-
-msgid "Clean Print Heads"
-msgstr "Rengør skrivehoveder"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Farve"
-
-msgid "Color Mode"
-msgstr "Farvefunktion"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Fællesnavn bruger uendelig længde"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Fortsæt"
-
-msgid "Continuous"
-msgstr "Fortsat"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Oprettet"
-
-msgid "Created On: "
-msgstr "Oprettet den: "
-
-msgid "Custom"
-msgstr "Speciel"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Klip"
-
-msgid "Cutter"
-msgstr "Klipper"
-
-msgid "Dark"
-msgstr "Mørk"
-
-msgid "Darkness"
-msgstr "Mørke"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Slet klasse"
-
-msgid "Delete Printer"
-msgstr "Slet printer"
-
-msgid "Description: "
-msgstr "Beskrivelse: "
-
-msgid "DeskJet Series"
-msgstr "DeskJet-serie"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "Destinationen \"%s\" accepterer ikke job."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Direkte termisk medie"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Slået fra"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Navn på printerarkiv: "
-
-msgid "Driver Version: "
-msgstr "Version på printerarkiv: "
-
-msgid "Duplexer"
-msgstr "Dupleksenhed"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1-etiketprinter"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2-etiketprinter"
-
-msgid "Edit Configuration File"
-msgstr "Rediger konfigurationsarkiv"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Slutbanner"
-
-msgid "English"
-msgstr "Danish"
-
-msgid "Enter old password:"
-msgstr "Skriv gammel adgangskode:"
-
-msgid "Enter password again:"
-msgstr "Skriv adgangskode igen:"
-
-msgid "Enter password:"
-msgstr "Skriv adgangskode:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Skriv dit brugernavn og din adgangskode eller root-brugernavnet og -"
-"adgangskoden for at få adgang til denne side. Hvis du bruger Kerberos-"
-"godkendelse, skal du sikre dig, at du har en gyldig Kerberos-billet."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Ilægning af kuvert"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Fejlpolitik"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Hver 10. etiket"
-
-msgid "Every 2 Labels"
-msgstr "Hver 2. etiket"
-
-msgid "Every 3 Labels"
-msgstr "Hver 3. etiket"
-
-msgid "Every 4 Labels"
-msgstr "Hver 4. etiket"
-
-msgid "Every 5 Labels"
-msgstr "Hver 5. etiket"
-
-msgid "Every 6 Labels"
-msgstr "Hver 6. etiket"
-
-msgid "Every 7 Labels"
-msgstr "Hver 7. etiket"
-
-msgid "Every 8 Labels"
-msgstr "Hver 8. etiket"
-
-msgid "Every 9 Labels"
-msgstr "Hver 9. etiket"
-
-msgid "Every Label"
-msgstr "Alle etiketter"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Forventning mislykkedes"
-
-msgid "Export Printers to Samba"
-msgstr "Eksporter printere til Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Arkivmappe"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Arkivmappe - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "8,5 x 13\""
-
-msgid "Forbidden"
-msgstr "Forbudt"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Generelt"
-
-msgid "Generic"
-msgstr "Generel"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU bruger uendelig længde"
-
-msgid "Glossy Paper"
-msgstr "Glittet papir"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Gråtoner"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Hængende mappe"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Hængende mappe - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Ulovligt kontroltegn"
-
-msgid "Illegal main keyword string"
-msgstr "Ulovlig streng til hovednøgleord"
-
-msgid "Illegal option keyword string"
-msgstr "Ulovlig nøgleordsstreng til indstilling"
-
-msgid "Illegal translation string"
-msgstr "Ulovlig oversættelsesstreng"
-
-msgid "Illegal whitespace character"
-msgstr "Ulovlig tegn for tom plads"
-
-msgid "Installable Options"
-msgstr "Ekstraudstyr"
-
-msgid "Installed"
-msgstr "Installeret"
-
-msgid "IntelliBar Label Printer"
-msgstr "IntelliBar-etiketprinter"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "Intern fejl"
-
-msgid "Internet Postage 2-Part"
-msgstr "Internet-porto 2-Part"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Internet-porto 2-Part - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Internet-porto 3-Part"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Internet-porto 3-Part - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Internet Printing Protocol"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "Job #%d er allerede afbrudt - kan ikke annullere."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "Job #%d er allerede annulleret - kan ikke annullere."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "Job #%d er allerede færdigt - kan ikke annullere."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Job færdigt"
-
-msgid "Job Created"
-msgstr "Job oprettet"
-
-msgid "Job ID: "
-msgstr "Job-id: "
-
-msgid "Job Options Changed"
-msgstr "Jobindstillinger ændret"
-
-msgid "Job Stopped"
-msgstr "Job stoppet"
-
-msgid "Job UUID: "
-msgstr "Job-uuid: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "Job er færdigt og kan ikke ændres."
-
-msgid "Job operation failed:"
-msgstr "Jobhandling mislykkedes:"
-
-msgid "Job state cannot be changed."
-msgstr "Jobstatus kan ikke ændres."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Job"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR-vært eller -printer"
-
-msgid "Label Printer"
-msgstr "Etiketprinter"
-
-msgid "Label Top"
-msgstr "Top af etiket"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Stor adresse"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Stor adresse - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet Series PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Lys"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Linje længere end det maksimalt tilladte (255 tegn)"
-
-msgid "List Available Printers"
-msgstr "Vis tilgængelige printere"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Placering: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Lang kant (stående)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Mærke og model: "
-
-msgid "Manual Feed"
-msgstr "Manuel ilægning"
-
-msgid "Media Dimensions: "
-msgstr "Mediestørrelser: "
-
-msgid "Media Limits: "
-msgstr "Mediebegrænsninger: "
-
-msgid "Media Name: "
-msgstr "Medienavn: "
-
-msgid "Media Size"
-msgstr "Mediestørrelse"
-
-msgid "Media Source"
-msgstr "Mediekilde"
-
-msgid "Media Tracking"
-msgstr "Mediesporing"
-
-msgid "Media Type"
-msgstr "Medietype"
-
-msgid "Medium"
-msgstr "Medium"
-
-msgid "Memory allocation error"
-msgstr "Fejl i hukommelsestildeling"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "Manglende PPD-Adobe-4.x header"
-
-msgid "Missing asterisk in column 1"
-msgstr "Manglende stjerne i kolonne 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Manglende værdistreng"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Rediger klasse"
-
-msgid "Modify Printer"
-msgstr "Rediger printer"
-
-msgid "Move All Jobs"
-msgstr "Flyt alle job"
-
-msgid "Move Job"
-msgstr "Flyt job"
-
-msgid "Moved Permanently"
-msgstr "Flyttet permanent"
-
-msgid "NULL PPD file pointer"
-msgstr "NULL PPD-arkivmarkør"
-
-msgid "Name OID uses indefinite length"
-msgstr "Navn-oid bruger uendelig længde"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Aldrig"
-
-msgid "New Stylus Color Series"
-msgstr "Ny Stylus Color Series"
-
-msgid "New Stylus Photo Series"
-msgstr "Ny Stylus Photo Series"
-
-msgid "No"
-msgstr "Nej"
-
-msgid "No Content"
-msgstr "Intet indhold"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Ingen VarBind SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Ingen aktiv forbindelse"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Intet fællesskabsnavn"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Ingen destinationer tilføjet."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Intet error-index"
-
-msgid "No error-status"
-msgstr "Ingen error-status"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Ingen navn-oid"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Ingen request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Ingen abonnementer fundet."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Ingen variable-bindings SEQUENCE"
-
-msgid "No version number"
-msgstr "Intet versionsnummer"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Ikke fortsat (mærkefølsom)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Ikke fortsat (webfølsom)"
-
-msgid "Normal"
-msgstr "Normal"
-
-msgid "Not Found"
-msgstr "Ikke fundet"
-
-msgid "Not Implemented"
-msgstr "Ikke implementeret"
-
-msgid "Not Installed"
-msgstr "Ikke installeret"
-
-msgid "Not Modified"
-msgstr "Ikke ændret"
-
-msgid "Not Supported"
-msgstr "Ikke understøttet"
-
-msgid "Not allowed to print."
-msgstr "MÃ¥ ikke udskrive."
-
-msgid "Note"
-msgstr "Bemærk"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Fra (ensidet)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Hjælp på skærmen"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "Ã¥bning af %s mislykkedes: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup uden en CloseGroup først"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI uden en CloseUI/JCLCloseUI først"
-
-msgid "Operation Policy"
-msgstr "Driftspolitik"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Ekstraudstyr installeret"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Ekstraudstyr: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Udskriftsfunktion"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "PCL-laserprinter"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Pakke indeholder ikke en Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Pakke starter ikke med SEQUENCE"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Adgangskode til %s på %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "Adgangskode til %s kræves til adgang til %s via SAMBA: "
-
-msgid "Pause Class"
-msgstr "Sæt klasse på pause"
-
-msgid "Pause Printer"
-msgstr "Sæt printer på pause"
-
-msgid "Peel-Off"
-msgstr "Aftrækkelig"
-
-msgid "Photo"
-msgstr "Foto"
-
-msgid "Photo Labels"
-msgstr "Fotoetiketter"
-
-msgid "Plain Paper"
-msgstr "Almindeligt papir"
-
-msgid "Policies"
-msgstr "Politikker"
-
-msgid "Port Monitor"
-msgstr "Portovervågning"
-
-msgid "PostScript Printer"
-msgstr "PostScript-printer"
-
-msgid "Postcard"
-msgstr "Postkort"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Tryktæthed"
-
-msgid "Print Job:"
-msgstr "Udskriftsjob:"
-
-msgid "Print Mode"
-msgstr "Udskriftsfunktion"
-
-msgid "Print Rate"
-msgstr "Udskriftshastighed"
-
-msgid "Print Self-Test Page"
-msgstr "Udskriv testside"
-
-msgid "Print Speed"
-msgstr "Udskriftshastighed"
-
-msgid "Print Test Page"
-msgstr "Udskriv testside"
-
-msgid "Print and Cut"
-msgstr "Udskriv og klip"
-
-msgid "Print and Tear"
-msgstr "Udskriv og riv af"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Udskrevet til: "
-
-msgid "Printed From: "
-msgstr "Udskrevet fra: "
-
-msgid "Printed On: "
-msgstr "Udskrevet den: "
-
-msgid "Printer Added"
-msgstr "Printer tilføjet"
-
-msgid "Printer Default"
-msgstr "Printerstandard"
-
-msgid "Printer Deleted"
-msgstr "Printer slettet"
-
-msgid "Printer Modified"
-msgstr "Printer ændret"
-
-msgid "Printer Name: "
-msgstr "Printernavn: "
-
-msgid "Printer Paused"
-msgstr "Printer på pause"
-
-msgid "Printer Settings"
-msgstr "Printerindstillinger"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Printer:"
-
-msgid "Printers"
-msgstr "Printere"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Udrens job"
-
-msgid "Quarto"
-msgstr "Kvartformat"
-
-msgid "Quota limit reached."
-msgstr "Maks. kvote nået."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Afvis job"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Udskriv igen efter fejl"
-
-msgid "Request Entity Too Large"
-msgstr "Enhedsanmodning for stor"
-
-msgid "Resolution"
-msgstr "Opløsning"
-
-msgid "Resume Class"
-msgstr "Genoptag klasse"
-
-msgid "Resume Printer"
-msgstr "Genoptag printer"
-
-msgid "Return Address"
-msgstr "Returadresse"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Returadresse - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Spol tilbage"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE bruger uendelig længde"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Se andet"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Seriel port #%d"
-
-msgid "Server Restarted"
-msgstr "Server startet igen"
-
-msgid "Server Security Auditing"
-msgstr "Kontrol af serversikkerhed"
-
-msgid "Server Started"
-msgstr "Server startet"
-
-msgid "Server Stopped"
-msgstr "Server stoppet"
-
-msgid "Service Unavailable"
-msgstr "Service utilgængelig"
-
-msgid "Set Allowed Users"
-msgstr "Indstil tilladte brugere"
-
-msgid "Set As Server Default"
-msgstr "Indstil som serverstandard"
-
-msgid "Set Class Options"
-msgstr "Foretag klasseindstillinger "
-
-msgid "Set Printer Options"
-msgstr "Foretag printerindstillinger "
-
-msgid "Set Publishing"
-msgstr "Indstil publicering"
-
-msgid "Shipping Address"
-msgstr "Leveringsadresse"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Leveringsadresse - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Kort kant (liggende)"
-
-msgid "Special Paper"
-msgstr "Specielt papir"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Standard"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Starter banner"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Udtalelse"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color Series"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo Series"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Skifter protokoller"
-
-msgid "Tabloid"
-msgstr "17 x 11\""
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Riv"
-
-msgid "Tear-Off"
-msgstr "Riv af"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Riv af, juster position"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "PPD-arkivet \"%s\" findes ikke."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "PPD-arkivet \"%s\" kunne ikke åbnes: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Klassenavnet må kun indeholde op til 127 tegn, der kan udskrives, og må ikke "
-"indeholde mellemrum, skråstreger (/) og nummertegnet (#)."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr "Egenskaben notify-lease-duration kan ikke bruges med jobabonnementer."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Printernavnet må kun indeholde op til 127 tegn, der kan udskrives, og må "
-"ikke indeholde mellemrum, skråstreger (/) og nummertegnet (#)."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "Printer-uri \"%s\" indeholder ugyldige tegn."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr "Printer-uri skal have formatet \"ipp://VÆRTSNAVN/klasser/KLASSENAVN\"."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"Printer-uri skal have formatet \"ipp://VÆRTSNAVN/printere/PRINTERNAVN\"."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"Abonnementsnavnet må ikke indeholde mellemrum, skråstreger (/), "
-"spørgsmålstegn (?) og nummertegnet (#)."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Der er for mange abonnementer."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Termiske overførselsmedier"
-
-msgid "Title: "
-msgstr "Titel: "
-
-msgid "Too many active jobs."
-msgstr "For mange aktive job."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Gennemsigtighed"
-
-msgid "Tray"
-msgstr "Bakke"
-
-msgid "Tray 1"
-msgstr "Bakke 1"
-
-msgid "Tray 2"
-msgstr "Bakke 2"
-
-msgid "Tray 3"
-msgstr "Bakke 3"
-
-msgid "Tray 4"
-msgstr "Bakke 4"
-
-msgid "URI Too Long"
-msgstr "URI for lang"
-
-msgid "US Ledger"
-msgstr "17 x 11\""
-
-msgid "US Legal"
-msgstr "8,5 x 14\""
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "8,5 x 11\""
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "Seriel USB-port #%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Kan ikke få adgang til arkivet cupsd.conf:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Kan ikke tilføje RSS-abonnement:"
-
-msgid "Unable to add class:"
-msgstr "Kan ikke tilføje klasse:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Kan ikke tilføje printer:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Kan ikke annullere RSS-abonnement:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Kan ikke ændre egenskaben printer-is-shared:"
-
-msgid "Unable to change printer:"
-msgstr "Kan ikke skifte printer:"
-
-msgid "Unable to change server settings:"
-msgstr "Kan ikke ændre serverindstillinger:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Kan ikke oprette forbindelse til vært."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Kan ikke oprette midlertidigt arkiv:"
-
-msgid "Unable to delete class:"
-msgstr "Kan ikke slette klasse:"
-
-msgid "Unable to delete printer:"
-msgstr "Kan ikke slette printer:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Kan ikke udføre vedligeholdelseskommando:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Kan ikke hente klasseliste:"
-
-msgid "Unable to get class status:"
-msgstr "Kan ikke hente klassestatus:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Kan ikke hente liste over printerarkiver:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Kan ikke hente printerattributter:"
-
-msgid "Unable to get printer list:"
-msgstr "Kan ikke hente printerliste:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Kan ikke hente printerstatus:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Kan ikke ændre klasse:"
-
-msgid "Unable to modify printer:"
-msgstr "Kan ikke ændre printer:"
-
-msgid "Unable to move job"
-msgstr "Kan ikke flytte job"
-
-msgid "Unable to move jobs"
-msgstr "Kan ikke flytte job"
-
-msgid "Unable to open PPD file"
-msgstr "Kan ikke åbne PPD-arkiv"
-
-msgid "Unable to open PPD file:"
-msgstr "Kan ikke åbne PPD-arkiv:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Kan ikke åbne arkivet cupsd.conf:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Kan ikke udskrive testside:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Kan ikke foretageindstillinger:"
-
-msgid "Unable to set server default:"
-msgstr "Kan ikke indstille serverstandard:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Kan ikke overføre arkivet cupsd.conf:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Ikke godkendt"
-
-msgid "Units"
-msgstr "Enheder"
-
-msgid "Unknown"
-msgstr "Ukendt"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Ukendt printer-error-policy \"%s\"."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Ukendt printer-op-policy \"%s\"."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Ikke understøttet værditype"
-
-msgid "Upgrade Required"
-msgstr "Opgradering kræves"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Værdi bruger uendelig længde"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind bruger uendelig længde"
-
-msgid "Version uses indefinite length"
-msgstr "Version bruger uendelig længde"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Ja"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Du skal åbne denne side vha. URL-adressen <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "ZPL-etiketprinter"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "afbrudt"
-
-msgid "canceled"
-msgstr "annulleret"
-
-msgid "completed"
-msgstr "færdig"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "cups-deviced blev ikke udført."
-
-msgid "cups-driverd failed to execute."
-msgstr "cups-driverd blev ikke udført."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index bruger uendelig længde"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status bruger uendelig længde"
-
-msgid "held"
-msgstr "udsat"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "ledig"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "afventer"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "behandler"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id bruger uendelig længde"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "stat af %s mislykkedes: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "stoppet"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "ukendt"
-
-msgid "untitled"
-msgstr "uden navn"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings bruger uendelig længde"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(alle)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(ingen)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d optegnelser\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tEfter fejl: Fortsæt\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tAdvarsler:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tBanner kræves\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tTegnsæt:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tForbindelse: Direkte\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tForbindelse: Ekstern\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tStandardsidestørrelse:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tStandardhøjde:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tStandardportindstillinger:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tBeskrivelse: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tAktiv formular:\n"
-#~ "\tIndholdstyper: alle\n"
-#~ "\tPrintertyper: Ukendt\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tFormularer tilladt:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tGrænseflade: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tGrænseflade: %s/grænseflader/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tGrænseflade: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tPlacering: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tVed fejl: Ingen advarsel\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tBrugere tilladt:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tBrugere ikke tilladt:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tdaemon til stede\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tingen optegnelser\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tprinter er på enheden '%s', hastighed -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tudskrivning er slået fra\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tudskrivning er slået til\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tstår i kø til %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tkø er slået fra\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tkø er slået til\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tårsag ukendt\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " DETALJEREDE RESULTATER AF TEST AF OVERENSSTEMMELSE\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: Side 15, afsnit 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: Side 15, afsnit 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: Side 19, afsnit 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: Side 20, afsnit 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: Side 27, afsnit 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: Side 42, afsnit 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: Side 16-17, afsnit 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: Side 42-45, afsnit 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: Side 45-46, afsnit 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: Side 48-49, afsnit 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: Side 52-54, afsnit 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f byte\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN \"%s %s\" er i konflikt med \"%s %s\"\n"
-#~ " (begrænsning=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %s har ingen tilsvarende indstillinger!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s deler et almindeligt præfiks med %s\n"
-#~ " REF: Side 15, afsnit 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN Standardvalg er i konflikt!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN Nøgleordet til dupleksindstillingen %s virker muligvis "
-#~ "ikke som forventet og skal hedde Dupleks!\n"
-#~ " REF: Side 122, afsnit 5.17.\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " WARN Arkiv indeholder en blanding af linjeskifttyperne CR, LF og "
-#~ "CR LF!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN LanguageEncoding kræves af PPD 4.3 spec.\n"
-#~ " REF: Side 56-57, afsnit 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN Linje %d indeholder kun tom plads!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN Manufacturer kræves af PPD 4.3 spec.\n"
-#~ " REF: Side 58-59, afsnit 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN Manglende APDialogExtension-arkiv \"%s\"\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN Manglende APPrinterIconPath-arkiv \"%s\"\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN PPD-arkiver, som ikke stammer fra Windows, må kun bruge "
-#~ "linjeskifttypen LF, ikke CR LF!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN Forældet PPD-version %.1f!\n"
-#~ " REF: Side 42, afsnit 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName længere end 8.3 overtræder PPD-spec.\n"
-#~ " REF: Side 61-62, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protokoller indeholder PJL, men JCL-attributter er ikke "
-#~ "indstillet.\n"
-#~ " REF: Side 78-79, afsnit 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protokoller indeholder både PJL og BCP; forventede TBCP.\n"
-#~ " REF: Side 78-79, afsnit 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN ShortNickName kræves af PPD 4.3 spec.\n"
-#~ " REF: Side 64-65, afsnit 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s eksisterer ikke!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Ugyldigt %s-valg %s!\n"
-#~ " REF: Side 122, afsnit 5.17.\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Ugyldig UTF-8 \"%s\"-oversættelsesstreng til indstillingen %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Ugyldig UTF-8 \"%s\"-oversættelsesstreng til indstillingen %s, "
-#~ "valg %s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Ugyldig cupsFilter-værdi \"%s\"!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s Ugyldig cupsICCProfile %s!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Ugyldig cupsPreFilter-værdi \"%s\"!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Ugyldig cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Ugyldigt sprog \"%s\"!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s Tom cupsUIConstraints %s!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Manglende \"%s\"-oversættelsesstreng til indstillingen %s!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Manglende \"%s\"-oversættelsesstreng til indstillingen %s, valg "
-#~ "%s!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Manglende valg *%s %s i UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Manglende valg *%s %s i cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s Manglende cupsFilter-arkiv \"%s\"\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s Manglende cupsICCProfile-arkiv \"%s\"!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s Manglende cupsPreFilter-arkiv \"%s\"\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s Manglende cupsUIResolver %s!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Manglende indstilling %s i UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s Manglende indstilling %s i cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr ""
-#~ " %s Ingen basisoversættelse af \"%s\" er inkluderet i arkiv!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s REQUIRED %s definerer ikke valget Ingen!\n"
-#~ " REF: Side 122, afsnit 5.17.\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s cupsICCProfile %s-talværdi kolliderer med %s!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s forårsager en sløjfe!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** %s navne på valg %s og %s adskilles kun af brugen af "
-#~ "store/små bogstaver!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FAIL** %s skal være 1284DeviceID!\n"
-#~ " REF: Side 72, afsnit 5.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** UGYLDIG Default%s %s\n"
-#~ " REF: Side 40, afsnit 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** UGYLDIGT DefaultImageableArea %s!\n"
-#~ " REF: Side 102, afsnit 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** UGYLDIG DefaultPaperDimension %s!\n"
-#~ " REF: Side 103, afsnit 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FAIL** UGYLDIG JobPatchFile-egenskab i arkiv\n"
-#~ " REF: Side 24, afsnit 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** UGYLDIG Manufacturer (skulle være \"HP\")\n"
-#~ " REF: Side 211, tabel D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** UGYLDIG Manufacturer (skulle være \"Oki\")\n"
-#~ " REF: Side 211, tabel D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** UGYLDIGT ModelName - \"%c\" ikke tilladt i streng.\n"
-#~ " REF: Side 59-60, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** UGYLDIG PSVersion - ikke \"(string) int\".\n"
-#~ " REF: Side 62-64, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** UGYLDIGT Product - ikke \"(string)\".\n"
-#~ " REF: Side 62, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** UGYLDIGT ShortNickName - længere end 31 tegn.\n"
-#~ " REF: Side 64-65, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FAIL** Ugyldigt %s-valg %s!\n"
-#~ " REF: Side 84, afsnit 5.9.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Ugyldig FileVersion \"%s\"\n"
-#~ " REF: Side 56, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Ugyldig FormatVersion \"%s\"\n"
-#~ " REF: Side 56, afsnit 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **FAIL** Ugyldig LanguageEncoding %s - skal være ISOLatin1!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **FAIL** Ugyldig LanguageVersion %s - skal være dansk!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr ""
-#~ " **FAIL** Standardkode til indstilling kunne ikke fortolkes: %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Standardoversættelsesstreng til indstillingen %s, valg %"
-#~ "s, indeholder 8 bit tegn!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Standardoversættelsesstreng til indstillingen %s "
-#~ "indeholder 8 bit tegn!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Gruppenavne %s og %s adskilles kun af brugen af store/små "
-#~ "bogstaver!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FAIL** Flere forekomster af %s valg af navn %s!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Navne på indstillinger %s og %s adskilles kun af brugen "
-#~ "af store/små bogstaver!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Side 40, afsnit 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Side 102, afsnit 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Side 103, afsnit 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Side 56, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Side 56, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED ImageableArea til PageSize %s\n"
-#~ " REF: Side 41, afsnit 5.\n"
-#~ " REF: Side 102, afsnit 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Side 56-57, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Side 57-58, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Side 58-59, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Side 59-60, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Side 60, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Side 61-62, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Side 62-64, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Side 100, afsnit 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Side 41, afsnit 5.\n"
-#~ " REF: Side 99, afsnit 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Side 99-100, afsnit 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PaperDimension til PageSize %s\n"
-#~ " REF: Side 41, afsnit 5.\n"
-#~ " REF: Side 103, afsnit 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Side 62, afsnit 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Side 64-65, afsnit 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d FEJL FUNDET\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " Ugyldig %%%%BoundingBox: på linje %d!\n"
-#~ " REF: Side 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " Ugyldig %%%%Page: på linje %d!\n"
-#~ " REF: Side 53, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " Ugyldige %%%%Pages: på linje %d!\n"
-#~ " REF: Side 43, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " Linje %d er på mere end 255 tegn (%d)!\n"
-#~ " REF: Side 25, Linjelængde\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " Manglende %!PS-Adobe-3.0 på første linje!\n"
-#~ " REF: Side 17, 3.1 Overensstemmende dokumenter\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " Manglende %%EndComments-kommentar!\n"
-#~ " REF: Side 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " Manglende eller ugyldig %%BoundingBox: kommentar!\n"
-#~ " REF: Side 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " Manglende eller ugyldig %%Page: kommentarer!\n"
-#~ " REF: Side 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " Manglende eller ugyldig %%Pages: kommentar!\n"
-#~ " REF: Side 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " INGEN FEJL FUNDET\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " SÃ¥ %d linjer, der overskred 255 tegn!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " For mange %%BeginDocument-kommentarer!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " For mange %%EndDocument-kommentarer!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Advarsel: Arkiv indeholder binære data!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Advarsel: Ingen %%EndComments-kommentar i arkiv!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Advarsel: Forældet DSC-version %.1f i arkiv!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FAIL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Kan ikke åbne PPD-arkiv - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Kan ikke åbne PPD-arkiv - %s på linje %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " PASS\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10-kuvert"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11-kuvert"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12-kuvert"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14-kuvert"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9-kuvert"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f byte\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f byte\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s accepterer anmodninger siden %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s er ikke implementeret af CUPS-versionen af lpc.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s er ikke klar\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s er klar\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s er klar og udskriver\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s accepterer ikke anmodninger siden %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s ikke understøttet!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s accepterer anmodninger siden %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s accepterer ikke anmodninger siden %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [job %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s mislykkedes: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: Ved ikke, hvad jeg skal gøre!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Fejl - %s-miljøvariabel navngiver ikke eksisterende destination \"%s"
-#~ "\"!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Fejl - ugyldig job-id!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr "%s: Fejl - kan ikke udskrive arkiver og ændre job på samme tid!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Fejl - kan ikke udskrive fra stdin, hvis der leveres arkiver eller en "
-#~ "job-id!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Fejl - forventede tegnsæt efter indstillingen '-S'!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Fejl - forventede indholdstype efter indstillingen '-T'!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: Fejl - forventede kopier efter indstillingen '-n'!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: Fejl - forventede antal kopier efter indstillingen '-#'!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Fejl - forventede destination efter indstillingen '-P'!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Fejl - forventede destination efter indstillingen '-b'!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Fejl - forventede destination efter indstillingen '-d'!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Fejl - forventede formular efter indstillingen '-f'!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Error - forventede udsat navn efter indstillingen '-H'!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Error - forventede værtsnavn efter indstillingen '-H'!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Error - forventede værtsnavn efter indstillingen '-H'!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: Error - forventede funktionsliste efter indstillingen '-y'!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Error - forventede navn efter indstillingen '-%c'!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr ""
-#~ "%s: Error - forventede alternativ streng efter indstillingen '-o'!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Error - forventede sideliste efter indstillingen '-P'!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Error - forventede prioritet efter indstillingen '-%c'!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Fejl - forventede årsagstekst efter indstillingen '-r'!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Error - forventede titel efter indstillingen '-t'!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: Error - forventede brugernavn efter indstillingen '-U'!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: Error - forventede brugernavn efter indstillingen '-u'!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Error - forventede værdi efter indstillingen '-%c'!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Fejl - skal have \"completed\", \"not-completed\" eller \"all\" efter "
-#~ "indstillingen '-W'!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Fejl - ingen tilgængelig standarddestination.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Fejl - prioritet skal være mellem 1 og 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Fejl - planlægger svarer ikke!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Fejl - for mange arkiver - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Fejl - kan ikke få adgang til \"%s\" - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: Fejl - kan ikke sætte i kø fra stdin - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Fejl - ukendt destination \"%s\"!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Fejl - ukendt destination \"%s/%s\"!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Fejl - ukendt indstilling '%c'!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Fejl - ukendt indstilling '%s'!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: Forventede job-id efter indstillingen '-i'!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Filter \"%s\" ikke tilgængeligt: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Ugyldigt destinationsnavn på listen \"%s\"!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: Ugyldig filterstreng \"%s\"\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr "%s: Skal have job-id ('-i jobid') før '-H restart'!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Intet filter til konvertering fra %s/%s til %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: Handling mislykkedes: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr ""
-#~ "%s: Beklager, der er ikke medkompileret krypteringsunderstøttelse!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Kan ikke oprette forbindelse til server\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: Kan ikke kontakte server!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: Kan ikke bestemme MIME-typen på \"%s\"!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: Kan ikke åbne %s - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: Kan ikke åbne %s - %s på linje %d.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: Kan ikke åbne %s: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: Kan ikke åbne PPD-arkiv: %s på linje %d\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: Kan ikke læse MIME-database fra \"%s\" eller \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: Ukendt destination \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: Ukendt destination på MIME-typen \"%s/%s\"!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: Ukendt indstilling '%c'!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: Ukendt kilde på MIME-typen %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Advarsel - '%c'-formatmodifikation ikke understøttet - resultat "
-#~ "muligvis ikke korrekt!"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Advarsel - indstillingen tegnsæt ignoreret!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Advarsel - indstillingen indholdstype ignoreret!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Advarsel - indstillingen formular ignoreret!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Advarsel - indstillingen funktion ignoreret!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Fejl - %s-miljøvariabel navngiver ikke eksisterende destination \"%s"
-#~ "\"!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: Fejl - forventede option=value efter indstillingen '-o'!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: Fejl - ingen tilgængelig standarddestination.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 dpi gråtoner"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60 x 720 dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Ugyldig hjælpekommando ukendt\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "Der kræves en Samba-adgangskode til eksport af printerarkiver!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr "Der kræves et Samba-brugernavn til eksport af printerarkiver!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Der findes allerede en klasse kaldet \"%s\"!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Der findes allerede en printer kaldet \"%s\"!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (overstørrelse)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (overstørrelse)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (beskåret)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (overstørrelse)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "Forsøger at indstille %s-printer-state til ugyldig værdi %d!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Egenskabsgrupper er ikke i rækkefølge (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "Ugyldig enheds-URI \"%s\"!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "Ugyldig device-uri \"%s\"!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Ugyldig device-uri-plan \"%s\"!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "Ugyldigt document-format \"%s\"!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Ugyldig arkivnavnebuffer!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Ugyldig skriftattribut: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Ugyldig værdi for job-priority!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Ugyldig værdi for job-sheets \"%s\"!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Ugyldig værditype på job-sheets!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Ugyldig værdi for job-state!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Ugyldig egenskab for job-uri \"%s\"!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Ugyldig notify-pull-method \"%s\"!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "Ugyldig notify-recipient-uri URI \"%s\"!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Ugyldig indstilling + valg på linje %d!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Ugyldig port-monitor \"%s\"!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Ugyldig værdi for printer-state %d!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Ugyldigt versionsnummer på anmodning %d.%d!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "Ugyldig abonnements-id!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0-kuvert"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1-kuvert"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2-kuvert"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3-kuvert"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4-kuvert"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5-kuvert"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6-kuvert"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65-kuvert"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7-kuvert"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Tegnsættet \"%s\" understøttes ikke!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3-kuvert"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4-kuvert"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Kommandoer kan være forkortet. Kommandoer er:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Kunne ikke scanne typen \"%s\"!"
-
-#~ msgid "Cover open."
-#~ msgstr "Dæksel åbent."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL-kuvert"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Fremkalder næsten tom."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Fremkalder tom!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Enhed: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Dokument %d findes ikke i job %d."
-
-#~ msgid "Door open."
-#~ msgstr "Dæksel åbent."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Dobbelt postkort"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: Kan ikke tildele hukommelse til sideinfo: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: Kan ikke tildele hukommelse til rækkefølge af sider: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Ugyldig %%BoundingBox: Kommentar set!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: Ugyldig %%IncludeFeature: Kommentar!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: Ugyldig %%Page: Kommentar i arkiv!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: Ugyldig %%PageBoundingBox: Kommentar i arkiv!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Ugyldigt SCSI-enhedsarkiv \"%s\"!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: Ugyldigt tegnsætsarkiv %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: Ugyldig type på tegnsæt %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: Ugyldig kolonneværdi %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: Ugyldig cpi-værdi %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: Ugyldig linje til skriftbeskrivelse: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: Ugyldig lpi-værdi %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Ugyldigt sidelayout!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: Ugyldig tekstretning %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: Ugyldig tekstbredde %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: Destinationsprinter findes ikke!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Dubleret %%BoundingBox: Kommentar set!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: Dublerede %%Pages: Kommentar set!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: Tomt udskriftsarkiv!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: Fejl %d under afsendelse af PAPSendData-anmodning: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: Forventede streng med anførselstegn på linje %d af %s!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: Uoprettelig USB-fejl!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr "ERROR: Ugyldig HP-GL/2-kommando set, kan ikke udskrive arkiv!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: Manglende %%EndProlog!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: Manglende %%EndSetup!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Manglende enheds-URI på kommandolinjen og ingen DEVICE_URI-"
-#~ "miljøvariabel!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: Manglende værdi på linje %d i bannerarkiv!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: Kræver en msgid-linje før evt. oversætterstrenge på linje %d i %"
-#~ "s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: Ingen %%BoundingBox: Kommentar i header!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: Ingen %%Pages: Kommentar i header!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Ingen enheds-URI fundet i argv[0] eller i DEVICE_URI-"
-#~ "miljøvariabel!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: Ingen skrifter i tegnsætsarkiv %s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: Ingen sider fundet!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: Ikke mere papir!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: PRINTER-miljøvariabel ikke defineret!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: Udskriftsarkiv blev ikke accepteret (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: Printer svarer ikke!\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: Printer svarer ikke!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: Printer sendte uventet EOF\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: Ekstern vært accepterede ikke kontrolarkiv (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: Ekstern vært accepterede ikke dataarkiv (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: Der opstod en timeout-fejl under afsendelse af data til printeren\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: Kan ikke føje arkivet %d til job: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: Kan ikke annullere jobbet %d: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: Kan ikke kopiere PDF-arkiv"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: Kan ikke oprette socket"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: Kan ikke oprette midlertidigt komprimeret udskriftsarkiv: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: Kan ikke oprette midlertidigt arkiv"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: Kan ikke oprette midlertidigt arkiv - %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: Kan ikke oprette midlertidigt arkiv: %s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: Kan ikke udføre pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: Kan ikke udføre gs-program"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: Kan ikke udføre pdftops-program"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: Kan ikke fork pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: Kan ikke hente PAP-anmodning"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: Kan ikke hente PAP-svar"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr "ERROR: Kan ikke hente PPD-arkiv til printeren \"%s\" - %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: Kan ikke hente AppleTalk-standardzone"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: Kan ikke hente attributter til jobbet %d (%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: Kan ikke hente printerstatus (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: Kan ikke finde printeren '%s'!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: Kan ikke søge efter PAP-svar"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: Kan ikke slå AppleTalk-printere op"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: Kan ikke oprette AppleTalk-adresse"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: Kan ikke åbne \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: Kan ikke åbne %s: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: Kan ikke åbne bannerarkiv \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: Kan ikke åbne enhedsarkivet \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: Kan ikke åbne arkivet \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: Kan ikke åbne arkivet \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: Kan ikke åbne billedarkiv til udskrivning!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: Kan ikke åbne udskriftarkivet \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: Kan ikke åbne udskriftsarkivet %s - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: Kan ikke åbne udskriftarkivet %s: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Kan ikke åbne midlertidigt komprimeret udskriftsarkiv: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: Kan ikke åbne midlertidigt arkiv"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: Kan ikke udskrive %d tekstspalter!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: Kan ikke udskrive %dx%d tekstside!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: Kan ikke læse udskriftsdata"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: Kan ikke læse udskriftsdata!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: Kan ikke reservere port"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: Kan ikke forsøge at forskyde %ld i arkiv - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: Kan ikke forsøge at forskyde %lld i arkiv - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: Kan ikke sende LPD-kommando"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: Kan ikke sende PAP tickle-anmodning"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: Kan ikke sende startanmodningen PAP send data"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: Kan ikke sende udskriftsdata (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: Kan ikke sende udskriftsdata!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: Kan ikke sende udskriftsarkiv til printer"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: Kan ikke sende udpunkteringsnul til printer"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: Kan ikke vente på pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: Kan ikke skrive %d byte til \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: Kan ikke skrive %d byte til printer!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: Kan ikke skrive kontrolarkiv"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: Kan ikke skrive udskriftsdata"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: Kan ikke skrive udskriftsdata: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: Kan ikke skrive rasterdata til driver!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: Kan ikke skrive til midlertidigt arkiv"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: Kan ikke skrive ukomprimerede dokumentdata: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: Uventet tekst på linje %d af %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: Ukendt værdi i krypteringsindstilling \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: Ukendt arkivrækkefølge \"%s\"\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: Ukendt formattegn \"%c\"\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: Ukendt beskedkatalogformat til \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: Ukendt indstilling \"%s\" med værdien \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: Ukendt udskriftsfunktion \"%s\"\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: Ukendt værdi på versionsindstilling \"%s\"!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr ""
-#~ "ERROR: Værdi for lysstyrke %s ikke understøttet, bruger lysstyrke=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: Værdi for gamma %s ikke understøttet, bruger gamma=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr ""
-#~ "ERROR: Værdi for number-up %d ikke understøttet, bruger number-up=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: Værdi for number-up-layout %s ikke understøttet, bruger number-up-"
-#~ "layout=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: Værdi for page-border %s ikke understøttet, bruger page-"
-#~ "border=none!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: doc_printf-overløb (%d byte) registreret, annullerer!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: pdftops-filter gik ned på signalet %d!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: pdftops-filter afsluttede med status %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops afsluttede på signalet %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops afsluttede med status %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: Kan gendannes: Kan ikke oprette forbindelse til printer; prøver "
-#~ "igen om 30 sekunder...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() mislykkedes"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: Kan ikke stat udskriftsarkiv"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Tomt PPD-arkiv!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "ERROR: Værtsnavn kræves efter indstillingen '-h'!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "FAIL\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "Arkivets enheds-URI'er er blevet slået fra! Du slår det til ved at se i "
-#~ "FileDevice-direktivet i \"%s/cupsd.conf\"."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Fixertemperatur høj!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Fixertemperatur lav!"
-
-#~ msgid "German FanFold"
-#~ msgstr "Tysk FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "Tysk FanFold, 8,5 x 14\""
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Fik en printer-uri-egenskab, men ingen job-id!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk slået fra i Systemindstillinger\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk slået fra i Systemindstillinger.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: Annullerer udskriftsjob...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: Sluttet til printer...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: Opretter forbindelse til printer...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: Kontrolarkiv sendt\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: Dataarkiv sendt\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: Formaterer siden %d...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: Indlæser billedarkivet...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: Søger efter printer...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: Ã…bner forbindelse\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: Udskriftsarkiv sendt, venter på, at printer bliver færdig...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: Printer i brug; prøver igen om 10 sekunder...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Printer i brug; prøver igen om 30 sekunder...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Printer i brug; prøver igen om 5 sekunder...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr "INFO: Printer understøtter ikke IPP/%d.%d, prøver IPP/1.0...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Printer i brug; prøver igen om 5 sekunder...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: Printer er passiv.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: Printer er passiv.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: Printer er nu aktiv.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: Printer er passiv.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Printer ikke tilsluttet; prøver igen om 30 sekunder...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: Udskriver side %d, %d%% færdig...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: Udskriver side %d...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: Klar til at udskrive.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: Sender kontrolarkiv (%lu byte)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: Sender kontrolarkiv (%u byte)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: Sender data\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: Sender dataarkiv (%ld byte)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: Sender dataarkiv (%lld byte)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: Sender udskriftsdata...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: Sendt udskriftsarkiv, %ld byte...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: Sendt udskriftsarkiv, %lld byte...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: Spoler LPR-job, %.0f%% færdig...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: Kan ikke kontakte printer, sætter job i kø på næste printer i "
-#~ "klassen...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: Bruger AppleTalk-standardzone \"%s\"\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: Venter på, at job bliver færdigt...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: Venter på, at printer bliver tilgængelig...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4-kuvert"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (overstørrelse)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5-kuvert"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6-kuvert"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Blæk/toner næsten tom."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Blæk/toner tom!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Affaldsbeholder til blæk/toner næsten fuld."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Affaldsbeholder til blæk/toner fuld!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Sikkerhedsafbryder åben."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Invite-kuvert"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Italiensk kuvert"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "Job #%d kan ikke startes igen - ingen arkiver!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "Job #%d eksisterer ikke!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "Job #%d er færdigt og kan ikke ændres!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "Job #%d er ikke færdigt!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "Job #%d er ikke udsat til godkendelse!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "Job #%d er ikke udsat!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "Job #%s eksisterer ikke!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Job %d findes ikke!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Jobabonnementer kan ikke fornys!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2-kuvert"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3-kuvert"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Sproget \"%s\" understøttes ikke!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Mediestop!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Mediebakke næsten tom."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Mediebakke tom!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Mediebakke mangler!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Mediebakke skal fyldes op."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "Manglende document-number-attribut!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Manglende dobbelt anførselstegn i linje %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Manglende formularvariabel!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "Manglende notify-subscription-ids-egenskab!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Manglende requesting-user-name-egenskab!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Manglende nødvendige attributter!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Manglende værdi i linje %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Monarch-kuvert"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: Udskriftsarkiv accepteret - job-id %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: Udskriftsarkiv accepteret - job-id ukendt.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Intet PPD-navn!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Der er ikke installeret nogen Windows-printerdrivere!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Ingen aktive job på %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Ingen attributter i anmodning!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Ingen godkendelsesoplysninger leveret!"
-
-#~ msgid "No default printer"
-#~ msgstr "Ingen standardprinter"
-
-#~ msgid "No file!?!"
-#~ msgstr "Intet arkiv!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Intet ændringstidspunkt!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Intet printernavn!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Ingen printer-uri fundet til klasse!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Ingen printer-uri fundet!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Ingen printer-uri i anmodning!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Ingen abonnementsattributter i anmodning!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC næsten slidt op."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC slidt op!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Ikke mere toner!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Udbakke næsten fuld."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Udbakke fuld!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "Udskrifter til printer %s er sendt til %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr "Udskrifter til printer %s er sendt til ekstern printer %s på %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "Udskrifter til printer %s/%s er sendt til %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Udskrifter til printer %s/%s er sendt til ekstern printer %s på %s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Udbakke mangler!"
-
-#~ msgid "PASS\n"
-#~ msgstr "PASS\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1-kuvert"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10-kuvert"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2-kuvert"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3-kuvert"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (overstørrelse)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4-kuvert"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5-kuvert"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6-kuvert"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7-kuvert"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8-kuvert"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9-kuvert"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Personlig kuvert"
-
-#~ msgid "Printer offline."
-#~ msgstr "Printer passiv."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Grad Ejer Job Arkiv(er) Str. i alt\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Grad Ejer Pri Job Arkiver Str. i "
-#~ "alt\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Aktiv kommando: %s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "SCSI-printer"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "17 x 11\" (overstørrelse)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "Værdien for notify-user-data er for stor (%d > 63 oktetter)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "Printeren eller klassen er ikke delt!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "Printeren eller klassen findes ikke."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "Egenskaben printer-uri kræves!"
-
-#~ msgid "Toner low."
-#~ msgstr "Toner lav."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "For mange job-sheets-værdier (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "For mange printer-state-reasons-værdier (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "7,25 x 10,5\""
-
-#~ msgid "US Fanfold"
-#~ msgstr "Amerikansk fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "8,5 x 14\" (overstørrelse)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "8,5 x 11\" (overstørrelse)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "8,5 x 11\" (beskåret)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Kan ikke tilføje job til destinationen \"%s\"!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Kan ikke tildele hukommelse til arkivtyper!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr "Kan ikke kopiere 64 bit CUPS-printerarkiver (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr "Kan ikke kopiere 64 bit Windows-printerarkiver (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "Kan ikke kopiere CUPS-printerarkiver (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Kan ikke kopiere PPD-arkiv - %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Kan ikke kopiere PPD-arkiv!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr "Kan ikke kopiere Windows 2000-printerarkiver (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "Kan ikke kopiere Windows 9x-printerarkiver (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Kan ikke kopiere grænsefladeinstruks - %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Kan ikke oprette printer-uri!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "Kan ikke redigere cupsd.conf-arkiver på mere end 1 MB!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Kan ikke finde jobbets destination!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Kan ikke finde printer!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr "Kan ikke installere Windows 2000-printerarkiver (%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr "Kan ikke installere Windows 9x-printerarkiver (%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Kan ikke åbne dokument %d i job %d!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Kan ikke afvikle \"%s\": %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Kan ikke sende kommando til printerarkiv!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Kan ikke indstille Windows-printerarkiv (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Kan ikke bruge oprindeligt printerarkiv af USB-klasse!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Ukendt printerfejl (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Ikke understøttet tegnsæt \"%s\"!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Ikke understøttet komprimering \"%s\"!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Ikke understøttet komprimeringsegenskab %s!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Ikke understøttet format \"%s\"!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Ikke understøttet format \"%s\"!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Ikke understøttet format '%s/%s'!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Brug:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Brug: %s job user title copies options [filename]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Brug: %s job-id user title copies options [file]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Brug: %s job-id user title copies options file\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Brug: convert [ options ]\n"
-#~ "\n"
-#~ "Indstillinger:\n"
-#~ "\n"
-#~ " -f arkivnavn Indstil arkiv, der skal konverteres (otherwise "
-#~ "stdin)\n"
-#~ " -o arkivnavn Indstil arkiv, der skal genereres (otherwise "
-#~ "stdout)\n"
-#~ " -i mime/type Indstil indgående MIME-type (otherwise auto-"
-#~ "typed)\n"
-#~ " -j mime/type Indstil udgående MIME-type (otherwise application/"
-#~ "pdf)\n"
-#~ " -P arkivnavn.ppd Indstil PPD-arkiv\n"
-#~ " -a 'name=value ...' Juster indstilling(er)\n"
-#~ " -U brugernavn Indstil brugernavn til job\n"
-#~ " -J titel Indstil titel\n"
-#~ " -c kopier Indstil antal kopier\n"
-#~ " -u Fjern PPD-arkiv når færdig\n"
-#~ " -D Fjern indgående arkiv når færdig\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Brug: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Indstillinger:\n"
-#~ " -E Krypter forbindelsen til serveren\n"
-#~ " -H samba-server Brug den navngivne SAMBA-server\n"
-#~ " -U samba-user Godkend vha. den navngivne SAMBA-bruger\n"
-#~ " -a Eksporter alle printere\n"
-#~ " -h cups-server Brug den navngivne CUPS-server\n"
-#~ " -v Vær detaljeret (vis kommandoer)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Brug: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Indstillinger:\n"
-#~ "\n"
-#~ " -E Slå kryptering til\n"
-#~ " -U brugernavn Angiv brugernavn\n"
-#~ " -h server[:port] Angiv serveradresse\n"
-#~ "\n"
-#~ " --[no-]debug-logging Slå fejlfindingslog til/fra\n"
-#~ " --[no-]remote-admin Slå ekstern administration til/fra\n"
-#~ " --[no-]remote-any Tillad/afvis adgang fra Internet\n"
-#~ " --[no-]remote-printers Vis/skjul eksterne printere\n"
-#~ " --[no-]share-printers Slå printerdeling til/fra\n"
-#~ " --[no-]user-cancel-any Brugere må/må ikke annullere alle job\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Brug: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Indlæs alternativt konfigurationsarkiv\n"
-#~ "-f Afvikl i forgrunden\n"
-#~ "-F Afvikl i baggrunden, men fjern\n"
-#~ "-h Vis denne brugsmeddelelse\n"
-#~ "-l Start cupsd fra startd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Brug: cupsfilter -m mime/type [ options ] arkivnavn\n"
-#~ "\n"
-#~ "Indstillinger:\n"
-#~ "\n"
-#~ " -c cupsd.conf Indstil cupsd.conf-arkiv til at bruge\n"
-#~ " -j job-id[,N] Filter arkiv N fra det anførte job (standard er arkiv "
-#~ "1)\n"
-#~ " -n kopier Indstil antal kopier\n"
-#~ " -o name=value Juster indstilling(er)\n"
-#~ " -p arkivnan.ppd Indstil PPD-arkiv\n"
-#~ " -t titel Indstil titel\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Brug: cupstestdsc [options] arkivnavn.ps [... arkivnavn.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Indstillinger:\n"
-#~ "\n"
-#~ " -h Vis programbrug\n"
-#~ "\n"
-#~ " Bemærk: Dette program godkender kun DSC-kommentarer, ikke selve "
-#~ "PostScript.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Brug: cupstestppd [options] arkivnavn1.ppd[.gz] [... arkivnavnN.ppd[."
-#~ "gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Indstillinger:\n"
-#~ "\n"
-#~ " -R root-directory Indstil alternativ root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Udsted advarsler i stedet for fejl\n"
-#~ " -q Afvikl i baggrunden\n"
-#~ " -r Brug 'relaxed' åben funktion\n"
-#~ " -v Vær en anelse detaljeret\n"
-#~ " -vv Vær meget detaljseret\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Brug: lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Brug: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Brug: lppasswd [-g groupname]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Brug: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Brug: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Brug: ppdc [options] arkivnavn.drv [ ... arkivnavnN.drv ]\n"
-#~ "Indstillinger:\n"
-#~ " -D name=value Indstil navngiven variabel til værdi.\n"
-#~ " -I include-dir Tilføj inkluder bibliotek i søgesti.\n"
-#~ " -c catalog.po Indlæs det anførte beskedkatalog.\n"
-#~ " -d output-dir Angiv resultatbiblioteket.\n"
-#~ " -l lang[,lang,...] Angiv resultatsproget(-sprogene) (locale).\n"
-#~ " -m Brug ModelName-værdien som arkivnavnet.\n"
-#~ " -t Test PPD'er i stedet for at generere dem.\n"
-#~ " -v Vær detaljeret (flere v'er giver flere detaljer).\n"
-#~ " -z Komprimer PPD-arkiver vha. GNU zip.\n"
-#~ " --cr Afslut linjer med CR (Mac OS 9).\n"
-#~ " --crlf Afslut linjer med CR + LF (Windows).\n"
-#~ " --lf Afslut linjer med LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Brug: ppdhtml [options] arkivnavn.drv >arkivnavn.html\n"
-#~ " -D name=value Indstil navngiven variabel til værdi.\n"
-#~ "Indstillinger:\n"
-#~ " -I include-dir Tilføj inkluder bibliotek i søgesti.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Brug: ppdi [options] arkivnavn.ppd [ ... arkivnavnN.ppd ]\n"
-#~ "Indstillinger:\n"
-#~ " -I include-dir\n"
-#~ " -o arkivnavn.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Brug: ppdmerge [options] arkivnavn.ppd [ ... arkivnavnN.ppd ]\n"
-#~ "Indstillinger:\n"
-#~ " -o arkivnavn.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Brug: ppdpo [options] -o arkivnavn.po arkivnavn.drv [ ... arkivnavnN."
-#~ "drv ]\n"
-#~ "Indstillinger:\n"
-#~ " -D name=value Indstil navngiven variabel til værdi.\n"
-#~ " -I include-dir Tilføj inkluder bibliotek i søgesti.\n"
-#~ " -v Vær detaljeret (flere v'er giver flere detaljer).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Brug: snmp [host-or-ip-address]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: Tilføjer kun de første %d fundne printere"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: Boolesk forventet for indstillingen waiteof \"%s\"\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: Kunne ikke læse anmodningen om side-channel!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: Indstillingen \"%s\" kan ikke inkluderes via IncludeFeature!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: Printer svarer ikke!\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: Printer sendte uventet EOF\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Ekstern vært svarede ikke med kommandostatus-byte efter %d "
-#~ "sekunder!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Ekstern vært svarede ikke med kontrolstatus-byte efter %d "
-#~ "sekunder!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Ekstern vært svarede ikke med datastatus-byte efter %d "
-#~ "sekunder!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: Timeout i SCSI-kommando (%d); prøver igen...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Dette dokument overholder ikke Adobe Document Structuring "
-#~ "Conventions og udskrives muligvis ikke korrekt!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: Kan ikke åbne \"%s:%s\": %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: Kan ikke sende PAP status-anmodning"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: Uventet PAP-pakke af typen %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: Ukendt PAP-pakke af typen %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: Ukendt valg \"%s\" til indstillingen \"%s\"!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: Ukendt indstilling \"%s\"!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: Ikke understøttet baudhastighed %s!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: tal forventet for indstillingen status \"%s\"\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: Kan gendannes: Netværksværten '%s' er i brug; prøver igen om %d "
-#~ "sekunder...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr ""
-#~ "Advarsel - der er ikke installeret nogen Windows 2000-printerarkiver!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4-kuvert"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "konverter: Brug indstillingen -f til at anføre et arkiv, der skal "
-#~ "konverteres.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: Intet PPD-arkiv til printeren \"%s\" - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: Kan ikke oprette forbindelse til server: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: Ukendt indstilling \"%s\"!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: Ukendt indstilling \"-%c\"!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: Forventede config-arkivnavn efter indstillingen \"-c\"!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: Kan ikke hente aktuelt bibliotek!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: Ukendt argument \"%s\" - afbryder!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: Ukendt indstilling \"%c\" - afbryder!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: launchd(8)-understøttelse ikke medkompileret, afvikles i normal "
-#~ "funktion.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: Ugyldigt dokumentnummer %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: Ugyldig job-id %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: Der kan kun anføres et arkivnavn!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: Kan ikke oprette midlertidigt arkiv: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: Kan ikke hente jobarkiv - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr ""
-#~ "cupstestppd: Indstillingen -q er ikke kompatibel med indstillingen -v.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr ""
-#~ "cupstestppd: Indstillingen -v er ikke kompatibel med indstillingen -q.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "enhed til %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "enhed til %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "hjælp\t\tfå hjælp til kommandoer"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "egenskaben job-printer-uri mangler!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Klassenavn må kun indeholde tegn, der kan udskrives!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: Forventede PPD efter indstillingen '-P'!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: Forventede allow/deny:userlist efter indstillingen '-u'!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: Forventede klasse efter indstillingen '-r'!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: Forventede klassenavn efter indstillingen '-c'!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: Forventede beskrivelse efter indstillingen '-D'!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: Forventede enheds-URI efter indstillingen '-v'!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: Forventede arkivtype(r) efter indstillingen '-I'!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: Forventede værtsnavn efter indstillingen '-h'!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: Forventede grænseflade efter indstillingen '-i'!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: Forventede placering efter indstillingen '-L'!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: Forventede model efter indstillingen '-m'!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: Forventede navn=værdi efter indstillingen '-o'!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: Forventede printer efter indstillingen '-p'!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: Forventede printernavn efter indstillingen '-d'!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr ""
-#~ "lpadmin: Forventede printer eller klasse efter indstillingen '-x'!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: Ingen medlemsnavne set!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: Printeren %s er allerede medlem af klassen %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: Printeren %s er ikke medlem af klassen %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Printernavn må kun indeholde tegn, der kan udskrives!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke føje en printer til klassen:\n"
-#~ " Du skal først angive et printernavn!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: Kan ikke oprette forbindelse til server: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: Kan ikke oprette midlertidigt arkiv - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: Kan ikke oprette midlertidigt arkiv: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: Kan ikke åbne PPD-arkivet \"%s\" - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: Kan ikke åbne arkivet \"%s\": %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke fjerne en printer fra klassen:\n"
-#~ " Du skal først angive et printernavn!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke indstille PPD-arkivet:\n"
-#~ " Du skal først angive et printernavn!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke indstille enheds-URI'en:\n"
-#~ " Du skal først angive et printernavn!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke indstille grænsefladeinstruksen eller PPD-arkivet:\n"
-#~ " Du skal først angive et printernavn!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke indstille grænsefladeinstruksen:\n"
-#~ " Du skal først angive et printernavn!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke indstille printerbeskrivelsen:\n"
-#~ " Du skal først angive et printernavn!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke indstille printerens placering:\n"
-#~ " Du skal først angive et printernavn!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke indstille printerens udstyr:\n"
-#~ " Du skal først angive et printernavn!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: Ukendt indstilling for tillad/afvis \"%s\"!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: Ukendt argument \"%s\"!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: Ukendt indstilling '%c'!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: Advarsel - listen indholdstype ignoreret!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo: Forventede 1284-enheds-id-streng efter --device-id!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: Forventede sprog efter --language!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: Forventede mærke og model efter --make-and-model!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: Forventede produktstreng efter --product!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: Forventede planliste efter --exclude-schemes!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: Forventede planliste efter --include-schemes!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: Forventede timeout efter --timeout!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: Ukendt argument \"%s\"!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: Ukendt indstilling '%c'!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: Ukendt indstilling '%s'!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: Kan ikke oprette forbindelse til server: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: Ukendt argument \"%s\"!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: Ukendt indstilling '%c'!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: Ingen printere!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: Kan ikke tilføje printer eller tilfælde: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: Kan ikke hente PPD-arkivet til %s: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: Kan ikke åbne PPD-arkivet til %s!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: Ukendt printer eller klasse!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: Det er kun root, der må tilføje og slette adgangskoder!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: Adgangskodearkiv i brug!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: Adgangskodearkiv ikke opdateret!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: Beklager, adgangskoderne er ikke de samme!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: Beklager, adgangskode afvist. Adgangskoden skal bestå af mindst "
-#~ "6 tegn, må ikke indeholde dit brugernavn og skal indeholde mindst et "
-#~ "bogstav og et tal.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: Beklager, adgangskoderne er ikke de samme!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: Kan ikke kopiere adgangskodestreng: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: Kan ikke åbne adgangskodearkiv: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: Kan ikke skrive til adgangskodearkiv: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd: kunne ikke sikkerhedskopiere gammelt adgangskodearkiv: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: kunne ikke omdøbe adgangskodearkiv: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: brugeren \"%s\" og gruppen \"%s\" findes ikke.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: Fejl - %s-miljøvariabel navngiver ikke eksisterende destination "
-#~ "\"%s\"!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "medlemmer af klassen %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "ingen optegnelser"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "ingen standarddestination til system"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events ikke anført!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri URI \"%s\" er allerede brugt!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri URI \"%s\" bruger ukendt skema!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d ikke i orden!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: Tilføjer inkluder bibliotek \"%s\"...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: Tilføjer/opdaterer ui-tekst fra %s...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Ugyldig booleesk værdi (%s) på linje %d af %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldigt opløsningsnavn \"%s\" på linje %d af %s!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldigt statusnøgleord %s på linje %d af %s!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: Ugyldig variabelerstatning ($%c) på linje %d af %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: Valg fundet på linje %d af %s uden nogen indstilling!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: Dubleret #po for lokalitet %s på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede en filterdefinition på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede et programnavn på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: Forventede booleesk værdi på linje %d af %s.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede tegnsæt efter Font på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: Forventede valgkode på linje %d af %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: Forventede valgnavn/-tekst på linje %d af %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventede farverækkefølge til ColorModel på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede farveområde til ColorModel på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede komprimering til ColorModel på linje %d af %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventede begrænsningsstreng til UIConstraints på linje %d af %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventede nøgleord til printerarkivtype efter DriverType på linje %"
-#~ "d af %s!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede duplekstype efter Duplex på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede kodning efter Font på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede arkivnavn efter #po %s på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede gruppenavn/-tekst på linje %d af %s.\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede inkluder arkivnavn på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede heltal på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede lokalitet efter #po på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede navn efter %s på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede navn efter FileName på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede navn efter Font på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede navn efter Manufacturer på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede navn efter MediaSize på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede navn efter ModelName på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede navn efter PCFileName på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede navn/tekst efter %s på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede navn/tekst efter Installable på linje %d af %s.\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede navn/tekst efter Resolution på linje %d af %s.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventede navn-/tekstkombination til ColorModel på linje %d af %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede indstillingsnavn/-tekst på linje %d af %s.\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede indstillingssektion på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede indstillingstype på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventede tilsidesættelsesfelt efter Resolution på linje %d af %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede rigtigt tal på linje %d af %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventede opløsnings-/medietype efter ColorProfile på linje %d af %"
-#~ "s.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventede opløsnings-/medietype efter SimpleColorProfile på linje %"
-#~ "d af %s.\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede vælger efter %s på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede status efter Font på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede streng efter Copyright på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede streng efter Version på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede to indstillingsnavne på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede værdi efter %s på linje %d af %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Forventede version efter Font på linje %d af %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: Ugyldigt #include/#po-arkivnavn \"%s\"!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig omkostning for filter på linje %d af %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig tom MIME-type for filter på linje %d af %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldigt tomt programnavn for filter på linje %d af %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig indstillingssektion \"%s\" på linje %d af %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig indstillingstype \"%s\" på linje %d af %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: Indlæser oplysningsarkiv til printerarkiv \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: Indlæser beskeder til lokalitet \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: Indlæser beskeder fra \"%s\"...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: Manglende #endif i slutningen af \"%s\"!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: Manglende #if på linje %d af %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: Intet beskedkatalog til lokalitet %s!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Indstilling %s omdefineret med en anden type på linje %d af %s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc: Indstillingen constraint skal *name på linje %d af %s.\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: For mange indlejrede #if-udsagn på linje %d af %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: Kan ikke oprette PPD-arkivet \"%s\" - %s\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: Kan ikke oprette resultatbibliotek %s: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: Kan ikke oprette resultatrør: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: Kan ikke udføre cupstestppd: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: Kan ikke finde #po-arkiv %s på linje %d af %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Kan ikke finde inkluder arkiv \"%s\" på linje %d af %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: Kan ikke finde lokalisering for \"%s\" - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: Kan ikke indlæse lokaliseringsarkivet \"%s\" - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Udefineret variabel (%s) på linje %d af %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: Ukendt type printerarkiv %s på linje %d af %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ukendt duplekstype \"%s\" på linje %d af %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ukendt mediestørrelse \"%s\" på linje %d af %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: Ukendt mærke \"%s\" set på linje %d af %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Ukendt udpunkteringstegn i rigtige tal \"%s\" på linje %d af %s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc: Uafsluttet streng startende fra %c på linje %d af %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: Skriver %s...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: Skriver PPD-arkiver til bibliotek \"%s\"...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: Ugyldig LanguageVersion \"%s\" in %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: Ignorerer PPD-arkiv %s...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: Kan ikke sikkerhedskopiere %s til %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "printeren %s slået fra siden %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "printeren %s er ledig. Slået til siden %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "printeren %s udskriver nu %s-%d. Slået til siden %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "printeren %s/%s slået fra siden %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "printeren %s/%s er ledig. Slået til siden %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "printeren %s/%s udskriver nu %s-%d. Slået til siden %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "anmodnings-id er %s-%d (%d arkiv(er))\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "planlægger er ikke aktiv\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "planlægger er aktiv\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\tvis status for daemon og kø\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "standarddestination til system: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "standarddestination til system: %s/%s\n"
diff --git a/locale/cups_de.po b/locale/cups_de.po
deleted file mode 100644
index 43b44c6c..00000000
--- a/locale/cups_de.po
+++ /dev/null
@@ -1,8739 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f Millimeter"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f bis %.0f x %.0f Millimeter"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f Zoll"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f bis %.2f x %.2f Zoll"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s kann nicht geändert werden."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 Zoll/Sek."
-
-msgid "1.25x0.25\""
-msgstr "1,25x0,25 Zoll"
-
-msgid "1.25x2.25\""
-msgstr "1,25x2,25 Zoll"
-
-msgid "1.5 inch/sec."
-msgstr "1,5 Zoll/Sek."
-
-msgid "1.50x0.25\""
-msgstr "1,50x0,25 Zoll"
-
-msgid "1.50x0.50\""
-msgstr "1,50x0,50 Zoll"
-
-msgid "1.50x1.00\""
-msgstr "1,50x1,00 Zoll"
-
-msgid "1.50x2.00\""
-msgstr "1,50x2,00 Zoll"
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 Zoll/Sek."
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/Sek."
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 Zoll/Sek."
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 Zoll/Sek."
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/Sek."
-
-msgid "120x60dpi"
-msgstr "120x60 dpi"
-
-msgid "120x72dpi"
-msgstr "120x72 dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136 dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/Sek."
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/Sek."
-
-msgid "150dpi"
-msgstr "150 dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180 dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 Zoll/Sek."
-
-msgid "2-Sided Printing"
-msgstr "Doppelseitig drucken"
-
-msgid "2.00x0.37\""
-msgstr "2,00x0,37 Zoll"
-
-msgid "2.00x0.50\""
-msgstr "2,00x0,50 Zoll"
-
-msgid "2.00x1.00\""
-msgstr "2,00x1,00 Zoll"
-
-msgid "2.00x1.25\""
-msgstr "2,00x1,25 Zoll"
-
-msgid "2.00x2.00\""
-msgstr "2,00x2,00 Zoll"
-
-msgid "2.00x3.00\""
-msgstr "2,00x3,00 Zoll"
-
-msgid "2.00x4.00\""
-msgstr "2,00x4,00 Zoll"
-
-msgid "2.00x5.50\""
-msgstr "2,00x5,50 Zoll"
-
-msgid "2.25x0.50\""
-msgstr "2,25x0,50 Zoll"
-
-msgid "2.25x1.25\""
-msgstr "2,25x1,25 Zoll"
-
-msgid "2.25x4.00\""
-msgstr "2,25x4,00 Zoll"
-
-msgid "2.25x5.50\""
-msgstr "2,25x5,50 Zoll"
-
-msgid "2.38x5.50\""
-msgstr "2,38x5,50 Zoll"
-
-msgid "2.5 inches/sec."
-msgstr "2,5 Zoll/Sek."
-
-msgid "2.50x1.00\""
-msgstr "2,50x1,00 Zoll"
-
-msgid "2.50x2.00\""
-msgstr "2,50x2,00 Zoll"
-
-msgid "2.75x1.25\""
-msgstr "2,75x1,25 Zoll"
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1 Zoll"
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/Sek."
-
-msgid "200 mm/sec."
-msgstr "200 mm/Sek."
-
-msgid "203dpi"
-msgstr "203 dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24-Pin Serie"
-
-msgid "240x72dpi"
-msgstr "240x72 dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/Sek."
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 Zoll/Sek."
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00x1,00 Zoll"
-
-msgid "3.00x1.25\""
-msgstr "3,00x1,25 Zoll"
-
-msgid "3.00x2.00\""
-msgstr "3,00x2,00 Zoll"
-
-msgid "3.00x3.00\""
-msgstr "3,00x3,00 Zoll"
-
-msgid "3.00x5.00\""
-msgstr "3,00x5,00 Zoll"
-
-msgid "3.25x2.00\""
-msgstr "3,25x2,00 Zoll"
-
-msgid "3.25x5.00\""
-msgstr "3,25x5,00 Zoll"
-
-msgid "3.25x5.50\""
-msgstr "3,25x5,50 Zoll"
-
-msgid "3.25x5.83\""
-msgstr "3,25x5,83 Zoll"
-
-msgid "3.25x7.83\""
-msgstr "3,25x7,83 Zoll"
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "3,5-Zoll-Diskette"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3,5-Zoll-Diskette – 2 1/8 x 2 3/4 Zoll"
-
-msgid "3.50x1.00\""
-msgstr "3,50x1,00 Zoll"
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/Sek."
-
-msgid "300 mm/sec."
-msgstr "300 mm/Sek."
-
-msgid "300dpi"
-msgstr "300 dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360 dpi"
-
-msgid "360x180dpi"
-msgstr "360x180 dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 Zoll/Sek."
-
-msgid "4.00x1.00\""
-msgstr "4,00x1,00 Zoll"
-
-msgid "4.00x13.00\""
-msgstr "4,00x13,00 Zoll"
-
-msgid "4.00x2.00\""
-msgstr "4,00x2,00 Zoll"
-
-msgid "4.00x2.50\""
-msgstr "4,00x2,50 Zoll"
-
-msgid "4.00x3.00\""
-msgstr "4,00x3,00 Zoll"
-
-msgid "4.00x4.00\""
-msgstr "4,00x4,00 Zoll"
-
-msgid "4.00x5.00\""
-msgstr "4,00x5,00 Zoll"
-
-msgid "4.00x6.00\""
-msgstr "4,00x6,00 Zoll"
-
-msgid "4.00x6.50\""
-msgstr "4,00x6,50 Zoll"
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/Sek."
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 Zoll/Sek."
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 Zoll/Sek."
-
-msgid "6.00x1.00\""
-msgstr "6,00x1,00 Zoll"
-
-msgid "6.00x2.00\""
-msgstr "6,00x2,00 Zoll"
-
-msgid "6.00x3.00\""
-msgstr "6,00x3,00 Zoll"
-
-msgid "6.00x4.00\""
-msgstr "6,00x4,00 Zoll"
-
-msgid "6.00x5.00\""
-msgstr "6,00x5,00 Zoll"
-
-msgid "6.00x6.00\""
-msgstr "6,00x6,00 Zoll"
-
-msgid "6.00x6.50\""
-msgstr "6,00x6,50 Zoll"
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/Sek."
-
-msgid "600dpi"
-msgstr "600 dpi"
-
-msgid "60dpi"
-msgstr "60 dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 Zoll/Sek."
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720 dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 Zoll/Sek."
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00x1,00 Zoll"
-
-msgid "8.00x2.00\""
-msgstr "8,00x2,00 Zoll"
-
-msgid "8.00x3.00\""
-msgstr "8,00x3,00 Zoll"
-
-msgid "8.00x4.00\""
-msgstr "8,00x4,00 Zoll"
-
-msgid "8.00x5.00\""
-msgstr "8,00x5,00 Zoll"
-
-msgid "8.00x6.00\""
-msgstr "8,00x6,00 Zoll"
-
-msgid "8.00x6.50\""
-msgstr "8,00x6,50 Zoll"
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/Sek."
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 Zoll/Sek."
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "9-Pin Serie"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "DIN A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "DIN A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "DIN A10"
-
-msgid "A2"
-msgstr "DIN A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "DIN A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "DIN A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "DIN A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "DIN A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "DIN A7"
-
-msgid "A8"
-msgstr "DIN A8"
-
-msgid "A9"
-msgstr "DIN A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Druckaufträge akzeptieren"
-
-msgid "Accepted"
-msgstr "Akzeptiert"
-
-msgid "Add Class"
-msgstr "Klasse hinzufügen"
-
-msgid "Add Printer"
-msgstr "Drucker hinzufügen"
-
-msgid "Add RSS Subscription"
-msgstr "RSS-Abo hinzufügen"
-
-msgid "Address"
-msgstr "Adresse"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Adresse – 1 1/8 x 3 1/2 Zoll"
-
-msgid "Administration"
-msgstr "Verwaltung"
-
-msgid "Always"
-msgstr "Immer"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Applicator"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "DIN B0"
-
-msgid "B1"
-msgstr "DIN B1"
-
-msgid "B10"
-msgstr "DIN B10"
-
-msgid "B2"
-msgstr "DIN B2"
-
-msgid "B3"
-msgstr "DIN B3"
-
-msgid "B4"
-msgstr "DIN B4"
-
-msgid "B5"
-msgstr "DIN B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "DIN B6"
-
-msgid "B7"
-msgstr "DIN B7"
-
-msgid "B8"
-msgstr "DIN B8"
-
-msgid "B9"
-msgstr "DIN B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Ungültiger NULL-Dests-Pointer"
-
-msgid "Bad OpenGroup"
-msgstr "Ungültige OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "Ungültiges OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "Ungültige OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Ungültige Anfrage"
-
-msgid "Bad SNMP version number"
-msgstr "Ungültige SNMP-Versionsnummer"
-
-msgid "Bad UIConstraints"
-msgstr "Ungültige UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Ungültiger Kopienwert „%d“."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Ungültiger angepasster Parameter"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Ungültiger Number-Up-Wert „%d“."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Ungültige Seitenbereichswerte %d–%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Banner"
-
-msgid "Billing Information: "
-msgstr "Rechnungsinformationen: "
-
-msgid "Bond Paper"
-msgstr "Papier bündeln"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "CPCL Etikettendrucker"
-
-msgid "Cancel RSS Subscription"
-msgstr "RSS-Abo widerrufen"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Einstellungen ändern"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Klassen"
-
-msgid "Clean Print Heads"
-msgstr "Saubere Druckerköpfe"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Farbe"
-
-msgid "Color Mode"
-msgstr "Farbmodus"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Community-Name hat unbestimmte Länge"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Weiter"
-
-msgid "Continuous"
-msgstr "Kontinuierlich"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Erstellt"
-
-msgid "Created On: "
-msgstr "Erstellt am: "
-
-msgid "Custom"
-msgstr "Eigene"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Abschneiden"
-
-msgid "Cutter"
-msgstr "Abschneider"
-
-msgid "Dark"
-msgstr "Dunkel"
-
-msgid "Darkness"
-msgstr "Dunkelheit"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Klasse löschen"
-
-msgid "Delete Printer"
-msgstr "Drucker löschen"
-
-msgid "Description: "
-msgstr "Beschreibung: "
-
-msgid "DeskJet Series"
-msgstr "DeskJet Serie"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "Ziel „%s“ akzeptiert keine Druckaufträge."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Direct Thermal Media"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Deaktiviert"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Treibername: "
-
-msgid "Driver Version: "
-msgstr "Treiberversion: "
-
-msgid "Duplexer"
-msgstr "Duplexer"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1 Etikettendrucker"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2 Etikettendrucker"
-
-msgid "Edit Configuration File"
-msgstr "Konfigurationsdatei bearbeiten"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Banner beenden"
-
-msgid "English"
-msgstr "German"
-
-msgid "Enter old password:"
-msgstr "Altes Kennwort eingeben:"
-
-msgid "Enter password again:"
-msgstr "Kennwort erneut eingeben:"
-
-msgid "Enter password:"
-msgstr "Kennwort eingeben:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Geben Sie Ihren Benutzernamen und das Kennwort oder den root-Benutzernamen "
-"und -Kennwort ein, um auf diese Seite zuzgreifen. Falls Sie die Kerberos-"
-"Authentifizierung verwenden, stellen Sie sicher, dass Sie ein gültiges "
-"Kerberos-Ticket haben."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Umschlagzuführung"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Fehlerbehandlung"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Alle 10 Etiketten"
-
-msgid "Every 2 Labels"
-msgstr "Alle 2 Etiketten"
-
-msgid "Every 3 Labels"
-msgstr "Alle 3 Etiketten"
-
-msgid "Every 4 Labels"
-msgstr "Alle 4 Etiketten"
-
-msgid "Every 5 Labels"
-msgstr "Alle 5 Etiketten"
-
-msgid "Every 6 Labels"
-msgstr "Alle 6 Etiketten"
-
-msgid "Every 7 Labels"
-msgstr "Alle 7 Etiketten"
-
-msgid "Every 8 Labels"
-msgstr "Alle 8 Etiketten"
-
-msgid "Every 9 Labels"
-msgstr "Alle 9 Etiketten"
-
-msgid "Every Label"
-msgstr "Bei jedem Etikett"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Erwartete Daten nicht erhalten"
-
-msgid "Export Printers to Samba"
-msgstr "Drucker zu Samba exportieren"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Dateiordner"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Dateiordner – 9/16 x 3 7/16 Zoll"
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Folio"
-
-msgid "Forbidden"
-msgstr "Verboten"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Allgemein"
-
-msgid "Generic"
-msgstr "Allgemein"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU hat unbestimmte Länge"
-
-msgid "Glossy Paper"
-msgstr "Glanzpapier"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Graustufen"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Hängeordner"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Hängeordner – 9/16 x 2 Zoll"
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Ungültiges Steuerungszeichen"
-
-msgid "Illegal main keyword string"
-msgstr "Ungültiger Main-Keyword-String"
-
-msgid "Illegal option keyword string"
-msgstr "Ungültiger Option-Keyword-String"
-
-msgid "Illegal translation string"
-msgstr "Ungültiger Übersetzungsstring"
-
-msgid "Illegal whitespace character"
-msgstr "Ungültiges Leerzeichen"
-
-msgid "Installable Options"
-msgstr "Installationsoptionen"
-
-msgid "Installed"
-msgstr "Installiert"
-
-msgid "IntelliBar Label Printer"
-msgstr "IntelliBar Etikettendrucker"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "Interner Fehler"
-
-msgid "Internet Postage 2-Part"
-msgstr "Internet Postage 2-teilig"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Internet Postage 2-teilig – 2 1/4 x 7 1/2 Zoll"
-
-msgid "Internet Postage 3-Part"
-msgstr "Internet Postage 3-teilig"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Internet Postage 3-teilig – 2 1/4 x 7 Zoll"
-
-msgid "Internet Printing Protocol"
-msgstr "Internet-Druckerprotokoll"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "Druckauftrag Nr. %d wurde bereits abgebrochen – Abbruch nicht möglich."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "Druckauftrag Nr. %d wurde bereits abgebrochen – Abbruch nicht möglich."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr ""
-"Druckauftrag Nr. %d wurde bereits abgeschlossen – Abbruch nicht möglich."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Druckauftrag abgeschlossen"
-
-msgid "Job Created"
-msgstr "Druckauftrag erzeugt"
-
-msgid "Job ID: "
-msgstr "Druckauftrags-ID: "
-
-msgid "Job Options Changed"
-msgstr "Druckauftragsoptionen wurden geändert"
-
-msgid "Job Stopped"
-msgstr "Druckauftrag gestoppt"
-
-msgid "Job UUID: "
-msgstr "Druckauftrags-UUID: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "Druckauftrag ist abgeschlossen und kann nicht geändert werden."
-
-msgid "Job operation failed:"
-msgstr "Druckvorgang fehlgeschlagen:"
-
-msgid "Job state cannot be changed."
-msgstr "Druckauftragsstatus kann nicht geändert werden."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Druckaufträge"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR-Host oder -Drucker"
-
-msgid "Label Printer"
-msgstr "Etikettendrucker"
-
-msgid "Label Top"
-msgstr "Etikett (oben)"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Adresse (groß)"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Adresse (groß) – 1 4/10 x 3 1/2 Zoll"
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet Serie PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Hell"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Zeile ist länger als maximal zulässig (255 Zeichen)"
-
-msgid "List Available Printers"
-msgstr "Verfügbare Drucker anzeigen"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Standort: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Lange Kante (Hochformat)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Hersteller und Modell: "
-
-msgid "Manual Feed"
-msgstr "Manuelle Papierzufuhr"
-
-msgid "Media Dimensions: "
-msgstr "Medienmaße: "
-
-msgid "Media Limits: "
-msgstr "Mediendruckgrenzen: "
-
-msgid "Media Name: "
-msgstr "Medienname: "
-
-msgid "Media Size"
-msgstr "Mediengröße"
-
-msgid "Media Source"
-msgstr "Medienquelle"
-
-msgid "Media Tracking"
-msgstr "Medienführung"
-
-msgid "Media Type"
-msgstr "Medienart"
-
-msgid "Medium"
-msgstr "Medium"
-
-msgid "Memory allocation error"
-msgstr "Fehler bei der Speicherzuteilung"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "PPD-Adobe-4.x Header fehlt"
-
-msgid "Missing asterisk in column 1"
-msgstr "Sternchen in Spalte 1 fehlt"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Wertestring fehlt"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Klasse verändern"
-
-msgid "Modify Printer"
-msgstr "Drucker verändern"
-
-msgid "Move All Jobs"
-msgstr "Alle Druckaufträge bewegen"
-
-msgid "Move Job"
-msgstr "Druckauftrag bewegen"
-
-msgid "Moved Permanently"
-msgstr "Dauerhaft bewegt"
-
-msgid "NULL PPD file pointer"
-msgstr "NULL PPD File Pointer"
-
-msgid "Name OID uses indefinite length"
-msgstr "Name-OID hat unbestimmte Länge"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Niemals"
-
-msgid "New Stylus Color Series"
-msgstr "New Stylus Color Serie"
-
-msgid "New Stylus Photo Series"
-msgstr "New Stylus Photo Serie"
-
-msgid "No"
-msgstr "Nein"
-
-msgid "No Content"
-msgstr "Kein Inhalt"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Keine VarBind SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Keine aktive Verbindung"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Kein Community-Name"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Keine Ziele hinzugefügt."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Kein Fehlerindex"
-
-msgid "No error-status"
-msgstr "Kein Fehlerstatus"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Kein Name-OID"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Keine Anfrage-ID"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Keine Subskriptionen gefunden."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Keine „variable-bindings SEQUENCE“"
-
-msgid "No version number"
-msgstr "Keine Versionsnummer"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Nicht fortlaufend (Mark-Sensing)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Nicht fortlaufend (Web-Sensing)"
-
-msgid "Normal"
-msgstr "Normal"
-
-msgid "Not Found"
-msgstr "Nicht gefunden"
-
-msgid "Not Implemented"
-msgstr "Nicht implementiert"
-
-msgid "Not Installed"
-msgstr "Nicht installiert"
-
-msgid "Not Modified"
-msgstr "Nicht verändert"
-
-msgid "Not Supported"
-msgstr "Nicht unterstützt"
-
-msgid "Not allowed to print."
-msgstr "Drucken nicht erlaubt."
-
-msgid "Note"
-msgstr "Hinweis"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Aus (Einseitig)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Online-Hilfe"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "%s öffnen fehlgeschlagen: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup ohne CloseGroup zuerst"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI ohne CloseUI/JCLCloseUI zuerst"
-
-msgid "Operation Policy"
-msgstr "Nutzungsrichtlinien"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Installierte Optionen"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Optionen: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Ausgabemodus"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "PCL Laserdrucker"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Paket enthält kein Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Paket beginnt nicht mit SEQUENCE"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Das Kennwort für „%s“ auf „%s“? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr ""
-"Das Kennwort für „%s“ wird benötigt für den Zugriff auf „%s“ über SAMBA: "
-
-msgid "Pause Class"
-msgstr "Klasse anhalten"
-
-msgid "Pause Printer"
-msgstr "Drucker anhalten"
-
-msgid "Peel-Off"
-msgstr "Aufkleber"
-
-msgid "Photo"
-msgstr "Foto"
-
-msgid "Photo Labels"
-msgstr "Foto-Etiketten"
-
-msgid "Plain Paper"
-msgstr "Standardpapier"
-
-msgid "Policies"
-msgstr "Richtlinien "
-
-msgid "Port Monitor"
-msgstr "Port-Monitor"
-
-msgid "PostScript Printer"
-msgstr "PostScript-Drucker"
-
-msgid "Postcard"
-msgstr "Postkarte"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Druckdichte"
-
-msgid "Print Job:"
-msgstr "Druckauftrag:"
-
-msgid "Print Mode"
-msgstr "Druckmodus"
-
-msgid "Print Rate"
-msgstr "Druckrate"
-
-msgid "Print Self-Test Page"
-msgstr "Selbsttestseite drucken"
-
-msgid "Print Speed"
-msgstr "Druckgeschwindigkeit"
-
-msgid "Print Test Page"
-msgstr "Testseite drucken"
-
-msgid "Print and Cut"
-msgstr "Drucken und abschneiden"
-
-msgid "Print and Tear"
-msgstr "Drucken und abziehen"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Gedruckt für: "
-
-msgid "Printed From: "
-msgstr "Gedruckt von: "
-
-msgid "Printed On: "
-msgstr "Gedruckt am: "
-
-msgid "Printer Added"
-msgstr "Drucker hinzugefügt"
-
-msgid "Printer Default"
-msgstr "Standardeinstellung für Drucker"
-
-msgid "Printer Deleted"
-msgstr "Drucker gelöscht"
-
-msgid "Printer Modified"
-msgstr "Drucker geändert"
-
-msgid "Printer Name: "
-msgstr "Druckername: "
-
-msgid "Printer Paused"
-msgstr "Drucker angehalten"
-
-msgid "Printer Settings"
-msgstr "Druckereinstellungen"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Drucker:"
-
-msgid "Printers"
-msgstr "Drucker"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Druckaufträge aufräumen"
-
-msgid "Quarto"
-msgstr "US Quarto"
-
-msgid "Quota limit reached."
-msgstr "Kontingentgrenze erreicht."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Druckaufträge ablehnen"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Druckvorgang nach dem Fehler fortsetzen"
-
-msgid "Request Entity Too Large"
-msgstr "Gesamte Anfrage zu groß"
-
-msgid "Resolution"
-msgstr "Auflösung"
-
-msgid "Resume Class"
-msgstr "Klasse fortsetzen"
-
-msgid "Resume Printer"
-msgstr "Drucken fortsetzen"
-
-msgid "Return Address"
-msgstr "Absender-Adresse"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Absender-Adresse – 3/4 x 2 Zoll"
-
-msgid "Rewind"
-msgstr "Zurückdrehen"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE hat unbestimmte Länge"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Siehe auch"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Serieller Anschluss Nr. %d"
-
-msgid "Server Restarted"
-msgstr "Server neu gestartet"
-
-msgid "Server Security Auditing"
-msgstr "Server Security Auditing"
-
-msgid "Server Started"
-msgstr "Server gestartet"
-
-msgid "Server Stopped"
-msgstr "Server gestoppt"
-
-msgid "Service Unavailable"
-msgstr "Dienst nicht verfügbar"
-
-msgid "Set Allowed Users"
-msgstr "Zugelassene Benutzer festlegen"
-
-msgid "Set As Server Default"
-msgstr "Als Standardeinstellungen für Server festlegen"
-
-msgid "Set Class Options"
-msgstr "Klassenoptionen festlegen"
-
-msgid "Set Printer Options"
-msgstr "Druckeroptionen festlegen"
-
-msgid "Set Publishing"
-msgstr "Veröffentlichung festlegen"
-
-msgid "Shipping Address"
-msgstr "Lieferadresse"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Lieferadresse – 2 5/16 x 4 Zoll"
-
-msgid "Short-Edge (Landscape)"
-msgstr "Kurze Kante (Querformat)"
-
-msgid "Special Paper"
-msgstr "Spezialpapier"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Standard"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Startbanner"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "US Statement"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color Serie"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo Serie"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Protokoll wechseln"
-
-msgid "Tabloid"
-msgstr "US Tabloid"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Abziehen"
-
-msgid "Tear-Off"
-msgstr "Abziehen"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Abziehposition"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "Die PPD-Datei „%s“ konnte nicht gefunden werden."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "Die PPD-Datei „%s“ konnte nicht geöffnet werden: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Der Klassenname darf maximal 127 druckbare Zeichen haben und darf keine "
-"Leerzeichen, Schrägstriche (/) oder Rautezeichen (#) enthalten."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"Das Attribut „notify-lease-duration“ kann nicht mit Druckauftrags-"
-"Subskriptionen verwendet werden."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Der Druckername darf maximal 127 druckbare Zeichen haben und darf keine "
-"Leerzeichen, Schrägstriche (/) oder Rautezeichen (#) enthalten."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "Die Drucker-URI „%s“ enthält ungültige Zeichen."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"Die Drucker-URI muss in der folgenden Form vorliegen: ipp://HOSTNAME/classes/"
-"CLASSNAME"
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"Die Drucker-URI muss in der folgenden Form vorliegen: ipp://HOSTNAME/"
-"printers/PRINTERNAME"
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"Der Subkriptionsname darf keine Leerzeichen, Schrägstriche (/), Fragezeichen "
-"(?) oder Rautezeichen (#) enthalten."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Es liegen zu viele Subskriptionen vor."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Thermal Transfer Media"
-
-msgid "Title: "
-msgstr "Titel: "
-
-msgid "Too many active jobs."
-msgstr "Zu viele aktive Druckaufträge."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Transparenz"
-
-msgid "Tray"
-msgstr "Fach"
-
-msgid "Tray 1"
-msgstr "Fach 1"
-
-msgid "Tray 2"
-msgstr "Fach 2"
-
-msgid "Tray 3"
-msgstr "Fach 3"
-
-msgid "Tray 4"
-msgstr "Fach 4"
-
-msgid "URI Too Long"
-msgstr "URI zu lang"
-
-msgid "US Ledger"
-msgstr "US Ledger"
-
-msgid "US Legal"
-msgstr "US Lang"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "US Brief"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "USB Serieller Anschluss Nr. %d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Kein Zugriff auf Datei „cupsd.conf“:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "RSS-Abo konnte nicht hinzugefügt werden:"
-
-msgid "Unable to add class:"
-msgstr "Klasse konnte nicht hinzugefügt werden:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Drucker konnte nicht hinzugefügt werden:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "RSS-Abo konnte nicht widerrufen werden:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Attribut „printer-is-shared“ konnte nicht geändert werden:"
-
-msgid "Unable to change printer:"
-msgstr "Drucker konnte nicht geändert werden:"
-
-msgid "Unable to change server settings:"
-msgstr "Servereinstellungen konnten nicht geändert werden:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Verbindungsaufbau zum Host fehlgeschlagen."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Temporäre Datei konnte nicht erstellt werden:"
-
-msgid "Unable to delete class:"
-msgstr "Klasse konnte nicht gelöscht werden:"
-
-msgid "Unable to delete printer:"
-msgstr "Drucker konnte nicht gelöscht werden:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Wartungsbefehl konnte nicht ausgeführt werden:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Klassenliste konnte nicht abgerufen werden:"
-
-msgid "Unable to get class status:"
-msgstr "Klassenstatus konnte nicht abgerufen werden:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Liste der Druckertreiber konnte nicht abgerufen werden:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Druckerattribute konnten nicht abgerufen werden:"
-
-msgid "Unable to get printer list:"
-msgstr "Druckerliste konnte nicht abgerufen werden:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Druckerstatus konnte nicht abgerufen werden:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Klasse konnte nicht verändert werden:"
-
-msgid "Unable to modify printer:"
-msgstr "Drucker konnte nicht verändert werden:"
-
-msgid "Unable to move job"
-msgstr "Druckauftrag konnte nicht bewegt werden"
-
-msgid "Unable to move jobs"
-msgstr "Druckaufträge konnten nicht bewegt werden"
-
-msgid "Unable to open PPD file"
-msgstr "Die PPD-Datei konnte nicht geöffnet werden"
-
-msgid "Unable to open PPD file:"
-msgstr "Die PPD-Datei konnte nicht geöffnet werden:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Die Datei „cupsd.conf“ konnte nicht geöffnet werden:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Testseite konnte nicht gedruckt werden:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Optionen konnten nicht festgelegt werden:"
-
-msgid "Unable to set server default:"
-msgstr "Standardeinstellungen für Server konnten nicht festgelegt werden:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Die Datei „cupsd.conf“ konnte nicht hochgeladen werden:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Nicht berechtigt"
-
-msgid "Units"
-msgstr "Einheiten"
-
-msgid "Unknown"
-msgstr "Unbekannt"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Unbekannte printer-error-policy „%s“."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Unbekannte printer-op-policy „%s“."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Wertetyp nicht unterstützt"
-
-msgid "Upgrade Required"
-msgstr "Aktualisierung erforderlich"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Wert hat unbestimmte Länge"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind hat unbestimmte Länge"
-
-msgid "Version uses indefinite length"
-msgstr "Version hat unbestimmte Länge"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Ja"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Auf diese Seite greifen Sie zu über die URL <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "ZPL Etikettendrucker"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "abgebrochen"
-
-msgid "canceled"
-msgstr "abgebrochen"
-
-msgid "completed"
-msgstr "abgeschlossen"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "„cups-deviced“ konnte nicht ausgeführt werden."
-
-msgid "cups-driverd failed to execute."
-msgstr "„cups-driverd“ konnte nicht ausgeführt werden."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "Fehlerindex hat unbestimmte Länge"
-
-msgid "error-status uses indefinite length"
-msgstr "Fehlerstatus hat unbestimmte Länge"
-
-msgid "held"
-msgstr "gehalten"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "inaktiv"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "ausstehend"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "Bearbeiten"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "Anfrage-ID hat unbestimmte Länge"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "Status von %s fehlgeschlagen: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "Gestoppt"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "Unbekannt"
-
-msgid "untitled"
-msgstr "Ohne Titel"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings hat unbestimmte Länge"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(alles)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(ohne)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d Einträge\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tNach Fehler: fortsetzen\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tWarnhinweise:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tBanner erforderlich\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tZeichensätze:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tVerbindung: direkt\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tVerbindung: enfernt\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tStandardseitengröße:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tStandardzeilenhöhe:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tStandard-Anschlusseinstellungen:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tBeschreibung: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tFormular aktiviert:\n"
-#~ "\tInhaltstypen: beliebig\n"
-#~ "\tDruckertypen: unbekannt\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tZugelassene Formulare:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tSchnittstelle: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tSchnittstelle: %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tSchnittstelle: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tStandort: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tBei Fehler: kein Warnhinweis\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tZugelassene Benutzer:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tGesperrte Benutzer:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tDaemon vorhanden\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tkeine Einträge\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tDrucker ist auf Geschwindigkeit des Geräts „%s“ -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tDrucken ist deaktiviert\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tDrucken ist aktiviert\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tWarteliste für %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tWarteliste ist deaktiviert\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tWarteliste ist aktiviert\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tGrund unbekannt\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " AUSFÜHRLICHE KONFORMITÄTSTESTERGEBNISSE\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: Seite 15, Abschnitt 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: Seite 15, Abschnitt 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: Seite 19, Abschnitt 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: Seite 20, Abschnitt 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: Seite 27, Abschnitt 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: Seite 42, Abschnitt 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: Seite 16–17, Abschnitt 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: Seite 42–45, Abschnitt 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: Seite 45–46, Abschnitt 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: Seite 48–49, Abschnitt 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: Seite 52–54, Abschnitt 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f Byte\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN Konflikt zwischen „%s %s“ und „%s %s“\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %s hat keine passenden Optionen!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s hat eine gemeinsames übliches Präfix mit %s\n"
-#~ " REF: Seite 15, Abschnitt 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN Konflikt bei Standardauswahl!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN Duplex-Option-Keyword „%s“ funktioniert u. U. nicht wie "
-#~ "erwartet – es sollte „Duplex“ heißen!\n"
-#~ " REF: Seite 122, Abschnitt 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " WARN Datei enthält Mischung aus den Zeilenenden „CR“, „LF“ und "
-#~ "„CR LF“!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN LanguageEncoding benötigt von PPD 4.3 Spezifikation.\n"
-#~ " REF: Seite 56–57, Abschnitt 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN Zeile %d enthält nur Leerzeichen!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN Manufacturer benötigt von PPD 4.3 Spezifikation.\n"
-#~ " REF: Seite 58–59, Abschnitt 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN APDialogExtension-Datei „%s“ fehlt\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN APPrinterIconPath-Datei „%s“ fehlt\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN Windows-fremde PPD-Datei sollte nur Zeilenenden mit „LF“ "
-#~ "verwenden, nicht mit „CR LF“!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN Veraltete PPD-Version %.1f!\n"
-#~ " REF: Seite 42, Abschnitt 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName ist länger als 8.3 und verstößt gegen die PPD-"
-#~ "Spezifikation.\n"
-#~ " REF: Seite 61–62, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protokolle enthalten PJL, aber JCL-Attribute sind nicht "
-#~ "festgelegt.\n"
-#~ " REF: Seite 78–79, Abschnitt 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protokolle enthalten PJL sowie BCP; es wurde aber TBCP "
-#~ "erwartet.\n"
-#~ " REF: Seite 78–79, section 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN ShortNickName benötigt von PPD 4.3 Spezifikation.\n"
-#~ " REF: Seite 64–65, Abschnitt 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s existiert nicht!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Ungültig: %s Auswahl %s!\n"
-#~ " REF: Seite 122, Abschnitt 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Ungültiger UTF-8 „%s“ Übersetzungsstring für Option „%s“!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Ungültiger UTF-8 „%s“ Übersetzungsstring für Option „%s“, "
-#~ "Auswahl „%s“!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Ungültiger cupsFilter-Wert „%s“!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s Ungültiges cupsICCProfile „%s“!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Ungültiger cupsPreFilter-Wert „%s“!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Ungültiges cupsUIConstraints „%s“: „%s“!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Ungültige Sprache „%s“!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s Leeres cupsUIConstraints „%s“!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Fehlender „%s“-Übersetzungsstring für Option „%s“!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Fehlender „%s“-Übersetzungsstring für Option „%s“, Auswahl „%"
-#~ "s“!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Fehlende Auswahl „*%s %s“ in UIConstraints „*%s %s *%s %s“!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s Fehlende Auswahl „*%s %s“ in cupsUIConstraints „%s“: „%s“!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s Fehlende cupsFilter-Datei „%s“\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s Fehlende cupsICCProfile-Datei „%s“!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s Fehlende cupsPreFilter-Datei „%s“\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s Fehlender cupsUIResolver „%s“!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s Fehlende Option „%s“ in UIConstraints „*%s %s *%s %s“!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Fehlende Option „%s“ in cupsUIConstraints „%s“: „%s“!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s Keine Basisübersetzung „%s“ in der Datei enthalten!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s BENÖTIGT: „%s“ definiert Auswahl nicht als „None“!\n"
-#~ " REF: Seite 122, Abschnitt 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s Hash-Wert von cupsICCProfile „%s“ in Konflikt mit „%s“!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver „%s“ erzeugt eine Schleife!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FEHLER** %s-Auswahlnamen „%s“ und „%s“ unterscheiden sich nur "
-#~ "durch Groß-/Kleinschreibung!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FEHLER** „%s“ muss 1284DeviceID sein!\n"
-#~ " REF: Seite 72, Abschnitt 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FEHLER** UNGÜLTIG: Default%s „%s“\n"
-#~ " REF: Seite 40, Abschnitt 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEHLER** UNGÜLTIG: DefaultImageableArea „%s“!\n"
-#~ " REF: Seite 102, Abschnitt 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEHLER** UNGÜLTIG: DefaultPaperDimension „%s“!\n"
-#~ " REF: Seite 103, Abschnitt 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FEHLER** UNGÜLTIG: JobPatchFile-Attribut in Datei\n"
-#~ " REF: Seite 24, Abschnitt 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FEHLER** UNGÜLTIG: Manufacturer (sollte „HP“ sein)\n"
-#~ " REF: Seite 211, Tabelle D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FEHLER** UNGÜLTIG: Manufacturer (sollte „Oki“ sein)\n"
-#~ " REF: Seite 211, Tabelle D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** UNGÜLTIG: ModelName – „%c“ nicht zulässig im String.\n"
-#~ " REF: Seite 59–60, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** UNGÜLTIG: PSVersion – nicht „(string) int“.\n"
-#~ " REF: Seite 62–64, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** UNGÜLTIG: Product – nicht „(string)“.\n"
-#~ " REF: Seite 62, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** UNGÜLTIG: ShortNickName – länger als 31 Zeichen.\n"
-#~ " REF: Seite 64–65, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FEHLER** Ungültig: „%s“ Auswahl „%s“!\n"
-#~ " REF: Seite 84, Abschnitt 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** Ungültige FileVersion „%s“\n"
-#~ " REF: Seite 56, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** Ungültige FormatVersion „%s“\n"
-#~ " REF: Seite 56, Abschnitt 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **FEHLER** Ungültiges LanguageEncoding „%s“ – muss „ISOLatin1“ "
-#~ "sein!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr ""
-#~ " **FEHLER** Ungültige LanguageVersion „%s“ – muss „Englisch“ sein!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr ""
-#~ " **FEHLER** Standardoptionscode kann nicht interpretiert werden: %"
-#~ "s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FEHLER** Standard-Übersetzungsstring für Option „%s“ Auswahl „%"
-#~ "s“ enthält 8-Bit-Zeichen!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FEHLER** Standard-Übersetzungsstring für Option „%s“ enthält 8-"
-#~ "Bit-Zeichen!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FEHLER** Gruppennamen „%s“ und „%s“ unterscheiden sich nur durch "
-#~ "Groß-/Kleinschreibung!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FEHLER** Mehrere Vorkommen des „%s“-Auswahlnamens „%s“!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FEHLER** Optionnamen „%s“ und „%s“ unterscheiden sich nur durch "
-#~ "Groß-/Kleinschreibung!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: Default%s\n"
-#~ " REF: Seite 40, Abschnitt 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: DefaultImageableArea\n"
-#~ " REF: Seite 102, Abschnitt 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: DefaultPaperDimension\n"
-#~ " REF: Seite 103, Abschnitt 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: FileVersion\n"
-#~ " REF: Seite 56, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: FormatVersion\n"
-#~ " REF: Seite 56, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: ImageableArea für PageSize „%s“\n"
-#~ " REF: Seite 41, Abschnitt 5.\n"
-#~ " REF: Seite 102, Abschnitt 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: LanguageEncoding\n"
-#~ " REF: Seite 56–57, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: LanguageVersion\n"
-#~ " REF: Seite 57–58, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: Manufacturer\n"
-#~ " REF: Seite 58–59, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: ModelName\n"
-#~ " REF: Seite 59–60, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: NickName\n"
-#~ " REF: Seite 60, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: PCFileName\n"
-#~ " REF: Seite 61–62, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: PSVersion\n"
-#~ " REF: Seite 62–64, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: PageRegion\n"
-#~ " REF: Seite 100, Abschnitt 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: PageSize\n"
-#~ " REF: Seite 41, Abschnitt 5.\n"
-#~ " REF: Seite 99, Abschnitt 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: PageSize\n"
-#~ " REF: Seite 99–100, Abschnitt 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: PaperDimension für PageSize „%s“\n"
-#~ " REF: Seite 41, Abschnitt 5.\n"
-#~ " REF: Seite 103, Abschnitt 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: Product\n"
-#~ " REF: Seite 62, Abschnitt 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEHLER** BENÖTIGT: ShortNickName\n"
-#~ " REF: Seite 64–65, Abschnitt 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d FEHLER GEFUNDEN\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " Ungültige %%%%BoundingBox: in Zeile %d!\n"
-#~ " REF: Seite 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " Ungültige %%%%Page: in Zeile %d!\n"
-#~ " REF: Seite 53, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " Ungültige %%%%Pages: in Zeile %d!\n"
-#~ " REF: Seite 43, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " Zeile %d ist länger als 255 Zeichen (%d)!\n"
-#~ " REF: Seite 25, Line Length\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " %!PS-Adobe-3.0 fehlt in der ersten Zeile!\n"
-#~ " REF: Seite 17, 3.1 Conforming Documents\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " %%EndComments-Kommentar fehlt!\n"
-#~ " REF: Seite 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%BoundingBox fehlt oder ist ungültig: Kommentar!\n"
-#~ " REF: Seite 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " %%Page fehlt oder ist ungültig: Kommentare!\n"
-#~ " REF: Seite 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " %%Pages fehlt oder ist ungültig: Kommentar!\n"
-#~ " REF: Seite 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " KEINE FEHLER GEFUNDEN\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " %d Zeilen mit über 255 Zeichen gefunden!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " Zu viele %%BeginDocument-Kommentare!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " Zu viele %%EndDocument-Kommentare!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Achtung: Datei enthält Binärdaten!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Achtung: kein %%EndComments-Kommentar in der Datei!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Achtung: veraltete DSC-Version %.1f in der Datei!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FEHLER\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FEHLER\n"
-#~ " **FEHLER** PPD-Datei konnte nicht geöffnet werden – %s.\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FEHLER\n"
-#~ " **FEHLER** PPD-Datei konnte nicht geöffnet werden – %s in Zeile %"
-#~ "d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " PASS\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "US #10 Umschlag"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "US #11 Umschlag"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "US #12 Umschlag"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "US #14 Umschlag"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "US #9 Umschlag"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f Byte\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f Byte\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s akzeptiert Anfragen seit %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s ist nicht implementiert in der CUPS-Version von lpc.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s ist nicht bereit\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s ist bereit\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s ist bereit und druckt\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s akzeptiert keine Anfragen seit %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s nicht unterstützt!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s akzeptiert Anfragen seit %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s akzeptiert keine Anfragen seit %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [Druckauftrag %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s fehlgeschlagen: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: Weiß nicht, was ich tun soll!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Fehler – %s Umgebungsvariablennamen nicht vorhanden für Ziel „%s“!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Fehler – ungültige Druckauftrags-ID!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: Fehler – kann nicht gleichzeitig Dateien drucken und Druckaufträge "
-#~ "ändern!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Fehler – kann nicht von „stdin“, wenn Dateien oder eine Druckauftrags-"
-#~ "ID übergeben werden!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Fehler – Zeichensatz erwartet nach '-S'-Option!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Fehler – Inhaltstyp erwartet nach '-T'-Option!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: Fehler – Kopien erwartet nach '-n'-Option!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: Fehler – Kopienanzahl erwartet nach '-#'-Option!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Fehler – Ziel erwartet nach '-P'-Option!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Fehler – Ziel erwartet nach '-b'-Option!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Fehler – Ziel erwartet nach '-d'-Option!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Fehler – Form erwartet nach '-f'-Option!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Fehler – Name halten erwartet nach '-H'-Option!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Fehler – Hostname erwartet nach '-H'-Option!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Fehler – Hostname erwartet nach '-h'-Option!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: Fehler – Modusliste erwartet nach '-y'-Option!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Fehler – Name erwartet nach '-%c'-Option!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: Fehler – Optionsstring erwartet nach '-o'-Option!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Fehler – Seitenliste erwartet nach '-P'-Option!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Fehler – Priorität erwartet nach '-%c'-Option!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Fehler – Text mit Grund erwartet nach '-r'-Option!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Fehler – Titel erwartet nach '-t'-Option!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: Fehler – Benutzername erwartet nach '-U'-Option!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: Fehler – Benutzername erwartet nach '-u'-Option!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Fehler – Wert erwartet nach '-%c'-Option!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Fehler – benötigt „completed“, „not-completed“ oder „all“ nach '-W'-"
-#~ "Option!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Fehler – kein Standardziel verfügbar.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Fehler – Priorität muss zwischen 1 und 100 sein.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Fehler – Scheduler reagiert nicht!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Fehler – zu viele Dateien – „%s“\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Fehler – kein Zugriff auf „%s“ – %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: Fehler – keine Warteliste für „stdin“ – %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Fehler – unbekanntes Ziel „%s“!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Fehler – unbekanntes Ziel „%s/%s“!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Fehler – unbekannte Option '%c'!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Fehler – unbekannte Option '%s'!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: Druckauftrags-ID erwartet nach '-i'-Option!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Filter „%s“ nicht verfügbar: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Ungültiger Zielname in Liste „%s“!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: Ungültiger Filterstring „%s“\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr "%s: Druckauftrags-ID ('-i jobid') benötigt vor '-H restart'!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Kein Filter für Konvertierung von %s/%s zu %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: Aktion fehlgeschlagen: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: Verschlüsselungsunterstützung nicht verfügbar!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Verbindung mit Server fehlgeschlagen\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: Verbindungsaufbau zum Server fehlgeschlagen!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: MIME-Typ von „%s“ konnte nicht bestimmt werden!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: „%s“ konnte nicht geöffnet werden – %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: „%s“ konnte nicht geöffnet werden – %s in Zeile %d.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: „%s“ konnte nicht geöffnet werden: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: PPD-Datei konnte nicht geöffnet werden – %s in Zeile %d\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr ""
-#~ "%s: MIME-Datenbank von „%s“ oder „%s“ konnte nicht gelesen werden!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: Unbekanntes Ziel „%s“!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: Unbekannter Ziel-MIME-Typ „%s/%s“!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: Unbekannte Option '%c'!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: Unbekannter Quell-MIME-Typ „%s/%s“!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Achtung – '%c'-Format-Modifier nicht unterstützt – Ausgabe ist u. U. "
-#~ "nicht korrekt!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Achtung – Zeichensatzoption ignoriert!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Achtung – Inhaltstypoption ignoriert!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Achtung – Formoption ignoriert!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Achtung – Modusoption ignoriert!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Fehler – %s Umgebungsvariablennamen nicht vorhanden für Ziel „%s“!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: Fehler – „option=value“ erwartet nach '-o'-Option!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: Fehler – kein Standardziel verfügbar.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11 Zoll"
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13 Zoll"
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14 Zoll"
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11 Zoll"
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11 Zoll"
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 DPI Graustufen"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720 dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9 Zoll"
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10 Zoll"
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11 Zoll"
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12 Zoll"
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Ungültiger Hilfebefehl ist unbekannt\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr ""
-#~ "Es wird ein Samba-Kennwort benötigt, um Druckertreiber exportieren zu "
-#~ "können!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr ""
-#~ "Es wird ein Samba-Benutzername benötigt, um Druckertreiber exportieren zu "
-#~ "können!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Es gibt bereits eine Klasse mit dem Namen „%s“!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Es gibt bereits einen Drucker mit dem Namen „%s“!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (Übergröße)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (Übergröße)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (klein)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (Übergröße)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr ""
-#~ "Versuch, den Druckerstatus für „%s“ auf den ungültigen Wert „%d“ zu "
-#~ "setzen!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Attributgruppen sind durcheinander (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "Ungültige Geräte-URI „%s“!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "Ungültige Geräte-URI „%s“!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Ungültiges Geräte-URI-Schema „%s“!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "Ungültiges Dokumentformat „%s“!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Ungültiger Dateinamen-Puffer!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Ungültiges Schriftattribut: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Ungültiger Wert für Druckauftragspriorität!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Ungültiger Wert „%s“ für Druckauftragslisten!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Ungültiger Wertetyp für Druckauftragslisten!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Ungültiger Wert für Druckauftragsstatus!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Ungültiges Druckauftrags-URI-Attribut „%s“!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Ungültige Notify-Pull-Methode „%s“!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "Ungültige Notify-Recipient-URI: URI „%s“!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Ungültige Option + Auswahl in Zeile %d!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Ungültiger Port-Monitor „%s“!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Ungültiger Wert „%d“ für Druckerstatus!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Ungültige Anfrage-Versionsnummer %d.%d!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "Ungültige Subskriptions-ID!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "DIN C0 Umschlag"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "DIN C1 Umschlag"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "DIN C2 Umschlag"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "DIN C3 Umschlag"
-
-#~ msgid "C4"
-#~ msgstr "DIN C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "DIN C4 Umschlag"
-
-#~ msgid "C5"
-#~ msgstr "DIN C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "DIN C5 Umschlag"
-
-#~ msgid "C6"
-#~ msgstr "DIN C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "DIN C6 Umschlag"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "DIN C65 Umschlag"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "DIN C7 Umschlag"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Zeichensatz „%s“ nicht unterstützt!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3 Umschlag"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4 Umschlag"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Befehle können abgekürzt werden. Befehle sind:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Typ „%s“ konnte nicht durchsucht werden!"
-
-#~ msgid "Cover open."
-#~ msgstr "Die Abdeckung ist offen."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL Umschlag"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Der Entwickler ist fast leer."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Der Entwickler ist leer!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Gerät: URI = %s\n"
-#~ " Klasse = %s\n"
-#~ " Info = %s\n"
-#~ " Hersteller und Modell = %s\n"
-#~ " Geräte-ID = %s\n"
-#~ " Standort = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Dokument „%d“ nicht gefunden in Druckauftrag „%d“."
-
-#~ msgid "Door open."
-#~ msgstr "Die Tür ist offen."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Doppelpostkarte"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: Speicher für Seiteninfo konnte nicht zugewiesen werden: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr ""
-#~ "EMERG: Speicher für Seiten-Array konnte nicht zugewiesen werden: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Ungültige %%BoundingBox: Kommentar gesehen!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: Ungültiges %%IncludeFeature: Kommentar!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: Ungültige %%Page: Kommentar in Datei!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: Ungültige %%PageBoundingBox: Kommentar in Datei!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Ungültige SCSI-Gerätedatei „%s“!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: Ungültige Zeichensatzdatei „%s“\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: Ungültiger Zeichensatztyp „%s“\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: Ungültiger Spaltenwert „%d“!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: Ungültiger cpi-Wert „%f“!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: Ungültige Schriftbeschreibungszeile: „%s“\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: Ungültiger lpi-Wert „%f“!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Ungültiges Seitenformat!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: Ungültige Textrichtung „%s“\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: Ungültige Textweite „%s“\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: Zieldrucker existiert nicht!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Doppelte %%BoundingBox: Kommentar gesehen!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: Doppelte %%Pages: Kommentar gesehen!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: Leere Druckdatei!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: Fehler „%d“ beim Senden der PAPSendData-Anfrage: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: String mit Anführungszeichen erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: Schwerwiegender USB-Fehler!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: Ungültiger HP-GL/2-Befehl aufgetreten; Datei konnte nicht gedruckt "
-#~ "werden!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: Fehlender %%EndProlog!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: Fehlendes %%EndSetup!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Geräte-URI fehlt in der Befehlszeile und keine DEVICE_URI "
-#~ "Umgebungsvariable vorhanden!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: Wert fehlt in Zeile %d der Bannerdatei!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: msgid-Zeile benötigt vor allen Übersetzungsstrings in Zeile %d von "
-#~ "%s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: Keine %%BoundingBox: Kommentar im Header!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: Keine %%Pages: Kommentar im Header!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Keine Geräte-URI gefunden in „argv[0]“ oder in DEVICE_URI "
-#~ "Umgebungsvariable!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: Keine Schriften in Zeichensatzdatei „%s“\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: Keine Seiten gefunden!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: Kein Papier mehr!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: DRUCKER: Umgebungsvariable nicht definiert!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: Druckdatei wurde nicht akzeptiert (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: Drucker reagiert nicht\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: Drucker reagiert nicht!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: Drucker sendete unerwartet EOF\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr ""
-#~ "ERROR: Entfernter Host hat die Steuerungsdatei nicht akzeptiert (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: Entfernter Host hat Datendatei nicht akzeptiert (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: Beim Senden der Daten an den Drucker ist ein Fehler wegen "
-#~ "Zeitüberschreitung aufgetreten.\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr ""
-#~ "ERROR: Datei „%d“ konnte nicht zu Druckauftrag hinzugefügt werden: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: Druckauftrag „%d“ konnte nicht abgebrochen werden: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: PDF-Datei konnte nicht kopiert werden"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: Socket konnte nicht erstellt werden"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: Temporäre komprimierte Druckdatei konnte nicht erstellt werden: %"
-#~ "s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: Temporäre Datei konnte nicht erstellt werden"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: Temporäre Datei konnte nicht erstellt werden – %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: Temporäre Datei konnte nicht erstellt werden: %s.\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: pictwpstops konnte nicht ausgeführt werden: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: gs-Programm konnte nicht ausgeführt werden"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: pdftops-Programm konnte nicht ausgeführt werden"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: Fork für pictwpstops konnte nicht ausgeführt werden: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: PAP-Anfrage konnte nicht empfangen werden"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: PAP-Antwort konnte nicht empfangen werden"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr ""
-#~ "ERROR: PPD-Datei für Drucker „%s“ konnte nicht abgefragt werden – %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: AppleTalk-Standardzone konnte nicht abgefragt werden"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr ""
-#~ "ERROR: Attribute für Druckauftrag „%d“ konnten nicht abgefragt werden (%"
-#~ "s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: Druckerstatus konnte nicht abgefragt werden (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: Drucker „%s“ konnte nicht gefunden werden!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: Abfrage der PAP-Antwort nicht möglich"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: Suche nach AppleTalk-Druckern nicht möglich"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: Erstellen der AppleTalk-Adresse nicht möglich"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: „%s“ konnte nicht geöffnet werden – %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: „%s“ konnte nicht geöffnet werden: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: Bannerdatei „%s“ konnte nicht geöffnet werden – %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: Gerätedatei „%s“ konnte nicht geöffnet werden – %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: Datei „%s“ konnte nicht geöffnet werden – %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: Datei „%s“ konnte nicht geöffnet werden: %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: Bilddatei konnte nicht zum Drucken geöffnet werden!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: Druckdatei „%s“ konnte nicht geöffnet werden: %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: Druckdatei „%s“ konnte nicht geöffnet werden – %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: Druckdatei „%s“ konnte nicht geöffnet werden: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: Temporäre komprimierte Druckdatei konnte nicht geöffnet werden: %"
-#~ "s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: Temporäre Datei konnte nicht geöffnet werden"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: %d Textspalten konnten nicht gedruckt werden!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: %dx%d Textseite konnte nicht gedruckt werden!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: Druckdaten konnten nicht gelesen werden"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: Druckdaten konnten nicht gelesen werden!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: Anschluss konnte nicht reserviert werden"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr ""
-#~ "ERROR: Nach dem Versatz „%ld“ in der Datei konnte nicht gesucht werden – %"
-#~ "s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr ""
-#~ "ERROR: Nach dem Versatz „%lld“ in der Datei konnte nicht gesucht werden – "
-#~ "%s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: LPD-Befehl konnte nicht gesendet werden"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: PAP-Rückkopplungsanfrage konnte nicht gesendet werden"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr ""
-#~ "ERROR: Erste PAP-Anfrage zum Senden von Daten konnte nicht gesendet werden"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: Druckdaten konnten nicht gesendet werden (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: Druckdaten konnten nicht gesendet werden!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: Druckdatei konnte nicht an den Drucker gesendet werden"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr ""
-#~ "ERROR: Nachfolgende Nullen konnten nicht an den Drucker gesendet werden"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: Warten auf pictwpstops nicht möglich: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: %d Byte konnten nicht auf „%s“ geschrieben werden: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: %d Byte konnten nicht auf den Drucker geschrieben werden!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: Steuerungsdatei konnte nicht geschrieben werden"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: Druckdaten konnten nicht geschrieben werden"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: Druckdaten konnten nicht geschrieben werden: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr ""
-#~ "ERROR: Rasterdaten konnten nicht auf den Treiber geschrieben werden!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: Temporäre Datei konnte nicht geschrieben werden"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr ""
-#~ "ERROR: Unkomprimierte Dokumentdaten konnten nicht geschrieben werden: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: Unerwarteter Text in Zeile %d von %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: Unbekannter Verschlüsselungsoptionswert „%s“!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: Unbekannte Dateianordnung „%s“\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: Unbekanntes Formatzeichen „%c“\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: Unbekanntes Message-Catalog-Format für „%s“!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: Unbekannte Option „%s“ mit Wert „%s“!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: Unbekannter Druckmodus „%s“\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: Unbekannter Versionsoptionswert „%s“!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr ""
-#~ "ERROR: Nicht unterstützter Helligkeitswert „%s“; „brightness=100“ "
-#~ "verwenden!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr ""
-#~ "ERROR: Nicht unterstützter Gammawert „%s“; „gamma=1000“ verwenden!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr ""
-#~ "ERROR: Nicht unterstützter Number-Up-Wert „%d“; „number-up=1“ verwenden!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: Nicht unterstützter Number-Up-Layout-Wert „%s“; „number-up-"
-#~ "layout=lrtb“ verwenden!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: Nicht unterstützter Seitenrandwert „%s“; „page-border=none“ "
-#~ "verwenden!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: doc_printf-Overflow (%d Byte) festgestellt; abbrechen!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: pdftops-Filter fehlgeschlagen bei Signal „%d“!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: pdftops-Filter ausgestiegen mit Status „%d“!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops-Filter ausgestiegen bei Signal „%d“!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops-Filter ausgestiegen mit Status „%d“!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: wiederherstellbar: Verbindung zum Drucker nicht möglich, erneuter "
-#~ "Versuch in 30 Sekunden …\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: Auswahl() fehlgeschlagen"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: „stat“ für Druckdatei nicht möglich"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Leere PPD-Datei!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Fehler: Hostname benötigt nach '-h'-Option!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "FEHLER\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "Dateigeräte-URIs wurden deaktiviert! Infos zum Aktivieren finden Sie im "
-#~ "FileDevice-Verzeichnis unter „%s/cupsd.conf“."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Die Temperatur des Fixierers ist zu hoch!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Die Temperatur des Fixierers ist zu niedrig!"
-
-#~ msgid "German FanFold"
-#~ msgstr "Deutsch Endlospapier"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "Deutsch Endlospapier (Brief)"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Drucker-URI-Attribute vorhanden, aber keine Druckauftrags-ID!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk wurde in den Systemeinstellungen deaktiviert.\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk wurde in den Systemeinstellungen deaktiviert.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: Druckauftrag abbrechen …\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: Mit Drucker verbunden …\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: Mit Drucker verbinden …\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: Steuerungsdatei erfolgreich übertragen\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: Datendatei erfolgreich übertragen\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: Seite %d formatieren …\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: Bilddatei laden …\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: Drucker suchen …\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: Verbindung herstellen\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr "INFO: Druckdatei gesendet, warten auf Abschließen des Druckers …\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: Drucker ist ausgelastet, erneuter Versuch in 10 Sekunden …\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Drucker ist ausgelastet, erneuter Versuch in 30 Sekunden …\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Drucker ist ausgelastet, erneuter Versuch in 5 Sekunden …\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr ""
-#~ "INFO: Drucker unterstützt IPP/%d.%d nicht, erneuter Versuch mit IPP/1.0 "
-#~ "…\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Drucker ausgelastet, erneuter Versuch in 5 Sekunden …\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: Drucker ist derzeit offline.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: Drucker ist derzeit offline.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: Drucker ist jetzt online.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: Drucker ist offline.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Drucker nicht verbunden, erneuter Versuch in 30 Sekunden …\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: Seite %d drucken, %d %% abgeschlossen …\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: Seite %d drucken …\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: Bereit zum Drucken\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: Steuerungsdatei senden (%lu Byte)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: Steuerungsdatei senden (%u Byte)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: Daten senden\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: Datendatei senden (%ld Byte)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: Datendatei senden (%lld Byte)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: Druckdaten senden …\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: Druckdatei gesendet, %ld Byte …\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: Druckdatei gesendet, %lld Byte …\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: LPR-Druckauftrag aufzeichnen, %.0f %% abgeschlossen …\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: Verbindung zum Drucker nicht möglich; an den nächsten Drucker der "
-#~ "Klasse senden …\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: Standard-AppleTalk-Zone „%s“ verwenden\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: Warten, bis der Druckauftrag agbeschlossen ist …\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: Warten, bis der Drucker verfügbar ist …\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4 Umschlag"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (Übergröße)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5 Umschlag"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6 Umschlag"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Tinte/Toner fast leer."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Tinte/Toner leer!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Tinten/Toner-Abfallbehälter fast voll."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Tinten/Toner-Abfallbehälter voll!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Die Verriegelung ist offen."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Einladung Umschlag"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Italienisch Umschlag"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr ""
-#~ "Druckauftrag Nr. %d kann nicht neu gestartet werden – keine Dateien "
-#~ "vorhanden!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "Druckauftrag Nr. %d existiert nicht!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr ""
-#~ "Druckauftrag Nr. %d ist abgeschlossen und kann nicht geändert werden!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "Druckauftrag Nr. %d ist nicht abgeschlossen!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "Druckauftrag Nr. %d benötigt keine Authentifizierung!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "Druckauftrag Nr. %d wird nicht gehalten!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "Druckauftrag Nr. %s existiert nicht!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Druckauftrag %d wurde nicht gefunden!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Druckauftrags-Subskription kann nicht erneuert werden."
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2 Umschlag"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3 Umschlag"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Sprache „%s“ nicht unterstützt!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Papierstau im Medienfach!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Das Medienfach ist fast leer."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Das Medienfach ist leer!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Das Medienfach fehlt!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Das Medienfach muss aufgefüllt werden."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "Attribut „document-number“ fehlt!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Doppeltes Anführungszeichen in Zeile %d fehlt!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Formvariable fehlt!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "Attribut „notify-subscription-ids“ fehlt!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Attribut „requesting-user-name“ fehlt!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Benötigte Attribute fehlen!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Wert in Zeile %d fehlt!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Modell: Name = %s\n"
-#~ " Standardsprache = %s\n"
-#~ " Hersteller und Modell = %s\n"
-#~ " Geräte-ID = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "US Monarch Umschlag"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: Druckdatei akzeptiert – Druckauftrags-ID %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: Druckdatei akzeptiert – Druckauftrags-ID unbekannt.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Kein PPD-Name!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Es sind keine Windows-Druckertreiber installiert!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Keine aktiven Druckaufträge auf %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Keine Attribute abgerufen!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Keine Authentifizierungs-Informationen übergeben!"
-
-#~ msgid "No default printer"
-#~ msgstr "Kein Standarddrucker"
-
-#~ msgid "No file!?!"
-#~ msgstr "Keine Datei!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Kein Änderungsdatum!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Kein Druckername!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Keine Drucker-URI gefunden für Klasse!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Keine Drucker-URI gefunden!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Keine Drucker-URI abgerufen!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Keine Subskriptionsattribute abgerufen!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "Die Bildtrommel (OPC) muss bald ausgetauscht werden."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "Die Bildtrommel (OPC) muss ausgetauscht werden!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Der Toner ist leer!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Das Ausgabefach ist fast voll."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Das Ausgabefach ist voll!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "Ausgabe für Drucker „%s“ wird an „%s“ gesendet\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Ausgabe für Drucker „%s“ wird an den entfernten Drucker „%s“ auf „%s“ "
-#~ "gesendet\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "Ausgabe für Drucker „%s/%s“ wird an „%s“ gesendet\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Ausgabe für Drucker „%s/%s“ wird an den entfernten Drucker „%s“ auf „%s“ "
-#~ "gesendet\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Das Ausgabefach fehlt!"
-
-#~ msgid "PASS\n"
-#~ msgstr "PASS\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1 Umschlag"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10 Umschlag"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2 Umschlag"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3 Umschlag"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (Übergröße)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4 Umschlag"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5 Umschlag"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6 Umschlag"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7 Umschlag"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8 Umschlag"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9 Umschlag"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Persönlicher Umschlag"
-
-#~ msgid "Printer offline."
-#~ msgstr "Der Drucker ist offline."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Rang Eigentümer Druckauftrag Datei(en) "
-#~ "Gesamtgröße\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Rang Eigentümer Druckauftrag Dateien "
-#~ "Gesamtgröße\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Befehl ausführen: %s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "SCSI-Drucker"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "US Tabloid (Übergröße)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "Der Wert für „notify-user-data“ ist zu groß (%d > 63 Oktetts)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "Der Drucker oder die Klasse sind nicht freigegeben!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "Der Drucker oder die Klasse wurden nicht gefunden!"
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "Das Drucker-URI-Attribut wird benötigt!"
-
-#~ msgid "Toner low."
-#~ msgstr "Wenig Toner."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "Zu viele job-sheets-Werte (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "Zu viele printer-state-reasons-Werte (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "US Executive"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Endlospapier"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US Lang (Übergröße)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US Brief (Übergröße)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US Brief (klein)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Druckauftrag für das Ziel „%s“ konnte nicht hinzugefügt werden!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Der Speicher für die Dateitypen konnte nicht zugeordnet werden."
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "64-Bit CUPS-Druckertreiberdateien konnten nicht kopiert werden (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr ""
-#~ "64-Bit Windows-Druckertreiberdateien konnten nicht kopiert werden (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "CUPS-Druckertreiberdateien konnten nicht kopiert werden (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "PPD-Datei konnte nicht kopiert werden – %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "PPD-Datei konnte nicht kopiert werden!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Windows 2000 Druckertreiberdateien konnten nicht kopiert werden (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "Windows 9x Druckertreiberdateien konnten nicht kopiert werden (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Schnittstellenskript konnte nicht kopiert werden – %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Drucker-URI konnte nicht erstellt werden!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr ""
-#~ "„cupsd.conf“-Dateien größer als 1 MB können nicht bearbeitet werden!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Ziel für den Druckauftrag konnte nicht gefunden werden!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Drucker konnte nicht gefunden werden!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Windows 2000 Druckertreiberdateien konnten nicht installiert werden (%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Windows 9x Druckertreiberdateien konnten nicht installiert werden (%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr ""
-#~ "Das Dokument „%d“ in Druckauftrag „%d“ konnte nicht geöffnet werden!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "„%s“ konnte nicht ausgeführt werden: %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Befehl konnte nicht an den Druckertreiber gesendet werden!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Windows-Druckertreiber konnte nicht festgelegt werden (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Alte USB-Klasse-Treiber konnten nicht verwendet werden!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Unbekannter Druckerfehler (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Zeichensatz „%s“ nicht unterstützt!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Komprimierung „%s“ nicht unterstützt!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Komprimierungsattribut „%s“ nicht unterstützt!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Format „%s“ nicht unterstützt!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Format „%s“ nicht unterstützt!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Format „%s/%s“ nicht unterstützt!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Usage: %s job user title copies options [filename]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Usage: %s job-id user title copies options [file]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Usage: %s job-id user title copies options file\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Usage: lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Usage: lppasswd [-g groupname]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Usage: snmp [host-or-ip-address]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: Nur die ersten %d gefundenen Drucker werden hinzugefügt"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: Boolscher Wert erwartet für waiteof-Option „%s“\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: Lesen der Side-Channel-Anfrage fehlgeschlagen!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: Option „%s“ kann nicht mithilfe von „IncludeFeature“ "
-#~ "eingeschlossen werden!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: Drucker reagiert nicht\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: Drucker sendete unerwartet EOF\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Entfernter Host hat nicht mit dem Befehlstatusbyte geantwortet "
-#~ "nach %d Sekunden!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Entfernter Host hat nicht mit dem Steuerungsstatusbyte "
-#~ "geantwortet nach %d Sekunden!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Entfernter Host hat nicht mit dem Datenstatusbyte geantwortet "
-#~ "nach %d Sekunden!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr ""
-#~ "WARNING: Zeitüberschreitung bei SCSI-Befehl (%d); erneut versuchen …\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Dieses Dokument entspricht nicht den Dokumentstruktur-"
-#~ "Konventionen von Adobe und wird u. U. nicht korrekt gedruckt!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: „%s:%s“ konnte nicht geöffnet werden: %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: PAP-Statusanfrage konnte nicht gesendet werden"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: Unerwartetes PAP-Paket des Typs „%d“\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: Unbekanntes PAP-Paket des Typs „%d“\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: Unbekannte Auswahl „%s“ für Option „%s“!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: Unbekannte Option „%s“!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: Baud-Rate „%s“ wird nicht unterstützt!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: Zahlwert erwartet für Statusoption „%s“\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: wiederherstellbar: Netzwerkhost „%s“ ist ausgelastet; erneuter "
-#~ "Versuch in %d Sekunden …\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr "Achtung: Es sind keine Windows 2000 Druckertreiber installiert!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4 Umschlag"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "konvertieren: Mit der -f Option eine Datei zum Konvertieren festlegen.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: keine PPD-Datei für Drucker „%s“ – %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: Verbindungsaufbau zum Server fehlgeschlagen: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: unbekannte Option „%s“!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: unbekannte Option „-%c“!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: „config filename“ erwartet nach '-c'-Option!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: Aktueller Ordner konnte nicht gefunden werden!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: unbekanntes Argument „%s“ – abbrechen!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: unbekannte Option „%c“ – abbrechen!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: „launchd(8) support“ nicht übersetzt, in „normal mode“ ausführen.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: ungültige Dokumentnummer %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: ungültige Druckauftrags-ID %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: Nur ein Dateiname kann angegeben werden!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: Temporäre Datei konnte nicht erstellt werden: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: Druckauftragsdatei konnte nicht geladen werden – %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr ""
-#~ "cupstestppd: '-q'-Option ist nicht kompatibel mit der '-v'-Option.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr ""
-#~ "cupstestppd: '-v'-Option ist nicht kompatibel mit der '-q'-Option.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "Gerät für %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "Gerät für %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\tget help on commands\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "job-printer-URI-Attribut fehlt!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Klassenname kann nur druckbare Zeichen enthalten!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: PPD erwartet nach '-P'-Option!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: „allow/deny:userlist“ erwartet nach '-u'-Option!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: Klasse erwartet nach '-r'-Option!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: Klassenname erwartet nach '-c'-Option!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: Beschreibung erwartet nach '-D'-Option!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: Geräte-URI erwartet nach '-v'-Option!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: Dateityp(en) erwartet nach '-I'-Option!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: Hostname erwartet nach '-h'-Option!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: Schnittstelle erwartet nach '-i'-Option!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: Standort erwartet nach '-L'-Option!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: Modell erwartet nach '-m'-Option!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: name=value erwartet nach '-o'-Option!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: Drucker erwartet nach '-p'-Option!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: Druckername erwartet nach '-d'-Option!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: Drucker oder Klasse erwartet nach '-x'-Option!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: Keine zugehörigen Namen gefunden!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: Drucker „%s“ gehört bereits zur Klasse „%s“.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: Drucker „%s“ gehört bereits zur Klasse „%s“.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Druckername kann nur druckbare Zeichen enthalten!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Drucker konnte nicht zu der Klasse hinzugefügt werden:\n"
-#~ " Legen Sie zuerst einen Druckernamen fest!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: Verbindungsaufbau zum Server fehlgeschlagen: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: Temporäre Datei konnte nicht erstellt werden – %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: Temporäre Datei konnte nicht erstellt werden: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: PPD-Datei „%s“ konnte nicht geöffnet werden – %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: Datei „%s“ konnte nicht geöffnet werden: %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Drucker konnte nicht aus der Klasse entfernt werden:\n"
-#~ " Legen Sie zuerst einen Druckernamen fest!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Die PPD-Datei konnte nicht festgelegt werden:\n"
-#~ " Legen Sie zuerst einen Druckernamen fest!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Die Geräte-URI konnte nicht festgelegt werden:\n"
-#~ " Legen Sie zuerst einen Druckernamen fest!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Das Schnittstellenskript oder die PPD-Datei konnten nicht "
-#~ "festgelegt werden:\n"
-#~ " Legen Sie zuerst einen Druckernamen fest!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Das Schnittstellenskript konnte nicht festgelegt werden:\n"
-#~ " Legen Sie zuerst einen Druckernamen fest!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Die Druckerbeschreibung konnte nicht festgelegt werden:\n"
-#~ " Legen Sie zuerst einen Druckernamen fest!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Der Druckerstandort konnte nicht festgelegt werden:\n"
-#~ " Legen Sie zuerst einen Druckernamen fest!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Die Druckeroptionen konnten nicht festgelegt werden:\n"
-#~ " Legen Sie zuerst einen Druckernamen fest!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: unbekannte allow/deny-Option „%s“!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: unbekanntes Argument „%s“!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: unbekannte Option '%c'!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: Achtung – Inhaltstypliste ignoriert!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo: 1284 Geräte-ID String erwartet nach „--device-id“!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: Sprache erwartet nach „--language“!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: Hersteller und Modell erwartet nach „--make-and-model“!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: Produktstring erwartet nach „--product“!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: Schemaliste erwartet nach „--exclude-schemes“!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: Schemaliste erwartet nach „--include-schemes“!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: Zeitüberschreitung erwartet nach „--timeout“!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: unbekanntes Argument „%s“!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: unbekannte Option '%c'!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: unbekannte Option '%s'!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: Verbindungsaufbau zum Server fehlgeschlagen: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: unbekanntes Argument „%s“!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: unbekannte Option '%c'!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: Keine Drucker!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr ""
-#~ "lpoptions: Drucker oder Instanz konnten nicht hinzugefügt werden: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: PPD-Datei für „%s“ konnte nicht geladen werden: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: PPD-Datei für „%s“ konnte nicht geöffnet werden!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: Drucker oder Klasse unbekannt!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: Nur „root“ kann Kennwörter hinzufügen und löschen!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: Kennwortdatei wird gerade verwendet!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: Kennwortdatei ist nicht aktualisiert!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: Kennwörter stimmen nicht überein!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: Kennwort abgelehnt.\n"
-#~ "Das Kennwort muss mindestens 6 Zeichen lang sein, darf nicht Ihren "
-#~ "Benutzernamen enthalten und muss mindestens einen Buchstaben und eine "
-#~ "Zahl enthalten.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: Kennwörter stimmen nicht überein!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: Kennwortstring konnte nicht kopiert werden: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: Kennwortdatei konnte nicht geöffnet werden: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd: In die Kennwortdatei konnte nicht geschrieben werden: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr "lppasswd: Sichern der alten Kennwortdatei fehlgeschlagen: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: Kennwortdatei konnte nicht umbenannt werden: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: Benutzer „%s“ und Gruppe „%s“ existieren nicht.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: Fehler – %s Umgebungsvariablennamen nicht vorhanden für Ziel „%"
-#~ "s“!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "gehört zu Klasse „%s“:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "keine Einträge\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "kein System-Standardzielort\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "„notify-events“ nicht festgelegt!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri URI „%s“ wird bereits verwendet!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri URI „%s“ verwendet unbekanntes Schema!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id „%d“ ist ungültig!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: Ordner „%s“ hinzufügen …\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: UI-Text von „%s“ hinzufügen/aktualisieren …\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Ungültiger Boolscher Wert (%s) in Zeile %d von %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ungültiger aufzulösender Name „%s“ in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: Ungültiges Status-Keyword „%s“ in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: Ungültige Variablenersetzung ($%c) in Zeile %d von %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: Auswahl in Zeile %d von %s gefunden ohne Option!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: Duplikat #po für Locale „%s“ in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: Filterdefinition erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: Programmname erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: Boolschen Wert erwartet in Zeile %d von %s.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Zeichensatz nach Schrift erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: Auswahlcode erwartet in Zeile %d von %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: Auswahlname/-text erwartet in Zeile %d von %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Farbreihenfolge für ColorModel erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Farbraum für ColorModel erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Komprimierung für ColorModel erwartet in Zeile %d von %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Constraints String für UIConstraints erwartet in Zeile %d von %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Treibertyp-Keyword nach DriverType erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: Duplextyp nach Duplex erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Codierung nach Schrift erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: Dateiname nach #po %s erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Gruppenname/-text erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: „include filename“ erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: „integer“ erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: Locale nach #po erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Name nach „%s“ erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: Name nach FileName erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Name nach Font erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: Name nach Manufacturer erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: Name nach MediaSize erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: Name nach ModelName erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: Name nach PCFileName erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Name/Text nach „%s“ erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: Name/Text nach Installable erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: Name/Text nach Resolution erwartet in Zeile %d von %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Kombination aus Name/Text für ColorModel erwartet in Zeile %d von %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Optionsname/-text erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: „option section“ erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: „option type“ erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: „override field“ nach Resolution erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: „real number“ erwartet in Zeile %d von %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: „resolution/mediatype“ nach ColorProfile erwartet in Zeile %d von %"
-#~ "s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: „resolution/mediatype“ nach SimpleColorProfile erwartet in Zeile %d "
-#~ "von %s!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: „selector“ nach „%s“ erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Status nach Font erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: „string“ nach Copyright erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: „string“ nach Version erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: Zwei Optionsnamen erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: „value“ nach „%s“ erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Version nach Font erwartet in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: ungültiger #include/#po Dateiname „%s“!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ungültiges „cost“ für Filter in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ungültiger leerer MIME-Typ für Filter in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Ungültiger leerer Programmname für Filter in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ungültiger Optionsabschnitt „%s“ in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ungültiger Optionstyp „%s“ in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: Treiberinfodatei „%s“ laden …\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: Meldungen für Locale „%s“ laden …\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: Meldungen von „%s“ laden …\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: #endif fehlt am Ende von „%s“!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: #if fehlt in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: Kein Message-Catalog verfügbar für Locale „%s“!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Option „%s“ neu definiert durch anderen Typ in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc: Option „constraint must *name“ in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: Zu viele verschachtelte #if in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: PPD-Datei „%s“ konnte nicht erstellt werden – %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: Ausgabeordner „%s“ konnte nicht erstellt werden: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: Ausgabekanäle konnten nicht erstellt werden: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: cupstestppd konnte nicht ausgeführt werden: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: #po-Datei „%s“ wurde nicht gefunden in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: include-Datei „%s“ wurde nicht gefunden in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: Lokalisierung für „%s“ wurde nicht gefunden – %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: Lokalisierungsdatei „%s“ konnte nicht geladen werden – %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Nicht defnierte Variable (%s) in Zeile %d von %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: Unbekannter Treibertyp „%s“ in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Unbekannter Duplextyp „%s“ in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Unbekannte Mediengröße „%s“ in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: Unbekannter Token „%s“ gefunden in Zeile %d von %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Unbekannte nachfolgende Zeichen in Real Number „%s“ in Zeile %d von "
-#~ "%s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc: Unvollständiger String beginnend mit %c in Zeile %d von %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: %s schreiben …\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: PPD-Dateien schreiben in Ordner „%s“ …\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: Ungültige LanguageVersion „%s“ in %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: PPD-Datei „%s“ ignorieren …\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: Backup von „%s“ auf %s fehlgeschlagen – %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "Drucker „%s“ deaktiviert seit %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "Drucker „%s“ ist inaktiv; aktiviert seit %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "Drucker „%s“ druckt gerade %s–%d; aktiviert seit %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "Drucker „%s/%s“ deaktiviert seit %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "Drucker „%s/%s“ ist inaktiv; aktiviert seit %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "Drucker „%s/%s“ druckt gerade %s–%d; aktiviert seit %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "Anfrage-ID ist %s–%d (%d Datei(en))\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "Scheduler ist nicht aktiv\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "Scheduler ist aktiv\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "Status\t\tStatus für Daemon und Warteliste anzeigen\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "System-Standardzielort: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "System-Standardzielort: %s/%s\n"
diff --git a/locale/cups_es.po b/locale/cups_es.po
index 8c96159c..1fe5bb9f 100644
--- a/locale/cups_es.po
+++ b/locale/cups_es.po
@@ -3,7 +3,7 @@
#
# Spanish message catalog for CUPS.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 2005-2007 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
@@ -14,133 +14,200 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: CUPS 1.5\n"
+"Project-Id-Version: CUPS 1.6\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2011-06-18 19:16+0100\n"
+"POT-Creation-Date: 2012-05-23 16:24-0700\n"
+"PO-Revision-Date: 2012-07-01 20:21+0100\n"
"Last-Translator: Juan Pablo González Riopedre <riopedre13@yahoo.es>\n"
"Language-Team: Spanish\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
+#: systemv/lpstat.c:1876
+#: systemv/lpstat.c:2001
msgid "\t\t(all)"
msgstr "\t\t(todos)"
+#: systemv/lpstat.c:1879
+#: systemv/lpstat.c:1882
+#: systemv/lpstat.c:2004
+#: systemv/lpstat.c:2007
msgid "\t\t(none)"
msgstr "\t\t(ninguno)"
+#: berkeley/lpc.c:434
#, c-format
msgid "\t%d entries"
msgstr "\t%d entradas"
+#: systemv/lpstat.c:756
+#: systemv/lpstat.c:772
#, c-format
msgid "\t%s"
msgstr "\t%s"
+#: systemv/lpstat.c:1857
+#: systemv/lpstat.c:1982
msgid "\tAfter fault: continue"
msgstr "\tTras fallo: continuar"
+#: systemv/lpstat.c:1481
+#: systemv/lpstat.c:1826
+#: systemv/lpstat.c:1952
#, c-format
msgid "\tAlerts: %s"
msgstr "\tAlertas: %s"
+#: systemv/lpstat.c:1880
+#: systemv/lpstat.c:2005
msgid "\tBanner required"
msgstr "\tSe necesita un rótulo"
+#: systemv/lpstat.c:1881
+#: systemv/lpstat.c:2006
msgid "\tCharset sets:"
msgstr "\tAjustes del juego de caracteres:"
+#: systemv/lpstat.c:1845
+#: systemv/lpstat.c:1970
msgid "\tConnection: direct"
msgstr "\tConexión: directa"
+#: systemv/lpstat.c:1836
+#: systemv/lpstat.c:1962
msgid "\tConnection: remote"
msgstr "\tConexión: remota"
+#: systemv/lpstat.c:1800
+#: systemv/lpstat.c:1926
msgid "\tContent types: any"
msgstr "\tTipos de contenido: cualesquiera"
+#: systemv/lpstat.c:1884
+#: systemv/lpstat.c:2009
msgid "\tDefault page size:"
msgstr "\tTamaño de página predeterminado:"
+#: systemv/lpstat.c:1883
+#: systemv/lpstat.c:2008
msgid "\tDefault pitch:"
msgstr "\tPaso predeterminado:"
+#: systemv/lpstat.c:1885
+#: systemv/lpstat.c:2010
msgid "\tDefault port settings:"
msgstr "\tAjustes del puerto predeterminados:"
+#: systemv/lpstat.c:1806
+#: systemv/lpstat.c:1932
#, c-format
msgid "\tDescription: %s"
msgstr "\tDescripción: %s"
+#: systemv/lpstat.c:1799
+#: systemv/lpstat.c:1925
msgid "\tForm mounted:"
msgstr "\tFormulario montado:"
+#: systemv/lpstat.c:1878
+#: systemv/lpstat.c:2003
msgid "\tForms allowed:"
msgstr "\tFormularios permitidos:"
+#: systemv/lpstat.c:1840
+#: systemv/lpstat.c:1966
#, c-format
msgid "\tInterface: %s.ppd"
msgstr "\tInterfaz: %s.ppd"
+#: systemv/lpstat.c:1849
+#: systemv/lpstat.c:1974
#, c-format
msgid "\tInterface: %s/interfaces/%s"
msgstr "\tInterfaz: %s/interfaces/%s"
+#: systemv/lpstat.c:1853
+#: systemv/lpstat.c:1978
#, c-format
msgid "\tInterface: %s/ppd/%s.ppd"
msgstr "\tInterfaz: %s/ppd/%s.ppd"
+#: systemv/lpstat.c:1831
+#: systemv/lpstat.c:1957
#, c-format
msgid "\tLocation: %s"
msgstr "\tUbicación: %s"
+#: systemv/lpstat.c:1856
+#: systemv/lpstat.c:1981
msgid "\tOn fault: no alert"
msgstr "\tEn fallo: no alertar"
+#: systemv/lpstat.c:1801
+#: systemv/lpstat.c:1927
msgid "\tPrinter types: unknown"
msgstr "\tTipos de impresora: desconocidos"
+#: systemv/lpstat.c:1462
#, c-format
msgid "\tStatus: %s"
msgstr "\tEstado: %s"
+#: systemv/lpstat.c:1861
+#: systemv/lpstat.c:1875
+#: systemv/lpstat.c:1986
+#: systemv/lpstat.c:2000
msgid "\tUsers allowed:"
msgstr "\tUsuarios permitidos:"
+#: systemv/lpstat.c:1868
+#: systemv/lpstat.c:1993
msgid "\tUsers denied:"
msgstr "\tUsuarios denegados:"
+#: berkeley/lpc.c:436
msgid "\tdaemon present"
msgstr "\tdemonio presente"
+#: berkeley/lpc.c:432
msgid "\tno entries"
msgstr "\tno hay entradas"
+#: berkeley/lpc.c:404
+#: berkeley/lpc.c:416
#, c-format
msgid "\tprinter is on device '%s' speed -1"
msgstr "\tla impresora está conectada a '%s' velocidad -1"
+#: berkeley/lpc.c:429
msgid "\tprinting is disabled"
msgstr "\tla impresión está desactivada"
+#: berkeley/lpc.c:427
msgid "\tprinting is enabled"
msgstr "\tla impresión está activada"
+#: systemv/lpstat.c:1484
#, c-format
msgid "\tqueued for %s"
msgstr "\ten cola para %s"
+#: berkeley/lpc.c:424
msgid "\tqueuing is disabled"
msgstr "\tla cola está desactivada"
+#: berkeley/lpc.c:422
msgid "\tqueuing is enabled"
msgstr "\tla cola está activada"
+#: systemv/lpstat.c:1792
+#: systemv/lpstat.c:1918
msgid "\treason unknown"
msgstr "\trazón desconocida"
+#: systemv/cupstestppd.c:454
msgid ""
"\n"
" DETAILED CONFORMANCE TEST RESULTS"
@@ -148,103 +215,135 @@ msgstr ""
"\n"
" RESULTADOS DETALLADOS DE LA PRUEBA DE CONFORMIDAD"
+#: systemv/cupstestppd.c:3800
msgid " Ignore specific warnings."
msgstr " Ignorar advertencias (warnings) específicas."
+#: systemv/cupstestppd.c:3804
msgid " Issue warnings instead of errors."
-msgstr ""
-" Emitor advertencias (warnings) en vez de errores."
+msgstr " Emitor advertencias (warnings) en vez de errores."
+#: systemv/cupstestppd.c:410
+#: systemv/cupstestppd.c:415
msgid " REF: Page 15, section 3.1."
msgstr " REF: Página 15, sección 3.1."
+#: systemv/cupstestppd.c:405
msgid " REF: Page 15, section 3.2."
msgstr " REF: Página 15, sección 3.2."
+#: systemv/cupstestppd.c:425
msgid " REF: Page 19, section 3.3."
msgstr " REF: Página 19, sección 3.3."
+#: systemv/cupstestppd.c:378
msgid " REF: Page 20, section 3.4."
msgstr " REF: Página 20, sección 3.4."
+#: systemv/cupstestppd.c:430
msgid " REF: Page 27, section 3.5."
msgstr " REF: Página 27, sección 3.5."
+#: systemv/cupstestppd.c:373
msgid " REF: Page 42, section 5.2."
msgstr " REF: Página 42, sección 5.2."
+#: systemv/cupstestppd.c:420
msgid " REF: Pages 16-17, section 3.2."
msgstr " REF: Páginas 16-17, sección 3.2."
+#: systemv/cupstestppd.c:390
msgid " REF: Pages 42-45, section 5.2."
msgstr " REF: Páginas 42-45, sección 5.2."
+#: systemv/cupstestppd.c:384
msgid " REF: Pages 45-46, section 5.2."
msgstr " REF: Páginas 45-46, sección 5.2."
+#: systemv/cupstestppd.c:395
msgid " REF: Pages 48-49, section 5.2."
msgstr " REF: Páginas 48-49, sección 5.2."
+#: systemv/cupstestppd.c:400
msgid " REF: Pages 52-54, section 5.2."
msgstr " REF: Páginas 52-54, sección 5.2."
+#: berkeley/lpq.c:554
#, c-format
msgid " %-39.39s %.0f bytes"
msgstr " %-39.39s %.0f bytes"
+#: systemv/cupstestppd.c:589
#, c-format
msgid " PASS Default%s"
msgstr " PASA Default%s"
+#: systemv/cupstestppd.c:524
msgid " PASS DefaultImageableArea"
msgstr " PASA DefaultImageableArea"
+#: systemv/cupstestppd.c:558
msgid " PASS DefaultPaperDimension"
msgstr " PASA DefaultPaperDimension"
+#: systemv/cupstestppd.c:631
msgid " PASS FileVersion"
msgstr " PASA FileVersion"
+#: systemv/cupstestppd.c:675
msgid " PASS FormatVersion"
msgstr " PASA FormatVersion"
+#: systemv/cupstestppd.c:695
msgid " PASS LanguageEncoding"
msgstr " PASA LanguageEncoding"
+#: systemv/cupstestppd.c:715
msgid " PASS LanguageVersion"
msgstr " PASA LanguageVersion"
+#: systemv/cupstestppd.c:769
msgid " PASS Manufacturer"
msgstr " PASA Manufacturer"
+#: systemv/cupstestppd.c:809
msgid " PASS ModelName"
msgstr " PASA ModelName"
+#: systemv/cupstestppd.c:829
msgid " PASS NickName"
msgstr " PASA NickName"
+#: systemv/cupstestppd.c:889
msgid " PASS PCFileName"
msgstr " PASA PCFileName"
+#: systemv/cupstestppd.c:964
msgid " PASS PSVersion"
msgstr " PASA PSVersion"
+#: systemv/cupstestppd.c:869
msgid " PASS PageRegion"
msgstr " PASA PageRegion"
+#: systemv/cupstestppd.c:849
msgid " PASS PageSize"
msgstr " PASA PageSize"
+#: systemv/cupstestppd.c:924
msgid " PASS Product"
msgstr " PASA Product"
+#: systemv/cupstestppd.c:999
msgid " PASS ShortNickName"
msgstr " PASA ShortNickName"
+#: systemv/cupstestppd.c:1374
#, c-format
msgid " WARN %s has no corresponding options."
msgstr " ADVERTENCIA %s tiene opciones que no corresponden."
+#: systemv/cupstestppd.c:1486
#, c-format
msgid ""
" WARN %s shares a common prefix with %s\n"
@@ -253,48 +352,45 @@ msgstr ""
" ADVERTENCIA %s comparte un prefijo común con %s\n"
" REF: Página 15, sección 3.2."
+#: systemv/cupstestppd.c:1345
#, c-format
msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
+" WARN Duplex option keyword %s may not work as expected and should be named Duplex.\n"
" REF: Page 122, section 5.17"
msgstr ""
-" ADVERTENCIA La clave de opción Duplex %s puede que no funcione "
-"como se espera y debería llamarse Duplex.\n"
+" ADVERTENCIA La clave de opción Duplex %s puede que no funcione como se espera y debería llamarse Duplex.\n"
" REF: Página 122, sección 5.17"
+#: systemv/cupstestppd.c:1744
msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-" ADVERTENCIA El archivo contiene una mezcla de líneas acabadas en "
-"CR, LF y CR LF."
+msgstr " ADVERTENCIA El archivo contiene una mezcla de líneas acabadas en CR, LF y CR LF."
+#: systemv/cupstestppd.c:1390
msgid ""
" WARN LanguageEncoding required by PPD 4.3 spec.\n"
" REF: Pages 56-57, section 5.3."
msgstr ""
-" ADVERTENCIA Se necesita LanguageEncoding por especificación de "
-"PPD 4.3.\n"
+" ADVERTENCIA Se necesita LanguageEncoding por especificación de PPD 4.3.\n"
" REF: Páginas 56-57, sección 5.3."
+#: systemv/cupstestppd.c:1726
#, c-format
msgid " WARN Line %d only contains whitespace."
msgstr " ADVERTENCIA La línea %d solo contiene espacios en blanco."
+#: systemv/cupstestppd.c:1398
msgid ""
" WARN Manufacturer required by PPD 4.3 spec.\n"
" REF: Pages 58-59, section 5.3."
msgstr ""
-" ADVERTENCIA Se necesita Manufacturer por especificación de PPD "
-"4.3.\n"
+" ADVERTENCIA Se necesita Manufacturer por especificación de PPD 4.3.\n"
" REF: Páginas 58-59, sección 5.3."
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-" ADVERTENCIA Los archivos PPD que no sean de Windows deben tener "
-"líneas que acaben sólo en LF, no en CR LF."
+#: systemv/cupstestppd.c:1749
+msgid " WARN Non-Windows PPD files should use lines ending with only LF, not CR LF."
+msgstr " ADVERTENCIA Los archivos PPD que no sean de Windows deben tener líneas que acaben sólo en LF, no en CR LF."
+#: systemv/cupstestppd.c:1382
#, c-format
msgid ""
" WARN Obsolete PPD version %.1f.\n"
@@ -303,14 +399,15 @@ msgstr ""
" ADVERTENCIA Versión de PPD %.1f anticuada.\n"
" REF: Página 42, sección 5.2."
+#: systemv/cupstestppd.c:1413
msgid ""
" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
" REF: Pages 61-62, section 5.3."
msgstr ""
-" ADVERTENCIA PCFileName es mas largo que 8.3 violando la "
-"especificación PPD.\n"
+" ADVERTENCIA PCFileName es mas largo que 8.3 violando la especificación PPD.\n"
" REF: Páginas 61-62, sección 5.3."
+#: systemv/cupstestppd.c:1421
msgid ""
" WARN PCFileName should contain a unique filename.\n"
" REF: Pages 61-62, section 5.3."
@@ -318,39 +415,43 @@ msgstr ""
" ADVERTENCIA PCFileName debe contener un único nombre de archivo.\n"
" REF: Páginas 61-62, sección 5.3."
+#: systemv/cupstestppd.c:1456
msgid ""
" WARN Protocols contains PJL but JCL attributes are not set.\n"
" REF: Pages 78-79, section 5.7."
msgstr ""
-" ADVERTENCIA Los protocolos contienen PJL pero no se especifican "
-"los atributos JCL.\n"
+" ADVERTENCIA Los protocolos contienen PJL pero no se especifican los atributos JCL.\n"
" REF: Páginas 78-79, sección 5.7."
+#: systemv/cupstestppd.c:1447
msgid ""
" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
" REF: Pages 78-79, section 5.7."
msgstr ""
-" ADVERTENCIA Los protocolos contienen a ambos, PJL y BCP; se "
-"esperaba TBCP.\n"
+" ADVERTENCIA Los protocolos contienen a ambos, PJL y BCP; se esperaba TBCP.\n"
" REF: Páginas 78-79, sección 5.7."
+#: systemv/cupstestppd.c:1430
msgid ""
" WARN ShortNickName required by PPD 4.3 spec.\n"
" REF: Pages 64-65, section 5.3."
msgstr ""
-" ADVERTENCIA Se necesita ShortNickName por especificación de PPD "
-"4.3.\n"
+" ADVERTENCIA Se necesita ShortNickName por especificación de PPD 4.3.\n"
" REF: Páginas 64-65, sección 5.3."
+#: systemv/cupsaddsmb.c:282
msgid " cupsaddsmb [options] -a"
msgstr " cupsaddsmb [opciones] -a"
+#: systemv/cupstestdsc.c:427
msgid " cupstestdsc [options] -"
msgstr " cupstestdsc [opciones] -"
+#: systemv/cupstestppd.c:3795
msgid " program | cupstestppd [options] -"
msgstr " programa | cupstestppd [opciones] -"
+#: systemv/cupstestppd.c:3727
#, c-format
msgid ""
" %s \"%s %s\" conflicts with \"%s %s\"\n"
@@ -359,14 +460,17 @@ msgstr ""
" %s \"%s %s\" está en conflictocon \"%s %s\"\n"
" (restricción=\"%s %s %s %s\")."
+#: systemv/cupstestppd.c:2248
#, c-format
msgid " %s %s %s does not exist."
msgstr " %s %s %s no existe."
+#: systemv/cupstestppd.c:3884
#, c-format
msgid " %s %s file \"%s\" has the wrong capitalization."
msgstr " %s archivo %s \"%s\" tiene las mayúsculas equivocadas"
+#: systemv/cupstestppd.c:2318
#, c-format
msgid ""
" %s Bad %s choice %s.\n"
@@ -375,73 +479,113 @@ msgstr ""
" %s Preferencia %s incorrecta %s.\n"
" REF: Página 122, sección 5.17"
+#: systemv/cupstestppd.c:3487
+#: systemv/cupstestppd.c:3536
+#: systemv/cupstestppd.c:3575
#, c-format
msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-" %s Cadena de traducción UTF-8 \"%s\" incorrecta para opción %s, "
-"preferencia %s."
+msgstr " %s Cadena de traducción UTF-8 \"%s\" incorrecta para opción %s, preferencia %s."
+#: systemv/cupstestppd.c:3441
#, c-format
msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
msgstr " %s Cadena de traducción UTF-8 \"%s\" incorrecta para opción %s."
+#: systemv/cupstestppd.c:2389
#, c-format
msgid " %s Bad cupsFilter value \"%s\"."
msgstr " %s Valor cupsFilter \"%s\" incorrecto."
+#: systemv/cupstestppd.c:2475
#, c-format
msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
+msgstr " %s Valor cupsFilter2 incorrecto \"%s\"."
+#: systemv/cupstestppd.c:2964
#, c-format
msgid " %s Bad cupsICCProfile %s."
msgstr " %s cupsICCProfile %s incorrecto."
+#: systemv/cupstestppd.c:2571
#, c-format
msgid " %s Bad cupsPreFilter value \"%s\"."
msgstr " %s Valor cupsPreFilter \"%s\" incorrecto."
+#: systemv/cupstestppd.c:1822
#, c-format
msgid " %s Bad cupsUIConstraints %s: \"%s\""
msgstr " %s cupsUIConstraints %s: \"%s\" incorrecto"
+#: systemv/cupstestppd.c:3391
#, c-format
msgid " %s Bad language \"%s\"."
msgstr " %s Idioma incorrecto \"%s\"."
+#: systemv/cupstestppd.c:2433
+#: systemv/cupstestppd.c:2529
+#: systemv/cupstestppd.c:2615
+#: systemv/cupstestppd.c:2673
+#: systemv/cupstestppd.c:2728
+#: systemv/cupstestppd.c:2783
+#: systemv/cupstestppd.c:2838
+#: systemv/cupstestppd.c:2891
+#: systemv/cupstestppd.c:3013
#, c-format
msgid " %s Bad permissions on %s file \"%s\"."
msgstr " %s Permisos incorrectos en el archivo %s \"%s\"."
+#: systemv/cupstestppd.c:2373
+#: systemv/cupstestppd.c:2459
+#: systemv/cupstestppd.c:2555
+#: systemv/cupstestppd.c:2642
+#: systemv/cupstestppd.c:2697
+#: systemv/cupstestppd.c:2752
+#: systemv/cupstestppd.c:2807
+#: systemv/cupstestppd.c:2862
#, c-format
msgid " %s Bad spelling of %s - should be %s."
msgstr " %s %s mal escrito - debería ser %s."
+#: systemv/cupstestppd.c:2907
#, c-format
msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
msgstr " %s No puede proporcionar APScanAppPath y APScanAppBundleID."
+#: systemv/cupstestppd.c:2205
#, c-format
msgid " %s Default choices conflicting."
msgstr " %s Las preferencias predeterminadas están en conflicto."
+#: systemv/cupstestppd.c:1803
#, c-format
msgid " %s Empty cupsUIConstraints %s"
msgstr " %s cupsUIConstraints %s vacío."
+#: systemv/cupstestppd.c:3519
+#: systemv/cupstestppd.c:3559
#, c-format
msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-" %s Falta cadena de traducción \"%s\" para opción %s, preferencia %s."
+msgstr " %s Falta cadena de traducción \"%s\" para opción %s, preferencia %s."
+#: systemv/cupstestppd.c:3427
#, c-format
msgid " %s Missing \"%s\" translation string for option %s."
msgstr " %s Falta cadena de traducción \"%s\" para opción %s."
+#: systemv/cupstestppd.c:2418
+#: systemv/cupstestppd.c:2514
+#: systemv/cupstestppd.c:2600
+#: systemv/cupstestppd.c:2658
+#: systemv/cupstestppd.c:2713
+#: systemv/cupstestppd.c:2768
+#: systemv/cupstestppd.c:2823
+#: systemv/cupstestppd.c:2875
+#: systemv/cupstestppd.c:2998
#, c-format
msgid " %s Missing %s file \"%s\"."
msgstr " %s Falta archivo %s \"%s\"."
+#: systemv/cupstestppd.c:3121
#, c-format
msgid ""
" %s Missing REQUIRED PageRegion option.\n"
@@ -450,6 +594,7 @@ msgstr ""
" %s Falta la opción NECESARIA PageRegion.\n"
" REF: Página 100, sección 5.14."
+#: systemv/cupstestppd.c:3106
#, c-format
msgid ""
" %s Missing REQUIRED PageSize option.\n"
@@ -458,31 +603,39 @@ msgstr ""
" %s Falta la opción NECESARIA PageSize.\n"
" REF: Página 99, sección 5.14."
+#: systemv/cupstestppd.c:2013
+#: systemv/cupstestppd.c:2054
#, c-format
msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-" %s Falta la preferencia *%s %s en UIConstraint \"*%s %s *%s %s\"."
+msgstr " %s Falta la preferencia *%s %s en UIConstraint \"*%s %s *%s %s\"."
+#: systemv/cupstestppd.c:1908
#, c-format
msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
msgstr " %s Falta la preferencia *%s %s en cupsUIConstraints %s: \"%s\""
+#: systemv/cupstestppd.c:1840
#, c-format
msgid " %s Missing cupsUIResolver %s"
msgstr " %s Falta cupsUIResolver %s"
+#: systemv/cupstestppd.c:1999
+#: systemv/cupstestppd.c:2040
#, c-format
msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
msgstr " %s Falta la opción %s en UIConstraints \"*%s %s *%s %s\"."
+#: systemv/cupstestppd.c:1892
#, c-format
msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
msgstr " %s Falta la opción %s en cupsUIConstraints %s: \"%s\""
+#: systemv/cupstestppd.c:3613
#, c-format
msgid " %s No base translation \"%s\" is included in file."
msgstr " %s No hay traducción base \"%s\" incluida en el archivo."
+#: systemv/cupstestppd.c:2294
#, c-format
msgid ""
" %s REQUIRED %s does not define choice None.\n"
@@ -491,42 +644,43 @@ msgstr ""
" %s NECESARIA %s no define la opción None.\n"
" REF: Página 122, sección 5.17"
+#: systemv/cupstestppd.c:3180
+#: systemv/cupstestppd.c:3194
#, c-format
msgid " %s Size \"%s\" defined for %s but not for %s."
msgstr " %s Tamaño \"%s\" definido para %s pero no para %s."
+#: systemv/cupstestppd.c:3160
#, c-format
msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
msgstr " %s El tamaño \"%s\" tiene dimensiones inesperadas (%gx%g)."
+#: systemv/cupstestppd.c:3332
#, c-format
msgid " %s Size \"%s\" should be \"%s\"."
msgstr " %s Tamaño \"%s\" debería ser \"%s\"."
+#: systemv/cupstestppd.c:3292
#, c-format
msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-" %s Tamaño \"%s\" debería ser el nombre estandar de Adobe \"%s\"."
+msgstr " %s Tamaño \"%s\" debería ser el nombre estandar de Adobe \"%s\"."
+#: systemv/cupstestppd.c:3041
#, c-format
msgid " %s cupsICCProfile %s hash value collides with %s."
msgstr " %s valor hash de cupsICCProfile %s colisiona con %s."
+#: systemv/cupstestppd.c:1963
#, c-format
msgid " %s cupsUIResolver %s causes a loop."
msgstr " %s cupsUIResolver %s genera un bucle."
+#: systemv/cupstestppd.c:1945
#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
+msgid " %s cupsUIResolver %s does not list at least two different options."
msgstr " %s cupsUIResolver %s no lista al menos dos opciones diferentes."
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-" **FALLO** %s nombres de opción %s y %s se diferencian sólo en la "
-"capitalización."
-
+#: systemv/cupstestppd.c:1168
#, c-format
msgid ""
" **FAIL** %s must be 1284DeviceID\n"
@@ -535,152 +689,158 @@ msgstr ""
" **FALLO** %s debe ser 1284DeviceID\n"
" REF: Página 72, sección 5.5"
+#: systemv/cupstestppd.c:580
#, c-format
msgid ""
-" **FAIL** BAD Default%s %s\n"
+" **FAIL** Bad Default%s %s\n"
" REF: Page 40, section 4.5."
msgstr ""
-" **FALLO** Default%s %s INCORRECTO\n"
+" **FALLO** Default%s %s incorrecto\n"
" REF: Página 40, sección 4.5."
+#: systemv/cupstestppd.c:514
#, c-format
msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
+" **FAIL** Bad DefaultImageableArea %s\n"
" REF: Page 102, section 5.15."
msgstr ""
-" **FALLO** DefaultImageableArea %s INCORRECTO\n"
+" **FALLO** DefaultImageableArea %s incorrecto\n"
" REF: Página 102, sección 5.15."
+#: systemv/cupstestppd.c:550
#, c-format
msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
+" **FAIL** Bad DefaultPaperDimension %s\n"
" REF: Page 103, section 5.15."
msgstr ""
-" **FALLO** DefaultPaperDimension %s INCORRECTO\n"
+" **FALLO** DefaultPaperDimension %s incorrecto\n"
" REF: Página 103, sección 5.15."
+#: systemv/cupstestppd.c:623
+#, c-format
msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
+" **FAIL** Bad FileVersion \"%s\"\n"
+" REF: Page 56, section 5.3."
msgstr ""
-" **FALLO** Atributo JobPatchFile en archivo, INCORRECTO\n"
-" REF: Página 24, sección 3.4."
+" **FALLO** FileVersion \"%s\" incorrecto\n"
+" REF: Página 56, sección 5.3."
+#: systemv/cupstestppd.c:667
+#, c-format
msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
+" **FAIL** Bad FormatVersion \"%s\"\n"
+" REF: Page 56, section 5.3."
msgstr ""
-" **FALLO** Fabricante INCORRECTO (debería ser \"HP\")\n"
-" REF: Página 211, tabla D.1."
+" **FALLO** FormatVersion \"%s\" incorrecto\n"
+" REF: Página 56, sección 5.3."
+#: systemv/cupstestppd.c:1025
msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
+" **FAIL** Bad JobPatchFile attribute in file\n"
+" REF: Page 24, section 3.4."
+msgstr ""
+" **FALLO** Atributo JobPatchFile en archivo, incorrecto\n"
+" REF: Página 24, sección 3.4."
+
+#: systemv/cupstestppd.c:1213
+#, c-format
+msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
+msgstr " **FALLO** LanguageEncoding %s incorrecto: debería ser ISOLatin1."
+
+#: systemv/cupstestppd.c:1227
+#, c-format
+msgid " **FAIL** Bad LanguageVersion %s - must be English."
+msgstr " **FALLO** LanguageVersion %s incorrecto: debería ser English (Inglés)."
+
+#: systemv/cupstestppd.c:743
+#: systemv/cupstestppd.c:760
+#, c-format
+msgid ""
+" **FAIL** Bad Manufacturer (should be \"%s\")\n"
" REF: Page 211, table D.1."
msgstr ""
-" **FALLO** Fabricante INCORRECTO (debería ser \"Oki\")\n"
+" **FALLO** Fabricante incorrecto (debería ser \"%s\")\n"
" REF: Página 211, tabla D.1."
+#: systemv/cupstestppd.c:800
#, c-format
msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
+" **FAIL** Bad ModelName - \"%c\" not allowed in string.\n"
" REF: Pages 59-60, section 5.3."
msgstr ""
-" **FALLO** ModelName INCORRECTO - \"%c\" no permitido en la cadena.\n"
+" **FALLO** ModelName incorrecto - \"%c\" no permitido en la cadena.\n"
" REF: Páginas 59-60, sección 5.3."
+#: systemv/cupstestppd.c:956
msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
+" **FAIL** Bad PSVersion - not \"(string) int\".\n"
" REF: Pages 62-64, section 5.3."
msgstr ""
-" **FALLO** PSVersion INCORRECTO - no es \"(string) int\".\n"
+" **FALLO** PSVersion incorrecto - no es \"(string) int\".\n"
" REF: Páginas 62-64, sección 5.3."
+#: systemv/cupstestppd.c:917
msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
+" **FAIL** Bad Product - not \"(string)\".\n"
" REF: Page 62, section 5.3."
msgstr ""
-" **FALLO** Product INCORRECTO - no es \"(string)\".\n"
+" **FALLO** Product incorrecto - no es \"(string)\".\n"
" REF: Página 62, sección 5.3."
+#: systemv/cupstestppd.c:991
msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
+" **FAIL** Bad ShortNickName - longer than 31 chars.\n"
" REF: Pages 64-65, section 5.3."
msgstr ""
-" **FALLO** ShortNickName INCORRECTO - mayor de 31 caracteres.\n"
+" **FALLO** ShortNickName incorrecto - mayor de 31 caracteres.\n"
" REF: Páginas 64-65, sección 5.3."
+#: systemv/cupstestppd.c:1149
#, c-format
msgid ""
-" **FAIL** Bad %s choice %s\n"
+" **FAIL** Bad option %s choice %s\n"
" REF: Page 84, section 5.9"
msgstr ""
-" **FALLO** Preferencia %s incorrecta %s\n"
+" **FALLO** Opción %s, preferencia %s incorrecta\n"
" REF: Página 84, sección 5.9"
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-" **FALLO** FileVersion \"%s\" incorrecto\n"
-" REF: Página 56, sección 5.3."
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-" **FALLO** FormatVersion \"%s\" incorrecto\n"
-" REF: Página 56, sección 5.3."
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-" **FALLO** LanguageEncoding %s incorrecto: debería ser ISOLatin1."
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-" **FALLO** LanguageVersion %s incorrecto: debería ser English (Inglés)."
-
+#: systemv/cupstestppd.c:3754
+#: systemv/cupstestppd.c:3776
#, c-format
msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-" **FALLO** El código de opción predeterminado no puede ser "
-"interpretado: %s"
+msgstr " **FALLO** El código de opción predeterminado no puede ser interpretado: %s"
+#: systemv/cupstestppd.c:1286
#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-" **FALLO** Cadena de traducción predeterminada para opción %s "
-"preferencia %s contiene caracteres de 8-bits."
+msgid " **FAIL** Default translation string for option %s choice %s contains 8-bit characters."
+msgstr " **FALLO** Cadena de traducción predeterminada para opción %s preferencia %s contiene caracteres de 8-bits."
+#: systemv/cupstestppd.c:1259
#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-" **FALLO** Cadena de traducción predeterminada para opción %s contiene "
-"caracteres de 8-bits."
+msgid " **FAIL** Default translation string for option %s contains 8-bit characters."
+msgstr " **FALLO** Cadena de traducción predeterminada para opción %s contiene caracteres de 8-bits."
+#: systemv/cupstestppd.c:2101
#, c-format
msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-" **FALLO** Nombres de grupo %s y %s se diferencian sólo en la "
-"capitalización."
+msgstr " **FALLO** Nombres de grupo %s y %s se diferencian sólo en la capitalización."
+
+#: systemv/cupstestppd.c:2146
+#, c-format
+msgid " **FAIL** Multiple occurrences of option %s choice name %s."
+msgstr " **FALLO** Múltiples apariciones de opción %s nombre de preferencia %s."
+#: systemv/cupstestppd.c:2163
#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr " **FALLO** Múltiples apariciones de %s nombre de opción %s."
+msgid " **FAIL** Option %s choice names %s and %s differ only by case."
+msgstr " **FALLO** Opción %s nombres de preferencia %s y %s se diferencian sólo en la capitalización."
+#: systemv/cupstestppd.c:2123
#, c-format
msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-" **FALLO** Nombres de opción %s y %s se diferencian sólo en la "
-"capitalización."
+msgstr " **FALLO** Nombres de opción %s y %s se diferencian sólo en la capitalización."
+#: systemv/cupstestppd.c:600
#, c-format
msgid ""
" **FAIL** REQUIRED Default%s\n"
@@ -689,6 +849,7 @@ msgstr ""
" **FALLO** SE NECESITA Default%s\n"
" REF: Página 40, sección 4.5."
+#: systemv/cupstestppd.c:499
msgid ""
" **FAIL** REQUIRED DefaultImageableArea\n"
" REF: Page 102, section 5.15."
@@ -696,6 +857,7 @@ msgstr ""
" **FALLO** SE NECESITA DefaultImageableArea\n"
" REF: Página 102, sección 5.15."
+#: systemv/cupstestppd.c:535
msgid ""
" **FAIL** REQUIRED DefaultPaperDimension\n"
" REF: Page 103, section 5.15."
@@ -703,6 +865,7 @@ msgstr ""
" **FALLO** SE NECESITA DefaultPaperDimension\n"
" REF: Página 103, sección 5.15."
+#: systemv/cupstestppd.c:641
msgid ""
" **FAIL** REQUIRED FileVersion\n"
" REF: Page 56, section 5.3."
@@ -710,6 +873,7 @@ msgstr ""
" **FALLO** SE NECESITA FileVersion\n"
" REF: Página 56, sección 5.3."
+#: systemv/cupstestppd.c:685
msgid ""
" **FAIL** REQUIRED FormatVersion\n"
" REF: Page 56, section 5.3."
@@ -717,6 +881,7 @@ msgstr ""
" **FALLO** SE NECESITA FormatVersion\n"
" REF: Página 56, sección 5.3."
+#: systemv/cupstestppd.c:1076
#, c-format
msgid ""
" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
@@ -727,6 +892,7 @@ msgstr ""
" REF: Página 41, sección 5.\n"
" REF: Página 102, sección 5.15."
+#: systemv/cupstestppd.c:705
msgid ""
" **FAIL** REQUIRED LanguageEncoding\n"
" REF: Pages 56-57, section 5.3."
@@ -734,6 +900,7 @@ msgstr ""
" **FALLO** SE NECESITA LanguageEncoding\n"
" REF: Páginas 56-57, sección 5.3."
+#: systemv/cupstestppd.c:725
msgid ""
" **FAIL** REQUIRED LanguageVersion\n"
" REF: Pages 57-58, section 5.3."
@@ -741,6 +908,7 @@ msgstr ""
" **FALLO** SE NECESITA LanguageVersion\n"
" REF: Páginas 57-58, sección 5.3."
+#: systemv/cupstestppd.c:779
msgid ""
" **FAIL** REQUIRED Manufacturer\n"
" REF: Pages 58-59, section 5.3."
@@ -748,6 +916,7 @@ msgstr ""
" **FALLO** SE NECESITA Manufacturer\n"
" REF: Páginas 58-59, sección 5.3."
+#: systemv/cupstestppd.c:819
msgid ""
" **FAIL** REQUIRED ModelName\n"
" REF: Pages 59-60, section 5.3."
@@ -755,6 +924,7 @@ msgstr ""
" **FALLO** SE NECESITA ModelName\n"
" REF: Páginas 59-60, sección 5.3."
+#: systemv/cupstestppd.c:839
msgid ""
" **FAIL** REQUIRED NickName\n"
" REF: Page 60, section 5.3."
@@ -762,6 +932,7 @@ msgstr ""
" **FALLO** SE NECESITA NickName\n"
" REF: Página 60, sección 5.3."
+#: systemv/cupstestppd.c:899
msgid ""
" **FAIL** REQUIRED PCFileName\n"
" REF: Pages 61-62, section 5.3."
@@ -769,6 +940,7 @@ msgstr ""
" **FALLO** SE NECESITA PCFileName\n"
" REF: Páginas 61-62, sección 5.3."
+#: systemv/cupstestppd.c:974
msgid ""
" **FAIL** REQUIRED PSVersion\n"
" REF: Pages 62-64, section 5.3."
@@ -776,6 +948,7 @@ msgstr ""
" **FALLO** SE NECESITA PSVersion\n"
" REF: Páginas 62-64, sección 5.3."
+#: systemv/cupstestppd.c:879
msgid ""
" **FAIL** REQUIRED PageRegion\n"
" REF: Page 100, section 5.14."
@@ -783,6 +956,7 @@ msgstr ""
" **FALLO** SE NECESITA PageRegion\n"
" REF: Página 100, sección 5.14."
+#: systemv/cupstestppd.c:1045
msgid ""
" **FAIL** REQUIRED PageSize\n"
" REF: Page 41, section 5.\n"
@@ -792,6 +966,7 @@ msgstr ""
" REF: Página 41, sección 5.\n"
" REF: Página 99, sección 5.14."
+#: systemv/cupstestppd.c:859
msgid ""
" **FAIL** REQUIRED PageSize\n"
" REF: Pages 99-100, section 5.14."
@@ -799,6 +974,7 @@ msgstr ""
" **FALLO** SE NECESITA PageSize\n"
" REF: Páginas 99-100, sección 5.14."
+#: systemv/cupstestppd.c:1098
#, c-format
msgid ""
" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
@@ -809,6 +985,7 @@ msgstr ""
" REF: Página 41, sección 5.\n"
" REF: Página 103, sección 5.15."
+#: systemv/cupstestppd.c:934
msgid ""
" **FAIL** REQUIRED Product\n"
" REF: Page 62, section 5.3."
@@ -816,6 +993,7 @@ msgstr ""
" **FALLO** SE NECESITA Product\n"
" REF: Página 62, sección 5.3."
+#: systemv/cupstestppd.c:1009
msgid ""
" **FAIL** REQUIRED ShortNickName\n"
" REF: Page 64-65, section 5.3."
@@ -823,22 +1001,24 @@ msgstr ""
" **FALLO** SE NECESITA ShortNickName\n"
" REF: Página 64-65, sección 5.3."
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr " **FALLO** No se ha podido abrir el archivo PPD - %s"
-
+#: systemv/cupstestppd.c:334
+#: systemv/cupstestppd.c:353
+#: systemv/cupstestppd.c:365
#, c-format
msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-" **FALLO** No se ha podido abrir el archivo PPD - %s en la línea %d."
+msgstr " **FALLO** No se ha podido abrir el archivo PPD - %s en la línea %d."
+#: systemv/cupstestppd.c:1498
#, c-format
msgid " %d ERRORS FOUND"
msgstr " %d ERRORES ENCONTRADOS"
+#: systemv/cupstestdsc.c:431
msgid " -h Show program usage"
msgstr " -h Mostrar el uso del programa"
+#: systemv/cupstestdsc.c:234
+#: systemv/cupstestdsc.c:276
#, c-format
msgid ""
" Bad %%%%BoundingBox: on line %d.\n"
@@ -847,6 +1027,7 @@ msgstr ""
" %%%%BoundingBox: incorrecto en línea %d.\n"
" REF: Página 39, %%%%BoundingBox:"
+#: systemv/cupstestdsc.c:305
#, c-format
msgid ""
" Bad %%%%Page: on line %d.\n"
@@ -855,6 +1036,8 @@ msgstr ""
" %%%%Page: incorrecto en línea %d.\n"
" REF: Página 53, %%%%Page:"
+#: systemv/cupstestdsc.c:218
+#: systemv/cupstestdsc.c:258
#, c-format
msgid ""
" Bad %%%%Pages: on line %d.\n"
@@ -863,6 +1046,7 @@ msgstr ""
" %%%%Pages: incorrecto en línea %d.\n"
" REF: Página 43, %%%%Pages:"
+#: systemv/cupstestdsc.c:176
#, c-format
msgid ""
" Line %d is longer than 255 characters (%d).\n"
@@ -871,6 +1055,7 @@ msgstr ""
" La línea %d es más larga de 255 caracteres (%d).\n"
" REF: Página 25, Longitud de Línea"
+#: systemv/cupstestdsc.c:192
msgid ""
" Missing %!PS-Adobe-3.0 on first line.\n"
" REF: Page 17, 3.1 Conforming Documents"
@@ -878,11 +1063,12 @@ msgstr ""
" Falta %!PS-Adobe-3.0 en la primera línea.\n"
" REF: Página 17, 3.1 Conformidad de documentos"
+#: systemv/cupstestdsc.c:362
#, c-format
msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-" Falta comentario %%EndComments. REF: Página 41, %%EndComments"
+msgstr " Falta comentario %%EndComments. REF: Página 41, %%EndComments"
+#: systemv/cupstestdsc.c:342
#, c-format
msgid ""
" Missing or bad %%BoundingBox: comment.\n"
@@ -891,6 +1077,7 @@ msgstr ""
" Falta comentario %%BoundingBox: o incorrecto.\n"
" REF: Página 39, %%BoundingBox:"
+#: systemv/cupstestdsc.c:372
#, c-format
msgid ""
" Missing or bad %%Page: comments.\n"
@@ -899,6 +1086,7 @@ msgstr ""
" Falta comentario %%Page: o incorrecto.\n"
" REF: Página 53, %%Page:"
+#: systemv/cupstestdsc.c:352
#, c-format
msgid ""
" Missing or bad %%Pages: comment.\n"
@@ -907,1668 +1095,2177 @@ msgstr ""
" Falta comentario %%Pages: o incorrecto.\n"
" REF: Página 43, %%Pages:"
+#: systemv/cupstestppd.c:1500
msgid " NO ERRORS FOUND"
msgstr " NO SE HAN ENCONTRADO ERRORES"
+#: systemv/cupstestdsc.c:395
#, c-format
msgid " Saw %d lines that exceeded 255 characters."
msgstr " Se han visto %d líneas que exceden de 255 caracteres."
+#: systemv/cupstestdsc.c:390
#, c-format
msgid " Too many %%BeginDocument comments."
msgstr " Demasiados comentarios %%BeginDocument."
+#: systemv/cupstestdsc.c:382
#, c-format
msgid " Too many %%EndDocument comments."
msgstr " Demasiados comentarios %%EndDocument."
+#: systemv/cupstestdsc.c:402
msgid " Warning: file contains binary data."
msgstr " Advertencia: el archivo contiene datos binarios."
+#: systemv/cupstestdsc.c:410
#, c-format
msgid " Warning: no %%EndComments comment in file."
msgstr " Advertencia: no hay comentario %%EndComments en el archivo."
+#: systemv/cupstestdsc.c:406
#, c-format
msgid " Warning: obsolete DSC version %.1f in file."
msgstr " Advertencia: versión DSC %.1f obsoleta en el archivo."
+#: systemv/cupsctl.c:210
msgid " --[no-]debug-logging Turn debug logging on/off."
msgstr " --[no-]debug-logging Activar/desactivar registro de depuración."
+#: systemv/cupsctl.c:212
msgid " --[no-]remote-admin Turn remote administration on/off."
msgstr " --[no-]remote-admin Activar/desactivar administración remota."
+#: systemv/cupsctl.c:214
msgid " --[no-]remote-any Allow/prevent access from the Internet."
msgstr " --[no-]remote-any Permitir/evitar acceso desde Internet."
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr " --[no-]remote-printers Mostrar/ocultar impresoras remotas."
-
+#: systemv/cupsctl.c:216
msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-" --[no-]share-printers Activar/desactivar compartición de impresoras."
+msgstr " --[no-]share-printers Activar/desactivar compartición de impresoras."
+#: systemv/cupsctl.c:218
msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-" --[no-]user-cancel-any Permitir/evitar a usuarios que cancelen cualquier "
-"trabajo."
+msgstr " --[no-]user-cancel-any Permitir/evitar a usuarios que cancelen cualquier trabajo."
+#: ppdc/ppdc.cxx:455
msgid " --cr End lines with CR (Mac OS 9)."
msgstr " --cr Finalizar líneas con CR (Mac OS 9)."
+#: ppdc/ppdc.cxx:457
msgid " --crlf End lines with CR + LF (Windows)."
msgstr " --crlf Finalizar líneas con CR + LF (Windows)."
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-" --lf Finalizar líneas con LF (UNIX/Linux/Mac OS X)."
+#: ppdc/ppdc.cxx:459
+msgid " --lf End lines with LF (UNIX/Linux/OS X)."
+msgstr " --lf Finalizar líneas con LF (UNIX/Linux/OS X)."
+#: test/ipptool.c:4404
msgid " -4 Connect using IPv4."
msgstr " -4 Conectar usando IPv4."
+#: test/ipptool.c:4405
msgid " -6 Connect using IPv6."
msgstr " -6 Conectar usando IPv6."
+#: test/ipptool.c:4406
msgid " -C Send requests using chunking (default)."
-msgstr ""
-" -C Enviar peticiones usando fragmentación "
-"(predeterminado)."
+msgstr " -C Enviar peticiones usando fragmentación (predeterminado)."
+#: scheduler/cupsfilter.c:1431
msgid " -D Remove the input file when finished."
msgstr " -D Eliminar el archivo de entrada al terminar."
+#: ppdc/ppdc.cxx:438
+#: ppdc/ppdhtml.cxx:175
+#: ppdc/ppdpo.cxx:255
msgid " -D name=value Set named variable to value."
msgstr " -D nombre=valor Establece la variable nombre al valor."
-msgid " -E Enable encryption."
-msgstr " -E Activar cifrado."
-
-msgid " -E Encrypt the connection to the server."
-msgstr " -E Cifra la conexión al servidor."
+#: systemv/cupsaddsmb.c:285
+#: systemv/cupsctl.c:205
+msgid " -E Encrypt the connection."
+msgstr " -E Cifra la conexión."
-msgid " -E Test with TLS encryption."
-msgstr " -E Prueba con cifrado TLS."
+#: test/ipptool.c:4408
+msgid " -E Test with HTTP Upgrade to TLS."
+msgstr " -E Prueba con actualización HTTP a TLS."
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-" -F Ejecuta en primer plano pero separado de la "
-"consola."
+#: scheduler/main.c:2021
+msgid " -F Run in the foreground but detach from console."
+msgstr " -F Ejecuta en primer plano pero separado de la consola."
+#: systemv/cupsaddsmb.c:286
msgid " -H samba-server Use the named SAMBA server."
msgstr " -H servidor-samba Usa el servidor SAMBA nombrado."
+#: test/ipptool.c:4410
msgid " -I Ignore errors."
msgstr " -I Ignora errores."
+#: ppdc/ppdc.cxx:440
+#: ppdc/ppdhtml.cxx:177
+#: ppdc/ppdi.cxx:131
+#: ppdc/ppdpo.cxx:257
msgid " -I include-dir Add include directory to search path."
-msgstr ""
-" -I include-dir Añade directorio include a la ruta de búsqueda."
+msgstr " -I include-dir Añade directorio include a la ruta de búsqueda."
+#: systemv/cupstestppd.c:3799
msgid " -I {filename,filters,none,profiles}"
msgstr " -I {filename,filters,none,profiles}"
-msgid " -J title Set title."
-msgstr " -J título Establece título."
-
+#: test/ipptool.c:4411
msgid " -L Send requests using content-length."
msgstr " -L Envía peticiones usando content-length."
+#: scheduler/cupsfilter.c:1433
msgid " -P filename.ppd Set PPD file."
msgstr " -P nombre_archivo.ppd Establece archivo PPD."
+#: systemv/cupstestppd.c:3801
msgid " -R root-directory Set alternate root."
msgstr " -R directorio-raíz Establece directorio raíz alternativo."
+#: test/ipptool.c:4413
msgid " -S Test with SSL encryption."
msgstr " -S Prueba con cifrado SSL."
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-" -T Establece el tiempo de espera de recepción/envío "
-"en segundos."
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-" -U ususario-samba Autentifica usando el usuario SAMBA "
-"especificado."
-
-msgid " -U username Set username for job."
-msgstr ""
-" -U nombre_usuario Establece el nombre de usuario para el "
-"trabajo."
+#: test/ipptool.c:4415
+msgid " -T seconds Set the receive/send timeout in seconds."
+msgstr " -T segundos Establece el tiempo de espera de recepción/envío en segundos."
+#: scheduler/cupsfilter.c:1434
+#: systemv/cupsaddsmb.c:288
+#: systemv/cupsctl.c:206
msgid " -U username Specify username."
msgstr " -U nombre_usuario Especifica el nombre de usuario."
+#: test/ipptool.c:4417
msgid " -V version Set default IPP version."
msgstr " -V versión Establece la versión IPP predeterminada."
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
+#: systemv/cupstestppd.c:3802
+msgid " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,translations}"
+msgstr " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,translations}"
+#: test/ipptool.c:4419
msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-" -X Produce XML plist en vez de texto sin formato."
+msgstr " -X Produce XML plist en vez de texto sin formato."
+#: systemv/cupsaddsmb.c:289
msgid " -a Export all printers."
msgstr " -a Exporta todas las impresoras."
-msgid " -a 'name=value ...' Set option(s)."
-msgstr " -a 'nombre=valor ...' Establece opción(es)."
-
+#: ppdc/ppdc.cxx:442
msgid " -c catalog.po Load the specified message catalog."
msgstr " -c catálogo.po Carga el catálogo de mensajes especificado."
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-" -c archivo-config Carga archivo de configuración alternativo."
-
-msgid " -c copies Set number of copies."
-msgstr " -c copias Establece el número de copias."
-
+#: scheduler/cupsfilter.c:1435
+#: scheduler/main.c:2019
msgid " -c cupsd.conf Set cupsd.conf file to use."
msgstr " -c cupsd.conf Establece el archivo cupsd.conf a usar."
+#: test/ipptool.c:4421
msgid " -d name=value Set named variable to value."
msgstr " -d nombre=valor Establece la variable al valor."
+#: ppdc/ppdc.cxx:444
msgid " -d output-dir Specify the output directory."
msgstr " -d dir-salida Especifica el directorio de salida."
+#: scheduler/cupsfilter.c:1437
msgid " -d printer Use the named printer."
msgstr " -d impresora Usa la impresora especificada."
+#: scheduler/cupsfilter.c:1439
msgid " -e Use every filter from the PPD file."
msgstr " -e Usa cada filtro desde el archivo PPD."
+#: scheduler/main.c:2020
msgid " -f Run in the foreground."
msgstr " -f Ejecuta en primer plano."
+#: test/ipptool.c:4423
msgid " -f filename Set default request filename."
-msgstr ""
-" -f nombre_archivo Establece nombre de archivo predeterminado."
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-" -f nombre_archivo Establece el archivo que va a ser convertido "
-"(si no, stdin)."
+msgstr " -f nombre_archivo Establece nombre de archivo predeterminado."
+#: scheduler/main.c:2023
msgid " -h Show this usage message."
msgstr " -h Muestra este mensaje de uso."
-msgid " -h cups-server Use the named CUPS server."
-msgstr " -h servidor-cups Usa el servidor CUPS especificado."
-
+#: systemv/cupsaddsmb.c:290
+#: systemv/cupsctl.c:207
msgid " -h server[:port] Specify server address."
msgstr " -h servidor[:puerto] Especifica la dirección del servidor."
+#: scheduler/cupsfilter.c:1441
msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-" -i tipo/mime Establece el tipo MIME de entrada (si no, auto-"
-"typed)."
+msgstr " -i tipo/mime Establece el tipo MIME de entrada (si no, auto-typed)."
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-" -i segundos Repite el último archivo con el intervalo de "
-"tiempo dado."
+#: test/ipptool.c:4425
+msgid " -i seconds Repeat the last file with the given time interval."
+msgstr " -i segundos Repite el último archivo con el intervalo de tiempo dado."
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-" -j id-trabajo[,N] Filtra el archivo N desde el trabajo "
-"especificado (predeterminado archivo 1)."
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-" -j tipo/mime Establece el tipo MIME de salida (si no, "
-"application/pdf)."
+#: scheduler/cupsfilter.c:1443
+msgid " -j job-id[,N] Filter file N from the specified job (default is file 1)."
+msgstr " -j id-trabajo[,N] Filtra el archivo N desde el trabajo especificado (predeterminado archivo 1)."
+#: scheduler/main.c:2024
msgid " -l Run cupsd from launchd(8)."
msgstr " -l Ejecuta cupsd desde launchd(8)."
+#: ppdc/ppdc.cxx:446
msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-" -l idioma[,idioma,...] Especifica los idiomas de salida (código "
-"regional)."
+msgstr " -l idioma[,idioma,...] Especifica los idiomas de salida (código regional)."
+#: ppdc/ppdc.cxx:448
msgid " -m Use the ModelName value as the filename."
-msgstr ""
-" -m Usa el valor ModelName como nombre de archivo."
+msgstr " -m Usa el valor ModelName como nombre de archivo."
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-" -m tipo/mime Establece el tipo MIME de salida (si no, "
-"application/pdf)."
+#: scheduler/cupsfilter.c:1445
+msgid " -m mime/type Set output MIME type (otherwise application/pdf)."
+msgstr " -m tipo/mime Establece el tipo MIME de salida (si no, application/pdf)."
+#: scheduler/cupsfilter.c:1447
msgid " -n copies Set number of copies."
msgstr " -n copias Establece el número de copias."
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-" -n contador Repite el último archivo el número de veces "
-"especificado."
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-" -o nombre_archivo Establece el archivo que va a ser generado "
-"(si no, stdout)."
+#: test/ipptool.c:4427
+msgid " -n count Repeat the last file the given number of times."
+msgstr " -n contador Repite el último archivo el número de veces especificado."
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-" -o nombre_archivo.drv Establece el archivo de información del "
-"controlador (si no, ppdi.drv)."
+#: ppdc/ppdi.cxx:133
+msgid " -o filename.drv Set driver information file (otherwise ppdi.drv)."
+msgstr " -o nombre_archivo.drv Establece el archivo de información del controlador (si no, ppdi.drv)."
+#: ppdc/ppdmerge.cxx:370
msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-" -o nombre_archivo.ppd[.gz] Establece el archivo de salida (si no, "
-"stdout)."
+msgstr " -o nombre_archivo.ppd[.gz] Establece el archivo de salida (si no, stdout)."
+#: scheduler/cupsfilter.c:1448
msgid " -o name=value Set option(s)."
msgstr " -o nombre=valor Establece opciones."
+#: scheduler/cupsfilter.c:1449
msgid " -p filename.ppd Set PPD file."
msgstr " -p nombre_archivo.ppd Establece archivo PPD."
-msgid " -q Be quiet - no output except errors."
-msgstr " -q Silencioso - sin salida excepto errores."
-
+#: systemv/cupstestppd.c:3806
+#: test/ipptool.c:4429
msgid " -q Run silently."
msgstr " -q Ejecución silenciosa."
+#: systemv/cupstestppd.c:3807
msgid " -r Use 'relaxed' open mode."
msgstr " -r Usa modo abierto 'relajado'."
+#: test/ipptool.c:4430
msgid " -t Produce a test report."
msgstr " -t Produce un informe de la prueba."
+#: ppdc/ppdc.cxx:450
msgid " -t Test PPDs instead of generating them."
msgstr " -t Prueba los PPDs en vez de generarlos."
+#: scheduler/main.c:2025
msgid " -t Test the configuration file."
msgstr " -t Prueba el archivo de configuración."
+#: scheduler/cupsfilter.c:1450
msgid " -t title Set title."
msgstr " -t título Establece título."
+#: scheduler/cupsfilter.c:1451
msgid " -u Remove the PPD file when finished."
msgstr " -u Borra el archivo PPD tras terminar."
-msgid " -v Be slightly verbose."
-msgstr " -v Ser ligeramente detallado."
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr " -v Ser detallado (más v's para más detalle)."
-
-msgid " -v Be verbose (show commands)."
-msgstr " -v Ser detallado (mostrar comandos)."
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-" -v Mostrar todos los atributos enviados y recibidos."
+#: systemv/cupsaddsmb.c:291
+#: systemv/cupstestppd.c:3808
+#: test/ipptool.c:4431
+#: ppdc/ppdc.cxx:452
+#: ppdc/ppdpo.cxx:259
+msgid " -v Be verbose."
+msgstr " -v Ser detallado."
+#: systemv/cupstestppd.c:3809
msgid " -vv Be very verbose."
msgstr " -vv Ser muy detallado."
+#: ppdc/ppdc.cxx:453
msgid " -z Compress PPD files using GNU zip."
msgstr " -z Comprimir archivos PPD usando GNU zip."
+#: systemv/cupstestppd.c:332
+#: systemv/cupstestppd.c:351
+#: systemv/cupstestppd.c:363
+#: systemv/cupstestppd.c:496
+#: systemv/cupstestppd.c:511
+#: systemv/cupstestppd.c:532
+#: systemv/cupstestppd.c:547
+#: systemv/cupstestppd.c:577
+#: systemv/cupstestppd.c:597
+#: systemv/cupstestppd.c:620
+#: systemv/cupstestppd.c:638
+#: systemv/cupstestppd.c:664
+#: systemv/cupstestppd.c:682
+#: systemv/cupstestppd.c:702
+#: systemv/cupstestppd.c:722
+#: systemv/cupstestppd.c:740
+#: systemv/cupstestppd.c:757
+#: systemv/cupstestppd.c:776
+#: systemv/cupstestppd.c:797
+#: systemv/cupstestppd.c:816
+#: systemv/cupstestppd.c:836
+#: systemv/cupstestppd.c:856
+#: systemv/cupstestppd.c:876
+#: systemv/cupstestppd.c:896
+#: systemv/cupstestppd.c:914
+#: systemv/cupstestppd.c:931
+#: systemv/cupstestppd.c:953
+#: systemv/cupstestppd.c:971
+#: systemv/cupstestppd.c:988
+#: systemv/cupstestppd.c:1006
+#: systemv/cupstestppd.c:1022
+#: systemv/cupstestppd.c:1042
+#: systemv/cupstestppd.c:1073
+#: systemv/cupstestppd.c:1095
+#: systemv/cupstestppd.c:1146
+#: systemv/cupstestppd.c:1165
+#: systemv/cupstestppd.c:1209
+#: systemv/cupstestppd.c:1223
+#: systemv/cupstestppd.c:1255
+#: systemv/cupstestppd.c:1282
+#: systemv/cupstestppd.c:1800
+#: systemv/cupstestppd.c:1819
+#: systemv/cupstestppd.c:1837
+#: systemv/cupstestppd.c:1889
+#: systemv/cupstestppd.c:1905
+#: systemv/cupstestppd.c:1942
+#: systemv/cupstestppd.c:1960
+#: systemv/cupstestppd.c:1996
+#: systemv/cupstestppd.c:2010
+#: systemv/cupstestppd.c:2037
+#: systemv/cupstestppd.c:2051
+#: systemv/cupstestppd.c:2097
+#: systemv/cupstestppd.c:2119
+#: systemv/cupstestppd.c:2142
+#: systemv/cupstestppd.c:2159
+#: systemv/cupstestppd.c:2201
+#: systemv/cupstestppd.c:2244
+#: systemv/cupstestppd.c:2291
+#: systemv/cupstestppd.c:2315
+#: systemv/cupstestppd.c:2369
+#: systemv/cupstestppd.c:2385
+#: systemv/cupstestppd.c:2415
+#: systemv/cupstestppd.c:2429
+#: systemv/cupstestppd.c:2455
+#: systemv/cupstestppd.c:2471
+#: systemv/cupstestppd.c:2511
+#: systemv/cupstestppd.c:2525
+#: systemv/cupstestppd.c:2551
+#: systemv/cupstestppd.c:2567
+#: systemv/cupstestppd.c:2597
+#: systemv/cupstestppd.c:2611
+#: systemv/cupstestppd.c:2638
+#: systemv/cupstestppd.c:2655
+#: systemv/cupstestppd.c:2669
+#: systemv/cupstestppd.c:2693
+#: systemv/cupstestppd.c:2710
+#: systemv/cupstestppd.c:2724
+#: systemv/cupstestppd.c:2748
+#: systemv/cupstestppd.c:2765
+#: systemv/cupstestppd.c:2779
+#: systemv/cupstestppd.c:2803
+#: systemv/cupstestppd.c:2820
+#: systemv/cupstestppd.c:2834
+#: systemv/cupstestppd.c:2858
+#: systemv/cupstestppd.c:2872
+#: systemv/cupstestppd.c:2887
+#: systemv/cupstestppd.c:2904
+#: systemv/cupstestppd.c:2960
+#: systemv/cupstestppd.c:2995
+#: systemv/cupstestppd.c:3009
+#: systemv/cupstestppd.c:3037
+#: systemv/cupstestppd.c:3102
+#: systemv/cupstestppd.c:3117
+#: systemv/cupstestppd.c:3156
+#: systemv/cupstestppd.c:3176
+#: systemv/cupstestppd.c:3190
+#: systemv/cupstestppd.c:3387
+#: systemv/cupstestppd.c:3423
+#: systemv/cupstestppd.c:3437
+#: systemv/cupstestppd.c:3483
+#: systemv/cupstestppd.c:3515
+#: systemv/cupstestppd.c:3532
+#: systemv/cupstestppd.c:3555
+#: systemv/cupstestppd.c:3571
+#: systemv/cupstestppd.c:3609
+#: systemv/cupstestppd.c:3750
+#: systemv/cupstestppd.c:3772
+#: systemv/cupstestppd.c:3880
msgid " FAIL"
msgstr " FALLO"
+#: systemv/cupstestppd.c:1306
msgid " PASS"
msgstr " PASA"
+#: berkeley/lpq.c:560
#, c-format
msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
+#: berkeley/lpq.c:565
#, c-format
msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
msgstr "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f milímetros"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f a %.0f x %.0f milímetros"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f pulgadas"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f a %.2f x %.2f pulgadas"
-
+#: systemv/lpstat.c:750
#, c-format
msgid "%s accepting requests since %s"
msgstr "%s aceptando peticiones desde %s"
+#: scheduler/ipp.c:10045
#, c-format
msgid "%s cannot be changed."
msgstr "%s no puede ser cambiado."
+#: berkeley/lpc.c:189
#, c-format
msgid "%s is not implemented by the CUPS version of lpc."
msgstr "%s no está implementado en la versión de CUPS de lpc."
+#: berkeley/lpq.c:651
#, c-format
msgid "%s is not ready"
msgstr "%s no está preparada"
+#: berkeley/lpq.c:644
#, c-format
msgid "%s is ready"
msgstr "%s está preparada"
+#: berkeley/lpq.c:647
#, c-format
msgid "%s is ready and printing"
msgstr "%s está preparada e imprimiendo"
+#: filter/rastertoepson.c:985
+#: filter/rastertohp.c:711
+#: filter/rastertolabel.c:1134
#, c-format
msgid "%s job-id user title copies options [file]"
msgstr "%s job-id usuario título copias opciones [archivo]"
+#: systemv/lpstat.c:754
#, c-format
msgid "%s not accepting requests since %s -"
msgstr "%s no acepta peticiones desde %s -"
+#: scheduler/ipp.c:691
#, c-format
msgid "%s not supported."
msgstr "No se admite el uso de %s."
+#: systemv/lpstat.c:765
#, c-format
msgid "%s/%s accepting requests since %s"
msgstr "%s/%s aceptando peticiones desde %s"
+#: systemv/lpstat.c:770
#, c-format
msgid "%s/%s not accepting requests since %s -"
msgstr "%s/%s no acepta peticiones desde %s -"
+#: berkeley/lpq.c:552
#, c-format
msgid "%s: %-33.33s [job %d localhost]"
msgstr "%s: %-33.33s [trabajo %d localhost]"
#. TRANSLATORS: Message is "subject: error"
+#: cups/langprintf.c:86
+#: scheduler/cupsfilter.c:714
+#: systemv/lpadmin.c:805
+#: systemv/lpadmin.c:856
+#: systemv/lpadmin.c:906
+#: systemv/lpadmin.c:962
+#: systemv/lpadmin.c:1060
+#: systemv/lpadmin.c:1112
+#: systemv/lpadmin.c:1168
+#: systemv/lpadmin.c:1478
#, c-format
msgid "%s: %s"
msgstr "%s: %s"
+#: systemv/cancel.c:294
+#: systemv/cancel.c:357
#, c-format
msgid "%s: %s failed: %s"
msgstr "%s: %s ha fallado: %s"
+#: systemv/cupsaccept.c:68
#, c-format
msgid "%s: Don't know what to do."
msgstr "%s: No sé que hay que hacer."
+#: berkeley/lpq.c:236
+#: berkeley/lpr.c:344
+#: systemv/lp.c:584
#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-"%s: Error - %s nombres de variables de entorno no existen en destino \"%s\"."
+msgid "%s: Error - %s environment variable names non-existent destination \"%s\"."
+msgstr "%s: Error - %s nombres de variables de entorno no existen en destino \"%s\"."
+#: systemv/lp.c:231
#, c-format
msgid "%s: Error - bad job ID."
msgstr "%s: Error - ID de trabajo incorrecta."
+#: systemv/lp.c:219
#, c-format
msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-"%s: Error - no se pueden imprimir archivos y alterar trabajos al mismo "
-"tiempo."
+msgstr "%s: Error - no se pueden imprimir archivos y alterar trabajos al mismo tiempo."
+#: systemv/lp.c:505
#, c-format
msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-"%s: Error - no se puede imprimir desde stdin si se proporcionan archivos o "
-"una ID de trabajo."
+msgstr "%s: Error - no se puede imprimir desde stdin si se proporcionan archivos o una ID de trabajo."
+#: systemv/lp.c:461
#, c-format
msgid "%s: Error - expected character set after \"-S\" option."
msgstr "%s: Error - se esperaba un juego de caracteres tras la opción \"-S\"."
+#: systemv/lp.c:480
#, c-format
msgid "%s: Error - expected content type after \"-T\" option."
msgstr "%s: Error - se esperaba un tipo de contenido tras la opción \"-T\"."
+#: berkeley/lpr.c:240
#, c-format
msgid "%s: Error - expected copies after \"-#\" option."
msgstr "%s: Error - se esperaba número de copias tras la opción \"-#\"."
+#: systemv/lp.c:264
#, c-format
msgid "%s: Error - expected copies after \"-n\" option."
msgstr "%s: Error - se esperaba número de copias tras la opción \"-n\"."
+#: berkeley/lpr.c:209
#, c-format
msgid "%s: Error - expected destination after \"-P\" option."
msgstr "%s: Error - se esperaba un destino tras la opción \"-P\"."
+#: systemv/lpstat.c:231
#, c-format
msgid "%s: Error - expected destination after \"-b\" option."
msgstr "%s: Error - se esperaba un destino tras la opción \"-b\"."
+#: systemv/lp.c:138
#, c-format
msgid "%s: Error - expected destination after \"-d\" option."
msgstr "%s: Error - se esperaba un destino tras la opción \"-d\"."
+#: systemv/lp.c:168
#, c-format
msgid "%s: Error - expected form after \"-f\" option."
msgstr "%s: Error - se esperaba un formulario tras la opción \"-f\"."
+#: systemv/lp.c:391
#, c-format
msgid "%s: Error - expected hold name after \"-H\" option."
msgstr "%s: Error - se esperaba un nombre de retención tras la opción \"-H\"."
+#: berkeley/lpr.c:103
#, c-format
msgid "%s: Error - expected hostname after \"-H\" option."
msgstr "%s: Error - se esperaba un nombre de ordenador tras la opción \"-H\"."
+#: berkeley/lpq.c:180
+#: berkeley/lprm.c:123
+#: systemv/cancel.c:124
+#: systemv/cupsaccept.c:123
+#: systemv/lp.c:189
+#: systemv/lpstat.c:291
#, c-format
msgid "%s: Error - expected hostname after \"-h\" option."
msgstr "%s: Error - se esperaba un nombre de ordenador tras la opción \"-h\"."
+#: systemv/lp.c:371
#, c-format
msgid "%s: Error - expected mode list after \"-y\" option."
msgstr "%s: Error - se esperaba una lista de modos tras la opción \"-y\"."
+#: berkeley/lpr.c:263
#, c-format
msgid "%s: Error - expected name after \"-%c\" option."
msgstr "%s: Error - se esperaba un nombre tras la opción \"%c\"."
+#: berkeley/lpr.c:153
+#: systemv/lp.c:288
#, c-format
msgid "%s: Error - expected option=value after \"-o\" option."
msgstr "%s: Error - se esperaba opción=valor tras la opción \"-o\"."
+#: systemv/lp.c:441
#, c-format
msgid "%s: Error - expected page list after \"-P\" option."
msgstr "%s: Error - se esperaba una lista de páginas tras la opción \"-P\"."
+#: systemv/lp.c:308
#, c-format
msgid "%s: Error - expected priority after \"-%c\" option."
msgstr "%s: Error - se esperaba un valor de prioridad tras la opción \"-%c\"."
+#: systemv/cupsaccept.c:141
#, c-format
msgid "%s: Error - expected reason text after \"-r\" option."
msgstr "%s: Error - se esperaba un texto con una razón tras la opción \"-r\"."
+#: systemv/lp.c:354
#, c-format
msgid "%s: Error - expected title after \"-t\" option."
msgstr "%s: Error - se esperaba un título tras la opción \"-t\"."
+#: berkeley/lpq.c:111
+#: berkeley/lpr.c:84
+#: berkeley/lprm.c:104
+#: systemv/cancel.c:94
+#: systemv/cupsaccept.c:101
+#: systemv/lp.c:116
+#: systemv/lpadmin.c:438
+#: systemv/lpstat.c:137
#, c-format
msgid "%s: Error - expected username after \"-U\" option."
msgstr "%s: Error - se esperaba un nombre de usuario tras la opción \"-U\"."
+#: systemv/cancel.c:145
#, c-format
msgid "%s: Error - expected username after \"-u\" option."
msgstr "%s: Error - se esperaba un nombre de usuario tras la opción \"-u\"."
+#: berkeley/lpr.c:125
#, c-format
msgid "%s: Error - expected value after \"-%c\" option."
msgstr "%s: Error - se esperaba un valor tras la opción \"%c\"."
+#: systemv/lpstat.c:157
+#: systemv/lpstat.c:171
#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-"%s: Error - se necesita \"completed\", \"not completed\", o \"all\" tras la "
-"opción \"-W\"."
+msgid "%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" option."
+msgstr "%s: Error - se necesita \"completed\", \"not completed\", o \"all\" tras la opción \"-W\"."
+#: berkeley/lpq.c:241
+#: berkeley/lpr.c:349
+#: systemv/lp.c:589
#, c-format
msgid "%s: Error - no default destination available."
msgstr "%s: Error - destino predeterminado no disponible."
+#: systemv/lp.c:330
#, c-format
msgid "%s: Error - priority must be between 1 and 100."
msgstr "%s: Error - la prioridad debe estar entre 1 y 100."
+#: berkeley/lpr.c:352
+#: systemv/lp.c:592
#, c-format
msgid "%s: Error - scheduler not responding."
msgstr "%s: Error - el programa planificador de tareas no responde."
+#: berkeley/lpr.c:305
+#: systemv/lp.c:537
#, c-format
msgid "%s: Error - too many files - \"%s\"."
msgstr "%s: Error - demasiados archivos - \"%s\"."
+#: berkeley/lpr.c:287
+#: systemv/lp.c:520
#, c-format
msgid "%s: Error - unable to access \"%s\" - %s"
msgstr "%s: Error - no se ha podido acceder a \"%s\" - %s"
+#: berkeley/lpr.c:395
+#: systemv/lp.c:623
#, c-format
msgid "%s: Error - unable to queue from stdin - %s."
msgstr "%s: Error - no se ha podido poner en cola desde stdin - %s."
+#: berkeley/lprm.c:87
+#: berkeley/lprm.c:172
+#: systemv/cancel.c:214
#, c-format
msgid "%s: Error - unknown destination \"%s\"."
msgstr "%s: Error - destino \"%s\" desconocido."
+#: berkeley/lpq.c:150
#, c-format
msgid "%s: Error - unknown destination \"%s/%s\"."
msgstr "%s: Error - destino \"%s/%s\" desconocido."
+#: berkeley/lpr.c:274
+#: berkeley/lprm.c:139
+#: systemv/cancel.c:156
+#: systemv/cupsaccept.c:164
+#: systemv/lp.c:496
+#: systemv/lpstat.c:452
#, c-format
msgid "%s: Error - unknown option \"%c\"."
msgstr "%s: Error - opción \"%c\" desconocida."
+#: systemv/cupsaccept.c:157
#, c-format
msgid "%s: Error - unknown option \"%s\"."
msgstr "%s: Error: opción \"%s\" desconocida."
+#: systemv/lp.c:208
#, c-format
msgid "%s: Expected job ID after \"-i\" option."
msgstr "%s : Se esperaba una ID de trabajo tras la opción \"-i\"."
+#: systemv/lpstat.c:504
+#: systemv/lpstat.c:543
#, c-format
msgid "%s: Invalid destination name in list \"%s\"."
msgstr "%s: Nombre de destino no válido en la lista \"%s\"."
+#: scheduler/cupsfilter.c:567
#, c-format
msgid "%s: Invalid filter string \"%s\"."
msgstr "%s: Cadena de filtro \"%s\" no válida."
+#: systemv/lp.c:418
#, c-format
msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-"%s: Se necesita un ID de trabajo (\"-i id_trabajo\") antes de \"-H restart\"."
+msgstr "%s: Se necesita un ID de trabajo (\"-i id_trabajo\") antes de \"-H restart\"."
+#: scheduler/cupsfilter.c:458
#, c-format
msgid "%s: No filter to convert from %s/%s to %s/%s."
msgstr "%s: No hay ningún filtro para convertir de %s/%s a %s/%s."
+#: systemv/cupsaccept.c:198
#, c-format
msgid "%s: Operation failed: %s"
msgstr "%s: La operación ha fallado: %s"
+#: berkeley/lpq.c:97
+#: berkeley/lpr.c:70
+#: berkeley/lprm.c:67
+#: systemv/cancel.c:81
+#: systemv/cupsaccept.c:88
+#: systemv/cupsaddsmb.c:86
+#: systemv/lp.c:102
+#: systemv/lpadmin.c:239
+#: systemv/lpinfo.c:88
+#: systemv/lpmove.c:73
+#: systemv/lpstat.c:102
+#: test/ipptool.c:304
+#: test/ipptool.c:321
#, c-format
msgid "%s: Sorry, no encryption support."
msgstr "%s: Lo siento, no está compilado con la opción de cifrado."
+#: berkeley/lpq.c:295
+#: scheduler/cupsfilter.c:1221
+#: systemv/cancel.c:237
+#: systemv/cupsaddsmb.c:144
+#: systemv/cupsaddsmb.c:171
#, c-format
msgid "%s: Unable to connect to server."
msgstr "%s: No se ha podido conectar al servidor."
+#: systemv/cancel.c:317
#, c-format
msgid "%s: Unable to contact server."
msgstr "%s: No se ha podido contactar con el servidor."
+#: scheduler/cupsfilter.c:424
#, c-format
msgid "%s: Unable to determine MIME type of \"%s\"."
msgstr "%s: No se ha podido determinar el tipo MIME de \"%s\"."
+#: ppdc/ppdmerge.cxx:96
#, c-format
msgid "%s: Unable to open %s: %s"
msgstr "%s: No se pudo abrir %s: %s"
+#: scheduler/cupsfilter.c:662
+#: ppdc/ppdmerge.cxx:112
#, c-format
msgid "%s: Unable to open PPD file: %s on line %d."
msgstr "%s: No se ha podido abrir el archivo PPD: %s en la línea %d."
+#: scheduler/cupsfilter.c:392
#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr "%s: No se pudo leer base de datos MIME desde \"%s\" o \"%s\"."
+#: berkeley/lpq.c:153
+#: systemv/lpstat.c:558
#, c-format
msgid "%s: Unknown destination \"%s\"."
msgstr "%s: Destino \"%s\" desconocido."
+#: scheduler/cupsfilter.c:435
#, c-format
msgid "%s: Unknown destination MIME type %s/%s."
msgstr "%s: Tipo MIME de destino %s/%s desconocido."
+#: scheduler/cupsfilter.c:1426
#, c-format
msgid "%s: Unknown option \"%c\"."
msgstr "%s: Opción \"%c\" desconocida."
+#: scheduler/cupsfilter.c:416
#, c-format
msgid "%s: Unknown source MIME type %s/%s."
msgstr "%s: Tipo MIME de origen %s/%s desconocido."
+#: berkeley/lpr.c:139
#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-"%s: Advertencia - no se admite el uso del modificador de formato \"%c\" - la "
-"salida puede no ser correcta."
+msgid "%s: Warning - \"%c\" format modifier not supported - output may not be correct."
+msgstr "%s: Advertencia - no se admite el uso del modificador de formato \"%c\" - la salida puede no ser correcta."
+#: systemv/lp.c:468
#, c-format
msgid "%s: Warning - character set option ignored."
msgstr "%s: Advertencia - opción de juego de caracteres no tenida en cuenta."
+#: systemv/lp.c:487
#, c-format
msgid "%s: Warning - content type option ignored."
msgstr "%s: Advertencia - opción de tipo de contenido no tenida en cuenta."
+#: systemv/lp.c:175
#, c-format
msgid "%s: Warning - form option ignored."
msgstr "%s: Advertencia - opción de formulario no tenida en cuenta."
+#: systemv/lp.c:378
#, c-format
msgid "%s: Warning - mode option ignored."
msgstr "%s: Advertencia - opción de modo no tenida en cuenta."
+#: ppdc/sample.c:310
msgid "-1"
msgstr "-1"
+#: ppdc/sample.c:301
msgid "-10"
msgstr "-10"
+#: ppdc/sample.c:393
msgid "-100"
msgstr "-100"
+#: ppdc/sample.c:392
msgid "-105"
msgstr "-105"
+#: ppdc/sample.c:300
msgid "-11"
msgstr "-11"
+#: ppdc/sample.c:391
msgid "-110"
msgstr "-110"
+#: ppdc/sample.c:390
msgid "-115"
msgstr "-115"
+#: ppdc/sample.c:299
msgid "-12"
msgstr "-12"
+#: ppdc/sample.c:389
msgid "-120"
msgstr "-120"
+#: ppdc/sample.c:298
msgid "-13"
msgstr "-13"
+#: ppdc/sample.c:297
msgid "-14"
msgstr "-14"
+#: ppdc/sample.c:296
msgid "-15"
msgstr "-15"
+#: ppdc/sample.c:309
msgid "-2"
msgstr "-2"
+#: ppdc/sample.c:409
msgid "-20"
msgstr "-20"
+#: ppdc/sample.c:408
msgid "-25"
msgstr "-25"
+#: ppdc/sample.c:308
msgid "-3"
msgstr "-3"
+#: ppdc/sample.c:407
msgid "-30"
msgstr "-30"
+#: ppdc/sample.c:406
msgid "-35"
msgstr "-35"
+#: ppdc/sample.c:307
msgid "-4"
msgstr "-4"
+#: ppdc/sample.c:405
msgid "-40"
msgstr "-40"
+#: ppdc/sample.c:404
msgid "-45"
msgstr "-45"
+#: ppdc/sample.c:306
msgid "-5"
msgstr "-5"
+#: ppdc/sample.c:403
msgid "-50"
msgstr "-50"
+#: ppdc/sample.c:402
msgid "-55"
msgstr "-55"
+#: ppdc/sample.c:305
msgid "-6"
msgstr "-6"
+#: ppdc/sample.c:401
msgid "-60"
msgstr "-60"
+#: ppdc/sample.c:400
msgid "-65"
msgstr "-65"
+#: ppdc/sample.c:304
msgid "-7"
msgstr "-7"
+#: ppdc/sample.c:399
msgid "-70"
msgstr "-70"
+#: ppdc/sample.c:398
msgid "-75"
msgstr "-75"
+#: ppdc/sample.c:303
msgid "-8"
msgstr "-8"
+#: ppdc/sample.c:397
msgid "-80"
msgstr "-80"
+#: ppdc/sample.c:396
msgid "-85"
msgstr "-85"
+#: ppdc/sample.c:302
msgid "-9"
msgstr "-9"
+#: ppdc/sample.c:395
msgid "-90"
msgstr "-90"
+#: ppdc/sample.c:394
msgid "-95"
msgstr "-95"
+#: ppdc/sample.c:311
msgid "0"
msgstr "0"
+#: ppdc/sample.c:312
msgid "1"
msgstr "1"
+#: ppdc/sample.c:384
msgid "1 inch/sec."
msgstr "1 pulg./seg"
+#: ppdc/sample.c:172
msgid "1.25x0.25\""
msgstr "1.25x0.25 pulg."
+#: ppdc/sample.c:173
msgid "1.25x2.25\""
msgstr "1.25x2.25 pulg."
+#: ppdc/sample.c:432
msgid "1.5 inch/sec."
msgstr "1.5 pulg./seg"
+#: ppdc/sample.c:174
msgid "1.50x0.25\""
msgstr "1.50x0.25 pulg."
+#: ppdc/sample.c:175
msgid "1.50x0.50\""
msgstr "1.50x0.50 pulg."
+#: ppdc/sample.c:176
msgid "1.50x1.00\""
msgstr "1.50x1.00 pulg."
+#: ppdc/sample.c:177
msgid "1.50x2.00\""
msgstr "1.50x2.00 pulg."
+#: ppdc/sample.c:321
msgid "10"
msgstr "10"
+#: ppdc/sample.c:443
msgid "10 inches/sec."
msgstr "10 pulg./seg"
+#: ppdc/sample.c:6
msgid "10 x 11"
msgstr "10 x 11"
+#: ppdc/sample.c:7
msgid "10 x 13"
msgstr "10 x 13"
+#: ppdc/sample.c:8
msgid "10 x 14"
msgstr "10 x 14"
+#: ppdc/sample.c:423
msgid "100"
msgstr "100"
+#: ppdc/sample.c:334
msgid "100 mm/sec."
msgstr "100 mm/seg"
+#: ppdc/sample.c:424
msgid "105"
msgstr "105"
+#: ppdc/sample.c:322
msgid "11"
msgstr "11"
+#: ppdc/sample.c:444
msgid "11 inches/sec."
msgstr "11 pulg./seg"
+#: ppdc/sample.c:425
msgid "110"
msgstr "110"
+#: ppdc/sample.c:426
msgid "115"
msgstr "115"
+#: ppdc/sample.c:323
msgid "12"
msgstr "12"
+#: ppdc/sample.c:445
msgid "12 inches/sec."
msgstr "12 pulg./seg"
+#: ppdc/sample.c:9
msgid "12 x 11"
msgstr "12 x 11"
+#: ppdc/sample.c:427
msgid "120"
msgstr "120"
+#: ppdc/sample.c:335
msgid "120 mm/sec."
msgstr "120 mm/seg"
+#: ppdc/sample.c:243
msgid "120x60dpi"
msgstr "120x60ppp"
+#: ppdc/sample.c:249
msgid "120x72dpi"
msgstr "120x72ppp"
+#: ppdc/sample.c:324
msgid "13"
msgstr "13"
+#: ppdc/sample.c:232
msgid "136dpi"
msgstr "136ppp"
+#: ppdc/sample.c:325
msgid "14"
msgstr "14"
+#: ppdc/sample.c:326
msgid "15"
msgstr "15"
+#: ppdc/sample.c:328
msgid "15 mm/sec."
msgstr "15 mm/seg"
+#: ppdc/sample.c:10
msgid "15 x 11"
msgstr "15 x 11"
+#: ppdc/sample.c:336
msgid "150 mm/sec."
msgstr "150 mm/seg"
+#: ppdc/sample.c:283
msgid "150dpi"
msgstr "150ppp"
+#: ppdc/sample.c:368
msgid "16"
msgstr "16"
+#: ppdc/sample.c:369
msgid "17"
msgstr "17"
+#: ppdc/sample.c:370
msgid "18"
msgstr "18"
+#: ppdc/sample.c:244
msgid "180dpi"
msgstr "180ppp"
+#: ppdc/sample.c:371
msgid "19"
msgstr "19"
+#: ppdc/sample.c:313
msgid "2"
msgstr "2"
+#: ppdc/sample.c:385
msgid "2 inches/sec."
msgstr "2 pulg./seg"
+#: ppdc/sample.c:270
msgid "2-Sided Printing"
msgstr "Dúplex"
+#: ppdc/sample.c:178
msgid "2.00x0.37\""
msgstr "2.00x0.37 pulg."
+#: ppdc/sample.c:179
msgid "2.00x0.50\""
msgstr "2.00x0.50 pulg."
+#: ppdc/sample.c:180
msgid "2.00x1.00\""
msgstr "2.00x1.00 pulg."
+#: ppdc/sample.c:181
msgid "2.00x1.25\""
msgstr "2.00x1.25 pulg."
+#: ppdc/sample.c:182
msgid "2.00x2.00\""
msgstr "2.00x2.00 pulg."
+#: ppdc/sample.c:183
msgid "2.00x3.00\""
msgstr "2.00x3.00 pulg."
+#: ppdc/sample.c:184
msgid "2.00x4.00\""
msgstr "2.00x4.00 pulg."
+#: ppdc/sample.c:185
msgid "2.00x5.50\""
msgstr "2.00x5.50 pulg."
+#: ppdc/sample.c:186
msgid "2.25x0.50\""
msgstr "2.25x0.50 pulg."
+#: ppdc/sample.c:187
msgid "2.25x1.25\""
msgstr "2.25x1.25 pulg."
+#: ppdc/sample.c:188
msgid "2.25x4.00\""
msgstr "2.25x4.00 pulg."
+#: ppdc/sample.c:189
msgid "2.25x5.50\""
msgstr "2.25x5.50 pulg."
+#: ppdc/sample.c:190
msgid "2.38x5.50\""
msgstr "2.38x5.50 pulg."
+#: ppdc/sample.c:433
msgid "2.5 inches/sec."
msgstr "2.5 pulg./seg"
+#: ppdc/sample.c:191
msgid "2.50x1.00\""
msgstr "2.50x1.00 pulg."
+#: ppdc/sample.c:192
msgid "2.50x2.00\""
msgstr "2.50x2.00 pulg."
+#: ppdc/sample.c:193
msgid "2.75x1.25\""
msgstr "2.75x1.25 pulg."
+#: ppdc/sample.c:194
msgid "2.9 x 1\""
msgstr "2.9 x 1 pulg."
+#: ppdc/sample.c:372
msgid "20"
msgstr "20"
+#: ppdc/sample.c:329
msgid "20 mm/sec."
msgstr "20 mm/seg"
+#: ppdc/sample.c:337
msgid "200 mm/sec."
msgstr "200 mm/seg"
+#: ppdc/sample.c:233
msgid "203dpi"
msgstr "203ppp"
+#: ppdc/sample.c:373
msgid "21"
msgstr "21"
+#: ppdc/sample.c:374
msgid "22"
msgstr "22"
+#: ppdc/sample.c:375
msgid "23"
msgstr "23"
+#: ppdc/sample.c:376
msgid "24"
msgstr "24"
+#: ppdc/sample.c:241
msgid "24-Pin Series"
msgstr "24-Pin Series"
+#: ppdc/sample.c:250
msgid "240x72dpi"
msgstr "240x72ppp"
+#: ppdc/sample.c:377
msgid "25"
msgstr "25"
+#: ppdc/sample.c:338
msgid "250 mm/sec."
msgstr "250 mm/seg"
+#: ppdc/sample.c:378
msgid "26"
msgstr "26"
+#: ppdc/sample.c:379
msgid "27"
msgstr "27"
+#: ppdc/sample.c:380
msgid "28"
msgstr "28"
+#: ppdc/sample.c:381
msgid "29"
msgstr "29"
+#: ppdc/sample.c:314
msgid "3"
msgstr "3"
+#: ppdc/sample.c:386
msgid "3 inches/sec."
msgstr "3 pulg./seg"
+#: ppdc/sample.c:3
msgid "3 x 5"
msgstr "3 x 5"
+#: ppdc/sample.c:195
msgid "3.00x1.00\""
msgstr "3.00x1.00 pulg."
+#: ppdc/sample.c:196
msgid "3.00x1.25\""
msgstr "3.00x1.25 pulg."
+#: ppdc/sample.c:197
msgid "3.00x2.00\""
msgstr "3.00x2.00 pulg."
+#: ppdc/sample.c:198
msgid "3.00x3.00\""
msgstr "3.00x3.00 pulg."
+#: ppdc/sample.c:199
msgid "3.00x5.00\""
msgstr "3.00x5.00 pulg."
+#: ppdc/sample.c:200
msgid "3.25x2.00\""
msgstr "3.25x2.00 pulg."
+#: ppdc/sample.c:201
msgid "3.25x5.00\""
msgstr "3.25x5.00 pulg."
+#: ppdc/sample.c:202
msgid "3.25x5.50\""
msgstr "3.25x5.50 pulg."
+#: ppdc/sample.c:203
msgid "3.25x5.83\""
msgstr "3.25x5.83 pulg."
+#: ppdc/sample.c:204
msgid "3.25x7.83\""
msgstr "3.25x7.83 pulg."
+#: ppdc/sample.c:4
msgid "3.5 x 5"
msgstr "3.5 x 5"
+#: ppdc/sample.c:171
msgid "3.5\" Disk"
msgstr "Disco de 3.5 pulg."
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "Disco de 3.5 pulg. - 2 1/8 x 2 3/4 pulg."
-
+#: ppdc/sample.c:205
msgid "3.50x1.00\""
msgstr "3.50x1.00 pulg."
+#: ppdc/sample.c:382
msgid "30"
msgstr "30"
+#: ppdc/sample.c:330
msgid "30 mm/sec."
msgstr "30 mm/seg"
+#: ppdc/sample.c:339
msgid "300 mm/sec."
msgstr "300 mm/seg"
+#: ppdc/sample.c:234
msgid "300dpi"
msgstr "300ppp"
+#: ppdc/sample.c:410
msgid "35"
msgstr "35"
+#: ppdc/sample.c:246
msgid "360dpi"
msgstr "360ppp"
+#: ppdc/sample.c:245
msgid "360x180dpi"
msgstr "360x180ppp"
+#: ppdc/sample.c:315
msgid "4"
msgstr "4"
+#: ppdc/sample.c:387
msgid "4 inches/sec."
msgstr "4 pulg./seg"
+#: ppdc/sample.c:206
msgid "4.00x1.00\""
msgstr "4.00x1.00 pulg."
+#: ppdc/sample.c:214
msgid "4.00x13.00\""
msgstr "4.00x13.00 pulg."
+#: ppdc/sample.c:207
msgid "4.00x2.00\""
msgstr "4.00x2.00 pulg."
+#: ppdc/sample.c:208
msgid "4.00x2.50\""
msgstr "4.00x2.50 pulg."
+#: ppdc/sample.c:209
msgid "4.00x3.00\""
msgstr "4.00x3.00 pulg."
+#: ppdc/sample.c:210
msgid "4.00x4.00\""
msgstr "4.00x4.00 pulg."
+#: ppdc/sample.c:211
msgid "4.00x5.00\""
msgstr "4.00x5.00 pulg."
+#: ppdc/sample.c:212
msgid "4.00x6.00\""
msgstr "4.00x6.00 pulg."
+#: ppdc/sample.c:213
msgid "4.00x6.50\""
msgstr "4.00x6.50 pulg."
+#: ppdc/sample.c:411
msgid "40"
msgstr "40"
+#: ppdc/sample.c:331
msgid "40 mm/sec."
msgstr "40 mm/seg"
+#: ppdc/sample.c:412
msgid "45"
msgstr "45"
+#: ppdc/sample.c:316
msgid "5"
msgstr "5"
+#: ppdc/sample.c:437
msgid "5 inches/sec."
msgstr "5 pulg./seg"
+#: ppdc/sample.c:5
msgid "5 x 7"
msgstr "5 x 7"
+#: ppdc/sample.c:413
msgid "50"
msgstr "50"
+#: ppdc/sample.c:414
msgid "55"
msgstr "55"
+#: ppdc/sample.c:317
msgid "6"
msgstr "6"
+#: ppdc/sample.c:438
msgid "6 inches/sec."
msgstr "6 pulg./seg"
+#: ppdc/sample.c:215
msgid "6.00x1.00\""
msgstr "6.00x1.00 pulg."
+#: ppdc/sample.c:216
msgid "6.00x2.00\""
msgstr "6.00x2.00 pulg."
+#: ppdc/sample.c:217
msgid "6.00x3.00\""
msgstr "6.00x3.00 pulg."
+#: ppdc/sample.c:218
msgid "6.00x4.00\""
msgstr "6.00x4.00 pulg."
+#: ppdc/sample.c:219
msgid "6.00x5.00\""
msgstr "6.00x5.00 pulg."
+#: ppdc/sample.c:220
msgid "6.00x6.00\""
msgstr "6.00x6.00 pulg."
+#: ppdc/sample.c:221
msgid "6.00x6.50\""
msgstr "6.00x6.50 pulg."
+#: ppdc/sample.c:415
msgid "60"
msgstr "60"
+#: ppdc/sample.c:332
msgid "60 mm/sec."
msgstr "60 mm/seg"
+#: ppdc/sample.c:261
msgid "600dpi"
msgstr "600ppp"
+#: ppdc/sample.c:242
msgid "60dpi"
msgstr "60ppp"
+#: ppdc/sample.c:248
msgid "60x72dpi"
msgstr "60x72ppp"
+#: ppdc/sample.c:416
msgid "65"
msgstr "65"
+#: ppdc/sample.c:318
msgid "7"
msgstr "7"
+#: ppdc/sample.c:440
msgid "7 inches/sec."
msgstr "7 pulg./seg"
+#: ppdc/sample.c:11
msgid "7 x 9"
msgstr "7 x 9"
+#: ppdc/sample.c:417
msgid "70"
msgstr "70"
+#: ppdc/sample.c:252
msgid "720dpi"
msgstr "720ppp"
+#: ppdc/sample.c:418
msgid "75"
msgstr "75"
+#: ppdc/sample.c:319
msgid "8"
msgstr "8"
+#: ppdc/sample.c:441
msgid "8 inches/sec."
msgstr "8 pulg./seg"
+#: ppdc/sample.c:12
msgid "8 x 10"
msgstr "8 x 10"
+#: ppdc/sample.c:222
msgid "8.00x1.00\""
msgstr "8.00x1.00 pulg."
+#: ppdc/sample.c:223
msgid "8.00x2.00\""
msgstr "8.00x2.00 pulg."
+#: ppdc/sample.c:224
msgid "8.00x3.00\""
msgstr "8.00x3.00 pulg."
+#: ppdc/sample.c:225
msgid "8.00x4.00\""
msgstr "8.00x4.00 pulg."
+#: ppdc/sample.c:226
msgid "8.00x5.00\""
msgstr "8.00x5.00 pulg."
+#: ppdc/sample.c:227
msgid "8.00x6.00\""
msgstr "8.00x6.00 pulg."
+#: ppdc/sample.c:228
msgid "8.00x6.50\""
msgstr "8.00x6.50 pulg."
+#: ppdc/sample.c:419
msgid "80"
msgstr "80"
+#: ppdc/sample.c:333
msgid "80 mm/sec."
msgstr "80 mm/seg"
+#: ppdc/sample.c:420
msgid "85"
msgstr "85"
+#: ppdc/sample.c:320
msgid "9"
msgstr "9"
+#: ppdc/sample.c:442
msgid "9 inches/sec."
msgstr "9 pulg./seg"
+#: ppdc/sample.c:13
msgid "9 x 11"
msgstr "9 x 11"
+#: ppdc/sample.c:14
msgid "9 x 12"
msgstr "9 x 12"
+#: ppdc/sample.c:247
msgid "9-Pin Series"
msgstr "9-Pin Series"
+#: ppdc/sample.c:421
msgid "90"
msgstr "90"
+#: ppdc/sample.c:422
msgid "95"
msgstr "95"
+#: berkeley/lpc.c:213
msgid "?Invalid help command unknown."
msgstr "?Comando de ayuda no válido desconocido."
+#: cgi-bin/admin.c:2368
msgid "A Samba password is required to export printer drivers"
-msgstr ""
-"Se requiere una contraseña Samba para exportar los controladores de impresora"
+msgstr "Se requiere una contraseña Samba para exportar los controladores de impresora"
+#: cgi-bin/admin.c:2364
msgid "A Samba username is required to export printer drivers"
-msgstr ""
-"Se requiere un nombre de usuario Samba para exportar los controladores de "
-"impresora"
+msgstr "Se requiere un nombre de usuario Samba para exportar los controladores de impresora"
+#: scheduler/ipp.c:2283
#, c-format
msgid "A class named \"%s\" already exists."
msgstr "Ya existe una clase llamada \"%s\"."
+#: scheduler/ipp.c:1004
#, c-format
msgid "A printer named \"%s\" already exists."
msgstr "Ya existe una impresora llamada \"%s\"."
+#: ppdc/sample.c:15
msgid "A0"
msgstr "A0"
+#: ppdc/sample.c:16
msgid "A0 Long Edge"
msgstr "A0 lado largo"
+#: ppdc/sample.c:17
msgid "A1"
msgstr "A1"
+#: ppdc/sample.c:18
msgid "A1 Long Edge"
msgstr "A1 lado largo"
+#: ppdc/sample.c:37
msgid "A10"
msgstr "A10"
+#: ppdc/sample.c:19
msgid "A2"
msgstr "A2"
+#: ppdc/sample.c:20
msgid "A2 Long Edge"
msgstr "A2 lado largo"
+#: ppdc/sample.c:21
msgid "A3"
msgstr "A3"
+#: ppdc/sample.c:22
msgid "A3 Long Edge"
msgstr "A3 lado largo"
+#: ppdc/sample.c:23
msgid "A3 Oversize"
msgstr "A3 Extragrande"
+#: ppdc/sample.c:24
msgid "A3 Oversize Long Edge"
msgstr "A3 Extragrande lado largo"
+#: ppdc/sample.c:25
msgid "A4"
msgstr "A4"
+#: ppdc/sample.c:27
msgid "A4 Long Edge"
msgstr "A4 lado largo"
+#: ppdc/sample.c:26
msgid "A4 Oversize"
msgstr "A4 Extragrande"
+#: ppdc/sample.c:28
msgid "A4 Small"
msgstr "A4 Pequeño"
+#: ppdc/sample.c:29
msgid "A5"
msgstr "A5"
+#: ppdc/sample.c:31
msgid "A5 Long Edge"
msgstr "A5 lado largo"
+#: ppdc/sample.c:30
msgid "A5 Oversize"
msgstr "A5 Extragrande"
+#: ppdc/sample.c:32
msgid "A6"
msgstr "A6"
+#: ppdc/sample.c:33
msgid "A6 Long Edge"
msgstr "A6 lado largo"
+#: ppdc/sample.c:34
msgid "A7"
msgstr "A7"
+#: ppdc/sample.c:35
msgid "A8"
msgstr "A8"
+#: ppdc/sample.c:36
msgid "A9"
msgstr "A9"
+#: ppdc/sample.c:38
msgid "ANSI A"
msgstr "ANSI A"
+#: ppdc/sample.c:39
msgid "ANSI B"
msgstr "ANSI B"
+#: ppdc/sample.c:40
msgid "ANSI C"
msgstr "ANSI C"
+#: ppdc/sample.c:41
msgid "ANSI D"
msgstr "ANSI D"
+#: ppdc/sample.c:42
msgid "ANSI E"
msgstr "ANSI E"
+#: ppdc/sample.c:47
msgid "ARCH C"
msgstr "ARCH C"
+#: ppdc/sample.c:48
msgid "ARCH C Long Edge"
msgstr "ARCH C lado largo"
+#: ppdc/sample.c:49
msgid "ARCH D"
msgstr "ARCH D"
+#: ppdc/sample.c:50
msgid "ARCH D Long Edge"
msgstr "ARCH D lado largo"
+#: ppdc/sample.c:51
msgid "ARCH E"
msgstr "ARCH E"
+#: ppdc/sample.c:52
msgid "ARCH E Long Edge"
msgstr "ARCH E lado largo"
+#: cgi-bin/classes.c:169
+#: cgi-bin/printers.c:172
msgid "Accept Jobs"
msgstr "Aceptar trabajos"
+#: cups/http-support.c:1284
msgid "Accepted"
msgstr "Aceptado"
+#: cgi-bin/admin.c:570
msgid "Add Class"
msgstr "Añadir clase"
+#: cgi-bin/admin.c:882
msgid "Add Printer"
msgstr "Añadir impresora"
+#: cgi-bin/admin.c:444
+#: cgi-bin/admin.c:477
+#: cgi-bin/admin.c:525
+#: cgi-bin/admin.c:535
msgid "Add RSS Subscription"
msgstr "Añadir subscripción RSS"
+#: ppdc/sample.c:163
msgid "Address"
msgstr "Dirección"
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Dirección - 1 1/8 x 3 1/2 pulg."
-
+#: cgi-bin/admin.c:210
+#: cgi-bin/admin.c:284
+#: cgi-bin/admin.c:2745
msgid "Administration"
msgstr "Administración"
+#: ppdc/sample.c:429
msgid "Always"
msgstr "Siempre"
+#: backend/socket.c:129
msgid "AppSocket/HP JetDirect"
msgstr "AppSocket/HP JetDirect"
+#: ppdc/sample.c:450
msgid "Applicator"
msgstr "Aplicador"
+#: scheduler/ipp.c:1079
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-"Se ha intentado cambiar el valor printer-state de %s a un valor incorrecto %"
-"d."
+msgstr "Se ha intentado cambiar el valor printer-state de %s a un valor incorrecto %d."
+#: scheduler/ipp.c:325
#, c-format
msgid "Attribute groups are out of order (%x < %x)."
msgstr "Los grupos de atributos están desordenados (%x < %x)."
+#: ppdc/sample.c:126
msgid "B0"
msgstr "B0"
+#: ppdc/sample.c:127
msgid "B1"
msgstr "B1"
+#: ppdc/sample.c:137
msgid "B10"
msgstr "B10"
+#: ppdc/sample.c:128
msgid "B2"
msgstr "B2"
+#: ppdc/sample.c:129
msgid "B3"
msgstr "B3"
+#: ppdc/sample.c:130
msgid "B4"
msgstr "B4"
+#: ppdc/sample.c:131
msgid "B5"
msgstr "B5"
+#: ppdc/sample.c:132
msgid "B5 Oversize"
msgstr "A5 Extragrande"
+#: ppdc/sample.c:133
msgid "B6"
msgstr "B6"
+#: ppdc/sample.c:134
msgid "B7"
msgstr "B7"
+#: ppdc/sample.c:135
msgid "B8"
msgstr "B8"
+#: ppdc/sample.c:136
msgid "B9"
msgstr "B9"
+#: cups/dest.c:1680
msgid "Bad NULL dests pointer"
msgstr "Puntero destino NULLincorrecto"
+#: cups/ppd.c:345
msgid "Bad OpenGroup"
msgstr "OpenGroup incorrecto"
+#: cups/ppd.c:347
msgid "Bad OpenUI/JCLOpenUI"
msgstr "OpenUI/JCLOpenUI incorrecto"
+#: cups/ppd.c:349
msgid "Bad OrderDependency"
msgstr "OrderDependency incorrecto"
+#: cups/ppd-cache.c:148
+#: cups/ppd-cache.c:195
+#: cups/ppd-cache.c:233
+#: cups/ppd-cache.c:239
+#: cups/ppd-cache.c:255
+#: cups/ppd-cache.c:271
+#: cups/ppd-cache.c:280
+#: cups/ppd-cache.c:288
+#: cups/ppd-cache.c:305
+#: cups/ppd-cache.c:313
+#: cups/ppd-cache.c:328
+#: cups/ppd-cache.c:336
+#: cups/ppd-cache.c:354
+#: cups/ppd-cache.c:366
+#: cups/ppd-cache.c:381
+#: cups/ppd-cache.c:393
+#: cups/ppd-cache.c:415
+#: cups/ppd-cache.c:423
+#: cups/ppd-cache.c:441
+#: cups/ppd-cache.c:449
+#: cups/ppd-cache.c:464
+#: cups/ppd-cache.c:472
+#: cups/ppd-cache.c:490
+#: cups/ppd-cache.c:498
+#: cups/ppd-cache.c:525
+#: cups/ppd-cache.c:571
+#: cups/ppd-cache.c:579
+#: cups/ppd-cache.c:587
msgid "Bad PPD cache file."
msgstr "Archivo de caché PPD incorrecto."
+#: cups/http-support.c:1299
msgid "Bad Request"
msgstr "Petición incorrecta"
+#: cups/snmp.c:1002
msgid "Bad SNMP version number"
msgstr "Número de versión SNMP incorrecto"
+#: cups/ppd.c:350
msgid "Bad UIConstraints"
msgstr "UIConstraints incorrecto"
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr "Archivo de juego de caracteres incorrecto \"%s\"."
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr "Tipo de juego de caracteres incorrecto: %s"
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr "Valor de número de columnas %d incorrecto."
-
+#: scheduler/ipp.c:1380
#, c-format
msgid "Bad copies value %d."
msgstr "Valor de copias %d incorrecto."
-#, c-format
-msgid "Bad cpi value %f."
-msgstr "Valor de cpi %f incorrecto."
-
+#: cups/ppd.c:358
msgid "Bad custom parameter"
msgstr "Parámetro a medida incorrecto"
+#: cups/http-support.c:1451
+#: scheduler/ipp.c:2350
#, c-format
msgid "Bad device-uri \"%s\"."
msgstr "device-uri \"%s\" incorrecto."
+#: scheduler/ipp.c:2391
#, c-format
msgid "Bad device-uri scheme \"%s\"."
msgstr "Esquema device-uri \"%s\" incorrecto."
+#: scheduler/ipp.c:8224
+#: scheduler/ipp.c:8240
+#: scheduler/ipp.c:9454
+#: scheduler/ipp.c:10968
#, c-format
msgid "Bad document-format \"%s\"."
msgstr "document-format \"%s\" incorrecto."
+#: scheduler/ipp.c:9470
#, c-format
msgid "Bad document-format-default \"%s\"."
msgstr "document-format-default \"%s\" incorrecto."
+#: cups/util.c:929
msgid "Bad filename buffer"
msgstr "Nombre de archivo del búfer incorrecto"
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr "Línea de descripción tipográfica incorrecta: \"%s\"."
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr "Línea de descripción tipográfica incorrecta: %s"
-
+#: scheduler/ipp.c:10060
msgid "Bad job-priority value."
msgstr "Valor job-priority incorrecto."
+#: scheduler/ipp.c:1410
#, c-format
msgid "Bad job-sheets value \"%s\"."
msgstr "Valor de job-sheets \"%s\" incorrecto."
+#: scheduler/ipp.c:1394
msgid "Bad job-sheets value type."
msgstr "Tipo de valor de job-sheets incorrecto."
+#: scheduler/ipp.c:10090
msgid "Bad job-state value."
msgstr "Valor job-state incorrecto."
+#: scheduler/ipp.c:2974
+#: scheduler/ipp.c:3426
+#: scheduler/ipp.c:6078
+#: scheduler/ipp.c:6225
+#: scheduler/ipp.c:7658
+#: scheduler/ipp.c:7927
+#: scheduler/ipp.c:8775
+#: scheduler/ipp.c:9001
+#: scheduler/ipp.c:9350
+#: scheduler/ipp.c:9953
#, c-format
msgid "Bad job-uri \"%s\"."
msgstr "job-uri \"%s\" incorrecto."
-#, c-format
-msgid "Bad lpi value %f."
-msgstr "Valor de lpi %f incorrecto."
-
+#: scheduler/ipp.c:2049
+#: scheduler/ipp.c:5622
#, c-format
msgid "Bad notify-pull-method \"%s\"."
msgstr "notify-pull-method \"%s\" incorrecto."
+#: scheduler/ipp.c:2013
+#: scheduler/ipp.c:5586
#, c-format
msgid "Bad notify-recipient-uri \"%s\"."
msgstr "notify-recipient-uri \"%s\" incorrecto."
+#: scheduler/ipp.c:1426
#, c-format
msgid "Bad number-up value %d."
msgstr "Valor number-up (páginas por hoja) %d incorrecto."
+#: cups/adminutil.c:292
#, c-format
msgid "Bad option + choice on line %d."
msgstr "Opción + preferencia incorrectas en línea %d."
+#: scheduler/ipp.c:1443
#, c-format
msgid "Bad page-ranges values %d-%d."
msgstr "Valores de page-ranges %d-%d incorrectos."
+#: scheduler/ipp.c:2434
#, c-format
msgid "Bad port-monitor \"%s\"."
msgstr "port-monitor \"%s\" incorrecto."
+#: cups/dest.c:676
+#: cups/dest.c:1333
+msgid "Bad printer URI."
+msgstr "URI de impresora incorrecto."
+
+#: scheduler/ipp.c:2495
#, c-format
msgid "Bad printer-state value %d."
msgstr "Valor printer-state %d incorrecto."
+#: scheduler/ipp.c:293
#, c-format
msgid "Bad request ID %d."
msgstr "Petición incorrecta de ID %d."
+#: scheduler/ipp.c:278
#, c-format
msgid "Bad request version number %d.%d."
msgstr "Petición incorrecta de número de versión %d.%d."
+#: cgi-bin/admin.c:1484
msgid "Bad subscription ID"
msgstr "ID de subscripción incorrecto"
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr "Dirección de texto incorrecta \"%s\"."
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr "Dirección de texto incorrecta: %s"
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr "Anchura de texto incorrecta \"%s\"."
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr "Anchura de texto incorrecta: %s"
-
+#: cups/ppd.c:360
msgid "Bad value string"
msgstr "Cadena de valores incorrecta"
+#: cgi-bin/admin.c:3290
+#: cgi-bin/admin.c:3536
msgid "Banners"
msgstr "Rótulos"
-msgid "Billing Information: "
-msgstr "Información de facturación: "
-
+#: ppdc/sample.c:287
msgid "Bond Paper"
msgstr "Papel de cartas"
+#: backend/usb-darwin.c:1846
#, c-format
msgid "Boolean expected for waiteof option \"%s\"."
msgstr "Se esperaba un valor lógico para la opción waiteof \"%s\"."
+#: filter/pstops.c:2057
msgid "Buffer overflow detected, aborting."
msgstr "Se ha detectado un desbordamiento de buffer, cancelando."
+#: ppdc/sample.c:254
msgid "CMYK"
msgstr "CMYK"
+#: ppdc/sample.c:363
msgid "CPCL Label Printer"
msgstr "Impresora de etiquetas CPCL"
+#: cgi-bin/admin.c:1485
+#: cgi-bin/admin.c:1524
+#: cgi-bin/admin.c:1534
msgid "Cancel RSS Subscription"
msgstr "Cancelar subscripción RSS"
+#: backend/ipp.c:1921
msgid "Canceling print job."
msgstr "Cancelando trabajo de impresión."
+#: scheduler/ipp.c:2475
msgid "Cannot share a remote Kerberized printer."
msgstr "No se puede compartir una impresora remota Kerberizada."
+#: ppdc/sample.c:279
msgid "Cassette"
msgstr "Casete"
+#: cgi-bin/admin.c:1655
+#: cgi-bin/admin.c:1797
+#: cgi-bin/admin.c:1810
+#: cgi-bin/admin.c:1821
msgid "Change Settings"
msgstr "Cambiar configuración"
+#: scheduler/ipp.c:2061
+#: scheduler/ipp.c:5634
#, c-format
msgid "Character set \"%s\" not supported."
msgstr "No se admite el juego de caracteres \"%s\"."
+#: cgi-bin/classes.c:195
+#: cgi-bin/classes.c:322
msgid "Classes"
msgstr "Clases"
+#: cgi-bin/printers.c:182
msgid "Clean Print Heads"
msgstr "Limpiar cabezales de impresión"
+#: scheduler/ipp.c:3878
msgid "Close-Job doesn't support the job-uri attribute."
msgstr "Close-Job no admite el atributo job-uri."
+#: ppdc/sample.c:282
msgid "Color"
msgstr "Color"
+#: ppdc/sample.c:253
msgid "Color Mode"
msgstr "Modo de color"
+#: berkeley/lpc.c:204
msgid ""
"Commands may be abbreviated. Commands are:\n"
"\n"
@@ -2578,73 +3275,101 @@ msgstr ""
"\n"
"exit help quit status ?"
+#: cups/snmp.c:1006
msgid "Community name uses indefinite length"
msgstr "Nombre de comunidad usa una longitud indefinida"
+#: backend/ipp.c:786
+#: backend/lpd.c:871
+#: backend/socket.c:395
msgid "Connected to printer."
msgstr "Conectado a la impresora."
+#: backend/ipp.c:691
+#: backend/lpd.c:694
+#: backend/socket.c:314
msgid "Connecting to printer."
msgstr "Conectando a la impresora."
+#: cups/http-support.c:1272
msgid "Continue"
msgstr "Continuar"
+#: ppdc/sample.c:365
msgid "Continuous"
msgstr "Continuo"
+#: backend/lpd.c:1020
+#: backend/lpd.c:1152
msgid "Control file sent successfully."
msgstr "Archivo de control enviado correctamente."
+#: backend/ipp.c:1233
+#: backend/lpd.c:464
msgid "Copying print data."
msgstr "Copiando datos de impresión."
+#: cups/http-support.c:1281
msgid "Created"
msgstr "Creado"
-msgid "Created On: "
-msgstr "Creado en: "
-
+#: cups/ppd.c:1113
+#: cups/ppd.c:1153
+#: cups/ppd.c:1398
+#: cups/ppd.c:1501
msgid "Custom"
msgstr "A medida"
+#: ppdc/sample.c:359
msgid "CustominCutInterval"
msgstr "CustominCutInterval"
+#: ppdc/sample.c:357
msgid "CustominTearInterval"
msgstr "CustominTearInterval"
+#: ppdc/sample.c:343
msgid "Cut"
msgstr "Cortar"
+#: ppdc/sample.c:451
msgid "Cutter"
msgstr "Cortadora"
+#: ppdc/sample.c:239
msgid "Dark"
msgstr "Oscuro"
+#: ppdc/sample.c:235
msgid "Darkness"
msgstr "Oscuridad"
+#: backend/lpd.c:1105
msgid "Data file sent successfully."
msgstr "Archivo de datos enviado correctamente."
+#: cgi-bin/admin.c:2094
+#: cgi-bin/admin.c:2105
+#: cgi-bin/admin.c:2150
msgid "Delete Class"
msgstr "Borrar clase"
+#: cgi-bin/admin.c:2179
+#: cgi-bin/admin.c:2190
+#: cgi-bin/admin.c:2235
msgid "Delete Printer"
msgstr "Borrar impresora"
-msgid "Description: "
-msgstr "Descripción: "
-
+#: ppdc/sample.c:281
msgid "DeskJet Series"
msgstr "DeskJet Series"
+#: scheduler/ipp.c:1346
#, c-format
msgid "Destination \"%s\" is not accepting jobs."
msgstr "El destino %s no acepta trabajos."
+#: systemv/lpinfo.c:300
#, c-format
msgid ""
"Device: uri = %s\n"
@@ -2661,741 +3386,988 @@ msgstr ""
" id dispositivo= %s\n"
" ubicación = %s"
+#: ppdc/sample.c:436
msgid "Direct Thermal Media"
msgstr "Soporte térmico directo"
+#: cups/file.c:296
#, c-format
msgid "Directory \"%s\" contains a relative path."
msgstr "El directorio \"%s\" contiene una ruta relativa."
+#: cups/file.c:268
#, c-format
msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
msgstr "El directorio \"%s\" tiene permisos no seguros (0%o/uid=%d/gid=%d)."
+#: cups/file.c:285
#, c-format
msgid "Directory \"%s\" is a file."
msgstr "El directorio \"%s\" es un archivo."
+#: cups/file.c:256
#, c-format
msgid "Directory \"%s\" not available: %s"
msgstr "Directorio \"%s\" no disponible: %s"
+#: cups/file.c:241
#, c-format
msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
msgstr "Permisos del directorio \"%s\" OK (0%o/uid=%d/gid=%d)."
+#: ppdc/sample.c:345
msgid "Disabled"
msgstr "Deshabilitado"
+#: scheduler/ipp.c:6127
#, c-format
msgid "Document #%d does not exist in job #%d."
msgstr "El documento #%d no existe en el trabajo #%d."
-msgid "Driver Name: "
-msgstr "Nombre del controlador: "
-
-msgid "Driver Version: "
-msgstr "Versión del controlador: "
-
+#: ppdc/sample.c:275
msgid "Duplexer"
msgstr "Unidad de impresión dúplex"
+#: ppdc/sample.c:229
msgid "Dymo"
msgstr "Dymo"
+#: ppdc/sample.c:431
msgid "EPL1 Label Printer"
msgstr "Impresora de etiquetas EPL1"
+#: ppdc/sample.c:434
msgid "EPL2 Label Printer"
msgstr "Impresora de etiquetas EPL2"
+#: cgi-bin/admin.c:1849
+#: cgi-bin/admin.c:1861
+#: cgi-bin/admin.c:1915
+#: cgi-bin/admin.c:1922
+#: cgi-bin/admin.c:1957
+#: cgi-bin/admin.c:1970
+#: cgi-bin/admin.c:1994
+#: cgi-bin/admin.c:2067
msgid "Edit Configuration File"
msgstr "Editar archivo de configuración"
+#: cups/adminutil.c:337
msgid "Empty PPD file."
msgstr "Archivo PPD vacío."
#. TRANSLATORS: Banner/cover sheet after the print job.
+#: cgi-bin/admin.c:3561
msgid "Ending Banner"
msgstr "Rótulo final"
+#: ppdc/sample.c:2
msgid "English"
msgstr "Spanish"
+#: systemv/lppasswd.c:193
msgid "Enter old password:"
msgstr "Introduzca la contraseña antigua:"
+#: systemv/lppasswd.c:224
msgid "Enter password again:"
msgstr "Introduzca nuevamente la contraseña:"
+#: systemv/lppasswd.c:212
msgid "Enter password:"
msgstr "Introduzca la contraseña:"
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Introduzca su nombre de usuario y contraseña o el nombre de usuario y "
-"contraseña de root para poder acceder a esta página. Si está usando "
-"autentificación Kerberos, asegúrese de que tiene un ticket Kerberos válido."
+#: scheduler/client.c:2427
+msgid "Enter your username and password or the root username and password to access this page. If you are using Kerberos authentication, make sure you have a valid Kerberos ticket."
+msgstr "Introduzca su nombre de usuario y contraseña o el nombre de usuario y contraseña de root para poder acceder a esta página. Si está usando autentificación Kerberos, asegúrese de que tiene un ticket Kerberos válido."
+#: ppdc/sample.c:73
msgid "Envelope #10 "
msgstr "Sobre #10"
+#: ppdc/sample.c:74
msgid "Envelope #11"
msgstr "Sobre #11"
+#: ppdc/sample.c:75
msgid "Envelope #12"
msgstr "Sobre #12"
+#: ppdc/sample.c:76
msgid "Envelope #14"
msgstr "Sobre #14"
+#: ppdc/sample.c:77
msgid "Envelope #9"
msgstr "Sobre #9"
+#: ppdc/sample.c:89
msgid "Envelope B4"
msgstr "Sobre B4"
+#: ppdc/sample.c:90
msgid "Envelope B5"
msgstr "Sobre B5"
+#: ppdc/sample.c:91
msgid "Envelope B6"
msgstr "Sobre B6"
+#: ppdc/sample.c:78
msgid "Envelope C0"
msgstr "Sobre C0"
+#: ppdc/sample.c:79
msgid "Envelope C1"
msgstr "Sobre C1"
+#: ppdc/sample.c:80
msgid "Envelope C2"
msgstr "Sobre C2"
+#: ppdc/sample.c:81
msgid "Envelope C3"
msgstr "Sobre C3"
+#: ppdc/sample.c:67
msgid "Envelope C4"
msgstr "Sobre C4"
+#: ppdc/sample.c:68
msgid "Envelope C5"
msgstr "Sobre C5"
+#: ppdc/sample.c:69
msgid "Envelope C6"
msgstr "Sobre C6"
+#: ppdc/sample.c:82
msgid "Envelope C65"
msgstr "Sobre C65"
+#: ppdc/sample.c:83
msgid "Envelope C7"
msgstr "Sobre C7"
+#: ppdc/sample.c:84
msgid "Envelope Choukei 3"
msgstr "Sobre Choukei 3"
+#: ppdc/sample.c:85
msgid "Envelope Choukei 3 Long Edge"
msgstr "Sobre Choukei 3 lado largo"
+#: ppdc/sample.c:86
msgid "Envelope Choukei 4"
msgstr "Sobre Choukei 4"
+#: ppdc/sample.c:87
msgid "Envelope Choukei 4 Long Edge"
msgstr "Sobre Choukei 4 lado largo"
+#: ppdc/sample.c:70
msgid "Envelope DL"
msgstr "Sobre DL"
+#: ppdc/sample.c:269
msgid "Envelope Feed"
msgstr "Alimentador de sobre"
+#: ppdc/sample.c:88
msgid "Envelope Invite"
msgstr "Sobre Invitación"
+#: ppdc/sample.c:92
msgid "Envelope Italian"
msgstr "Sobre Italiano"
+#: ppdc/sample.c:93
msgid "Envelope Kaku2"
msgstr "Sobre Kaku2"
+#: ppdc/sample.c:94
msgid "Envelope Kaku2 Long Edge"
msgstr "Sobre Kaku2 lado largo"
+#: ppdc/sample.c:95
msgid "Envelope Kaku3"
msgstr "Sobre Kaku3"
+#: ppdc/sample.c:96
msgid "Envelope Kaku3 Long Edge"
msgstr "Sobre Kaku3 lado largo"
+#: ppdc/sample.c:97
msgid "Envelope Monarch"
msgstr "Sobre Monarch"
+#: ppdc/sample.c:99
msgid "Envelope PRC1 "
msgstr "Sobre PRC1"
+#: ppdc/sample.c:100
msgid "Envelope PRC1 Long Edge"
msgstr "Sobre PRC1 lado largo"
+#: ppdc/sample.c:117
msgid "Envelope PRC10"
msgstr "Sobre PRC10"
+#: ppdc/sample.c:118
msgid "Envelope PRC10 Long Edge"
msgstr "Sobre PRC10 lado largo"
+#: ppdc/sample.c:101
msgid "Envelope PRC2"
msgstr "Sobre PRC2"
+#: ppdc/sample.c:102
msgid "Envelope PRC2 Long Edge"
msgstr "Sobre PRC2 lado largo"
+#: ppdc/sample.c:103
msgid "Envelope PRC3"
msgstr "Sobre PRC3"
+#: ppdc/sample.c:104
msgid "Envelope PRC3 Long Edge"
msgstr "Sobre PRC3 lado largo"
+#: ppdc/sample.c:105
msgid "Envelope PRC4"
msgstr "Sobre PRC4"
+#: ppdc/sample.c:106
msgid "Envelope PRC4 Long Edge"
msgstr "Sobre PRC4 lado largo"
+#: ppdc/sample.c:108
msgid "Envelope PRC5 Long Edge"
msgstr "Sobre PRC5 lado largo"
+#: ppdc/sample.c:107
msgid "Envelope PRC5PRC5"
msgstr "Sobre PRC5PRC5"
+#: ppdc/sample.c:109
msgid "Envelope PRC6"
msgstr "Sobre PRC6"
+#: ppdc/sample.c:110
msgid "Envelope PRC6 Long Edge"
msgstr "Sobre PRC6 lado largo"
+#: ppdc/sample.c:111
msgid "Envelope PRC7"
msgstr "Sobre PRC7"
+#: ppdc/sample.c:112
msgid "Envelope PRC7 Long Edge"
msgstr "Sobre PRC7 lado largo"
+#: ppdc/sample.c:113
msgid "Envelope PRC8"
msgstr "Sobre PRC8"
+#: ppdc/sample.c:114
msgid "Envelope PRC8 Long Edge"
msgstr "Sobre PRC8 lado largo"
+#: ppdc/sample.c:115
msgid "Envelope PRC9"
msgstr "Sobre PRC9"
+#: ppdc/sample.c:116
msgid "Envelope PRC9 Long Edge"
msgstr "Sobre PRC9 lado largo"
+#: ppdc/sample.c:98
msgid "Envelope Personal"
msgstr "Sobre Personal"
+#: ppdc/sample.c:119
msgid "Envelope You4"
msgstr "Sobre You4"
+#: ppdc/sample.c:120
msgid "Envelope You4 Long Edge"
msgstr "Sobre You4 lado largo"
+#: ppdc/sample.c:240
msgid "Epson"
msgstr "Epson"
+#: cgi-bin/admin.c:3604
msgid "Error Policy"
msgstr "Directiva de error"
+#: filter/rastertopwg.c:403
+#: filter/rastertopwg.c:418
+#: filter/rastertopwg.c:429
+#: filter/rastertopwg.c:440
msgid "Error sending raster data."
msgstr "Error enviando trama de datos (raster)."
+#: systemv/lpinfo.c:103
+#: systemv/lpmove.c:88
msgid "Error: need hostname after \"-h\" option."
msgstr "Error: se necesita un nombre de ordenador tras la opción \"-h\"."
+#: ppdc/sample.c:355
msgid "Every 10 Labels"
msgstr "Cada 10 etiquetas"
+#: ppdc/sample.c:347
msgid "Every 2 Labels"
msgstr "Cada 2 etiquetas"
+#: ppdc/sample.c:348
msgid "Every 3 Labels"
msgstr "Cada 3 etiquetas"
+#: ppdc/sample.c:349
msgid "Every 4 Labels"
msgstr "Cada 4 etiquetas"
+#: ppdc/sample.c:350
msgid "Every 5 Labels"
msgstr "Cada 5 etiquetas"
+#: ppdc/sample.c:351
msgid "Every 6 Labels"
msgstr "Cada 6 etiquetas"
+#: ppdc/sample.c:352
msgid "Every 7 Labels"
msgstr "Cada 7 etiquetas"
+#: ppdc/sample.c:353
msgid "Every 8 Labels"
msgstr "Cada 8 etiquetas"
+#: ppdc/sample.c:354
msgid "Every 9 Labels"
msgstr "Cada 9 etiquetas"
+#: ppdc/sample.c:346
msgid "Every Label"
msgstr "Cada etiqueta"
+#: ppdc/sample.c:121
msgid "Executive"
msgstr "Ejecutivo"
+#: cups/http-support.c:1327
msgid "Expectation Failed"
msgstr "Lo que se esperaba, falló."
+#: cgi-bin/admin.c:2356
+#: cgi-bin/admin.c:2375
msgid "Export Printers to Samba"
msgstr "Exportar impresoras a Samba"
+#: systemv/cupstestdsc.c:172
+#: systemv/cupstestdsc.c:189
+#: systemv/cupstestdsc.c:214
+#: systemv/cupstestdsc.c:231
+#: systemv/cupstestdsc.c:255
+#: systemv/cupstestdsc.c:273
+#: systemv/cupstestdsc.c:302
+#: systemv/cupstestdsc.c:339
+#: systemv/cupstestdsc.c:349
+#: systemv/cupstestdsc.c:359
+#: systemv/cupstestdsc.c:369
+#: systemv/cupstestdsc.c:379
+#: systemv/cupstestdsc.c:387
msgid "FAIL"
msgstr "FALLO"
+#: ppdc/sample.c:122
msgid "FanFold German"
msgstr "FanFold alemán"
+#: ppdc/sample.c:123
msgid "FanFold Legal German"
msgstr "FanFold Legal alemán"
+#: ppdc/sample.c:124
msgid "Fanfold US"
msgstr "FanFold de EE.UU"
+#: cups/file.c:300
#, c-format
msgid "File \"%s\" contains a relative path."
msgstr "El archivo \"%s\" contiene una ruta relativa."
+#: cups/file.c:275
#, c-format
msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
msgstr "El archivo \"%s\" tiene permisos no seguros (0%o/uid=%d/gid=%d)."
+#: cups/file.c:289
#, c-format
msgid "File \"%s\" is a directory."
msgstr "El archivo \"%s\" es un directorio."
+#: cups/file.c:261
#, c-format
msgid "File \"%s\" not available: %s"
msgstr "Archivo \"%s\" no disponible: %s"
+#: cups/file.c:247
#, c-format
msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
msgstr "Permisos del archivo \"%s\" OK (0%o/uid=%d/gid=%d)."
-msgid "File Folder"
-msgstr "Carpeta de archivos"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Carpeta de archivosr - 9/16 x 3 7/16 pulg."
+#: ppdc/sample.c:169
+msgid "File Folder "
+msgstr "Carpeta de archivo"
+#: scheduler/ipp.c:2370
#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-"Los URIs del dispositivo de archivo han sido deshabilitados. Para "
-"habilitarlos, vea la directiva FileDevice en \"%s/cupsd.conf\"."
+msgid "File device URIs have been disabled. To enable, see the FileDevice directive in \"%s/cupsd.conf\"."
+msgstr "Los URIs del dispositivo de archivo han sido deshabilitados. Para habilitarlos, vea la directiva FileDevice en \"%s/cupsd.conf\"."
+#: filter/rastertoepson.c:1117
+#: filter/rastertohp.c:845
+#: filter/rastertolabel.c:1273
#, c-format
msgid "Finished page %d."
msgstr "Acabada la página %d."
+#: ppdc/sample.c:125
msgid "Folio"
msgstr "Folio"
+#: cups/http-support.c:1306
msgid "Forbidden"
msgstr "Prohibido"
-#, c-format
-msgid "Formatting page %d."
-msgstr "Formateando página %d."
-
+#: cups/ppd.c:742
+#: cups/ppd.c:1302
msgid "General"
msgstr "General"
+#: ppdc/sample.c:259
msgid "Generic"
msgstr "Genérico"
+#: cups/snmp.c:1016
msgid "Get-Response-PDU uses indefinite length"
msgstr "Get-Response-PDU usa una longitud indefinida"
+#: ppdc/sample.c:290
msgid "Glossy Paper"
msgstr "Papel satinado"
+#: scheduler/ipp.c:2952
+#: scheduler/ipp.c:3352
+#: scheduler/ipp.c:3890
+#: scheduler/ipp.c:6056
+#: scheduler/ipp.c:6203
+#: scheduler/ipp.c:7635
+#: scheduler/ipp.c:8753
+#: scheduler/ipp.c:8979
+#: scheduler/ipp.c:9328
+#: scheduler/ipp.c:9931
msgid "Got a printer-uri attribute but no job-id."
msgstr "Se ha obtenido el atributo printer-uri pero no el job-id."
+#: ppdc/sample.c:255
msgid "Grayscale"
msgstr "Escale de grises"
+#: ppdc/sample.c:280
msgid "HP"
msgstr "HP"
+#: ppdc/sample.c:170
msgid "Hanging Folder"
msgstr "Carpeta colgante"
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Carpeta colgante - 9/16 x 2 pulg."
+#: cgi-bin/help.c:143
+msgid "Help file not in index."
+msgstr "El archivo de ayuda no está en el índice"
+#: cups/ipp.c:2687
+#: cups/ipp.c:2714
+#: cups/ipp.c:2737
msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
+msgstr "IPP atributo 1setOf con etiquetas de valor incompatibles"
+#: cups/ipp.c:2650
msgid "IPP attribute has no name."
-msgstr ""
+msgstr "IPP atributo sin nombre"
+
+#: cups/ipp.c:5487
+msgid "IPP attribute is not a member of the message."
+msgstr "El atributo IPP no es un miembro del mensaje."
+#: cups/ipp.c:3083
msgid "IPP begCollection value not 0 bytes."
-msgstr ""
+msgstr "IPP el valor begCollection no es de 0 bytes."
+#: cups/ipp.c:2873
msgid "IPP boolean value not 1 byte."
-msgstr ""
+msgstr "IPP el valor lógico no es de 1 byte."
+#: cups/ipp.c:2934
msgid "IPP date value not 11 bytes."
-msgstr ""
+msgstr "IPP el valor de fecha no es de 11 bytes."
+#: cups/ipp.c:3104
msgid "IPP endCollection value not 0 bytes."
-msgstr ""
+msgstr "IPP el valor endCollection no es de 0 bytes."
+#: cups/ipp.c:2848
msgid "IPP enum value not 4 bytes."
-msgstr ""
+msgstr "IPP el valor enum no es de 4 bytes."
+
+#: cups/ipp.c:2579
+msgid "IPP extension tag larger than 0x7FFFFFFF."
+msgstr "IPP etiqueta de extensión mayor de 0x7FFFFFFF."
+#: cups/ipp.c:2845
msgid "IPP integer value not 4 bytes."
-msgstr ""
+msgstr "IPP el valor entero no es de 4 bytes."
+#: cups/ipp.c:3045
msgid "IPP language length overflows value."
-msgstr ""
+msgstr "IPP la longitud del idioma sobrepasa el valor."
+#: cups/ipp.c:2764
msgid "IPP member name is not empty."
-msgstr ""
+msgstr "IPP el nombre del miembro no está vacío."
+#: cups/ipp.c:3122
+msgid "IPP memberName value is empty."
+msgstr "IPP el valor memberName está vacío."
+
+#: cups/ipp.c:2633
msgid "IPP name larger than 32767 bytes."
-msgstr ""
+msgstr "IPP nombre mayor de 32767 bytes."
+#: cups/ipp.c:3011
msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
+msgstr "IPP el valor nameWithLanguage menor del mínimo de 4 bytes."
+#: cups/ipp.c:2979
msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
+msgstr "IPP el valor rangeOfInteger no es de 8 bytes."
+#: cups/ipp.c:2952
msgid "IPP resolution value not 9 bytes."
-msgstr ""
+msgstr "IPP el valor de la resolución no es de 9 bytes."
+#: cups/ipp.c:3063
msgid "IPP string length overflows value."
-msgstr ""
+msgstr "IPP la longitud de la cadena sobrepasa el valor."
+#: cups/ipp.c:3007
msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
+msgstr "IPP el valor textWithLanguage menor del mínimo de 4 bytes."
+#: cups/ipp.c:2831
msgid "IPP value larger than 32767 bytes."
-msgstr ""
+msgstr "IPP valor mayor de 32767 bytes."
+#: ppdc/sample.c:1
msgid "ISOLatin1"
msgstr "UTF-8"
+#: cups/ppd.c:353
msgid "Illegal control character"
msgstr "Carácter de control ilegal"
+#: cups/ppd.c:354
msgid "Illegal main keyword string"
msgstr "Cadena de clave principal ilegal"
+#: cups/ppd.c:355
msgid "Illegal option keyword string"
msgstr "Cadena de clave de opción ilegal"
+#: cups/ppd.c:356
msgid "Illegal translation string"
msgstr "Cadena de traducción ilegal"
+#: cups/ppd.c:357
msgid "Illegal whitespace character"
msgstr "Carácter de espacio en blanco ilegal"
+#: ppdc/sample.c:274
msgid "Installable Options"
msgstr "Opciones instalables"
+#: ppdc/sample.c:277
msgid "Installed"
msgstr "Instalada"
+#: ppdc/sample.c:293
msgid "IntelliBar Label Printer"
msgstr "Impresora de etiquetas IntelliBar"
+#: ppdc/sample.c:292
msgid "Intellitech"
msgstr "Intellitech"
+#: cups/http-support.c:1333
msgid "Internal Server Error"
msgstr "Error interno del servidor"
+#: cups/ppd.c:344
msgid "Internal error"
msgstr "Error interno"
+#: ppdc/sample.c:167
msgid "Internet Postage 2-Part"
msgstr "Correo por Internet Parte-2"
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Correo por Internet Parte-2 - 2 1/4 x 7 1/2 pulg."
-
+#: ppdc/sample.c:168
msgid "Internet Postage 3-Part"
msgstr "Correo por Internet Parte-3"
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Correo por Internet Parte-3 - 2 1/4 x 7 pulg."
-
+#: backend/ipp.c:307
msgid "Internet Printing Protocol"
msgstr "Protocolo de Impresión de Internet IPP"
+#: cups/dest-options.c:839
+msgid "Invalid media size."
+msgstr "Tamaño del papel no válido"
+
+#: filter/commandtops.c:125
#, c-format
msgid "Invalid printer command \"%s\"."
-msgstr ""
+msgstr "Comando de impresora \"%s\" no válido."
+#: cups/ppd.c:1420
msgid "JCL"
msgstr "JCL"
+#: ppdc/sample.c:53
msgid "JIS B0"
msgstr "JIS B0"
+#: ppdc/sample.c:55
msgid "JIS B1"
msgstr "JIS B1"
+#: ppdc/sample.c:54
msgid "JIS B10"
msgstr "JIS B10"
+#: ppdc/sample.c:56
msgid "JIS B2"
msgstr "JIS B2"
+#: ppdc/sample.c:57
msgid "JIS B3"
msgstr "JIS B3"
+#: ppdc/sample.c:58
msgid "JIS B4"
msgstr "JIS B4"
+#: ppdc/sample.c:59
msgid "JIS B4 Long Edge"
msgstr "JIS B4 lado largo"
+#: ppdc/sample.c:60
msgid "JIS B5"
msgstr "JIS B5"
+#: ppdc/sample.c:61
msgid "JIS B5 Long Edge"
msgstr "JIS B5 lado largo"
+#: ppdc/sample.c:62
msgid "JIS B6"
msgstr "JIS B6"
+#: ppdc/sample.c:63
msgid "JIS B6 Long Edge"
msgstr "JIS B6 lado largo"
+#: ppdc/sample.c:64
msgid "JIS B7"
msgstr "JIS B7"
+#: ppdc/sample.c:65
msgid "JIS B8"
msgstr "JIS B8"
+#: ppdc/sample.c:66
msgid "JIS B9"
msgstr "JIS B9"
+#: scheduler/ipp.c:9051
#, c-format
msgid "Job #%d cannot be restarted - no files."
msgstr "El trabajo #%d no puede ser reiniciado - no hay archivos."
+#: scheduler/ipp.c:2992
+#: scheduler/ipp.c:3222
+#: scheduler/ipp.c:3277
+#: scheduler/ipp.c:3454
+#: scheduler/ipp.c:3900
+#: scheduler/ipp.c:5720
+#: scheduler/ipp.c:6096
+#: scheduler/ipp.c:6243
+#: scheduler/ipp.c:6543
+#: scheduler/ipp.c:7482
+#: scheduler/ipp.c:7504
+#: scheduler/ipp.c:7676
+#: scheduler/ipp.c:7901
+#: scheduler/ipp.c:7944
+#: scheduler/ipp.c:8793
+#: scheduler/ipp.c:9019
+#: scheduler/ipp.c:9368
+#: scheduler/ipp.c:9971
#, c-format
msgid "Job #%d does not exist."
msgstr "El trabajo #%d no existe."
+#: scheduler/ipp.c:3486
#, c-format
msgid "Job #%d is already aborted - can't cancel."
msgstr "El trabajo #%d ya está anulado - no se puede cancelar."
+#: scheduler/ipp.c:3480
#, c-format
msgid "Job #%d is already canceled - can't cancel."
msgstr "El trabajo #%d ya está cancelado - no se puede cancelar."
+#: scheduler/ipp.c:3492
#, c-format
msgid "Job #%d is already completed - can't cancel."
msgstr "El trabajo #%d ya ha sido completado - no se puede cancelar."
+#: scheduler/ipp.c:7702
+#: scheduler/ipp.c:7986
+#: scheduler/ipp.c:9986
#, c-format
msgid "Job #%d is finished and cannot be altered."
msgstr "El trabajo #%d ha terminado y no puede ser modificado."
+#: scheduler/ipp.c:9033
#, c-format
msgid "Job #%d is not complete."
msgstr "El trabajo #%d no ha sido completado."
+#: scheduler/ipp.c:3007
#, c-format
msgid "Job #%d is not held for authentication."
msgstr "El trabajo #%d no está retenido para autentificación."
+#: scheduler/ipp.c:8807
#, c-format
msgid "Job #%d is not held."
msgstr "El trabajo #%d no está retenido."
+#: cgi-bin/ipp-var.c:1055
msgid "Job Completed"
msgstr "Trabajo completado"
+#: cgi-bin/ipp-var.c:1053
msgid "Job Created"
msgstr "Trabajo creado"
-msgid "Job ID: "
-msgstr "ID del trabajo: "
-
+#: cgi-bin/ipp-var.c:1059
msgid "Job Options Changed"
msgstr "Opciones de trabajo cambiadas"
+#: cgi-bin/ipp-var.c:1057
msgid "Job Stopped"
msgstr "Trabajo detenido"
-msgid "Job UUID: "
-msgstr "UUID del trabajo: "
-
+#: scheduler/ipp.c:10068
msgid "Job is completed and cannot be changed."
msgstr "El trabajo está terminado y no puede ser cambiado."
-msgid "Job operation failed:"
-msgstr "La operación del trabajo ha fallado:"
+#: cgi-bin/jobs.c:198
+msgid "Job operation failed"
+msgstr "La operación del trabajo ha fallado"
+#: scheduler/ipp.c:10104
+#: scheduler/ipp.c:10123
+#: scheduler/ipp.c:10134
msgid "Job state cannot be changed."
msgstr "No se puede cambiar el estado del trabajo."
+#: scheduler/ipp.c:8899
msgid "Job subscriptions cannot be renewed."
msgstr "Las suscripciones de trabajos no han podido ser renovadas."
+#: cgi-bin/jobs.c:103
+#: cgi-bin/jobs.c:114
+#: cgi-bin/jobs.c:195
msgid "Jobs"
msgstr "Trabajos"
+#: backend/lpd.c:185
msgid "LPD/LPR Host or Printer"
msgstr "Equipo o impresora LPD/LPR"
+#: ppdc/sample.c:230
msgid "Label Printer"
msgstr "Impresora de etiquetas"
+#: ppdc/sample.c:446
msgid "Label Top"
msgstr "Parte superior de la etiqueta"
+#: scheduler/ipp.c:2070
+#: scheduler/ipp.c:5643
#, c-format
msgid "Language \"%s\" not supported."
msgstr "No se admite el uso del idioma \"%s\"."
+#: ppdc/sample.c:164
msgid "Large Address"
msgstr "Dirección grande"
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Dirección grande - 1 4/10 x 3 1/2 pulg."
-
+#: ppdc/sample.c:291
msgid "LaserJet Series PCL 4/5"
msgstr "LaserJet Series PCL 4/5"
+#: ppdc/sample.c:43
msgid "Letter Oversize"
msgstr "Carta Extragrande"
+#: ppdc/sample.c:44
msgid "Letter Oversize Long Edge"
msgstr "Carta Extragrande lado largo"
+#: ppdc/sample.c:236
msgid "Light"
msgstr "Ligero"
+#: cups/ppd.c:352
msgid "Line longer than the maximum allowed (255 characters)"
msgstr "Línea más larga que el máximo permitido (255 caracteres)"
+#: cgi-bin/admin.c:2393
msgid "List Available Printers"
msgstr "Listar impresoras disponibles"
-msgid "Loading print file."
-msgstr "Cargando archivo de impresión."
-
-msgid "Location: "
-msgstr "Ubicación: "
-
+#: ppdc/sample.c:272
msgid "Long-Edge (Portrait)"
msgstr "Lado largo (retrato)"
+#: cups/http-support.c:1558
msgid "Looking for printer."
msgstr "Buscando impresora."
-msgid "Make and Model: "
-msgstr "Marca y modelo: "
-
+#: ppdc/sample.c:268
msgid "Manual Feed"
msgstr "Alimentación manual"
-msgid "Media Dimensions: "
-msgstr "Dimensiones del papel: "
-
-msgid "Media Limits: "
-msgstr "Límites del papel: "
-
-msgid "Media Name: "
-msgstr "Nombre del soporte: "
-
+#: cups/ppd.c:789
+#: cups/ppd.c:1357
msgid "Media Size"
msgstr "Tamaño de papel"
+#: cups/ppd.c:793
+#: cups/ppd.c:1361
+#: ppdc/sample.c:262
msgid "Media Source"
msgstr "Fuente del papel"
+#: ppdc/sample.c:364
msgid "Media Tracking"
msgstr "Seguimiento del medio"
+#: cups/ppd.c:791
+#: cups/ppd.c:1359
+#: ppdc/sample.c:285
msgid "Media Type"
msgstr "Tipo de papel"
+#: ppdc/sample.c:237
msgid "Medium"
msgstr "Media"
+#: cups/ppd.c:341
msgid "Memory allocation error"
msgstr "Error de reserva de memoria"
+#: cups/ppd.c:361
msgid "Missing CloseGroup"
msgstr "Falta CloseGroup"
+#: cups/ppd.c:342
msgid "Missing PPD-Adobe-4.x header"
msgstr "Falta cabecera PPD-Adobe-4.x"
+#: cups/ppd.c:351
msgid "Missing asterisk in column 1"
msgstr "Falta un asterisco en la columna 1"
+#: scheduler/ipp.c:6119
msgid "Missing document-number attribute."
msgstr "Falta el atributo document-number."
+#: cups/adminutil.c:273
#, c-format
msgid "Missing double quote on line %d."
msgstr "Faltan dobles comillas en línea %d."
+#: cgi-bin/admin.c:736
+#: cgi-bin/admin.c:2106
+#: cgi-bin/admin.c:2191
+#: cgi-bin/admin.c:2785
+#: cgi-bin/admin.c:3039
+#: cgi-bin/admin.c:3150
+#: cgi-bin/admin.c:3860
msgid "Missing form variable"
msgstr "Falta una variable de formulario"
+#: scheduler/ipp.c:9422
msgid "Missing last-document attribute in request."
-msgstr ""
+msgstr "Falta el atributo last-document en la petición."
+#: cups/pwg-media.c:535
msgid "Missing media or media-col."
msgstr "Falta media o media-col."
+#: cups/pwg-media.c:454
msgid "Missing media-size in media-col."
msgstr "Falta media-size en media-col."
+#: scheduler/ipp.c:6673
msgid "Missing notify-subscription-ids attribute."
msgstr "Falta el atributo notify-subscription-ids."
+#: cups/ppd.c:359
msgid "Missing option keyword"
msgstr "Falta cadena de clave de opción"
+#: scheduler/ipp.c:3133
+#: scheduler/ipp.c:3158
msgid "Missing requesting-user-name attribute."
msgstr "Falta el atributo requesting-user-name."
+#: scheduler/ipp.c:461
msgid "Missing required attributes."
msgstr "Faltan atributos necesarios."
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr "Falta un valor en la línea %d del archivo de rótulo."
-
+#: cups/adminutil.c:254
#, c-format
msgid "Missing value on line %d."
msgstr "Falta un valor en la línea %d."
+#: cups/ppd.c:343
msgid "Missing value string"
msgstr "Falta cadena de valores"
+#: cups/pwg-media.c:442
msgid "Missing x-dimension in media-size."
msgstr "Falta x-dimension en media-size."
+#: cups/pwg-media.c:448
msgid "Missing y-dimension in media-size."
msgstr "Falta y-dimension en media-size."
+#: systemv/lpinfo.c:470
#, c-format
msgid ""
"Model: name = %s\n"
@@ -3408,1298 +4380,1660 @@ msgstr ""
" make-and-model = %s\n"
" device-id = %s"
+#: cgi-bin/admin.c:570
msgid "Modify Class"
msgstr "Modificar clase"
+#: cgi-bin/admin.c:882
msgid "Modify Printer"
msgstr "Modificar impresora"
+#: cgi-bin/ipp-var.c:425
+#: cgi-bin/ipp-var.c:516
msgid "Move All Jobs"
msgstr "Mover todos los trabajos"
+#: cgi-bin/ipp-var.c:364
+#: cgi-bin/ipp-var.c:423
+#: cgi-bin/ipp-var.c:514
msgid "Move Job"
msgstr "Mover trabajo"
+#: cups/http-support.c:1290
msgid "Moved Permanently"
msgstr "Movido permanentemente"
+#: cups/ppd.c:340
msgid "NULL PPD file pointer"
msgstr "Puntero de archivo PPD NULO"
+#: cups/snmp.c:1053
msgid "Name OID uses indefinite length"
msgstr "Nombre OID usa una longitud indefinida"
+#: scheduler/ipp.c:1142
msgid "Nested classes are not allowed."
msgstr "No se permiten clases anidadas."
+#: ppdc/sample.c:430
msgid "Never"
msgstr "Nunca"
+#: ppdc/sample.c:256
msgid "New Stylus Color Series"
msgstr "Nueva Stylus Color Series"
+#: ppdc/sample.c:258
msgid "New Stylus Photo Series"
msgstr "Nueva Stylus Photo Series"
+#: cups/ppd.c:1949
msgid "No"
msgstr "No"
+#: cups/http-support.c:1287
msgid "No Content"
msgstr "No hay contenido"
+#: cups/util.c:1298
msgid "No PPD name"
msgstr "No hay nombre de PPD"
+#: cups/snmp.c:1047
msgid "No VarBind SEQUENCE"
msgstr "No hay Varbind SEQUENCE"
+#: cups/adminutil.c:788
msgid "No Windows printer drivers are installed."
msgstr "No está instalado ningún controlador de impresora de Windows."
+#: cups/request.c:566
+#: cups/request.c:908
msgid "No active connection"
msgstr "No hay conexión activa"
+#: scheduler/ipp.c:3403
#, c-format
msgid "No active jobs on %s."
msgstr "No hay trabajos activos en %s."
+#: scheduler/ipp.c:302
msgid "No attributes in request."
msgstr "No hay atributos en la solicitud."
+#: scheduler/ipp.c:3034
msgid "No authentication information provided."
msgstr "No se ha proporcionado información de autentificación."
+#: cups/snmp.c:1004
msgid "No community name"
msgstr "No hay nombre de comunidad"
+#: scheduler/ipp.c:5919
msgid "No default printer."
msgstr "No hay impresora predeterminada."
+#: cgi-bin/ipp-var.c:436
+#: scheduler/ipp.c:7248
msgid "No destinations added."
msgstr "No se han añadido destinos."
+#: backend/usb.c:200
msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-"No se ha encontrado el URI del dispositivo en argv[0] o en la variable de "
-"entorno DEVICE_URI."
+msgstr "No se ha encontrado el URI del dispositivo en argv[0] o en la variable de entorno DEVICE_URI."
+#: cups/snmp.c:1034
msgid "No error-index"
msgstr "No hay error-index"
+#: cups/snmp.c:1026
msgid "No error-status"
msgstr "No hay error-status"
+#: scheduler/ipp.c:8190
+#: scheduler/ipp.c:9436
msgid "No file in print request."
msgstr "No hay ningún archivo en la petición de impresión."
-msgid "No fonts in charset file."
-msgstr "No hay fuentes en el archivo de juego de caracteres."
-
+#: cups/util.c:923
msgid "No modification time"
msgstr "No hay tiempo de modificación"
+#: cups/snmp.c:1051
msgid "No name OID"
msgstr "No hay nombre OID"
+#: filter/rastertoepson.c:1147
+#: filter/rastertohp.c:876
+#: filter/rastertolabel.c:1302
msgid "No pages were found."
msgstr "No se han encontrado páginas."
+#: cups/util.c:917
msgid "No printer name"
msgstr "No hay nombre de impresora"
+#: cups/util.c:1801
msgid "No printer-uri found"
msgstr "No se encontró printer-uri"
+#: cups/util.c:1786
msgid "No printer-uri found for class"
msgstr "No se encontró printer-uri para la clase"
+#: scheduler/ipp.c:6322
msgid "No printer-uri in request."
msgstr "No hay printer-uri en la petición."
+#: cups/snmp.c:1018
msgid "No request-id"
msgstr "No hay request-id"
+#: scheduler/ipp.c:5528
msgid "No subscription attributes in request."
msgstr "No hay atributos de subscripción en la solicitud."
+#: scheduler/ipp.c:7575
msgid "No subscriptions found."
msgstr "No se han encontrado subscripciones."
+#: cups/snmp.c:1042
msgid "No variable-bindings SEQUENCE"
msgstr "No hay variable-bindings SEQUENCE"
+#: cups/snmp.c:997
msgid "No version number"
msgstr "No hay número de versión"
+#: ppdc/sample.c:367
msgid "Non-continuous (Mark sensing)"
msgstr "No continuo (sensible a señal)"
+#: ppdc/sample.c:366
msgid "Non-continuous (Web sensing)"
msgstr "No continuo (sensible a web)"
+#: ppdc/sample.c:238
msgid "Normal"
msgstr "Normal"
+#: cups/http-support.c:1309
msgid "Not Found"
msgstr "No encontrado"
+#: cups/http-support.c:1321
msgid "Not Implemented"
msgstr "No implementado"
+#: ppdc/sample.c:276
msgid "Not Installed"
msgstr "No instalado"
+#: cups/http-support.c:1296
msgid "Not Modified"
msgstr "No modificado"
+#: cups/http-support.c:1324
msgid "Not Supported"
msgstr "No permitido"
+#: scheduler/ipp.c:1518
+#: scheduler/ipp.c:10666
msgid "Not allowed to print."
msgstr "No se permite imprimir."
+#: ppdc/sample.c:146
msgid "Note"
msgstr "Nota"
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-"Nota: este programa sólo valida los comentarios DSC, no los PostScript."
+#: systemv/cupstestdsc.c:433
+msgid "Note: this program only validates the DSC comments, not the PostScript itself."
+msgstr "Nota: este programa sólo valida los comentarios DSC, no los PostScript."
+#: cups/http-support.c:1278
+#: cups/ppd.c:338
msgid "OK"
msgstr "OK"
+#: ppdc/sample.c:271
msgid "Off (1-Sided)"
msgstr "Desactivado (1 cara)"
+#: ppdc/sample.c:361
msgid "Oki"
msgstr "Oki"
+#: cgi-bin/help.c:91
+#: cgi-bin/help.c:132
+#: cgi-bin/help.c:142
+#: cgi-bin/help.c:172
msgid "Online Help"
msgstr "Ayuda en línea"
+#: cups/adminutil.c:955
#, c-format
msgid "Open of %s failed: %s"
msgstr "La apertura de %s ha fallado: %s"
+#: cups/ppd.c:346
msgid "OpenGroup without a CloseGroup first"
msgstr "OpenGroup sin un CloseGroup previo"
+#: cups/ppd.c:348
msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
msgstr "OpenUI/JCLOpenUI sin un CloseUI/JCLCloseUI previo"
+#: cgi-bin/admin.c:3631
msgid "Operation Policy"
msgstr "Directiva de operación"
+#: filter/pstops.c:2205
#, c-format
msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
msgstr "La opción \"%s\" no puede incluirse via %%%%IncludeFeature."
+#: cgi-bin/admin.c:3281
+#: cgi-bin/admin.c:3365
msgid "Options Installed"
msgstr "Opciones instaladas"
+#: scheduler/cupsfilter.c:1430
+#: scheduler/main.c:2018
+#: systemv/cupsaddsmb.c:284
+#: systemv/cupsctl.c:203
+#: systemv/cupstestdsc.c:429
+#: systemv/cupstestppd.c:3797
+#: test/ipptool.c:4403
+#: ppdc/ppdc.cxx:437
+#: ppdc/ppdhtml.cxx:174
+#: ppdc/ppdi.cxx:130
+#: ppdc/ppdmerge.cxx:369
+#: ppdc/ppdpo.cxx:254
msgid "Options:"
msgstr "Opciones: "
-msgid "Options: "
-msgstr "Opciones: "
-
+#: cups/ppd-cache.c:156
msgid "Out of date PPD cache file."
msgstr "Archivo de caché PPD obsoleto."
+#: cups/ppd-cache.c:1381
msgid "Out of memory."
msgstr "Sin memoria."
+#: cups/ppd.c:795
+#: cups/ppd.c:1363
msgid "Output Mode"
msgstr "Modo de salida"
+#: systemv/lpstat.c:1191
+#: systemv/lpstat.c:1195
#, c-format
msgid "Output for printer %s is sent to %s"
msgstr "La salida de la impresora %s se ha enviado a %s"
+#: systemv/lpstat.c:1185
#, c-format
msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-"La salida de la impresora %s se ha enviado a la impresora remota %s en %s"
+msgstr "La salida de la impresora %s se ha enviado a la impresora remota %s en %s"
+#: systemv/lpstat.c:1209
+#: systemv/lpstat.c:1213
#, c-format
msgid "Output for printer %s/%s is sent to %s"
msgstr "La salida de la impresora %s/%s se ha enviado a %s"
+#: systemv/lpstat.c:1203
#, c-format
msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-"La salida de la impresora %s/%s se ha enviado a la impresora remota %s en %s"
+msgstr "La salida de la impresora %s/%s se ha enviado a la impresora remota %s en %s"
+#: systemv/cupstestdsc.c:399
msgid "PASS"
msgstr "PASA"
+#: ppdc/sample.c:260
msgid "PCL Laser Printer"
msgstr "Impresora Laser PCL"
+#: ppdc/sample.c:149
msgid "PRC16K"
msgstr "PRC16K"
+#: ppdc/sample.c:150
msgid "PRC16K Long Edge"
msgstr "PRC16K lado largo"
+#: ppdc/sample.c:151
msgid "PRC32K"
msgstr "PRC32K"
+#: ppdc/sample.c:154
msgid "PRC32K Long Edge"
msgstr "PRC32K lado largo"
+#: ppdc/sample.c:152
msgid "PRC32K Oversize"
msgstr "PRC32K Extragrande"
+#: ppdc/sample.c:153
msgid "PRC32K Oversize Long Edge"
msgstr "PRC32K Extragrande lado largo"
+#: cups/snmp.c:1014
msgid "Packet does not contain a Get-Response-PDU"
msgstr "El paquete no contiene un Get-Response-PDU"
+#: cups/snmp.c:993
msgid "Packet does not start with SEQUENCE"
msgstr "El paquete no empieza por SEQUENCE"
+#: ppdc/sample.c:360
msgid "ParamCustominCutInterval"
msgstr "ParamCustominCutInterval"
+#: ppdc/sample.c:358
msgid "ParamCustominTearInterval"
msgstr "ParamCustominTearInterval"
+#: cups/auth.c:199
+#: cups/auth.c:367
#, c-format
msgid "Password for %s on %s? "
msgstr "¿Contraseña de %s en %s? "
+#: systemv/cupsaddsmb.c:252
#, c-format
msgid "Password for %s required to access %s via SAMBA: "
msgstr "Se requiere la contraseña de %s para acceder a %s vía SAMBA: "
+#: cgi-bin/classes.c:167
msgid "Pause Class"
msgstr "Pausar clase"
+#: cgi-bin/printers.c:170
msgid "Pause Printer"
msgstr "Pausar impresora"
+#: ppdc/sample.c:448
msgid "Peel-Off"
msgstr "Despegar"
+#: ppdc/sample.c:160
msgid "Photo"
msgstr "Foto"
+#: ppdc/sample.c:161
msgid "Photo Labels"
msgstr "Foto pequeña"
+#: ppdc/sample.c:286
msgid "Plain Paper"
msgstr "Papel normal"
+#: cgi-bin/admin.c:3299
+#: cgi-bin/admin.c:3580
msgid "Policies"
msgstr "Reglas"
+#: cgi-bin/admin.c:3306
+#: cgi-bin/admin.c:3649
+#: cgi-bin/admin.c:3662
msgid "Port Monitor"
msgstr "Monitor de puerto"
+#: ppdc/sample.c:278
msgid "PostScript Printer"
msgstr "Impresora PostScript"
+#: ppdc/sample.c:147
msgid "Postcard"
msgstr "Postal"
+#: ppdc/sample.c:71
msgid "Postcard Double "
msgstr "Postal doble"
+#: ppdc/sample.c:72
msgid "Postcard Double Long Edge"
msgstr "Postal doble lado largo"
+#: ppdc/sample.c:148
msgid "Postcard Long Edge"
msgstr "Postal lado largo"
+#: ppdc/sample.c:295
msgid "Print Density"
msgstr "Densidad de impresión"
+#: cups/notify.c:82
msgid "Print Job:"
msgstr "Imprimir trabajo:"
+#: ppdc/sample.c:340
msgid "Print Mode"
msgstr "Modo de impresión"
+#: ppdc/sample.c:383
msgid "Print Rate"
msgstr "Tasa de impresión"
+#: cgi-bin/printers.c:179
msgid "Print Self-Test Page"
msgstr "Imprimir página de auto-prueba"
+#: ppdc/sample.c:327
msgid "Print Speed"
msgstr "Velocidad de impresión"
+#: cgi-bin/ipp-var.c:792
msgid "Print Test Page"
msgstr "Imprimir página de prueba"
+#: ppdc/sample.c:356
msgid "Print and Cut"
msgstr "Imprimir y cortar"
+#: ppdc/sample.c:344
msgid "Print and Tear"
msgstr "Imprimir y romper"
+#: backend/ipp.c:1537
#, c-format
msgid "Print file accepted - job ID %d."
msgstr "Archivo de impresión aceptado: ID de trabajo %d."
+#: backend/ipp.c:1527
msgid "Print file accepted - job ID unknown."
msgstr "Archivo de impresión aceptado: ID de trabajo desconocido."
+#: backend/socket.c:424
+#: backend/usb-unix.c:191
msgid "Print file sent."
msgstr "Archivo de impresión enviado."
+#: backend/ipp.c:1488
msgid "Print file was not accepted."
msgstr "No se ha aceptado el archivo de impresión."
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Impreso para: "
+#: backend/ipp.c:1895
+msgid "Print job canceled at printer."
+msgstr "Trabajo de impresión cancelado en la impresora."
-msgid "Printed From: "
-msgstr "Impreso desde: "
-
-msgid "Printed On: "
-msgstr "Impreso en: "
+#: backend/ipp.c:1890
+msgid "Print job too large."
+msgstr "Trabajo de impresión demasiado grande."
+#: cgi-bin/ipp-var.c:1047
msgid "Printer Added"
msgstr "Impresora añadida"
+#: ppdc/sample.c:263
msgid "Printer Default"
msgstr "Predeterminado de la impresora"
+#: cgi-bin/ipp-var.c:1051
msgid "Printer Deleted"
msgstr "Impresora borrada"
+#: cgi-bin/ipp-var.c:1049
msgid "Printer Modified"
msgstr "Impresora modificada"
-msgid "Printer Name: "
-msgstr "Nombre de la impresora: "
-
+#: cgi-bin/ipp-var.c:1045
msgid "Printer Paused"
msgstr "Impresora en pausa"
+#: ppdc/sample.c:294
msgid "Printer Settings"
msgstr "Configuración de la impresora"
-msgid "Printer busy, will retry in 10 seconds."
-msgstr "Impresora ocupada; reintento en 10 segundos."
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr "Impresora ocupada; reintento en 30 segundos."
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr "La impresora no es compatible con IPP/%d.%d, probando IPP/%s."
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr "La impresora está ocupada, reintento en 5 segundos."
-
-msgid "Printer is not currently connected."
-msgstr "La impresora está sin conexión en estos momentos."
-
-msgid "Printer is now connected."
-msgstr "La impresora ya tiene conexión."
-
-msgid "Printer is now online."
-msgstr "La impresora ya está en línea."
-
-msgid "Printer is offline."
-msgstr "La impresora está fuera de línea."
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr "Impresora no conectada, reintento en 30 segundos."
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr "Impresora no conectada; reintento en 30 segundos."
+#: backend/ipp.c:1893
+msgid "Printer cannot print supplied content."
+msgstr "La impresora no puede imprimir el contenido suministrado."
+#: cups/notify.c:126
msgid "Printer:"
msgstr "Impresora:"
+#: cgi-bin/printers.c:204
+#: cgi-bin/printers.c:332
msgid "Printers"
msgstr "Impresoras"
+#: filter/rastertoepson.c:1093
+#: filter/rastertohp.c:817
+#: filter/rastertolabel.c:1249
#, c-format
msgid "Printing page %d, %d%% complete."
msgstr "Imprimiendo página %d, %d%% completado."
-#, c-format
-msgid "Printing page %d."
-msgstr "Imprimiendo página %d."
-
+#: cgi-bin/classes.c:173
+#: cgi-bin/printers.c:176
msgid "Purge Jobs"
msgstr "Purgar trabajos"
+#: ppdc/sample.c:155
msgid "Quarto"
msgstr "Quarto"
+#: scheduler/ipp.c:1513
+#: scheduler/ipp.c:10661
msgid "Quota limit reached."
msgstr "Se ha alcanzado el límite de cuota."
+#: berkeley/lpq.c:515
msgid "Rank Owner Job File(s) Total Size"
msgstr "Rango Propiet. Trabajo Archivo(s) Tamaño total"
#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-"Rango Propiet. Pri Trabajo Archivos Tamaño total"
-
-msgid "Ready to print."
-msgstr "Lista para imprimir."
+#: berkeley/lpq.c:511
+msgid "Rank Owner Pri Job Files Total Size"
+msgstr "Rango Propiet. Pri Trabajo Archivos Tamaño total"
+#: cgi-bin/classes.c:171
+#: cgi-bin/printers.c:174
msgid "Reject Jobs"
msgstr "Rechazar trabajos"
+#: backend/lpd.c:1016
+#: backend/lpd.c:1148
#, c-format
msgid "Remote host did not accept control file (%d)."
msgstr "El ordenador remoto no ha aceptado el archivo de control (%d)."
+#: backend/lpd.c:1101
#, c-format
msgid "Remote host did not accept data file (%d)."
msgstr "El ordenador remoto no ha aceptado el archivo de datos (%d)."
+#: ppdc/sample.c:428
msgid "Reprint After Error"
msgstr "Volver a imprimir tras un error"
+#: cups/http-support.c:1312
msgid "Request Entity Too Large"
msgstr "La entidad requerida es demasiado larga"
+#: cups/ppd.c:797
+#: cups/ppd.c:1365
+#: ppdc/sample.c:231
msgid "Resolution"
msgstr "Resolución"
+#: cgi-bin/classes.c:165
msgid "Resume Class"
msgstr "Reanudar clase"
+#: cgi-bin/printers.c:167
msgid "Resume Printer"
msgstr "Reanudar impresora"
+#: ppdc/sample.c:165
msgid "Return Address"
msgstr "Remite"
-msgid "Return Address - 3/4 x 2\""
-msgstr "Remite - 3/4 x 2 pulg."
-
+#: ppdc/sample.c:449
msgid "Rewind"
msgstr "Rebobinar"
+#: cups/adminutil.c:2052
#, c-format
msgid "Running command: %s %s -N -A %s -c '%s'"
msgstr "Ejecutando comando: %s %s -N -A %s -c '%s'"
+#: cups/snmp.c:995
msgid "SEQUENCE uses indefinite length"
msgstr "SEQUENCE usa una longitud indefinida"
+#: cups/http-support.c:1336
msgid "SSL/TLS Negotiation Error"
msgstr "Error en negociación SSL/TLS"
+#: cups/http-support.c:1293
msgid "See Other"
msgstr "Ver otros"
+#: backend/usb-darwin.c:543
+#: backend/usb-libusb.c:273
msgid "Sending data to printer."
msgstr "Enviando datos a la impresora."
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Puerto serie #%d"
-
+#: cgi-bin/ipp-var.c:1061
msgid "Server Restarted"
msgstr "Servidor reiniciado"
+#: cgi-bin/ipp-var.c:1067
msgid "Server Security Auditing"
msgstr "Auditoría de seguridad del servidor"
+#: cgi-bin/ipp-var.c:1063
msgid "Server Started"
msgstr "Servidor iniciado"
+#: cgi-bin/ipp-var.c:1065
msgid "Server Stopped"
msgstr "Servidor parado"
+#: cups/http-support.c:1330
msgid "Service Unavailable"
msgstr "Servicio no disponible"
+#: cgi-bin/admin.c:2786
+#: cgi-bin/admin.c:2832
+#: cgi-bin/admin.c:2989
+#: cgi-bin/admin.c:3008
msgid "Set Allowed Users"
msgstr "Establecer usuarios permitidos"
+#: cgi-bin/admin.c:3035
msgid "Set As Server Default"
msgstr "Establecer como predeterminada del servidor"
+#: cgi-bin/admin.c:3135
msgid "Set Class Options"
msgstr "Cambiar opciones clase"
+#: cgi-bin/admin.c:3135
+#: cgi-bin/admin.c:3309
+#: cgi-bin/admin.c:3691
msgid "Set Printer Options"
msgstr "Cambiar opciones impresora"
+#: cgi-bin/admin.c:3861
+#: cgi-bin/admin.c:3905
+#: cgi-bin/admin.c:3923
msgid "Set Publishing"
msgstr "Hacer pública"
+#: ppdc/sample.c:166
msgid "Shipping Address"
msgstr "Dirección de envío"
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Dirección de envío - 2 5/16 x 4 pulg."
-
+#: ppdc/sample.c:273
msgid "Short-Edge (Landscape)"
msgstr "Lado corto (apaisado)"
+#: ppdc/sample.c:288
msgid "Special Paper"
msgstr "Papel especial"
+#: backend/lpd.c:1057
#, c-format
msgid "Spooling job, %.0f%% complete."
msgstr "Guardando trabajo en cola, %.0f%% completado."
+#: ppdc/sample.c:341
msgid "Standard"
msgstr "Estándar"
#. TRANSLATORS: Banner/cover sheet before the print job.
+#: cgi-bin/admin.c:3552
msgid "Starting Banner"
msgstr "Rótulo inicial"
+#: filter/rastertoepson.c:1069
+#: filter/rastertohp.c:793
+#: filter/rastertolabel.c:1225
#, c-format
msgid "Starting page %d."
msgstr "Iniciando página %d."
+#: ppdc/sample.c:156
msgid "Statement"
msgstr "Declaración"
+#: ppdc/sample.c:251
msgid "Stylus Color Series"
msgstr "Stylus Color Series"
+#: ppdc/sample.c:257
msgid "Stylus Photo Series"
msgstr "Stylus Photo Series"
+#: scheduler/ipp.c:3549
+#: scheduler/ipp.c:6689
+#: scheduler/ipp.c:7388
+#: scheduler/ipp.c:8887
#, c-format
msgid "Subscription #%d does not exist."
msgstr "Subscripción #%d no existe."
+#: ppdc/sample.c:157
msgid "Super A"
msgstr "Super A"
+#: ppdc/sample.c:158
msgid "Super B"
msgstr "Super B (13 x 19 pulg.)"
+#: ppdc/sample.c:162
msgid "Super B/A3"
msgstr "Super B/A3"
+#: cups/http-support.c:1275
msgid "Switching Protocols"
msgstr "Protocolos de conexión"
+#: ppdc/sample.c:159
msgid "Tabloid"
msgstr "Tabloide"
+#: ppdc/sample.c:45
msgid "Tabloid Oversize"
msgstr "Tabloide Extragrande"
+#: ppdc/sample.c:46
msgid "Tabloid Oversize Long Edge"
msgstr "Tabloide Extragrande lado largo"
+#: ppdc/sample.c:342
msgid "Tear"
msgstr "Pestaña"
+#: ppdc/sample.c:447
msgid "Tear-Off"
msgstr "Pestaña desprendible"
+#: ppdc/sample.c:388
msgid "Tear-Off Adjust Position"
msgstr "Ajuste de posición de la pestaña desprendible"
+#: scheduler/ipp.c:6393
+#: scheduler/ipp.c:6471
+#: scheduler/ipp.c:6487
+#: scheduler/ipp.c:6505
#, c-format
msgid "The %s attribute cannot be provided with job-ids."
msgstr "El atributo %s no puede ser usado con jobs-ids."
+#: scheduler/ipp.c:5118
+#, c-format
+msgid "The '%s' operation attribute cannot be supplied in a Create-Job request."
+msgstr "El atributo de operación '%s' no puede ser suministrado en una petición Create-Job."
+
+#: scheduler/ipp.c:6919
#, c-format
msgid "The PPD file \"%s\" could not be found."
msgstr "No se ha podido encontrar el archivo PPD \"%s\"."
+#: scheduler/ipp.c:6906
#, c-format
msgid "The PPD file \"%s\" could not be opened: %s"
msgstr "No se ha podido abrir el archivo PPD \"%s\": %s"
+#: filter/rastertoepson.c:1038
+#: filter/rastertohp.c:764
+#: filter/rastertolabel.c:1189
msgid "The PPD file could not be opened."
msgstr "No se ha podido abrir el archivo PPD."
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"El nombre de la clase sólo puede contener hasta 127 caracteres imprimibles y "
-"no puede contener espacios, barras (/), o la almohadilla (#)."
+#: cgi-bin/admin.c:749
+msgid "The class name may only contain up to 127 printable characters and may not contain spaces, slashes (/), or the pound sign (#)."
+msgstr "El nombre de la clase sólo puede contener hasta 127 caracteres imprimibles y no puede contener espacios, barras (/), o la almohadilla (#)."
+#: cups/localize.c:353
msgid "The developer unit needs to be replaced."
msgstr "La unidad de revelado debe ser reemplazada"
+#: cups/localize.c:351
msgid "The developer unit will need to be replaced soon."
msgstr "La unidad de revelado necesitará ser cambiada pronto."
+#: cups/localize.c:343
msgid "The fuser's temperature is high."
msgstr "Temperatura del fusor alta"
+#: cups/localize.c:345
msgid "The fuser's temperature is low."
msgstr "Temperatura del fusor baja"
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"El atributo notify-lease-duration no puede ser usado con subscripciones de "
-"trabajos."
+#: scheduler/ipp.c:2097
+msgid "The notify-lease-duration attribute cannot be used with job subscriptions."
+msgstr "El atributo notify-lease-duration no puede ser usado con subscripciones de trabajos."
+#: scheduler/ipp.c:2080
+#: scheduler/ipp.c:5653
#, c-format
msgid "The notify-user-data value is too large (%d > 63 octets)."
msgstr "El valor notify-user-data es demasiado grande (%d > 63 octetos)."
+#: cups/localize.c:349
msgid "The optical photoconductor needs to be replaced."
msgstr "El fotoconductor óptico necesita ser cambiado."
+#: cups/localize.c:347
msgid "The optical photoconductor will need to be replaced soon."
msgstr "El fotoconductor óptico necesitará ser cambiado pronto."
+#: cups/localize.c:331
msgid "The output bin is almost full."
msgstr "Recipiente de salida casi lleno"
+#: cups/localize.c:333
msgid "The output bin is full."
msgstr "Bandeja de salida llena."
+#: cups/localize.c:329
msgid "The output bin is missing."
msgstr "Falta la bandeja de salida."
-msgid "The page setup information was not valid."
-msgstr "La información de configuración de página no era válida."
-
+#: cups/localize.c:325
msgid "The paper tray is almost empty."
msgstr "Bandeja de papel casi vacía."
+#: cups/localize.c:327
msgid "The paper tray is empty."
msgstr "Bandeja de papel vacía."
+#: cups/localize.c:323
msgid "The paper tray is missing."
msgstr "Falta la bandeja de papel."
+#: cups/localize.c:306
msgid "The paper tray needs to be filled."
msgstr "Hay que poner papel en la bandeja."
-msgid "The print file could not be opened."
-msgstr "No se ha podido abrir el archivo de impresión."
-
+#: backend/ipp.c:909
msgid "The printer URI is incorrect or no longer exists."
msgstr "El URI de la impresora es incorrecto o ya no existe."
-msgid "The printer is busy."
-msgstr "La impresora está ocupada."
+#: backend/lpd.c:619
+#: backend/lpd.c:1009
+#: backend/lpd.c:1091
+#: backend/lpd.c:1141
+msgid "The printer did not respond."
+msgstr "La impresora no respondió."
+
+#: backend/ipp.c:892
+#: backend/ipp.c:899
+#, c-format
+msgid "The printer does not support IPP/%d.%d, trying IPP/%s."
+msgstr "La impresora no es compatible con IPP/%d.%d, probando IPP/%s."
+#: backend/ipp.c:757
+#: backend/ipp.c:874
+#: backend/ipp.c:980
+#: backend/ipp.c:1313
+#: backend/ipp.c:1464
+#: backend/lpd.c:828
+#: backend/socket.c:374
+#: backend/usb-unix.c:131
+#: backend/usb-unix.c:424
+#: backend/usb-unix.c:507
+msgid "The printer is in use."
+msgstr "La impresora está en uso."
+
+#: backend/runloop.c:254
+#: backend/runloop.c:374
+#: cups/localize.c:311
msgid "The printer is not connected."
msgstr "La impresora no está conectada."
+#: backend/ipp.c:735
+#: backend/ipp.c:768
+#: backend/ipp.c:870
+#: backend/lpd.c:807
+#: backend/lpd.c:848
+#: backend/socket.c:353
+#: backend/socket.c:386
msgid "The printer is not responding."
msgstr "La impresora no responde."
-msgid "The printer is out of ink."
-msgstr "La impresora no tiene tinta."
+#: backend/runloop.c:396
+msgid "The printer is now connected."
+msgstr "La impresora está ahora conectada."
+#: backend/usb-darwin.c:1286
+msgid "The printer is now online."
+msgstr "La impresora está ahora en línea."
+
+#: backend/usb-darwin.c:1307
+msgid "The printer is offline."
+msgstr "La impresora está fuera de línea."
+
+#: cups/localize.c:335
msgid "The printer is running low on ink."
-msgstr ""
+msgstr "La impresora está funcionando con poca tinta."
+#: cups/localize.c:313
msgid "The printer is running low on toner."
-msgstr ""
+msgstr "La impresora está funcionando con poco toner."
+#: backend/ipp.c:750
+#: backend/lpd.c:821
+#: backend/socket.c:367
msgid "The printer is unreachable at this time."
msgstr "La impresora es inalcanzable en este momento."
+#: cups/localize.c:337
+msgid "The printer may be out of ink."
+msgstr "La impresora puede que no tenga tinta."
+
+#: cups/localize.c:315
msgid "The printer may be out of toner."
-msgstr ""
+msgstr "La impresora puede que esté sin toner."
+#: backend/ipp.c:744
+#: backend/lpd.c:815
+#: backend/socket.c:361
msgid "The printer may not exist or is unavailable at this time."
msgstr "La impresora puede no existir o no estar disponible en este momento."
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"El nombre de la impresora sólo puede contener hasta 127 caracteres "
-"imprimibles y no puede contener espacios, barras (/), o la almohadilla (#)."
-
+#: cgi-bin/admin.c:931
+msgid "The printer name may only contain up to 127 printable characters and may not contain spaces, slashes (/), or the pound sign (#)."
+msgstr "El nombre de la impresora sólo puede contener hasta 127 caracteres imprimibles y no puede contener espacios, barras (/), o la almohadilla (#)."
+
+#: scheduler/ipp.c:876
+#: scheduler/ipp.c:1136
+#: scheduler/ipp.c:3198
+#: scheduler/ipp.c:3369
+#: scheduler/ipp.c:5101
+#: scheduler/ipp.c:5487
+#: scheduler/ipp.c:5801
+#: scheduler/ipp.c:6359
+#: scheduler/ipp.c:7124
+#: scheduler/ipp.c:7180
+#: scheduler/ipp.c:7494
+#: scheduler/ipp.c:7760
+#: scheduler/ipp.c:7849
+#: scheduler/ipp.c:7882
+#: scheduler/ipp.c:8205
+#: scheduler/ipp.c:8598
+#: scheduler/ipp.c:8679
+#: scheduler/ipp.c:9840
+#: scheduler/ipp.c:10294
+#: scheduler/ipp.c:10624
+#: scheduler/ipp.c:10706
+#: scheduler/ipp.c:10998
msgid "The printer or class does not exist."
msgstr "La impresora o clase no existe."
+#: scheduler/ipp.c:1304
msgid "The printer or class is not shared."
msgstr "La impresora o clase no está compartida."
+#: cups/localize.c:317
msgid "The printer's cover is open."
msgstr "La tapa de la impresora está abierta."
+#: cups/localize.c:321
msgid "The printer's door is open."
msgstr "La puerta de la impresora está abierta."
+#: cups/localize.c:319
msgid "The printer's interlock is open."
msgstr "El dispositivo de seguridad de la impresora está abierto."
+#: cups/localize.c:339
msgid "The printer's waste bin is almost full."
msgstr "Recipiente de residuos de la impresora está casi lleno."
+#: cups/localize.c:341
msgid "The printer's waste bin is full."
msgstr "Recipiente de residuos de la impresora está lleno."
+#: scheduler/ipp.c:982
+#: scheduler/ipp.c:2261
#, c-format
msgid "The printer-uri \"%s\" contains invalid characters."
msgstr "El printer-uri \"%s\" contiene caracteres no válidos."
+#: scheduler/ipp.c:3175
msgid "The printer-uri attribute is required."
msgstr "Se necesita el atributo printer-uri."
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"El printer-uri debe ser de la forma \"ipp://NOMBRE_ORDENADOR/classes/"
-"NOMBRE_CLASE\"."
+#: scheduler/ipp.c:966
+msgid "The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
+msgstr "El printer-uri debe ser de la forma \"ipp://NOMBRE_ORDENADOR/classes/NOMBRE_CLASE\"."
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"El printer-uri debe ser de la forma \"ipp://NOMBRE_ORDENADOR/printers/"
-"NOMBRE_IMPRESORA\"."
+#: scheduler/ipp.c:2245
+msgid "The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
+msgstr "El printer-uri debe ser de la forma \"ipp://NOMBRE_ORDENADOR/printers/NOMBRE_IMPRESORA\"."
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"El nombre de la subscripción no puede contener espacios, barras (/), signos "
-"de interrogación (?), o la almohadilla (#)."
+#: cgi-bin/admin.c:474
+msgid "The subscription name may not contain spaces, slashes (/), question marks (?), or the pound sign (#)."
+msgstr "El nombre de la subscripción no puede contener espacios, barras (/), signos de interrogación (?), o la almohadilla (#)."
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-"La interfaz web está desactivada en este momento. Ejecute \"cupsctl "
-"WebInterface=yes\" para activarla."
+#: scheduler/client.c:2450
+msgid "The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to enable it."
+msgstr "La interfaz web está desactivada en este momento. Ejecute \"cupsctl WebInterface=yes\" para activarla."
+#: scheduler/ipp.c:6454
#, c-format
msgid "The which-jobs value \"%s\" is not supported."
msgstr "No se admite el uso del valor which-jobs \"%s\"."
+#: scheduler/ipp.c:5731
msgid "There are too many subscriptions."
msgstr "Hay demasiadas subscripciones."
+#: cups/localize.c:308
msgid "There is a paper jam."
msgstr "Hay un atasco de papel."
+#: backend/usb-darwin.c:379
+#: backend/usb-darwin.c:438
+#: backend/usb-darwin.c:505
+#: backend/usb-darwin.c:526
+#: backend/usb-libusb.c:235
+#: backend/usb-libusb.c:256
msgid "There was an unrecoverable USB error."
msgstr "Ha habido un error USB irrecuperable."
+#: ppdc/sample.c:435
msgid "Thermal Transfer Media"
msgstr "Soporte de transferencia térmica"
-msgid "Title: "
-msgstr "Título: "
-
+#: scheduler/ipp.c:1507
msgid "Too many active jobs."
msgstr "Demasiados trabajos activos."
+#: scheduler/ipp.c:1401
#, c-format
msgid "Too many job-sheets values (%d > 2)."
msgstr "Demasiados valores de job-sheets (%d > 2)."
+#: scheduler/ipp.c:2529
#, c-format
msgid "Too many printer-state-reasons values (%d > %d)."
msgstr "Demasiados valores printer-state-reasons (%d > %d)."
+#: ppdc/sample.c:289
msgid "Transparency"
msgstr "Transparencia"
+#: ppdc/sample.c:284
msgid "Tray"
msgstr "Bandeja"
+#: ppdc/sample.c:264
msgid "Tray 1"
msgstr "Bandeja 1"
+#: ppdc/sample.c:265
msgid "Tray 2"
msgstr "Bandeja 2"
+#: ppdc/sample.c:266
msgid "Tray 3"
msgstr "Bandeja 3"
+#: ppdc/sample.c:267
msgid "Tray 4"
msgstr "Bandeja 4"
+#: cups/http-support.c:1315
msgid "URI Too Long"
msgstr "URI demasiado largo"
+#: ppdc/sample.c:138
msgid "US Ledger"
msgstr "Libro Mayor, 17 x 11 pulg."
+#: ppdc/sample.c:139
msgid "US Legal"
msgstr "Legal EE.UU."
+#: ppdc/sample.c:140
msgid "US Legal Oversize"
msgstr "Legal EE.UU. Extragrande"
+#: ppdc/sample.c:141
msgid "US Letter"
msgstr "Carta EE.UU."
+#: ppdc/sample.c:142
msgid "US Letter Long Edge"
msgstr "Carta EE.UU. lado largo"
+#: ppdc/sample.c:143
msgid "US Letter Oversize"
msgstr "Carta EE.UU. Extragrande"
+#: ppdc/sample.c:144
msgid "US Letter Oversize Long Edge"
msgstr "Carta EE.UU. Extragrande lado largo"
+#: ppdc/sample.c:145
msgid "US Letter Small"
msgstr "Carta EE.UU. Pequeña"
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "Puerto serie USB #%d"
-
-msgid "Unable to access cupsd.conf file:"
+#: cgi-bin/admin.c:1959
+#: cgi-bin/admin.c:1972
+#: cgi-bin/admin.c:1996
+msgid "Unable to access cupsd.conf file"
msgstr "No se ha podido acceder al archivo cupsd.conf"
-msgid "Unable to add RSS subscription:"
-msgstr "No se ha podido añadir la subscripción RSS:"
+#: cgi-bin/help.c:133
+msgid "Unable to access help file."
+msgstr "No se ha podido acceder al archivo de ayuda."
+
+#: cgi-bin/admin.c:526
+msgid "Unable to add RSS subscription"
+msgstr "No se ha podido añadir la subscripción RSS"
-msgid "Unable to add class:"
-msgstr "No se ha podido añadir la clase:"
+#: cgi-bin/admin.c:814
+msgid "Unable to add class"
+msgstr "No se ha podido añadir la clase"
+#: backend/ipp.c:1635
msgid "Unable to add document to print job."
msgstr "No se ha podido añadir el documento al trabajo de impresión."
+#: scheduler/ipp.c:1548
#, c-format
msgid "Unable to add job for destination \"%s\"."
msgstr "No se ha podido añadir el trabajo para el destino \"%s\"."
-msgid "Unable to add printer:"
-msgstr "No se ha podido añadir la impresora:"
+#: cgi-bin/admin.c:1059
+#: cgi-bin/admin.c:1419
+msgid "Unable to add printer"
+msgstr "No se ha podido añadir la impresora"
+#: scheduler/ipp.c:1246
msgid "Unable to allocate memory for file types."
msgstr "No se ha podido reservar memoria para tipos de archivo."
+#: filter/pstops.c:451
msgid "Unable to allocate memory for page info"
msgstr "No se ha podido reservar memoria para la información de página."
+#: filter/pstops.c:445
msgid "Unable to allocate memory for pages array"
msgstr "No se ha podido reservar memoria para la secuencia de páginas"
-msgid "Unable to cancel RSS subscription:"
-msgstr "No se ha podido cancelar la subscripción RSS:"
+#: cgi-bin/admin.c:1525
+msgid "Unable to cancel RSS subscription"
+msgstr "No se ha podido cancelar la subscripción RSS"
+#: backend/ipp.c:1942
msgid "Unable to cancel print job."
msgstr "No se ha podido cancelar el trabajo de impresión."
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "No se ha podido cambiar el atributo printer-is-shared:"
+#: cgi-bin/admin.c:2990
+msgid "Unable to change printer"
+msgstr "No se ha podido cambiar la impresora"
-msgid "Unable to change printer:"
-msgstr "No se ha podido cambiar la impresora:"
+#: cgi-bin/admin.c:3906
+msgid "Unable to change printer-is-shared attribute"
+msgstr "No se ha podido cambiar el atributo printer-is-shared"
-msgid "Unable to change server settings:"
-msgstr "No se ha podido cambiar la configuración del servidor:"
+#: cgi-bin/admin.c:1657
+#: cgi-bin/admin.c:1799
+msgid "Unable to change server settings"
+msgstr "No se ha podido cambiar la configuración del servidor"
+#: filter/commandtops.c:420
msgid "Unable to configure printer options."
-msgstr ""
+msgstr "No se han podido configurar las opciones de impresión."
+#: cups/adminutil.c:911
+#: cups/request.c:1016
msgid "Unable to connect to host."
msgstr "No se ha podido conectar al servidor."
+#: backend/ipp.c:713
+#: backend/ipp.c:1138
+#: backend/lpd.c:787
+#: backend/socket.c:333
+#: backend/usb-unix.c:117
msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-"No se ha podido contactar con la impresora; poniendo en cola en la siguiente "
-"impresora de la clase."
+msgstr "No se ha podido contactar con la impresora; poniendo en cola en la siguiente impresora de la clase."
+#: cups/adminutil.c:726
#, c-format
msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-"No se han podido copiar los archivos del controlador de impresora de 64-bit "
-"de CUPS (%d)."
+msgstr "No se han podido copiar los archivos del controlador de impresora de 64-bit de CUPS (%d)."
+#: cups/adminutil.c:691
#, c-format
msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-"No se han podido copiar los archivos del controlador de impresora de 64-bit "
-"de Windows (%d)."
+msgstr "No se han podido copiar los archivos del controlador de impresora de 64-bit de Windows (%d)."
+#: cups/adminutil.c:522
#, c-format
msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-"No se han podido copiar los archivos del controlador de impresora de CUPS (%"
-"d)."
+msgstr "No se han podido copiar los archivos del controlador de impresora de CUPS (%d)."
+#: scheduler/ipp.c:2649
#, c-format
msgid "Unable to copy PPD file - %s"
msgstr "No se ha podido copiar el archivo PPD - %s"
+#: scheduler/ipp.c:2704
msgid "Unable to copy PPD file."
msgstr "No se ha podido copiar el archivo PPD."
+#: cups/adminutil.c:487
#, c-format
msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-"No se han podido copiar los archivos del controlador de impresora de Windows "
-"2000 (%d)."
+msgstr "No se han podido copiar los archivos del controlador de impresora de Windows 2000 (%d)."
+#: cups/adminutil.c:610
#, c-format
msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-"No se han podido copiar los archivos del controlador de impresora de Windows "
-"9x (%d)."
+msgstr "No se han podido copiar los archivos del controlador de impresora de Windows 9x (%d)."
+#: scheduler/ipp.c:2626
#, c-format
msgid "Unable to copy interface script - %s"
msgstr "No se ha podido copiar el script de interfaz - %s"
-msgid "Unable to copy print file"
-msgstr "No se ha podido copiar el archivo de impresión"
-
+#: backend/ipp.c:2034
msgid "Unable to create compressed print file"
msgstr "No se ha podido crear el archivo de impresión comprimido"
-msgid "Unable to create pipes for filters"
-msgstr "No se han podido crear tuberías (pipes) para filtros"
-
+#: cups/util.c:602
+#: cups/util.c:1656
msgid "Unable to create printer-uri"
msgstr "No se ha podido crear printer-uri"
+#: cgi-bin/admin.c:1850
+#: cgi-bin/admin.c:1862
+#: scheduler/cupsfilter.c:1236
msgid "Unable to create temporary file"
msgstr "No se ha podido crear el archivo temporal"
-msgid "Unable to create temporary file:"
-msgstr "No se ha podido crear el archivo temporal:"
+#: cgi-bin/admin.c:2153
+msgid "Unable to delete class"
+msgstr "No se ha podido borrar la clase"
-msgid "Unable to delete class:"
-msgstr "No se ha podido borrar la clase:"
+#: cgi-bin/admin.c:2238
+msgid "Unable to delete printer"
+msgstr "No se ha podido borrar la impresora"
-msgid "Unable to delete printer:"
-msgstr "No se ha podido borrar la impresora:"
-
-msgid "Unable to do maintenance command:"
-msgstr "No se ha podido realizar el comando de mantenimiento:"
+#: cgi-bin/classes.c:260
+#: cgi-bin/printers.c:269
+msgid "Unable to do maintenance command"
+msgstr "No se ha podido realizar el comando de mantenimiento"
+#: cgi-bin/admin.c:1974
msgid "Unable to edit cupsd.conf files larger than 1MB"
msgstr "No se pueden editar archivos cupsd.conf mayores de 1MB"
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-"No se ha podido establecer una conexión segura con el servidor (cadena "
-"certificado incorrecta)."
+#: cups/http.c:4272
+msgid "Unable to establish a secure connection to host (certificate chain invalid)."
+msgstr "No se ha podido establecer una conexión segura con el servidor (cadena certificado incorrecta)."
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-"No se ha podido establecer una conexión segura con el servidor (el "
-"certificado aún no es válido)."
+#: cups/http.c:4262
+msgid "Unable to establish a secure connection to host (certificate not yet valid)."
+msgstr "No se ha podido establecer una conexión segura con el servidor (el certificado aún no es válido)."
+#: cups/http.c:4257
msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-"No se ha podido establecer una conexión segura con el servidor (certificado "
-"caducado)."
+msgstr "No se ha podido establecer una conexión segura con el servidor (certificado caducado)."
+#: cups/http.c:4267
msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-"No se ha podido establecer una conexión segura con el servidor (el nombre de "
-"ordenador no coincide)."
+msgstr "No se ha podido establecer una conexión segura con el servidor (el nombre de ordenador no coincide)."
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-"No se ha podido establecer una conexión segura con el servidor (el par cortó "
-"la conexión antes de responder)."
+#: cups/http.c:4277
+msgid "Unable to establish a secure connection to host (peer dropped connection before responding)."
+msgstr "No se ha podido establecer una conexión segura con el servidor (el par cortó la conexión antes de responder)."
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-"No se ha podido establecer una conexión segura con el servidor (certificado "
-"auto-firmado)."
+#: cups/http.c:4252
+msgid "Unable to establish a secure connection to host (self-signed certificate)."
+msgstr "No se ha podido establecer una conexión segura con el servidor (certificado auto-firmado)."
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-"No se ha podido establecer una conexión segura con el servidor (certificado "
-"no seguro)."
+#: cups/http.c:4247
+msgid "Unable to establish a secure connection to host (untrusted certificate)."
+msgstr "No se ha podido establecer una conexión segura con el servidor (certificado no seguro)."
+#: cups/http.c:4008
+#: cups/http.c:4304
+#: cups/http.c:4337
+#: cups/http.c:4354
msgid "Unable to establish a secure connection to host."
msgstr "No se ha podido establecer una conexión segura al servidor."
+#: cgi-bin/ipp-var.c:365
msgid "Unable to find destination for job"
msgstr "No se ha podido encontrar destino para el trabajo"
+#: cups/http-support.c:1748
msgid "Unable to find printer."
msgstr "No se ha podido encontrar la impresora."
-msgid "Unable to fork filter"
-msgstr "No se ha podido bifurcar (fork) el filtro"
-
+#: backend/ipp.c:2056
msgid "Unable to generate compressed print file"
msgstr "No se ha podido crear el archivo de impresión comprimido"
+#: backend/ipp.c:3009
msgid "Unable to get backend exit status."
msgstr "No se ha podido obtener el estado de salida del programa backend"
-msgid "Unable to get class list:"
-msgstr "No se ha podido obtener la lista de clases:"
+#: cgi-bin/classes.c:450
+msgid "Unable to get class list"
+msgstr "No se ha podido obtener la lista de clases"
+
+#: cgi-bin/classes.c:549
+msgid "Unable to get class status"
+msgstr "No se ha podido obtener el estado de la clase"
-msgid "Unable to get class status:"
-msgstr "No se ha podido obtener el estado de la clase:"
+#: cgi-bin/admin.c:1320
+msgid "Unable to get list of printer drivers"
+msgstr "No se ha podido obtener la lista de controladores de impresora"
-msgid "Unable to get list of printer drivers:"
-msgstr "No se ha podido obtener la lista de controladores de impresora:"
+#: cgi-bin/admin.c:2840
+msgid "Unable to get printer attributes"
+msgstr "No se han podido obtener los atributos de la impresora"
-msgid "Unable to get printer attributes:"
-msgstr "No se han podido obtener los atributos de la impresora:"
+#: cgi-bin/printers.c:467
+msgid "Unable to get printer list"
+msgstr "No se ha podido obtener la lista de impresoras"
-msgid "Unable to get printer list:"
-msgstr "No se ha podido obtener la lista de impresoras:"
+#: cgi-bin/printers.c:569
+msgid "Unable to get printer status"
+msgstr "No se ha podido obtener el estado de la impresora"
+#: backend/ipp.c:933
msgid "Unable to get printer status."
msgstr "No se ha podido obtener el estado de la impresora."
-msgid "Unable to get printer status:"
-msgstr "No se ha podido obtener el estado de la impresora"
-
+#: cups/adminutil.c:565
+#: cups/adminutil.c:769
#, c-format
msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-"No se han podido instalar los archivos del controlador de impresora de "
-"Windows 2000 (%d)."
+msgstr "No se han podido instalar los archivos del controlador de impresora de Windows 2000 (%d)."
+#: cups/adminutil.c:639
#, c-format
msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-"No se han podido instalar los archivos del controlador de impresora de "
-"Windows 9x (%d)."
+msgstr "No se han podido instalar los archivos del controlador de impresora de Windows 9x (%d)."
+
+#: cgi-bin/help.c:92
+msgid "Unable to load help index."
+msgstr "No se ha podido cargar el índice de ayuda."
+#: backend/ipp.c:642
+#: backend/lpd.c:421
+#: backend/socket.c:275
#, c-format
msgid "Unable to locate printer \"%s\"."
msgstr "No se ha podido localizar la impresora \"%s\"."
+#: backend/dnssd.c:781
+#: backend/ipp.c:324
+#: backend/lpd.c:204
+#: backend/socket.c:171
msgid "Unable to locate printer."
msgstr "No se ha podido localizar la impresora."
-msgid "Unable to modify class:"
-msgstr "No se ha podido modificar la clase:"
+#: cgi-bin/admin.c:813
+msgid "Unable to modify class"
+msgstr "No se ha podido modificar la clase"
-msgid "Unable to modify printer:"
-msgstr "No se ha podido modificar la impresora:"
+#: cgi-bin/admin.c:1058
+#: cgi-bin/admin.c:1418
+msgid "Unable to modify printer"
+msgstr "No se ha podido modificar la impresora"
+#: cgi-bin/ipp-var.c:432
+#: cgi-bin/ipp-var.c:521
msgid "Unable to move job"
msgstr "No se ha podido mover el trabajo"
+#: cgi-bin/ipp-var.c:434
+#: cgi-bin/ipp-var.c:523
msgid "Unable to move jobs"
msgstr "No se han podido mover los trabajos"
+#: cgi-bin/admin.c:3186
+#: cups/ppd.c:339
msgid "Unable to open PPD file"
msgstr "No se ha podido abrir el archivo PPD"
-msgid "Unable to open PPD file:"
-msgstr "No se ha podido abrir el archivo PPD:"
-
-msgid "Unable to open charset file"
-msgstr "No se ha podido abrir el archivo del juego de caracteres"
-
+#: backend/ipp.c:2040
msgid "Unable to open compressed print file"
msgstr "No se ha podido abrir el archivo de impresión comprimido"
+#: cgi-bin/admin.c:2608
msgid "Unable to open cupsd.conf file:"
msgstr "No se ha podido abrir el archivo cupsd.conf:"
+#: backend/usb-unix.c:141
msgid "Unable to open device file"
msgstr "No se ha podido abrir el archivo de dispositivo"
+#: scheduler/ipp.c:6140
#, c-format
msgid "Unable to open document #%d in job #%d."
msgstr "No se ha podido abrir el documento #%d del trabajo #%d."
+#: cgi-bin/help.c:364
+msgid "Unable to open help file."
+msgstr "No se ha podido abrir el archivo de ayuda."
+
+#: backend/ipp.c:365
+#: backend/ipp.c:1398
+#: backend/ipp.c:1594
+#: backend/ipp.c:2046
+#: backend/lpd.c:488
+#: backend/socket.c:158
+#: backend/usb.c:237
+#: filter/gziptoany.c:71
+#: filter/pstops.c:300
msgid "Unable to open print file"
msgstr "No se ha podido abrir el archivo de impresión"
-msgid "Unable to open psglyphs"
-msgstr "No se ha podido abrir psglyphs"
-
+#: filter/rastertoepson.c:998
+#: filter/rastertohp.c:724
+#: filter/rastertolabel.c:1147
msgid "Unable to open raster file"
msgstr "No se ha podido abrir el archivo de trama de datos (raster)"
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr "No se han podido imprimir %d columnas de texto."
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr "No se han podido imprimir %dx%d páginas de texto."
-
-msgid "Unable to print test page:"
-msgstr "No se ha podido imprimir la página de prueba:"
-
-msgid "Unable to read print data"
-msgstr "No se han podido leer los datos de impresión"
+#: cgi-bin/ipp-var.c:795
+msgid "Unable to print test page"
+msgstr "No se ha podido imprimir la página de prueba"
+#: backend/runloop.c:96
+#: backend/runloop.c:325
+#: backend/usb-darwin.c:613
+#: backend/usb-darwin.c:657
+#: backend/usb-libusb.c:343
+#: backend/usb-libusb.c:378
msgid "Unable to read print data."
msgstr "No se han podido leer los datos de impresión."
+#: cups/dest.c:3402
+msgid "Unable to resolve printer URI."
+msgstr "No se ha podido resolver el URI de la impresora."
+
+#: cups/adminutil.c:2088
#, c-format
msgid "Unable to run \"%s\": %s"
msgstr "No se ha podido ejecutar \"%s\": %s"
+#: filter/pstops.c:563
msgid "Unable to see in file"
msgstr "No se ha podido mirar en el archivo"
+#: cgi-bin/ipp-var.c:598
+#: cgi-bin/ipp-var.c:618
msgid "Unable to send command to printer driver"
msgstr "No se ha podido enviar un comando al controlador de la impresora"
+#: backend/usb-darwin.c:735
+#: backend/usb-libusb.c:454
msgid "Unable to send data to printer."
msgstr "No se han podido enviar datos a la impresora."
-msgid "Unable to send raster data to the driver."
-msgstr "No se ha podido enviar la trama de datos (raster) al controlador."
-
+#: cups/adminutil.c:821
#, c-format
msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-"No se ha podido configurar el controlador de impresora de Windows (%d)."
+msgstr "No se ha podido configurar el controlador de impresora de Windows (%d)."
-msgid "Unable to set options:"
-msgstr "No se han podido cambiar las opciones:"
+#: cgi-bin/admin.c:3807
+msgid "Unable to set options"
+msgstr "No se han podido cambiar las opciones"
-msgid "Unable to set server default:"
-msgstr "No se han podido cambiar los ajustes predeterminados del servidor:"
+#: cgi-bin/admin.c:3077
+msgid "Unable to set server default"
+msgstr "No se ha podido establecer el servidor predeterminado"
+#: backend/ipp.c:2868
+#: backend/ipp.c:2945
+#: backend/ipp.c:2953
msgid "Unable to start backend process."
msgstr "No se ha podido iniciar el proceso backend."
-msgid "Unable to upload cupsd.conf file:"
-msgstr "No se ha podido copiar el archivo cupsd.conf:"
+#: cgi-bin/admin.c:1912
+msgid "Unable to upload cupsd.conf file"
+msgstr "No se ha podido enviar el archivo cupsd.conf"
+#: backend/usb-darwin.c:1985
+#: backend/usb-darwin.c:2009
msgid "Unable to use legacy USB class driver."
-msgstr ""
-"No se ha podido usar el controlador de dispositivo de clase USB obsoleto."
+msgstr "No se ha podido usar el controlador de dispositivo de clase USB obsoleto."
+#: backend/runloop.c:125
+#: backend/runloop.c:380
msgid "Unable to write print data"
msgstr "No se han podido escribir los datos de impresión"
+#: filter/gziptoany.c:90
#, c-format
msgid "Unable to write uncompressed print data: %s"
msgstr "No se han podido escribir los datos de impresión sin comprimir: %s"
+#: cups/http-support.c:1303
msgid "Unauthorized"
msgstr "No autorizado"
+#: cgi-bin/admin.c:3503
msgid "Units"
msgstr "Unidades"
+#: cups/http-support.c:1343
+#: cups/ppd.c:366
msgid "Unknown"
msgstr "Desconocido"
+#: filter/pstops.c:2213
#, c-format
msgid "Unknown choice \"%s\" for option \"%s\"."
msgstr "Preferencia \"%s\" desconocida para la opción \"%s\"."
+#: backend/ipp.c:507
#, c-format
msgid "Unknown encryption option value: \"%s\"."
msgstr "Valor de opción de cifrado \"%s\" desconocida."
+#: backend/lpd.c:350
#, c-format
msgid "Unknown file order: \"%s\"."
msgstr "Orden de archivos \"%s\" desconocido."
+#: backend/lpd.c:321
#, c-format
msgid "Unknown format character: \"%c\"."
msgstr "Carácter de formato \"%c\" desconocido."
+#: cups/dest-options.c:770
+msgid "Unknown media size name."
+msgstr "Nombre de tamaño de papel desconocido."
+
+#: backend/ipp.c:554
#, c-format
msgid "Unknown option \"%s\" with value \"%s\"."
msgstr "Opción \"%s\" con valor \"%s\" desconocida."
+#: filter/pstops.c:2196
#, c-format
msgid "Unknown option \"%s\"."
msgstr "Opción \"%s\" desconocida"
+#: backend/lpd.c:336
#, c-format
msgid "Unknown print mode: \"%s\"."
msgstr "Modo de impresión \"%s\" desconocido."
+#: scheduler/ipp.c:10496
#, c-format
msgid "Unknown printer-error-policy \"%s\"."
msgstr "printer-error-policy \"%s\" incorrecto."
+#: scheduler/ipp.c:10479
#, c-format
msgid "Unknown printer-op-policy \"%s\"."
msgstr "printer-op-policy \"%s\" incorrecto."
+#: cups/http-addrlist.c:710
+msgid "Unknown service name."
+msgstr "Nombre de servicio desconocido."
+
+#: backend/ipp.c:526
#, c-format
msgid "Unknown version option value: \"%s\"."
msgstr "Valor de opción de versión \"%s\" desconocida."
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr "Velocidad en baudios %s no permitida."
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr "Valor de brillo %s no permitido; usando brillo=100."
-
+#: scheduler/ipp.c:402
#, c-format
msgid "Unsupported character set \"%s\"."
msgstr "Juego de caracteres \"%s\" no permitido."
+#: scheduler/ipp.c:8171
+#: scheduler/ipp.c:9401
+#: scheduler/ipp.c:10950
#, c-format
msgid "Unsupported compression \"%s\"."
msgstr "Compresión \"%s\" no permitida."
+#: scheduler/ipp.c:8305
+#: scheduler/ipp.c:9551
+#: scheduler/ipp.c:10979
#, c-format
msgid "Unsupported document-format \"%s\"."
msgstr "document-format \"%s\" no permitido."
+#: scheduler/ipp.c:9534
#, c-format
msgid "Unsupported document-format \"%s/%s\"."
msgstr "document-format \"%s/%s\" no permitido."
+#: scheduler/ipp.c:1367
#, c-format
msgid "Unsupported format \"%s\"."
msgstr "Formato \"%s\" no permitido."
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr "Valor gamma %s no permitido; usando gamma=1000."
-
+#: scheduler/ipp.c:1465
msgid "Unsupported margins."
msgstr "Márgenes no permitidos."
+#: cups/pwg-media.c:529
msgid "Unsupported media value."
msgstr "Valor del medio no permitido."
+#: filter/pstops.c:2478
#, c-format
msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-"Valor de number-up (páginas por hoja) %d no permitido; usando number-up=1."
+msgstr "Valor de number-up (páginas por hoja) %d no permitido; usando number-up=1."
+#: filter/pstops.c:2512
#, c-format
msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-"Valor de number-up-layout (disposición de páginas por hoja) %s no permitido; "
-"usando number-up-layout=lrtb."
+msgstr "Valor de number-up-layout (disposición de páginas por hoja) %s no permitido; usando number-up-layout=lrtb."
+#: filter/pstops.c:2563
#, c-format
msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-"Valor de page-border (borde de página) %s no permitido; usando page-"
-"border=none (ninguno)."
+msgstr "Valor de page-border (borde de página) %s no permitido; usando page-border=none (ninguno)."
+#: filter/rastertopwg.c:147
+#: filter/rastertopwg.c:155
+#: filter/rastertopwg.c:164
msgid "Unsupported raster data."
msgstr "Trama de datos no permitidos."
+#: cups/snmp.c:1112
msgid "Unsupported value type"
msgstr "Tipo de valor no permitido"
+#: cups/http-support.c:1318
msgid "Upgrade Required"
msgstr "Se requiere actualización"
+#: systemv/lpadmin.c:668
msgid ""
"Usage:\n"
"\n"
@@ -4719,48 +6053,53 @@ msgstr ""
" [-P archivo_ppd] [-o nombre=valor]\n"
" [-u allow:usuario,usuario] [-u deny:usuario,usuario]"
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr "Uso: %s trabajo usuario título copias opciones [archivo]"
-
+#: backend/dnssd.c:241
+#: backend/ipp.c:313
+#: backend/lpd.c:191
+#: backend/socket.c:135
+#: backend/usb.c:183
+#: filter/commandtops.c:74
+#: filter/gziptoany.c:50
+#: filter/pstops.c:264
+#: monitor/bcp.c:62
+#: monitor/tbcp.c:61
#, c-format
msgid "Usage: %s job-id user title copies options [file]"
msgstr "Uso: %s job-id usuario título copias opciones [archivo]"
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr "Uso: %s job-id usuario título copias opciones archivo"
-
-msgid "Usage: convert [ options ]"
-msgstr "Uso: convert ( opciones )"
-
+#: systemv/cupsaddsmb.c:281
msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
msgstr "Uso: cupsaddsmb [opciones] impresora1 ... impresoraN"
+#: systemv/cupsctl.c:200
msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
msgstr "Uso: cupsctl [opciones] [param=valor ... paramN=valorN]"
+#: scheduler/main.c:2017
msgid "Usage: cupsd [options]"
msgstr "Uso: cupsd [opciones)"
+#: scheduler/cupsfilter.c:1429
msgid "Usage: cupsfilter [ options ] filename"
msgstr "Uso: cupsfilter ( opciones ) archivo"
+#: systemv/cupstestdsc.c:425
msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
msgstr "Uso: cupstestdsc [opciones] nombre_archivo.ps [... nombre_archivo.ps]"
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-"Uso: cupstestppd [opciones] nombre_archivo1.ppd[.gz] [... nombre_archivoN.ppd"
-"[.gz]]"
+#: systemv/cupstestppd.c:3793
+msgid "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
+msgstr "Uso: cupstestppd [opciones] nombre_archivo1.ppd[.gz] [... nombre_archivoN.ppd[.gz]]"
+#: test/ipptool.c:4401
msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
msgstr "Uso: ipptool [opciones] URI nombre_archivo [ ... nombre_archivoN ]"
+#: systemv/lpmove.c:125
msgid "Usage: lpmove job/src dest"
msgstr "Uso: lpmove trabajo/fuente destino"
+#: systemv/lpoptions.c:553
msgid ""
"Usage: lpoptions [-h server] [-E] -d printer\n"
" lpoptions [-h server] [-E] [-p printer] -l\n"
@@ -4772,9 +6111,11 @@ msgstr ""
" lpoptions [-h servidor] [-E] -p impresora -o opción[=valor] ...\n"
" lpoptions [-h servidor] [-E] -x impresora"
+#: systemv/lppasswd.c:476
msgid "Usage: lppasswd [-g groupname]"
msgstr "Uso: lppasswd [-g nombre_grupo]"
+#: systemv/lppasswd.c:479
msgid ""
"Usage: lppasswd [-g groupname] [username]\n"
" lppasswd [-g groupname] -a [username]\n"
@@ -4784,305 +6125,368 @@ msgstr ""
" lppasswd [-g nombre_grupo] -a [nombre_usuario]\n"
" lppasswd [-g nombre_grupo] -x [nombre_usuario]"
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-"Uso: lpq (-P dest) (-U nombre_usuario) (-h nombre_ordenador(:puerto)) (-l) "
-"(+intervalo)"
+#: berkeley/lpq.c:670
+msgid "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
+msgstr "Uso: lpq (-P dest) (-U nombre_usuario) (-h nombre_ordenador(:puerto)) (-l) (+intervalo)"
+#: ppdc/ppdc.cxx:435
msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
msgstr "Uso: ppdc [opciones] nombre_archivo.drv [ ... nombre_archivoN.drv ]"
+#: ppdc/ppdhtml.cxx:172
msgid "Usage: ppdhtml [options] filename.drv >filename.html"
msgstr "Uso: ppdhtml [opciones] nombre_archivo.drv >nombre_archivo.html"
+#: ppdc/ppdi.cxx:128
msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
msgstr "Uso: ppdi [opciones] nombre_archivo.ppd [ ... nombre_archivoN.ppd ]"
+#: ppdc/ppdmerge.cxx:367
msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-"Uso: ppdmerge [opciones] nombre_archivo.ppd [ ... nombre_archivoN.ppd ]"
+msgstr "Uso: ppdmerge [opciones] nombre_archivo.ppd [ ... nombre_archivoN.ppd ]"
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-"Uso: ppdpo [opciones] -o nombre_archivo.po nombre_archivo.drv [ ... "
-"nombre_archivoN.drv ]"
+#: ppdc/ppdpo.cxx:252
+msgid "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
+msgstr "Uso: ppdpo [opciones] -o nombre_archivo.po nombre_archivo.drv [ ... nombre_archivoN.drv ]"
+#: backend/snmp.c:218
msgid "Usage: snmp [host-or-ip-address]"
msgstr "Uso: snmp [ordenador-o-dirección-ip]"
+#: cups/snmp.c:1064
msgid "Value uses indefinite length"
msgstr "Valor usa una longitud indefinida"
+#: cups/snmp.c:1049
msgid "VarBind uses indefinite length"
msgstr "VarBind usa una longitud indefinida"
+#: cups/snmp.c:999
msgid "Version uses indefinite length"
msgstr "Versión usa una longitud indefinida"
+#: backend/ipp.c:1675
msgid "Waiting for job to complete."
msgstr "Esperando a que finalice el trabajo."
+#: backend/usb-darwin.c:457
+#: backend/usb-libusb.c:193
msgid "Waiting for printer to become available."
msgstr "Esperando a que la impresora esté disponible."
+#: backend/socket.c:444
msgid "Waiting for printer to finish."
msgstr "Esperando a que finalice la impresora."
+#: cups/adminutil.c:793
msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-"Advertencia, no está instalado ningún controlador de impresora de Windows "
-"2000."
+msgstr "Advertencia, no está instalado ningún controlador de impresora de Windows 2000."
+#: cups/http-support.c:1339
msgid "Web Interface is Disabled"
msgstr "La interfaz web está desactivada."
+#: cups/ppd.c:1947
msgid "Yes"
msgstr "Si"
+#: scheduler/client.c:2437
#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Debe acceder a esta página usando el URL <A HREF=\"https://%s:%d%s\">https://"
-"%s:%d%s</A>."
+msgid "You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%s:%d%s</A>."
+msgstr "Debe acceder a esta página usando el URL <A HREF=\"https://%s:%d%s\">https://%s:%d%s</A>."
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-"Su contraseña debe tener al menos 6 caracteres, no puede contener su nombre "
-"de usuario, y debe tener al menos una letra y un número."
+#: systemv/lppasswd.c:254
+msgid "Your password must be at least 6 characters long, cannot contain your username, and must contain at least one letter and number."
+msgstr "Su contraseña debe tener al menos 6 caracteres, no puede contener su nombre de usuario, y debe tener al menos una letra y un número."
+#: ppdc/sample.c:439
msgid "ZPL Label Printer"
msgstr "Impresora de etiquetas ZPL"
+#: ppdc/sample.c:362
msgid "Zebra"
msgstr "Zebra"
+#: cups/notify.c:102
msgid "aborted"
msgstr "cancelado"
+#: cups/notify.c:99
msgid "canceled"
msgstr "cancelado"
+#: cups/notify.c:105
msgid "completed"
msgstr "completado"
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr "convert: Use la opción -f para especificar el archivo a convertir."
-
+#: scheduler/ipp.c:6012
msgid "cups-deviced failed to execute."
msgstr "Ha fallado al ejecutarse cups-deviced."
+#: scheduler/ipp.c:6842
+#: scheduler/ipp.c:7091
msgid "cups-driverd failed to execute."
msgstr "Ha fallado al ejecutarse cups-driverd."
+#: systemv/cupsaddsmb.c:233
#, c-format
msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
msgstr "cupsaddsmb: No hay archivo PPD para la impresora \"%s\" - %s"
+#: systemv/cupsctl.c:141
msgid "cupsctl: Cannot set Listen or Port directly."
msgstr "cupsctl: No se puede establecer Listen o Port directamente."
+#: systemv/cupsctl.c:152
#, c-format
msgid "cupsctl: Unable to connect to server: %s"
msgstr "cupsctl: No se ha podido conectar al servidor: %s"
+#: systemv/cupsctl.c:195
#, c-format
msgid "cupsctl: Unknown option \"%s\""
msgstr "cupsctl: Opción \"%s\" desconocida"
+#: systemv/cupsctl.c:197
#, c-format
msgid "cupsctl: Unknown option \"-%c\""
msgstr "cupsctl: Opción \"-%c\" desconocida"
+#: scheduler/main.c:189
msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-"cupsd: Se esperaba un nombre de archivo de configuración tras la opción \"-c"
-"\"."
+msgstr "cupsd: Se esperaba un nombre de archivo de configuración tras la opción \"-c\"."
+#: scheduler/main.c:221
+#: scheduler/main.c:228
msgid "cupsd: Unable to get current directory."
msgstr "cupsd: No se ha podido obtener el directorio actual."
+#: scheduler/main.c:295
#, c-format
msgid "cupsd: Unknown argument \"%s\" - aborting."
msgstr "cupsd: Argumento \"%s\" desconocido - cancelando."
+#: scheduler/main.c:288
#, c-format
msgid "cupsd: Unknown option \"%c\" - aborting."
msgstr "cupsd: Opción \"%c\" desconocida - cancelando."
+#: scheduler/main.c:255
msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-"cupsd: el uso de launchd(8) no ha sido compilado, ejecutándose en modo "
-"normal."
+msgstr "cupsd: el uso de launchd(8) no ha sido compilado, ejecutándose en modo normal."
+#: scheduler/cupsfilter.c:1209
#, c-format
msgid "cupsfilter: Invalid document number %d."
msgstr "cupsfilter: Número de documento %d no válido."
+#: scheduler/cupsfilter.c:1203
#, c-format
msgid "cupsfilter: Invalid job ID %d."
msgstr "cupsfilter: ID de trabajo %d no válida."
+#: scheduler/cupsfilter.c:358
msgid "cupsfilter: Only one filename can be specified."
msgstr "cupsfilter: Solo se puede especificar un nombre de archivo."
+#: scheduler/cupsfilter.c:1251
#, c-format
msgid "cupsfilter: Unable to get job file - %s"
msgstr "cupsfilter: No se ha podido obtener el archivo del trabajo - %s"
+#: systemv/cupstestppd.c:261
msgid "cupstestppd: The -q option is incompatible with the -v option."
msgstr "cupstestppd: La opción -q es incompatible con la opción -v."
+#: systemv/cupstestppd.c:277
msgid "cupstestppd: The -v option is incompatible with the -q option."
msgstr "cupstestppd: La opción -v es incompatible con la opción -q."
+#: systemv/lpstat.c:1231
+#: systemv/lpstat.c:1234
+#: systemv/lpstat.c:1237
#, c-format
msgid "device for %s/%s: %s"
msgstr "dispositivo para %s/%s: %s"
+#: systemv/lpstat.c:1218
+#: systemv/lpstat.c:1221
+#: systemv/lpstat.c:1224
#, c-format
msgid "device for %s: %s"
msgstr "dispositivo para %s: %s"
+#: cups/snmp.c:1036
msgid "error-index uses indefinite length"
msgstr "error-index usa una longitud indefinida"
+#: cups/snmp.c:1028
msgid "error-status uses indefinite length"
msgstr "error-status usa una longitud indefinida"
+#: cups/notify.c:90
msgid "held"
msgstr "retenido"
+#: berkeley/lpc.c:209
msgid "help\t\tGet help on commands."
msgstr "help\t\tProporciona ayuda sobre los comandos."
+#: cups/notify.c:131
msgid "idle"
msgstr "inactiva"
+#: test/ipptool.c:373
+#: test/ipptool.c:515
+#: test/ipptool.c:539
msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
msgstr "ipptool: \"-i\" y \"-n\" son incompatibles with -X\"."
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr "ipptool: \"-i\" es incompatible with \"-X\"."
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr "ipptool: \"-n\" es incompatible with \"-X\"."
-
+#: test/ipptool.c:597
#, c-format
msgid "ipptool: Bad URI - %s."
msgstr "ipptool: URI - %s incorrecto."
+#: test/ipptool.c:362
#, c-format
msgid "ipptool: Bad version %s for \"-V\"."
msgstr "ipptool: Versión %s para \"-V\" incorrecta."
+#: test/ipptool.c:508
msgid "ipptool: Invalid seconds for \"-i\"."
msgstr "ipptool: Número de segundos no válido para \"-i\"."
+#: test/ipptool.c:578
msgid "ipptool: May only specify a single URI."
msgstr "ipptool: Sólo se puede especificar un URI."
+#: test/ipptool.c:531
msgid "ipptool: Missing count for \"-n\"."
msgstr "ipptool: Falta el contador para \"-n\"."
+#: test/ipptool.c:408
msgid "ipptool: Missing filename for \"-f\"."
msgstr "ipptool: Falta el nombre del archivo para \"-f\"."
+#: test/ipptool.c:389
msgid "ipptool: Missing name=value for \"-d\"."
msgstr "ipptool: Falta un nombre=valor para \"-d\"."
+#: test/ipptool.c:498
msgid "ipptool: Missing seconds for \"-i\"."
msgstr "ipptool: Falta el número de segundos para \"-i\"."
+#: test/ipptool.c:332
msgid "ipptool: Missing timeout for \"-T\"."
msgstr "ipptool: Falta un tiempo de espera para \"-T\"."
+#: test/ipptool.c:345
msgid "ipptool: Missing version for \"-V\"."
msgstr "ipptool: Falta la versión para \"-V\"."
+#: test/ipptool.c:624
msgid "ipptool: URI required before test file."
msgstr "ipptool: Se requiere un URI antes del archivo de prueba."
+#: test/ipptool.c:558
#, c-format
msgid "ipptool: Unknown option \"-%c\"."
msgstr "ipptool: Opción \"-%c\" desconocida."
+#: scheduler/ipp.c:7838
msgid "job-printer-uri attribute missing."
msgstr "Falta el atributo job-printer-uri."
+#: systemv/lpadmin.c:131
+#: systemv/lpadmin.c:375
msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-"lpadmin: El nombre de la clase sólo puede contener caracteres imprimibles."
+msgstr "lpadmin: El nombre de la clase sólo puede contener caracteres imprimibles."
+#: systemv/lpadmin.c:614
msgid "lpadmin: Expected PPD after \"-P\" option."
msgstr "lpadmin: Se esperaba un PPD tras la opción \"-P\"."
+#: systemv/lpadmin.c:457
msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
msgstr "lpadmin: Se esperaba allow/deny:lista_usuarios tras la opción \"-u\"."
+#: systemv/lpadmin.c:364
msgid "lpadmin: Expected class after \"-r\" option."
msgstr "lpadmin: Se esperaba una clase tras la opción \"-r\"."
+#: systemv/lpadmin.c:120
msgid "lpadmin: Expected class name after \"-c\" option."
msgstr "lpadmin: Se esperaba un nombre de clase tras la opción \"-c\"."
+#: systemv/lpadmin.c:558
msgid "lpadmin: Expected description after \"-D\" option."
msgstr "lpadmin: Se esperaba una descripción tras la opción \"-D\"."
+#: systemv/lpadmin.c:491
msgid "lpadmin: Expected device URI after \"-v\" option."
msgstr "lpadmin: Se esperaba un URI de dispositivo tras la opción \"-v\"."
+#: systemv/lpadmin.c:574
msgid "lpadmin: Expected file type(s) after \"-I\" option."
msgstr "lpadmin: Se esperaba(n) tipo(s) de archivo(s) tras la opción \"-l\"."
+#: systemv/lpadmin.c:202
msgid "lpadmin: Expected hostname after \"-h\" option."
msgstr "lpadmin: Se esperaba un nombre de ordenador tras la opción \"-h\"."
+#: systemv/lpadmin.c:221
msgid "lpadmin: Expected interface after \"-i\" option."
msgstr "lpadmin: Se esperaba una interfaz tras la opción \"-i\"."
+#: systemv/lpadmin.c:594
msgid "lpadmin: Expected location after \"-L\" option."
msgstr "lpadmin: Se esperaba una ubicación tras la opción \"-L\"."
+#: systemv/lpadmin.c:274
msgid "lpadmin: Expected model after \"-m\" option."
msgstr "lpadmin: Se esperaba un modelo tras la opción \"-m\"."
+#: systemv/lpadmin.c:417
msgid "lpadmin: Expected name after \"-R\" option."
msgstr "lpadmin: Se esperaba un nombre tras la opción \"-R\"."
+#: systemv/lpadmin.c:294
msgid "lpadmin: Expected name=value after \"-o\" option."
msgstr "lpadmin: Se esperaba un nombre=valor tras la opción \"-o\"."
+#: systemv/lpadmin.c:313
msgid "lpadmin: Expected printer after \"-p\" option."
msgstr "lpadmin: Se esperaba una impresora tras la opción \"-p\"."
+#: systemv/lpadmin.c:164
msgid "lpadmin: Expected printer name after \"-d\" option."
msgstr "lpadmin: Se esperaba un nombre de impresora tras la opción \"-d\"."
+#: systemv/lpadmin.c:525
msgid "lpadmin: Expected printer or class after \"-x\" option."
msgstr "lpadmin: Se esperaba una impresora o clase tras la opción \"-x\"."
+#: systemv/lpadmin.c:975
msgid "lpadmin: No member names were seen."
msgstr "lpadmin: No se han visto nombres de miembros"
+#: systemv/lpadmin.c:762
#, c-format
msgid "lpadmin: Printer %s is already a member of class %s."
msgstr "lpadmin: La impresora %s ya es miembro de la clase %s."
+#: systemv/lpadmin.c:989
#, c-format
msgid "lpadmin: Printer %s is not a member of class %s."
msgstr "lpadmin: La impresora %s no es miembro de la clase %s."
+#: systemv/lpadmin.c:175
+#: systemv/lpadmin.c:324
+#: systemv/lpadmin.c:536
msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-"lpadmin: El nombre de la impresora sólo puede contener caracteres "
-"imprimibles."
+msgstr "lpadmin: El nombre de la impresora sólo puede contener caracteres imprimibles."
+#: systemv/lpadmin.c:105
msgid ""
"lpadmin: Unable to add a printer to the class:\n"
" You must specify a printer name first."
@@ -5090,13 +6494,22 @@ msgstr ""
"lpadmin: No se ha podido añadir una impresora a la clase:\n"
" Debe especificar un nombre de impresora primero."
+#: systemv/lpadmin.c:96
+#: systemv/lpadmin.c:149
+#: systemv/lpadmin.c:253
+#: systemv/lpadmin.c:339
+#: systemv/lpadmin.c:393
+#: systemv/lpadmin.c:510
+#: systemv/lpadmin.c:647
#, c-format
msgid "lpadmin: Unable to connect to server: %s"
msgstr "lpadmin: No se ha podido conectar al servidor: %s"
+#: systemv/lpadmin.c:1329
msgid "lpadmin: Unable to create temporary file"
msgstr "lpadmin: No se ha podido crear el archivo temporal"
+#: systemv/lpadmin.c:402
msgid ""
"lpadmin: Unable to delete option:\n"
" You must specify a printer name first."
@@ -5104,10 +6517,12 @@ msgstr ""
"lpadmin: No se ha podido borrar la opción:\n"
" Primero debe especificar un nombre de impresora."
+#: systemv/lpadmin.c:1339
#, c-format
msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
msgstr "lpadmin: No se ha podido abrir el archivo PPD \"%s\" - %s"
+#: systemv/lpadmin.c:348
msgid ""
"lpadmin: Unable to remove a printer from the class:\n"
" You must specify a printer name first."
@@ -5115,6 +6530,7 @@ msgstr ""
"lpadmin: No se ha podido quitar una impresora de la clase:\n"
" Primero debe especificar un nombre de impresora."
+#: systemv/lpadmin.c:656
msgid ""
"lpadmin: Unable to set the printer options:\n"
" You must specify a printer name first."
@@ -5122,653 +6538,779 @@ msgstr ""
"lpadmin: No se han podido establecer las opciones de impresora:\n"
" Primero debe especificar un nombre de impresora."
+#: systemv/lpadmin.c:474
#, c-format
msgid "lpadmin: Unknown allow/deny option \"%s\"."
msgstr "lpadmin: Opción allow/deny desconocida \"%s\"."
+#: systemv/lpadmin.c:629
#, c-format
msgid "lpadmin: Unknown argument \"%s\"."
msgstr "lpadmin: Argumento \"%s\" desconocido."
+#: systemv/lpadmin.c:624
#, c-format
msgid "lpadmin: Unknown option \"%c\"."
msgstr "lpadmin: Opción \"%c\" desconocida."
+#: systemv/lpadmin.c:580
msgid "lpadmin: Warning - content type list ignored."
msgstr "lpadmin: Advertencia - lista de tipo de contenido no tenida en cuenta."
+#: berkeley/lpc.c:76
+#: berkeley/lpc.c:104
+#: berkeley/lpc.c:140
msgid "lpc> "
msgstr "lpc> "
+#: systemv/lpinfo.c:137
msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-"lpinfo: Se esperaba una cadena ID de dispositivo 1284 tras \"--device-id\"."
+msgstr "lpinfo: Se esperaba una cadena ID de dispositivo 1284 tras \"--device-id\"."
+#: systemv/lpinfo.c:190
msgid "lpinfo: Expected language after \"--language\"."
msgstr "lpinfo: Se esperaba un idioma tras \"--language\"."
+#: systemv/lpinfo.c:207
msgid "lpinfo: Expected make and model after \"--make-and-model\"."
msgstr "lpinfo: Se esperaba marca y modelo tras \"--make-and-model\"."
+#: systemv/lpinfo.c:224
msgid "lpinfo: Expected product string after \"--product\"."
msgstr "lpinfo: Se esperaba una cadena de producto tras \"--product\"."
+#: systemv/lpinfo.c:155
msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
msgstr "lpinfo: Se esperaba una lista de esquemas tras \"--exclude-schemes\"."
+#: systemv/lpinfo.c:173
msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
msgstr "lpinfo: Se esperaba una lista de esquemas tras \"--include-schemes\"."
+#: systemv/lpinfo.c:241
msgid "lpinfo: Expected timeout after \"--timeout\"."
msgstr "lpinfo: Se esperaba un tiempo de espera tras \"--timeout\"."
+#: systemv/lpinfo.c:265
#, c-format
msgid "lpinfo: Unknown argument \"%s\"."
msgstr "lpinfo: Argumento \"%s\" desconocido."
+#: systemv/lpinfo.c:259
#, c-format
msgid "lpinfo: Unknown option \"%c\"."
msgstr "lpinfo: Opción \"%c\" desconocida."
+#: systemv/lpinfo.c:252
#, c-format
msgid "lpinfo: Unknown option \"%s\"."
msgstr "lpinfo: Opción \"%s\" desconocida."
+#: systemv/lpmove.c:133
#, c-format
msgid "lpmove: Unable to connect to server: %s"
msgstr "lpmove: No se ha podido conectar al servidor: %s"
+#: systemv/lpmove.c:119
#, c-format
msgid "lpmove: Unknown argument \"%s\"."
msgstr "lpmove: Argumento \"%s\" desconocido."
+#: systemv/lpmove.c:97
#, c-format
msgid "lpmove: Unknown option \"%c\"."
msgstr "lpmove: Opción \"%c\" desconocida."
+#: systemv/lpoptions.c:150
+#: systemv/lpoptions.c:168
+#: systemv/lpoptions.c:244
msgid "lpoptions: No printers."
msgstr "lpoptions: No hay impresoras."
+#: systemv/lpoptions.c:219
#, c-format
msgid "lpoptions: Unable to add printer or instance: %s"
msgstr "lpoptions: No se ha podido añadir la impresora o la instancia: %s"
+#: systemv/lpoptions.c:521
#, c-format
msgid "lpoptions: Unable to get PPD file for %s: %s"
msgstr "lpoptions: No se ha podido obtener el archivo PPD para %s: %s"
+#: systemv/lpoptions.c:529
#, c-format
msgid "lpoptions: Unable to open PPD file for %s."
msgstr "lpoptions: No se ha podido abrir el archivo PPD para %s."
+#: systemv/lpoptions.c:99
msgid "lpoptions: Unknown printer or class."
msgstr "lpoptions: Impresora o clase desconocida."
+#: systemv/lppasswd.c:173
msgid "lppasswd: Only root can add or delete passwords."
msgstr "lppasswd: Solo el usuario root puede añadir o borrar contraseñas."
+#: systemv/lppasswd.c:302
msgid "lppasswd: Password file busy."
msgstr "lppasswd: Archivo de contraseñas ocupado."
+#: systemv/lppasswd.c:431
msgid "lppasswd: Password file not updated."
msgstr "lppasswd: Archivo de contraseñas no actualizado."
+#: systemv/lppasswd.c:398
msgid "lppasswd: Sorry, password doesn't match."
msgstr "lppasswd: Lo siento, la contraseña no coincide."
+#: systemv/lppasswd.c:253
msgid "lppasswd: Sorry, password rejected."
msgstr "lppasswd: Lo siento, la contraseña ha sido rechazada."
+#: systemv/lppasswd.c:230
msgid "lppasswd: Sorry, passwords don't match."
msgstr "lppasswd: Lo siento, las contraseñas no coinciden."
+#: systemv/lppasswd.c:199
+#: systemv/lppasswd.c:218
#, c-format
msgid "lppasswd: Unable to copy password string: %s"
msgstr "lppasswd: No se ha podido copiar la cadena de contraseña: %s"
+#: systemv/lppasswd.c:304
+#: systemv/lppasswd.c:312
+#: systemv/lppasswd.c:329
#, c-format
msgid "lppasswd: Unable to open password file: %s"
msgstr "lppasswd: No se ha podido abrir el archivo de contraseñas: %s"
+#: systemv/lppasswd.c:364
+#: systemv/lppasswd.c:377
+#: systemv/lppasswd.c:408
#, c-format
msgid "lppasswd: Unable to write to password file: %s"
msgstr "lppasswd: No se ha podido escribir en el archivo de contraseñas: %s"
+#: systemv/lppasswd.c:446
#, c-format
msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-"lppasswd: falló al hacer una copia de seguridad del antiguo archivo de "
-"contraseñas: %s"
+msgstr "lppasswd: falló al hacer una copia de seguridad del antiguo archivo de contraseñas: %s"
+#: systemv/lppasswd.c:458
#, c-format
msgid "lppasswd: failed to rename password file: %s"
msgstr "lppasswd: falló al cambiar de nombre al archivo de contraseñas: %s"
+#: systemv/lppasswd.c:389
#, c-format
msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
msgstr "lppasswd: el usuario \"%s\" y el grupo \"%s\" no existen."
+#: systemv/lpstat.c:1039
#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-"lpstat: error - Los nombre de variable de entorno %s no existen en el "
-"destino \"%s\"."
+msgid "lpstat: error - %s environment variable names non-existent destination \"%s\"."
+msgstr "lpstat: error - Los nombre de variable de entorno %s no existen en el destino \"%s\"."
+#: systemv/lpstat.c:970
#, c-format
msgid "members of class %s:"
msgstr "miembros de la clase %s:"
+#: berkeley/lpq.c:582
msgid "no entries"
msgstr "no hay entradas"
+#: systemv/lpstat.c:1043
msgid "no system default destination"
msgstr "no hay un destino predeterminado del sistema"
+#: scheduler/ipp.c:5702
msgid "notify-events not specified."
msgstr "notify-events no especificado."
+#: scheduler/ipp.c:2034
+#: scheduler/ipp.c:5607
#, c-format
msgid "notify-recipient-uri URI \"%s\" is already used."
msgstr "El URI notify-recipient-uri \"%s\" ya está usado."
+#: scheduler/ipp.c:2024
+#: scheduler/ipp.c:5597
#, c-format
msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
msgstr "El URI notify-recipient-uri \"%s\" usa un esquema desconocido."
+#: cups/notify.c:87
msgid "pending"
msgstr "pendiente"
+#: ppdc/ppdc.cxx:113
+#: ppdc/ppdpo.cxx:93
#, c-format
msgid "ppdc: Adding include directory \"%s\"."
msgstr "ppdc: Añadiendo directorio include \"%s\"."
+#: ppdc/ppdpo.cxx:134
#, c-format
msgid "ppdc: Adding/updating UI text from %s."
msgstr "ppdc: Añadiendo/actualizando texto UI desde %s."
+#: ppdc/ppdc-source.cxx:410
#, c-format
msgid "ppdc: Bad boolean value (%s) on line %d of %s."
msgstr "ppdc: Valor lógico (%s) incorrecto en línea %d de %s."
+#: ppdc/ppdc-import.cxx:264
#, c-format
msgid "ppdc: Bad font attribute: %s"
msgstr "ppdc: Atributo de fuente: %s incorrecto"
+#: ppdc/ppdc-source.cxx:1796
#, c-format
msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
msgstr "ppdc: Resolución de nombre \"%s\" incorrecta en línea %d de %s."
+#: ppdc/ppdc-source.cxx:1113
#, c-format
msgid "ppdc: Bad status keyword %s on line %d of %s."
msgstr "ppdc: Clave de estado %s incorrecta en línea %d de %s."
+#: ppdc/ppdc-source.cxx:2033
#, c-format
msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
msgstr "ppdc: Sustitución de variable ($%c) errónea en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:2719
#, c-format
msgid "ppdc: Choice found on line %d of %s with no Option."
msgstr "ppdc: Selección encontrada en línea %d de %s sin opciones."
+#: ppdc/ppdc-source.cxx:1698
#, c-format
msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
msgstr "ppdc: #po duplicado para código regional %s en línea %d de %s."
+#: ppdc/ppdc-source.cxx:932
#, c-format
msgid "ppdc: Expected a filter definition on line %d of %s."
msgstr "ppdc: Se esperaba una definición de filtro en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:955
#, c-format
msgid "ppdc: Expected a program name on line %d of %s."
msgstr "ppdc: Se esperaba un nombre de programa en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:394
#, c-format
msgid "ppdc: Expected boolean value on line %d of %s."
msgstr "ppdc: Se esperaba un valor lógico en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1093
#, c-format
msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-"ppdc: Se esperaba un juego de caracteres tras Font en la línea %d de %s."
+msgstr "ppdc: Se esperaba un juego de caracteres tras Font en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:447
#, c-format
msgid "ppdc: Expected choice code on line %d of %s."
msgstr "ppdc: Se esperaba un código apropiado en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:435
#, c-format
msgid "ppdc: Expected choice name/text on line %d of %s."
msgstr "ppdc: Se esperaba un nombre/texto apropiado en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:503
#, c-format
msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-"ppdc: Se esperaba un orden de color para ColorModel en la línea %d de %s."
+msgstr "ppdc: Se esperaba un orden de color para ColorModel en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:492
#, c-format
msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
msgstr "ppdc: Se esperaba colorspace para ColorModel en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:514
#, c-format
msgid "ppdc: Expected compression for ColorModel on line %d of %s."
msgstr "ppdc: Se esperaba compresión para ColorModel en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:695
#, c-format
msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-"ppdc: Se esperaba una cadena de restricciones para UIConstraints en la línea "
-"%d de %s."
+msgstr "ppdc: Se esperaba una cadena de restricciones para UIConstraints en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:2905
#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-"ppdc: Se esperaba una clave de tipo de controlador tras DriverType en la "
-"línea %d de %s."
+msgid "ppdc: Expected driver type keyword following DriverType on line %d of %s."
+msgstr "ppdc: Se esperaba una clave de tipo de controlador tras DriverType en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:826
#, c-format
msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
msgstr "ppdc: Se esperaba un tipo dúplex tras Duplex en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1077
#, c-format
msgid "ppdc: Expected encoding after Font on line %d of %s."
msgstr "ppdc: Se esperaba una codificación tras Font en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1689
#, c-format
msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-"ppdc: Se esperaba un nombre de archivo tras #po %s en la línea %d de %s."
+msgstr "ppdc: Se esperaba un nombre de archivo tras #po %s en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1205
#, c-format
msgid "ppdc: Expected group name/text on line %d of %s."
msgstr "ppdc: Se esperaba un nombre/texto de grupo en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:2619
#, c-format
msgid "ppdc: Expected include filename on line %d of %s."
msgstr "ppdc: Se esperaba un nombre de archivo include en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1502
#, c-format
msgid "ppdc: Expected integer on line %d of %s."
msgstr "ppdc: Se esperaba un número entero en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1681
#, c-format
msgid "ppdc: Expected locale after #po on line %d of %s."
msgstr "ppdc: Se esperaba un código regional tras #po en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:353
#, c-format
msgid "ppdc: Expected name after %s on line %d of %s."
msgstr "ppdc: Se esperaba un nombre tras %s en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:3277
#, c-format
msgid "ppdc: Expected name after FileName on line %d of %s."
msgstr "ppdc: Se esperaba un nombre tras FileName en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1058
#, c-format
msgid "ppdc: Expected name after Font on line %d of %s."
msgstr "ppdc: Se esperaba un nombre tras Font en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:3108
#, c-format
msgid "ppdc: Expected name after Manufacturer on line %d of %s."
msgstr "ppdc: Se esperaba un nombre tras Manufacturer en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:3141
#, c-format
msgid "ppdc: Expected name after MediaSize on line %d of %s."
msgstr "ppdc: Se esperaba un nombre tras MediaSize en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:3231
#, c-format
msgid "ppdc: Expected name after ModelName on line %d of %s."
msgstr "ppdc: Se esperaba un nombre tras ModelName en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:3294
#, c-format
msgid "ppdc: Expected name after PCFileName on line %d of %s."
msgstr "ppdc: Se esperaba un nombre tras PCFileName en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1156
#, c-format
msgid "ppdc: Expected name/text after %s on line %d of %s."
msgstr "ppdc: Se esperaba un nombre/texto tras %s en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1245
#, c-format
msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-"ppdc: Se esperaba un nombre/texto tras Installable en la línea %d de %s."
+msgstr "ppdc: Se esperaba un nombre/texto tras Installable en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1782
#, c-format
msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-"ppdc: Se esperaba un nombre/texto tras Resolution en la línea %d de %s."
+msgstr "ppdc: Se esperaba un nombre/texto tras Resolution en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:479
#, c-format
msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-"ppdc: Se esperaba una combinación nombre/texto para ColorModel en la línea %"
-"d de %s."
+msgstr "ppdc: Se esperaba una combinación nombre/texto para ColorModel en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1574
#, c-format
msgid "ppdc: Expected option name/text on line %d of %s."
msgstr "ppdc: Se esperaba una opción de nombre/texto en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1608
#, c-format
msgid "ppdc: Expected option section on line %d of %s."
msgstr "ppdc: Se esperaba una sección de opciones en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1586
#, c-format
msgid "ppdc: Expected option type on line %d of %s."
msgstr "ppdc: Se esperaba un tipo de opción en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1765
#, c-format
msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-"ppdc: Se esperaba un campo de anulación tras Resolution en la línea %d de %s."
+msgstr "ppdc: Se esperaba un campo de anulación tras Resolution en la línea %d de %s."
+#: ppdc/ppdc-catalog.cxx:341
+#: ppdc/ppdc-catalog.cxx:353
#, c-format
msgid "ppdc: Expected quoted string on line %d of %s."
msgstr "ppdc: Se esperaba una cadena entrecomillada en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1004
#, c-format
msgid "ppdc: Expected real number on line %d of %s."
msgstr "ppdc: Se esperaba un número real en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:572
#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-"ppdc: Se esperaba resolución/tipo de soporte tras ColorProfile en la línea %"
-"d de %s."
+msgid "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
+msgstr "ppdc: Se esperaba resolución/tipo de soporte tras ColorProfile en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1863
#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-"ppdc: Se esperaba resolución/tipo de soporte tras SimpleColorProfile en la "
-"línea %d de %s."
+msgid "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d of %s."
+msgstr "ppdc: Se esperaba resolución/tipo de soporte tras SimpleColorProfile en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:361
#, c-format
msgid "ppdc: Expected selector after %s on line %d of %s."
msgstr "ppdc: Se esperaba un selector tras %s en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1101
#, c-format
msgid "ppdc: Expected status after Font on line %d of %s."
msgstr "ppdc: Se esperaba un estado tras Font en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:2794
#, c-format
msgid "ppdc: Expected string after Copyright on line %d of %s."
msgstr "ppdc: Se esperaba una cadena tras Copyright en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:3397
#, c-format
msgid "ppdc: Expected string after Version on line %d of %s."
msgstr "ppdc: Se esperaba una cadena tras Version en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:728
#, c-format
msgid "ppdc: Expected two option names on line %d of %s."
msgstr "ppdc: Se esperaban dos nombres de opciones en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:372
#, c-format
msgid "ppdc: Expected value after %s on line %d of %s."
msgstr "ppdc: Se esperaba un valor tras %s en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1085
#, c-format
msgid "ppdc: Expected version after Font on line %d of %s."
msgstr "ppdc: Se esperaba una versión tras Font en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:227
#, c-format
msgid "ppdc: Invalid #include/#po filename \"%s\"."
msgstr "ppdc: Nombre de archivo #include/#po incorrecto \"%s\"."
+#: ppdc/ppdc-source.cxx:972
#, c-format
msgid "ppdc: Invalid cost for filter on line %d of %s."
msgstr "ppdc: Coste incorrecto para el filtro en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:964
#, c-format
msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
msgstr "ppdc: Tipo MIME vacío incorrecto para el filtro en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:980
#, c-format
msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-"ppdc: Nombre de programa vacío incorrecto para el filtro en la línea %d de %"
-"s."
+msgstr "ppdc: Nombre de programa vacío incorrecto para el filtro en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1628
#, c-format
msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
msgstr "ppdc: Sección de opción incorrecta \"%s\" en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1600
#, c-format
msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
msgstr "ppdc: Tipo de opción incorrecta \"%s\" en la línea %d de %s."
+#: ppdc/ppdc.cxx:251
+#: ppdc/ppdpo.cxx:123
#, c-format
msgid "ppdc: Loading driver information file \"%s\"."
msgstr "ppdc: Cargando archivo de información de controlador \"%s\"."
+#: ppdc/ppdc.cxx:187
#, c-format
msgid "ppdc: Loading messages for locale \"%s\"."
msgstr "ppdc: Cargando mensajes del idioma \"%s\"."
+#: ppdc/ppdc.cxx:126
#, c-format
msgid "ppdc: Loading messages from \"%s\"."
msgstr "ppdc: Cargando mensajes desde \"%s\"."
+#: ppdc/ppdc-source.cxx:2412
+#: ppdc/ppdc-source.cxx:2644
#, c-format
msgid "ppdc: Missing #endif at end of \"%s\"."
msgstr "ppdc: Falta un #endif al final de \"%s\"."
+#: ppdc/ppdc-source.cxx:2513
+#: ppdc/ppdc-source.cxx:2548
+#: ppdc/ppdc-source.cxx:2578
#, c-format
msgid "ppdc: Missing #if on line %d of %s."
msgstr "ppdc: Falta un #if en la línea %d de %s."
+#: ppdc/ppdc-catalog.cxx:418
#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-"ppdc: Se necesita una línea msgid antes de cualquier cadena de traducción en "
-"línea %d de %s."
+msgid "ppdc: Need a msgid line before any translation strings on line %d of %s."
+msgstr "ppdc: Se necesita una línea msgid antes de cualquier cadena de traducción en línea %d de %s."
+#: ppdc/ppdc-driver.cxx:730
#, c-format
msgid "ppdc: No message catalog provided for locale %s."
msgstr "ppdc: No se ha proporcionado catálogo de mensajes para el idioma %s."
+#: ppdc/ppdc-source.cxx:1651
+#: ppdc/ppdc-source.cxx:2882
+#: ppdc/ppdc-source.cxx:2968
+#: ppdc/ppdc-source.cxx:3061
+#: ppdc/ppdc-source.cxx:3194
+#: ppdc/ppdc-source.cxx:3327
#, c-format
msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-"ppdc: Opción %s definida en dos diferentes grupos en la línea %d de %s."
+msgstr "ppdc: Opción %s definida en dos diferentes grupos en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1644
#, c-format
msgid "ppdc: Option %s redefined with a different type on line %d of %s."
msgstr "ppdc: Opción %s redefinida con un tipo diferente en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:705
#, c-format
msgid "ppdc: Option constraint must *name on line %d of %s."
msgstr "ppdc: Opción de restricción debe *name en línea %d de %s."
+#: ppdc/ppdc-source.cxx:2495
#, c-format
msgid "ppdc: Too many nested #if's on line %d of %s."
msgstr "ppdc: Demasiados #if anidados en la línea %d de %s."
+#: ppdc/ppdc.cxx:374
#, c-format
msgid "ppdc: Unable to create PPD file \"%s\" - %s."
msgstr "ppdc: No se ha podido crear el archivo PPD \"%s\" - %s."
+#: ppdc/ppdc.cxx:266
#, c-format
msgid "ppdc: Unable to create output directory %s: %s"
msgstr "ppdc: No se ha podido crear el directorio de salida %s: %s"
+#: ppdc/ppdc.cxx:287
#, c-format
msgid "ppdc: Unable to create output pipes: %s"
msgstr "ppdc: No se han podido crear canales (pipes) de salida: %s"
+#: ppdc/ppdc.cxx:303
+#: ppdc/ppdc.cxx:309
#, c-format
msgid "ppdc: Unable to execute cupstestppd: %s"
msgstr "ppdc: No se ha podido ejecutar cupstestppd: %s"
+#: ppdc/ppdc-source.cxx:1730
#, c-format
msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-"ppdc: No se ha podido encontrar el archivo #po %s en la línea %d de %s."
+msgstr "ppdc: No se ha podido encontrar el archivo #po %s en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:2651
#, c-format
msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-"ppdc: No se ha podido encontrar el archivo include \"%s\" en la línea %d de %"
-"s."
+msgstr "ppdc: No se ha podido encontrar el archivo include \"%s\" en la línea %d de %s."
+#: ppdc/ppdc.cxx:198
#, c-format
msgid "ppdc: Unable to find localization for \"%s\" - %s"
msgstr "ppdc: No se ha podido encontrar localización para \"%s\" - %s"
+#: ppdc/ppdc.cxx:135
#, c-format
msgid "ppdc: Unable to load localization file \"%s\" - %s"
msgstr "ppdc: No se ha podido cargar el archivo de localización \"%s\" - %s"
+#: ppdc/ppdc-file.cxx:50
#, c-format
msgid "ppdc: Unable to open %s: %s"
msgstr "ppdc: No se pudo abrir %s: %s"
+#: ppdc/ppdc-source.cxx:2054
#, c-format
msgid "ppdc: Undefined variable (%s) on line %d of %s."
msgstr "ppdc: Variable no definida (%s) en la línea %d de %s."
+#: ppdc/ppdc-catalog.cxx:435
#, c-format
msgid "ppdc: Unexpected text on line %d of %s."
msgstr "ppdc: Texto inesperado en la línea %d del %s."
+#: ppdc/ppdc-source.cxx:2924
#, c-format
msgid "ppdc: Unknown driver type %s on line %d of %s."
msgstr "ppdc: Tipo de controlador desconocido %s en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:906
#, c-format
msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
msgstr "ppdc: Tipo dúplex desconocido \"%s\" en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:3154
#, c-format
msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
msgstr "ppdc: Tamaño de papel desconocido \"%s\" en la línea %d de %s."
+#: ppdc/ppdc-catalog.cxx:463
#, c-format
msgid "ppdc: Unknown message catalog format for \"%s\"."
msgstr "ppdc: Formato del catálogo de mensajes para \"%s\" desconocido."
+#: ppdc/ppdc-source.cxx:3408
#, c-format
msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
msgstr "ppdc: Elemento desconocido \"%s\" visto en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:1014
#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-"ppdc: Caracteres finales desconocidos en el número real \"%s\" en la línea %"
-"d de %s."
+msgid "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
+msgstr "ppdc: Caracteres finales desconocidos en el número real \"%s\" en la línea %d de %s."
+#: ppdc/ppdc-source.cxx:2164
#, c-format
msgid "ppdc: Unterminated string starting with %c on line %d of %s."
msgstr "ppdc: Cadena que comienza por %c sin terminar en la línea %d de %s."
+#: ppdc/ppdc.cxx:365
#, c-format
msgid "ppdc: Warning - overlapping filename \"%s\"."
msgstr "ppdc: Advertencia - nombre de archivo superpuesto \"%s\"."
+#: ppdc/ppdc.cxx:380
#, c-format
msgid "ppdc: Writing %s."
msgstr "ppdc: Escribiendo %s."
+#: ppdc/ppdc.cxx:148
#, c-format
msgid "ppdc: Writing PPD files to directory \"%s\"."
msgstr "ppdc: Escribiendo archivos PPD al directorio \"%s\"."
+#: ppdc/ppdmerge.cxx:136
#, c-format
msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
msgstr "ppdmerge: LanguageVersion \"%s\" incorrecto en %s."
+#: ppdc/ppdmerge.cxx:176
#, c-format
msgid "ppdmerge: Ignoring PPD file %s."
msgstr "ppdmerge: Ignorando archivo PPD %s."
+#: ppdc/ppdmerge.cxx:160
#, c-format
msgid "ppdmerge: Unable to backup %s to %s - %s"
msgstr "ppdmerge: No se ha podido hacer copia de seguridad de %s a %s- %s"
+#: systemv/lpstat.c:1784
#, c-format
msgid "printer %s disabled since %s -"
msgstr "la impresora %s está deshabilitada desde %s -"
+#: systemv/lpstat.c:1773
#, c-format
msgid "printer %s is idle. enabled since %s"
msgstr "la impresora %s está inactiva. activada desde %s"
+#: systemv/lpstat.c:1778
#, c-format
msgid "printer %s now printing %s-%d. enabled since %s"
msgstr "la impresora %s está imprimiendo %s-%d. activada desde %s"
+#: systemv/lpstat.c:1909
#, c-format
msgid "printer %s/%s disabled since %s -"
msgstr "la impresora %s/%s está desactivada desde %s -"
+#: systemv/lpstat.c:1895
#, c-format
msgid "printer %s/%s is idle. enabled since %s"
msgstr "la impresora %s/%s está inactiva. activada desde %s"
+#: systemv/lpstat.c:1902
#, c-format
msgid "printer %s/%s now printing %s-%d. enabled since %s"
msgstr "la impresora %s/%s está imprimiendo %s-%d. activada desde %s"
+#: cups/notify.c:93
+#: cups/notify.c:134
msgid "processing"
msgstr "en proceso"
+#: systemv/lp.c:644
#, c-format
msgid "request id is %s-%d (%d file(s))"
msgstr "la id solicitada es %s-%d (%d archivo(s))"
+#: cups/snmp.c:1020
msgid "request-id uses indefinite length"
msgstr "request-id usa una longitud indefinida"
+#: systemv/lpstat.c:2048
msgid "scheduler is not running"
msgstr "el planificador de tareas no se está ejecutando"
+#: systemv/lpstat.c:2044
msgid "scheduler is running"
msgstr "el planificador de tareas se está ejecutando"
+#: cups/adminutil.c:2159
#, c-format
msgid "stat of %s failed: %s"
msgstr "estado de %s ha fallado: %s"
+#: berkeley/lpc.c:211
msgid "status\t\tShow status of daemon and queue."
msgstr "status\t\tMuestra el estado del demonio (daemon) y la cola."
+#: cups/notify.c:96
+#: cups/notify.c:137
msgid "stopped"
msgstr "parada"
+#: systemv/lpstat.c:1017
#, c-format
msgid "system default destination: %s"
msgstr "destino predeterminado del sistema: %s"
+#: systemv/lpstat.c:1014
#, c-format
msgid "system default destination: %s/%s"
msgstr "destino predeterminado del sistema: %s/%s"
+#: cups/notify.c:108
+#: cups/notify.c:140
msgid "unknown"
msgstr "desconocido"
+#: cups/notify.c:117
msgid "untitled"
msgstr "sin título"
+#: cups/snmp.c:1045
msgid "variable-bindings uses indefinite length"
msgstr "variable-bindings usa una longitud indefinida"
-#~ msgid "Printer did not respond after %d seconds."
-#~ msgstr "La impresora no respondió tras %d segundos."
-
-#~ msgid "The printer is almost out of ink."
-#~ msgstr "La impresora casi no tiene tinta."
-
-#~ msgid "The printer is low on toner."
-#~ msgstr "La impresora tiene poco tóner."
-
-#~ msgid "The printer is out of toner."
-#~ msgstr "La impresora no tiene tóner."
-
-#~ msgid "Unable to connect to server"
-#~ msgstr "No se ha podido conectar al servidor"
-
-#~ msgid "Unable to get print job status."
-#~ msgstr "No se ha podido obtener el estado del trabajo de impresión."
diff --git a/locale/cups_eu.po b/locale/cups_eu.po
deleted file mode 100644
index a2dfbd1f..00000000
--- a/locale/cups_eu.po
+++ /dev/null
@@ -1,8895 +0,0 @@
-# translation of cups_1.4rc1_eu.po to Basque
-#
-# "$Id$"
-#
-# Message catalog template for CUPS.
-#
-# Copyright 2007-2011 by Apple Inc.
-# Copyright 2005-2007 by Easy Software Products.
-#
-# These coded instructions, statements, and computer programs are the
-# property of Apple Inc. and are protected by Federal copyright
-# law. Distribution and use rights are outlined in the file "LICENSE.txt"
-# which should have been included with this file. If this file is
-# file is missing or damaged, see the license at "http://www.cups.org/".
-#
-#
-# Notes for Translators:
-#
-# The following prefixes MUST NOT be translated: "ALERT:", "CRIT:", "INFO:",
-# "NOTICE:", and "WARNING:".
-#
-# The "checkpo" program located in the "locale" source directory can be used
-# to verify that your translations do not introduce formatting errors or other
-# problems. Run with:
-#
-# cd locale
-# ./checkpo cups_LL.po
-#
-# where "LL" is your locale.
-#
-# Iñaki Larrañaga Murgoitio <dooteo@euskalgnu.org>, 2009.
-msgid ""
-msgstr ""
-"Project-Id-Version: cups_1.4rc1_eu\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-07-03 19:34+0200\n"
-"Last-Translator: Iñaki Larrañaga Murgoitio <dooteo@euskalgnu.org>\n"
-"Language-Team: Basque <itzulpena@euskalgnu.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: eu\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f milimetro"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f -> %.0f x %.0f milimetro"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f hatz"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f -> %.2f x %.2f hatz"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s ezin da aldatu."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 hazt/seg"
-
-msgid "1.25x0.25\""
-msgstr "1.25x0.25\""
-
-msgid "1.25x2.25\""
-msgstr "1.25x2.25\""
-
-msgid "1.5 inch/sec."
-msgstr "1.5 hatz/seg"
-
-msgid "1.50x0.25\""
-msgstr "1.50x0.25\""
-
-msgid "1.50x0.50\""
-msgstr "1.50x0.50\""
-
-msgid "1.50x1.00\""
-msgstr "1.50x1.00\""
-
-msgid "1.50x2.00\""
-msgstr "1.50x2.00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 hatz/seg"
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/seg"
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 hatz/seg"
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 hatz/seg"
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/seg"
-
-msgid "120x60dpi"
-msgstr "120x60dpi"
-
-msgid "120x72dpi"
-msgstr "120x72dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/seg"
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/seg"
-
-msgid "150dpi"
-msgstr "150dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 hatz/seg"
-
-msgid "2-Sided Printing"
-msgstr "2 alboetatik inprimatzea"
-
-msgid "2.00x0.37\""
-msgstr "2.00x0.37\""
-
-msgid "2.00x0.50\""
-msgstr "2.00x0.50\""
-
-msgid "2.00x1.00\""
-msgstr "2.00x1.00\""
-
-msgid "2.00x1.25\""
-msgstr "2.00x1.25\""
-
-msgid "2.00x2.00\""
-msgstr "2.00x2.00\""
-
-msgid "2.00x3.00\""
-msgstr "2.00x3.00\""
-
-msgid "2.00x4.00\""
-msgstr "2.00x4.00\""
-
-msgid "2.00x5.50\""
-msgstr "2.00x5.50\""
-
-msgid "2.25x0.50\""
-msgstr "2.25x0.50\""
-
-msgid "2.25x1.25\""
-msgstr "2.25x1.25\""
-
-msgid "2.25x4.00\""
-msgstr "2.25x4.00\""
-
-msgid "2.25x5.50\""
-msgstr "2.25x5.50\""
-
-msgid "2.38x5.50\""
-msgstr "2.38x5.50\""
-
-msgid "2.5 inches/sec."
-msgstr "2.hatz/seg"
-
-msgid "2.50x1.00\""
-msgstr "2.50x1.00\""
-
-msgid "2.50x2.00\""
-msgstr "2.50x2.00\""
-
-msgid "2.75x1.25\""
-msgstr "2.75x1.25\""
-
-msgid "2.9 x 1\""
-msgstr "2.9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/seg"
-
-msgid "200 mm/sec."
-msgstr "200 mm/seg"
-
-msgid "203dpi"
-msgstr "203dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24 orrratzeko serieak"
-
-msgid "240x72dpi"
-msgstr "240x72dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/seg"
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 hatz/seg"
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3.00x1.00\""
-
-msgid "3.00x1.25\""
-msgstr "3.00x1.25\""
-
-msgid "3.00x2.00\""
-msgstr "3.00x2.00\""
-
-msgid "3.00x3.00\""
-msgstr "3.00x3.00\""
-
-msgid "3.00x5.00\""
-msgstr "3.00x5.00\""
-
-msgid "3.25x2.00\""
-msgstr "3.25x2.00\""
-
-msgid "3.25x5.00\""
-msgstr "3.25x5.00\""
-
-msgid "3.25x5.50\""
-msgstr "3.25x5.50\""
-
-msgid "3.25x5.83\""
-msgstr "3.25x5.83\""
-
-msgid "3.25x7.83\""
-msgstr "3.25x7.83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "3.5\" diskoa"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3.5\" diskoa - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3.50x1.00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/seg"
-
-msgid "300 mm/sec."
-msgstr "300 mm/seg"
-
-msgid "300dpi"
-msgstr "300dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360dpi"
-
-msgid "360x180dpi"
-msgstr "360x180dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 hatz/seg"
-
-msgid "4.00x1.00\""
-msgstr "4.00x1.00\""
-
-msgid "4.00x13.00\""
-msgstr "4.00x13.00\""
-
-msgid "4.00x2.00\""
-msgstr "4.00x2.00\""
-
-msgid "4.00x2.50\""
-msgstr "4.00x2.50\""
-
-msgid "4.00x3.00\""
-msgstr "4.00x3.00\""
-
-msgid "4.00x4.00\""
-msgstr "4.00x4.00\""
-
-msgid "4.00x5.00\""
-msgstr "4.00x5.00\""
-
-msgid "4.00x6.00\""
-msgstr "4.00x6.00\""
-
-msgid "4.00x6.50\""
-msgstr "4.00x6.50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/seg"
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 hatz/seg"
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 hatz/seg"
-
-msgid "6.00x1.00\""
-msgstr "6.00x1.00\""
-
-msgid "6.00x2.00\""
-msgstr "6.00x2.00\""
-
-msgid "6.00x3.00\""
-msgstr "6.00x3.00\""
-
-msgid "6.00x4.00\""
-msgstr "6.00x4.00\""
-
-msgid "6.00x5.00\""
-msgstr "6.00x5.00\""
-
-msgid "6.00x6.00\""
-msgstr "6.00x6.00\""
-
-msgid "6.00x6.50\""
-msgstr "6.00x6.50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/seg"
-
-msgid "600dpi"
-msgstr "600dpi"
-
-msgid "60dpi"
-msgstr "60dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 hatz/seg"
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 hatz/seg"
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8.00x1.00\""
-
-msgid "8.00x2.00\""
-msgstr "8.00x2.00\""
-
-msgid "8.00x3.00\""
-msgstr "8.00x3.00\""
-
-msgid "8.00x4.00\""
-msgstr "8.00x4.00\""
-
-msgid "8.00x5.00\""
-msgstr "8.00x5.00\""
-
-msgid "8.00x6.00\""
-msgstr "8.00x6.00\""
-
-msgid "8.00x6.50\""
-msgstr "8.00x6.50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/seg"
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 hatz/seg"
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "9 orratzeko serieak"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Onartu lanak"
-
-msgid "Accepted"
-msgstr "Onartuta"
-
-msgid "Add Class"
-msgstr "Gehitu klasea"
-
-msgid "Add Printer"
-msgstr "Gehitu inprimagailua"
-
-msgid "Add RSS Subscription"
-msgstr "Gehitu RSS harpidetza"
-
-msgid "Address"
-msgstr "Helbidea"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Helbidea - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Administrazioa"
-
-msgid "Always"
-msgstr "Beti"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Aplikatzailea"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Okerreko helburuko NULL erakuslea"
-
-msgid "Bad OpenGroup"
-msgstr "Okerreko OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "Okerreko OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "Okerreko OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Okerreko eskaera"
-
-msgid "Bad SNMP version number"
-msgstr "Okerreko SNMP bertsio zenbakia"
-
-msgid "Bad UIConstraints"
-msgstr "Okerreko UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Okerreko kopien %d balioa."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Okerreko parametro pertsonalizatua"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Okerreko number-up balioa: %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Okerreko page-ranges balioak: %d-%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Titularrak"
-
-msgid "Billing Information: "
-msgstr "Fakturazioaren informazioa: "
-
-msgid "Bond Paper"
-msgstr "Tituluentzako papera"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "CPCL etiketen inprimagailua"
-
-msgid "Cancel RSS Subscription"
-msgstr "Utzi RSS harpidetza"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Aldatu ezarpenak"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Klaseak"
-
-msgid "Clean Print Heads"
-msgstr "Garbitu inprimatze-buruak"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Kolorea"
-
-msgid "Color Mode"
-msgstr "Koloreen modua"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Komunitatearen izenak definitu gabeko luzera darabil"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Jarraitu"
-
-msgid "Continuous"
-msgstr "Jarraia"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Sortuta"
-
-msgid "Created On: "
-msgstr "Sorrera-data:"
-
-msgid "Custom"
-msgstr "Pertsonalizatu"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Ebaki"
-
-msgid "Cutter"
-msgstr "Ebakigailua"
-
-msgid "Dark"
-msgstr "Iluna"
-
-msgid "Darkness"
-msgstr "Iluntasuna"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Ezabatu klasea"
-
-msgid "Delete Printer"
-msgstr "Ezabatu inprimagailua"
-
-msgid "Description: "
-msgstr "Deskripzioa: "
-
-msgid "DeskJet Series"
-msgstr "DeskJet serieak"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "\"%s\" helburuak ez du lanik onartzen."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Zuzeneko euskarri termikoa"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Desgaituta"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Kontrolatzailearen izena:"
-
-msgid "Driver Version: "
-msgstr "Kontrolatzailearen bertsioa:"
-
-msgid "Duplexer"
-msgstr "Duplexatzailea"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1 etiketen inprimagailua"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2 etiketen inprimagailua"
-
-msgid "Edit Configuration File"
-msgstr "Editatu konfigurazioko fitxategia"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Titularraren amaiera"
-
-msgid "English"
-msgstr "Basque"
-
-msgid "Enter old password:"
-msgstr "Sartu pasahitz zaharra:"
-
-msgid "Enter password again:"
-msgstr "Sartu pasahitza berriro:"
-
-msgid "Enter password:"
-msgstr "Sartu pasahitza:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Idatzi zure erabiltzaile-izena eta pasahitza, edo supererabiltzailearen "
-"izena eta pasahitza, orrialde honetara sarbidetzeko. Kerberos "
-"autentifikazioa erabiltzen ari bazara, ziurtatu zaitez baliozko Kerberos "
-"txartela duzula."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Gutunazalen iturria"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Erroreen politika"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "10 etiketez behin"
-
-msgid "Every 2 Labels"
-msgstr "2 etiketez behin"
-
-msgid "Every 3 Labels"
-msgstr "3 etiketez behin"
-
-msgid "Every 4 Labels"
-msgstr "4 etiketez behin"
-
-msgid "Every 5 Labels"
-msgstr "5 etiketez behin"
-
-msgid "Every 6 Labels"
-msgstr "6 etiketez behin"
-
-msgid "Every 7 Labels"
-msgstr "7 etiketez behin"
-
-msgid "Every 8 Labels"
-msgstr "8 etiketez behin"
-
-msgid "Every 9 Labels"
-msgstr "9 etiketez behin"
-
-msgid "Every Label"
-msgstr "Etiketa bakoitzeko"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Espero zenak huts egin du"
-
-msgid "Export Printers to Samba"
-msgstr "Esportatu inprimagailuak Samba-ra"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Fitxategien karpeta"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Fitxategien karpeta - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Folioa"
-
-msgid "Forbidden"
-msgstr "Debekatua"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Orokorra"
-
-msgid "Generic"
-msgstr "Generikoa"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU definitu gabeko luzera darabil"
-
-msgid "Glossy Paper"
-msgstr "Paper satinatua"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Gris-eskala"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Esekitako karpeta"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Esekitako karpeta - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Kontrol-karaktere ilegala"
-
-msgid "Illegal main keyword string"
-msgstr "Gako-hitzaren kate nagusia ilegala"
-
-msgid "Illegal option keyword string"
-msgstr "Aukeraren gako-hitzaren katea ilegala"
-
-msgid "Illegal translation string"
-msgstr "Itzulpenaren katea ilegala"
-
-msgid "Illegal whitespace character"
-msgstr "Zuriunea karakterea ilegala"
-
-msgid "Installable Options"
-msgstr "Aukera instalagarriak"
-
-msgid "Installed"
-msgstr "Instalatuta"
-
-msgid "IntelliBar Label Printer"
-msgstr "IntelliBar etiketen inprimagailua"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr "Zerbitzariaren barneko errorea"
-
-msgid "Internal error"
-msgstr "Barneko errorea"
-
-msgid "Internet Postage 2-Part"
-msgstr "Interneteko posta 2. zatia"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Interneteko posta 2. zatia - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Interneteko posta 3. zatia"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Interneteko posta 3. zatia - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Interneten inPrimatzeko Protokoloa"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "%d. lana jadanik abortatuta dago, ezin da bertan behera utzi."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr ""
-"%d. lana jadanik bertan behera utzita dago, ezin da bertan behera utzi."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "%d. lana jadanik burututa dago, ezin da bertan behera utzi."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Lana burututa"
-
-msgid "Job Created"
-msgstr "Lana sortuta"
-
-msgid "Job ID: "
-msgstr "Lanaren IDa: "
-
-msgid "Job Options Changed"
-msgstr "Lanaren aukerak aldatuta"
-
-msgid "Job Stopped"
-msgstr "Lana geldituta"
-
-msgid "Job UUID: "
-msgstr "Lanaren UUIDa:"
-
-msgid "Job is completed and cannot be changed."
-msgstr "Lana burututa dago eta ezin da aldatu."
-
-msgid "Job operation failed:"
-msgstr "Lanaren eragiketak huts egin du:"
-
-msgid "Job state cannot be changed."
-msgstr "Lanaren egoera ezin da aldatu."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Lanak"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR ostalaria edo inprimagailua"
-
-msgid "Label Printer"
-msgstr "Etiketen inprimagailua"
-
-msgid "Label Top"
-msgstr "Etiketaren goian"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Helbide luzea"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Helbide luzea - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet PCL 4/5 serieak"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Argia"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Lerroa baimendutako gehienezkoa (255 karaktere) baino luzeagoa"
-
-msgid "List Available Printers"
-msgstr "Inprimagailu erabilgarrien zerrenda"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Kokalekua: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Ertz-luzea (bertikala)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Marka eta modeloa: "
-
-msgid "Manual Feed"
-msgstr "Eskuzko iturria"
-
-msgid "Media Dimensions: "
-msgstr "Paperaren dimentsioak: "
-
-msgid "Media Limits: "
-msgstr "Paperaren mugak: "
-
-msgid "Media Name: "
-msgstr "Paperaren izena: "
-
-msgid "Media Size"
-msgstr "Paperaren tamaina"
-
-msgid "Media Source"
-msgstr "Paperaren iturria"
-
-msgid "Media Tracking"
-msgstr "Paperaren jarraipena"
-
-msgid "Media Type"
-msgstr "Paper mota"
-
-msgid "Medium"
-msgstr "Euskarria"
-
-msgid "Memory allocation error"
-msgstr "Errorea memoria esleitzean"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "PPD-Adobe-4.x goiburukoa falta da"
-
-msgid "Missing asterisk in column 1"
-msgstr "Izartxoa falta da 1. zutabean"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Balioaren katea falta da"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Aldatu klasea"
-
-msgid "Modify Printer"
-msgstr "Aldatu inprimagailua"
-
-msgid "Move All Jobs"
-msgstr "Aldatu lan guztiak lekuz"
-
-msgid "Move Job"
-msgstr "Aldatu lana lekuz"
-
-msgid "Moved Permanently"
-msgstr "Betirako lekuz aldatuta"
-
-msgid "NULL PPD file pointer"
-msgstr "PPD fitxategiaren erakusle NULUA"
-
-msgid "Name OID uses indefinite length"
-msgstr "Izenaren OIDak definitu gabeko luzera darabil"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Inoiz ere ez"
-
-msgid "New Stylus Color Series"
-msgstr "Stylus Color serie berriak"
-
-msgid "New Stylus Photo Series"
-msgstr "Stylus Photo serie berriak"
-
-msgid "No"
-msgstr "Ez"
-
-msgid "No Content"
-msgstr "Edukirik ez"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "'VarBind SEQUENCE'-rik ez"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Ez dago konexio aktiborik"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Ez dago komunitatearen izenik"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Ez da helbururik gehitu."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Ez dago error-index parametroa"
-
-msgid "No error-status"
-msgstr "Ez dago error-status parametroa"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Ez dago izenaren OIDrik"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Ez dago request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Ez da harpidetzarik aurkitu."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Ez dago 'variable-bindings SEQUENCE'-rik"
-
-msgid "No version number"
-msgstr "Ez dago bertsioaren zenbakirik"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Ez da jarraia (markaren detekzioa)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Ez da jarraia (web detekzioa)"
-
-msgid "Normal"
-msgstr "Arrunta"
-
-msgid "Not Found"
-msgstr "Ez da aurkitu"
-
-msgid "Not Implemented"
-msgstr "Ez dago garatuta"
-
-msgid "Not Installed"
-msgstr "Ez dago instalatuta"
-
-msgid "Not Modified"
-msgstr "Ez dago aldatuta"
-
-msgid "Not Supported"
-msgstr "EZ dago onartuta"
-
-msgid "Not allowed to print."
-msgstr "Inprimatzea ez dago baimenduta."
-
-msgid "Note"
-msgstr "Oharra"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "Ados"
-
-msgid "Off (1-Sided)"
-msgstr "Desaktibatuta (1 aldea)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Lineako laguntza"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "Huts egin du %s irekitzean: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup aurreko CloseGroup-rik gabe"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI aurreko CloseUI/JCLCloseUI-rik gabe"
-
-msgid "Operation Policy"
-msgstr "Eragiketaren politika"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Instalatutako aukerak"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Aukerak: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Irteeraren modua"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "PCL laser inprimagailua"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Paketeak ez dauka Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Paketeak ez da SEQUENCErekin hasten"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "%s(r)en pasahitza %s(e)n?"
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "%s(r)en pasahitza behar da %s(e)n SAMBA bidez sarbidetzeko: "
-
-msgid "Pause Class"
-msgstr "Pausatu klasea"
-
-msgid "Pause Printer"
-msgstr "Pausatu inprimagailua"
-
-msgid "Peel-Off"
-msgstr "Altxatu"
-
-msgid "Photo"
-msgstr "Argazkia"
-
-msgid "Photo Labels"
-msgstr "Argakien etiketak"
-
-msgid "Plain Paper"
-msgstr "Paper soila"
-
-msgid "Policies"
-msgstr "Politikak"
-
-msgid "Port Monitor"
-msgstr "Atakaren monitorea"
-
-msgid "PostScript Printer"
-msgstr "PostScript inprimagailua"
-
-msgid "Postcard"
-msgstr "Postala"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Inprimatze-dentsitatea"
-
-msgid "Print Job:"
-msgstr "Inprimatzeko lana:"
-
-msgid "Print Mode"
-msgstr "Inprimatze modua"
-
-msgid "Print Rate"
-msgstr "Inprimatze-emaria"
-
-msgid "Print Self-Test Page"
-msgstr "Inprimatu auto-probako orrialdea"
-
-msgid "Print Speed"
-msgstr "Inprimatzeko abiadura"
-
-msgid "Print Test Page"
-msgstr "Inprimatu probako orrialdea"
-
-msgid "Print and Cut"
-msgstr "Inprimatu eta ebaki"
-
-msgid "Print and Tear"
-msgstr "Inprimatu eta altxatu"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Honentzako inprimatuta: "
-
-msgid "Printed From: "
-msgstr "Hemendik inprimatuta: "
-
-msgid "Printed On: "
-msgstr "Inprimatze-data: "
-
-msgid "Printer Added"
-msgstr "Inprimagailua gehituta"
-
-msgid "Printer Default"
-msgstr "Inprimagailu lehenetsia"
-
-msgid "Printer Deleted"
-msgstr "Inprimagailua ezabatuta"
-
-msgid "Printer Modified"
-msgstr "Inprimagailua aldatuta"
-
-msgid "Printer Name: "
-msgstr "Inprimagailuaren izena: "
-
-msgid "Printer Paused"
-msgstr "Inprimagailua pausatuta"
-
-msgid "Printer Settings"
-msgstr "Inprimagailuaren ezarpenak"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Inprimagailua:"
-
-msgid "Printers"
-msgstr "Inprimagailuak"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Garbitu lanak"
-
-msgid "Quarto"
-msgstr "Laurdena"
-
-msgid "Quota limit reached."
-msgstr "Kuotaren mugara iritsita."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Ukatu lanak"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Inprimatu berriro erroreen ostean"
-
-msgid "Request Entity Too Large"
-msgstr "Eskaeraren entitatea luzeegia"
-
-msgid "Resolution"
-msgstr "Bereizmena"
-
-msgid "Resume Class"
-msgstr "Jarraitu klasea"
-
-msgid "Resume Printer"
-msgstr "Jarraitu inprimagailua"
-
-msgid "Return Address"
-msgstr "Itzulerako helbidea"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Itzulerako helbidea - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Birboninatu"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCEk definitu gabeko luzera darabil"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Ikusi besteak"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Serieko %d. ataka"
-
-msgid "Server Restarted"
-msgstr "Zerbitzaria berrabiarazita"
-
-msgid "Server Security Auditing"
-msgstr "Zerbitzariko segurtasun auditoretza"
-
-msgid "Server Started"
-msgstr "Zerbitzaria abiarazita"
-
-msgid "Server Stopped"
-msgstr "Zerbitzaria geldituta"
-
-msgid "Service Unavailable"
-msgstr "Zerbitzaria ez dago eskuragarri"
-
-msgid "Set Allowed Users"
-msgstr "Ezarri baimendutako erabiltzaileak"
-
-msgid "Set As Server Default"
-msgstr "Ezarri zerbitzari lehenetsi gisa"
-
-msgid "Set Class Options"
-msgstr "Ezarri klasearen aukerak"
-
-msgid "Set Printer Options"
-msgstr "Ezarri inprimagailuaren aukerak"
-
-msgid "Set Publishing"
-msgstr "Argitaratu"
-
-msgid "Shipping Address"
-msgstr "Bidaltzeko helbidea"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Bidaltzeko helbidea - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Ertz laburra (horizontala)"
-
-msgid "Special Paper"
-msgstr "Paper berezia"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Estandarra"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Hasierako titularra"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Instrukzioa"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color serieak"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo serieak"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Protokoloak aldatzen"
-
-msgid "Tabloid"
-msgstr "Tabloidea"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Altxatu"
-
-msgid "Tear-Off"
-msgstr "Altxatu"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Altxatze-posizioaren doiketa"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "Ezin izan da \"%s\" PPD fitxategia aurkitu."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "Ezin izan da \"%s\" PPD fitxategia ireki: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Klasearen izenak inprimagarriak diren 127 karaktere sooilik eduki ditzake, "
-"eta ezin du zuriune, barrak (/) edo traolaren (#) ikurrik eduki."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr "notify-lease-duration atributua ezin da erabili lanen harpidetzekin."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Inprimagailuaren izenak inprimagarriak diren 127 karaktere sooilik eduki "
-"ditzake, eta ezin du zuriune, barrak (/) edo traolaren (#) ikurrik eduki."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "\"%s\" printer-uri atributuak baliogabeko karaktereak ditu."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"printer-uri \"ipp://OSTALARIIZENA/classes/KLASEIZENA\" erakoa izan behar du."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"printer-uri \"ipp://OSTALARIIZENA/printers/INPRIMAGAILUIZENA\" erakoa izan "
-"behar du."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"Harpidetzaren izenak inprimagarriak ezin du zuriune, barrak (/), galdera "
-"ikurra (?) edo traolaren (#) ikurrik eduki."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Harpidetza gehiegi daude."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Transferentzia termikoaren euskarria"
-
-msgid "Title: "
-msgstr "Titulua: "
-
-msgid "Too many active jobs."
-msgstr "Lan aktibo gehiegi."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Gardentasuna"
-
-msgid "Tray"
-msgstr "Erretilua"
-
-msgid "Tray 1"
-msgstr "1. erretilua"
-
-msgid "Tray 2"
-msgstr "2. erretilua"
-
-msgid "Tray 3"
-msgstr "3. erretilua"
-
-msgid "Tray 4"
-msgstr "4. erretilua"
-
-msgid "URI Too Long"
-msgstr "URIa luzeegia"
-
-msgid "US Ledger"
-msgstr "US Ledger"
-
-msgid "US Legal"
-msgstr "US legala"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "US gutuna"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "USB zerieko %d. ataka"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Ezin da cupsd.conf fitxategia atzitu:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Ezin da RSS harpidetza gehitu:"
-
-msgid "Unable to add class:"
-msgstr "Ezin da klasea gehitu:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Ezin da inprimagailua gehitu:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Ezin da RSS harpidetza bertan behera utzi:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Ezin da printer-is-shared atributua aldatu:"
-
-msgid "Unable to change printer:"
-msgstr "Ezin da inprimagailua aldatu:"
-
-msgid "Unable to change server settings:"
-msgstr "Ezin dira zerbitzariaren ezarpenak aldatu:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Ezin da ostalariarekin konektatu."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Ezin da aldi baterako fitxategia sortu:"
-
-msgid "Unable to delete class:"
-msgstr "Ezin da klasea ezabatu:"
-
-msgid "Unable to delete printer:"
-msgstr "Ezin da inprimagailua ezabatu:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Ezin da mantenimenduko komandoa landu:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Ezin da klaseen zerrenda lortu:"
-
-msgid "Unable to get class status:"
-msgstr "Ezin da klasearen egoera lortu:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Ezin da inprimagailuen kontrolatzaileen zerrenda lortu:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Ezin dira inprimagailuaren atributuak lortu:"
-
-msgid "Unable to get printer list:"
-msgstr "Ezin da inprimagailuen zerrenda lortu:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Ezin da inprimagailuaren egoera lortu:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Ezin da klasea eraldatu:"
-
-msgid "Unable to modify printer:"
-msgstr "Ezin da inprimagailua eraldatu:"
-
-msgid "Unable to move job"
-msgstr "Ezin da lana lekuz aldatu"
-
-msgid "Unable to move jobs"
-msgstr "Ezin dira lanak lekuz aldatu"
-
-msgid "Unable to open PPD file"
-msgstr "Ezin da PPD fitxategia ireki"
-
-msgid "Unable to open PPD file:"
-msgstr "Ezin da PPD fitxategia ireki:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Ezin da cupsd.conf fitxategia ireki:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Ezin da probako orrialdea inprimatu:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Ezin dira aukerak ezarri:"
-
-msgid "Unable to set server default:"
-msgstr "Ezain da zerbitzari lehenetsia ezarri:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Ezin da cupsd.conf fitxategia igo:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Autorizaziorik ez"
-
-msgid "Units"
-msgstr "Unitateak"
-
-msgid "Unknown"
-msgstr "Ezezaguna"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "\"%s\" printer-error-policy ezezaguna."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "\"%s\" printer-op-policy ezezaguna."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Onartu gabeko balio mota"
-
-msgid "Upgrade Required"
-msgstr "Eguneratu egin behar da"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Balioak definitu gabeko luzera darabil"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind-ek definitu gabeko luzera darabil"
-
-msgid "Version uses indefinite length"
-msgstr "Bertsioak definitu gabeko luzera darabil"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Bai"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Orrialde hau honako URLan atxitu deakezu: <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "ZPL etiketen inprimagailua"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "abortatuta"
-
-msgid "canceled"
-msgstr "bertan behera utzita"
-
-msgid "completed"
-msgstr "burututa"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "cups-deviced programak huts egin du exekutatzean."
-
-msgid "cups-driverd failed to execute."
-msgstr "cups-driverd programak huts egin du exekutatzean."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "'error-index'-ek definitu gabeko luzera darabil"
-
-msgid "error-status uses indefinite length"
-msgstr "'error-status'-ek definitu gabeko luzera darabil"
-
-msgid "held"
-msgstr "eutsita"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "inaktibo"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "zain"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "prozesatzen"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "'request-id'-ek definitu gabeko luzera darabil"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "%s(e)n estatistikak huts egin du: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "geldituta"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "ezezaguna"
-
-msgid "untitled"
-msgstr "izengabea"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "'variable-bindings'-ek definitu gabeko luzera darabil"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(denak)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(bat ere ez)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d sarrera\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tHutsegitearen ostean: jarraitu\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tAlertak:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tTitularra behar da\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tKaraktere-jokoa:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tKonexioa: zuzena\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tKonexioa: urrunekoa\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tOrrialde-tamaina lehenetsia:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tTarte lehenetsia:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tAtakaren ezarpen lehenetsiak:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tDeskripzioa: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tInprimakia muntatuta:\n"
-#~ "\tEduki mota: edozer\n"
-#~ "\tInprimagailu motak: ezezaguna\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tBaimendutako inprimakiak:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tInterfazea: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tInterfazea: %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tInterfazea: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tKokalekua: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tHutsegitean: alertarik ez\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tBaimendutako erabiltzaileak:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tUkatutako erabiltzaileak:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tdaemona badago\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tsarrerarik ez\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tinprimagailua '%s' gailuan dago abiadura -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tinprimatzea desgaituta dago\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tinprimatzea gaituta dago\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\t%s(e)n ilaratuta\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tilaratzea desgaituta\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tilaratzea gaituta\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tarrazoi ezezaguna\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " ADOSTASUNAREN PROBAREN EMAITZ XEHETUA\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " Erref.: 15. orrialdea, 3.1 atala.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " Erref.: 15. orrialdea, 3.2 atala.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " Erref.: 19. orrialdea, 3.3 atala.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " Erref.: 20. orrialdea, 3.4 atala.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " Erref.: 27. orrialdea, 3.5 atala.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " Erref.: 42. orrialdea, 5.2 atala.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " Erref.: 16-17 orrialdeak, 3.2 atala.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " Erref.: 42-45 orrialdeak, 5.2 atala.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " Erref.: 45-46 orrialdeak, 5.2 atala.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " Erref.: 48-49 orrialdeak, 5.2 atala.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " Erref.: 52-54 orrialdeak, 5.2 atala.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f byte\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " BALIOZKOA Lehenetsia%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " BALIOZKOA DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " BALIOZKOA DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " BALIOZKOA FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " BALIOZKOA FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " BALIOZKOA LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " BALIOZKOA LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " BALIOZKOA Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " BALIOZKOA ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " BALIOZKOA NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " BALIOZKOA PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " BALIOZKOA PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " BALIOZKOA PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " BALIOZKOA PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " BALIOZKOA Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " BALIOZKOA ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " ABISUA \"%s %s\" gatazkan dago honekin: \"%s %s\"\n"
-#~ " (murriztapena=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " ABISUA %s(e)k ez dagozkion aukerak ditu.\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " ABISUA %s(e)k aurrizki amankomuna partekatzen du %s(r)ekin\n"
-#~ " Erref: 15. orrialdea, 3.2 atala.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " ABISUA Aukera lehenetsiak gatazkan.\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " ABISUA Duplex aukeraren %s gakoak baliteke behar ez bezala "
-#~ "funtzionatzea eta Duplex izena eduki beharko luke.\n"
-#~ " Erref: 122. orrialdea, 5.17 atala\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " ABISUA Fitxategiak nahastutako CR, LF eta CR-LF lerro amaierak "
-#~ "ditu.\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " ABISUA PPD 4.3 zehaztapenak LanguageEncoding behar du.\n"
-#~ " Erref: 56-57 orrialdeak, 5.3 atala.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " ABISUA %d lerroak zuriuneak soilik ditu.\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " ABISUA PPD 4.3 zehaztapenak Manufacturer behar du.\n"
-#~ " Erref: 58-59 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " ABISUA Windows-ekoak ez diren PPD fitxategien lerroak LFrekin "
-#~ "amaitu beharko lukete, ez CR-LFrekin\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " ABISUA PPDren %.1f bertsio zaharkitua.\n"
-#~ " Erref: 42. orrialdea, 5.2 atala.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " ABISUA PCFileName 8.3 baino luzeagoa da, eta PPD "
-#~ "zehaztapenaren bortxaketa da.\n"
-#~ " Erref: 61-62 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " ABISUA Protokoloek PJL dute, baina JCL atributuak ez daude "
-#~ "ezarrita.\n"
-#~ " Erref: 78-79 orrialdeak, 5.7 atala.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " ABISUA Protokoloek bai PJL bai BCP dituzte, baina TBCP espero "
-#~ "zen.\n"
-#~ " Erref: 78-79 orrialdeak, 5.7 atala.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " ABISUA PPD 4.3 zehaztapenak ShortNickName behar du.\n"
-#~ " Erref: 64-65 orrialdeak, 5.3 atala.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s ez da existitzen.\n"
-
-#~ msgid " %s %s file \"%s\" has the wrong capitalization!\n"
-#~ msgstr " %s %s \"%s\" fitxategiak okerreko kapitalizazioa du.\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Okerreko %s(r)en %s hautaketa.\n"
-#~ " Erref: 122. orrialdea, 5.17 atala.\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Okerreko \"%s\" UTF-8 itzulpeneko katea %s aukerarentzako.\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Okerreko \"%s\" UTF-8 itzulpeneko katea %s aukerarentzako, %s "
-#~ "hautaketa.\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Okerreko cupsFilter-en \"%s\" balioa\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s Okerreko %s cupsICCProfile.\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Okerreko cupsPreFilter-ren \"%s\" balioa.\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Okerreko %s cupsUIConstraints: \"%s\".\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Okerreko \"%s\" hizkuntza\n"
-
-#~ msgid " %s Bad spelling of %s - should be %s!\n"
-#~ msgstr " %s %s(r)en okerreko ortografia - %s izan beharko luke.\n"
-
-#~ msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID!\n"
-#~ msgstr " %s Ezin dira APScanAppPath eta APScanAppBundleID eman.\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s %s cupsUIConstraints hutsa\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s \"%s\" itzulpeneko katea falta da %s aukeran\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s \"%s\" itzulpeneko katea falta da %s aukeran, %s hautaketa.\n"
-
-#~ msgid " %s Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " %s APDialogExtension-en \"%s\" fitxategia falta da\n"
-
-#~ msgid " %s Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " %s APPrinterIconPath-en \"%s\" fitxategia falta da\n"
-
-#~ msgid " %s Missing APPrinterLowInkTool file \"%s\"\n"
-#~ msgstr " %s APPrinterLowInkTool-en \"%s\" fitxategia falta da\n"
-
-#~ msgid " %s Missing APPrinterUtilityPath file \"%s\"\n"
-#~ msgstr " %s APPrinterUtilityPath-en \"%s\" fitxategia falta da\n"
-
-#~ msgid " %s Missing APScanAppPath file \"%s\"\n"
-#~ msgstr " %s APScanAppPath-en \"%s\" fitxategia falta da\n"
-
-#~ msgid ""
-#~ " %s Missing REQUIRED PageRegion option!\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " %s BEHARREZKOA DEN PageRegion aukera falta da.\n"
-#~ " Erref: 100. orrialdea, 5.14 atala.\n"
-
-#~ msgid ""
-#~ " %s Missing REQUIRED PageSize option!\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " %s BEHARREZKOA DEN PageSize aukera falta da.\n"
-#~ " Erref: 99. orrialdea, 5.14 atala.\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s *%s %s aukera falta da \"*%s %s *%s %s\" UIConstraints-en\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s *%s %s aukera falta da %s cupsUIConstraints-en: \"%s\"\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s cupsFilter-en \"%s\" fitxategia falta da\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s cupsICCProfile-en \"%s\" fitxategia falta da.\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s cupsPreFilter-en \"%s\" fitxategia falta da\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s %s cupsUIResolver falta da\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s %s aukera falta da \"*%s %s *%s %s\" UIConstraints-en\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s %s aukera falta da %s cupsUIConstraints-en: \"%s\"\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s Ez da oinarrizko \"%s\" itzulpena sartu fitxategian.\n"
-
-#~ msgid ""
-#~ " %s Non-standard size name \"%s\"!\n"
-#~ " REF: Page 187, section B.2.\n"
-#~ msgstr ""
-#~ " %s Tamaina ez estandarra dauka \"%s\" izenak.\n"
-#~ " Erref: 187. orrialdea, B.2 atala.\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s BEHARREZKOA DEN %s(e)k ez du 'Bat ere ez' aukera definitzen.\n"
-#~ " Erref: 122. orrialdea, 5.17 atala.\n"
-
-#~ msgid " %s Size \"%s\" defined for %s but not for %s!\n"
-#~ msgstr ""
-#~ " %s \"%s\" tamaina definituta %s(r)entzako, baina ez honentzako: %"
-#~ "s.\n"
-
-#~ msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)!\n"
-#~ msgstr " %s \"%s\" tamainak ustekabeko dimentsioak ditu (%gx%g).\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr ""
-#~ " %s cupsICCProfile-ren %s hash balioak beste honekin talka egiten "
-#~ "du: %s\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s %s cupsUIResolver-ek begizta sortzen du\n"
-
-#~ msgid ""
-#~ " %s cupsUIResolver %s does not list at least two different "
-#~ "options!\n"
-#~ msgstr ""
-#~ " %s %s cupsUIResolver-ek ez du gutxienez bi aukera desberdin "
-#~ "zerrendatu.\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** %s aukeraren %s eta %s izenak letren "
-#~ "kapitalizazioan soilik desberdintzen dira.\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** %s 1284DeviceID izan behar du\n"
-#~ " Erref: 72. orrialdea, 5.5 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** OKERREKO Default%s %s\n"
-#~ " Erref: 40. orrialdea, 4.5 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** OKERREKO DefaultImageableArea %s.\n"
-#~ " Erref: 102. orrialdea, 5.15 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** OKERREKO DefaultPaperDimension %s.\n"
-#~ " Erref: 103. orrialdea, 5.15 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** OKERREKO JobPatchFile atributua fitxategian\n"
-#~ " Erref: 24. orrialdea, 3.4 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** OKERREKO Manufacturer (\"HP\" izan beharko luke)\n"
-#~ " Erref: 211. orrialdea, D.1 taula.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** OKERREKO Manufacturer (\"Oki\" izan beharko luke)\n"
-#~ " Erref: 211. orrialdea, D.1 taula.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** OKERREKO ModelName - \"%c\" ez dago baimenduta "
-#~ "katean.\n"
-#~ " Erref: 59-60 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** OKERREKO PSVersion - ez da \"(string) int\".\n"
-#~ " Erref: 62-64 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** OKERREKO Product - ez da \"(string)\".\n"
-#~ " Erref: 62. orrialdea, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** OKERREKO ShortNickName - 31 karaktere baino "
-#~ "luzeagoa.\n"
-#~ " Erref: 64-65 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** Okerreko %s %s aukera\n"
-#~ " Erref: 84. orrialdea, 5.9 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** Okerreko \"%s\" FileVersion\n"
-#~ " Erref: 56. orrialdea, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** Okerreko \"%s\" FormatVersion\n"
-#~ " Erref: 56. orrialdea, 5.3 atala.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** Okerreko %s LanguageEncoding - ISOLatin1 izan behar "
-#~ "du\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** Okerreko %s LanguageVersion - Ingelesa izan behar "
-#~ "du\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** Aukera lehenetsiaren kodea ezin da interpretatu: %"
-#~ "s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** %s aukeraren %s hautaketaren itzulpen-kate "
-#~ "lehenetsiak 8 biteko karaktereak ditu.\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** %s aukeraren itzulpen-kate lehenetsiak 8 biteko "
-#~ "karaktereak ditu.\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** %s eta %s talde-izenak letren kapitalizazioan "
-#~ "soilik desberdintzen dira.\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** %s aukeraren %s izenaren hainbat agerraldi daude.\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** %s eta %s aukeren izenak letra kapitalizatuetan "
-#~ "soilik desberdintzen dira.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** Default%s BEHARREZKOA DA\n"
-#~ " Erref: 40. orrialdea, 4.5 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** DefaultImageableArea BEHARREZKOA DA\n"
-#~ " Erref: 102. orrialdea, 5.15 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** DefaultPaperDimension BEHARREZKOA DA\n"
-#~ " Erref: 103. orrialdea, 5.15 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** FileVersion BEHARREZKOA DA\n"
-#~ " Erref: 56. orrialdea, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** FormatVersion BEHARREZKOA DA\n"
-#~ " Erref: 56. orrialdea, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** ImageableArea BEHARREZKOA DA %s PageSize-rentzako\n"
-#~ " Erref: 41. orrialdea, 5 atala.\n"
-#~ " Erref: 102. orrialdea, 5.15 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** LanguageEncoding BEHARREZKOA DA\n"
-#~ " Erref: 56-57 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** LanguageVersion BEHARREZKOA DA\n"
-#~ " Erref: 57-58 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** Manufacturer BEHARREZKOA DA\n"
-#~ " Erref: 58-59 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** ModelName BEHARREZKOA DA\n"
-#~ " Erref: 59-60 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** NickName BEHARREZKOA DA\n"
-#~ " Erref: 60. orrialdea, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** PCFileName BEHARREZKOA DA\n"
-#~ " Erref: 61-62 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** PSVersion BEHARREZKOA DA\n"
-#~ " Erref: 62-64 orrialdeak, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** PageRegion BEHARREZKOA DA\n"
-#~ " Erref: 100. orrialdea, 5.14 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** REQUIRED BEHARREZKOA DA\n"
-#~ "ageSize\n"
-#~ " Erref: EF. orrialdea: atalasection 5.\n"
-#~ " Erref: EF. orrialdea: sec atalation 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** PageSize BEHARREZKOA DA\n"
-#~ " Erref: 99-100 orrialdeak, 5.14 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** PaperDimension BEHARREZKOA DA %s PageSize-rentzako\n"
-#~ " Erref: 41. orrialdea, 5 atala.\n"
-#~ " Erref: 103. orrialdea, 5.15 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** Product BEHARREZKOA DA\n"
-#~ " Erref: 62. orrialdea, 5.3 atala.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **HUTSEGITEA** ShortNickName BEHARREZKOA DA\n"
-#~ " Erref: 64-65 orrialdeak, 5.3 atala.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d ERRORE AURKITU DIRA\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " Okerreko %%%%BoundingBox: %d lerroan\n"
-#~ " Erref: 39. orrialdea, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " Okerreko %%%%Page: %d lerroan\n"
-#~ " Erref: 53. orrialdea, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " Okerreko %%%%Pages: %d lerroan\n"
-#~ " Erref: 43. orrialdea, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " %d lerroa 255 karaktere baino luzeagoa da (%d)!\n"
-#~ " Erref: 25. orrialdea, lerroaren luzera\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " %!PS-Adobe-3.0 falta da aurreneko lerroan\n"
-#~ " Erref: 17. orrialdea, 3.1 Adostasunaren dokumentuak\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " %%EndComments iruzkina falta da\n"
-#~ " Erref: 41. orrialdea, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%BoundingBox okerrekoa edo falta da: iruzkina\n"
-#~ " Erref: 39. orrialdea, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " %%Page okerrekoa edo falta da: iruzkinak\n"
-#~ " Erref: 53. orrialdea, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " %%Pages okerrekoa edo falta da: iruzkina\n"
-#~ " Erref: 43. orrialdea, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " EZ DA ERRORERIK AURKITU\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " 255 karaktere baino luzeagoak diren %d lerro aurkitu dira\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " %%BeginDocument iruzkin gehiegi\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " %%EndDocument iruzkin gehiegi\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Abisua: fitxategiak datu bitarrak ditu\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Abisua: ez dago %%EndComments iruzkinik fitxategian\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Abisua: DSC %.1f bertsio zaharkitua fitxategian\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " HUTSEGITEA\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " HUTSEGITEA\n"
-#~ " **HUTSEGITEA** Ezin da PPD fitxategia ireki - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " HUTSEGITEA\n"
-#~ " **HUTSEGITEA** Ezin da PPD fitxategia ireki - %s %d lerroan.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " BALIOZKOA\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "10. gutunazala"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "11. gutunazala"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "12. gutunazala"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "14. gutunazala"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "9. gutunazala"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f byte\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f byte\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s(e)k eskaerak onartzen ditu %s unetik\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s ez dago CUPSen lpc bertsioan garatuta.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s ez dago prest\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s prest dago\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s prest dago eta inprimatzen\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s(e)k ez du eskaerarik onartzen %s unetik\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s ez dago onartuta."
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s-(e)k eskaerak onartzen ditu %s unetik\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s-(e)k ez ditu eskaerarik onartzen %s unetik\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [%d lana localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s(e)k huts egin du: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: ez daki zer egin.\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: errorea - Inguruneko %s aldagaiak existitzen ez den \"%s\" helburua "
-#~ "izendatzen du\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: errorea - lanaren okerreko IDa\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: errorea - ezin dira fitxategiak inprimatu eta aldi berean lanak "
-#~ "aldatu\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: errorea - ezin da stdin-etik inprimatu fitxategiak edo lan baten IDa "
-#~ "ematen bada\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: errorea - '-S' aukeraren ondoren karaktere-jokoa espero zen\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: errorea - '-T' aukeraren ondoren eduki mota espero zen\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: errorea - '-n' aukeraren ondoren kopiak espero ziren\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr ""
-#~ "%s: errorea - '-#' aukeraren ondoren kopien zenbatzailea espero zen\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: errorea - '-P' aukeraren ondoren helburua espero zen\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: errorea - '-b' aukeraren ondoren helburua espero zen\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: errorea - '-d' aukeraren ondoren helburua espero zen\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: errorea - '-f' aukeraren ondoren inprimakia espero zen\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: errorea - '-H' aukeraren ondoren eusteko izena espero zen\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: errorea - '-H' aukeraren ondoren ostalari-izena espero zen\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: errorea - '-h' aukeraren ondoren ostalari-izena espero zen\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: errorea - '-y' aukeraren ondoren moduen zerrenda espero zen\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: errorea - '-%c' aukeraren ondoren izena espero zen\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: errorea - '-o' aukeraren ondoren aukera-katea espero zen\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr ""
-#~ "%s: errorea - '-P' aukeraren ondoren orrialdeen zerrenda espero zen\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: errorea - '-%c' aukeraren ondoren lehentasuna espero zen\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr ""
-#~ "%s: errorea - '-r' aukeraren ondoren arrazoiaren testua espero zen\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: errorea - '-t' aukeraren ondoren titulua espero zen\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr ""
-#~ "%s: errorea - '-U' aukeraren ondoren erabiltzaile-izena espero zen\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr ""
-#~ "%s: errorea - '-u' aukeraren ondoren erabiltzaile-izena espero zen\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: errorea - '-%c' aukeraren ondoren balio bat espero zen\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: errorea - '-W' aukeraren ondoren \"completed\", \"not-completed\", "
-#~ "edo \"all\" egon behar du\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: errorea - helburu lehenetsia ez dago eskuragarri\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: errorea - lehentasuna 1 eta 100 artean egon behar du\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: errorea - antolatzaileak ez du erantzuten\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: errorea - fitxategi gehiegi - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: errorea - ezin da \"%s\" atzitu - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: errorea - ezin da stdin-etik ilaratu - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: errorea - \"%s\" helburu ezezaguna\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: errorea - \"%s/%s\" helburu ezezaguna\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: errorea - '%c' aukera ezezaguna\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: errorea - '%s' aukera ezezaguna\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: '-i' aukeraren ondoren lanaren IDa espero zen\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: \"%s\" iragazkia ez dago erabilgarri: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: helburuaren izen baliogabea \"%s\" zerrendan\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: \"%s\" iragazkiaren kate baliogabea\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr "%s: lanaren IDa ('-i lanIDa') behar da '-H restart'-en aurretik\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: ez dago iragazkirik %s/%s -> %s/%s bihurtzeko\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: huts egin du eragiketak: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: ez da enkriptatzeko euskarriarekin konpilatu\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: ezin da zerbitzariarekin konektatu\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: ezin da zerbitzariarekin kontaktatu\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: ezin da \"%s\"(r)en MIME mota zehaztu\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: ezin da %s ireki: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: ezin da PPD fitxategia ireki: %s %d lerroan\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d.\n"
-#~ msgstr "%s: ezin da PPD fitxategia ireki: %s %d lerroan\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: ezin da MIMEen datu-basea irakurri \"%s\" edo \"%s\"(e)ndik\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: \"%s\" helburu ezezaguna\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: %s/%s MIME motaren helburu ezezaguna\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: '%c' aukera ezezaguna\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: %s/%s MIME moten iturburu ezeaguna\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: abisua - '%c' formatuaren eraldatzailea ez dago onartuta - irteera ez "
-#~ "da zuzena izango\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: abisua - karaktere-jokoaren aukerari ezikusi egin zaio\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: abisua - edukiaren motaren aukerari ezikusi egin zaio\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: abisua - inprimakiaren aukerari ezikusi egin zaio\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: abisua - moduen aukerari ezikusi egin zaio\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: errorea - inguruneko %s aldagaiak existitzen ez den \"%s\" helburua "
-#~ "izandatzen du\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: errorea - '-o' aukeraren ondoren aukera=balioa espero zen\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: errorea - helburu lehenetsia ez dago eskuragarri\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "? laguntzako komando ezezagun baliogabea\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr ""
-#~ "Samba-ko pasahitza behar da inprimagailuaren kontrolatzaileak "
-#~ "esportatzeko."
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr ""
-#~ "Samba-ko erabiltzaile-izena behar da inprimagailuaren kontrolatzaileak "
-#~ "esportatzeko."
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "\"%s\" izeneko klasea badago lehendik ere."
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "\"%s\" izeneko inprimagailua badago lehendik ere."
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (handiagoa)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (handiagoa)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (txikia)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (handiagoa)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr ""
-#~ "%s inprimagailuaren egoera okerreko %d balioarekin ezartzen saiatzen."
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Taldeen atributuak ordenatik kanpo daude (%x < %x)"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "Okerreko gailuaren URIa: \"%s\"\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "Okerreko device-uri: \"%s\"."
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Okerreko device-uri eskema: \"%s\"."
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "Okerreko document-format: \"%s\"."
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Okerreko fitxategi-izenaren buferra."
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Okerreko letra-atributua: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Okerreko job-priority balioa."
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Okerreko job-sheets balioa: \"%s\"."
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Okerreko job-sheets balio mota."
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Okerreko job-state balioa."
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Okerreko job-uri atributua: \"%s\"."
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Okerreko notify-pull-method: \"%s\"."
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "Okerreko notify-recipient-uri URIa: \"%s\"."
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Okerreko aukera + hautaketa %d. lerroan."
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Okerreko port-monitor: \"%s\"."
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Okerreko printer-state balioa: %d."
-
-#~ msgid "Bad request ID %d!"
-#~ msgstr "Okerreko eskaeraren IDa: %d."
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Okerreko eskaeraren bertsio zenbakia: %d.%d."
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "Okerreko harpidetzaren IDa."
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0 gainazala"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1 gainazala"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2 gainazala"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3 gainazala"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4 gainazala"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5 gainazala"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6 gainazala"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65 gainazala"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7 gainazala"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "\"%s\" karaktere-jokoa ez dago onartuta."
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3 gainazala"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4 gainazala"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Komandoa laburtu daitezke. Hauek dira komandoak:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Ezin izan da \"%s\" mota eskaneatu."
-
-#~ msgid "Cover open."
-#~ msgstr "Estalkia irekita."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL gutunazala"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Errebelatzailea ia hutsik."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Errebelatzailea hutsik!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Gailua: URIa = %s\n"
-#~ " klasea = %s\n"
-#~ " informazioa = %s\n"
-#~ " marka eta modeloa = %s\n"
-#~ " gailuaren IDa = %s\n"
-#~ " kokalekua = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Ez da %d dokumentua aurkitu %d lanean."
-
-#~ msgid "Door open."
-#~ msgstr "Atea irekita."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Postal bikoitza"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr ""
-#~ "EMERG: ezin da memoriarik esleitu orrialdearen informazioarentzako: %s.\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: ezin da memoriarik esleitu orrialdeen arrayarentzako: %s.\n"
-
-#~ msgid "ERROR: %s job-id user title copies options [file]\n"
-#~ msgstr ""
-#~ "ERROR: %s job-id erabiltzailea titulua kopiak aukerak [fitxategia]\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: %%BoundingBox: iruzkin okerra ikusi da\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: %%IncludeFeature: iruzkin okerra\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: %%Page: iruzkin okerra fitxategian\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: %%PageBoundingBox: iruzkin okerra fitxategian\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: SCSI gailuaren fitxategia okerra: \"%s\"\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: karaktere-jokoaren fitxategia okerra: %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: karaktere-jokoaren mota okerra: %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: zutabeen balioa okerra: %d\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: cpi-ren balioa okerra: %f\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: letra-deskripzioaren lerroa okerra: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: lpi balioa okerra: %f\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: orrialdearen konfigurazioa okerra\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: testuaren norabidea okerra: %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: testuaren zabalera okerra: %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: helburuko inprimagailua ez da existitzen\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: bikoiztutako %%BoundingBox: iruzkina ikusi da\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: bikoiztutako %%Pages: iruzkina ikusi da\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: inprimatzeko fitxategia hutsik dago.\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: %d errorea PAPSendData eskaera bidaltzean: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: komatxoen arteko katea espero zen %2$s(r)en %1$d lerroan\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: USBaren errore larria\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: baliogabeko HP-GL/2 komandoa ikusi da, ezin da fitxategia "
-#~ "inprimatu\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: %%EndProlog falta da\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: %%EndSetup falta da\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: gailuaren URIa falta da komando-lerroan eta ez dago inguruneko "
-#~ "DEVICE_URI aldagairik\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: balioa falta da titularraren fitxategiko %d lerroan\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: msgid lerro bat behar da itzulpeneko edozein kateren aurretik %d "
-#~ "lerroan %s(e)n\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: ez dago %%BoundingBox: iruzkinik goiburuan\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: ez dago %%Pages: iruzkinik goiburuan\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: ez da gailuaren URIrik aurkitu argv[0] argumentuan edo inguruneko "
-#~ "DEVICE_URI aldagaian\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr ""
-#~ "ERROR: ez da letra-tiporik aurkitu karaktere-jokoaren %s fitxategian\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: ez dira orrialderik aurkitu\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: ez dago paperik\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: inguruneko PRINTER aldagaia ez dago definituta\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: inprimatzeko fitxategia ez da onartu (%s)\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: inprimagailuak ez du erantzuten\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: inprimagailuak ez du erantzuten\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: inprimagailuak ustekabeko EOF bidali du\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: urruneko ostalariak ez du kontrol-fitxategia onartu (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: urruneko ostalariak ez du datuen fitxategia onartu (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr "ERROR: denbora-muga gainditu da inprimagailura datuak bidaltzean\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: ezin da %d fitxategia lanari gehitu: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: ezin da %d lana bertan behera utzi: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: ezin da PDF fitxategia kopiatu"
-
-#~ msgid "ERROR: Unable to create pipe"
-#~ msgstr "ERROR: ezin da kanalizazioa sortu"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: ezin da socket-a sortu"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: ezin da aldi baterako inprimatzeko konprimitutako fitxategia "
-#~ "sortu: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: ezin da aldi baterako fitxategia sortu"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: ezin da pictwpstops exekutatu: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: ezin da gs programa exekutatu"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: ezin da pdftops programa exekutatu"
-
-#~ msgid "ERROR: Unable to execute pstops program"
-#~ msgstr "ERROR: ezin da pstops programa exekutatu"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: ezin da pictwpstops sardetu: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: ezin da PAP eskaera lortu"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: ezin da PAP erantzuna lortu"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr ""
-#~ "ERROR: ezin da \"%s\" - \"%s\" inprimagailuaren PPD fitxategia lortu.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: ezin da AppleTalk zona lehenetsia lortu"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: ezin da %d lanaren atributurik lortu (%s)\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: ezin da inprimagailuaren egoera lortu (%s)\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: ezin da '%s' inprimagailua aurkitu\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: ezin da PAP erantzuna aurktitu"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: ezin da AppleTalk inprimagailurik aurkitu"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: ezin da AppleTalk helbiderik sortu"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: ezin da \"%s\" - \"%s\" ireki\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: ezin da %s ireki: %s\n"
-
-#~ msgid "ERROR: Unable to open PPD file!\n"
-#~ msgstr "ERROR: ezin da PPD fitxategia ireki\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: ezin da \"%s\" titularraren fitxategia ireki: %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: ezin da \"%s\" gailuaren fitxategia ireki: %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: ezin da \"%s\" fitxategia ireki: %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: ezin da \"%s\" fitxategia ireki: %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: ezin da irudiaren fitxategia ireki inprimatzeko\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: ezin da \"%s\" inprimatzeko fitxategia ireki: %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: ezin da %s inprimatzeko fitxategia ireki: %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: ezin da %s inprimatzeko fitxategia ireki: %s\n"
-
-#~ msgid "ERROR: Unable to open raster file - %s\n"
-#~ msgstr "ERROR: ezin da bilbearen fitxategia ireki: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: ezin da aldi baterako konprimitutako inprimatzeko fitxategia "
-#~ "ireki: %s\n"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: ezin dira testuaren %d zutabe inprimatu\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: ezin da %dx%d testu orrialde inprimatu\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: ezin da inprimatzeko daturik irakurri"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: ezin da inprimatzeko daturik irakurri\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: ezin da ataka erreserbatu"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: ezin da fitxategiko %ld posizioan kokatu: %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: ezin da fitxategiko %lld posizioan kokatu: %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: ezin da LPD komandoa bidali"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: ezin da PAP eskaera bidali"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: ezin da PAPren hasierako datuak bidaltzeko eskaera bidali"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: ezin da inprimatzeko daturik bidali (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: ezin da inprimatzeko daturik bidali\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: ezin da inprimatzeko fitxategia inprimagailura bidali"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: ezin da NULL balioa bidali inprimagailura"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: ezin da pictwpstops-ren zain egon: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: ezin dira %d byte idatzi \"%s\"(e)n: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: ezin dira %d byte idatzi inprimagailuan\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: ezin da kontrol-fitxategia idatzi"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: ezin da inprimatzeko daturik idatzi"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: ezin da inprimatzeko daturik idatzi: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: ezin da bilbeko daturik idatzi kontrolatzailean\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: ezin da aldi baterako fitxategian idatzi"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: ezin da deskonprimitutako dokumentuaren daturik idatzi: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: ustekabeko testua %2$s fitxategiko %1$d lerroan\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: enkriptatzeko aukeraren \"%s\" balioa ezezaguna\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: \"%s\" fitxategiaren ordena ezezaguna\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: \"%c\" karakterearen formatua ezezaguna\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: mezuaren katalogo-formatua ezezaguna \"%s\"(r)entzako\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: \"%s\" aukera ezezaguna \"%s\" balioarekin\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: inprimatzeko \"%s\" modua ezezaguna\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: bertsioaren aukeraren \"%s\" balioa ezezaguna\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr "ERROR: distiraren %s balioa onartu gabea. Distira=100 erabiltzen\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: gammaren %s balioa onartu gabea. Gamma=100 erabiltzen\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr ""
-#~ "ERROR: number-up parametroaren %d balioa onartu gabea. number-up=1 "
-#~ "erabiltzen\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: number-up-layout parametroaren %s balioa onartu gabea. number-up-"
-#~ "layout=1 erabiltzen\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: page-border parametroaren %s balioa onartu gabea. page-border=none "
-#~ "erabiltzen\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr ""
-#~ "ERROR: gainezkatutako doc_printf (%d byte) detektattua. Bertan behera "
-#~ "uzten\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops %d seinalearekin irten da\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops %d egoerarekin irten da\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: berreskura daiteke. Ezin da inprimagailuarekin konektatu. 30 "
-#~ "segundo barru saiatuko da berriro...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: huts egin du select()-ek"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: ezin da 'stat' exekutatu inprimatzeko fitxategiarentzako"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "PPD fitxategia hutsik dago."
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Errorea: ostalari-izena behar da '-h' aukeraren ondoren\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "HUTSEGITEA\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "Fitxategiaren gailuaren URIak desgaitu egin dira. Gaitzeko, ikus "
-#~ "FileDevice direktiba \"%s/cupsd.conf\" fitxategian."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Fuser-aren tenperatura altua."
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Fuser-aren tenperatura baxua."
-
-#~ msgid "German FanFold"
-#~ msgstr "FanFold alemana"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "FanFold Legal alemana"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "printer-uri atributua lortu da, baina ez job-id."
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk desgaituta sistemako hobespenetan\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk desgaituta sistemako hobespenetan.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: inprimatzeko lana bertan behera uzten...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: inprimagailura konektatuta...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: inprimagailura konektatzen...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: kontrol-fitxategia ongi bidali da\n"
-
-#~ msgid "INFO: Copying print data...\n"
-#~ msgstr "INFO: inprimatzeko datuak kopiatzen...\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: datuen fitxategia ongi bidali da\n"
-
-#~ msgid "INFO: Finished page %d...\n"
-#~ msgstr "INFO: %d orrialdea amaituta...\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: %d orrialdeari formatua ematen...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: irudiaren fitxategia kargatzen...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: inprimagailua bilatzen...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: konexioa irekitzen\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: inprimatzeko fitxategia bidalita, inprimagailuak amaitu zain...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: inprimagailua lanpetuta. 10 segundotan saiatu da berriro...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: inprimagailua lanpetuta. 30 segundotan saiatu da berriro...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: inprimagailua lanpetuta. 5 segundotan saiatu da berriro...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr ""
-#~ "INFO: inprimagailuak ez du IPP/%d.%d onartzen. Honekin saiatzen: "
-#~ "IPP/1.0...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr ""
-#~ "INFO: inprimagailua lanpetuta dago. 5 segundotan saiatu da berriro...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: inprimagailua unean lineaz kanpo dago.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: inprimagailua unean linean dago.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: inprimagailua orain linean dago.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: inprimagailua lineaz kanpo dago.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr ""
-#~ "INFO: inprimagailua ez dago konektatuta. 30 segundo barru saiatuko da "
-#~ "berriro...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: %d orrialdea inprimatzen. %% %d osatuta...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: %d orrialdea inprimatzen...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: inprimatzeko prest.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: kontrol-fitxategia bidaltzen (%lu byte)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: kontrol-fitxategia bidaltzen (%u byte)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: datuen fitxategia bidaltzen\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: datuen fitxategia bidaltzen (%ld byte)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: datuen fitxategia bidaltzen (%lld byte)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: inprimatzeko datuak bidaltzen...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: inprimatzeko fitxategia bidalita, %ld byte...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: inprimatzeko fitxategia bidalita, %lld byte...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: LPR lana ilaran jartzen. %% %.0f osatuta...\n"
-
-#~ msgid "INFO: Starting page %d...\n"
-#~ msgstr "INFO: %d orrialdea hasten...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: ezin da inprimagailuarekin kontaktatu, klaseko hurrengo "
-#~ "inprimagailuan ilaratzen...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: \"%s\" AppleTalk zona lehenetsia erabiltzen\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: lana osatzeko itxoiten...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: inprimagailua erabilgarri egon arte itxoiten...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4 gutunazala"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (handiagoa)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5 gutunazala"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6 gutunazala"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Tinta/Tonerra ia hutsik."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Tinta/Tonerra hutsik!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Tinta/Tonerraren zakarrontzia ia beteta."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Tinta/Tonerraren zakarrontzia beteta!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Segurtasun-blokeoa irekita."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Gobidapeneko gutunazala"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Gutunazal italiarra"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "%d. lana ezin da berrabiatu. Ez dago fitxategirik."
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "%d. lana ez da existitzen."
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "%d. lana jadanik burututa dago, eta ezin da aldatu."
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "%d. lana ez dago burututa."
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "%d. lana ez dago atxikituta autentifikatzeko."
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "%d. lana ez dago atxikituta."
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "%s. lana ez da existitzen."
-
-#~ msgid "Job %d not found!"
-#~ msgstr "%d lana ez da aurkitu."
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Lanaren harpidetzak ezin dira berritu."
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2 gutunazala"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3 gutunazala"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "\"%s\" hizkuntza ez dago onartuta."
-
-#~ msgid "Media jam!"
-#~ msgstr "Paper gatazka!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Paperen erretilua is hutsik."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Paperen erretilua hutsik!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Paperen erretilua falta da!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Paperen erretilua bete egin behar da."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "document-number atributua falta da."
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Komatxo bikoitzak falta dira %d lerroan."
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Inprimakiaren aldagaia falta da."
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "notify-subscription-ids atributua falta da."
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "requesting-user-name atributua falta da."
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Beharrezko atributuak falta dira."
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Balioa falta da %d lerroan."
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Modeloa: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Monarch gutunazala"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: inptimatzeko fitxategia onartuta - lanaren IDa: %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr ""
-#~ "NOTICE: inptimatzeko fitxategia onartuta - lanaren IDa: ezezaguna.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "PPD izenik ez."
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Ez daude Windows-eko inprimagailuen kontrolatzailerik instalatuta!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Ez dago lan aktiborik %s(e)n."
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Ez dago atributurik eskaeran."
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Ez da autentifikatzeko informaziorik eman."
-
-#~ msgid "No default printer"
-#~ msgstr "Ez dago inprimagailu lehenetsirik"
-
-#~ msgid "No file!?!"
-#~ msgstr "Fitxategirik ez?"
-
-#~ msgid "No modification time!"
-#~ msgstr "Ez dago aldaketa-ordurik."
-
-#~ msgid "No printer name!"
-#~ msgstr "Ez dago inprimagailuaren izenik."
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Ez da printer-uri aurkitu klasearentzako"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Ez da printer-uri aurkitu."
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Ez da printer-uri aurkitu eskaeran."
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Ez dago harpidetzako atributurik eskaeran."
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPCa ia agortuta."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPCa agortuta."
-
-#~ msgid "Out of toner!"
-#~ msgstr "Tonerra agortuta!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Irteerako ontzia ia beteta."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Irteerako ontzia beteta!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "%s inprimagailuarentzako irteera %s(e)ra bidalita\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "%s inprimagailuarentzako irteera urruneko %s inprimagailura bidalita %s(e)"
-#~ "n\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "%s/%s inprimagailuarentzako irteera %s(e)ra bidalita\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "%s/%s inprimagailuarentzako irteera urruneko %s inprimagailura bidalita %s"
-#~ "(e)n\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Irteerako erretilua falta da."
-
-#~ msgid "PASS\n"
-#~ msgstr "BALIOZKOA\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1 gutunazala"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10 gutunazala"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2 gutunazala"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3 gutunazala"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (handiagoa)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4 gutunazala"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5 gutunazala"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6 gutunazala"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7 gutunazala"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8 gutunazala"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9 gutunazala"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Gutunazal pertsonala"
-
-#~ msgid "Printer offline."
-#~ msgstr "Inprimagailua lineaz kanpo."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Errenk. Jabea Lana Fitxategiak Tamaina osoa\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Errenk. Jabea Lehent. Lana Fitxategiak Tamaina "
-#~ "osoa\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Komandoa exekutaten: %s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "SCSI inprimagailua"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tabloidea (handiagoa)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "notify-user-data balioa handiegia da (%d > 63 zortzikote)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "Inprimagailua edo klasea ez dago partekatuta."
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "Inprimagailua edo klasea ez da aurkitu."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "printer-uri atributua behar da."
-
-#~ msgid "Toner low."
-#~ msgstr "Tonerra baxua."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "job-sheets balio gehiegi (%d > 2)."
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "printer-state-reasons balio gehiegi (%d > %d)."
-
-#~ msgid "US Executive"
-#~ msgstr "US exekutiboa"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US legala (handiagoa)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US gutuna (handiagoa)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US gutuna (txikia)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Ezin da lana gehitu \"%s\" helbururako."
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Ezin da memoria esleitu fitxategi motentzako."
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Ezin dira 64 bit-eko CUPSeko inprimagailuen kontrolatzaileen fitxategiak "
-#~ "kopiatu (%d)."
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr ""
-#~ "Ezin dira 64 bit-eko Windows-eko inprimagailuen kontrolatzaileen "
-#~ "fitxategiak kopiatu (%d)."
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Ezin dira CUPSeko inprimagailuen kontrolatzaileen fitxategiak kopiatu (%"
-#~ "d)."
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Ezin da PPD fitxategia kopiatu: %s."
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Ezin da PPD fitxategia kopiatu."
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Ezin dira Windows 2000ko inprimagailuen kontrolatzaileen fitxategiak "
-#~ "kopiatu (%d)."
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Ezin dira Windows 9x sistemako inprimagailuen kontrolatzaileen "
-#~ "fitxategiak kopiatu (%d)."
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Ezin da interfazeko script-a kopiatu: %s."
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Ezin da printer-uri sortu."
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr ""
-#~ "Ezin dira 1 MB baino handiagoak diren cupsd.conf fitxategiak editatu."
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Ezin da helburua aurkitu lanarentzako."
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Ezin da inprimagailua aurkitu.\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Ezin dira Windows 2000ko inprimagailuen kontrolatzaileen fitxategiak "
-#~ "instalatu (%d)."
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Ezin dira Windows 9x sistemako inprimagailuen kontrolatzaileen "
-#~ "fitxategiak instalatu (%d)."
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Ezin da %d. dokumentua ireki %d. lanean."
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Ezin da \"%s\" exekutatu: %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Ezin da komandoa bidali inprimagailuaren kontrolatzaileari."
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Ezin da Windows-eko inprimagailuaren kontrolatzailea ezarri (%d)."
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Ezin da USB klaseko kontrolatzaile zaharkitua erabili.\n"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Onartu gabeko \"%s\" karaktere-jokoa."
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Onartu gabeko \"%s\" konpresioa."
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Onartu gabeko %s konpresio atributua."
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Onartu gabeko \"%s\" formatua."
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Onartu gabeko '%s' formatua."
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Onartu gabeko '%s/%s' formatua."
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Erabilera:\n"
-#~ "\n"
-#~ " lpadmin [-h zerbitzaria] -d helburua\n"
-#~ " lpadmin [-h zerbitzaria] -x helburua\n"
-#~ " lpadmin [-h zerbitzaria] -p inprimagailua [-c klasea_gehitzeko] [-i "
-#~ "interfazea] [-m modeloa]\n"
-#~ " [-r klasea_kentzeko] [-v gailua] [-D deskripzioa]\n"
-#~ " [-P ppd-fitxategia] [-o izena=balioa]\n"
-#~ " [-u allow:erabiltzailea,erabiltzailea] [-u deny:"
-#~ "erabiltzailea,erabiltzailea]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr ""
-#~ "Erabilera: %s lana erabiltzailea titulua kopiak aukerak [fitxategi-"
-#~ "izena]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr ""
-#~ "Erabilera: %s lanaren_IDa erabiltzailea titulua kopiak aukerak [fitxategi-"
-#~ "izena]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr ""
-#~ "Erabilera: %s lanaren_IDa erabiltzailea titulua kopiak aukerak "
-#~ "fitxategia\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -e Use every filter from the PPD file\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Erabilera: convert [ Aukerak ]\n"
-#~ "\n"
-#~ "Aukerak:\n"
-#~ " -e Erabili PPD fitxategiko iragazki bakoitza\n"
-#~ " -f fitxategi-izena Ezarri fitxategia bihurtzeko (bestela "
-#~ "stdin)\n"
-#~ " -o fitxategi-izena Ezarri fitxategia sortzeko (bestela "
-#~ "stdout)\n"
-#~ " -i mime/mota Ezarri sarrerako MIME mota (bestela mota "
-#~ "automatikoa)\n"
-#~ " -j mime/mota Ezarri irteerako MIME mota (bestela application/"
-#~ "pdf)\n"
-#~ " -P fitxategi-izena.ppd Ezarri PPD fitxategia\n"
-#~ " -a 'izena=balioa ...' Ezarri aukerak\n"
-#~ " -U erabiltzaile-izena Ezarri lanaren erabiltzaile-izena\n"
-#~ " -J titulua Ezarri titulua\n"
-#~ " -c kopiak Ezarri kopia kopurua\n"
-#~ " -u Kendu PPD fitxategia amaitutakoan\n"
-#~ " -D Kendu sarrerako fitxategia amaitutakoan\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Erabilera: cupsaddsmb [aukerak] inprimagailua1 ... inprimagailuaN\n"
-#~ " cupsaddsmb [aukerak] -a\n"
-#~ "\n"
-#~ "Aukerak:\n"
-#~ " -E Enkriptatu zerbitzarirako konexioa\n"
-#~ " -H samba-zerbitzaria Erabili izendatutako SAMBA zerbitzaria\n"
-#~ " -U samba-erabiltzailea Autentifikatu izendatutako SAMBAko "
-#~ "erabiltzailea erabiliz\n"
-#~ " -a Esportatu inprimagailu guztiak\n"
-#~ " -h cups-zerbitzaria Erabili izendatutako CUPS zerbitzaria\n"
-#~ " -v Hitzez hitz (erakutsi komandoak)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Erabilera: cupsctl [aukerak] [param=balioa ... paramN=balioaN]\n"
-#~ "\n"
-#~ "Aukerak:\n"
-#~ "\n"
-#~ " -E Gaitu enkriptatzea\n"
-#~ " -U erabiltzaile-izena Zehaztu erabiltzaile-izena\n"
-#~ " -h zerbitzaria[:ataka] Zehaztu zerbitzariaren helbidea\n"
-#~ "\n"
-#~ " --[no-]debug-logging Txandakatu arazketaren erregistroak "
-#~ "aktibatzea/desaktibatzea\n"
-#~ " --[no-]remote-admin Txandakatu urruneko administrazioa aktibatzea/"
-#~ "desaktibatzea\n"
-#~ " --[no-]remote-any Baimendu/Saihestu atzitzea Internetetik\n"
-#~ " --[no-]remote-printers Erakutsi/Ezkutatu urruneko inprimagailuak\n"
-#~ " --[no-]share-printers Baimendu/Saihestu inprimagailua partekatzea\n"
-#~ " --[no-]user-cancel-any Baimendu/Saihestu erabiltzaileek edozer lan "
-#~ "bertan behera uztea\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Erabilera: cupsd [-c konfigurazio-fitxategia] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c konfigurazio-fitxategia Kargatu konfigurazioko beste fitxategi "
-#~ "bat\n"
-#~ "-f Exekutatu aurreko planoan\n"
-#~ "-F Exekutatu aurreko planoan baina bereiztuta\n"
-#~ "-h Erakutsi erabileraren mezu hau\n"
-#~ "-l Exekutatu cupsd launchd(8)-etik\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -e Use every filter from the PPD file\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Erabilera: cupsfilter -m mime/mota [ aukerak ] fitxategi-izena\n"
-#~ "\n"
-#~ "Aukerak:\n"
-#~ "\n"
-#~ " -c cupsd.conf Ezarri cupsd.conf fitxategia erabiltzeko\n"
-#~ " -e Erabili PPD fitxategiko iragazki bakoitza\n"
-#~ " -j lanaren-id[,N] Iragazi N fitxategia zehaztutako lanetik "
-#~ "(lehenetsia 1. fitxategia da)\n"
-#~ " -n kopiak Ezarri kopia kopurua\n"
-#~ " -o izena=balioa Ezarri aukerak\n"
-#~ " -p fitxategi-izena.ppd Ezarri PPD fitxategia\n"
-#~ " -t titulua Ezarri titulua\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Erabilera: cupstestdsc [aukerak] fitxategi-izena.ps [... fitxategi-izena."
-#~ "ps]\n"
-#~ " cupstestdsc [aukerak] -\n"
-#~ "\n"
-#~ "Aukerak:\n"
-#~ "\n"
-#~ " -h Erakutsi programaren erabilera\n"
-#~ "\n"
-#~ " Oharra: programa honek DSC iruzkinak soilik balidatzen ditu, ez "
-#~ "PostScript bera.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-#~ "translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Erabilera: cupstestppd [aukerak] fitxategia1.ppd[.gz] [... fitxategia.ppd"
-#~ "[.gz]]\n"
-#~ " programa | cupstestppd [aukerak] -\n"
-#~ "\n"
-#~ "Aukerak:\n"
-#~ "\n"
-#~ " -R erroko-direktorioa Ezarri beste erro bat\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-#~ "translations}\n"
-#~ " Igorri abisuak erroreen ordez\n"
-#~ " -q Exekutatu isilean\n"
-#~ " -r Erabili modu ireki 'lasaia'\n"
-#~ " -v Erakutsi xehetasun piskatekoa\n"
-#~ " -vv Xehetasun askokoa\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Erabilera: lpmove lana/iturria helburua\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Erabilera: lpoptions [-h zerbitzaria] [-E] -d inprimagailua\n"
-#~ " lpoptions [-h zerbitzaria] [-E] [-p inprimagailua] -l\n"
-#~ " lpoptions [-h zerbitzaria] [-E] -p inprimagailua -o aukera"
-#~ "[=balioa] ...\n"
-#~ " lpoptions [-h zerbitzaria] [-E] -x inprimagailua\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Erabilera: lppasswd [-g talde-izena]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Erabilera: lppasswd [-g talde-izena] [erabiltzaile-izena]\n"
-#~ " lppasswd [-g talde-izena] -a [erabiltzaile-izena]\n"
-#~ " lppasswd [-g talde-izena] -x [erabiltzaile-izena]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Erabilera: lpq [-P helb] [-U erab-izena] [-h ostalari-izena[:ataka]] [-l] "
-#~ "[+barrutia]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Erabilera: ppdc [aukerak] fitxategia.drv [ ... fitxategiaN.drv ]\n"
-#~ "\n"
-#~ "Aukerak:\n"
-#~ " -D izena=balioa Ezarri izendatutako aldagaia balioarekin.\n"
-#~ " -I include-dir Gehitu include direktorioa bilaketako bide-"
-#~ "izenari.\n"
-#~ " -c katalogoa.po Kargatu zehaztutako mezuen katalogoa.\n"
-#~ " -d irteerako-dir Zehaztu irteerako direktorioa.\n"
-#~ " -l hizk[,hizk,...] Zehaztu irteerako hizkuntzak (lokalak).\n"
-#~ " -m Erabili ModelName balioa fitxategi-izen gisa.\n"
-#~ " -t Probatu PPDak, haiek sortu ordez.\n"
-#~ " -v Hitzez hitz (zenbat eta 'v' gehiago, xehetasun "
-#~ "gehiago).\n"
-#~ " -z Konprimitu PPD fitxategiak GNU zip erabiliz.\n"
-#~ " --cr Amaitu lerroak CRrekin (Mac OS 9).\n"
-#~ " --crlf Amaitu lerroak CR + LFrekin (Windows).\n"
-#~ " --lf Amaitu lerroak LFrekin (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Erabilera: ppdhtml [aukerak] fitxategia.drv >fitxategia.html\n"
-#~ " -D izena=balioa Ezarri izendatutako aldagaia balioarekin.\n"
-#~ "Aukerak:\n"
-#~ " -I include-dir Gehitu include direktorioa bilaketako bide-"
-#~ "izenari.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Erabilera: ppdi [aukerak] fitxategia.ppd [ ... fitxategiaN.ppd ]\n"
-#~ "Aukerak:\n"
-#~ " -I include-dir\n"
-#~ " -o fitxategia.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Erabilera: ppdmerge [aukerak] fitxategia.ppd [ ... fitxategiaN.ppd ]\n"
-#~ "Aukerak:\n"
-#~ " -o fitxategia.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Erabilera: ppdpo [aukerak] -o fitxategia.po fitxategia.drv [ ... "
-#~ "fitxategiaN.drv ]\n"
-#~ "Aukerak:\n"
-#~ " -D izena=balioa Ezarri izendatutako aldagaia balioarekin.\n"
-#~ " -I include-dir Gehitu include direktorioa bilaketako bide-"
-#~ "izenari.\n"
-#~ " -v Hitzez hitz (zenbat eta 'v' gehiago, xehetasun "
-#~ "gehiago).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Erabilera: snmp [ostalari-edo-ip-helbidea]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: aurkitutako aurreneko %d inprimagailu gehitzen"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: \"%s\" waitof aukeran boolear bat espero zen\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: huts egin du albo-kanaleko eskaera irakurtzean\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr "WARNING: \"%s\" aukera ezin da sartu IncludeFeature bidez\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: inprimagailuak ez du erantzuten\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: inprimagailuak ustekabeko EOF bidali du\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: urruneko ostalariak ez du erantzun komandoaren egoeraren "
-#~ "bytearekin %d segundo ondoren\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: urruneko ostalariak ez du erantzun kotroleko egoeraren "
-#~ "bytearekin %d segundo ondoren\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: urruneko ostalariak ez du erantzun datuen egoeraren bytearekin %"
-#~ "d segundo ondoren\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr ""
-#~ "WARNING: SCSI komandoak denboraren muga gainditu du (%d). Berriro "
-#~ "saiatzen...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: dokumentu hau ez dator bat Abode Document Structuring "
-#~ "Conventions-eko zehaztapenekin, eta ez da ongi inprimatuko.\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: ezin da \"%s:%s\" ireki: %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: ezin da PAP egoeraren eskaera bidali"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: ustekabeko PAP paketea %d motakoa\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: %d motako PAP pakete ezezaguna\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: \"%s\" hautaketa ezezaguna \"%s\" aukeran\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: \"%s\" aukera ezezaguna\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: %s baudio-emaria onartu gabea\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: zenbakia espero en \"%s\" egoeraren aukeran\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: berreskuratu daiteke. Sareko '%s' ostalaria lanpetuta dago. "
-#~ "Berriro saiatuko da %d segundo barru...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr ""
-#~ "Abisua, ez dago Windows 2000 sistemako inprimagailuen kontrolatzailerik "
-#~ "instalatuta."
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4 gutunazala"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "convert: erabili -f aukera bihurtzea nahi den fitxategia zehazteko.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr ""
-#~ "cupsaddsmb: ez dago PPD fitxategirik \"%s\" inprimagailuarentzako: %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: ezin da zerbitzariarekin konektatu: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: \"%s\" aukera ezezaguna.\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: \"-%c\" aukera ezezaguna.\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr ""
-#~ "cupsd: konfigurazioko fitxategia espero zen \"-c\" aukeraren ondoren.\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: ezin da uneko direktorioa lortu.\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: \"%s\" argumentu ezezaguna. Abortatzen.\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: \"%c\" aukera ezezaguna. Abortatzen.\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: ez da launchd(8) euskarriarekin konpilatu. Modu arruntean "
-#~ "exekutatzen.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: baliogabeko %d dokumentu-zenbakia.\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: baliogabeko %d lanaren IDa.\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: fitxategi-izen bakarra soilik zehaztu daiteke.\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: ezin da lanaren fitxategia lortu: %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: -q aukera ez da bateragarria -v aukerarekin.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: -v aukera ez da bateragarria -q aukerarekin.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "%s/%s(r)en gailua: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "%s(r)en gailua: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\tkomandoei buruzko laguntza eskaintzen du\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "job-printer-uri atributua falta da."
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr ""
-#~ "lpadmin: klasearen izenak karaktere inprimagarriak soilik eduki ditzake.\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: PPDa espero zen '-P' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr ""
-#~ "lpadmin: Expected alerabiltzaile-zerrenda espero zen st afaukeraren "
-#~ "ondoren.\n"
-#~ "option!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: klasea espero zen '-r' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: klasearen izena espero zen '-c' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: deskripzioa espero zen '-D' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: gailuaren URIa espero zen '-v' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: fitxategi motak espero ziren '-I' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: ostalari-izena espero zen '-h' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: interfazea espero zen '-i' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: kokalekua espero zen '-L' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: modeloa espero zen '-m' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: izena=balioa espero zen '-o' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: inprimagailua espero zen '-p' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr ""
-#~ "lpadmin: inprimagailuaren izena espero zen '-d' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr ""
-#~ "lpadmin: inprimagailua edo klasea espero zen '-x' aukeraren ondoren.\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: ez da kideen izenik ikusi.\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: %s inprimagailua jadanik %s klasearen kidea da.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: %s inprimagailua ez da %s klaseko kidea.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr ""
-#~ "lpadmin: inprimagailuaren izenak karaktere inprimagarriak soilik eduki "
-#~ "ditzake.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ezin da inprimagailua klaseari gehitu:\n"
-#~ " Aurrenik inprimagailuaren izena zehaztu behar duzu.\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: ezin da zerbitzariarekin konektatu: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: ezin da \"%s\" PPD fitxategia ireki: %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: ezin da \"%s\" fitxategia ireki: %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ezin da inprimagailua klasetik kendu:\n"
-#~ " Aurrenik inprimagailuaren izena zehaztu behar duzu.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ezin da PPD fitxategia ezarri:\n"
-#~ " Aurrenik inprimagailuaren izena zehaztu behar duzu.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ezin da gailuaren URIa ezarri:\n"
-#~ " Aurrenik inprimagailuaren izena zehaztu behar duzu.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ezin da interfazearen script-a edo PPD fitxategia ezarri:\n"
-#~ " Aurrenik inprimagailuaren izena zehaztu behar duzu.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ezin da interfazearen script-a ezarri:\n"
-#~ " Aurrenik inprimagailuaren izena zehaztu behar duzu.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ezin da inprimagailuaren deskripzioa ezarri:\n"
-#~ " Aurrenik inprimagailuaren izena zehaztu behar duzu.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ezin da inprimagailuaren kokalekua ezarri:\n"
-#~ " Aurrenik inprimagailuaren izena zehaztu behar duzu.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ezin dira inprimagailuaren aukerak ezarri:\n"
-#~ " Aurrenik inprimagailuaren izena zehaztu behar duzu.\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: \"%s\" allow/deny aukera ezezaguna.\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: '%s' argumentu ezezaguna.\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: '%c' aukera ezezaguna.\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: abisua - edukiaren moten zerrendari ezikusi egin zaio.\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr ""
-#~ "lpinfo: 1284 gailuaren IDaren katea espero zen --device-id aukeraren "
-#~ "ondoren.\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: hizkuntza espero zen --language aukeraren ondoren.\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr ""
-#~ "lpinfo: marka eta modeloa espero ziren --make-and-model aukeraren "
-#~ "ondoren.\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr ""
-#~ "lpinfo: produktuaren katea espero zen --product aukeraren ondoren.\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr ""
-#~ "lpinfo: eskemen zerrenda espero zen --exclude-schemes aukeraren ondoren.\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr ""
-#~ "lpinfo: eskemen zerrenda espero zen --include-schemes aukeraren ondoren.\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: denbora-muga espero zen --timeout aukeraren ondoren.\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: '%s' argumentu ezezaguna.\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: '%c' aukera ezezaguna.\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: '%s' aukera ezezaguna.\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: ezin da zerbitzariarekin konektatu: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: '%s' argumentu ezezaguna.\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: '%c' aukera ezezaguna.\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: inprimagailurik ez?\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: ezin da inprimagailua edo instantzia gehitu: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr ""
-#~ "lpoptions: ezin da PPD fitxategia lortu %s inprimagailuarentzako: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: ezin da PPD fitxategia ireki %s(r)entzako.\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: inprimagailua edo klasea ezezaguna.\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr ""
-#~ "lppasswd: supererabiltzaileak (root) soilik gehitu edo ezabatu ditzake "
-#~ "pasahitzak.\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: pasahitzen fitxategia lanpetuta.\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: pasahitzen fitxategia ez da eguneratu.\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: pasahitzak ez dira berdinak.\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: pasahitza ukatu da.\n"
-#~ "Zure pasahitzak gutxiene 6 karaktere izan behar ditu, ezin du\n"
-#~ "zure erabiltzaile-izenik eduki, eta gutxienez hizki bat eta zenbaki bat "
-#~ "eduki behar du.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: pasahitzak ez datoz bat.\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: ezin da pasahitzaren katea kopiatu: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: ezin da pasahitzen fitxategia ireki: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: ezin da pasahitzen fitxategian idatzi: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd: huts egin du pasahitzen fitxategi zaharraren babeskopia "
-#~ "egitean: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: huts egin du pasahitzen fitxategia izenez aldatzean: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr ""
-#~ "lppasswd: \"%s\" erabiltzailea eta \"%s\" taldea ez dira existitzen.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: errorea . Inguruneko %s aldagaiak existitzen ez den \"%s\" "
-#~ "helburua izendatzen du.\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "%s klasearen kideak:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "sarrerarik ez\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "ez dago sistemako helburu lehenetsirik.\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events ez da zehaztu."
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "\"%s\" notify-recipient-uri URIa jadanik erabilita dago."
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "\"%s\" notify-recipient-uri URIak eskema ezezaguna darabil."
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "%d notify-subscription-id ez da ona."
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: \"%s\" include direktorioa gehitzen...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: UIaren testua gehitzen/eguneratzen %s(e)tik...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: okerreko balio boolearra (%s) %d lerroan of(e)n %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: okerreko \"%s\" bereizmen izena%d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: okerreko %s egoeraren gako-hitza %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: okerreko aldagaien ordezkaketa ($%c) %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: hautaketa aurkituta %d lerroan aukerarik gabeko %s(e)n.\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: %s lokalaren #po-a bikoiztua %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: iragazkiaren definizioa espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: programaren izena espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: balio boolearra espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: karaktere-jokoa espero zen Font-en ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: hautaketaren kodea espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: hautaketaren izena/tesua espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: koloreen ordena espero zen ColorModel-entzako %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: kolore-espazioa espero zen ColorModel-entzako %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: konpresioa espero zen ColorModel-entzako %d lerroan %s(e)n.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: murriztapenen katea espero zen UIConstraints-entzako %d lerroan %s"
-#~ "(e)n.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: kontrolatzaile motaren gako-hitza espero zen DriverType-ren ondoren "
-#~ "%d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: duplex mota espero zen Duplex-en ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: kodeketa espero zen Font-en ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: fitxategi-izena espero zen %s #po ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: taldearen izena/testua espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: include fitxategi-izena espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: osoko zenbakia espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: lokala espero zen espero zen #po ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: izena espero zen %s(rÇ)en ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: izena espero zen FileName ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: izena espero zen Font ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: izena espero zen Manufacturer ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: izena espero zen MediaSize ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: izena espero zen ModelName ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: izena espero zen PCFileName ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: izena/testua espero zen %s ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: izena/testua espero zen Installable ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: izena/testua espero zen Resolution ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: izena/testuaren konbinazioa espero zen ColorModel-arentzako %d "
-#~ "lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: aukeraren izena/testua espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: aukeraren atala espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: aukera mota espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: gainidazketaren eremua espero zen Resolution ondoren %d lerroan %s"
-#~ "(e)n.\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: zenbaki erreala espero zen %d lerroan %s(e)n.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: bereizmena/euskarri mota espero zen ColorProfile ondoren %d lerroan "
-#~ "%s(e)n.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: bereizmena/euskarri mota espero zen SimpleColorProfile ondoren %d "
-#~ "lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: hautatzailea espero zen %s ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: egoera espero zen Font ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: katea espero zen Copyright ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: katea espero zen Version ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: aukeren bi izen espero ziren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: balioa espero zen %s ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: bertsioa espero zen Font ondoren %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: baliogabeko #include/#po \"%s\" fitxategi-izena.\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: baliogabeko iragazkiaren kostua %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: baliogabeko MIME mota hutsa iragazkiarentzako %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: baliogabeko prorgramare izen hutsa iragazkiarentzako %d lerroan %s"
-#~ "(e)n.\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: baliogabeko aukeraren \"%s\" atala %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: baliogabeko aukeraren \"%s\" mota %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: kontrolatzailearen \"%s\" datu-fitxategia kargatzen...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: \"%s\" lokalaren mezuak kargatzen...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: mezuak \"%s\"(e)tik kargatzen...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: #endif falta da \"%s\"(r)en amaieran.\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: #if falta da %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: ez da mezuen katalogorik eman %s lokalarentzako.\n"
-
-#~ msgid "ppdc: Option %s defined in two different groups on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %s aukera bi talde desberdinetan definituta %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %s aukera berriro definituta mota desberdin batekin %d lerroan %s(e)"
-#~ "n.\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: aukeraren murriztapenak *izena eduki behar du %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: habiarazitako #if gehiegi %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: ezin da \"%s\" PPD fitxategia sortu: %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: ezin da %s irteerako direktorioa sortu: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: ezin dira irteerako kanalizazioak sortu: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: ezin da cupstestppd exekutatu: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: ezin da %s #po fitxategia aurkitu %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: ezin da \"%s\" include fitxategia aurkitu %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: ezin da lokalizazioa aurkitu \"%s\"(r)entzako: %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: ezin da \"%s\" lokalizazioaren fitxategia kargatu: %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: definitu gabeko aldagaia (%s) %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: %s kontrolatzaile mota ezezaguna %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: \"%s\" duplex mota ezezaguna %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: \"%s\" euskarri-tamaina ezezaguna %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: \"%s\" token ezezaguna ikusi da %d lerroan %s(e)n.\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: amaierako karaktere ezezagunak \"%s\" zenbaki errealean %d lerroan %"
-#~ "s(e)n.\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc: %c(r)ekin hasitako amaitu gabeko katea %d lerroan %s(e)n.\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: %s inprimatzen...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: PPD fitxategiak \"%s\" direktorioan idazten...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: okerreko \"%s\" LanguageVersion %s(e)n\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: %s PPD fitxategiari ezikusi egiten...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: ezin da %s(r)en babeskopia %s(e)n egin: %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "printer %s desgaituta %s ostean\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "%s inprimagailua inaktibo dago. Gaituta %s ostetik.\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr ""
-#~ "%s inprimagailua orain %s-%d inprimatzen ari da. Gaituta %s ostetik.\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "%s/%s inprimagailua desgaituta %s ostetik\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "%s/%s inprimagailua inaktibo dago. Gaituta %s ostetik.\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr ""
-#~ "%s/%s inprimagailua orain %s-%d inprimatzen ari da. Gaituta %s ostetik.\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "eskaeraren IDa %s-%d da (%d fitxategi)\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "antolatzailea ez da exekutatzen ari.\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "antolatzailea exekutatzen ari da.\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\terakutsi daemon-aren eta ilararen egoera\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "sistemako helburu lehenetsia: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "sistemako helburu lehenetsia: %s/%s\n"
diff --git a/locale/cups_fi.po b/locale/cups_fi.po
deleted file mode 100644
index e57719bb..00000000
--- a/locale/cups_fi.po
+++ /dev/null
@@ -1,8710 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-12 15:10+0200\n"
-"Last-Translator: Teppo Turtiainen <teppot@iki.fi>\n"
-"Language-Team: Finnish\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f millimetriä"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f - %.0f x %.0f millimetriä"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f tuumaa"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f - %.2f x %.2f tuumaa"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "Kohdetta %s ei voida muuttaa."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 tuumaa/s"
-
-msgid "1.25x0.25\""
-msgstr "1,25 x 0,25 \""
-
-msgid "1.25x2.25\""
-msgstr "1,25 x 2,25 \""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 tuumaa/s"
-
-msgid "1.50x0.25\""
-msgstr "1,50 x 0,25 \""
-
-msgid "1.50x0.50\""
-msgstr "1,50 x 0,50 \""
-
-msgid "1.50x1.00\""
-msgstr "1,50 x 1,00 \""
-
-msgid "1.50x2.00\""
-msgstr "1,50 x 2,00 \""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 tuumaa/s"
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/s"
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 tuumaa/s"
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 tuumaa/s"
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/s"
-
-msgid "120x60dpi"
-msgstr "120 x 60 dpi"
-
-msgid "120x72dpi"
-msgstr "120 x 72 dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136 dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/s"
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/s"
-
-msgid "150dpi"
-msgstr "150 dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180 dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 tuumaa/s"
-
-msgid "2-Sided Printing"
-msgstr "Kaksipuolinen tulostus"
-
-msgid "2.00x0.37\""
-msgstr "2,00 x 0,37 \""
-
-msgid "2.00x0.50\""
-msgstr "2,00 x 0,50 \""
-
-msgid "2.00x1.00\""
-msgstr "2,00 x 1,00 \""
-
-msgid "2.00x1.25\""
-msgstr "2,00 x 1,25 \""
-
-msgid "2.00x2.00\""
-msgstr "2,00 x 2,00 \""
-
-msgid "2.00x3.00\""
-msgstr "2,00 x 3,00 \""
-
-msgid "2.00x4.00\""
-msgstr "2,00 x 4,00 \""
-
-msgid "2.00x5.50\""
-msgstr "2,00 x 5,50 \""
-
-msgid "2.25x0.50\""
-msgstr "2,25 x 0,50 \""
-
-msgid "2.25x1.25\""
-msgstr "2,25 x 1,25 \""
-
-msgid "2.25x4.00\""
-msgstr "2,25 x 4,00 \""
-
-msgid "2.25x5.50\""
-msgstr "2,25 x 5,50 \""
-
-msgid "2.38x5.50\""
-msgstr "2,38 x 5,50 \""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 tuumaa/s"
-
-msgid "2.50x1.00\""
-msgstr "2,50 x 1,00 \""
-
-msgid "2.50x2.00\""
-msgstr "2,50 x 2,00 \""
-
-msgid "2.75x1.25\""
-msgstr "2,75 x 1,25 \""
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1 \""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/s"
-
-msgid "200 mm/sec."
-msgstr "200 mm/s"
-
-msgid "203dpi"
-msgstr "203 dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24-nastainen"
-
-msgid "240x72dpi"
-msgstr "240 x 72 dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/s"
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 tuumaa/s"
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00 x 1,00 \""
-
-msgid "3.00x1.25\""
-msgstr "3,00 x 1,25 \""
-
-msgid "3.00x2.00\""
-msgstr "3,00 x 2,00 \""
-
-msgid "3.00x3.00\""
-msgstr "3,00 x 3,00 \""
-
-msgid "3.00x5.00\""
-msgstr "3,00 x 5,00 \""
-
-msgid "3.25x2.00\""
-msgstr "3,25 x 2,00 \""
-
-msgid "3.25x5.00\""
-msgstr "3,25 x 5,00 \""
-
-msgid "3.25x5.50\""
-msgstr "3,25 x 5,50 \""
-
-msgid "3.25x5.83\""
-msgstr "3,25 x 5,83 \""
-
-msgid "3.25x7.83\""
-msgstr "3,25 x 7,83 \""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "3,5 \" levy"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3,5 \" levy - 2 1/8 x 2 3/4 \""
-
-msgid "3.50x1.00\""
-msgstr "3,50 x 1,00 \""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/s"
-
-msgid "300 mm/sec."
-msgstr "300 mm/s"
-
-msgid "300dpi"
-msgstr "300 dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360 dpi"
-
-msgid "360x180dpi"
-msgstr "360 x 180 dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 tuumaa/s"
-
-msgid "4.00x1.00\""
-msgstr "4,00 x 1,00 \""
-
-msgid "4.00x13.00\""
-msgstr "4,00 x 13,00 \""
-
-msgid "4.00x2.00\""
-msgstr "4,00 x 2,00 \""
-
-msgid "4.00x2.50\""
-msgstr "4,00 x 2,50 \""
-
-msgid "4.00x3.00\""
-msgstr "4,00 x 3,00 \""
-
-msgid "4.00x4.00\""
-msgstr "4,00 x 4,00 \""
-
-msgid "4.00x5.00\""
-msgstr "4,00 x 5,00 \""
-
-msgid "4.00x6.00\""
-msgstr "4,00 x 6,00 \""
-
-msgid "4.00x6.50\""
-msgstr "4,00 x 6,50 \""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/s"
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 tuumaa/s"
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 tuumaa/s"
-
-msgid "6.00x1.00\""
-msgstr "6,00 x 1,00 \""
-
-msgid "6.00x2.00\""
-msgstr "6,00 x 2,00 \""
-
-msgid "6.00x3.00\""
-msgstr "6,00 x 3,00 \""
-
-msgid "6.00x4.00\""
-msgstr "6,00 x 4,00 \""
-
-msgid "6.00x5.00\""
-msgstr "6,00 x 5,00 \""
-
-msgid "6.00x6.00\""
-msgstr "6,00 x 6,00 \""
-
-msgid "6.00x6.50\""
-msgstr "6,00 x 6,50 \""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/s"
-
-msgid "600dpi"
-msgstr "600 dpi"
-
-msgid "60dpi"
-msgstr "60 dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 tuumaa/s"
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720 dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 tuumaa/s"
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00 x 1,00 \""
-
-msgid "8.00x2.00\""
-msgstr "8,00 x 2,00 \""
-
-msgid "8.00x3.00\""
-msgstr "8,00 x 3,00 \""
-
-msgid "8.00x4.00\""
-msgstr "8,00 x 4,00 \""
-
-msgid "8.00x5.00\""
-msgstr "8,00 x 5,00 \""
-
-msgid "8.00x6.00\""
-msgstr "8,00 x 6,00 \""
-
-msgid "8.00x6.50\""
-msgstr "8,00 x 6,50 \""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/s"
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 tuumaa/s"
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "9-nastainen"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Hyväksy töitä"
-
-msgid "Accepted"
-msgstr "Hyväksytty"
-
-msgid "Add Class"
-msgstr "Lisää luokka"
-
-msgid "Add Printer"
-msgstr "Lisää tulostin"
-
-msgid "Add RSS Subscription"
-msgstr "Lisää RSS-tilaus"
-
-msgid "Address"
-msgstr "Osoite"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Osoite - 1 1/8 x 3 1/2 \""
-
-msgid "Administration"
-msgstr "Ylläpito"
-
-msgid "Always"
-msgstr "Aina"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Applikaattori"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Virheellinen NULL dests -osoitin"
-
-msgid "Bad OpenGroup"
-msgstr "Virheellinen OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "Virheellinen OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "Virheellinen OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Virheellinen pyyntö"
-
-msgid "Bad SNMP version number"
-msgstr "Virheellinen SNMP-versionumero"
-
-msgid "Bad UIConstraints"
-msgstr "Virheellinen UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Virheellinen kopioiden määrä %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Virheellinen muokattu parametri"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Virheellinen number-up-arvo %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Virheelliset page-ranges-arvot %d - %d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Otsikot"
-
-msgid "Billing Information: "
-msgstr "Laskutustiedot: "
-
-msgid "Bond Paper"
-msgstr "Bond-paperi"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "CPCL-tarratulostin"
-
-msgid "Cancel RSS Subscription"
-msgstr "Peru RSS-tilaus"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Muuta asetuksia"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Luokat"
-
-msgid "Clean Print Heads"
-msgstr "Puhdista tulostuspäät"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Väri"
-
-msgid "Color Mode"
-msgstr "Väritila"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Yhteisönimi käyttää määrittämätöntä pituutta"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Jatka"
-
-msgid "Continuous"
-msgstr "Jatkuva"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Luotu"
-
-msgid "Created On: "
-msgstr "Luotu: "
-
-msgid "Custom"
-msgstr "Muokattu"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Leikkaa"
-
-msgid "Cutter"
-msgstr "Leikkaaja"
-
-msgid "Dark"
-msgstr "Tumma"
-
-msgid "Darkness"
-msgstr "Tummuus"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Poista luokka"
-
-msgid "Delete Printer"
-msgstr "Poista tulostin"
-
-msgid "Description: "
-msgstr "Kuvaus: "
-
-msgid "DeskJet Series"
-msgstr "DeskJet-sarja"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "Kohde â€%s†ei vastaanota töitä."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Suora lämpömedia"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Pois käytöstä"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Ajurin nimi: "
-
-msgid "Driver Version: "
-msgstr "Ajurin versio: "
-
-msgid "Duplexer"
-msgstr "Duplekseri"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1-tarratulostin"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2-tarratulostin"
-
-msgid "Edit Configuration File"
-msgstr "Muokkaa asetustiedostoa"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Loppuotsikko"
-
-msgid "English"
-msgstr "Finnish"
-
-msgid "Enter old password:"
-msgstr "Syötä vanha salasana:"
-
-msgid "Enter password again:"
-msgstr "Syötä salasana uudelleen:"
-
-msgid "Enter password:"
-msgstr "Syötä salasana:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Syötä oma käyttäjätunnuksesi ja salasanasi tai rootin käyttäjätunnus ja "
-"salasana tämän sivun käyttämistä varten. Jos käytät Kerberos-todentamista, "
-"varmista, että sinulla on kelvollinen Kerberos-lippu."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Kirjekuoren syöttö"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Virhekäytäntö"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Joka 10. tarra"
-
-msgid "Every 2 Labels"
-msgstr "Joka 2. tarra"
-
-msgid "Every 3 Labels"
-msgstr "Joka 3. tarra"
-
-msgid "Every 4 Labels"
-msgstr "Joka 4. tarra"
-
-msgid "Every 5 Labels"
-msgstr "Joka 5. tarra"
-
-msgid "Every 6 Labels"
-msgstr "Joka 6. tarra"
-
-msgid "Every 7 Labels"
-msgstr "Joka 7. tarra"
-
-msgid "Every 8 Labels"
-msgstr "Joka 8. tarra"
-
-msgid "Every 9 Labels"
-msgstr "Joka 9. tarra"
-
-msgid "Every Label"
-msgstr "Joka tarra"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Odotus epäonnistui"
-
-msgid "Export Printers to Samba"
-msgstr "Vie tulostimet Sambaan"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Arkistokansio"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Arkistokansio - 9/16 x 3 7/16 \""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Folio"
-
-msgid "Forbidden"
-msgstr "Kielletty"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Yleiset"
-
-msgid "Generic"
-msgstr "Yleinen"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU käyttää määrittämätöntä pituutta"
-
-msgid "Glossy Paper"
-msgstr "Kiiltävä paperi"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Harmaasävy"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Riippukansio"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Riippukansio - 9/16 x 2 \""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Virheellinen ohjausmerkki"
-
-msgid "Illegal main keyword string"
-msgstr "Virheellinen pääavainsanan merkkijono"
-
-msgid "Illegal option keyword string"
-msgstr "Virheellinen valinta-avainsanan merkkijono"
-
-msgid "Illegal translation string"
-msgstr "Virheellinen käännösmerkkijono"
-
-msgid "Illegal whitespace character"
-msgstr "Virheellinen tyhjä merkki"
-
-msgid "Installable Options"
-msgstr "Asennettavat lisävarusteet"
-
-msgid "Installed"
-msgstr "Asennettu"
-
-msgid "IntelliBar Label Printer"
-msgstr "IntelliBar-tarratulostin"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "Sisäinen virhe"
-
-msgid "Internet Postage 2-Part"
-msgstr "Internet-postimerkki kaksiosainen"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Internet-postimerkki kaksiosainen - 2 1/4 x 7 1/2 \""
-
-msgid "Internet Postage 3-Part"
-msgstr "Internet-postimerkki kolmiosainen"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Internet-postimerkki kolmiosainen - 2 1/4 x 7 \""
-
-msgid "Internet Printing Protocol"
-msgstr "Internet Printing Protocol"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "Työ %d on jo keskeytetty - ei voida perua."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "Työ %d on jo peruttu - ei voida perua."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "Työ %d on jo suoritettu - ei voida perua."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Työ suoritettu"
-
-msgid "Job Created"
-msgstr "Työ luotu"
-
-msgid "Job ID: "
-msgstr "Työn tunnus: "
-
-msgid "Job Options Changed"
-msgstr "Työn valintoja muutettu"
-
-msgid "Job Stopped"
-msgstr "Työ pysäytetty"
-
-msgid "Job UUID: "
-msgstr "Työn UUID: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "Työ on suoritettu eikä sitä voida muuttaa."
-
-msgid "Job operation failed:"
-msgstr "Työtoiminto epäonnistui:"
-
-msgid "Job state cannot be changed."
-msgstr "Työn tilaa ei voida muuttaa."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Työt"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR-palvelin tai -tulostin"
-
-msgid "Label Printer"
-msgstr "Tarratulostin"
-
-msgid "Label Top"
-msgstr "Tarran yläpuoli"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Suuri osoite"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Suuri osoite - 1 4/10 x 3 1/2 \""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet Series PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Vaalea"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Rivi on pidempi kuin suurin sallittu (255 merkkiä)"
-
-msgid "List Available Printers"
-msgstr "Luetteloi käytettävissä olevat tulostimet"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Sijainti: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Pitkä reuna (pysty)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Merkki ja malli: "
-
-msgid "Manual Feed"
-msgstr "Käsinsyöttö"
-
-msgid "Media Dimensions: "
-msgstr "Median mitat: "
-
-msgid "Media Limits: "
-msgstr "Median rajat: "
-
-msgid "Media Name: "
-msgstr "Median nimi: "
-
-msgid "Media Size"
-msgstr "Median koko"
-
-msgid "Media Source"
-msgstr "Median lähde"
-
-msgid "Media Tracking"
-msgstr "Median seuranta"
-
-msgid "Media Type"
-msgstr "Median tyyppi"
-
-msgid "Medium"
-msgstr "Keskikokoinen"
-
-msgid "Memory allocation error"
-msgstr "Muistinvarausvirhe"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "PPD-Adobe-4.x-otsake puuttuu"
-
-msgid "Missing asterisk in column 1"
-msgstr "Tähtimerkki puuttuu sarakkeesta 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Arvomerkkijono puuttuu"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Muokkaa luokkaa"
-
-msgid "Modify Printer"
-msgstr "Muokkaa tulostinta"
-
-msgid "Move All Jobs"
-msgstr "Siirrä kaikki työt"
-
-msgid "Move Job"
-msgstr "Siirrä työ"
-
-msgid "Moved Permanently"
-msgstr "Siirretty pysyvästi"
-
-msgid "NULL PPD file pointer"
-msgstr "PPD-tiedoston osoitin NULL"
-
-msgid "Name OID uses indefinite length"
-msgstr "Nimi-OID käyttää määrittelemätöntä pituutta"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Ei koskaan"
-
-msgid "New Stylus Color Series"
-msgstr "Uusi Stylus Color Series"
-
-msgid "New Stylus Photo Series"
-msgstr "Uusi Stylus Photo Series"
-
-msgid "No"
-msgstr "Ei"
-
-msgid "No Content"
-msgstr "Ei sisältöä"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Ei VarBind SEQUENCE:a"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Ei aktiivista yhteyttä"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Ei yhteisönimeä"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Kohteita ei lisätty."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Ei virheindeksiä"
-
-msgid "No error-status"
-msgstr "Ei virhetilaa"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Ei nimi-OID:tä"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Ei pyyntötunnistetta"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Tilauksia ei löytynyt."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Ei variable-bindings SEQUENCE:a"
-
-msgid "No version number"
-msgstr "Ei versionumeroa"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Ei-jatkuva (mark sensing)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Ei-jatkuva (web sensing)"
-
-msgid "Normal"
-msgstr "Normaali"
-
-msgid "Not Found"
-msgstr "Ei löytynyt"
-
-msgid "Not Implemented"
-msgstr "Ei toteutettu"
-
-msgid "Not Installed"
-msgstr "Ei asennettu"
-
-msgid "Not Modified"
-msgstr "Ei muokattu"
-
-msgid "Not Supported"
-msgstr "Ei tuettu"
-
-msgid "Not allowed to print."
-msgstr "Tulostaminen ei ole sallittua."
-
-msgid "Note"
-msgstr "Huomaa"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Pois (yksipuolinen)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Verkko-ohjeet"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "kohteen %s avaaminen epäonnistui: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup ilman edeltävää CloseGroup:ia"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI ilman edeltävää CloseUI/JCLCloseUI:ta"
-
-msgid "Operation Policy"
-msgstr "Toimintakäytäntö"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Valinnat asennettu"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Valinnat: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Tulostetila"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "PCL-lasertulostin"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Paketti ei sisällä Get-Response-PDU:ta"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Paketti ei ala SEQUENCE:lla"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Salasana kohteelle %s kohteessa %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr ""
-"Kohteelle %s tarvitaan salasana kohteen %s käyttämiseen Samban kautta: "
-
-msgid "Pause Class"
-msgstr "Keskeytä luokka"
-
-msgid "Pause Printer"
-msgstr "Keskeytä tulostin"
-
-msgid "Peel-Off"
-msgstr "Irrotettava"
-
-msgid "Photo"
-msgstr "Valokuva"
-
-msgid "Photo Labels"
-msgstr "Valokuvatarrat"
-
-msgid "Plain Paper"
-msgstr "Tavallinen paperi"
-
-msgid "Policies"
-msgstr "Käytännöt"
-
-msgid "Port Monitor"
-msgstr "Porttimonitori"
-
-msgid "PostScript Printer"
-msgstr "PostScript-tulostin"
-
-msgid "Postcard"
-msgstr "Postikortti"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Tulostustiheys"
-
-msgid "Print Job:"
-msgstr "Tulosta työ:"
-
-msgid "Print Mode"
-msgstr "Tulostustila"
-
-msgid "Print Rate"
-msgstr "Tulostustaajuus"
-
-msgid "Print Self-Test Page"
-msgstr "Tulosta itsetestisivu"
-
-msgid "Print Speed"
-msgstr "Tulostusnopeus"
-
-msgid "Print Test Page"
-msgstr "Tulosta testisivu"
-
-msgid "Print and Cut"
-msgstr "Tulosta ja leikkaa"
-
-msgid "Print and Tear"
-msgstr "Tulosta ja revi"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Tulostettu kohteelle: "
-
-msgid "Printed From: "
-msgstr "Tulostettu kohteesta: "
-
-msgid "Printed On: "
-msgstr "Tulostettu: "
-
-msgid "Printer Added"
-msgstr "Tulostin lisätty"
-
-msgid "Printer Default"
-msgstr "Tulostimen oletus"
-
-msgid "Printer Deleted"
-msgstr "Tulostin poistettu"
-
-msgid "Printer Modified"
-msgstr "Tulostinta muokattu"
-
-msgid "Printer Name: "
-msgstr "Tulostimen nimi: "
-
-msgid "Printer Paused"
-msgstr "Tulostin keskeytetty"
-
-msgid "Printer Settings"
-msgstr "Tulostinasetukset"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Tulostin:"
-
-msgid "Printers"
-msgstr "Tulostimet"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Poista työt"
-
-msgid "Quarto"
-msgstr "Quarto"
-
-msgid "Quota limit reached."
-msgstr "Kiintiöraja saavutettu."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Hylkää työt"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Tulosta uudelleen virheen jälkeen"
-
-msgid "Request Entity Too Large"
-msgstr "Pyydetty kohde liian suuri"
-
-msgid "Resolution"
-msgstr "Tarkkuus"
-
-msgid "Resume Class"
-msgstr "Jatka luokka"
-
-msgid "Resume Printer"
-msgstr "Jatka tulostin"
-
-msgid "Return Address"
-msgstr "Palautusosoite"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Palautusosoite - 3/4 x 2 \""
-
-msgid "Rewind"
-msgstr "Kelaa taaksepäin"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE käyttää määrittämätöntä pituutta"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Katso muu"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Sarjaportti %d"
-
-msgid "Server Restarted"
-msgstr "Palvelin käynnistettiin uudelleen"
-
-msgid "Server Security Auditing"
-msgstr "Palvelimen turvallisuustarkastus"
-
-msgid "Server Started"
-msgstr "Palvelin käynnistetty"
-
-msgid "Server Stopped"
-msgstr "Palvelin pysäytetty"
-
-msgid "Service Unavailable"
-msgstr "Palvelu ei käytettävissä"
-
-msgid "Set Allowed Users"
-msgstr "Aseta sallitut käyttäjät"
-
-msgid "Set As Server Default"
-msgstr "Aseta palvelimen oletukseksi"
-
-msgid "Set Class Options"
-msgstr "Aseta luokan valinnat"
-
-msgid "Set Printer Options"
-msgstr "Aseta tulostimen valinnat"
-
-msgid "Set Publishing"
-msgstr "Aseta julkaisu"
-
-msgid "Shipping Address"
-msgstr "Lähetysosoite"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Lähetysosoite - 2 5/16 x 4 \""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Lyhyt reuna (vaaka)"
-
-msgid "Special Paper"
-msgstr "Erikoispaperi"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Standardi"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Aloitetaan otsikkoa"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Lausunto"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color Series"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo Series"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Vaihdetaan protokollia"
-
-msgid "Tabloid"
-msgstr "Tabloid"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Revi"
-
-msgid "Tear-Off"
-msgstr "Repäisy"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Repäisykohdan säätö"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "PPD-tiedostoa â€%s†ei löytynyt."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "PPD-tiedostoa â€%s†ei voitu avata: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Luokan nimi voi sisältää enintään 127 näkyvää merkkiä eikä voi sisältää "
-"välilyöntejä, kauttaviivoja (/) eikä ristikkomerkkiä (#)."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"notify-lease-duration-attribuuttia ei voida käyttää työtilausten kanssa."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Tulostimen nimi voi sisältää enintään 127 näkyvää merkkiä eikä voi sisältää "
-"välilyöntejä, kauttaviivoja (/) eikä ristikkomerkkiä (#)."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "printer-uri â€%s†sisältää virheellisiä merkkejä."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"printer-uri:n on oltava muotoa â€ipp://PALVELINNIMI/classes/LUOKANNIMIâ€."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"printer-uri:n on oltava muotoa â€ipp://PALVELINNIMI/printers/TULOSTIMENNIMIâ€."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"Tilauksen nimi ei voi sisältää välilyöntejä, kauttaviivoja (/), "
-"kysymysmerkkejä (?) eikä ristikkomerkkiä (#)."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Tilauksia on liikaa."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Lämpösiirtomedia"
-
-msgid "Title: "
-msgstr "Otsikko: "
-
-msgid "Too many active jobs."
-msgstr "Liikaa aktiivisia töitä."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Kalvo"
-
-msgid "Tray"
-msgstr "Alusta"
-
-msgid "Tray 1"
-msgstr "Alusta 1"
-
-msgid "Tray 2"
-msgstr "Alusta 2"
-
-msgid "Tray 3"
-msgstr "Alusta 3"
-
-msgid "Tray 4"
-msgstr "Alusta 4"
-
-msgid "URI Too Long"
-msgstr "Osoite liian pitkä"
-
-msgid "US Ledger"
-msgstr "US Ledger"
-
-msgid "US Legal"
-msgstr "US Legal"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "US Letter"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "USB-sarjaportti %d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "cupsd.conf-tiedostoa ei voida käyttää:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "RSS-tilausta ei voida lisätä:"
-
-msgid "Unable to add class:"
-msgstr "Luokkaa ei voida lisätä:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Tulostinta ei voida lisätä:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "RSS-tilausta ei voida perua:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "printer-is-shared-attribuuttia ei voida muuttaa:"
-
-msgid "Unable to change printer:"
-msgstr "Tulostinta ei voida vaihtaa:"
-
-msgid "Unable to change server settings:"
-msgstr "Palvelimen asetuksia ei voida muuttaa:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Palvelimeen ei voida yhdistää."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Tilapäistiedostoa ei voida luoda:"
-
-msgid "Unable to delete class:"
-msgstr "Luokkaa ei voida poistaa:"
-
-msgid "Unable to delete printer:"
-msgstr "Tulostinta ei voida poistaa:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Ylläpitokomentoa ei voida suorittaa:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Luokkaluetteloa ei voida hakea:"
-
-msgid "Unable to get class status:"
-msgstr "Luokan tilaa ei voida hakea:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Luetteloa tulostinajureista ei voida hakea:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Tulostimen attribuutteja ei voida hakea:"
-
-msgid "Unable to get printer list:"
-msgstr "Tulostinluetteloa ei voida hakea:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Tulostimen tilaa ei voida hakea:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Luokkaa ei voida muokata:"
-
-msgid "Unable to modify printer:"
-msgstr "Tulostinta ei voida muokata:"
-
-msgid "Unable to move job"
-msgstr "Työtä ei voida siirtää"
-
-msgid "Unable to move jobs"
-msgstr "Töitä ei voida siirtää"
-
-msgid "Unable to open PPD file"
-msgstr "PPD-tiedostoa ei voida avata"
-
-msgid "Unable to open PPD file:"
-msgstr "PPD-tiedostoa ei voida avata:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "cupsd.conf-tiedostoa ei voida avata:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Testisivua ei voida tulostaa:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Valintoja ei voida asettaa:"
-
-msgid "Unable to set server default:"
-msgstr "Palvelimen oletusta ei voida asettaa:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "cupsd.conf-tiedostoa ei voida lähettää:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Valtuuttamaton"
-
-msgid "Units"
-msgstr "Yksiköt"
-
-msgid "Unknown"
-msgstr "Tuntematon"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Tuntematon printer-error-policy â€%sâ€."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Tuntematon printer-op-policy â€%sâ€."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Ei-tuettu arvotyyppi"
-
-msgid "Upgrade Required"
-msgstr "Päivitys vaaditaan"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Arvo käyttää määrittämätöntä pituutta"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind käyttää määrittämätöntä pituutta"
-
-msgid "Version uses indefinite length"
-msgstr "Versio käyttää määrittämätöntä pituutta"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Kyllä"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Sivua on käytettävä käyttäen osoitetta <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "ZPL-tarratulostin"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "keskeytetty"
-
-msgid "canceled"
-msgstr "peruttu"
-
-msgid "completed"
-msgstr "suoritettu"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "cups-deviced:n suorittaminen epäonnistui."
-
-msgid "cups-driverd failed to execute."
-msgstr "cups-driverd:n suorittaminen epäonnistui."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index käyttää määrittämätöntä pituutta"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status käyttää määrittämätöntä pituutta"
-
-msgid "held"
-msgstr "pidetty"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "toimeton"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "odottaa"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "käsitellään"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id käyttää määrittämätöntä pituutta"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "kohteen %s stat epäonnistui: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "pysäytetty"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "tuntematon"
-
-msgid "untitled"
-msgstr "nimetön"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings käyttää määrittämätöntä pituutta"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(kaikki)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(ei mitään)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d tietuetta\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tVian jälkeen: jatka\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tVaroitukset:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tOtsikko vaaditaan\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tMerkistöt:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tYhteys: suora\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tYhteys: etä\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tSivun oletuskoko:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tOletusmerkkiväli:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tPortin oletusasetukset:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tKuvaus: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tLomake liitetty:\n"
-#~ "\tSisältötyypit: mikä tahansa\n"
-#~ "\tTulostintyypit: tuntematon\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tLomakkeet sallittu:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tLiitäntä: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tLiitäntä: %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tLiitäntä: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tSijainti: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tVian aikana: ei varoitusta\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tKäyttäjät sallittu:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tKäyttäjät estetty:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\ttaustaprosessi käynnissä\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tei tietueita\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\ttulostin on laitteessa â€%s†nopeus -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\ttulostus on pois käytöstä\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\ttulostus on käytössä\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tjonossa kohteelle %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tjonotus on pois käytöstä\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tjonotus on käytössä\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tsyy tuntematon\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " YKSITYISKOHTAISET STANDARDIENMUKAISUUSTESTIN TULOKSET\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " VIITE: sivu 15, osa 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " VIITE: sivu 15, osa 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " VIITE: sivu 19, osa 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " VIITE: sivu 20, osa 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " VIITE: sivu 27, osa 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " VIITE: sivu 42, osa 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " VIITE: sivut 16 - 17, osa 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " VIITE: sivut 42 - 45, osa 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " VIITE: sivut 45 - 46, osa 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " VIITE: sivut 48 - 49, osa 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " VIITE: sivut 52 - 54, osa 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f tavua\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN â€%s %s†on ristiriidassa kohteen â€%s %s†kanssa\n"
-#~ " (rajoitus=â€%s %s %s %sâ€)\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN Kohteella %s ei ole vastaavia valintoja!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s jakaa yleisen etuliitteen kohteen %s kanssa\n"
-#~ " VIITE: sivu 15, osa 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN Oletusvaihtoehdot ovat ristiriidassa!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN Kaksipuoleisuusvalinnan avainsana %s ei ehkä toimi "
-#~ "odotetulla tavalla ja sen pitäisi olla nimeltään Duplex!\n"
-#~ " VIITE: sivu 122, osa 5.17.\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " WARN Tiedosto sisältää sekaisin CR-, LF- ja CR LF -"
-#~ "rivinvaihtoja!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN LanguageEncoding vaaditaan PPD 4.3 -määrityksessä.\n"
-#~ " VIITE: sivut 56 - 57, osa 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN Rivi %d sisältää vain tyhjää!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN Manufacturer vaaditaan PPD 4.3 -määrityksessä.\n"
-#~ " VIITE: sivut 58 - 59, osa 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN APDialogExtension-tiedosto â€%s†puuttuu\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN APPrinterIconPath-tiedosto â€%s†puuttuu\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN Muiden kuin Windowsin PPD-tiedostojen tulisi käyttää LF-"
-#~ "rivinvaihtoja eikä CR LF -rivinvaihtoja!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN Vanhentunut PPD-versio %.1f!\n"
-#~ " VIITE: sivu 42, osa 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName on PPD-määrityksen vastaisesti pidempi kuin "
-#~ "8.3.\n"
-#~ " VIITE: sivut 61 - 62, osa 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protokollat sisältävät PJL:ää, mutta JCL-attribuutteja ei "
-#~ "ole asetettu.\n"
-#~ " VIITE: sivut 78 - 79, osa 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protokollat sisältävät sekä PJL:ää etä BCP:tä; TBCP:tä "
-#~ "odotettiin.\n"
-#~ " VIITE: sivut 78 - 79, osa 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN ShortNickName vaaditaan PPD 4.3 -määrityksessä.\n"
-#~ " VIITE: sivut 64 - 65, osa 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " Kohdetta %s %s %s ei ole olemassa!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Virheellinen %s vaihtoehto %s!\n"
-#~ " VIITE: sivu 122, osa 5.17.\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Virheellinen UTF-8 â€%s†käännösmerkkijono valinnalle %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Virheellinen UTF-8 â€%s†käännösmerkkijono valinnalle %s, "
-#~ "vaihtoehto %s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Virheellinen cupsFilter-arvo â€%sâ€!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s Virheellinen cupsICCProfile %s!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Virheellinen cupsPreFilter-arvo â€%sâ€!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Virheellinen cupsUIConstraints %s: â€%sâ€!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Virheellinen kieli â€%sâ€!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s Tyhjä cupsUIConstraints %s!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Käännösmerkkijono â€%s†valinnalle %s puuttuu!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Käännösmerkkijono â€%s†valinnalle %s puuttuu, vaihtoehto %s!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Vaihtoehto *%s %s kohteessa UIConstraints â€*%s %s *%s %s†"
-#~ "puuttuu!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s Vaihtoehto *%s %s kohteessa cupsUIConstraints %s: â€%s†"
-#~ "puuttuu!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s cupsFilter-tiedosto â€%s†puuttuu!\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s cupsICCProfile-tiedosto â€%s†puuttuu!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s cupsPreFilter-tiedosto â€%s†puuttuu!\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s cupsUIResolver %s puuttuu!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Valinta %s kohteessa UIConstraints â€*%s %s *%s %s†puuttuu!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s Valinta %s kohteessa cupsUIConstraints %s: â€%s†puuttuu!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s Tiedostossa ei ole peruskäännöstä â€%sâ€!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s VAADITTU %s ei määrittele vaihtoehtoa None!\n"
-#~ " VIITE: sivu 122, osa 5.17.\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr ""
-#~ " %s cupsICCProfile %s hajautusarvo törmää kohteen %s kanssa!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s aiheuttaa silmukan!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Kohteen %s vaihtoehtojen nimet %s ja %s eroavat "
-#~ "toisistaan vain isojen ja pienten merkkien osalta!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FAIL** %s on oltava 1284DeviceID!\n"
-#~ " VIITE: sivu 72, osa 5.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** VIRHEELLINEN Default%s %s\n"
-#~ " VIITE: sivu 40, osa 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** VIRHEELLINEN DefaultImageableArea %s!\n"
-#~ " VIITE: sivu 102, osa 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** VIRHEELLINEN DefaultPaperDimension %s!\n"
-#~ " VIITE: sivu 103, osa 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FAIL** VIRHEELLINEN JobPatchFile-attribuutti tiedostossa\n"
-#~ " REF: sivu 24, osa 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** VIRHEELLINEN Manufacturer (tulisi olla â€HPâ€)\n"
-#~ " REF: sivu 211, taulukko D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** VIRHEELLINEN Manufacturer (tulisi olla â€Okiâ€)\n"
-#~ " REF: sivu 211, taulukko D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VIRHEELLINEN ModelName - â€%c†ei ole sallittu "
-#~ "merkkijonossa.\n"
-#~ " VIITE: sivut 59 - 60, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VIRHEELLINEN PSVersion - ei â€(string) intâ€.\n"
-#~ " VIITE: sivut 62 - 64, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VIRHEELLINEN Product - ei â€(string)â€.\n"
-#~ " VIITE: sivu 62, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VIRHEELLINEN ShortNickName - pidempi kuin 31 merkkiä.\n"
-#~ " VIITE: sivut 64 - 65, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FAIL** Virheellinen %s vaihtoehto %s!\n"
-#~ " VIITE: sivu 84, osa 5.9.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Virheellinen FileVersion â€%sâ€\n"
-#~ " VIITE: Sivu 56, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Virheellinen FormatVersion â€%sâ€\n"
-#~ " VIITE: Sivu 56, osa 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **FAIL** Virheellinen LanguageEncoding %s - pitää olla ISOLatin1!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr ""
-#~ " **FAIL** Virheellinen LanguageVersion %s - pitää olla English!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr " **FAIL** Oletusarvoista valintakoodia ei voida tulkita: %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Oletusarvoinen käännösmerkkijono valinnan %s "
-#~ "vaihtoehdolle %s sisältää 8-bittisiä merkkejä!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Oletusarvoinen käännösmerkkijono valinnalle %s sisältää 8-"
-#~ "bittisiä merkkejä!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Ryhmien nimet %s ja %s eroavat toisistaan vain isojen ja "
-#~ "pienten merkkien osalta!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr ""
-#~ " **FAIL** Useita esiintymiä kohteen %s vaihtoehtojen nimeä %s!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Vaihtoehtojen nimet %s ja %s eroavat toisistaan vain "
-#~ "isojen ja pienten merkkien osalta!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN Default%s\n"
-#~ " VIITE: sivu 40, osa 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN DefaultImageableArea\n"
-#~ " VIITE: sivu 102, osa 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN DefaultPaperDimension\n"
-#~ " VIITE: sivu 103, osa 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN FileVersion\n"
-#~ " VIITE: sivu 56, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN FormatVersion\n"
-#~ " VIITE: sivu 56, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN ImageableArea PageSize-arvolle %s\n"
-#~ " VIITE: sivu 41, osa 5.\n"
-#~ " VIITE: sivu 102, osa 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN LanguageEncoding\n"
-#~ " VIITE: sivut 56 - 57, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN LanguageVersion\n"
-#~ " VIITE: sivut 57 - 58, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN Manufacturer\n"
-#~ " VIITE: sivut 58 - 59, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN ModelName\n"
-#~ " VIITE: sivut 59 - 60, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN NickName\n"
-#~ " VIITE: sivu 60, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN PCFileName\n"
-#~ " VIITE: sivut 61 - 62, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN PSVersion\n"
-#~ " VIITE: sivut 62 - 64, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN PageRegion\n"
-#~ " VIITE: sivu 100, osa 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN PageSize\n"
-#~ " VIITE: sivu 41, osa 5.\n"
-#~ " VIITE: sivu 99, osa 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN PageSize\n"
-#~ " VIITE: sivut 99 - 100, osa 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN PaperDimension PageSize-arvolle %s\n"
-#~ " VIITE: sivu 41, osa 5.\n"
-#~ " VIITE: sivu 103, osa 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN Product\n"
-#~ " VIITE: sivu 62, osa 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** VAADITAAN ShortNickName\n"
-#~ " VIITE: sivu 64 - 65, osa 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d VIRHETTÄ LÖYDETTIIN\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " Virheellinen %%%%BoundingBox: rivillä %d!\n"
-#~ " VIITE: sivu 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " Virheellinen %%%%Page: rivillä %d!\n"
-#~ " VIITE: sivu 53, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " Virheellinen %%%%Pages: rivillä %d!\n"
-#~ " VIITE: sivu 43, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " Rivi %d on pidempi kuin 255 merkkiä (%d)!\n"
-#~ " VIITE: sivu 25, Line Length\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " %!PS-Adobe-3.0 puuttuu ensimmäiseltä riviltä!\n"
-#~ " VIITE: sivu 17, 3.1 Conforming Documents\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " %%EndComments-kommentti puuttuu!\n"
-#~ " VIITE: sivu 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%BoundingBox:-kommentti puuttuu tai on virheellinen!\n"
-#~ " VIITE: sivu 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " %%Page:-kommentit puuttuvat tai ovat virheellisiä!\n"
-#~ " VIITE: sivu 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " %%Pages:-kommentti puuttuu tai on virheellinen!\n"
-#~ " VIITE: sivu 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " VIRHEITÄ EI LÖYTYNYT\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " %d riviä ovat pidempiä kuin 255 merkkiä!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " Liikaa %%BeginDocument-kommentteja!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " Liikaa %%EndDocument-kommentteja!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Varoitus: tiedosto sisältää binääridataa!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Varoitus: tiedostossa ei ole %%EndComments-kommenttia!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Varoitus: tiedostossa on vanhentunut DSC-versio %.1f!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FAIL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** PPD-tiedostoa ei voida avata - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** PPD-tiedostoa ei voida avata - %s rivillä %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " PASS\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10 Envelope"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11 Envelope"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12 Envelope"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14 Envelope"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9 Envelope"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f tavua\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f tavua\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s vastaanottaa pyyntöjä alkaen %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "Kohdetta %s ei ole toteutettu lpc:n CUPS-versiossa.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s ei ole valmis\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s on valmis\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s on valmis ja tulostaa\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s ei vastaanota pyyntöjä alkaen %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s ei ole tuettu!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s vastaanottaa pyyntöjä alkaen %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s ei vastaanota pyyntöjä alkaen %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [työ %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s epäonnistui: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: En tiedä mitä tehdä!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Virhe - %s ympäristömuuttujanimien kohdetta â€%s†ei ole olemassa!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Virhe - virheellinen työn tunnus!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: Virhe - tiedostoja ei voida tulostaa ja työtä muuttaa "
-#~ "samanaikaisesti!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Virhe - oletussyötevirrasta ei voida tulostaa, jos annetaan "
-#~ "tiedostoja tai työn tunnus!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Virhe - S-valitsimen jälkeen odotettiin merkistöä!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Virhe - T-valitsimen jälkeen odotettiin sisältötyyppiä!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: Virhe - n-valitsimen jälkeen odotettiin kopioiden lukumäärää!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: Virhe - #-valitsimen jälkeen odotettiin kopioiden lukumäärää!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Virhe - P-valitsimen jälkeen odotettiin kohdetta!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Virhe - b-valitsimen jälkeen odotettiin kohdetta!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Virhe - d-valitsimen jälkeen odotettiin kohdetta!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Virhe - f-valitsimen jälkeen odotettiin muotoa!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Virhe - H-valitsimen jälkeen odotettiin pidon nimeä!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Virhe - H-valitsimen jälkeen odotettiin palvelinnimeä!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Virhe - h-valitsimen jälkeen odotettiin palvelinnimeä!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: Virhe - y-valitsimen jälkeen odotettiin tilaluetteloa!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Virhe - %c-valitsimen jälkeen odotettiin nimeä!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: Virhe - o-valitsimen jälkeen odotettiin valintamerkkijonoa!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Virhe - P-valitsimen jälkeen odotettiin sivuluetteloa!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Virhe - %c-valitsimen jälkeen odotettiin tärkeyttä!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Virhe - r-valitsimen jälkeen odotettiin syytekstiä!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Virhe - t-valitsimen jälkeen odotettiin otsikkoa!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: Virhe - U-valitsimen jälkeen odotettiin käyttäjätunnusta!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: Virhe - u-valitsimen jälkeen odotettiin käyttäjätunnusta!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Virhe - %c-valitsimen jälkeen odotettiin arvoa!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Virhe - W-valitsimen jälkeen tarvitaan â€completedâ€, â€not-completed†"
-#~ "tai â€allâ€!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Virhe - oletuskohdetta ei ole käytettävissä.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Virhe - tärkeyden on oltava 1 - 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Virhe - ajastin ei vastaa!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Virhe - liikaa tiedostoja - â€%sâ€\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Virhe - kohdetta â€%s†ei voida käyttää - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: Virhe - oletussyötevirrasta ei voida laittaa jonoon - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Virhe - tuntematon kohde - â€%sâ€\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Virhe - tuntematon kohde - â€%s/%sâ€\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Virhe - tuntematon valitsin â€%câ€!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Virhe - tuntematon valitsin â€%sâ€!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: i-valitsimen jälkeen odotettiin työn tunnusta!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Suodin â€%s†ei ole käytettävissä: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Virheellinen kohdenimi luettelossa â€%sâ€!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: Virheellinen suodinmerkkijono â€%sâ€\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr ""
-#~ "%s: Tarvitaan työn tunnus (â€-i jobidâ€) ennen â€-H restart†-valitsinta!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Ei suodinta, jolla muuntaa muodosta %s/%s muotoon %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: Toiminto epäonnistui: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: Salaustukea ei ole käännetty mukaan!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Palvelimeen ei voida yhdistää\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: Palvelinta ei tavoitettu!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: Kohteen â€%s†MIME-tyyppiä ei voida määrittää!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: Kohdetta %s ei voida avata - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: Kohdetta %s ei voida avata - %s linjalla %d.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: Kohdetta %s ei voida avata: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: PPD-tiedostoa s ei voida avata: %s linjalla %d.\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: MIME-tietokantaa ei voida lukea kohteesta â€%s†tai â€%sâ€!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: Tuntematon kohde - â€%sâ€\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: Tuntematon kohde-MIME-tyyppi %s/%s!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: Tuntematon valitsin â€%câ€!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: Tuntematon lähde-MIME-tyyppi %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Varoitus - %c-muotovalitsinta ei tueta - tuloste saattaa olla "
-#~ "virheellinen!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Varoitus - merkistövalitsin jätettiin huomioimatta!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Varoitus - sisältötyyppivalitsin jätettiin huomioimatta!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Varoitus - lomakevalitsin jätettiin huomioimatta!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Varoitus - tilavalitsin jätettiin huomioimatta!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: virhe - %s ympäristömuuttujanimien kohdetta â€%s†ei ole olemassa!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: virhe - o-valitsimen jälkeen odotettiin valinta=arvo!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: virhe - oletuskohdetta ei ole käytettävissä.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11 \""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13 \""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14 \""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11 \""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11 \""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 dpi harmaasävy"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60 x 720 dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9 \""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10 \""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11 \""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12 \""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Virheellinen ohje tuntematon komento\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "Tulostinajureiden viemiseen tarvitaan Samba-salasana!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr "Tulostinajureiden viemiseen tarvitaan Samba-käyttäjätunnus!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Luokka nimeltä â€%s†on jo olemassa!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Tulostin nimeltä â€%s†on jo olemassa!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (ylikokoinen)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (ylikokoinen)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (pieni)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (ylikokoinen)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "Yritettiin asettaa %s printer-state virheelliseen arvoon %d!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Attribuuttiryhmät ovat epäjärjestyksessä (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "Virheellinen laite-osoite â€%sâ€!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "Virheellinen device-uri â€%sâ€!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Virheellinen device-uri-malli â€%sâ€!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "Virheellinen document-format â€%sâ€!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Virheellinen tiedostonimipuskuri!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Virheellinen kirjasinattribuutti: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Virheellinen job-priority-arvo!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Virheellinen job-sheets-arvo â€%sâ€!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Virheellinen job-sheets-arvon tyyppi!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Virheellinen job-state-arvo!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Virheellinen job-uri-attribuutti â€%sâ€!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Virheellinen notify-pull-method â€%sâ€!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "Virheellinen notify-recipient-uri-osoite â€%sâ€!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Virheellinen valinta ja vaihtoehto rivillä %d!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Virheellinen port-monitor â€%sâ€!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Virheellinen printer-state-arvo %d!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Virheellinen pyynnön versionumero %d.%d!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "Virheellinen tilaustunnus!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0 Envelope"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1 Envelope"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2 Envelope"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3 Envelope"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4 Envelope"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5 Envelope"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6 Envelope"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65 Envelope"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7 Envelope"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Merkistöä â€%s†ei tueta!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3 Envelope"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4 Envelope"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Komennot voidaan lyhentää. Komennot ovat:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Tyyppiä â€%s†ei voitu skannata!"
-
-#~ msgid "Cover open."
-#~ msgstr "Kansi avoinna."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL Envelope"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Kehite lähes loppu."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Kehite loppu!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Laite: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Dokumenttia %d ei löytynyt työstä %d."
-
-#~ msgid "Door open."
-#~ msgstr "Ovi avoinna."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Double Postcard"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: ei voida varata muistia sivutiedolle: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: ei voida varata muistia sivutaululle: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Virheellinen %%BoundingBox:-kommentti havaittu!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: Virheellinen %%IncludeFeature:-kommentti!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: Virheellinen %%Page:-kommentti tiedostossa!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: Virheellinen %%PageBoundingBox:-kommentti tiedostossa!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Virheellinen SCSI-laitetiedosto â€%sâ€!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: Virheellinen merkistötiedosto %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: Virheellinen merkistötyyppi %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: Virheellinen sarakearvo %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: Virheellinen cpi-arvo %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: Virheellinen kirjasinkuvausrivi: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: Virheellinen lpi-arvo %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Virheellinen arkin määrittely!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: Virheellinen tekstin suunta %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: Virheellinen tekstin leveys %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: Kohdetulostinta ei ole olemassa!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Monistunut %%BoundingBox:-kommentti havaittu!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: Monistunut %%Pages:-kommentti havaittu!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: Tyhjä tulostustiedosto!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: Virhe %d lähetettäessä PAPSendData-pyyntöä: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr ""
-#~ "ERROR: Odotettiin lainausmerkin merkittyä merkkijonoa rivillä %d / %s!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: Vakava USB-virhe!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: Virheellinen HP-GL/2-komento havaittu, tiedostoa ei voida "
-#~ "tulostaa!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: %%EndProlog puuttuu!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: %%EndSetup puuttuu!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Laitteen osoite puuttuu komentoriviltä eikä DEVICE_URI-"
-#~ "ympäristömuuttujaa ole määritelty!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: Arvo puuttuu otsikkotiedoston riviltä %d!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: Tarvitaan msgid-rivi ennen käännösmerkkijonoja rivillä %d / %s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: Otsakkeessa ei ole %%PageBoundingBox:-kommenttia!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: Otsakkeessa ei ole %%Pages:-kommenttia!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Laitteen osoitetta ei löytynyt argv[0]:stä eikä DEVICE_URI-"
-#~ "ympäristömuuttujasta!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: Merkistötiedostossa %s ei ole kirjasimia\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: Sivuja ei löytynyt!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: Paperi loppu!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: PRINTER-ympäristömuuttujaa ei ole määritelty!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: Tulostustiedostoa ei hyväksytty (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: Tulostin ei vastaa\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: Tulostin ei vastaa!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: Tulostin lähetti odottamattoman EOF:n\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: Etäpalvelin ei hyväksynyt ohjaustiedostoa (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: Etäpalvelin ei hyväksynyt datatiedostoa (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: Lähetettäessä dataa tulostimelle tapahtui aikakatkaisuvirhe\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: Tiedostoa %d ei voida lisätä työhön: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: Työtä %d ei voida peruuttaa: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: PDF-tiedostoa ei voida kopioida"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: Socketia ei voida luoda"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Tilapäistä pakattua tulostustiedostoa ei voida luoda: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: Tilapäistiedostoa ei voida luoda"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: Tilapäistiedostoa ei voida luoda - %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: Tilapäistiedostoa ei voida luoda: %s.\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: pictwpstops:ia ei voida suorittaa: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: gs-ohjelmaa ei voida suorittaa"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: pdftops-ohjelmaa ei voida suorittaa"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: pictwpstops:ia ei voida forkata: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: PAP-pyyntöä ei voida hakea"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: PAP-vastausta ei voida hakea"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr "ERROR: Tulostimen â€%s†PPD-tiedostoa ei voida hakea - %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: Oletusarvoista AppleTalk-vyöhykettä ei voida hakea"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: Työn %d ominaisuuksia ei voida hakea (%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: Tulostimen tilaa ei voida hakea (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: Tulostinta â€%s†ei löytynyt!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: PAP-vastausta ei voida etsiä"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: AppleTalk-tulostimia ei voida etsiä"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: AppleTalk-osoitteita ei voida tehdä"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: Kohdetta â€%s†ei voida avata - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: Kohdetta %s ei voida avata: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: Otsikkotiedostoa â€%s†ei voida avata - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: Laitetiedostoa â€%s†ei voida avata: %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: Tiedostoa â€%s†ei voida avata - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: Tiedostoa â€%s†ei voida avata: %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: Kuvatiedostoa ei voida avata tulostusta varten!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: Tulostustiedostoa â€%s†ei voida avata: %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: Tulostustiedostoa %s ei voida avata - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: Tulostustiedostoa %s ei voida avata: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Tilapäistä pakattua tulostustiedostoa ei voida avata: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: Tilapäistiedostoa ei voida avata"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: %d tekstisaraketta ei voida tulostaa!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: %d x %d tekstisivua ei voida tulostaa!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: Tulostusdataa ei voida lukea"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: Tulostusdataa ei voida lukea!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: Porttia ei voida varata"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: Tiedostossa ei voida siirtyä kohtaan %ld - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: Tiedostossa ei voida siirtyä kohtaan %lld - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: LPD-komentoa ei voida lähettää"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: PAP tickle -pyyntöä ei voida lähettää"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: Alkuperäistä PAP send data -pyyntöä ei voida lähettää"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: Tulostusdataa ei voida lähettää (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: Tulostusdataa ei voida lähettää!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: Tulostustiedostoa ei voida lähettää tulostimelle"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: Loppu-NUL:ia ei voida lähettää tulostimelle"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: pictwpstops:ia ei voida odottaa: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: %d tavua ei voida kirjoittaa kohteeseen â€%sâ€: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: %d tavua ei voida kirjoittaa tulostimelle!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: Ohjaustiedostoa ei voida kirjoittaa"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: Tulostusdataa ei voida kirjoittaa"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: Tulostusdataa ei voida kirjoittaa: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: Rasteridataa ei voida kirjoittaa ajurille!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: Tilapäistiedostoon ei voida kirjoittaa"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: Pakkaamatonta dokumenttidataa ei voida kirjoittaa: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: Odottamatonta tekstiä rivillä %d / %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: Tuntematon salausvalinnan arvo â€%sâ€!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: Tuntematon tiedostojärjestys â€%sâ€\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: Tuntematon muotomerkki â€%câ€\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: Tuntematon viestikatalogimuoto kohteelle â€%sâ€!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: Tuntematon valinta â€%s†arvolla â€%sâ€!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: Tuntematon tulostustila â€%sâ€\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: Tuntematon versiovalinnan arvo â€%sâ€!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr "ERROR: Ei-tuettu kirkkausarvo %s, käytetään kirkkaus=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: Ei-tuettu gamma-arvo %s, käytetään gamma=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: Ei-tuettu number-up-arvo %d, käytetään number-up=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: Ei-tuettu number-up-layout-arvo %s, käytetään number-up-"
-#~ "layout=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr "ERROR: Ei-tuettu page-border-arvo %s, käytetään page-border=none!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: Havaittiin doc_printf-ylivuoto (%d tavua), keskeytetään!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: pdftops-suodin kaatui signaaliin %d!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: pdftops-suodin lopetti signaaliin %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops lopetti signaaliin %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops lopetti paluuarvolla %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: korjattavissa: Tulostimeen ei voida yhdistää, yritetään uudelleen "
-#~ "30 sekunnin kuluttua...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() epäonnistui"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: tulostustiedostoa ei voida statata"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Tyhjä PPD-tiedosto!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Virhe: h-valitsimen jälkeen tarvitaan palvelinnimi!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "FAIL\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "Tiedostolaitteiden osoitteet on poistettu käytöstä! Voit ottaa ne "
-#~ "käyttöön â€%s/cupsd.confâ€-tiedoston FileDevice-säännöllä."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Lämpövastuksen lämpötila on korkea!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Lämpövastuksen lämpötila on matala!"
-
-#~ msgid "German FanFold"
-#~ msgstr "German FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "German FanFold Legal"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Saatiin printer-uri-attribuutti, mutta ei job-id:tä!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk poistettu käytöstä järjestelmäasetuksissa\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk poistettu käytöstä järjestelmäasetuksissa.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: Perutaan tulostustyötä...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: Yhteydessä tulostimeen...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: Yhdistetään tulostimeen...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: Ohjaustiedoston lähetys onnistui\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: Datatiedoston lähetys onnistui\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: Muotoillaan sivua %d...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: Ladataan kuvatiedostoa...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: Etsitään tulostinta...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: Avataan yhteyttä\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: Tulostustiedosto lähetetty, odotetaan tulostuksen valmistumista...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr ""
-#~ "INFO: Tulostin varattu; yritetään uudelleen 10 sekunnin kuluttua...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr ""
-#~ "INFO: Tulostin varattu; yritetään uudelleen 30 sekunnin kuluttua...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr ""
-#~ "INFO: Tulostin varattu; yritetään uudelleen 5 sekunnin kuluttua...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr "INFO: Tulostin ei tue IPP-versiota %d.%d. Yritetään IPP/1.0:aa...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr ""
-#~ "INFO: Tulostin on varattu; yritetään uudelleen 5 sekunnin kuluttua...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: Tulostin on tällä hetkellä offline.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: Tulostin on tällä hetkellä offline.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: Tulostin on nyt online.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: Tulostin on offline.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr ""
-#~ "INFO: Tulostinta ei ole yhdistetty; yritetään uudelleen 30 sekunnin "
-#~ "kuluttua...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: Tulostetaan sivua %d, %d %% suoritettu...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: Tulostetaan sivua %d...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: Valmis tulostamaan.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: Lähetetään ohjaustiedostoa (%lu tavua)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: Lähetetään ohjaustiedostoa (%u tavua)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: Lähetetään dataa\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: Lähetetään datatiedostoa (%ld tavua)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: Lähetetään datatiedostoa (%lld tavua)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: Lähetetään tulostusdataa...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: Lähetettiin tulostustiedosto, %ld tavua...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: Lähetettiin tulostustiedosto, %lld tavua...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: Lähetetään LPR-työtä, %.0f %% suoritettu...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: Tulostimeen ei saada yhteyttä, jonotetaan luokan seuraavalle "
-#~ "tulostimelle...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: Käytetään oletusarvoista AppleTalk-vyöhykettä â€%sâ€\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: Odotetaan työn valmistumista...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: Odotetaan, että tulostin tulee käytettäväksi...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4 Envelope"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (ylikokoinen)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5 Envelope"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6 Envelope"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Väriaine lähes loppu."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Väriaine loppu!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Hukkavärisäiliö lähes täynnä."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Hukkavärisäiliö täynnä!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Välilukko avoinna."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Kutsun kirjekuori"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Italialainen kirjekuori"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "Työtä %d ei voida aloittaa uudelleen - ei tiedostoja!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "Työtä %d ei ole olemassa!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "Työ %d on suoritettu eikä sitä voida muuttaa!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "Työtä %d ei ole suoritettu!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "Työtä %d ei pidetä todentamista varten!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "Työtä %d ei pidetä!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "Työtä %s ei ole olemassa!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Työtä %d ei löytynyt!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Työtilauksia ei voida uudistaa!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2 Envelope"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3 Envelope"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Kieltä â€%s†ei tueta!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Mediatukos!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Syöttöalusta lähes tyhjä."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Syöttöalusta tyhjä!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Syöttöalusta puuttuu!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Syöttöalusta on täytettävä."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "Document-number-attribuutti puuttuu!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Kaksinkertainen lainausmerkki puuttuu riviltä %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Muotomuuttuja puuttuu!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "notify-subscription-ids-attribuutti puuttuu!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "requesting-user-name-attribuutti puuttuu!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Vaadittuja attribuutteja puuttuu!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Arvo puuttuu riviltä %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Malli: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Monarch Envelope"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: Tulostustiedosto hyväksytty - työn tunnus %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: Tulostustiedosto hyväksytty - työn tunnus tuntematon.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Ei PPD-nimeä!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Windows-tulostinajureita ei ole asennettu!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Kohteessa %s ei ole aktiivisia töitä!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Pyynnössä ei ole attribuutteja!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Todentamistietoja ei annettu!"
-
-#~ msgid "No default printer"
-#~ msgstr "Ei oletustulostinta"
-
-#~ msgid "No file!?!"
-#~ msgstr "Ei tiedostoa!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Ei muokkausaikaa!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Ei tulostimen nimeä!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Luokalle ei löytynyt tulostinosoitetta!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Tulostinosoitetta ei löytynyt!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Pyynnössä ei ole tulostinosoitetta!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Pyynnössä ei ole tilausattribuutteja!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC:n käyttöikä päättymässä."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC:n käyttöikä päättynyt!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Väriaine loppu!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Tulostusalusta lähes täynnä."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Tulostusalusta täynnä!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "Tulostimen %s tuloste lähetetään kohteeseen %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr "Tulostimen %s tuloste lähetetään etätulostimelle %s kohteessa %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "Tulostimen %s/%s tuloste lähetetään kohteeseen %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Tulostimen %s/%s tuloste lähetetään etätulostimelle %s kohteessa %s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Tulostusalusta puuttuu!"
-
-#~ msgid "PASS\n"
-#~ msgstr "PASS\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1 Envelope"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10 Envelope"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2 Envelope"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3 Envelope"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (ylikokoinen)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4 Envelope"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5 Envelope"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6 Envelope"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7 Envelope"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8 Envelope"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9 Envelope"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Personal Envelope"
-
-#~ msgid "Printer offline."
-#~ msgstr "Tulostin offline."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Sija Omistaja Työ Tiedostot Koko "
-#~ "yhteensä\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Sija Omistaja Pri Työ Tiedostot Koko "
-#~ "yhteensä\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Suoritetaan komentoa: %s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "SCSI-tulostin"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tabloid (ylisuuri)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "notify-user-data-arvon on liian suuri (%d > 63 oktettia)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "Tulostinta tai luokkaa ei ole jaettu!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "Tulostinta tai luokkaa ei löytynyt."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "printer-uri-attribuutti tarvitaan!"
-
-#~ msgid "Toner low."
-#~ msgstr "Väriaine vähissä."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "Liikaa job-sheets-arvoja (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "Liikaa printer-state-reasons-arvoja (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "US Executive"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US Legal (ylikokoinen)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US Letter (ylikokoinen)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US Letter (pieni)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Työtä ei voida lisätä kohteelle â€%sâ€!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Tiedostotyypeille ei voida varata muistia!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr "64-bittisiä CUPS-tulostinajuritiedostoja ei voida kopioida (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr "64-bittisiä Windows-tulostinajuritiedostoja ei voida kopioida (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "CUPS-tulostinajuritiedostoja ei voida kopioida (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "PPD-tiedostoa ei voida kopioida - %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "PPD-tiedostoa ei voida kopioida!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr "Windows 2000 -tulostinajuritiedostoja ei voida kopioida (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "Windows 9x -tulostinajuritiedostoja ei voida kopioida (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Liitäntäskriptiä ei voida kopioida - %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Tulostinosoitetta ei voida luoda!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr ""
-#~ "cupsd.conf-tiedostoja, joka ovat suurempia kuin 1 Mt, ei voida muokata!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Työlle ei löydy kohdetta!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Tulostinta ei löytynyt!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr "Windows 2000 -tulostinajuritiedostoja ei voida asentaa (%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr "Windows 9x -tulostinajuritiedostoja ei voida asentaa (%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Dokumenttia %d työssä %d ei voida avata!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Kohdetta â€%s†ei voida suorittaa: %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Komentoa ei voida lähettää tulostinajurille!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Windows-tulostinajuria ei voida asettaa (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Vanhaa USB-luokka-ajuria ei voida käyttää!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Tuntematon tulostinvirhe (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Ei-tuettu merkistö â€%sâ€!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Ei-tuettu pakkausmenetelmä â€%sâ€!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Ei-tuettu pakkausattribuutti %s!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Ei-tuettu muoto â€%sâ€!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Ei-tuettu muoto â€%sâ€!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Ei-tuettu muoto â€%s/%sâ€!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Käyttö:\n"
-#~ "\n"
-#~ " lpadmin [-h palvelin] -d kohde\n"
-#~ " lpadmin [-h palvelin] -x kohde\n"
-#~ " lpadmin [-h palvelin] -p tulostin [-c lisää-luokka] [-i liitäntä] [-m "
-#~ "malli]\n"
-#~ " [-r poista-luokka] [-v laite] [-D kuvaus]\n"
-#~ " [-P ppd-tiedosto] [-o nimi=arvo]\n"
-#~ " [-u allow:käyttäjä,käyttäjä] [-u deny:käyttäjä,"
-#~ "käyttäjä]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Käyttö: %s työ käyttäjä otsikko kopioita valinnat [tiedostonimi]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Käyttö: %s job-id käyttäjä otsikko kopioita valinnat [tiedosto]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Käyttö: %s job-id käyttäjä otsikko kopioita valinnat tiedosto\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Käyttö: convert [ valitsimet ]\n"
-#~ "\n"
-#~ "Valitsimet:\n"
-#~ "\n"
-#~ " -f tiedostonimi Aseta muunnettava tiedosto (muussa tapauksessa "
-#~ "stdin)\n"
-#~ " -o tiedostonimi Aseta luotava tiedosto (muussa tapauksessa "
-#~ "stdout)\n"
-#~ " -i mime/tyyppi Aseta syötteen MIME-tyyppi (muussa tapauksessa "
-#~ "määritetään automaattisesti)\n"
-#~ " -j mime/tyyppi Aseta tulosteen MIME-tyyppi (muussa tapauksessa "
-#~ "application/pdf)\n"
-#~ " -P tiedostonimi.ppd Aseta PPD-tiedosto\n"
-#~ " -a 'nimi=arvo ...' Aseta valintoja\n"
-#~ " -U käyttäjätunnus Aseta työn käyttäjätunnus\n"
-#~ " -J otsikko Aseta otsikko\n"
-#~ " -c kopioita Aseta kopioiden määrä\n"
-#~ " -u Poista PPD-tiedosto, kun valmis\n"
-#~ " -D Poista syötetiedosto, kun valmis\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Käyttö: cupsaddsmb [valitsimet] tulostin1 ... tulostinN\n"
-#~ " cupsaddsmb [valitsimet] -a\n"
-#~ "\n"
-#~ "Valitsimet:\n"
-#~ " -E Salaa yhteys palvelimeen\n"
-#~ " -H samba-palvelin Käytä nimettyä SAMBA-palvelinta\n"
-#~ " -U samba-käyttäjä Todentaudu käyttäen nimettyä SAMBA-käyttäjää\n"
-#~ " -a Vie kaikki tulostimet\n"
-#~ " -h cups-palvelin Käytä nimettyä CUPS-palvelinta\n"
-#~ " -v Ole monisanainen (näytä komennot)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Käyttö: cupsctl [valitsimet] [param=arvo ... paramN=arvoN]\n"
-#~ "\n"
-#~ "Valitsimet:\n"
-#~ "\n"
-#~ " -E Ota salaus käyttöön\n"
-#~ " -U käyttäjätunnus Määrittele käyttäjätunnus\n"
-#~ " -h palvelin[:portti] Määrittele palvelimen osoite\n"
-#~ "\n"
-#~ " --[no-]debug-logging Laita virheiden kirjaaminen päälle tai pois "
-#~ "päältä\n"
-#~ " --[no-]remote-admin Laita etähallinta päälle tai pois päältä\n"
-#~ " --[no-]remote-any Salli tai estä pääsy internetistä\n"
-#~ " --[no-]remote-printers Näytä tai kätke etätulostimet\n"
-#~ " --[no-]share-printers Laita tulostinjako päälle tai pois päältä\n"
-#~ " --[no-]user-cancel-any Salli tai estä käyttäjien perua mikä tahansa "
-#~ "työ\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Käyttö: cupsd [-c määrittelytiedosto] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c määrittelytiedosto Lataa vaihtoehtoinen määrittelytiedosto\n"
-#~ "-f Suorita etualalla\n"
-#~ "-F Suorita etualalla, mutta irrota\n"
-#~ "-h Näytä tämä käyttöohje\n"
-#~ "-l Suorita cupsd launchd(8):sta\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Käyttö: cupsfilter -m mime/tyyppi [ valitsimet ] tiedostonimi\n"
-#~ "\n"
-#~ "Valitsimet:\n"
-#~ "\n"
-#~ " -c cupsd.conf Aseta käytettävä cupsd.conf-tiedosto\n"
-#~ " -j job-id[,N] Suodintiedosto N määritellystä työstä (oletus on "
-#~ "tiedosto 1)\n"
-#~ " -n kopiot Aseta kopioiden määrä\n"
-#~ " -o nimi=arvo Aseta valintoja\n"
-#~ " -p tiedostonimi.ppd Aseta PPD-tiedosto\n"
-#~ " -t otsikko Aseta otsikko\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Käyttö: cupstestdsc [valitsimet] tiedostonimi.ps [... tiedostonimi.ps]\n"
-#~ " cupstestdsc [valitsimet] -\n"
-#~ "\n"
-#~ "Valitsimet:\n"
-#~ "\n"
-#~ " -h Näytä ohjelman käyttö\n"
-#~ "\n"
-#~ " Huomaa: tämä ohjelma tarkistaa vain DSC-kommentit, ei itse "
-#~ "PostScriptiä.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Käyttö: cupstestppd [valitsimet] tiedostonimi1.ppd[.gz] [... "
-#~ "tiedostonimiN.ppd[.gz]]\n"
-#~ " ohjelma | cupstestppd [valitsimet] -\n"
-#~ "\n"
-#~ "Valitsimet:\n"
-#~ "\n"
-#~ " -R juurihakemisto Aseta vaihtoehtoinen juuri\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Anna varoituksia virheiden sijasta\n"
-#~ " -q Suorita hiljaa\n"
-#~ " -r Käytä â€rentoa†avointa tilaa\n"
-#~ " -v Ole monisanainen\n"
-#~ " -vv Ole erittäin monisanainen\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Käyttö: lpmove työ/lähde kohde\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Käyttö: lpoptions [-h palvelin] [-E] -d tulostin\n"
-#~ " lpoptions [-h palvelin] [-E] [-p tulostin] -l\n"
-#~ " lpoptions [-h palvelin] [-E] -p tulostin -o valinta[=arvo] ...\n"
-#~ " lpoptions [-h palvelin] [-E] -x tulostin\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Käyttö: lppasswd [-g ryhmätunnus]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Käyttö: lppasswd [-g ryhmätunnus] [käyttäjätunnus]\n"
-#~ " lppasswd [-g ryhmätunnus] -a [käyttäjätunnus]\n"
-#~ " lppasswd [-g ryhmätunnus] -x [käyttäjätunnus]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Käyttö: lpq [-P kohde] [-U käyttäjätunnus] [-h palvelinnimi[:portti]] [-"
-#~ "l] [+aikaväli]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Käyttö: ppdc [valitsimet] tiedostonimi.drv [ ... tiedostonimiN.drv ]\n"
-#~ "Valitsimet:\n"
-#~ " -D nimi=arvo Aseta nimetty muuttuja arvoon.\n"
-#~ " -I include-hakemisto Lisää include-hakemisto hakupolkuun.\n"
-#~ " -c katalogi.po Lataa määritellyn viestikatalogin.\n"
-#~ " -d tulostehakemisto Määrittele tulostehakemisto.\n"
-#~ " -l kieli[,kieli,...] Määrittele tulostekieli (lokaali).\n"
-#~ " -m Käytä ModelName-arvoa tiedostonimenä.\n"
-#~ " -t Testaa PPD:t niiden luomisen sijasta.\n"
-#~ " -v Ole monisanainen (useammat v-kirjaimet lisäävät "
-#~ "monisanaisuutta).\n"
-#~ " -z Pakkaa PPD-tiedostot GNU zipillä.\n"
-#~ " --cr Päätä rivit CR:llä (Mac OS 9).\n"
-#~ " --crlf Päätä rivit CR + LF:llä (Windows).\n"
-#~ " --lf Päätä rivit LF:llä (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Käyttö: ppdhtml [valitsimet] tiedostonimi.drv > tiedostonimi.html\n"
-#~ " -D nimi=arvo Aseta nimetty muuttuja arvoon.\n"
-#~ "Valinnat:\n"
-#~ " -I include-hakemisto Lisää include-hakemisto hakupolkuun.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Käyttö: ppdi [valitsimet] tiedostonimi.ppd [ ... tiedostonimiN.ppd ]\n"
-#~ "Valitsimet:\n"
-#~ " -I include-hakemisto\n"
-#~ " -o tiedostonimi.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Käyttö: ppdmerge [valitsimet] tiedostonimi.ppd [ ... tiedostonimiN.ppd ]\n"
-#~ "Valitsimet:\n"
-#~ " -o tiedostonimi.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Käyttö: ppdpo [valitsimet] -o tiedostonimi.po tiedostonimi.drv [ ... "
-#~ "tiedostonimiN.drv ]\n"
-#~ "Valitsimet:\n"
-#~ " -D nimi=arvo Aseta nimetty muuttuja arvoon.\n"
-#~ " -I include-hakemisto Lisää include-hakemisto hakupolkuun.\n"
-#~ " -v Ole monisanainen (useammat v-kirjaimet lisäävät "
-#~ "monisanaisuutta).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Käyttö: snmp [palvelin-tai-ip-osoite]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: Lisätään vain %d ensimmäistä löydettyä tulostinta"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: waiteof-valinnalle â€%s†odotettiin totuusarvoa\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: Sivukanavapyyntöä ei voitu lukea!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: Valintaa â€%s†ei voida sisällyttää IncludeFeature:n kautta!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: Tulostin ei vastaa\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: Tulostin lähetti odottamattoman EOF:n\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Etäpalvelin ei vastannut komentotilatavulla %d sekunnin "
-#~ "jälkeen!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Etäpalvelin ei vastannut ohjaustilatavulla %d sekunnin jälkeen!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Etäpalvelin ei vastannut datatilatavulla %d sekunnin jälkeen!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr ""
-#~ "WARNING: SCSI-komento aikakatkaistiin (%d); yritetään uudelleen...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Tämä dokumentti ei ole Adobe Document Structuring Conventions -"
-#~ "määrityksen mukainen eikä välttämättä tulostu oikein!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: Kohdetta â€%s:%s†ei voida avata: %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: PAP status -pyyntöä ei voida lähettää"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: Odottamaton PAP-paketti tyyppiä %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: Tuntematon PAP-paketti tyyppiä %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: Tuntematon vaihtoehto â€%s†valinnalle â€%sâ€!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: Tuntematon valinta â€%sâ€!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: Ei-tuettu siirtonopeus %s!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: tilavalinnalle â€%s†odotettiin numeroarvoa\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: korjattavissa: Verkkopalvelin â€%s†on varattu; yritetään "
-#~ "uudelleen %d sekunnin kuluttua...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr "Varoitus, Windows 2000 -tulostinajureita ei ole asennettu!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4 Envelope"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr "convert: Määrittele muunnettava tiedosto f-valitsimella.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: Tulostimelle â€%s†ei ole PPD-tiedostoa - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: Palvelimeen ei voida yhdistää: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: Tuntematon valinta â€%sâ€!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: Tuntematon valinta â€-%câ€!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: c-valitsimen jälkeen odotettiin määrittelytiedoston nimeä!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: Nykyistä hakemistoa ei voida hakea!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: Tuntematon argumentti â€%s†- keskeytetään!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: Tuntematon valinta â€%c†- keskeytetään!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: launchd(8)-tukea ei ole käännetty mukaan, toimitaan "
-#~ "normaalitilassa.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: Virheellinen dokumenttinumero %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: Virheellinen työtunnus %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: Vain yksi tiedostonimi voidaan määritellä!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: Tilapäistiedostoa ei voida luoda: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: Työtiedostoa ei voida hakea - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: q-valitsin ei ole yhteensopiva v-valitsimen kanssa.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: v-valitsin ei ole yhteensopiva q-valitsimen kanssa.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "laite kohteelle %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "laite kohteelle %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\tsaat tietoja komennoista\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "job-printer-uri-attribuutti puuttuu!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Luokan nimi voi sisältää vain näkyviä merkkejä!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: P-valitsimen jälkeen odotettiin PPD:tä!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr ""
-#~ "lpadmin: u-valitsimen jälkeen odotettiin allow/deny:käyttäjäluettelo!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: r-valitsimen jälkeen odotettiin luokkaa!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: c-valitsimen jälkeen odotettiin luokan nimeä!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: D-valitsimen jälkeen odotettiin kuvausta!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: v-valitsimen jälkeen odotettiin laiteosoitetta!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: I-valitsimen jälkeen odotettiin tiedostotyyppejä!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: h-valitsimen jälkeen odotettiin palvelinnimeä!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: i-valitsimen jälkeen odotettiin liitäntää!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: L-valitsimen jälkeen odotettiin sijaintia!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: m-valitsimen jälkeen odotettiin mallia!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: o-valitsimen jälkeen odotettiin nimi=arvo!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: p-valitsimen jälkeen odotettiin tulostinta!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: d-valitsimen jälkeen odotettiin tulostimen nimeä!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: x-valitsimen jälkeen odotettiin tulostinta tai luokkaa!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: Jäsennimiä ei havaittu!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: Tulostin %s on jo luokan %s jäsen.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: Tulostin %s ei ole luokan %s jäsen.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Tulostimen nimi voi sisältää vain näkyviä merkkejä!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tulostinta ei voida lisätä luokkaan:\n"
-#~ " Määrittele tulostimen nimi ensin!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: Palvelimeen ei voida yhdistää: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: Tilapäistiedostoa ei voida luoda - %s.\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: Tilapäistiedostoa ei voida luoda: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: PPD-tiedostoa â€%s†ei voida avata - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: Tiedostoa â€%s†ei voida avata: %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tulostinta ei voida poistaa luokasta:\n"
-#~ " Määrittele tulostimen nimi ensin!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: PPD-tiedostoa ei voida asettaa:\n"
-#~ " Määrittele tulostimen nimi ensin!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Laiteosoitetta ei voida asettaa:\n"
-#~ " Määrittele tulostimen nimi ensin!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Liitäntäskriptiä tai PPD-tiedostoa ei voida asettaa:\n"
-#~ " Määrittele tulostimen nimi ensin!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Liitäntäskriptiä ei voida asettaa:\n"
-#~ " Määrittele tulostimen nimi ensin!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tulostimen kuvausta ei voida asettaa:\n"
-#~ " Määrittele tulostimen nimi ensin!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tulostimen sijaintia ei voida asettaa:\n"
-#~ " Määrittele tulostimen nimi ensin!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tulostimen valintoja ei voida asettaa:\n"
-#~ " Määrittele tulostimen nimi ensin!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: Tuntematon allow/deny-valinta â€%sâ€!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: Tuntematon argumentti â€%sâ€!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: Tuntematon valinta â€%câ€!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr ""
-#~ "lpadmin: Varoitus - sisällöntyyppiluettelo jätettiin huomioimatta!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr ""
-#~ "lpinfo: --device-id:n jälkeen odotettiin 1284-laitetunnistemerkkijonoa!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: --language:n jälkeen odotettiin kieltä!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: --make-and-model:n jälkeen odotettiin merkkiä ja mallia!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: --product:n jälkeen odotettiin tuotemerkkijonoa!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: --exclude-schemes:n jälkeen odotettiin malliluetteloa!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: --include-schemes:n jälkeen odotettiin malliluetteloa!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: --timeout:n jälkeen odotettiin aikakatkaisua!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: Tuntematon argumentti â€%sâ€!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: Tuntematon valinta â€%câ€!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: Tuntematon valinta â€%sâ€!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: Palvelimeen ei voida yhdistää: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: Tuntematon argumentti â€%sâ€!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: Tuntematon valinta â€%câ€!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: Ei tulostimia!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: Tulostinta tai esiintymää ei voida lisätä: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: PPD-tiedostoa ei voida hakea kohteelle %s: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: PPD-tiedostoa ei voida avata kohteelle %s!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: Tuntematon tulostin tai luokka!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: Vain root voi lisätä tai poistaa salasanoja!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: Salasanatiedosto on varattu!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: Salasanatiedostoa ei päivitetty!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: Salasana ei täsmää!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: Salasana hylättiin.\n"
-#~ "Salasanan on oltava vähintään 6 merkkiä pitkä, se ei saa sisältää\n"
-#~ "käyttäjätunnustasi ja sen on sisällettävä vähintään yksi kirjain ja "
-#~ "numero.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: Salasanat eivät täsmää!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: Salasanamerkkijonoa ei voida kopioida: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: Salasanatiedostoa ei voida avata: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: Salasanatiedostoon ei voida kirjoittaa: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr "lppasswd: vanhaa salasanatiedostoa ei voitu varmuuskopioida: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: salasanatiedoston nimeä ei voitu muuttaa: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: käyttäjää â€%s†ja ryhmää â€%s†ei ole olemassa.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: virhe - %s ympäristömuuttujanimien kohdetta â€%s†ei ole "
-#~ "olemassa!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "jäsen luokassa %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "ei tietueita\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "ei järjestelmän oletuskohdetta\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events:iä ei määritelty!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri-osoite â€%s†on jo käytössä!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri-osoite â€%s†käyttää tuntematonta mallia!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d ei kelpaa!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: Lisätään include-hakemistoa â€%sâ€...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: Lisätään/päivitetään käyttöliittymätekstiä kohteesta %s...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Virheellinen totuusarvo (%s) rivillä %d / %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Virheellinen tarkkuuden nimi â€%s†rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: Virheellinen tila-avainsana â€%s†rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: Virheellinen muuttujan korvaus ($%c) rivillä %d / %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: Riviltä %d / %s löytyi vaihtoehto ilman valintaa!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: Kaksoiskappale #po lokaalille %s rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin suodinmääritystä rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin ohjelman nimeä rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: Odotettiin totuusarvoa rivillä %d / %s.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin merkistöä Font:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: Odotettiin vaihtoehtokoodia rivillä %d / %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: Odotettiin vaihtoehtonimeä/-tekstiä rivillä %d / %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin värijärjestystä ColorModel:ille rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin väriavaruutta ColorModel:ille rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin pakkausta ColorModel:ille rivillä %d / %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin rajoitusmerkkijonoa UIConstraints:ille rivillä %d / %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin ajurintyypin avainsanaa DriverType:lle rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin dupleksityyppiä Duplex:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin koodausta Font:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin tiedostonimeä #po:n %s jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin ryhmänimeä/-tekstiä rivillä %d / %s.\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin include-tiedoston nimeä rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin kokonaislukua rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin lokaalia #po:n jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin nimeä kohteen %s jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin nimeä FileName:n jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin nimeä Font:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin nimeä Manufacturer:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin nimeä MediaSize:n jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin nimeä ModelName:n jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin nimeä PCFileName:n jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin nimeä/tekstiä kohteen %s jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin nimeä/tekstiä Installable:n jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin nimeä/tekstiä Resolution:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin nimi-/tekstiyhdistelmää ColorModel:ille rivillä %d / %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin valintanimeä/-tekstiä rivillä %d / %s.\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin valintaosiota rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin valintatyyppiä rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin ohituskenttää Resolution:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin reaalilukua rivillä %d / %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin tarkkuutta/mediatyyppi ColorProfile:n jälkeen rivillä %"
-#~ "d / %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin tarkkuutta/mediatyyppi SimpleColorProfile:n jälkeen "
-#~ "rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin valitsijaa kohteen %s jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin tilaa Font:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Odotettiin merkkijonoa Copyright:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin merkkijonoa Version:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin kahta valintanimeä rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin arvoa kohteen %s jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Odotettiin versiota Font:in jälkeen rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: Virheellinen #include/#po-tiedostonimi â€%sâ€!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Virheellinen hinta suotimelle rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Virheellinen tyhjä MIME-tyyppi suotimelle rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Virheellinen tyhjä ohjelman nimi suotimelle rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Virheellinen valintaosio â€%s†rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Virheellinen valintatyyppi â€%s†rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: Ladataan ajurin tietotiedostoa â€%sâ€...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: Ladataan viestejä lokaalille â€%sâ€...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: Ladataan viestejä kohteesta â€%sâ€...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: #endif puuttuu kohteen â€%s†lopusta!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: #if puuttuu riviltä %d / %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: Ei viestikatalogia lokaalille %s!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Valinta %s määritelty uudelleen eri tyypillä rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc: Valintarajoituksen on tehtävä *name rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: Liikaa sisäkkäisiä #if:ejä rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: PPD-tiedostoa â€%s†ei voida luoda - %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: Tulostushakemistoa %s ei voida luoda: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: Tulostusputkia ei voida luoda: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: cupstestppd:ia ei voida suorittaa: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: #po-tiedostoa %s ei löytynyt riviltä %d / %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: include-tiedostoa â€%s†ei löytynyt riviltä %d / %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: Lokalisointia kohteelle â€%s†ei löytynyt - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: Lokalisointitiedostoa â€%s†ei voitu ladata - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Määrittelemätön muuttuja (%s) rivillä %d / %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: Tuntematon ajurityyppi %s rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Tuntematon dupleksityyppi â€%s†rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Tuntematon mediakoko â€%s†rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: Tuntematon token â€%s†rivillä %d / %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Tuntemattomia seuraavia merkkejä reaaliluvussa â€%s†rivillä %d / %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc: Määrittelemätön merkkijono, joka alkaa %c, rivillä %d / %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: Kirjoitetaan %s...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: Kirjoitetaan PPD-tiedostoja hakemistoon â€%sâ€...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: Virheellinen LanguageVersion â€%s†kohteessa %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: Jätetään huomioimatta PPD-tiedosto %s...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: Kohdetta %s ei voida varmuuskopioida kohteeseen %s - %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "tulostin %s poissa käytöstä alkaen %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "tulostin %s on toimettomana. käytössä alkaen %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "tulostin %s tulostaa %s-%d. käytössä alkaen %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "tulostin %s/%s poissa käytöstä alkaen %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "tulostin %s/%s on toimettomana. käytössä alkaen %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "tulostin %s/%s tulostaa %s-%d. käytössä alkaen %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "pyynnön tunnus on %s-%d (%d tiedostoa)\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "ajastin ei ole käynnissä\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "ajastin on käynnissä\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\tnäytä taustaprosessin tila ja jono\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "järjestelmän oletuskohde: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "järjestelmän oletuskohde: %s/%s\n"
diff --git a/locale/cups_fr.po b/locale/cups_fr.po
deleted file mode 100644
index 2257fa34..00000000
--- a/locale/cups_fr.po
+++ /dev/null
@@ -1,8821 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f millimètres"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f à %.0f x %.0f millimètres"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f pouces"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f à %.2f x %.2f pouces"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "Impossible de modifier « %s »."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 po/s"
-
-msgid "1.25x0.25\""
-msgstr "1,25 x 0,25\""
-
-msgid "1.25x2.25\""
-msgstr "1,25 x 2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 po/s"
-
-msgid "1.50x0.25\""
-msgstr "1,50 x 0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50 x 0,50\""
-
-msgid "1.50x1.00\""
-msgstr "1,50 x 1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50 x 2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 po/s"
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/s"
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 po/s"
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 po/s"
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/s"
-
-msgid "120x60dpi"
-msgstr "120 x 60 ppp"
-
-msgid "120x72dpi"
-msgstr "120 x 72 ppp"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136 ppp"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/s"
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/s"
-
-msgid "150dpi"
-msgstr "150 ppp"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180 ppp"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 po/s"
-
-msgid "2-Sided Printing"
-msgstr "Impression recto-verso"
-
-msgid "2.00x0.37\""
-msgstr "2,00 x 0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00 x 0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00 x 1,00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00 x 1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00 x 2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00 x 3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00 x 4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00 x 5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25 x 0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25 x 1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25 x 4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25 x 5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38 x 5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 po/s"
-
-msgid "2.50x1.00\""
-msgstr "2,50 x 1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50 x 2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75 x 1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2.9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/s"
-
-msgid "200 mm/sec."
-msgstr "200 mm/s"
-
-msgid "203dpi"
-msgstr "203 ppp"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "Série 24 broches"
-
-msgid "240x72dpi"
-msgstr "240 x 72 ppp"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/s"
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 po/s"
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00 x 1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00 x 1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00 x 2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00 x 3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00 x 5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25 x 2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25 x 5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25 x 5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25 x 5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25 x 7,83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "Disque 3,5\""
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "Disque 3,5\" - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50 x 1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/s"
-
-msgid "300 mm/sec."
-msgstr "300 mm/s"
-
-msgid "300dpi"
-msgstr "300 ppp"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360 ppp"
-
-msgid "360x180dpi"
-msgstr "360 x 180 ppp"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 po/s"
-
-msgid "4.00x1.00\""
-msgstr "4,00 x 1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00 x 13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00 x 2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00 x 2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00 x 3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00 x 4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00 x 5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00 x 6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00 x 6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/s"
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 po/s"
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 po/s"
-
-msgid "6.00x1.00\""
-msgstr "6,00 x 1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00 x 2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00 x 3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00 x 4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00 x 5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00 x 6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00 x 6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/s"
-
-msgid "600dpi"
-msgstr "600 ppp"
-
-msgid "60dpi"
-msgstr "60 ppp"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 po/s"
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720 ppp"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 po/s"
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00 x 1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00 x 2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00 x 3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00 x 4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00 x 5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00 x 6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00 x 6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/s"
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 po/s"
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "Série 9 broches"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Accepter les tâches"
-
-msgid "Accepted"
-msgstr "Accepté"
-
-msgid "Add Class"
-msgstr "Ajouter une classe"
-
-msgid "Add Printer"
-msgstr "Ajouter une imprimante"
-
-msgid "Add RSS Subscription"
-msgstr "Ajouter abonnement RSS"
-
-msgid "Address"
-msgstr "Adresse"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Adresse - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Administration"
-
-msgid "Always"
-msgstr "Toujours"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Applicator"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Pointeur de dests NULL incorrect"
-
-msgid "Bad OpenGroup"
-msgstr "OpenGroup erroné"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "OpenUI/JCLOpenUI erroné"
-
-msgid "Bad OrderDependency"
-msgstr "OrderDependency erroné"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Requête incorrecte"
-
-msgid "Bad SNMP version number"
-msgstr "Numéro de version SNMP incorrect"
-
-msgid "Bad UIConstraints"
-msgstr "UIConstraints erroné"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Nombre de copies erroné : %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Paramètre personnalisé incorrect"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Valeur de number-up %d incorrecte."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Intervalle de pages erroné : %d-%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Bannières"
-
-msgid "Billing Information: "
-msgstr "Informations de facturation : "
-
-msgid "Bond Paper"
-msgstr "Papier pour titres"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMJN"
-
-msgid "CPCL Label Printer"
-msgstr "Imprimante pour étiquettes CPCL"
-
-msgid "Cancel RSS Subscription"
-msgstr "Annuler abonnement RSS"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Modifier les paramètres"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Classes"
-
-msgid "Clean Print Heads"
-msgstr "Nettoyer les têtes d’impression"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Couleur"
-
-msgid "Color Mode"
-msgstr "Mode de couleur"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Le nom de la communauté s’avère être de longueur indéfinie"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Continuer"
-
-msgid "Continuous"
-msgstr "Continu"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Créé"
-
-msgid "Created On: "
-msgstr "Créé le : "
-
-msgid "Custom"
-msgstr "Personnalisation"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Couper"
-
-msgid "Cutter"
-msgstr "Cutter"
-
-msgid "Dark"
-msgstr "Foncé"
-
-msgid "Darkness"
-msgstr "Tons foncés"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Supprimer la classe"
-
-msgid "Delete Printer"
-msgstr "Supprimer l’imprimante"
-
-msgid "Description: "
-msgstr "Description : "
-
-msgid "DeskJet Series"
-msgstr "Série DeskJet"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "La destination « %s » n’accepte pas de tâche."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Papier pour impression thermique directe"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Désactivé"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Nom du gestionnaire : "
-
-msgid "Driver Version: "
-msgstr "Version du gestionnaire : "
-
-msgid "Duplexer"
-msgstr "Duplexeur"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "Imprimante pour étiquettes EPL1"
-
-msgid "EPL2 Label Printer"
-msgstr "Imprimante pour étiquettes EPL2"
-
-msgid "Edit Configuration File"
-msgstr "Modifier le fichier de configuration"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Fin de la bannière"
-
-msgid "English"
-msgstr "French"
-
-msgid "Enter old password:"
-msgstr "Ancien mot de passe :"
-
-msgid "Enter password again:"
-msgstr "Confirmez le nouveau mot de passe :"
-
-msgid "Enter password:"
-msgstr "Entrez le nouveau mot de passe :"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Entrez votre nom d’utilisateur et votre mot de passe ou bien identifiez-vous "
-"en tant que « root » pour accéder à cette page. Si vous utilisez "
-"l’authentification Kerberos, assurez-vous de disposer d’un ticket Kerberos "
-"valide."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Alimentation au format enveloppe"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Règles d’erreur"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Toutes les 10 étiquettes"
-
-msgid "Every 2 Labels"
-msgstr "Toutes les 2 étiquettes"
-
-msgid "Every 3 Labels"
-msgstr "Toutes les 3 étiquettes"
-
-msgid "Every 4 Labels"
-msgstr "Toutes les 4 étiquettes"
-
-msgid "Every 5 Labels"
-msgstr "Toutes les 5 étiquettes"
-
-msgid "Every 6 Labels"
-msgstr "Toutes les 6 étiquettes"
-
-msgid "Every 7 Labels"
-msgstr "Toutes les 7 étiquettes"
-
-msgid "Every 8 Labels"
-msgstr "Toutes les 8 étiquettes"
-
-msgid "Every 9 Labels"
-msgstr "Toutes les 9 étiquettes"
-
-msgid "Every Label"
-msgstr "Chaque étiquette"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Échec de la condition de valeur attendue"
-
-msgid "Export Printers to Samba"
-msgstr "Exporter les imprimantes vers SAMBA"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Dossier de fichier"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Dossier de fichier - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Folio"
-
-msgid "Forbidden"
-msgstr "Interdit"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Général"
-
-msgid "Generic"
-msgstr "Générique"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU s’avère être de longueur indéfinie"
-
-msgid "Glossy Paper"
-msgstr "Papier brillant"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Niveaux de gris"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Dossier suspendu"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Dossier suspendu - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Caractère de contrôle interdit"
-
-msgid "Illegal main keyword string"
-msgstr "Mot-clé essentiel interdit"
-
-msgid "Illegal option keyword string"
-msgstr "Mot-clé d’option interdit"
-
-msgid "Illegal translation string"
-msgstr "Traduction interdite"
-
-msgid "Illegal whitespace character"
-msgstr "Caractère « espace blanc » interdit"
-
-msgid "Installable Options"
-msgstr "Options installables"
-
-msgid "Installed"
-msgstr "Installée"
-
-msgid "IntelliBar Label Printer"
-msgstr "Imprimante pour étiquettes IntelliBar"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "Erreur interne"
-
-msgid "Internet Postage 2-Part"
-msgstr "Affranchissement Internet en 2 parties"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Affranchissement Internet en 2 parties - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Affranchissement Internet en 3 parties"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Affranchissement Internet en 3 parties - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Internet Printing Protocol"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL ( Langage de contrôle de tâche )"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "La tâche n°%d est déjà abandonnée - impossible de l’annuler."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "La tâche n°%d est déjà annulée - impossible de l’annuler."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "La tâche n°%d est déjà terminée - impossible de l’annuler."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "terminée"
-
-msgid "Job Created"
-msgstr "Tâche créée"
-
-msgid "Job ID: "
-msgstr "Identifiant de tâche : "
-
-msgid "Job Options Changed"
-msgstr "Options de la tâche modifiées"
-
-msgid "Job Stopped"
-msgstr "arrêtée"
-
-msgid "Job UUID: "
-msgstr "UUID de tâche : "
-
-msgid "Job is completed and cannot be changed."
-msgstr "La tâche est terminée et ne peut être modifiée."
-
-msgid "Job operation failed:"
-msgstr "L’opération sur la tâche a échoué :"
-
-msgid "Job state cannot be changed."
-msgstr "L’état de la tâche ne peut être modifié."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Tâches"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "Hôte ou imprimante LPD/LPR"
-
-msgid "Label Printer"
-msgstr "Imprimante pour étiquettes"
-
-msgid "Label Top"
-msgstr "Étiquette supérieure"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Adresse étendue"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Adresse étendue - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet série PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Clair"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Ligne dépassant la longueur maximale autorisée (255 caractères)"
-
-msgid "List Available Printers"
-msgstr "Énumérer les imprimantes disponibles"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Emplacement : "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Bord le plus long (Portrait)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Marque et modèle : "
-
-msgid "Manual Feed"
-msgstr "Alimentation manuelle"
-
-msgid "Media Dimensions: "
-msgstr "Dimensions du papier : "
-
-msgid "Media Limits: "
-msgstr "Limites du papier : "
-
-msgid "Media Name: "
-msgstr "Nom du papier : "
-
-msgid "Media Size"
-msgstr "Taille du papier"
-
-msgid "Media Source"
-msgstr "Source du papier"
-
-msgid "Media Tracking"
-msgstr "Crénage du papier"
-
-msgid "Media Type"
-msgstr "Type de papier"
-
-msgid "Medium"
-msgstr "Moyen"
-
-msgid "Memory allocation error"
-msgstr "Erreur d’allocation de mémoire"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "Entête PPD-Adobe-4.x manquant"
-
-msgid "Missing asterisk in column 1"
-msgstr "Astérisque manquant à la colonne 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Chaîne de valeur manquante"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Modifier la classe"
-
-msgid "Modify Printer"
-msgstr "Modifier l’imprimante"
-
-msgid "Move All Jobs"
-msgstr "Transférer toutes les tâches"
-
-msgid "Move Job"
-msgstr "Transférer la tâche"
-
-msgid "Moved Permanently"
-msgstr "Transférées de façon permanente"
-
-msgid "NULL PPD file pointer"
-msgstr "Pointeur de fichier PPD NULL."
-
-msgid "Name OID uses indefinite length"
-msgstr "L’OID du nom s’avère être de longueur indéfinie"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Jamais"
-
-msgid "New Stylus Color Series"
-msgstr "Nouvelles série Stylus Color"
-
-msgid "New Stylus Photo Series"
-msgstr "Nouvelles série Stylus Photo"
-
-msgid "No"
-msgstr "Non"
-
-msgid "No Content"
-msgstr "Aucun contenu"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Aucune SEQUENCE VarBind"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Aucune connexion active"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Aucun nom de communauté"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Aucune destination ajoutée."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Paramètre error-index absent"
-
-msgid "No error-status"
-msgstr "Paramètre error-status absent"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Aucun OID de nom"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Paramètre request-id absent"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Aucun abonnement trouvé."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Aucune SEQUENCE variable-bindings"
-
-msgid "No version number"
-msgstr "Aucun numéro de version"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Non continu (détection de marque)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Non continu (détection Web)"
-
-msgid "Normal"
-msgstr "Normal"
-
-msgid "Not Found"
-msgstr "Introuvable"
-
-msgid "Not Implemented"
-msgstr "Non implémentée"
-
-msgid "Not Installed"
-msgstr "Non installée"
-
-msgid "Not Modified"
-msgstr "Non modifiée"
-
-msgid "Not Supported"
-msgstr "Non prise en charge"
-
-msgid "Not allowed to print."
-msgstr "Impression interdite"
-
-msgid "Note"
-msgstr "Remarque"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Désactivé (recto)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Aide en ligne"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "L’ouverture de %s a échoué : %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup sans CloseGroup préalable"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI sans CloseUI/JCLCloseUI préalable"
-
-msgid "Operation Policy"
-msgstr "Règles de fonctionnement"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Options installées"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Options : "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Mode de sortie"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "Imprimante laser PCL"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Le paquet ne contient aucun paramètre Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Le paquet ne commence pas par SEQUENCE"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Mot de passe pour %s sur %s ? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "Un mot de passe pour %s est nécessaire pour accéder à %s via SAMBA : "
-
-msgid "Pause Class"
-msgstr "Suspendre la classe"
-
-msgid "Pause Printer"
-msgstr "Suspendre l’imprimante"
-
-msgid "Peel-Off"
-msgstr "Décoller"
-
-msgid "Photo"
-msgstr "Photo"
-
-msgid "Photo Labels"
-msgstr "Étiquettes photo"
-
-msgid "Plain Paper"
-msgstr "Papier vierge"
-
-msgid "Policies"
-msgstr "Règles"
-
-msgid "Port Monitor"
-msgstr "Moniteur de port"
-
-msgid "PostScript Printer"
-msgstr "Imprimante PostScript"
-
-msgid "Postcard"
-msgstr "Carte postale"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Densité d’impression"
-
-msgid "Print Job:"
-msgstr "Tâche d’impression :"
-
-msgid "Print Mode"
-msgstr "Mode d’impression"
-
-msgid "Print Rate"
-msgstr "Taux d’impression"
-
-msgid "Print Self-Test Page"
-msgstr "Imprimer une page d’autotest"
-
-msgid "Print Speed"
-msgstr "Vitesse d’impression"
-
-msgid "Print Test Page"
-msgstr "Imprimer la page de test"
-
-msgid "Print and Cut"
-msgstr "Impression à découper"
-
-msgid "Print and Tear"
-msgstr "Impression à détacher"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Imprimé pour : "
-
-msgid "Printed From: "
-msgstr "Imprimé de : "
-
-msgid "Printed On: "
-msgstr "Imprimé sur : "
-
-msgid "Printer Added"
-msgstr "ajoutée"
-
-msgid "Printer Default"
-msgstr "par défaut"
-
-msgid "Printer Deleted"
-msgstr "supprimée"
-
-msgid "Printer Modified"
-msgstr "modifiée"
-
-msgid "Printer Name: "
-msgstr "Nom de l’imprimante : "
-
-msgid "Printer Paused"
-msgstr "en pause"
-
-msgid "Printer Settings"
-msgstr "Réglages de l’imprimante"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Imprimante :"
-
-msgid "Printers"
-msgstr "Imprimantes"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Purger les tâches"
-
-msgid "Quarto"
-msgstr "Quarto"
-
-msgid "Quota limit reached."
-msgstr "Quota atteint."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Refuser les tâches"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Réimprimer après erreur"
-
-msgid "Request Entity Too Large"
-msgstr "Entité de requête trop volumineuse"
-
-msgid "Resolution"
-msgstr "Résolution"
-
-msgid "Resume Class"
-msgstr "Relancer la classe"
-
-msgid "Resume Printer"
-msgstr "Relancer l’imprimante"
-
-msgid "Return Address"
-msgstr "Renvoyer l’adresse"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Renvoyer l’adresse - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Rembobiner"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE s’avère être de longueur indéfinie"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Autres"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Port série #%d"
-
-msgid "Server Restarted"
-msgstr "Le serveur a redémarré"
-
-msgid "Server Security Auditing"
-msgstr "Vérification de la sécurité du serveur"
-
-msgid "Server Started"
-msgstr "Le serveur a démarré"
-
-msgid "Server Stopped"
-msgstr "Le serveur s’est arrêté"
-
-msgid "Service Unavailable"
-msgstr "Service indisponible"
-
-msgid "Set Allowed Users"
-msgstr "Définir les autorisations"
-
-msgid "Set As Server Default"
-msgstr "Définir comme valeur par défaut pour le serveur"
-
-msgid "Set Class Options"
-msgstr "Définir les options de classe"
-
-msgid "Set Printer Options"
-msgstr "Définir les options de l’imprimante"
-
-msgid "Set Publishing"
-msgstr "Définir la publication"
-
-msgid "Shipping Address"
-msgstr "Adresse de livraison"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Adresse de livraison - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Bord le plus court (paysage)"
-
-msgid "Special Paper"
-msgstr "Papier spécial"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Standard"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Début de la bannière"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Déclaration"
-
-msgid "Stylus Color Series"
-msgstr "Série Stylus Color"
-
-msgid "Stylus Photo Series"
-msgstr "Série Stylus Photo"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Permuter les protocoles"
-
-msgid "Tabloid"
-msgstr "Tabloïd"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Détacher"
-
-msgid "Tear-Off"
-msgstr "Détacher"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Position d’ajustement du détachement"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "Le fichier PPD « %s » n’a pu être trouvé."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "Le fichier PPD « %s » n’a pu être ouvert : %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Le nom de classe doit comporter au plus 127 caractères, tous imprimables, "
-"sans espace, « / » et « # »."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"L’attribut « notify-lease-duration » ne peut pas être utilisé dans un "
-"abonnement de tâche."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Le nom d’imprimante doit comporter au plus 127 caractères, tous imprimables, "
-"sans espace, « / » et « # »."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "Le paramètre printer-uri « %s » contient des caractères non valides."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"L’attribut « printer-uri » doit se présenter sous la forme « ipp://HOSTNAME/"
-"classes/CLASSNAME »."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"L’attribut « printer-uri » doit se présenter sous la forme « ipp://HOSTNAME/"
-"printers/PRINTERNAME »."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"Le nom de l’abonnement ne doit pas contenir d’espace ni aucun des symboles "
-"« / », « ? » et « # »."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Les abonnements sont trop nombreux."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Papier pour transfert thermique"
-
-msgid "Title: "
-msgstr "Titre : "
-
-msgid "Too many active jobs."
-msgstr "Trop de tâches en cours."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Transparence"
-
-msgid "Tray"
-msgstr "Bac"
-
-msgid "Tray 1"
-msgstr "Bac 1"
-
-msgid "Tray 2"
-msgstr "Bac 2"
-
-msgid "Tray 3"
-msgstr "Bac 3"
-
-msgid "Tray 4"
-msgstr "Bac 4"
-
-msgid "URI Too Long"
-msgstr "URI trop long"
-
-msgid "US Ledger"
-msgstr "US Ledger"
-
-msgid "US Legal"
-msgstr "US Légal"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "US Lettre"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "Port série USB #%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Impossible d’accéder au fichier cupsd.conf :"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Impossible d’ajouter d’abonnement RSS :"
-
-msgid "Unable to add class:"
-msgstr "Impossible d’ajouter la classe :"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Impossible d’ajouter l’imprimante :"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Impossible d’annuler l’abonnement RSS :"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Impossible de modifier l’attribut « printer-is-shared » :"
-
-msgid "Unable to change printer:"
-msgstr "Impossible de modifier l’imprimante :"
-
-msgid "Unable to change server settings:"
-msgstr "Impossible de modifier les réglages du serveur :"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Connexion à l’hôte impossible."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Impossible de créer le fichier temporaire :"
-
-msgid "Unable to delete class:"
-msgstr "Impossible de supprimer la classe :"
-
-msgid "Unable to delete printer:"
-msgstr "Impossible de supprimer l’imprimante :"
-
-msgid "Unable to do maintenance command:"
-msgstr "Impossible de lancer la commande de maintenance :"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Impossible d’obtenir la liste des classes :"
-
-msgid "Unable to get class status:"
-msgstr "Impossible d’obtenir l’état de la classe :"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Impossible d’obtenir la liste des gestionnaires d’impression :"
-
-msgid "Unable to get printer attributes:"
-msgstr "Impossible de récupérer les attributs de l’imprimante :"
-
-msgid "Unable to get printer list:"
-msgstr "Impossible d’obtenir la liste des imprimantes :"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Impossible d’obtenir l’état de l’imprimante :"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Impossible de modifier la classe :"
-
-msgid "Unable to modify printer:"
-msgstr "Impossible de modifier l’imprimante :"
-
-msgid "Unable to move job"
-msgstr "Impossible de transférer la tâche."
-
-msgid "Unable to move jobs"
-msgstr "Impossible de transférer les tâches."
-
-msgid "Unable to open PPD file"
-msgstr "Impossible d’ouvrir le fichier PPD."
-
-msgid "Unable to open PPD file:"
-msgstr "Impossible d’ouvrir le fichier PPD :"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Impossible d’ouvrir le fichier cupsd.conf :"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Impossible d’imprimer la page de test :"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Impossible de définir les options :"
-
-msgid "Unable to set server default:"
-msgstr "Impossible de définir la valeur par défaut pour le serveur :"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Impossible de transmettre le fichier cupsd.conf :"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Non autorisé"
-
-msgid "Units"
-msgstr "Unités"
-
-msgid "Unknown"
-msgstr "Inconnu"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Paramètre printer-error-policy « %s » inconnu."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Paramètre printer-op-policy « %s » inconnu."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Type de valeur non pris en charge"
-
-msgid "Upgrade Required"
-msgstr "Mise à niveau obligatoire"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "La valeur s’avère être de longueur indéfinie"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind s’avère être de longueur indéfinie"
-
-msgid "Version uses indefinite length"
-msgstr "La version s’avère être de longueur indéfinie"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Oui"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Vous devez accéder à cette page par l’URL <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "Imprimante pour étiquettes ZPL"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "abandonnée"
-
-msgid "canceled"
-msgstr "annulée"
-
-msgid "completed"
-msgstr "terminée"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "L’exécution de « cups-deviced » a échoué."
-
-msgid "cups-driverd failed to execute."
-msgstr "L’exécution de « cups-driverd » a échoué."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "Le paramètre error-index s’avère être de longueur indéfinie"
-
-msgid "error-status uses indefinite length"
-msgstr "Le paramètre error-status s’avère être de longueur indéfinie"
-
-msgid "held"
-msgstr "retenue"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "inactive"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "en attente"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "en cours"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "Le paramètre request-id s’avère être de longueur indéfinie"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "stat sur %s a échoué : %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "arrêtée"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "inconnu"
-
-msgid "untitled"
-msgstr "sans titre"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings s’avère être de longueur indéfinie"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(tous)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(aucun)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d entrées\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tAprès une erreur : poursuivre\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tAlertes :"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tBannière requise\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tJeux de caractères :\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tConnexion : directe\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tConnexion : distante\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tTaille de papier par défaut :\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tTon par défaut :\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tRéglages par défaut du port :\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tDescription : %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tFormat monté :\n"
-#~ "\tType de contenu : any (quelconque)\n"
-#~ "\tType d’imprimantes : unknown (inconnu)\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tFormats autorisés :\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tInterface : %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tInterface : %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tInterface : %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tEmplacement : %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tEn cas d’erreur : aucun avertissement\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tUtilisateurs autorisés :\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tUtilisateurs refusés :\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tdaemon présent\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\taucune entrée\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tl’imprimante correspond au périphérique « %s », débit -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tl’impression est désactivée\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tl’impression est activée\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tmis en file d’attente pour %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tla mise en file d’attente est désactivée\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tla mise en file d’attente est activée\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\traison inconnue\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " RÉSULTATS DÉTAILLÉS DU TEST DE CONFORMITÉ\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF : page 15, rubrique 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF : page 15, rubrique 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF : page 19, rubrique 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF : page 20, rubrique 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF : page 27, rubrique 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF : page 42, rubrique 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF : pages 16 et 17, rubrique 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF : pages 42 à 45, rubrique 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF : pages 45 et 46, rubrique 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF : pages 48 et 49, rubrique 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF : pages 52 à 54, rubrique 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f octets\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " VALIDE Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " VALIDE DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " VALIDE DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " VALIDE FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " VALIDE FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " VALIDE LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " VALIDE LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " VALIDE Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " VALIDE ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " VALIDE NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " VALIDE PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " VALIDE PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " VALIDE PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " VALIDE PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " VALIDE Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " VALIDE ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " ATTN « %s %s » entre en conflit avec « %s %s ».\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " ATTN Aucune option ne correspond à %s.\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " ATTN %s partage un préfixe avec %s\n"
-#~ " REF : page 15, rubrique 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " ATTN Choix par défaut en conflit.\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " ATTN Le mot-clé %s d’option duplex peut ne pas fonctionner "
-#~ "comme attendu et doit s’intituler Duplex.\n"
-#~ " REF : page 122, rubrique 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " ATTN Le fichier contient un mélange de fins de ligne CR, LF et "
-#~ "CR LF.\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " ATTN LanguageEncoding requis d’après les spécifications PPD "
-#~ "4.3\n"
-#~ " REF : pages 56 et 57, rubrique 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " ATTN La ligne %d ne contient que des espaces blancs.\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " ATTN Paramètre Manufacturer requis d’après les spécifications "
-#~ "PPD 4.3\n"
-#~ " REF : pages 58 et 59, rubrique 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " ATTN Fichier APDialogExtension « %s » manquant\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " ATTN Fichier APPrinterIconPath « %s » manquant\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " ATTN Les fichiers PPD non-Windows doivent utiliser des fins de "
-#~ "ligne définis uniquement par LF et non CR LF.\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " ATTN Version PPD obsolète %.1f.\n"
-#~ " REF : page 42, rubrique 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " ATTN Le nom de fichier PCFileName ne respecte pas les "
-#~ "spécifications PPD pour le format 8.3\n"
-#~ " REF : pages 61 et 62, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " ATTN La section Protocols contient PJL mais les attributs JCL "
-#~ "ne sont pas définis.\n"
-#~ " REF : pages 78 et 79, rubrique 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " ATTN La section Protocols contient PJL et BCP, mais TBCP est "
-#~ "attendu.\n"
-#~ " REF : pages 78 et 79, rubrique 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " ATTN ShortNickName requis d’après les spécifications PPD 4.3\n"
-#~ " REF : pages 64 et 65, rubrique 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s n’existe pas.\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Choix %s erroné %s.\n"
-#~ " REF  : page 122, rubrique 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Chaîne de traduction UTF-8 « %s » incorrecte pour l’option %s.\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Chaîne de traduction UTF-8 « %s » incorrecte pour l’option %s, "
-#~ "le choix %s.\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Valeur cupsFilter « %s » incorrecte.\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s cupsICCProfile « %s »  incorrect.\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Valeur cupsPreFilter « %s » incorrecte.\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s cupsUIConstraints %s : « %s ».\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Langue « %s » incorrecte.\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s cupsUIConstraints %s vide.\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Chaîne de traduction « %s » manquante pour l’option %s.\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Chaîne de traduction « %s » manquante pour l’option %s et le "
-#~ "choix %s.\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Choix manquant *%s %s dans UIConstraints « *%s %s *%s %s ».\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Choix manquant *%s %s dans cupsUIConstraints %s :« %s ».\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s Fichier cupsFilter manquant « %s ».\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s Fichier cupsICCProfile manquant « %s ».\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s Fichier cupsPreFilter manquant « %s ».\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s cupsUIResolver manquant « %s ».\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Option %s manquante dans UIConstraints « *%s %s *%s %s ».\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Option %s manquante dans cupsUIConstraints %s : « %s ».\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr ""
-#~ " %s Aucune traduction de base « %s » n’est comprise dans le "
-#~ "fichier.\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s %s requis ne définit pas le choix Aucun.\n"
-#~ " REF : page 122, rubrique 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr ""
-#~ " %s La valeur de hachage cupsICCProfile %s entre en collision avec %"
-#~ "s.\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s provoque une boucle.\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Les noms de choix %s %s et %s diffèrent seulement par "
-#~ "leurs majuscules.\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **ÉCHEC** %s doit correspondre à 1284DeviceID.\n"
-#~ " REF : page 72, rubrique 5.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Default%s %s erroné.\n"
-#~ " REF : page 40, rubrique 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** DefaultImageableArea %s erroné.\n"
-#~ " REF : page 102, rubrique 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** DefaultPaperDimension %s erroné.\n"
-#~ " REF : page 103, rubrique 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Attribut JobPatchFile erroné dans le fichier.\n"
-#~ " REF : page 24, rubrique 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Manufacturer erroné (doit être « HP »)\n"
-#~ " REF : page 211, tableau D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Manufacturer incorrect (doit être « Oki »)\n"
-#~ " REF : page 211, tableau D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** ModelName erroné - « %c » interdit dans la chaîne.\n"
-#~ " REF : pages 59 et 60, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** PSVersion erroné - différent de « (string) int ».\n"
-#~ " REF : pages 62 à 64, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Paramètre Product erroné - différent de « (string) ».\n"
-#~ " REF : page 62, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** ShortNickName erroné - dépasse 31 caractères.\n"
-#~ " REF : pages 64 et 65, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Choix %s %s erroné.\n"
-#~ " REF : page 84, rubrique 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** FileVersion « %s » incorrect\n"
-#~ " REF : page 56, rubrique 5.3."
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** FormatVersion « %s » incorrect\n"
-#~ " REF : page 56, section 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **ÉCHEC** LanguageEncoding %s incorrect - doit correspondre à "
-#~ "ISOLatin1.\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr ""
-#~ " **ÉCHEC** LanguageVersion %s incorrect - doit correspondre à "
-#~ "Anglais.\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Le code de l’option par défaut ne peut pas être "
-#~ "interprété : %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **ÉCHEC** La chaîne de traduction par défaut pour l’option %s, "
-#~ "choix %s, contient des caractères 8 bits.\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **ÉCHEC** La chaîne de traduction par défaut pour l’option %s "
-#~ "contient des caractères 8 bits.\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Les noms de groupe %s et %s diffèrent seulement par "
-#~ "leurs majuscules.\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **ÉCHEC** Plusieurs occurrences de %s, nom de choix %s.\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Noms d’option %s et %s diffèrent seulement par leurs "
-#~ "majuscules.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Default%s requis\n"
-#~ " REF : page 40, rubrique 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** DefaultImageableArea requis\n"
-#~ " REF : page 102, rubrique 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** DefaultPaperDimension requis\n"
-#~ " REF : page 103, rubrique 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** FileVersion requis\n"
-#~ " REF : page 56, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** FormatVersion requis\n"
-#~ " REF : page 56, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** ImageableArea requis pour PageSize %s\n"
-#~ " REF : page 41, rubrique 5.\n"
-#~ " REF : page 102, rubrique 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** LanguageEncoding requis\n"
-#~ " REF : pages 56 et 57, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** LanguageVersion requis\n"
-#~ " REF : pages 57 et 58, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Manufacturer requis\n"
-#~ " REF : pages 58 et 59, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** ModelName requis\n"
-#~ " REF : pages 59 et 60, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** NickName requis\n"
-#~ " REF : page 60, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** PCFileName requis\n"
-#~ " REF : pages 61 et 62, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** PSVersion requis\n"
-#~ " REF : pages 62 à 64, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** PageRegion requis\n"
-#~ " REF : page 100, rubrique 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** PageSize requis\n"
-#~ " REF : page 41, rubrique 5.\n"
-#~ " REF : page 99, rubrique 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** PageSize requis\n"
-#~ " REF : pages 99 et 100, rubrique 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** PaperDimension requis pour PageSize %s\n"
-#~ " REF : page 41, rubrique 5.\n"
-#~ " REF : page 103, rubrique 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** Product requis\n"
-#~ " REF : page 62, rubrique 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **ÉCHEC** ShortNickName requis\n"
-#~ " REF : page 64 et 65, rubrique 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr "%d ERREURS TROUVÉES\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%%%BoundingBox erroné : %d en ligne.\n"
-#~ " REF : page 39, %%%%BoundingBox :\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " %%%%Page erroné  : %d en ligne.\n"
-#~ " REF : page 53, %%%%Page :\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " %%%%Pages erroné : %d en ligne.\n"
-#~ " REF : page 43, %%%%Pages :\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " La ligne %d dépasse 255 caractères (%d).\n"
-#~ " REF : page 25, longueur de ligne\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " %!PS-Adobe-3.0 manquant à la première ligne.\n"
-#~ " REF : page 17, 3.1 Uniformisation des documents\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " Commentaire %%EndComments manquant.\n"
-#~ " REF : page 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%BoundingBox manquant ou erroné : commentaire.\n"
-#~ " REF : page 39, %%BoundingBox :\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " %%Page manquant ou erroné : commentaires.\n"
-#~ " REF: page 53, %%Page :\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " %%Pages manquant ou erroné : commentaire.\n"
-#~ " REF : page 43, %%Pages :\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " AUCUNE ERREUR RENCONTRÉE\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " %d lignes dépassant 255 caractères rencontrées.\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " Commentaires %%BeginDocument trop nombreux.\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " Commentaires %%EndDocument trop nombreux.\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Attention : le fichier contient des données binaires.\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Attention : pas de commentaire %%EndComments dans le fichier.\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Attention : version DSC obsolète %.1f dans le fichier.\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " ÉCHEC\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " ÉCHEC\n"
-#~ " **ÉCHEC** Impossible d’ouvrir le fichier - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " ÉCHEC\n"
-#~ " **ÉCHEC** Impossible d’ouvrir le fichier - %s en ligne %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " VALIDE\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10 Enveloppe"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11 Enveloppe"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12 Enveloppe"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14 Enveloppe"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9 Enveloppe"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f octets\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f octets\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s acceptant des requêtes depuis %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s n’est pas implémenté par la version CUPS de lpc.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s n’est pas prêt\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s est prêt\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s est prêt et en cours d’impression\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s n’acceptant pas de requêtes depuis %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s : opération non prise en charge."
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s%s acceptant des requêtes depuis %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s n’acceptant pas de requêtes depuis %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s : %-33.33s [tâche %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s : %s échoué : %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s : aucune décision possible.\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s : Erreur - %s destination non-existante des noms de variable "
-#~ "d’environnement « %s ».\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s : erreur - ID de tâche incorrect.\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s : erreur - ne peut pas imprimer les fichiers et modifier les tâches "
-#~ "simultanément.\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s : erreur - ne peut pas imprimer depuis stdin si les fichiers ou l’ID "
-#~ "de tâche sont fournis.\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s : erreur - jeu de caractères attendu après l’option « -S ».\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s : erreur - type de contenu attendu après l’option « -T ».\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s : erreur - copies attendues après l’option « -n ».\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s : erreur - nombre de copies attendu après l’option « -# ».\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s : erreur - destination attendue après l’option « -P ».\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s : erreur - destination attendue après l’option « -b ».\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s : erreur - destination attendue après l’option « -d ».\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s : erreur - formulaire attendu après l’option « -f ».\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s : erreur - nom de maintien attendu après l’option « -H ».\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s : erreur - nom d’hôte attendu après l’option « -H ».\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s : erreur - nom d’hôte attendu après l’option « -h ».\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s : erreur - liste des modes attendue après l’option « -y ».\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s : erreur - nom attendu après l’option « -%c ».\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s : erreur - chaîne d’option attendue après l’option « -o ».\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s : erreur - liste de pages attendue après l’option « -P ».\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s : erreur - priorité attendue après l’option « -%c ».\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s : erreur - raison attendue après l’option « -r ».\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s : erreur - titre attendu après l’option « -t ».\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s : erreur - nom d’utilisateur attendu après l’option « -U.\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s : erreur - nom d’utilisateur attendu après l’option « -u ».\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s : erreur - valeur attendue après l’option « -%c ».\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s : erreur - « terminé », « pas terminé » ou « tout » nécessaire après "
-#~ "l’option « -W ».\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s : erreur - aucune destination par défaut disponible.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s : erreur - la priorité doit être comprise entre 1 et 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Erreur - le programmateur ne répond pas.\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s : erreur - fichiers trop nombreux - « %s »\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s : erreur - impossible d’accéder à « %s » - %s"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr ""
-#~ "%s : erreur - impossible de mettre en file d’attente depuis stdin - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s : erreur - destination inconnue « %s ».\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s : erreur - destination inconnue « %s/%s ».\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s : erreur - option inconnue « -%c ».\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s : erreur - option inconnue « -%s ».\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s : erreur - ID de tâche attendu après l’option « -i ».\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s : filtre « %s » indisponible : %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s : nom de destination dans la liste « %s »  non valide.\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s : chaîne de filtre « %s » non valide"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr ""
-#~ "%s : identifiant de tâche (« -i jobid ») nécessaire avant « -H restart ».\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s : aucun filtre pour convertir %s/%s en %s/%s.\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s : l’opération a échoué : %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr ""
-#~ "%s : désolé, aucune prise en charge du chiffrement incluse dans la "
-#~ "compilation.\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s : Connexion impossible au serveur\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s : impossible de contacter le serveur.\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr " %s : impossible de déterminer le type MIME de « %s ».\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s : impossible d’ouvrir %s - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s : impossible d’ouvrir %s - %s à la ligne %d."
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s : impossible d’ouvrir %s : %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s : impossible d’ouvrir le fichier PPD : %s à la ligne %d\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr ""
-#~ "%s : impossible de lire la base de données MIME à partir de « %s » ou « %"
-#~ "s ».\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s : destination inconnue « %s ».\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s : destination inconnue du type MIME %s/%s.\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s : option inconnue « %c ».\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s : source inconnue du type MIME %s/%s.\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s : avertissement - modification de format « %c » non prise en charge - "
-#~ "la sortie risque d’être incorrecte.\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s : avertissement - option du jeu de caractères ignorée.\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s : avertissement - option du type de contenu ignorée.\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s : avertissement - option de formulaire ignorée.\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s : avertissement - option de mode ignorée.\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s : erreur - %s destination non-existante des noms de variable "
-#~ "d’environnement « %s ».\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s : erreur - « option=valeur » attendu après l’option « -o ».\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s : erreur - aucune destination par défaut disponible.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 ppp (niveaux de gris)"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60 x 720 ppp"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Commande inconnue d’aide\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr ""
-#~ "Un mot de passe SAMBA est nécessaire pour exporter les gestionnaires "
-#~ "d’impression."
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr ""
-#~ "Un nom d’utilisateur SAMBA est nécessaire pour exporter les gestionnaires "
-#~ "d’impression."
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Une classe porte déjà le nom de « %s »."
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Une imprimante porte déjà le nom de « %s »."
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (format supérieur)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (format supérieur)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (petit format)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (format supérieur)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr ""
-#~ "Tentative d’attribution d’une valeur erronée au paramètre « printer-"
-#~ "state » %s : %d."
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Les groupes d’attributs ne sont pas dans le bon ordre (%x < %x)."
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "URI de périphérique « %s » incorrect.\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "device-uri « %s » incorrect."
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Schéma de device-uri « %s » incorrect."
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "document-format « %s » incorrect."
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Tampon des noms de fichier incorrect."
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Attribut de police incorrect : %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Valeur de job-priority incorrecte."
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Valeur de job-sheets « %s » incorrecte."
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Type de job-sheets incorrect."
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Valeur de job-state incorrecte."
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Attribut de job-uri « %s » incorrect."
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Paramètre notify-pull-method « %s » incorrect."
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "URI de notify-recipient-uri « %s » incorrect."
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Couple option/choix incorrect à la ligne %d.\n"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "port-monitor « %s » incorrect"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Valeur de printer-state %d incorrecte."
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Numéro de version de requête %d.%d incorrect."
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "Identifiant d’abonnement incorrect."
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0 Enveloppe"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1 Enveloppe"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2 Enveloppe"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3 Enveloppe"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4 Enveloppe"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5 Enveloppe"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6 Enveloppe"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65 Enveloppe"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7 Enveloppe"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Jeu de caractères « %s » non pris en charge."
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3 Enveloppe"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4 Enveloppe"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Les commandes peuvent être abrégées. Celles-ci correspondent à :\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Impossible d’analyser le type « %s »."
-
-#~ msgid "Cover open."
-#~ msgstr "Couvercle ouvert."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL Enveloppe"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Développeur presque vide."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Développeur vide."
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Périphérique : uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Document %d introuvable dans la tâche %d."
-
-#~ msgid "Door open."
-#~ msgstr "Capot ouvert."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Carte postale double"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr ""
-#~ "EMERG: impossible d’allouer de la mémoire pour les informations de la "
-#~ "page : %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr ""
-#~ "EMERG: impossible d’allouer de la mémoire pour l’étalage des pages : %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: %%BoundingBox erroné : commentaire vu.\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: %%IncludeFeature erroné : commentaire.\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: %%Page erroné : commentaire dans le fichier.\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: %%PageBoundingBox erroné : commentaire dans le fichier.\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: fichier de périphérique SCSI « %s » erroné.\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: fichier de jeu de caractères %s erroné\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: type de jeu de caractères %s erroné\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: valeur de colonnes %d erronée.\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: valeur de cpi %f erronée.\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: ligne de description de police erronée : %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: valeur de lpi %f erronée.\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: format d’impression erroné.\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: direction de texte %s erronée\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: largeur de texte %s erronée\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: l’imprimante de destination n’existe pas.\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: %%BoundingBox en double : commentaire vu.\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: %%Pages en double : commentaire vu.\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: fichier d’impression vide.\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: erreur %d lors de l’envoi de la requête PAPSendData : %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr ""
-#~ "ERROR: chaîne entre guillemets droits attendue à la ligne %d sur %s.\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: erreur USB fatale.\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: commande HP-GL/2 non valide détectée ; impossible d’imprimer le "
-#~ "fichier.\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: %%EndProlog manquant.\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: %%EndSetup manquant.\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: URI du périphérique manquant sur la ligne de commande et aucune "
-#~ "variable d’environnement DEVICE_URI.\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: valeur manquante à la ligne %d du fichier de bannière.\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: une ligne msgid est obligatoire avant toute chaîne de traduction à "
-#~ "la ligne %d sur %s.\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: aucun %%BoundingBox : commentaire dans l’en-tête.\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: aucun %%Pages : commentaire dans l’en-tête.\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: aucun URI trouvé pour le périphérique, dans argv[0] ou la variable "
-#~ "d’environnement DEVICE_URI.\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr ""
-#~ "ERROR: aucune police ne se trouve dans le fichier du jeu de caractères %"
-#~ "s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: aucune page trouvée.\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: plus de papier.\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: variable d’environnement d’imprimante non définie.\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: fichier d’impression non accepté (%s).\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: l’imprimante ne répond pas.\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: l’imprimante ne répond pas.\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: l’imprimante a envoyé un code EOF inattendu.\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: l’hôte à distance n’a pas accepté le fichier contrôle (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr ""
-#~ "ERROR: l’hôte à distance n’a pas accepté le fichier de données (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: le délai d’attente a été dépassé lors de l’envoi de données à "
-#~ "l’imprimante.\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: impossible d’ajouter le fichier %d à la tâche : %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: impossible d’annuler la tâche %d : %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: impossible de copier le fichier PDF"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: impossible de créer un socket"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: impossible de créer un fichier d’impression temporaire compressé : "
-#~ "%s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: impossible de créer un fichier temporaire."
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: impossible de créer un fichier temporaire - %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: impossible de créer un fichier temporaire : %s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: impossible d’exécuter pictwpstops : %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: impossible d’exécuter le programme gs"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: impossible d’exécuter le programme pdftops"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: impossible d’effectuer le fork de pictwpstops : %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: impossible d’obtenir la requête PAP"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: impossible d’obtenir la réponse PAP"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr ""
-#~ "ERROR: impossible d’obtenir le fichier PPD pour l’imprimante « %s » - %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: impossible de déterminer la zone AppleTalk par défaut"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: impossible d’obtenir les attributs %d de la tâche (%s).\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: impossible de déterminer l’état de l’imprimante (%s).\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: impossible de localiser l’imprimante « %s ».\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: impossible de rechercher une réponse PAP"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: impossible de rechercher des imprimantes AppleTalk"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: impossible de générer une adresse AppleTalk"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: impossible d’ouvrir « %s » - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: impossible d’ouvrir %s : %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: impossible d’ouvrir le fichier de bannière « %s » - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: impossible d’ouvrir le fichier « %s » de périphérique : %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: impossible d’ouvrir le fichier « %s » - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: impossible d’ouvrir le fichier « %s » : %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr ""
-#~ "ERROR: impossible d’ouvrir le fichier image en vue de l’impression.\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: impossible d’ouvrir le fichier d’impression « %s » : %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: impossible d’ouvrir le fichier d’impression %s - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: impossible d’ouvrir le fichier d’impression %s : %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: impossible d’ouvrir le fichier d’impression temporaire compressé : "
-#~ "%s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: impossible d’ouvrir le fichier temporaire."
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: impossible d’imprimer %d colonnes de texte.\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: impossible d’imprimer la page de texte en %d x %d.\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: impossible de lire les données d’impression."
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: impossible de lire les données d’impression.\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: impossible de réserver le port"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr ""
-#~ "ERROR: impossible de chercher jusqu’au décalage %ld dans le fichier - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr ""
-#~ "ERROR: impossible de chercher jusqu’au décalage %lld dans le fichier - %"
-#~ "s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: impossible d’envoyer la commande LPD"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: impossible d’envoyer la requête de passage PAP"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr ""
-#~ "ERROR: impossible d’envoyer la requête initiale de données d’envoi PAP"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: impossible d’envoyer les données d’impression (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: impossible d’envoyer les données d’impression.\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: impossible d’envoyer le fichier d’impression à l’imprimante"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: impossible d’envoyer la valeur Null de fin à l’imprimante"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: impossible d’attendre les pictwpstop : %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: impossible d’écrire %d octets sur « %s » : %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: impossible d’écrire %d octets vers l’imprimante.\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: impossible d’écrire le contenu du fichier de contrôle"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: impossible d’écrire les données d’impression"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr ""
-#~ "ERROR: impossible d’écrire le contenu des données d’impression : %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr ""
-#~ "ERROR: impossible d’écrire de données de trame dans le gestionnaire.\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: impossible d’écrire dans le fichier temporaire"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr ""
-#~ "ERROR: impossible d’écrire de données de document non compressées : %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: texte inattendu à la ligne %d sur %s.\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: valeur de l’option de chiffrement « %s » inconnue.\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: ordre de fichier « %s » inconnu\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: caractère de format « %c » inconnu\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: format du catalogue de messages inconnu pour « %s ».\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: option « %s » inconnue avec la valeur « %s ».\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: mode d’impression « %s » inconnu\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: inconnue version option value « %s ».\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr ""
-#~ "ERROR: valeur de luminosité non prise en charge %s, brightness=100.\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: valeur de gamma non prise en charge %s, gamma=1000.\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: valeur number-up non prise en charge %d, number-up=1.\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: valeur de number-up-layout non prise en charge %s, number-up-"
-#~ "layout=lrtb.\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: valeur de page-border non prise en charge %s, page-border=none.\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr ""
-#~ "ERROR: dépassement de capacité de doc_printf (%d octets) détecté, "
-#~ "processus en cours d’interruption.\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr ""
-#~ "ERROR: le filtre pdftops a cessé de fonctionner à l’issue du signal %d.\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr ""
-#~ "ERROR: le filtre pdftops a indiqué l’état %d lors de sa fermeture.\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops a quitté au signal %d.\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops a indiqué l’état %d lors de sa fermeture.\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: problème réversible : impossible de se connecter à l’imprimante ; "
-#~ "nouvel essai dans 30 secondes…\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: la fonction select() a échoué"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: impossible de lancer le fichier d’impression"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Fichier PPD vide."
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Erreur : un nom d’hôte après l’option « -h » est nécessaire.\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "ÉCHEC\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "Les URI des périphériques de fichier ont été désactivés. Pour l’activer, "
-#~ "reportez-vous à la directive FileDevice dans « %s/cupsd.conf »."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Température de l’unité-fusible élevée."
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Température de l’unité-fusible faible."
-
-#~ msgid "German FanFold"
-#~ msgstr "German FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "German FanFold Légal"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Attribut « printer-uri » trouvé mais sans attribut « job-id »"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk désactivé dans les Préférences Système.\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk désactivé dans les Préférences Système.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: annulation de la tâche d’impression…\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: connecté à l’imprimante…\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: connexion à l’imprimante…\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: fichier de contrôle envoyé correctement\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: fichier de données envoyé correctement\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: mise en forme de la page %d…\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: chargement du fichier image…\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: recherche de l’imprimante…\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: établissement de la connexion\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: fichier d’impression envoyé, en attente de la fin de la tâche "
-#~ "d’impression…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: imprimante occupée ; nouvel essai dans 10 secondes…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: imprimante occupée ; nouvel essai dans 30 secondes…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: imprimante occupée ; nouvel essai dans 5 secondes…\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr ""
-#~ "INFO: imprimante ne prenant pas en charge IPP/%d.%d ; tentative avec "
-#~ "IPP/1.0…\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: imprimante occupée ; nouvel essai dans 5 secondes…\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: imprimante actuellement déconnectée.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: imprimante actuellement hors ligne.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: imprimante en ligne à présent.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: imprimante hors ligne.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: imprimante non connectée ; nouvel essai dans 30 secondes…\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: impression de la page %d, %d %% accompli…\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: impression de la page %d…\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: prêt pour l’impression.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: envoi du fichier de contrôle (%lu octets)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: envoi du fichier de contrôle (%u octets)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: envoi des données\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: envoi du fichier de données (%ld octets)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: envoi du fichier de données (%lld octets)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: envoi des données d’impression…\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: fichier d’impression envoyé, %ld octets…\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: fichier d’impression envoyé, %lld octets…\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: mise en attente de la tâche LPR, %.0f %% achevé…\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: impossible d’entrer en contact avec l’imprimante, mise en file "
-#~ "d’attente sur l’imprimante suivante par ordre de classe…\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: utilisation de la zone AppleTalk par défaut « %s »\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: en attente de la fin de la tâche…\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: attente de disponibilité de l’imprimante…\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4 Enveloppe"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (format supérieur)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5 Enveloppe"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6 Enveloppe"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Encre/toner presque vide."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Encre/toner vide."
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Poubelle d’encre/de toner presque remplie."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Poubelle d’encre/de toner remplie."
-
-#~ msgid "Interlock open."
-#~ msgstr "Dispositif de verrouillage ouvert."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Enveloppe d’invitation"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Enveloppe à l’italienne"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "La tâche n°%d ne peut être redémarrée - aucun fichier."
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "La tâche n°%d n’existe pas."
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "La tâche n°%d est terminée et ne peut plus être modifiée."
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "La tâche n°%d n’est pas terminée."
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "La tâche n°%d n’est pas en attente d’authentification."
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "La tâche n°%d n’est pas retenue."
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "La tâche n°%s n’existe pas."
-
-#~ msgid "Job %d not found!"
-#~ msgstr "La tâche n°%d n’a pas été trouvée."
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Les abonnements de tâche ne peuvent être renouvelés."
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Enveloppe Kaku2"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Enveloppe Kaku3"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Langue « %s » non prise en charge."
-
-#~ msgid "Media jam!"
-#~ msgstr "Bourrage papier"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Bac à papier presque vide."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Bac à papier vide."
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Bac manquant."
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Le bac à papier doit être rempli."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "Attribut « document-number » manquant."
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Caractère Ë manquant à la ligne %d."
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Un champ du formulaire HTML n’a pas été rempli."
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "Attribut notify-subscription-ids manquant"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Attribut « requesting-user-name » manquant"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Il manque des attributs indispensables."
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Valeur manquante à la ligne %d.\n"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Modèle : name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Enveloppe Monarch"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: fichier d’impression accepté - identifiant de tâche %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr ""
-#~ "NOTICE: fichier d’impression accepté - identifiant de tâche inconnu.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Aucun nom PPD"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Aucun pilote d’impression Windows n’est installé."
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Aucune tâche en cours sur « %s »."
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Aucun attribut dans la requête."
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Aucune information d’authentification."
-
-#~ msgid "No default printer"
-#~ msgstr "Aucune imprimante par défaut"
-
-#~ msgid "No file!?!"
-#~ msgstr "Aucun fichier !?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Aucune heure de modification"
-
-#~ msgid "No printer name!"
-#~ msgstr "Aucun nom d’imprimante."
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Paramètre printer-uri absent pour la classe."
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Paramètre printer-uri absent."
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Paramètre printer-uri absent de la requête."
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Aucun attribut d’abonnement dans la requête."
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC presque en fin de vie."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC en fin de vie."
-
-#~ msgid "Out of toner!"
-#~ msgstr "Plus de toner."
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Corbeille de sortie presque pleine."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Corbeille de sortie pleine."
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "La sortie de l’imprimante %s est envoyée à %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "La sortie de l’imprimante %s est envoyée à l’imprimante distante %s sur %"
-#~ "s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "La sortie de l’imprimante %s/%s est envoyée à %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "La sortie de l’imprimante %s/%s est envoyée à l’imprimante distante %s "
-#~ "sur %s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Bac en sortie manquant."
-
-#~ msgid "PASS\n"
-#~ msgstr "VALIDE\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "Enveloppe PRC1"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "Enveloppe PRC10"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "Enveloppe PRC2"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "Enveloppe PRC3"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (format supérieur)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "Enveloppe PRC4"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "Enveloppe PRC5"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "Enveloppe PRC6"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "Enveloppe PRC7"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "Enveloppe PRC8"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "Enveloppe PRC9"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Enveloppe personnelle"
-
-#~ msgid "Printer offline."
-#~ msgstr "hors ligne."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Classmt Proprio Tâche Fichier(s) Taille "
-#~ "totale\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Classmt Proprio Pri Tâche Fichiers Taille "
-#~ "totale\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Commande en cours d’exécution : %s %s -N -A %s -c « %s »\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "Imprimante SCSI"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tabloïd (format supérieur)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr ""
-#~ "La valeur de l’attribut « notify-user-data » est trop grande (%d > 63 "
-#~ "octets)."
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "L’imprimante ou la classe n’est pas partagée."
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "L’imprimante ou la classe n’a pas été trouvée."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "L’attribut « job-printer-uri » est obligatoire."
-
-#~ msgid "Toner low."
-#~ msgstr "Niveau du toner faible."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "Valeurs job-sheets trop nombreuses (%d > 2)."
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "Valeurs printer-state-reasons trop nombreuses (%d > %d)."
-
-#~ msgid "US Executive"
-#~ msgstr "US Executive"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US Légal (format supérieur)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US Lettre (format supérieur)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US Lettre (format inférieur)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Impossible d’ajouter de tâche à la destination « %s »."
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Impossible d’allouer de la mémoire pour les types de fichiers."
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossible de copier les fichiers des gestionnaires d’impression CUPS "
-#~ "64 bits (%d)."
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossible de copier les fichiers des pilotes d’impression Windows "
-#~ "64 bits (%d)."
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossible de copier les fichiers du gestionnaire d’impression CUPS (%d)."
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Impossible de copier le fichier PPD - « %s »."
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Impossible de copier le fichier PPD."
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossible de copier les fichiers des pilotes d’impression pour Windows "
-#~ "2000 (%d)."
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossible de copier les fichiers des pilotes d’impression pour Windows "
-#~ "9x (%d)."
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Impossible de copier le script d’interface - « %s »."
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Impossible de créer le paramètre printer-uri."
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr ""
-#~ "Impossible de modifier des fichiers cupsd.conf de taille supérieure à "
-#~ "1 Mo."
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Impossible de trouver la destination de la tâche."
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Impossible de retrouver l’imprimante.\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossible d’installer les fichiers des pilotes d’impression pour Windows "
-#~ "2000 (%d)."
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossible d’installer les fichiers des pilotes d’impression pour Windows "
-#~ "9x (%d)."
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Impossible d’ouvrir le document %d dans la tâche %d."
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Impossible d’exécuter « %s » : %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Impossible d’envoyer la commande au gestionnaire de l’imprimante."
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr ""
-#~ "Impossible d’installer les fichiers des pilotes d’impression pour Windows "
-#~ "(%d).\n"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Impossible d’exploiter l’ancien gestionnaire de la classe USB.\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Erreur inconnue relative à l’imprimante (%s)"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Jeu de caractères « %s » non pris en charge."
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Compression « %s » non prise en charge"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Attribut de compression %s non pris en charge"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Format « %s » non pris en charge"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Format « %s » non pris en charge"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Format « %s/%s » non pris en charge"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Usage :\n"
-#~ "\n"
-#~ " lpadmin [-h serveur] -d destination\n"
-#~ " lpadmin [-h serveur] -x destination\n"
-#~ " lpadmin [-h serveur] -p imprimante [-c ajouter-classe] [-i interface] "
-#~ "[-m modèle]\n"
-#~ " [-r supprimer-classe] [-v périphérique] [-D "
-#~ "description]\n"
-#~ " [-P fichier-ppd] [-o nom=valeur]\n"
-#~ " [-u allow:utilisateur,utilisateur] [-u deny:"
-#~ "utilisateur,utilisateur]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Usage : %s tâche utilisateur titre copies options [nom_fichier]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Usage : %s id-tâche utilisateur titre copies options [fichier]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Usage : %s id-tâche utilisateur titre copies options fichier\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Usage : convert [ options ]\n"
-#~ "\n"
-#~ "Options :\n"
-#~ "\n"
-#~ " -f nom_fichier Définir le fichier à convertir (dans le cas "
-#~ "contraire, stdin)\n"
-#~ " -o nom_fichier Définir le fichier à générer (dans le cas "
-#~ "contraire, stdout)\n"
-#~ " -i mime/type Définir le type MIME en entrée (dans le cas "
-#~ "contraire, auto-typed)\n"
-#~ " -j mime/type Définir le type MIME en sortie (dans le cas "
-#~ "contraire, application/pdf)\n"
-#~ " -P nom_fichier.ppd Définir le fichier PPD\n"
-#~ " -a 'nom=valeur …' Définir la ou les options\n"
-#~ " -U nom_utilisateur Définir le nom d’utilisateur pour la tâche\n"
-#~ " -J titre Définir le titre\n"
-#~ " -c copies Définir le nombre de copies\n"
-#~ " -u Supprimer le fichier PPD une fois terminé\n"
-#~ " -D Supprimer le fichier en entrée une fois terminé\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Usage : cupsaddsmb [options] imprimante1 … imprimanteN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options :\n"
-#~ " -E Chiffrer la connexion au serveur\n"
-#~ " -H serveur_samba Faire appel au serveur SAMBA indiqué\n"
-#~ " -U utilisateur_samba S’authentifier par le biais de l’utilisateur "
-#~ "SAMBA indiqué\n"
-#~ " -a Exporter toutes les imprimantes\n"
-#~ " -h serveur_cups Faire appel au serveur CUPS indiqué\n"
-#~ " -v Activer la verbosité (afficher les commandes)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Usage : cupsctl [options] [paramètre=valeur … paramètreN=valeurN]\n"
-#~ "\n"
-#~ "Options :\n"
-#~ "\n"
-#~ " -E Activer le chiffrement\n"
-#~ " -U nom_utilisateur Indiquer le nom de l’utilisateur\n"
-#~ " -h serveur[:port] Indiquer l’adresse du serveur\n"
-#~ "\n"
-#~ " --[no-]debug-logging Activer/désactiver le listage de débogage\n"
-#~ " --[no-]remote-admin Activer/désactiver l’administration à "
-#~ "distance\n"
-#~ " --[no-]remote-any Autoriser/interdire l’accès à partir "
-#~ "d’Internet\n"
-#~ " --[no-]remote-printers Afficher/masquer les imprimantes à distance\n"
-#~ " --[no-]share-printers Activer/désactiver le partage d’imprimante\n"
-#~ " --[no-]user-cancel-any Autoriser/interdire aux utilisateurs d’annuler "
-#~ "toute tâche\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Usage : cupsd [-c fichier_config] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c fichier_config Charger un autre fichier de configuration\n"
-#~ "-f Exécuter en premier plan\n"
-#~ "-F Exécuter en premier plan mais en mode détaché\n"
-#~ "-h Afficher le présent message d’usage des options\n"
-#~ "-l Exécuter cupsd à partir de launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Usage : cupsfilter -m mime/type [ options ] nom_fichier\n"
-#~ "\n"
-#~ "Options :\n"
-#~ "\n"
-#~ " -c cupsd.conf Définir le fichier cupsd.conf à utiliser\n"
-#~ " -j id-tâche[,N] Filtrer le fichier N sur la tâche indiquée (par "
-#~ "défaut, fichier 1)\n"
-#~ " -n copies Définir le nombre de copies\n"
-#~ " -o nom=valeur Définir la ou les options\n"
-#~ " -p nom_fichier.ppd Définir le fichier PPD\n"
-#~ " -t titre Définir le titre\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Usage : cupstestdsc [options] nom_fichier.ps [… nom_fichier.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options :\n"
-#~ "\n"
-#~ " -h Afficher l’utilisation du programme\n"
-#~ "\n"
-#~ " Remarque : ce programme ne fait que valider les commentaires DSC et "
-#~ "non le PostScript en tant que tel.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Usage : cupstestppd [options] nom_fichier1.ppd[.gz] [… nom_fichierN.ppd[."
-#~ "gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options :\n"
-#~ "\n"
-#~ " -R répertoire_root Définir un autre utilisateur root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Produire des avertissements plutôt que des "
-#~ "erreurs\n"
-#~ " -q Exécuter sans sortie à l’utilisateur\n"
-#~ " -r Utiliser le mode d’ouverture « sans contrainte »\n"
-#~ " -v Produire une légère verbosité\n"
-#~ " -vv Produire une importante verbosité\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Usage : lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Usage : lpoptions [-h serveur] [-E] -d imprimante\n"
-#~ " lpoptions [-h serveur] [-E] [-p imprimante] -l\n"
-#~ " lpoptions [-h serveur] [-E] -p imprimante -o option[=valeur] …\n"
-#~ " lpoptions [-h serveur] [-E] -x imprimante\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Usage : lppasswd [-g nom_groupe]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Usage : lppasswd [-g nom_groupe] [nom_utilisateur]\n"
-#~ " lppasswd [-g nom_groupe] -a [nom_utilisateur]\n"
-#~ " lppasswd [-g nom_groupe] -x [nom_utilisateur]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Usage : lpq [-P dest] [-U nom_utilisateur] [-h nom_hôte[:port]] [-l] "
-#~ "[+intervalle]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Usage : ppdc [options] nom_fichier.drv [ … nom_fichierN.drv ]\n"
-#~ "Options :\n"
-#~ " -D nom=valeur Définir la variable; dont le nom est indiqué; sur "
-#~ "la valeur fournie.\n"
-#~ " -I inclure-rép Inclure le répertoire au chemin de recherche.\n"
-#~ " -c catalogue.po Charger le catalogue indiqué de messages.\n"
-#~ " -d sortie-rép Préciser le répertoire de sortie.\n"
-#~ " -l langue[,langue,…] Préciser la ou les langues de sortie (locale).\n"
-#~ " -m Utiliser la valeur de ModelName comme nom de "
-#~ "fichier.\n"
-#~ " -t Tester les PPD au lieu de les générer.\n"
-#~ " -v Activer la verbosité (lettres V complémentaires "
-#~ "pour augmenter la verbosité).\n"
-#~ " -z Comprimer les fichiers PPD par la méthode de zip "
-#~ "GNU.\n"
-#~ " --cr Fin de lignes à l’aide de CR (Mac OS 9).\n"
-#~ " --crlf Fin de lignes à l’aide de CR + LF (Windows).\n"
-#~ " --lf Fin de lignes à l’aide de LF (UNIX/Linux/Mac OS "
-#~ "X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Usage : ppdhtml [options] nom_fichier.drv >nom_fichier.html\n"
-#~ " -D nom=valeur Définir la variable, dont le nom est précisé, sur "
-#~ "la valeur indiquée.\n"
-#~ "Options :\n"
-#~ " -I inclure-rép Inclure le répertoire au chemin de recherche.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Usage : ppdi [options] nom_fichier.ppd [ … nom_fichierN.ppd ]\n"
-#~ "Options :\n"
-#~ " -I inclure-rép\n"
-#~ " -o nom_fichier.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Usage : ppdmerge [options] nom_fichier.ppd [ … nom_fichierN.ppd ]\n"
-#~ "Options :\n"
-#~ " -o nom_fichier.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Usage : ppdpo [options] -o nom_fichier.po nom_fichier.drv [ … "
-#~ "nom_fichierN.drv ]\n"
-#~ "Options :\n"
-#~ " -D nom=valeur Définir la variable, dont le nom est précisé, sur "
-#~ "la valeur indiquée.\n"
-#~ " -I inclure-rép Inclure le répertoire au chemin de recherche.\n"
-#~ " -v Activer la verbosité (lettres V complémentaires pour "
-#~ "augmenter la verbosité).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Usage : snmp [hôte-ou-adresse-ip]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: ajout limité aux %d premières imprimantes trouvées"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: valeur booléenne attendue pour l’option waiteof « %s »\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: échec de lecture de la requête de canal latéral.\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: l’option « %s » ne peut être incluse par le biais "
-#~ "d’IncludeFeature.\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: l’imprimante ne répond pas.\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr ""
-#~ "WARNING: l’imprimante a envoyé le caractère EOF de manière inattendue\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: l’hôte à distance n’a pas répondu au bout de %d secondes par un "
-#~ "octet d’état de commande.\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: l’hôte à distance n’a pas répondu au bout de %d secondes par un "
-#~ "octet d’état de contrôle.\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: l’hôte à distance n’a pas répondu au bout de %d secondes par un "
-#~ "octet d’état de données.\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: la commande SCSI a expiré (%d) ; nouvel essai…\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: ce document n’est pas conforme aux normes Adobe (Adobe Document "
-#~ "Structuring Conventions) et risque de ne pas s’imprimer correctement.\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: impossible d’ouvrir « %s :%s » : %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: impossible d’envoyer la requête d’état PAP"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: paquet PAP inattendu, de type %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: paquet PAP inconnu, de type %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: choix « %s » inconnu pour l’option « %s ».\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: option « %s » inconnue.\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: débit en bauds %s non pris en charge.\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: nombre attendu pour l’option d’état « %s »\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: problème réversible : l’hôte du réseau « %s » est occupé ; nouvel "
-#~ "essai dans %d secondes…\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr ""
-#~ "WARNING: aucun pilote d’impression pour Windows 2000 n’est installé."
-
-#~ msgid "You4 Envelope"
-#~ msgstr "Enveloppe You4"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "convert : utilisez l’option -f pour préciser un fichier à convertir.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb : aucun fichier PPD pour l’imprimante « %s » - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl : connexion impossible au serveur : %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl : option « %s » inconnue\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl : option « -%c » inconnue\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr ""
-#~ "cupsd : nom de fichier de configuration attendu après l’option « -c ».\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd : impossible de déterminer le répertoire actif.\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd : argument « %s » inconnu - interruption en cours…\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd : option inconnue « %c » - interruption en cours…\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd : prise en charge de launchd(8) non compilée dans le code ; "
-#~ "exécution en mode normal.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter : numéro de document %d non valide.\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter : identifiant %d de tâche non valide.\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter : un seul nom de fichier peut être spécifié.\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter : impossible de créer le fichier temporaire : %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter : impossible d’obtenir le fichier de tâche - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd : l’option -q est incompatible avec l’option -v.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd : l’option -v est incompatible avec l’option -q.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "périphérique pour %s/%s : %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "périphérique pour %s : %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\taccéder à l’aide relative aux commandes\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "Attribut « job-printer-uri » manquant."
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr ""
-#~ "lpadmin : le nom d’une classe doit se limiter aux caractères "
-#~ "imprimables.\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin : fichier PPD attendu après l’option « -P ».\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr ""
-#~ "lpadmin : paramètre allow/deny:liste_utilisateurs attendu après l’option "
-#~ "« -u ».\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin : classe attendue après l’option « -r ».\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin : nom de classe attendu après l’option « -c ».\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin : description attendue après l’option « -D ».\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin : URI de périphérique attendu après l’option « -v ».\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr ""
-#~ "lpadmin : type ou types de fichier attendu(s) après l’option « -I ».\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin : nom d’hôte attendu après l’option « -h ».\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin : interface attendue après l’option « -i ».\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin : emplacement attendu après l’option « -L ».\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin : modèle attendu après l’option « -m ».\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin : nom=valeur attendu après l’option « -o ».\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin : imprimante attendue après l’option « -p ».\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin : nom d’imprimante attendu après l’option « -d ».\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin : imprimante ou classe attendue après l’option « -x ».\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin : aucun nom de membre détecté.\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin : l’imprimante %s est déjà un membre de la classe %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin : l’imprimante %s n’est pas un membre de la classe %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr ""
-#~ "lpadmin : le nom de l’imprimante doit se limiter aux caractères "
-#~ "imprimables.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin : impossible d’ajouter d’imprimante à la classe :\n"
-#~ " Vous devez d’abord indiquer le nom d’une imprimante.\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin : connexion impossible au serveur : %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin : impossible de créer un fichier temporaire - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin : impossible de créer un fichier temporaire : %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin : impossible d’ouvrir le fichier PPD « %s » - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin : impossible d’ouvrir le fichier « %s » : %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin : impossible de retirer une imprimante de la classe :\n"
-#~ " Vous devez d’abord indiquer le nom d’une imprimante.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin : impossible de définir le fichier PPD :\n"
-#~ " Vous devez d’abord indiquer le nom d’une imprimante.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin : impossible de définir l’URI du périphérique :\n"
-#~ " Vous devez d’abord indiquer le nom d’une imprimante.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin : impossible de définir le script ou le fichier PPD interface :\n"
-#~ " Vous devez d’abord indiquer le nom d’une imprimante.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin : impossible de définir le script interface :\n"
-#~ " Vous devez d’abord indiquer le nom d’une imprimante.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin : impossible de définir la description de l’imprimante :\n"
-#~ " Vous devez d’abord indiquer le nom d’une imprimante.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin : impossible de définir l’emplacement de l’imprimante :\n"
-#~ " Vous devez d’abord indiquer le nom d’une imprimante.\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin : impossible de définir les options de l’imprimante :\n"
-#~ " Vous devez d’abord indiquer le nom d’une imprimante.\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin : option allow/deny « %s » inconnue.\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin : argument « %s » inconnu.\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin : option « %c » inconnue.\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin : avertissement - liste des types de contenu ignorée.\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr ""
-#~ "lpinfo : chaîne de l’identifiant du périphérique 1284 attendue après « --"
-#~ "id-périphérique ».\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo : langue attendue après « --language ».\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo : marque et modèle attendus après « --make-and-model »\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo : chaîne du produit attendue après « --product ».\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo : liste des schémas attendue après « --exclude-schemes ».\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo : liste des schémas attendue après « --include-schemes ».\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo : délai d’attente attendu après « --timeout ».\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo : argument « %s » inconnu.\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo : option « %c » inconnue.\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo : option « %s » inconnue.\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove : connexion impossible au serveur : %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove : argument « %s » inconnu.\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove : option « %c » inconnue.\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions : aucune imprimante !?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions : impossible d’ajouter d’imprimante ou d’instance : %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions : impossible d’obtenir le fichier PPD de %s : %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions : impossible d’ouvrir le fichier PPD de %s ».\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions : imprimante ou classe inconnue.\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr ""
-#~ "lppasswd : seul l’utilisateur « root » est en mesure d’ajouter ou de "
-#~ "supprimer des mots de passe.\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd : fichier des mots de passe occupé.\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd : fichier des mots de passe non mis à jour.\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd : mot de passe non concordant.\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd : mot de passe rejeté.\n"
-#~ "Votre mot de passe doit comporter au moins six caractères, au moins une "
-#~ "lettre et un chiffre,\n"
-#~ "et ne peut pas reprendre votre nom d’utilisateur.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd : les mots de passe ne concordent pas.\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd : impossible de copier la chaîne de mot de passe : %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd : impossible d’ouvrir le fichier des mots de passe : %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd : impossible d’écrire dans le fichier des mots de passe : %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd : impossible d’effectuer de copie de sauvegarde de l’ancien "
-#~ "fichier des mots de passe : %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd : impossible de renommer le fichier des mots de passe : %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd : l’utilisateur « %s » et le groupe « %s » n’existent pas.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat : erreur - destination « %s » inexistante pour les noms de "
-#~ "variables d’environnement %s.\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "membres de la classe %s :\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "aucune entrée\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "aucune destination système par défaut\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "Attribut « notify-events » non renseigné."
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr ""
-#~ "L’URI « %s », indiquée par le paramètre notify-recipient-uri, est déjà "
-#~ "utilisée."
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr ""
-#~ "L’URI « %s » du paramètre « notify-recipient-uri » utilise un mode inconnu."
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d erroné."
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc : inclusion du répertoire « %s »…\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr ""
-#~ "ppdc : ajout/actualisation du texte de l’interface utilisateur à partir "
-#~ "de %s…\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc : valeur booléenne (%s) incorrecte à la ligne %d sur %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc : nom de résolution « %s » incorrect à la ligne %d sur %s.\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc : mot-clé d’état %s incorrect à la ligne %d sur %s.\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr ""
-#~ "ppdc : substitution de variables ($%c) incorrecte à la ligne %d sur %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc : choix trouvé à la ligne %d sur %s, sans Option.\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc : #po en double pour la langue %s à la ligne %d sur %s.\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc : définition de filtre attendue à la ligne %d sur %s.\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc : nom de programme attendu à la ligne %d sur %s.\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc : valeur booléenne attendue à la ligne %d sur %s.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc : jeu de caractères attendu après Font à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc : code de choix attendu à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc : nom/texte de choix attendu à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : ordre de couleurs attendu pour ColorModel à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : espace de couleurs attendu pour ColorModel à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc : compression attendue pour ColorModel à la ligne %d de %s.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : chaîne des contraintes attendue pour UIConstraints à la ligne %d "
-#~ "de %s.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc : mot-clé attendu du type de gestionnaire après DriverType à la "
-#~ "ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc : type de duplex attendu après Duplex à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc : encodage attendu après Font à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc : nom de fichier attendu après #po %s à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc : nom/texte de groupe attendu à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc : nom de fichier d’inclusion attendu à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc : nombre entier attendu à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc : langue attendue après #po à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc : nom attendu après %s à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc : nom attendu après FileName à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc : nom attendu après Font à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc : nom attendu après Manufacturer à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc : nom attendu après MediaSize à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc : nom attendu après ModelName à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc : nom attendu après PCFileName à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc : nom/texte attendu après %s à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc : nom/texte attendu après Installable à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc : nom/texte attendu après Resolution à la ligne %d de %s.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : association nom/texte attendue pour ColorModel à la ligne %d de %"
-#~ "s.\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc : nom/texte d’option attendu à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc : section d’option attendue à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc : type d’option attendu à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : champ de remplacement attendu après Resolution à la ligne %d de %"
-#~ "s.\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc : nombre réel attendu à la ligne %d de %s.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc : résolution/type de papier attendu après ColorProfile à la ligne %d "
-#~ "de %s.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : résolution/type de papier attendu après SimpleColorProfile à la "
-#~ "ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc : sélecteur attendu après %s à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc : état attendu après Font à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc : chaîne attendue après Copyright à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc : chaîne attendue après Version à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc : deux noms d’option attendus à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc : valeur attendue après %s à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc : version attendue après Font à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc : nom de fichier #include/#po « %s » non valide\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc : coût pour le filtre à la ligne %d de %s non valide\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc : type MIME pour le filtre à la ligne %d de %s non valide\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : nom de programme vide pour le filtre à la ligne %d de %s non "
-#~ "valide\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc : section d’option « %s » à la ligne %d de %s non valide\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc : type d’option « %s » à la ligne %d de %s non valide\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr ""
-#~ "ppdc : chargement du fichier « %s » des informations de gestionnaire…\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc : chargement de messages pour la langue « %s »…\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc : chargement de messages de « %s »…\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc : #endif absent à la fin de « %s ».\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc : #if absent à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc : aucun catalogue de messages fourni pour la langue %s.\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : option %s redéfinie sous un autre type à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc : contrainte d’option doit inclure *nom à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : instructions #if imbriquées trop nombreuses à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc : impossible de créer le fichier PPD « %s » - %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc : impossible de créer le répertoire de sortie %s : %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc : impossible de créer les canaux de sortie : %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc : impossible d’exécuter cupstestppd : %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : impossible de retrouver le fichier #po %s à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : impossible de retrouver le fichier d’inclusion « %s » à la ligne %d "
-#~ "de %s.\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc : impossible de déterminer la localisation de « %s » - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr ""
-#~ "ppdc : impossible de charger le fichier de localisation « %s » - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc : variable indéfinie (%s) à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc : type de gestionnaire %s inconnu à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc : type de duplex « %s » inconnu à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc : taille du papier « %s » inconnue à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc : jeton « %s » inconnu détecté à la ligne %d de %s.\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc : caractères de fin, dans le nombre réel « %s », inconnus à la ligne %"
-#~ "d de %s.\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc : chaîne commençant par %c non terminée, à la ligne %d de %s.\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc : écriture de %s…\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc : écriture des fichiers PPD dans le répertoire « %s »…\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge : LanguageVersion « %s » incorrect dans %s.\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge : fichier PPD %s ignoré…\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr ""
-#~ "ppdmerge : impossible d’effectuer de copie de sauvegarde de %s en %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "l’imprimante %s est désactivée depuis %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "l’imprimante %s est inactive, mais activée depuis %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr ""
-#~ "l’imprimante %s est en cours d’impression %s-%d (activée depuis %s)\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "l’imprimante %s/%s est désactivée depuis %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "l’imprimante %s/%s est inactive, mais activée depuis %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr ""
-#~ "l’imprimante %s/%s est en cours d’impression %s-%d (activée depuis %s)\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "l’identifiant de la requête est %s-%d (%d fichier(s))\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "le programmateur n’est pas en cours d’exécution\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "le programmateur s’exécute\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\tafficher l’état du daemon et la file d’attente\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "destination système par défaut : %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "destination système par défaut : %s/%s\n"
diff --git a/locale/cups_hu.po b/locale/cups_hu.po
deleted file mode 100644
index 8f9a138d..00000000
--- a/locale/cups_hu.po
+++ /dev/null
@@ -1,5835 +0,0 @@
-# Gabor Kelemen <kelemeng at gnome dot hu>, 2011.
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2011-12-02 01:55+0100\n"
-"Last-Translator: Gabor Kelemen <kelemeng at gnome dot hu>\n"
-"Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-msgid "\t\t(all)"
-msgstr "\t\t(mind)"
-
-msgid "\t\t(none)"
-msgstr "\t\t(egyik sem)"
-
-#, c-format
-msgid "\t%d entries"
-msgstr "\t%d bejegyzés"
-
-#, c-format
-msgid "\t%s"
-msgstr "\t%s"
-
-msgid "\tAfter fault: continue"
-msgstr "\tHiba után: folytatás"
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr "\tRiasztások: %s"
-
-msgid "\tBanner required"
-msgstr "\tKísérőoldal szükséges"
-
-msgid "\tCharset sets:"
-msgstr "\tKarakterkódolások:"
-
-msgid "\tConnection: direct"
-msgstr "\tKapcsolat: közvetlen"
-
-msgid "\tConnection: remote"
-msgstr "\tKapcsolat: távoli"
-
-msgid "\tContent types: any"
-msgstr "\tTartalomtípusok: bármely"
-
-msgid "\tDefault page size:"
-msgstr "\tAlapértelmezett oldalméret:"
-
-msgid "\tDefault pitch:"
-msgstr "\tAlapértelmezett térköz:"
-
-msgid "\tDefault port settings:"
-msgstr "\tAlapértelmezett portbeállítások:"
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr "\tLeírás: %s"
-
-msgid "\tForm mounted:"
-msgstr "\tFelszerelt típus:"
-
-msgid "\tForms allowed:"
-msgstr "\tEngedélyezett típusok:"
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr "\tFelület: %s.ppd"
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr "\tFelület: %s/interfaces/%s"
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr "\tFelület: %s/ppd/%s.ppd"
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr "\tHely: %s"
-
-msgid "\tOn fault: no alert"
-msgstr "\tHiba esetén: nincs riasztás"
-
-msgid "\tPrinter types: unknown"
-msgstr "\tNyomtatótípusok: ismeretlen"
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr "\tÃllapot: %s"
-
-msgid "\tUsers allowed:"
-msgstr "\tEngedélyezett felhasználók:"
-
-msgid "\tUsers denied:"
-msgstr "\tLetiltott felhasználók:"
-
-msgid "\tdaemon present"
-msgstr "\ta démon jelen van"
-
-msgid "\tno entries"
-msgstr "\tnincsenek bejegyzések"
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr "\ta nyomtató a(z) „%s†eszközön, sebesség -1"
-
-msgid "\tprinting is disabled"
-msgstr "\ta nyomtatás letiltva"
-
-msgid "\tprinting is enabled"
-msgstr "\ta nyomtatás engedélyezve"
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr "\tsorba állítva ehhez: %s"
-
-msgid "\tqueuing is disabled"
-msgstr "\ta sorba állítás letiltva"
-
-msgid "\tqueuing is enabled"
-msgstr "\ta sorba állítás engedélyezve"
-
-msgid "\treason unknown"
-msgstr "\tismeretlen ok"
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-"\n"
-" MEGFELELÅSÉGI TESZT RÉSZLETES EREDMÉNYEI"
-
-msgid " Ignore specific warnings."
-msgstr " Adott figyelmeztetések mellőzése."
-
-msgid " Issue warnings instead of errors."
-msgstr " Figyelmeztetések kiadása hibák helyett."
-
-msgid " REF: Page 15, section 3.1."
-msgstr " REF: 15. oldal, 3.1-es szakasz."
-
-msgid " REF: Page 15, section 3.2."
-msgstr " REF: 15. oldal, 3.2-es szakasz."
-
-msgid " REF: Page 19, section 3.3."
-msgstr " REF: 19. oldal, 3.3-as szakasz."
-
-msgid " REF: Page 20, section 3.4."
-msgstr " REF: 20. oldal, 3.4-es szakasz."
-
-msgid " REF: Page 27, section 3.5."
-msgstr " REF: 27. oldal, 3.5-ös szakasz."
-
-msgid " REF: Page 42, section 5.2."
-msgstr " REF: 42. oldal, 5.2-es szakasz."
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr " REF: 16-17. oldalak, 3.2-es szakasz."
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr " REF: 42-45. oldalak, 5.2-es szakasz."
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr " REF: 45-46. oldalak, 5.2-es szakasz."
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr " REF: 48-49. oldalak, 5.2-es szakasz."
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr " REF: 52-54. oldalak, 5.2-es szakasz."
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr " %-39.39s %.0f bájt"
-
-#, c-format
-msgid " PASS Default%s"
-msgstr " SIKER Default%s"
-
-msgid " PASS DefaultImageableArea"
-msgstr " SIKER DefaultImageableArea"
-
-msgid " PASS DefaultPaperDimension"
-msgstr " SIKER DefaultPaperDimension"
-
-msgid " PASS FileVersion"
-msgstr " SIKER FileVersion"
-
-msgid " PASS FormatVersion"
-msgstr " SIKER FormatVersion"
-
-msgid " PASS LanguageEncoding"
-msgstr " SIKER LanguageEncoding"
-
-msgid " PASS LanguageVersion"
-msgstr " SIKER LanguageVersion"
-
-msgid " PASS Manufacturer"
-msgstr " SIKER Manufacturer"
-
-msgid " PASS ModelName"
-msgstr " SIKER ModelName"
-
-msgid " PASS NickName"
-msgstr " SIKER NickName"
-
-msgid " PASS PCFileName"
-msgstr " SIKER PCFileName"
-
-msgid " PASS PSVersion"
-msgstr " SIKER PSVersion"
-
-msgid " PASS PageRegion"
-msgstr " SIKER PageRegion"
-
-msgid " PASS PageSize"
-msgstr " SIKER PageSize"
-
-msgid " PASS Product"
-msgstr " SIKER Product"
-
-msgid " PASS ShortNickName"
-msgstr " SIKER ShortNickName"
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr " FIGY nem tartoznak beállítások ehhez: %s."
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-" FIGY %s közös előtagot használ ezzel: %s\n"
-" REF: 15. oldal, 3.2-es szakasz."
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-" FIGY A duplex beállítás %s kulcsszava lehet, hogy nem várt módon "
-"működik, és Duplexnek kell nevezni.\n"
-" REF: 122. oldal, 5.17-es szakasz"
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr " FIGY A fájl CR, LF és CR LF sorvégek keverékét tartalmazza."
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-" FIGY A PPD 4.3 specifikáció megköveteli a LanguageEncoding "
-"jelenlétét.\n"
-" REF: 56-57. oldalak, 5.3-as szakasz."
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr " FIGY A(z) %d. sor csak üres helyet tartalmaz."
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-" FIGY A PPD 4.3 specifikáció megköveteli a Manufacturer "
-"jelenlétét.\n"
-" REF: 58-59. oldalak, 5.3-as szakasz."
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-" FIGY A nem windowsos PPD fájlok csak LF, és nem CR LF végű "
-"sorokat használhatnak."
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-" FIGY Elavult PPD-verzió: %.1f.\n"
-" REF: 42. oldal, 5.2-es szakasz."
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-" FIGY A 8.3-nál hosszabb PCFileName megsérti a PPD-specifikációt.\n"
-" REF: 61-62. oldalak, 5.3-as szakasz."
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-" FIGY A PCFileName egyedi fájlnevet kell tartalmazzon.\n"
-" REF: 61-62. oldalak, 5.3-as szakasz."
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-" FIGY A Protocols PJL-t tartalmaz, de a JCL attribútumok nincsenek "
-"beállítva.\n"
-" REF: 78-79. oldal, 5.7-es szakasz."
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-" FIGY A Protocols PJL-t és BCP-t is tartalmaz; a várt a TBCP.\n"
-" REF: 78-79. oldalak, 5.7-es szakasz."
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-" FIGY A PPD 4.3 specifikáció megköveteli a ShortNickName "
-"jelenlétét.\n"
-" REF: 64-65. oldalak, 5.3-as szakasz."
-
-msgid " cupsaddsmb [options] -a"
-msgstr " cupsaddsmb [kapcsolók] -a"
-
-msgid " cupstestdsc [options] -"
-msgstr " cupstestdsc [kapcsolók] -"
-
-msgid " program | cupstestppd [options] -"
-msgstr " program | cupstestppd [kapcsolók] -"
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-" %s „%s %s†ütközik ezzel: „%s %sâ€\n"
-" (megszorítás=„%s %s %s %sâ€)."
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr " %s %s %s nem létezik."
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr " %s %s fájl „%s†kis- és nagybetűi hibásak."
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-" %s Hibás %s lehetőség: %s.\n"
-" REF: 122. oldal, 5.17-es szakasz."
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-" %s Hibás UTF-8 „%s†fordítás a(z) %s beállítás %s lehetőségéhez."
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr " %s Hibás UTF-8 „%s†fordítás a(z) %s beállításhoz."
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr " %s Hibás cupsFilter érték: „%sâ€."
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr " %s Hibás cupsICCProfile: %s."
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr " %s Hibás cupsPreFilter érték: „%sâ€."
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr " %s Hibás cupsUIConstraints: %s: „%sâ€"
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr " %s Hibás nyelv: „%sâ€."
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr " %s Hibás jogosultságok a(z) %s fájlok: „%sâ€."
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr " %s %s el van írva - %s kellene legyen."
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-" %s Nem biztosítható egyszerre az APScanAppPath és APScanAppBundleID."
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr " %s Az alapértelmezett választások ütköznek."
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr " %s Üres cupsUIConstraints: %s"
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr " %s Hiányzó „%s†fordítás a(z) %s beállítás %s lehetőségéhez."
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr " %s Hiányzó „%s†fordítás a(z) %s beállításhoz."
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr " %s Hiányzó %s fájl: „%sâ€."
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-" %s Hiányzó KÖTELEZŠPageRegion beállítás.\n"
-" REF: 100. oldal, 5.14-es szakasz."
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-" %s Hiányzó KÖTELEZŠPageSize beállítás.\n"
-" REF: 99. oldal, 5.14-es szakasz."
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-" %s Hiányzó lehetőség (*%s %s) az UIConstraints elemben: „*%s %s *%s %"
-"sâ€."
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-" %s Hiányzó lehetÅ‘ség (*%s %s) a cupsUIConstraints %s elemben: „%sâ€"
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr " %s Hiányzó cupsUIResolver %s"
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-" %s Hiányzó %s beállítás az UIConstraints elemben: „*%s %s *%s %sâ€."
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr " %s Hiányzó %s beállítás a cupsUIConstraints %s elemben: „%sâ€"
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr " %s A fájl nem tartalmaz alap „%s†fordítást."
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-" %s A KÖTELEZŠ%s nem definiálja a None lehetőséget.\n"
-" REF: 122. oldal, 5.17-es szakasz."
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-" %s A(z) „%s†méret definiálva van ehhez: %s de ehhez már nem: %s."
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr " %s A(z) „%s†méret váratlan kiterjedéssel rendelkezik (%gx%g)."
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr " %s „%s†méret el van írva - „%s†kellene legyen."
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-" %s A(z) „%s†méretnek ennek a szabványos Adobe névnek kellene lennie: "
-"„%sâ€."
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr " %s A cupsICCProfile (%s) hash értéke ütközik ezzel: %s."
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr " %s A cupsUIResolver (%s) ismétlődést okoz."
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-" %s A cupsUIResolver (%s) nem sorol fel legalább két eltérő "
-"beállítást."
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-" **HIBA** A(z) %s lehetőségnevek: %s és %s csak a kis- és nagybetűkben "
-"különböznek."
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-" **HIBA** %s csak 1284DeviceID lehet\n"
-" REF: 72. oldal, 5.5-ös szakasz"
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-" **HIBA** HIBÃS Default%s %s\n"
-"\n"
-" REF: 40. oldal, 4.5-ös szakasz."
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-" **HIBA** HIBÃS DefaultImageableArea %s\n"
-" REF: 102. oldal, 5.15-ös szakasz."
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-" **HIBA** HIBÃS DefaultPaperDimension %s\n"
-" REF: 103. oldal, 5.15-ös szakasz."
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-" **HIBA** HIBÃS JobPatchFile attribútum a fájlban\n"
-" REF: 24. oldal, 3.4-es szakasz."
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-" **HIBA** HIBÃS Manufacturer („HP†kellene)\n"
-" REF: 211. oldal, D.1 táblázat."
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-" **HIBA** HIBÃS Manufacturer („Oki†kellene)\n"
-" REF: 211. oldal, D.1 táblázat."
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-" **HIBA** HIBÃS ModelName - „%c†nem engedélyezett a "
-"karakterláncban.\n"
-" REF: 59-60. oldalak, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-" **HIBA** HIBÃS PSVersion - nem „(string) intâ€.\n"
-" REF: 62-64. oldalak, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-" **HIBA** HIBÃS Product - nem „(string)â€.\n"
-" REF: 62. oldal, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-" **HIBA** HIBÃS ShortNickName - 31 karakternél hosszabb.\n"
-" REF: 64-65. oldalak, 5.3-as szakasz."
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-" **HIBA** Hibás %s választás: %s\n"
-" REF: 84. oldal, 5.9-es szakasz"
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-" **HIBA** Hibás FileVersion: „%sâ€\n"
-" REF: 56. oldal, 5.3-as szakasz."
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-" **HIBA** Hibás FormatVersion: „%sâ€\n"
-" REF: 56. oldal, 5.3-as szakasz."
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-" **HIBA** Bad LanguageEncoding %s - ISOLatin1 kellene hogy legyen."
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr " **HIBA** Bad LanguageVersion %s - English kellene hogy legyen."
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr " **HIBA** Az alapértelmezett beállításkód nem értelmezhető: %s"
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-" **HIBA** Az alapértelmezett fordítás %s beállítás %s lehetőségéhez 8 "
-"bites karaktereket tartalmaz."
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-" **HIBA** Az alapértelmezett fordítás a(z) %s beállításhoz 8 bites "
-"karaktereket tartalmaz."
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-" **HIBA** A(z) %s és %s csoportnevek csak a kis- és nagybetűkben "
-"különböznek."
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr " **HIBA** A(z) %s választásnév (%s) többször is előfordul."
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-" **HIBA** A(z) %s és %s beállításnevek csak a kis- és nagybetűkben "
-"különböznek."
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-" **HIBA** KÖTELEZŠa Default%s\n"
-" REF: 40. oldal, 4.5-ös szakasz."
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-" **HIBA** KÖTELEZŠa DefaultImageableArea\n"
-" REF: 102. oldal, 5.15-ös szakasz."
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-" **HIBA** KÖTELEZŠa DefaultPaperDimension\n"
-" REF: 103. oldal, 5.15-ös szakasz."
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa FileVersion\n"
-" REF: 56. oldal, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa FormatVersion\n"
-" REF: 56. oldal, 5.3-as szakasz."
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-" **HIBA** KÖTELEZŠaz ImageableArea ehhez: PageSize %s\n"
-" REF: 41. oldal, 5. szakasz.\n"
-" REF: 102. oldal, 5.15-ös szakasz."
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa LanguageEncoding\n"
-" REF: 56-57. oldalak, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa LanguageVersion\n"
-" REF: 57-58. oldalak, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa Manufacturer\n"
-" REF: 58-59. oldalak, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa ModelName\n"
-" REF: 59-60. oldalak, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa NickName\n"
-" REF: 60. oldal, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa PCFileName\n"
-" REF: 61-62. oldalak, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa PSVersion\n"
-" REF: 62-64. oldalak, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-" **HIBA** KÖTELEZŠa PageRegion\n"
-" REF: 100. oldal, 5.14-es szakasz."
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-" **HIBA** KÖTELEZŠa PageSize\n"
-" REF: 41. oldal, 5. szakasz.\n"
-" REF: 99. oldal, 5.14-es szakasz."
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-" **HIBA** KÖTELEZŠa PageSize\n"
-" REF: 99-100. oldalak, 5.14-es szakasz."
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-" **HIBA** KÖTELEZŠa PaperDimension ehhez: PageSize %s\n"
-" REF: 41. oldal, 5. szakasz.\n"
-" REF: 103. oldal, 5.15-ös szakasz."
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa Product\n"
-" REF: 62. oldal, 5.3-as szakasz."
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-" **HIBA** KÖTELEZŠa ShortNickName\n"
-" REF: 64-65. oldalak, 5.3-as szakasz."
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr " **HIBA** Nem nyitható meg a PPD-fájl - %s"
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr " **HIBA** Nem nyitható meg a PPD-fájl - %s a(z) %d. sorban."
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr " %d HIBA TALÃLHATÓ"
-
-msgid " -h Show program usage"
-msgstr " -h Használati utasítás megjelenítése"
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-" Hibás %%%%BoundingBox: a(z) %d. sorban.\n"
-" REF: 39. oldal, %%%%BoundingBox:"
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-" Hibás %%%%Page: a(z) %d. sorban.\n"
-" REF: 53. oldal, %%%%Page:"
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-" Hibás %%%%Pages: a(z) %d. sorban.\n"
-" REF: 43. oldal, %%%%Pages:"
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-" A(z) %d. sor hosszabb 255 karakternél (%d).\n"
-" REF: Page 25. oldal, sorhossz"
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-" Hiányzó %!PS-Adobe-3.0 az első sorban.\n"
-" REF: 17. oldal, 3.1 Megfelelő dokumentumok"
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-" Hiányzó %%EndComments megjegyzés.\n"
-" REF: 41. oldal, %%EndComments"
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-" Hiányzó vagy hibás %%BoundingBox: megjegyzés.\n"
-" REF: 39. oldal, %%BoundingBox:"
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-" Hiányzó vagy hibás %%Page: megjegyzések.\n"
-" REF: 53. oldal, %%Page:"
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-" Hiányzó vagy hibás %%Pages: megjegyzés.\n"
-" REF: 43. oldal, %%Pages:"
-
-msgid " NO ERRORS FOUND"
-msgstr " NEM TALÃLHATÓ HIBA"
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr " %d sor meghaladta a 255 karaktert."
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr " Túl sok %%BeginDocument megjegyzés."
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr " Túl sok %%EndDocument megjegyzés."
-
-msgid " Warning: file contains binary data."
-msgstr " Figyelmeztetés: a fájl bináris adatokat tartalmaz."
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr " Figyelmeztetés: nincs %%EndComments megjegyzés a fájlban."
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr " Figyelmeztetés: elavult DSC verzió (%.1f) a fájlban."
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr " --[no-]debug-logging Hibakeresési naplózás be/ki."
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr " --[no-]remote-admin Távoli adminisztráció be/ki."
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr " --[no-]remote-any Internetről való elérés be/ki."
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr " --[no-]remote-printers Távoli nyomtatók megjelenítése/elrejtése."
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr " --[no-]share-printers Nyomtatómegosztás be/ki."
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr " --[no-]user-cancel-any Felhasználói feladatmegszakítás be/ki."
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr " --cr Sorok zárása CR-rel (Mac OS 9)."
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr " --crlf Sorok zárása CR + LF-fel (Windows)."
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr " --lf Sorok zárása LF-fel (UNIX/Linux/Mac OS X)."
-
-msgid " -4 Connect using IPv4."
-msgstr " -4 Csatlakozás IPv4 használatával."
-
-msgid " -6 Connect using IPv6."
-msgstr " -6 Csatlakozás IPv6 használatával."
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-" -C Kérések küldése darabolás használatával (alap)."
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-" -D A bemeneti fájl eltávolítása a befejezés után."
-
-msgid " -D name=value Set named variable to value."
-msgstr " -D név=érték A megnevezett változó beállítása az értékre."
-
-msgid " -E Enable encryption."
-msgstr " -E Titkosítás engedélyezése."
-
-msgid " -E Encrypt the connection to the server."
-msgstr " -E A kapcsolat titkosítása a kiszolgálóhoz."
-
-msgid " -E Test with TLS encryption."
-msgstr " -E Tesztelés TLS titkosítással."
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-" -F Futtatás az előtérben, de leválasztás a konzolról."
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr " -H samba-kiszolgáló A megnevezett SAMBA kiszolgáló használata."
-
-msgid " -I Ignore errors."
-msgstr " -I Hibák figyelmen kívül hagyása."
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-" -I include-kvt Az include könyvtár keresési útvonalhoz adása."
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr " -I {filename,filters,none,profiles}"
-
-msgid " -J title Set title."
-msgstr " -J cím Cím beállítása."
-
-msgid " -L Send requests using content-length."
-msgstr ""
-" -L Kérések küldése a content-length használatával."
-
-msgid " -P filename.ppd Set PPD file."
-msgstr " -P fájlnév.ppd PPD-fájl megadása."
-
-msgid " -R root-directory Set alternate root."
-msgstr " -R root-könyvtár Alternatív root beállítása."
-
-msgid " -S Test with SSL encryption."
-msgstr " -S Tesztelés SSL titkosítással."
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-" -T A fogadási/küldési időkorlát beállítása "
-"másodpercben."
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-" -U samba-felh Hitelesítés a megnevezett SAMBA felhasználóként."
-
-msgid " -U username Set username for job."
-msgstr " -U felhasználónév Felhasználónév beállítása a feladathoz."
-
-msgid " -U username Specify username."
-msgstr " -U felhasználónév Felhasználónév megadása."
-
-msgid " -V version Set default IPP version."
-msgstr " -V verzió Alapértelmezett IPP verzió beállítása."
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-" -X XML plist előállítása egyszerű szöveg helyett."
-
-msgid " -a Export all printers."
-msgstr " -a Minden nyomtató exportálása."
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr " -a 'név=érték ...' Beállítások megadása."
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr " -c katalógus.po A megadott üzenetkatalógus betöltése."
-
-msgid " -c config-file Load alternate configuration file."
-msgstr " -c konfig-fájl Másik konfigurációs fájl betöltése."
-
-msgid " -c copies Set number of copies."
-msgstr " -c másolatok Másolatok számának megadása."
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr " -c cupsd.conf Használandó cupsd.conf fájl megadása."
-
-msgid " -d name=value Set named variable to value."
-msgstr " -d név=érték A megnevezett változó beállítása az értékre."
-
-msgid " -d output-dir Specify the output directory."
-msgstr " -d kimeneti-kvt A kimeneti könyvtár megadása."
-
-msgid " -d printer Use the named printer."
-msgstr " -d nyomtató A megnevezett nyomtató használata."
-
-msgid " -e Use every filter from the PPD file."
-msgstr " -e Minden szűrő használata a PPD fájlból."
-
-msgid " -f Run in the foreground."
-msgstr " -f Futtatás az előtérben."
-
-msgid " -f filename Set default request filename."
-msgstr " -f fájlnév Alapértelmezett kérésfájlnév beállítása."
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-" -f fájlnév Ãtalakítandó fájl megadása (egyébként stdin)."
-
-msgid " -h Show this usage message."
-msgstr " -h Ezen súgó megjelenítése."
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr " -h cups-kiszolgáló A megnevezett CUPS kiszolgáló használata."
-
-msgid " -h server[:port] Specify server address."
-msgstr " -h kiszolgáló[:port] Kiszolgáló címének megadása."
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-" -i mime/type Bemeneti MIME-típus beállítása (egyébként "
-"automatikus)."
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-" -i másodperc Az utolsó fájl megismétlése a megadott időközzel."
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-" -j job-id[,N] Az N. fájl kiszűrése a megadott feladatból "
-"(alapértelmezett az 1.)."
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-" -j mime/type Kimeneti MIME-típus beállítása (egyébként "
-"application/pdf)."
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-" -l A cupsd futtatása a launchd(8) használatával."
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr " -l nyelv[,nyelv,...] A kimeneti nyelvek (locale) megadása."
-
-msgid " -m Use the ModelName value as the filename."
-msgstr " -m A ModelName érték használata fájlnévként."
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-" -m mime/type Kimeneti MIME-típus beállítása (egyébként "
-"application/pdf)."
-
-msgid " -n copies Set number of copies."
-msgstr " -n másolatok Másolatok számának megadása."
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-" -n szám Az utolsó fájl ismétlése a megadott alkalommal."
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-" -o fájlnév Az előállítandó fájl beállítása (egyébként stdout)."
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-" -o fájlnév.drv Illesztőprogram-információs fájl beállítása "
-"(egyébként ppdi.drv)."
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr " -o fájlnév.ppd[.gz] Kimeneti fájl beállítása (egyébként stdout)."
-
-msgid " -o name=value Set option(s)."
-msgstr " -o név=érték Beállítások megadása."
-
-msgid " -p filename.ppd Set PPD file."
-msgstr " -p fájlnév.ppd PPD-fájl megadása."
-
-msgid " -q Be quiet - no output except errors."
-msgstr " -q Csendes mód - nincs kimenet a hibákon kívül."
-
-msgid " -q Run silently."
-msgstr " -q Csendes futás."
-
-msgid " -r Use 'relaxed' open mode."
-msgstr " -r A „lazított†megnyitási mód használata."
-
-msgid " -t Produce a test report."
-msgstr " -t Tesztjelentés előállítása."
-
-msgid " -t Test PPDs instead of generating them."
-msgstr " -t PPD-k tesztelése az előállításuk helyett."
-
-msgid " -t Test the configuration file."
-msgstr " -t A konfigurációs fájl tesztelése."
-
-msgid " -t title Set title."
-msgstr " -t cím Cím beállítása."
-
-msgid " -u Remove the PPD file when finished."
-msgstr " -u A PPD fájl eltávolítása befejezéskor."
-
-msgid " -v Be slightly verbose."
-msgstr " -v Valamivel részletesebb kimenet."
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-" -v Részletes mód (nagyobb részletesség = több v)."
-
-msgid " -v Be verbose (show commands)."
-msgstr " -v Részletes mód (parancsok megjelenítése)."
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-" -v Minden elküldött és fogadott attribútum "
-"megjelenítése."
-
-msgid " -vv Be very verbose."
-msgstr " -vv Nagyon részletes mód."
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-" -z PPD-fájlok tömörítése a GNU zip használatával."
-
-msgid " FAIL"
-msgstr " HIBA"
-
-msgid " PASS"
-msgstr " SIKER"
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bájt"
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr "%-7s %-7.7s %-7d %-31.31s %.0f bájt"
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f milliméter"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f to %.0f x %.0f milliméter"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f hüvelyk"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f to %.2f x %.2f hüvelyk"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr "%s elfogadja a kéréseket ez óta: %s"
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s nem módosítható."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr "%s nincs megvalósítva az lpc CUPS verziója által."
-
-#, c-format
-msgid "%s is not ready"
-msgstr "%s nem áll készen"
-
-#, c-format
-msgid "%s is ready"
-msgstr "%s készen áll"
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr "%s készen áll és nyomtat"
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr "%s feladatazonosító felhasználó cím példányok beállítások [fájl]"
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr "%s nem fogad el kéréseket ez óta: %s -"
-
-#, c-format
-msgid "%s not supported."
-msgstr "%s nem támogatott."
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr "%s/%s elfogadja a kéréseket ez óta: %s"
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr "%s/%s nem fogadja el a kéréseket ez óta: %s -"
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr "%s: %-33.33s [%d. feladat localhost]"
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr "%s: %s sikertelen: %s"
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr "%s: Nem dönthető el, mi a teendő."
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr "%s: Hiba - a(z) %s környezeti változó nem létezÅ‘ célt nevez meg: „%sâ€."
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr "%s: Hiba - hibás feladatazonosító."
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-"%s: Hiba - nem lehet egyszerre fájlokat nyomtatni és feladatokat "
-"megváltoztatni."
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-"%s: Hiba - nem lehet az stdin-ről nyomtatni, ha fájlok vagy feladatazonosító "
-"van megadva."
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr "%s: Hiba - a „-S†kapcsoló után karakterkészletnek kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr "%s: Hiba - a „-T†kapcsoló után tartalomtípusnak kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr "%s: Hiba - a „-#†kapcsoló után példányszámnak kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr "%s: Hiba - a „-n†kapcsoló után példányszámnak kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr "%s: Hiba - a „-P†kapcsoló után célnak kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr "%s: Hiba - a „-b†kapcsoló után célnak kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr "%s: Hiba - a „-d†kapcsoló után célnak kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr "%s: Hiba - a „-f†kapcsoló után típusnak kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr "%s: Hiba - a „-H†kapcsoló után tárolónévnek kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr "%s: Hiba - a „-H†kapcsoló után gépnévnek kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr "%s: Hiba - a „-h†kapcsoló után gépnévnek kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr "%s: Hiba - a „-y†kapcsoló után módlistának kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr "%s: Hiba - a „-%c†kapcsoló után névnek kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-"%s: Hiba - a „-o†kapcsoló után egy beállítás=érték párnak kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr "%s: Hiba - a „-P†kapcsoló után oldallistának kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr "%s: Hiba - a „-%c†kapcsoló után prioritásnak kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-"%s: Hiba - a „-r†kapcsoló után az okot megadó szövegnek kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr "%s: Hiba - a „-t†kapcsoló után címnek kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr "%s: Hiba - a „-U†kapcsoló után felhasználónévnek kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr "%s: Hiba - a „-U†kapcsoló után felhasználónévnek kellene állnia."
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr "%s: Hiba - a „-%c†kapcsoló után értéknek kellene állnia."
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-"%s: Hiba - a „-W†kapcsoló után a „completedâ€, „not-completed†vagy „all†"
-"egyikének kellene állnia."
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr "%s: Hiba - nem érhető el alapértelmezett cél."
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr "%s: Hiba - a prioritásnak 1 és 100 között kell lennie."
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr "%s: Hiba - az ütemező nem válaszol."
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr "%s: Hiba - túl sok fájl - „%sâ€."
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr "%s: Hiba - „%s†nem érhető el - %s"
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr "%s: Hiba - nem lehet sorba állítani az stdin-ről - %s."
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr "%s: Hiba - ismeretlen cél: - „%sâ€."
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr "%s: Hiba - ismeretlen cél: „%s/%sâ€."
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr "%s: Hiba - ismeretlen kapcsoló: „%câ€."
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr "%s: Hiba - ismeretlen kapcsoló: „%sâ€."
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr "%s: Feladatazonosítónak kellene állnia a „-i†kapcsoló után."
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr "%s: Érvénytelen célnév a listában: „%sâ€."
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr "%s: Érvénytelen szűrÅ‘karakterlánc: „%sâ€."
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr "%s: Feladatazonosító („-i jobidâ€) szükséges a „-H restart†elÅ‘tt."
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr "%s: Nincs szűrő %s/%s átalakításához erre: %s/%s."
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr "%s: A művelet sikertelen: %s"
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr "%s: Elnézést, a titkosítás nem támogatott."
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr "%s: Nem lehet a kiszolgálóhoz kapcsolódni."
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr "%s: Nem lehet elérni a kiszolgálót."
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr "%s: Nem határozható meg a(z) „%s†MIME-típusa."
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr "%s: A(z) %s nem nyitható meg: %s"
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr "%s: Nem nyitható meg a(z) %s PPD-fájl a(z) %d. sorban."
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr "%s: Nem olvasható a MIME-adatbázis innen: „%s†vagy innen: „%sâ€."
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr "%s: Ismeretlen cél: „%sâ€."
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr "%s: Ismeretlen cél MIME-típus: %s/%s."
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr "%s: Ismeretlen kapcsoló: „%câ€."
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr "%s: Ismeretlen forrás MIME-típus: %s/%s."
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-"%s: Figyelmeztetés - a(z) „%c†formátummódosító nem támogatott - a kimenet "
-"nem feltétlenül lesz helyes."
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr "%s: Figyelmeztetés - a karakterkészlet kapcsoló mellőzve."
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr "%s: Figyelmeztetés - a tartalomtípus kapcsoló mellőzve."
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr "%s: Figyelmeztetés - a típus kapcsoló mellőzve."
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr "%s: Figyelmeztetés - a mód kapcsoló mellőzve."
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 hüvelyk/mp."
-
-msgid "1.25x0.25\""
-msgstr "1,25x0,25\""
-
-msgid "1.25x2.25\""
-msgstr "1,25x2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 hüvelyk/mp."
-
-msgid "1.50x0.25\""
-msgstr "1,50x0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50x0,50\""
-
-msgid "1.50x1.00\""
-msgstr "1,50x1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50x2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 hüvelyk/mp."
-
-msgid "10 x 11"
-msgstr "10 x 11"
-
-msgid "10 x 13"
-msgstr "10 x 13"
-
-msgid "10 x 14"
-msgstr "10 x 14"
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/mp."
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 hüvelyk/mp."
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 hüvelyk/mp."
-
-msgid "12 x 11"
-msgstr "12 x 11"
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/mp."
-
-msgid "120x60dpi"
-msgstr "120x60dpi"
-
-msgid "120x72dpi"
-msgstr "120x72dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/mp."
-
-msgid "15 x 11"
-msgstr "15 x 11"
-
-msgid "150 mm/sec."
-msgstr "150 mm/mp."
-
-msgid "150dpi"
-msgstr "150dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 hüvelyk/mp."
-
-msgid "2-Sided Printing"
-msgstr "2 oldalas nyomtatás"
-
-msgid "2.00x0.37\""
-msgstr "2,00x0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00x0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00x1,00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00x1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00x2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00x3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00x4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00x5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25x0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25x1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25x4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25x5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38x5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 hüvelyk/mp."
-
-msgid "2.50x1.00\""
-msgstr "2,50x1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50x2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75x1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/mp."
-
-msgid "200 mm/sec."
-msgstr "200 mm/mp."
-
-msgid "203dpi"
-msgstr "203dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24 tűs sorozat"
-
-msgid "240x72dpi"
-msgstr "240x72dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/mp."
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 hüvelyk/mp."
-
-msgid "3 x 5"
-msgstr "3 x 5"
-
-msgid "3.00x1.00\""
-msgstr "3,00x1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00x1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00x2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00x3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00x5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25x2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25x5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25x5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25x5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25x7,83\""
-
-msgid "3.5 x 5"
-msgstr "3,5 x 5"
-
-msgid "3.5\" Disk"
-msgstr "3,5\"-es lemez"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3,5\"-es lemez - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50x1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/mp."
-
-msgid "300 mm/sec."
-msgstr "300 mm/mp."
-
-msgid "300dpi"
-msgstr "300dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360dpi"
-
-msgid "360x180dpi"
-msgstr "360x180dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 hüvelyk/mp."
-
-msgid "4.00x1.00\""
-msgstr "4,00x1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00x13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00x2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00x2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00x3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00x4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00x5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00x6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00x6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/mp."
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 hüvelyk/mp."
-
-msgid "5 x 7"
-msgstr "5 x 7"
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 hüvelyk/mp."
-
-msgid "6.00x1.00\""
-msgstr "6,00x1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00x2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00x3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00x4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00x5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00x6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00x6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/mp."
-
-msgid "600dpi"
-msgstr "600dpi"
-
-msgid "60dpi"
-msgstr "60dpi"
-
-msgid "60x72dpi"
-msgstr "60x72dpi"
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 hüvelyk/mp."
-
-msgid "7 x 9"
-msgstr "7 x 9"
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 hüvelyk/mp."
-
-msgid "8 x 10"
-msgstr "8 x 10"
-
-msgid "8.00x1.00\""
-msgstr "8,00x1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00x2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00x3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00x4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00x5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00x6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00x6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/mp."
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 hüvelyk/mp."
-
-msgid "9 x 11"
-msgstr "9 x 11"
-
-msgid "9 x 12"
-msgstr "9 x 12"
-
-msgid "9-Pin Series"
-msgstr "9 tűs sorozatok"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr "?Az érvénytelen súgóparancs ismeretlen."
-
-msgid "A Samba password is required to export printer drivers"
-msgstr "A nyomtató-illesztőprogramok exportálásához Samba jelszó szükséges"
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-"A nyomtató-illesztőprogramok exportálásához Samba felhasználónév szükséges"
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr "Már létezik „%s†nevű osztály."
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr "Már létezik „%s†nevű nyomtató."
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr "A0 hosszú élű"
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr "A1 hosszú élű"
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr "A2 hosszú élű"
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr "A3 hosszú élű"
-
-msgid "A3 Oversize"
-msgstr "A3 túlméretes"
-
-msgid "A3 Oversize Long Edge"
-msgstr "A3 túlméretes hosszú élű"
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr "A4 hosszú élű"
-
-msgid "A4 Oversize"
-msgstr "A4 túlméretes"
-
-msgid "A4 Small"
-msgstr "A4 kicsi"
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr "A5 hosszú élű"
-
-msgid "A5 Oversize"
-msgstr "A5 túlméretes"
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr "A6 hosszú élű"
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr "ARCH C hosszú élű"
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr "ARCH D hosszú élű"
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr "ARCH E hosszú élű"
-
-msgid "Accept Jobs"
-msgstr "Feladatok elfogadása"
-
-msgid "Accepted"
-msgstr "Elfogadva"
-
-msgid "Add Class"
-msgstr "Osztály hozzáadása"
-
-msgid "Add Printer"
-msgstr "Nyomtató hozzáadása"
-
-msgid "Add RSS Subscription"
-msgstr "RSS-feliratkozás hozzáadása"
-
-msgid "Address"
-msgstr "Cím"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Cím - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Adminisztráció"
-
-msgid "Always"
-msgstr "Mindig"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Felhordó"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr "Kísérlet %s nyomtatóállapot hibás értékre (%d) állítására."
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr "Az attribútumcsoportok nincsenek sorrendben (%x < %x)."
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr "B5 túlméretes"
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Hibás NULL célmutató"
-
-msgid "Bad OpenGroup"
-msgstr "Hibás OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "Hibás OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "Hibás OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr "Hibás PPD-gyorsítótárfájl."
-
-msgid "Bad Request"
-msgstr "Hibás kérés"
-
-msgid "Bad SNMP version number"
-msgstr "Hibás SNMP verziószám"
-
-msgid "Bad UIConstraints"
-msgstr "Hibás UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr "Hibás karakterkészletfájl: „%sâ€."
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr "Hibás karakterkészlet-típus: %s"
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr "Hibás oszlopérték: %d."
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Hibás példányérték: %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr "Hibás cpi érték: %f."
-
-msgid "Bad custom parameter"
-msgstr "Hibás egyéni paraméter"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr "Hibás device-uri: „%sâ€."
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr "Hibás device-uri séma: „%sâ€."
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr "Hibás document-format érték: „%sâ€."
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr "Hibás document-format-default érték: „%sâ€."
-
-msgid "Bad filename buffer"
-msgstr "Hibás fájlnévpuffer"
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr "Hibás betűkészletleíró sor: „%sâ€."
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr "Hibás betűkészlet-leíró sor: %s."
-
-msgid "Bad job-priority value."
-msgstr "Hibás job-priority érték."
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr "Hibás job-sheets érték: „%sâ€."
-
-msgid "Bad job-sheets value type."
-msgstr "Hibás job-sheets értéktípus."
-
-msgid "Bad job-state value."
-msgstr "Hibás job-state érték."
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr "Hibás job-uri érték: „%sâ€."
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr "Hibás lpi érték: %f."
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr "Hibás notify-pull-method érték: „%sâ€."
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr "Hibás notify-recipient-uri érték: „%sâ€."
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Bad number-up érték: „%dâ€"
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr "Hibás beállítás + érték a(z) %d. sorban."
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Hibás page-ranges értékek: %d-%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr "Hibás port-monitor: „%sâ€."
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr "Hibás printer-state érték: %d."
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr "Hibás kérésazonosító: %d."
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr "Hibás kérésverziószám: %d.%d."
-
-msgid "Bad subscription ID"
-msgstr "Hibás feliratkozásazonosító"
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr "Hibás szövegirány: „%sâ€."
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr "Hibás szövegirány: %s."
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr "Hibás szövegszélesség: „%sâ€."
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr "Hibás szövegszélesség: %s."
-
-msgid "Bad value string"
-msgstr "Hibás értékkarakterlánc"
-
-msgid "Banners"
-msgstr "Kísérőoldalak"
-
-msgid "Billing Information: "
-msgstr "Számlázási adatok: "
-
-msgid "Bond Paper"
-msgstr "Kötött papír"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr "A várt érték logikai a waiteof „%s†beállításához."
-
-msgid "Buffer overflow detected, aborting."
-msgstr "Puffertúlcsordulás észlelve, megszakítás."
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "CPCL címkenyomtató"
-
-msgid "Cancel RSS Subscription"
-msgstr "RSS-feliratkozás törlése"
-
-msgid "Canceling print job."
-msgstr "Nyomtatási feladat megszakítása."
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr "Nem osztható meg távoli Kerberos-nyomtató."
-
-msgid "Cassette"
-msgstr "Kazetta"
-
-msgid "Change Settings"
-msgstr "Beállítások módosítása"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr "A(z) „%s†karakterkészlet nem támogatott."
-
-msgid "Classes"
-msgstr "Osztályok"
-
-msgid "Clean Print Heads"
-msgstr "Nyomtatófejek tisztítása"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr "A Close-Job nem támogatja a job-uri attribútumot."
-
-msgid "Color"
-msgstr "Szín"
-
-msgid "Color Mode"
-msgstr "Színmód"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-"A parancsok rövidíthetők. A parancsok:\n"
-"\n"
-"exit help quit status ?"
-
-msgid "Community name uses indefinite length"
-msgstr "A közösségnév végtelen hosszat használ"
-
-msgid "Connected to printer."
-msgstr "Kapcsolódva a nyomtatóhoz."
-
-msgid "Connecting to printer."
-msgstr "Kapcsolódás a nyomtatóhoz."
-
-msgid "Continue"
-msgstr "Folytatás"
-
-msgid "Continuous"
-msgstr "Folyamatos"
-
-msgid "Control file sent successfully."
-msgstr "Vezérlőfájl sikeresen elküldve."
-
-msgid "Copying print data."
-msgstr "Nyomtatási adatok másolása."
-
-msgid "Created"
-msgstr "Létrehozva"
-
-msgid "Created On: "
-msgstr "Létrehozva: "
-
-msgid "Custom"
-msgstr "Egyéni"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Kivágás"
-
-msgid "Cutter"
-msgstr "Vágó"
-
-msgid "Dark"
-msgstr "Sötét"
-
-msgid "Darkness"
-msgstr "Sötétség"
-
-msgid "Data file sent successfully."
-msgstr "Az adatfájl sikeresen elküldve."
-
-msgid "Delete Class"
-msgstr "Osztály törlése"
-
-msgid "Delete Printer"
-msgstr "Nyomtató törlése"
-
-msgid "Description: "
-msgstr "Leírás: "
-
-msgid "DeskJet Series"
-msgstr "DeskJet sorozat"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "A(z) „%s†cél nem fogad el feladatokat."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-"Eszköz: uri = %s\n"
-" osztály = %s\n"
-" info = %s\n"
-" gyártó és modell = %s\n"
-" eszközazonosító = %s\n"
-" hely = %s"
-
-msgid "Direct Thermal Media"
-msgstr "Direkt termál címke"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr "A(z) „%s†könyvtár relatív útvonalat tartalmaz."
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-"A(z) „%s†könyvtár jogosultságai nem biztonságosak (0%o/uid=%d/gid=%d)."
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr "A(z) „%s†könyvtár nem fájl."
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr "A(z) „%s†könyvtár nem érhető el: %s"
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr "A(z) „%s†könyvtár jogosultságai megfelelők (0%o/uid=%d/gid=%d)."
-
-msgid "Disabled"
-msgstr "Kikapcsolva"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr "A(z) %d. dokumentum nem létezik a(z) %d. feladatban."
-
-msgid "Driver Name: "
-msgstr "Illesztőprogram neve: "
-
-msgid "Driver Version: "
-msgstr "Illesztőprogram verziója: "
-
-msgid "Duplexer"
-msgstr "Duplexáló"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1 címkenyomtató"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2 címkenyomtató"
-
-msgid "Edit Configuration File"
-msgstr "Konfigurációs fájl szerkesztése"
-
-msgid "Empty PPD file."
-msgstr "Üres PPD-fájl."
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Záró kísérőoldal"
-
-msgid "English"
-msgstr "Angol"
-
-msgid "Enter old password:"
-msgstr "Adja meg a régi jelszót:"
-
-msgid "Enter password again:"
-msgstr "Adja meg újra a jelszót:"
-
-msgid "Enter password:"
-msgstr "Adja meg a jelszót:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Adja meg felhasználónevét és jelszavát, vagy a root felhasználó nevét és "
-"jelszavát az oldal eléréséhez. Ha Kerberos hitelesítést használ, akkor "
-"győződjön meg róla, hogy rendelkezik érvényes Kerberos jeggyel."
-
-msgid "Envelope #10 "
-msgstr "Boríték #10 "
-
-msgid "Envelope #11"
-msgstr "Boríték #11"
-
-msgid "Envelope #12"
-msgstr "Boríték #12"
-
-msgid "Envelope #14"
-msgstr "Boríték #14"
-
-msgid "Envelope #9"
-msgstr "Boríték #9"
-
-msgid "Envelope B4"
-msgstr "B4 boríték"
-
-msgid "Envelope B5"
-msgstr "B5 boríték"
-
-msgid "Envelope B6"
-msgstr "B6 boríték"
-
-msgid "Envelope C0"
-msgstr "C0 boríték"
-
-msgid "Envelope C1"
-msgstr "C1 boríték"
-
-msgid "Envelope C2"
-msgstr "C2 boríték"
-
-msgid "Envelope C3"
-msgstr "C3 boríték"
-
-msgid "Envelope C4"
-msgstr "C4 boríték"
-
-msgid "Envelope C5"
-msgstr "C5 boríték"
-
-msgid "Envelope C6"
-msgstr "C6 boríték"
-
-msgid "Envelope C65"
-msgstr "C65 boríték"
-
-msgid "Envelope C7"
-msgstr "C7 boríték"
-
-msgid "Envelope Choukei 3"
-msgstr "Choukei boríték 3"
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr "Choukei boríték 3, hosszú élű"
-
-msgid "Envelope Choukei 4"
-msgstr "Choukei boríték 4"
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr "Choukei boríték 4, hosszú élű"
-
-msgid "Envelope DL"
-msgstr "DL boríték"
-
-msgid "Envelope Feed"
-msgstr "Borítékadagoló"
-
-msgid "Envelope Invite"
-msgstr "Meghívóboríték"
-
-msgid "Envelope Italian"
-msgstr "Olasz boríték"
-
-msgid "Envelope Kaku2"
-msgstr "Kaku2 boríték"
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr "Kaku2 hosszú élű boríték"
-
-msgid "Envelope Kaku3"
-msgstr "Kaku3 boríték"
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr "Kaku3 hosszú élű boríték"
-
-msgid "Envelope Monarch"
-msgstr "Monarch boríték"
-
-msgid "Envelope PRC1 "
-msgstr "PRC1 boríték"
-
-msgid "Envelope PRC1 Long Edge"
-msgstr "PRC1 hosszú élű boríték"
-
-msgid "Envelope PRC10"
-msgstr "PRC10 boríték"
-
-msgid "Envelope PRC10 Long Edge"
-msgstr "PRC10 hosszú élű boríték"
-
-msgid "Envelope PRC2"
-msgstr "PRC2 boríték"
-
-msgid "Envelope PRC2 Long Edge"
-msgstr "PRC2 hosszú élű boríték"
-
-msgid "Envelope PRC3"
-msgstr "PRC3 boríték"
-
-msgid "Envelope PRC3 Long Edge"
-msgstr "PRC3 hosszú élű boríték"
-
-msgid "Envelope PRC4"
-msgstr "PRC4 boríték"
-
-msgid "Envelope PRC4 Long Edge"
-msgstr "PRC4 hosszú élű boríték"
-
-msgid "Envelope PRC5 Long Edge"
-msgstr "PRC5 hosszú élű boríték"
-
-msgid "Envelope PRC5PRC5"
-msgstr "PRC5PRC5 boríték"
-
-msgid "Envelope PRC6"
-msgstr "PRC6 boríték"
-
-msgid "Envelope PRC6 Long Edge"
-msgstr "PRC6 hosszú élű boríték"
-
-msgid "Envelope PRC7"
-msgstr "PRC7 boríték"
-
-msgid "Envelope PRC7 Long Edge"
-msgstr "PRC7 hosszú élű boríték"
-
-msgid "Envelope PRC8"
-msgstr "PRC8 boríték"
-
-msgid "Envelope PRC8 Long Edge"
-msgstr "PRC8 hosszú élű boríték"
-
-msgid "Envelope PRC9"
-msgstr "PRC9 boríték"
-
-msgid "Envelope PRC9 Long Edge"
-msgstr "PRC9 hosszú élű boríték"
-
-msgid "Envelope Personal"
-msgstr "Személyes boríték"
-
-msgid "Envelope You4"
-msgstr "You4 boríték"
-
-msgid "Envelope You4 Long Edge"
-msgstr "You4 hosszú élű boríték"
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Hibaházirend"
-
-msgid "Error sending raster data."
-msgstr "Hiba a raszteradatok küldésekor."
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr "Hiba: a „-h†kapcsoló után gépnév szükséges."
-
-msgid "Every 10 Labels"
-msgstr "10 címkénként"
-
-msgid "Every 2 Labels"
-msgstr "2 címkénként"
-
-msgid "Every 3 Labels"
-msgstr "3 címkénként"
-
-msgid "Every 4 Labels"
-msgstr "4 címkénként"
-
-msgid "Every 5 Labels"
-msgstr "5 címkénként"
-
-msgid "Every 6 Labels"
-msgstr "6 címkénként"
-
-msgid "Every 7 Labels"
-msgstr "7 címkénként"
-
-msgid "Every 8 Labels"
-msgstr "8 címkénként"
-
-msgid "Every 9 Labels"
-msgstr "9 címkénként"
-
-msgid "Every Label"
-msgstr "Címkénként"
-
-msgid "Executive"
-msgstr "Exekutív"
-
-msgid "Expectation Failed"
-msgstr "A várakozás meghiúsult"
-
-msgid "Export Printers to Samba"
-msgstr "Nyomtatók exportálása Samba rendszerbe"
-
-msgid "FAIL"
-msgstr "HIBA"
-
-msgid "FanFold German"
-msgstr "Német leporelló"
-
-msgid "FanFold Legal German"
-msgstr "Legal német leporelló"
-
-msgid "Fanfold US"
-msgstr "US leporelló"
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr "A(z) „%s†fájl relatív útvonalat tartalmaz."
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr "A(z) „%s†fájl jogosultságai nem biztonságosak (0%o/uid=%d/gid=%d)."
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr "A(z) „%s†fájl egy könyvtár."
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr "A(z) „%s†fájl nem érhető el: %s"
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr "A(z) „%s†fájl jogosultságai megfelelők (0%o/uid=%d/gid=%d)."
-
-msgid "File Folder"
-msgstr "Iratmappa"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Fájlmappa - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-"A fájl eszközök URI-címei le lettek tiltva. Az engedélyezéshez lásd a "
-"FileDevice direktívát a(z) „%s/cupsd.conf†fájlban."
-
-#, c-format
-msgid "Finished page %d."
-msgstr "%d. oldal befejezve."
-
-msgid "Folio"
-msgstr "Ãvlap"
-
-msgid "Forbidden"
-msgstr "Tiltott"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr "%d. oldal formázása"
-
-msgid "General"
-msgstr "Ãltalános"
-
-msgid "Generic"
-msgstr "Ãltalános"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "A Get-Response-PDU végtelen hosszot használ"
-
-msgid "Glossy Paper"
-msgstr "Fényes papír"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr "A kapott printer-uri attribútumhoz nincs job-id."
-
-msgid "Grayscale"
-msgstr "Szürkeárnyalat"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Lógó mappa"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Lógó mappa - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "ISOLatin1"
-
-msgid "Illegal control character"
-msgstr "Érvénytelen vezérlőkarakter"
-
-msgid "Illegal main keyword string"
-msgstr "Érvénytelen főkulcsszó-karakterlánc"
-
-msgid "Illegal option keyword string"
-msgstr "Érvénytelen kapcsolókulcsszó-karakterlánc"
-
-msgid "Illegal translation string"
-msgstr "Érvénytelen fordítás"
-
-msgid "Illegal whitespace character"
-msgstr "Érvénytelen üres hely karakter"
-
-msgid "Installable Options"
-msgstr "Telepíthető beállítások"
-
-msgid "Installed"
-msgstr "Telepítve"
-
-msgid "IntelliBar Label Printer"
-msgstr "IntelliBar címkenyomtató"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr "Belső kiszolgálóhiba"
-
-msgid "Internal error"
-msgstr "Belső hiba"
-
-msgid "Internet Postage 2-Part"
-msgstr "Kétrészes internetes postai"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Kétrészes internetes postai - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Háromrészes internetes postai"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Háromrészes internetes postai - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Internet nyomtatási protokoll"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr "JIS B0"
-
-msgid "JIS B1"
-msgstr "JIS B1"
-
-msgid "JIS B10"
-msgstr "JIS B10"
-
-msgid "JIS B2"
-msgstr "JIS B2"
-
-msgid "JIS B3"
-msgstr "JIS B3"
-
-msgid "JIS B4"
-msgstr "JIS B4"
-
-msgid "JIS B4 Long Edge"
-msgstr "JIS B4 hosszú élű"
-
-msgid "JIS B5"
-msgstr "JIS B5"
-
-msgid "JIS B5 Long Edge"
-msgstr "JIS B5 hosszú élű"
-
-msgid "JIS B6"
-msgstr "JIS B6"
-
-msgid "JIS B6 Long Edge"
-msgstr "JIS B6 hosszú élű"
-
-msgid "JIS B7"
-msgstr "JIS B7"
-
-msgid "JIS B8"
-msgstr "JIS B8"
-
-msgid "JIS B9"
-msgstr "JIS B9"
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr "A(z) %d. feladat nem indítható újra - nincsenek fájlok."
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr "A(z) %d. feladat nem létezik."
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "A(z) %d. feladat már félbe van szakítva - nem szakítható meg."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "A(z) %d. feladat már meg van szakítva - nem szakítható meg."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "A(z) %d. feladat már kész van - nem szakítható meg."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr "A(z) %d. feladat befejeződött, és nem módosítható."
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr "A(z) %d. feladat nincs kész."
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr "A(z) %d. feladat nincs hitelesítésre visszatartva."
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr "A(z) %d. feladat nincs visszatartva."
-
-msgid "Job Completed"
-msgstr "Feladat befejeződött"
-
-msgid "Job Created"
-msgstr "Feladat létrehozva"
-
-msgid "Job ID: "
-msgstr "Feladatazonosító: "
-
-msgid "Job Options Changed"
-msgstr "Feladat beállításai módosítva"
-
-msgid "Job Stopped"
-msgstr "Feladat leállítva"
-
-msgid "Job UUID: "
-msgstr "Feladat UUID: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "A feladat befejeződött, és nem módosítható."
-
-msgid "Job operation failed:"
-msgstr "A feladatművelet sikertelen:"
-
-msgid "Job state cannot be changed."
-msgstr "A feladat állapota nem módosítható."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr "A feladatfeliratkozások nem újíthatók meg."
-
-msgid "Jobs"
-msgstr "Feladatok"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR kiszolgáló vagy nyomtató"
-
-msgid "Label Printer"
-msgstr "Címkenyomtató"
-
-msgid "Label Top"
-msgstr "Címke teteje"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr "A(z) „%s†nyelv nem támogatott."
-
-msgid "Large Address"
-msgstr "Nagy cím"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Nagy cím - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet sorozat PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr "Letter túlméretes"
-
-msgid "Letter Oversize Long Edge"
-msgstr "Letter túlméretes hosszú élű"
-
-msgid "Light"
-msgstr "Gyenge"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "A sor hosszabb a maximálisan engedélyezettnél (255 karakter)"
-
-msgid "List Available Printers"
-msgstr "Elérhető nyomtatók felsorolása"
-
-msgid "Loading print file."
-msgstr "Nyomtatandó fájl betöltése."
-
-msgid "Location: "
-msgstr "Hely: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Hosszú élű (álló)"
-
-msgid "Looking for printer."
-msgstr "Nyomtató keresése."
-
-msgid "Make and Model: "
-msgstr "Gyártó és modell: "
-
-msgid "Manual Feed"
-msgstr "Kézi adagolás"
-
-msgid "Media Dimensions: "
-msgstr "Média méretei: "
-
-msgid "Media Limits: "
-msgstr "Média korlátai: "
-
-msgid "Media Name: "
-msgstr "Média neve: "
-
-msgid "Media Size"
-msgstr "Média mérete"
-
-msgid "Media Source"
-msgstr "Média forrása"
-
-msgid "Media Tracking"
-msgstr "Média követése"
-
-msgid "Media Type"
-msgstr "Média típusa"
-
-msgid "Medium"
-msgstr "Médium"
-
-msgid "Memory allocation error"
-msgstr "Memóriafoglalási hiba"
-
-msgid "Missing CloseGroup"
-msgstr "Hiányzó CloseGroup"
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "Hiányzó PPD-Adobe-4.x fejléc"
-
-msgid "Missing asterisk in column 1"
-msgstr "Hiányzó csillag az 1. oszlopban"
-
-msgid "Missing document-number attribute."
-msgstr "Hiányzó document-number attribútum."
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr "Hiányzó dupla idézőjel a(z) %d. sorban."
-
-msgid "Missing form variable"
-msgstr "Hiányzó típusváltozó"
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr "Hiányzó média vagy media-col."
-
-msgid "Missing media-size in media-col."
-msgstr "Hiányzó media-size a media-col elemben."
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr "Hiányzó notify-subscription-ids attribútum."
-
-msgid "Missing option keyword"
-msgstr "Hiányzó kapcsolókulcsszó"
-
-msgid "Missing requesting-user-name attribute."
-msgstr "Hiányzó requesting-user-name attribútum."
-
-msgid "Missing required attributes."
-msgstr "Hiányzó kötelező attribútumok."
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr "Hiányzó érték a kísérőoldalfájl %d. sorában."
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr "Hiányzó érték a(z) %d. sorban."
-
-msgid "Missing value string"
-msgstr "Hiányzó értékkarakterlánc"
-
-msgid "Missing x-dimension in media-size."
-msgstr "Hiányzó x-dimension a media-size elemben."
-
-msgid "Missing y-dimension in media-size."
-msgstr "Hiányzó y-dimension a media-size elemben."
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-"Modell: név = %s\n"
-" természetes nyelv = %s\n"
-" gyártó és típus = %s\n"
-" eszközazonosító = %s"
-
-msgid "Modify Class"
-msgstr "Osztály módosítása"
-
-msgid "Modify Printer"
-msgstr "Nyomtató módosítása"
-
-msgid "Move All Jobs"
-msgstr "Minden feladat áthelyezése"
-
-msgid "Move Job"
-msgstr "Feladat áthelyezése"
-
-msgid "Moved Permanently"
-msgstr "Tartósan áthelyezve"
-
-msgid "NULL PPD file pointer"
-msgstr "NULL PPD-fájl mutató"
-
-msgid "Name OID uses indefinite length"
-msgstr "Név OID végtelen hosszt használ"
-
-msgid "Nested classes are not allowed."
-msgstr "A beágyazott osztályok nem engedélyezettek."
-
-msgid "Never"
-msgstr "Soha"
-
-msgid "New Stylus Color Series"
-msgstr "New Stylus Color sorozat"
-
-msgid "New Stylus Photo Series"
-msgstr "New Stylus Photo sorozat"
-
-msgid "No"
-msgstr "Nem"
-
-msgid "No Content"
-msgstr "Nincs tartalom"
-
-msgid "No PPD name"
-msgstr "Nincs PPD-név"
-
-msgid "No VarBind SEQUENCE"
-msgstr "Nincs VarBind SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr "Nincsenek telepítve windowsos nyomtató-illesztőprogramok."
-
-msgid "No active connection"
-msgstr "Nincs aktív kapcsolat"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr "Nincsenek aktív feladatok ezen: %s."
-
-msgid "No attributes in request."
-msgstr "Nincsenek attribútumok a kérésben."
-
-msgid "No authentication information provided."
-msgstr "Nem adott meg hitelesítési információkat."
-
-msgid "No community name"
-msgstr "Nincs közösségnév"
-
-msgid "No default printer."
-msgstr "Nincs alapértelmezett nyomtató."
-
-msgid "No destinations added."
-msgstr "Nem lett cél hozzáadva."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-"Nem található az eszköz URI azonosítója az argv[0] változóban vagy a "
-"DEVICE_URI környezeti változóban."
-
-msgid "No error-index"
-msgstr "Nincs error-index"
-
-msgid "No error-status"
-msgstr "Nincs error-status"
-
-msgid "No file in print request."
-msgstr "Nincs fájl a nyomtatási kérésben."
-
-msgid "No fonts in charset file."
-msgstr "Nincsenek betűk a karakterkészlet-fájlban."
-
-msgid "No modification time"
-msgstr "Nincs módosítási idő"
-
-msgid "No name OID"
-msgstr "Nincs név OID"
-
-msgid "No pages were found."
-msgstr "Nem találhatók oldalak."
-
-msgid "No printer name"
-msgstr "Nincs nyomtatónév"
-
-msgid "No printer-uri found"
-msgstr "Nem található printer-uri"
-
-msgid "No printer-uri found for class"
-msgstr "Nem található printer-uri az osztályhoz"
-
-msgid "No printer-uri in request."
-msgstr "Nincs printer-uri a kérésben."
-
-msgid "No request-id"
-msgstr "Nincs request-id"
-
-msgid "No subscription attributes in request."
-msgstr "Nincsenek feliratkozási attribútumok a kérésben."
-
-msgid "No subscriptions found."
-msgstr "Nem található feliratkozás."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Nincs variable-bindings SEQUENCE"
-
-msgid "No version number"
-msgstr "Nincs verziószám"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Nem végtelenített (jelölésérzékelés)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Nem végtelenített (webérzékelés)"
-
-msgid "Normal"
-msgstr "Normál"
-
-msgid "Not Found"
-msgstr "Nem található"
-
-msgid "Not Implemented"
-msgstr "Nincs megvalósítva"
-
-msgid "Not Installed"
-msgstr "Nincs telepítve"
-
-msgid "Not Modified"
-msgstr "Nincs módosítva"
-
-msgid "Not Supported"
-msgstr "Nem támogatott"
-
-msgid "Not allowed to print."
-msgstr "Nem engedélyezett a nyomtatás."
-
-msgid "Note"
-msgstr "Megjegyzés"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-"Megjegyzés: ez a program csak a DSC-megjegyzéseket ellenőrzi, nem magát a "
-"PostScriptet."
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Ki (egyoldalas)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Online súgó"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "%s megnyitása sikertelen: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "Az OpenGroup előtt nincs CloseGroup"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "Az OpenUI/JCLOpenUI előtt nincs CloseUI/JCLCloseUI"
-
-msgid "Operation Policy"
-msgstr "Működtetési házirend"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr "A(z) „%s†beállítás nem vehető fel a %%%%IncludeFeature használatával."
-
-msgid "Options Installed"
-msgstr "Telepített beállítások"
-
-msgid "Options:"
-msgstr "Beállítások:"
-
-msgid "Options: "
-msgstr "Beállítások: "
-
-msgid "Out of date PPD cache file."
-msgstr "Elavult PPD-gyorsítótárfájl."
-
-msgid "Out of memory."
-msgstr "Elfogyott a memória."
-
-msgid "Output Mode"
-msgstr "Kimeneti mód"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr "A(z) %s nyomtató kimenete erre van elküldve: %s"
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-"A(z) %s nyomtató kimenete a(z) %s távoli nyomtatóra van elküldve ezen: %s"
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr "A(z) %s/%s nyomtató kimenete erre van elküldve: %s"
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-"A(z) %s/%s nyomtató kimenete a(z) %s távoli nyomtatóra van elküldve ezen: %s"
-
-msgid "PASS"
-msgstr "SIKER"
-
-msgid "PCL Laser Printer"
-msgstr "PCL lézernyomtató"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr "PRC16K hosszú élű"
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr "PRC32K hosszú élű"
-
-msgid "PRC32K Oversize"
-msgstr "PRC32K túlméretes"
-
-msgid "PRC32K Oversize Long Edge"
-msgstr "PRC32K túlméretes hosszú élű"
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "A csomag nem tartalmaz Get-Response-PDU elemet"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "A csomag nem a SEQUENCE elemmel kezdődik"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "%s jelszava ezen: %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "%s jelszava szükséges %s eléréséhez SAMBA használatával: "
-
-msgid "Pause Class"
-msgstr "Osztály szüneteltetése"
-
-msgid "Pause Printer"
-msgstr "Nyomtató szüneteltetése"
-
-msgid "Peel-Off"
-msgstr "Leválasztás"
-
-msgid "Photo"
-msgstr "Fotó"
-
-msgid "Photo Labels"
-msgstr "Fotócímkék"
-
-msgid "Plain Paper"
-msgstr "Sima papír"
-
-# msgid "Postcard Double"
-# msgstr "Dupla képeslap"
-msgid "Policies"
-msgstr "Házirendek"
-
-msgid "Port Monitor"
-msgstr "Portfigyelő"
-
-msgid "PostScript Printer"
-msgstr "PostScript nyomtató"
-
-msgid "Postcard"
-msgstr "Képeslap"
-
-msgid "Postcard Double "
-msgstr "Dupla képeslap "
-
-msgid "Postcard Double Long Edge"
-msgstr "Hosszú élű dupla képeslap"
-
-msgid "Postcard Long Edge"
-msgstr "Hosszú élű képeslap"
-
-msgid "Print Density"
-msgstr "Nyomtatás sűrűsége"
-
-msgid "Print Job:"
-msgstr "Nyomtatási feladat:"
-
-msgid "Print Mode"
-msgstr "Nyomtatási mód"
-
-msgid "Print Rate"
-msgstr "Nyomtatási sebesség"
-
-msgid "Print Self-Test Page"
-msgstr "Öntesztelő oldal nyomtatása"
-
-msgid "Print Speed"
-msgstr "Nyomtatási sebesség"
-
-msgid "Print Test Page"
-msgstr "Tesztoldal nyomtatása"
-
-msgid "Print and Cut"
-msgstr "Nyomtatás és kivágás"
-
-msgid "Print and Tear"
-msgstr "Nyomtatás és szakítás"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr "Nyomtatási fájl elfogadva - feladatazonosító: %d"
-
-msgid "Print file accepted - job ID unknown."
-msgstr "Nyomtatási fájl elfogadva - feladatazonosító ismeretlen."
-
-msgid "Print file sent."
-msgstr "Nyomtatási fájl elküldve."
-
-msgid "Print file was not accepted."
-msgstr "A nyomtatási fájl nem lett elfogadva."
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Nyomtatva ehhez: "
-
-msgid "Printed From: "
-msgstr "Nyomtatva ebből: "
-
-msgid "Printed On: "
-msgstr "Nyomtatva ekkor: "
-
-msgid "Printer Added"
-msgstr "Nyomtató hozzáadva"
-
-msgid "Printer Default"
-msgstr "Nyomtató alapértelmezése"
-
-msgid "Printer Deleted"
-msgstr "Nyomtató törölve"
-
-msgid "Printer Modified"
-msgstr "Nyomtató módosítva"
-
-msgid "Printer Name: "
-msgstr "Nyomtatónév: "
-
-msgid "Printer Paused"
-msgstr "Nyomtató szüneteltetve"
-
-msgid "Printer Settings"
-msgstr "Nyomtató beállításai"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr "Nyomtató elfoglalt, 10 másodperc múlva újrapróbálkozom."
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr "Nyomtató elfoglalt; 30 másodperc múlva újrapróbálkozom."
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-"A nyomtató nem támogatja az IPP/%d.%d módot, próbálkozás az IPP/%s móddal…"
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr "Nyomtató elfoglalt, 5 másodperc múlva újrapróbálkozom."
-
-msgid "Printer is not currently connected."
-msgstr "A nyomtató jelenleg nincs csatlakoztatva."
-
-msgid "Printer is now connected."
-msgstr "A nyomtató jelenleg csatlakoztatva van."
-
-msgid "Printer is now online."
-msgstr "A nyomtató jelenleg elérhető."
-
-msgid "Printer is offline."
-msgstr "A nyomtató offline állapotban van."
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr "A nyomtató nem csatlakozik, 30 másodperc múlva újrapróbálkozom."
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr "A nyomtató nem csatlakozik; 30 másodperc múlva újrapróbálkozom."
-
-msgid "Printer:"
-msgstr "Nyomtató:"
-
-msgid "Printers"
-msgstr "Nyomtatók"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr "%d. oldal nyomtatása, %d%% kész."
-
-#, c-format
-msgid "Printing page %d."
-msgstr "%d. oldal nyomtatása."
-
-msgid "Purge Jobs"
-msgstr "Feladatok eltávolítása"
-
-msgid "Quarto"
-msgstr "Quarto"
-
-msgid "Quota limit reached."
-msgstr "Kvótakorlát elérve."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr "Sorr Tulaj Felad Fájlok Teljes méret"
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-"Sorr Tulaj Pri Felad Fájlok Teljes méret"
-
-msgid "Ready to print."
-msgstr "Nyomtatásra kész."
-
-msgid "Reject Jobs"
-msgstr "Feladatok visszautasítása"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr "A távoli gép nem fogadta el a vezérlőfájlt (%d)."
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr "A távoli gép nem fogadta el az adatfájlt (%d)."
-
-msgid "Reprint After Error"
-msgstr "Újranyomtatás hiba után"
-
-msgid "Request Entity Too Large"
-msgstr "A kérésegyed túl nagy"
-
-msgid "Resolution"
-msgstr "Felbontás"
-
-msgid "Resume Class"
-msgstr "Osztály folytatása"
-
-msgid "Resume Printer"
-msgstr "Nyomtató folytatása"
-
-msgid "Return Address"
-msgstr "Visszaküldési cím"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Visszaküldési cím - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Visszatekerés"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr "Parancs futtatása: %s %s -N -A %s -c '%s'"
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "A SEQUENCE végtelen hosszt használ"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr "SSL/TLS egyeztetési hiba"
-
-msgid "See Other"
-msgstr "A többi megjelenítése"
-
-msgid "Sending data to printer."
-msgstr "Adatok küldése a nyomtatónak."
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "%d. soros port"
-
-msgid "Server Restarted"
-msgstr "Kiszolgáló újraindítva"
-
-msgid "Server Security Auditing"
-msgstr "Kiszolgáló biztonsági megfigyelése"
-
-msgid "Server Started"
-msgstr "Kiszolgáló elindítva"
-
-msgid "Server Stopped"
-msgstr "Kiszolgáló leállítva"
-
-msgid "Service Unavailable"
-msgstr "A szolgáltatás nem érhető el"
-
-msgid "Set Allowed Users"
-msgstr "Engedélyezett felhasználók beállítása"
-
-msgid "Set As Server Default"
-msgstr "Beállítás kiszolgáló alapértelmezéseként"
-
-msgid "Set Class Options"
-msgstr "Osztály beállításainak megadása"
-
-msgid "Set Printer Options"
-msgstr "Nyomtató beállításainak megadása"
-
-msgid "Set Publishing"
-msgstr "Közzététel beállítása"
-
-msgid "Shipping Address"
-msgstr "Szállítási cím"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Szállítási cím - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Rövid élű (fekvő)"
-
-msgid "Special Paper"
-msgstr "Speciális papír"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr "Feladat sorba állítása, %.0f%% kész."
-
-msgid "Standard"
-msgstr "Szabványos"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Kezdő kísérőoldal"
-
-#, c-format
-msgid "Starting page %d."
-msgstr "%d. oldal kezdése."
-
-msgid "Statement"
-msgstr "Statement"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color sorozat"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo sorozat"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr "A(z) %d. feliratkozás nem létezik."
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Szuper B/A3"
-
-msgid "Switching Protocols"
-msgstr "Protokollváltás"
-
-msgid "Tabloid"
-msgstr "Tabloid"
-
-msgid "Tabloid Oversize"
-msgstr "Tabloid túlméretes"
-
-msgid "Tabloid Oversize Long Edge"
-msgstr "Hosszú élű túlméretes tabloid"
-
-msgid "Tear"
-msgstr "Letépés"
-
-msgid "Tear-Off"
-msgstr "Perforáció"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Perforáció igazítási pozíciója"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr "A(z) %s attribútum nem adható meg job-id értékekkel."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "A(z) „%s†PPD-fájl nem található."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "A(z) „%s†PPD-fájl nem nyitható meg: %s"
-
-msgid "The PPD file could not be opened."
-msgstr "A PPD-fájl nem nyitható meg."
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Az osztálynév legfeljebb 127 nyomtatható karaktert tartalmazhat, kivéve a "
-"„/â€, „#†és szóköz karaktereket."
-
-msgid "The developer unit needs to be replaced."
-msgstr "Az előhívó egységet ki kell cserélni."
-
-msgid "The developer unit will need to be replaced soon."
-msgstr "Az előhívó egységet hamarosan ki kell majd cserélni."
-
-msgid "The fuser's temperature is high."
-msgstr "A beégetőmű hőmérséklete túl magas."
-
-msgid "The fuser's temperature is low."
-msgstr "A beégetőmű hőmérséklete túl alacsony."
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"A notify-lease-duration attribútum nem használható feladatfeliratkozásokkal."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr "A notify-user-data érték túl magas (%d > 63 oktet)."
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr "Az optikai fotovezetőt ki kell cserélni."
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr "Az optikai fotovezetőt hamarosan ki kell majd cserélni."
-
-msgid "The output bin is almost full."
-msgstr "A kimeneti tartó majdnem megtelt."
-
-msgid "The output bin is full."
-msgstr "A kimeneti tartó megtelt."
-
-msgid "The output bin is missing."
-msgstr "A kimeneti tartó hiányzik."
-
-msgid "The page setup information was not valid."
-msgstr "Az oldalbeállítási információk érvénytelenek."
-
-msgid "The paper tray is almost empty."
-msgstr "Majdnem üres a papírtálca."
-
-msgid "The paper tray is empty."
-msgstr "Üres a papírtálca."
-
-msgid "The paper tray is missing."
-msgstr "Hiányzik a papírtálca."
-
-msgid "The paper tray needs to be filled."
-msgstr "Fel kell tölteni a papírtálcát."
-
-msgid "The print file could not be opened."
-msgstr "A nyomtatási fájl nem nyitható meg."
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr "A nyomtató URI-címe helytelen, vagy nem létezik."
-
-msgid "The printer is busy."
-msgstr "A nyomtató elfoglalt."
-
-msgid "The printer is not connected."
-msgstr "A nyomtató nincs csatlakoztatva."
-
-msgid "The printer is not responding."
-msgstr "A nyomtató nem válaszol."
-
-msgid "The printer is out of ink."
-msgstr "A nyomtatóból kifogyott a tinta."
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr "A nyomtató jelenleg elérhetetlen."
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr "A nyomtató nem létezik, vagy jelenleg elérhetetlen."
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"A nyomtatónév legfeljebb 127 nyomtatható karaktert tartalmazhat, kivéve a "
-"„/â€, „#†és szóköz karaktereket."
-
-msgid "The printer or class does not exist."
-msgstr "A nyomtató vagy osztály nem létezik."
-
-msgid "The printer or class is not shared."
-msgstr "A nyomtató vagy osztály nincs megosztva."
-
-msgid "The printer's cover is open."
-msgstr "A nyomtató fedele nyitva van."
-
-msgid "The printer's door is open."
-msgstr "A nyomtató ajtaja nyitva van."
-
-msgid "The printer's interlock is open."
-msgstr "A nyomtató retesze nyitva van."
-
-msgid "The printer's waste bin is almost full."
-msgstr "A nyomtató hulladéktárolója majdnem megtelt."
-
-msgid "The printer's waste bin is full."
-msgstr "A nyomtató hulladéktárolója megtelt."
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "A(z) „%s†printer-uri érvénytelen karaktereket tartalmaz."
-
-msgid "The printer-uri attribute is required."
-msgstr "A printer-uri attribútum szükséges."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"A printer-uri a következő alakú kell legyen: „ipp://GÉPNÉV/classes/"
-"OSZTÃLYNÉVâ€."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"A printer-uri a következő alakú kell legyen: „ipp://GÉPNÉV/printers/"
-"NYOMTATÓNÉVâ€."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"A feliratkozás neve nem tartalmazhatja a „/â€, „?â€, „#†és szóköz "
-"karaktereket."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-"A webes felület jelenleg le van tiltva. Futtassa a „cupsctl "
-"WebInterface=yes†parancsot az engedélyezéséhez."
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr "A(z) „%s†which-jobs érték nem támogatott."
-
-msgid "There are too many subscriptions."
-msgstr "Túl sok feliratkozás van."
-
-msgid "There is a paper jam."
-msgstr "Begyűrődött a papír."
-
-msgid "There was an unrecoverable USB error."
-msgstr "Helyrehozhatatlan USB-hiba történt."
-
-msgid "Thermal Transfer Media"
-msgstr "Termáltranszfer címke"
-
-msgid "Title: "
-msgstr "Cím: "
-
-msgid "Too many active jobs."
-msgstr "Túl sok aktív feladat."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr "Túl sok job-sheets érték (%d > 2)."
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr "Túl sok printer-state-reasons érték (%d > %d)."
-
-msgid "Transparency"
-msgstr "Ãtlátszóság"
-
-msgid "Tray"
-msgstr "Tálca"
-
-msgid "Tray 1"
-msgstr "1. tálca"
-
-msgid "Tray 2"
-msgstr "2. tálca"
-
-msgid "Tray 3"
-msgstr "3. tálca"
-
-msgid "Tray 4"
-msgstr "4. tálca"
-
-msgid "URI Too Long"
-msgstr "Az URI túl hosszú"
-
-msgid "US Ledger"
-msgstr "US Ledger"
-
-msgid "US Legal"
-msgstr "US Legal"
-
-msgid "US Legal Oversize"
-msgstr "US Legal túlméretes"
-
-msgid "US Letter"
-msgstr "US levél"
-
-msgid "US Letter Long Edge"
-msgstr "Hosszú élű US levél"
-
-msgid "US Letter Oversize"
-msgstr "Túlméretes US levél"
-
-msgid "US Letter Oversize Long Edge"
-msgstr "Hosszú élű túlméretes US levél"
-
-msgid "US Letter Small"
-msgstr "US Letter kicsi"
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "%d. USB soros port"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "A cupsd.conf fájl nem érhető el:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Nem vehető fel az RSS-feliratkozás:"
-
-msgid "Unable to add class:"
-msgstr "Nem vehető fel osztály:"
-
-msgid "Unable to add document to print job."
-msgstr "A dokumentum nem adható hozzá a nyomtatási feladathoz."
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr "Nem vehető fel feladat a(z) „%s†célhoz."
-
-msgid "Unable to add printer:"
-msgstr "Nem vehető fel nyomtató:"
-
-msgid "Unable to allocate memory for file types."
-msgstr "A memória lefoglalása nem lehetséges a fájltípusoknak."
-
-msgid "Unable to allocate memory for page info"
-msgstr "A memória lefoglalása nem lehetséges az oldalinformációknak."
-
-msgid "Unable to allocate memory for pages array"
-msgstr "A memória lefoglalása nem lehetséges az oldalak tömbjének."
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Nem távolítható el az RSS-feliratkozás:"
-
-msgid "Unable to cancel print job."
-msgstr "Nem szakítható meg a nyomtatási feladat."
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "A printer-is-shared attribútum nem módosítható:"
-
-msgid "Unable to change printer:"
-msgstr "Nem módosítható a nyomtató:"
-
-msgid "Unable to change server settings:"
-msgstr "Nem módosíthatók a kiszolgáló beállításai:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "A géphez nem lehet kapcsolódni."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-"A nyomtatóval nem vehető fel a kapcsolat, sorba állítás az osztály következő "
-"nyomtatójára."
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr "A 64 bites CUPS illesztőprogram-fájlok nem másolhatók (%d)."
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr "A 64 bites Windows illesztőprogram-fájlok nem másolhatók (%d)."
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr "A CUPS illesztőprogram-fájlok nem másolhatók (%d)."
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr "A PPD-fájl nem másolható - %s"
-
-msgid "Unable to copy PPD file."
-msgstr "A PPD-fájl nem másolható."
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr "A Windows 2000 illesztőprogram-fájlok nem másolhatók (%d)."
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr "A Windows 9x illesztőprogram-fájlok nem másolhatók (%d)."
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr "A felület parancsfájl nem másolható - %s"
-
-msgid "Unable to copy print file"
-msgstr "A nyomtatási fájl nem másolható"
-
-msgid "Unable to create compressed print file"
-msgstr "Nem hozható létre tömörített nyomtatási fájl"
-
-msgid "Unable to create pipes for filters"
-msgstr "Nem hozhatók létre csövek a szűrőkhöz"
-
-msgid "Unable to create printer-uri"
-msgstr "Nem hozható létre printer-uri"
-
-msgid "Unable to create temporary file"
-msgstr "Az átmeneti fájl létrehozása nem lehetséges"
-
-msgid "Unable to create temporary file:"
-msgstr "Az átmeneti fájl létrehozása nem lehetséges:"
-
-msgid "Unable to delete class:"
-msgstr "Nem törölhető az osztály:"
-
-msgid "Unable to delete printer:"
-msgstr "Nem törölhető a nyomtató:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Nem hajtható végre a karbantartási parancs:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr "Nem szerkeszthetők 1 MB-nál nagyobb cupsd.conf fájlok"
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-"Nem hozható létre biztonságos kapcsolat a géphez (érvénytelen "
-"tanúsítványlánc)."
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-"Nem hozható létre biztonságos kapcsolat a géphez (a tanúsítvány még nem "
-"érvényes)."
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-"Nem hozható létre biztonságos kapcsolat a géphez (a tanúsítvány lejárt)."
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr "Nem hozható létre biztonságos kapcsolat a géphez (a gépnév eltér)."
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-"Nem hozható létre biztonságos kapcsolat a géphez (a partner eldobta a "
-"kapcsolatot a válasz előtt)."
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-"Nem hozható létre biztonságos kapcsolat a géphez (önaláírt tanúsítvány)."
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-"Nem hozható létre biztonságos kapcsolat a géphez (a tanúsítványban nem lehet "
-"megbízni)."
-
-msgid "Unable to establish a secure connection to host."
-msgstr "Nem hozható létre biztonságos kapcsolat a géphez."
-
-msgid "Unable to find destination for job"
-msgstr "Nem található a feladat célja"
-
-msgid "Unable to find printer."
-msgstr "Nem található a nyomtató."
-
-msgid "Unable to fork filter"
-msgstr "A szűrő nem indítható el"
-
-msgid "Unable to generate compressed print file"
-msgstr "Nem állítható elő tömörített nyomtatási fájl"
-
-msgid "Unable to get backend exit status."
-msgstr "Nem kérhető le a háttérprogram kilépési állapota."
-
-msgid "Unable to get class list:"
-msgstr "Nem kérhető le az osztályok listája:"
-
-msgid "Unable to get class status:"
-msgstr "Nem kérhető le az osztály állapota:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Nem kérhető le a nyomtató-illesztőprogramok listája:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Nem kérhetők le a nyomtató attribútumai:"
-
-msgid "Unable to get printer list:"
-msgstr "Nem kérhető le a nyomtatók listája:"
-
-msgid "Unable to get printer status."
-msgstr "Nem kérhető le a nyomtató állapota."
-
-msgid "Unable to get printer status:"
-msgstr "Nem kérhető le a nyomtató állapota:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr "A Windows 2000 illesztőprogram-fájlok nem telepíthetők (%d)."
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr "A Windows 9x illesztőprogram-fájlok nem telepíthetők (%d)."
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr "Nem található a(z) „%s†nyomtató."
-
-msgid "Unable to locate printer."
-msgstr "Nem található a nyomtató."
-
-msgid "Unable to modify class:"
-msgstr "Nem módosítható az osztály:"
-
-msgid "Unable to modify printer:"
-msgstr "Nem módosítható a nyomtató:"
-
-msgid "Unable to move job"
-msgstr "Nem helyezhető át a feladat"
-
-msgid "Unable to move jobs"
-msgstr "Nem helyezhetők át a feladatok"
-
-msgid "Unable to open PPD file"
-msgstr "Nem nyitható meg a PPD-fájl"
-
-msgid "Unable to open PPD file:"
-msgstr "Nem nyitható meg a PPD-fájl:"
-
-msgid "Unable to open charset file"
-msgstr "A karakterkészletfájl nem nyitható meg"
-
-msgid "Unable to open compressed print file"
-msgstr "Nem nyitható meg tömörített nyomtatási fájl"
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "A cupsd.conf fájl nem nyitható meg:"
-
-msgid "Unable to open device file"
-msgstr "Az eszközfájl nem nyitható meg"
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr "Nem nyitható meg a(z) %d. dokumentum a(z) %d. feladatban."
-
-msgid "Unable to open print file"
-msgstr "A nyomtatási fájl nem nyitható meg"
-
-msgid "Unable to open psglyphs"
-msgstr "A psglyphs nem nyitható meg"
-
-msgid "Unable to open raster file"
-msgstr "Raszterfájl megnyitása nem lehetséges"
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr "Nem nyomtatható ki %d szövegoszlop."
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr "Nem nyomtatható ki %dx%d szövegoldal."
-
-msgid "Unable to print test page:"
-msgstr "Nem nyomtatható tesztoldal:"
-
-msgid "Unable to read print data"
-msgstr "Nem olvashatók a nyomtatási adatok"
-
-msgid "Unable to read print data."
-msgstr "Nem olvashatók a nyomtatási adatok."
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr "A(z) „%s†nem futtatható: %s"
-
-msgid "Unable to see in file"
-msgstr "A fájl nem olvasható"
-
-msgid "Unable to send command to printer driver"
-msgstr "Nem küldhető parancs a nyomtató-illesztőprogramnak"
-
-msgid "Unable to send data to printer."
-msgstr "Az adatok nem küldhetők el a nyomtatóra."
-
-msgid "Unable to send raster data to the driver."
-msgstr "A raszteradatok nem küldhetők el az illesztőprogramnak."
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr "A Windows illesztőprogram nem állítható be (%d)."
-
-msgid "Unable to set options:"
-msgstr "Nem adhatók meg a beállítások:"
-
-msgid "Unable to set server default:"
-msgstr "Nem állítható be a kiszolgáló alapértelmezése:"
-
-msgid "Unable to start backend process."
-msgstr "Nem indítható a háttérfolyamat."
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "A cupsd.conf fájl nem tölthető fel:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr "Nem használható az örökölt USB osztály-illesztőprogram."
-
-msgid "Unable to write print data"
-msgstr "Nem írhatók a nyomtatási adatok"
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr "Nem írhatók a tömörítetlen nyomtatási adatok: %s"
-
-msgid "Unauthorized"
-msgstr "Nem jogosult"
-
-msgid "Units"
-msgstr "Mértékegységek"
-
-msgid "Unknown"
-msgstr "Ismeretlen"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr "Ismeretlen lehetÅ‘ség („%sâ€) a(z) „%s†beállításhoz."
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr "Ismeretlen titkosításibeállítás-érték: „%sâ€."
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr "Ismeretlen fájlsorrend: „%sâ€."
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr "Ismeretlen formázókarakter: „%câ€."
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr "Ismeretlen kapcsoló („%sâ€) „%s†értékkel."
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr "Ismeretlen kapcsoló: „%sâ€."
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr "Ismeretlen nyomtatási mód: „%sâ€."
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Ismeretlen printer-error-policy: „%sâ€."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Ismeretlen printer-op-policy: „%sâ€."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr "Ismeretlen verzióbeállítás-érték: „%sâ€."
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr "Nem támogatott átviteli sebesség: %s"
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr "Nem támogatott fényerőérték (%s), fényerő=100 használata."
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr "Nem támogatott karakterkészlet: „%sâ€."
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr "Nem támogatott tömörítés: „%sâ€."
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr "Nem támogatott document-format: „%sâ€."
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr "Nem támogatott document-format: „%s/%sâ€."
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr "Nem támogatott formátum: „%sâ€."
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr "Nem támogatott gamma érték (%s), gamma=1000 használata."
-
-msgid "Unsupported margins."
-msgstr "Nem támogatott margók."
-
-msgid "Unsupported media value."
-msgstr "Nem támogatott médiaérték."
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr "Nem támogatott number-up érték (%d), number-up=1 használata."
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-"Nem támogatott number-up-layout érték (%s), number-up-layout=lrtb használata."
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr "Nem támogatott page-border érték (%s), page-border=none használata."
-
-msgid "Unsupported raster data."
-msgstr "Nem támogatott raszteradatok."
-
-msgid "Unsupported value type"
-msgstr "Nem támogatott értéktípus"
-
-msgid "Upgrade Required"
-msgstr "Frissítés szükséges"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-"Használat:\n"
-"\n"
-" lpadmin [-h kiszolgáló] -d cél\n"
-" lpadmin [-h kiszolgáló] -x cél\n"
-" lpadmin [-h kiszolgáló] -p nyomtató [-c hozzáadandó-osztály] [-i "
-"csatoló]\n"
-" [-m modell] [-r eltávolítandó-osztály] [-v "
-"eszköz]\n"
-" [-D leírás] [-P ppd-fájl] [-o név=érték]\n"
-" [-u allow:felhasználó,felhasználó] [-u deny:"
-"felhasználó,felhasználó]"
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr "Használat: %s feladat felhasználó cím példányok kapcsolók [fájlnév]"
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-"Használat: %s feladatazonosító felhasználó cím példányok kapcsolók [fájl]"
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-"Használat: %s feladatazonosító felhasználó cím példányok kapcsolók fájl"
-
-msgid "Usage: convert [ options ]"
-msgstr "Használat: convert [ kapcsolók ]"
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr "Használat: cupsaddsmb [kapcsolók] nyomtató1 ... nyomtatóN"
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr "Használat: cupsctl [kapcsolók] [param=érték ... paramN=értékN]"
-
-msgid "Usage: cupsd [options]"
-msgstr "Használat: cupsd [kapcsolók]"
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr "Használat: cupsfilter [ kapcsolók ] fájlnév"
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr "Használat: cupstestdsc [kapcsolók] fájlnév.ps [... fájlnév.ps]"
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-"Használat: cupstestppd [kapcsolók] fájlnév1.ppd[.gz] [... fájlnévN.ppd[.gz]]"
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr "Használat: ipptool [kapcsolók] URI fájlnév [ ... fájlnévN ]"
-
-msgid "Usage: lpmove job/src dest"
-msgstr "Használat: lpmove feladat/forrás cél"
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-"Használat: lpoptions [-h kiszolgáló] [-E] -d nyomtató\n"
-" lpoptions [-h kiszolgáló] [-E] [-p nyomtató] -l\n"
-" lpoptions [-h kiszolgáló] [-E] -p nyomtató -o kapcsoló[=érték] …\n"
-" lpoptions [-h kiszolgáló] [-E] -x nyomtató"
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr "Használat: lppasswd [-g csoportnév]"
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-"Használat: lppasswd [-g csoportnév] [felhasználónév]\n"
-" lppasswd [-g csoportnév] -a [felhasználónév]\n"
-" lppasswd [-g csoportnév] -x [felhasználónév]"
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-"Használat: lpq [-P cél] [-U felhasználónév] [-h gépnév[:port]] [-l] [+időköz]"
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr "Használat: ppdc [kapcsolók] fájlnév.drv [ ... fájlnévN.drv ]"
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr "Használat: ppdhtml [kapcsolók] fájlnév.drv > fájlnév.html"
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr "Használat: ppdi [kapcsolók] fájlnév.ppd [ ... fájlnévN.ppd ]"
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr "Használat: ppdmerge [kapcsolók] fájlnév.ppd [ ... fájlnévN.ppd ]"
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-"Használat: ppdpo [kapcsolók] -o fájlnév.po fájlnév.drv [ ... fájlnévN.drv ]"
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr "Használat: snmp [gép-vagy-ip-cím]"
-
-msgid "Value uses indefinite length"
-msgstr "Az érték végtelen hosszt használ"
-
-msgid "VarBind uses indefinite length"
-msgstr "A VarBind végtelen hosszt használ"
-
-msgid "Version uses indefinite length"
-msgstr "A verzió végtelen hosszt használ"
-
-msgid "Waiting for job to complete."
-msgstr "Várakozás a feladat befejeződésére."
-
-msgid "Waiting for printer to become available."
-msgstr "Várakozás a nyomtató elérhetővé válására."
-
-msgid "Waiting for printer to finish."
-msgstr "Várakozás a nyomtatás befejezésére."
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-"Figyelmeztetés, nincsenek telepítve Windows 2000 nyomtató-illesztőprogramok."
-
-msgid "Web Interface is Disabled"
-msgstr "A webes felület letiltva"
-
-msgid "Yes"
-msgstr "Igen"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Ezt az oldalt a következő URL használatával érje el: <A HREF=\"https://%s:%d%"
-"s\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-"Jelszavának legalább 6 karakter hosszúságúnak kell lennie, nem "
-"tartalmazhatja ą felhasználónevét, és legalább egy betűt és számot kell "
-"tartalmaznia."
-
-msgid "ZPL Label Printer"
-msgstr "ZPL címkenyomtató"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "megszakítva"
-
-msgid "canceled"
-msgstr "megszakítva"
-
-msgid "completed"
-msgstr "végrehajtva"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr "convert: Használja a -f kapcsolót az átalakítandó fájl megadásához."
-
-msgid "cups-deviced failed to execute."
-msgstr "A cups-deviced végrehajtása sikertelen."
-
-msgid "cups-driverd failed to execute."
-msgstr "A cups-driverd végrehajtása sikertelen."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr "cupsaddsmb: Nincs PPD-fájl a(z) „%s†nyomtatóhoz - %s"
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr "cupsctl: A Listen vagy Port nem állítható be közvetlenül."
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr "cupsctl: Nem lehet a kiszolgálóhoz csatlakozni: %s"
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr "cupsctl: Ismeretlen kapcsoló: „%sâ€"
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr "cupsctl: Ismeretlen kapcsoló: „-%câ€"
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr "cupsd: A „-c†kapcsoló után konfigurációs fájl nevének kellene állnia."
-
-msgid "cupsd: Unable to get current directory."
-msgstr "cupsd: Az aktuális könyvtár nem kérhető le."
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr "cupsd: Ismeretlen argumentum: „%s†- megszakítás."
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr "cupsd: Ismeretlen kapcsoló: „%c†- megszakítás."
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-"cupsd: A launchd(8) támogatása nincs befordítva, futtatás normál módban."
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr "cupsfilter: Érvénytelen dokumentumszám: %d."
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr "cupsfilter: Érvénytelen feladatazonosító: %d."
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr "cupsfilter: Csak egy fájlnév adható meg."
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr "cupsfilter: A feladatfájl nem kérhető le - %s"
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr "cupstestppd: A -q kapcsoló nem kompatibilis a -v kapcsolóval."
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr "cupstestppd: A -v kapcsoló nem kompatibilis a -q kapcsolóval."
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr "eszköz ehhez: %s/%s: %s"
-
-#, c-format
-msgid "device for %s: %s"
-msgstr "eszköz ehhez: %s: %s"
-
-msgid "error-index uses indefinite length"
-msgstr "az error-index végtelen hosszot használ"
-
-msgid "error-status uses indefinite length"
-msgstr "az error-status végtelen hosszot használ"
-
-msgid "held"
-msgstr "felfüggesztve"
-
-msgid "help\t\tGet help on commands."
-msgstr "help\t\tSúgó a parancsokhoz."
-
-msgid "idle"
-msgstr "tétlenség"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr "ipptool: a „-i†és „-n†nem kompatibilisek a „-X†kapcsolóval."
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr "ipptool: a „-i†nem kompatibilis a „-X†kapcsolóval."
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr "ipptool: a „-n†nem kompatibilis a „-X†kapcsolóval."
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr "ipptool: Hibás URI - %s."
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr "ipptool: Hibás verzió (%s) a „-V†kapcsolóhoz."
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr "ipptool: Érvénytelen másodpercek a „-i†kapcsolóhoz."
-
-msgid "ipptool: May only specify a single URI."
-msgstr "ipptool: Csak egy URI adható meg."
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr "ipptool: Hiányzó szám a „-n†kapcsolóhoz."
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr "ipptool: Hiányzó fájlnév a „-f†kapcsolóhoz."
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr "ipptool: Hiányzó név=érték pár a „-d†kapcsolóhoz."
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr "ipptool: Hiányzó másodpercek a „-i†kapcsolóhoz."
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr "ipptool: Hiányzó időkorlát a „-T†kapcsolóhoz."
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr "ipptool: Hiányzó verzió a „-V†kapcsolóhoz."
-
-msgid "ipptool: URI required before test file."
-msgstr "ipptool: URI szükséges a tesztfájl előtt."
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr "ipptool: Ismeretlen kapcsoló: „-%câ€."
-
-msgid "job-printer-uri attribute missing."
-msgstr "A job-printer-uri attribútum hiányzik."
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr "lpadmin: Az osztálynév csak nyomtatható karaktereket tartalmazhat."
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr "lpadmin: A „-P†kapcsoló után PPD-nek kellene állnia."
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-"lpadmin: A „-u†kapcsoló után allow/deny:felhasználólistának kellene állnia."
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr "lpadmin: A „-r†kapcsoló után osztálynak kellene állnia."
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr "lpadmin: A „-c†kapcsoló után osztálynévnek kellene állnia."
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr "lpadmin: A „-D†kapcsoló után leírásnak kellene állnia."
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr "lpadmin: A „-v†kapcsoló után eszköz URI-címnek kellene állnia."
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr "lpadmin: A „-I†kapcsoló után fájltípusnak kellene állnia."
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr "lpadmin: A „-h†kapcsoló után gépnévnek kellene állnia."
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr "lpadmin: A „-i†kapcsoló után felületnek kellene állnia."
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr "lpadmin: A „-L†kapcsoló után helynek kellene állnia."
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr "lpadmin: A „-m†kapcsoló után modellnek kellene állnia."
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr "lpadmin: A „-h†kapcsoló után gépnévnek kellene állnia."
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr "lpadmin: A „-o†kapcsoló után név=érték párnak kellene állnia."
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr "lpadmin: A „-p†kapcsoló után nyomtatónak kellene állnia."
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr "lpadmin: A „-d†kapcsoló után nyomtatónévnek kellene állnia."
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-"lpadmin: A „-x†kapcsoló után nyomtatónak vagy osztálynak kellene állnia."
-
-msgid "lpadmin: No member names were seen."
-msgstr "lpadmin: Nem voltak megadva tagnevek."
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr "lpadmin: A(z) %s nyomtató már tagja a(z) %s osztálynak."
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr "lpadmin: A(z) %s nyomtató nem tagja a(z) %s osztálynak."
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr "lpadmin: A nyomtatónév csak nyomtatható karaktereket tartalmazhat."
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-"lpadmin: Nem adható a nyomtató az osztályhoz:\n"
-" Előbb meg kell adnia egy nyomtatónevet."
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr "lpadmin: Nem lehet a kiszolgálóhoz csatlakozni: %s"
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr "lpadmin: Az átmeneti fájl létrehozása nem lehetséges"
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-"lpadmin: Nem törölhető a beállítás:\n"
-" Előbb meg kell adnia egy nyomtatónevet."
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr "lpadmin: A(z) „%s†PPD-fájl nem nyitható meg - %s"
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-"lpadmin: Nem távolítható el a nyomtató az osztályból:\n"
-" Előbb meg kell adnia egy nyomtatónevet."
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-"lpadmin: Nem adhatók meg a nyomtatóbeállítások:\n"
-" Előbb meg kell adnia egy nyomtatónevet."
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr "lpadmin: Ismeretlen allow/deny kapcsoló: „%sâ€."
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr "lpadmin: Ismeretlen argumentum: „%sâ€."
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr "lpadmin: Ismeretlen kapcsoló: „%câ€."
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr "lpadmin: Figyelmeztetés - a tartalomtípus-lista mellőzve."
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-"lpinfo: A „--device-id†kapcsoló után 1284-es eszközazonosítónak kellene "
-"állnia."
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr "lpinfo: A „--language†kapcsoló után nyelvnek kellene állnia."
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-"lpinfo: A „--make-and-model†kapcsoló után gyártónak és modellnek kellene "
-"állnia."
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-"lpinfo: A „--product†kapcsoló után termék karakterláncnak kellene állnia."
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-"lpinfo: A „--exclude-schemes†kapcsoló után sémalistának kellene állnia."
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-"lpinfo: A „--include-schemes†kapcsoló után sémalistának kellene állnia."
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr "lpinfo: A „--timeout†kapcsoló után időkorlátnak kellene állnia."
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr "lpinfo: Ismeretlen argumentum: „%sâ€."
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr "lpinfo: Ismeretlen kapcsoló: „%câ€."
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr "lpinfo: Ismeretlen kapcsoló: „%sâ€."
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr "lpmove: Nem lehet a kiszolgálóhoz csatlakozni: %s"
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr "lpmove: Ismeretlen argumentum: „%sâ€."
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr "lpmove: Ismeretlen kapcsoló: „%câ€."
-
-msgid "lpoptions: No printers."
-msgstr "lpoptions: Nincsenek nyomtatók."
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr "lpoptions: Nem vehető fel a nyomtató vagy példány: %s"
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr "lpoptions: Nem kérhető le PPD-fájl ehhez: %s: %s"
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr "lpoptions: Nem nyitható meg PPD-fájl ehhez: %s."
-
-msgid "lpoptions: Unknown printer or class."
-msgstr "lpoptions: Ismeretlen nyomtató vagy osztály."
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr "lppasswd: Csak a root vehet fel vagy törölhet jelszavakat."
-
-msgid "lppasswd: Password file busy."
-msgstr "lppasswd: A jelszófájl foglalt."
-
-msgid "lppasswd: Password file not updated."
-msgstr "lppasswd: A jelszófájl nem lett frissítve."
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr "lppasswd: Elnézést, a jelszó nem egyezik."
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr "lppasswd: Elnézést, a jelszó visszautasítva."
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr "lppasswd: Elnézést, a jelszavak nem egyeznek."
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr "lppasswd: A jelszókarakterlánc nem másolható: %s"
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr "lppasswd: A jelszófájl nem nyitható meg: %s"
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr "lppasswd: A jelszófájlba nem lehet írni: %s"
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr "lppasswd: a régi jelszófájl mentése sikertelen: %s"
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr "lppasswd: a jelszófájl átnevezése sikertelen: %s"
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr "lppasswd: a(z) „%s†felhasználó és „%s†csoport nem létezik."
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-"lpstat: hiba - a(z) %s környezeti változó nem létezÅ‘ célt („%sâ€) nevez meg."
-
-#, c-format
-msgid "members of class %s:"
-msgstr "%s osztály tagjai:"
-
-msgid "no entries"
-msgstr "nincsenek bejegyzések"
-
-msgid "no system default destination"
-msgstr "nincs rendszerszintű alapértelmezett cél"
-
-msgid "notify-events not specified."
-msgstr "A notify-events nincs megadva."
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr "A(z) „%s†notify-recipient-uri URI már használatban van."
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr "A(z) „%s†notify-recipient-uri URI ismeretlen sémát használ."
-
-msgid "pending"
-msgstr "függőben"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr "ppdc: „%s†include-könyvtár hozzáadása."
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr "ppdc: Felületszöveg hozzáadása/frissítése innen: %s."
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr "ppdc: Hibás logikai érték (%s) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr "ppdc: Hibás betűkészlet attribútum: %s"
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr "ppdc: Hibás felbontásnév („%sâ€) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr "ppdc: Hibás állapotkulcsszó (%s) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr "ppdc: Hibás változóhelyettesítés ($%c) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr "ppdc: A(z) %d. sorban található lehetőséghez nincs Option ebben: %s."
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-"ppdc: Többszörös #po a(z) %s területi beállításhoz a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr "ppdc: Szűrődefiníciónak kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr "ppdc: Programnévnek kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr "ppdc: Logikai értéknek kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-"ppdc: Karakterkészletnek kellene a Font után állnia a(z) %d. sorban ebben: %"
-"s."
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr "ppdc: Lehetőségkódnak kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-"ppdc: Lehetőségnévnek/szövegnek kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-"ppdc: Színsorrendnek kellene a(z) %d. sorban állnia a ColorModelhez ebben: %"
-"s."
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-"ppdc: Színtérnek kellene a(z) %d. sorban állnia a ColorModelhez ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-"ppdc: Tömörítésnek kellene a(z) %d. sorban állnia a ColorModelhez ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-"ppdc: Megszorítás-karakterláncnak kellene a(z) %d. sorban állnia a "
-"UIConstraintshoz ebben: %s."
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-"ppdc: Illesztőprogram-típusnak kellene a(z) %d. sorban állnia a DriverType "
-"után ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-"ppdc: Duplex típusnak kellene a Duplex után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr "ppdc: Kódolásnak kellene a Font után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-"ppdc: Fájlnévnek kellene a #po %s után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-"ppdc: Csoportnévnek/szövegnek kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr "ppdc: include fájlnévnek kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr "ppdc: Egésznek kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-"ppdc: Területi beállításnak kellene a #po után állnia a(z) %d. sorban ebben: "
-"%s."
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr "ppdc: Névnek kellene a(z) %s után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr "ppdc: Névnek kellene a FileName után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr "ppdc: Névnek kellene a Font után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-"ppdc: Névnek kellene a Manufacturer után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-"ppdc: Névnek kellene a MediaSize után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-"ppdc: Névnek kellene a ModelName után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-"ppdc: Névnek kellene a PCFileName után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-"ppdc: Névnek/szövegnek kellene a(z) %s után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-"ppdc: Névnek/szövegnek kellene az Installable után állnia a(z) %d. sorban "
-"ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-"ppdc: Névnek/szövegnek kellene a Resolution után állnia a(z) %d. sorban "
-"ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-"ppdc: Név/szöveg kombinációnak kellene a(z) %d. sorban állnia a "
-"ColorModelhez ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-"ppdc: Beállításnévnek/szövegnek kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr "ppdc: Beállításszakasznak kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr "ppdc: Beállítástípusnak kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-"ppdc: Felülbírálási mezőnek kellene a Resolution után állnia a(z) %d. sorban "
-"ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-"ppdc: Idézett karakterláncnak kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr "ppdc: Valós számnak kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-"ppdc: Felbontásnak/médiatípusnak kellene a(z) %d. sorban állnia a "
-"ColorProfile után ebben: %s."
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-"ppdc: Felbontásnak/médiatípusnak kellene a(z) %d. sorban állnia a "
-"SimpleColorProfile után ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-"ppdc: Választónak kellene a(z) %s után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr "ppdc: Ãllapotnak kellene a Font után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-"ppdc: Karakterláncnak kellene a Copyright után állnia a(z) %d. sorban ebben: "
-"%s."
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-"ppdc: Karakterláncnak kellene a Version után állnia a(z) %d. sorban ebben: %"
-"s."
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr "ppdc: Két beállításnévnek kellene a(z) %d. sorban állnia ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr "ppdc: Értéknek kellene a(z) %s után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr "ppdc: Verziónak kellene a Font után állnia a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr "ppdc: Érvénytelen #include/#po fájlnév: „%sâ€."
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr "ppdc: Érvénytelen költség a szűrőhöz a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-"ppdc: Érvénytelen üres MIME-típus a szűrőhöz a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-"ppdc: Érvénytelen üres programnév a szűrőhöz a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr "ppdc: Érvénytelen beállításszakasz („%sâ€) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr "ppdc: Érvénytelen beállítástípus („%sâ€) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr "ppdc: IllesztÅ‘program-információs fájl betöltése: „%sâ€."
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr "ppdc: Üzenetek betöltése a területi beállításhoz: „%sâ€."
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr "ppdc: Üzenetek betöltése ebbÅ‘l: „%sâ€."
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr "ppdc: Hiányzó #endif a(z) „%s†végén."
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr "ppdc: Hiányzó #if a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-"ppdc: Egy msgid sor szükséges a fordítások előtt a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr "ppdc: Nincs üzenetkatalógus a(z) %s területi beállításhoz."
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-"ppdc: A(z) %s beállítás két különböző csoportban van definiálva a(z) %d. "
-"sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-"ppdc: A(z) %s beállítás másik típussal újra van definiálva a(z) %d. sorban "
-"ebben: %s."
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-"ppdc: A megszorítás beállításnak *name elemet kell használnia a(z) %d. "
-"sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr "ppdc: Túl sok beágyazott #if a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr "ppdc: A(z) „%s†PPD-fájl nem hozható létre - %s."
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr "ppdc: Nem hozható létre a kimeneti %s könyvtár: %s"
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr "ppdc: Nem hozhatók létre a kimeneti csövek: %s"
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr "ppdc: Nem hajtható végre a cupstestppd: %s"
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr "ppdc: Nem található a(z) %s #po fájl a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr "ppdc: Nem található a(z) „%s†include fájl a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr "ppdc: Nem található lokalizáció ehhez: „%s†- %s"
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr "ppdc: Nem tölthető be a(z) „%s†lokalizációs fájl - %s"
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr "ppdc: A(z) %s nem nyitható meg: %s"
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr "ppdc: Nem definiált változó (%s) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr "ppdc: Váratlan szöveg a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr "ppdc: Ismeretlen illesztőprogram-típus (%s) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr "ppdc: Ismeretlen duplex típus („%sâ€) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr "ppdc: Ismeretlen médiaméret („%sâ€) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr "ppdc: Ismeretlen üzenetkatalógus-formátum ehhez: „%sâ€."
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr "ppdc: Ismeretlen jelsor („%sâ€) a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-"ppdc: Ismeretlen záró karakterek a(z) „%s†valós számban a(z) %d. sorban "
-"ebben: %s."
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-"ppdc: Befejezetlen karakterlánc %c kezdettel a(z) %d. sorban ebben: %s."
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr "ppdc: Figyelmeztetés - átfedÅ‘ fájlnév: „%sâ€."
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr "ppdc: %s írása."
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr "ppdc: PPD-fájlok írása ebbe a könyvtárba: „%sâ€."
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr "ppdmerge: Hibás LanguageVersion („%sâ€) ebben: %s."
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr "ppdmerge: A(z) %s PPD-fájl mellőzése."
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr "ppdmerge: %s nem menthető ide: %s - %s"
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr "a(z) %s nyomtató letiltva ez óta: %s -"
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr "a(z) %s nyomtató tétlen. engedélyezve ez óta: %s"
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr "a(z) %s nyomtató nyomtat: %s-%d. engedélyezve ez óta: %s"
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr "a(z) %s/%s nyomtató letiltva ez óta: %s -"
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr "a(z) %s/%s nyomtató tétlen. engedélyezve ez óta: %s"
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr "a(z) %s/%s nyomtató nyomtat: %s-%d. engedélyezve ez óta: %s"
-
-msgid "processing"
-msgstr "feldolgozás"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr "kérésazonosító: %s-%d (%d fájl)"
-
-msgid "request-id uses indefinite length"
-msgstr "A request-id végtelen hosszt használ"
-
-msgid "scheduler is not running"
-msgstr "az ütemező nem fut"
-
-msgid "scheduler is running"
-msgstr "az ütemező fut"
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "%s elérése sikertelen: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr "status\t\tA démon és a sor állapotának megjelenítése."
-
-msgid "stopped"
-msgstr "megállítva"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr "rendszer alapértelmezett célja: %s"
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr "rendszer alapértelmezett célja: %s/%s"
-
-msgid "unknown"
-msgstr "ismeretlen"
-
-msgid "untitled"
-msgstr "névtelen"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "A variable-bindings végtelen hosszt használ"
-
-#~ msgid "-I Ignore errors."
-#~ msgstr "-I Hibák figyelmen kívül hagyása."
-
-#~ msgid "-q Run silently."
-#~ msgstr "-q Csendes futás."
-
-#~ msgid "B5 JIS"
-#~ msgstr "B5 JIS"
-
-#~ msgid "JB0"
-#~ msgstr "JB0"
-
-#~ msgid "JB1"
-#~ msgstr "JB1"
-
-#~ msgid "JB10"
-#~ msgstr "JB10"
-
-#~ msgid "JB2"
-#~ msgstr "JB2"
-
-#~ msgid "JB3"
-#~ msgstr "JB3"
-
-#~ msgid "JB4"
-#~ msgstr "JB4"
-
-#~ msgid "JB6"
-#~ msgstr "JB6"
-
-#~ msgid "JB7"
-#~ msgstr "JB7"
-
-#~ msgid "JB8"
-#~ msgstr "JB8"
-
-#~ msgid "JB9"
-#~ msgstr "JB9"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Network host \\\"%s\\\" is busy; will retry in %d seconds."
-#~ msgstr ""
-#~ "A(z) „%s†hálózati kiszolgáló elfoglalt, %d másodperc múlva "
-#~ "újrapróbálkozom."
-
-#~ msgid "Network printer \\\"%s\\\" is busy."
-#~ msgstr "A(z) „%s†hálózati nyomtató elfoglalt."
-
-#~ msgid "Network printer \\\"%s\\\" is not responding."
-#~ msgstr "A(z) „%s†hálózati nyomtató nem válaszol."
-
-#~ msgid "Printer busy; will retry in 10 seconds."
-#~ msgstr "Nyomtató elfoglalt; 10 másodperc múlva újrapróbálkozom."
-
-#~ msgid "Printer did not respond after %d seconds."
-#~ msgstr "A nyomtató nem válaszolt %d másodperc után."
-
-#~ msgid "The printer is almost out of ink."
-#~ msgstr "A nyomtatóból majdnem kifogyott a tinta."
-
-#~ msgid "The printer is low on toner."
-#~ msgstr "A nyomtatóban kifogyóban van a festékkazetta."
-
-#~ msgid "The printer is out of toner."
-#~ msgstr "A nyomtató festékkazettája kifogyott."
-
-#~ msgid "This printer does not conform to the IPP standard and may not work."
-#~ msgstr ""
-#~ "Ez a nyomtató nem felel meg az IPP szabványnak, és lehet, hogy nem fog "
-#~ "működni."
-
-#~ msgid ""
-#~ "This printer does not conform to the IPP standard. Please contact the "
-#~ "manufacturer of your printer for assistance."
-#~ msgstr ""
-#~ "Ez a nyomtató nem felel meg az IPP szabványnak. Segítségért keresse meg a "
-#~ "nyomtató gyártóját."
-
-#~ msgid "Unable to add file to job: %s"
-#~ msgstr "Nem vehető fel a fájl a feladatba: %s"
-
-#~ msgid "Unable to connect to server"
-#~ msgstr "A kiszolgálóhoz nem lehet kapcsolódni."
-
-#~ msgid "Unable to get job attributes: %s"
-#~ msgstr "Nem kérhetők le a feladat attribútumai: %s"
-
-#~ msgid "Unable to get print job status."
-#~ msgstr "Nem kérhető le a nyomtatási feladat állapota."
-
-#~ msgid "Unable to get printer status: %s"
-#~ msgstr "Nem kérhető le a nyomtató állapota: %s"
-
-#~ msgid "\\t%s"
-#~ msgstr "\\t%s"
-
-#~ msgid "\\tno entries"
-#~ msgstr "\\tnincs bejegyzés"
diff --git a/locale/cups_id.po b/locale/cups_id.po
deleted file mode 100644
index 3f5671c5..00000000
--- a/locale/cups_id.po
+++ /dev/null
@@ -1,8556 +0,0 @@
-# translation of cups_id.po to Bahasa Indonesia
-#
-# "$Id$"
-#
-# Message catalog template for CUPS.
-#
-# Copyright 2007-2011 by Apple Inc.
-# Copyright 2005-2007 by Easy Software Products.
-#
-# These coded instructions, statements, and computer programs are the
-# property of Apple Inc. and are protected by Federal copyright
-# law. Distribution and use rights are outlined in the file "LICENSE.txt"
-# which should have been included with this file. If this file is
-# file is missing or damaged, see the license at "http://www.cups.org/".
-#
-# Citra Paska <dirgitadevina@yahoo.co.id>, 2008, 2009.
-#
-# Notes for Translators:
-#
-# The following prefixes MUST NOT be translated: "ALERT:", "CRIT:", "INFO:",
-# "NOTICE:", and "WARNING:".
-#
-# The "checkpo" program located in the "locale" source directory can be used
-# to verify that your translations do not introduce formatting errors or other
-# problems. Run with:
-#
-# cd locale
-# ./checkpo cups_LL.po
-#
-# where "LL" is your locale.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: cups_id\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-09-29 05:17+0700\n"
-"Last-Translator: Citra Paska <dirgitadevina@yahoo.co.id>\n"
-"Language-Team: Bahasa Indonesia\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-"X-Generator: KBabel 1.11.4\n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f milimeter"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f hingga %.0f x %.0f milimeter"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f inci"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f hingga %.2f x %.2f inci"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s tidak bisa diubah."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 inci/det."
-
-msgid "1.25x0.25\""
-msgstr "1,25x0,25\""
-
-msgid "1.25x2.25\""
-msgstr "1,25x2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 inci/det."
-
-msgid "1.50x0.25\""
-msgstr "1,50x0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50x0,50\""
-
-msgid "1.50x1.00\""
-msgstr "1,50x1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50x2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 inci/det."
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/det."
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 inci/det."
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 inci/det."
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/det."
-
-msgid "120x60dpi"
-msgstr "120x60dpi"
-
-msgid "120x72dpi"
-msgstr "120x72dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/det."
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/det."
-
-msgid "150dpi"
-msgstr "150dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 inci/det."
-
-msgid "2-Sided Printing"
-msgstr "2-Sisi Pencetakan"
-
-msgid "2.00x0.37\""
-msgstr "2,00x0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00x0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00x1.00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00x1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00x2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00x3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00x4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00x5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25x0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25x1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25x4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25x5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38x5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 inci/det."
-
-msgid "2.50x1.00\""
-msgstr "2,50x1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50x2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75x1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/det."
-
-msgid "200 mm/sec."
-msgstr "200 mm/det."
-
-msgid "203dpi"
-msgstr "203dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "Seri 24-Pin"
-
-msgid "240x72dpi"
-msgstr "240x72dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/det."
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 inci/det."
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00x1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00x1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00x2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00x3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00x5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25x2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25x5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25x5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25x5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25x7,83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "Diska 3,5\""
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "Diska 3.5\" - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50x1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/det."
-
-msgid "300 mm/sec."
-msgstr "300 mm/det."
-
-msgid "300dpi"
-msgstr "300dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360dpi"
-
-msgid "360x180dpi"
-msgstr "360x180dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 inci/det."
-
-msgid "4.00x1.00\""
-msgstr "4,00x1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00x13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00x2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00x2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00x3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00x4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00x5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00x6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00x6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/det."
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 inci/det."
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 inci/det."
-
-msgid "6.00x1.00\""
-msgstr "6,00x1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00x2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00x3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00x4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00x5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00x6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00x6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/det."
-
-msgid "600dpi"
-msgstr "600dpi"
-
-msgid "60dpi"
-msgstr "60dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 inci/det."
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 inci/det."
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00x1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00x2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00x3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00x4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00x5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00x6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00x6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/det."
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 inci/det."
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "Seri 9-Pin"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Terima Tugas"
-
-msgid "Accepted"
-msgstr "Diterima"
-
-msgid "Add Class"
-msgstr "Tambah Kelas"
-
-msgid "Add Printer"
-msgstr "Tambah Pencetak"
-
-msgid "Add RSS Subscription"
-msgstr "Tambah Subskripsi RSS"
-
-msgid "Address"
-msgstr "Alamat"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Alamat - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Administrasi"
-
-msgid "Always"
-msgstr "Selalu"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Aplikator"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr ""
-
-msgid "Bad OpenGroup"
-msgstr "OpenGroup Jelek"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "OpenUI/JCLOpenUI Jelek"
-
-msgid "Bad OrderDependency"
-msgstr "OrderDependency Jelek"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Permintaan Jelek"
-
-msgid "Bad SNMP version number"
-msgstr "Nomor versi SNMP jelek"
-
-msgid "Bad UIConstraints"
-msgstr "UIConstraints Jelek"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Nilai rangkap %d jelek."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Parameter ubahan jelek"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Nilai number-up %d jelek."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Nilai page-ranges %d-%d jelek."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Pataka"
-
-msgid "Billing Information: "
-msgstr "Informasi Tagihan: "
-
-msgid "Bond Paper"
-msgstr "Kertas Surat"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr ""
-
-msgid "Cancel RSS Subscription"
-msgstr "Batal Subskripsi RSS"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Ubah Pengaturan"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Kelas"
-
-msgid "Clean Print Heads"
-msgstr "Bersihkan Kepala Pencetak"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Warna"
-
-msgid "Color Mode"
-msgstr "Modus Warna"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Nama komunitas memiliki panjang tak terdefinisi"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Lanjut"
-
-msgid "Continuous"
-msgstr "Terus-menerus"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Dibuat"
-
-msgid "Created On: "
-msgstr "Dibuat Pada: "
-
-msgid "Custom"
-msgstr "Ubahan"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Potong"
-
-msgid "Cutter"
-msgstr "Pemotong"
-
-msgid "Dark"
-msgstr "Gelap"
-
-msgid "Darkness"
-msgstr "Gelap"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Hapus Kelas"
-
-msgid "Delete Printer"
-msgstr "Hapus Pencetak"
-
-msgid "Description: "
-msgstr "Deskripsi: "
-
-msgid "DeskJet Series"
-msgstr "Seri Deskjet"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "Tujuan \"%s\" bukanlah tugas yang diterima."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Media Termal Langsung"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Dinonaktifkan"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Nama Penggerak: "
-
-msgid "Driver Version: "
-msgstr "Versi Penggerak: "
-
-msgid "Duplexer"
-msgstr "Pendupleks"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1 Pencetak Label"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2 Pencetak Label"
-
-msgid "Edit Configuration File"
-msgstr "Sunting Berkas Konfigurasi"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Akhir Pataka"
-
-msgid "English"
-msgstr "Indonesian"
-
-msgid "Enter old password:"
-msgstr "Masukkan sandi lama:"
-
-msgid "Enter password again:"
-msgstr "Masukkan lagi sandinya:"
-
-msgid "Enter password:"
-msgstr "Masukkan sandi:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Masukkan nama pengguna dan sandi Anda atau nama pengguna dan sandi root "
-"untuk mengakses halaman ini. Apabila Anda menggunakan otentikasi Kerberos, "
-"pastikan bahwa Anda memiliki tiket Kerberos yang sah."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Amplop Feed"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Polis Kesalahan"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Tiap 10 Label"
-
-msgid "Every 2 Labels"
-msgstr "Tiap 2 Label"
-
-msgid "Every 3 Labels"
-msgstr "Tiap 3 Label"
-
-msgid "Every 4 Labels"
-msgstr "Tiap 4 Label"
-
-msgid "Every 5 Labels"
-msgstr "Tiap 5 Label"
-
-msgid "Every 6 Labels"
-msgstr "Tiap 6 Label"
-
-msgid "Every 7 Labels"
-msgstr "Tiap 7 Label"
-
-msgid "Every 8 Labels"
-msgstr "Tiap 8 Label"
-
-msgid "Every 9 Labels"
-msgstr "Tiap 9 Label"
-
-msgid "Every Label"
-msgstr "Tiap Label"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr ""
-
-msgid "Export Printers to Samba"
-msgstr "Ekspor Pencetak melalui Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Map"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Map - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Folio"
-
-msgid "Forbidden"
-msgstr "Terlarang"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Umum"
-
-msgid "Generic"
-msgstr "Umum"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU memiliki panjang tak terdefinisi"
-
-msgid "Glossy Paper"
-msgstr "Kertas Glosi"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Skala Abu-abu"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Map Gantung"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Map Gantung - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Karakter kontrol ilegal"
-
-msgid "Illegal main keyword string"
-msgstr "String kata kunci utama ilegal"
-
-msgid "Illegal option keyword string"
-msgstr "String opsi kata kunci ilegal"
-
-msgid "Illegal translation string"
-msgstr "String translasi ilegal"
-
-msgid "Illegal whitespace character"
-msgstr ""
-
-msgid "Installable Options"
-msgstr ""
-
-msgid "Installed"
-msgstr ""
-
-msgid "IntelliBar Label Printer"
-msgstr "Pencetak Label IntelliBar"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr "Kesalahan Internal Server"
-
-msgid "Internal error"
-msgstr "Kesalahan internal"
-
-msgid "Internet Postage 2-Part"
-msgstr "Perangko Internet 2-Bagian"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Perangko Internet 2-Bagian - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Perangko Internet 3-Bagian"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Perangko Internet 3-Bagian - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Protokol Cetak Internet"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "Tugas #%d telah dibatalkan - tidak bisa dibatalkan lagi."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "Tugas #%d sudah dibatalkan - tidak bisa dibatalkan lagi."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "Tugas #%d sudah diselesaikan - tidak bisa dibatalkan."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Tugas Diselesaikan"
-
-msgid "Job Created"
-msgstr "Tugas Dibuat"
-
-msgid "Job ID: "
-msgstr "ID Tugas: "
-
-msgid "Job Options Changed"
-msgstr "Perubahan Opsi Tugas"
-
-msgid "Job Stopped"
-msgstr "Tugas Dihentikan"
-
-msgid "Job UUID: "
-msgstr "UUID Tugas: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "Tugas sudah diselesaikan dan tidak bisa diubah."
-
-msgid "Job operation failed:"
-msgstr "Operasi tugas gagal:"
-
-msgid "Job state cannot be changed."
-msgstr "Status tugas tidak bisa diubah."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Tugas"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "Host atau Pencetak LPD/LPR"
-
-msgid "Label Printer"
-msgstr "Pencetak Label"
-
-msgid "Label Top"
-msgstr "Label Atas"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Alamat Besar"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Alamat Besar - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "Seri LaserJet PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Cahaya"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Baris melebihi panjang yang diperbolehkan (255 karakter)"
-
-msgid "List Available Printers"
-msgstr "Daftar Pencetak yang Tersedia"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Lokasi: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Sisi Panjang (Tegak)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Pembuat dan Model: "
-
-msgid "Manual Feed"
-msgstr ""
-
-msgid "Media Dimensions: "
-msgstr "Dimensi Media: "
-
-msgid "Media Limits: "
-msgstr "Batas Media: "
-
-msgid "Media Name: "
-msgstr "Nama Media: "
-
-msgid "Media Size"
-msgstr "Ukuran Media"
-
-msgid "Media Source"
-msgstr "Sumber Media"
-
-msgid "Media Tracking"
-msgstr ""
-
-msgid "Media Type"
-msgstr "Jenis Media"
-
-msgid "Medium"
-msgstr ""
-
-msgid "Memory allocation error"
-msgstr "Kesalahan alokasi memori"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "Kehilangan tajuk PPD-Adobe-4.x"
-
-msgid "Missing asterisk in column 1"
-msgstr "Kehilangan asterik pada kolom 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Kehilangan string nilai"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Ubah Kelas"
-
-msgid "Modify Printer"
-msgstr "Ubah Pencetak"
-
-msgid "Move All Jobs"
-msgstr "Pindah Semua Tugas"
-
-msgid "Move Job"
-msgstr "Pindah Tugas"
-
-msgid "Moved Permanently"
-msgstr "Dipindahkan Permanen"
-
-msgid "NULL PPD file pointer"
-msgstr ""
-
-msgid "Name OID uses indefinite length"
-msgstr "Nama OID memiliki panjang tak terdefinisi"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Tidak Pernah"
-
-msgid "New Stylus Color Series"
-msgstr "Seri Stylus Color Baru"
-
-msgid "New Stylus Photo Series"
-msgstr "Seri Stylus Photo Baru"
-
-msgid "No"
-msgstr "Tidak"
-
-msgid "No Content"
-msgstr "Tak Ada Isi"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Tidak ada VarBind SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Tidak ada koneksi yang aktif"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Tidak ada nama komunitas"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Tidak ada tujuan yang ditambah."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Tidak ada error-index"
-
-msgid "No error-status"
-msgstr "Tidak ada error-status"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Tidak ada nama OID"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Tidak ada request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Tidak ada subskripsi yang ditemukan."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Tidak ada variable-bindings SEQUENCE"
-
-msgid "No version number"
-msgstr "Tidak ada nomor versi"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Tak bersambungan (Penanda)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Tak bersambungan (Web)"
-
-msgid "Normal"
-msgstr "Normal"
-
-msgid "Not Found"
-msgstr "Tidak Ketemu"
-
-msgid "Not Implemented"
-msgstr "Tidak Diimplementasikan"
-
-msgid "Not Installed"
-msgstr "Tidak Terpasang"
-
-msgid "Not Modified"
-msgstr "Tidak Diubah"
-
-msgid "Not Supported"
-msgstr "Tidak Didukung"
-
-msgid "Not allowed to print."
-msgstr "Tidak diperbolehkan mencetak."
-
-msgid "Note"
-msgstr "Catatan"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "Oke"
-
-msgid "Off (1-Sided)"
-msgstr "Mati (1-Sisi)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Bantuan Langsung"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "Gagal membuka %s: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup tanpa CloseGroup lebih dulu"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI tanpa CloseUI/JCLCloseUI lebih dulu"
-
-msgid "Operation Policy"
-msgstr "Polis Operasi"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Opsi yang Terpasang"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Opsi: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Modus Keluaran"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "Pencetak Laser PCL"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Paket tidak mengandung Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Paket tidak dimulai dengan SEQUENCE"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Sandi untuk %s pada %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "Sandi untuk %s diperlukan untuk mengakses %s via SAMBA: "
-
-msgid "Pause Class"
-msgstr "Tahan Kelas"
-
-msgid "Pause Printer"
-msgstr "Tahan Pencetak"
-
-msgid "Peel-Off"
-msgstr ""
-
-msgid "Photo"
-msgstr "Foto"
-
-msgid "Photo Labels"
-msgstr "Label Foto"
-
-msgid "Plain Paper"
-msgstr "Kertas Biasa"
-
-msgid "Policies"
-msgstr "Kebijakan"
-
-msgid "Port Monitor"
-msgstr "Port Monitor"
-
-msgid "PostScript Printer"
-msgstr "Pencetak PostScript"
-
-msgid "Postcard"
-msgstr "Kartu Pos"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Densitas Cetak"
-
-msgid "Print Job:"
-msgstr "Tugas Cetak:"
-
-msgid "Print Mode"
-msgstr "Modus Cetak"
-
-msgid "Print Rate"
-msgstr ""
-
-msgid "Print Self-Test Page"
-msgstr "Cetak Halaman Uji-Mandiri"
-
-msgid "Print Speed"
-msgstr "Kecepatan Cetak"
-
-msgid "Print Test Page"
-msgstr "Cetak Halaman Uji"
-
-msgid "Print and Cut"
-msgstr "Cetak dan Potong"
-
-msgid "Print and Tear"
-msgstr ""
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Dicetak Untuk: "
-
-msgid "Printed From: "
-msgstr "Dicetak Dari: "
-
-msgid "Printed On: "
-msgstr "Dicetak Pada: "
-
-msgid "Printer Added"
-msgstr "Pencetak Ditambah"
-
-msgid "Printer Default"
-msgstr "Pencetak Utama"
-
-msgid "Printer Deleted"
-msgstr "Pencetak Dihapus"
-
-msgid "Printer Modified"
-msgstr "Pencetak Diubah"
-
-msgid "Printer Name: "
-msgstr "Nama Pencetak: "
-
-msgid "Printer Paused"
-msgstr "Pencetak Ditahan"
-
-msgid "Printer Settings"
-msgstr "Pengaturan Pencetak"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Pencetak:"
-
-msgid "Printers"
-msgstr "Pencetak"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Membersihkan Tugas"
-
-msgid "Quarto"
-msgstr "Kuarto"
-
-msgid "Quota limit reached."
-msgstr "Batas kuota telah dicapai."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Tolak Tugas"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Cetak Ulang Usai Kesalahan"
-
-msgid "Request Entity Too Large"
-msgstr "Entitas Pesanan Terlalu Besar"
-
-msgid "Resolution"
-msgstr "Resolusi"
-
-msgid "Resume Class"
-msgstr ""
-
-msgid "Resume Printer"
-msgstr ""
-
-msgid "Return Address"
-msgstr "Alamat Pengembalian"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Alamat Pengembalian - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Ulang"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE memiliki panjang tak terdefinisi"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Lihat Lainnya"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Port Serial #%d"
-
-msgid "Server Restarted"
-msgstr "Server Dijalankan Ulang"
-
-msgid "Server Security Auditing"
-msgstr "Audit Sekuritas Server"
-
-msgid "Server Started"
-msgstr "Server Dijalankan"
-
-msgid "Server Stopped"
-msgstr "Server Dihentikan"
-
-msgid "Service Unavailable"
-msgstr "Layanan Tak Tersedia"
-
-msgid "Set Allowed Users"
-msgstr "Atur Pengguna yang Boleh"
-
-msgid "Set As Server Default"
-msgstr "Atur Sebagai Baku Server"
-
-msgid "Set Class Options"
-msgstr "Atur Opsi Kelas"
-
-msgid "Set Printer Options"
-msgstr "Atur Opsi Pencetak"
-
-msgid "Set Publishing"
-msgstr "Atur Penerbitan"
-
-msgid "Shipping Address"
-msgstr "Alamat Pengiriman"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Alamat Pengiriman - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Sisi-Pendek (Mendatar)"
-
-msgid "Special Paper"
-msgstr "Kertas Khusus"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Standar"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Menjalankan Pataka"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Pernyataan"
-
-msgid "Stylus Color Series"
-msgstr "Seri Stylus Color"
-
-msgid "Stylus Photo Series"
-msgstr "Seri Stylus Photo"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Berpindah Protokol"
-
-msgid "Tabloid"
-msgstr "Tabloid"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr ""
-
-msgid "Tear-Off"
-msgstr ""
-
-msgid "Tear-Off Adjust Position"
-msgstr ""
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "Berkas PPD \"%s\" tak bisa ditemukan."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "Berkas PPD \"%s\" tak bisa dibuka: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Nama kelas paling banyak 127 karakter cetak dan tidak mengandung spasi, "
-"garis miring (/), atau pun tanda pagar (#)."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"Atribut notify-lease-duration tak bisa digunakan bersama subskripsi tugas."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Nama pencetak paling banyak 127 karakter cetak dan tidak mengandung spasi, "
-"garis miring (/), atau tanda pagar (#)."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "Terdapat karakter tidak sah pada printer-uri \"%s\"."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"Bentuk printer-uri seharusnya menuruti format \"ipp://HOSTNAME/classes/"
-"CLASSNAME\"."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"Bentuk printer-uri seharusnya menuruti format \"ipp://HOSTNAME/printers/"
-"PRINTERNAME\"."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"Nama subskripsi tidak bisa mengandung spasi, garis miring (/), tanda tanya "
-"(?), atau tanda pagar (#)."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Terlalu banyak subskripsi."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr ""
-
-msgid "Title: "
-msgstr "Judul: "
-
-msgid "Too many active jobs."
-msgstr "Terlalu banyak tugas yang aktif."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Transparansi"
-
-msgid "Tray"
-msgstr "Baki"
-
-msgid "Tray 1"
-msgstr "Baki 1"
-
-msgid "Tray 2"
-msgstr "Baki 2"
-
-msgid "Tray 3"
-msgstr "Baki 3"
-
-msgid "Tray 4"
-msgstr "Baki 4"
-
-msgid "URI Too Long"
-msgstr "URI Terlalu Panjang"
-
-msgid "US Ledger"
-msgstr "Ledger AS"
-
-msgid "US Legal"
-msgstr "Legal AS"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "Kuarto AS"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "Port Serial USB #%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Tidak bisa mengakses berkas cupsd.conf:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Tidak bisa menambah subskripsi RSS:"
-
-msgid "Unable to add class:"
-msgstr "Tidak bisa menambah kelas:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Tidak bisa menambah pencetak:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Tidak bisa membatalkan subskripsi RSS:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Tidak bisa mengubah atribut printer-is-shared:"
-
-msgid "Unable to change printer:"
-msgstr "Tidak bisa mengubah pencetak:"
-
-msgid "Unable to change server settings:"
-msgstr "Tidak bisa mengubah pengaturan server:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Tidak bisa terhubung ke host."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Tidak bisa membuat berkas temporer:"
-
-msgid "Unable to delete class:"
-msgstr "Tidak bisa menghapus kelas:"
-
-msgid "Unable to delete printer:"
-msgstr "Tidak bisa menghapus pencetak:"
-
-msgid "Unable to do maintenance command:"
-msgstr ""
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Tidak bisa memperoleh daftar kelas:"
-
-msgid "Unable to get class status:"
-msgstr "Tidak bisa memperoleh status kelas:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Tidak bisa memperoleh daftar penggerak pencetak:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Tidak bisa memperoleh atribut pencetak:"
-
-msgid "Unable to get printer list:"
-msgstr "Tidak bisa memperoleh daftar pencetak:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Tidak bisa memperoleh status pencetak:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Tidak bisa mengubah kelas:"
-
-msgid "Unable to modify printer:"
-msgstr "Tidak bisa mengubah pencetak"
-
-msgid "Unable to move job"
-msgstr "Tidak bisa memindahkan tugas"
-
-msgid "Unable to move jobs"
-msgstr "Tidak bisa memindahkan tugas"
-
-msgid "Unable to open PPD file"
-msgstr "Tidak bisa membuka berkas PPD"
-
-msgid "Unable to open PPD file:"
-msgstr "Tidak bisa membuka berkas PPD:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Tidak bisa membuka berkas cupsd.conf:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Tidak bisa mencetak halaman uji:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Tidak bisa mengeset opsi:"
-
-msgid "Unable to set server default:"
-msgstr ""
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Tidak bisa mengunggah berkas cupsd.conf:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Terlarang"
-
-msgid "Units"
-msgstr "Unit"
-
-msgid "Unknown"
-msgstr "Tak Dikenal"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "printer-error-policy \"%s\" tak dikenal."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "printer-op-policy \"%s\" tak dikenal."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Jenis nilai tak didukung"
-
-msgid "Upgrade Required"
-msgstr "Diperlukan Naik-Tingkat"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Value memiliki panjang tak terdefinisi"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind memiliki panjang tak terdefinisi"
-
-msgid "Version uses indefinite length"
-msgstr "Version memiliki panjang tak terdefinisi"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Ya"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Anda harus mengakses halaman ini melalui URL <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "Pencetak Label ZPL"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "digagalkan"
-
-msgid "canceled"
-msgstr "dibatalkan"
-
-msgid "completed"
-msgstr "diselesaikan"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "cups-deviced gagal dieksekusi."
-
-msgid "cups-driverd failed to execute."
-msgstr "cups-driverd gagal dieksekusi."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index memiliki panjang tak terdefinisi"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status memiliki panjang tak terdefinisi"
-
-msgid "held"
-msgstr "ditahan"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "menganggur"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "tunda"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "memproses"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id memiliki panjang tak terdefinisi"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "status dari %s gagal: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "dihentikan"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "tak dikenal"
-
-msgid "untitled"
-msgstr "tak berjudul"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings memiliki panjang tak terdefinisi"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(semua)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(nihil)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d entri\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tUsai kesalahan: lanjut\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tPeringatan:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tBanner diperlukan\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tSet karakter:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tKoneksi: langsung\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tKoneksi: jarak jauh\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tUkuran halaman utama:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tTiti utama:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tPengaturan port utama:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tDeskripsi: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tFormulir yang diakuisisi:\n"
-#~ "\tJenis isi: apa saja\n"
-#~ "\tJenis pencetak: tak dikenal\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tFormulir yang diperbolehkan:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tAntarmuka: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tAntarmuka: %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tAntarmuka: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tLokasi: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tSaat gagal: tanpa peringatan\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tPengguna yang diperbolehkan:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tPengguna yang dilarang:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tjurik hadir\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\ttidak ada entri\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tpencetak pada perangkat '%s' kecepatan -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tproses cetak dinonaktifkan\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tproses cetak diaktifkan\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tantrian untuk %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tantrian dinonaktifkan\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tantrian diaktifkan\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\talasan tak dikenal\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " DETIL HASIL KECOCOKAN TES\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: Halaman 15, seksi 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: Halaman 15, seksi 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: Halaman 19, seksi 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: Halaman 20, seksi 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: Halaman 27, seksi 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: Halaman 42, seksi 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: Halaman 16-17, seksi 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: Halaman 42-45, seksi 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: Halaman 45-46, seksi 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: Halaman 48-49, seksi 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: Halaman 52-54, seksi 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f bita\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN \"%s %s\" konflik dengan \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %s tidak memiliki opsi yang berkorespondensi!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s berbagi prefiks umum dengan %s\n"
-#~ " REF: Halaman 15, seksi 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN Pilihan utama mengalam konflik!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN Opsi kata kunci Duplex %s mungkin tidak bekerja seperti "
-#~ "yang diharapkan dan seharusnya dinamai Duplex!\n"
-#~ " REF: Halaman 122, seksi 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " WARN Berkas memiliki campuran CR, LF, dan CR LF pada akhir "
-#~ "baris!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN LanguageEncoding diperlukan oleh spesifikasi PPD 4.3.\n"
-#~ " REF: Halaman 56-57, seksi 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN Baris %d hanya mengandung spasi!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN Manufacturer diperlukan oleh spesifikasi PPD 4.3.\n"
-#~ " REF: Halaman 58-59, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN Berkas PPD non-Windows seharusnya hanya berakhir baris "
-#~ "LF, bukan CR LF!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN PPD versi %.1f telah usang!\n"
-#~ " REF: Halaman 42, seksi 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName lebih panjang dari 8.3 melanggar spesifikasi "
-#~ "PPD.\n"
-#~ " REF: Halaman 61-62, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protocols mengandung PJL tetapi atribut JCL tidak diset.\n"
-#~ " REF: Halaman 78-79, seksi 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protocols mengandung PJL dan BCP; diharapkan TBCP.\n"
-#~ " REF: Halaman 78-79, seksi 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN ShortNickName diperlukan oleh spesifikasi PPD 4.3.\n"
-#~ " REF: Halaman 64-65, seksi 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s tidak ada!\n"
-
-#~ msgid " %s %s file \"%s\" has the wrong capitalization!\n"
-#~ msgstr " %s %s berkas \"%s\" memiliki kapitalisasi yang salah!\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr " %s UTF-8 jelek \"%s\" string translasi untuk opsi %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s UTF-8 jelek \"%s\" string translasi untuk opsi %s, pilihan %s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Nilai cupsFilter jelek \"%s\"!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s cupsICCProfile jelek \"%s\"!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Nilai cupsPreFilter jelek \"%s\"!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s cupsUIConstraints jelek %s: \"%s\"!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Bahasa jelek \"%s\"!\n"
-
-#~ msgid " %s Bad spelling of %s - should be %s!\n"
-#~ msgstr " %s Ejaan dari %s jelek - seharusnya %s!\n"
-
-#~ msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID!\n"
-#~ msgstr ""
-#~ " %s Tidak dapat menyediakan APScanAppPath dan APScanAppBundleID!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s cupsUIConstraints %s kosong!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Kehilangan \"%s\" string translasi untuk opsi %s!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Kehilangan \"%s\" string translasi untuk opsi %s, pilihan %s!\n"
-
-#~ msgid " %s Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " %s Kehilangan berkas APDialogExtension \"%s\"\n"
-
-#~ msgid " %s Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " %s Kehilangan berkas APPrinterIconPath \"%s\"\n"
-
-#~ msgid " %s Missing APPrinterLowInkTool file \"%s\"\n"
-#~ msgstr " %s Kehilangan berkas APPrinterLowInkTool \"%s\"\n"
-
-#~ msgid " %s Missing APPrinterUtilityPath file \"%s\"\n"
-#~ msgstr " %s Kehilangan berkas APPrinterUtilityPath \"%s\"\n"
-
-#~ msgid " %s Missing APScanAppPath file \"%s\"\n"
-#~ msgstr " %s Kehilangan berkas APScanAppPath \"%s\"\n"
-
-#~ msgid ""
-#~ " %s Missing REQUIRED PageRegion option!\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " %s Kehilangan opsi PageRegion yang DIPERLUKAN!\n"
-#~ " REF: Halaman 100, seksi 5.14.\n"
-
-#~ msgid ""
-#~ " %s Missing REQUIRED PageSize option!\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " %s Kehilangan opsi PageSize yang DIPERLUKAN!\n"
-#~ " REF: Halaman 99, seksi 5.14.\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Kehilangan pilihan *%s %s dalam UIConstraints \"*%s %s *%s %s"
-#~ "\"!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s Kehilangan pilihan *%s %s dalam cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s Kehilangan berkas cupsFilter \"%s\"\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s Kehilangan berkas cupsICCProfile \"%s\"!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s Kehilangan berkas cupsPreFilter \"%s\"\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s Kehilangan cupsUIResolver %s!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Kehilangan opsi %s dalam UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Kehilangan opsi %s dalam cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr ""
-#~ " %s Tidak ada basis translasi \"%s\" yang disertakan pada berkas!\n"
-
-#~ msgid ""
-#~ " %s Non-standard size name \"%s\"!\n"
-#~ " REF: Page 187, section B.2.\n"
-#~ msgstr ""
-#~ " %s Nama ukuran nonstandar \"%s\"!\n"
-#~ " REF: Halaman 187, seksi B.2.\n"
-
-#~ msgid " %s Size \"%s\" defined for %s but not for %s!\n"
-#~ msgstr " %s Ukuran \"%s\" ditentukan untuk %s bukan untuk %s!\n"
-
-#~ msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)!\n"
-#~ msgstr ""
-#~ " %s Ukuran \"%s\" memiliki dimensi yang tak diharapkan (%gx%g)!\n"
-
-#~ msgid ""
-#~ " %s cupsUIResolver %s does not list at least two different "
-#~ "options!\n"
-#~ msgstr ""
-#~ " %s cupsUIResolver %s tidak menyediakan setidaknya dua opsi "
-#~ "berbeda!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** %s nama yang dipilih %s dan %s berbeda hanya pada besar/"
-#~ "kecilnya huruf!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FAIL** %s seharusnya 1284DeviceID!\n"
-#~ " REF: Halaman 72, seksi 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** Default%s %s JELEK\n"
-#~ " REF: Halaman 40, seksi 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DefaultImageableArea %s JELEK!\n"
-#~ " REF: Halaman 102, seksi 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DefaultPaperDimension %s JELEK!\n"
-#~ " REF: Halaman 103, seksi 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FAIL** Atribut JobPatchFile JELEK dalam berkas\n"
-#~ " REF: Halaman 24, seksi 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** Manufacturer JELEK (seharusnya \"HP\")\n"
-#~ " REF: Halaman 211, tabel D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** Manufacturer JELEK (seharusnya \"Oki\")\n"
-#~ " REF: Halaman 211, tabel D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ModelName JELEK - \"%c\" tidak diperbolehkan dalam "
-#~ "string.\n"
-#~ " REF: Halaman 59-60, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** PSVersion JELEK - bukan \"(string) int\".\n"
-#~ " REF: Halaman 62-64, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Product JELEK - bukan \"(string)\".\n"
-#~ " REF: Halaman 62, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ShortNickName JELEK - lebih dari 31 karakter.\n"
-#~ " REF: Halaman 64-65, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** FileVersion \"%s\" jelek\n"
-#~ " REF: Halaman 56, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** FormatVersion \"%s\" jelek\n"
-#~ " REF: Halaman 56, seksi 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr " **FAIL** LanguageEncoding %s jelek - seharusnya ISOLatin1!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **FAIL** LanguageVersion %s jelek - seharusnya English!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr " **FAIL** Kode opsi utama tidak bisa diinterpretasikan: %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FAIL** String translasi utama untuk opsi %s pilihan %s "
-#~ "mengandung karakter 8-bit!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FAIL** String translasi utama untuk opsi %s mengandung karakter "
-#~ "8-bit!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Nama kelompok %s dan %s berbeda hanya besar/kecilnya "
-#~ "huruf!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FAIL** Terjadi ganda dari %s nama yang dipilih %s!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Nama opsi %s dan %s berbeda hanya besar/kecilnya huruf!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN Default%s\n"
-#~ " REF: Halaman 40, seksi 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN DefaultImageableArea\n"
-#~ " REF: Halaman 102, seksi 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN DefaultPaperDimension\n"
-#~ " REF: Halaman 103, seksi 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN FileVersion\n"
-#~ " REF: Halaman 56, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN FormatVersion\n"
-#~ " REF: Halaman 56, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN ImageableArea untuk PageSize %s\n"
-#~ " REF: Halaman 41, seksi 5.\n"
-#~ " REF: Halaman 102, seksi 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN LanguageEncoding\n"
-#~ " REF: Halaman 56-57, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN LanguageVersion\n"
-#~ " REF: Halaman 57-58, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN Manufacturer\n"
-#~ " REF: Halaman 58-59, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN ModelName\n"
-#~ " REF: Halaman 59-60, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN NickName\n"
-#~ " REF: Halaman 60, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN PCFileName\n"
-#~ " REF: Halaman 61-62, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN PSVersion\n"
-#~ " REF: Halaman 62-64, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN PageRegion\n"
-#~ " REF: Halaman 100, seksi 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN PageSize\n"
-#~ " REF: Halaman 41, seksi 5.\n"
-#~ " REF: Halaman 99, seksi 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN PageSize\n"
-#~ " REF: Halaman 99-100, seksi 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN PaperDimension untuk PageSize %s\n"
-#~ " REF: Halaman 41, seksi 5.\n"
-#~ " REF: Halaman 103, seksi 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN Product\n"
-#~ " REF: Halaman 62, seksi 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** DIPERLUKAN ShortNickName\n"
-#~ " REF: Halaman 64-65, seksi 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d KESALAHAN DITEMUKAN\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%%%BoundingBox jelek: pada baris %d!\n"
-#~ " REF: Halaman 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " Baris %d lebih dari 255 karakter (%d)!\n"
-#~ " REF: Halaman 25, Line Length (Panjang Baris)\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " Kehilangan %!PS-Adobe-3.0 pada baris pertama!\n"
-#~ " REF: Halaman 17, 3.1 Conforming Documents (Menyesuaikan Dokumen)\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " Kehilangan komentar %%EndComments!\n"
-#~ " REF: Halaman 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " Kehilangan atau %%BoundingBox jelek: komentar!\n"
-#~ " REF: Halaman 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " Kehilangan atau %%Page jelek: komentar!\n"
-#~ " REF: Halaman 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " Kehilangan atau %%Pages jelek: komentar!\n"
-#~ " REF: Halaman 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " TIDAK ADA KESALAHAN\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " Menemukan %d baris yang melebihi 255 karakter!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " Terlalu banyak komentar %%BeginDocument!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " Terlalu banyak komentar %%EndDocument!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Peringatan: berkas mengandung data biner!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Peringatan: tidak ada komentar %%EndComments dalam berkas!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Peringatan: DSC usang versi %.1f dalam berkas!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " GAGAL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " GAGAL\n"
-#~ " **FAIL** Tidak bisa membuka berkas PPD - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " GAGAL\n"
-#~ " **FAIL** Tidak bisa membuka berkas PPD - %s pada baris %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " LEWAT\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10 Amplop"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11 Amplop"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12 Amplop"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14 Amplop"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9 Amplop"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bita\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f bita\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s menerima permintaan sejak %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s tidak diimplementasikan oleh versi lpc CUPS.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s tidak siap\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s siap\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s siap dan sedang mencetak\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s tidak menerima permintaan sejak %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s tidak didukung!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s menerima permintaan sejak %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s tidak menerima permintaan sejak %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [tugas %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s gagal: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: Tidak tahu apa yang hendak dikerjakan!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Kesalahan - Nama variabel lingkungan %s sebenarnya tidak ada \"%s\"!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Kesalahan - ID tugas jelek!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: Kesalahan - tidak bisa mencetak dan mengubah tugas secara bersamaan!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Kesalahan - tidak bisa mencetak dari stdin apabila berkas atau ID "
-#~ "tugas disediakan!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan set karakter usai opsi '-S'!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan jenis konten usai opsi '-T'!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan banyaknya rangkap usai opsi '-n'!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr ""
-#~ "%s: Kesalahan - diharapkan banyak hitungan rangkap usai opsi '-#'!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan target usai opsi '-P'!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan target usai opsi '-b'!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan target usai opsi '-d'!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan formulir usai opsi '-f'!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan nama yang ditahan usai opsi '-H'!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan nama host usai opsi '-H'!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan nama host usai opsi '-h'!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan daftar modus usai opsi '-y'!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan nama usai opsi '-%c'!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan opsi string usai opsi '-o'!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan daftar halaman usai opsi '-P'!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan prioritas usai opsi '-%c'!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan teks alasan usai opsi '-r'!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan judul usai opsi '-t'!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan nama pengguna usai opsi '-U'!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan nama pengguna usai opsi '-u'!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Kesalahan - diharapkan nilai usai opsi '-%c'!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Kesalahan - diperlukan \"completed\", \"not-completed\", atau \"all\" "
-#~ "usai opsi '-W'!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Kesalahan - tidak tersedia tujuan utama.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Kesalahan - prioritas harus antara 1 dan 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Kesalahan - penjadwal tidak merespon!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Kesalahan - terlalu banyak berkas - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Kesalahan - tidak bisa mengakses \"%s\" - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Kesalahan - tujuan tak dikenal \"%s\"!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Kesalahan - tujuan tak dikenal \"%s/%s\"!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Kesalahan - opsi tak dikenal '%c'!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Kesalahan - opsi '%s' tak dikenal!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: Diharapkan ID tugas usai opsi '-i'!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Penyaring \"%s\" tak tersedia: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Nama tujuan tidak sah pada daftar \"%s\"!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: String penyaring \"%s\" tidak sah\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr "%s: Memerlukan ID tugas ('-i jobid') sebelum '-H restart'!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Tidak ada penyaring untuk konversi dari %s/%s ke %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: Operasi gagal: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: Maaf, tidak ada dukungan enkripsi yang dikompilasi serta!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Tidak bisa terhubung ke server\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: Tidak bisa mengontak server!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: Tidak bisa menentukan jenis MIME dari \"%s\"!\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: Tidak bisa membuka %s: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: Tidak bisa membuka berkas PPD: %s pada baris %d\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d.\n"
-#~ msgstr "%s: Tidak bisa membuka berkas PPD: %s pada baris %d.\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: Tak dapat membaca basis data MIME dari \"%s\" atau \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: Tujuan tak dikenal \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: Jenis MIME yang dituju tak dikenal %s/%s!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: Opsi tak dikenal '%c'!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: Sumber jenis MIME tak dikenal %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Peringatan - format peubah '%c' tidak didukung - keluaran yang "
-#~ "dihasilkan mungkin tak tepat!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Peringatan - opsi set karakter diabaikan!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Peringatan - opsi jenis konten diabaikan!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Peringatan - opsi formulir diabaikan!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Peringatan - opsi modus diabaikan!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: kesalahan - nama variabel lingkungan %s merupakan tujuan yang tidak "
-#~ "ada \"%s\"!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: kesalahan - diharapkan opsi=nilai usai opsi '-o'!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: kesalahan - tidak ada tujuan utama.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "Diperlukan sandi Samba untuk mengekspor penggerak pencetak!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr "Diperlukan nama pengguna Samba untuk mengekspor penggerak pencetak!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Kelas bernama \"%s\" sudah ada!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Pencetak bernama \"%s\" sudah ada!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (Besar)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (Besar)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (Kecil)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (Besar)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Kelompok atribut di luar jangkauan (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "URI perangkat \"%s\" jelek!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "device-uri \"%s\" jelek!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Skema device-uri \"%s\" jelek!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "document-format \"%s\" jelek!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Nama berkas penyangga jelek!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Atribut huruf jelek: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Nilai job-priority jelek!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Nilai job-sheets \"%s\" jelek!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Jenis nilai job-sheets jelek!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Nilai job-state jelek!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Atribut job-uri \"%s\" jelek!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "notify-pull-method \"%s\" jelek!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "URI notify-recipient-uri \"%s\" jelek!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Opsi + yang dipilih pada baris %d jelek!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "port-monitor \"%s\" jelek!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Nilai printer-state %d jelek!"
-
-#~ msgid "Bad request ID %d!"
-#~ msgstr "ID permintaan %d jelek!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "ID subskripsi jelek!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0 Amplop"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1 Amplop"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2 Amplop"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3 Amplop"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4 Amplop"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5 Amplop"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6 Amplop"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65 Amplop"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7 Amplop"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Set karakter \"%s\" tidak didukung!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3 Amplop"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4 Amplop"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Perintah bisa saja singkat. Perintahnya:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Tidak akan memindai jenis \"%s\"!"
-
-#~ msgid "Cover open."
-#~ msgstr "Penutup terbuka."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL Amplop"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Developer hampir kosong."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Developer kosong!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Perangkat: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Dokumen %d tidak ditemukan di tugas %d."
-
-#~ msgid "Door open."
-#~ msgstr "Pintu terbuka."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Kartu Pos Ganda"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: Tidak bisa mengalokasikan memori untuk halaman info: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: Tidak bisa mengalokasikan memori untuk larik halaman: %s\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Berkas perangkat SCSI \"%s\" jelek!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: Berkas set karakter %s jelek\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: Jenis set karakter %s jelek\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: Nilai kolom %d jelek!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: Nilai cpi %f jelek!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: Baris deskripsi huruf: %s jelek\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: Nilai lpi %f jelek!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Pengaturan halaman jelek!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: Arah teks %s jelek\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: Lebar teks %s jelek\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: Pencetak yang dituju tidak ada!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: Mencetak berkas kosong!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: Kesalahan %d mengirim permintaan PAPSendData: %s\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: Kesalahan fatal USB!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: Ketidaksahan HP-GL/2 komentar terlihat, tak bisa mencetak berkas!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr ""
-#~ "ERROR: Kehilangan nilai pada baris %d dari berkas pataka (banner)!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: Memerlukan baris msgid sebelum string translasi pada baris %d dari "
-#~ "%s!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Tak ditemukan URI perangkat pada argv[0] atau dalam variabel "
-#~ "lingkungan DEVICE_URI!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: Tidak ada huruf pada berkas set karakter %s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: Tidak ketemu halaman!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: Kehabisan kertas!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: Variabel lingkungan PRINTER belum ditentukan!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: Berkas cetak tidak diterima (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: Pencetak tidak merespon\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: Pencetak tidak merespon!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: Pencetak mengirim EOF yang tak diharapkan\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: Host jarak jauh tidak menerima berkas kontrol (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: Host jarak jauh tidak menerima data berkas (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr "ERROR: Kehabisan waktu saat mengirim data ke pencetak\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: Tidak bisa menambah berkas %d untuk tugas: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: Tidak bisa membatalkan tugas %d: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: Tidak bisa menyalin berkas PPD"
-
-#~ msgid "ERROR: Unable to create pipe"
-#~ msgstr "ERROR: Tidak bisa membuat pipa"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: Tidak bisa membuat soket"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Tidak bisa membuat berkas cetak berkompresi temporer: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: Tidak bisa membuat berkas temporer"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: Tidak bisa mengeksekusi pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: Tidak bisa mengeksekusi program gs"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: Tidak bisa mengeksekusi program pdftops"
-
-#~ msgid "ERROR: Unable to execute pstops program"
-#~ msgstr "ERROR: Tidak bisa mengeksekusi program pstops"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: Tidak bisa memperoleh permintaan PAP"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: Tidak bisa memperoleh respon PAP"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr ""
-#~ "ERROR: Tidak bisa memperoleh berkas PPD untuk pencetak \"%s\" - %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: Tidak bisa memperoleh zona baku AppleTalk"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: Tidak bisa memperoleh atribut tugas %d (%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: Tidak bisa memperoleh status pencetak (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: Tidak bisa menentukan lokasi pencetak '%s'!\n"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: Tidak bisa membuat alamat AppleTalk"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: Tidak bisa membuka \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: Tidak bisa membuka %s: %s\n"
-
-#~ msgid "ERROR: Unable to open PPD file!\n"
-#~ msgstr "ERROR: Tidak bisa membuka berkas PPD!\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: Tidak bisa membuka berkas perangkat \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: Tidak bisa membuka berkas \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: Tidak bisa membuka berkas \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: Tidak bisa membuka berkas gambar untuk mencetak!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: Tidak bisa membuka berkas cetak \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: Tidak bisa membuka berkas cetak %s - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: Tidak bisa membuka berkas cetak %s: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Tidak bisa membuka berkas cetak temporer berkompresi: %s\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: Tidak bisa membaca data yang hendak dicetak"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: Tidak bisa membaca data yang hendak dicetak!\n"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: Tidak bisa mencari letak %ld dalam berkas - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: Tidak bisa mencari letak %lld dalam berkas - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: Tidak bisa mengirim perintah LPD"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: Tidak bisa mengirim data yang hendak dicetak (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: Tidak bisa mengirim data yang hendak dicetak!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: Tidak bisa mengirim data ke pencetak"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: Tidak bisa menunggu pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: Tidak bisa menulis %d bita ke \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: Tidak bisa menulis %d bita ke pencetak!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: Tidak bisa menulis berkas kontrol"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: Tidak bisa menulis data yang hendak dicetak"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: Tidak bisa menulis data yang hendak dicetak: %s\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: Tidak bisa menulis di berkas temporer"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: Teks tak diharapkan pada baris %d dari %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: Nilai opsi enkripsi \"%s\" tak dikenal!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: Urutan berkas \"%s\" tak dikenal\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: Format karakter \"%c\" tak dikenal\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: Format katalog pesan \"%s\" tak dikenal!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: Opsi \"%s\" dengan nilai \"%s\" tak dikenal!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: Modus cetak \"%s\" tak dikenal\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: Nilai opsi versi \"%s\" tak dikenal!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr ""
-#~ "ERROR: Nilai kecerahan %s tak didukung, gunakanlah brightness=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: Nilai gama %s tak didukung, gunakanlah gamma=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: Nilai number-up %d tak didukung, gunakanlah number-up=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: Nilai number-up-layout %s tak didukung, gunakanlah number-up-"
-#~ "layout=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: Nilai page-border %s tak didukung, gunakanlah page-border=none!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: Kelebihan doc_printf (%d bita) terdeteksi, dibatalkan!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops tertutup pada sinyal %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops tertutup dengan status %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: pemulihan: Tidak bisa menghubungi pencetak; akan mencoba ulang "
-#~ "dalam 30 detik...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() gagal"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: tak dapat memulai berkas yang hendak dicetak"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Berkas PPD kosong!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Kesalahan: perlu nama host usai opsi '-h'!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "GAGAL\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "Berkas URI perangkat telah dinonaktifkan! Untuk mengaktifkannya, lihatlah "
-#~ "petunjuk FileDevice dalam \"%s/cupsd.conf\"."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Suhu fusi tinggi!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Suhu fusi rendah!"
-
-#~ msgid "German FanFold"
-#~ msgstr "FanFold Jerman"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "FanFold Legal Jerman"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Memperoleh atribut printer-uri tetapi bukan job-id!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk ditiadakan pada Preferensi Sistem\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk ditiadakan pada Preferensi Sistem.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: Membatalkan tugas mencetak...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: Terhubung ke pencetak...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: Menghubungi pencetak...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: Berkas kontrol berhasil dikirim\n"
-
-#~ msgid "INFO: Copying print data...\n"
-#~ msgstr "INFO: Menyalin data yang hendak dicetak...\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: Berkas data berhasil dikirim\n"
-
-#~ msgid "INFO: Finished page %d...\n"
-#~ msgstr "INFO: Halaman selesai %d...\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: Memformat halaman %d...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: Memuat berkas gambar...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: Mencari pencetak...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: Membuka hubungan\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: Berkas cetak dikirim, menunggu pencetak selesai mengerjakannya...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: Pencetak sibuk; dicoba ulang 10 detik lagi...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Pencetak sibuk; dicoba ulang 30 detik lagi...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Pencetak sibuk; dicoba ulang 5 detik lagi...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr "INFO: Pencetak tidak mendukung IPP/%d.%d, mencoba IPP/1.0...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Pencetak sibuk; dicoba ulang 5 detik lagi...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: Pencetak saat ini tak terhubung.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: Pencetak saat ini tak terhubung.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: Pencetak saat ini terhubung.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: Pencetak saat ini tak terhubung.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Pencetak tak terhubung; dicoba ulang 30 detik lagi...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: Mencetak halaman %d, %d%% selesai...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: Mencetak halaman %d...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: Siap mencetak.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: Mengirim berkas kontrol (%lu bita)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: Mengirim berkas kontrol (%u bita)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: Mengirim data\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: Mengirim berkas data (%ld bita)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: Mengirim berkas data (%lld bita)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: Mengirim data yang hendak dicetak...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: Mengirim berkas yang hendak dicetak, %ld bita...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: Mengirim berkas yang hendak dicetak, %lld bita...\n"
-
-#~ msgid "INFO: Starting page %d...\n"
-#~ msgstr "INFO: Memulai halaman %d...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: Tidak bisa menghubungi pencetak, diantrikan ke pencetak selanjutnya "
-#~ "pada kelas...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: Menggunakan zona baku AppleTalk \"%s\"\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: Menunggu tugas diselesaikan...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: Menunggu pencetak tersedia...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4 Amplop"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (Besar)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5 Amplop"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6 Amplop"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Tinta/toner hampir kosong."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Tinta/toner kosong!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Baki buangan tinta/toner hampir penuh."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Baki buangan tinta/toner sudah penuh!"
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Amplop Undangan"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Amplop Italia"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "Tugas #%d tidak bisa dicetak ulang - tidak ada berkas!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "Tugas #%d tidak ada!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "Tugas #%d sudah diselesaikan dan tidak dapat diubah!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "Tugas #%d tidak selesai!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "Tugas #%d tidak ditahan untuk otentikasi!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "Tugas #%d tidak ditahan!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "Tugas #%s tidak ada!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Tugas %d tidak ketemu!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Subkripsi tugas tidak bisa diperbaharui!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2 Amplop"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3 Amplop"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Bahasa \"%s\" tidak didukung!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Media tersangkut!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Baki media hampir kosong."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Baki media kosong!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Baki media hilang!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Baki media perlu diisi."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "Kehilangan atribut document-number!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Kehilangan tanda kutip pada baris %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Kehilangan variabel formulir!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "Kehilangan atribut notify-subscription-ids!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Kehilangan atribut requesting-user-name!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Kehilangan atribut yang diperlukan!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Kehilangan nilai pada baris %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarki"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Amplop Monarki"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: Berkas yang hendak dicetak diterima - ID tugas %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr ""
-#~ "NOTICE: Berkas yang hendak dicetak diterima - ID tugas tak dikenal.\n"
-
-#~ msgid "Nested classes are not allowed!"
-#~ msgstr "Kelas bersarang tidak diperbolehkan!"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Tidak ada nama PPD!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Tidak ada penggerak pencetak Windows yang terpasang!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Tidak ada tugas yang aktif pada %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Tidak ada atribut dalam permintaan!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Tidak ada informasi otentikasi yang tersedia!"
-
-#~ msgid "No default printer"
-#~ msgstr "Tidak ada pencetak utama"
-
-#~ msgid "No file!?!"
-#~ msgstr "Tidak ada berkas!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Tidak ada waktu modifikasi!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Tidak ada nama pencetak!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Tidak ditemukan printer-uri untuk kelas!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Tidak ditemukan printer-uri!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Tidak ada printer-uri dalam permintaan!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Tidak ada atribut subskripsi dalam permintaan!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC nyaris di ujung hayat."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC sudah di ujung hayat!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Kehabisan toner!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Baki keluaran hampir penuh."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Baki keluaran penuh!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "Keluaran untuk pencetak %s dikirim ke %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Keluaran untuk pencetak %s dikirim ke pencetak jarak jauh %s pada %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "Keluaran untuk pencetak %s/%s dikirim ke %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Keluaran untuk pencetak %s/%s dikirim ke pencetak jarak jauh %s pada %s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Baki keluaran hilang!"
-
-#~ msgid "PASS\n"
-#~ msgstr "LEWAT\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1 Amplop"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10 Amplop"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2 Amplop"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3 Amplop"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (Besar)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4 Amplop"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5 Amplop"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6 Amplop"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7 Amplop"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8 Amplop"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9 Amplop"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Amplop Pribadi"
-
-#~ msgid "Printer offline."
-#~ msgstr "Pencetak tak terhubung."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Urut Tuan Tgs Berkas Ukur Total\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Urut Tuan Pri Tugas Berkas Ukuran "
-#~ "Total\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Menjalankan perintah: %s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "Pencetak SCSI"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tabloid (Besar)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "Nilai notify-user-data terlalu besar (%d > 63 oktet)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "Pencetak atau kelas tidak dikongsikan!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "Pencetak atau kelas tidak ditemukan."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "Atribut printer-uri diperlukan!"
-
-#~ msgid "Toner low."
-#~ msgstr "Toner lemah."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "Terlalu banyak nilai job-sheets (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "Terlalu banyak nilai printer-state-reasons (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "Eksekutif AS"
-
-#~ msgid "US Fanfold"
-#~ msgstr "Fanfold AS"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "Legal AS (Besar)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "Kuarto AS (Besar)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "Kuarto AS (Kecil)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Tidak bisa menambah tugas untuk tujuan \"%s\"!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Tidak bisa mengalokasikan memori untuk jenis berkas!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr "Tidak bisa menyalin berkas penggerak pencetak CUPS 64-bit (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr "Tidak bisa menyalin berkas penggerak pencetak Windows 64-bit (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "Tidak bisa menyalin berkas penggerak pencetak CUPS (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Tidak bisa menyalin berkas PPD - %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Tidak bisa menyalin berkas PPD!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr "Tidak bisa menyalin berkas penggerak pencetak Windows 2000 (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "Tidak bisa menyalin berkas penggerak pencetak Windows 9x (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Tidak bisa menyalin skrip antarmuka - %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Tidak bisa membuat printer-uri!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "Tidak bisa menyunting berkas cupsd.conf lebih dari 1MB!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Tidak bisa menemukan tujuan untuk tugas!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Tidak bisa menemukan pencetak!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr "Tidak bisa memasang berkas penggerak pencetak Windows 2000 (%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr "Tidak bisa memasang berkas penggerak pencetak Windows 9x (%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Tidak bisa membuka dokumen %d pada tugas %d!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Tidak bisa menjalankan \"%s\": %s\n"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Tidak bisa mengeset penggerak pencetak Windows (%d)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Set karakter \"%s\" tak didukung!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Kompresi \"%s\" tak didukung!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Atribut kompresi %s tak didukung!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Format \"%s\" tak didukung!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Format '%s' tak didukung!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Format '%s/%s' tak didukung!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Penggunaan:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d tujuan\n"
-#~ " lpadmin [-h server] -x tujuan\n"
-#~ " lpadmin [-h server] -p pencetak [-c tambah-kelas] [-i antarmuka] [-m "
-#~ "model]\n"
-#~ " [-r buang-kelas] [-v perangkat] [-D deskripsi]\n"
-#~ " [-P berkas-ppd] [-o nama=nilai]\n"
-#~ " [-u allow:pengguna,pengguna] [-u deny:pengguna,"
-#~ "pengguna]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Penggunaan: %s tugas pengguna judul salinan opsi [berkas]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Penggunaan: %s id-tugas pengguna judul rangkap opsi [berkas]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Penggunaan: %s id-tugas pengguna judul rangkap opsi berkas\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Penggunaan: cupsaddsmb [opsi] pencetak1 ... pencetakN\n"
-#~ " cupsaddsmb [opsi] -a\n"
-#~ "\n"
-#~ "Opsi:\n"
-#~ " -E Mengenkripsi koneksi ke server\n"
-#~ " -H samba-server Menggunakan server SAMBA yang diberikan\n"
-#~ " -U samba-user Otentikasi menggunakan nama pengguna SAMBA yang "
-#~ "diberikan\n"
-#~ " -a Mengekspor semua pencetak\n"
-#~ " -h cups-server Menggunakan server CUPS yang ditentukan\n"
-#~ " -v Menjadi riuh (menampilkan perintah)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Penggunaan: cupsctl [opsi] [param=nilai ... paramN=nilaiN]\n"
-#~ "\n"
-#~ "Opsi:\n"
-#~ "\n"
-#~ " -E Mengaktifkan enkripsi\n"
-#~ " -U namapengguna Menentukan nama pengguna\n"
-#~ " -h server[:portal Menentukan alamat server\n"
-#~ "\n"
-#~ " --[no-]debug-logging Mengaktifkan/tidak pencatat debug\n"
-#~ " --[no-]remote-admin Mengaktifkan/tidak administrasi jarak jauh\n"
-#~ " --[no-]remote-any Biarkan/cegah akses dari Internet\n"
-#~ " --[no-]remote-printers Tampilkan/sembunyikan pencetak jarak jauh\n"
-#~ " --[no-]share-printers Mengaktifkan/tidak pencetak yang dikongsi\n"
-#~ " --[no-]user-cancel-any Biarkan/cegah pengguna biasa membatalkan "
-#~ "tugas\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Penggunaan: cupsd [-c berkas-konfigurasi] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c berkas-konfigurasi Memuat berkas konfigurasi alternatif\n"
-#~ "-f Berjalan pada latar depan\n"
-#~ "-F Berjalan pada latar depan tapi terpisah\n"
-#~ "-h Tampilkan pesan ini\n"
-#~ "-l Menjalankan cupsd dari launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -e Use every filter from the PPD file\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Penggunaan: cupsfilter -m mime/jenis [ opsi ] berkas\n"
-#~ "\n"
-#~ "Opsi:\n"
-#~ "\n"
-#~ " -c cupsd.conf Mengeset berkas cupsd.conf untuk digunakan\n"
-#~ " -e Menggunakan tiap penyaring dari berkas PPD\n"
-#~ " -j job-id[,N] Menyaring berkas N dari tugas yang diberikan (baku "
-#~ "adalah berkas 1)\n"
-#~ " -n copies Mengeset banyaknya salinan\n"
-#~ " -o name=value Mengeset opsi\n"
-#~ " -p filename.ppd Mengeset berkas PPD\n"
-#~ " -t title Mengeset judul\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Penggunaan: cupstestdsc [opsi] berkas.ps [... berkas.ps]\n"
-#~ " cupstestdsc [opsi] -\n"
-#~ "\n"
-#~ "Opsi:\n"
-#~ "\n"
-#~ " -h Menampilkan cara guna program\n"
-#~ "\n"
-#~ " Catatan: program ini hanya memvalidasi komentar DSC, bukan PostScript "
-#~ "itu sendiri.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-#~ "translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Penggunaan: cupstestppd [opsi] berkas1.ppd[.gz] [... berkasN.ppd[.gz]]\n"
-#~ " program | cupstestppd [opsi] -\n"
-#~ "\n"
-#~ "Opsi:\n"
-#~ "\n"
-#~ " -R direktori-root Mengeset root alternatif\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-#~ "translations}\n"
-#~ " Menampilkan peringatan ketimbang kesalahan\n"
-#~ " -q Berjalan senyap\n"
-#~ " -r Menggunakan modus 'relaxed' terbuka\n"
-#~ " -v Menjadi riuh\n"
-#~ " -vv Menjadi sangat riuh\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Penggunaan: lpmove tugas/sumber tujuan\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Penggunaan: lpoptions [-h server] [-E] -d pencetak\n"
-#~ " lpoptions [-h server] [-E] [-p pencetak] -l\n"
-#~ " lpoptions [-h server] [-E] -p pencetak -o opsi[=nilai] ...\n"
-#~ " lpoptions [-h server] [-E] -x pencetak\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Penggunaan: lppasswd [-g namakelompok]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Penggunaan: lppasswd [-g namakelompok] [namapengguna]\n"
-#~ " lppasswd [-g namakelompok] -a [namapengguna]\n"
-#~ " lppasswd [-g namakelompok] -x [namapengguna]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Penggunaan: lpq [-P tujuan] [-U namapengguna] [-h namahost[:portal]] [-l] "
-#~ "[+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Penggunaan: ppdc [opsi] berkas.drv [ ... berkasN.drv ]\n"
-#~ "Opsi:\n"
-#~ " -D nama=nilai Atur nilai variabel bernama.\n"
-#~ " -I dir-inklusi Tambah direktori dalam jalur pencarian.\n"
-#~ " -c katalog.po Memuat katalog pesan yang diinginkan.\n"
-#~ " -d dir-keluaran Menentukan direktori keluaran.\n"
-#~ " -l bhsa[,bhsa,...] Menentukan bahasa keluaran (lokal).\n"
-#~ " -m Menggunakan nilai ModelName sebagai nama berkas.\n"
-#~ " -t Menguji PPD ketimbang membuatnya.\n"
-#~ " -v Menjadi riuh (tambahkan v lagi untuk lebih riuh).\n"
-#~ " -z Kompres berkas PPD dengan GNU zip.\n"
-#~ " --cr Akhiri baris dengan CR (Mac OS 9).\n"
-#~ " --crlf Akhiri baris dengan CR + LF (Windows).\n"
-#~ " --lf Akhiri baris dengan LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Penggunaan: ppdhtml [opsi] berkas.drv >berkas.html\n"
-#~ " -D nama=nilai Atur nilai variabel bernama.\n"
-#~ "Opsi:\n"
-#~ " -I dir-inklusi Tambah direktori dalam jalur pencarian.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Penggunaan: ppdi [opsi] berkas.ppd [ ... berkasN.ppd ]\n"
-#~ "Opsi:\n"
-#~ " -I direktori\n"
-#~ " -o berkas.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Penggunaan: ppdmerge [opsi] berkas.ppd [ ... berkasN.ppd ]\n"
-#~ "Opsi:\n"
-#~ " -o berkas.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Penggunaan: ppdpo [opsi] -o berkas.po berkas.drv [ ... berkasN.drv ]\n"
-#~ "Opsi:\n"
-#~ " -D nama=nilai Mengeset nilai variabel bernama.\n"
-#~ " -I dir-inklusi Tambah direktori dalam jalur pencarian.\n"
-#~ " -v Menjadi riuh (tambahkan v lagi untuk lebih riuh).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Penggunaan: snmp [host-atau-alamat-ip]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: Hanya menambah %d pencetak pertama yang ditemukan"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: Diharapkan boolean untuk opsi waiteof \"%s\"\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: Gagal membaca permintaan kanal sisi!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr "WARNING: Opsi \"%s\" tidak akan disertakan via IncludeFeature!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: Pencetak tidak merespon!\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: Pencetak mengirim EOF yang tak diharapkan\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Host jarak jauh tidak merespon pada bita status perintah usai %d "
-#~ "detik!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Host jarak jauh tidak merespon pada bita kontrol status usai %d "
-#~ "detik!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Host jarak jauh tidak merespon pada bita status data usai %d "
-#~ "detik!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: Perintah SCSI kehabisan waktu (%d); mencoba ulang...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Dokumen ini tidak sesuai dengan Adobe Document Structuring "
-#~ "Conventions dan mungkin tidak tercetak dengan benar!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: Tidak bisa membuka \"%s:%s\": %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: Tidak bisa mengirim permintaan status PAP"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: Paket PAP berjenis %d tak dikenal\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: Pilihan \"%s\" tak dikenal untuk opsi \"%s\"!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: Opsi \"%s\" tak dikenal!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: angka diharapkan untuk opsi status \"%s\"\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr "Peringatan, tak ada penggerak pencetak Windows 2000 yang terpasang!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4 Amplop"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "konversi: Gunakan opsi -f untuk menentukan berkas yang hendak "
-#~ "dikonversi.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: Tidak ada berkas PPD untuk pencetak \"%s\" - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: Tidak bisa menghubungi server: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: Opsi tak dikenal \"%s\"!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: Opsi tak dikenal \"-%c\"!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: Diharapkan nama berkas konfigurasi usai opsi \"-c\"!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: Tidak bisa memperoleh direktori sekarang!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: Argumen \"%s\" tak dikenal - digagalkan!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: Opsi \"%c\" tak dikenal - digagalkan!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: dukungan launchd(8) tidak dikompilasi serta, menjalankan dalam "
-#~ "modus normal.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: Jumlah dokumen %d tidak sah!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: ID tugas %d tak sah!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: Hanya satu nama berkas yang bisa ditentukan!\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: Tidak bisa memperoleh berkas tugas - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: Opsi -q tidak cocok dengan opsi -v.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: Opsi -v tidak cocok dengan opsi -q.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "perangkat untuk %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "perangkat untuk %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "bantuan\t\tmemperoleh bantuan dari baris perintah\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "Atribut job-printer-uri hilang!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Nama kelas hanya boleh diisi karakter cetak!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: Diharapkan PPD usai opsi '-P'!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: Diharapkan allow/deny:daftarpengguna usai opsi '-u'!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: Diharapkan kelas usai opsi '-r'!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: Diharapkan nama kelas usai opsi '-c'!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: Diharapkan deskripsi usai opsi '-D'!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: Diharapkan URI perangkat usai opsi '-v'!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: Diharapkan jenis berkas usai opsi '-I'!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: Diharapkan nama host usai opsi '-h'!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: Diharapkan antarmuka usai opsi '-i'!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: Diharapkan lokasi usai opsi '-L'!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: Diharapkan model usai opsi '-m'!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: Diharapkan nama=nilai usai opsi '-o'!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: Diharapkan pencetak usai opsi '-p'!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: Diharapkan nama pencetak usai opsi '-d'!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: Diharapkan pencetak atau kelas usai opsi '-x'!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: Tidak ada nama anggota yang terlihat!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: Pencetak %s sudah menjadi anggota kelas %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: Pencetak %s bukanlah anggota kelas %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Nama pencetak hanya bisa mengandung karakter cetak!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tidak bisa menambah pencetak ke kelas:\n"
-#~ " Anda harus menentukan nama pencetak lebih dulu!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: Tidak bisa terkoneksi ke server: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: Tidak bisa membuka berkas PPD \"%s\" - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: Tidak bisa membuka berkas \"%s\": %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tidak bisa membuang pencetak dari kelas:\n"
-#~ " Anda harus menentukan nama pencetak lebih dulu!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tidak bisa mengeset berkas PPD:\n"
-#~ " Anda harus menentukan nama pencetak lebih dulu!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tidak bisa mengeset URI perangkat:\n"
-#~ " Anda harus menentukan nama pencetak lebih dulu!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tidak bisa mengeset skrip antarmuka atau berkas PPD:\n"
-#~ " Anda harus menentukan nama pencetak lebih dulu!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tidak bisa mengeset skrip antarmuka:\n"
-#~ " Anda harus menentukan nama pencetak lebih dulu!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tidak bisa mengeset deskripsi pencetak:\n"
-#~ " Anda harus menentukan nama pencetak lebih dulu!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tidak bisa mengeset lokasi pencetak:\n"
-#~ " Anda harus menentukan nama pencetak lebih dulu!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Tidak bisa mengeset opsi pencetak:\n"
-#~ " Anda harus menentukan nama pencetak lebih dulu!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: Opsi boleh/larang tak dikenal \"%s\"!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: Argumen tak dikenal '%s'!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: Opsi tak dikenal '%c'!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: Peringatan - jenis isi diabaikan!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: Diharapkan bahasa usai --language!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: Diharapkan pembuat dan model usai --make-and-model!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: Diharapkan string produk usai --product!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: Diharapkan daftar skema usai --exclude-scemes!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: Diharapkan daftar skema usai --include-schemes!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: Diharapkan waktu habis usai --timeout!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: Argumen tak dikenal '%s'!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: Opsi tak dikenal '%c'!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: Opsi tak dikenal '%s'!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: Tidak bisa terkoneksi ke server: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: Argumen tak dikenal '%s'!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: Opsi tak dikenal '%c'!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: Tidak ada pencetak!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: Tidak bisa menambah pencetak: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: Tidak bisa mendapatkan berkas PPD untuk %s: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: Tidak bisa membuka berkas PPD untuk %s!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: Pencetak atau kelas tak dikenal!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: Hanya root yang bisa menambah atau menghapus sandi!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: Berkas sandi sedang sibuk!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: Berkas sandi tidak diperbaharui!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: Maaf, sandi tidak cocok!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: Maaf, sandi ditolak.\n"
-#~ "Sandi Anda harus setidaknya 6 karakter, tidak memuat\n"
-#~ "nama pengguna Anda, dan setidaknya memiliki satu huruf serta angka.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: Maaf, sandi tidak cocok!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: Tidak bisa menyalin string sandi: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: Tidak bisa membuka berkas sandi: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: Tidak bisa menulis ke berkas sandi: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr "lppasswd: gagal mencadangkan berkas sandi yang lama: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: gagal mengubah nama berkas sandi: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: pengguna \"%s\" dan kelompok \"%s\" tidak ada.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: kesalahan - nama variabel lingkungan %s bukanlah tujuan yang ada "
-#~ "\"%s\"!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "anggota kelas %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "tak ada entri\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "tak ada tujuan sistem utama\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events tidak dispesifikasikan!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "URI notify-recipient-uri \"%s\" sudah dipakai!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "URI notify-recipient-uri \"%s\" memakai skema tak dikenal!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d tidak baik!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: Menambahkan direktori \"%s\"...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdf: Menambah/memperbaharui teks UI dari %s...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Nilai boolean jelek (%s) pada baris %d dari %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Nama resolusi jelek \"%s\" pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: Kata kunci status jelek %s pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: Subtitusi variabel jelek ($%c) pada baris %d dari %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: Ditemukan pilihan pada baris %d dari %s tanpa Option!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: Duplikat #po untuk lokal %s pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan definisi penyaring pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama program pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: Diharapkan nilai boolean pada baris %d dari %s.\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: Diharapkan kode pilihan pada baris %d dari %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: Diharapkan nama/teks pilihan pada baris %d dari %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Diharapkan urutan warna untuk ColorModel pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Diharapkan ruang warna untuk ColorModel pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan kompresi untuk ColorModel pada baris %d dari %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Diharapkan string konstrain untuk UIConstraints pada baris %d dari %"
-#~ "s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Diharapkan kata kunci jenis penggerak diikuti DriverType pada baris "
-#~ "%d dari %s!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan jenis dupleks usai Duplex pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan enkode usai Font pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama berkas usai #po %s pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama/teks kelompok pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Diharapkan nama berkas yang disertakan pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan integer pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan lokal usai #po pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama usai %s pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama usai FileName pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama usai Font pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama usai Manufacturer pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama usai MediaSize pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama usai ModelName pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama usai PCFileName pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama/teks usai %s pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Diharapkan nama/teks usai Installable pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nama/teks usai Resolution pada baris %d dari %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Diharapkan nama/teks kombinasi untuk ColorModel pada baris %d dari %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan opsi nama/teks pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan opsi seksi pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan opsi jenis pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan bilangan real pada baris %d dari %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Diharapkan resolusi/jenis media diikuti ColorProfile pada baris %d "
-#~ "dari %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Diharapkan resolusi/jenis media diikuti SimpleColorProfile pada "
-#~ "baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapan selektor usai %s pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan status usai Font pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan string usai Copyright pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan string usai Version pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan dua opsi nama pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan nilai usai %s pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Diharapkan versi usai Font pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: Nama berkas #include/#po \"%s\" tak sah!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Nilai tak sah bagi penyaring pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Jenis MIME kosong tak sah untuk penyaring pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Nama program korong tak sah untuk penyaring pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Seksi opsi \"%s\" tak sah pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Jenis opsi \"%s\" tak sah pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: Memuat berkas informasi penggerak \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: Memuat pesan untuk loakl \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: Memuat pesan dari \"%s\"...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: Kehilangan #endif di akhir \"%s\"!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: Kehilangan #if pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: Tak tersedia katalog pesan untuk lokal %s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: Terlalu banyak #if bersarang pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: Tidak bisa membuat berkas PPD \"%s\" - %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: Tidak bisa membuat direktori keluaran %s: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: Tidak bisa membuat pipa keluaran: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: Tidak bisa mengeksekusi cupstestppd: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: Tidak bisa menemukan berkas #po %s pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Tidak bisa menemukan berkas yang disertakan \"%s\" pada baris %d "
-#~ "dari %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: Tidak bisa menemukan lokalisasi bagi \"%s\" - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: Tidak bisa memuat berkas lokalisasi \"%s\" - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Variabel tak berdefinisi (%s) pada baris %d dari %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: Jenis penggerak tak dikenal %s pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Jenis dupleks tak dikenal \"%s\" pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ukuran media tak dikenal \"%s\" pada baris %d dari %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: Menulis %s...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: Menulis berkas PPD ke direktori \"%s\"...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: LanguageVersion \"%s\" jelek pada %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: Mengabaikan berkas PPD %s...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: Tidak bisa mencadangkan %s ke %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "pencetak %s ditiadakan sejak %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "pencetak %s sedang menganggur. diaktifkan sejak %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "pencetak %s saat ini tengah mencetak %s-%d. diaktifkan sejak %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "pencetak %s/%s dinonaktifkan sejak %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "pencetak %s/%s sedang menganggur. diaktifkan sejak %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr ""
-#~ "pencetak %s/%s saat ini tengah mencetak %s-%d. diaktifkan sejak %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "identitas permintaan adalah %s-%d (%d berkas)\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "penjadwal tidak berjalan\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "penjadwal tengah berjalan\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\tmenampilkan status daemon dan antrian\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "tujuan utama sistem: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "tujuan utama sistem: %s/%s\n"
diff --git a/locale/cups_it.po b/locale/cups_it.po
deleted file mode 100644
index b0c09691..00000000
--- a/locale/cups_it.po
+++ /dev/null
@@ -1,8926 +0,0 @@
-# Vincenzo Reale <smart2128@baslug.org>, 2009.
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2010-01-10 01:03+0100\n"
-"Last-Translator: Vincenzo Reale <smart2128@baslug.org>\n"
-"Language-Team: Italian <kde-i18n-it@kde.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: it\n"
-"X-Generator: Lokalize 1.0\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f millimetri"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f a %.0f x %.0f millimetri"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f pollici"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f a %.2f x %.2f pollici"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s non può essere modificato."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 poll./sec."
-
-msgid "1.25x0.25\""
-msgstr "1,25 x 0,25\""
-
-msgid "1.25x2.25\""
-msgstr "1,25 x 2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 poll./sec."
-
-msgid "1.50x0.25\""
-msgstr "1,50 x 0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50 x 0,50\""
-
-msgid "1.50x1.00\""
-msgstr "1,50 x 1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50 x 2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 poll./sec."
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/sec."
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 poll./sec."
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 poll./sec."
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/sec."
-
-msgid "120x60dpi"
-msgstr "120 x 60 dpi"
-
-msgid "120x72dpi"
-msgstr "120 x 72 dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136 dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/sec."
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/sec."
-
-msgid "150dpi"
-msgstr "150 dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180 dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 poll./sec."
-
-msgid "2-Sided Printing"
-msgstr "Stampa su due lati"
-
-msgid "2.00x0.37\""
-msgstr "2,00 x 0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00 x 0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00 x 1,00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00 x 1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00 x 2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00 x 3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00 x 4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00 x 5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25 x 0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25 x 1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25 x 4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25 x 5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38 x 5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 poll./sec."
-
-msgid "2.50x1.00\""
-msgstr "2,50 x 1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50 x 2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75 x 1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2.9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/sec."
-
-msgid "200 mm/sec."
-msgstr "200 mm/sec."
-
-msgid "203dpi"
-msgstr "203 dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "Serie a 24 pin"
-
-msgid "240x72dpi"
-msgstr "240 x 72 dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/sec."
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 poll./sec."
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00 x 1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00 x 1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00 x 2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00 x 3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00 x 5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25 x 2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25 x 5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25 x 5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25 x 5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25 x 7,83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "Disco da 3,5\""
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "Disco da 3,5\": 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50 x 1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/sec."
-
-msgid "300 mm/sec."
-msgstr "300 mm/sec."
-
-msgid "300dpi"
-msgstr "300 dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360 dpi"
-
-msgid "360x180dpi"
-msgstr "360 x 180 dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 poll./sec."
-
-msgid "4.00x1.00\""
-msgstr "4,00 x 1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00 x 13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00 x 2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00 x 2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00 x 3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00 x 4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00 x 5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00 x 6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00 x 6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/sec."
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 poll./sec."
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 poll./sec."
-
-msgid "6.00x1.00\""
-msgstr "6,00 x 1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00 x 2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00 x 3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00 x 4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00 x 5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00 x 6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00 x 6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/sec."
-
-msgid "600dpi"
-msgstr "600 dpi"
-
-msgid "60dpi"
-msgstr "60 dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 poll./sec."
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720 dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 poll./sec."
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00 x 1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00 x 2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00 x 3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00 x 4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00 x 5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00 x 6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00 x 6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/sec."
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 poll./sec."
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "Serie a 9 pin"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Accetta stampe"
-
-msgid "Accepted"
-msgstr "Accettate"
-
-msgid "Add Class"
-msgstr "Aggiungi classe"
-
-msgid "Add Printer"
-msgstr "Aggiungi stampante"
-
-msgid "Add RSS Subscription"
-msgstr "Aggiungi sottoscrizione RSS"
-
-msgid "Address"
-msgstr "Indirizzo"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Indirizzo: 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Amministrazione"
-
-msgid "Always"
-msgstr "Sempre"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Applicatore"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Puntatore dest. NULL errato"
-
-msgid "Bad OpenGroup"
-msgstr "OpenGroup errato"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "OpenUI/JCLOpenUI errato"
-
-msgid "Bad OrderDependency"
-msgstr "OrderDependency errato"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Richiesta errata"
-
-msgid "Bad SNMP version number"
-msgstr "Numero versione SNMP errato"
-
-msgid "Bad UIConstraints"
-msgstr "UIConstraints errato"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Valore copie %d errato."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Parametro personalizzato errato"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Valore number-up %d errato."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Valori page-ranges %d-%d errati."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Banner"
-
-msgid "Billing Information: "
-msgstr "Informazioni pagamento: "
-
-msgid "Bond Paper"
-msgstr "Carta normale"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "Stampante etichetta CPCL"
-
-msgid "Cancel RSS Subscription"
-msgstr "Annulla sottoscrizione RSS"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Modifica impostazioni"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Classi"
-
-msgid "Clean Print Heads"
-msgstr "Pulisci testine stampante"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Colore"
-
-msgid "Color Mode"
-msgstr "Modalità colore"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "I nomi comunitari utilizzano una lunghezza indefinita"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Continua"
-
-msgid "Continuous"
-msgstr "Continuo"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Creato"
-
-msgid "Created On: "
-msgstr "Creato il: "
-
-msgid "Custom"
-msgstr "Personalizzato"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Taglia"
-
-msgid "Cutter"
-msgstr "Cutter"
-
-msgid "Dark"
-msgstr "Scuro"
-
-msgid "Darkness"
-msgstr "Oscurità"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Elimina classe"
-
-msgid "Delete Printer"
-msgstr "Elimina stampante"
-
-msgid "Description: "
-msgstr "Descrizione: "
-
-msgid "DeskJet Series"
-msgstr "Serie DeskJet"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "La destinazione \"%s\" non accetta operazioni."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Media termico diretto"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Disabilitato"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Nome driver: "
-
-msgid "Driver Version: "
-msgstr "Versione driver: "
-
-msgid "Duplexer"
-msgstr "Duplexer"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "Stampante etichette EPL1"
-
-msgid "EPL2 Label Printer"
-msgstr "Stampante etichette EPL2"
-
-msgid "Edit Configuration File"
-msgstr "Modifica documento di configurazione"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Banner finale"
-
-msgid "English"
-msgstr "Italian"
-
-msgid "Enter old password:"
-msgstr "Inserisci la vecchia password:"
-
-msgid "Enter password again:"
-msgstr "Inserisci di nuovo la password:"
-
-msgid "Enter password:"
-msgstr "Inserisci la password:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Per accedere a questa pagina, inserisci il tuo nome utente e la password o "
-"il nome utente e la password di root."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Feed busta"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Politica errori"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Ogni 10 etichette"
-
-msgid "Every 2 Labels"
-msgstr "Ogni 2 etichette"
-
-msgid "Every 3 Labels"
-msgstr "Ogni 3 etichette"
-
-msgid "Every 4 Labels"
-msgstr "Ogni 4 etichette"
-
-msgid "Every 5 Labels"
-msgstr "Ogni 5 etichette"
-
-msgid "Every 6 Labels"
-msgstr "Ogni 6 etichette"
-
-msgid "Every 7 Labels"
-msgstr "Ogni 7 etichette"
-
-msgid "Every 8 Labels"
-msgstr "Ogni 8 etichette"
-
-msgid "Every 9 Labels"
-msgstr "Ogni 9 etichette"
-
-msgid "Every Label"
-msgstr "Ogni etichetta"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Attesa fallita"
-
-msgid "Export Printers to Samba"
-msgstr "Esporta stampanti a Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Cartella documento"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Cartella documento: 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Foglio"
-
-msgid "Forbidden"
-msgstr "Vietato"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Generale"
-
-msgid "Generic"
-msgstr "Generico"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU utilizza una lunghezza indefinita"
-
-msgid "Glossy Paper"
-msgstr "Carta patinata"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Scala di grigi"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Cartella interruzione"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Cartella interruzione - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "ISOLatin1"
-
-msgid "Illegal control character"
-msgstr "Carattere di controllo non consentito"
-
-msgid "Illegal main keyword string"
-msgstr "Stringa di parola chiave principale non consentita"
-
-msgid "Illegal option keyword string"
-msgstr "Stringa di parola chiave opzionale non consentita"
-
-msgid "Illegal translation string"
-msgstr "Stringa di traduzione non consentita"
-
-msgid "Illegal whitespace character"
-msgstr "Carattere spazio bianco non consentito"
-
-msgid "Installable Options"
-msgstr "Opzioni installabili"
-
-msgid "Installed"
-msgstr "Installate"
-
-msgid "IntelliBar Label Printer"
-msgstr "Stampante etichette IntelliBar"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr "Errore interno del server"
-
-msgid "Internal error"
-msgstr "Errore interno"
-
-msgid "Internet Postage 2-Part"
-msgstr "Francobollo Internet 2-Part"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Francobollo Internet 2-Part - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Francobollo Internet 3-Part"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Francobollo Internet 3-Part - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "IPP (Internet Printing Protocol)"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "La stampa #%d è già interrotta: impossibile annullare."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "La stampa #%d è già annullata: impossibile annullare."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "La stampa #%d è già completata: impossibile annullare."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Stampa completata"
-
-msgid "Job Created"
-msgstr "Stampa creata"
-
-msgid "Job ID: "
-msgstr "ID stampa: "
-
-msgid "Job Options Changed"
-msgstr "Opzioni di stampa modificate"
-
-msgid "Job Stopped"
-msgstr "Stampa interrotta"
-
-msgid "Job UUID: "
-msgstr "UUID stampa: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "La stampa è completata e non può essere modificata."
-
-msgid "Job operation failed:"
-msgstr "Operazione stampa fallita:"
-
-msgid "Job state cannot be changed."
-msgstr "Lo stato della stampa non può essere modificato."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Stampe"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "Host o stampante LPD/LPR"
-
-msgid "Label Printer"
-msgstr "Stampante etichette"
-
-msgid "Label Top"
-msgstr "Etichetta superiore"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Indirizzo esteso"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Indirizzo esteso: - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet Serie PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Luce"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Lunghezza riga superiore al limite massimo concesso (255 caratteri)"
-
-msgid "List Available Printers"
-msgstr "Elenco stampanti disponibili"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Posizione: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Taglio largo (ritratto)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Produzione e modello: "
-
-msgid "Manual Feed"
-msgstr "Alimentazione manuale"
-
-msgid "Media Dimensions: "
-msgstr "Dimensioni media: "
-
-msgid "Media Limits: "
-msgstr "Limiti media: "
-
-msgid "Media Name: "
-msgstr "Nome media: "
-
-msgid "Media Size"
-msgstr "Dimensione media"
-
-msgid "Media Source"
-msgstr "Sorgente media"
-
-msgid "Media Tracking"
-msgstr "Rilevamento media"
-
-msgid "Media Type"
-msgstr "Tipo media"
-
-msgid "Medium"
-msgstr "Media"
-
-msgid "Memory allocation error"
-msgstr "Errore di allocazione della memoria"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "Intestazione PPD-Adobe-4.x mancante"
-
-msgid "Missing asterisk in column 1"
-msgstr "Asterisco mancante nella colonna 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Stringa di valore mancante"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Modifica classe"
-
-msgid "Modify Printer"
-msgstr "Modifica stampante"
-
-msgid "Move All Jobs"
-msgstr "Sposta tutte le stampe"
-
-msgid "Move Job"
-msgstr "Sposta stampa"
-
-msgid "Moved Permanently"
-msgstr "Spostamento permanente"
-
-msgid "NULL PPD file pointer"
-msgstr "Puntatore documento NULL PPD"
-
-msgid "Name OID uses indefinite length"
-msgstr "Il nome OID utilizza una lunghezza indefinita"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Mai"
-
-msgid "New Stylus Color Series"
-msgstr "Nuova serie Stylus Color"
-
-msgid "New Stylus Photo Series"
-msgstr "Nuova serie Stylus Photo"
-
-msgid "No"
-msgstr "No"
-
-msgid "No Content"
-msgstr "Nessun contenuto"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Nessuna SEQUENZA VarBind"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Nessuna connessione attiva"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Nessun nome comunitario"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Nessuna destinazione aggiunta."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Nessun error-index"
-
-msgid "No error-status"
-msgstr "Nessun error-status"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Nessun nome OID"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Nessun request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Nessuna sottoscrizione trovata."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Nessuna SEQUENZA variable-bindings"
-
-msgid "No version number"
-msgstr "Nessun numero versione"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Non-continuous (rilevamento contrassegno)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Non-continuous (rilevamento web)"
-
-msgid "Normal"
-msgstr "Normale"
-
-msgid "Not Found"
-msgstr "Non trovato"
-
-msgid "Not Implemented"
-msgstr "Non implementato"
-
-msgid "Not Installed"
-msgstr "Non installato"
-
-msgid "Not Modified"
-msgstr "Non modificato"
-
-msgid "Not Supported"
-msgstr "Non supportato"
-
-msgid "Not allowed to print."
-msgstr "Non autorizzata a stampare."
-
-msgid "Note"
-msgstr "Nota"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Off (su un lato)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Aiuto Online"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "Apertura di %s fallita: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup senza un CloseGroup precedente"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI senza un CloseUI/JCLCloseUI precedente"
-
-msgid "Operation Policy"
-msgstr "Politica operativa"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Opzioni installate"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Opzioni: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Modalità di uscita"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "Stampante laser PCL"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Il pacchetto non contiene un Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Il pacchetto non inizia con una SEQUENZA"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Password per %s su %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "Password per %s necessaria per accedere a %s via SAMBA: "
-
-msgid "Pause Class"
-msgstr "Metti in pausa classe"
-
-msgid "Pause Printer"
-msgstr "Metti in pausa stampante"
-
-msgid "Peel-Off"
-msgstr "Stacca"
-
-msgid "Photo"
-msgstr "Foto"
-
-msgid "Photo Labels"
-msgstr "Etichette foto"
-
-msgid "Plain Paper"
-msgstr "Carta normale"
-
-msgid "Policies"
-msgstr "Politiche"
-
-msgid "Port Monitor"
-msgstr "Monitor porta"
-
-msgid "PostScript Printer"
-msgstr "Stampante PostScript"
-
-msgid "Postcard"
-msgstr "Cartolina postale"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Densità di stampa"
-
-msgid "Print Job:"
-msgstr "Stampa:"
-
-msgid "Print Mode"
-msgstr "Modalità di stampa"
-
-msgid "Print Rate"
-msgstr "Velocità di stampa"
-
-msgid "Print Self-Test Page"
-msgstr "Pagina di autoverifica"
-
-msgid "Print Speed"
-msgstr "Velocità di stampa"
-
-msgid "Print Test Page"
-msgstr "Stampa pagina di prova"
-
-msgid "Print and Cut"
-msgstr "Stampa e taglia"
-
-msgid "Print and Tear"
-msgstr "Stampa e separa"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Stampato per: "
-
-msgid "Printed From: "
-msgstr "Stampato da: "
-
-msgid "Printed On: "
-msgstr "Stampato su: "
-
-msgid "Printer Added"
-msgstr "Aggiunta stampante"
-
-msgid "Printer Default"
-msgstr "Stampate di default"
-
-msgid "Printer Deleted"
-msgstr "Stampante eliminata"
-
-msgid "Printer Modified"
-msgstr "Manutenzione stampanti"
-
-msgid "Printer Name: "
-msgstr "Nome stampante: "
-
-msgid "Printer Paused"
-msgstr "Stampante in pausa"
-
-msgid "Printer Settings"
-msgstr "Impostazioni stampante"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Stampante:"
-
-msgid "Printers"
-msgstr "Stampanti"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Libera stampe"
-
-msgid "Quarto"
-msgstr "Quarto"
-
-msgid "Quota limit reached."
-msgstr "Limite di quota raggiunto."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Scarta stampe"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Ristampa dopo errore"
-
-msgid "Request Entity Too Large"
-msgstr "Richiesta di dimensioni eccessive"
-
-msgid "Resolution"
-msgstr "Risoluzione"
-
-msgid "Resume Class"
-msgstr "Riprendi classe"
-
-msgid "Resume Printer"
-msgstr "Riprendi stampante"
-
-msgid "Return Address"
-msgstr "Indirizzo mittente"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Indirizzo mittente - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Riavvolgi"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENZA utilizza una lunghezza indefinita"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Vedi altro"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Porta seriale#%d"
-
-msgid "Server Restarted"
-msgstr "Server riavviato"
-
-msgid "Server Security Auditing"
-msgstr "Auditing sicurezza server"
-
-msgid "Server Started"
-msgstr "Server avviato"
-
-msgid "Server Stopped"
-msgstr "Server interrotto"
-
-msgid "Service Unavailable"
-msgstr "Servizio non disponibile"
-
-msgid "Set Allowed Users"
-msgstr "Imposta utenti autorizzati"
-
-msgid "Set As Server Default"
-msgstr "Imposta come server di default"
-
-msgid "Set Class Options"
-msgstr "Imposta opzioni classe"
-
-msgid "Set Printer Options"
-msgstr "Imposta opzioni stampante"
-
-msgid "Set Publishing"
-msgstr "Imposta pubblicazione"
-
-msgid "Shipping Address"
-msgstr "Indirizzo di spedizione"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Indirizzo di spedizione - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Lato corto (panoramica)"
-
-msgid "Special Paper"
-msgstr "Carta speciale"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Standard"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Banner iniziale"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Istruzione"
-
-msgid "Stylus Color Series"
-msgstr "Serie Stylus Color"
-
-msgid "Stylus Photo Series"
-msgstr "Serie Stylus Photo"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Cambio protocolli"
-
-msgid "Tabloid"
-msgstr "Tabloid"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Separa"
-
-msgid "Tear-Off"
-msgstr "Separa"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Posizione di regolazione separa"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "Impossibile trovare il documento PPD \"%s\"."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "Impossibile aprire il documento PPD \"%s\": %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Il nome della classe può contenere fino a 127 caratteri stampabili e non può "
-"contenere spazi, barre (/) o cancelletti (#)."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"L'attributo notify-lease-duration non può essere usato con le sottoscrizioni "
-"delle stampe."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Il nome della stampante può contenere fino a 127 caratteri stampabili e non "
-"può contenere spazi, barre (/) o cancelletti (#)."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "Printer-uri \"%s\" contiene caratteri non validi."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"È richiesto un printer-uri con formato \"ipp://HOSTNAME/classes/CLASSNAME\"."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"È richiesto un printer-uri con formato \"ipp://HOSTNAME/printers/PRINTERNAME"
-"\"."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"Il nome della sottoscrizione non può contenere spazi, barre (/), punti "
-"interrogativi (?) o cancelletti (#)."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Ci sono troppe sottoscrizioni."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Media trasferimento termico"
-
-msgid "Title: "
-msgstr "Titolo: "
-
-msgid "Too many active jobs."
-msgstr "Troppe stampe attive."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Trasparenza"
-
-msgid "Tray"
-msgstr "Vassoio"
-
-msgid "Tray 1"
-msgstr "Vassoio 1"
-
-msgid "Tray 2"
-msgstr "Vassoio 2"
-
-msgid "Tray 3"
-msgstr "Vassoio 3"
-
-msgid "Tray 4"
-msgstr "Vassoio 4"
-
-msgid "URI Too Long"
-msgstr "URI troppo lungo"
-
-msgid "US Ledger"
-msgstr "Ledger USA"
-
-msgid "US Legal"
-msgstr "Legale USA"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "Lettera USA"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "Porta seriale#%d USB"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Impossibile accedere al documento cupsd.conf:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Impossibile aggiungere la sottoscrizione RSS:"
-
-msgid "Unable to add class:"
-msgstr "Impossibile aggiungere la classe:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Impossibile aggiungere la stampante:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Impossibile annullare la sottoscrizione RSS:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Impossibile modificare l'attributo printer-is-shared:"
-
-msgid "Unable to change printer:"
-msgstr "Impossibile cambiare stampante:"
-
-msgid "Unable to change server settings:"
-msgstr "Impossibile modificare le impostazioni del server:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Impossibile connettersi all'host."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Impossibile creare il documento temporaneo:"
-
-msgid "Unable to delete class:"
-msgstr "Impossibile eliminare la classe:"
-
-msgid "Unable to delete printer:"
-msgstr "Impossibile eliminare la stampante:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Impossibile eseguire il comando di manutenzione:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Impossibile ottenere l'elenco delle classi:"
-
-msgid "Unable to get class status:"
-msgstr "Impossibile ottenere lo stato della classe:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Impossibile ottenere l'elenco dei driver della stampante:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Impossibile ottenere gli attributi della stampante:"
-
-msgid "Unable to get printer list:"
-msgstr "Impossibile ottenere l'elenco delle stampanti:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Impossibile ottenere lo stato della stampante:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Impossibile modificare la classe:"
-
-msgid "Unable to modify printer:"
-msgstr "Impossibile modificare la stampante:"
-
-msgid "Unable to move job"
-msgstr "Impossibile spostare la stampa"
-
-msgid "Unable to move jobs"
-msgstr "Impossibile spostare le stampe"
-
-msgid "Unable to open PPD file"
-msgstr "Impossibile aprire il documento PPD"
-
-msgid "Unable to open PPD file:"
-msgstr "Impossibile aprire il documento PPD:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Impossibile aprire il documento cupsd.conf:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Impossibile stampare la pagina di prova:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Impossibile configurare le opzioni:"
-
-msgid "Unable to set server default:"
-msgstr "Impossibile impostare il server di default:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Impossibile caricare il documento cupsd.conf:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Non autorizzato"
-
-msgid "Units"
-msgstr "Unità"
-
-msgid "Unknown"
-msgstr "Sconosciuto"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Printer-error-policy \"%s\" sconosciuto."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Printer-op-policy \"%s\" sconosciuto."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Tipo valore non supportato"
-
-msgid "Upgrade Required"
-msgstr "Richiesto aggiornamento"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Il valore utilizza una lunghezza indefinita"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind utilizza una lunghezza indefinita"
-
-msgid "Version uses indefinite length"
-msgstr "La versione utilizza una lunghezza indefinita"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Sì"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Devi accedere a questa pagina utilizzando l'URL <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "Stampante etichetta ZPL"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "interrotto"
-
-msgid "canceled"
-msgstr "annullato"
-
-msgid "completed"
-msgstr "completato"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "esecuzione di cups-deviced fallita."
-
-msgid "cups-driverd failed to execute."
-msgstr "esecuzione di cups-driverd fallita."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index utilizza una lunghezza indefinita"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status utilizza una lunghezza indefinita"
-
-msgid "held"
-msgstr "bloccato"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "inattivo"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "in sospeso"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "elaborazione in corso"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id utilizza una lunghezza indefinita"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "verifica di %s fallita: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "interrotto"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "Sconosciuto"
-
-msgid "untitled"
-msgstr "senza titolo"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings utilizza una lunghezza indefinita"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(tutti)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(nessuno)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d voci\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tDopo il fallimento: continua\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tAvvisi:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tBanner richiesto\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tSet di caratteri:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tConnessione: diretta\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tConnessione: remota\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tDimensioni predefinite pagina:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tTono predefinito:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tImpostazioni predefinite porta:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tDescrizione: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tModulo montato:\n"
-#~ "\tTipi di contenuto: qualsiasi\n"
-#~ "\tTipi di stampante: sconosciuti\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tModuli consentiti:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tInterfaccia: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tInterfaccia: %s/interfacce/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tInterfaccia: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tPosizione: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tIn caso di fallimento: nessun avviso\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tUtenti autorizzati:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tUtenti non autorizzati:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tpresente demone\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tnessuna voce\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tla stampante è sul dispositivo '%s' velocità -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tla stampa è disabilitata\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tla stampa è abilitata\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tin coda per %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tla coda è disabilitata\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tla coda è abilitata\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tmotivo sconosciuto\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " RISULTATI DETTAGLIATI DEL TEST DI CONFORMITÀ\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " RIF: pagina 15, sezione 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " RIF: pagina 15, sezione 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " RIF: pagina 19, sezione 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " RIF: pagina 20, sezione 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " RIF: pagina 27, sezione 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " RIF: pagina 42, sezione 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " RIF: pagine 16-17, sezione 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " RIF: pagine 42-45, sezione 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " RIF: pagine 45-46, sezione 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " RIF: pagine 48-49, sezione 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " RIF: pagine 52-54, sezione 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f byte\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Produttore\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Prodotto\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN \"%s %s\" è in conflitto con \"%s %s\"\n"
-#~ " (limitazione=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %s non ha opzioni corrispondenti!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s condivide un prefisso comune con %s\n"
-#~ " RIF: pagina 15, sezione 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN Conflitto tra le scelte predefinite!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN La parola chiave Duplex %s potrebbe non funzionare "
-#~ "correttamente e dovrebbe essere Duplex!\n"
-#~ " RIF: pagina 122, sezione 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " WARN Il documento contiene un misto di interruzioni di riga "
-#~ "CR, LF e CR LF!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN LanguageEncoding richiesto dalla specifica PPD 4.3.\n"
-#~ " RIF: pagine 56-57, sezione 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN La riga %d contiene solamente spazi bianchi!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN Produttore richiesto dalla specifica PPD 4.3.\n"
-#~ " RIF: pagine 58-59, sezione 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN Documento APDialogExtension mancante \"%s\"\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN Documento APPrinterIconPath mancante \"%s\"\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN I documenti PPD per sistemi diversi da Windows dovrebbero "
-#~ "usare solo interruzioni di riga LF, non CR LF!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN Versione PPD %.1f obsoleta!\n"
-#~ " RIF: pagina 42, sezione 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName maggiore di 8.3 in violazione della specifica "
-#~ "PPD.\n"
-#~ " RIF: pagine 61-62, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protocols contiene PJL, ma gli attributi JCL non sono "
-#~ "impostati.\n"
-#~ " RIF: pagine 78-79, sezione 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protocols contiene sia PJL che BCP; atteso TBCP.\n"
-#~ " RIF: pagine 78-79, sezione 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN ShortNickName richiesto dalla specifica PPD 4.3.\n"
-#~ " RIF: pagine 64-65, sezione 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s non esiste!\n"
-
-#~ msgid " %s %s file \"%s\" has the wrong capitalization!\n"
-#~ msgstr " %s %s il file \"%s\" ha una capitalizzazione errata!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Errato %s scelta %s!\n"
-#~ " Rif: pagina 122, sezione 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Stringa traduzione UTF-8 \"%s\" errata per l'opzione %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Stringa traduzione UTF-8 \"%s\" errata per l'opzione %s, scelta "
-#~ "%s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Valore cupsFilter \"%s\" errato!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s cupsICCProfile %s errato!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Valore cupsPreFilter \"%s\" errato!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s cupsUIConstraints %s errato: \"%s\"!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s lingua \"%s\" errata!\n"
-
-#~ msgid " %s Bad spelling of %s - should be %s!\n"
-#~ msgstr " %s Ortografia non corretta di %s - dovrebbe essere %s!\n"
-
-#~ msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID!\n"
-#~ msgstr ""
-#~ " %s Impossibile fornire contemporaneamente APScanAppPath e "
-#~ "APScanAppBundleID!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s cupsUIConstraints %s vuoto!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Manca stringa traduzione \"%s\" per l'opzione %s!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Manca stringa traduzione \"%s\" per l'opzione %s, scelta %s!\n"
-
-#~ msgid " %s Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " %s File APDialogExtension \"%s\" mancante\n"
-
-#~ msgid " %s Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " %s File APPrinterIconPath \"%s\" mancante\n"
-
-#~ msgid " %s Missing APPrinterLowInkTool file \"%s\"\n"
-#~ msgstr " %s File APPrinterLowInkTool \"%s\" mancante\n"
-
-#~ msgid " %s Missing APPrinterUtilityPath file \"%s\"\n"
-#~ msgstr " %s File APPrinterUtilityPath \"%s\" mancante\n"
-
-#~ msgid " %s Missing APScanAppPath file \"%s\"\n"
-#~ msgstr " %s File APScanAppPath \"%s\" mancante\n"
-
-#~ msgid ""
-#~ " %s Missing REQUIRED PageRegion option!\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " %s Opzione RICHIESTA PageRegion mancante!\n"
-#~ " REF: Pagina 100, sezione 5.14.\n"
-
-#~ msgid ""
-#~ " %s Missing REQUIRED PageSize option!\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " %s Opzione RICHIESTA PageSize mancante!\n"
-#~ " REF: Pagina 99, sezione 5.14.\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Manca stringa traduzione *%s %s in UIConstraints \"*%s %s *%s %s"
-#~ "\"!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s Manca stringa traduzione *%s %s in cupsUIConstraints %s: \"%s"
-#~ "\"!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s Documento cupsFilter \"%s\" mancante!\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s Documento cupsICCProfile \"%s\" mancante!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s Documento cupsPreFilter \"%s\" mancante\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s cupsUIResolver %s mancante!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s Manca opzione %s in UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Manca opzione %s in cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr ""
-#~ " %s Nessuna traduzione base \"%s\" è compresa nel documento!\n"
-
-#~ msgid ""
-#~ " %s Non-standard size name \"%s\"!\n"
-#~ " REF: Page 187, section B.2.\n"
-#~ msgstr ""
-#~ " %s Dimensione del nome \"%s\" non standard!\n"
-#~ " REF: Pagina 187, sezione B.2.\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s %s RICHIESTO non definisce la scelta Nessuno!\n"
-#~ " RIF: pagina 122, sezione 5.17\n"
-
-#~ msgid " %s Size \"%s\" defined for %s but not for %s!\n"
-#~ msgstr " %s Dimensione \"%s\" definita per %s ma non per %s.\n"
-
-#~ msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)!\n"
-#~ msgstr " %s La misura \"%s\" ha dimensioni inattese (%gx%g)!\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s il valore hash cupsICCProfile %s si scontra con %s!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s causa un loop!\n"
-
-#~ msgid ""
-#~ " %s cupsUIResolver %s does not list at least two different "
-#~ "options!\n"
-#~ msgstr ""
-#~ " %s il cupsUIResolver %s non elenca almeno due diverse opzioni.\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** %s i nomi di scelta %s e %s differiscono solo per "
-#~ "maiuscole e minuscole!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FAIL** %s deve essere 1284DeviceID!\n"
-#~ " RIF: pagina 72, sezione 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** Default%s %s ERRATO\n"
-#~ " RIF: pagina 40, sezione 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DefaultImageableArea %s ERRATO!\n"
-#~ " RIF: pagina 102, sezione 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DefaultPaperDimension %s ERRATO!\n"
-#~ " RIF: pagina 103, sezione 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FAIL** Attributo JobPatchFile ERRATO nel documento\n"
-#~ " RIF: pagina 24, sezione 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** Produttore ERRATO (dovrebbe essere \"HP\")\n"
-#~ " RIF: pagina 211, tabella D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** Produttore ERRATO (dovrebbe essere \"Oki\")\n"
-#~ " RIF: pagina 211, tabella D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ModelName ERRATO: \"%c\" non consentito nella stringa.\n"
-#~ " RIF: pagine 59-60, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** PSVersion ERRATO: non è \"(string) int\".\n"
-#~ " RIF: pagine 62-64, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Product ERRATO: non è \"(string)\".\n"
-#~ " RIF: pagine 62, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ShortNickName ERRATO: maggiore di 31 caratteri.\n"
-#~ " RIF: pagine 64-65, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FAIL** Scelta %s Errata %s \n"
-#~ " RIF: pagina 84, sezione 5.9.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** FileVersion \"%s\" Errata \n"
-#~ " RIF: pagina 56, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** FormatVersion \"%s\" Errata \n"
-#~ " RIF: pagina 56, sezione 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr " **FAIL** LanguageEncoding %s: deve essere ISOLatin1!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **FAIL** LanguageVersion %s errata: deve essere inglese!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr ""
-#~ " **FAIL** Impossibile interpretare il codice opzione di default: %"
-#~ "s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FAIL** La stringa di traduzione predefinita per l'opzione %s "
-#~ "scelta %s contiene caratteri di 8-bit!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FAIL** La stringa di traduzione predefinita per l'opzione %s "
-#~ "contiene caratteri di 8-bit!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** I nomi dei gruppi %s e %s differiscono solo per maiuscole "
-#~ "e minuscole!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FAIL** Varie occorrenze dei nomi di scelta %s %s!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** i nomi delle opzioni %s e %s differiscono solo per "
-#~ "maiuscole e minuscole!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO Default%s\n"
-#~ " RIF: pagina 40, sezione 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO DefaultImageableArea\n"
-#~ " RIF: pagina 102, sezione 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO DefaultPaperDimension\n"
-#~ " RIF: pagina 103, sezione 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO FileVersion\n"
-#~ " RIF: pagina 56, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO FormatVersion\n"
-#~ " RIF: pagina 56, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO ImageableArea per PageSize %s\n"
-#~ " RIF: pagina 41, sezione 5.\n"
-#~ " RIF: pagina 102, sezione 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO LanguageEncoding\n"
-#~ " RIF: pagine 56-57, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO LanguageVersion\n"
-#~ " RIF: pagine 57-58, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO Produttore\n"
-#~ " RIF: pagine 58-59, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO ModelName\n"
-#~ " RIF: pagine 59-60, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO NickName\n"
-#~ " RIF: pagina 60, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO PCFileName\n"
-#~ " RIF: pagine 61-62, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO PSVersion\n"
-#~ " RIF: pagine 62-64, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO PageRegion\n"
-#~ " RIF: pagina 100, sezione 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO PageSize\n"
-#~ " RIF: pagina 41, sezione 5.\n"
-#~ " RIF: pagina 99, sezione 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO PageSize\n"
-#~ " RIF: pagine 99-100, sezione 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO PaperDimension per PageSize %s\n"
-#~ " RIF: pagina 41, sezione 5.\n"
-#~ " RIF: pagina 103, sezione 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO prodotto\n"
-#~ " RIF: pagina 62, sezione 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** RICHIESTO ShortNickName\n"
-#~ " RIF: pagina 64-65, sezione 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d ERRORI RILEVATI\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%%%BoundingBox: errato alla riga %d!\n"
-#~ " RIF: pagina 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " %%%%Page: errato alla riga %d!\n"
-#~ " RIF: pagina 53, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " %%%%Pages: errato alla riga %d!\n"
-#~ " RIF: pagina 43, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " La riga %d eccede i 255 caratteri (%d)!\n"
-#~ " RIF: pagina 25, lunghezza della riga\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " %!PS-Adobe-3.0 mancante alla prima riga!\n"
-#~ " RIF: pagina 17, 3.1 uniformare documenti\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " Commento %%EndComments mancante!\n"
-#~ " RIF: pagina 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " Commento %%BoundingBox: mancante o errato!\n"
-#~ " RIF: pagina 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " Commenti %%Page: mancante o errato!\n"
-#~ " RIF: pagina 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " Commento %%Pages: mancante o errato!\n"
-#~ " RIF: pagina 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " NESSUN ERRORE RILEVATO\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " Trovate %d righe che eccedono i 255 caratteri!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " Troppi commenti %%BeginDocument!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " Troppi commenti %%EndDocument!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Attenzione: il documento contiene dati binari!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Attenzione: nessun commento %%EndComments nel documento!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Attenzione: versione DSC %.1f obsoleta nel documento!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FAIL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Impossibile aprire il documento PPD: %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Impossibile aprire il file PPD: %s alla riga %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " PASS\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "Busta num. 10"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "Busta num. 11"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "Busta num. 12"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "Busta num. 14"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "Busta num. 9"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f byte\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f byte\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s accetta richieste da %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s non è implementato dalla versione CUPS di lpc.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s non è pronta\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s è pronta\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s è pronta e stampa\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s non accetta richieste da %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s non supportato!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s accetta richieste da %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s non accetta richieste da %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [operazione localhost %d]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s fallito: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: non so cosa fare!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Errore: i nomi della variabile d'ambiente %s non esistono nella "
-#~ "destinazione \"%s\"!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Errore: ID dell'operazione errato!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: Errore: impossibile stampare documenti e modificare operazioni "
-#~ "contemporaneamente!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Errore: impossibile stampare da stdin se vengono forniti documenti o "
-#~ "ID dell'operazione!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Errore: atteso set di caratteri dopo l'opzione '-S'!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Errore: atteso tipo di contenuto dopo l'opzione '-T'!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: Errore: attese copie dopo l'opzione '-n'!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: Errore: atteso numero di copie dopo l'opzione '-#'!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Errore: attesa destinazione dopo l'opzione '-P'!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Errore: attesa destinazione dopo l'opzione '-b'!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Errore: attesa destinazione dopo l'opzione '-d'!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Errore: atteso modulo dopo l'opzione '-f'!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Errore: atteso nome di blocco dopo l'opzione '-H'!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Errore: atteso hostname dopo l'opzione '-H'!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Errore: atteso hostname dopo l'opzione '-h'!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: Errore: atteso elenco modalità dopo l'opzione '-y'!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Errore: atteso nome dopo l'opzione '-%c'!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: Errore: attesa stringa di opzione dopo l'opzione '-o'!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Errore: atteso elenco delle pagine dopo l'opzione '-P'!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Errore: attesa priorità dopo l'opzione '-%c'!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Errore: atteso testo di motivazione dopo l'opzione '-r'!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Errore: atteso titolo dopo l'opzione '-t'!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: Errore: atteso nome utente dopo l'opzione '-U'!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: Errore: atteso nome utente dopo l'opzione '-u'!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Errore: atteso valore dopo l'opzione '-%c'!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Errore: dopo l'opzione '-W', occorre \"completati\", \"non completati"
-#~ "\" o \"tutti\"!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Errore: nessuna destinazione predefinita disponibile.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Errore: la priorità deve essere tra 1 e 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Errore: la stampa programmata non risponde!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Errore: troppi documenti - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Errore: impossibile accedere a \"%s\" - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: Errore: impossibile effettuare la coda da stdin - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Errore: destinazione \"%s\" sconosciuta!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Errore: destinazione \"%s/%s\" sconosciuta!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Errore: opzione '%c' sconosciuta!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Errore: opzione '%s' sconosciuta!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: Atteso ID dell'operazione dopo l'opzione '-i'!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Filtro \"%s\" non disponibile: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Nome di destinazione non valido nell'elenco \"%s\"!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: Stringa filtro \"%s\" non valida\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr ""
-#~ "%s: prima di '-H restart' è richiesto l'ID dell'operazione ('-i "
-#~ "jobid')!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Nessun filtro per convertire da %s/%s a %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: Operazione fallita; %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: Spiacente, nessun supporto di codifica compilato!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Impossibile connettersi al server\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: Impossibile contattare il server!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: Impossibile determinare il tipo MIME di \"%s\"!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: Impossibile aprire %s - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: Errore: impossibile aprire %s - %s alla riga %d.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: impossibile aprire %s: - %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: Impossibile aprire il documento PPD: %s alla riga %d\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d.\n"
-#~ msgstr "%s: Impossibile aprire il file PPD: %s alla riga %d.\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: impossibile leggere il database MIME da \"%s\" o \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: Destinazione sconosciuta \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: Errore: tipo MIME di destinazione %s/%s sconosciuto!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: Opzione '%c' sconosciuta!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: Tipo MIME sorgente %s/%s sconosciuto!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Attenzione: modificatore di formato '%c' non supportato; il risultato "
-#~ "potrebbe non essere corretto!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Attenzione: opzione del set di caratteri ignorata!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Attenzione: opzione del tipo di contenuto ignorata!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Attenzione: opzione del modulo ignorata!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Attenzione: opzione modalità ignorata!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Errore: i nomi della variabile d'ambiente %s non esistono nella "
-#~ "destinazione \"%s\"!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: Errore: attesa opzione=valore dopo l'opzione '-o'!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: Errore: nessuna destinazione predefinita disponibile.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "Scala di grigi a 600 DPI"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60 x 720 dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Sconosciuto comando aiuto non valido\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "Per esportare i driver di stampa è necessaria una password Samba!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr "Per esportare i driver di stampa è necessario un nome utente Samba!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Esiste già una classe chiamata \"%s\"!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Esiste già una stampante chiamata \"%s\"!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (senza margini)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (senza margini)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (con margini)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (senza margini)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "Tentativo di impostare printer-state %s a un valore %d errato!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "I gruppi di attributi non sono ordinati (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "URI dispositivo \"%s\" errato!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "uri dispositivo \"%s\" errato!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Schema device-uri \"%s\" errato!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "document-format \"%s\" errato!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Buffer nome documento errato!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Attributo font errato: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Valore job-priority errato!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Valore job-sheets \"%s\" errato!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Tipo valore job-sheets errato!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Valore job-state errato!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Attributo job-uri \"%s\" errato!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "notify-pull-method \"%s\" errato!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "URI notify-recipient-uri \"%s\" errato!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Opzione + scelta errata alla riga %d!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Port-monitor \"%s\" errato!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Valore printer-state %d errato!"
-
-#~ msgid "Bad request ID %d!"
-#~ msgstr "ID di richiesta errato %d."
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Numero versione richiesta %d.%d errato!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "ID abbonamento errato!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "Busta C0"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "Busta C1"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "Busta C2"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "Busta C3"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "Busta C4"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "Busta C5"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "Busta C6"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "Busta C65"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "Busta C7"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Set di caratteri \"%s\" non supportato!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Busta Chou3"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Busta Chou4"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "I comandi possono essere abbreviati. I comandi sono:\n"
-#~ "\n"
-#~ "esci aiuto chiudi stato ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Impossibile eseguire scansione del tipo \"%s\"!"
-
-#~ msgid "Cover open."
-#~ msgstr "Coperchio aperto"
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "Busta DL"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Developer quasi vuoto."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Developer vuoto!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Dispositivo: uri = %s\n"
-#~ " classe = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " posizione = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Documento %d non trovato nell'operazione %d."
-
-#~ msgid "Door open."
-#~ msgstr "Porta aperta"
-
-#~ msgid "Double Postcard"
-#~ msgstr "Cartolina postale doppia"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: impossibile allocare memoria per info pagina: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: impossibile allocare memoria per matrice pagine: %s\n"
-
-#~ msgid "ERROR: %s job-id user title copies options [file]\n"
-#~ msgstr "ERROR: %s job-id utente titolo copie opzioni [file]\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: %%BoundingBox errato: commento visto!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: %%IncludeFeature errato: commento!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: %%Page errato: commento nel documento!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: %%PageBoundingBox errato: commento nel documento!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: dispositivo SCSI \"%s\" errato!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: documento charset errato %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: tipo charset errato %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: valore colonne errato %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: valore cpi errato %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: riga descrizione font errata: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: valore lpi errato %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Formato di stampa errato!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: direzione testo errata %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: ampiezza testo errata %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: la stampante di destinazione non esiste!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: %%BoundingBox duplicato: commento visto!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: %%Pages duplicato: commento visto!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: documento di stampa vuoto!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: errore %d durante l'invio della richiesta PAPSendData: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: attesa stringa tra virgolette nella riga %d di %s!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: errore USB fatale!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: visto comando HP-GL/2 non valido, impossibile stampare documento!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: %%EndProlog mancante!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: %%EndSetup mancante!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: manca URI su linea di comando e nessuna variabile ambiente "
-#~ "DEVICE_URI!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: manca valore alla riga %d del documento banner!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: occorre una riga msgid prima di ogni stringa di traduzione alla "
-#~ "riga %d di %s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: nessun %%BoundingBox: commento nell'intestazione!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: nessun %%Pages: commento nell'intestazione!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: nessun dispositivo URI trovato in argv[0] e nessuna variabile "
-#~ "ambiente in DEVICE_URI!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: nessun font nel set di caratteri %s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: nessuna pagina trovata!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: carta esaurita!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: variabile ambiente PRINTER non definita!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: il documento stampa non è stato accettato (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: la stampante non risponde\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: la stampante non risponde!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: la stampante ha inviato un EOF inatteso\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr ""
-#~ "ERROR: l'host remoto non ha accettato il documento di controllo (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: l'host remoto non ha accettato il documento dati (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: si è verificato un errore di timeout durante l'invio di dati alla "
-#~ "stampante\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: impossibile aggiungere il documento %d alla stampa: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: impossibile annullare la stampa %d: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: impossibile copiare il documento PDF"
-
-#~ msgid "ERROR: Unable to create pipe"
-#~ msgstr "ERROR: Impossibile creare il canale"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: impossibile creare il socket"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: impossibile creare il documento di stampa compresso temporaneo: %"
-#~ "s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: impossibile creare il documento temporaneo"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: impossibile creare il documento temporaneo: %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: impossibile creare il documento temporaneo: %s.\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: impossibile eseguire pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: impossibile eseguire il programma gs"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: impossibile eseguire il programma pdftops"
-
-#~ msgid "ERROR: Unable to execute pstops program"
-#~ msgstr "ERROR: Impossibile eseguire il programma pstops"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: impossibile biforcare pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: impossibile ottenere richiesta PAP"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: impossibile ottenere risposta PAP"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr ""
-#~ "ERROR: impossibile aprire il documento PPD per la stampante \"%s\" - %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: impossibile ottenere zona di default AppleTalk"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr ""
-#~ "ERROR: impossibile ottenere gli attributi (%2$s) della stampa %1$d!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: impossibile ottenere lo stato della stampante (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: impossibile individuare la stampante '%s'!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: impossibile cercare risposta PAP"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: impossibile cercare stampanti AppleTalk"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: impossibile rendere indirizzo AppleTalk"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: impossibile aprire \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: impossibile aprire %s: %s\n"
-
-#~ msgid "ERROR: Unable to open PPD file!\n"
-#~ msgstr "ERROR: Impossibile aprire il file PPD.\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: impossibile aprire documento banner \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: impossibile aprire documento dispositivo \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: impossibile aprire documento \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: impossibile aprire documento \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: impossibile aprire il documento immagine per la stampa!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: impossibile aprire documento di stampa \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: impossibile aprire il documento di stampa %s - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: impossibile aprire il documento di stampa %s: %s\n"
-
-#~ msgid "ERROR: Unable to open raster file - %s\n"
-#~ msgstr "ERROR: Impossibile aprire il file raster - %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: impossibile aprire il documento di stampa compresso temporaneo: %"
-#~ "s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: impossibile aprire il documento temporaneo"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: impossibile stampare colonne di testo %d!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: impossibile stampare pagina di testo %dx%d!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: impossibile leggere i dati di stampa"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: impossibile leggere i dati di stampa!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: impossibile prenotare una porta"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: impossibile trovare distanza %ld nel documento - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: impossibile trovare distanza %lld nel documento - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: impossibile inviare comando LPD"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: impossibile inviare richiesta PAP"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: impossibile inviare richiesta dati PAP iniziale"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: impossibile inviare i dati di stampa (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: impossibile inviare i dati di stampa!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: impossibile inviare il documento di stampa alla stampante"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: impossibile inviare trailing nul alla stampante"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: impossibile attendere per pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: impossibile scrivere %d byte su \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: impossibile scrivere %d byte sulla stampante!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: impossibile scrivere documento controllo"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: impossibile scrivere dati di stampa"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: impossibile scrivere dati di stampa: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: impossibile scrivere dati raster sul driver!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: impossibile scrivere documento temporaneo"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: impossibile scrivere dati documento non compressi: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: testo inatteso alla riga %d di %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: valore opzione di codifica sconosciuto \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: ordine documento sconosciuto \"%s\"\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: carattere formato sconosciuto \"%c\"\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: formato catalogo messaggio di \"%s\" sconosciuto!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: opzione \"%s\" con valore \"%s\" sconosciuta!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: modalità di stampa \"%s\" sconosciuta\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: valore opzione versione sconosciuto \"%s\"!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr ""
-#~ "ERROR: valore luminosità %s non supportato, utilizzo luminosità=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: valore gamma %s non supportato, utilizzo gamma=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: valore number-up %d non supportato, utilizzo number-up=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: valore number-up-layout %s non supportato, utilizzo number-up-"
-#~ "layout=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: valore page-border %s non supportato, utilizzo page-border=none!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: rilevato overflow (%d byte) doc_printf, interrompo!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: il filtro pdftops si è chiuso al segnale %d!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: il filtro pdftops si è chiuso con stato %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops si è chiuso al segnale %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops si è chiuso con stato %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: recuperabile: impossibile stabilire connessione con la stampante; "
-#~ "riprovo fra 30 secondi...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: selezione() fallita"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: impossibile avviare documento di stampa"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Documento PPD vuoto!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Errore: è necessario un nome host dopo l'opzione '-h'!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "FAIL\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "Gli URI del dispositivo documento sono stati disabilitati! Per "
-#~ "abilitarli, consulta l'istruzione del FileDevice in \"%s/cupsd.conf\"."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Temperatura del fusibile elevata!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Temperatura del fusibile bassa!"
-
-#~ msgid "German FanFold"
-#~ msgstr "Modulo continuo tedesco"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "Modulo continuo legale tedesco"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Ottenuto un attributo printer-uri, ma nessun job-id!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk disabilitata in Preferenze di Sistema.\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk disabilitata in Preferenze di Sistema.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: annullo lavoro di stampa...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: connesso alla stampante...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: connetto alla stampante...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: documento di controllo inviato con successo\n"
-
-#~ msgid "INFO: Copying print data...\n"
-#~ msgstr "INFO: Copia dei dati di stampa...\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: documento dati inviato con successo\n"
-
-#~ msgid "INFO: Finished page %d...\n"
-#~ msgstr "INFO: Pagina %d completata...\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: formatto pagina %d...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: carico documento immagine...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: cerco la stampante...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: apro la connessione\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: documento stampa inviato, attendo che la stampante finisca...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: stampante occupata; riprovo fra 10 secondi...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: stampante occupata; riprovo fra 30 secondi...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: stampante occupata; riprovo fra 5 secondi...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr "INFO: la stampante non supporta IPP/%d.%d, provo IPP/1.0...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: la stampante è occupata; riprovo fra 5 secondi...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: la stampante al momento non è in linea.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: la stampante al momento non è in linea.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: la stampante è adesso in linea.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: la stampante non è in linea.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: stampante non connessa; riprovo fra 30 secondi...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: stampo pagina %d, %d%% completato...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: stampo pagina %d...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: pronta per stampare.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: invio documento di controllo (%lu byte)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: invio documento di controllo (%u byte)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: invio dati\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: invio documento dati (%ld byte)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: invio documento dati (%lld byte)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: invio dati di stampa...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: inviato documento stampa, %ld byte...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: inviato documento stampa, %lld byte...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: eseguo lo spool della stampa LPR, %.0f%% completato...\n"
-
-#~ msgid "INFO: Starting page %d...\n"
-#~ msgstr "INFO: Pagina iniziale %d...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: impossibile contattare la stampante, in coda sulla stampante "
-#~ "successiva nella classe...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: uso una zona di default AppleTalk\"%s\"\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: attendo che la stampa sia completata...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: attendo che la stampante sia disponibile...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "Busta ISO B4"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (senza margini)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "Busta ISO B5"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "Busta ISO B6"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Inchiostro/toner quasi vuoto."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Inchiostro/toner vuoto!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Cestino inchiostro/toner quasi pieno."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Cestino inchiostro/toner pieno!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Interblocco aperto."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Busta invito"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Busta standard italiana"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "La stampa #%d non può essere riavviata: nessun documento!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "La stampa #%d non esiste!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "La stampa #%d è terminata e non può essere modificata!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "La stampa %d non è completa!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "La stampa #%d non è bloccata per l'autenticazione!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "La stampa #%d non è bloccata!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "La stampa #%s non esiste!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Stampa %d non trovata!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Le sottoscrizioni delle stampe non possono essere rinnovate!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Busta Kaku2"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Busta Kaku3"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Lingua \"%s\" non supportata!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Inceppamento supporto!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Cassetto carta quasi vuoto."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Cassetto carta vuoto!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Cassetto carta mancante!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Bisogna riempire il cassetto carta."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "Attributo document-number mancante!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Doppi apici mancanti alla riga %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Variabile modulo mancante"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "Attributo notify-subscription-ids mancante!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Attributo requesting-user-name mancante!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Attributi necessari mancanti!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Valore mancante alla riga %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Modello: nome = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Busta Monarch"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: documento di stampa accettato: ID stampa %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: documento di stampa accettato: ID stampa sconosciuto.\n"
-
-#~ msgid "Nested classes are not allowed!"
-#~ msgstr "Le classi nidificate non sono consentite."
-
-#~ msgid "No PPD name!"
-#~ msgstr "Nessun nome PPD!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Non è installato nessun driver di stampa Windows!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Nessuna stampa attiva su %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Nessun attributo nella richiesta!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Nessuna informazione di autenticazione fornita!"
-
-#~ msgid "No default printer"
-#~ msgstr "Nessuna stampante predefinita"
-
-#~ msgid "No file!?!"
-#~ msgstr "Nessun documento!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Nessuna ora modifica!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Nessun nome stampante!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Nessun printer-uri trovato per la classe!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Nessun printer-uri trovato!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Nessun printer-uri nella richiesta!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Nessun attributo di sottoscrizione nella richiesta!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC quasi alla fine del proprio ciclo di vita utile."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC alla fine del proprio ciclo di vita utile!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Toner esaurito!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Vassoio di uscita quasi pieno."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Vassoio di uscita pieno!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "L'uscita per la stampante %s è inviata a %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "L'uscita per la stampante %s è inviata alla stampante remota %s su %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "L'uscita per la stampante %s/%s è inviata a %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "L'uscita per la stampante %s/%s è inviata alla stampante remota %s su %s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Vassoio di uscita mancante!"
-
-#~ msgid "PASS\n"
-#~ msgstr "PASS\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "Busta PRC1"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "Busta PRC10"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "Busta PRC2"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "Busta PRC3"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (senza margini)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "Busta PRC4"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "Busta PRC5"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "Busta PRC6"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "Busta PRC7"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "Busta PRC8"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "Busta PRC9"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Busta personale"
-
-#~ msgid "Printer offline."
-#~ msgstr "Stampante non in linea."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr "Posiz. Proprietario Stampa Doc. Dim. totali\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr "Posiz. Proprietario Stampa Doc. Dim. totali\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Esecuzione del comando: %s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "Stampante SCSI"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tabloid (senza margini)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "Il valore notify-user-data è troppo grande (%d > 63 ottetti)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "La stampante o la classe non è condivisa!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "La stampante o la classe non è stata trovata."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "Attributo printer-uri richiesto!"
-
-#~ msgid "Toner low."
-#~ msgstr "Toner basso."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "Troppi valori job-sheets (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "Troppi valori printer-state-reasons (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "Executive USA"
-
-#~ msgid "US Fanfold"
-#~ msgstr "Modulo continuo USA"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "Legale USA (senza margini)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "Lettera USA (senza margini)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "Lettera USA (con margini)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Impossibile aggiungere la stampa alla destinazione \"%s\"!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Impossibile allocare memoria per tipi di documento!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossibile copiare i documenti dei driver della stampante per CPU a 64 "
-#~ "bit (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossibile copiare i documenti dei driver della stampante per Windows a "
-#~ "64 bit (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossibile copiare i documenti CUPS dei driver della stampante (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Impossibile copiare il documento PPD: %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Impossibile copiare il documento PPD!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossibile copiare i documenti dei driver della stampante per Windows "
-#~ "2000 (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossibile copiare i documenti dei driver della stampante per Windows 9x "
-#~ "(%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Impossibile copiare lo script di interfaccia: %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Impossibile creare printer-uri!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "Impossibile modificare i documenti cupsd.conf più grandi di 1 MB!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Impossibile trovare una destinazione per la stampa!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Impossibile trovare la stampante!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossibile installare i documenti dei driver di stampa per Windows 2000 "
-#~ "(%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Impossibile installare i documenti dei driver di stampa per Windows 9x (%"
-#~ "d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Impossibile aprire il documento %d nella stampa %d!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Impossibile eseguire \"%s\": %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Impossibile inviare comandi al driver della stampante!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Impossibile configurare il driver della stampante per Windows (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Impossibile utilizzare il driver della classe USB legacy!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Errore della stampante sconosciuto (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Set di caratteri \"%s\" non supportato!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Compressione \"%s\" non supportata!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Attributo compressione %s non supportato!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Formato \"%s\" non supportato!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Formato '%s non supportato'!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Formato '%s/%s' non supportato!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Utilizzo:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destinazione\n"
-#~ " lpadmin [-h server] -x destinazione\n"
-#~ " lpadmin [-h server] -p stampante [-c add-class] [-i interfaccia] [-m "
-#~ "modello]\n"
-#~ " [-r remove-class] [-v dispositivo] [-D "
-#~ "descrizione]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u consenti:utente,utente] [-u non consentire:"
-#~ "utente,utente]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Utilizzo: [nome documento] opzioni titolo copie utente stampa %s\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Utilizzo: [documento] opzioni titolo copie utente ID stampa %s\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Utilizzo: documento opzioni titolo copie utente ID stampa %s\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -e Use every filter from the PPD file\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Utilizzo: convert [ opzioni ]\n"
-#~ "\n"
-#~ "Opzioni:\n"
-#~ "\n"
-#~ " -e Utilizza ogni filtro dal file PPD\n"
-#~ " -f nomefile Imposta il file da convertire (altrimenti stdin)\n"
-#~ " -o nomefile Imposta il file da generare (altrimenti stdout)\n"
-#~ " -i tipo/mime Imposta il tipo MIME in ingresso (altrimenti auto-"
-#~ "typed)\n"
-#~ " -j tipo/mime Imposta il tipo MIME di uscita (altrimenti "
-#~ "application/pdf)\n"
-#~ " -P nomefile.ppd Imposta file PPD\n"
-#~ " -a 'nome=valore ...' Imposta opzione(i)\n"
-#~ " -U nomeutente Imposta il nome utente per la stampa\n"
-#~ " -J titolo Imposta il titolo\n"
-#~ " -c copie Imposta il numero di copie\n"
-#~ " -u Rimuove il file PPD al completamento\n"
-#~ " -D Rimuove il file in ingresso al completamento\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Utilizzo: convert [ opzioni ]\n"
-#~ "\n"
-#~ "Opzioni:\n"
-#~ "\n"
-#~ " -f nome documento Imposta il documento da convertire "
-#~ "(altrimenti stdin)\n"
-#~ " -o nome documento Imposta il documento da generare (altrimenti "
-#~ "stdout)\n"
-#~ " -i mime/type Imposta il tipo MIME input (altrimenti auto-"
-#~ "typed)\n"
-#~ " -j mime/type Imposta il tipo MIME output (altrimenti "
-#~ "application/pdf)\n"
-#~ " -P filename.ppd Imposta il documento PPD\n"
-#~ " -a 'nome=valore ...' Imposta opzione(i)\n"
-#~ " -U nome utente Imposta il nome utente per la stampa\n"
-#~ " -J titolo Imposta il titolo\n"
-#~ " -c copie Imposta il numero di copie\n"
-#~ " -u Rimuove il documento PPD terminata l'azione\n"
-#~ " -D Rimuove il documento input terminata l'azione\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Utilizzo: cupsaddsmb [opzioni] stampante1 ... stampanteN\n"
-#~ " cupsaddsmb [opzioni] -a\n"
-#~ "\n"
-#~ "Opzioni:\n"
-#~ " -E Codifica la connessione al server\n"
-#~ " -H samba-server Utilizza il server SAMBA specificato\n"
-#~ " -U samba-user Effettua l'autenticazione utilizzando l'utente SAMBA "
-#~ "specificato\n"
-#~ " -a Esporta tutte le stampanti\n"
-#~ " -h cups-server Utilizza il server CUPS specificato\n"
-#~ " -v Cerca di essere dettagliato (mostra comandi)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Utilizzo: cupsctl [opzioni] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Opzioni:\n"
-#~ "\n"
-#~ " -E Abilita codifica\n"
-#~ " -U nome utente Specifica nome utente\n"
-#~ " -h server[:porta] Specifica indirizzo server\n"
-#~ "\n"
-#~ " --[no-]debug-logging Attiva o disattiva logging di debug\n"
-#~ " --[no-]remote-admin Attiva o disattiva amministrazione remota\n"
-#~ " --[no-]remote-any Consenti/impedisci accesso da Internet\n"
-#~ " --[no-]remote-printers Mostra/nascondi stampanti remote\n"
-#~ " --[no-]share-printers Attiva o disattiva condivisione stampanti\n"
-#~ " --[no-]-]user-cancel-any Consenti/impedisci agli utenti di annullare "
-#~ "qualsiasi stampa\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Utilizzo: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Carica documento di configurazione alternativo\n"
-#~ "-f Esegui in primo piano\n"
-#~ "-F Esegui in primo piano, ma sganciato\n"
-#~ "-h Mostra questo messaggio relativo all'utilizzo\n"
-#~ "-l Esegui cupsd da launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -e Use every filter from the PPD file\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Utilizzo: cupsfilter -m tipo/mime [ opzioni ] nomefile\n"
-#~ "\n"
-#~ "Opzioni:\n"
-#~ "\n"
-#~ " -c cupsd.conf Imposta il file cupsd.conf da utilizzare\n"
-#~ " -e Usa ogni filtro dal file PPD\n"
-#~ " -j job-id[,N] Filtra il file N dalla stampa specificata (predefinito "
-#~ "è il file 1)\n"
-#~ " -n copies Imposta il numero di copie\n"
-#~ " -o name=value Imposta opzione(i)\n"
-#~ " -p filename.ppd Imposta il file PPD\n"
-#~ " -t title Imposta il titolo\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Utilizzo: cupsfilter -m mime/type [ opzioni] filename\n"
-#~ "\n"
-#~ "Opzioni:\n"
-#~ "\n"
-#~ " -c cupsd.conf Imposta il documento cupsd.conf da utilizzare\n"
-#~ " -j job-id[,N] Filtra il documento N dalla stampa specificata "
-#~ "(l'opzione di default è documento 1)\n"
-#~ " -n copies Imposta il numero di copie\n"
-#~ " -o name=value Imposta l'opzione(i)\n"
-#~ " -p filename.ppd Imposta il documento PPD\n"
-#~ " -t title Imposta il titolo\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Utilizzo: cupstestdsc [opzioni] nomedocumento.ps [... nomedocumento.ps]\n"
-#~ " cupstestdsc [opzioni] -\n"
-#~ "\n"
-#~ "Opzioni:\n"
-#~ "\n"
-#~ " -h Mostra l'utilizzo del programma\n"
-#~ "\n"
-#~ " Nota: questo programma convalida solo i commenti DSC, non il "
-#~ "PostScript stesso.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-#~ "translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Utilizzo: cupstestppd [opzioni] nomefile1.ppd[.gz] [... nomefileN.ppd[."
-#~ "gz]]\n"
-#~ " programma | cupstestppd [opzioni] -\n"
-#~ "\n"
-#~ "Opzioni:\n"
-#~ "\n"
-#~ " -R cartella-radice Imposta radice alternativa\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-#~ "translations}\n"
-#~ " Emette avvisi al posto degli errori\n"
-#~ " -q Esecuzione silenziosa\n"
-#~ " -r Modalità di apertura 'rilassata'\n"
-#~ " -v Abbastanza dettagliato\n"
-#~ " -vv Molto dettagliato\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Utilizzo: cupstestppd [opzioni] nomefile1.ppd[.gz] [... nomefileN.ppd[."
-#~ "gz]]\n"
-#~ " programma | cupstestppd [opzioni] -\n"
-#~ "\n"
-#~ "Opzioni:\n"
-#~ "\n"
-#~ " -R root-directory Configura root alternativa\n"
-#~ " -W {tutti,nessuno,limitazioni,default,filtri,traduzioni}\n"
-#~ " Avvisi per problemi invece di errori\n"
-#~ " -q Esegui in silenzio\n"
-#~ " -r Utilizza modalità di apertura 'rilassata'\n"
-#~ " -v Cerca di essere abbastanza dettagliato\n"
-#~ " -vv Cerca di essere molto dettagliato\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Utilizzo: lpmove stampa/fonte dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Utilizzo: lpoptions [-h server] [-E] -d stampante\n"
-#~ " lpoptions [-h server] [-E] [-p stampante] -l\n"
-#~ " lpoptions [-h server] [-E] -p stampante -o opzione[=valore] ...\n"
-#~ " lpoptions [-h server] [-E] -x stampante\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Utilizzo: lppasswd [-g nomegruppo]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Utilizzo: lppasswd [-g nomegruppo] [nomeutente]\n"
-#~ " lppasswd [-g nomegruppo] -a [nomeutente]\n"
-#~ " lppasswd [-g nomegruppo] -x [nomeutente]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Utilizzo: lpq [-P dest] [-U nomeutente] [-h nomehost[:porta]] [-l] "
-#~ "[+intervallo]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Utilizzo: ppdc [opzioni] nomedocumento.drv [ ... nomedocumentoN.drv ]\n"
-#~ "Opzioni:\n"
-#~ " -D name=value Imposta la variabile specificata con il valore.\n"
-#~ " -I include-dir Aggiunge includi directory al percorso di "
-#~ "ricerca.\n"
-#~ " -c catalog.po Carica il catalogo messaggi specificato.\n"
-#~ " -d output-dir Specifica la directory di output.\n"
-#~ " -l lingua[,lingua,...] Specifica la lingua(e) di output (impostazioni "
-#~ "internazionali).\n"
-#~ " -m Utilizza il valore ModelName come nome documento.\n"
-#~ " -t Verifica PPD invece di generarli.\n"
-#~ " -v Cerca di essere abbastanza dettagliato (più v per "
-#~ "ulteriori dettagli).\n"
-#~ " -z Comprime i documenti PPD utilizzando GNU zip.\n"
-#~ " --cr Termina le linee con CR (Mac OS 9).\n"
-#~ " --crlf Termina linee con CR + LF (Windows).\n"
-#~ " --lf Termina linee con LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Utilizzo: ppdhtml [opzioni] nomedocumento.drv >nomedocumento.html\n"
-#~ " -D name=value Imposta il nome specificato con il valore .\n"
-#~ "Opzioni:\n"
-#~ " -I include-dir Aggiunge includi directory al percorso di ricerca.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Utilizzo: ppdi [options] nomedocumento.ppd [ ... nomedocumentoN.ppd ]\n"
-#~ "Opzioni:\n"
-#~ " -I include-dir\n"
-#~ " -o nomedocumento.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Utilizzo: ppdmerge [opzioni] nomedocumento.ppd [ ... nomedocumentoN."
-#~ "ppd ]\n"
-#~ "Opzioni:\n"
-#~ " -o nomedocumento.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Utilizzo: ppdpo [opzioni] -o nomedocumento.po nomedocumento.drv [ ... "
-#~ "nomedocumentoN.drv ]\n"
-#~ "Opzioni:\n"
-#~ " -D name=value Imposta la variabile specificata con il valore.\n"
-#~ " -I include-dir Aggiunge includi directory al percorso di ricerca.\n"
-#~ " -v Cerca di essere dettagliato (più v per ulteriori "
-#~ "dettagli).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Utilizzo: snmp [host-or-ip-address]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: aggiungi solo le prime stampanti %d trovate"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: atteso booleano per l'opzione waiteof \"%s\"\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: impossibile leggere richiesta canale laterale!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: impossibile includere l'opzione \"%s\" tramite IncludeFeature!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: la stampante non risponde\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: la stampante ha inviato un EOF inatteso!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: l'host remoto non ha risposto con byte stato comando dopo %d "
-#~ "secondi!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: l'host remoto non ha risposto con byte stato controllo dopo %d "
-#~ "secondi!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: l'host remoto non ha risposto con byte stato dati dopo %d "
-#~ "secondi!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: comando SCSI scaduto (%d); riprovo...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: questo documento non è conforme alle convenzioni Adobe sulla "
-#~ "struttura dei documenti (Adobe Document Structuring Conventions) e "
-#~ "potrebbe non essere stampato correttamente!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: impossibile aprire documento \"%s:%s\": %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: impossibile inviare richiesta PAP"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: pacchetto PAP inatteso di tipo %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: pacchetto PAP sconosciuto di tipo %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: scelta sconosciuta \"%s\" per opzione \"%s\"!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: opzione sconosciuta \"%s\"!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: tasso baud %s non supportato!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: atteso numero per l'opzione status \"%s\"\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: recuperabile: l'host del network '%s' è occupato; riprovo fra %d "
-#~ "secondi...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr ""
-#~ "Attenzione: non è installato nessun driver di stampa per Windows 2000!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "Busta You4"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "convert: utilizza l'opzione -f per specificare un documento da "
-#~ "convertire.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: nessun documento PPD per la stampante \"%s\" - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: impossibile connettersi al server: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: opzione sconosciuta \"%s\"!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: opzione sconosciuta \"-%c\"!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr ""
-#~ "cupsd: atteso nome documento di configurazione dopo l'opzione \"-c\"!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: impossibile aprire la directory attuale!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: argomento sconosciuto \"%s\" - interruzione!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: opzione sconosciuta \"%c\" - interrompo!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: supporto launchd(8) non compilato, eseguo in modalità normale.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: numero documento %d non valido!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: ID stampa %d non valido!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: è possibile specificare solo un nome documento!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: impossibile creare il documento temporaneo: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: impossibile aprire documento di stampa - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: l'opzione -q è incompatibile con l'opzione -v.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: l'opzione -v è incompatibile con l'opzione -q.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "dispositivo per %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "dispositivo per %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\tottieni aiuto riguardo ai comandi\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "attributo job-printer-uri mancante!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr ""
-#~ "lpadmin: il nome della classe può contenere solo caratteri stampabili!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: atteso PPD dopo l'opzione '-P'!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: atteso allow/deny:userlist dopo l'opzione '-u'!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: attesa classe dopo l'opzione '-r'!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: atteso nome classe dopo l'opzione '-c'!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: attesa descrizione dopo l'opzione '-D'!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: atteso URI di dispositivo dopo l'opzione '-v'!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: attesi tipi di documento dopo l'opzione '-I'!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: atteso nome host dopo l'opzione '-h'!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: attesa interfaccia dopo l'opzione '-i'!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: attesa posizione dopo l'opzione '-L'!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: atteso modello dopo l'opzione '-m'!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: atteso nome=valore dopo l'opzione '-o'!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: attesa stampante dopo l'opzione '-p'!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: atteso nome stampante dopo l'opzione '-d'!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: attesa stampante o classe dopo l'opzione '-x'!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: nessun nome utente trovato!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: la stampante %s è già un membro della classe %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: la stampante %s non è un membro della classe %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr ""
-#~ "lpadmin: il nome della stampante può contenere solo caratteri "
-#~ "stampabili!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: impossibile aggiungere una stampante alla classe:\n"
-#~ " Devi specificare prima il nome di una stampante!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: impossibile connettersi al server: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: impossibile creare il documento temporaneo - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: impossibile creare il documento temporaneo: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: impossibile aprire documento PPD \"%s\" - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: impossibile aprire documento \"%s\": %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: impossibile rimuovere una stampante dalla classe:\n"
-#~ " Devi specificare prima il nome di una stampante!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: impossibile impostare il documento PPD:\n"
-#~ " Devi specificare prima il nome di una stampante!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: impossibile impostare URI dispositivo:\n"
-#~ " Devi specificare prima il nome di una stampante!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: impossibile impostare lo script di interfaccia o il documento "
-#~ "PPD:\n"
-#~ " Devi specificare prima il nome di una stampante!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: impossibile impostare lo script di interfaccia:\n"
-#~ " Devi specificare prima il nome di una stampante!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: impossibile impostare la descrizione della stampante:\n"
-#~ " Devi specificare prima il nome di una stampante!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: impossibile impostare la posizione della stampante:\n"
-#~ " Devi specificare prima il nome di una stampante!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: impossibile impostare le opzioni della stampante:\n"
-#~ " Devi specificare prima il nome di una stampante!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: opzione consenti/non consentire \"%s\" sconosciuta!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: argomento '%s' sconosciuto!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: opzione '%c' sconosciuta!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: attenzione, elenco dei tipi di contenuto ignorato!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo: attesa stringa ID dispositivo 1284 dopo --device-id!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: attesa lingua dopo --language!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: attesi marca e modello dopo --make-and-model!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: attesa stringa prodotto dopo --product!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: atteso elenco schema dopo --exclude-schemes!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: atteso elenco schema dopo --include-schemes!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: atteso timeout dopo --timeout!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: argomento '%s' sconosciuto!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: opzione '%c' sconosciuta!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: opzione '%s' sconosciuta!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: impossibile connettersi al server: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: argomento '%s' sconosciuto!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: opzione '%c' sconosciuta!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: nessuna stampante!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: impossibile aggiungere una stampante o un'istanza: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: impossibile aprire il file PPD per %s: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: impossibile aprire il documento PPD per %s!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: stampante o classe sconosciuta!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: solo root può aggiungere o eliminare le password!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: il documento delle password è occupato!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: documento delle password non aggiornato!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: spiacente, la password non corrisponde!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: spiacente, password rifiutata.\n"
-#~ "La password deve essere di almeno 6 caratteri, non può contenere\n"
-#~ "il nome utente e deve contenere almeno una lettera e un numero.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: spiacente, le password non corrispondono!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: impossibile copiare la stringa della password: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: impossibile aprire il documento delle password: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: impossibile scrivere il documento delle password: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd: copia di sicurezza del vecchio documento delle password "
-#~ "fallita: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: rinomina del documento delle password fallita: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: l'utente \"%s\" e il gruppo \"%s\" non esistono.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: errore: i nomi della variabile d'ambiente %s non esistono nella "
-#~ "destinazione \"%s\"!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "membri della classe %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "nessuna voce\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "nessuna destinazione predefinita di sistema\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events non specificato!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri URI \"%s\" è già utilizzato!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri URI \"%s\" utilizza uno schema sconosciuto!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d non corretto!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: aggiungi includi directory \"%s\"...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: aggiungi/aggiorna testo UI da %s...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: valore booleano errato (%s) alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: nome risoluzione errato (%s) alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: chiave stato errata (%s) alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: sostituzione variabile errata ($%c) alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: scelta trovata alla riga %d di %s senza opzione!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: duplica #po per impostazioni internazionali %s alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: attesa una definizione filtro alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: atteso un nome applicazione alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: atteso un valore booleano alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: atteso un set di caratteri dopo Font alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: atteso codice scelta alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: attesa scelta nome/testo alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: atteso ordine colore per ColorModel alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: atteso spazio colore per ColorModel alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: attesa compressione per ColorModel alla riga %d di %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: attesa stringa limitazioni per UIConstraints alla riga %d di %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: attesa parola chiave tipo driver dopo DriverType alla riga %d di %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: atteso tipo duplex dopo Duplex alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: attesa codifica dopo Font alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome documento dopo #po %s alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome/testo gruppo alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome documento alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: atteso intero alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: attese impostazioni internazionali dopo #po alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome dopo %s alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome dopo FileName alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome dopo Font alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome dopo Produttore alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome dopo MediaSize alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome dopo ModelName alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome dopo PCFileName alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome/testo dopo %s alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome/testo dopo Installabile alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: atteso nome/testo dopo Risoluzione alla riga %d di %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: attesa combinazione nome/testo per ColorModel alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: attesa opzione nome/testo alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: attesa sezione opzione alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: atteso tipo opzione alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: atteso campo sostituzione dopo Risoluzione alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: atteso numero reale alla riga %d di %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: atteso risoluzione/mediatype dopo ColorProfile alla riga %d of %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: atteso risoluzione/mediatype dopo SimpleColorProfile alla riga %d "
-#~ "of %s!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: atteso selettore dopo %s alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: atteso stato dopo Font alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: attesa stringa dopo Copyright alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: attesa stringa dopo Versione alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: attesi due nomi opzione alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: atteso valore dopo %s alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: attesa versione dopo Font alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: nome documento #include/#po \"%s\" non valido!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: costo non valido per filtro alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: tipo MIME vuoto non valido per filtro alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: nome programma vuoto non valido per filtro alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: sezione opzione \"%s\" non valida alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: tipo opzione \"%s\" non valida alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: carico documento informazioni del driver \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: carico messaggi per impostazioni internazionali \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: carico messaggi da \"%s\"...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: #endif mancante alla fine di \"%s\"!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: #if mancante alla riga %d di %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr ""
-#~ "ppdc: nessun catalogo messaggi fornito per impostazioni internazionali %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Option %s defined in two different groups on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: L'opzione %s è definita in due gruppi differenti alla riga %d di %"
-#~ "s.\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: opzione %s ridefinita con un tipo diverso alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: l'opzione limitazione deve essere *indicata alla riga %d of %s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: troppi #if' nidificati alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: impossibile creare il documento PPD \"%s\" - %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: impossibile creare la directory di output %s: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: impossibile creare pipe di output: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: impossibile eseguire cupstestppd: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: impossibile trovare il documento #po %s alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: impossibile trovare includi documento \"%s\" alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: impossibile trovare localizzazione per \"%s\" - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr ""
-#~ "ppdc: impossibile caricare documento di localizzazione per \"%s\" - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: variabile non definita (%s) alla riga %d di %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: tipo driver %s sconosciuto alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: tipo duplex \"%s\" sconosciuto alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: tipo media \"%s\" sconosciuto alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: token \"%s\" sconosciuto visto alla riga %d di %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: caratteri trailing sconosciuti nel numero reale \"%s\" alla riga %d "
-#~ "di %s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc: stringa non terminata che inizia con %c alla riga %d di %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: scrivo %s...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: scrivo documenti PPD nella directory \"%s\"...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: LanguageVersion \"%s\" errato in %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: ignoro documento %s PPD...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: impossibile eseguire copia di backup di %s su %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "la stampante %s è disabilitata da %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "la stampante %s è in attesa. Abilitata da %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "la stampante %s sta stampando %s-%d. Abilitata da %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "la stampante %s/%s è disabilitata da %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "la stampante %s/%s è in attesa. Abilitata da %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "la stampante %s/%s sta stampando %s-%d. Abilitata da %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "l'id richiesto è %s-%d (%d file)\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "la stampa programmata non è in esecuzione\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "la stampa programmata è in esecuzione\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "stato\t\tmostra lo stato del demone e della coda\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "destinazione predefinita di sistema: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "destinazione predefinita di sistema: %s/%s\n"
diff --git a/locale/cups_ja.po b/locale/cups_ja.po
index d130ba5a..4982be5f 100644
--- a/locale/cups_ja.po
+++ b/locale/cups_ja.po
@@ -3,7 +3,7 @@
#
# Message catalog template for CUPS.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 2005-2007 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
@@ -12,12 +12,10 @@
# which should have been included with this file. If this file is
# file is missing or damaged, see the license at "http://www.cups.org/".
#
+
#
# Notes for Translators:
#
-# The following prefixes MUST NOT be translated: "ALERT:", "CRIT:", "INFO:",
-# "NOTICE:", and "WARNING:".
-#
# The "checkpo" program located in the "locale" source directory can be used
# to verify that your translations do not introduce formatting errors or other
# problems. Run with:
@@ -29,2425 +27,3163 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
+"Project-Id-Version: CUPS 1.6\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-20 16:43+0900\n"
+"POT-Creation-Date: 2012-05-23 16:24-0700\n"
+"PO-Revision-Date: 2012-06-13 01:20+0900\n"
"Last-Translator: OPFC TRANSCUPS <opfc-transcups@sourceforge.jp>\n"
"Language-Team: OPFC TRANSCUPS <opfc-transcups@sourceforge.jp>\n"
+"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
+#: systemv/lpstat.c:1876 systemv/lpstat.c:2001
msgid "\t\t(all)"
-msgstr ""
+msgstr "\t\t(ã™ã¹ã¦)"
+#: systemv/lpstat.c:1879 systemv/lpstat.c:1882 systemv/lpstat.c:2004
+#: systemv/lpstat.c:2007
msgid "\t\t(none)"
-msgstr ""
+msgstr "\t\t(ãªã—)"
+#: berkeley/lpc.c:434
#, c-format
msgid "\t%d entries"
-msgstr ""
+msgstr "\t%d エントリー"
+#: systemv/lpstat.c:756 systemv/lpstat.c:772
#, c-format
msgid "\t%s"
-msgstr ""
+msgstr "\t%s"
+#: systemv/lpstat.c:1857 systemv/lpstat.c:1982
msgid "\tAfter fault: continue"
-msgstr ""
+msgstr "\t失敗後: 継続"
+#: systemv/lpstat.c:1481 systemv/lpstat.c:1826 systemv/lpstat.c:1952
#, c-format
msgid "\tAlerts: %s"
-msgstr ""
+msgstr "\t警告: %s"
+#: systemv/lpstat.c:1880 systemv/lpstat.c:2005
msgid "\tBanner required"
-msgstr ""
+msgstr "\tãƒãƒŠãƒ¼ãŒå¿…è¦"
+#: systemv/lpstat.c:1881 systemv/lpstat.c:2006
msgid "\tCharset sets:"
-msgstr ""
+msgstr "\t文字セット:"
+#: systemv/lpstat.c:1845 systemv/lpstat.c:1970
msgid "\tConnection: direct"
-msgstr ""
+msgstr "\t接続: ç›´çµ"
+#: systemv/lpstat.c:1836 systemv/lpstat.c:1962
msgid "\tConnection: remote"
-msgstr ""
+msgstr "\t接続: リモート"
+#: systemv/lpstat.c:1800 systemv/lpstat.c:1926
msgid "\tContent types: any"
-msgstr ""
+msgstr "\tコンテンツã®ç¨®é¡ž: ã™ã¹ã¦"
+#: systemv/lpstat.c:1884 systemv/lpstat.c:2009
msgid "\tDefault page size:"
-msgstr ""
+msgstr "\tデフォルト用紙サイズ:"
+#: systemv/lpstat.c:1883 systemv/lpstat.c:2008
msgid "\tDefault pitch:"
-msgstr ""
+msgstr "\tデフォルトピッãƒ:"
+#: systemv/lpstat.c:1885 systemv/lpstat.c:2010
msgid "\tDefault port settings:"
-msgstr ""
+msgstr "\tデフォルトãƒãƒ¼ãƒˆè¨­å®š:"
+#: systemv/lpstat.c:1806 systemv/lpstat.c:1932
#, c-format
msgid "\tDescription: %s"
-msgstr ""
+msgstr "\t説明: %s"
+#: systemv/lpstat.c:1799 systemv/lpstat.c:1925
msgid "\tForm mounted:"
-msgstr ""
+msgstr "\t設定ã•れãŸãƒ•ォーム:"
+#: systemv/lpstat.c:1878 systemv/lpstat.c:2003
msgid "\tForms allowed:"
-msgstr ""
+msgstr "\t許å¯ã•れã¦ã„るフォーム:"
+#: systemv/lpstat.c:1840 systemv/lpstat.c:1966
#, c-format
msgid "\tInterface: %s.ppd"
-msgstr ""
+msgstr "\tインターフェイス: %s.ppd"
+#: systemv/lpstat.c:1849 systemv/lpstat.c:1974
#, c-format
msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
+msgstr "\tインターフェイス: %s/interfaces/%s"
+#: systemv/lpstat.c:1853 systemv/lpstat.c:1978
#, c-format
msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
+msgstr "\tインターフェイス: %s/ppd/%s.ppd"
+#: systemv/lpstat.c:1831 systemv/lpstat.c:1957
#, c-format
msgid "\tLocation: %s"
-msgstr ""
+msgstr "\t場所: %s"
+#: systemv/lpstat.c:1856 systemv/lpstat.c:1981
msgid "\tOn fault: no alert"
-msgstr ""
+msgstr "\t失敗時: 警告ãªã—"
+#: systemv/lpstat.c:1801 systemv/lpstat.c:1927
msgid "\tPrinter types: unknown"
-msgstr ""
+msgstr "\tプリンターã®ç¨®é¡ž: 䏿˜Ž"
+#: systemv/lpstat.c:1462
#, c-format
msgid "\tStatus: %s"
-msgstr ""
+msgstr "\tステータス: %s"
+#: systemv/lpstat.c:1861 systemv/lpstat.c:1875 systemv/lpstat.c:1986
+#: systemv/lpstat.c:2000
msgid "\tUsers allowed:"
-msgstr ""
+msgstr "\t許å¯ã•れã¦ã„るユーザー:"
+#: systemv/lpstat.c:1868 systemv/lpstat.c:1993
msgid "\tUsers denied:"
-msgstr ""
+msgstr "\tç¦æ­¢ã•れã¦ã„るユーザー:"
+#: berkeley/lpc.c:436
msgid "\tdaemon present"
-msgstr ""
+msgstr "\tãƒ‡ãƒ¼ãƒ¢ãƒ³ã¯æä¾›ã•れã¦ã„ã¾ã™"
+#: berkeley/lpc.c:432
msgid "\tno entries"
-msgstr ""
+msgstr "\tエントリーãŒã‚りã¾ã›ã‚“"
+#: berkeley/lpc.c:404 berkeley/lpc.c:416
#, c-format
msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
+msgstr "\tデãƒã‚¤ã‚¹ '%s' 上ã®ãƒ—リンター 速度 -1"
+#: berkeley/lpc.c:429
msgid "\tprinting is disabled"
-msgstr ""
+msgstr "\tå°åˆ·ã¯ç„¡åйã§ã™"
+#: berkeley/lpc.c:427
msgid "\tprinting is enabled"
-msgstr ""
+msgstr "\tå°åˆ·ã¯æœ‰åйã§ã™"
+#: systemv/lpstat.c:1484
#, c-format
msgid "\tqueued for %s"
-msgstr ""
+msgstr "\t%s ã«ã‚­ãƒ¥ãƒ¼ã—ã¾ã—ãŸ"
+#: berkeley/lpc.c:424
msgid "\tqueuing is disabled"
-msgstr ""
+msgstr "\tキューã¯ç„¡åйã§ã™"
+#: berkeley/lpc.c:422
msgid "\tqueuing is enabled"
-msgstr ""
+msgstr "\tã‚­ãƒ¥ãƒ¼ã¯æœ‰åйã§ã™"
+#: systemv/lpstat.c:1792 systemv/lpstat.c:1918
msgid "\treason unknown"
-msgstr ""
+msgstr "\t未知ã®ç†ç”±"
+#: systemv/cupstestppd.c:454
msgid ""
"\n"
" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
+msgstr "\n é©åˆãƒ†ã‚¹ãƒˆçµæžœè©³ç´°"
+#: systemv/cupstestppd.c:3800
msgid " Ignore specific warnings."
-msgstr ""
+msgstr " 指定ã•れãŸè­¦å‘Šã‚’無視ã™ã‚‹ã€‚"
+#: systemv/cupstestppd.c:3804
msgid " Issue warnings instead of errors."
-msgstr ""
+msgstr " エラーを警告ã¨ã—ã¦æ‰±ã†ã€‚"
+#: systemv/cupstestppd.c:410 systemv/cupstestppd.c:415
msgid " REF: Page 15, section 3.1."
-msgstr ""
+msgstr " å‚ç…§: 15 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.1。"
+#: systemv/cupstestppd.c:405
msgid " REF: Page 15, section 3.2."
-msgstr ""
+msgstr " å‚ç…§: 15 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.2。"
+#: systemv/cupstestppd.c:425
msgid " REF: Page 19, section 3.3."
-msgstr ""
+msgstr " å‚ç…§: 19 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.3。"
+#: systemv/cupstestppd.c:378
msgid " REF: Page 20, section 3.4."
-msgstr ""
+msgstr " å‚ç…§: 20 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.4。"
+#: systemv/cupstestppd.c:430
msgid " REF: Page 27, section 3.5."
-msgstr ""
+msgstr " å‚ç…§: 27 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.5。"
+#: systemv/cupstestppd.c:373
msgid " REF: Page 42, section 5.2."
-msgstr ""
+msgstr " å‚ç…§: 42 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。"
+#: systemv/cupstestppd.c:420
msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
+msgstr " å‚ç…§: 16-17 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.2。"
+#: systemv/cupstestppd.c:390
msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
+msgstr " å‚ç…§: 42-45 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。"
+#: systemv/cupstestppd.c:384
msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
+msgstr " å‚ç…§: 45-46 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。"
+#: systemv/cupstestppd.c:395
msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
+msgstr " å‚ç…§: 48-49 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。"
+#: systemv/cupstestppd.c:400
msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
+msgstr " å‚ç…§: 52-54 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。"
+#: berkeley/lpq.c:554
#, c-format
msgid " %-39.39s %.0f bytes"
-msgstr ""
+msgstr " %-39.39s %.0f ãƒã‚¤ãƒˆ"
+#: systemv/cupstestppd.c:589
#, c-format
msgid " PASS Default%s"
-msgstr ""
+msgstr " åˆæ ¼ Default%s"
+#: systemv/cupstestppd.c:524
msgid " PASS DefaultImageableArea"
-msgstr ""
+msgstr " åˆæ ¼ DefaultImageableArea"
+#: systemv/cupstestppd.c:558
msgid " PASS DefaultPaperDimension"
-msgstr ""
+msgstr " åˆæ ¼ DefaultPaperDimension"
+#: systemv/cupstestppd.c:631
msgid " PASS FileVersion"
-msgstr ""
+msgstr " åˆæ ¼ FileVersion"
+#: systemv/cupstestppd.c:675
msgid " PASS FormatVersion"
-msgstr ""
+msgstr " åˆæ ¼ FormatVersion"
+#: systemv/cupstestppd.c:695
msgid " PASS LanguageEncoding"
-msgstr ""
+msgstr " åˆæ ¼ LanguageEncoding"
+#: systemv/cupstestppd.c:715
msgid " PASS LanguageVersion"
-msgstr ""
+msgstr " åˆæ ¼ LanguageVersion"
+#: systemv/cupstestppd.c:769
msgid " PASS Manufacturer"
-msgstr ""
+msgstr " åˆæ ¼ Manufacturer"
+#: systemv/cupstestppd.c:809
msgid " PASS ModelName"
-msgstr ""
+msgstr " åˆæ ¼ ModelName"
+#: systemv/cupstestppd.c:829
msgid " PASS NickName"
-msgstr ""
+msgstr " åˆæ ¼ NickName"
+#: systemv/cupstestppd.c:889
msgid " PASS PCFileName"
-msgstr ""
+msgstr " åˆæ ¼ PCFileName"
+#: systemv/cupstestppd.c:964
msgid " PASS PSVersion"
-msgstr ""
+msgstr " åˆæ ¼ PSVersion"
+#: systemv/cupstestppd.c:869
msgid " PASS PageRegion"
-msgstr ""
+msgstr " åˆæ ¼ PageRegion"
+#: systemv/cupstestppd.c:849
msgid " PASS PageSize"
-msgstr ""
+msgstr " åˆæ ¼ PageSize"
+#: systemv/cupstestppd.c:924
msgid " PASS Product"
-msgstr ""
+msgstr " åˆæ ¼ Product"
+#: systemv/cupstestppd.c:999
msgid " PASS ShortNickName"
-msgstr ""
+msgstr " åˆæ ¼ ShortNickName"
+#: systemv/cupstestppd.c:1374
#, c-format
msgid " WARN %s has no corresponding options."
-msgstr ""
+msgstr " 警告 %s ã¯ç›¸å½“ã™ã‚‹ã‚ªãƒ—ションãŒã‚りã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:1486
#, c-format
msgid ""
" WARN %s shares a common prefix with %s\n"
" REF: Page 15, section 3.2."
msgstr ""
+" 警告 %s 㯠%s ã¨ä¸€èˆ¬ãƒ—レフィックスを共有ã—ã¾ã™ã€‚\n"
+" å‚ç…§: 15 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.2。"
+#: systemv/cupstestppd.c:1345
#, c-format
msgid ""
" WARN Duplex option keyword %s may not work as expected and should "
"be named Duplex.\n"
" REF: Page 122, section 5.17"
msgstr ""
+" 警告 Duplex オプションキーワード %s ã¯æœŸå¾…通りã«å‹•作ã—ãªã„ã‹ã‚‚ã—れã¾ã›ã‚“。ã¾ãŸã€Duplex ã¨ã„ã†åå‰ã§ã‚ã‚‹ã¹ãã§ã™ã€‚"
+" å‚ç…§: 122 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.17"
+#: systemv/cupstestppd.c:1744
msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
+msgstr " 警告 ファイル㌠CRã€LFã€CR LF ã®è¡Œæœ«ã‚’混在ã—ã¦å«ã‚“ã§ã„ã¾ã™ã€‚"
+#: systemv/cupstestppd.c:1390
msgid ""
" WARN LanguageEncoding required by PPD 4.3 spec.\n"
" REF: Pages 56-57, section 5.3."
msgstr ""
+" 警告 LanguageEncoding 㯠PPD 4.3 仕様ã§å¿…é ˆã§ã™ã€‚\n"
+" å‚ç…§: 56-57 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:1726
#, c-format
msgid " WARN Line %d only contains whitespace."
-msgstr ""
+msgstr " 警告 %d 行ãŒç©ºç™½ã ã‘ã§ã™ã€‚"
+#: systemv/cupstestppd.c:1398
msgid ""
" WARN Manufacturer required by PPD 4.3 spec.\n"
" REF: Pages 58-59, section 5.3."
msgstr ""
+" 警告 Manufacturer 㯠PPD 4.3 仕様ã§å¿…é ˆã§ã™ã€‚\n"
+" å‚ç…§: 58-59 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:1749
msgid ""
" WARN Non-Windows PPD files should use lines ending with only LF, "
"not CR LF."
-msgstr ""
+msgstr " 警告 éž Windows PPD ファイルã¯ã€CR LF ã§ãªã LF ã®ã¿ã‚’行末ã«ä½¿ã†ã¹ãã§ã™ã€‚"
+#: systemv/cupstestppd.c:1382
#, c-format
msgid ""
" WARN Obsolete PPD version %.1f.\n"
" REF: Page 42, section 5.2."
msgstr ""
+" 警告 PPD ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %.1f ã¯ç¾åœ¨ä½¿ã‚れã¦ã„ã¾ã›ã‚“。\n"
+" å‚ç…§: 42 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。"
+#: systemv/cupstestppd.c:1413
msgid ""
" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
" REF: Pages 61-62, section 5.3."
msgstr ""
+" 警告 8.3 文字より長ㄠPCFileName 㯠PPD 仕様é•åã§ã™ã€‚\n"
+" å‚ç…§: 61-62 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:1421
msgid ""
" WARN PCFileName should contain a unique filename.\n"
" REF: Pages 61-62, section 5.3."
msgstr ""
+" 警告 PCFileName ã¯ãƒ¦ãƒ‹ãƒ¼ã‚¯ãªãƒ•ァイルåã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“。\n"
+" å‚ç…§: 61-62 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:1456
msgid ""
" WARN Protocols contains PJL but JCL attributes are not set.\n"
" REF: Pages 78-79, section 5.7."
msgstr ""
+" 警告 プロトコル㌠PJL ã‚’å«ã‚“ã§ã„ã¾ã™ãŒ JCL 属性ãŒè¨­å®šã•れã¦ã„ã¾ã›ã‚“。\n"
+" å‚ç…§: 78-79 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.7。"
+#: systemv/cupstestppd.c:1447
msgid ""
" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
" REF: Pages 78-79, section 5.7."
msgstr ""
+" 警告 プロトコル㌠PJL 㨠BCP ã®ä¸¡æ–¹ã‚’å«ã‚“ã§ã„ã¾ã™; TBCP を想定ã—ã¾ã™ã€‚\n"
+" å‚ç…§: 78-79 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.7。"
+#: systemv/cupstestppd.c:1430
msgid ""
" WARN ShortNickName required by PPD 4.3 spec.\n"
" REF: Pages 64-65, section 5.3."
msgstr ""
+" 警告 ShortNickName 㯠PPD 4.3 仕様ã§å¿…é ˆã§ã™ã€‚\n"
+" å‚ç…§: 64-65 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupsaddsmb.c:282
msgid " cupsaddsmb [options] -a"
-msgstr ""
+msgstr " cupsaddsmb [オプション] -a"
+#: systemv/cupstestdsc.c:427
msgid " cupstestdsc [options] -"
-msgstr ""
+msgstr " cupstestdsc [オプション] -"
+#: systemv/cupstestppd.c:3795
msgid " program | cupstestppd [options] -"
-msgstr ""
+msgstr " program | cupstestppd [オプション] -"
+#: systemv/cupstestppd.c:3727
#, c-format
msgid ""
" %s \"%s %s\" conflicts with \"%s %s\"\n"
" (constraint=\"%s %s %s %s\")."
msgstr ""
+" %s \"%s %s\" 㯠\"%s %s\" ã¨ç«¶åˆã—ã¾ã™\n"
+" (ç¦å‰‡=\"%s %s %s %s\")。"
+#: systemv/cupstestppd.c:2248
#, c-format
msgid " %s %s %s does not exist."
-msgstr ""
+msgstr " %s %s %s ãŒå­˜åœ¨ã—ã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:3884
#, c-format
msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
+msgstr " %s %s ファイル \"%s\" ã¯ä¸æ­£ãªå¤§æ–‡å­—ã§å§‹ã¾ã‚‹ãƒ¯ãƒ¼ãƒ‰ã‚’å«ã‚“ã§ã„ã¾ã™ã€‚"
+#: systemv/cupstestppd.c:2318
#, c-format
msgid ""
" %s Bad %s choice %s.\n"
" REF: Page 122, section 5.17"
msgstr ""
+" %s 䏿­£ãª %s ㌠%s ã‚’é¸ã‚“ã§ã„ã¾ã™ã€‚\n"
+" å‚ç…§: 122 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.17"
+#: systemv/cupstestppd.c:3487 systemv/cupstestppd.c:3536
+#: systemv/cupstestppd.c:3575
#, c-format
msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
+msgstr " %s 䏿­£ãª UTF-8 \"%s\" 翻訳文字列 (オプション %s ã€é¸æŠž %s) ã§ã™ã€‚"
+#: systemv/cupstestppd.c:3441
#, c-format
msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
+msgstr " %s 䏿­£ãª UTF-8 \"%s\" 翻訳文字列 (オプション %s 用) ã§ã™ã€‚"
+#: systemv/cupstestppd.c:2389
#, c-format
msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
+msgstr " %s 䏿­£ãªå€¤ãŒ cupsFilter ã«è¨­å®šã•れã¦ã„ã¾ã™ã€‚ \"%s\""
+#: systemv/cupstestppd.c:2475
#, c-format
msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
+msgstr " %s 䏿­£ãªå€¤ãŒ cupsFilter2 ã«è¨­å®šã•れã¦ã„ã¾ã™ã€‚ \"%s\""
+#: systemv/cupstestppd.c:2964
#, c-format
msgid " %s Bad cupsICCProfile %s."
-msgstr ""
+msgstr " %s 䏿­£ãª cupsICCProfile %sã§ã™ã€‚"
+#: systemv/cupstestppd.c:2571
#, c-format
msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
+msgstr " %s 䏿­£ãªå€¤ãŒ cupsPreFilter ã«è¨­å®šã•れã¦ã„ã¾ã™ã€‚ \"%s\""
+#: systemv/cupstestppd.c:1822
#, c-format
msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
+msgstr " %s 䏿­£ãª cupsUIConstraints %s: \"%s\"ã§ã™ã€‚"
+#: systemv/cupstestppd.c:3391
#, c-format
msgid " %s Bad language \"%s\"."
-msgstr ""
+msgstr " %s 無効ãªè¨€èªž \"%s\"ã§ã™ã€‚"
+#: systemv/cupstestppd.c:2433 systemv/cupstestppd.c:2529
+#: systemv/cupstestppd.c:2615 systemv/cupstestppd.c:2673
+#: systemv/cupstestppd.c:2728 systemv/cupstestppd.c:2783
+#: systemv/cupstestppd.c:2838 systemv/cupstestppd.c:2891
+#: systemv/cupstestppd.c:3013
#, c-format
msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
+msgstr " %s 䏿­£ãªãƒ‘ーミッション %s ã§ã™ (ファイル \"%s\")。"
+#: systemv/cupstestppd.c:2373 systemv/cupstestppd.c:2459
+#: systemv/cupstestppd.c:2555 systemv/cupstestppd.c:2642
+#: systemv/cupstestppd.c:2697 systemv/cupstestppd.c:2752
+#: systemv/cupstestppd.c:2807 systemv/cupstestppd.c:2862
#, c-format
msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
+msgstr " %s %s ã®ä¸æ­£ãªç¶´ã‚Šã§ã™ - %s ã§ã‚ã‚‹ã¹ãã§ã™ã€‚"
+#: systemv/cupstestppd.c:2907
#, c-format
msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
+msgstr " %s APScanAppPath 㨠APScanAppBundleID ã¯åŒæ™‚ã«æŒ‡å®šã§ãã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:2205
#, c-format
msgid " %s Default choices conflicting."
-msgstr ""
+msgstr " %s デフォルトã®é¸æŠžè‚¢ãŒç«¶åˆã—ã¦ã„ã¾ã™ã€‚"
+#: systemv/cupstestppd.c:1803
#, c-format
msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
+msgstr " %s 空㮠cupsUIConstraints %sã§ã™ã€‚"
+#: systemv/cupstestppd.c:3519 systemv/cupstestppd.c:3559
#, c-format
msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
+msgstr " %s \"%s\" 翻訳文字列 (オプション %s ã€é¸æŠž %s) ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:3427
#, c-format
msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
+msgstr " %s \"%s\" 翻訳文字列 (オプション %s 用) ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:2418 systemv/cupstestppd.c:2514
+#: systemv/cupstestppd.c:2600 systemv/cupstestppd.c:2658
+#: systemv/cupstestppd.c:2713 systemv/cupstestppd.c:2768
+#: systemv/cupstestppd.c:2823 systemv/cupstestppd.c:2875
+#: systemv/cupstestppd.c:2998
#, c-format
msgid " %s Missing %s file \"%s\"."
-msgstr ""
+msgstr " %s %s ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ (ファイル \"%s\")。"
+#: systemv/cupstestppd.c:3121
#, c-format
msgid ""
" %s Missing REQUIRED PageRegion option.\n"
" REF: Page 100, section 5.14."
msgstr ""
+" %s 必須㮠PageRegion オプションãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。\n"
+" å‚ç…§: 100 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.14。"
+#: systemv/cupstestppd.c:3106
#, c-format
msgid ""
" %s Missing REQUIRED PageSize option.\n"
" REF: Page 99, section 5.14."
msgstr ""
+" %s 必須㮠PageSize オプションãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。\n"
+" å‚ç…§: 99 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.14。"
+#: systemv/cupstestppd.c:2013 systemv/cupstestppd.c:2054
#, c-format
msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
+msgstr " %s  é¸æŠž *%s %s ㌠UIConstraints \"*%s %s *%s %s\" 内ã«è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:1908
#, c-format
msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
+msgstr " %s é¸æŠž *%s %s ㌠cupsUIConstraints %s: \"%s\" 内ã«è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:1840
#, c-format
msgid " %s Missing cupsUIResolver %s"
-msgstr ""
+msgstr " %s cupsUIResolver ファイル %s ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:1999 systemv/cupstestppd.c:2040
#, c-format
msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
+msgstr " %s オプション %s ãŒUIConstraints \"*%s %s *%s %s\" ã«è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:1892
#, c-format
msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
+msgstr " %s オプション %s ãŒcupsUIConstraints %s ã«è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“: \"%s\""
+#: systemv/cupstestppd.c:3613
#, c-format
msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
+msgstr " %s ファイルã«ãƒ™ãƒ¼ã‚¹ç¿»è¨³æ–‡å­—列 \"%s\" ãŒã‚りã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:2294
#, c-format
msgid ""
" %s REQUIRED %s does not define choice None.\n"
" REF: Page 122, section 5.17"
msgstr ""
+" %s 必須㮠%s ãŒé¸æŠžè‚¢ None を定義ã—ã¦ã„ã¾ã›ã‚“。\n"
+" å‚ç…§: 122 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.17。"
+#: systemv/cupstestppd.c:3180 systemv/cupstestppd.c:3194
#, c-format
msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
+msgstr " %s サイズ \"%s\" 㯠%s å‘ã‘ã«å®šç¾©ã•れã¦ã„ã¾ã™ãŒã€%s ã«ã¯ã‚りã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:3160
#, c-format
msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
+msgstr " %s サイズ \"%s\" ã¯è¦å®šå¤–ã®å¯¸æ³• (%gx%g) ã‚’æŒã£ã¦ã„ã¾ã™ã€‚"
+#: systemv/cupstestppd.c:3332
#, c-format
msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
+msgstr " %s サイズ \"%s\" 㯠\"%s\" ã§ã‚ã‚‹ã¹ãã§ã™ã€‚"
+#: systemv/cupstestppd.c:3292
#, c-format
msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
+msgstr " %s サイズ \"%s\" 㯠Adobe 標準åç§° \"%s\" ã§ã‚ã‚‹ã¹ãã§ã™ã€‚"
+#: systemv/cupstestppd.c:3041
#, c-format
msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
+msgstr " %s cupsICCProfileã®ãƒãƒƒã‚·ãƒ¥å€¤ %s ㌠%s ã¨ä¸€è‡´ã—ã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:1963
#, c-format
msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
+msgstr " %s cupsUIResolverã® %s ãŒãƒ«ãƒ¼ãƒ—ã—ã¦ã„ã¾ã™ã€‚"
+#: systemv/cupstestppd.c:1945
#, c-format
msgid ""
" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
+msgstr " %s cupsUIResolver %s ã¯æœ€ä½Žã§ã‚‚ 2 ã¤ã®ç•°ãªã£ãŸã‚ªãƒ—ションをæŒã£ã¦ã„ãªã‘れã°ãªã‚Šã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:1168
#, c-format
msgid ""
" **FAIL** %s must be 1284DeviceID\n"
" REF: Page 72, section 5.5"
msgstr ""
+" **失敗** %s 㯠1284DeviceID ã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“。\n"
+" å‚ç…§: 72 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.5"
+#: systemv/cupstestppd.c:580
#, c-format
msgid ""
-" **FAIL** BAD Default%s %s\n"
+" **FAIL** Bad Default%s %s\n"
" REF: Page 40, section 4.5."
msgstr ""
+" **失敗** 䏿­£ãª Default%s %s\n"
+" å‚ç…§: 40 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 4.5。"
+#: systemv/cupstestppd.c:514
#, c-format
msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
+" **FAIL** Bad DefaultImageableArea %s\n"
" REF: Page 102, section 5.15."
msgstr ""
+" **失敗** %s ã¯ä¸æ­£ãª DefaultImageableArea ã§ã™ã€‚\n"
+" å‚ç…§: 102 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。"
+#: systemv/cupstestppd.c:550
#, c-format
msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
+" **FAIL** Bad DefaultPaperDimension %s\n"
" REF: Page 103, section 5.15."
msgstr ""
+" **失敗** %s ã¯ä¸æ­£ãª DefaultPaperDimension ã§ã™ã€‚\n"
+" å‚ç…§: 103 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。"
+#: systemv/cupstestppd.c:623
+#, c-format
msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
+" **FAIL** Bad FileVersion \"%s\"\n"
+" REF: Page 56, section 5.3."
msgstr ""
+" **失敗** 䏿­£ãªFileVersion \"%s\"\n"
+" å‚ç…§: 56 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:667
+#, c-format
msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
+" **FAIL** Bad FormatVersion \"%s\"\n"
+" REF: Page 56, section 5.3."
+msgstr ""
+" **失敗** FormatVersion ãŒé•ã„ã¾ã™ \"%s\"\n"
+" å‚ç…§: 56 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+
+#: systemv/cupstestppd.c:1025
+msgid ""
+" **FAIL** Bad JobPatchFile attribute in file\n"
+" REF: Page 24, section 3.4."
msgstr ""
+" **失敗** ファイルã«ä¸æ­£ãª JobPatchFile 属性ãŒã‚りã¾ã™\n"
+" å‚ç…§: 24 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.4。"
+
+#: systemv/cupstestppd.c:1213
+#, c-format
+msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
+msgstr " **失敗** 無効㪠LanguageEncoding %s - ISOLatin1 ã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“。"
+
+#: systemv/cupstestppd.c:1227
+#, c-format
+msgid " **FAIL** Bad LanguageVersion %s - must be English."
+msgstr " **失敗** 無効㪠LanguageVersion %s - English ã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:743 systemv/cupstestppd.c:760
+#, c-format
msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
+" **FAIL** Bad Manufacturer (should be \"%s\")\n"
" REF: Page 211, table D.1."
msgstr ""
+" **失敗** 䏿­£ãª Manufacturer (\"%s\" ã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“)\n"
+" å‚ç…§: 211 ページã€è¡¨ D.1。"
+#: systemv/cupstestppd.c:800
#, c-format
msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
+" **FAIL** Bad ModelName - \"%c\" not allowed in string.\n"
" REF: Pages 59-60, section 5.3."
msgstr ""
+" **失敗** 䏿­£ãª ModelName - 文字列㫠\"%c\" ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“。\n"
+" å‚ç…§: 59-60 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:956
msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
+" **FAIL** Bad PSVersion - not \"(string) int\".\n"
" REF: Pages 62-64, section 5.3."
msgstr ""
+" **失敗** 䏿­£ãª PSVersion - \"(文字列) æ•´æ•°\" ã§ã¯ã‚りã¾ã›ã‚“。\n"
+" å‚ç…§: 62-64 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:917
msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
+" **FAIL** Bad Product - not \"(string)\".\n"
" REF: Page 62, section 5.3."
msgstr ""
+" **失敗** 䏿­£ãª Product - \"(文字列)\" ã§ã¯ã‚りã¾ã›ã‚“。\n"
+" å‚ç…§: 62 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:991
msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
+" **FAIL** Bad ShortNickName - longer than 31 chars.\n"
" REF: Pages 64-65, section 5.3."
msgstr ""
+" **失敗** 䏿­£ãª ShortNickName - 31 文字を超ãˆã¦ã„ã¾ã™ã€‚\n"
+" å‚ç…§: 64-65 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:1149
#, c-format
msgid ""
-" **FAIL** Bad %s choice %s\n"
+" **FAIL** Bad option %s choice %s\n"
" REF: Page 84, section 5.9"
msgstr ""
+" **失敗** 䏿­£ãª %s ㌠%s ã‚’é¸ã‚“ã§ã„ã¾ã™ã€‚\n"
+" å‚ç…§: 84 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.9"
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
+#: systemv/cupstestppd.c:3754 systemv/cupstestppd.c:3776
#, c-format
msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
+msgstr " **失敗** デフォルトã®ã‚ªãƒ—ションコードãŒè§£é‡ˆã§ãã¾ã›ã‚“: %s"
+#: systemv/cupstestppd.c:1286
#, c-format
msgid ""
" **FAIL** Default translation string for option %s choice %s contains "
"8-bit characters."
-msgstr ""
+msgstr " **失敗** オプション %sã€é¸æŠžè‚¢ %s ã®ãƒ‡ãƒ•ォルトã®ç¿»è¨³æ–‡å­—列㌠8 ビット文字をå«ã‚“ã§ã„ã¾ã™ã€‚"
+#: systemv/cupstestppd.c:1259
#, c-format
msgid ""
" **FAIL** Default translation string for option %s contains 8-bit "
"characters."
-msgstr ""
+msgstr " **失敗** オプション %s ã®ãƒ‡ãƒ•ォルトã®ç¿»è¨³æ–‡å­—列㌠8 ビット文字をå«ã‚“ã§ã„ã¾ã™ã€‚"
+#: systemv/cupstestppd.c:2101
#, c-format
msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
+msgstr " **失敗** グループå %s 㨠%s ã¯å¤§æ–‡å­—/å°æ–‡å­—ãŒé•ã†ã ã‘ã§ã™ã€‚"
+#: systemv/cupstestppd.c:2146
#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
+msgid " **FAIL** Multiple occurrences of option %s choice name %s."
+msgstr " **失敗** %s ã§è¤‡æ•°ã®ã‚ªãƒ—ション %s ãŒé¸æŠžã•れã¦ã„ã¾ã™ã€‚"
+#: systemv/cupstestppd.c:2163
+#, c-format
+msgid " **FAIL** Option %s choice names %s and %s differ only by case."
+msgstr " **失敗** %s ãŒé¸æŠžã—㟠%s 㨠%s ã¯å¤§æ–‡å­—/å°æ–‡å­—ã®ã¿ãŒé•ã†ã ã‘ã§ã™ã€‚"
+
+#: systemv/cupstestppd.c:2123
#, c-format
msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
+msgstr " **失敗** オプションå %s 㨠%s ã¯å¤§æ–‡å­—/å°æ–‡å­—ãŒé•ã†ã ã‘ã§ã™ã€‚"
+#: systemv/cupstestppd.c:600
#, c-format
msgid ""
" **FAIL** REQUIRED Default%s\n"
" REF: Page 40, section 4.5."
msgstr ""
+" **失敗** Default%s ã¯å¿…é ˆ\n"
+" å‚ç…§: 40 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 4.5。"
+#: systemv/cupstestppd.c:499
msgid ""
" **FAIL** REQUIRED DefaultImageableArea\n"
" REF: Page 102, section 5.15."
msgstr ""
+" **失敗** DefaultImageableArea ã¯å¿…é ˆ\n"
+" å‚ç…§: 102 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。"
+#: systemv/cupstestppd.c:535
msgid ""
" **FAIL** REQUIRED DefaultPaperDimension\n"
" REF: Page 103, section 5.15."
msgstr ""
+" **失敗** DefaultPaperDimension ã¯å¿…é ˆ\n"
+" å‚ç…§: 103 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。"
+#: systemv/cupstestppd.c:641
msgid ""
" **FAIL** REQUIRED FileVersion\n"
" REF: Page 56, section 5.3."
msgstr ""
+" **失敗** FileVersion ã¯å¿…é ˆ\n"
+" å‚ç…§: 56 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:685
msgid ""
" **FAIL** REQUIRED FormatVersion\n"
" REF: Page 56, section 5.3."
msgstr ""
+" **失敗** FormatVersion ã¯å¿…é ˆ\n"
+" å‚ç…§: 56 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:1076
#, c-format
msgid ""
" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
" REF: Page 41, section 5.\n"
" REF: Page 102, section 5.15."
msgstr ""
+" **失敗** PageSize %s ã« ImageableArea ã¯å¿…é ˆ\n"
+" å‚ç…§: 41 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5。\n"
+" å‚ç…§: 102 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。"
+#: systemv/cupstestppd.c:705
msgid ""
" **FAIL** REQUIRED LanguageEncoding\n"
" REF: Pages 56-57, section 5.3."
msgstr ""
+" **失敗** LanguageEncoding ã¯å¿…é ˆ\n"
+" å‚ç…§: 56-57 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:725
msgid ""
" **FAIL** REQUIRED LanguageVersion\n"
" REF: Pages 57-58, section 5.3."
msgstr ""
+" **失敗** LanguageVersion ã¯å¿…é ˆ\n"
+" å‚ç…§: 57-58 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:779
msgid ""
" **FAIL** REQUIRED Manufacturer\n"
" REF: Pages 58-59, section 5.3."
msgstr ""
+" **失敗** Manufacturer ã¯å¿…é ˆ\n"
+" å‚ç…§: 58-59 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:819
msgid ""
" **FAIL** REQUIRED ModelName\n"
" REF: Pages 59-60, section 5.3."
msgstr ""
+" **失敗** ModelName ã¯å¿…é ˆ\n"
+" å‚ç…§: 59-60 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:839
msgid ""
" **FAIL** REQUIRED NickName\n"
" REF: Page 60, section 5.3."
msgstr ""
+" **失敗** NickName ã¯å¿…é ˆ\n"
+" å‚ç…§: 60 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:899
msgid ""
" **FAIL** REQUIRED PCFileName\n"
" REF: Pages 61-62, section 5.3."
msgstr ""
+" **失敗** PCFileName ã¯å¿…é ˆ\n"
+" å‚ç…§: 61-62 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:974
msgid ""
" **FAIL** REQUIRED PSVersion\n"
" REF: Pages 62-64, section 5.3."
msgstr ""
+" **失敗** PSVersion ã¯å¿…é ˆ\n"
+" å‚ç…§: 62-64 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:879
msgid ""
" **FAIL** REQUIRED PageRegion\n"
" REF: Page 100, section 5.14."
msgstr ""
+" **失敗** PageRegion ã¯å¿…é ˆ\n"
+" å‚ç…§: 100 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.14。"
+#: systemv/cupstestppd.c:1045
msgid ""
" **FAIL** REQUIRED PageSize\n"
" REF: Page 41, section 5.\n"
" REF: Page 99, section 5.14."
msgstr ""
+" **失敗** PageSize ã¯å¿…é ˆ\n"
+" å‚ç…§: 41 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5。\n"
+" å‚ç…§: 99 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.14。"
+#: systemv/cupstestppd.c:859
msgid ""
" **FAIL** REQUIRED PageSize\n"
" REF: Pages 99-100, section 5.14."
msgstr ""
+" **失敗** PageSize ã¯å¿…é ˆ\n"
+" å‚ç…§: 99-100 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.14。"
+#: systemv/cupstestppd.c:1098
#, c-format
msgid ""
" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
" REF: Page 41, section 5.\n"
" REF: Page 103, section 5.15."
msgstr ""
+" **失敗** PageSize %s ã« PaperDimension ã¯å¿…é ˆ\n"
+" å‚ç…§: 41 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5。\n"
+" å‚ç…§: 103 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。"
+#: systemv/cupstestppd.c:934
msgid ""
" **FAIL** REQUIRED Product\n"
" REF: Page 62, section 5.3."
msgstr ""
+" **失敗** Product ã¯å¿…é ˆ\n"
+" å‚ç…§: 62 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
+#: systemv/cupstestppd.c:1009
msgid ""
" **FAIL** REQUIRED ShortNickName\n"
" REF: Page 64-65, section 5.3."
msgstr ""
+" **失敗** ShortNickName ã¯å¿…é ˆ\n"
+" å‚ç…§: 64-65 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。"
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
+#: systemv/cupstestppd.c:334 systemv/cupstestppd.c:353
+#: systemv/cupstestppd.c:365
#, c-format
msgid " **FAIL** Unable to open PPD file - %s on line %d."
msgstr ""
+" 失敗\n"
+" **失敗** PPD ファイルを開ã‘ã¾ã›ã‚“ - %s (%d 行)。"
+#: systemv/cupstestppd.c:1498
#, c-format
msgid " %d ERRORS FOUND"
-msgstr ""
+msgstr " %d 個ã®ã‚¨ãƒ©ãƒ¼ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ"
+#: systemv/cupstestdsc.c:431
msgid " -h Show program usage"
-msgstr ""
+msgstr " -h ã“ã®ãƒ—ログラムã®åˆ©ç”¨æ³•を表示ã™ã‚‹"
+#: systemv/cupstestdsc.c:234 systemv/cupstestdsc.c:276
#, c-format
msgid ""
" Bad %%%%BoundingBox: on line %d.\n"
" REF: Page 39, %%%%BoundingBox:"
msgstr ""
+" 䏿­£ãª %%%%BoundingBox: (%d 行)。\n"
+" å‚ç…§: 39 ページã€%%%%BoundingBox:"
+#: systemv/cupstestdsc.c:305
#, c-format
msgid ""
" Bad %%%%Page: on line %d.\n"
" REF: Page 53, %%%%Page:"
msgstr ""
+" 䏿­£ãª %%%%Page: (%d 行)。\n"
+" å‚ç…§: 53 ページã€%%%%Page:"
+#: systemv/cupstestdsc.c:218 systemv/cupstestdsc.c:258
#, c-format
msgid ""
" Bad %%%%Pages: on line %d.\n"
" REF: Page 43, %%%%Pages:"
msgstr ""
+" 䏿­£ãª %%%%Pages: (%d 行)。\n"
+" REF: Page 43, %%%%Pages:"
+#: systemv/cupstestdsc.c:176
#, c-format
msgid ""
" Line %d is longer than 255 characters (%d).\n"
" REF: Page 25, Line Length"
msgstr ""
+" %d 行㌠255文字より長ããªã£ã¦ã„ã¾ã™ (%d)。\n"
+" å‚ç…§: 25 ページã€Line Length"
+#: systemv/cupstestdsc.c:192
msgid ""
" Missing %!PS-Adobe-3.0 on first line.\n"
" REF: Page 17, 3.1 Conforming Documents"
msgstr ""
+" 先頭行㫠%!PS-Adobe-3.0 ãŒã‚りã¾ã›ã‚“。\n"
+" å‚ç…§: 17 ページã€3.1 Conforming Documents"
+#: systemv/cupstestdsc.c:362
#, c-format
msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
msgstr ""
+" %%EndComments コメントãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。\n"
+" å‚ç…§: 41 ページã€%%EndComments"
+#: systemv/cupstestdsc.c:342
#, c-format
msgid ""
" Missing or bad %%BoundingBox: comment.\n"
" REF: Page 39, %%BoundingBox:"
msgstr ""
+" %%BoundingBox: コメントãŒè¦‹ã¤ã‹ã‚‰ãªã„ã‹ä¸æ­£ã§ã™ã€‚\n"
+" å‚ç…§: 39 ページã€%%BoundingBox:"
+#: systemv/cupstestdsc.c:372
#, c-format
msgid ""
" Missing or bad %%Page: comments.\n"
" REF: Page 53, %%Page:"
msgstr ""
+" %%Page: コメントãŒè¦‹ã¤ã‹ã‚‰ãªã„ã‹ä¸æ­£ã§ã™ã€‚\n"
+" å‚ç…§: 53 ページã€%%Page:"
+#: systemv/cupstestdsc.c:352
#, c-format
msgid ""
" Missing or bad %%Pages: comment.\n"
" REF: Page 43, %%Pages:"
msgstr ""
+" %%Pages: コメントãŒè¦‹ã¤ã‹ã‚‰ãªã„ã‹ä¸æ­£ã§ã™ã€‚\n"
+" å‚ç…§: 43 ページã€%%Pages:"
+#: systemv/cupstestppd.c:1500
msgid " NO ERRORS FOUND"
-msgstr ""
+msgstr " エラーã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
+#: systemv/cupstestdsc.c:395
#, c-format
msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
+msgstr " 255文字を超ãˆã‚‹ %d 行ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚"
+#: systemv/cupstestdsc.c:390
#, c-format
msgid " Too many %%BeginDocument comments."
-msgstr ""
+msgstr " %%BeginDocument コメントãŒå¤šã™ãŽã¾ã™ã€‚"
+#: systemv/cupstestdsc.c:382
#, c-format
msgid " Too many %%EndDocument comments."
-msgstr ""
+msgstr " %%EndDocument コメントãŒå¤šã™ãŽã¾ã™ã€‚"
+#: systemv/cupstestdsc.c:402
msgid " Warning: file contains binary data."
-msgstr ""
+msgstr " 警告: ファイルã«ãƒã‚¤ãƒŠãƒªãƒ‡ãƒ¼ã‚¿ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚"
+#: systemv/cupstestdsc.c:410
#, c-format
msgid " Warning: no %%EndComments comment in file."
-msgstr ""
+msgstr " 警告: ファイル㫠%%EndComments コメントãŒã‚りã¾ã›ã‚“。"
+#: systemv/cupstestdsc.c:406
#, c-format
msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
+msgstr " 警告: ãƒ•ã‚¡ã‚¤ãƒ«ã¯æ™‚代é…れ㮠DSC ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %.1f ã§ã™ã€‚"
+#: systemv/cupsctl.c:210
msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
+msgstr " --[no-]debug-logging デãƒãƒƒã‚°ãƒ­ã‚°ã®æœ‰åй/無効を切り替ãˆã‚‹ã€‚"
+#: systemv/cupsctl.c:212
msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
+msgstr " --[no-]remote-admin リモート管ç†ã®æœ‰åй/無効を切り替ãˆã‚‹ã€‚"
+#: systemv/cupsctl.c:214
msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
+msgstr " --[no-]remote-any インターãƒãƒƒãƒˆã‹ã‚‰ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯/ç¦æ­¢ã™ã‚‹ã€‚"
+#: systemv/cupsctl.c:216
msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
+msgstr " --[no-]share-printers ãƒ—ãƒªãƒ³ã‚¿ãƒ¼å…±æœ‰ã®æœ‰åй/無効を切り替ãˆã‚‹ã€‚"
+#: systemv/cupsctl.c:218
msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
+msgstr " --[no-]user-cancel-any ã‚らゆるジョブã®ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã‚’ユーザーã«è¨±å¯/ç¦æ­¢ã™ã‚‹"
+#: ppdc/ppdc.cxx:455
msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
+msgstr " --cr 行末を CR ã¨ã™ã‚‹ (Mac OS 9)。"
+#: ppdc/ppdc.cxx:457
msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
+msgstr " --crlf 行末を CR + LF ã¨ã™ã‚‹ (Windows)。"
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
+#: ppdc/ppdc.cxx:459
+msgid " --lf End lines with LF (UNIX/Linux/OS X)."
+msgstr " --lf 行末を LF ã¨ã™ã‚‹ (UNIX/Linux/OS X)。"
+#: test/ipptool.c:4404
msgid " -4 Connect using IPv4."
-msgstr ""
+msgstr " -4 IPv4 ã§æŽ¥ç¶šã™ã‚‹ã€‚"
+#: test/ipptool.c:4405
msgid " -6 Connect using IPv6."
-msgstr ""
+msgstr " -6 IPv6 ã§æŽ¥ç¶šã™ã‚‹ã€‚"
+#: test/ipptool.c:4406
msgid " -C Send requests using chunking (default)."
-msgstr ""
+msgstr " -C chunking を用ã„ã¦ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é€ã‚‹ (デフォルト)。"
+#: scheduler/cupsfilter.c:1431
msgid " -D Remove the input file when finished."
-msgstr ""
+msgstr " -D 終了ã—ãŸã¨ãã«å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å‰Šé™¤ã™ã‚‹ã€‚"
+#: ppdc/ppdc.cxx:438 ppdc/ppdhtml.cxx:175 ppdc/ppdpo.cxx:255
msgid " -D name=value Set named variable to value."
-msgstr ""
+msgstr " -D name=value name ã§æŒ‡å®šã•れãŸå¤‰æ•°ã«å€¤ value をセットã™ã‚‹ã€‚"
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
+#: systemv/cupsaddsmb.c:285 systemv/cupsctl.c:205
+msgid " -E Encrypt the connection."
+msgstr " -E 接続を暗å·åŒ–ã™ã‚‹ã€‚"
-msgid " -E Test with TLS encryption."
-msgstr ""
+#: test/ipptool.c:4408
+msgid " -E Test with HTTP Upgrade to TLS."
+msgstr " -E HTTP ã‹ã‚‰ TLS ã¸ã®ã‚¢ãƒƒãƒ—グレードã§ãƒ†ã‚¹ãƒˆã™ã‚‹ã€‚"
+#: scheduler/main.c:2021
msgid ""
" -F Run in the foreground but detach from console."
-msgstr ""
+msgstr " -F フォアグラウンドã§å®Ÿè¡Œã™ã‚‹ãŒã‚³ãƒ³ã‚½ãƒ¼ãƒ«ã‹ã‚‰ã¯ãƒ‡ã‚¿ãƒƒãƒã™ã‚‹ã€‚"
+#: systemv/cupsaddsmb.c:286
msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
+msgstr " -H sambaサーãƒãƒ¼ 指定㮠SAMBA サーãƒãƒ¼ã‚’使ã†ã€‚"
+#: test/ipptool.c:4410
msgid " -I Ignore errors."
-msgstr ""
+msgstr " -I エラーを無視ã™ã‚‹ã€‚"
+#: ppdc/ppdc.cxx:440 ppdc/ppdhtml.cxx:177 ppdc/ppdi.cxx:131 ppdc/ppdpo.cxx:257
msgid " -I include-dir Add include directory to search path."
-msgstr ""
+msgstr " -I include-dir インクルードディレクトリーを検索パスã«å«ã‚る。"
+#: systemv/cupstestppd.c:3799
msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
+msgstr " -I {filename,filters,none,profiles}"
+#: test/ipptool.c:4411
msgid " -L Send requests using content-length."
-msgstr ""
+msgstr " -L content-length を用ã„ã¦ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é€ã‚‹ã€‚"
+#: scheduler/cupsfilter.c:1433
msgid " -P filename.ppd Set PPD file."
-msgstr ""
+msgstr " -P filename.ppd PPD ファイルを指定ã™ã‚‹ã€‚"
+#: systemv/cupstestppd.c:3801
msgid " -R root-directory Set alternate root."
-msgstr ""
+msgstr " -R root-directory 別ã®ãƒ«ãƒ¼ãƒˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã‚’指定ã™ã‚‹ã€‚"
+#: test/ipptool.c:4413
msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
+msgstr " -S SSL æš—å·åŒ–ã§ãƒ†ã‚¹ãƒˆã™ã‚‹ã€‚"
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
+#: test/ipptool.c:4415
+msgid " -T seconds Set the receive/send timeout in seconds."
+msgstr " -T seconds å—ä¿¡ï¼é€ä¿¡ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã‚’ç§’ã§æŒ‡å®šã™ã‚‹ã€‚"
+#: scheduler/cupsfilter.c:1434 systemv/cupsaddsmb.c:288 systemv/cupsctl.c:206
msgid " -U username Specify username."
-msgstr ""
+msgstr " -U username ユーザーåを指定ã™ã‚‹ã€‚"
+#: test/ipptool.c:4417
msgid " -V version Set default IPP version."
-msgstr ""
+msgstr " -V version デフォルト㮠IPP ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’指定ã™ã‚‹ã€‚"
+#: systemv/cupstestppd.c:3802
msgid ""
" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
"translations}"
-msgstr ""
+msgstr " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,translations}"
+#: test/ipptool.c:4419
msgid " -X Produce XML plist instead of plain text."
-msgstr ""
+msgstr " -X プレーンテキストã®ä»£ã‚り㫠XML を用ã„る。"
+#: systemv/cupsaddsmb.c:289
msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
+msgstr " -a ã™ã¹ã¦ã®ãƒ—リンターをエクスãƒãƒ¼ãƒˆã™ã‚‹ã€‚"
+#: ppdc/ppdc.cxx:442
msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
+msgstr " -c catalog.po 指定ã—ãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒ­ã‚°ã‚’ロードã™ã‚‹ã€‚"
+#: scheduler/cupsfilter.c:1435 scheduler/main.c:2019
msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
+msgstr " -c cupsd.conf 使用ã™ã‚‹ cupsd.conf ファイルを指定ã™ã‚‹ã€‚"
+#: test/ipptool.c:4421
msgid " -d name=value Set named variable to value."
-msgstr ""
+msgstr " -d name=value name ã§æŒ‡å®šã•れãŸå¤‰æ•°ã«å€¤ value をセットã™ã‚‹ã€‚"
+#: ppdc/ppdc.cxx:444
msgid " -d output-dir Specify the output directory."
-msgstr ""
+msgstr " -d output-dir 出力先ディレクトリーを指定ã™ã‚‹ã€‚"
+#: scheduler/cupsfilter.c:1437
msgid " -d printer Use the named printer."
-msgstr ""
+msgstr " -d printer 指定ã•れãŸãƒ—リンターを利用ã™ã‚‹ã€‚"
+#: scheduler/cupsfilter.c:1439
msgid " -e Use every filter from the PPD file."
-msgstr ""
+msgstr " -e PPD ファイルã‹ã‚‰ã™ã¹ã¦ã®ãƒ•ィルターを使用ã™ã‚‹ã€‚"
+#: scheduler/main.c:2020
msgid " -f Run in the foreground."
-msgstr ""
+msgstr " -f フォアグラウンドã§å®Ÿè¡Œã™ã‚‹ã€‚"
+#: test/ipptool.c:4423
msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
+msgstr " -f filename デフォルトã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆãƒ•ァイルåを指定ã™ã‚‹ã€‚"
+#: scheduler/main.c:2023
msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
+msgstr " -h ã“ã®ãƒ˜ãƒ«ãƒ—メッセージを表示ã™ã‚‹ã€‚"
+#: systemv/cupsaddsmb.c:290 systemv/cupsctl.c:207
msgid " -h server[:port] Specify server address."
-msgstr ""
+msgstr " -h server[:port] サーãƒãƒ¼ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’指定ã™ã‚‹ã€‚"
+#: scheduler/cupsfilter.c:1441
msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
+msgstr " -i mime/type 入力㮠MIME タイプを指定ã™ã‚‹ (指定ãŒãªã‘れã°è‡ªå‹•タイプ)。"
+#: test/ipptool.c:4425
msgid ""
" -i seconds Repeat the last file with the given time interval."
-msgstr ""
+msgstr " -i seconds 最後ã®ãƒ•ァイルを与ãˆã‚‰ã‚ŒãŸæ™‚é–“é–“éš”ã§ç¹°ã‚Šè¿”ã™ã€‚"
+#: scheduler/cupsfilter.c:1443
msgid ""
" -j job-id[,N] Filter file N from the specified job (default is "
"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
+msgstr " -j job-id[,N] フィルターファイル N を指定ã•れãŸã‚¸ãƒ§ãƒ–ã‹ã‚‰ä½¿ç”¨ã™ã‚‹ (デフォルト㯠ファイル 1)。"
+#: scheduler/main.c:2024
msgid " -l Run cupsd from launchd(8)."
-msgstr ""
+msgstr " -l launchd(8) ã‹ã‚‰ cupsd を実行ã™ã‚‹ã€‚"
+#: ppdc/ppdc.cxx:446
msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
+msgstr " -l lang[,lang,...] 出力言語を指定ã™ã‚‹ã€‚(複数å¯èƒ½)"
+#: ppdc/ppdc.cxx:448
msgid " -m Use the ModelName value as the filename."
-msgstr ""
+msgstr " -m ModelName ã®å€¤ã‚’ファイルåã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ã€‚"
+#: scheduler/cupsfilter.c:1445
msgid ""
" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
+msgstr " -m mime/type 出力㮠MIME タイプを指定ã™ã‚‹ (指定ãŒãªã‘れ㰠application/pdf)。"
+#: scheduler/cupsfilter.c:1447
msgid " -n copies Set number of copies."
-msgstr ""
+msgstr " -n copies 部数を指定ã™ã‚‹ã€‚"
+#: test/ipptool.c:4427
msgid ""
" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
+msgstr " -n count 最後ã®ãƒ•ァイルを与ãˆã‚‰ã‚ŒãŸå›žæ•°ã ã‘繰り返ã™ã€‚"
+#: ppdc/ppdi.cxx:133
msgid ""
" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
+msgstr " -o filename.drv ドライãƒãƒ¼æƒ…報ファイルを指定ã™ã‚‹ (指定ãŒãªã‘れ㰠ppdi.drv)。"
+#: ppdc/ppdmerge.cxx:370
msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
+msgstr " -o filename.ppd[.gz] 出力ファイルを指定ã™ã‚‹ (指定ãŒãªã‘ã‚Œã°æ¨™æº–出力)。"
+#: scheduler/cupsfilter.c:1448
msgid " -o name=value Set option(s)."
-msgstr ""
+msgstr " -o name=value オプションを指定ã™ã‚‹ã€‚"
+#: scheduler/cupsfilter.c:1449
msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
+msgstr " -p filename.ppd PPD ファイルを指定ã™ã‚‹ã€‚"
+#: systemv/cupstestppd.c:3806 test/ipptool.c:4429
msgid " -q Run silently."
-msgstr ""
+msgstr " -q 詳細ã¯è¡¨ç¤ºã—ãªã„。"
+#: systemv/cupstestppd.c:3807
msgid " -r Use 'relaxed' open mode."
-msgstr ""
+msgstr " -r 寛容モードを用ã„る。"
+#: test/ipptool.c:4430
msgid " -t Produce a test report."
-msgstr ""
+msgstr " -t テストリãƒãƒ¼ãƒˆã‚’出力ã™ã‚‹ã€‚"
+#: ppdc/ppdc.cxx:450
msgid " -t Test PPDs instead of generating them."
-msgstr ""
+msgstr " -t PPD を出力ã—ãªã„ã§ãƒ†ã‚¹ãƒˆã™ã‚‹ã€‚"
+#: scheduler/main.c:2025
msgid " -t Test the configuration file."
-msgstr ""
+msgstr " -t 設定ファイルをテストã™ã‚‹ã€‚"
+#: scheduler/cupsfilter.c:1450
msgid " -t title Set title."
-msgstr ""
+msgstr " -t title タイトルを指定ã™ã‚‹ã€‚"
+#: scheduler/cupsfilter.c:1451
msgid " -u Remove the PPD file when finished."
-msgstr ""
+msgstr " -u 終了ã—ãŸã¨ãã« PPD ファイルを削除ã™ã‚‹ã€‚"
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
+#: systemv/cupsaddsmb.c:291 systemv/cupstestppd.c:3808 test/ipptool.c:4431
+#: ppdc/ppdc.cxx:452 ppdc/ppdpo.cxx:259
+msgid " -v Be verbose."
+msgstr " -v 冗長出力を行ã†ã€‚"
+#: systemv/cupstestppd.c:3809
msgid " -vv Be very verbose."
-msgstr ""
+msgstr " -vv より冗長ãªå‡ºåŠ›ã‚’è¡Œã†ã€‚"
+#: ppdc/ppdc.cxx:453
msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
+msgstr " -z PPD ファイルを GNU zip を使ã£ã¦åœ§ç¸®ã™ã‚‹ã€‚"
+
+#: systemv/cupstestppd.c:332 systemv/cupstestppd.c:351
+#: systemv/cupstestppd.c:363 systemv/cupstestppd.c:496
+#: systemv/cupstestppd.c:511 systemv/cupstestppd.c:532
+#: systemv/cupstestppd.c:547 systemv/cupstestppd.c:577
+#: systemv/cupstestppd.c:597 systemv/cupstestppd.c:620
+#: systemv/cupstestppd.c:638 systemv/cupstestppd.c:664
+#: systemv/cupstestppd.c:682 systemv/cupstestppd.c:702
+#: systemv/cupstestppd.c:722 systemv/cupstestppd.c:740
+#: systemv/cupstestppd.c:757 systemv/cupstestppd.c:776
+#: systemv/cupstestppd.c:797 systemv/cupstestppd.c:816
+#: systemv/cupstestppd.c:836 systemv/cupstestppd.c:856
+#: systemv/cupstestppd.c:876 systemv/cupstestppd.c:896
+#: systemv/cupstestppd.c:914 systemv/cupstestppd.c:931
+#: systemv/cupstestppd.c:953 systemv/cupstestppd.c:971
+#: systemv/cupstestppd.c:988 systemv/cupstestppd.c:1006
+#: systemv/cupstestppd.c:1022 systemv/cupstestppd.c:1042
+#: systemv/cupstestppd.c:1073 systemv/cupstestppd.c:1095
+#: systemv/cupstestppd.c:1146 systemv/cupstestppd.c:1165
+#: systemv/cupstestppd.c:1209 systemv/cupstestppd.c:1223
+#: systemv/cupstestppd.c:1255 systemv/cupstestppd.c:1282
+#: systemv/cupstestppd.c:1800 systemv/cupstestppd.c:1819
+#: systemv/cupstestppd.c:1837 systemv/cupstestppd.c:1889
+#: systemv/cupstestppd.c:1905 systemv/cupstestppd.c:1942
+#: systemv/cupstestppd.c:1960 systemv/cupstestppd.c:1996
+#: systemv/cupstestppd.c:2010 systemv/cupstestppd.c:2037
+#: systemv/cupstestppd.c:2051 systemv/cupstestppd.c:2097
+#: systemv/cupstestppd.c:2119 systemv/cupstestppd.c:2142
+#: systemv/cupstestppd.c:2159 systemv/cupstestppd.c:2201
+#: systemv/cupstestppd.c:2244 systemv/cupstestppd.c:2291
+#: systemv/cupstestppd.c:2315 systemv/cupstestppd.c:2369
+#: systemv/cupstestppd.c:2385 systemv/cupstestppd.c:2415
+#: systemv/cupstestppd.c:2429 systemv/cupstestppd.c:2455
+#: systemv/cupstestppd.c:2471 systemv/cupstestppd.c:2511
+#: systemv/cupstestppd.c:2525 systemv/cupstestppd.c:2551
+#: systemv/cupstestppd.c:2567 systemv/cupstestppd.c:2597
+#: systemv/cupstestppd.c:2611 systemv/cupstestppd.c:2638
+#: systemv/cupstestppd.c:2655 systemv/cupstestppd.c:2669
+#: systemv/cupstestppd.c:2693 systemv/cupstestppd.c:2710
+#: systemv/cupstestppd.c:2724 systemv/cupstestppd.c:2748
+#: systemv/cupstestppd.c:2765 systemv/cupstestppd.c:2779
+#: systemv/cupstestppd.c:2803 systemv/cupstestppd.c:2820
+#: systemv/cupstestppd.c:2834 systemv/cupstestppd.c:2858
+#: systemv/cupstestppd.c:2872 systemv/cupstestppd.c:2887
+#: systemv/cupstestppd.c:2904 systemv/cupstestppd.c:2960
+#: systemv/cupstestppd.c:2995 systemv/cupstestppd.c:3009
+#: systemv/cupstestppd.c:3037 systemv/cupstestppd.c:3102
+#: systemv/cupstestppd.c:3117 systemv/cupstestppd.c:3156
+#: systemv/cupstestppd.c:3176 systemv/cupstestppd.c:3190
+#: systemv/cupstestppd.c:3387 systemv/cupstestppd.c:3423
+#: systemv/cupstestppd.c:3437 systemv/cupstestppd.c:3483
+#: systemv/cupstestppd.c:3515 systemv/cupstestppd.c:3532
+#: systemv/cupstestppd.c:3555 systemv/cupstestppd.c:3571
+#: systemv/cupstestppd.c:3609 systemv/cupstestppd.c:3750
+#: systemv/cupstestppd.c:3772 systemv/cupstestppd.c:3880
msgid " FAIL"
-msgstr ""
+msgstr " 失敗"
+#: systemv/cupstestppd.c:1306
msgid " PASS"
-msgstr ""
+msgstr " åˆæ ¼"
+#: berkeley/lpq.c:560
#, c-format
msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
+msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f ãƒã‚¤ãƒˆ"
+#: berkeley/lpq.c:565
#, c-format
msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f ミリメートル"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f to %.0f x %.0f ミリメートル"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f インãƒ"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f to %.2f x %.2f インãƒ"
+msgstr "%-7s %-7.7s %-7d %-31.31s %.0f ãƒã‚¤ãƒˆ"
+#: systemv/lpstat.c:750
#, c-format
msgid "%s accepting requests since %s"
-msgstr ""
+msgstr "%s 㯠%s ã‹ã‚‰ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’å—ã‘付ã‘ã¦ã„ã¾ã™"
+#: scheduler/ipp.c:10045
#, c-format
msgid "%s cannot be changed."
msgstr "%s ã¯å¤‰æ›´ã§ãã¾ã›ã‚“。"
+#: berkeley/lpc.c:189
#, c-format
msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
+msgstr "%s 㯠lpc ã® CUPS ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã¯å®Ÿè£…ã•れã¦ã„ã¾ã›ã‚“。"
+#: berkeley/lpq.c:651
#, c-format
msgid "%s is not ready"
-msgstr ""
+msgstr "%s ã¯æº–å‚™ãŒã§ãã¦ã„ã¾ã›ã‚“"
+#: berkeley/lpq.c:644
#, c-format
msgid "%s is ready"
-msgstr ""
+msgstr "%s ã¯æº–å‚™ãŒã§ãã¦ã„ã¾ã™"
+#: berkeley/lpq.c:647
#, c-format
msgid "%s is ready and printing"
-msgstr ""
+msgstr "%s ã¯æº–å‚™ãŒã§ãã¦ãŠã‚Šå°åˆ·ã—ã¦ã„ã¾ã™"
+#: filter/rastertoepson.c:985 filter/rastertohp.c:711
+#: filter/rastertolabel.c:1134
#, c-format
msgid "%s job-id user title copies options [file]"
-msgstr ""
+msgstr "%s ジョブID ユーザー タイトル コピー数 オプション [ファイル]"
+#: systemv/lpstat.c:754
#, c-format
msgid "%s not accepting requests since %s -"
-msgstr ""
+msgstr "%s 㯠%s ã‹ã‚‰ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’å—ã‘付ã‘ã¦ã„ã¾ã›ã‚“ -"
+#: scheduler/ipp.c:691
#, c-format
msgid "%s not supported."
-msgstr ""
+msgstr "%s ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“。"
+#: systemv/lpstat.c:765
#, c-format
msgid "%s/%s accepting requests since %s"
-msgstr ""
+msgstr "%s/%s 㯠%s ã‹ã‚‰ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’å—ã‘付ã‘ã¦ã„ã¾ã™"
+#: systemv/lpstat.c:770
#, c-format
msgid "%s/%s not accepting requests since %s -"
-msgstr ""
+msgstr "%s/%s 㯠%s ã‹ã‚‰ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’å—ã‘付ã‘ã¦ã„ã¾ã›ã‚“ - "
+#: berkeley/lpq.c:552
#, c-format
msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
+msgstr "%s:%-33.33s [ジョブ %d localhost]"
#. TRANSLATORS: Message is "subject: error"
+#: cups/langprintf.c:86 scheduler/cupsfilter.c:714 systemv/lpadmin.c:805
+#: systemv/lpadmin.c:856 systemv/lpadmin.c:906 systemv/lpadmin.c:962
+#: systemv/lpadmin.c:1060 systemv/lpadmin.c:1112 systemv/lpadmin.c:1168
+#: systemv/lpadmin.c:1478
#, c-format
msgid "%s: %s"
-msgstr ""
+msgstr "%s: %s"
+#: systemv/cancel.c:294 systemv/cancel.c:357
#, c-format
msgid "%s: %s failed: %s"
-msgstr ""
+msgstr "%s: %s ã«å¤±æ•—ã—ã¾ã—ãŸ: %s"
+#: systemv/cupsaccept.c:68
#, c-format
msgid "%s: Don't know what to do."
-msgstr ""
+msgstr "%s: 何ãŒèµ·ãã¦ã„ã‚‹ã‹ä¸æ˜Žã§ã™ã€‚"
+#: berkeley/lpq.c:236 berkeley/lpr.c:344 systemv/lp.c:584
#, c-format
msgid ""
"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
+msgstr "%s: エラー - 環境変数 %s ãŒå­˜åœ¨ã—ãªã„宛先 \"%s\" を指ã—ã¦ã„ã¾ã™ã€‚"
+#: systemv/lp.c:231
#, c-format
msgid "%s: Error - bad job ID."
-msgstr ""
+msgstr "%s: エラー - 䏿­£ãªã‚¸ãƒ§ãƒ– ID ã§ã™ã€‚"
+#: systemv/lp.c:219
#, c-format
msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
+msgstr "%s: エラー - ファイルをå°åˆ·ã§ããšã€ã‚¸ãƒ§ãƒ–ã‚’åŒæ™‚ã«å¤‰ãˆã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。"
+#: systemv/lp.c:505
#, c-format
msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
+msgstr "%s: エラー - ファイルã¾ãŸã¯ã‚¸ãƒ§ãƒ– ID ãŒæä¾›ã•れã¦ã„ã‚‹å ´åˆã€æ¨™æº–入力ã‹ã‚‰å°åˆ·ã§ãã¾ã›ã‚“。 "
+#: systemv/lp.c:461
#, c-format
msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
+msgstr "%s: エラー - \"-S\" オプションã®ã‚ã¨ã«ã¯æ–‡å­—セットãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lp.c:480
#, c-format
msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
+msgstr "%s: エラー - \"-T\" オプションã®ã‚ã¨ã«ã¯ã‚³ãƒ³ãƒ†ãƒ³ãƒ„タイプãŒå¿…è¦ã§ã™ã€‚"
+#: berkeley/lpr.c:240
#, c-format
msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
+msgstr "%s: エラー - \"-#\" オプションã®ã‚ã¨ã«ã¯ã‚³ãƒ”ー数ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lp.c:264
#, c-format
msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
+msgstr "%s: エラー - \"-n\" オプションã®ã‚ã¨ã«ã¯ã‚³ãƒ”ー数ãŒå¿…è¦ã§ã™ã€‚"
+#: berkeley/lpr.c:209
#, c-format
msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
+msgstr "%s: エラー - \"-P\" オプションã®ã‚ã¨ã«ã¯å®›å…ˆãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpstat.c:231
#, c-format
msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
+msgstr "%s: エラー - \"-b\" オプションã®ã‚ã¨ã«å®›å…ˆãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lp.c:138
#, c-format
msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
+msgstr "%s: エラー - \"-d\" オプションã®ã‚ã¨ã«ã¯ãƒ—リンターåãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lp.c:168
#, c-format
msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
+msgstr "%s: エラー - \"-f\" オプションã®ã‚ã¨ã«ã¯ç”¨ç´™åãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lp.c:391
#, c-format
msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
+msgstr "%s: エラー - \"-H\" オプションã®ã‚ã¨ã«ã¯ãƒ›ãƒ¼ãƒ«ãƒ‰åãŒå¿…è¦ã§ã™ã€‚"
+#: berkeley/lpr.c:103
#, c-format
msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
+msgstr "%s: エラー - \"-H\" オプションã®ã‚ã¨ã«ã¯ãƒ›ã‚¹ãƒˆåãŒå¿…è¦ã§ã™ã€‚"
+#: berkeley/lpq.c:180 berkeley/lprm.c:123 systemv/cancel.c:124
+#: systemv/cupsaccept.c:123 systemv/lp.c:189 systemv/lpstat.c:291
#, c-format
msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
+msgstr "%s: エラー - \"-h\" オプションã®ã‚ã¨ã«ã¯ãƒ›ã‚¹ãƒˆåãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lp.c:371
#, c-format
msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
+msgstr "%s: エラー - \"-y\" オプションã®ã‚ã¨ã«ã¯ãƒ¢ãƒ¼ãƒ‰ãƒªã‚¹ãƒˆãŒå¿…è¦ã§ã™ã€‚"
+#: berkeley/lpr.c:263
#, c-format
msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
+msgstr "%s: エラー - \"-%c\" オプションã®ã‚ã¨ã«ã¯åå‰ãŒå¿…è¦ã§ã™ã€‚"
+#: berkeley/lpr.c:153 systemv/lp.c:288
#, c-format
msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
+msgstr "%s: エラー - \"-o\" オプションã®ã‚ã¨ã«ã¯ オプション=値 ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lp.c:441
#, c-format
msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
+msgstr "%s: エラー - \"-P\" オプションã®ã‚ã¨ã«ã¯ãƒšãƒ¼ã‚¸ãƒªã‚¹ãƒˆãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lp.c:308
#, c-format
msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
+msgstr "%s: エラー - \"-%c\" オプションã®ã‚ã¨ã«ã¯å„ªå…ˆåº¦ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/cupsaccept.c:141
#, c-format
msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
+msgstr "%s: エラー - \"-r\" ã®ã‚ã¨ã«ã¯ç†ç”±ã®ãƒ†ã‚­ã‚¹ãƒˆãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lp.c:354
#, c-format
msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
+msgstr "%s: エラー - \"-t\" オプションã®ã‚ã¨ã«ã¯ã‚¿ã‚¤ãƒˆãƒ«ãŒå¿…è¦ã§ã™ã€‚"
+#: berkeley/lpq.c:111 berkeley/lpr.c:84 berkeley/lprm.c:104
+#: systemv/cancel.c:94 systemv/cupsaccept.c:101 systemv/lp.c:116
+#: systemv/lpadmin.c:438 systemv/lpstat.c:137
#, c-format
msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
+msgstr "%s: エラー - \"-U\" オプションã®ã‚ã¨ã«ã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼åãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/cancel.c:145
#, c-format
msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
+msgstr "%s: エラー - \"-u\" オプションã®ã‚ã¨ã«ã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼åãŒå¿…è¦ã§ã™ã€‚"
+#: berkeley/lpr.c:125
#, c-format
msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
+msgstr "%s: エラー - \"-%c\" オプションã®ã‚ã¨ã«ã¯å€¤ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpstat.c:157 systemv/lpstat.c:171
#, c-format
msgid ""
"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
"option."
-msgstr ""
+msgstr "%s: エラー - \"-W\" オプションã®ã‚ã¨ã«ã¯ã€\"completed\"ã€\"not-completed\"ã€\"all\" ã®ã„ãšã‚Œã‹ãŒå¿…è¦ã§ã™ã€‚"
+#: berkeley/lpq.c:241 berkeley/lpr.c:349 systemv/lp.c:589
#, c-format
msgid "%s: Error - no default destination available."
-msgstr ""
+msgstr "%s: エラー - 利用å¯èƒ½ãªãƒ‡ãƒ•ォルトã®å®›å…ˆãŒã‚りã¾ã›ã‚“。"
+#: systemv/lp.c:330
#, c-format
msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
+msgstr "%s: エラー - 優先度㯠1 ã‹ã‚‰ 100 ã®é–“ã§ã‚ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: berkeley/lpr.c:352 systemv/lp.c:592
#, c-format
msgid "%s: Error - scheduler not responding."
-msgstr ""
+msgstr "%s: エラー - スケジューラーãŒå¿œç­”ã—ã¦ã„ã¾ã›ã‚“。"
+#: berkeley/lpr.c:305 systemv/lp.c:537
#, c-format
msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
+msgstr "%s: エラー - ファイルãŒå¤šã™ãŽã¾ã™ - \"%s\""
+#: berkeley/lpr.c:287 systemv/lp.c:520
#, c-format
msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
+msgstr "%s: エラー - \"%s\" ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“ - %s"
+#: berkeley/lpr.c:395 systemv/lp.c:623
#, c-format
msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
+msgstr "%s: エラー - 標準入力ã‹ã‚‰ã‚­ãƒ¥ãƒ¼ã«ãƒ‡ãƒ¼ã‚¿ã‚’入力ã§ãã¾ã›ã‚“。 - %s"
+#: berkeley/lprm.c:87 berkeley/lprm.c:172 systemv/cancel.c:214
#, c-format
msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
+msgstr "%s: エラー - \"%s\" ã¯æœªçŸ¥ã®å®›å…ˆã§ã™ã€‚"
+#: berkeley/lpq.c:150
#, c-format
msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
+msgstr "%s: エラー - \"%s/%s\" ã¯æœªçŸ¥ã®å®›å…ˆã§ã™ã€‚"
+#: berkeley/lpr.c:274 berkeley/lprm.c:139 systemv/cancel.c:156
+#: systemv/cupsaccept.c:164 systemv/lp.c:496 systemv/lpstat.c:452
#, c-format
msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
+msgstr "%s: エラー - '%c' ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ã€‚"
+#: systemv/cupsaccept.c:157
#, c-format
msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
+msgstr "%s: エラー - '%s' ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ã€‚"
+#: systemv/lp.c:208
#, c-format
msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
+msgstr "%s: '-i' オプションã®ã‚ã¨ã«ã¯ã‚¸ãƒ§ãƒ– ID ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpstat.c:504 systemv/lpstat.c:543
#, c-format
msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
+msgstr "%s: リスト \"%s\" ã«ç„¡åйãªå®›å…ˆåãŒã‚りã¾ã™ã€‚"
+#: scheduler/cupsfilter.c:567
#, c-format
msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
+msgstr "%s: 無効ãªãƒ•ィルター文字列ã§ã™ \"%s\""
+#: systemv/lp.c:418
#, c-format
msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
+msgstr "%s: '-H restart' ã®å‰ã«ã¯ã‚¸ãƒ§ãƒ– ID ('-i ジョブID') ãŒå¿…è¦ã§ã™ã€‚"
+#: scheduler/cupsfilter.c:458
#, c-format
msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
+msgstr "%s: %s/%s ã‹ã‚‰ %s/%s ã«å¤‰æ›ã™ã‚‹ãƒ•ィルターãŒã‚りã¾ã›ã‚“。"
+#: systemv/cupsaccept.c:198
#, c-format
msgid "%s: Operation failed: %s"
-msgstr ""
+msgstr "%s: æ“作ã«å¤±æ•—ã—ã¾ã—ãŸ: %s"
+#: berkeley/lpq.c:97 berkeley/lpr.c:70 berkeley/lprm.c:67 systemv/cancel.c:81
+#: systemv/cupsaccept.c:88 systemv/cupsaddsmb.c:86 systemv/lp.c:102
+#: systemv/lpadmin.c:239 systemv/lpinfo.c:88 systemv/lpmove.c:73
+#: systemv/lpstat.c:102 test/ipptool.c:304 test/ipptool.c:321
#, c-format
msgid "%s: Sorry, no encryption support."
-msgstr ""
+msgstr "%s: 残念ãªãŒã‚‰ã€æš—å·åŒ–サãƒãƒ¼ãƒˆã¯ã‚³ãƒ³ãƒ‘イル時ã«çµ„ã¿è¾¼ã¾ã‚Œã¦ã„ã¾ã›ã‚“。"
+#: berkeley/lpq.c:295 scheduler/cupsfilter.c:1221 systemv/cancel.c:237
+#: systemv/cupsaddsmb.c:144 systemv/cupsaddsmb.c:171
#, c-format
msgid "%s: Unable to connect to server."
-msgstr ""
+msgstr "%s: サーãƒãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“"
+#: systemv/cancel.c:317
#, c-format
msgid "%s: Unable to contact server."
-msgstr ""
+msgstr "%s: サーãƒãƒ¼ã«é€£çµ¡ã§ãã¾ã›ã‚“。"
+#: scheduler/cupsfilter.c:424
#, c-format
msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
+msgstr "%s: \"%s\" ã® MIME タイプを判別ã§ãã¾ã›ã‚“。"
+#: ppdc/ppdmerge.cxx:96
#, c-format
msgid "%s: Unable to open %s: %s"
-msgstr ""
+msgstr "%s: %s ã‚’é–‹ã‘ã¾ã›ã‚“: %s"
+#: scheduler/cupsfilter.c:662 ppdc/ppdmerge.cxx:112
#, c-format
msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
+msgstr "%s: PPD ファイルを開ã‘ã¾ã›ã‚“: %s ã® %d 行目"
+#: scheduler/cupsfilter.c:392
#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
+msgstr "%s: \"%s\" ã¾ãŸã¯ \"%s\" ã‹ã‚‰ MIME データベースを読ã¿å–ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。"
+#: berkeley/lpq.c:153 systemv/lpstat.c:558
#, c-format
msgid "%s: Unknown destination \"%s\"."
-msgstr ""
+msgstr "%s: \"%s\" ã¯æœªçŸ¥ã®å®›å…ˆã§ã™ã€‚"
+#: scheduler/cupsfilter.c:435
#, c-format
msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
+msgstr "%s: %s/%s ã¯æœªçŸ¥ã®å®›å…ˆ MIME タイプã§ã™ã€‚"
+#: scheduler/cupsfilter.c:1426
#, c-format
msgid "%s: Unknown option \"%c\"."
-msgstr ""
+msgstr "%s: '%c' ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ã€‚"
+#: scheduler/cupsfilter.c:416
#, c-format
msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
+msgstr "%s: %s/%s ã¯æœªçŸ¥ã®ã‚½ãƒ¼ã‚¹ MIME タイプã§ã™ã€‚"
+#: berkeley/lpr.c:139
#, c-format
msgid ""
"%s: Warning - \"%c\" format modifier not supported - output may not be "
"correct."
-msgstr ""
+msgstr "%s: 警告 - '%c' å½¢å¼ä¿®é£¾å­ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“ - å‡ºåŠ›ã¯æ­£ã—ããªã„ã‚‚ã®ã«ãªã‚‹ã‹ã‚‚ã—れã¾ã›ã‚“。"
+#: systemv/lp.c:468
#, c-format
msgid "%s: Warning - character set option ignored."
-msgstr ""
+msgstr "%s: 警告 - 文字セットオプションã¯ç„¡è¦–ã•れã¾ã™ã€‚"
+#: systemv/lp.c:487
#, c-format
msgid "%s: Warning - content type option ignored."
-msgstr ""
+msgstr "%s: 警告 - コンテンツタイプオプションã¯ç„¡è¦–ã•れã¾ã™ã€‚"
+#: systemv/lp.c:175
#, c-format
msgid "%s: Warning - form option ignored."
-msgstr ""
+msgstr "%s: 警告 - 用紙オプションã¯ç„¡è¦–ã•れã¾ã™ã€‚"
+#: systemv/lp.c:378
#, c-format
msgid "%s: Warning - mode option ignored."
-msgstr ""
+msgstr "%s: 警告 - モードオプションã¯ç„¡è¦–ã•れã¾ã™ã€‚"
+#: ppdc/sample.c:310
msgid "-1"
msgstr "-1"
+#: ppdc/sample.c:301
msgid "-10"
msgstr "-10"
+#: ppdc/sample.c:393
msgid "-100"
msgstr "-100"
+#: ppdc/sample.c:392
msgid "-105"
msgstr "-105"
+#: ppdc/sample.c:300
msgid "-11"
msgstr "-11"
+#: ppdc/sample.c:391
msgid "-110"
msgstr "-110"
+#: ppdc/sample.c:390
msgid "-115"
msgstr "-115"
+#: ppdc/sample.c:299
msgid "-12"
msgstr "-12"
+#: ppdc/sample.c:389
msgid "-120"
msgstr "-120"
+#: ppdc/sample.c:298
msgid "-13"
msgstr "-13"
+#: ppdc/sample.c:297
msgid "-14"
msgstr "-14"
+#: ppdc/sample.c:296
msgid "-15"
msgstr "-15"
+#: ppdc/sample.c:309
msgid "-2"
msgstr "-2"
+#: ppdc/sample.c:409
msgid "-20"
msgstr "-20"
+#: ppdc/sample.c:408
msgid "-25"
msgstr "-25"
+#: ppdc/sample.c:308
msgid "-3"
msgstr "-3"
+#: ppdc/sample.c:407
msgid "-30"
msgstr "-30"
+#: ppdc/sample.c:406
msgid "-35"
msgstr "-35"
+#: ppdc/sample.c:307
msgid "-4"
msgstr "-4"
+#: ppdc/sample.c:405
msgid "-40"
msgstr "-40"
+#: ppdc/sample.c:404
msgid "-45"
msgstr "-45"
+#: ppdc/sample.c:306
msgid "-5"
msgstr "-5"
+#: ppdc/sample.c:403
msgid "-50"
msgstr "-50"
+#: ppdc/sample.c:402
msgid "-55"
msgstr "-55"
+#: ppdc/sample.c:305
msgid "-6"
msgstr "-6"
+#: ppdc/sample.c:401
msgid "-60"
msgstr "-60"
+#: ppdc/sample.c:400
msgid "-65"
msgstr "-65"
+#: ppdc/sample.c:304
msgid "-7"
msgstr "-7"
+#: ppdc/sample.c:399
msgid "-70"
msgstr "-70"
+#: ppdc/sample.c:398
msgid "-75"
msgstr "-75"
+#: ppdc/sample.c:303
msgid "-8"
msgstr "-8"
+#: ppdc/sample.c:397
msgid "-80"
msgstr "-80"
+#: ppdc/sample.c:396
msgid "-85"
msgstr "-85"
+#: ppdc/sample.c:302
msgid "-9"
msgstr "-9"
+#: ppdc/sample.c:395
msgid "-90"
msgstr "-90"
+#: ppdc/sample.c:394
msgid "-95"
msgstr "-95"
+#: ppdc/sample.c:311
msgid "0"
msgstr "0"
+#: ppdc/sample.c:312
msgid "1"
msgstr "1"
+#: ppdc/sample.c:384
msgid "1 inch/sec."
msgstr "1 インãƒ/ç§’"
+#: ppdc/sample.c:172
msgid "1.25x0.25\""
-msgstr "1.25x0.25インãƒ"
+msgstr "1.25x0.25 インãƒ"
+#: ppdc/sample.c:173
msgid "1.25x2.25\""
-msgstr "1.25x2.25インãƒ"
+msgstr "1.25x2.25 インãƒ"
+#: ppdc/sample.c:432
msgid "1.5 inch/sec."
msgstr "1.5 インãƒ/ç§’"
+#: ppdc/sample.c:174
msgid "1.50x0.25\""
-msgstr "1.50x0.25インãƒ"
+msgstr "1.50x0.25 インãƒ"
+#: ppdc/sample.c:175
msgid "1.50x0.50\""
-msgstr "1.50x0.50インãƒ"
+msgstr "1.50x0.50 インãƒ"
+#: ppdc/sample.c:176
msgid "1.50x1.00\""
-msgstr "1.50x1.00インãƒ"
+msgstr "1.50x1.00 インãƒ"
+#: ppdc/sample.c:177
msgid "1.50x2.00\""
-msgstr "1.50x2.00インãƒ"
+msgstr "1.50x2.00 インãƒ"
+#: ppdc/sample.c:321
msgid "10"
msgstr "10"
+#: ppdc/sample.c:443
msgid "10 inches/sec."
msgstr "10 インãƒ/ç§’"
+#: ppdc/sample.c:6
msgid "10 x 11"
-msgstr ""
+msgstr "10 x 11 インãƒ"
+#: ppdc/sample.c:7
msgid "10 x 13"
-msgstr ""
+msgstr "10 x 13 インãƒ"
+#: ppdc/sample.c:8
msgid "10 x 14"
-msgstr ""
+msgstr "10 x 14 インãƒ"
+#: ppdc/sample.c:423
msgid "100"
msgstr "100"
+#: ppdc/sample.c:334
msgid "100 mm/sec."
msgstr "100 ミリメートル/秒"
+#: ppdc/sample.c:424
msgid "105"
msgstr "105"
+#: ppdc/sample.c:322
msgid "11"
msgstr "11"
+#: ppdc/sample.c:444
msgid "11 inches/sec."
msgstr "11 インãƒ/ç§’"
+#: ppdc/sample.c:425
msgid "110"
msgstr "110"
+#: ppdc/sample.c:426
msgid "115"
msgstr "115"
+#: ppdc/sample.c:323
msgid "12"
msgstr "12"
+#: ppdc/sample.c:445
msgid "12 inches/sec."
msgstr "12 インãƒ/ç§’"
+#: ppdc/sample.c:9
msgid "12 x 11"
-msgstr ""
+msgstr "12 x 11 インãƒ"
+#: ppdc/sample.c:427
msgid "120"
msgstr "120"
+#: ppdc/sample.c:335
msgid "120 mm/sec."
msgstr "120 ミリメートル/秒"
+#: ppdc/sample.c:243
msgid "120x60dpi"
msgstr "120x60dpi"
+#: ppdc/sample.c:249
msgid "120x72dpi"
msgstr "120x72dpi"
+#: ppdc/sample.c:324
msgid "13"
msgstr "13"
+#: ppdc/sample.c:232
msgid "136dpi"
msgstr "136dpi"
+#: ppdc/sample.c:325
msgid "14"
msgstr "14"
+#: ppdc/sample.c:326
msgid "15"
msgstr "15"
+#: ppdc/sample.c:328
msgid "15 mm/sec."
msgstr "15 ミリメートル/秒"
+#: ppdc/sample.c:10
msgid "15 x 11"
-msgstr ""
+msgstr "15 x 11 インãƒ"
+#: ppdc/sample.c:336
msgid "150 mm/sec."
msgstr "150 ミリメートル/秒"
+#: ppdc/sample.c:283
msgid "150dpi"
msgstr "150dpi"
+#: ppdc/sample.c:368
msgid "16"
msgstr "16"
+#: ppdc/sample.c:369
msgid "17"
msgstr "17"
+#: ppdc/sample.c:370
msgid "18"
msgstr "18"
+#: ppdc/sample.c:244
msgid "180dpi"
msgstr "180dpi"
+#: ppdc/sample.c:371
msgid "19"
msgstr "19"
+#: ppdc/sample.c:313
msgid "2"
msgstr "2"
+#: ppdc/sample.c:385
msgid "2 inches/sec."
msgstr "2 インãƒ/ç§’"
+#: ppdc/sample.c:270
msgid "2-Sided Printing"
msgstr "両é¢å°åˆ·"
+#: ppdc/sample.c:178
msgid "2.00x0.37\""
-msgstr "2.00x0.37インãƒ"
+msgstr "2.00x0.37 インãƒ"
+#: ppdc/sample.c:179
msgid "2.00x0.50\""
-msgstr "2.00x0.50インãƒ"
+msgstr "2.00x0.50 インãƒ"
+#: ppdc/sample.c:180
msgid "2.00x1.00\""
-msgstr "2.00x1.00インãƒ"
+msgstr "2.00x1.00 インãƒ"
+#: ppdc/sample.c:181
msgid "2.00x1.25\""
-msgstr "2.00x1.25インãƒ"
+msgstr "2.00x1.25 インãƒ"
+#: ppdc/sample.c:182
msgid "2.00x2.00\""
-msgstr "2.00x2.00インãƒ"
+msgstr "2.00x2.00 インãƒ"
+#: ppdc/sample.c:183
msgid "2.00x3.00\""
-msgstr "2.00x3.00インãƒ"
+msgstr "2.00x3.00 インãƒ"
+#: ppdc/sample.c:184
msgid "2.00x4.00\""
-msgstr "2.00x4.00インãƒ"
+msgstr "2.00x4.00 インãƒ"
+#: ppdc/sample.c:185
msgid "2.00x5.50\""
-msgstr "2.00x5.50インãƒ"
+msgstr "2.00x5.50 インãƒ"
+#: ppdc/sample.c:186
msgid "2.25x0.50\""
-msgstr "2.25x0.50インãƒ"
+msgstr "2.25x0.50 インãƒ"
+#: ppdc/sample.c:187
msgid "2.25x1.25\""
-msgstr "2.25x1.25インãƒ"
+msgstr "2.25x1.25 インãƒ"
+#: ppdc/sample.c:188
msgid "2.25x4.00\""
-msgstr "2.25x4.00インãƒ"
+msgstr "2.25x4.00 インãƒ"
+#: ppdc/sample.c:189
msgid "2.25x5.50\""
-msgstr "2.25x5.50インãƒ"
+msgstr "2.25x5.50 インãƒ"
+#: ppdc/sample.c:190
msgid "2.38x5.50\""
-msgstr "2.38x5.50インãƒ"
+msgstr "2.38x5.50 インãƒ"
+#: ppdc/sample.c:433
msgid "2.5 inches/sec."
msgstr "2.5 インãƒ/ç§’"
+#: ppdc/sample.c:191
msgid "2.50x1.00\""
-msgstr "2.50x1.00インãƒ"
+msgstr "2.50x1.00 インãƒ"
+#: ppdc/sample.c:192
msgid "2.50x2.00\""
-msgstr "2.50x2.00インãƒ"
+msgstr "2.50x2.00 インãƒ"
+#: ppdc/sample.c:193
msgid "2.75x1.25\""
-msgstr "2.75x1.25インãƒ"
+msgstr "2.75x1.25 インãƒ"
+#: ppdc/sample.c:194
msgid "2.9 x 1\""
-msgstr "2.9 x 1インãƒ"
+msgstr "2.9 x 1 インãƒ"
+#: ppdc/sample.c:372
msgid "20"
msgstr "20"
+#: ppdc/sample.c:329
msgid "20 mm/sec."
msgstr "20 ミリメートル/秒"
+#: ppdc/sample.c:337
msgid "200 mm/sec."
msgstr "200 ミリメートル/秒"
+#: ppdc/sample.c:233
msgid "203dpi"
msgstr "203dpi"
+#: ppdc/sample.c:373
msgid "21"
msgstr "21"
+#: ppdc/sample.c:374
msgid "22"
msgstr "22"
+#: ppdc/sample.c:375
msgid "23"
msgstr "23"
+#: ppdc/sample.c:376
msgid "24"
msgstr "24"
+#: ppdc/sample.c:241
msgid "24-Pin Series"
-msgstr "24ピンシリーズ"
+msgstr "24 ピンシリーズ"
+#: ppdc/sample.c:250
msgid "240x72dpi"
msgstr "240x72dpi"
+#: ppdc/sample.c:377
msgid "25"
msgstr "25"
+#: ppdc/sample.c:338
msgid "250 mm/sec."
msgstr "250 ミリメートル/秒"
+#: ppdc/sample.c:378
msgid "26"
msgstr "26"
+#: ppdc/sample.c:379
msgid "27"
msgstr "27"
+#: ppdc/sample.c:380
msgid "28"
msgstr "28"
+#: ppdc/sample.c:381
msgid "29"
msgstr "29"
+#: ppdc/sample.c:314
msgid "3"
msgstr "3"
+#: ppdc/sample.c:386
msgid "3 inches/sec."
msgstr "3 インãƒ/ç§’"
+#: ppdc/sample.c:3
msgid "3 x 5"
-msgstr ""
+msgstr "3 x 5"
+#: ppdc/sample.c:195
msgid "3.00x1.00\""
-msgstr "3.00x1.00インãƒ"
+msgstr "3.00x1.00 インãƒ"
+#: ppdc/sample.c:196
msgid "3.00x1.25\""
-msgstr "3.00x1.25インãƒ"
+msgstr "3.00x1.25 インãƒ"
+#: ppdc/sample.c:197
msgid "3.00x2.00\""
-msgstr "3.00x2.00インãƒ"
+msgstr "3.00x2.00 インãƒ"
+#: ppdc/sample.c:198
msgid "3.00x3.00\""
msgstr "3.00x3.00インãƒ"
+#: ppdc/sample.c:199
msgid "3.00x5.00\""
-msgstr "3.00x5.00インãƒ"
+msgstr "3.00x5.00 インãƒ"
+#: ppdc/sample.c:200
msgid "3.25x2.00\""
-msgstr "3.25x2.00インãƒ"
+msgstr "3.25x2.00 インãƒ"
+#: ppdc/sample.c:201
msgid "3.25x5.00\""
-msgstr "3.25x5.00インãƒ"
+msgstr "3.25x5.00 インãƒ"
+#: ppdc/sample.c:202
msgid "3.25x5.50\""
-msgstr "3.25x5.50インãƒ"
+msgstr "3.25x5.50 インãƒ"
+#: ppdc/sample.c:203
msgid "3.25x5.83\""
-msgstr "3.25x5.83インãƒ"
+msgstr "3.25x5.83 インãƒ"
+#: ppdc/sample.c:204
msgid "3.25x7.83\""
-msgstr "3.25x7.83インãƒ"
+msgstr "3.25x7.83 インãƒ"
+#: ppdc/sample.c:4
msgid "3.5 x 5"
-msgstr ""
+msgstr "3.5 x 5"
+#: ppdc/sample.c:171
msgid "3.5\" Disk"
-msgstr "3.5 インãƒDisk"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3.5インムDisk - 2 1/8 x 2 3/4インãƒ"
+msgstr "3.5 インãƒãƒ‡ã‚£ã‚¹ã‚¯"
+#: ppdc/sample.c:205
msgid "3.50x1.00\""
-msgstr "3.50x1.00インãƒ"
+msgstr "3.50x1.00 インãƒ"
+#: ppdc/sample.c:382
msgid "30"
msgstr "30"
+#: ppdc/sample.c:330
msgid "30 mm/sec."
msgstr "30 ミリメートル/秒"
+#: ppdc/sample.c:339
msgid "300 mm/sec."
msgstr "300 ミリメートル/秒"
+#: ppdc/sample.c:234
msgid "300dpi"
msgstr "300dpi"
+#: ppdc/sample.c:410
msgid "35"
msgstr "35"
+#: ppdc/sample.c:246
msgid "360dpi"
msgstr "360dpi"
+#: ppdc/sample.c:245
msgid "360x180dpi"
msgstr "360x180dpi"
+#: ppdc/sample.c:315
msgid "4"
msgstr "4"
+#: ppdc/sample.c:387
msgid "4 inches/sec."
msgstr "4 インãƒ/ç§’"
+#: ppdc/sample.c:206
msgid "4.00x1.00\""
-msgstr "4.00x1.00インãƒ"
+msgstr "4.00x1.00 インãƒ"
+#: ppdc/sample.c:214
msgid "4.00x13.00\""
-msgstr "4.00x13.00インãƒ"
+msgstr "4.00x13.00 インãƒ"
+#: ppdc/sample.c:207
msgid "4.00x2.00\""
-msgstr "4.00x2.00インãƒ"
+msgstr "4.00x2.00 インãƒ"
+#: ppdc/sample.c:208
msgid "4.00x2.50\""
-msgstr "4.00x2.50インãƒ"
+msgstr "4.00x2.50 インãƒ"
+#: ppdc/sample.c:209
msgid "4.00x3.00\""
-msgstr "4.00x3.00インãƒ"
+msgstr "4.00x3.00 インãƒ"
+#: ppdc/sample.c:210
msgid "4.00x4.00\""
-msgstr "4.00x4.00インãƒ"
+msgstr "4.00x4.00 インãƒ"
+#: ppdc/sample.c:211
msgid "4.00x5.00\""
-msgstr "4.00x5.00インãƒ"
+msgstr "4.00x5.00 インãƒ"
+#: ppdc/sample.c:212
msgid "4.00x6.00\""
-msgstr "4.00x6.00インãƒ"
+msgstr "4.00x6.00 インãƒ"
+#: ppdc/sample.c:213
msgid "4.00x6.50\""
-msgstr "4.00x6.50インãƒ"
+msgstr "4.00x6.50 インãƒ"
+#: ppdc/sample.c:411
msgid "40"
msgstr "40"
+#: ppdc/sample.c:331
msgid "40 mm/sec."
msgstr "40 ミリメートル/秒"
+#: ppdc/sample.c:412
msgid "45"
msgstr "45"
+#: ppdc/sample.c:316
msgid "5"
msgstr "5"
+#: ppdc/sample.c:437
msgid "5 inches/sec."
msgstr "5 インãƒ/ç§’"
+#: ppdc/sample.c:5
msgid "5 x 7"
-msgstr ""
+msgstr "5 x 7 インãƒ"
+#: ppdc/sample.c:413
msgid "50"
msgstr "50"
+#: ppdc/sample.c:414
msgid "55"
msgstr "55"
+#: ppdc/sample.c:317
msgid "6"
msgstr "6"
+#: ppdc/sample.c:438
msgid "6 inches/sec."
msgstr "6 インãƒ/ç§’"
+#: ppdc/sample.c:215
msgid "6.00x1.00\""
-msgstr "6.00x1.00\""
+msgstr "6.00x1.00 インãƒ"
+#: ppdc/sample.c:216
msgid "6.00x2.00\""
-msgstr "6.00x2.00\""
+msgstr "6.00x2.00 インãƒ"
+#: ppdc/sample.c:217
msgid "6.00x3.00\""
-msgstr "6.00x3.00\""
+msgstr "6.00x3.00 インãƒ"
+#: ppdc/sample.c:218
msgid "6.00x4.00\""
-msgstr "6.00x4.00\""
+msgstr "6.00x4.00 インãƒ"
+#: ppdc/sample.c:219
msgid "6.00x5.00\""
-msgstr "6.00x5.00\""
+msgstr "6.00x5.00 インãƒ"
+#: ppdc/sample.c:220
msgid "6.00x6.00\""
-msgstr "6.00x6.00\""
+msgstr "6.00x6.00 インãƒ"
+#: ppdc/sample.c:221
msgid "6.00x6.50\""
-msgstr "6.00x6.50\""
+msgstr "6.00x6.50 インãƒ"
+#: ppdc/sample.c:415
msgid "60"
msgstr "60"
+#: ppdc/sample.c:332
msgid "60 mm/sec."
-msgstr "60 mm/ç§’"
+msgstr "60 ミリメートル/秒"
+#: ppdc/sample.c:261
msgid "600dpi"
msgstr "600dpi"
+#: ppdc/sample.c:242
msgid "60dpi"
msgstr "60dpi"
+#: ppdc/sample.c:248
msgid "60x72dpi"
-msgstr ""
+msgstr "60x72dpi"
+#: ppdc/sample.c:416
msgid "65"
msgstr "65"
+#: ppdc/sample.c:318
msgid "7"
msgstr "7"
+#: ppdc/sample.c:440
msgid "7 inches/sec."
msgstr "7 インãƒ/ç§’"
+#: ppdc/sample.c:11
msgid "7 x 9"
-msgstr ""
+msgstr "7 x 9 インãƒ"
+#: ppdc/sample.c:417
msgid "70"
msgstr "70"
+#: ppdc/sample.c:252
msgid "720dpi"
msgstr "720dpi"
+#: ppdc/sample.c:418
msgid "75"
msgstr "75"
+#: ppdc/sample.c:319
msgid "8"
msgstr "8"
+#: ppdc/sample.c:441
msgid "8 inches/sec."
msgstr "8 インãƒ/ç§’"
+#: ppdc/sample.c:12
msgid "8 x 10"
-msgstr ""
+msgstr "8 x 10 インãƒ"
+#: ppdc/sample.c:222
msgid "8.00x1.00\""
-msgstr "8.00x1.00\""
+msgstr "8.00x1.00 インãƒ"
+#: ppdc/sample.c:223
msgid "8.00x2.00\""
-msgstr "8.00x2.00\""
+msgstr "8.00x2.00 インãƒ"
+#: ppdc/sample.c:224
msgid "8.00x3.00\""
-msgstr "8.00x3.00\""
+msgstr "8.00x3.00 インãƒ"
+#: ppdc/sample.c:225
msgid "8.00x4.00\""
-msgstr "8.00x4.00\""
+msgstr "8.00x4.00 インãƒ"
+#: ppdc/sample.c:226
msgid "8.00x5.00\""
-msgstr "8.00x5.00\""
+msgstr "8.00x5.00 インãƒ"
+#: ppdc/sample.c:227
msgid "8.00x6.00\""
-msgstr "8.00x6.00\""
+msgstr "8.00x6.00 インãƒ"
+#: ppdc/sample.c:228
msgid "8.00x6.50\""
-msgstr "8.00x6.50\""
+msgstr "8.00x6.50 インãƒ"
+#: ppdc/sample.c:419
msgid "80"
msgstr "80"
+#: ppdc/sample.c:333
msgid "80 mm/sec."
-msgstr "80 mm/ç§’"
+msgstr "80 ミリメートル/秒"
+#: ppdc/sample.c:420
msgid "85"
msgstr "85"
+#: ppdc/sample.c:320
msgid "9"
msgstr "9"
+#: ppdc/sample.c:442
msgid "9 inches/sec."
msgstr "9 インãƒ/ç§’"
+#: ppdc/sample.c:13
msgid "9 x 11"
-msgstr ""
+msgstr "9 x 11 インãƒ"
+#: ppdc/sample.c:14
msgid "9 x 12"
-msgstr ""
+msgstr "9 x 12 インãƒ"
+#: ppdc/sample.c:247
msgid "9-Pin Series"
-msgstr "9-Pin Series"
+msgstr "9 ピンシリーズ"
+#: ppdc/sample.c:421
msgid "90"
msgstr "90"
+#: ppdc/sample.c:422
msgid "95"
msgstr "95"
+#: berkeley/lpc.c:213
msgid "?Invalid help command unknown."
-msgstr ""
+msgstr "?無効ãªãƒ˜ãƒ«ãƒ—コマンドã§ã™"
+#: cgi-bin/admin.c:2368
msgid "A Samba password is required to export printer drivers"
-msgstr ""
+msgstr "プリンタードライãƒãƒ¼ã‚’エクスãƒãƒ¼ãƒˆã™ã‚‹ã«ã¯ Samba ã®ãƒ‘スワードãŒå¿…è¦ã§ã™ã€‚"
+#: cgi-bin/admin.c:2364
msgid "A Samba username is required to export printer drivers"
-msgstr ""
+msgstr "プリンタードライãƒãƒ¼ã‚’エクスãƒãƒ¼ãƒˆã™ã‚‹ã«ã¯ã€Samba ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åãŒå¿…è¦ã§ã™ã€‚"
+#: scheduler/ipp.c:2283
#, c-format
msgid "A class named \"%s\" already exists."
-msgstr ""
+msgstr "\"%s\" ã¨ã„ã†åå‰ã®ã‚¯ãƒ©ã‚¹ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚"
+#: scheduler/ipp.c:1004
#, c-format
msgid "A printer named \"%s\" already exists."
-msgstr ""
+msgstr "\"%s\" ã¨ã„ã†åå‰ã®ãƒ—リンターã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚"
+#: ppdc/sample.c:15
msgid "A0"
msgstr "A0"
+#: ppdc/sample.c:16
msgid "A0 Long Edge"
-msgstr ""
+msgstr "A0 長辺é€ã‚Š"
+#: ppdc/sample.c:17
msgid "A1"
msgstr "A1"
+#: ppdc/sample.c:18
msgid "A1 Long Edge"
-msgstr ""
+msgstr "A1 長辺é€ã‚Š"
+#: ppdc/sample.c:37
msgid "A10"
msgstr "A10"
+#: ppdc/sample.c:19
msgid "A2"
msgstr "A2"
+#: ppdc/sample.c:20
msgid "A2 Long Edge"
-msgstr ""
+msgstr "A2 長辺é€ã‚Š"
+#: ppdc/sample.c:21
msgid "A3"
msgstr "A3"
+#: ppdc/sample.c:22
msgid "A3 Long Edge"
-msgstr ""
+msgstr "A3 長辺é€ã‚Š"
+#: ppdc/sample.c:23
msgid "A3 Oversize"
-msgstr ""
+msgstr "A3 (特大)"
+#: ppdc/sample.c:24
msgid "A3 Oversize Long Edge"
-msgstr ""
+msgstr "A3 (特大) 長辺é€ã‚Š"
+#: ppdc/sample.c:25
msgid "A4"
msgstr "A4"
+#: ppdc/sample.c:27
msgid "A4 Long Edge"
-msgstr ""
+msgstr "A4 長辺é€ã‚Š"
+#: ppdc/sample.c:26
msgid "A4 Oversize"
-msgstr ""
+msgstr "A4 (特大)"
+#: ppdc/sample.c:28
msgid "A4 Small"
-msgstr ""
+msgstr "A4 (å°)"
+#: ppdc/sample.c:29
msgid "A5"
msgstr "A5"
+#: ppdc/sample.c:31
msgid "A5 Long Edge"
-msgstr ""
+msgstr "A5 長辺é€ã‚Š"
+#: ppdc/sample.c:30
msgid "A5 Oversize"
-msgstr ""
+msgstr "A5 (特大)"
+#: ppdc/sample.c:32
msgid "A6"
msgstr "A6"
+#: ppdc/sample.c:33
msgid "A6 Long Edge"
-msgstr ""
+msgstr "A6 長辺é€ã‚Š"
+#: ppdc/sample.c:34
msgid "A7"
msgstr "A7"
+#: ppdc/sample.c:35
msgid "A8"
msgstr "A8"
+#: ppdc/sample.c:36
msgid "A9"
msgstr "A9"
+#: ppdc/sample.c:38
msgid "ANSI A"
msgstr "ANSI A"
+#: ppdc/sample.c:39
msgid "ANSI B"
msgstr "ANSI B"
+#: ppdc/sample.c:40
msgid "ANSI C"
msgstr "ANSI C"
+#: ppdc/sample.c:41
msgid "ANSI D"
msgstr "ANSI D"
+#: ppdc/sample.c:42
msgid "ANSI E"
msgstr "ANSI E"
+#: ppdc/sample.c:47
msgid "ARCH C"
msgstr "ARCH C"
+#: ppdc/sample.c:48
msgid "ARCH C Long Edge"
-msgstr ""
+msgstr "ARCH C 長辺é€ã‚Š"
+#: ppdc/sample.c:49
msgid "ARCH D"
msgstr "ARCH D"
+#: ppdc/sample.c:50
msgid "ARCH D Long Edge"
-msgstr ""
+msgstr "ARCH D 長辺é€ã‚Š"
+#: ppdc/sample.c:51
msgid "ARCH E"
msgstr "ARCH E"
+#: ppdc/sample.c:52
msgid "ARCH E Long Edge"
-msgstr ""
+msgstr "ARCH E 長辺é€ã‚Š"
+#: cgi-bin/classes.c:169 cgi-bin/printers.c:172
msgid "Accept Jobs"
msgstr "ジョブã®å—ã‘付ã‘"
+#: cups/http-support.c:1284
msgid "Accepted"
msgstr "å—ã‘付ã‘ã¾ã—ãŸ"
+#: cgi-bin/admin.c:570
msgid "Add Class"
msgstr "クラスã®è¿½åŠ "
+#: cgi-bin/admin.c:882
msgid "Add Printer"
msgstr "プリンターã®è¿½åŠ "
+#: cgi-bin/admin.c:444 cgi-bin/admin.c:477 cgi-bin/admin.c:525
+#: cgi-bin/admin.c:535
msgid "Add RSS Subscription"
msgstr "RSS 購読を追加"
+#: ppdc/sample.c:163
msgid "Address"
msgstr "アドレス"
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "アドレス - 1 1/8 x 3 1/2\""
-
+#: cgi-bin/admin.c:210 cgi-bin/admin.c:284 cgi-bin/admin.c:2745
msgid "Administration"
msgstr "管ç†"
+#: ppdc/sample.c:429
msgid "Always"
msgstr "å¸¸ã«æœ‰åй"
+#: backend/socket.c:129
msgid "AppSocket/HP JetDirect"
msgstr "AppSocket/HP JetDirect"
+#: ppdc/sample.c:450
msgid "Applicator"
msgstr "アプリケーター"
+#: scheduler/ipp.c:1079
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
+msgstr "%s printer-state ã« ä¸æ­£ãªå€¤ %d を設定ã—よã†ã¨ã—ã¦ã„ã¾ã™ã€‚"
+#: scheduler/ipp.c:325
#, c-format
msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
+msgstr "属性グループã¯ç¯„囲外ã§ã™ (%x < %x)。"
+#: ppdc/sample.c:126
msgid "B0"
msgstr "B0"
+#: ppdc/sample.c:127
msgid "B1"
msgstr "B1"
+#: ppdc/sample.c:137
msgid "B10"
msgstr "B10"
+#: ppdc/sample.c:128
msgid "B2"
msgstr "B2"
+#: ppdc/sample.c:129
msgid "B3"
msgstr "B3"
+#: ppdc/sample.c:130
msgid "B4"
msgstr "B4"
+#: ppdc/sample.c:131
msgid "B5"
msgstr "B5"
+#: ppdc/sample.c:132
msgid "B5 Oversize"
-msgstr ""
+msgstr "B5 (特大)"
+#: ppdc/sample.c:133
msgid "B6"
msgstr "B6"
+#: ppdc/sample.c:134
msgid "B7"
msgstr "B7"
+#: ppdc/sample.c:135
msgid "B8"
msgstr "B8"
+#: ppdc/sample.c:136
msgid "B9"
msgstr "B9"
+#: cups/dest.c:1680
msgid "Bad NULL dests pointer"
msgstr "䏿­£ãª NULL é€ä¿¡å…ˆãƒã‚¤ãƒ³ã‚¿ãƒ¼"
+#: cups/ppd.c:345
msgid "Bad OpenGroup"
msgstr "䏿­£ãª OpenGroup"
+#: cups/ppd.c:347
msgid "Bad OpenUI/JCLOpenUI"
msgstr "䏿­£ãª OpenUI/JCLOpenUI"
+#: cups/ppd.c:349
msgid "Bad OrderDependency"
msgstr "䏿­£ãª OrderDependency"
+#: cups/ppd-cache.c:148 cups/ppd-cache.c:195 cups/ppd-cache.c:233
+#: cups/ppd-cache.c:239 cups/ppd-cache.c:255 cups/ppd-cache.c:271
+#: cups/ppd-cache.c:280 cups/ppd-cache.c:288 cups/ppd-cache.c:305
+#: cups/ppd-cache.c:313 cups/ppd-cache.c:328 cups/ppd-cache.c:336
+#: cups/ppd-cache.c:354 cups/ppd-cache.c:366 cups/ppd-cache.c:381
+#: cups/ppd-cache.c:393 cups/ppd-cache.c:415 cups/ppd-cache.c:423
+#: cups/ppd-cache.c:441 cups/ppd-cache.c:449 cups/ppd-cache.c:464
+#: cups/ppd-cache.c:472 cups/ppd-cache.c:490 cups/ppd-cache.c:498
+#: cups/ppd-cache.c:525 cups/ppd-cache.c:571 cups/ppd-cache.c:579
+#: cups/ppd-cache.c:587
msgid "Bad PPD cache file."
-msgstr ""
+msgstr "䏿­£ãª PPD キャッシュファイルã§ã™ã€‚"
+#: cups/http-support.c:1299
msgid "Bad Request"
msgstr "䏿­£ãªãƒªã‚¯ã‚¨ã‚¹ãƒˆ"
+#: cups/snmp.c:1002
msgid "Bad SNMP version number"
msgstr "䏿­£ãª SNMP ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·"
+#: cups/ppd.c:350
msgid "Bad UIConstraints"
msgstr "䏿­£ãª UIConstraints"
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
+#: scheduler/ipp.c:1380
#, c-format
msgid "Bad copies value %d."
msgstr "%d ã¯ä¸æ­£ãªã‚³ãƒ”ー値ã§ã™ã€‚"
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
+#: cups/ppd.c:358
msgid "Bad custom parameter"
msgstr "䏿­£ãªã‚«ã‚¹ã‚¿ãƒ ãƒ‘ラメーター"
+#: cups/http-support.c:1451 scheduler/ipp.c:2350
#, c-format
msgid "Bad device-uri \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯ç„¡åŠ¹ãª device-uri ã§ã™ã€‚"
+#: scheduler/ipp.c:2391
#, c-format
msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯ç„¡åŠ¹ãª device-uri スキーマã§ã™ã€‚"
+#: scheduler/ipp.c:8224 scheduler/ipp.c:8240 scheduler/ipp.c:9454
+#: scheduler/ipp.c:10968
#, c-format
msgid "Bad document-format \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯ä¸æ­£ãª document-format ã§ã™ã€‚"
+#: scheduler/ipp.c:9470
#, c-format
msgid "Bad document-format-default \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯ä¸æ­£ãª document-format-default ã§ã™ã€‚"
+#: cups/util.c:929
msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
+msgstr "䏿­£ãªãƒ•ァイルåãƒãƒƒãƒ•ァーã§ã™ã€‚"
+#: scheduler/ipp.c:10060
msgid "Bad job-priority value."
-msgstr ""
+msgstr "䏿­£ãª job-priority 値ã§ã™ã€‚"
+#: scheduler/ipp.c:1410
#, c-format
msgid "Bad job-sheets value \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯ä¸æ­£ãª job-sheets 値ã§ã™ã€‚"
+#: scheduler/ipp.c:1394
msgid "Bad job-sheets value type."
-msgstr ""
+msgstr "䏿­£ãª job-sheets 値タイプ ã§ã™ã€‚"
+#: scheduler/ipp.c:10090
msgid "Bad job-state value."
-msgstr ""
+msgstr "䏿­£ãª job-state 値ã§ã™ã€‚"
+#: scheduler/ipp.c:2974 scheduler/ipp.c:3426 scheduler/ipp.c:6078
+#: scheduler/ipp.c:6225 scheduler/ipp.c:7658 scheduler/ipp.c:7927
+#: scheduler/ipp.c:8775 scheduler/ipp.c:9001 scheduler/ipp.c:9350
+#: scheduler/ipp.c:9953
#, c-format
msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
+msgstr "\"%s\" ã¯ç„¡åŠ¹ãª job-uri 属性ã§ã™ã€‚"
+#: scheduler/ipp.c:2049 scheduler/ipp.c:5622
#, c-format
msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯ç„¡åŠ¹ãª notify-pull-method ã§ã™ã€‚"
+#: scheduler/ipp.c:2013 scheduler/ipp.c:5586
#, c-format
msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
+msgstr "URI \"%s\" ã¯ä¸æ­£ãª notify-recipient-uri ã§ã™ã€‚"
+#: scheduler/ipp.c:1426
#, c-format
msgid "Bad number-up value %d."
msgstr "%d ã¯ä¸æ­£ãª number-up 値ã§ã™ã€‚"
+#: cups/adminutil.c:292
#, c-format
msgid "Bad option + choice on line %d."
-msgstr ""
+msgstr "%d 行ã«ä¸æ­£ãªã‚ªãƒ—ションã¨é¸æŠžãŒã‚りã¾ã™ã€‚"
+#: scheduler/ipp.c:1443
#, c-format
msgid "Bad page-ranges values %d-%d."
msgstr "%d-%d ã¯ä¸æ­£ãª page-ranges 値ã§ã™ã€‚"
+#: scheduler/ipp.c:2434
#, c-format
msgid "Bad port-monitor \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯ç„¡åŠ¹ãª port-monitor ã§ã™ã€‚"
+#: cups/dest.c:676 cups/dest.c:1333
+msgid "Bad printer URI."
+msgstr "䏿­£ãªãƒ—リンター URI ã§ã™ã€‚"
+
+#: scheduler/ipp.c:2495
#, c-format
msgid "Bad printer-state value %d."
-msgstr ""
+msgstr "%d ã¯ç„¡åŠ¹ãª printer-state 値ã§ã™ã€‚"
+#: scheduler/ipp.c:293
#, c-format
msgid "Bad request ID %d."
-msgstr ""
+msgstr "%d ã¯ç„¡åйãªãƒªã‚¯ã‚¨ã‚¹ãƒˆIDã§ã™ã€‚"
+#: scheduler/ipp.c:278
#, c-format
msgid "Bad request version number %d.%d."
-msgstr ""
+msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå· %d.%d ã¯ç„¡åйãªãƒªã‚¯ã‚¨ã‚¹ãƒˆã§ã™ã€‚"
+#: cgi-bin/admin.c:1484
msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
+msgstr "䏿­£ãªã‚µãƒ–スクリプション ID ã§ã™ã€‚"
+#: cups/ppd.c:360
msgid "Bad value string"
-msgstr ""
+msgstr "値文字列ãŒã‚りã¾ã›ã‚“"
+#: cgi-bin/admin.c:3290 cgi-bin/admin.c:3536
msgid "Banners"
msgstr "ãƒãƒŠãƒ¼"
-msgid "Billing Information: "
-msgstr "課金情報: "
-
+#: ppdc/sample.c:287
msgid "Bond Paper"
msgstr "ボンド紙"
+#: backend/usb-darwin.c:1846
#, c-format
msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
+msgstr "è«–ç†å€¤ã¯ã€waiteof オプション \"%s\" ã§ã‚ã‚‹ã¹ãã§ã™"
+#: filter/pstops.c:2057
msgid "Buffer overflow detected, aborting."
-msgstr ""
+msgstr "オーãƒãƒ¼ãƒ•ãƒ­ãƒ¼ãŒæ¤œå‡ºã•れã€ä¸­æ–­ã—ã¾ã—ãŸã€‚"
+#: ppdc/sample.c:254
msgid "CMYK"
msgstr "CMYK"
+#: ppdc/sample.c:363
msgid "CPCL Label Printer"
msgstr "CPCL ラベルプリンター"
+#: cgi-bin/admin.c:1485 cgi-bin/admin.c:1524 cgi-bin/admin.c:1534
msgid "Cancel RSS Subscription"
msgstr "RSS 購読をキャンセル"
+#: backend/ipp.c:1921
msgid "Canceling print job."
-msgstr ""
+msgstr "プリントジョブをキャンセルã—ã¦ã„ã¾ã™ã€‚"
+#: scheduler/ipp.c:2475
msgid "Cannot share a remote Kerberized printer."
-msgstr ""
+msgstr "リモート㮠Kerberos èªè¨¼ã®ãƒ—リンターを共有ã§ãã¾ã›ã‚“。"
+#: ppdc/sample.c:279
msgid "Cassette"
-msgstr ""
+msgstr "カセット"
+#: cgi-bin/admin.c:1655 cgi-bin/admin.c:1797 cgi-bin/admin.c:1810
+#: cgi-bin/admin.c:1821
msgid "Change Settings"
msgstr "設定ã®å¤‰æ›´"
+#: scheduler/ipp.c:2061 scheduler/ipp.c:5634
#, c-format
msgid "Character set \"%s\" not supported."
-msgstr ""
+msgstr "文字セット \"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“。"
+#: cgi-bin/classes.c:195 cgi-bin/classes.c:322
msgid "Classes"
msgstr "クラス"
+#: cgi-bin/printers.c:182
msgid "Clean Print Heads"
msgstr "プリントヘッドクリーニング"
+#: scheduler/ipp.c:3878
msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
+msgstr "Close-Job 㯠job-uri 属性をサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“。"
+#: ppdc/sample.c:282
msgid "Color"
msgstr "カラー"
+#: ppdc/sample.c:253
msgid "Color Mode"
msgstr "カラーモード"
+#: berkeley/lpc.c:204
msgid ""
"Commands may be abbreviated. Commands are:\n"
"\n"
"exit help quit status ?"
msgstr ""
+"コマンドã¯çŸ­ç¸®ã§ãã¾ã™ã€‚ コマンド:\n"
+"\n"
+"exit help quit status ?"
+#: cups/snmp.c:1006
msgid "Community name uses indefinite length"
msgstr "コミュニティåã®é•·ã•ãŒä¸å®š"
+#: backend/ipp.c:786 backend/lpd.c:871 backend/socket.c:395
msgid "Connected to printer."
-msgstr ""
+msgstr "ãƒ—ãƒªãƒ³ã‚¿ãƒ¼ã«æŽ¥ç¶šã—ã¾ã—ãŸã€‚"
+#: backend/ipp.c:691 backend/lpd.c:694 backend/socket.c:314
msgid "Connecting to printer."
-msgstr ""
+msgstr "ãƒ—ãƒªãƒ³ã‚¿ãƒ¼ã«æŽ¥ç¶šä¸­ã€‚"
+#: cups/http-support.c:1272
msgid "Continue"
msgstr "継続"
+#: ppdc/sample.c:365
msgid "Continuous"
msgstr "連続"
+#: backend/lpd.c:1020 backend/lpd.c:1152
msgid "Control file sent successfully."
-msgstr ""
+msgstr "ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ­£å¸¸ã«é€ä¿¡ã•れã¾ã—ãŸã€‚"
+#: backend/ipp.c:1233 backend/lpd.c:464
msgid "Copying print data."
-msgstr ""
+msgstr "å°åˆ·ãƒ‡ãƒ¼ã‚¿ã‚’コピーã—ã¦ã„ã¾ã™ã€‚"
+#: cups/http-support.c:1281
msgid "Created"
msgstr "ジョブ作æˆ"
-msgid "Created On: "
-msgstr "ã‚¸ãƒ§ãƒ–ä½œæˆæ—¥: "
-
+#: cups/ppd.c:1113 cups/ppd.c:1153 cups/ppd.c:1398 cups/ppd.c:1501
msgid "Custom"
msgstr "カスタム"
+#: ppdc/sample.c:359
msgid "CustominCutInterval"
msgstr "CustominCutInterval"
+#: ppdc/sample.c:357
msgid "CustominTearInterval"
msgstr "CustominTearInterval"
+#: ppdc/sample.c:343
msgid "Cut"
msgstr "カット"
+#: ppdc/sample.c:451
msgid "Cutter"
msgstr "カッター"
+#: ppdc/sample.c:239
msgid "Dark"
msgstr "濃ã„"
+#: ppdc/sample.c:235
msgid "Darkness"
msgstr "濃ã•"
+#: backend/lpd.c:1105
msgid "Data file sent successfully."
-msgstr ""
+msgstr "ãƒ‡ãƒ¼ã‚¿ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ­£å¸¸ã«é€ä¿¡ã•れã¾ã—ãŸ"
+#: cgi-bin/admin.c:2094 cgi-bin/admin.c:2105 cgi-bin/admin.c:2150
msgid "Delete Class"
msgstr "クラスã®å‰Šé™¤"
+#: cgi-bin/admin.c:2179 cgi-bin/admin.c:2190 cgi-bin/admin.c:2235
msgid "Delete Printer"
msgstr "プリンターã®å‰Šé™¤"
-msgid "Description: "
-msgstr "説明: "
-
+#: ppdc/sample.c:281
msgid "DeskJet Series"
-msgstr "DeskJet Series"
+msgstr "DeskJet シリーズ"
+#: scheduler/ipp.c:1346
#, c-format
msgid "Destination \"%s\" is not accepting jobs."
msgstr "宛先 \"%s\" ã¯ã‚¸ãƒ§ãƒ–ã‚’å—ã‘付ã‘ã¦ã„ã¾ã›ã‚“。"
+#: systemv/lpinfo.c:300
#, c-format
msgid ""
"Device: uri = %s\n"
@@ -2457,77 +3193,99 @@ msgid ""
" device-id = %s\n"
" location = %s"
msgstr ""
+"デãƒã‚¤ã‚¹: uri = %s\n"
+" class = %s\n"
+" info = %s\n"
+" make-and-model = %s\n"
+" device-id = %s\n"
+" location = %s"
+#: ppdc/sample.c:436
msgid "Direct Thermal Media"
msgstr "感熱紙"
+#: cups/file.c:296
#, c-format
msgid "Directory \"%s\" contains a relative path."
-msgstr ""
+msgstr "ディレクトリー \"%s\" ã¯ç›¸å¯¾ãƒ‘スをå«ã‚“ã§ã„ã¾ã™ã€‚"
+#: cups/file.c:268
#, c-format
msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
+msgstr "ディレクトリー \"%s\" ã¯å®‰å…¨ã§ãªã„パーミッションãŒä¸Žãˆã‚‰ã‚Œã¦ã„ã¾ã™ (0%o/uid=%d/gid=%d)。"
+#: cups/file.c:285
#, c-format
msgid "Directory \"%s\" is a file."
-msgstr ""
+msgstr "ディレクトリー \"%s\" ã¯ãƒ•ァイルã§ã™ã€‚"
+#: cups/file.c:256
#, c-format
msgid "Directory \"%s\" not available: %s"
-msgstr ""
+msgstr "ディレクトリー \"%s\" ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“: %s"
+#: cups/file.c:241
#, c-format
msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
+msgstr "ディレクトリー \"%s\" ã®ãƒ‘ーミッションã¯å•題ã‚りã¾ã›ã‚“ (0%o/uid=%d/gid=%d)。"
+#: ppdc/sample.c:345
msgid "Disabled"
msgstr "無効"
+#: scheduler/ipp.c:6127
#, c-format
msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "ドライãƒãƒ¼å: "
-
-msgid "Driver Version: "
-msgstr "ドライãƒãƒ¼ãƒãƒ¼ã‚¸ãƒ§ãƒ³: "
+msgstr "ドキュメント #%d ãŒã‚¸ãƒ§ãƒ– #%d ã«è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: ppdc/sample.c:275
msgid "Duplexer"
msgstr "両é¢ã‚ªãƒ—ション"
+#: ppdc/sample.c:229
msgid "Dymo"
msgstr "Dymo"
+#: ppdc/sample.c:431
msgid "EPL1 Label Printer"
msgstr "EPL1 ラベルプリンター"
+#: ppdc/sample.c:434
msgid "EPL2 Label Printer"
msgstr "EPL2 ラベルプリンター"
+#: cgi-bin/admin.c:1849 cgi-bin/admin.c:1861 cgi-bin/admin.c:1915
+#: cgi-bin/admin.c:1922 cgi-bin/admin.c:1957 cgi-bin/admin.c:1970
+#: cgi-bin/admin.c:1994 cgi-bin/admin.c:2067
msgid "Edit Configuration File"
msgstr "設定ファイルã®ç·¨é›†"
+#: cups/adminutil.c:337
msgid "Empty PPD file."
-msgstr ""
+msgstr "PPD ファイルãŒç©ºã§ã™ã€‚"
#. TRANSLATORS: Banner/cover sheet after the print job.
+#: cgi-bin/admin.c:3561
msgid "Ending Banner"
msgstr "終了ãƒãƒŠãƒ¼"
+#: ppdc/sample.c:2
msgid "English"
-msgstr "Japanese"
+msgstr "English"
+#: systemv/lppasswd.c:193
msgid "Enter old password:"
msgstr "å¤ã„パスワードを入力:"
+#: systemv/lppasswd.c:224
msgid "Enter password again:"
msgstr "パスワードをå†åº¦å…¥åŠ›:"
+#: systemv/lppasswd.c:212
msgid "Enter password:"
msgstr "パスワードを入力:"
+#: scheduler/client.c:2427
msgid ""
"Enter your username and password or the root username and password to access "
"this page. If you are using Kerberos authentication, make sure you have a "
@@ -2537,660 +3295,847 @@ msgstr ""
"root ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åã¨ãƒ‘スワードを入力ã—ã¦ãã ã•ã„。Kerberos èªè¨¼ã‚’使用ã—ã¦ã„ã‚‹"
"å ´åˆã€æœ‰åŠ¹ãª Kerberos ãƒã‚±ãƒƒãƒˆãŒã‚ã‚‹ã“ã¨ã‚’確èªã—ã¦ãã ã•ã„。"
+#: ppdc/sample.c:73
msgid "Envelope #10 "
-msgstr ""
+msgstr "å°ç­’ #10"
+#: ppdc/sample.c:74
msgid "Envelope #11"
-msgstr ""
+msgstr "å°ç­’ #11"
+#: ppdc/sample.c:75
msgid "Envelope #12"
-msgstr ""
+msgstr "å°ç­’ #12"
+#: ppdc/sample.c:76
msgid "Envelope #14"
-msgstr ""
+msgstr "å°ç­’ #14"
+#: ppdc/sample.c:77
msgid "Envelope #9"
-msgstr ""
+msgstr "å°ç­’ #9"
+#: ppdc/sample.c:89
msgid "Envelope B4"
-msgstr ""
+msgstr "å°ç­’ B4"
+#: ppdc/sample.c:90
msgid "Envelope B5"
-msgstr ""
+msgstr "å°ç­’ B5"
+#: ppdc/sample.c:91
msgid "Envelope B6"
-msgstr ""
+msgstr "å°ç­’ B6"
+#: ppdc/sample.c:78
msgid "Envelope C0"
-msgstr ""
+msgstr "å°ç­’ C0"
+#: ppdc/sample.c:79
msgid "Envelope C1"
-msgstr ""
+msgstr "å°ç­’ C1"
+#: ppdc/sample.c:80
msgid "Envelope C2"
-msgstr ""
+msgstr "å°ç­’ C2"
+#: ppdc/sample.c:81
msgid "Envelope C3"
-msgstr ""
+msgstr "å°ç­’ C3"
+#: ppdc/sample.c:67
msgid "Envelope C4"
-msgstr ""
+msgstr "å°ç­’ C4"
+#: ppdc/sample.c:68
msgid "Envelope C5"
-msgstr ""
+msgstr "å°ç­’ C5"
+#: ppdc/sample.c:69
msgid "Envelope C6"
-msgstr ""
+msgstr "å°ç­’ C6"
+#: ppdc/sample.c:82
msgid "Envelope C65"
-msgstr ""
+msgstr "å°ç­’ C65"
+#: ppdc/sample.c:83
msgid "Envelope C7"
-msgstr ""
+msgstr "å°ç­’ C7"
+#: ppdc/sample.c:84
msgid "Envelope Choukei 3"
-msgstr ""
+msgstr "å°ç­’ é•·å½¢3å·"
+#: ppdc/sample.c:85
msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
+msgstr "å°ç­’ é•·å½¢3å· é•·è¾ºé€ã‚Š"
+#: ppdc/sample.c:86
msgid "Envelope Choukei 4"
-msgstr ""
+msgstr "å°ç­’ é•·å½¢4å·"
+#: ppdc/sample.c:87
msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
+msgstr "å°ç­’ é•·å½¢4å· é•·è¾ºé€ã‚Š"
+#: ppdc/sample.c:70
msgid "Envelope DL"
-msgstr ""
+msgstr "å°ç­’ DL"
+#: ppdc/sample.c:269
msgid "Envelope Feed"
msgstr "å°ç­’フィード"
+#: ppdc/sample.c:88
msgid "Envelope Invite"
-msgstr ""
+msgstr "招待状å°ç­’"
+#: ppdc/sample.c:92
msgid "Envelope Italian"
-msgstr ""
+msgstr "イタリアå°ç­’"
+#: ppdc/sample.c:93
msgid "Envelope Kaku2"
-msgstr ""
+msgstr "å°ç­’ è§’2"
+#: ppdc/sample.c:94
msgid "Envelope Kaku2 Long Edge"
-msgstr ""
+msgstr "å°ç­’ è§’2 長辺é€ã‚Š"
+#: ppdc/sample.c:95
msgid "Envelope Kaku3"
-msgstr ""
+msgstr "å°ç­’ è§’3"
+#: ppdc/sample.c:96
msgid "Envelope Kaku3 Long Edge"
-msgstr ""
+msgstr "å°ç­’ è§’3 長辺é€ã‚Š"
+#: ppdc/sample.c:97
msgid "Envelope Monarch"
-msgstr ""
+msgstr "å°ç­’ Monarch"
+#: ppdc/sample.c:99
msgid "Envelope PRC1 "
-msgstr ""
+msgstr "å°ç­’ PRC1"
+#: ppdc/sample.c:100
msgid "Envelope PRC1 Long Edge"
-msgstr ""
+msgstr "å°ç­’ PRC1 長辺é€ã‚Š"
+#: ppdc/sample.c:117
msgid "Envelope PRC10"
-msgstr ""
+msgstr "å°ç­’ PRC10"
+#: ppdc/sample.c:118
msgid "Envelope PRC10 Long Edge"
-msgstr ""
+msgstr "å°ç­’ PRC10 長辺é€ã‚Š"
+#: ppdc/sample.c:101
msgid "Envelope PRC2"
-msgstr ""
+msgstr "å°ç­’ PRC2"
+#: ppdc/sample.c:102
msgid "Envelope PRC2 Long Edge"
-msgstr ""
+msgstr "å°ç­’ PRC2 長辺é€ã‚Š"
+#: ppdc/sample.c:103
msgid "Envelope PRC3"
-msgstr ""
+msgstr "å°ç­’ PRC3"
+#: ppdc/sample.c:104
msgid "Envelope PRC3 Long Edge"
-msgstr ""
+msgstr "å°ç­’ PRC3 長辺é€ã‚Š"
+#: ppdc/sample.c:105
msgid "Envelope PRC4"
-msgstr ""
+msgstr "å°ç­’ PRC4"
+#: ppdc/sample.c:106
msgid "Envelope PRC4 Long Edge"
-msgstr ""
+msgstr "å°ç­’ PRC4 長辺é€ã‚Š"
+#: ppdc/sample.c:108
msgid "Envelope PRC5 Long Edge"
-msgstr ""
+msgstr "å°ç­’ PRC5 長辺é€ã‚Š"
+#: ppdc/sample.c:107
msgid "Envelope PRC5PRC5"
-msgstr ""
+msgstr "å°ç­’ PRC5"
+#: ppdc/sample.c:109
msgid "Envelope PRC6"
-msgstr ""
+msgstr "å°ç­’ PRC6"
+#: ppdc/sample.c:110
msgid "Envelope PRC6 Long Edge"
-msgstr ""
+msgstr "å°ç­’ PRC6 長辺é€ã‚Š"
+#: ppdc/sample.c:111
msgid "Envelope PRC7"
-msgstr ""
+msgstr "å°ç­’ PRC7"
+#: ppdc/sample.c:112
msgid "Envelope PRC7 Long Edge"
-msgstr ""
+msgstr "å°ç­’ PRC7 長辺é€ã‚Š"
+#: ppdc/sample.c:113
msgid "Envelope PRC8"
-msgstr ""
+msgstr "å°ç­’ PRC8"
+#: ppdc/sample.c:114
msgid "Envelope PRC8 Long Edge"
-msgstr ""
+msgstr "å°ç­’ PRC8 長辺é€ã‚Š"
+#: ppdc/sample.c:115
msgid "Envelope PRC9"
-msgstr ""
+msgstr "å°ç­’ PRC9"
+#: ppdc/sample.c:116
msgid "Envelope PRC9 Long Edge"
-msgstr ""
+msgstr "å°ç­’ PRC9 長辺é€ã‚Š"
+#: ppdc/sample.c:98
msgid "Envelope Personal"
-msgstr ""
+msgstr "パーソナルå°ç­’"
+#: ppdc/sample.c:119
msgid "Envelope You4"
-msgstr ""
+msgstr "å°ç­’ æ´‹å½¢4å·"
+#: ppdc/sample.c:120
msgid "Envelope You4 Long Edge"
-msgstr ""
+msgstr "å°ç­’ æ´‹å½¢4å· é•·è¾ºé€ã‚Š"
+#: ppdc/sample.c:240
msgid "Epson"
msgstr "Epson"
+#: cgi-bin/admin.c:3604
msgid "Error Policy"
msgstr "エラーãƒãƒªã‚·ãƒ¼"
+#: filter/rastertopwg.c:403 filter/rastertopwg.c:418 filter/rastertopwg.c:429
+#: filter/rastertopwg.c:440
msgid "Error sending raster data."
-msgstr ""
+msgstr "ラスターデータã®é€ä¿¡ã§ã‚¨ãƒ©ãƒ¼ãŒèµ·ãã¾ã—ãŸã€‚"
+#: systemv/lpinfo.c:103 systemv/lpmove.c:88
msgid "Error: need hostname after \"-h\" option."
-msgstr ""
+msgstr "Error: '-h' オプションã®ã‚ã¨ã«ã¯ãƒ›ã‚¹ãƒˆåãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/sample.c:355
msgid "Every 10 Labels"
msgstr "10 ラベルã”ã¨"
+#: ppdc/sample.c:347
msgid "Every 2 Labels"
msgstr "2 ラベルã”ã¨"
+#: ppdc/sample.c:348
msgid "Every 3 Labels"
msgstr "3 ラベルã”ã¨"
+#: ppdc/sample.c:349
msgid "Every 4 Labels"
msgstr "4 ラベルã”ã¨"
+#: ppdc/sample.c:350
msgid "Every 5 Labels"
msgstr "5 ラベルã”ã¨"
+#: ppdc/sample.c:351
msgid "Every 6 Labels"
msgstr "6 ラベルã”ã¨"
+#: ppdc/sample.c:352
msgid "Every 7 Labels"
msgstr "7 ラベルã”ã¨"
+#: ppdc/sample.c:353
msgid "Every 8 Labels"
msgstr "8 ラベルã”ã¨"
+#: ppdc/sample.c:354
msgid "Every 9 Labels"
msgstr "9 ラベルã”ã¨"
+#: ppdc/sample.c:346
msgid "Every Label"
msgstr "ã™ã¹ã¦ã®ãƒ©ãƒ™ãƒ«"
+#: ppdc/sample.c:121
msgid "Executive"
-msgstr ""
+msgstr "エグゼクティブ"
+#: cups/http-support.c:1327
msgid "Expectation Failed"
-msgstr "Expectation Failed"
+msgstr "予測ã«å¤±æ•—ã—ã¾ã—ãŸ"
+#: cgi-bin/admin.c:2356 cgi-bin/admin.c:2375
msgid "Export Printers to Samba"
msgstr "Samba ã¸ãƒ—リンターをエクスãƒãƒ¼ãƒˆ"
+#: systemv/cupstestdsc.c:172 systemv/cupstestdsc.c:189
+#: systemv/cupstestdsc.c:214 systemv/cupstestdsc.c:231
+#: systemv/cupstestdsc.c:255 systemv/cupstestdsc.c:273
+#: systemv/cupstestdsc.c:302 systemv/cupstestdsc.c:339
+#: systemv/cupstestdsc.c:349 systemv/cupstestdsc.c:359
+#: systemv/cupstestdsc.c:369 systemv/cupstestdsc.c:379
+#: systemv/cupstestdsc.c:387
msgid "FAIL"
-msgstr ""
+msgstr "失敗"
+#: ppdc/sample.c:122
msgid "FanFold German"
-msgstr ""
+msgstr "FanFold German"
+#: ppdc/sample.c:123
msgid "FanFold Legal German"
-msgstr ""
+msgstr "FanFold Legal German"
+#: ppdc/sample.c:124
msgid "Fanfold US"
-msgstr ""
+msgstr "Fanfold US"
+#: cups/file.c:300
#, c-format
msgid "File \"%s\" contains a relative path."
-msgstr ""
+msgstr "ファイル \"%s\" ã¯ç›¸å¯¾ãƒ‘スをå«ã‚“ã§ã„ã¾ã™ã€‚"
+#: cups/file.c:275
#, c-format
msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
+msgstr "ファイル \"%s\" ã¯å®‰å…¨ã§ãªã„パーミッションãŒä¸Žãˆã‚‰ã‚Œã¦ã„ã¾ã™ (0%o/uid=%d/gid=%d)。"
+#: cups/file.c:289
#, c-format
msgid "File \"%s\" is a directory."
-msgstr ""
+msgstr "ファイル \"%s\" ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã§ã™ã€‚"
+#: cups/file.c:261
#, c-format
msgid "File \"%s\" not available: %s"
-msgstr ""
+msgstr "ファイル \"%s\" ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“: %s"
+#: cups/file.c:247
#, c-format
msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
+msgstr "ファイル \"%s\" ã®ãƒ‘ーミッションã¯å•題ã‚りã¾ã›ã‚“ (0%o/uid=%d/gid=%d)。"
-msgid "File Folder"
+#: ppdc/sample.c:169
+msgid "File Folder "
msgstr "ファイルフォルダー"
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "ファイルフォルダー - 9/16 x 3 7/16\""
-
+#: scheduler/ipp.c:2370
#, c-format
msgid ""
"File device URIs have been disabled. To enable, see the FileDevice directive "
"in \"%s/cupsd.conf\"."
-msgstr ""
+msgstr "ファイルデãƒã‚¤ã‚¹ URI ã¯ç„¡åйã«ãªã£ã¦ã„ã¾ã™ã€‚有効ã«ã™ã‚‹ã«ã¯ã€\"%s/cupsd.conf\" ã® FileDevice ディレクティブをå‚ç…§ã—ã¦ãã ã•ã„。"
+#: filter/rastertoepson.c:1117 filter/rastertohp.c:845
+#: filter/rastertolabel.c:1273
#, c-format
msgid "Finished page %d."
-msgstr ""
+msgstr "ページ %d を終了。"
+#: ppdc/sample.c:125
msgid "Folio"
msgstr "フォリオ"
+#: cups/http-support.c:1306
msgid "Forbidden"
msgstr "Forbidden"
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
+#: cups/ppd.c:742 cups/ppd.c:1302
msgid "General"
msgstr "一般"
+#: ppdc/sample.c:259
msgid "Generic"
msgstr "汎用"
+#: cups/snmp.c:1016
msgid "Get-Response-PDU uses indefinite length"
msgstr "Get-Response-PDU ã¯ä¸ç¢ºå®šã®é•·ã•を使用ã—ã¦ã„ã¾ã™"
+#: ppdc/sample.c:290
msgid "Glossy Paper"
msgstr "光沢紙"
+#: scheduler/ipp.c:2952 scheduler/ipp.c:3352 scheduler/ipp.c:3890
+#: scheduler/ipp.c:6056 scheduler/ipp.c:6203 scheduler/ipp.c:7635
+#: scheduler/ipp.c:8753 scheduler/ipp.c:8979 scheduler/ipp.c:9328
+#: scheduler/ipp.c:9931
msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
+msgstr "printer-uri 属性をå–å¾—ã—ã¾ã—ãŸãŒã€job-id ã‚’å–å¾—ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚"
+#: ppdc/sample.c:255
msgid "Grayscale"
msgstr "グレースケール"
+#: ppdc/sample.c:280
msgid "HP"
msgstr "HP"
+#: ppdc/sample.c:170
msgid "Hanging Folder"
msgstr "Hanging Folder"
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Hanging Folder - 9/16 x 2\""
+#: cgi-bin/help.c:143
+msgid "Help file not in index."
+msgstr "ヘルプファイルãŒç´¢å¼•ã«å«ã¾ã‚Œã¦ã„ã¾ã›ã‚“。"
+#: cups/ipp.c:2687 cups/ipp.c:2714 cups/ipp.c:2737
msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
+msgstr "IPP ã® 1setOf 属性㌠value ã‚¿ã‚°ã¨äº’æ›æ€§ãŒã‚りã¾ã›ã‚“。"
+#: cups/ipp.c:2650
msgid "IPP attribute has no name."
-msgstr ""
+msgstr "IPP ã®å±žæ€§ã«åå‰ãŒã‚りã¾ã›ã‚“。"
+#: cups/ipp.c:5487
+msgid "IPP attribute is not a member of the message."
+msgstr "IPP ã®å±žæ€§ãŒãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚りã¾ã›ã‚“。"
+
+#: cups/ipp.c:3083
msgid "IPP begCollection value not 0 bytes."
-msgstr ""
+msgstr "IPP ã® begCollection ã¯æƒ³å®šã•れ㟠0 ãƒã‚¤ãƒˆã«ãªã£ã¦ã„ã¾ã›ã‚“。"
+#: cups/ipp.c:2873
msgid "IPP boolean value not 1 byte."
-msgstr ""
+msgstr "IPP ã®çœŸå½å€¤ãŒæƒ³å®šã•れ㟠1 ãƒã‚¤ãƒˆã«ãªã£ã¦ã„ã¾ã›ã‚“。"
+#: cups/ipp.c:2934
msgid "IPP date value not 11 bytes."
-msgstr ""
+msgstr "IPP ã® date å€¤ã¯æƒ³å®šã•れ㟠11 ãƒã‚¤ãƒˆã«ãªã£ã¦ã„ã¾ã›ã‚“。"
+#: cups/ipp.c:3104
msgid "IPP endCollection value not 0 bytes."
-msgstr ""
+msgstr "IPP ã® endCollection ã¯æƒ³å®šã•れ㟠0 ãƒã‚¤ãƒˆã«ãªã£ã¦ã„ã¾ã›ã‚“。"
+#: cups/ipp.c:2848
msgid "IPP enum value not 4 bytes."
-msgstr ""
+msgstr "IPP ã® enum å€¤ã¯æƒ³å®šã•れ㟠4 ãƒã‚¤ãƒˆã«ãªã£ã¦ã„ã¾ã›ã‚“。"
+
+#: cups/ipp.c:2579
+msgid "IPP extension tag larger than 0x7FFFFFFF."
+msgstr "IPP ã®æ‹¡å¼µã‚¿ã‚°ãŒ 0x7FFFFFFF より大ãã„ã§ã™ã€‚"
+#: cups/ipp.c:2845
msgid "IPP integer value not 4 bytes."
-msgstr ""
+msgstr "IPP ã®æ•´æ•°å€¤ã¯æƒ³å®šã•れ㟠4 ãƒã‚¤ãƒˆã«ãªã£ã¦ã„ã¾ã›ã‚“。"
+#: cups/ipp.c:3045
msgid "IPP language length overflows value."
-msgstr ""
+msgstr "IPP ã® language length ã®å€¤ãŒã‚ªãƒ¼ãƒãƒ¼ãƒ•ローã—ã¦ã„ã¾ã™ã€‚"
+#: cups/ipp.c:2764
msgid "IPP member name is not empty."
-msgstr ""
+msgstr "IPP ã®ãƒ¡ãƒ³ãƒãƒ¼åãŒç©ºã§ã¯ã‚りã¾ã›ã‚“。"
+
+#: cups/ipp.c:3122
+msgid "IPP memberName value is empty."
+msgstr "IPP ã® memberName ã®å€¤ãŒç©ºã§ã™ã€‚"
+#: cups/ipp.c:2633
msgid "IPP name larger than 32767 bytes."
-msgstr ""
+msgstr "IPP å㌠32767 ãƒã‚¤ãƒˆã‚ˆã‚Šå¤§ãã„ã§ã™ã€‚"
+#: cups/ipp.c:3011
msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
+msgstr "IPP ã® nameWithLanguage ãŒæœ€å°å€¤ 4 ãƒã‚¤ãƒˆæœªæº€ã§ã™ã€‚"
+#: cups/ipp.c:2979
msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
+msgstr "IPP ã® rangeOfInteger ã¯æƒ³å®šã•れ㟠8 ãƒã‚¤ãƒˆã«ãªã£ã¦ã„ã¾ã›ã‚“。"
+#: cups/ipp.c:2952
msgid "IPP resolution value not 9 bytes."
-msgstr ""
+msgstr "IPP ã® resolution ã¯æƒ³å®šã•れ㟠9 ãƒã‚¤ãƒˆã«ãªã£ã¦ã„ã¾ã›ã‚“。"
+#: cups/ipp.c:3063
msgid "IPP string length overflows value."
-msgstr ""
+msgstr "IPP ã®æ–‡å­—列長ã®å€¤ãŒã‚ªãƒ¼ãƒãƒ¼ãƒ•ローã—ã¦ã„ã¾ã™ã€‚"
+#: cups/ipp.c:3007
msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
+msgstr "IPP ã® textWithLanguage ã®å€¤ãŒæœ€å°å€¤ 4 ãƒã‚¤ãƒˆæœªæº€ã§ã™ã€‚"
+#: cups/ipp.c:2831
msgid "IPP value larger than 32767 bytes."
-msgstr ""
+msgstr "IPP ã®å€¤ãŒ 32767 ãƒã‚¤ãƒˆä»¥ä¸Šã§ã™ã€‚"
+#: ppdc/sample.c:1
msgid "ISOLatin1"
-msgstr "UTF-8"
+msgstr "ISOLatin1"
+#: cups/ppd.c:353
msgid "Illegal control character"
msgstr "䏿­£ãªåˆ¶å¾¡æ–‡å­—"
+#: cups/ppd.c:354
msgid "Illegal main keyword string"
msgstr "䏿­£ãªãƒ¡ã‚¤ãƒ³ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰æ–‡å­—列"
+#: cups/ppd.c:355
msgid "Illegal option keyword string"
msgstr "䏿­£ãªã‚ªãƒ—ションキーワード文字列"
+#: cups/ppd.c:356
msgid "Illegal translation string"
msgstr "䏿­£ãªç¿»è¨³æ–‡å­—列"
+#: cups/ppd.c:357
msgid "Illegal whitespace character"
msgstr "䏿­£ãªç©ºç™½æ–‡å­—"
+#: ppdc/sample.c:274
msgid "Installable Options"
msgstr "インストールå¯èƒ½ã‚ªãƒ—ション"
+#: ppdc/sample.c:277
msgid "Installed"
msgstr "インストールã•れã¦ã„ã¾ã™"
+#: ppdc/sample.c:293
msgid "IntelliBar Label Printer"
msgstr "IntelliBar ラベルプリンター"
+#: ppdc/sample.c:292
msgid "Intellitech"
msgstr "Intellitech"
+#: cups/http-support.c:1333
msgid "Internal Server Error"
msgstr "サーãƒãƒ¼å†…部エラー"
+#: cups/ppd.c:344
msgid "Internal error"
msgstr "内部エラー"
+#: ppdc/sample.c:167
msgid "Internet Postage 2-Part"
msgstr "Internet Postage 2-Part"
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-
+#: ppdc/sample.c:168
msgid "Internet Postage 3-Part"
msgstr "Internet Postage 3-Part"
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Internet Postage 3-Part - 2 1/4 x 7\""
-
+#: backend/ipp.c:307
msgid "Internet Printing Protocol"
msgstr "インターãƒãƒƒãƒˆå°åˆ·ãƒ—ロトコル"
+#: cups/dest-options.c:839
+msgid "Invalid media size."
+msgstr "無効ãªãƒ¡ãƒ‡ã‚£ã‚¢ã‚µã‚¤ã‚ºã§ã™ã€‚"
+
+#: filter/commandtops.c:125
#, c-format
msgid "Invalid printer command \"%s\"."
-msgstr ""
+msgstr "無効ãªãƒ—リンターコマンドã§ã™ã€‚ \"%s\""
+#: cups/ppd.c:1420
msgid "JCL"
msgstr "JCL"
+#: ppdc/sample.c:53
msgid "JIS B0"
-msgstr ""
+msgstr "JIS B0"
+#: ppdc/sample.c:55
msgid "JIS B1"
-msgstr ""
+msgstr "JIS B1"
+#: ppdc/sample.c:54
msgid "JIS B10"
-msgstr ""
+msgstr "JIS B10"
+#: ppdc/sample.c:56
msgid "JIS B2"
-msgstr ""
+msgstr "JIS B2"
+#: ppdc/sample.c:57
msgid "JIS B3"
-msgstr ""
+msgstr "JIS B3"
+#: ppdc/sample.c:58
msgid "JIS B4"
-msgstr ""
+msgstr "JIS B4"
+#: ppdc/sample.c:59
msgid "JIS B4 Long Edge"
-msgstr ""
+msgstr "JIS B4 長辺é€ã‚Š"
+#: ppdc/sample.c:60
msgid "JIS B5"
-msgstr ""
+msgstr "JIS B5"
+#: ppdc/sample.c:61
msgid "JIS B5 Long Edge"
-msgstr ""
+msgstr "JIS B5 長辺é€ã‚Š"
+#: ppdc/sample.c:62
msgid "JIS B6"
-msgstr ""
+msgstr "JIS B6"
+#: ppdc/sample.c:63
msgid "JIS B6 Long Edge"
-msgstr ""
+msgstr "JIS B6 長辺é€ã‚Š"
+#: ppdc/sample.c:64
msgid "JIS B7"
-msgstr ""
+msgstr "JIS B7"
+#: ppdc/sample.c:65
msgid "JIS B8"
-msgstr ""
+msgstr "JIS B8"
+#: ppdc/sample.c:66
msgid "JIS B9"
-msgstr ""
+msgstr "JIS B9"
+#: scheduler/ipp.c:9051
#, c-format
msgid "Job #%d cannot be restarted - no files."
-msgstr ""
+msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã‚’å†é–‹ã§ãã¾ã›ã‚“ - ファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: scheduler/ipp.c:2992 scheduler/ipp.c:3222 scheduler/ipp.c:3277
+#: scheduler/ipp.c:3454 scheduler/ipp.c:3900 scheduler/ipp.c:5720
+#: scheduler/ipp.c:6096 scheduler/ipp.c:6243 scheduler/ipp.c:6543
+#: scheduler/ipp.c:7482 scheduler/ipp.c:7504 scheduler/ipp.c:7676
+#: scheduler/ipp.c:7901 scheduler/ipp.c:7944 scheduler/ipp.c:8793
+#: scheduler/ipp.c:9019 scheduler/ipp.c:9368 scheduler/ipp.c:9971
#, c-format
msgid "Job #%d does not exist."
-msgstr ""
+msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯å­˜åœ¨ã—ã¾ã›ã‚“。"
+#: scheduler/ipp.c:3486
#, c-format
msgid "Job #%d is already aborted - can't cancel."
msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯ã™ã§ã«ä¸­æ–­ã•れã¦ã„ã¾ã™ - キャンセルã§ãã¾ã›ã‚“。"
+#: scheduler/ipp.c:3480
#, c-format
msgid "Job #%d is already canceled - can't cancel."
msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯ã™ã§ã«ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã•れã¦ã„ã¾ã™ - キャンセルã§ãã¾ã›ã‚“。"
+#: scheduler/ipp.c:3492
#, c-format
msgid "Job #%d is already completed - can't cancel."
msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯ã™ã§ã«å®Œäº†ã—ã¦ã„ã¾ã™ - キャンセルã§ãã¾ã›ã‚“。"
+#: scheduler/ipp.c:7702 scheduler/ipp.c:7986 scheduler/ipp.c:9986
#, c-format
msgid "Job #%d is finished and cannot be altered."
-msgstr ""
+msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯ã™ã§ã«çµ‚了ã—ã€å¤‰æ›´ã§ãã¾ã›ã‚“。"
+#: scheduler/ipp.c:9033
#, c-format
msgid "Job #%d is not complete."
-msgstr ""
+msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯å®Œäº†ã—ã¦ã„ã¾ã›ã‚“。"
+#: scheduler/ipp.c:3007
#, c-format
msgid "Job #%d is not held for authentication."
-msgstr ""
+msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯èªè¨¼ã®ãŸã‚ã«ä¿ç•™ã•れã¦ã„ã¾ã›ã‚“。"
+#: scheduler/ipp.c:8807
#, c-format
msgid "Job #%d is not held."
-msgstr ""
+msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯ä¿ç•™ã•れã¦ã„ã¾ã›ã‚“。"
+#: cgi-bin/ipp-var.c:1055
msgid "Job Completed"
msgstr "ジョブ完了"
+#: cgi-bin/ipp-var.c:1053
msgid "Job Created"
msgstr "ジョブ作æˆ"
-msgid "Job ID: "
-msgstr "ジョブ ID: "
-
+#: cgi-bin/ipp-var.c:1059
msgid "Job Options Changed"
msgstr "ジョブオプション変更"
+#: cgi-bin/ipp-var.c:1057
msgid "Job Stopped"
msgstr "ジョブ中止"
-msgid "Job UUID: "
-msgstr "ジョブ UUID: "
-
+#: scheduler/ipp.c:10068
msgid "Job is completed and cannot be changed."
msgstr "ジョブã¯å®Œäº†ã—変更ã§ãã¾ã›ã‚“。"
-msgid "Job operation failed:"
-msgstr "ジョブæ“作失敗:"
+#: cgi-bin/jobs.c:198
+msgid "Job operation failed"
+msgstr "ジョブæ“作失敗"
+#: scheduler/ipp.c:10104 scheduler/ipp.c:10123 scheduler/ipp.c:10134
msgid "Job state cannot be changed."
msgstr "ジョブã®çŠ¶æ…‹ã‚’å¤‰æ›´ã§ãã¾ã›ã‚“。"
+#: scheduler/ipp.c:8899
msgid "Job subscriptions cannot be renewed."
-msgstr ""
+msgstr "ジョブサブスクリプションを更新ã§ãã¾ã›ã‚“。"
+#: cgi-bin/jobs.c:103 cgi-bin/jobs.c:114 cgi-bin/jobs.c:195
msgid "Jobs"
msgstr "ジョブ"
+#: backend/lpd.c:185
msgid "LPD/LPR Host or Printer"
msgstr "LPD/LPR ホストã¾ãŸã¯ãƒ—リンター"
+#: ppdc/sample.c:230
msgid "Label Printer"
msgstr "ラベルプリンター"
+#: ppdc/sample.c:446
msgid "Label Top"
msgstr "ラベルトップ"
+#: scheduler/ipp.c:2070 scheduler/ipp.c:5643
#, c-format
msgid "Language \"%s\" not supported."
-msgstr ""
+msgstr "言語 \"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“。"
+#: ppdc/sample.c:164
msgid "Large Address"
msgstr "ラージアドレス"
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "ラージアドレス - 1 4/10 x 3 1/2\""
-
+#: ppdc/sample.c:291
msgid "LaserJet Series PCL 4/5"
msgstr "LaserJet Series PCL 4/5"
+#: ppdc/sample.c:43
msgid "Letter Oversize"
-msgstr ""
+msgstr "US レター (特大)"
+#: ppdc/sample.c:44
msgid "Letter Oversize Long Edge"
-msgstr ""
+msgstr "US レター (特大) 長辺é€ã‚Š"
+#: ppdc/sample.c:236
msgid "Light"
msgstr "è–„ã„"
+#: cups/ppd.c:352
msgid "Line longer than the maximum allowed (255 characters)"
msgstr "1 è¡ŒãŒæœ€å¤§å€¤ (255 文字) ã‚’è¶…ãˆã¦ã„ã¾ã™"
+#: cgi-bin/admin.c:2393
msgid "List Available Printers"
msgstr "使用å¯èƒ½ãªãƒ—リンターをリスト化"
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "場所: "
-
+#: ppdc/sample.c:272
msgid "Long-Edge (Portrait)"
msgstr "長辺給紙 (縦å‘ã)"
+#: cups/http-support.c:1558
msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "プリンタードライãƒãƒ¼: "
+msgstr "プリンターを探ã—ã¦ã„ã¾ã™ã€‚"
+#: ppdc/sample.c:268
msgid "Manual Feed"
msgstr "手差ã—"
-msgid "Media Dimensions: "
-msgstr "用紙ã®å¤§ãã•: "
-
-msgid "Media Limits: "
-msgstr "用紙ã®å°å­—領域: "
-
-msgid "Media Name: "
-msgstr "用紙å:"
-
+#: cups/ppd.c:789 cups/ppd.c:1357
msgid "Media Size"
msgstr "用紙サイズ"
+#: cups/ppd.c:793 cups/ppd.c:1361 ppdc/sample.c:262
msgid "Media Source"
msgstr "給紙"
+#: ppdc/sample.c:364
msgid "Media Tracking"
msgstr "用紙ã®çµŒè·¯"
+#: cups/ppd.c:791 cups/ppd.c:1359 ppdc/sample.c:285
msgid "Media Type"
msgstr "用紙種類"
+#: ppdc/sample.c:237
msgid "Medium"
msgstr "紙質"
+#: cups/ppd.c:341
msgid "Memory allocation error"
-msgstr "メモリ割り当ã¦ã‚¨ãƒ©ãƒ¼"
+msgstr "メモリー割り当ã¦ã‚¨ãƒ©ãƒ¼"
+#: cups/ppd.c:361
msgid "Missing CloseGroup"
-msgstr ""
+msgstr "CloseGroup ãŒã‚りã¾ã›ã‚“"
+#: cups/ppd.c:342
msgid "Missing PPD-Adobe-4.x header"
-msgstr "PPD-Adobe-4.x ヘッダãŒã‚りã¾ã›ã‚“"
+msgstr "PPD-Adobe-4.x ヘッダーãŒã‚りã¾ã›ã‚“"
+#: cups/ppd.c:351
msgid "Missing asterisk in column 1"
msgstr "1 列目ã«ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ãŒã‚りã¾ã›ã‚“"
+#: scheduler/ipp.c:6119
msgid "Missing document-number attribute."
-msgstr ""
+msgstr "document-number 属性ãŒã‚りã¾ã›ã‚“。"
+#: cups/adminutil.c:273
#, c-format
msgid "Missing double quote on line %d."
-msgstr ""
+msgstr "%d 行ã«äºŒé‡å¼•用符ãŒã‚りã¾ã›ã‚“。"
+#: cgi-bin/admin.c:736 cgi-bin/admin.c:2106 cgi-bin/admin.c:2191
+#: cgi-bin/admin.c:2785 cgi-bin/admin.c:3039 cgi-bin/admin.c:3150
+#: cgi-bin/admin.c:3860
msgid "Missing form variable"
-msgstr ""
+msgstr "form 変数ãŒã‚りã¾ã›ã‚“。"
+#: scheduler/ipp.c:9422
msgid "Missing last-document attribute in request."
-msgstr ""
+msgstr "リクエスト㫠last-document 属性ãŒã‚りã¾ã›ã‚“。"
+#: cups/pwg-media.c:535
msgid "Missing media or media-col."
-msgstr ""
+msgstr "media ã¾ãŸã¯ media-col ãŒã‚りã¾ã›ã‚“。"
+#: cups/pwg-media.c:454
msgid "Missing media-size in media-col."
-msgstr ""
+msgstr "media-col ã« media-size ãŒã‚りã¾ã›ã‚“。"
+#: scheduler/ipp.c:6673
msgid "Missing notify-subscription-ids attribute."
-msgstr ""
+msgstr "notify-subscription-ids 属性ãŒã‚りã¾ã›ã‚“。"
+#: cups/ppd.c:359
msgid "Missing option keyword"
-msgstr ""
+msgstr "オプションキーワードãŒã‚りã¾ã›ã‚“"
+#: scheduler/ipp.c:3133 scheduler/ipp.c:3158
msgid "Missing requesting-user-name attribute."
-msgstr ""
+msgstr "requesting-user-name 属性ãŒè¨­å®šã•れã¦ã„ã¾ã›ã‚“。"
+#: scheduler/ipp.c:461
msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
+msgstr "å¿…é ˆã®å±žæ€§ãŒè¨­å®šã•れã¦ã„ã¾ã›ã‚“。"
+#: cups/adminutil.c:254
#, c-format
msgid "Missing value on line %d."
-msgstr ""
+msgstr "%d 行ã«å€¤ãŒã‚りã¾ã›ã‚“。"
+#: cups/ppd.c:343
msgid "Missing value string"
msgstr "値文字列ãŒã‚りã¾ã›ã‚“"
+#: cups/pwg-media.c:442
msgid "Missing x-dimension in media-size."
-msgstr ""
+msgstr "media-size ã« x-dimension ãŒã‚りã¾ã›ã‚“。"
+#: cups/pwg-media.c:448
msgid "Missing y-dimension in media-size."
-msgstr ""
+msgstr "media-size ã« y-dimension ãŒã‚りã¾ã›ã‚“。"
+#: systemv/lpinfo.c:470
#, c-format
msgid ""
"Model: name = %s\n"
@@ -3198,712 +4143,887 @@ msgid ""
" make-and-model = %s\n"
" device-id = %s"
msgstr ""
+"モデル: åå‰ = %s\n"
+" 言語 = %s\n"
+" プリンタードライãƒãƒ¼ = %s\n"
+" デãƒã‚¤ã‚¹ ID = %s"
+#: cgi-bin/admin.c:570
msgid "Modify Class"
msgstr "クラスã®å¤‰æ›´"
+#: cgi-bin/admin.c:882
msgid "Modify Printer"
msgstr "プリンターã®å¤‰æ›´"
+#: cgi-bin/ipp-var.c:425 cgi-bin/ipp-var.c:516
msgid "Move All Jobs"
msgstr "ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–ã®ç§»å‹•"
+#: cgi-bin/ipp-var.c:364 cgi-bin/ipp-var.c:423 cgi-bin/ipp-var.c:514
msgid "Move Job"
msgstr "ジョブã®ç§»å‹•"
+#: cups/http-support.c:1290
msgid "Moved Permanently"
msgstr "別ã®å ´æ‰€ã¸ç§»å‹•ã—ã¾ã—ãŸ"
+#: cups/ppd.c:340
msgid "NULL PPD file pointer"
msgstr "PPD ファイルãƒã‚¤ãƒ³ã‚¿ãƒ¼ãŒ NULL ã§ã™"
+#: cups/snmp.c:1053
msgid "Name OID uses indefinite length"
msgstr "OID åã¯é™å®šçš„ãªé•·ã•を使用ã—ã¾ã™"
+#: scheduler/ipp.c:1142
msgid "Nested classes are not allowed."
-msgstr ""
+msgstr "入れå­ã«ãªã£ãŸã‚¯ãƒ©ã‚¹ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“。"
+#: ppdc/sample.c:430
msgid "Never"
msgstr "Never"
+#: ppdc/sample.c:256
msgid "New Stylus Color Series"
msgstr "New Stylus Color シリーズ"
+#: ppdc/sample.c:258
msgid "New Stylus Photo Series"
msgstr "New Stylus Photo シリーズ"
+#: cups/ppd.c:1949
msgid "No"
msgstr "ã„ã„ãˆ"
+#: cups/http-support.c:1287
msgid "No Content"
msgstr "中身ãŒã‚りã¾ã›ã‚“"
+#: cups/util.c:1298
msgid "No PPD name"
-msgstr ""
+msgstr "PPD ã®åå‰ãŒã‚りã¾ã›ã‚“"
+#: cups/snmp.c:1047
msgid "No VarBind SEQUENCE"
msgstr "VarBind SEQUENCE ãŒã‚りã¾ã›ã‚“"
+#: cups/adminutil.c:788
msgid "No Windows printer drivers are installed."
-msgstr ""
+msgstr "Windows プリンタードライãƒãƒ¼ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“。"
+#: cups/request.c:566 cups/request.c:908
msgid "No active connection"
msgstr "ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªæŽ¥ç¶šã¯ã‚りã¾ã›ã‚“"
+#: scheduler/ipp.c:3403
#, c-format
msgid "No active jobs on %s."
-msgstr ""
+msgstr "%s ã«ã¯ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã‚¸ãƒ§ãƒ–ã¯ã‚りã¾ã›ã‚“。"
+#: scheduler/ipp.c:302
msgid "No attributes in request."
-msgstr ""
+msgstr "リクエストã«å±žæ€§ãŒã‚りã¾ã›ã‚“。"
+#: scheduler/ipp.c:3034
msgid "No authentication information provided."
-msgstr ""
+msgstr "èªè¨¼æƒ…å ±ãŒæä¾›ã•れã¦ã„ã¾ã›ã‚“。"
+#: cups/snmp.c:1004
msgid "No community name"
msgstr "コミュニティåãŒã‚りã¾ã›ã‚“"
+#: scheduler/ipp.c:5919
msgid "No default printer."
-msgstr ""
+msgstr "デフォルトã®ãƒ—リンターã¯ã‚りã¾ã›ã‚“"
+#: cgi-bin/ipp-var.c:436 scheduler/ipp.c:7248
msgid "No destinations added."
msgstr "追加ã•れãŸå®›å…ˆã¯ã‚りã¾ã›ã‚“"
+#: backend/usb.c:200
msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
+msgstr "ERROR: argv[0] ã¾ãŸã¯ 環境変数 DEVICE_URI ã«ãƒ‡ãƒã‚¤ã‚¹ URI ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: cups/snmp.c:1034
msgid "No error-index"
msgstr "エラーインデックスãŒã‚りã¾ã›ã‚“"
+#: cups/snmp.c:1026
msgid "No error-status"
msgstr "エラーステータスãŒã‚りã¾ã›ã‚“"
+#: scheduler/ipp.c:8190 scheduler/ipp.c:9436
msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
+msgstr "å°åˆ·ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«ãƒ•ァイルãŒã‚りã¾ã›ã‚“。"
+#: cups/util.c:923
msgid "No modification time"
-msgstr ""
+msgstr "変更時刻ãŒã‚りã¾ã›ã‚“。"
+#: cups/snmp.c:1051
msgid "No name OID"
msgstr "OID åãŒã‚りã¾ã›ã‚“"
+#: filter/rastertoepson.c:1147 filter/rastertohp.c:876
+#: filter/rastertolabel.c:1302
msgid "No pages were found."
-msgstr ""
+msgstr "ERROR: ページãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: cups/util.c:917
msgid "No printer name"
-msgstr ""
+msgstr "プリンターåãŒã‚りã¾ã›ã‚“。"
+#: cups/util.c:1801
msgid "No printer-uri found"
-msgstr ""
+msgstr "プリンター URI ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: cups/util.c:1786
msgid "No printer-uri found for class"
-msgstr ""
+msgstr "クラスã®ãƒ—リンター URI ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: scheduler/ipp.c:6322
msgid "No printer-uri in request."
-msgstr ""
+msgstr "プリンター URI ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆãŒã‚りã¾ã›ã‚“。"
+#: cups/snmp.c:1018
msgid "No request-id"
msgstr "リクエストID ãŒã‚りã¾ã›ã‚“"
+#: scheduler/ipp.c:5528
msgid "No subscription attributes in request."
-msgstr ""
+msgstr "リクエストã«ã‚µãƒ–スクリプション属性ãŒã‚りã¾ã›ã‚“。"
+#: scheduler/ipp.c:7575
msgid "No subscriptions found."
msgstr "サブスクリプションãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: cups/snmp.c:1042
msgid "No variable-bindings SEQUENCE"
msgstr "variable-bindings SEQUENCE ãŒã‚りã¾ã›ã‚“"
+#: cups/snmp.c:997
msgid "No version number"
msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³åãŒã‚りã¾ã›ã‚“"
+#: ppdc/sample.c:367
msgid "Non-continuous (Mark sensing)"
msgstr "éžé€£ç¶šã§ã™ (Mark sensing)"
+#: ppdc/sample.c:366
msgid "Non-continuous (Web sensing)"
msgstr "éžé€£ç¶šã§ã™ (Web sensing)"
+#: ppdc/sample.c:238
msgid "Normal"
msgstr "標準"
+#: cups/http-support.c:1309
msgid "Not Found"
msgstr "見ã¤ã‹ã‚Šã¾ã›ã‚“"
+#: cups/http-support.c:1321
msgid "Not Implemented"
msgstr "実装ã•れã¦ã„ã¾ã›ã‚“"
+#: ppdc/sample.c:276
msgid "Not Installed"
msgstr "インストールã•れã¦ã„ã¾ã›ã‚“"
+#: cups/http-support.c:1296
msgid "Not Modified"
msgstr "変更ã•れã¦ã„ã¾ã›ã‚“"
+#: cups/http-support.c:1324
msgid "Not Supported"
msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“"
+#: scheduler/ipp.c:1518 scheduler/ipp.c:10666
msgid "Not allowed to print."
msgstr "å°åˆ·ãŒè¨±å¯ã•れã¦ã„ã¾ã›ã‚“。"
+#: ppdc/sample.c:146
msgid "Note"
msgstr "注æ„"
+#: systemv/cupstestdsc.c:433
msgid ""
"Note: this program only validates the DSC comments, not the PostScript "
"itself."
-msgstr ""
+msgstr "注æ„: ã“ã®ãƒ—ログラム㯠DSC コメントを検証ã™ã‚‹ã ã‘ã§ã€PostScript 自身を検証ã™ã‚‹ã‚‚ã®ã§ã¯ã‚りã¾ã›ã‚“。"
+#: cups/http-support.c:1278 cups/ppd.c:338
msgid "OK"
msgstr "OK"
+#: ppdc/sample.c:271
msgid "Off (1-Sided)"
msgstr "Off (片é¢)"
+#: ppdc/sample.c:361
msgid "Oki"
msgstr "Oki"
+#: cgi-bin/help.c:91 cgi-bin/help.c:132 cgi-bin/help.c:142 cgi-bin/help.c:172
msgid "Online Help"
msgstr "オンラインヘルプ"
+#: cups/adminutil.c:955
#, c-format
msgid "Open of %s failed: %s"
msgstr "%s ã®ã‚ªãƒ¼ãƒ—ンã«å¤±æ•—ã—ã¾ã—ãŸ: %s"
+#: cups/ppd.c:346
msgid "OpenGroup without a CloseGroup first"
msgstr "OpenGroup ã®å‰ã«ã¾ãš CloseGroup ãŒå¿…è¦ã§ã™"
+#: cups/ppd.c:348
msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
msgstr "OpenUI/JCLOpenUI ã®å‰ã«ã¾ãš CloseUI/JCLCloseUI ãŒå¿…è¦ã§ã™"
+#: cgi-bin/admin.c:3631
msgid "Operation Policy"
msgstr "æ“作ãƒãƒªã‚·ãƒ¼"
+#: filter/pstops.c:2205
#, c-format
msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
+msgstr "オプション \"%s\" 㯠%%%%IncludeFeature 経由ã§å«ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
+#: cgi-bin/admin.c:3281 cgi-bin/admin.c:3365
msgid "Options Installed"
msgstr "インストールã•れãŸã‚ªãƒ—ション"
+#: scheduler/cupsfilter.c:1430 scheduler/main.c:2018 systemv/cupsaddsmb.c:284
+#: systemv/cupsctl.c:203 systemv/cupstestdsc.c:429 systemv/cupstestppd.c:3797
+#: test/ipptool.c:4403 ppdc/ppdc.cxx:437 ppdc/ppdhtml.cxx:174
+#: ppdc/ppdi.cxx:130 ppdc/ppdmerge.cxx:369 ppdc/ppdpo.cxx:254
msgid "Options:"
-msgstr ""
-
-msgid "Options: "
msgstr "オプション:"
+#: cups/ppd-cache.c:156
msgid "Out of date PPD cache file."
-msgstr ""
+msgstr "PPD キャッシュファイルãŒå¤ã™ãŽã¾ã™ã€‚"
+#: cups/ppd-cache.c:1381
msgid "Out of memory."
-msgstr ""
+msgstr "メモリーãŒè¶³ã‚Šã¾ã›ã‚“。"
+#: cups/ppd.c:795 cups/ppd.c:1363
msgid "Output Mode"
msgstr "出力モード"
+#: systemv/lpstat.c:1191 systemv/lpstat.c:1195
#, c-format
msgid "Output for printer %s is sent to %s"
-msgstr ""
+msgstr "プリンター %s ã®å‡ºåŠ›ã¯ %s ã«é€ã‚‰ã‚Œã¾ã™"
+#: systemv/lpstat.c:1185
#, c-format
msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
+msgstr "プリンター %s ã®å‡ºåŠ›ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ—リンター %s (%s 上) ã«é€ã‚‰ã‚Œã¾ã™"
+#: systemv/lpstat.c:1209 systemv/lpstat.c:1213
#, c-format
msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
+msgstr "プリンター %s/%s ã®å‡ºåŠ›ã¯ %s ã«é€ã‚‰ã‚Œã¾ã™"
+#: systemv/lpstat.c:1203
#, c-format
msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
+msgstr "プリンター %s/%s ã®å‡ºåŠ›ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ—リンター %s (%s 上) ã«é€ã‚‰ã‚Œã¾ã™"
+#: systemv/cupstestdsc.c:399
msgid "PASS"
-msgstr ""
+msgstr "åˆæ ¼"
+#: ppdc/sample.c:260
msgid "PCL Laser Printer"
msgstr "PCL レーザープリンター"
+#: ppdc/sample.c:149
msgid "PRC16K"
msgstr "PRC16K"
+#: ppdc/sample.c:150
msgid "PRC16K Long Edge"
-msgstr ""
+msgstr "PRC16K 長辺é€ã‚Š"
+#: ppdc/sample.c:151
msgid "PRC32K"
msgstr "PRC32K"
+#: ppdc/sample.c:154
msgid "PRC32K Long Edge"
-msgstr ""
+msgstr "PRC32K 長辺é€ã‚Š"
+#: ppdc/sample.c:152
msgid "PRC32K Oversize"
-msgstr ""
+msgstr "PRC32K (特大)"
+#: ppdc/sample.c:153
msgid "PRC32K Oversize Long Edge"
-msgstr ""
+msgstr "PRC32K (特大) 長辺é€ã‚Š"
+#: cups/snmp.c:1014
msgid "Packet does not contain a Get-Response-PDU"
msgstr "パケット㌠Get-Response-PDU ã‚’å«ã‚“ã§ã„ã¾ã›ã‚“"
+#: cups/snmp.c:993
msgid "Packet does not start with SEQUENCE"
msgstr "パケット㌠SEQUENCE ã‹ã‚‰å§‹ã¾ã‚Šã¾ã›ã‚“"
+#: ppdc/sample.c:360
msgid "ParamCustominCutInterval"
msgstr "ParamCustominCutInterval"
+#: ppdc/sample.c:358
msgid "ParamCustominTearInterval"
msgstr "ParamCustominTearInterval"
+#: cups/auth.c:199 cups/auth.c:367
#, c-format
msgid "Password for %s on %s? "
msgstr "%s ã®ãƒ‘スワード (%s 上)? "
+#: systemv/cupsaddsmb.c:252
#, c-format
msgid "Password for %s required to access %s via SAMBA: "
msgstr "%s ã®ãƒ‘スワード (SAMBA 経由㧠%s ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã®ã«å¿…è¦):"
+#: cgi-bin/classes.c:167
msgid "Pause Class"
msgstr "クラスã®ä¼‘æ­¢"
+#: cgi-bin/printers.c:170
msgid "Pause Printer"
msgstr "プリンターã®ä¼‘æ­¢"
+#: ppdc/sample.c:448
msgid "Peel-Off"
msgstr "Peel-Off"
+#: ppdc/sample.c:160
msgid "Photo"
msgstr "写真"
+#: ppdc/sample.c:161
msgid "Photo Labels"
msgstr "写真ラベル"
+#: ppdc/sample.c:286
msgid "Plain Paper"
msgstr "普通紙"
+#: cgi-bin/admin.c:3299 cgi-bin/admin.c:3580
msgid "Policies"
msgstr "ãƒãƒªã‚·ãƒ¼"
+#: cgi-bin/admin.c:3306 cgi-bin/admin.c:3649 cgi-bin/admin.c:3662
msgid "Port Monitor"
msgstr "ãƒãƒ¼ãƒˆãƒ¢ãƒ‹ã‚¿ãƒ¼"
+#: ppdc/sample.c:278
msgid "PostScript Printer"
-msgstr "ãƒã‚¹ãƒˆã‚¹ã‚¯ãƒªãƒ—トプリンター"
+msgstr "PostScript プリンター"
+#: ppdc/sample.c:147
msgid "Postcard"
msgstr "ãƒã‚¬ã‚­"
+#: ppdc/sample.c:71
msgid "Postcard Double "
-msgstr ""
+msgstr "往復ãƒã‚¬ã‚­"
+#: ppdc/sample.c:72
msgid "Postcard Double Long Edge"
-msgstr ""
+msgstr "往復ãƒã‚¬ã‚­ 長辺é€ã‚Š"
+#: ppdc/sample.c:148
msgid "Postcard Long Edge"
-msgstr ""
+msgstr "ãƒã‚¬ã‚­ 長辺é€ã‚Š"
+#: ppdc/sample.c:295
msgid "Print Density"
msgstr "å°åˆ·å¯†åº¦"
+#: cups/notify.c:82
msgid "Print Job:"
msgstr "ジョブã®å°åˆ·:"
+#: ppdc/sample.c:340
msgid "Print Mode"
msgstr "å°åˆ·ãƒ¢ãƒ¼ãƒ‰"
+#: ppdc/sample.c:383
msgid "Print Rate"
msgstr "å°åˆ·ãƒ¬ãƒ¼ãƒˆ"
+#: cgi-bin/printers.c:179
msgid "Print Self-Test Page"
msgstr "自己テストページã®å°åˆ·"
+#: ppdc/sample.c:327
msgid "Print Speed"
msgstr "å°åˆ·é€Ÿåº¦"
+#: cgi-bin/ipp-var.c:792
msgid "Print Test Page"
msgstr "テストページã®å°åˆ·"
+#: ppdc/sample.c:356
msgid "Print and Cut"
msgstr "プリントã—ã¦ã‚«ãƒƒãƒˆ"
+#: ppdc/sample.c:344
msgid "Print and Tear"
msgstr "プリントã—ã¦åˆ‡ã‚Šå–ã‚‹"
+#: backend/ipp.c:1537
#, c-format
msgid "Print file accepted - job ID %d."
-msgstr ""
+msgstr "プリントファイルをå—ã‘付ã‘ã¾ã—㟠- ジョブ ID %d。"
+#: backend/ipp.c:1527
msgid "Print file accepted - job ID unknown."
-msgstr ""
+msgstr "NOTICE: プリントファイルをå—ã‘付ã‘ã¾ã—㟠- ジョブ ID 䏿˜Žã€‚"
+#: backend/socket.c:424 backend/usb-unix.c:191
msgid "Print file sent."
-msgstr ""
+msgstr "プリントファイルãŒé€ã‚‰ã‚Œã¾ã—ãŸã€‚"
+#: backend/ipp.c:1488
msgid "Print file was not accepted."
-msgstr ""
+msgstr "プリントファイルãŒå—ã‘付ã‘られã¾ã›ã‚“ã§ã—ãŸã€‚"
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "プリント対象:"
-
-msgid "Printed From: "
-msgstr "プリント元:"
+#: backend/ipp.c:1895
+msgid "Print job canceled at printer."
+msgstr "å°åˆ·ã‚¸ãƒ§ãƒ–ã¯ãƒ—リンターã§ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã•れã¾ã—ãŸã€‚"
-msgid "Printed On: "
-msgstr "プリント先:"
+#: backend/ipp.c:1890
+msgid "Print job too large."
+msgstr "å°åˆ·ã‚¸ãƒ§ãƒ–ãŒå¤§ãã™ãŽã¾ã™ã€‚"
+#: cgi-bin/ipp-var.c:1047
msgid "Printer Added"
msgstr "追加ã•れãŸãƒ—リンター"
+#: ppdc/sample.c:263
msgid "Printer Default"
msgstr "デフォルトã®ãƒ—リンター"
+#: cgi-bin/ipp-var.c:1051
msgid "Printer Deleted"
msgstr "削除ã•れãŸãƒ—リンター"
+#: cgi-bin/ipp-var.c:1049
msgid "Printer Modified"
msgstr "変更ã•れãŸãƒ—リンター"
-msgid "Printer Name: "
-msgstr "プリンターå:"
-
+#: cgi-bin/ipp-var.c:1045
msgid "Printer Paused"
msgstr "プリンターã®ä¼‘æ­¢"
+#: ppdc/sample.c:294
msgid "Printer Settings"
msgstr "プリンター設定"
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
+#: backend/ipp.c:1893
+msgid "Printer cannot print supplied content."
+msgstr "プリンターã¯å—ä¿¡ã—ãŸå†…容をå°åˆ·ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚"
+#: cups/notify.c:126
msgid "Printer:"
msgstr "プリンター:"
+#: cgi-bin/printers.c:204 cgi-bin/printers.c:332
msgid "Printers"
msgstr "プリンター"
+#: filter/rastertoepson.c:1093 filter/rastertohp.c:817
+#: filter/rastertolabel.c:1249
#, c-format
msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
+msgstr "ページ %d ã‚’å°åˆ·ä¸­ã€%d%% 完了ã—ã¾ã—ãŸã€‚"
+#: cgi-bin/classes.c:173 cgi-bin/printers.c:176
msgid "Purge Jobs"
msgstr "ジョブã®å‰Šé™¤"
+#: ppdc/sample.c:155
msgid "Quarto"
msgstr "Quarto"
+#: scheduler/ipp.c:1513 scheduler/ipp.c:10661
msgid "Quota limit reached."
-msgstr "Quota ã®åˆ¶é™ã«é”ã—ã¾ã—ãŸã€‚"
+msgstr "クォータã®åˆ¶é™ã«é”ã—ã¾ã—ãŸã€‚"
+#: berkeley/lpq.c:515
msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
+msgstr "ランク 所有者 ジョブ ファイル åˆè¨ˆã‚µã‚¤ã‚º"
#. TRANSLATORS: Pri is job priority.
+#: berkeley/lpq.c:511
msgid ""
"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
+msgstr "ランク 所有者 優先 ジョブ ファイル åˆè¨ˆã‚µã‚¤ã‚º"
+#: cgi-bin/classes.c:171 cgi-bin/printers.c:174
msgid "Reject Jobs"
msgstr "ã‚¸ãƒ§ãƒ–ã®æ‹’å¦"
+#: backend/lpd.c:1016 backend/lpd.c:1148
#, c-format
msgid "Remote host did not accept control file (%d)."
-msgstr ""
+msgstr "リモートホストãŒã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ãƒ•ァイルをå—ã‘付ã‘ã¾ã›ã‚“ã§ã—㟠(%d)。"
+#: backend/lpd.c:1101
#, c-format
msgid "Remote host did not accept data file (%d)."
-msgstr ""
+msgstr "リモートホストãŒãƒ‡ãƒ¼ã‚¿ãƒ•ァイルをå—ã‘付ã‘ã¾ã›ã‚“ã§ã—㟠(%d)。"
+#: ppdc/sample.c:428
msgid "Reprint After Error"
msgstr "エラー後ã®å†å°åˆ·"
+#: cups/http-support.c:1312
msgid "Request Entity Too Large"
msgstr "è¦æ±‚ã™ã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãŒå¤§ãã™ãŽã¾ã™"
+#: cups/ppd.c:797 cups/ppd.c:1365 ppdc/sample.c:231
msgid "Resolution"
msgstr "è§£åƒåº¦"
+#: cgi-bin/classes.c:165
msgid "Resume Class"
msgstr "クラスをå†é–‹ã™ã‚‹"
+#: cgi-bin/printers.c:167
msgid "Resume Printer"
msgstr "プリンターをå†é–‹ã™ã‚‹"
+#: ppdc/sample.c:165
msgid "Return Address"
-msgstr "アドレスを戻ã™"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "アドレスを戻㙠ー 3/4 x 2\""
+msgstr "返信用ラベル"
+#: ppdc/sample.c:449
msgid "Rewind"
-msgstr "戻る"
+msgstr "å·»ãå–り"
+#: cups/adminutil.c:2052
#, c-format
msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
+msgstr "コマンドを実行中: %s %s -N -A %s -c '%s'"
+#: cups/snmp.c:995
msgid "SEQUENCE uses indefinite length"
msgstr "SEQUENCE ã¯ä¸å®šé•·ã‚’使用ã—ã¦ã„ã¾ã™"
+#: cups/http-support.c:1336
msgid "SSL/TLS Negotiation Error"
-msgstr ""
+msgstr "SSL/TLS ã®ãƒã‚´ã‚·ã‚¨ãƒ¼ã‚·ãƒ§ãƒ³ã‚¨ãƒ©ãƒ¼"
+#: cups/http-support.c:1293
msgid "See Other"
msgstr "残りを見ã¦ãã ã•ã„"
+#: backend/usb-darwin.c:543 backend/usb-libusb.c:273
msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "シリアルãƒãƒ¼ãƒˆ #%d"
+msgstr "データをプリンターã«é€ä¿¡ã—ã¦ã„ã¾ã™ã€‚"
+#: cgi-bin/ipp-var.c:1061
msgid "Server Restarted"
msgstr "å†èµ·å‹•ã•れãŸã‚µãƒ¼ãƒãƒ¼"
+#: cgi-bin/ipp-var.c:1067
msgid "Server Security Auditing"
-msgstr "サーãƒãƒ¼ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ¼ãƒã‚§ãƒƒã‚¯"
+msgstr "サーãƒãƒ¼ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ¼ç›£æŸ»"
+#: cgi-bin/ipp-var.c:1063
msgid "Server Started"
msgstr "é–‹å§‹ã•れãŸã‚µãƒ¼ãƒãƒ¼"
+#: cgi-bin/ipp-var.c:1065
msgid "Server Stopped"
msgstr "åœæ­¢ã•れãŸã‚µãƒ¼ãƒãƒ¼"
+#: cups/http-support.c:1330
msgid "Service Unavailable"
msgstr "利用ã§ããªã„サービス"
+#: cgi-bin/admin.c:2786 cgi-bin/admin.c:2832 cgi-bin/admin.c:2989
+#: cgi-bin/admin.c:3008
msgid "Set Allowed Users"
msgstr "許å¯ã™ã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®è¨­å®š"
+#: cgi-bin/admin.c:3035
msgid "Set As Server Default"
-msgstr "サーãƒãƒ¼ã‚’デフォルトã«è¨­å®š"
+msgstr "サーãƒãƒ¼ã®ãƒ‡ãƒ•ォルトã«è¨­å®š"
+#: cgi-bin/admin.c:3135
msgid "Set Class Options"
-msgstr "クラスオプションを設定"
+msgstr "クラスオプションã®è¨­å®š"
+#: cgi-bin/admin.c:3135 cgi-bin/admin.c:3309 cgi-bin/admin.c:3691
msgid "Set Printer Options"
msgstr "プリンターオプションã®è¨­å®š"
+#: cgi-bin/admin.c:3861 cgi-bin/admin.c:3905 cgi-bin/admin.c:3923
msgid "Set Publishing"
msgstr "公開ã®è¨­å®š"
+#: ppdc/sample.c:166
msgid "Shipping Address"
-msgstr "発é€ã‚¢ãƒ‰ãƒ¬ã‚¹"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "発é€ã‚¢ãƒ‰ãƒ¬ã‚¹ - 2 5/16 x 4\""
+msgstr "発é€å…ˆãƒ©ãƒ™ãƒ«"
+#: ppdc/sample.c:273
msgid "Short-Edge (Landscape)"
msgstr "短辺 (横原稿)"
+#: ppdc/sample.c:288
msgid "Special Paper"
-msgstr "スペシャルペーパー"
+msgstr "特殊紙"
+#: backend/lpd.c:1057
#, c-format
msgid "Spooling job, %.0f%% complete."
-msgstr ""
+msgstr "ジョブをスプール中ã€%.0f%% 完了ã—ã¾ã—ãŸã€‚"
+#: ppdc/sample.c:341
msgid "Standard"
msgstr "標準"
#. TRANSLATORS: Banner/cover sheet before the print job.
+#: cgi-bin/admin.c:3552
msgid "Starting Banner"
msgstr "é–‹å§‹ãƒãƒŠãƒ¼"
+#: filter/rastertoepson.c:1069 filter/rastertohp.c:793
+#: filter/rastertolabel.c:1225
#, c-format
msgid "Starting page %d."
-msgstr ""
+msgstr "ページ %d ã‚’é–‹å§‹ã—ã¦ã„ã¾ã™ã€‚"
+#: ppdc/sample.c:156
msgid "Statement"
msgstr "記述"
+#: ppdc/sample.c:251
msgid "Stylus Color Series"
msgstr "Stylus Color シリーズ"
+#: ppdc/sample.c:257
msgid "Stylus Photo Series"
msgstr "Stylus Photo シリーズ"
+#: scheduler/ipp.c:3549 scheduler/ipp.c:6689 scheduler/ipp.c:7388
+#: scheduler/ipp.c:8887
#, c-format
msgid "Subscription #%d does not exist."
-msgstr ""
+msgstr "ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ç•ªå· %d ã¯å­˜åœ¨ã—ã¾ã›ã‚“。"
+#: ppdc/sample.c:157
msgid "Super A"
msgstr "スーパー A"
+#: ppdc/sample.c:158
msgid "Super B"
msgstr "スーパー B"
+#: ppdc/sample.c:162
msgid "Super B/A3"
msgstr "スーパー B/A3"
+#: cups/http-support.c:1275
msgid "Switching Protocols"
msgstr "プロトコルã®å¤‰æ›´"
+#: ppdc/sample.c:159
msgid "Tabloid"
msgstr "タブロイド"
+#: ppdc/sample.c:45
msgid "Tabloid Oversize"
-msgstr ""
+msgstr "タブロイド (特大)"
+#: ppdc/sample.c:46
msgid "Tabloid Oversize Long Edge"
-msgstr ""
+msgstr "タブロイド (特大) 長辺é€ã‚Š"
+#: ppdc/sample.c:342
msgid "Tear"
msgstr "Tear"
+#: ppdc/sample.c:447
msgid "Tear-Off"
msgstr "Tear-Off"
+#: ppdc/sample.c:388
msgid "Tear-Off Adjust Position"
msgstr "Tear-Off ä½ç½®èª¿ç¯€"
+#: scheduler/ipp.c:6393 scheduler/ipp.c:6471 scheduler/ipp.c:6487
+#: scheduler/ipp.c:6505
#, c-format
msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
+msgstr "%s 属性ã¯ã€ã‚¸ãƒ§ãƒ– ID ã¨ä¸€ç·’ã«ä½¿ã†ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
+#: scheduler/ipp.c:5118
+#, c-format
+msgid ""
+"The '%s' operation attribute cannot be supplied in a Create-Job request."
+msgstr "%s æ“作属性ã¯ã€Create-Job リクエストã®ä¸­ã§ä½¿ã†ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
+
+#: scheduler/ipp.c:6919
#, c-format
msgid "The PPD file \"%s\" could not be found."
msgstr "PPD ファイル \"%s\" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: scheduler/ipp.c:6906
#, c-format
msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "PPD ファイル \"%s\" ãŒé–‹ãã¾ã›ã‚“ã§ã—ãŸ: %s"
+msgstr "PPD ファイル \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸ: %s"
+#: filter/rastertoepson.c:1038 filter/rastertohp.c:764
+#: filter/rastertolabel.c:1189
msgid "The PPD file could not be opened."
-msgstr ""
+msgstr "PPD ファイルを開ã‘ã¾ã›ã‚“ã§ã—ãŸã€‚"
+#: cgi-bin/admin.c:749
msgid ""
"The class name may only contain up to 127 printable characters and may not "
"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"クラスå㯠127 文字以内ã®è¡¨ç¤ºå¯èƒ½æ–‡å­—ã‹ã‚‰æˆã‚Šã€ç©ºç™½ã€ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ (/)ã€ãƒãƒ³ãƒ‰è¨˜"
-"å· (#) ã‚’å«ã‚“ã§ã¯ãªã‚Šã¾ã›ã‚“。"
+msgstr "クラスå㯠127 文字以内ã®è¡¨ç¤ºå¯èƒ½æ–‡å­—ã‹ã‚‰ãªã‚Šã€ç©ºç™½ã€ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ (/)ã€ã‚·ãƒ£ãƒ¼ãƒ— (#) ã‚’å«ã‚“ã§ã¯ãªã‚Šã¾ã›ã‚“。"
+#: cups/localize.c:353
msgid "The developer unit needs to be replaced."
-msgstr ""
+msgstr "ç¾åƒãƒ¦ãƒ‹ãƒƒãƒˆã®äº¤æ›ãŒå¿…è¦ã§ã™ã€‚"
+#: cups/localize.c:351
msgid "The developer unit will need to be replaced soon."
-msgstr ""
+msgstr "ã‚‚ã†ã™ãç¾åƒãƒ¦ãƒ‹ãƒƒãƒˆã®äº¤æ›æ™‚期ã§ã™ã€‚"
+#: cups/localize.c:343
msgid "The fuser's temperature is high."
-msgstr ""
+msgstr "定ç€å™¨ã®æ¸©åº¦ãŒé«˜ã™ãŽã¾ã™ã€‚"
+#: cups/localize.c:345
msgid "The fuser's temperature is low."
-msgstr ""
+msgstr "定ç€å™¨ã®æ¸©åº¦ãŒä½Žã™ãŽã¾ã™ã€‚"
+#: scheduler/ipp.c:2097
msgid ""
"The notify-lease-duration attribute cannot be used with job subscriptions."
msgstr ""
"notify-lease-duration 属性ã¯ã€ã‚¸ãƒ§ãƒ–サブスクリプションã¨ä¸€ç·’ã«ä½¿ã†ã“ã¨ã¯ã§ã"
"ã¾ã›ã‚“。"
+#: scheduler/ipp.c:2080 scheduler/ipp.c:5653
#, c-format
msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
+msgstr "notify-user-data 値ãŒå¤§ãã™ãŽã¾ã™ (%d > 63 オクテット)。"
+#: cups/localize.c:349
msgid "The optical photoconductor needs to be replaced."
-msgstr ""
+msgstr "感光体ã®äº¤æ›ãŒå¿…è¦ã§ã™ã€‚"
+#: cups/localize.c:347
msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
+msgstr "ã‚‚ã†ã™ã感光体ã®äº¤æ›æ™‚期ã§ã™ã€‚"
+#: cups/localize.c:331
msgid "The output bin is almost full."
-msgstr ""
+msgstr "排紙トレイãŒã»ã¨ã‚“ã©ä¸€æ¯ã§ã™ã€‚"
+#: cups/localize.c:333
msgid "The output bin is full."
-msgstr ""
+msgstr "排紙トレイãŒä¸€æ¯ã§ã™ã€‚"
+#: cups/localize.c:329
msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
+msgstr "排紙トレイãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: cups/localize.c:325
msgid "The paper tray is almost empty."
-msgstr ""
+msgstr "用紙トレイãŒç©ºã«ãªã‚Šã‹ã‘ã¦ã„ã¾ã™ã€‚"
+#: cups/localize.c:327
msgid "The paper tray is empty."
-msgstr ""
+msgstr "用紙トレイãŒç©ºã§ã™ã€‚"
+#: cups/localize.c:323
msgid "The paper tray is missing."
-msgstr ""
+msgstr "用紙トレイãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: cups/localize.c:306
msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
+msgstr "用紙トレイã«è£œå……ãŒå¿…è¦ã§ã™ã€‚"
+#: backend/ipp.c:909
msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
+msgstr "プリンター URI ãŒèª¤ã£ã¦ã„ã‚‹ã‹ã€ã‚‚ã†å­˜åœ¨ã—ã¾ã›ã‚“。"
-msgid "The printer is busy."
-msgstr ""
+#: backend/lpd.c:619 backend/lpd.c:1009 backend/lpd.c:1091 backend/lpd.c:1141
+msgid "The printer did not respond."
+msgstr "プリンターãŒå¿œç­”ã—ã¾ã›ã‚“。"
+
+#: backend/ipp.c:892 backend/ipp.c:899
+#, c-format
+msgid "The printer does not support IPP/%d.%d, trying IPP/%s."
+msgstr "プリンター㌠IPP/%d.%d をサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“。IPP/%s を試ã—ã¾ã™ã€‚"
+
+#: backend/ipp.c:757 backend/ipp.c:874 backend/ipp.c:980 backend/ipp.c:1313
+#: backend/ipp.c:1464 backend/lpd.c:828 backend/socket.c:374
+#: backend/usb-unix.c:131 backend/usb-unix.c:424 backend/usb-unix.c:507
+msgid "The printer is in use."
+msgstr "プリンターã¯ä½¿ç”¨ä¸­ã§ã™ã€‚"
+#: backend/runloop.c:254 backend/runloop.c:374 cups/localize.c:311
msgid "The printer is not connected."
-msgstr ""
+msgstr "ãƒ—ãƒªãƒ³ã‚¿ãƒ¼ã¯æŽ¥ç¶šã•れã¦ã„ã¾ã›ã‚“。"
+#: backend/ipp.c:735 backend/ipp.c:768 backend/ipp.c:870 backend/lpd.c:807
+#: backend/lpd.c:848 backend/socket.c:353 backend/socket.c:386
msgid "The printer is not responding."
-msgstr ""
+msgstr "プリンターãŒå¿œç­”ã—ã¦ã„ã¾ã›ã‚“。"
-msgid "The printer is out of ink."
-msgstr ""
+#: backend/runloop.c:396
+msgid "The printer is now connected."
+msgstr "ãƒ—ãƒªãƒ³ã‚¿ãƒ¼ãŒæŽ¥ç¶šã•れã¾ã—ãŸã€‚"
+
+#: backend/usb-darwin.c:1286
+msgid "The printer is now online."
+msgstr "プリンターã¯ç¾åœ¨ã‚ªãƒ³ãƒ©ã‚¤ãƒ³ã§ã™ã€‚"
+
+#: backend/usb-darwin.c:1307
+msgid "The printer is offline."
+msgstr "プリンターã¯ã‚ªãƒ•ラインã§ã™ã€‚"
+#: cups/localize.c:335
msgid "The printer is running low on ink."
-msgstr ""
+msgstr "プリンターã®ã‚¤ãƒ³ã‚¯ãŒã‚‚ã†ã™ããªããªã‚Šã¾ã™ã€‚"
+#: cups/localize.c:313
msgid "The printer is running low on toner."
-msgstr ""
+msgstr "プリンターã®ãƒˆãƒŠãƒ¼ãŒã‚‚ã†ã™ããªããªã‚Šã¾ã™ã€‚"
+#: backend/ipp.c:750 backend/lpd.c:821 backend/socket.c:367
msgid "The printer is unreachable at this time."
-msgstr ""
+msgstr "プリンターã«ã¯ç¾åœ¨åˆ°é”ã§ãã¾ã›ã‚“。"
+
+#: cups/localize.c:337
+msgid "The printer may be out of ink."
+msgstr "プリンターã®ã‚¤ãƒ³ã‚¯ãŒãªããªã£ã¦ã„るよã†ã§ã™ã€‚"
+#: cups/localize.c:315
msgid "The printer may be out of toner."
-msgstr ""
+msgstr "プリンターã®ãƒˆãƒŠãƒ¼ãŒãªããªã£ã¦ã„るよã†ã§ã™ã€‚"
+#: backend/ipp.c:744 backend/lpd.c:815 backend/socket.c:361
msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
+msgstr "プリンターã¯ç¾åœ¨å­˜åœ¨ã—ãªã„ã‹ã€ä½¿ç”¨ã§ããªã„よã†ã§ã™ã€‚"
+#: cgi-bin/admin.c:931
msgid ""
"The printer name may only contain up to 127 printable characters and may not "
"contain spaces, slashes (/), or the pound sign (#)."
@@ -3911,46 +5031,65 @@ msgstr ""
"プリンターå㯠127 文字以内ã®è¡¨ç¤ºå¯èƒ½æ–‡å­—ã‹ã‚‰æˆã‚Šã€ç©ºç™½ã€ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ (/)ã€ãƒãƒ³"
"ãƒ‰è¨˜å· (#) ã‚’å«ã‚“ã§ã¯ãªã‚Šã¾ã›ã‚“。"
+#: scheduler/ipp.c:876 scheduler/ipp.c:1136 scheduler/ipp.c:3198
+#: scheduler/ipp.c:3369 scheduler/ipp.c:5101 scheduler/ipp.c:5487
+#: scheduler/ipp.c:5801 scheduler/ipp.c:6359 scheduler/ipp.c:7124
+#: scheduler/ipp.c:7180 scheduler/ipp.c:7494 scheduler/ipp.c:7760
+#: scheduler/ipp.c:7849 scheduler/ipp.c:7882 scheduler/ipp.c:8205
+#: scheduler/ipp.c:8598 scheduler/ipp.c:8679 scheduler/ipp.c:9840
+#: scheduler/ipp.c:10294 scheduler/ipp.c:10624 scheduler/ipp.c:10706
+#: scheduler/ipp.c:10998
msgid "The printer or class does not exist."
-msgstr ""
+msgstr "プリンターã¾ãŸã¯ã‚¯ãƒ©ã‚¹ã¯å­˜åœ¨ã—ã¾ã›ã‚“。"
+#: scheduler/ipp.c:1304
msgid "The printer or class is not shared."
-msgstr ""
+msgstr "プリンターã¾ãŸã¯ã‚¯ãƒ©ã‚¹ã¯å…±æœ‰ã§ãã¾ã›ã‚“。"
+#: cups/localize.c:317
msgid "The printer's cover is open."
-msgstr ""
+msgstr "プリンターã®ã‚«ãƒãƒ¼ãŒé–‹ã„ã¦ã„ã¾ã™ã€‚"
+#: cups/localize.c:321
msgid "The printer's door is open."
-msgstr ""
+msgstr "プリンターã®ãƒ‰ã‚¢ãŒé–‹ã„ã¦ã„ã¾ã™ã€‚"
+#: cups/localize.c:319
msgid "The printer's interlock is open."
-msgstr ""
+msgstr "プリンターã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ­ãƒƒã‚¯ãŒé–‹ã„ã¦ã„ã¾ã™ã€‚"
+#: cups/localize.c:339
msgid "The printer's waste bin is almost full."
-msgstr ""
+msgstr "プリンターã®å»ƒã‚¤ãƒ³ã‚¯ã¾ãŸã¯å»ƒãƒˆãƒŠãƒ¼å®¹å™¨ãŒã»ã¨ã‚“ã©ä¸€æ¯ã§ã™ã€‚"
+#: cups/localize.c:341
msgid "The printer's waste bin is full."
-msgstr ""
+msgstr "プリンターã®å»ƒã‚¤ãƒ³ã‚¯ã¾ãŸã¯å»ƒãƒˆãƒŠãƒ¼å®¹å™¨ãŒä¸€æ¯ã§ã™ã€‚"
+#: scheduler/ipp.c:982 scheduler/ipp.c:2261
#, c-format
msgid "The printer-uri \"%s\" contains invalid characters."
msgstr "printer-uri \"%s\" ã«ã¯ã€ç„¡åŠ¹ãªæ–‡å­—ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚"
+#: scheduler/ipp.c:3175
msgid "The printer-uri attribute is required."
-msgstr ""
+msgstr "printer-uri 属性ã¯å¿…é ˆã§ã™ã€‚"
+#: scheduler/ipp.c:966
msgid ""
"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
msgstr ""
"printer-uri ã¯ã€\"ipp://ホストå/classes/クラスå\" å½¢å¼ã§ãªã‘れã°ãªã‚Šã¾ã›"
"ん。"
+#: scheduler/ipp.c:2245
msgid ""
"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
msgstr ""
"printer-uri 㯠\"ipp://ホストå/printers/プリンターå\" å½¢å¼ã§ãªã‘れã°ãªã‚Šã¾"
"ã›ã‚“。"
+#: cgi-bin/admin.c:474
msgid ""
"The subscription name may not contain spaces, slashes (/), question marks "
"(?), or the pound sign (#)."
@@ -3958,494 +5097,604 @@ msgstr ""
"サブスクリプションåã«ã¯ã€ã‚¹ãƒšãƒ¼ã‚¹ã€ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ (/)ã€ç–‘å•府 (?)ã€ãƒãƒ³ãƒ‰è¨˜å· "
"(#) を使用ã—ãªã„ã§ãã ã•ã„。"
+#: scheduler/client.c:2450
msgid ""
"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
"enable it."
-msgstr ""
+msgstr "Web インターフェイスãŒç¾åœ¨ç„¡åйã«ãªã£ã¦ã„ã¾ã™ã€‚有効ã«ã™ã‚‹ã«ã¯ \"cupsctl WebInterface=yes\" を実行ã—ã¦ãã ã•ã„。"
+#: scheduler/ipp.c:6454
#, c-format
msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
+msgstr "which-jobs ã®å€¤ \"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“。"
+#: scheduler/ipp.c:5731
msgid "There are too many subscriptions."
msgstr "サブスクリプションãŒå¤šã™ãŽã¾ã™ã€‚"
+#: cups/localize.c:308
msgid "There is a paper jam."
-msgstr ""
+msgstr "用紙ã¥ã¾ã‚ŠãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ã€‚"
+#: backend/usb-darwin.c:379 backend/usb-darwin.c:438 backend/usb-darwin.c:505
+#: backend/usb-darwin.c:526 backend/usb-libusb.c:235 backend/usb-libusb.c:256
msgid "There was an unrecoverable USB error."
-msgstr ""
+msgstr "回復ä¸å¯èƒ½ãª USB ã®ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ã€‚"
+#: ppdc/sample.c:435
msgid "Thermal Transfer Media"
msgstr "熱転写メディア"
-msgid "Title: "
-msgstr "タイトル: "
-
+#: scheduler/ipp.c:1507
msgid "Too many active jobs."
msgstr "アクティブãªã‚¸ãƒ§ãƒ–ãŒå¤šã™ãŽã¾ã™ã€‚"
+#: scheduler/ipp.c:1401
#, c-format
msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
+msgstr "job-sheets 値ãŒå¤šã™ãŽã¾ã™ (%d > 2)。"
+#: scheduler/ipp.c:2529
#, c-format
msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
+msgstr "printer-state-reasons 値ãŒå¤šã™ãŽã¾ã™ (%d > %d)。"
+#: ppdc/sample.c:289
msgid "Transparency"
msgstr "OHP シート"
+#: ppdc/sample.c:284
msgid "Tray"
msgstr "トレイ"
+#: ppdc/sample.c:264
msgid "Tray 1"
msgstr "トレイ 1"
+#: ppdc/sample.c:265
msgid "Tray 2"
msgstr "トレイ 2"
+#: ppdc/sample.c:266
msgid "Tray 3"
msgstr "トレイ 3"
+#: ppdc/sample.c:267
msgid "Tray 4"
msgstr "トレイ 4"
+#: cups/http-support.c:1315
msgid "URI Too Long"
-msgstr "URI ãŒé•·éŽãŽã¾ã™"
+msgstr "URI ãŒé•·ã™ãŽã¾ã™"
+#: ppdc/sample.c:138
msgid "US Ledger"
msgstr "US レジャー"
+#: ppdc/sample.c:139
msgid "US Legal"
msgstr "US リーガル"
+#: ppdc/sample.c:140
msgid "US Legal Oversize"
-msgstr ""
+msgstr "US リーガル (特大)"
+#: ppdc/sample.c:141
msgid "US Letter"
msgstr "US レター"
+#: ppdc/sample.c:142
msgid "US Letter Long Edge"
-msgstr ""
+msgstr "US レター 長辺é€ã‚Š"
+#: ppdc/sample.c:143
msgid "US Letter Oversize"
-msgstr ""
+msgstr "US レター (特大)"
+#: ppdc/sample.c:144
msgid "US Letter Oversize Long Edge"
-msgstr ""
+msgstr "US レター (特大) 長辺é€ã‚Š"
+#: ppdc/sample.c:145
msgid "US Letter Small"
-msgstr ""
+msgstr "US レター (å°)"
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "USB シリアルãƒãƒ¼ãƒˆ #%d"
+#: cgi-bin/admin.c:1959 cgi-bin/admin.c:1972 cgi-bin/admin.c:1996
+msgid "Unable to access cupsd.conf file"
+msgstr "cupsd.conf ファイルã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“"
-msgid "Unable to access cupsd.conf file:"
-msgstr "cupsd.conf ファイルã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“:"
+#: cgi-bin/help.c:133
+msgid "Unable to access help file."
+msgstr "ヘルプファイルã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“。"
-msgid "Unable to add RSS subscription:"
-msgstr " RSS 購読を追加ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:526
+msgid "Unable to add RSS subscription"
+msgstr " RSS 購読を追加ã§ãã¾ã›ã‚“"
-msgid "Unable to add class:"
-msgstr "クラスを追加ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:814
+msgid "Unable to add class"
+msgstr "クラスを追加ã§ãã¾ã›ã‚“"
+#: backend/ipp.c:1635
msgid "Unable to add document to print job."
-msgstr ""
+msgstr "ドキュメントをå°åˆ·ã‚¸ãƒ§ãƒ–ã«è¿½åŠ ã§ãã¾ã›ã‚“。"
+#: scheduler/ipp.c:1548
#, c-format
msgid "Unable to add job for destination \"%s\"."
-msgstr ""
+msgstr "宛先 \"%s\"ã«ã‚¸ãƒ§ãƒ–を追加ã§ãã¾ã›ã‚“。"
-msgid "Unable to add printer:"
-msgstr "プリンターを追加ãŒã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:1059 cgi-bin/admin.c:1419
+msgid "Unable to add printer"
+msgstr "プリンターを追加ã§ãã¾ã›ã‚“"
+#: scheduler/ipp.c:1246
msgid "Unable to allocate memory for file types."
-msgstr ""
+msgstr "ファイルタイプ用ã«ãƒ¡ãƒ¢ãƒªãƒ¼ã‚’割り当ã¦ã‚‰ã‚Œã¾ã›ã‚“。"
+#: filter/pstops.c:451
msgid "Unable to allocate memory for page info"
-msgstr ""
+msgstr "ページ情報ã®ãƒ¡ãƒ¢ãƒªãƒ¼å‰²ã‚Šå½“ã¦ãŒã§ãã¾ã›ã‚“"
+#: filter/pstops.c:445
msgid "Unable to allocate memory for pages array"
-msgstr ""
+msgstr "ページアレイã®ãƒ¡ãƒ¢ãƒªãƒ¼å‰²ã‚Šå½“ã¦ãŒã§ãã¾ã›ã‚“"
-msgid "Unable to cancel RSS subscription:"
-msgstr "RSS 購読をキャンセルã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:1525
+msgid "Unable to cancel RSS subscription"
+msgstr "RSS 購読をキャンセルã§ãã¾ã›ã‚“"
+#: backend/ipp.c:1942
msgid "Unable to cancel print job."
-msgstr ""
+msgstr "プリンターを変更ã§ãã¾ã›ã‚“。"
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "printer-is-shared 属性を変更ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:2990
+msgid "Unable to change printer"
+msgstr "プリンターを変更ã§ãã¾ã›ã‚“"
-msgid "Unable to change printer:"
-msgstr "プリンターを変更ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:3906
+msgid "Unable to change printer-is-shared attribute"
+msgstr "printer-is-shared 属性を変更ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“"
-msgid "Unable to change server settings:"
-msgstr "サーãƒãƒ¼ã®è¨­å®šã‚’変更ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:1657 cgi-bin/admin.c:1799
+msgid "Unable to change server settings"
+msgstr "サーãƒãƒ¼ã®è¨­å®šã‚’変更ã§ãã¾ã›ã‚“"
+#: filter/commandtops.c:420
msgid "Unable to configure printer options."
-msgstr ""
+msgstr "プリンターオプションを設定ã§ãã¾ã›ã‚“。"
+#: cups/adminutil.c:911 cups/request.c:1016
msgid "Unable to connect to host."
-msgstr "ãƒ›ã‚¹ãƒˆã«æŽ¥ç¶šã§ãã¾ã›ã‚“"
+msgstr "ãƒ›ã‚¹ãƒˆã«æŽ¥ç¶šã§ãã¾ã›ã‚“。"
+#: backend/ipp.c:713 backend/ipp.c:1138 backend/lpd.c:787 backend/socket.c:333
+#: backend/usb-unix.c:117
msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
+msgstr "プリンターã¨äº¤ä¿¡ã§ãã¾ã›ã‚“ã€‚ã‚¯ãƒ©ã‚¹å†…ã®æ¬¡ã®ãƒ—リンターã«ã‚­ãƒ¥ãƒ¼ã—ã¾ã™ã€‚"
+#: cups/adminutil.c:726
#, c-format
msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
+msgstr "64-bit 版㮠CUPS プリンタードライãƒãƒ¼ãƒ•ァイルをコピーã§ãã¾ã›ã‚“ (%d)。"
+#: cups/adminutil.c:691
#, c-format
msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
+msgstr "64-bit 版㮠Windows プリンタードライãƒãƒ¼ã‚’コピーã§ãã¾ã›ã‚“ (%d)。"
+#: cups/adminutil.c:522
#, c-format
msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
+msgstr "複数㮠CUPS プリンタードライãƒãƒ¼ãƒ•ァイルをコピーã§ãã¾ã›ã‚“ (%d)。"
+#: scheduler/ipp.c:2649
#, c-format
msgid "Unable to copy PPD file - %s"
-msgstr ""
+msgstr "PPD ファイルをコピーã§ãã¾ã›ã‚“ - %s"
+#: scheduler/ipp.c:2704
msgid "Unable to copy PPD file."
-msgstr ""
+msgstr "PPD ファイルをコピーã§ãã¾ã›ã‚“。"
+#: cups/adminutil.c:487
#, c-format
msgid "Unable to copy Windows 2000 printer driver files (%d)."
msgstr ""
+"複数㮠Windows 2000 プリンタードライãƒãƒ¼ãƒ•ァイルをコピーã§ãã¾ã›ã‚“ (%d)。"
+#: cups/adminutil.c:610
#, c-format
msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
+msgstr "複数㮠Windows 9x プリンタードライãƒãƒ¼ãƒ•ァイルをコピーã§ãã¾ã›ã‚“ (%d)。"
+#: scheduler/ipp.c:2626
#, c-format
msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
+msgstr "インターフェイススクリプトをコピーã§ãã¾ã›ã‚“ - %s"
+#: backend/ipp.c:2034
msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
+msgstr "圧縮プリントファイルを作æˆã§ãã¾ã›ã‚“"
+#: cups/util.c:602 cups/util.c:1656
msgid "Unable to create printer-uri"
-msgstr ""
+msgstr "printer-uri を作æˆã§ãã¾ã›ã‚“。"
+#: cgi-bin/admin.c:1850 cgi-bin/admin.c:1862 scheduler/cupsfilter.c:1236
msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "テンãƒãƒ©ãƒªãƒ•ァイルを作æˆã§ãã¾ã›ã‚“:"
+msgstr "テンãƒãƒ©ãƒªãƒ¼ãƒ•ァイルを作æˆã§ãã¾ã›ã‚“"
-msgid "Unable to delete class:"
-msgstr "クラスを削除ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:2153
+msgid "Unable to delete class"
+msgstr "クラスを削除ã§ãã¾ã›ã‚“"
-msgid "Unable to delete printer:"
-msgstr "プリンターを削除ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:2238
+msgid "Unable to delete printer"
+msgstr "プリンターを削除ã§ãã¾ã›ã‚“"
-msgid "Unable to do maintenance command:"
-msgstr "メンテナンスコマンドを実行ã§ãã¾ã›ã‚“:"
+#: cgi-bin/classes.c:260 cgi-bin/printers.c:269
+msgid "Unable to do maintenance command"
+msgstr "メンテナンスコマンドを実行ã§ãã¾ã›ã‚“"
+#: cgi-bin/admin.c:1974
msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
+msgstr "1MB 以上㮠cupsd.conf ファイルã¯ç·¨é›†ã§ãã¾ã›ã‚“。"
+#: cups/http.c:4272
msgid ""
"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
+msgstr "ホストã¸ã®å®‰å…¨ãªæŽ¥ç¶šãŒç¢ºç«‹ã§ãã¾ã›ã‚“ (èªè¨¼ãƒ‘スãŒç„¡åйã§ã™)。"
+#: cups/http.c:4262
msgid ""
"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
+msgstr "ホストã¸ã®å®‰å…¨ãªæŽ¥ç¶šãŒç¢ºç«‹ã§ãã¾ã›ã‚“ (èªè¨¼ãŒã¾ã æœ‰åйã§ã¯ã‚りã¾ã›ã‚“)。"
+#: cups/http.c:4257
msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
+msgstr "ホストã¸ã®å®‰å…¨ãªæŽ¥ç¶šãŒç¢ºç«‹ã§ãã¾ã›ã‚“ (èªè¨¼ãŒæœŸé™åˆ‡ã‚Œã§ã™)。"
+#: cups/http.c:4267
msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
+msgstr "ホストã¸ã®å®‰å…¨ãªæŽ¥ç¶šãŒç¢ºç«‹ã§ãã¾ã›ã‚“ (ホストåãŒä¸€è‡´ã—ã¾ã›ã‚“)。"
+#: cups/http.c:4277
msgid ""
"Unable to establish a secure connection to host (peer dropped connection "
"before responding)."
-msgstr ""
+msgstr "ホストã¸ã®å®‰å…¨ãªæŽ¥ç¶šãŒç¢ºç«‹ã§ãã¾ã›ã‚“ (応答ãŒã‚ã‚‹å‰ã«æŽ¥ç¶šãŒåˆ‡æ–­ã•れã¾ã—ãŸ)。"
+#: cups/http.c:4252
msgid ""
"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
+msgstr "ホストã¸ã®å®‰å…¨ãªæŽ¥ç¶šãŒç¢ºç«‹ã§ãã¾ã›ã‚“ (自己署å証明書ã§ã™)。"
+#: cups/http.c:4247
msgid ""
"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
+msgstr "ホストã¸ã®å®‰å…¨ãªæŽ¥ç¶šãŒç¢ºç«‹ã§ãã¾ã›ã‚“ (信用ã§ããªã„証明書ã§ã™)。"
+#: cups/http.c:4008 cups/http.c:4304 cups/http.c:4337 cups/http.c:4354
msgid "Unable to establish a secure connection to host."
-msgstr ""
+msgstr "ホストã¸ã®å®‰å…¨ãªæŽ¥ç¶šã‚’確立ã§ãã¾ã›ã‚“。"
+#: cgi-bin/ipp-var.c:365
msgid "Unable to find destination for job"
-msgstr ""
+msgstr "ジョブã®å®›å…ˆãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
+#: cups/http-support.c:1748
msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
+msgstr "プリンターãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: backend/ipp.c:2056
msgid "Unable to generate compressed print file"
-msgstr ""
+msgstr "圧縮プリントファイルを生æˆã§ãã¾ã›ã‚“"
+#: backend/ipp.c:3009
msgid "Unable to get backend exit status."
-msgstr ""
+msgstr "ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ã®çµ‚了ステータスをå–å¾—ã§ãã¾ã›ã‚“。"
-msgid "Unable to get class list:"
-msgstr "クラスリストをå–å¾—ã§ãã¾ã›ã‚“:"
+#: cgi-bin/classes.c:450
+msgid "Unable to get class list"
+msgstr "クラスリストをå–å¾—ã§ãã¾ã›ã‚“"
-msgid "Unable to get class status:"
-msgstr "クラスã®çŠ¶æ…‹ã‚’å–å¾—ã§ãã¾ã›ã‚“:"
+#: cgi-bin/classes.c:549
+msgid "Unable to get class status"
+msgstr "クラスã®çŠ¶æ…‹ã‚’å–å¾—ã§ãã¾ã›ã‚“。"
-msgid "Unable to get list of printer drivers:"
-msgstr "プリンタードライãƒãƒ¼ã®ãƒªã‚¹ãƒˆã‚’å–å¾—ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:1320
+msgid "Unable to get list of printer drivers"
+msgstr "プリンタードライãƒãƒ¼ã®ãƒªã‚¹ãƒˆã‚’å–å¾—ã§ãã¾ã›ã‚“"
-msgid "Unable to get printer attributes:"
-msgstr "プリンター属性をå–å¾—ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:2840
+msgid "Unable to get printer attributes"
+msgstr "プリンター属性をå–å¾—ã§ãã¾ã›ã‚“"
-msgid "Unable to get printer list:"
-msgstr "プリンターリストをå–å¾—ã§ãã¾ã›ã‚“:"
+#: cgi-bin/printers.c:467
+msgid "Unable to get printer list"
+msgstr "プリンターリストをå–å¾—ã§ãã¾ã›ã‚“"
-msgid "Unable to get printer status."
-msgstr ""
+#: cgi-bin/printers.c:569
+msgid "Unable to get printer status"
+msgstr "プリンターã®çŠ¶æ…‹ã‚’å–å¾—ã§ãã¾ã›ã‚“"
-msgid "Unable to get printer status:"
-msgstr "プリンターã®çŠ¶æ…‹ã‚’å–å¾—ã§ãã¾ã›ã‚“:"
+#: backend/ipp.c:933
+msgid "Unable to get printer status."
+msgstr "プリンターã®çŠ¶æ…‹ã‚’å–å¾—ã§ãã¾ã›ã‚“。"
+#: cups/adminutil.c:565 cups/adminutil.c:769
#, c-format
msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
+msgstr "複数㮠Windows 2000 プリンタードライãƒãƒ¼ãƒ•ァイルをインストールã§ãã¾ã›ã‚“ (%d)。"
+#: cups/adminutil.c:639
#, c-format
msgid "Unable to install Windows 9x printer driver files (%d)."
msgstr ""
+"複数㮠Windows 9x プリンタードライãƒãƒ¼ãƒ•ァイルをインストールã§ãã¾ã›ã‚“ (%d)。"
+#: cgi-bin/help.c:92
+msgid "Unable to load help index."
+msgstr "ヘルプã®ç´¢å¼•を読ã¿è¾¼ã‚ã¾ã›ã‚“。"
+
+#: backend/ipp.c:642 backend/lpd.c:421 backend/socket.c:275
#, c-format
msgid "Unable to locate printer \"%s\"."
-msgstr ""
+msgstr "プリンター \"%s\" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: backend/dnssd.c:781 backend/ipp.c:324 backend/lpd.c:204
+#: backend/socket.c:171
msgid "Unable to locate printer."
-msgstr ""
+msgstr "プリンターãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
-msgid "Unable to modify class:"
-msgstr "クラスを変更ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:813
+msgid "Unable to modify class"
+msgstr "クラスを変更ã§ãã¾ã›ã‚“"
-msgid "Unable to modify printer:"
-msgstr "プリンターを変更ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:1058 cgi-bin/admin.c:1418
+msgid "Unable to modify printer"
+msgstr "プリンターを変更ã§ãã¾ã›ã‚“"
+#: cgi-bin/ipp-var.c:432 cgi-bin/ipp-var.c:521
msgid "Unable to move job"
msgstr "ジョブを移動ã§ãã¾ã›ã‚“"
+#: cgi-bin/ipp-var.c:434 cgi-bin/ipp-var.c:523
msgid "Unable to move jobs"
msgstr "複数ã®ã‚¸ãƒ§ãƒ–を移動ã§ãã¾ã›ã‚“"
+#: cgi-bin/admin.c:3186 cups/ppd.c:339
msgid "Unable to open PPD file"
msgstr "PPD ファイルを読ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã›ã‚“"
-msgid "Unable to open PPD file:"
-msgstr "PPD ファイルを読ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã›ã‚“:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
+#: backend/ipp.c:2040
msgid "Unable to open compressed print file"
-msgstr ""
+msgstr "圧縮プリントファイルを開ã‘ã¾ã›ã‚“"
+#: cgi-bin/admin.c:2608
msgid "Unable to open cupsd.conf file:"
msgstr "cupsd.conf ファイルを開ã‘ã¾ã›ã‚“:"
+#: backend/usb-unix.c:141
msgid "Unable to open device file"
-msgstr ""
+msgstr "デãƒã‚¤ã‚¹ãƒ•ァイルを開ã‘ã¾ã›ã‚“"
+#: scheduler/ipp.c:6140
#, c-format
msgid "Unable to open document #%d in job #%d."
-msgstr ""
+msgstr "ドキュメント %d (ジョブ %d) ã‚’é–‹ã‘ã¾ã›ã‚“。"
-msgid "Unable to open print file"
-msgstr ""
+#: cgi-bin/help.c:364
+msgid "Unable to open help file."
+msgstr "ヘルプファイルを読ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã›ã‚“。"
-msgid "Unable to open psglyphs"
-msgstr ""
+#: backend/ipp.c:365 backend/ipp.c:1398 backend/ipp.c:1594 backend/ipp.c:2046
+#: backend/lpd.c:488 backend/socket.c:158 backend/usb.c:237
+#: filter/gziptoany.c:71 filter/pstops.c:300
+msgid "Unable to open print file"
+msgstr "å°åˆ·ãƒ•ァイルを開ã‘ã¾ã›ã‚“"
+#: filter/rastertoepson.c:998 filter/rastertohp.c:724
+#: filter/rastertolabel.c:1147
msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
+msgstr "ラスターファイルを開ã‘ã¾ã›ã‚“"
-msgid "Unable to print test page:"
-msgstr "テストページをå°åˆ·ã§ãã¾ã›ã‚“:"
-
-msgid "Unable to read print data"
-msgstr ""
+#: cgi-bin/ipp-var.c:795
+msgid "Unable to print test page"
+msgstr "テストページをå°åˆ·ã§ãã¾ã›ã‚“"
+#: backend/runloop.c:96 backend/runloop.c:325 backend/usb-darwin.c:613
+#: backend/usb-darwin.c:657 backend/usb-libusb.c:343 backend/usb-libusb.c:378
msgid "Unable to read print data."
-msgstr ""
+msgstr "プリントデータを読ã¿è¾¼ã‚ã¾ã›ã‚“。"
+
+#: cups/dest.c:3402
+msgid "Unable to resolve printer URI."
+msgstr "プリンター URI を解決ã§ãã¾ã›ã‚“。"
+#: cups/adminutil.c:2088
#, c-format
msgid "Unable to run \"%s\": %s"
-msgstr ""
+msgstr "\"%s\" を実行ã§ãã¾ã›ã‚“: %s"
+#: filter/pstops.c:563
msgid "Unable to see in file"
-msgstr ""
+msgstr "ファイルを読ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã›ã‚“"
+#: cgi-bin/ipp-var.c:598 cgi-bin/ipp-var.c:618
msgid "Unable to send command to printer driver"
-msgstr ""
+msgstr "プリンタードライãƒãƒ¼ã«ã‚³ãƒžãƒ³ãƒ‰ã‚’é€ä¿¡ã§ãã¾ã›ã‚“"
+#: backend/usb-darwin.c:735 backend/usb-libusb.c:454
msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
+msgstr "プリンターã«ãƒ‡ãƒ¼ã‚¿ã‚’é€ä¿¡ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。"
+#: cups/adminutil.c:821
#, c-format
msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
+msgstr "Windows プリンタードライãƒãƒ¼ã‚’設定ã§ãã¾ã›ã‚“ (%d)。"
-msgid "Unable to set options:"
-msgstr "オプションを設定ã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:3807
+msgid "Unable to set options"
+msgstr "オプションを設定ã§ãã¾ã›ã‚“"
-msgid "Unable to set server default:"
-msgstr "サーãƒãƒ¼ã‚’デフォルトã«è¨­å®šã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:3077
+msgid "Unable to set server default"
+msgstr "サーãƒãƒ¼ã‚’デフォルトã«è¨­å®šã§ãã¾ã›ã‚“"
+#: backend/ipp.c:2868 backend/ipp.c:2945 backend/ipp.c:2953
msgid "Unable to start backend process."
-msgstr ""
+msgstr "ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ã®ãƒ—ロセスを起動ã§ãã¾ã›ã‚“。"
-msgid "Unable to upload cupsd.conf file:"
-msgstr "cupsd.conf ファイルをアップロードã§ãã¾ã›ã‚“:"
+#: cgi-bin/admin.c:1912
+msgid "Unable to upload cupsd.conf file"
+msgstr "cupsd.conf ファイルをアップロードã§ãã¾ã›ã‚“"
+#: backend/usb-darwin.c:1985 backend/usb-darwin.c:2009
msgid "Unable to use legacy USB class driver."
-msgstr ""
+msgstr "å¤ã„タイプ㮠USB クラスドライãƒãƒ¼ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。"
+#: backend/runloop.c:125 backend/runloop.c:380
msgid "Unable to write print data"
-msgstr ""
+msgstr "プリントデータを書ãè¾¼ã‚ã¾ã›ã‚“"
+#: filter/gziptoany.c:90
#, c-format
msgid "Unable to write uncompressed print data: %s"
-msgstr ""
+msgstr "éžåœ§ç¸®ã®ãƒ—リントデータを書ãè¾¼ã‚ã¾ã›ã‚“: %s"
+#: cups/http-support.c:1303
msgid "Unauthorized"
-msgstr "ä¸è¨±å¯"
+msgstr "未許å¯"
+#: cgi-bin/admin.c:3503
msgid "Units"
msgstr "ユニット"
+#: cups/http-support.c:1343 cups/ppd.c:366
msgid "Unknown"
msgstr "未知"
+#: filter/pstops.c:2213
#, c-format
msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
+msgstr "\"%s\" (オプション \"%s\" 用) ã¯æœªçŸ¥ã®è¨­å®šã§ã™ã€‚"
+#: backend/ipp.c:507
#, c-format
msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯æœªçŸ¥ã®æš—å·ã‚ªãƒ—ション値ã§ã™ã€‚"
+#: backend/lpd.c:350
#, c-format
msgid "Unknown file order: \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯æœªçŸ¥ã®ãƒ•ァイルオーダーã§ã™ã€‚"
+#: backend/lpd.c:321
#, c-format
msgid "Unknown format character: \"%c\"."
-msgstr ""
+msgstr "\"%c\" ã¯æœªçŸ¥ã®æ›¸å¼æ–‡å­—ã§ã™ã€‚"
+
+#: cups/dest-options.c:770
+msgid "Unknown media size name."
+msgstr "未知ã®ãƒ¡ãƒ‡ã‚£ã‚¢ã‚µã‚¤ã‚ºåç§°ã§ã™ã€‚"
+#: backend/ipp.c:554
#, c-format
msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
+msgstr "\"%s\" (値 \"%s\") ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ã€‚"
+#: filter/pstops.c:2196
#, c-format
msgid "Unknown option \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ã€‚"
+#: backend/lpd.c:336
#, c-format
msgid "Unknown print mode: \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯æœªçŸ¥ã®ãƒ—リントモードã§ã™ã€‚"
+#: scheduler/ipp.c:10496
#, c-format
msgid "Unknown printer-error-policy \"%s\"."
msgstr "\"%s\" ã¯æœªçŸ¥ã® printer-error-policy ã§ã™ã€‚"
+#: scheduler/ipp.c:10479
#, c-format
msgid "Unknown printer-op-policy \"%s\"."
msgstr "\"%s\" ã¯æœªçŸ¥ã® printer-op-policy ã§ã™ã€‚"
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
+#: cups/http-addrlist.c:710
+msgid "Unknown service name."
+msgstr "未知ã®ã‚µãƒ¼ãƒ“スåã§ã™ã€‚"
+#: backend/ipp.c:526
#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
+msgid "Unknown version option value: \"%s\"."
+msgstr "\"%s\" ã¯æœªçŸ¥ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚ªãƒ—ション値ã§ã™ã€‚"
+#: scheduler/ipp.c:402
#, c-format
msgid "Unsupported character set \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„文字セットã§ã™ã€‚"
+#: scheduler/ipp.c:8171 scheduler/ipp.c:9401 scheduler/ipp.c:10950
#, c-format
msgid "Unsupported compression \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„圧縮形å¼ã§ã™ã€‚"
+#: scheduler/ipp.c:8305 scheduler/ipp.c:9551 scheduler/ipp.c:10979
#, c-format
msgid "Unsupported document-format \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„文書形å¼ã§ã™ã€‚"
+#: scheduler/ipp.c:9534
#, c-format
msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
+msgstr "\"%s/%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„文書形å¼ã§ã™ã€‚"
+#: scheduler/ipp.c:1367
#, c-format
msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
+msgstr "\"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„å½¢å¼ã§ã™ã€‚"
+#: scheduler/ipp.c:1465
msgid "Unsupported margins."
-msgstr ""
+msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„マージンã§ã™ã€‚"
+#: cups/pwg-media.c:529
msgid "Unsupported media value."
-msgstr ""
+msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„メディアã®å€¤ã§ã™ã€‚"
+#: filter/pstops.c:2478
#, c-format
msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
+msgstr "%d ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„ number-up 値ã§ã™ã€‚number-up=1 を使用ã—ã¾ã™ã€‚"
+#: filter/pstops.c:2512
#, c-format
msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
+msgstr "%s ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„ number-up-layout 値ã§ã™ã€‚number-up-layout=lrtb を使用ã—ã¾ã™ã€‚"
+#: filter/pstops.c:2563
#, c-format
msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
+msgstr "%s ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„ page-border 値ã§ã™ã€‚page-border=none を使用ã—ã¾ã™ã€‚"
+#: filter/rastertopwg.c:147 filter/rastertopwg.c:155 filter/rastertopwg.c:164
msgid "Unsupported raster data."
-msgstr ""
+msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„ラスターデータã§ã™ã€‚"
+#: cups/snmp.c:1112
msgid "Unsupported value type"
msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„åž‹ã®å€¤ã§ã™"
+#: cups/http-support.c:1318
msgid "Upgrade Required"
msgstr "アップグレードãŒå¿…è¦ã§ã™"
+#: systemv/lpadmin.c:668
msgid ""
"Usage:\n"
"\n"
@@ -4456,4409 +5705,1269 @@ msgid ""
" [-P ppd-file] [-o name=value]\n"
" [-u allow:user,user] [-u deny:user,user]"
msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
+"ä½¿ã„æ–¹:\n"
+"\n"
+" lpadmin [-h サーãƒãƒ¼] -d 宛先\n"
+" lpadmin [-h サーãƒãƒ¼] -x 宛先\n"
+" lpadmin [-h サーãƒãƒ¼] -p プリンター [-c 追加クラス] [-i インターフェイス]\n"
+" [-m モデル] [-r 削除クラス] [-v デãƒã‚¤ã‚¹]\n"
+" [-D 宛先] [-P PPD ファイル] [-o åå‰=値]\n"
+" [-u allow:ユーザー,ユーザー] [-u deny:ユーザー,ユーザー]"
+
+#: backend/dnssd.c:241 backend/ipp.c:313 backend/lpd.c:191
+#: backend/socket.c:135 backend/usb.c:183 filter/commandtops.c:74
+#: filter/gziptoany.c:50 filter/pstops.c:264 monitor/bcp.c:62
+#: monitor/tbcp.c:61
#, c-format
msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: %s ジョブID ユーザー タイトル コピー数 オプション [ファイル]"
+#: systemv/cupsaddsmb.c:281
msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
+msgstr "Usage: cupsaddsmb [オプション] プリンター1 ... プリンターN"
+#: systemv/cupsctl.c:200
msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
+msgstr "Usage: cupsctl [オプション] [パラメータ=値 ... パラメータN=値N]"
+#: scheduler/main.c:2017
msgid "Usage: cupsd [options]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: cupsd [オプション]"
+#: scheduler/cupsfilter.c:1429
msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: cupsfilter [オプション] ファイルå"
+#: systemv/cupstestdsc.c:425
msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: cupstestdsc [オプション] filename.ps [... filename.ps]"
+#: systemv/cupstestppd.c:3793
msgid ""
"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: cupstestppd [オプション] ファイルå1.ppd[.gz] [... ファイルåN.ppd[.gz]]"
+#: test/ipptool.c:4401
msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: ipptool [オプション] URI ファイルå [ ... ファイルåN ]"
+#: systemv/lpmove.c:125
msgid "Usage: lpmove job/src dest"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: lpmove ジョブ/ソース 宛先"
+#: systemv/lpoptions.c:553
msgid ""
"Usage: lpoptions [-h server] [-E] -d printer\n"
" lpoptions [-h server] [-E] [-p printer] -l\n"
" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
" lpoptions [-h server] [-E] -x printer"
msgstr ""
+"ä½¿ã„æ–¹: lpoptions [-h サーãƒãƒ¼] [-E] -d プリンター\n"
+"   lpoptions [-h サーãƒãƒ¼] [-E] [-p プリンター] -l\n"
+" lpoptions [-h サーãƒãƒ¼] [-E] -p プリンター -o オプション[=値] ...\n"
+" lpoptions [-h サーãƒãƒ¼] [-E] -x プリンター"
+#: systemv/lppasswd.c:476
msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: lppasswd [-g グループå]"
+#: systemv/lppasswd.c:479
msgid ""
"Usage: lppasswd [-g groupname] [username]\n"
" lppasswd [-g groupname] -a [username]\n"
" lppasswd [-g groupname] -x [username]"
msgstr ""
+"ä½¿ã„æ–¹: lppasswd [-g グループå] [ユーザーå]\n"
+" lppasswd [-g グループå] -a [ユーザーå]\n"
+" lppasswd [-g グループå] -x [ユーザーå]"
+#: berkeley/lpq.c:670
msgid ""
"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: lpq [-P 宛先] [-U ユーザーå] [-h ホストå[:ãƒãƒ¼ãƒˆ]] [-l] [+é–“éš”]"
+#: ppdc/ppdc.cxx:435
msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: ppdc [オプション] ファイルå.drv [ ... ファイルåN.drv ]"
+#: ppdc/ppdhtml.cxx:172
msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: ppdhtml [オプション] ファイルå.drv >ファイルå.html"
+#: ppdc/ppdi.cxx:128
msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: ppdi [オプション] ファイルå.ppd [ ... ファイルåN.ppd ]"
+#: ppdc/ppdmerge.cxx:367
msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: ppdmerge [オプション] ファイルå.ppd [ ... ファイルåN.ppd ]"
+#: ppdc/ppdpo.cxx:252
msgid ""
"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: ppdpo [オプション] -o ファイルå.po ファイルå.drv [ ... ファイルåN.drv ]"
+#: backend/snmp.c:218
msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
+msgstr "ä½¿ã„æ–¹: snmp [ホストã¾ãŸã¯IPアドレス]"
+#: cups/snmp.c:1064
msgid "Value uses indefinite length"
msgstr "値ã¯ä¸å®šé•·ã§ã™"
+#: cups/snmp.c:1049
msgid "VarBind uses indefinite length"
msgstr "VarBind ã¯ä¸å®šé•·ã§ã™"
+#: cups/snmp.c:999
msgid "Version uses indefinite length"
msgstr "Version ã¯ä¸å®šé•·ã§ã™"
+#: backend/ipp.c:1675
msgid "Waiting for job to complete."
-msgstr ""
+msgstr "ジョブãŒå®Œäº†ã™ã‚‹ã®ã‚’å¾…ã£ã¦ã„ã¾ã™ã€‚"
+#: backend/usb-darwin.c:457 backend/usb-libusb.c:193
msgid "Waiting for printer to become available."
-msgstr ""
+msgstr "プリンターãŒä½¿ç”¨å¯èƒ½ã«ãªã‚‹ã®ã‚’å¾…ã£ã¦ã„ã¾ã™ã€‚"
+#: backend/socket.c:444
msgid "Waiting for printer to finish."
-msgstr ""
+msgstr "プリンターãŒçµ‚了ã™ã‚‹ã®ã‚’å¾…ã£ã¦ã„ã¾ã™ã€‚"
+#: cups/adminutil.c:793
msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
+msgstr "警告ã€Windows 2000 プリンタードライãƒãƒ¼ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“。"
+#: cups/http-support.c:1339
msgid "Web Interface is Disabled"
-msgstr ""
+msgstr "Web インターフェイスãŒç„¡åйã«ãªã£ã¦ã„ã¾ã™"
+#: cups/ppd.c:1947
msgid "Yes"
msgstr "ã¯ã„"
+#: scheduler/client.c:2437
#, c-format
msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
+"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://"
+"%s:%d%s</A>."
msgstr ""
"ã“ã®ãƒšãƒ¼ã‚¸ã«ã¯ URL <A HREF=\"https://%s:%d%s\">https://%s:%d%s</A> を使ã£ã¦ã‚¢"
"クセスã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lppasswd.c:254
msgid ""
"Your password must be at least 6 characters long, cannot contain your "
"username, and must contain at least one letter and number."
-msgstr ""
+msgstr "パスワードã¯å°‘ãªãã¨ã‚‚ 6 文字以上ã§ã€ã‚ãªãŸã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åã‚’å«ã‚“ã§ã¯ãªã‚‰ãšã€å°‘ãªãã¨ã‚‚ 1 ã¤ã®è‹±å­—ãŠã‚ˆã³æ•°å€¤ã‚’å«ã‚“ã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“。"
+#: ppdc/sample.c:439
msgid "ZPL Label Printer"
-msgstr "ZPL ラベル・プリンター"
+msgstr "ZPL ラベルプリンター"
+#: ppdc/sample.c:362
msgid "Zebra"
msgstr "ゼブラ"
+#: cups/notify.c:102
msgid "aborted"
msgstr "åœæ­¢"
+#: cups/notify.c:99
msgid "canceled"
msgstr "キャンセル"
+#: cups/notify.c:105
msgid "completed"
msgstr "完了"
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
+#: scheduler/ipp.c:6012
msgid "cups-deviced failed to execute."
msgstr "cups-deviced ã®å®Ÿè¡Œã«å¤±æ•—ã—ã¾ã—ãŸã€‚"
+#: scheduler/ipp.c:6842 scheduler/ipp.c:7091
msgid "cups-driverd failed to execute."
msgstr "cups-driverd ã®å®Ÿè¡Œã«å¤±æ•—ã—ã¾ã—ãŸã€‚"
+#: systemv/cupsaddsmb.c:233
#, c-format
msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
+msgstr "cupsaddsmb: プリンター \"%s\" ã® PPD ファイルãŒã‚りã¾ã›ã‚“ - %s"
+#: systemv/cupsctl.c:141
msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
+msgstr "cupsctl: Listen ã‚ã‚‹ã„㯠Port を直接設定ã§ãã¾ã›ã‚“。"
+#: systemv/cupsctl.c:152
#, c-format
msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
+msgstr "cupsctl: サーãƒãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“: %s"
+#: systemv/cupsctl.c:195
#, c-format
msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
+msgstr "cupsctl: \"%s\" ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ã€‚"
+#: systemv/cupsctl.c:197
#, c-format
msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
+msgstr "cupsctl: \"-%c\"ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ã€‚"
+#: scheduler/main.c:189
msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
+msgstr "cupsd: \"-c\" オプションã®ã‚ã¨ã«ã¯è¨­å®šãƒ•ァイルåãŒå¿…è¦ã§ã™ã€‚"
+#: scheduler/main.c:221 scheduler/main.c:228
msgid "cupsd: Unable to get current directory."
-msgstr ""
+msgstr "cupsd: カレントディレクトリーをå–å¾—ã§ãã¾ã›ã‚“。"
+#: scheduler/main.c:295
#, c-format
msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
+msgstr "cupsd: \"%s\" ã¯æœªçŸ¥ã®å¼•æ•°ã§ã™ - åœæ­¢ã—ã¾ã™ã€‚"
+#: scheduler/main.c:288
#, c-format
msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
+msgstr "cupsd: \"%c\" ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ - åœæ­¢ã—ã¾ã™ã€‚"
+#: scheduler/main.c:255
msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
+msgstr "cupsd: launchd(8) サãƒãƒ¼ãƒˆãŒã‚³ãƒ³ãƒ‘イルã•れã¦ã„ãªã„ã®ã§ã€é€šå¸¸ãƒ¢ãƒ¼ãƒ‰ã§å‹•作ã—ã¾ã™ã€‚"
+#: scheduler/cupsfilter.c:1209
#, c-format
msgid "cupsfilter: Invalid document number %d."
-msgstr ""
+msgstr "cupsfilter: 䏿­£ãªæ–‡æ›¸ç•ªå· %d ã§ã™ã€‚"
+#: scheduler/cupsfilter.c:1203
#, c-format
msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
+msgstr "cupsfilter: 䏿­£ãªã‚¸ãƒ§ãƒ–ID %d ã§ã™ã€‚"
+#: scheduler/cupsfilter.c:358
msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
+msgstr "cupsfilter: 1 ã¤ã®ãƒ•ァイルåã®ã¿ã‚’指定ã§ãã¾ã™ã€‚"
+#: scheduler/cupsfilter.c:1251
#, c-format
msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
+msgstr "cupsfilter: ジョブ・ファイルをå–å¾—ã§ãã¾ã›ã‚“ - %s"
+#: systemv/cupstestppd.c:261
msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
+msgstr "cupstestppd: -q オプション㯠-v オプションã¨ä¸¡ç«‹ã§ãã¾ã›ã‚“。"
+#: systemv/cupstestppd.c:277
msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
+msgstr "cupstestppd: -v オプション㯠-q オプションã¨ä¸¡ç«‹ã§ãã¾ã›ã‚“。"
+#: systemv/lpstat.c:1231 systemv/lpstat.c:1234 systemv/lpstat.c:1237
#, c-format
msgid "device for %s/%s: %s"
-msgstr ""
+msgstr "%s/%s ã®ãƒ‡ãƒã‚¤ã‚¹: %s"
+#: systemv/lpstat.c:1218 systemv/lpstat.c:1221 systemv/lpstat.c:1224
#, c-format
msgid "device for %s: %s"
-msgstr ""
+msgstr "%s ã®ãƒ‡ãƒã‚¤ã‚¹: %s"
+#: cups/snmp.c:1036
msgid "error-index uses indefinite length"
-msgstr "エラー・インデックスã¯ä¸å®šé•·ã§ã™"
+msgstr "error-index ã¯ä¸å®šé•·ã§ã™"
+#: cups/snmp.c:1028
msgid "error-status uses indefinite length"
-msgstr "エラー・ステータスã¯ä¸å®šé•·ã§ã™"
+msgstr "error-status ã¯ä¸å®šé•·ã§ã™"
+#: cups/notify.c:90
msgid "held"
-msgstr "ホールド"
+msgstr "ä¿ç•™"
+#: berkeley/lpc.c:209
msgid "help\t\tGet help on commands."
-msgstr ""
+msgstr "help\t\tコマンドã®ãƒ˜ãƒ«ãƒ—ã‚’å–得。"
+#: cups/notify.c:131
msgid "idle"
msgstr "待機中"
+#: test/ipptool.c:373 test/ipptool.c:515 test/ipptool.c:539
msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
+msgstr "ipptool: \"-i\" 㨠\"-n\" 㯠\"-X\" ã¨çµ„ã¿åˆã‚ã›ã‚‰ã‚Œã¾ã›ã‚“。"
+#: test/ipptool.c:597
#, c-format
msgid "ipptool: Bad URI - %s."
-msgstr ""
+msgstr "ipptool: 䏿­£ãª URI ã§ã™ - %s。"
+#: test/ipptool.c:362
#, c-format
msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
+msgstr "ipptool: \"-V\" オプションã«ä¸æ­£ãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ %s ãŒæŒ‡å®šã•れã¾ã—ãŸã€‚"
+#: test/ipptool.c:508
msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
+msgstr "ipptool: \"-i\" ã«ä¸æ­£ãªç§’æ•°ãŒæŒ‡å®šã•れã¾ã—ãŸã€‚"
+#: test/ipptool.c:578
msgid "ipptool: May only specify a single URI."
-msgstr ""
+msgstr "ipptool: URI 㯠1 ã¤ã ã‘指定ã§ãã¾ã™ã€‚"
+#: test/ipptool.c:531
msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
+msgstr "ipptool: \"-n\" ã«å›žæ•°ã®æŒ‡å®šãŒã‚りã¾ã›ã‚“。"
+#: test/ipptool.c:408
msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
+msgstr "ipptool: \"-f\" ã«ãƒ•ァイルåã®æŒ‡å®šãŒã‚りã¾ã›ã‚“。"
+#: test/ipptool.c:389
msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
+msgstr "ipptool: \"-d\" ã« åå‰=値 ã®æŒ‡å®šãŒã‚りã¾ã›ã‚“。"
+#: test/ipptool.c:498
msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
+msgstr "ipptool: \"-i\" ã«ç§’æ•°ã®æŒ‡å®šãŒã‚りã¾ã›ã‚“。"
+#: test/ipptool.c:332
msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
+msgstr "ipptool: \"-T\" ã«ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã®æŒ‡å®šãŒã‚りã¾ã›ã‚“。"
+#: test/ipptool.c:345
msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
+msgstr "ipptool: \"-V\" ã«ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®æŒ‡å®šãŒã‚りã¾ã›ã‚“。"
+#: test/ipptool.c:624
msgid "ipptool: URI required before test file."
-msgstr ""
+msgstr "ipptool: テストファイルã®å‰ã« URI ã®æŒ‡å®šãŒå¿…è¦ã§ã™ã€‚"
+#: test/ipptool.c:558
#, c-format
msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
+msgstr "ipptool: \"-%c\"ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ã€‚"
+#: scheduler/ipp.c:7838
msgid "job-printer-uri attribute missing."
-msgstr ""
+msgstr "job-printer-uri 属性ãŒã‚りã¾ã›ã‚“。"
+#: systemv/lpadmin.c:131 systemv/lpadmin.c:375
msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
+msgstr "lpadmin: クラスåã¯è¡¨ç¤ºå¯èƒ½æ–‡å­—ã®ã¿ã§æ§‹æˆã•れãªã‘れã°ãªã‚Šã¾ã›ã‚“。"
+#: systemv/lpadmin.c:614
msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
+msgstr "lpadmin: \"-P\" オプションã®ã‚ã¨ã«ã¯ PPD ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:457
msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
+msgstr "lpadmin: \"-u\" オプションã®ã‚ã¨ã«ã¯ allow/deny:ユーザーリスト ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:364
msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
+msgstr "lpadmin: \"-r\" オプションã®ã‚ã¨ã«ã¯ã‚¯ãƒ©ã‚¹åãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:120
msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
+msgstr "lpadmin: \"-c\" オプションã®ã‚ã¨ã«ã¯ã‚¯ãƒ©ã‚¹åãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:558
msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
+msgstr "lpadmin: \"-D\" オプションã®ã‚ã¨ã«ã¯èª¬æ˜ŽãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:491
msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
+msgstr "lpadmin: \"-v\" オプションã®ã‚ã¨ã«ã¯ãƒ‡ãƒã‚¤ã‚¹ URI ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:574
msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
+msgstr "lpadmin: \"-I\" オプションã®ã‚ã¨ã«ã¯ãƒ•ァイル形å¼ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:202
msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
+msgstr "lpadmin: \"-h\" オプションã®ã‚ã¨ã«ã¯ãƒ›ã‚¹ãƒˆåãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:221
msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
+msgstr "lpadmin: \"-i\" オプションã®ã‚ã¨ã«ã¯ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ェイスåãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:594
msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
+msgstr "lpadmin: \"-L\" オプションã®ã‚ã¨ã«ã¯å ´æ‰€ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:274
msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
+msgstr "lpadmin: \"-m\" オプションã®ã‚ã¨ã«ã¯ãƒ¢ãƒ‡ãƒ«åãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:417
msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
+msgstr "lpadmin: \"-R\" オプションã®ã‚ã¨ã«ã¯åå‰ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:294
msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
+msgstr "lpadmin: \"-o\" オプションã®ã‚ã¨ã«ã¯ 変数å=値 ãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:313
msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
+msgstr "lpadmin: \"-p\" オプションã®ã‚ã¨ã«ã¯ãƒ—リンターåãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:164
msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
+msgstr "lpadmin: \"-d\" オプションã®ã‚ã¨ã«ã¯ãƒ—リンターåãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:525
msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
+msgstr "lpadmin: \"-x\" オプションã®ã‚ã¨ã«ã¯ãƒ—リンターåã¾ãŸã¯ã‚¯ãƒ©ã‚¹åãŒå¿…è¦ã§ã™ã€‚"
+#: systemv/lpadmin.c:975
msgid "lpadmin: No member names were seen."
-msgstr ""
+msgstr "lpadmin: メンãƒãƒ¼åãŒè¦‹å½“ãŸã‚Šã¾ã›ã‚“。"
+#: systemv/lpadmin.c:762
#, c-format
msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
+msgstr "lpadmin: プリンター %s ã¯ã™ã§ã«ã‚¯ãƒ©ã‚¹ %s ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã™ã€‚"
+#: systemv/lpadmin.c:989
#, c-format
msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
+msgstr "lpadmin: プリンター %s ã¯ã‚¯ãƒ©ã‚¹ %s ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚りã¾ã›ã‚“。"
+#: systemv/lpadmin.c:175 systemv/lpadmin.c:324 systemv/lpadmin.c:536
msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
+msgstr "lpadmin: プリンターåã«ã¯è¡¨ç¤ºå¯èƒ½æ–‡å­—ã ã‘ãŒä½¿ç”¨ã§ãã¾ã™ã€‚"
+#: systemv/lpadmin.c:105
msgid ""
"lpadmin: Unable to add a printer to the class:\n"
" You must specify a printer name first."
msgstr ""
+"lpadmin: クラスã«ãƒ—リンターを追加ã§ãã¾ã›ã‚“:\n"
+" å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpadmin.c:96 systemv/lpadmin.c:149 systemv/lpadmin.c:253
+#: systemv/lpadmin.c:339 systemv/lpadmin.c:393 systemv/lpadmin.c:510
+#: systemv/lpadmin.c:647
#, c-format
msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
+msgstr "lpadmin: サーãƒãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“: %s"
+#: systemv/lpadmin.c:1329
msgid "lpadmin: Unable to create temporary file"
-msgstr ""
+msgstr "lpadmin: テンãƒãƒ©ãƒªãƒ¼ãƒ•ァイルを作æˆã§ãã¾ã›ã‚“"
+#: systemv/lpadmin.c:402
msgid ""
"lpadmin: Unable to delete option:\n"
" You must specify a printer name first."
msgstr ""
+"lpadmin: プリンター・オプションを削除ã§ãã¾ã›ã‚“:\n"
+" å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpadmin.c:1339
#, c-format
msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
+msgstr "lpadmin: PPD ファイル \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“ - %s"
+#: systemv/lpadmin.c:348
msgid ""
"lpadmin: Unable to remove a printer from the class:\n"
" You must specify a printer name first."
msgstr ""
+"lpadmin: クラスã‹ã‚‰ãƒ—リンターを削除ã§ãã¾ã›ã‚“:\n"
+" å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpadmin.c:656
msgid ""
"lpadmin: Unable to set the printer options:\n"
" You must specify a printer name first."
msgstr ""
+"lpadmin: プリンター・オプションを設定ã§ãã¾ã›ã‚“:\n"
+" å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpadmin.c:474
#, c-format
msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
+msgstr "lpadmin:\"%s\" ã¯æœªçŸ¥ã® allow/deny オプションã§ã™ã€‚"
+#: systemv/lpadmin.c:629
#, c-format
msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
+msgstr "lpadmin: \"%s\" ã¯æœªçŸ¥ã®å¼•æ•°ã§ã™ã€‚"
+#: systemv/lpadmin.c:624
#, c-format
msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
+msgstr "lpadmin: \"%c\" ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ã€‚"
+#: systemv/lpadmin.c:580
msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
+msgstr "lpadmin: 警告 - コンテンツタイプリストã¯ç„¡è¦–ã•れã¾ã™ã€‚"
+#: berkeley/lpc.c:76 berkeley/lpc.c:104 berkeley/lpc.c:140
msgid "lpc> "
msgstr "lpc> "
+#: systemv/lpinfo.c:137
msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
+msgstr "lpinfo: \"--device-id\" ã®ã‚ã¨ã«ã¯ã€1284 デãƒã‚¤ã‚¹ ID を指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpinfo.c:190
msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
+msgstr "lpinfo: \"--language\" ã®ã‚ã¨ã«ã¯ã€è¨€èªžã‚’指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpinfo.c:207
msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
+msgstr "lpinfo: \"--make-and-model\" ã®å¾Œã«ã¯ã€ãƒ¡ãƒ¼ã‚«ãƒ¼ã¨ãƒ¢ãƒ‡ãƒ«ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpinfo.c:224
msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
+msgstr "lpinfo: \"--product\" ã®ã‚ã¨ã«ã¯ã€è£½å“åを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpinfo.c:155
msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
+msgstr "lpinfo: \"--exclude-schemes\" ã®ã‚ã¨ã«ã¯ã€ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒªã‚¹ãƒˆã‚’指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpinfo.c:173
msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
+msgstr "lpinfo: \"--include-schemes\" ã®ã‚ã¨ã«ã¯ã€ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒªã‚¹ãƒˆã‚’指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpinfo.c:241
msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
+msgstr "lpinfo: \"--timeout\" ã®ã‚ã¨ã«ã¯ã€ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆå€¤ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"
+#: systemv/lpinfo.c:265
#, c-format
msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
+msgstr "lpinfo: 未知ã®å¼•æ•° \"%s\"。"
+#: systemv/lpinfo.c:259
#, c-format
msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
+msgstr "lpinfo: 未知ã®ã‚ªãƒ—ション \"%c\"。"
+#: systemv/lpinfo.c:252
#, c-format
msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
+msgstr "lpinfo: 未知ã®ã‚ªãƒ—ション \"%s\"。"
+#: systemv/lpmove.c:133
#, c-format
msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
+msgstr "lpmove: サーãƒãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“: %s"
+#: systemv/lpmove.c:119
#, c-format
msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
+msgstr "lpmove: 未知ã®å¼•æ•° \"%s\"。"
+#: systemv/lpmove.c:97
#, c-format
msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
+msgstr "lpmove: 未知ã®ã‚ªãƒ—ション \"%c\"。"
+#: systemv/lpoptions.c:150 systemv/lpoptions.c:168 systemv/lpoptions.c:244
msgid "lpoptions: No printers."
-msgstr ""
+msgstr "lpoptions: プリンターãŒã‚りã¾ã›ã‚“。"
+#: systemv/lpoptions.c:219
#, c-format
msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
+msgstr "lpoptions: プリンターã¾ãŸã¯ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’追加ã§ãã¾ã›ã‚“: %s。"
+#: systemv/lpoptions.c:521
#, c-format
msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
+msgstr "lpoptions: %s ã® PPD ファイルをå–å¾—ã§ãã¾ã›ã‚“: %s"
+#: systemv/lpoptions.c:529
#, c-format
msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
+msgstr "lpoptions: %s ã® PPD ファイルを開ã‘ã¾ã›ã‚“。"
+#: systemv/lpoptions.c:99
msgid "lpoptions: Unknown printer or class."
-msgstr ""
+msgstr "lpoptions: 未知ã®ãƒ—リンターã¾ãŸã¯ã‚¯ãƒ©ã‚¹ã§ã™ã€‚"
+#: systemv/lppasswd.c:173
msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
+msgstr "lppasswd: root ã ã‘ãŒãƒ‘スワードã®è¿½åŠ ã¨å‰Šé™¤ã‚’行ãˆã¾ã™ã€‚"
+#: systemv/lppasswd.c:302
msgid "lppasswd: Password file busy."
-msgstr ""
+msgstr "lppasswd: パスワードファイルãŒãƒ“ジー状態ã§ã™ã€‚"
+#: systemv/lppasswd.c:431
msgid "lppasswd: Password file not updated."
-msgstr ""
+msgstr "lppasswd: ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ãƒ•ã‚¡ã‚¤ãƒ«ã¯æ›´æ–°ã•れã¾ã›ã‚“。"
+#: systemv/lppasswd.c:398
msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
+msgstr "lppasswd: 残念ãªãŒã‚‰ã€ãƒ‘スワードãŒãƒžãƒƒãƒã—ã¾ã›ã‚“。"
+#: systemv/lppasswd.c:253
msgid "lppasswd: Sorry, password rejected."
-msgstr ""
+msgstr "lppasswd: 残念ãªãŒã‚‰ã€ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ã¯æ‹’å¦ã•れã¾ã—ãŸã€‚"
+#: systemv/lppasswd.c:230
msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
+msgstr "lppasswd: 残念ãªãŒã‚‰ã€ãƒ‘スワードãŒãƒžãƒƒãƒã—ã¾ã›ã‚“。"
+#: systemv/lppasswd.c:199 systemv/lppasswd.c:218
#, c-format
msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
+msgstr "lppasswd: パスワード文字列をコピーã§ãã¾ã›ã‚“: %s"
+#: systemv/lppasswd.c:304 systemv/lppasswd.c:312 systemv/lppasswd.c:329
#, c-format
msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
+msgstr "lppasswd: パスワードファイルを開ã‘ã¾ã›ã‚“: %s"
+#: systemv/lppasswd.c:364 systemv/lppasswd.c:377 systemv/lppasswd.c:408
#, c-format
msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
+msgstr "lppasswd: ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ãƒ•ã‚¡ã‚¤ãƒ«ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“: %s"
+#: systemv/lppasswd.c:446
#, c-format
msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
+msgstr "lppasswd: å¤ã„パスワードファイルã®ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã«å¤±æ•—ã—ã¾ã—ãŸ: %s"
+#: systemv/lppasswd.c:458
#, c-format
msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
+msgstr "lppasswd: パスワードファイルã®åå‰ã®å¤‰æ›´ã«å¤±æ•—ã—ã¾ã—ãŸ: %s"
+#: systemv/lppasswd.c:389
#, c-format
msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
+msgstr "lppasswd: ユーザー \"%s\" ãŠã‚ˆã³ã‚°ãƒ«ãƒ¼ãƒ— \"%s\" ã¯å­˜åœ¨ã—ã¾ã›ã‚“。"
+#: systemv/lpstat.c:1039
#, c-format
msgid ""
"lpstat: error - %s environment variable names non-existent destination \"%s"
"\"."
-msgstr ""
+msgstr "lpstat: エラー - 環境変数 %s ãŒã€å­˜åœ¨ã—ãªã„宛先 \"%s\" を指ã—ã¦ã„ã¾ã™ã€‚"
+#: systemv/lpstat.c:970
#, c-format
msgid "members of class %s:"
-msgstr ""
+msgstr "クラス %s ã®ãƒ¡ãƒ³ãƒãƒ¼:"
+#: berkeley/lpq.c:582
msgid "no entries"
-msgstr ""
+msgstr "エントリーãŒã‚りã¾ã›ã‚“"
+#: systemv/lpstat.c:1043
msgid "no system default destination"
-msgstr ""
+msgstr "システムã®ãƒ‡ãƒ•ォルトã®å®›å…ˆãŒã‚りã¾ã›ã‚“"
+#: scheduler/ipp.c:5702
msgid "notify-events not specified."
-msgstr ""
+msgstr "notify-events ãŒæŒ‡å®šã•れã¦ã„ã¾ã›ã‚“。"
+#: scheduler/ipp.c:2034 scheduler/ipp.c:5607
#, c-format
msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
+msgstr "notify-recipient-uri URI \"%s\" ã¯ã™ã§ã«ä½¿ã‚れã¦ã„ã¾ã™ã€‚"
+#: scheduler/ipp.c:2024 scheduler/ipp.c:5597
#, c-format
msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
+msgstr "notify-recipient-uri URI \"%s\" ã«ã¯æœªçŸ¥ã®ã‚¹ã‚­ãƒ¼ãƒ ãŒä½¿ã‚れã¦ã„ã¾ã™ã€‚"
+#: cups/notify.c:87
msgid "pending"
msgstr "ä¿ç•™"
+#: ppdc/ppdc.cxx:113 ppdc/ppdpo.cxx:93
#, c-format
msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
+msgstr "ppdc: ディレクトリー \"%s\" を追加ã—ã¦ã„ã¾ã™ã€‚"
+#: ppdc/ppdpo.cxx:134
#, c-format
msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
+msgstr "ppdc: %s ã‹ã‚‰ UI テキストを追加ã¾ãŸã¯æ›´æ–°ã—ã¦ã„ã¾ã™ã€‚"
+#: ppdc/ppdc-source.cxx:410
#, c-format
msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
+msgstr "ppdc: 䏿­£ãª boolean 値 (%s) ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-import.cxx:264
#, c-format
msgid "ppdc: Bad font attribute: %s"
-msgstr ""
+msgstr "䏿­£ãªãƒ•ォント属性: %s"
+#: ppdc/ppdc-source.cxx:1796
#, c-format
msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
msgstr ""
+"ppdc: 䏿­£ãª resolution å \"%s\" ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s 。"
+#: ppdc/ppdc-source.cxx:1113
#, c-format
msgid "ppdc: Bad status keyword %s on line %d of %s."
msgstr ""
+"ppdc: 䏿­£ãª status キーワード %s ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s 。"
+#: ppdc/ppdc-source.cxx:2033
#, c-format
msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
+msgstr "ppdc: 䏿­£ãªæ•°å€¤ç½®æ› ($%c) ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:2719
#, c-format
msgid "ppdc: Choice found on line %d of %s with no Option."
msgstr ""
+"ppdc: %d 行目ã€ãƒ•ァイルå %s ã§ã€Option ãŒãªã„ã®ã« Choice ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚"
+#: ppdc/ppdc-source.cxx:1698
#, c-format
msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
+msgstr "ppdc: locale %s ã«å¯¾ã—㦠#po ãŒäºŒé‡ã«å®šç¾©ã•れã¦ã„ã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s 。"
+#: ppdc/ppdc-source.cxx:932
#, c-format
msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦ãƒ•ィルター定義ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:955
#, c-format
msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦ãƒ—ログラムåãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:394
#, c-format
msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠boolean 値ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1093
#, c-format
msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Font ã®ã‚ã¨ã« charset ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:447
#, c-format
msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠choice code ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:435
#, c-format
msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠choice name/text ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:503
#, c-format
msgid "ppdc: Expected color order for ColorModel on line %d of %s."
msgstr ""
+"ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ColorModel ã«å¯¾ã™ã‚‹ color order ãŒå¿…è¦"
+"ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:492
#, c-format
msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
msgstr ""
+"ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ColorModel ã«å¯¾ã™ã‚‹ colorspace ãŒå¿…è¦ã§"
+"ã™ã€‚"
+#: ppdc/ppdc-source.cxx:514
#, c-format
msgid "ppdc: Expected compression for ColorModel on line %d of %s."
msgstr ""
+"ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ColorModel ã«å¯¾ã™ã‚‹ compression ãŒå¿…è¦"
+"ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:695
#, c-format
msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
msgstr ""
+"ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠UIConstraints ã«å¯¾ã™ã‚‹ constraint ãŒå¿…"
+"è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:2905
#, c-format
msgid ""
"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠DriverType ã®ã‚ã¨ã« driver type keyword ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:826
#, c-format
msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Duplex ã®ã‚ã¨ã« type ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1077
#, c-format
msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Font ã®ã‚ã¨ã« encoding ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1689
#, c-format
msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
+msgstr "ppdc: #po %s ã®ã‚ã¨ã«ãƒ•ァイルåãŒå¿…è¦ã§ã™ (%d 行目, ファイル %s)。"
+#: ppdc/ppdc-source.cxx:1205
#, c-format
msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠group name/text ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:2619
#, c-format
msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠include ファイルåãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1502
#, c-format
msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦æ•´æ•°æŒ‡å®šãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1681
#, c-format
msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠#po ã®ã‚ã¨ã« locale ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:353
#, c-format
msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
+msgstr "ppdc: %s ã®ã‚ã¨ã« name ãŒå¿…è¦ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:3277
#, c-format
msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠FileName ã®ã‚ã¨ã« name ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1058
#, c-format
msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Font ã®ã‚ã¨ã« name ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:3108
#, c-format
msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Manufacturer ã®ã‚ã¨ã« name ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:3141
#, c-format
msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠MediaSize ã®ã‚ã¨ã« name ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:3231
#, c-format
msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ModelName ã®ã‚ã¨ã« name ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:3294
#, c-format
msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠PCFileName ã®ã‚ã¨ã« name ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1156
#, c-format
msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
+msgstr "ppdc: %s ã®ã‚ã¨ã« name/text ãŒå¿…è¦ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:1245
#, c-format
msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Installable ã®ã‚ã¨ã« name/text ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1782
#, c-format
msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Resolution ã®ã‚ã¨ã« name/text ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:479
#, c-format
msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
msgstr ""
+"ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ColorModel ã«å¯¾ã™ã‚‹ name/text ãŒå¿…è¦ã§"
+"ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1574
#, c-format
msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠option name/text ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1608
#, c-format
msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠option section ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1586
#, c-format
msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠option type ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1765
#, c-format
msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Resolution ã®ã‚ã¨ã« override field ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-catalog.cxx:341 ppdc/ppdc-catalog.cxx:353
#, c-format
msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
+msgstr "%d 行: %s ã«ã¯å¼•用符ã§å›²ã¾ã‚ŒãŸæ–‡å­—列ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1004
#, c-format
msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦å®Ÿæ•°ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:572
#, c-format
msgid ""
"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
msgstr ""
+"ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ColorProfile ã«ç¶šã„㦠resolution/"
+"mediatype ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1863
#, c-format
msgid ""
"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
"of %s."
msgstr ""
+"ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠SimpleColorProfile ã«ç¶šã„㦠resolution/"
+"mediatype ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:361
#, c-format
msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
+msgstr "ppdc: %s ã®ã‚ã¨ã« selector ãŒå¿…è¦ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:1101
#, c-format
msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Font ã®ã‚ã¨ã« status ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:2794
#, c-format
msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Copyright ã®ã‚ã¨ã«æ–‡å­—列ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:3397
#, c-format
msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Version ã®ã‚ã¨ã«æ–‡å­—列ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:728
#, c-format
msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠2 ã¤ã®ã‚ªãƒ—ションåãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:372
#, c-format
msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
+msgstr "ppdc: %s ã®ã‚ã¨ã« value ãŒå¿…è¦ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:1085
#, c-format
msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Font ã®ã‚ã¨ã« version ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:227
#, c-format
msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
+msgstr "ppdc: 無効㪠#include/#po ファイルåã§ã™ \"%s\"。"
+#: ppdc/ppdc-source.cxx:972
#, c-format
msgid "ppdc: Invalid cost for filter on line %d of %s."
msgstr ""
+"ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦ãƒ•ィルターã«å¯¾ã™ã‚‹ç„¡åŠ¹ãª cost ãŒã‚りã¾"
+"ã™ã€‚"
+#: ppdc/ppdc-source.cxx:964
#, c-format
msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦ãƒ•ィルターã«å¯¾ã™ã‚‹ç„¡åйãªç©ºã® MIME タイプãŒã‚りã¾ã™ã€‚"
+#: ppdc/ppdc-source.cxx:980
#, c-format
msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦ãƒ•ィルターã«å¯¾ã™ã‚‹ãƒ—ログラムåãŒç©ºã§ã‚り無効ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1628
#, c-format
msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
msgstr ""
+"ppdc: 無効㪠option section ãŒã‚りã¾ã™ \"%s\"。%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:1600
#, c-format
msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
+msgstr "ppdc: 無効㪠option type ãŒã‚りã¾ã™ \"%s\"。%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc.cxx:251 ppdc/ppdpo.cxx:123
#, c-format
msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
+msgstr "ppdc: ドライãƒãƒ¼æƒ…報ファイル \"%s\" を読ã¿è¾¼ã‚“ã§ã„ã¾ã™ã€‚"
+#: ppdc/ppdc.cxx:187
#, c-format
msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
+msgstr "ppdc: ロケール \"%s\" ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’読ã¿è¾¼ã‚“ã§ã„ã¾ã™ã€‚"
+#: ppdc/ppdc.cxx:126
#, c-format
msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
+msgstr "ppdc: \"%s\" ã‹ã‚‰ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’読ã¿è¾¼ã‚“ã§ã„ã¾ã™ã€‚"
+#: ppdc/ppdc-source.cxx:2412 ppdc/ppdc-source.cxx:2644
#, c-format
msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
+msgstr "ppdc: \"%s\" ã®æœ€å¾Œã« #endif ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: ppdc/ppdc-source.cxx:2513 ppdc/ppdc-source.cxx:2548
+#: ppdc/ppdc-source.cxx:2578
#, c-format
msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠#if ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: ppdc/ppdc-catalog.cxx:418
#, c-format
msgid ""
"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
+msgstr "%d 行: %s ã®ç¿»è¨³æ–‡å­—列ã®å‰ã« msgid 行ãŒå¿…è¦ã§ã™ã€‚"
+#: ppdc/ppdc-driver.cxx:730
#, c-format
msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
+msgstr "ppdc: ロケール %s ã«å¯¾ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒ­ã‚°ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: ppdc/ppdc-source.cxx:1651 ppdc/ppdc-source.cxx:2882
+#: ppdc/ppdc-source.cxx:2968 ppdc/ppdc-source.cxx:3061
+#: ppdc/ppdc-source.cxx:3194 ppdc/ppdc-source.cxx:3327
#, c-format
msgid "ppdc: Option %s defined in two different groups on line %d of %s."
msgstr ""
+"ppdc: オプション %s ãŒè¡Œ %dã€ãƒ•ァイル %s ã® 2 ã¤ã®ç•°ãªã‚‹ã‚°ãƒ«ãƒ¼ãƒ—ã§å®šç¾©ã•れã¦"
+"ã„ã¾ã™ã€‚"
+#: ppdc/ppdc-source.cxx:1644
#, c-format
msgid "ppdc: Option %s redefined with a different type on line %d of %s."
msgstr ""
+"ppdc: オプション %s ã¯ç•°ãªã‚‹åž‹ã§å†å®šç¾©ã•れã¦ã„ã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:705
#, c-format
msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Option constraint 㯠*name ã§æŒ‡å®šã—ãªã‘れã°ãªã‚Šã¾ã›ã‚“。"
+#: ppdc/ppdc-source.cxx:2495
#, c-format
msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
+msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠#if ã®ãƒã‚¹ãƒˆãŒå¤šã™ãŽã¾ã™ã€‚"
+#: ppdc/ppdc.cxx:374
#, c-format
msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
+msgstr "ppdc: PPD ファイル \"%s\" を作æˆã§ãã¾ã›ã‚“ - %s。"
+#: ppdc/ppdc.cxx:266
#, c-format
msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
+msgstr "ppdc: 出力ディレクトリー \"%s\" を作æˆã§ãã¾ã›ã‚“ - %s"
+#: ppdc/ppdc.cxx:287
#, c-format
msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
+msgstr "ppdc: 出力パイプを作æˆã§ãã¾ã›ã‚“: %s"
+#: ppdc/ppdc.cxx:303 ppdc/ppdc.cxx:309
#, c-format
msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
+msgstr "ppdc: cupstestppd を実行ã§ãã¾ã›ã‚“: %s"
+#: ppdc/ppdc-source.cxx:1730
#, c-format
msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
+msgstr "ppdc: #po ファイル %s ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:2651
#, c-format
msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
msgstr ""
+"ppdc: インクルードファイル %s ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc.cxx:198
#, c-format
msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
+msgstr "ppdc: \"%s\" ã«å¯¾ã™ã‚‹åœ°åŸŸåŒ–情報ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ - %s"
+#: ppdc/ppdc.cxx:135
#, c-format
msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
+msgstr "ppdc: \"%s\" ã«å¯¾ã™ã‚‹ãƒ­ãƒ¼ã‚«ãƒ©ã‚¤ã‚ºãƒ•ァイルを読ã¿è¾¼ã‚ã¾ã›ã‚“ - %s"
+#: ppdc/ppdc-file.cxx:50
#, c-format
msgid "ppdc: Unable to open %s: %s"
-msgstr ""
+msgstr "ppdc: %s ã‚’é–‹ã‘ã¾ã›ã‚“: %s"
+#: ppdc/ppdc-source.cxx:2054
#, c-format
msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
+msgstr "ppdc: 変数 (%s) ã¯æœªå®šç¾©ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-catalog.cxx:435
#, c-format
msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
+msgstr "%d 行: %s ã¯äºˆæœŸã›ã¬ãƒ†ã‚­ã‚¹ãƒˆã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:2924
#, c-format
msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
+msgstr "ppdc: %s ã¯æœªçŸ¥ã®ãƒ‰ãƒ©ã‚¤ãƒãƒ¼ã‚¿ã‚¤ãƒ—ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:906
#, c-format
msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
+msgstr "ppdc: \"%s\" ã¯æœªçŸ¥ã®ä¸¡é¢ã‚¿ã‚¤ãƒ—ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:3154
#, c-format
msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
+msgstr "ppdc: \"%s\" ã¯æœªçŸ¥ã®ç”¨ç´™ã‚µã‚¤ã‚ºã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-catalog.cxx:463
#, c-format
msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
+msgstr "\"%s\" ã¯æœªçŸ¥ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒ­ã‚°ã®æ›¸å¼ã§ã™ã€‚"
+#: ppdc/ppdc-source.cxx:3408
#, c-format
msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
+msgstr "ppdc: 未知ã®ãƒˆãƒ¼ã‚¯ãƒ³ \"%s\" ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:1014
#, c-format
msgid ""
"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
+msgstr "ppdc: 実数 \"%s\" ã«æœªçŸ¥ã®çµ‚了文字ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc-source.cxx:2164
#, c-format
msgid "ppdc: Unterminated string starting with %c on line %d of %s."
msgstr ""
+"ppdc: %c ã§å§‹ã¾ã‚‹æ–‡å­—ã«å¯¾ã—ã¦çµ‚端文字ãŒã‚りã¾ã›ã‚“。%d 行目ã€ãƒ•ァイルå %s。"
+#: ppdc/ppdc.cxx:365
#, c-format
msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
+msgstr "ppdc: 警告 - ファイルå \"%s\" ãŒé‡è¤‡ã—ã¦ã„ã¾ã™ã€‚"
+#: ppdc/ppdc.cxx:380
#, c-format
msgid "ppdc: Writing %s."
-msgstr ""
+msgstr "ppdc: %s を書ã込んã§ã„ã¾ã™ã€‚"
+#: ppdc/ppdc.cxx:148
#, c-format
msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
+msgstr "ppdc: ディレクトリー \"%s\" ã« PPD ファイルを書ã込んã§ã„ã¾ã™ã€‚"
+#: ppdc/ppdmerge.cxx:136
#, c-format
msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
+msgstr "ppdmerge: 䏿­£ãª LanguageVersion \"%s\" ㌠%s ã«ã‚りã¾ã™ã€‚"
+#: ppdc/ppdmerge.cxx:176
#, c-format
msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
+msgstr "ppdmerge: PPD ファイル %s を無視ã—ã¾ã™ã€‚"
+#: ppdc/ppdmerge.cxx:160
#, c-format
msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
+msgstr "ppdmerge: %s ã‚’ %s ã«ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã§ãã¾ã›ã‚“ - %s"
+#: systemv/lpstat.c:1784
#, c-format
msgid "printer %s disabled since %s -"
-msgstr ""
+msgstr "プリンター %s 㯠%s ã‹ã‚‰ç„¡åйã§ã™ -"
+#: systemv/lpstat.c:1773
#, c-format
msgid "printer %s is idle. enabled since %s"
-msgstr ""
+msgstr "プリンター %s ã¯å¾…機中ã§ã™ã€‚%s ä»¥æ¥æœ‰åйã§ã™"
+#: systemv/lpstat.c:1778
#, c-format
msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
+msgstr "プリンター %s 㯠%s-%d ã‚’å°åˆ·ã—ã¦ã„ã¾ã™ã€‚%s ä»¥æ¥æœ‰åйã§ã™"
+#: systemv/lpstat.c:1909
#, c-format
msgid "printer %s/%s disabled since %s -"
-msgstr ""
+msgstr "プリンター %s/%s 㯠%s ã‹ã‚‰ç„¡åйã§ã™ -"
+#: systemv/lpstat.c:1895
#, c-format
msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
+msgstr "プリンター %s/%s ã¯å¾…機中ã§ã™ã€‚%s ä»¥æ¥æœ‰åйã§ã™"
+#: systemv/lpstat.c:1902
#, c-format
msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
+msgstr "プリンター %s/%s ã¯ç¾åœ¨ %s-%d ã‚’å°åˆ·ä¸­ã§ã™ã€‚%s ä»¥æ¥æœ‰åйã§ã™"
+#: cups/notify.c:93 cups/notify.c:134
msgid "processing"
msgstr "処ç†ä¸­"
+#: systemv/lp.c:644
#, c-format
msgid "request id is %s-%d (%d file(s))"
-msgstr ""
+msgstr "リクエスト ID 㯠%s-%d ã§ã™ (%d 個ã®ãƒ•ァイル)"
+#: cups/snmp.c:1020
msgid "request-id uses indefinite length"
msgstr "リクエスト ID ã®é•·ã•ãŒä¸å®š"
+#: systemv/lpstat.c:2048
msgid "scheduler is not running"
-msgstr ""
+msgstr "スケジューラーã¯å‹•作ã—ã¦ã„ã¾ã›ã‚“"
+#: systemv/lpstat.c:2044
msgid "scheduler is running"
-msgstr ""
+msgstr "スケジューラーã¯å‹•作中ã§ã™"
+#: cups/adminutil.c:2159
#, c-format
msgid "stat of %s failed: %s"
msgstr "%s ã®çŠ¶æ…‹å–å¾—ã«å¤±æ•—ã—ã¾ã—ãŸ: %s"
+#: berkeley/lpc.c:211
msgid "status\t\tShow status of daemon and queue."
-msgstr ""
+msgstr "status\t\tデーモンã¨ã‚­ãƒ¥ãƒ¼ã®çŠ¶æ…‹ã‚’è¡¨ç¤º"
+#: cups/notify.c:96 cups/notify.c:137
msgid "stopped"
msgstr "åœæ­¢"
+#: systemv/lpstat.c:1017
#, c-format
msgid "system default destination: %s"
-msgstr ""
+msgstr "システムã®ãƒ‡ãƒ•ォルトã®å®›å…ˆ: %s"
+#: systemv/lpstat.c:1014
#, c-format
msgid "system default destination: %s/%s"
-msgstr ""
+msgstr "システムã®ãƒ‡ãƒ•ォルトã®å®›å…ˆ: %s/%s"
+#: cups/notify.c:108 cups/notify.c:140
msgid "unknown"
msgstr "未知"
+#: cups/notify.c:117
msgid "untitled"
msgstr "タイトルãªã—"
+#: cups/snmp.c:1045
msgid "variable-bindings uses indefinite length"
msgstr "variable-bindings ã®é•·ã•ãŒä¸å®š"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(ã™ã¹ã¦)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(ãªã—)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d エントリー\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\t失敗後: 継続\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\t警告:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tãƒãƒŠãƒ¼ãŒå¿…è¦\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\t文字セット:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\t接続: ç›´çµ\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\t接続: リモート\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tデフォルト用紙サイズ:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tデフォルトピッãƒ:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tデフォルトãƒãƒ¼ãƒˆè¨­å®š:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\t説明: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\t設定ã•れãŸãƒ•ォーム:\n"
-#~ "\tコンテンツã®ç¨®é¡ž: ã™ã¹ã¦\n"
-#~ "\tプリンターã®ç¨®é¡ž: 䏿˜Ž\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\t許å¯ã•れã¦ã„るフォーム:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tインターフェイス: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tインターフェイス: %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tインターフェイス: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\t場所: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\t失敗時: 警告ãªã—\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\t許å¯ã•れã¦ã„るユーザー:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tæ‹’å¦ã•れã¦ã„るユーザー:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tãƒ‡ãƒ¼ãƒ¢ãƒ³ã¯æä¾›ã•れã¦ã„ã¾ã™\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tエントリーãŒã‚りã¾ã›ã‚“\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tデãƒã‚¤ã‚¹ '%s' 上ã®ãƒ—リンター 速度 -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tå°åˆ·ã¯ç„¡åйã§ã™\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tå°åˆ·ã¯æœ‰åйã§ã™\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\t%s ã«ã‚­ãƒ¥ãƒ¼ã—ã¾ã—ãŸ\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tキューã¯ç„¡åйã§ã™\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tã‚­ãƒ¥ãƒ¼ã¯æœ‰åйã§ã™\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\t未知ã®ç†ç”±\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " é©åˆãƒ†ã‚¹ãƒˆçµæžœè©³ç´°\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " å‚ç…§: 15 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.1。\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " å‚ç…§: 15 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.2。\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " å‚ç…§: 19 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.3。\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " å‚ç…§: 20 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.4。\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " å‚ç…§: 27 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.5。\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " å‚ç…§: 42 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " å‚ç…§: 16-17 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.2。\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " å‚ç…§: 42-45 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " å‚ç…§: 45-46 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " å‚ç…§: 48-49 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " å‚ç…§: 52-54 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f ãƒã‚¤ãƒˆ\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " åˆæ ¼ Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " åˆæ ¼ DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " åˆæ ¼ DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " åˆæ ¼ FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " åˆæ ¼ FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " åˆæ ¼ LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " åˆæ ¼ LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " åˆæ ¼ Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " åˆæ ¼ ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " åˆæ ¼ NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " åˆæ ¼ PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " åˆæ ¼ PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " åˆæ ¼ PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " åˆæ ¼ PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " åˆæ ¼ Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " åˆæ ¼ ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " 警告 \"%s %s\" 㯠\"%s %s\" ã¨ç«¶åˆã—ã¾ã™\n"
-#~ " (ç¦å‰‡=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " 警告 %s ã¯ç›¸å½“ã™ã‚‹ã‚ªãƒ—ションãŒã‚りã¾ã›ã‚“!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " 警告 %s 㯠%s ã¨ä¸€èˆ¬ãƒ—レフィックスを共有ã—ã¾ã™ã€‚\n"
-#~ " å‚ç…§: 15 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.2。\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " 警告 デフォルトã®é¸æŠžè‚¢ãŒç«¶åˆã—ã¦ã„ã¾ã™!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " 警告 Duplex オプションキーワード %s ã¯æœŸå¾…通りã«å‹•作ã—ãªã„ã‹ã‚‚"
-#~ "ã—れã¾ã›ã‚“。ã¾ãŸã€Duplex ã¨ã„ã†åå‰ã§ã‚ã‚‹ã¹ãã§ã™!\n"
-#~ " å‚ç…§: 122 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " 警告 ファイル㌠CRã€LFã€CR LF ã®è¡Œæœ«ã‚’混在ã—ã¦å«ã‚“ã§ã„ã¾ã™!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " 警告 LanguageEncoding 㯠PPD 4.3 仕様ã§å¿…é ˆã§ã™ã€‚\n"
-#~ " å‚ç…§: 56-57 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " 警告 %d 行ãŒç©ºç™½ã ã‘ã§ã™!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " 警告 Manufacturer 㯠PPD 4.3 仕様ã§å¿…é ˆã§ã™ã€‚\n"
-#~ " å‚ç…§: 58-59 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " 警告 éž Windows PPD ファイルã¯ã€CR LF ã§ãªã LF ã®ã¿ã‚’行末ã«ä½¿"
-#~ "ã†ã¹ãã§ã™!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " 警告 PPD ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %.1f ã¯ç¾åœ¨ä½¿ã‚れã¦ã„ã¾ã›ã‚“!\n"
-#~ " å‚ç…§: 42 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.2。\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " 警告 8.3 文字より長ㄠPCFileName 㯠PPD 仕様é•åã§ã™ã€‚\n"
-#~ " å‚ç…§: 61-62 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " 警告 プロトコル㌠PJL ã‚’å«ã‚“ã§ã„ã¾ã™ãŒ JCL 属性ãŒè¨­å®šã•れã¦ã„ã¾"
-#~ "ã›ã‚“。\n"
-#~ " å‚ç…§: 78-79 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.7。\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " 警告 プロトコル㌠PJL 㨠BCP ã®ä¸¡æ–¹ã‚’å«ã‚“ã§ã„ã¾ã™; TBCP を想定"
-#~ "ã—ã¾ã™ã€‚\n"
-#~ " å‚ç…§: 78-79 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.7。\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " 警告 ShortNickName 㯠PPD 4.3 仕様ã§å¿…é ˆã§ã™ã€‚\n"
-#~ " å‚ç…§: 64-65 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s ãŒå­˜åœ¨ã—ã¾ã›ã‚“!\n"
-
-#~ msgid " %s %s file \"%s\" has the wrong capitalization!\n"
-#~ msgstr ""
-#~ " %s %s ファイル \"%s\" ã¯ä¸æ­£ãªå¤§æ–‡å­—ã§å§‹ã¾ã‚‹ãƒ¯ãƒ¼ãƒ‰ã‚’å«ã‚“ã§ã„ã¾ã™!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s 䏿­£ãª %s ㌠%s ã‚’é¸ã‚“ã§ã„ã¾ã™!\n"
-#~ " å‚ç…§: 122 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr " %s 䏿­£ãª UTF-8 \"%s\" 翻訳文字列 (オプション %s 用)ã§ã™!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s 䏿­£ãª UTF-8 \"%s\" 翻訳文字列 (オプション %s ã€é¸æŠž %s)ã§ã™!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s 䏿­£ãªå€¤ãŒ cupsFilter ã«è¨­å®šã•れã¦ã„ã¾ã™ \"%s\"!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s 䏿­£ãª cupsICCProfile %sã§ã™!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s 䏿­£ãªå€¤ãŒ cupsPreFilter ã«è¨­å®šã•れã¦ã„ã¾ã™ \"%s\"!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s 䏿­£ãª cupsUIConstraints %s: \"%s\"ã§ã™!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s 無効ãªè¨€èªž \"%s\"ã§ã™!\n"
-
-#~ msgid " %s Bad spelling of %s - should be %s!\n"
-#~ msgstr " %s %s ã®ä¸æ­£ãªç¶´ã‚Šã§ã™ - %s ã§ã‚ã‚‹ã¹ãã§ã™!\n"
-
-#~ msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID!\n"
-#~ msgstr ""
-#~ " %s APScanAppPath 㨠APScanAppBundleID ã¯åŒæ™‚ã«æŒ‡å®šã§ãã¾ã›ã‚“!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s 空㮠cupsUIConstraints %sã§ã™!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s \"%s\" 翻訳文字列 (オプション %s 用) ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s \"%s\" 翻訳文字列 (オプション %s ã€é¸æŠž %s) ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid " %s Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " %s APDialogExtension ファイル \"%s\" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“\n"
-
-#~ msgid " %s Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " %s APPrinterIconPath ファイル \"%s\" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“\n"
-
-#~ msgid " %s Missing APPrinterLowInkTool file \"%s\"\n"
-#~ msgstr " %s APPrinterLowInkTool ファイル \"%s\" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“\n"
-
-#~ msgid " %s Missing APPrinterUtilityPath file \"%s\"\n"
-#~ msgstr " %s APPrinterUtilityPath ファイル \"%s\" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“\n"
-
-#~ msgid " %s Missing APScanAppPath file \"%s\"\n"
-#~ msgstr " %s APScanAppPath ファイル \"%s\" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“\n"
-
-#~ msgid ""
-#~ " %s Missing REQUIRED PageRegion option!\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " %s 必須㮠PageRegion オプションãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-#~ " å‚ç…§: 100 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.14。\n"
-
-#~ msgid ""
-#~ " %s Missing REQUIRED PageSize option!\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " %s 必須㮠PageSize オプションãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-#~ " å‚ç…§: 99 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.14。\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s  é¸æŠž *%s %s ㌠UIConstraints \"*%s %s *%s %s\" 内ã«è¦‹ã¤ã‹ã‚Šã¾ã›"
-#~ "ã‚“!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s é¸æŠž *%s %s ㌠cupsUIConstraints %s: \"%s\" 内ã«è¦‹ã¤ã‹ã‚Šã¾ã›"
-#~ "ã‚“!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s cupsFilter ファイル \"%s\" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s cupsICCProfile ファイル \"%s\" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s cupsPreFilter ファイル \"%s\" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s cupsUIResolver ファイル %s ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s オプション %s ãŒUIConstraints \"*%s %s *%s %s\" ã«è¦‹ã¤ã‹ã‚Šã¾ã›"
-#~ "ã‚“!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s オプション %s ãŒcupsUIConstraints %s ã«è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!: \"%s\"\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s ファイルã«ãƒ™ãƒ¼ã‚¹ç¿»è¨³æ–‡å­—列 \"%s\" ãŒã‚りã¾ã›ã‚“!\n"
-
-#~ msgid ""
-#~ " %s Non-standard size name \"%s\"!\n"
-#~ " REF: Page 187, section B.2.\n"
-#~ msgstr ""
-#~ " %s サイズå \"%s\" ã¯æ¨™æº–ã«ã‚りã¾ã›ã‚“!\n"
-#~ " å‚ç…§: 187 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ B.2。\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s 必須㮠%s ãŒé¸æŠžè‚¢ None を定義ã—ã¦ã„ã¾ã›ã‚“!\n"
-#~ " å‚ç…§: 122 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.17。\n"
-
-#~ msgid " %s Size \"%s\" defined for %s but not for %s!\n"
-#~ msgstr ""
-#~ " %s サイズ \"%s\" 㯠%s å‘ã‘ã«å®šç¾©ã•れã¦ã„ã¾ã™ãŒã€%s ã«ã¯ã‚りã¾ã›"
-#~ "ã‚“!\n"
-
-#~ msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)!\n"
-#~ msgstr " %s サイズ \"%s\" ã¯è¦å®šå¤–ã®å¯¸æ³• (%gx%g) ã‚’æŒã£ã¦ã„ã¾ã™!\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s cupsICCProfileã®ãƒãƒƒã‚·ãƒ¥å€¤ %s ㌠%s ã¨ä¸€è‡´ã—ã¾ã›ã‚“!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolverã® %s ãŒãƒ«ãƒ¼ãƒ—ã—ã¦ã„ã¾ã™!\n"
-
-#~ msgid ""
-#~ " %s cupsUIResolver %s does not list at least two different "
-#~ "options!\n"
-#~ msgstr ""
-#~ " %s cupsUIResolver %s ã¯æœ€ä½Žã§ã‚‚二ã¤ã®ç•°ãªã£ãŸã‚ªãƒ—ションをæŒã£ã¦ã„ãª"
-#~ "ã‘れã°ãªã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **失敗** %s ãŒé¸æŠžã—㟠%s 㨠%s ã¯å¤§æ–‡å­—/å°æ–‡å­—ã®ã¿ãŒé•ã†ã ã‘ã§"
-#~ "ã™!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **失敗** %s 㯠1284DeviceID ã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“!\n"
-#~ " å‚ç…§: 72 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **失敗** 䏿­£ãª Default%s %s\n"
-#~ " å‚ç…§: 40 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 4.5。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** %s ã¯ä¸æ­£ãª DefaultImageableArea ã§ã™!\n"
-#~ " å‚ç…§: 102 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** %s ã¯ä¸æ­£ãª DefaultPaperDimension ã§ã™!\n"
-#~ " å‚ç…§: 103 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **失敗** ファイルã«ä¸æ­£ãª JobPatchFile 属性ãŒã‚りã¾ã™\n"
-#~ " å‚ç…§: 24 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 3.4。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **失敗** 䏿­£ãª Manufacturer (\"HP\" ã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“)\n"
-#~ " å‚ç…§: 211 ページã€è¡¨ D.1。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **失敗** 䏿­£ãª Manufacturer (\"Oki\" ã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“)\n"
-#~ " å‚ç…§: 211 ページã€è¡¨ D.1。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** 䏿­£ãª ModelName - 文字列㫠\"%c\" ã¯è¨±å¯ã•れã¦ã„ã¾ã›"
-#~ "ん。\n"
-#~ " å‚ç…§: 59-60 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** 䏿­£ãª PSVersion - \"(文字列) æ•´æ•°\" ã§ã¯ã‚りã¾ã›ã‚“。\n"
-#~ " å‚ç…§: 62-64 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** 䏿­£ãª Product - \"(文字列)\" ã§ã¯ã‚りã¾ã›ã‚“。\n"
-#~ " å‚ç…§: 62 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** 䏿­£ãª ShortNickName - 31 文字を超ãˆã¦ã„ã¾ã™ã€‚\n"
-#~ " å‚ç…§: 64-65 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **失敗** 䏿­£ãª %s ㌠%s ã‚’é¸ã‚“ã§ã„ã¾ã™!\n"
-#~ " å‚ç…§: 84 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** 䏿­£ãªFileVersion \"%s\"\n"
-#~ " å‚ç…§: 56 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** FormatVersion ãŒé•ã„ã¾ã™ \"%s\"\n"
-#~ " å‚ç…§: 56 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **失敗** 無効㪠LanguageEncoding %s - ISOLatin1 ã§ãªã‘れã°ãªã‚Šã¾ã›"
-#~ "ã‚“!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr ""
-#~ " **失敗** 無効㪠LanguageVersion %s - English ã§ãªã‘れã°ãªã‚Šã¾ã›"
-#~ "ã‚“!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr " **失敗** デフォルトã®ã‚ªãƒ—ションコードãŒè§£é‡ˆã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **失敗** オプション %sã€é¸æŠž %s ã®ãƒ‡ãƒ•ォルトã®ç¿»è¨³æ–‡å­—列㌠8 ビット"
-#~ "文字をå«ã‚“ã§ã„ã¾ã™!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **失敗** オプション %s ã®ãƒ‡ãƒ•ォルトã®ç¿»è¨³æ–‡å­—列㌠8 ビット文字をå«"
-#~ "ã‚“ã§ã„ã¾ã™!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **失敗** グループå %s 㨠%s ã¯å¤§æ–‡å­—/å°æ–‡å­—ãŒé•ã†ã ã‘ã§ã™!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **失敗** %s ã§è¤‡æ•°ã®ã‚ªãƒ—ション %s ãŒé¸æŠžã•れã¦ã„ã¾ã™!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **失敗** オプションå %s 㨠%s ã¯å¤§æ–‡å­—/å°æ–‡å­—ãŒé•ã†ã ã‘ã§ã™!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **失敗** Default%s ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 40 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 4.5。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** DefaultImageableArea ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 102 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** DefaultPaperDimension ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 103 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** FileVersion ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 56 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** FormatVersion ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 56 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** PageSize %s ã« ImageableArea ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 41 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5。\n"
-#~ " å‚ç…§: 102 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** LanguageEncoding ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 56-57 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** LanguageVersion ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 57-58 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** Manufacturer ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 58-59 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** ModelName ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 59-60 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** NickName ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 60 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** PCFileName ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 61-62 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** PSVersion ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 62-64 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **失敗** PageRegion ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 100 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.14。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **失敗** PageSize ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 41 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5。\n"
-#~ " å‚ç…§: 99 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.14。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **失敗** PageSize ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 99-100 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.14。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** PageSize %s ã« PaperDimension ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 41 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5。\n"
-#~ " å‚ç…§: 103 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** Product ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 62 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** ShortNickName ã¯å¿…é ˆ\n"
-#~ " å‚ç…§: 64-65 ページã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ 5.3。\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d 個ã®ã‚¨ãƒ©ãƒ¼ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " 䏿­£ãª %%%%BoundingBox: (%d 行)!\n"
-#~ " å‚ç…§: 39 ページã€%%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " 䏿­£ãª %%%%Page: (%d 行)!\n"
-#~ " å‚ç…§: 53 ページã€%%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " 䏿­£ãª %%%%Pages: (%d 行)!\n"
-#~ " å‚ç…§: 43 ページã€%%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " %d 行㌠255文字より長ããªã£ã¦ã„ã¾ã™ (%d)!\n"
-#~ " å‚ç…§: 25 ページã€Line Length\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " 先頭行㫠%!PS-Adobe-3.0 ãŒã‚りã¾ã›ã‚“!\n"
-#~ " å‚ç…§: 17 ページã€3.1 Conforming Documents\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " %%EndComments コメントãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-#~ " å‚ç…§: 41 ページã€%%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%BoundingBox: コメントãŒè¦‹ã¤ã‹ã‚‰ãªã„ã‹ä¸æ­£ã§ã™!\n"
-#~ " å‚ç…§: 39 ページã€%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " %%Page: コメントãŒè¦‹ã¤ã‹ã‚‰ãªã„ã‹ä¸æ­£ã§ã™!\n"
-#~ " å‚ç…§: 53 ページã€%%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " %%Pages: コメントãŒè¦‹ã¤ã‹ã‚‰ãªã„ã‹ä¸æ­£ã§ã™!\n"
-#~ " å‚ç…§: 43 ページã€%%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " エラーã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " 255文字を超ãˆã‚‹ %d 行ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " %%BeginDocument コメントãŒå¤šã™ãŽã¾ã™!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " %%EndDocument コメントãŒå¤šã™ãŽã¾ã™!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " 警告: ファイルã«ãƒã‚¤ãƒŠãƒªãƒ‡ãƒ¼ã‚¿ãŒå«ã¾ã‚Œã¦ã„ã¾ã™!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " 警告: ファイル㫠%%EndComments コメントãŒã‚りã¾ã›ã‚“!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " 警告: ãƒ•ã‚¡ã‚¤ãƒ«ã¯æ™‚代é…れ㮠DSC ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %.1f ã§ã™!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " 失敗\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " 失敗\n"
-#~ " **失敗** PPD ファイルを開ã‘ã¾ã›ã‚“ - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " 失敗\n"
-#~ " **失敗** PPD ファイルを開ã‘ã¾ã›ã‚“ - %s (%d 行)。\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " åˆæ ¼\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10 å°ç­’"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11 å°ç­’"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12 å°ç­’"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14 å°ç­’"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9 å°ç­’"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f ãƒã‚¤ãƒˆ\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f ãƒã‚¤ãƒˆ\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s 㯠%s ã‹ã‚‰ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’å—ã‘付ã‘ã¦ã„ã¾ã™\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s 㯠lpc ã® CUPS ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã¯å®Ÿè£…ã•れã¦ã„ã¾ã›ã‚“。\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s ã¯æº–å‚™ãŒã§ãã¦ã„ã¾ã›ã‚“\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s ã¯æº–å‚™ãŒã§ãã¦ã„ã¾ã™\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s ã¯æº–å‚™ãŒã§ãã¦ãŠã‚Šå°åˆ·ã—ã¦ã„ã¾ã™\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s 㯠%s ã‹ã‚‰ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’å—ã‘付ã‘ã¦ã„ã¾ã›ã‚“\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s 㯠%s ã‹ã‚‰ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’å—ã‘付ã‘ã¦ã„ã¾ã™\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s 㯠%s ã‹ã‚‰ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’å—ã‘付ã‘ã¦ã„ã¾ã›ã‚“\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s:%-33.33s [ジョブ %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s ã«å¤±æ•—ã—ã¾ã—ãŸ: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: 何ãŒèµ·ãã¦ã„ã‚‹ã‹ä¸æ˜Žã§ã™!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%s: エラー - 環境変数 %s ãŒå­˜åœ¨ã—ãªã„宛先 \"%s\" を指ã—ã¦ã„ã¾ã™!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: エラー - 䏿­£ãªã‚¸ãƒ§ãƒ– ID ã§ã™!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: エラー - ファイルをå°åˆ·ã§ããšã€ã‚¸ãƒ§ãƒ–ã‚’åŒæ™‚ã«å¤‰ãˆã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: エラー - ファイルã¾ãŸã¯ã‚¸ãƒ§ãƒ– ID ãŒæä¾›ã•れã¦ã„ã‚‹å ´åˆã€æ¨™æº–入力ã‹ã‚‰å°"
-#~ "刷ã§ãã¾ã›ã‚“。 \n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: エラー - '-S' オプションã®ã‚ã¨ã«ã¯æ–‡å­—セットãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: エラー - '-T' オプションã®ã‚ã¨ã«ã¯ã‚³ãƒ³ãƒ†ãƒ³ãƒ„タイプãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: エラー - '-n' オプションã®ã‚ã¨ã«ã¯ã‚³ãƒ”ー数ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: エラー - '-#' オプションã®ã‚ã¨ã«ã¯ã‚³ãƒ”ー数ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: エラー - '-P' オプションã®ã‚ã¨ã«ã¯å®›å…ˆãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: エラー - '-b' オプションã®ã‚ã¨ã«å®›å…ˆãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: エラー - '-d' オプションã®ã‚ã¨ã«ã¯ãƒ—リンターåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: エラー - '-f' オプションã®ã‚ã¨ã«ã¯ç”¨ç´™åãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: エラー - '-H' オプションã®ã‚ã¨ã«ã¯ãƒ›ãƒ¼ãƒ«ãƒ‰åãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: エラー - '-H' オプションã®ã‚ã¨ã«ã¯ãƒ›ã‚¹ãƒˆåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: エラー - '-h' オプションã®ã‚ã¨ã«ã¯ãƒ›ã‚¹ãƒˆåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: エラー - '-y' オプションã®ã‚ã¨ã«ã¯ãƒ¢ãƒ¼ãƒ‰ãƒªã‚¹ãƒˆãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: エラー - '-%c' オプションã®ã‚ã¨ã«ã¯åå‰ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: エラー - '-o' オプションã®ã‚ã¨ã«ã¯æ–‡å­—列ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: エラー - '-P' オプションã®ã‚ã¨ã«ã¯ãƒšãƒ¼ã‚¸ãƒªã‚¹ãƒˆãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: エラー - '-%c' オプションã®ã‚ã¨ã«ã¯å„ªå…ˆåº¦ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: エラー - '-r' ã®ã‚ã¨ã«ã¯ç†ç”±ã®ãƒ†ã‚­ã‚¹ãƒˆãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: エラー - '-t' オプションã®ã‚ã¨ã«ã¯ã‚¿ã‚¤ãƒˆãƒ«ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: エラー - '-U' オプションã®ã‚ã¨ã«ã¯ãƒ¦ãƒ¼ã‚¶åãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: エラー - '-u' オプションã®ã‚ã¨ã«ã¯ãƒ¦ãƒ¼ã‚¶åãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: エラー - '-%c' オプションã®ã‚ã¨ã«ã¯å€¤ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: エラー - '-W' オプションã®ã‚ã¨ã«ã¯ã€\"completed\"ã€\"not-completed\"ã€"
-#~ "\"all\" ã®ã„ãšã‚Œã‹ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: エラー - 利用å¯èƒ½ãªãƒ‡ãƒ•ォルトã®å®›å…ˆãŒã‚りã¾ã›ã‚“。\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: エラー - 優先度㯠1 ã‹ã‚‰ 100 ã®é–“ã§ã‚ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: エラー - スケジューラãŒå¿œç­”ã—ã¦ã„ã¾ã›ã‚“!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: エラー - ファイルãŒå¤šã™ãŽã¾ã™ - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: エラー - \"%s\" ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“ - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: エラー - 標準入力ã‹ã‚‰ã‚­ãƒ¥ãƒ¼ã«ãƒ‡ãƒ¼ã‚¿ã‚’入力ã§ãã¾ã›ã‚“! - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: エラー - \"%s\" ã¯æœªçŸ¥ã®å®›å…ˆã§ã™!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: エラー - \"%s/%s\" ã¯æœªçŸ¥ã®å®›å…ˆã§ã™!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: エラー - '%c' ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: エラー - '%s' ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: '-i' オプションã®ã‚ã¨ã«ã¯ã‚¸ãƒ§ãƒ– ID ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: フィルター \"%s\" ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: リスト \"%s\" ã«ç„¡åйãªå®›å…ˆåãŒã‚りã¾ã™!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: 無効ãªãƒ•ィルター文字列ã§ã™ \"%s\"\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr "%s: '-H restart' ã®å‰ã«ã¯ã‚¸ãƒ§ãƒ– ID ('-i ジョブID') ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: %s/%s ã‹ã‚‰ %s/%s ã«å¤‰æ›ã™ã‚‹ãƒ•ィルターãŒã‚りã¾ã›ã‚“!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: æ“作ã«å¤±æ•—ã—ã¾ã—ãŸ: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr ""
-#~ "%s: ã™ã¿ã¾ã›ã‚“ã€æš—å·åŒ–サãƒãƒ¼ãƒˆã¯ã‚³ãƒ³ãƒ‘イル時ã«çµ„ã¿è¾¼ã¾ã‚Œã¦ã„ã¾ã›ã‚“!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: サーãƒãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: サーãƒãƒ¼ã«é€£çµ¡ã§ãã¾ã›ã‚“!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: \"%s\" ã® MIME タイプを判別ã§ãã¾ã›ã‚“!\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: %sã‚’é–‹ã‘ã¾ã›ã‚“: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: PPD ファイルを開ã‘ã¾ã›ã‚“: %s ã® %d 行目\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d.\n"
-#~ msgstr "%s: PPD ファイルを開ã‘ã¾ã›ã‚“: %s ã® %d 行目\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr ""
-#~ "%s: \"%s\" ã¾ãŸã¯ \"%s\" ã‹ã‚‰ MIME データベースを読ã¿å–ã‚‹ã“ã¨ãŒã§ãã¾ã›"
-#~ "ã‚“!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: \"%s\" ã¯æœªçŸ¥ã®å®›å…ˆã§ã™!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: %s/%s ã¯æœªçŸ¥ã®å®›å…ˆ MIME タイプã§ã™!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: '%c' ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: %s/%s ã¯æœªçŸ¥ã®ã‚½ãƒ¼ã‚¹ MIME タイプã§ã™!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: 警告 - '%c' å½¢å¼ä¿®é£¾å­ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“ - å‡ºåŠ›ã¯æ­£ã—ããªã„ã‚‚ã®"
-#~ "ã«ãªã‚‹ã‹ã‚‚ã—れã¾ã›ã‚“!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: 警告 - 文字セットオプションã¯ç„¡è¦–ã•れã¾ã™!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: 警告 - コンテンツタイプオプションã¯ç„¡è¦–ã•れã¾ã™!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: 警告 - 用紙オプションã¯ç„¡è¦–ã•れã¾ã™!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: 警告 - モードオプションã¯ç„¡è¦–ã•れã¾ã™!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%s: エラー - 環境変数 %s ãŒå­˜åœ¨ã—ãªã„宛先 \"%s\" を指ã—ã¦ã„ã¾ã™!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: エラー - '-o' オプションã®ã‚ã¨ã«ã¯ オプション=値 ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: エラー - 利用å¯èƒ½ãªãƒ‡ãƒ•ォルトã®å®›å…ˆãŒã‚りã¾ã›ã‚“。\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11インãƒ"
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13インãƒ"
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14インãƒ"
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11インãƒ"
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11インãƒ"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?無効ãªãƒ˜ãƒ«ãƒ—コマンドã§ã™\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr ""
-#~ "プリンタードライãƒãƒ¼ã‚’エクスãƒãƒ¼ãƒˆã™ã‚‹ã«ã¯ Samba ã®ãƒ‘スワードãŒå¿…è¦ã§ã™!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr ""
-#~ "プリンタードライãƒãƒ¼ã‚’エクスãƒãƒ¼ãƒˆã™ã‚‹ã«ã¯ã€Samba ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åãŒå¿…è¦ã§ã™!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "\"%s\" ã¨ã„ã†åå‰ã®ã‚¯ãƒ©ã‚¹ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "\"%s\" ã¨ã„ã†åå‰ã®ãƒ—リンターã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (特大)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (特大)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (å°)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (特大)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "%s printer-state ã« ä¸æ­£ãªå€¤ %d を設定ã—よã†ã¨ã—ã¦ã„ã¾ã™!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "属性グループã¯ç¯„囲外ã§ã™ (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "\"%s\" ã¯ç„¡åйãªãƒ‡ãƒã‚¤ã‚¹ URI ã§ã™!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "\"%s\" ã¯ç„¡åŠ¹ãª device-uri ã§ã™!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "\"%s\" ã¯ç„¡åŠ¹ãª device-uri スキーマã§ã™!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "\"%s\" ã¯ä¸æ­£ãª document-format ã§ã™!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "䏿­£ãªãƒ•ァイルåãƒãƒƒãƒ•ァーã§ã™!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "䏿­£ãªãƒ•ォント属性: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "䏿­£ãª job-priority 値ã§ã™!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "\"%s\" ã¯ä¸æ­£ãª job-sheets 値ã§ã™!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "䏿­£ãª job-sheets 値タイプ ã§ã™!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "䏿­£ãª job-state 値ã§ã™!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "\"%s\" ã¯ç„¡åŠ¹ãª job-uri 属性ã§ã™!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "\"%s\" ã¯ç„¡åŠ¹ãª notify-pull-method ã§ã™!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "URI \"%s\" ã¯ä¸æ­£ãª notify-recipient-uri ã§ã™!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "%d 行ã«ä¸æ­£ãªã‚ªãƒ—ションã¨é¸æŠžãŒã‚りã¾ã™!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "\"%s\" ã¯ç„¡åŠ¹ãª port-monitor ã§ã™!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "%d ã¯ç„¡åŠ¹ãª printer-state 値ã§ã™!"
-
-#~ msgid "Bad request ID %d!"
-#~ msgstr "%d ã¯ç„¡åйãªãƒªã‚¯ã‚¨ã‚¹ãƒˆIDã§ã™!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå· %d.%d ã¯ç„¡åйãªãƒªã‚¯ã‚¨ã‚¹ãƒˆã§ã™!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "䏿­£ãªã‚µãƒ–スクリプション ID ã§ã™!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0 å°ç­’"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1 å°ç­’"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2 å°ç­’"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3 å°ç­’"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4 å°ç­’"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5 å°ç­’"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6 å°ç­’"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65 å°ç­’"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7 å°ç­’"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "文字セット \"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "å°ç­’ 長形3å·"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "å°ç­’ 長形4å·"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "コマンドã¯çŸ­ç¸®ã§ãã¾ã™ã€‚ コマンド:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "タイプ \"%s\" を検査ã§ãã¾ã›ã‚“ã§ã—ãŸ!"
-
-#~ msgid "Cover open."
-#~ msgstr "ã‚«ãƒãƒ¼ãŒé–‹ã„ã¦ã„ã¾ã™ã€‚"
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL å°ç­’"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "ç¾åƒå‰¤ãŒç„¡ããªã‚Šã‹ã‘ã¦ã„ã¾ã™ã€‚"
-
-#~ msgid "Developer empty!"
-#~ msgstr "ç¾åƒå‰¤ãŒç„¡ããªã‚Šã¾ã—ãŸ!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "デãƒã‚¤ã‚¹: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "ドキュメント %d ãŒã‚¸ãƒ§ãƒ– %d ã«è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
-
-#~ msgid "Door open."
-#~ msgstr "ドアãŒé–‹ã„ã¦ã„ã¾ã™ã€‚"
-
-#~ msgid "Double Postcard"
-#~ msgstr "往復ã¯ãŒã"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: ページ情報ã®ãƒ¡ãƒ¢ãƒªãƒ¼å‰²ã‚Šå½“ã¦ãŒã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: ページアレイã®ãƒ¡ãƒ¢ãƒªãƒ¼å‰²ã‚Šå½“ã¦ãŒã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: %s job-id user title copies options [file]\n"
-#~ msgstr ""
-#~ "ERROR: %s ジョブID ユーザー タイトル コピー数 オプション [ファイル]\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: 䏿­£ãª %%BoundingBox: コメントãŒã‚りã¾ã™!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: 䏿­£ãª %%IncludeFeature: コメントã§ã™!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: 䏿­£ãª %%Page: コメントãŒãƒ•ァイルã«ã‚りã¾ã™!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: 䏿­£ãª %%PageBoundingBox: コメントãŒãƒ•ァイルã«ã‚りã¾ã™!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: 䏿­£ãª SCSI デãƒã‚¤ã‚¹ãƒ•ァイル \"%s\" ã§ã™!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: 䏿­£ãª charset ファイル %s ã§ã™\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: 䏿­£ãª charset タイプ %s ã§ã™\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: 䏿­£ãª columns 値 %d ã§ã™!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: 䏿­£ãª cpi 値 %f ã§ã™!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: 䏿­£ãªãƒ•ォント記述行: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: 䏿­£ãª lpi 値 %f ã§ã™!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: 䏿­£ãªãƒšãƒ¼ã‚¸è¨­å®šã§ã™!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: 䏿­£ãª ãƒ†ã‚­ã‚¹ãƒˆæ–¹å‘ %s ã§ã™\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: 䏿­£ãª テキスト幅 %s ã§ã™\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: é€ä¿¡å…ˆã®ãƒ—リンターãŒå­˜åœ¨ã—ã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: é‡è¤‡ã—㟠%%BoundingBox: コメントãŒã‚りã¾ã™!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: é‡è¤‡ã—㟠%%Pages: コメントãŒã‚りã¾ã™!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: 空ã®ãƒ—リントファイルã§ã™!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: エラー %d PAPSendData request ã®é€ä¿¡: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: %d 行: %s ã«ã¯å¼•用符ã§å›²ã¾ã‚ŒãŸæ–‡å­—列ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: 致命的㪠USB エラーã§ã™!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: 無効㪠HP-GL/2 コマンドãŒã‚りã€ãƒ•ァイルをプリントã§ãã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: %%EndProlog ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: %%EndSetup ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: コマンドラインã«ãƒ‡ãƒã‚¤ã‚¹ URI ãŒè¦‹ã¤ã‹ã‚‰ãšã€ç’°å¢ƒå¤‰æ•° DEVICE_URI も見"
-#~ "ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: ãƒãƒŠãƒ¼ãƒ•ァイル㮠%d 行目ã«å€¤ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr "ERROR: %d 行: %s ã®ç¿»è¨³æ–‡å­—列ã®å‰ã« msgid 行ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: %%BoundingBox: コメントãŒã‚りã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: %%Pages: コメントãŒãƒ˜ãƒƒãƒ€ãƒ¼ã«ã‚りã¾ã›ã‚“!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: argv[0] ã¾ãŸã¯ 環境変数 DEVICE_URI ã«ãƒ‡ãƒã‚¤ã‚¹ URI ãŒè¦‹ã¤ã‹ã‚Šã¾ã›"
-#~ "ã‚“!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: charset ファイル %s ã«ãƒ•ォントãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: ページãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: 用紙切れã§ã™!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: PRINTER 環境変数ãŒå®šç¾©ã•れã¦ã„ã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: プリントファイルãŒå—ã‘付ã‘られã¾ã›ã‚“ã§ã—㟠(%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: プリンターãŒå¿œç­”ã—ã¦ã„ã¾ã›ã‚“\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: プリンターãŒå¿œç­”ã—ã¦ã„ã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: プリンター㌠想定外㮠EOF ã‚’é€ä¿¡ã—ã¾ã—ãŸ\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr ""
-#~ "ERROR: リモートホストãŒã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ãƒ•ァイルをå—ã‘付ã‘ã¾ã›ã‚“ã§ã—㟠(%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: リモートホストãŒãƒ‡ãƒ¼ã‚¿ãƒ•ァイルをå—ã‘付ã‘ã¾ã›ã‚“ã§ã—㟠(%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: プリンターã¸ã®ãƒ‡ãƒ¼ã‚¿é€ä¿¡ä¸­ã«ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: ファイル %d をジョブã«è¿½åŠ ã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: ジョブ %d をキャンセルã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: PDF ファイルをコピーã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to create pipe"
-#~ msgstr "ERROR: pipe を生æˆã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: ソケットを作æˆã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr "ERROR: テンãƒãƒ©ãƒªãƒ¼ã®åœ§ç¸®ãƒ—リントファイルを作æˆã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: テンãƒãƒ©ãƒªãƒ¼ãƒ•ァイルを作æˆã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: pictwpstops を実行ã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: gs プログラムを実行ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: pdftops プログラムを実行ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to execute pstops program"
-#~ msgstr "ERROR: pstops プログラムを実行ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: pictwpstops をフォークã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: PAP リクエストをå–å¾—ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: PAP レスãƒãƒ³ã‚¹ã‚’å–å¾—ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr "ERROR: プリンター \"%s\" ã® PPD ファイルをå–å¾—ã§ãã¾ã›ã‚“ - %s\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: デフォルト㮠AppleTalk ゾーンをå–å¾—ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: ジョブ %d ã®å±žæ€§ (%s) ã‚’å–å¾—ã§ãã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: プリンターã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ (%s) ã‚’å–å¾—ã§ãã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: プリンター '%s' ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“\"!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: PAP レスãƒãƒ³ã‚¹ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: AppleTalk プリンターãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: AppleTalk アドレスを作æˆã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“ - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: %s ã‚’é–‹ã‘ã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to open PPD file!\n"
-#~ msgstr "ERROR: PPD ファイルを開ã‘ã¾ã›ã‚“!"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: ãƒãƒŠãƒ¼ãƒ•ァイル \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“ - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: デãƒã‚¤ã‚¹ãƒ•ァイル \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: ファイル \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“ - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: ファイル \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: å°åˆ·ã®ãŸã‚ã®ã‚¤ãƒ¡ãƒ¼ã‚¸ãƒ•ァイルを開ã‘ã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: プリントファイル \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: プリントファイル %s ã‚’é–‹ã‘ã¾ã›ã‚“ - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: プリントファイル %s ã‚’é–‹ã‘ã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to open raster file - %s\n"
-#~ msgstr "ERROR: ラスターファイル %s ã‚’é–‹ã‘ã¾ã›ã‚“\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr "ERROR: テンãƒãƒ©ãƒªãƒ¼ã®åœ§ç¸®ãƒ—リントファイルを開ã‘ã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: テキストカラム %d をプリントã§ãã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: テキストページ %dx%d をプリントã§ãã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: プリントデータを読ã¿è¾¼ã‚ã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: プリントデータを読ã¿è¾¼ã‚ã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: ãƒãƒ¼ãƒˆã‚’予約ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: ファイルã§ã®ã‚ªãƒ•セット %ld ã¸ã‚·ãƒ¼ã‚¯ã§ãã¾ã›ã‚“ - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: ファイルã§ã®ã‚ªãƒ•セット %lld ã¸ã‚·ãƒ¼ã‚¯ã§ãã¾ã›ã‚“ - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: LPD コマンドをé€ä¿¡ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: PAP tickle è¦æ±‚ã‚’é€ä¿¡ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: PAP ã®åˆæœŸãƒ‡ãƒ¼ã‚¿é€ä¿¡è¦æ±‚ã‚’é€ä¿¡ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: プリントデータをé€ä¿¡ã§ãã¾ã›ã‚“ (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: プリントデータをé€ä¿¡ã§ãã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: プリントファイルをプリンターã¸é€ä¿¡ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: 最後㮠NUL をプリンターã¸é€ä¿¡ã§ãã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: pictwpstops ã‚’å¾…ã¤ã“ã¨ãŒã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: %d ãƒã‚¤ãƒˆã‚’ \"%s\" ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: %d ãƒã‚¤ãƒˆã‚’ãƒ—ãƒªãƒ³ã‚¿ãƒ¼ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: コントロールファイルを書ãè¾¼ã‚ã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: プリントデータを書ãè¾¼ã‚ã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: プリントデータを書ãè¾¼ã‚ã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: ラスターデータをドライãƒãƒ¼ã¸æ›¸ãè¾¼ã‚ã¾ã›ã‚“!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: テンãƒãƒ©ãƒªãƒ¼ãƒ•ã‚¡ã‚¤ãƒ«ã¸æ›¸ãè¾¼ã‚ã¾ã›ã‚“"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: éžåœ§ç¸®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãƒ‡ãƒ¼ã‚¿ã‚’書ãè¾¼ã‚ã¾ã›ã‚“: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: %d 行: %s ã¯äºˆæœŸã›ã¬ãƒ†ã‚­ã‚¹ãƒˆã§ã™!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: \"%s\" ã¯æœªçŸ¥ã®æš—å·ã‚ªãƒ—ション値ã§ã™!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: \"%s\" ã¯æœªçŸ¥ã®ãƒ•ァイルオーダーã§ã™\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: \"%c\" ã¯æœªçŸ¥ã®æ›¸å¼æ–‡å­—ã§ã™\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: \"%s\" ã¯æœªçŸ¥ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒ­ã‚°ã®æ›¸å¼ã§ã™!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: \"%s\" (値 \"%s\") ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: \"%s\" ã¯æœªçŸ¥ã®ãƒ—リントモードã§ã™\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: \"%s\" ã¯æœªçŸ¥ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚ªãƒ—ション値ã§ã™!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr ""
-#~ "ERROR: %s ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„è¼åº¦å€¤ã§ã™ã€‚brightness=100 を使用ã—ã¾ã™!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr ""
-#~ "ERROR: %s ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„ガンマ値ã§ã™ã€‚gamma=1000 を使用ã—ã¾ã™!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr ""
-#~ "ERROR: %d ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„ number-up 値ã§ã™ã€‚number-up=1 を使用ã—ã¾"
-#~ "ã™!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: %s ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„ number-up-layout 値ã§ã™ã€‚number-up-"
-#~ "layout=lrtb を使用ã—ã¾ã™!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: %s ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„ page-border 値ã§ã™ã€‚page-border=none を使"
-#~ "用ã—ã¾ã™!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr ""
-#~ "ERROR: doc_printf オーãƒãƒ¼ãƒ•ロー (%d ãƒã‚¤ãƒˆ) ãŒæ¤œå‡ºã•れã€ä¸­æ–­ã—ã¾ã—ãŸ!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops ã¯ã‚·ã‚°ãƒŠãƒ« %d ã§çµ‚了ã—ã¾ã—ãŸ!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops ã¯çŠ¶æ…‹ %d ã§çµ‚了ã—ã¾ã—ãŸ!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: 回復å¯èƒ½: ãƒ—ãƒªãƒ³ã‚¿ãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“。30 秒後ã«å†è©¦è¡Œã—ã¾ã™...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() ãŒå¤±æ•—ã—ã¾ã—ãŸ"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: プリントファイルã®çŠ¶æ…‹ã‚’å–å¾—ã§ãã¾ã›ã‚“"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "PPD ファイルãŒç©ºã§ã™!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Error: '-h' オプションã®ã‚ã¨ã«ã¯ãƒ›ã‚¹ãƒˆåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "失敗\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "ファイルデãƒã‚¤ã‚¹ URI ã¯ç„¡åйã«ãªã£ã¦ã„ã¾ã™! 有効ã«ã™ã‚‹ã«ã¯ã€\"%s/cupsd.conf"
-#~ "\" ã® FileDevice ディレクティブをå‚ç…§ã—ã¦ãã ã•ã„。"
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "定ç€å™¨ã®æ¸©åº¦ãŒä¸Šã£ã¦ã„ã¾ã™!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "定ç€å™¨ã®æ¸©åº¦ãŒä¸‹ã£ã¦ã„ã¾ã™!"
-
-#~ msgid "German FanFold"
-#~ msgstr "German FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "German FanFold Legal"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "printer-uri 属性をå–å¾—ã—ã¾ã—ãŸãŒã€job-id ã‚’å–å¾—ã§ãã¾ã›ã‚“ã§ã—ãŸ!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk ãŒã‚·ã‚¹ãƒ†ãƒ ãƒ—レファレンスã§ç„¡åйã«ã•れã¦ã„ã¾ã™\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk ãŒã‚·ã‚¹ãƒ†ãƒ ãƒ—レファレンスã§ç„¡åйã«ã•れã¦ã„ã¾ã™ã€‚\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: プリントジョブをキャンセルã—ã¦ã„ã¾ã™...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: ãƒ—ãƒªãƒ³ã‚¿ãƒ¼ã«æŽ¥ç¶šã—ã¾ã—ãŸ...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: ãƒ—ãƒªãƒ³ã‚¿ãƒ¼ã«æŽ¥ç¶šä¸­...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ­£å¸¸ã«é€ä¿¡ã•れã¾ã—ãŸ\n"
-
-#~ msgid "INFO: Copying print data...\n"
-#~ msgstr "INFO: å°åˆ·ãƒ‡ãƒ¼ã‚¿ã‚’コピーã—ã¦ã„ã¾ã™..."
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: ãƒ‡ãƒ¼ã‚¿ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ­£å¸¸ã«é€ä¿¡ã•れã¾ã—ãŸ\n"
-
-#~ msgid "INFO: Finished page %d...\n"
-#~ msgstr "INFO: ページ %d を終了...\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: ページ %d をフォーマット中...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: イメージファイルをロード中...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: プリンターを探ã—ã¦ã„ã¾ã™...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: コãƒã‚¯ã‚·ãƒ§ãƒ³ã‚’é–‹ã„ã¦ã„ã¾ã™\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: プリントファイルをé€ä¿¡ã—ã€ãƒ—リンターãŒä½œæ¥­ã‚’完了ã™ã‚‹ã®ã‚’å¾…ã£ã¦ã„ã¾"
-#~ "ã™...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: プリンターãŒãƒ“ジー状態ã§ã™ã€‚10 秒後ã«å†è©¦è¡Œã—ã¾ã™...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: プリンターãŒãƒ“ジー状態ã§ã™ã€‚30 秒後ã«å†è©¦è¡Œã—ã¾ã™...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: プリンターãŒãƒ“ジー状態ã§ã™ã€‚5 秒後ã«å†è©¦è¡Œã—ã¾ã™...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr ""
-#~ "INFO: プリンター㌠IPP/%d.%d をサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“。IPP/1.0 を試ã—ã¾"
-#~ "ã™...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: プリンターãŒãƒ“ジー状態ã§ã™ã€‚5 秒後ã«å†è©¦è¡Œã—ã¾ã™...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: プリンターã¯ç¾åœ¨ã‚ªãƒ•ラインã§ã™ã€‚\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: プリンターã¯ç¾åœ¨ã‚ªãƒ•ラインã§ã™ã€‚\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: プリンターã¯ç¾åœ¨ã‚ªãƒ³ãƒ©ã‚¤ãƒ³ã§ã™ã€‚\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: プリンターã¯ã‚ªãƒ•ラインã§ã™ã€‚\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: ãƒ—ãƒªãƒ³ã‚¿ãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“。30 秒後ã«å†è©¦è¡Œã—ã¾ã™...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: ページ %d をプリント中ã€%d%% 完了ã—ã¾ã—ãŸ...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: ページ %d をプリント中...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: ãƒ—ãƒªãƒ³ãƒˆã®æº–å‚™ãŒã§ãã¦ã„ã¾ã™\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: コントロールファイルをé€ä¿¡ä¸­ (%lu ãƒã‚¤ãƒˆ)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: コントロールファイルをé€ä¿¡ä¸­ (%u ãƒã‚¤ãƒˆ)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: データをé€ä¿¡ä¸­\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: データファイルをé€ä¿¡ä¸­ (%ld ãƒã‚¤ãƒˆ)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: データファイルをé€ä¿¡ä¸­ (%lld ãƒã‚¤ãƒˆ)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: プリントデータをé€ä¿¡ä¸­...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: プリントファイルをé€ä¿¡ã€%ld ãƒã‚¤ãƒˆ...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: プリントファイルをé€ä¿¡ã€%lld ãƒã‚¤ãƒˆ...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: LPR ジョブをスプール中ã€%.0f%% 完了ã—ã¾ã—ãŸ...\n"
-
-#~ msgid "INFO: Starting page %d...\n"
-#~ msgstr "INFO: ページ %d を開始...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: プリンターã¨äº¤ä¿¡ã§ãã¾ã›ã‚“ã€‚ã‚¯ãƒ©ã‚¹å†…ã®æ¬¡ã®ãƒ—リンターã«ã‚­ãƒ¥ãƒ¼ã—ã¾"
-#~ "ã™...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: デフォルト㮠AppleTalk ゾーン \"%s\" を使ã„ã¾ã™\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: ジョブãŒå®Œäº†ã™ã‚‹ã®ã‚’å¾…ã£ã¦ã„ã¾ã™...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: プリンターãŒä½¿ç”¨å¯èƒ½ã«ãªã‚‹ã®ã‚’å¾…ã£ã¦ã„ã¾ã™...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4 å°ç­’"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (特大)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5 å°ç­’"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6 å°ç­’"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "インクã¾ãŸã¯ãƒˆãƒŠãƒ¼ãŒã»ã¨ã‚“ã©ã‚りã¾ã›ã‚“。"
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "インクã¾ãŸã¯ãƒˆãƒŠãƒ¼ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "廃インクã¾ãŸã¯å»ƒãƒˆãƒŠãƒ¼å®¹å™¨ãŒã»ã¨ã‚“ã©ä¸€æ¯ã§ã™ã€‚"
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "廃インクã¾ãŸã¯å»ƒãƒˆãƒŠãƒ¼å®¹å™¨ãŒä¸€æ¯ã§ã™!"
-
-#~ msgid "Interlock open."
-#~ msgstr "インターロックãŒé–‹ã„ã¦ã„ã¾ã™ã€‚"
-
-#~ msgid "Invite Envelope"
-#~ msgstr "招待状å°ç­’"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "イタリアå°ç­’"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã‚’å†é–‹ã§ãã¾ã›ã‚“ - ファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯å­˜åœ¨ã—ã¾ã›ã‚“!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯ã™ã§ã«çµ‚了ã—ã€å¤‰æ›´ã§ãã¾ã›ã‚“!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯å®Œäº†ã—ã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯èªè¨¼ã®ãŸã‚ã«ä¿ç•™ã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯ä¿ç•™ã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· #%s ã¯å­˜åœ¨ã—ã¾ã›ã‚“!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "ã‚¸ãƒ§ãƒ–ç•ªå· %d ã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "ã‚¸ãƒ§ãƒ–ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ãŒæ›´æ–°ã§ãã¾ã›ã‚“!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "è§’ 2 å°ç­’"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "è§’ 3 å°ç­’"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "言語 \"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "Media jam!"
-#~ msgstr "紙詰ã¾ã‚Šã§ã™!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "用紙トレイãŒç©ºã«ãªã‚Šã‹ã‘ã¦ã„ã¾ã™ã€‚"
-
-#~ msgid "Media tray empty!"
-#~ msgstr "用紙トレイãŒç©ºã«ãªã‚Šã¾ã—ãŸ!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "用紙トレイãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "用紙トレイã«è£œå……ãŒå¿…è¦ã§ã™ã€‚"
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "document-number 属性ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "%d 行ã«äºŒé‡å¼•用符ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "form 変数ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "notify-subscription-ids 属性ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "requesting-user-name 属性ãŒè¨­å®šã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "å¿…é ˆã®å±žæ€§ãŒè¨­å®šã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "%d 行ã«å€¤ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "モデル: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Monarch å°ç­’"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: プリントファイルをå—ã‘付ã‘ã¾ã—㟠- ジョブ ID %d。\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: プリントファイルをå—ã‘付ã‘ã¾ã—㟠- ジョブ ID 䏿˜Žã€‚\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "PPD ã®åå‰ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Windows プリンタードライãƒãƒ¼ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "%s ã«ã¯ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã‚¸ãƒ§ãƒ–ã¯ã‚りã¾ã›ã‚“!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "リクエストã«å±žæ€§ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "èªè¨¼æƒ…å ±ãŒæä¾›ã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "No default printer"
-#~ msgstr "デフォルトã®ãƒ—リンターã¯ã‚りã¾ã›ã‚“"
-
-#~ msgid "No file!?!"
-#~ msgstr "ファイルãŒã‚りã¾ã›ã‚“!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "変更時刻ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "No printer name!"
-#~ msgstr "プリンターåãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "クラスã®ãƒ—リンターURI ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "プリンターURI ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "プリンターURI ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "リクエストã«ã‚µãƒ–スクリプション属性ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC ã¯ã‚‚ã†ã™ã交æ›ãŒå¿…è¦ã«ãªã‚Šã¾ã™ã€‚"
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC ã¯äº¤æ›æ™‚期ã§ã™!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "トナー切れã§ã™!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "排紙トレイãŒã»ã¨ã‚“ã©ä¸€æ¯ã§ã™ã€‚"
-
-#~ msgid "Output bin full!"
-#~ msgstr "排紙トレイãŒä¸€æ¯ã§ã™!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "プリンター %s ã®å‡ºåŠ›ã¯ %s ã«é€ã‚‰ã‚Œã¾ã™\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "プリンター %s ã®å‡ºåŠ›ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ—リンター %s (%s 上) ã«é€ã‚‰ã‚Œã¾ã™\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "プリンター %s/%s ã®å‡ºåŠ›ã¯ %s ã«é€ã‚‰ã‚Œã¾ã™\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "プリンター %s/%s ã®å‡ºåŠ›ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ—リンター %s (%s 上) ã«é€ã‚‰ã‚Œã¾ã™\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "排紙トレイãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!"
-
-#~ msgid "PASS\n"
-#~ msgstr "åˆæ ¼\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1 å°ç­’"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10 å°ç­’"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2 å°ç­’"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3 å°ç­’"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (特大)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4 å°ç­’"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5 å°ç­’"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6 å°ç­’"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7 å°ç­’"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8 å°ç­’"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9 å°ç­’"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "パーソナルå°ç­’"
-
-#~ msgid "Printer offline."
-#~ msgstr "プリンターã¯ã‚ªãƒ•ラインã§ã™ã€‚"
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "ランク 所有者 ジョブ ファイル åˆè¨ˆã‚µã‚¤ã‚º\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "ランク 所有者 優先 ジョブ ファイル åˆè¨ˆã‚µã‚¤ã‚º\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "コマンドを実行中: %s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "SCSI プリンター"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "タブロイド (特大)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "notify-user-data 値ãŒå¤§ãã™ãŽã¾ã™ (%d > 63 オクテット)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "プリンターã¾ãŸã¯ã‚¯ãƒ©ã‚¹ã¯å…±æœ‰ã§ãã¾ã›ã‚“!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "プリンターã¾ãŸã¯ã‚¯ãƒ©ã‚¹ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸã€‚"
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "printer-uri 属性ã¯å¿…é ˆã§ã™!"
-
-#~ msgid "Toner low."
-#~ msgstr "トナーãŒå°‘ãªããªã£ã¦ã„ã¾ã™ã€‚"
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "job-sheets 値ãŒå¤šã™ãŽã¾ã™ (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "printer-state-reasons 値ãŒå¤šã™ãŽã¾ã™ (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "US エグゼクティブ"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US リーガル (特大)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US レター (特大)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US レター (å°)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "宛先\"%s\"ã«ã‚¸ãƒ§ãƒ–を追加ã§ãã¾ã›ã‚“!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "ファイルタイプ用ã«ãƒ¡ãƒ¢ãƒªã‚’割り当ã¦ã‚‰ã‚Œã¾ã›ã‚“!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "64-bit 版㮠CUPS プリンタードライãƒãƒ¼ãƒ•ァイルをコピーã§ãã¾ã›ã‚“ (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr "64-bit 版㮠Windows プリンタードライãƒãƒ¼ã‚’コピーã§ãã¾ã›ã‚“ (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "複数㮠CUPS プリンタードライãƒãƒ¼ãƒ•ァイルをコピーã§ãã¾ã›ã‚“ (%d)ï¼"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "PPD ファイルをコピーã§ãã¾ã›ã‚“ï¼ - %s"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "PPD ファイルをコピーã§ãã¾ã›ã‚“!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "複数㮠Windows 2000 プリンタードライãƒãƒ¼ãƒ•ァイルをコピーã§ãã¾ã›ã‚“ (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "複数㮠Windows 9x プリンタードライãƒãƒ¼ãƒ•ァイルをコピーã§ãã¾ã›ã‚“ (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "インターフェイススクリプトをコピーã§ãã¾ã›ã‚“! - %s"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "printer-uri を作æˆã§ãã¾ã›ã‚“!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "1MB 以上㮠cupsd.conf ファイルã¯ç·¨é›†ã§ãã¾ã›ã‚“!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "ジョブã®å®›å…ˆãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "プリンターãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "複数㮠Windows 2000 プリンタードライãƒãƒ¼ãƒ•ァイルをインストールã§ãã¾ã›ã‚“ "
-#~ "(%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "複数㮠Windows 9x プリンタードライãƒãƒ¼ãƒ•ァイルをインストールã§ãã¾ã›ã‚“ (%"
-#~ "d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "ドキュメント %d (ジョブ %d)ã‚’é–‹ã‘ã¾ã›ã‚“!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "\"%s\" を実行ã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "プリンタードライãƒãƒ¼ã«ã‚³ãƒžãƒ³ãƒ‰ã‚’é€ä¿¡ã§ãã¾ã›ã‚“!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Windows プリンタードライãƒãƒ¼ã‚’設定ã§ãã¾ã›ã‚“ (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "å¤ã„タイプ㮠USB クラスドライãƒãƒ¼ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“!\n"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "\"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„文字セットã§ã™!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "\"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„圧縮形å¼ã§ã™!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "%s ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„圧縮属性ã§ã™!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "\"%s\" ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„å½¢å¼ã§ã™!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "'%s' ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„å½¢å¼ã§ã™!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "'%s/%s' ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ãªã„å½¢å¼ã§ã™!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹:\n"
-#~ "\n"
-#~ " lpadmin [-h サーãƒãƒ¼] -d 宛先\n"
-#~ " lpadmin [-h サーãƒãƒ¼] -x 宛先\n"
-#~ " lpadmin [-h サーãƒãƒ¼] -p プリンター [-c 追加クラス] [-i インターフェイ"
-#~ "ス]\n"
-#~ " [-m モデル] [-r 削除クラス] [-v デãƒã‚¤ã‚¹]\n"
-#~ " [-D 宛先] [-P PPD ファイル] [-o åå‰=値]\n"
-#~ " [-u allow:ユーザー,ユーザー] [-u deny:ユーザー,ユー"
-#~ "ザー]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: %s ジョブID ユーザー タイトル コピー数 オプション [ファイルå]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: %s ジョブID ユーザー タイトル コピー数 オプション [ファイル]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: %s ジョブID ユーザー タイトル コピー数 オプション ファイル\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -e Use every filter from the PPD file\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: convert [オプション]\n"
-#~ "\n"
-#~ "オプション:\n"
-#~ "\n"
-#~ " -e PPD ファイルã‹ã‚‰ã™ã¹ã¦ã®ãƒ•ィルターを使用ã™ã‚‹\n"
-#~ " -f filename 変æ›ã™ã‚‹ãƒ•ァイルを指定ã™ã‚‹ (指定ãŒãªã‘れ㰠stdin ã¨"
-#~ "ãªã‚‹)\n"
-#~ " -o filename 生æˆã™ã‚‹ãƒ•ァイルを指定ã™ã‚‹ (指定ãŒãªã‘れ㰠stdout "
-#~ "ã¨ãªã‚‹)\n"
-#~ " -i mime/type 入力㮠MIME タイプを指定ã™ã‚‹ (指定ãŒãªã‘れã°è‡ªå‹•ã‚¿"
-#~ "イプ)\n"
-#~ " -j mime/type 出力㮠MIME タイプを指定ã™ã‚‹ (指定ãŒãªã‘れ㰠"
-#~ "application/pdf)\n"
-#~ " -P filename.ppd PPD ファイルを指定ã™ã‚‹\n"
-#~ " -a 'name=value ...' オプションを指定ã™ã‚‹\n"
-#~ " -U username ジョブã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åを指定ã™ã‚‹\n"
-#~ " -J title タイトルを指定ã™ã‚‹\n"
-#~ " -c copies 部数を指定ã™ã‚‹\n"
-#~ " -u 終了ã—ãŸã¨ãã« PPD ファイルを削除ã™ã‚‹\n"
-#~ " -D 終了ã—ãŸã¨ãã«å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å‰Šé™¤ã™ã‚‹\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: cupsaddsmb [オプション] プリンター ... プリンターN\n"
-#~ " cupsaddsmb [オプション] -a\n"
-#~ "\n"
-#~ "オプション:\n"
-#~ " -E サーãƒãƒ¼ã¨ã®æŽ¥ç¶šã‚’æš—å·åŒ–ã™ã‚‹\n"
-#~ " -H sambaサーãƒãƒ¼ 指定㮠SAMBA サーãƒãƒ¼ã‚’使ã†\n"
-#~ " -U sambaユーザー 指定㮠SAMBA ユーザーを使ã£ã¦èªè¨¼ã™ã‚‹\n"
-#~ " -a ã™ã¹ã¦ã®ãƒ—リンターをエキスãƒãƒ¼ãƒˆã™ã‚‹\n"
-#~ " -h cupsサーãƒãƒ¼ 指定㮠CUPS サーãƒãƒ¼ã‚’使ã†\n"
-#~ " -v 冗長ã«ã™ã‚‹ (コマンドを表示ã™ã‚‹)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: cupsctl [オプション] [パラメータ=値 ... パラメータN=値N]\n"
-#~ "\n"
-#~ "オプション:\n"
-#~ "\n"
-#~ " -E æš—å·åŒ–を有効ã«ã™ã‚‹\n"
-#~ " -U ユーザå ユーザーåを指定ã™ã‚‹\n"
-#~ " -h サーãƒãƒ¼[:ãƒãƒ¼ãƒˆ] サーãƒãƒ¼ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’指定ã™ã‚‹\n"
-#~ "\n"
-#~ " --[no-]debug-logging デãƒãƒƒã‚°ãƒ­ã‚°ã®æœ‰åй/無効を切り替ãˆã‚‹\n"
-#~ " --[no-]remote-admin リモート管ç†ã®æœ‰åй/無効を切り替ãˆã‚‹\n"
-#~ " --[no-]remote-any インターãƒãƒƒãƒˆã‹ã‚‰ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯/ç¦æ­¢ã™ã‚‹\n"
-#~ " --[no-]remote-printers リモートプリンターを表示/éžè¡¨ç¤ºã«ã™ã‚‹\n"
-#~ " --[no-]share-printers ãƒ—ãƒªãƒ³ã‚¿ãƒ¼å…±æœ‰ã®æœ‰åй/無効を切り替ãˆã‚‹\n"
-#~ " --[no-]user-cancel-any ã‚らゆるジョブã®ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã‚’ユーザーã«è¨±å¯/ç¦"
-#~ "æ­¢ã™ã‚‹\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: cupsd [-c 設定ファイル] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c 設定ファイル 別ã®è¨­å®šãƒ•ァイルをロードã™ã‚‹\n"
-#~ "-f フォアグラウンドã§å®Ÿè¡Œã™ã‚‹\n"
-#~ "-F フォアグラウンドã§å®Ÿè¡Œã™ã‚‹ãŒãƒ‡ã‚¿ãƒƒãƒã™ã‚‹\n"
-#~ "-h ã“ã®ä½¿ã„方を表示ã™ã‚‹\n"
-#~ "-l launchd(8) ã‹ã‚‰ cupsd を実行ã™ã‚‹\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -e Use every filter from the PPD file\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf 使用ã™ã‚‹ cupsd.conf ãƒ•ã‚¡ã‚¤ãƒ«ã®æŒ‡å®š\n"
-#~ " -e PPD ãƒ•ã‚¡ã‚¤ãƒ«ã§æŒ‡å®šã•れãŸã™ã¹ã¦ã®ãƒ•ィルターを使用ã™ã‚‹\n"
-#~ " -j job-id[,N] フィルターファイル N を指定ã•れãŸã‚¸ãƒ§ãƒ–ã‹ã‚‰ä½¿ç”¨ã™ã‚‹ (デ"
-#~ "フォルト㯠ファイル 1)\n"
-#~ " -n copies å°åˆ·éƒ¨æ•°ã‚’指定ã™ã‚‹\n"
-#~ " -o name=value オプションを指定ã™ã‚‹\n"
-#~ " -p filename.ppd PPDファイルを指定ã™ã‚‹\n"
-#~ " -t title タイトルを指定ã™ã‚‹\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: cupstestdsc [オプション] ファイルå.ps [... ファイルå.ps]\n"
-#~ " cupstestdsc [オプション] -\n"
-#~ "\n"
-#~ "オプション:\n"
-#~ "\n"
-#~ " -h プログラムã®ä½¿ã„方を表示ã™ã‚‹\n"
-#~ "\n"
-#~ " 注æ„: ã“ã®ãƒ—ログラム㯠DSC コメントを検証ã™ã‚‹ã ã‘ã§ã€PostScript 自身を"
-#~ "検証ã™ã‚‹ã‚‚ã®ã§ã¯ã‚りã¾ã›ã‚“。\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-#~ "translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: cupstestppd [オプション] filename1.ppd[.gz] [... filenameN.ppd[."
-#~ "gz]]\n"
-#~ " program | cupstestppd [オプション] -\n"
-#~ "\n"
-#~ "オプション:\n"
-#~ "\n"
-#~ " -R root-directory é•ã†ãƒ«ãƒ¼ãƒˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-#~ "translations}\n"
-#~ " 指定ã•れãŸã‚‚ã®ã‚’エラーã®ä»£ã‚りã«è­¦å‘Šã¨ã—ã¦æ‰±ã†\n"
-#~ " -q メッセージãªã—モードã§å‹•ã\n"
-#~ " -r 「リラックスã€ã‚ªãƒ¼ãƒ—ンモードã§é–‹ã\n"
-#~ " -v メッセージ多ã‚モード\n"
-#~ " -vv メッセージéžå¸¸ã«å¤šã‚モード\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "ä½¿ã„æ–¹: lpmove ジョブ/ソース 宛先\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: lpoptions [-h サーãƒãƒ¼] [-E] -d プリンター\n"
-#~ "   lpoptions [-h サーãƒãƒ¼] [-E] [-p プリンター] -l\n"
-#~ " lpoptions [-h サーãƒãƒ¼] [-E] -p プリンター -o オプション[="
-#~ "値] ...\n"
-#~ " lpoptions [-h サーãƒãƒ¼] [-E] -x プリンター\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "ä½¿ã„æ–¹: lppasswd [-g グループå]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: lppasswd [-g グループå] [ユーザå]\n"
-#~ " lppasswd [-g グループå] -a [ユーザå]\n"
-#~ " lppasswd [-g グループå] -x [ユーザå]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: lpq [-P 宛先] [-U ユーザーå] [-h ホストå[:ãƒãƒ¼ãƒˆ]] [-l] [+é–“"
-#~ "éš”]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: ppdc [オプション] ファイルå.drv [ ... ファイルåN.drv ]\n"
-#~ "オプション:\n"
-#~ " -D 変数å=値 変数åã§æŒ‡å®šã—ãŸå¤‰æ•°ã«å€¤ã‚’セットã™ã‚‹\n"
-#~ " -I include-dir include-dir ã§æŒ‡å®šã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’サーãƒãƒ‘スã«è¿½"
-#~ "加\n"
-#~ " -c catalog.po 指定ã—ãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒ­ã‚°ã‚’ロードã™ã‚‹\n"
-#~ " -d output-dir 出力ディレクトリ(output-dir)を指定ã™ã‚‹\n"
-#~ " -l lang[,lang,...] 出力言語を指定ã™ã‚‹ã€‚(複数å¯èƒ½)\n"
-#~ " -m ModelName ã®å€¤ã‚’ファイルåã¨ã—ã¦ä½¿ç”¨ã™ã‚‹\n"
-#~ " -t PPD を出力ã—ãªã„ã§ãƒ†ã‚¹ãƒˆã™ã‚‹\n"
-#~ " -v 冗長出力を行ㆠ(v を追加ã—ã¦ã•らã«å†—é•·ã«)\n"
-#~ " -z PPD ファイルを GNU zip を使ã£ã¦åœ§ç¸®ã™ã‚‹\n"
-#~ " --cr ãƒ©ã‚¤ãƒ³ã®æœ€å¾Œã¯ CR (Mac OS 9 æ–¹å¼).\n"
-#~ " --crlf ãƒ©ã‚¤ãƒ³ã®æœ€å¾Œã¯ CR + LF (Windows æ–¹å¼).\n"
-#~ " --lf ãƒ©ã‚¤ãƒ³ã®æœ€å¾Œã¯ LF (UNIX/Linux/Mac OS X æ–¹å¼).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: ppdhtml [オプション] ファイルå.drv >ファイルå.html\n"
-#~ " -D 変数å=値 変数åã§æŒ‡å®šã—ãŸå¤‰æ•°ã«å€¤ã‚’セットã™ã‚‹\n"
-#~ "オプション:\n"
-#~ " -I include-dir include-dir ã§æŒ‡å®šã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’サーãƒãƒ‘スã«è¿½åŠ \n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: ppdi [オプション] ファイルå.ppd [ ... ファイルåN.ppd ]\n"
-#~ "オプション:\n"
-#~ " -I インクルードディレクトリ\n"
-#~ " -o ファイルå.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: ppdmerge [オプション] ファイルå.ppd [ ... ファイルåN.ppd ]\n"
-#~ "オプション:\n"
-#~ " -o ファイルå.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "ä½¿ã„æ–¹: ppdpo [オプション] -o ファイルå.po ファイルå.drv [ ... ファイル"
-#~ "åN.drv ]\n"
-#~ "オプション:\n"
-#~ " -D 変数å=値 変数åã§æŒ‡å®šã—ãŸå¤‰æ•°ã«å€¤ã‚’セットã™ã‚‹\n"
-#~ " -I include-dir include-dir ã§æŒ‡å®šã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’サーãƒãƒ‘スã«è¿½åŠ \n"
-#~ " -v 冗長出力を行ㆠ(v を追加ã—ã¦ã•らã«å†—é•·ã«)\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "ä½¿ã„æ–¹: snmp [ホストã¾ãŸã¯IPアドレス]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: 発見ã—ãŸé †ç•ªã« %d å°ã®ãƒ—リンターã ã‘追加ã—ã¾ã™"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: è«–ç†å€¤ã¯ã€waiteof オプション \"%s\" ã§ã‚ã‚‹ã¹ãã§ã™\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: サイドãƒãƒ£ãƒ³ãƒãƒ«ã®èª­ã¿å‡ºã—ã«å¤±æ•—ã—ã¾ã—ãŸ!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: オプション \"%s\" 㯠IncludeFeature 経由ã§å«ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›"
-#~ "ã‚“!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: プリンターãŒå応ã—ã¾ã›ã‚“\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: ãƒ—ãƒªãƒ³ã‚¿ãƒ¼ãŒæ„図ã—ãªã„ EOF ã‚’è¿”ã—ã¾ã—ãŸ\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: リモートホスト㯠%d 秒経ã£ã¦ã‚‚コマンド・ステータス・ãƒã‚¤ãƒˆã‚’è¿”ã—"
-#~ "ã¾ã›ã‚“ã§ã—ãŸ!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: リモートホスト㯠%d 秒経ã£ã¦ã‚‚コントロール・ステータス・ãƒã‚¤ãƒˆã‚’"
-#~ "è¿”ã—ã¾ã›ã‚“ã§ã—ãŸ!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: リモートホスト㯠%d 秒経ã£ã¦ã‚‚データ・ステータス・ãƒã‚¤ãƒˆã‚’è¿”ã—ã¾"
-#~ "ã›ã‚“ã§ã—ãŸ!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: SCSI コマンドã¯ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠(%d)。å†è©¦è¡Œä¸­...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: ã“ã®æ›¸é¡žã¯ Adobe Document Structuring Conventions ã«é©åˆã—ã¦ãŠã‚‰"
-#~ "ãšã€æ­£ã—ãプリントã§ããªã„å¯èƒ½æ€§ãŒã‚りã¾ã™!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: \"%s:%s\": %s ã‚’é–‹ã‘ã¾ã›ã‚“\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: PAP ステータス・リクエストをé€ä¿¡ã§ãã¾ã›ã‚“"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: %d ã‚¿ã‚¤ãƒ—ã®æ„図ã—ãªã„ PAP パケット\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: 未知㮠PAP パケットã®ã‚¿ã‚¤ãƒ— %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: \"%s\" (オプション \"%s\" 用) ã¯æœªçŸ¥ã®è¨­å®šã§ã™!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: \"%s\" ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: %s ã¯ã‚µãƒãƒ¼ãƒˆã—ãªã„ボーレートã§ã™!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ãƒ»ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã®æœŸå¾…値㯠\"%s\"\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: 回復å¯èƒ½: ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ›ã‚¹ãƒˆ '%s' ã¯ãƒ“ジー状態ã§ã™ (%d 秒後ã«å†è©¦"
-#~ "行ã—ã¾ã™...)\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr ""
-#~ "警告ã€Windows 2000 プリンタードライãƒãƒ¼ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "æ´‹å½¢ 4 å·"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "convert: 変æ›ã™ã‚‹ãƒ•ァイルを指定ã™ã‚‹ã«ã¯ã€-f オプションを使ã£ã¦ãã ã•ã„。\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: プリンター \"%s\" ã® PPD ファイルãŒã‚りã¾ã›ã‚“ - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: サーãƒãƒ¼: %s ã«æŽ¥ç¶šã§ãã¾ã›ã‚“\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: \"%s\" ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: \"-%c\"ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: -c オプションã®ã‚ã¨ã«ã¯è¨­å®šãƒ•ァイルåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: カレント・ディレクトリをå–å¾—ã§ãã¾ã›ã‚“!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: \"%s\" ã¯æœªçŸ¥ã®å¼•æ•°ã§ã™ - åœæ­¢ã—ã¾ã™!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: \"%c\" ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™ - åœæ­¢ã—ã¾ã™!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: launchd(8) サãƒãƒ¼ãƒˆãŒã‚³ãƒ³ãƒ‘イルã•れã¦ã„ãªã„ã®ã§ã€é€šå¸¸ãƒ¢ãƒ¼ãƒ‰ã§å‹•作ã—"
-#~ "ã¾ã™ã€‚\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: 䏿­£ãªæ–‡æ›¸ç•ªå· %d ã§ã™!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: 䏿­£ãªã‚¸ãƒ§ãƒ–ID %d ã§ã™!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: ã²ã¨ã¤ã®ãƒ•ァイルåã®ã¿ã‚’指定ã§ãã¾ã™!\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: ジョブ・ファイルをå–å¾—ã§ãã¾ã›ã‚“ - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: -q オプション㯠-v オプションã¨ä¸¡ç«‹ã§ãã¾ã›ã‚“。\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: -v オプション㯠-q オプションã¨ä¸¡ç«‹ã§ãã¾ã›ã‚“。\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "%s/%s ã®ãƒ‡ãƒã‚¤ã‚¹: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "%s ã®ãƒ‡ãƒã‚¤ã‚¹: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\tコマンドã®ãƒ˜ãƒ«ãƒ—ã‚’å–å¾—\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "job-printer-uri 属性ãŒã‚りã¾ã›ã‚“!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: クラスåã¯è¡¨ç¤ºå¯èƒ½æ–‡å­—ã®ã¿ã§æ§‹æˆã•れãªã‘れã°ãªã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: '-P' オプションã®ã‚ã¨ã« PPD ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr ""
-#~ "lpadmin: '-u' オプションã®ã‚ã¨ã«ã¯ allow/deny:ユーザーリスト ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: '-r' オプションã®ã‚ã¨ã«ã¯ã‚¯ãƒ©ã‚¹åãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: '-c' オプションã®ã‚ã¨ã«ã¯ã‚¯ãƒ©ã‚¹åãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: '-D' オプションã®ã‚ã¨ã«èª¬æ˜ŽãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: '-v' オプションã®ã‚ã¨ã«ã¯ãƒ‡ãƒã‚¤ã‚¹ URI ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: '-I' オプションã®ã‚ã¨ã«ãƒ•ァイル形å¼ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: '-h' オプションã®ã‚ã¨ã«ã¯ãƒ›ã‚¹ãƒˆåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: '-i' オプションã®ã‚ã¨ã«ã¯ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ェイスåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: '-L' オプションã®ã‚ã¨ã«å ´æ‰€ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: '-m' オプションã®ã‚ã¨ã«ã¯ãƒ¢ãƒ‡ãƒ«åãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: '-o' オプションã®ã‚ã¨ã«ã¯ 変数å=値 ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: '-p' オプションã®ã‚ã¨ã«ã¯ãƒ—リンターåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: '-d' オプションã®ã‚ã¨ã«ã¯ãƒ—リンターåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr ""
-#~ "lpadmin: '-x' オプションã®ã‚ã¨ã«ã¯ãƒ—リンターåã¾ãŸã¯ã‚¯ãƒ©ã‚¹åãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: メンãƒãƒ¼åãŒè¦‹å½“ãŸã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: プリンター %s ã¯ã™ã§ã«ã‚¯ãƒ©ã‚¹ %s ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã™ã€‚\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: プリンター %s ã¯ã‚¯ãƒ©ã‚¹ %s ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚りã¾ã›ã‚“。\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: プリンターåã«ã¯å°å­—å¯èƒ½ãªæ–‡å­—ã®ã¿ä½¿ç”¨ã§ãã¾ã™!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: クラスã«ãƒ—リンターを追加ã§ãã¾ã›ã‚“:\n"
-#~ " å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: サーãƒãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: PPD ファイル \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“ - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: ファイル \"%s\" ã‚’é–‹ã‘ã¾ã›ã‚“: %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: クラスã‹ã‚‰ãƒ—リンターを削除ã§ãã¾ã›ã‚“:\n"
-#~ " å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: PPD ファイルを設定ã§ãã¾ã›ã‚“:\n"
-#~ " å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: デãƒã‚¤ã‚¹ URI を設定ã§ãã¾ã›ã‚“:\n"
-#~ " å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: インターフェイス・スクリプトã¾ãŸã¯ PPD ファイルを設定ã§ãã¾ã›"
-#~ "ã‚“:\n"
-#~ " å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: インターフェイススクリプトを設定ã§ãã¾ã›ã‚“:\n"
-#~ " å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: プリンターã®èª¬æ˜Žã‚’設定ã§ãã¾ã›ã‚“:\n"
-#~ " å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: プリンターã®å ´æ‰€ãŒè¨­å®šã§ãã¾ã›ã‚“:\n"
-#~ " å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: プリンター・オプションを設定ã§ãã¾ã›ã‚“:\n"
-#~ " å…ˆã«ãƒ—リンターåを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin:\"%s\" ã¯æœªçŸ¥ã® allow/deny オプションã§ã™!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: '%s' ã¯æœªçŸ¥ã®å¼•æ•°ã§ã™!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: '%c' ã¯æœªçŸ¥ã®ã‚ªãƒ—ションã§ã™!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: 警告 - コンテンツタイプリストã¯ç„¡è¦–ã•れã¾ã™!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr ""
-#~ "lpinfo: --device-id ã®å¾Œã«ã¯ã€1284デãƒã‚¤ã‚¹IDを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: --language ã®å¾Œã«ã¯ã€è¨€èªžã‚’指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr ""
-#~ "lpinfo: --make-and-model ã®å¾Œã«ã¯ã€ãƒ¡ãƒ¼ã‚«ãƒ¼ã¨ãƒ¢ãƒ‡ãƒ«ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚りã¾"
-#~ "ã™!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: --product ã®å¾Œã«ã¯ã€è£½å“åを指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr ""
-#~ "lpinfo: --exclude-schemes ã®å¾Œã«ã¯ã€ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒªã‚¹ãƒˆã‚’指定ã™ã‚‹å¿…è¦ãŒã‚りã¾"
-#~ "ã™!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr ""
-#~ "lpinfo: --include-schemes ã®å¾Œã«ã¯ã€ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒªã‚¹ãƒˆã‚’指定ã™ã‚‹å¿…è¦ãŒã‚りã¾"
-#~ "ã™!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr ""
-#~ "lpinfo: --timeout ã®å¾Œã«ã¯ã€ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆå€¤ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: 未知ã®å¼•æ•° '%s'!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: 未知ã®ã‚ªãƒ—ション '%c'!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: 未知ã®ã‚ªãƒ—ション '%s'!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: サーãƒãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“: %s!\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: 未知ã®å¼•æ•° '%s'!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: 未知ã®ã‚ªãƒ—ション '%c'!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: プリンターãŒã‚りã¾ã›ã‚“!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: プリンターã¾ãŸã¯ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’追加ã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: %s ã® PPD ファイルを開ã‘ã¾ã›ã‚“!: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: %s ã® PPD ファイルを開ã‘ã¾ã›ã‚“!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: 未知ã®ãƒ—リンターã¾ãŸã¯ã‚¯ãƒ©ã‚¹ã§ã™!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: root ã ã‘ãŒãƒ‘スワードã®è¿½åŠ ã¨å‰Šé™¤ã‚’行ãˆã¾ã™!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: パスワードファイルãŒãƒ“ジー状態ã§ã™!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ãƒ•ã‚¡ã‚¤ãƒ«ã¯æ›´æ–°ã•れã¾ã›ã‚“!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: ã™ã¿ã¾ã›ã‚“ãŒã€ãƒ‘スワードãŒãƒžãƒƒãƒã—ã¾ã›ã‚“!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: ã™ã¿ã¾ã›ã‚“ãŒã€ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ã¯æ‹’å¦ã•れã¾ã—ãŸã€‚\n"
-#~ "パスワードã¯å°‘ãªãã¨ã‚‚ 6 文字以上ã§ã€ã‚ãªãŸã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åã‚’å«ã‚“ã§ã¯ãªã‚‰"
-#~ "ãšã€\n"
-#~ "å°‘ãªãã¨ã‚‚ 1 ã¤ã®è‹±å­—ãŠã‚ˆã³æ•°å€¤ã‚’å«ã‚“ã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“。\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: ã™ã¿ã¾ã›ã‚“ãŒã€ãƒ‘スワードãŒãƒžãƒƒãƒã—ã¾ã›ã‚“!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: パスワード文字列をコピーã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: パスワードファイルを開ã‘ã¾ã›ã‚“: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ãƒ•ã‚¡ã‚¤ãƒ«ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr "lppasswd: å¤ã„パスワードファイルã®ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã«å¤±æ•—ã—ã¾ã—ãŸ: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: パスワードファイルã®åå‰ã®å¤‰æ›´ã«å¤±æ•—ã—ã¾ã—ãŸ: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: ユーザー \"%s\" ãŠã‚ˆã³ã‚°ãƒ«ãƒ¼ãƒ— \"%s\" ã¯å­˜åœ¨ã—ã¾ã›ã‚“。\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: エラー - 環境変数 %s ãŒã€å­˜åœ¨ã—ãªã„宛先 \"%s\" を指ã—ã¦ã„ã¾ã™!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "クラス %s ã®ãƒ¡ãƒ³ãƒãƒ¼:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "エントリーãŒã‚りã¾ã›ã‚“\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "システムã®ãƒ‡ãƒ•ォルトã®å®›å…ˆãŒã‚りã¾ã›ã‚“\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events ãŒæŒ‡å®šã•れã¦ã„ã¾ã›ã‚“!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri URI \"%s\" ã¯ã™ã§ã«ä½¿ã‚れã¦ã„ã¾ã™!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri URI \"%s\" ã«ã¯æœªçŸ¥ã®ã‚¹ã‚­ãƒ¼ãƒ ãŒä½¿ã‚れã¦ã„ã¾ã™!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d ã¯è‰¯ãã‚りã¾ã›ã‚“!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: ディレクトリー \"%s\" を追加ã—ã¦ã„ã¾ã™...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: %s ã‹ã‚‰ UI テキストを追加ã¾ãŸã¯æ›´æ–°ã—ã¦ã„ã¾ã™...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr ""
-#~ "ppdc: 䏿­£ãª boolean 値 (%s) ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: 䏿­£ãª resolution å \"%s\" ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s !\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: 䏿­£ãª status キーワード %s ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s !\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: 䏿­£ãªæ•°å€¤ç½®æ› ($%c) ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã§ã€Option ãŒãªã„ã®ã« Choice ãŒè¦‹ã¤ã‹ã‚Šã¾ã—"
-#~ "ãŸ!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: locale %s ã«å¯¾ã—㦠#po ãŒ2é‡ã«å®šç¾©ã•れã¦ã„ã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå "
-#~ "%s !\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦ãƒ•ィルター定義ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦ãƒ—ログラムåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠boolean 値ãŒå¿…è¦ã§ã™ã€‚\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Font ã®å¾Œã« charset ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠choice code ãŒå¿…è¦ã§ã™ã€‚\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠choice name/text ãŒå¿…è¦ã§ã™ã€‚\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ColorModel ã«å¯¾ã™ã‚‹ color order ãŒå¿…"
-#~ "è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ColorModel ã«å¯¾ã™ã‚‹ colorspace ãŒå¿…"
-#~ "è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ColorModel ã«å¯¾ã™ã‚‹ compression ãŒå¿…"
-#~ "è¦ã§ã™!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠UIConstraints ã«å¯¾ã™ã‚‹ constraint ãŒ"
-#~ "å¿…è¦ã§ã™!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠DriverType ã®å¾Œã« driver type "
-#~ "keyword ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Duplex ã®å¾Œã« type ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Font ã®å¾Œã« encoding ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: #po %s ã®å¾Œã«ãƒ•ァイルåãŒå¿…è¦ã§ã™! (%d 行目, ファイル %s)\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠group name/text ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠include ファイルåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦æ•´æ•°æŒ‡å®šãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠#po ã®å¾Œã« locale ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: %s ã®å¾Œã« name ãŒå¿…è¦ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠FileName ã®å¾Œã« name ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Font ã®å¾Œã« name ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Manufacturer ã®å¾Œã« name ãŒå¿…è¦ã§"
-#~ "ã™!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠MediaSize ã®å¾Œã« name ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ModelName ã®å¾Œã« name ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠PCFileName ã®å¾Œã« name ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: %s ã®å¾Œã« name/text ãŒå¿…è¦ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Installable ã®å¾Œã« name/text ãŒå¿…è¦"
-#~ "ã§ã™!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Resolution ã®å¾Œã« name/text ãŒå¿…è¦ã§"
-#~ "ã™!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ColorModel ã«å¯¾ã™ã‚‹ name/text ãŒå¿…è¦"
-#~ "ã§ã™!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠option name/text ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠option section ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠option type ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Resolution ã®å¾Œã« override field ãŒ"
-#~ "å¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦å®Ÿæ•°ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠ColorProfile ã«ç¶šã„㦠resolution/"
-#~ "mediatype ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠SimpleColorProfile ã«ç¶šã„㦠"
-#~ "resolution/mediatype ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: %s ã®å¾Œã« selector ãŒå¿…è¦ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Font ã®å¾Œã« status ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Copyright ã®å¾Œã«æ–‡å­—列ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Version ã®å¾Œã«æ–‡å­—列ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠2 ã¤ã®ã‚ªãƒ—ションåãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: %s ã®å¾Œã« value ãŒå¿…è¦ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Font ã®å¾Œã« version ãŒå¿…è¦ã§ã™!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: 無効㪠#include/#po ファイルåã§ã™ \"%s\"!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦ãƒ•ィルターã«å¯¾ã™ã‚‹ç„¡åŠ¹ãª cost ãŒã‚り"
-#~ "ã¾ã™!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦ãƒ•ィルターã«å¯¾ã™ã‚‹ç„¡åйãªç©ºã® MIME "
-#~ "type ãŒã‚りã¾ã™!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„ã¦ãƒ•ィルターã«å¯¾ã™ã‚‹ç„¡åйãªç©ºã® program "
-#~ "name ãŒã‚りã¾ã™!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: 無効㪠option section ãŒã‚りã¾ã™ \"%s\"。%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: 無効㪠option type ãŒã‚りã¾ã™ \"%s\"。%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: ドライãƒãƒ¼æƒ…報ファイル \"%s\" を読ã¿è¾¼ã‚“ã§ã„ã¾ã™...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: ロケール \"%s\" ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’読ã¿è¾¼ã‚“ã§ã„ã¾ã™...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: \"%s\" ã‹ã‚‰ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’読ã¿è¾¼ã‚“ã§ã„ã¾ã™...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: \"%s\" ã®æœ€å¾Œã« #endif ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠#if ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: ロケール %s ã«å¯¾ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚«ã‚¿ãƒ­ã‚°ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!\n"
-
-#~ msgid "ppdc: Option %s defined in two different groups on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: オプション %s ãŒè¡Œ %dã€ãƒ•ァイル %s ã® 2 ã¤ã®ç•°ãªã‚‹ã‚°ãƒ«ãƒ¼ãƒ—ã§å®šç¾©ã•れ"
-#~ "ã¦ã„ã¾ã™!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: オプション %s ã¯ç•°ãªã‚‹åž‹ã§å†å®šç¾©ã•れã¦ã„ã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠Option constraint 㯠*name ã§æŒ‡å®šã—"
-#~ "ã¾ã™!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: %d 行目ã€ãƒ•ァイルå %s ã«ãŠã„㦠#if ã®ãƒã‚¹ãƒˆãŒå¤šã™ãŽã¾ã™!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: PPD ファイル \"%s\" を作æˆã§ãã¾ã›ã‚“ - %s。\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: ディレクトリー \"%s\" を作æˆã§ãã¾ã›ã‚“ - %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: 出力 pipe ãŒä½œæˆã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: cupstestppd を実行ã§ãã¾ã›ã‚“: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: #po ファイル %s ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: インクルードファイル %s ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: \"%s\" ã«å¯¾ã™ã‚‹åœ°åŸŸåŒ–情報ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ - %s \n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: \"%s\" ã«å¯¾ã™ã‚‹åœ°åŸŸåŒ–情報を読ã¿è¾¼ã‚ã¾ã›ã‚“ - %s \n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: 変数 (%s) ã¯æœªå®šç¾©ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: %s ã¯æœªçŸ¥ã®ãƒ‰ãƒ©ã‚¤ãƒãƒ¼ã‚¿ã‚¤ãƒ—ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s。\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: \"%s\" ã¯æœªçŸ¥ã®ä¸¡é¢ã‚¿ã‚¤ãƒ—ã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: \"%s\" ã¯æœªçŸ¥ã®ç”¨ç´™ã‚µã‚¤ã‚ºã§ã™ã€‚%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: 未知㮠token \"%s\" ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: å®Ÿæ•°ã«æœªçŸ¥ã®çµ‚了文字 \"%s\" ãŒã‚りã¾ã™ã€‚%d 行目ã€ãƒ•ァイルå %s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %c ã§å§‹ã¾ã‚‹æ–‡å­—ã«å¯¾ã—ã¦çµ‚端文字ãŒã‚りã¾ã›ã‚“。%d 行目ã€ãƒ•ァイルå %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: %s を書ã込んã§ã„ã¾ã™...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: ディレクトリー \"%s\" ã« PPD ファイルを書ã込んã§ã„ã¾ã™...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: 䏿­£ãª LanguageVersion \"%s\" ㌠%s ã«ã‚りã¾ã™!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: PPD ファイル %s を無視ã—ã¾ã™...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: %s ã‚’ %s ã«ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã§ãã¾ã›ã‚“ - %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "プリンター %s 㯠%s ã‹ã‚‰ç„¡åйã§ã™ -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "プリンター %s ã¯å¾…機中ã§ã™ã€‚%s ä»¥æ¥æœ‰åйã§ã™\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "プリンター %s 㯠%s-%d ã‚’å°åˆ·ã—ã¦ã„ã¾ã™ã€‚%s ä»¥æ¥æœ‰åйã§ã™\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "プリンター %s/%s 㯠%s ã‹ã‚‰ç„¡åйã§ã™ -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "プリンター %s/%s ã¯å¾…機中ã§ã™ã€‚%s ä»¥æ¥æœ‰åйã§ã™\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "プリンター %s/%s ã¯ç¾åœ¨ %s-%d ã‚’å°åˆ·ä¸­ã§ã™ã€‚%s ä»¥æ¥æœ‰åйã§ã™\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "リクエスト ID 㯠%s-%d ã§ã™ (%d 個ã®ãƒ•ァイル)\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "スケジューラーã¯å‹•作ã—ã¦ã„ã¾ã›ã‚“\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "スケジューラーã¯å‹•作中ã§ã™\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\tデーモンã¨ã‚­ãƒ¥ãƒ¼ã®çŠ¶æ…‹ã‚’è¡¨ç¤º\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "システムã®ãƒ‡ãƒ•ォルトã®å®›å…ˆ: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "システムã®ãƒ‡ãƒ•ォルトã®å®›å…ˆ: %s/%s\n"
diff --git a/locale/cups_ko.po b/locale/cups_ko.po
deleted file mode 100644
index 7a2d158e..00000000
--- a/locale/cups_ko.po
+++ /dev/null
@@ -1,8650 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0fmm"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f~%.0f x %.0fmm"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2fì¸ì¹˜"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f~%.2f x %.2fì¸ì¹˜"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%sì„(를) 변경할 수 없습니다."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1ì¸ì¹˜/ì´ˆ"
-
-msgid "1.25x0.25\""
-msgstr "1.25x0.25\""
-
-msgid "1.25x2.25\""
-msgstr "1.25x2.25\""
-
-msgid "1.5 inch/sec."
-msgstr "1.5ì¸ì¹˜/ì´ˆ"
-
-msgid "1.50x0.25\""
-msgstr "1.50x0.25\""
-
-msgid "1.50x0.50\""
-msgstr "1.50x0.50\""
-
-msgid "1.50x1.00\""
-msgstr "1.50x1.00\""
-
-msgid "1.50x2.00\""
-msgstr "1.50x2.00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10ì¸ì¹˜/ì´ˆ"
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100mm/ì´ˆ"
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11ì¸ì¹˜/ì´ˆ"
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12ì¸ì¹˜/ì´ˆ"
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120mm/ì´ˆ"
-
-msgid "120x60dpi"
-msgstr "120x60dpi"
-
-msgid "120x72dpi"
-msgstr "120x72dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15mm/ì´ˆ"
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150mm/ì´ˆ"
-
-msgid "150dpi"
-msgstr "150dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2ì¸ì¹˜/ì´ˆ"
-
-msgid "2-Sided Printing"
-msgstr "양면 프린트 중"
-
-msgid "2.00x0.37\""
-msgstr "2.00x0.37\""
-
-msgid "2.00x0.50\""
-msgstr "2.00x0.50\""
-
-msgid "2.00x1.00\""
-msgstr "2.00x1.00\""
-
-msgid "2.00x1.25\""
-msgstr "2.00x1.25\""
-
-msgid "2.00x2.00\""
-msgstr "2.00x2.00\""
-
-msgid "2.00x3.00\""
-msgstr "2.00x3.00\""
-
-msgid "2.00x4.00\""
-msgstr "2.00x4.00\""
-
-msgid "2.00x5.50\""
-msgstr "2.00x5.50\""
-
-msgid "2.25x0.50\""
-msgstr "2.25x0.50\""
-
-msgid "2.25x1.25\""
-msgstr "2.25x1.25\""
-
-msgid "2.25x4.00\""
-msgstr "2.25x4.00\""
-
-msgid "2.25x5.50\""
-msgstr "2.25x5.50\""
-
-msgid "2.38x5.50\""
-msgstr "2.38x5.50\""
-
-msgid "2.5 inches/sec."
-msgstr "2.5ì¸ì¹˜/ì´ˆ"
-
-msgid "2.50x1.00\""
-msgstr "2.50x1.00\""
-
-msgid "2.50x2.00\""
-msgstr "2.50x2.00\""
-
-msgid "2.75x1.25\""
-msgstr "2.75x1.25\""
-
-msgid "2.9 x 1\""
-msgstr "2.9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20mm/ì´ˆ"
-
-msgid "200 mm/sec."
-msgstr "200mm/ì´ˆ"
-
-msgid "203dpi"
-msgstr "203dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24핀 시리즈"
-
-msgid "240x72dpi"
-msgstr "240x72dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250mm/ì´ˆ"
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3ì¸ì¹˜/ì´ˆ"
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3.00x1.00\""
-
-msgid "3.00x1.25\""
-msgstr "3.00x1.25\""
-
-msgid "3.00x2.00\""
-msgstr "3.00x2.00\""
-
-msgid "3.00x3.00\""
-msgstr "3.00x3.00\""
-
-msgid "3.00x5.00\""
-msgstr "3.00x5.00\""
-
-msgid "3.25x2.00\""
-msgstr "3.25x2.00\""
-
-msgid "3.25x5.00\""
-msgstr "3.25x5.00\""
-
-msgid "3.25x5.50\""
-msgstr "3.25x5.50\""
-
-msgid "3.25x5.83\""
-msgstr "3.25x5.83\""
-
-msgid "3.25x7.83\""
-msgstr "3.25x7.83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "3.5\" 디스í¬"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3.5\" ë””ìŠ¤í¬ - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3.50x1.00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30mm/ì´ˆ"
-
-msgid "300 mm/sec."
-msgstr "300mm/ì´ˆ"
-
-msgid "300dpi"
-msgstr "300dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360dpi"
-
-msgid "360x180dpi"
-msgstr "360x180dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4ì¸ì¹˜/ì´ˆ"
-
-msgid "4.00x1.00\""
-msgstr "4.00x1.00\""
-
-msgid "4.00x13.00\""
-msgstr "4.00x13.00\""
-
-msgid "4.00x2.00\""
-msgstr "4.00x2.00\""
-
-msgid "4.00x2.50\""
-msgstr "4.00x2.50\""
-
-msgid "4.00x3.00\""
-msgstr "4.00x3.00\""
-
-msgid "4.00x4.00\""
-msgstr "4.00x4.00\""
-
-msgid "4.00x5.00\""
-msgstr "4.00x5.00\""
-
-msgid "4.00x6.00\""
-msgstr "4.00x6.00\""
-
-msgid "4.00x6.50\""
-msgstr "4.00x6.50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40mm/ì´ˆ"
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5ì¸ì¹˜/ì´ˆ"
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6ì¸ì¹˜/ì´ˆ"
-
-msgid "6.00x1.00\""
-msgstr "6.00x1.00\""
-
-msgid "6.00x2.00\""
-msgstr "6.00x2.00\""
-
-msgid "6.00x3.00\""
-msgstr "6.00x3.00\""
-
-msgid "6.00x4.00\""
-msgstr "6.00x4.00\""
-
-msgid "6.00x5.00\""
-msgstr "6.00x5.00\""
-
-msgid "6.00x6.00\""
-msgstr "6.00x6.00\""
-
-msgid "6.00x6.50\""
-msgstr "6.00x6.50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60mm/ì´ˆ"
-
-msgid "600dpi"
-msgstr "600dpi"
-
-msgid "60dpi"
-msgstr "60dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7ì¸ì¹˜/ì´ˆ"
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8ì¸ì¹˜/ì´ˆ"
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8.00x1.00\""
-
-msgid "8.00x2.00\""
-msgstr "8.00x2.00\""
-
-msgid "8.00x3.00\""
-msgstr "8.00x3.00\""
-
-msgid "8.00x4.00\""
-msgstr "8.00x4.00\""
-
-msgid "8.00x5.00\""
-msgstr "8.00x5.00\""
-
-msgid "8.00x6.00\""
-msgstr "8.00x6.00\""
-
-msgid "8.00x6.50\""
-msgstr "8.00x6.50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80mm/ì´ˆ"
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9ì¸ì¹˜/ì´ˆ"
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "9핀 시리즈"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "작업 허용"
-
-msgid "Accepted"
-msgstr "허용ë¨"
-
-msgid "Add Class"
-msgstr "í´ëž˜ìФ 추가"
-
-msgid "Add Printer"
-msgstr "프린터 추가"
-
-msgid "Add RSS Subscription"
-msgstr "RSS êµ¬ë… ì¶”ê°€"
-
-msgid "Address"
-msgstr "주소"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "주소 - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "관리"
-
-msgid "Always"
-msgstr "í•­ìƒ"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "ì ìš©ìž"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "ìž˜ëª»ëœ NULL dests í¬ì¸í„°"
-
-msgid "Bad OpenGroup"
-msgstr "ìž˜ëª»ëœ OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "ìž˜ëª»ëœ OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "ìž˜ëª»ëœ OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "ìž˜ëª»ëœ ìš”ì²­"
-
-msgid "Bad SNMP version number"
-msgstr "ìž˜ëª»ëœ SNMP 버전 번호"
-
-msgid "Bad UIConstraints"
-msgstr "ìž˜ëª»ëœ UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "ìž˜ëª»ëœ ë³µì‚¬ 매수 ê°’ %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "ìž˜ëª»ëœ ì‚¬ìš©ìž ì„¤ì • 매개변수"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "ìž˜ëª»ëœ number-up ê°’ %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "ìž˜ëª»ëœ page-ranges ê°’ %d-%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "배너"
-
-msgid "Billing Information: "
-msgstr "지불 정보: "
-
-msgid "Bond Paper"
-msgstr "고급 종ì´"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "CPCL ë ˆì´ë¸” 프린터"
-
-msgid "Cancel RSS Subscription"
-msgstr "RSS êµ¬ë… ì·¨ì†Œ"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "설정값 변경"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "í´ëž˜ìФ"
-
-msgid "Clean Print Heads"
-msgstr "프린트 ë¨¸ë¦¬ë§ ì§€ìš°ê¸°"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "색ìƒ"
-
-msgid "Color Mode"
-msgstr "ìƒ‰ìƒ ëª¨ë“œ"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "커뮤니티 ì´ë¦„ 길ì´ê°€ 무제한입니다"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "계ì†"
-
-msgid "Continuous"
-msgstr "계ì†"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "ìƒì„±ë¨"
-
-msgid "Created On: "
-msgstr "다ìŒì— ìƒì„±ë¨: "
-
-msgid "Custom"
-msgstr "사용ìží™”"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "오려ë‘기"
-
-msgid "Cutter"
-msgstr "ìžë¥´ê¸° ë„구"
-
-msgid "Dark"
-msgstr "어둡게"
-
-msgid "Darkness"
-msgstr "ì–´ë‘ "
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "í´ëž˜ìФ ì‚­ì œ"
-
-msgid "Delete Printer"
-msgstr "프린터 삭제"
-
-msgid "Description: "
-msgstr "설명: "
-
-msgid "DeskJet Series"
-msgstr "DeskJet 시리즈"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "\"%s\" 대ìƒì´ ìž‘ì—…ì„ í—ˆìš©í•˜ì§€ 않습니다."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "ì§ì ‘ ì—´ 미디어"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "비활성화ë¨"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "드ë¼ì´ë²„ ì´ë¦„: "
-
-msgid "Driver Version: "
-msgstr "드ë¼ì´ë²„ 버전: "
-
-msgid "Duplexer"
-msgstr "양면 프린터"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1 ë ˆì´ë¸” 프린터"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2 ë ˆì´ë¸” 프린터"
-
-msgid "Edit Configuration File"
-msgstr "구성 íŒŒì¼ íŽ¸ì§‘"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "배너 종료 중"
-
-msgid "English"
-msgstr "Korean"
-
-msgid "Enter old password:"
-msgstr "ì´ì „ 암호 ìž…ë ¥:"
-
-msgid "Enter password again:"
-msgstr "암호 다시 입력:"
-
-msgid "Enter password:"
-msgstr "암호 입력:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"ì´ íŽ˜ì´ì§€ì— 연결하려면 ì‚¬ìš©ìž ì´ë¦„ ë° ì•”í˜¸ ë˜ëŠ” root ì‚¬ìš©ìž ì´ë¦„ ë° ì•”í˜¸ë¥¼ ìž…"
-"력하십시오. Kerberos ì¸ì¦ì„ 사용하고 있다면, 유효한 Kerberos í‹°ì¼“ì„ ê°€ì§€ê³  있"
-"는지 확ì¸í•˜ì‹­ì‹œì˜¤."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "봉투 공급"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "오류 정책"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "10ê°œ ë ˆì´ë¸”마다"
-
-msgid "Every 2 Labels"
-msgstr "2ê°œ ë ˆì´ë¸”마다"
-
-msgid "Every 3 Labels"
-msgstr "3ê°œ ë ˆì´ë¸”마다"
-
-msgid "Every 4 Labels"
-msgstr "4ê°œ ë ˆì´ë¸”마다"
-
-msgid "Every 5 Labels"
-msgstr "5ê°œ ë ˆì´ë¸”마다"
-
-msgid "Every 6 Labels"
-msgstr "6ê°œ ë ˆì´ë¸”마다"
-
-msgid "Every 7 Labels"
-msgstr "7ê°œ ë ˆì´ë¸”마다"
-
-msgid "Every 8 Labels"
-msgstr "8ê°œ ë ˆì´ë¸”마다"
-
-msgid "Every 9 Labels"
-msgstr "9ê°œ ë ˆì´ë¸”마다"
-
-msgid "Every Label"
-msgstr "모든 ë ˆì´ë¸”"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "ì˜ˆìƒ ì‹¤íŒ¨"
-
-msgid "Export Printers to Samba"
-msgstr "Samba로 프린터 보내기"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "íŒŒì¼ í´ë”"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "íŒŒì¼ í´ë” - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "2절지"
-
-msgid "Forbidden"
-msgstr "금지ë¨"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "ì¼ë°˜"
-
-msgid "Generic"
-msgstr "ì¼ë°˜"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU 길ì´ê°€ 무제한입니다"
-
-msgid "Glossy Paper"
-msgstr "글로시 종ì´"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "ê·¸ë ˆì´ ìŠ¤ì¼€ì¼"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "행잉 í´ë”"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "행잉 í´ë” - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "올바르지 ì•Šì€ ì œì–´ 문ìž"
-
-msgid "Illegal main keyword string"
-msgstr "올바르지 ì•Šì€ ì£¼ 키워드 스트ë§"
-
-msgid "Illegal option keyword string"
-msgstr "올바르지 ì•Šì€ ì˜µì…˜ 키워드 스트ë§"
-
-msgid "Illegal translation string"
-msgstr "올바르지 ì•Šì€ ë²ˆì—­ 스트ë§"
-
-msgid "Illegal whitespace character"
-msgstr "올바르지 ì•Šì€ ì—¬ë°± 문ìž"
-
-msgid "Installable Options"
-msgstr "설치 가능한 옵션"
-
-msgid "Installed"
-msgstr "설치ë¨"
-
-msgid "IntelliBar Label Printer"
-msgstr "IntelliBar ë ˆì´ë¸” 프린터"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "내부 오류"
-
-msgid "Internet Postage 2-Part"
-msgstr "ì¸í„°ë„· 우표 2부분"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "ì¸í„°ë„· 우표 2부분 - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "ì¸í„°ë„· 우표 3부분"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "ì¸í„°ë„· 우표 3부분 - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "ì¸í„°ë„· 프린트 프로토콜"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "#%d ìž‘ì—…ì´ ì´ë¯¸ ì¤‘ë‹¨ë¨ - 취소할 수 없습니다."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "#%d ìž‘ì—…ì´ ì´ë¯¸ ì·¨ì†Œë¨ - 취소할 수 없습니다."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "#%d ìž‘ì—…ì´ ì´ë¯¸ ì™„ë£Œë¨ - 취소할 수 없습니다."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "ìž‘ì—…ì´ ì™„ë£Œë¨"
-
-msgid "Job Created"
-msgstr "ìž‘ì—…ì´ ìƒì„±ë¨"
-
-msgid "Job ID: "
-msgstr "작업 ID: "
-
-msgid "Job Options Changed"
-msgstr "작업 ì˜µì…˜ì´ ë³€ê²½ë¨"
-
-msgid "Job Stopped"
-msgstr "ìž‘ì—…ì´ ì¤‘ë‹¨ë¨"
-
-msgid "Job UUID: "
-msgstr "작업 UUID: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "ìž‘ì—…ì´ ì™„ë£Œë˜ì—ˆê³  변경할 수 없습니다."
-
-msgid "Job operation failed:"
-msgstr "작업 ì‹¤í–‰ì— ì‹¤íŒ¨í•¨:"
-
-msgid "Job state cannot be changed."
-msgstr "작업 ìƒíƒœë¥¼ 변경할 수 없습니다."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "작업"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR 호스트 ë˜ëŠ” 프린터"
-
-msgid "Label Printer"
-msgstr "ë ˆì´ë¸” 프린터"
-
-msgid "Label Top"
-msgstr "ë ˆì´ë¸” ìƒë‹¨"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "주소 í¬ê²Œ"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "주소 í¬ê²Œ - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet 시리즈 PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "불빛"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "ì¤„ì— í—ˆìš©ë˜ëŠ” 최대 길ì´ë³´ë‹¤ ê¹€(255ìž)"
-
-msgid "List Available Printers"
-msgstr "사용 가능한 프린터 목ë¡"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "위치: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "가장ìžë¦¬ 길게(세로)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "제조사 ë° ëª¨ë¸: "
-
-msgid "Manual Feed"
-msgstr "ìˆ˜ë™ ê³µê¸‰"
-
-msgid "Media Dimensions: "
-msgstr "미디어 í¬ê¸°: "
-
-msgid "Media Limits: "
-msgstr "미디어 제한: "
-
-msgid "Media Name: "
-msgstr "미디어 ì´ë¦„: "
-
-msgid "Media Size"
-msgstr "미디어 í¬ê¸°"
-
-msgid "Media Source"
-msgstr "미디어 소스"
-
-msgid "Media Tracking"
-msgstr "미디어 ì¶”ì "
-
-msgid "Media Type"
-msgstr "미디어 유형"
-
-msgid "Medium"
-msgstr "중간"
-
-msgid "Memory allocation error"
-msgstr "메모리 할당 오류"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "PPD-Adobe-4.x 머리ë§ì´ 유실ë¨"
-
-msgid "Missing asterisk in column 1"
-msgstr "1ì—´ì— ìžˆëŠ” 별표가 유실ë¨"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "ê°’ 스트ë§ì´ 유실ë¨"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "í´ëž˜ìФ 수정"
-
-msgid "Modify Printer"
-msgstr "프린터 수정"
-
-msgid "Move All Jobs"
-msgstr "모든 작업 ì´ë™"
-
-msgid "Move Job"
-msgstr "작업 ì´ë™"
-
-msgid "Moved Permanently"
-msgstr "ì˜êµ¬ì ìœ¼ë¡œ ì´ë™"
-
-msgid "NULL PPD file pointer"
-msgstr "NULL PPD íŒŒì¼ í¬ì¸í„°"
-
-msgid "Name OID uses indefinite length"
-msgstr "ì´ë¦„ OID 길ì´ê°€ 무제한입니다"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "안 함"
-
-msgid "New Stylus Color Series"
-msgstr "새로운 Stylus Color 시리즈"
-
-msgid "New Stylus Photo Series"
-msgstr "새로운 Stylus Photo 시리즈"
-
-msgid "No"
-msgstr "아니요"
-
-msgid "No Content"
-msgstr "콘í…츠 ì—†ìŒ"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "VarBind SEQUENCE ì—†ìŒ"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "활성 ì—°ê²°ì´ ì—†ìŒ"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "커뮤니티 ì´ë¦„ ì—†ìŒ"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "ì¶”ê°€ëœ ëŒ€ìƒì´ 없습니다."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "error-index ì—†ìŒ"
-
-msgid "No error-status"
-msgstr "error-status ì—†ìŒ"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "ì´ë¦„ OID ì—†ìŒ"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "request-id ì—†ìŒ"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "ë°œê²¬ëœ êµ¬ë…ì´ ì—†ìŠµë‹ˆë‹¤."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "variable-bindings SEQUENCE ì—†ìŒ"
-
-msgid "No version number"
-msgstr "버전 번호 ì—†ìŒ"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "중단(ë§ˆí¬ ì„¼ì‹±)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "중단(웹 센싱)"
-
-msgid "Normal"
-msgstr "ì¼ë°˜"
-
-msgid "Not Found"
-msgstr "ì—†ìŒ"
-
-msgid "Not Implemented"
-msgstr "실행ë˜ì§€ 않ìŒ"
-
-msgid "Not Installed"
-msgstr "설치ë˜ì§€ 않ìŒ"
-
-msgid "Not Modified"
-msgstr "수정ë˜ì§€ 않ìŒ"
-
-msgid "Not Supported"
-msgstr "ì§€ì›ë˜ì§€ 않ìŒ"
-
-msgid "Not allowed to print."
-msgstr "프린트가 허용ë˜ì§€ 않습니다."
-
-msgid "Note"
-msgstr "참고"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "승ì¸"
-
-msgid "Off (1-Sided)"
-msgstr "ë”(한 쪽 ë°©í–¥)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "온ë¼ì¸ ë„움ë§"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "%s 열기 실패: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "ìš°ì„  CloseGroupì´ ì—†ëŠ” OpenGroup"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "우선 CloseUI/JCLCloseUI가 없는 OpenUI/JCLOpenUI"
-
-msgid "Operation Policy"
-msgstr "ë™ìž‘ ì •ì±…"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "ì„¤ì¹˜ëœ ì˜µì…˜"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "옵션: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "출력 모드"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "PCL ë ˆì´ì € 프린터"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "íŒ¨í‚·ì— Get-Response-PDUê°€ 없습니다"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "íŒ¨í‚·ì´ SEQUENCE로 시작하지 않습니다"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "%2$sì˜ %1$s 암호? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "SAMBA를 통해 %2$sì— ì—°ê²°í•˜ë ¤ë©´ 필요한 %1$sì˜ ì•”í˜¸: "
-
-msgid "Pause Class"
-msgstr "í´ëž˜ìФ ì¼ì‹œì •ì§€"
-
-msgid "Pause Printer"
-msgstr "프린터 ì¼ì‹œì •ì§€"
-
-msgid "Peel-Off"
-msgstr "착탈ì‹"
-
-msgid "Photo"
-msgstr "사진"
-
-msgid "Photo Labels"
-msgstr "사진 ë ˆì´ë¸”"
-
-msgid "Plain Paper"
-msgstr "ì¼ë°˜ 종ì´"
-
-msgid "Policies"
-msgstr "ì •ì±…"
-
-msgid "Port Monitor"
-msgstr "í¬íЏ 모니터"
-
-msgid "PostScript Printer"
-msgstr "PostScript 프린터"
-
-msgid "Postcard"
-msgstr "엽서"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "프린트 í•´ìƒë„"
-
-msgid "Print Job:"
-msgstr "프린트 작업:"
-
-msgid "Print Mode"
-msgstr "프린트 모드"
-
-msgid "Print Rate"
-msgstr "프린트 비율"
-
-msgid "Print Self-Test Page"
-msgstr "프린트 ìžì²´ 테스트 페ì´ì§€"
-
-msgid "Print Speed"
-msgstr "프린트 ì†ë„"
-
-msgid "Print Test Page"
-msgstr "프린트 테스트 페ì´ì§€"
-
-msgid "Print and Cut"
-msgstr "프린트 ë° ìžë¥´ê¸°"
-
-msgid "Print and Tear"
-msgstr "프린트 ë° í‹°ì–´"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "다ìŒì´ 프린트ë¨: "
-
-msgid "Printed From: "
-msgstr "다ìŒì—서 프린트ë¨: "
-
-msgid "Printed On: "
-msgstr "다ìŒì—서 프린트ë¨: "
-
-msgid "Printer Added"
-msgstr "ì¶”ê°€ëœ í”„ë¦°í„°"
-
-msgid "Printer Default"
-msgstr "기본 프린터"
-
-msgid "Printer Deleted"
-msgstr "ì‚­ì œëœ í”„ë¦°í„°"
-
-msgid "Printer Modified"
-msgstr "ìˆ˜ì •ëœ í”„ë¦°í„°"
-
-msgid "Printer Name: "
-msgstr "프린터 ì´ë¦„: "
-
-msgid "Printer Paused"
-msgstr "ì¤‘ë‹¨ëœ í”„ë¦°í„°"
-
-msgid "Printer Settings"
-msgstr "프린터 설정"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "프린터:"
-
-msgid "Printers"
-msgstr "프린터"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "작업 비우기"
-
-msgid "Quarto"
-msgstr "4절지"
-
-msgid "Quota limit reached."
-msgstr "ìš©ëŸ‰ì´ í•œê³„ì— ë„달했습니다."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "작업 거부"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "오류 시 다시 프린트"
-
-msgid "Request Entity Too Large"
-msgstr "요청한 ìš©ëŸ‰ì´ ë„ˆë¬´ í½ë‹ˆë‹¤"
-
-msgid "Resolution"
-msgstr "í•´ìƒë„"
-
-msgid "Resume Class"
-msgstr "í´ëž˜ìФ 다시 시작"
-
-msgid "Resume Printer"
-msgstr "프린터 다시 시작"
-
-msgid "Return Address"
-msgstr "주소 반환"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "주소 반환 - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "뒤로가기"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE 길ì´ê°€ 무제한입니다"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "기타 보기"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "시리얼 í¬íЏ #%d"
-
-msgid "Server Restarted"
-msgstr "서버 재시ë™ë¨"
-
-msgid "Server Security Auditing"
-msgstr "서버 보안 ê°ì‚¬"
-
-msgid "Server Started"
-msgstr "서버 시ë™ë¨"
-
-msgid "Server Stopped"
-msgstr "서버 중단ë¨"
-
-msgid "Service Unavailable"
-msgstr "사용할 수 없는 서비스"
-
-msgid "Set Allowed Users"
-msgstr "í—ˆìš©ëœ ì‚¬ìš©ìž ì„¤ì •"
-
-msgid "Set As Server Default"
-msgstr "서버 기본값으로 설정"
-
-msgid "Set Class Options"
-msgstr "í´ëž˜ìФ 옵션 설정"
-
-msgid "Set Printer Options"
-msgstr "프린터 옵션 설정"
-
-msgid "Set Publishing"
-msgstr "발행 설정"
-
-msgid "Shipping Address"
-msgstr "발송 주소"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "발송 주소 - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "가장ìžë¦¬ 짧게(가로)"
-
-msgid "Special Paper"
-msgstr "특수 종ì´"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "표준"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "배너 시작 중"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "대차표"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color 시리즈"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo 시리즈"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "ìˆ˜í¼ A"
-
-msgid "Super B"
-msgstr "ìˆ˜í¼ B"
-
-msgid "Super B/A3"
-msgstr "ìˆ˜í¼ B/A3"
-
-msgid "Switching Protocols"
-msgstr "프로토콜 전환 중"
-
-msgid "Tabloid"
-msgstr "타블로ì´ë“œ"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "절취"
-
-msgid "Tear-Off"
-msgstr "절취선"
-
-msgid "Tear-Off Adjust Position"
-msgstr "절취선 조절 위치"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "\"%s\" PPD 파ì¼ì„ ì°¾ì„ ìˆ˜ 없습니다."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "\"%s\" PPD 파ì¼ì„ ì—´ 수 없습니다: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"í´ëž˜ìФ ì´ë¦„ì€ ìµœëŒ€ 127ìžì˜ 프린트 가능한 문ìžë§Œì„ í¬í•¨í•  수 있고 빈 칸, 슬래"
-"시(/) ë˜ëŠ” 파운드 기호(#)를 í¬í•¨í•˜ì§€ 않습니다."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr "notify-lease-duration ì†ì„±ì„ 작업 구ë…ê³¼ 함께 사용할 수 없습니다."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"프린터 ì´ë¦„ì€ ìµœëŒ€ 127ìžì˜ 프린트 가능한 문ìžë§Œì„ í¬í•¨í•  수 있고 빈 칸, 슬래"
-"시(/) ë˜ëŠ” 파운드 기호(#)를 í¬í•¨í•˜ì§€ 않습니다."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "\"%s\" printer-uriê°€ 유효하지 ì•Šì€ ë¬¸ìžë¥¼ í¬í•¨í•©ë‹ˆë‹¤."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr "printer-uri는 \"ipp://HOSTNAME/classes/CLASSNAME\" 형태여야 합니다."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr "printer-uri는 \"ipp://HOSTNAME/printers/PRINTERNAME\" 형태여야 합니다."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"êµ¬ë… ì´ë¦„ì€ ë¹ˆ 칸, 슬래시(/), 물ìŒí‘œ(?) ë˜ëŠ” 파운드 기호(#)를 í¬í•¨í•˜ì§€ 않습니"
-"다."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "구ë…ì´ ë„ˆë¬´ 많습니다."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "열 전송 미디어"
-
-msgid "Title: "
-msgstr "제목: "
-
-msgid "Too many active jobs."
-msgstr "활성 ìž‘ì—…ì´ ë„ˆë¬´ 많습니다."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "투명ë„"
-
-msgid "Tray"
-msgstr "트레ì´"
-
-msgid "Tray 1"
-msgstr "íŠ¸ë ˆì´ 1"
-
-msgid "Tray 2"
-msgstr "íŠ¸ë ˆì´ 2"
-
-msgid "Tray 3"
-msgstr "íŠ¸ë ˆì´ 3"
-
-msgid "Tray 4"
-msgstr "íŠ¸ë ˆì´ 4"
-
-msgid "URI Too Long"
-msgstr "URI가 너무 김"
-
-msgid "US Ledger"
-msgstr "US ì›ìž¥"
-
-msgid "US Legal"
-msgstr "US 공문서"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "US 편지지"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "USB 시리얼 í¬íЏ #%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "cupsd.conf 파ì¼ì— ì—°ê²°í•  수 ì—†ìŒ:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "RSS 구ë…ì„ ì¶”ê°€í•  수 ì—†ìŒ:"
-
-msgid "Unable to add class:"
-msgstr "í´ëž˜ìŠ¤ë¥¼ 추가할 수 ì—†ìŒ:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "프린터를 추가할 수 ì—†ìŒ:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "RSS 구ë…ì„ ì·¨ì†Œí•  수 ì—†ìŒ:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "printer-is-shared ì†ì„±ì„ 변경할 수 ì—†ìŒ:"
-
-msgid "Unable to change printer:"
-msgstr "프린터를 변경할 수 ì—†ìŒ:"
-
-msgid "Unable to change server settings:"
-msgstr "서버 ì„¤ì •ê°’ì„ ë³€ê²½í•  수 ì—†ìŒ:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "í˜¸ìŠ¤íŠ¸ì— ì—°ê²°í•  수 ì—†ìŒ."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "임시 파ì¼ì„ ìƒì„±í•  수 ì—†ìŒ:"
-
-msgid "Unable to delete class:"
-msgstr "í´ëž˜ìŠ¤ë¥¼ 삭제할 수 ì—†ìŒ:"
-
-msgid "Unable to delete printer:"
-msgstr "프린터를 삭제할 수 ì—†ìŒ:"
-
-msgid "Unable to do maintenance command:"
-msgstr "ëª…ë ¹ì„ ìœ ì§€í•  수 ì—†ìŒ:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "í´ëž˜ìФ 목ë¡ì„ ì–»ì„ ìˆ˜ ì—†ìŒ:"
-
-msgid "Unable to get class status:"
-msgstr "í´ëž˜ìФ ìƒíƒœë¥¼ 알 수 ì—†ìŒ:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "프린터 드ë¼ì´ë²„ 목ë¡ì„ ì–»ì„ ìˆ˜ ì—†ìŒ:"
-
-msgid "Unable to get printer attributes:"
-msgstr "프린터 ì†ì„±ì„ ì–»ì„ ìˆ˜ ì—†ìŒ:"
-
-msgid "Unable to get printer list:"
-msgstr "프린터 목ë¡ì„ ì–»ì„ ìˆ˜ ì—†ìŒ:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "프린터 ìƒíƒœë¥¼ 알 수 없습니다:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "í´ëž˜ìŠ¤ë¥¼ 수정할 수 ì—†ìŒ:"
-
-msgid "Unable to modify printer:"
-msgstr "프린터를 수정할 수 ì—†ìŒ:"
-
-msgid "Unable to move job"
-msgstr "ìž‘ì—…ì„ ì´ë™í•  수 없습니다"
-
-msgid "Unable to move jobs"
-msgstr "ìž‘ì—…ì„ ì´ë™í•  수 없습니다"
-
-msgid "Unable to open PPD file"
-msgstr "PPD 파ì¼ì„ ì—´ 수 없습니다"
-
-msgid "Unable to open PPD file:"
-msgstr "PPD 파ì¼ì„ ì—´ 수 ì—†ìŒ:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "cupsd.conf 파ì¼ì„ ì—´ 수 ì—†ìŒ:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "테스트 페ì´ì§€ë¥¼ 프린트할 수 ì—†ìŒ:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "ì˜µì…˜ì„ ì„¤ì •í•  수 ì—†ìŒ:"
-
-msgid "Unable to set server default:"
-msgstr "서버 ê¸°ë³¸ê°’ì„ ì„¤ì •í•  수 ì—†ìŒ:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "cupsd.conf 파ì¼ì„ 업로드할 수 없습니다:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "ì¸ì¦ë˜ì§€ 않ìŒ"
-
-msgid "Units"
-msgstr "장비"
-
-msgid "Unknown"
-msgstr "알 수 ì—†ìŒ"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "알 수 없는 printer-error-policy \"%s\" ."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "알 수 없는 printer-op-policy \"%s\"."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "ì§€ì›ë˜ì§€ 않는 ê°’ 유형"
-
-msgid "Upgrade Required"
-msgstr "업그레ì´ë“œ 필요함"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "ê°’ì˜ ê¸¸ì´ê°€ 무제한입니다"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBindì˜ ê¸¸ì´ê°€ 무제한입니다"
-
-msgid "Version uses indefinite length"
-msgstr "버전 길ì´ê°€ 무제한입니다"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "예"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"<A HREF=\"https://%s:%d%s\">https://%s:%d%s</A> URLì„ ì‚¬ìš©í•˜ì—¬ ì´ íŽ˜ì´ì§€ì— ì—°"
-"결해야 합니다."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "ZPL ë ˆì´ë¸” 프린터"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "중단ë¨"
-
-msgid "canceled"
-msgstr "취소ë¨"
-
-msgid "completed"
-msgstr "완료ë¨"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "cups-deviced ì‹¤í–‰ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
-
-msgid "cups-driverd failed to execute."
-msgstr "cups-driverd ì‹¤í–‰ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index 길ì´ê°€ 무제한입니다"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status 길ì´ê°€ 무제한입니다"
-
-msgid "held"
-msgstr "유지ë¨"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "대기"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "보류 중"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "처리 중"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id 길ì´ê°€ 무제한입니다"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "%s í†µê³„ì— ì‹¤íŒ¨í•¨: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "중단ë¨"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "알 수 ì—†ìŒ"
-
-msgid "untitled"
-msgstr "무제"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindingsì˜ ê¸¸ì´ê°€ 무제한입니다"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(ì „ì²´)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(ì—†ìŒ)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%dê°œì˜ ì—”íŠ¸ë¦¬\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\t결함 후: 계ì†\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\t경고:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\t배너 필요함\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\të¬¸ìž ì„¸íŠ¸ 설정:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tì—°ê²°: ì§ì ‘\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tì—°ê²°: ì›ê²©\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\t기본 페ì´ì§€ í¬ê¸°:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\t기본 피치:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\t기본 í¬íЏ 설정:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\t설명: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\t구성 마운트ë¨:\n"
-#~ "\t콘í…츠 유형: 모ë‘\n"
-#~ "\t프린터 유형: 알 수 ì—†ìŒ\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\t구성 허용ë¨:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tì¸í„°íŽ˜ì´ìФ: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tì¸í„°íŽ˜ì´ìФ: %s/ì¸í„°íŽ˜ì´ìФ/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tì¸í„°íŽ˜ì´ìФ: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\t위치: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\t결함 시: 경고 안 함\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tì‚¬ìš©ìž í—ˆìš©ë¨:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tì‚¬ìš©ìž ê±°ë¶€ë¨:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\të°ëª¬ 표시\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\t엔트리 ì—†ìŒ\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\t프린터가 '%s' 스피드 -1 ìž¥ë¹„ì— ìžˆìŠµë‹ˆë‹¤\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\t프린트가 비활성화ë˜ì—ˆìŠµë‹ˆë‹¤\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\t프린트가 활성화ë˜ì—ˆìŠµë‹ˆë‹¤\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\t%sì— ëŒ€í•œ 대기열\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tëŒ€ê¸°ì—´ì´ ë¹„í™œì„±í™”ë˜ì—ˆìŠµë‹ˆë‹¤\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tëŒ€ê¸°ì—´ì´ í™œì„±í™”ë˜ì—ˆìŠµë‹ˆë‹¤\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\t알 수 없는 ì´ìœ \n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " ì í•© 테스트 ìƒì„¸ ê²°ê³¼\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: 15페ì´ì§€, 섹션 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: 15페ì´ì§€, 섹션 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: 19페ì´ì§€, 섹션 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: 20페ì´ì§€, 섹션 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: 27페ì´ì§€, 섹션 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: 42페ì´ì§€, 섹션 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: 16-17페ì´ì§€, 섹션 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: 42-45페ì´ì§€, 섹션 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: 45-46페ì´ì§€, 섹션 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: 48-49페ì´ì§€, 섹션 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: 52-54페ì´ì§€, 섹션 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0fë°”ì´íЏ\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN \"%s %s\"ì´(ê°€) \"%s %s\"와(ê³¼) ì¶©ëŒí•©ë‹ˆë‹¤\n"
-#~ " (제한=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %sì— ì¼ì¹˜í•˜ëŠ” ì˜µì…˜ì´ ì—†ìŠµë‹ˆë‹¤!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %sì´(ê°€) %s와(ê³¼) ì¼ë°˜ì ì¸ ì ‘ë‘어를 공유합니다\n"
-#~ " REF: 15페ì´ì§€, 섹션 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN 기본 ì„ íƒì‚¬í•­ ì¶©ëŒ!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN ì–‘ë©´ 옵션 키워드 %sì´(ê°€) 예ìƒëŒ€ë¡œ ë™ìž‘하지 ì•Šì„ ìˆ˜ 있으"
-#~ "ë©° ì´ë¦„ì„ ì–‘ë©´ìœ¼ë¡œ 해야 합니다!\n"
-#~ " REF: 122페ì´ì§€, 섹션 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr " WARN 파ì¼ì´ CR, LF ë° CR LF 줄 ëì„ í¬í•¨í•©ë‹ˆë‹¤!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PPD 4.3 ì‚¬ì–‘ì€ LanguageEncodingì´ í•„ìš”í•©ë‹ˆë‹¤.\n"
-#~ " REF: 56-57페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN %d번째 줄ì—는 여백만 있습니다!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PPD 4.3 ì‚¬ì–‘ì€ Manufacturerì´ í•„ìš”í•©ë‹ˆë‹¤.\n"
-#~ " REF: 58-59페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN \"%s\" APDialogExtension íŒŒì¼ ìœ ì‹¤ë¨\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN \"%s\" APPrinterIconPath íŒŒì¼ ìœ ì‹¤ë¨\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN 비 Windows PPD 파ì¼ì€ 줄 ëì„ CR LFê°€ 아닌 LFë§Œ 있는 줄 ë"
-#~ "ì„ ì‚¬ìš©í•´ì•¼ 합니다!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN ì´ì „ PPD 버전 %.1f!\n"
-#~ " REF: 42페ì´ì§€, 섹션 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PPD ì‚¬ì–‘ì— ìœ„ë°˜ë˜ëŠ” 8.3 ì´ìƒì˜ PCFileName.\n"
-#~ " REF: 61-62페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN í”„ë¡œí† ì½œì€ PJLì„ í¬í•¨í•˜ì§€ë§Œ JCL ì†ì„±ì€ 설정ë˜ì§€ 않았습니"
-#~ "다.\n"
-#~ " REF: 78-79페ì´ì§€, 섹션 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN í”„ë¡œí† ì½œì€ PJL ë° BCP를 ëª¨ë‘ í¬í•¨í•©ë‹ˆë‹¤; TBCP 예ìƒë¨.\n"
-#~ " REF: 78-79페ì´ì§€, 섹션 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PPD 4.3 ì‚¬ì–‘ì€ ShortNickNameì´ í•„ìš”í•©ë‹ˆë‹¤.\n"
-#~ " REF: 64-65페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %sì´(ê°€) 존재하지 않습니다!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s ìž˜ëª»ëœ %s - ì„ íƒì‚¬í•­ %s!\n"
-#~ " REF: 122페ì´ì§€, 섹션 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr " %1$s %3$s ì˜µì…˜ì— ëŒ€í•œ ìž˜ëª»ëœ UTF-8 \"%2$s\" 번역 스트ë§!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %1$s %3$s 옵션, %4$s ì„ íƒì‚¬í•­ì— 대한 ìž˜ëª»ëœ UTF-8 \"%2$s\" 번역 스"
-#~ "트ë§!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s ìž˜ëª»ëœ \"%s\" cupsFilter ê°’!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s ìž˜ëª»ëœ %s cupsICCProfile!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s ìž˜ëª»ëœ \"%s\" cupsPreFilter ê°’!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s ìž˜ëª»ëœ cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s ìž˜ëª»ëœ \"%s\" 언어!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s cupsUIConstraints %sì´(ê°€) 비어있ìŒ!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %1$s %3$s ì˜µì…˜ì— ëŒ€í•œ \"%2$s\" 번역 ìŠ¤íŠ¸ë§ ìœ ì‹¤ë¨!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %1$s %3$s 옵션, %4$s ì„ íƒì‚¬í•­ì— 대한 \"%2$s\" 번역 ìŠ¤íŠ¸ë§ ìœ ì‹¤ë¨!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %1$s \"*%4$s %5$s *%6$s %7$s\" UIConstraintsì— ìžˆëŠ” *%2$s %3$s ì„ íƒ"
-#~ "사항 유실ë¨!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %1$s %4$s cupsUIConstraintsì— ìžˆëŠ” *%2$s %3$s ì„ íƒì‚¬í•­ 유실ë¨: \"%5"
-#~ "$s\"!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s \"%s\" cupsFilter 파ì¼ì´ 유실ë¨\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s \"%s\" cupsICCProfile 파ì¼ì´ 유실ë¨!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s \"%s\" cupsPreFilter íŒŒì¼ ìœ ì‹¤ë¨\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s %s cupsUIResolver 유실ë¨!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %1$s \"*%3$s %4$s *%5$s %6$s\" UIConstraintsì— ìžˆëŠ” %2$s 옵션 유실"
-#~ "ë¨!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %1$s %3$s cupsUIConstraintsì— ìžˆëŠ” %2$s 옵션 유실ë¨: \"%4$s\"!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s 파ì¼ì— \"%s\" 기초 ë²ˆì—­ì´ í¬í•¨ë˜ì–´ 있지 않습니다!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s ì„ íƒì‚¬í•­ ì—†ìŒì„ ì •ì˜í•˜ì§€ ì•Šì€ %sì´(ê°€) í•„ìš”!\n"
-#~ " REF: 122페ì´ì§€, 섹션 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s 불필요한 %s cupsICCProfile ê°’ì´ %s와(ê³¼) ì¶©ëŒí•¨!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s %s cupsUIResolver가 루프를 유발함!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr " **FAIL** %s ì„ íƒì‚¬í•­ ì´ë¦„ %s ë° %sì´(ê°€) 경우별로만 다름!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FAIL** %sì€(는) 1284DeviceIDì´ì–´ì•¼ 합니다!\n"
-#~ " REF: 72페ì´ì§€, 섹션 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ Default%s %s\n"
-#~ " REF: 40페ì´ì§€, 섹션 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ DefaultImageableArea %s!\n"
-#~ " REF: 102페ì´ì§€, 섹션 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ DefaultPaperDimension %s!\n"
-#~ " REF: 103페ì´ì§€, 섹션 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FAIL** 파ì¼ì— 있는 ìž˜ëª»ëœ JobPatchFile ì†ì„±\n"
-#~ " REF: 24페ì´ì§€, 섹션 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ Manufacturer(\"HP\"ì´ì–´ì•¼ 함)\n"
-#~ " REF: 211페ì´ì§€, 표 D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ Manufacturer(\"Oki\"ì´ì–´ì•¼ 함)\n"
-#~ " REF: 211페ì´ì§€, 표 D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ ModelName - \"%c\"ì€(는) 스트ë§ì—서 허용ë˜ì§€ 않습니"
-#~ "다.\n"
-#~ " REF: 59-60페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ PSVersion - \"(string) int\"ì´(ê°€) 아닙니다.\n"
-#~ " REF: 62-64페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ Product - \"(string)\"ì´(ê°€) 아닙니다.\n"
-#~ " REF: 62페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ ShortNickName - 31ìžë³´ë‹¤ ê¹ë‹ˆë‹¤.\n"
-#~ " REF: 64-65페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ %s - ì„ íƒì‚¬í•­ %s!\n"
-#~ " REF: 84페ì´ì§€, 섹션 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ FileVersion \"%s\"\n"
-#~ " REF: 56페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ FormatVersion \"%s\"\n"
-#~ " REF: 56페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **FAIL** ìž˜ëª»ëœ LanguageEncoding %s - ISOLatin1ì´ì–´ì•¼ 합니다!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **FAIL** ìž˜ëª»ëœ LanguageVersion %s - ì˜ì–´ì—¬ì•¼ 합니다!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr " **FAIL** 기본 옵션 코드를 í•´ì„í•  수 없습니다: %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FAIL** %s 옵션 %s ì„ íƒì‚¬í•­ì— 대한 기본 번역 스트ë§ì´ 8비트 문ìž"
-#~ "를 í¬í•¨í•©ë‹ˆë‹¤!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FAIL** %s ì˜µì…˜ì— ëŒ€í•œ 기본 번역 스트ë§ì´ 8비트 문ìžë¥¼ í¬í•¨í•©ë‹ˆ"
-#~ "다!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr " **FAIL** %s ë° %s 그룹 ì´ë¦„ì´ ê²½ìš°ë³„ë¡œë§Œ 다름!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FAIL** 다중 %s í•­ëª©ì´ %s ì´ë¦„ì„ ì„ íƒ!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr " **FAIL** %s ë° %s 옵션 ì´ë¦„ì´ ê²½ìš°ë³„ë¡œë§Œ 다름!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** Default%s í•„ìš”\n"
-#~ " REF: 40페ì´ì§€, 섹션 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DefaultImageableArea í•„ìš”\n"
-#~ " REF: 102페ì´ì§€, 섹션 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DefaultPaperDimension í•„ìš”\n"
-#~ " REF: 103페ì´ì§€, 섹션 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** FileVersion í•„ìš”\n"
-#~ " REF: 56페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** FormatVersion í•„ìš”\n"
-#~ " REF: 56페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** %s PageSizeì— ëŒ€í•œ ImageableArea í•„ìš”\n"
-#~ " REF: 41페ì´ì§€, 섹션 5.\n"
-#~ " REF: 102페ì´ì§€, 섹션 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** LanguageEncoding í•„ìš”\n"
-#~ " REF: 56-57페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** LanguageVersion í•„ìš”\n"
-#~ " REF: 57-58페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Manufacturer í•„ìš”\n"
-#~ " REF: 58-59페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ModelName í•„ìš”\n"
-#~ " REF: 59-60페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** NickName í•„ìš”\n"
-#~ " REF: 60페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** PCFileName í•„ìš”\n"
-#~ " REF: 61-62페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** PSVersion í•„ìš”\n"
-#~ " REF: 62-64페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** PageRegion í•„ìš”\n"
-#~ " REF: 100페ì´ì§€, 섹션 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** PageSize í•„ìš”\n"
-#~ " REF: 41페ì´ì§€, 섹션 5.\n"
-#~ " REF: 99페ì´ì§€, 섹션 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** PageSize í•„ìš”\n"
-#~ " REF: 99-100페ì´ì§€, 섹션 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** %s PageSizeì— ëŒ€í•œ PaperDimension í•„ìš”\n"
-#~ " REF: 41페ì´ì§€, 섹션 5.\n"
-#~ " REF: 103페ì´ì§€, 섹션 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Product í•„ìš”\n"
-#~ " REF: 62페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ShortNickName í•„ìš”\n"
-#~ " REF: 64-65페ì´ì§€, 섹션 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %dê°œì˜ ì˜¤ë¥˜ 발견\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " ìž˜ëª»ëœ %%%%BoundingBox: %d번째 줄!\n"
-#~ " REF: 39페ì´ì§€, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " ìž˜ëª»ëœ %%%%Page: %d번째 줄!\n"
-#~ " REF: 53페ì´ì§€, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " ìž˜ëª»ëœ %%%%Pages: %d번째 줄!\n"
-#~ " REF: 43페ì´ì§€, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " %d번째 ì¤„ì´ 255ìžë³´ë‹¤ ê¹ë‹ˆë‹¤(%d)!\n"
-#~ " REF: 25페ì´ì§€, 줄 길ì´\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " 첫번째 ì¤„ì— ìžˆëŠ” %!PS-Adobe-3.0ì´ ìœ ì‹¤ë¨!\n"
-#~ " REF: 17페ì´ì§€, 3.1 ë„í멘트 구성하기\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " %%EndComments 설명 유실ë¨!\n"
-#~ " REF: 41페ì´ì§€, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " 유실ë˜ì—ˆê±°ë‚˜ ìž˜ëª»ëœ %%BoundingBox: 설명!\n"
-#~ " REF: 39페ì´ì§€, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " 유실ë˜ì—ˆê±°ë‚˜ ìž˜ëª»ëœ %%Page: 설명!\n"
-#~ " REF: 53페ì´ì§€, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " 유실ë˜ì—ˆê±°ë‚˜ ìž˜ëª»ëœ %%Page: 설명!\n"
-#~ " REF: 43페ì´ì§€, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " ë°œê²¬ëœ ì˜¤ë¥˜ ì—†ìŒ\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " 255ìžë¥¼ 초과하는 %dê°œì˜ ì¤„ 발견!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " 너무 ë§Žì€ %%BeginDocument 설명!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " 너무 ë§Žì€ %%EndDocument 설명!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " 경고: 파ì¼ì— ë°”ì´ë„ˆë¦¬ ë°ì´í„°ê°€ í¬í•¨ë˜ì–´ 있습니다!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " 경고: 파ì¼ì— %%EndComments ì„¤ëª…ì´ ì—†ìŠµë‹ˆë‹¤!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " 경고: 파ì¼ì— ì´ì „ DSC 버전 %.1fê°€ 있습니다!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FAIL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** PPD 파ì¼ì„ ì—´ 수 ì—†ìŒ - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** PPD 파ì¼ì„ ì—´ 수 ì—†ìŒ - %s, %d번째 줄.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " PASS\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10 봉투"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11 봉투"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12 봉투"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14 봉투"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9 봉투"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0fë°”ì´íЏ\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0fë°”ì´íЏ\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr " %2$s ì´í›„ì— %1$s ìŠ¹ì¸ ìš”ì²­\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "CUPS ë²„ì „ì˜ lpc로는 %sì´(ê°€) 실행ë˜ì§€ 않습니다.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%sì´(ê°€) 준비ë˜ì§€ 않ìŒ\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%sì´(ê°€) 준비ë¨\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%sì´(ê°€) 준비ë˜ì—ˆê³  프린트 중\n"
-
-#, fuzzy
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%2$s ì´í›„ì— %1$s ìŠ¹ì¸ ìš”ì²­ 안 함 -\n"
-#~ "\t%1$s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%sì´(ê°€) ì§€ì›ë˜ì§€ 않ìŒ!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%3$s ì´í›„ì— %1$s/%2$s ìŠ¹ì¸ ìš”ì²­\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%3$s ì´í›„ì— %1$s/%2$s ìŠ¹ì¸ ìš”ì²­ 안 함 -\n"
-#~ "\t%4$s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [작업 %d 로컬호스트]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s 실패: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: 해야할 ì¼ì„ 모르겠ìŒ!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%1$s: 오류 - \"%3$s\" 대ìƒì— 존재하지 않는 %2$s 환경 변수 ì´ë¦„!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: 오류 - ìž˜ëª»ëœ ìž‘ì—… ID!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr "%s: 오류 - 파ì¼ì„ 프린트할 수 없고 ìž‘ì—…ì„ ë™ì‹œì— 대체할 수 ì—†ìŒ!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: 오류 - íŒŒì¼ ë˜ëŠ” 작업 IDê°€ 제공ë˜ì—ˆë‹¤ë©´ stdinì—서 프린트할 수 ì—†ìŒ!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: 오류 - '-S' 옵션 ë’¤ì— ë¬¸ìž ì„¸íŠ¸ê°€ 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: 오류 - '-T' 옵션 ë’¤ì— ì½˜í…츠 ìœ í˜•ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: 오류 - '-n' 옵션 ë’¤ì— ë³µì‚¬ 매수가 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: 오류 - '-#' 옵션 ë’¤ì— ë³µì‚¬ë³¸ 수가 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: 오류 - '-P' 옵션 ë’¤ì— ëŒ€ìƒì´ 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: 오류 - '-b' 옵션 ë’¤ì— ëŒ€ìƒì´ 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: 오류 - '-d' 옵션 ë’¤ì— ëŒ€ìƒì´ 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: 오류 - '-f' 옵션 ë’¤ì— êµ¬ì„±ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: 오류 - '-H' 옵션 ë’¤ì— ìœ ì§€ ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: 오류 - '-H' 옵션 ë’¤ì— í˜¸ìŠ¤íŠ¸ ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: 오류 - '-h' 옵션 ë’¤ì— í˜¸ìŠ¤íŠ¸ ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: 오류 - '-y' 옵션 ë’¤ì— ëª¨ë“œ 목ë¡ì´ 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: 오류 - '-%c' 옵션 ë’¤ì— ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: 오류 - '-o' 옵션 ë’¤ì— ì˜µì…˜ 스트ë§ì´ 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: 오류 - '-P' 옵션 ë’¤ì— íŽ˜ì´ì§€ 목ë¡ì´ 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: 오류 - '-%c' 옵션 ë’¤ì— ìš°ì„ ìˆœìœ„ê°€ 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: 오류 - '-r' 옵션 ë’¤ì— ì´ìœ  í…스트가 예ìƒë¨!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: 오류 - '-t' 옵션 ë’¤ì— ì œëª©ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: 오류 - '-U' 옵션 ë’¤ì— ì‚¬ìš©ìž ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: 오류 - '-u' 옵션 ë’¤ì— ì‚¬ìš©ìž ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: 오류 - '-%c' 옵션 ë’¤ì— ê°’ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: 오류 - '-W' 옵션 ë’¤ì— \"completed\", \"not-completed\" ë˜ëŠ” \"all\"ì´ "
-#~ "í•„ìš”!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: 오류 - 사용 가능한 기본 대ìƒì´ 없습니다.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: 오류 - 우선순위는 1ì—서 100사ì´ì—¬ì•¼ 합니다.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: 오류 - ì¼ì •ì´ ì‘답하지 않ìŒ!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: 오류 - 너무 ë§Žì€ íŒŒì¼ - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: 오류 - \"%s\"ì— ì—°ê²°í•  수 ì—†ìŒ - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: 오류 - stdinì—서 대기할 수 ì—†ìŒ - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: 오류 - 알 수 없는 ëŒ€ìƒ \"%s\"!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: 오류 - 알 수 없는 ëŒ€ìƒ \"%s/%s\"!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: 오류 - 알 수 없는 옵션 '%c'!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: 오류 - 알 수 없는 옵션 '%s'!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: '-i' 옵션 ë’¤ì— ìž‘ì—… IDê°€ 예ìƒë¨!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: \"%s\" 필터를 사용할 수 ì—†ìŒ: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: \"%s\" 목ë¡ì— 유효하지 ì•Šì€ ëŒ€ìƒ ì´ë¦„!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: 유효하지 ì•Šì€ í•„í„° 문ìžì—´ \"%s\"\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr "%s: '-H restart' ì•žì— ìž‘ì—… ID('-i jobid') í•„ìš”!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: %s/%sì—서 %s/%s까지 변환할 í•„í„°ê°€ ì—†ìŒ!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: ìž‘ë™ ì‹¤íŒ¨: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: 죄송합니다, 컴파ì¼ëœ 암호화 ì§€ì›ì´ 없습니다!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: ì„œë²„ì— ì—°ê²°í•  수 ì—†ìŒ\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: ì„œë²„ì— ì—°ê²°í•  수 ì—†ìŒ!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: MIME ìœ í˜•ì˜ \"%s\"ì„(를) ê²°ì •í•  수 ì—†ìŒ!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: %sì„(를) ì—´ 수 ì—†ìŒ - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: %sì„(를) ì—´ 수 ì—†ìŒ - %s, %d번째 줄\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: %sì„(를) ì—´ 수 ì—†ìŒ: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: PPD 파ì¼ì„ ì—´ 수 ì—†ìŒ: %s, %d번째 줄\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: \"%s\" ë˜ëŠ” \"%s\"ì—서 MIME ë°ì´í„°ë² ì´ìŠ¤ë¥¼ ì½ì„ 수 ì—†ìŒ!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: 알 수 없는 ëŒ€ìƒ \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: 알 수 없는 ëŒ€ìƒ MIME 유형 %s/%s!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: 알 수 없는 옵션 '%c'!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: 알 수 없는 소스 MIME 유형 %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: 경고 - '%c' í¬ë§· ì¡°í•© 키가 ì§€ì›ë˜ì§€ ì•ŠìŒ - ì¶œë ¥ì´ ì˜¬ë°”ë¥´ì§€ ì•Šì„ ìˆ˜ 있"
-#~ "습니다!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: 경고 - ë¬¸ìž ì„¸íŠ¸ ì˜µì…˜ì´ ë¬´ì‹œë¨!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: 경고 - 콘í…츠 유형 ì˜µì…˜ì´ ë¬´ì‹œë¨!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: 경고 - 구성 ì˜µì…˜ì´ ë¬´ì‹œë¨!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: 경고 - 모드 ì˜µì…˜ì´ ë¬´ì‹œë¨!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%1$s: 오류 - \"%3$s\" 대ìƒì— 존재하지 않는 %2$s 환경 변수 ì´ë¦„!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: 오류 - '-o' 옵션 ë’¤ì— option=valueê°€ 예ìƒë¨!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: 오류 - 사용 가능한 기본 대ìƒì´ 없습니다.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 DPI ê·¸ë ˆì´ ìŠ¤ì¼€ì¼"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?유효하지 ì•Šì€ ë„ì›€ë§ ëª…ë ¹ì„ ì•Œ 수 ì—†ìŒ\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "프린터 드ë¼ì´ë²„를 보내려면 Samba 암호가 필요함!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr "프린터 드ë¼ì´ë²„를 보내려면 Samba ì‚¬ìš©ìž ì´ë¦„ì´ í•„ìš”í•¨!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "\"%s\"(ì´)ë¼ëŠ” ì´ë¦„ì˜ í´ëž˜ìŠ¤ê°€ ì´ë¯¸ 존재합니다!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "\"%s\"(ì´)ë¼ëŠ” ì´ë¦„ì˜ í”„ë¦°í„°ê°€ ì´ë¯¸ 존재합니다!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3(대)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4(대)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4(소)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5(대)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "%s 프린터 ìƒíƒœë¥¼ ìž˜ëª»ëœ %d 값으로 설정하려고 합니다!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "ì†ì„± ê·¸ë£¹ì´ ì˜¬ë°”ë¥´ì§€ 않습니다(%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "ìž˜ëª»ëœ ìž¥ë¹„ URI \"%s\"!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "ìž˜ëª»ëœ device-uri \"%s\"!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "ìž˜ëª»ëœ device-uri 설계 \"%s\"!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "ìž˜ëª»ëœ document-format \"%s\"!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "ìž˜ëª»ëœ íŒŒì¼ ì´ë¦„ 버í¼!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "ìž˜ëª»ëœ ì„œì²´ ì†ì„±: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "ìž˜ëª»ëœ job-priority ê°’!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "ìž˜ëª»ëœ job-sheets ê°’\"%s\"!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "ìž˜ëª»ëœ job-sheets ê°’ 유형!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "ìž˜ëª»ëœ job-state ê°’!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "ìž˜ëª»ëœ job-uri ì†ì„± \"%s\"!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "ìž˜ëª»ëœ notify-pull-method \"%s\"!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "ìž˜ëª»ëœ notify-recipient-uri URI \"%s\"!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "%d번째 ì¤„ì— ìžˆëŠ” ìž˜ëª»ëœ ì˜µì…˜ + ì„ íƒì‚¬í•­!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "ìž˜ëª»ëœ port-monitor \"%s\"!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "ìž˜ëª»ëœ printer-state ê°’ %d!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "ìž˜ëª»ëœ ìš”ì²­ 버전 ìˆ«ìž %d.%d!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "ìž˜ëª»ëœ êµ¬ë… ID!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0 봉투"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1 봉투"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2 봉투"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3 봉투"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4 봉투"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5 봉투"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6 봉투"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65 봉투"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7 봉투"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "\"%s\" ë¬¸ìž ì„¸íŠ¸ê°€ ì§€ì›ë˜ì§€ 않ìŒ!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3 봉투"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4 봉투"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "ëª…ë ¹ì´ ìƒëžµë  수 있습니다. ëª…ë ¹ì€ ë‹¤ìŒê³¼ 같습니다:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "\"%s\" ìœ í˜•ì„ ê²€ìƒ‰í•  수 ì—†ìŒ!"
-
-#~ msgid "Cover open."
-#~ msgstr "ë®ê°œê°€ ì—´ë ¤ 있ìŒ."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL 봉투"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "현ìƒì•¡ì´ ê±°ì˜ ë¹„ì—ˆìŠµë‹ˆë‹¤."
-
-#~ msgid "Developer empty!"
-#~ msgstr "현ìƒì•¡ì´ 비어 있ìŒ!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "장비: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "ë„í멘트 %dì„ ìž‘ì—… %dì—서 ì°¾ì„ ìˆ˜ 없습니다."
-
-#~ msgid "Door open."
-#~ msgstr "ë¬¸ì´ ì—´ë ¤ 있ìŒ."
-
-#~ msgid "Double Postcard"
-#~ msgstr "ì´ì¤‘ 엽서"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: 페ì´ì§€ ì •ë³´ì— ë©”ëª¨ë¦¬ë¥¼ 할당할 수 없습니다: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: 페ì´ì§€ ë°°ì—´ì— ë©”ëª¨ë¦¬ë¥¼ 할당할 수 없습니다: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ %%BoundingBox: ì„¤ëª…ì´ ë³´ìž„!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ %%IncludeFeature: 설명!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ %%Page: 파ì¼ì— 있는 설명!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ %%PageBoundingBox: 파ì¼ì— 있는 설명!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ SCSI 장비 íŒŒì¼ \"%s\"!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ ë¬¸ìž ì„¸íŠ¸ íŒŒì¼ %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ ë¬¸ìž ì„¸íŠ¸ 유형 %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ ì—´ ê°’ %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ cpi ê°’ %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ ì„œì²´ 설명 줄: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ lpi ê°’ %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ íŽ˜ì´ì§€ 설정!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ í…스트 ë°©í–¥ %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: ìž˜ëª»ëœ í…스트 ê¸¸ì´ %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: ëŒ€ìƒ í”„ë¦°í„°ê°€ 없습니다!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: %%BoundingBox 복제: ì„¤ëª…ì´ ë³´ìž„!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: %%Pages 복제: ì„¤ëª…ì´ ë³´ìž„!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: 빈 프린트 파ì¼!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: %d 오류가 ë‹¤ìŒ PAPSendData ìš”ì²­ì„ ë³´ë‚´ëŠ” 중: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: %2$sì˜ %1$d번째 ì¤„ì— ì¸ìš© 스트ë§ì´ 예ìƒë¨!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: 심ê°í•œ USB 오류!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: 파ì¼ì„ 프린트할 수 없는, 유효하지 ì•Šì€ HP-GL/2 ëª…ë ¹ì´ ë³´ìž„!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: %%EndPrologê°€ 유실ë¨!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: %%EndSetupì´ ìœ ì‹¤ë¨!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: 명령 ë¼ì¸ì˜ 장비 URIê°€ 유실ë˜ì—ˆê³  DEVICE_URI 환경 변수가 ì—†ìŒ!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: 배너 파ì¼ì˜ %d번째 줄 ê°’ì´ ìœ ì‹¤ë¨!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: %2$sì˜ %1$d번째 ì¤„ì— ìžˆëŠ” 모든 번역 ìŠ¤íŠ¸ë§ ì•žì— msgid 줄 í•„ìš”!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: %%BoundingBoxê°€ ì—†ìŒ: 머리ë§ì— 설명!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: %%Pagesê°€ ì—†ìŒ: 머리ë§ì— 설명!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: argv[0] ë˜ëŠ” DEVICE_URI 환경 변수ì—서 ë°œê²¬ëœ ìž¥ë¹„ URIê°€ ì—†ìŒ!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: %s ë¬¸ìž ì„¸íŠ¸ 파ì¼ì— 서체 ì—†ìŒ\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: 페ì´ì§€ ì—†ìŒ!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: ì¢…ì´ ì—†ìŒ!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: PRINTER 환경 변수가 ì •ì˜ë˜ì§€ 않ìŒ!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: 프린트 파ì¼ì´ 허용ë˜ì§€ 않ìŒ(%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: 프린터가 ì‘답하지 않ìŒ\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: 프린터가 ì‘답하지 않ìŒ!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: 프린터가 예기치 ì•Šì€ EOF를 보냄\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: ì›ê²© 호스트가 제어 파ì¼ì„ 허용하지 않ìŒ(%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: ì›ê²© 호스트가 ë°ì´í„° 파ì¼ì„ 허용하지 않ìŒ(%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: ë°ì´í„°ë¥¼ 프린터로 전송하는 ë™ì•ˆ 시간초과 오류가 ë°œìƒí–ˆìŠµë‹ˆë‹¤\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: ìž‘ì—…ì— %d 파ì¼ì„ 추가할 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: %d ìž‘ì—…ì„ ì·¨ì†Œí•  수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: PDF 파ì¼ì„ 복사할 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: ì†Œì¼“ì„ ìƒì„±í•  수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr "ERROR: 임시 ì••ì¶• 프린트 파ì¼ì„ ìƒì„±í•  수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: 임시 파ì¼ì„ ìƒì„±í•  수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: 임시 파ì¼ì„ ìƒì„±í•  수 ì—†ìŒ - %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: 임시 파ì¼ì„ ìƒì„±í•  수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: pictwpstops를 실행할 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: gs í”„ë¡œê·¸ëž¨ì„ ì‹¤í–‰í•  수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: pdftops í”„ë¡œê·¸ëž¨ì„ ì‹¤í–‰í•  수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: pictwpstops를 분리(fork)í•  수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: PAP ìš”ì²­ì„ ì–»ì„ ìˆ˜ ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: PAP ì‘ë‹µì„ ì–»ì„ ìˆ˜ ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr "ERROR: \"%s\"í”„ë¦°í„°ì— ëŒ€í•œ PPD 파ì¼ì„ ì–»ì„ ìˆ˜ ì—†ìŒ - %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: 기본 AppleTalk ì˜ì—­ì„ ì–»ì„ ìˆ˜ ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: 작업 %d ì†ì„±ì„ ì–»ì„ ìˆ˜ ì—†ìŒ(%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: 프린터 ìƒíƒœë¥¼ 알 수 ì—†ìŒ(%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: '%s' 프린터를 ì°¾ì„ ìˆ˜ ì—†ìŒ!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: PAP ì‘ë‹µì„ ì°¾ì„ ìˆ˜ ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: AppleTalk 프린터를 ì°¾ì„ ìˆ˜ ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: AppleTalk 주소를 ìƒì„±í•  수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: \"%s\"ì„(를) ì—´ 수 ì—†ìŒ - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: %sì„(를) ì—´ 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: \"%s\" 배너 파ì¼ì„ ì—´ 수 ì—†ìŒ - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: \"%s\" 장비 파ì¼ì„ ì—´ 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: \"%s\" 파ì¼ì„ ì—´ 수 ì—†ìŒ - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: \"%s\" 파ì¼ì„ ì—´ 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: ì´ë¯¸ì§€ 파ì¼ì„ 열어서 프린트할 수 ì—†ìŒ!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: \"%s\" 프린트 파ì¼ì„ ì—´ 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: %s 프린트 파ì¼ì„ ì—´ 수 ì—†ìŒ - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: %s 프린트 파ì¼ì„ ì—´ 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr "ERROR: 임시로 압축한 프린트 파ì¼ì„ ì—´ 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: 임시 파ì¼ì„ ì—´ 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: %dê°œì˜ í…스트 ì—´ì„ í”„ë¦°íŠ¸í•  수 ì—†ìŒ!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: %dx%d í…스트 페ì´ì§€ë¥¼ 프린트할 수 ì—†ìŒ!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: 프린트 ë°ì´í„°ë¥¼ ì½ì„ 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: 프린트 ë°ì´í„°ë¥¼ ì½ì„ 수 ì—†ìŒ!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: í¬íŠ¸ë¥¼ 예약할 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: 파ì¼ì—서 %ld ì˜¤í”„ì…‹ì„ ì°¾ì„ ìˆ˜ ì—†ìŒ - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: 파ì¼ì—서 %lld ì˜¤í”„ì…‹ì„ ì°¾ì„ ìˆ˜ ì—†ìŒ - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: LPD ëª…ë ¹ì„ ë³´ë‚¼ 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: PAP tickle ìš”ì²­ì„ ë³´ë‚¼ 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: 초기 PAP 전송 ë°ì´í„° ìš”ì²­ì„ ë³´ë‚¼ 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: 프린트 ë°ì´í„°ë¥¼ 보낼 수 ì—†ìŒ(%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: 프린트 ë°ì´í„°ë¥¼ 보낼 수 ì—†ìŒ!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: 프린트 파ì¼ì„ 프린터로 보낼 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: ëìžë¦¬ nulì„ í”„ë¦°í„°ë¡œ 보낼 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: pictwpstops를 기다릴 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: \"%2$s\"ì— %1$dë°”ì´íŠ¸ë¥¼ 쓸 수 ì—†ìŒ: %3$s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: í”„ë¦°í„°ì— %dë°”ì´íŠ¸ë¥¼ 쓸 수 ì—†ìŒ!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: 제어 파ì¼ì„ 쓸 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: 프린트 ë°ì´í„°ë¥¼ 쓸 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: 프린트 ë°ì´í„°ë¥¼ 쓸 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: 드ë¼ì´ë²„ì— ëž˜ìŠ¤í„° ë°ì´í„°ë¥¼ 쓸 수 ì—†ìŒ!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: 임시 파ì¼ì„ 쓸 수 ì—†ìŒ"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: ì••ì¶•ë˜ì§€ ì•Šì€ ë„í멘트 ë°ì´í„°ë¥¼ 쓸 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: %2$sì˜ %1$d번째 ì¤„ì— ì˜ˆê¸°ì¹˜ ì•Šì€ í…스트!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: 알 수 없는 암호화 옵션 값 \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: 알 수 없는 íŒŒì¼ ìˆœì„œ \"%s\"\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: 알 수 없는 í¬ë§· ë¬¸ìž \"%c\"\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: \"%s\"ì— ëŒ€í•œ 알 수 없는 메시지 카탈로그 í¬ë§·!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: \"%2$s\" ê°’ì´ ìžˆëŠ” 알 수 없는 \"%1$s\" 옵션!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: 알 수 없는 \"%s\" 프린트 모드\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: 알 수 없는 \"%s\" 버전 옵션 값!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr "ERROR: brightness=100ì„ ì‚¬ìš©í•˜ëŠ”, ì§€ì›ë˜ì§€ 않는 ë°ê¸° ê°’ %s!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: gamma=1000ì„ ì‚¬ìš©í•˜ëŠ”, ì§€ì›ë˜ì§€ 않는 ê°ë§ˆ ê°’ %s!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: number-up=1ì„ ì‚¬ìš©í•˜ëŠ”, ì§€ì›ë˜ì§€ 않는 number-up ê°’ %d!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: number-up-layout=lrtbì„ ì‚¬ìš©í•˜ëŠ”, ì§€ì›ë˜ì§€ 않는 number-up-layout "
-#~ "ê°’ %s!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: page-border=noneì„ ì‚¬ìš©í•˜ëŠ”, ì§€ì›ë˜ì§€ 않는 page-border ê°’ %s!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: doc_printf 오버플로우(%dë°”ì´íЏ)ê°€ 발견ë¨, 중단 중!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: pdftops í•„í„°ê°€ 신호 %dì—서 ì¶©ëŒí•¨!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: pdftops í•„í„°ê°€ ìƒíƒœ %d(으)로 종료ë¨!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstopsê°€ 신호 %dì—서 종료ë¨!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstopsê°€ ìƒíƒœ %d(으)로 종료ë¨!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr "ERROR: ë³µì› ê°€ëŠ¥: í”„ë¦°í„°ì— ì—°ê²°í•  수 ì—†ìŒ; 30ì´ˆ í›„ì— ë‹¤ì‹œ 시ë„...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() 실패"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: 프린트 파ì¼ì„ 시작할 수 ì—†ìŒ"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "PPD 파ì¼ì´ 비어있ìŒ!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "오류: '-h' 옵션 ë’¤ì— í˜¸ìŠ¤íŠ¸ ì´ë¦„ì´ í•„ìš”!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "실패\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "íŒŒì¼ ìž¥ë¹„ URIê°€ 비활성화ë˜ì—ˆìŠµë‹ˆë‹¤! 활성화하려면, \"%s/cupsd.conf\"ì— ìžˆ"
-#~ "는 FileDevice ì§€ì‹œë¬¸ì„ ë³´ì‹­ì‹œì˜¤."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "퓨저 온ë„ê°€ 높ìŒ!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "퓨저 온ë„ê°€ ë‚®ìŒ!"
-
-#~ msgid "German FanFold"
-#~ msgstr "ë…ì¼ FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "ë…ì¼ FanFold 공문서"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "printer-uri ì†ì„±ì„ 얻었지만, job-idê°€ 없습니다!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: 시스템 환경설정ì—서 AppleTalkê°€ 비활성화ë¨\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: 시스템 환경설정ì—서 AppleTalkê°€ 비활성화ë˜ì—ˆìŠµë‹ˆë‹¤.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: 프린트 작업 취소 중...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: í”„ë¦°í„°ì— ì—°ê²°ë¨...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: í”„ë¦°íŠ¸ì— ì—°ê²° 중...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: 제어 파ì¼ì„ 성공ì ìœ¼ë¡œ 보냄\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: ë°ì´í„° 파ì¼ì„ 성공ì ìœ¼ë¡œ 보냄\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: %d페ì´ì§€ í¬ë§· 중...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: ì´ë¯¸ì§€ íŒŒì¼ ë¡œë“œ 중...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: 프린터 검색 중...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: 연결 열기\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr "INFO: 프린트 파ì¼ì„ 보냈고, 프린터 작업 종료 대기 중...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: 프린터 사용 중; 10ì´ˆ í›„ì— ë‹¤ì‹œ 시ë„...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: 프린터 사용 중; 30ì´ˆ í›„ì— ë‹¤ì‹œ 시ë„...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: 프린터 사용 중; 5ì´ˆ í›„ì— ë‹¤ì‹œ 시ë„...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr ""
-#~ "INFO: 프린터가 IPP/%d.%dì„ ì§€ì›í•˜ì§€ 않기 때문ì—, IPP/1.0ì„ ì‹œë„ ì¤‘...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: 프린터 사용 중; 5ì´ˆ í›„ì— ë‹¤ì‹œ 시ë„...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: 현재 프린터가 오프ë¼ì¸ìž…니다.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: 현재 프린터가 오프ë¼ì¸ìž…니다.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: 현재 프린터가 온ë¼ì¸ìž…니다.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: 프린터가 오프ë¼ì¸ìž…니다.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: 프린터가 ì—°ê²°ë˜ì§€ 않ìŒ; 30ì´ˆ í›„ì— ë‹¤ì‹œ 시ë„...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: %d페ì´ì§€ 프린트 중, %d%% 완료...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: %d페ì´ì§€ 프린트 중...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: 프린트할 준비가 ë˜ì—ˆìŠµë‹ˆë‹¤.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: 제어 íŒŒì¼ ë³´ë‚´ëŠ” 중(%luë°”ì´íЏ)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: 제어 íŒŒì¼ ë³´ë‚´ëŠ” 중(%uë°”ì´íЏ)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: ë°ì´í„° 보내는 중\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: ë°ì´í„° íŒŒì¼ ë³´ë‚´ëŠ” 중(%ldë°”ì´íЏ)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: ë°ì´í„° íŒŒì¼ ë³´ë‚´ëŠ” 중(%lldë°”ì´íЏ)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: 프린트 ë°ì´í„° 보내는 중...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: 프린트 íŒŒì¼ ë³´ëƒ„, %ldë°”ì´íЏ...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: 프린트 íŒŒì¼ ë³´ëƒ„, %lldë°”ì´íЏ...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: LPR 작업 스풀 중, %.0f%% 완료...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: í”„ë¦°í„°ì— ì—°ê²°í•  수 없기 때문ì—, í´ëž˜ìŠ¤ì— ìžˆëŠ” ë‹¤ìŒ í”„ë¦°í„° 대기 "
-#~ "중...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: \"%s\" 기본 AppleTalk ì˜ì—­ 사용 중 \n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: 작업 완료 대기 중...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: 프린터 사용 대기 중...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4 봉투"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5(대)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5 봉투"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6 봉투"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "잉í¬/토너가 ê±°ì˜ ë¹„ì—ˆìŠµë‹ˆë‹¤."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "잉í¬/토너가 비었ìŒ!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "잉í¬/토너 í기소가 ê±°ì˜ ì°¼ìŠµë‹ˆë‹¤."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "잉í¬/토너 í기소가 ì°¼ìŒ!"
-
-#~ msgid "Interlock open."
-#~ msgstr "ì—°ë™ ìž¥ì¹˜ê°€ ì—´ë ¤ 있ìŒ."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "초대 봉투"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "ì´íƒˆë¦¬ì•„ 봉투"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "#%d ìž‘ì—…ì„ ë‹¤ì‹œ 시작할 수 ì—†ìŒ - íŒŒì¼ ì—†ìŒ!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "#%d ìž‘ì—…ì´ ì—†ìŒ!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "#%d ìž‘ì—…ì´ ì¢…ë£Œë˜ì—ˆê³  대체할 수 ì—†ìŒ!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "#%d ìž‘ì—…ì´ ì™¼ë£Œë˜ì§€ 않ìŒ!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "#%d ìž‘ì—…ì´ ì¸ì¦ì„ 위해 유지ë˜ì§€ 않ìŒ!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "#%d ìž‘ì—…ì´ ìœ ì§€ë˜ì§€ 않ìŒ!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "#%s ìž‘ì—…ì´ ì¡´ìž¬í•˜ì§€ 않ìŒ!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "%d ìž‘ì—…ì´ ë°œê²¬ë˜ì§€ 않ìŒ!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "작업 구ë…ì„ ê°±ì‹ í•  수 ì—†ìŒ!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2 봉투"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3 봉투"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "\"%s\" 언어가 ì§€ì›ë˜ì§€ 않ìŒ!"
-
-#~ msgid "Media jam!"
-#~ msgstr "미디어가 걸림!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "미디어 트레ì´ê°€ ê±°ì˜ ë¹„ì—ˆìŠµë‹ˆë‹¤."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "미디어 트레ì´ê°€ 비어 있ìŒ!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "미디어 트레ì´ê°€ 유실ë¨!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "미디어 트레ì´ë¥¼ 채워야 합니다."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "document-number ì†ì„±ì´ 유실ë¨!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "%d번째 ì¤„ì— ìžˆëŠ” í° ë”°ì˜´í‘œê°€ 유실ë¨!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "구성 변수가 유실ë¨!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "notify-subscription-ids ì†ì„±ì´ 유실ë¨!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "requesting-user-name ì†ì„±ì´ 유실ë¨!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "필요한 ì†ì„±ì´ 유실ë¨!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "%d번째 ì¤„ì— ìžˆëŠ” ê°’ì´ ìœ ì‹¤ë¨!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "모ë¸: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Monarch 봉투"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: 프린트 파ì¼ì´ í—ˆìš©ë¨ - 작업 ID %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: 프린트 파ì¼ì´ í—ˆìš©ë¨ - 알 수 없는 작업 ID.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "PPD ì´ë¦„ ì—†ìŒ!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "ì„¤ì¹˜ëœ Windows 프린터 드ë¼ì´ë²„ê°€ ì—†ìŒ!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "%sì— í™œì„± ìž‘ì—…ì´ ì—†ìŒ!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "ìš”ì²­ì— ì†ì„±ì´ ì—†ìŒ!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "ì œê³µëœ ì¸ì¦ ì •ë³´ê°€ ì—†ìŒ!"
-
-#~ msgid "No default printer"
-#~ msgstr "기본 프린터가 ì—†ìŒ"
-
-#~ msgid "No file!?!"
-#~ msgstr "파ì¼ì´ ì—†ìŒ!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "수정 시간 ì—†ìŒ!"
-
-#~ msgid "No printer name!"
-#~ msgstr "프린터 ì´ë¦„ ì—†ìŒ!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "í´ëž˜ìŠ¤ì— ëŒ€í•œ printer-uri ì—†ìŒ!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "printer-uri ì—†ìŒ!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "ìš”ì²­ì— printer-uri ì—†ìŒ!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "ìš”ì²­ì— êµ¬ë… ì†ì„±ì´ ì—†ìŒ!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC ìˆ˜ëª…ì´ ê±°ì˜ ë‹¤ ë˜ì—ˆìŠµë‹ˆë‹¤."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC ìˆ˜ëª…ì´ ë‹¤ ë˜ì—ˆìŒ!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "토너가 ì—†ìŒ!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "출력소 ê±°ì˜ ì°¼ìŠµë‹ˆë‹¤."
-
-#~ msgid "Output bin full!"
-#~ msgstr "출력소가 찼습니다!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "%s 프린터 ì¶œë ¥ì„ %s(으)로 보냄\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr "%1$s 프린터 ì¶œë ¥ì„ %3$sì— ìžˆëŠ” %2$s ì›ê²© 프린터로 보냄\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "%s/%s 프린터 ì¶œë ¥ì„ %s로 보냄\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr "%1$s/%2$s 프린터 ì¶œë ¥ì„ %4$sì— ìžˆëŠ” %3$s ì›ê²© 프린터로 보냄\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "출력 트레ì´ê°€ 유실ë¨!"
-
-#~ msgid "PASS\n"
-#~ msgstr "PASS\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1 봉투"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10 봉투"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2 봉투"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3 봉투"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K(대)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4 봉투"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5 봉투"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6 봉투"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7 봉투"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8 봉투"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9 봉투"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "ê°œì¸ ë´‰íˆ¬"
-
-#~ msgid "Printer offline."
-#~ msgstr "프린터가 오프ë¼ì¸ìž…니다."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr "단계 ì†Œìœ ìž ìž‘ì—… íŒŒì¼ ì´ í¬ê¸°\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "단계 ì†Œìœ ìž ìš°ì„ ìˆœìœ„ 작업 íŒŒì¼ ì´ í¬"
-#~ "기\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "실행 ì¤‘ì¸ ëª…ë ¹: %s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "SCSI 프린터"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "타블로ì´ë“œ(대)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "notify-user-data ê°’ì´ ë„ˆë¬´ í¼!(%d > 63í–‰)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "프린터 ë˜ëŠ” í´ëž˜ìŠ¤ë¥¼ 공유할 수 ì—†ìŒ!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "프린터 ë˜ëŠ” í´ëž˜ìŠ¤ê°€ 없습니다."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "printer-uri ì†ì„±ì´ 필요함!"
-
-#~ msgid "Toner low."
-#~ msgstr "토너가 부족합니다."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "job-sheets ê°’ì´ ë„ˆë¬´ 많습니다(%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "printer-state-reasons ê°’ì´ ë„ˆë¬´ 많습니다(%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "US 행정 용지"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US ì—°ì† ìš©ì§€"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US 공문서(대)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US 편지지(대)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US 편지지(소)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "\"%s\" 대ìƒì— 대한 ìž‘ì—…ì„ ì¶”ê°€í•  수 없습니다!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "íŒŒì¼ ìœ í˜•ì— ëŒ€í•œ 메모리를 할당할 수 없습니다!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr "64비트 CUPS 프린터 드ë¼ì´ë²„ 파ì¼ì„ 복사할 수 없습니다(%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr "64비트 Windows 프린터 드ë¼ì´ë²„ 파ì¼ì„ 복사할 수 없습니다(%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "CUPS 프린터 드ë¼ì´ë²„ 파ì¼ì„ 복사할 수 없습니다(%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "PPD 파ì¼ì„ 복사할 수 ì—†ìŒ - %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "PPD 파ì¼ì„ 복사할 수 없습니다!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr "Windows 2000 프린터 드ë¼ì´ë²„ 파ì¼ì„ 복사할 수 없습니다(%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "Windows 9x 프린터 드ë¼ì´ë²„ 파ì¼ì„ 복사할 수 없습니다(%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "ì¸í„°íŽ˜ì´ìФ 스í¬ë¦½íŠ¸ë¥¼ 복사할 수 ì—†ìŒ - %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "printer-uri를 ìƒì„±í•  수 없습니다!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "1MB보다 í° cupsd.conf 파ì¼ì€ 편집할 수 없습니다!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "ìž‘ì—…ì— ëŒ€í•œ 대ìƒì„ ì°¾ì„ ìˆ˜ 없습니다!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "프린터를 ì°¾ì„ ìˆ˜ 없습니다!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr "Windows 2000 프린터 드ë¼ì´ë²„ 파ì¼ì„ 설치할 수 없습니다(%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr "Windows 9x 프린터 드ë¼ì´ë²„ 파ì¼ì„ 설치할 수 없습니다(%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "ë„í멘트 %dì„(를) 작업 %dì—서 ì—´ 수 없습니다!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "\"%s\"ì„(를) 실행할 수 ì—†ìŒ: %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "프린터 드ë¼ì´ë²„로 ëª…ë ¹ì„ ë³´ë‚¼ 수 없습니다!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Windows 프린터 드ë¼ì´ë²„를 설정할 수 없습니다(%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "레거시 USB í´ëž˜ìФ 드ë¼ì´ë²„를 사용할 수 ì—†ìŒ!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "알 수 없는 프린터 오류(%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "ì§€ì›ë˜ì§€ 않는 ë¬¸ìž ì„¸íŠ¸ \"%s\"!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "ì§€ì›ë˜ì§€ 않는 ì••ì¶• \"%s\"!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "ì§€ì›ë˜ì§€ 않는 ì••ì¶• ì†ì„± %s!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "ì§€ì›ë˜ì§€ 않는 í¬ë§· \"%s\"!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "ì§€ì›ë˜ì§€ 않는 í¬ë§· '%s'!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "ì§€ì›ë˜ì§€ 않는 í¬ë§· '%s/%s'!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "사용법:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "사용법: %s job user title copies options [filename]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "사용법: %s job-id user title copies options [file]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "사용법: %s job-id user title copies options file\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "사용법: convert [ options ]\n"
-#~ "\n"
-#~ "옵션:\n"
-#~ "\n"
-#~ " -f filename 변환할 íŒŒì¼ ì„¤ì •(ë˜ëŠ” stdin)\n"
-#~ " -o filename ìƒì„±í•  íŒŒì¼ ì„¤ì •(ë˜ëŠ” stdout)\n"
-#~ " -i mime/type ìž…ë ¥ MIME 유형 설정(ë˜ëŠ” ìžë™ 유형 설정)\n"
-#~ " -j mime/type 출력 MIME 유형 설정(ë˜ëŠ” ì‘ìš© 프로그램/pdf)\n"
-#~ " -P filename.ppd PPD íŒŒì¼ ì„¤ì •\n"
-#~ " -a 'name=value ...' 옵션 설정(s)\n"
-#~ " -U username ìž‘ì—…ì— ëŒ€í•œ ì‚¬ìš©ìž ì´ë¦„ 설정\n"
-#~ " -J title 제목 설정\n"
-#~ " -c copies 복사 장 수 설정\n"
-#~ " -u 종료 시 PPD íŒŒì¼ ì œê±°\n"
-#~ " -D 종료 시 ìž…ë ¥ íŒŒì¼ ì œê±°\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "사용법: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "옵션:\n"
-#~ " -E 서버 연결 암호화\n"
-#~ " -H samba-server SAMBA 서버 사용\n"
-#~ " -U samba-user ì´ë¦„ì´ ìžˆëŠ” SAMBA 사용ìžë¥¼ 사용하여 ì¸ì¦\n"
-#~ " -a 모든 프린터 보내기\n"
-#~ " -h cups-server ì´ë¦„ì´ ìžˆëŠ” CUPS 서버 사용\n"
-#~ " -v ìƒì„¸í•˜ê²Œ(명령 보기)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "사용법: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "옵션:\n"
-#~ "\n"
-#~ " -E 암호화 활성화\n"
-#~ " -U username ì‚¬ìš©ìž ì´ë¦„ 지정\n"
-#~ " -h server[:port] 서버 주소 지정\n"
-#~ "\n"
-#~ " --[no-]debug-logging 디버그 로그 켜기/ë„기\n"
-#~ " --[no-]remote-admin ì›ê²© 관리 켜기/ë„기\n"
-#~ " --[no-]remote-any ì¸í„°ë„· ì ‘ê·¼ 허용/차단\n"
-#~ " --[no-]remote-printers ì›ê²© 프린터 보기/가리기\n"
-#~ " --[no-]share-printers 프린터 공유 켜기/ë„기\n"
-#~ " --[no-]user-cancel-any 사용ìžê°€ 모든 ìž‘ì—…ì„ ì·¨ì†Œí•˜ëŠ” ê²ƒì„ í—ˆìš©/ì°¨"
-#~ "단\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "사용법: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file 대체 구성 íŒŒì¼ ë¡œë“œ\n"
-#~ "-f ì „ë©´ì— ì‹¤í–‰\n"
-#~ "-F ì „ë©´ì— ì‹¤í–‰í•˜ì§€ë§Œ 분리\n"
-#~ "-h ì´ ì‚¬ìš©ë²• 메시지 보기\\n-l launchd(8)"
-#~ "ì—서 cupsd 실행\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "사용법: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "옵션:\n"
-#~ "\n"
-#~ " -c cupsd.conf cupsd.conf 파ì¼ì„ 설정하여 사용\n"
-#~ " -j job-id[,N] 특정 작업으로부터 íŒŒì¼ N í•„í„°(ê¸°ë³¸ì€ íŒŒì¼ 1)\n"
-#~ " -n copies 복사 장 수 설정\n"
-#~ " -o name=value 옵션 설정\n"
-#~ " -p filename.ppd PPD íŒŒì¼ ì„¤ì •\n"
-#~ " -t title 제목 설정\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "사용법: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "옵션:\n"
-#~ "\n"
-#~ " -h 프로그램 사용법 보기\n"
-#~ "\n"
-#~ " 참고: ì´ í”„ë¡œê·¸ëž¨ì€ DSC ëª…ë ¹ë§Œì„ ìœ íš¨í™”í•˜ê³ , PostScript ìžì²´ëŠ” 유효화"
-#~ "하지 않습니다.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "사용법: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[."
-#~ "gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "옵션:\n"
-#~ "\n"
-#~ " -R root-directory 대체 루트 설정\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " 오류대신 문제 경고\n"
-#~ " -q 조용히 실행\n"
-#~ " -r 'relaxed' 오픈 모드 사용\n"
-#~ " -v 약간 ìžì„¸í•˜ê²Œ\n"
-#~ " -vv 매우 ìžì„¸í•˜ê²Œ\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "사용법: lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "사용법: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "사용법: lppasswd [-g groupname]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "사용법: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "사용법: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] "
-#~ "[+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "사용법: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "옵션:\n"
-#~ " -D name=value ì´ë¦„ì´ ì •í•´ì§„ 변수를 값으로 설정합니다.\n"
-#~ " -I include-dir í¬í•¨ 디렉토리를 검색 ê²½ë¡œì— ì¶”ê°€í•©ë‹ˆë‹¤.\n"
-#~ " -c catalog.po ì§€ì •ëœ ë©”ì‹œì§€ 카탈로그를 로드합니다.\n"
-#~ " -d output-dir 출력 디렉토리를 지정합니다.\n"
-#~ " -l lang[,lang,...] 출력 언어를 지정합니다(로컬).\n"
-#~ " -m íŒŒì¼ ì´ë¦„으로 ModelName ê°’ì„ ì‚¬ìš©í•©ë‹ˆë‹¤.\n"
-#~ " -t PPD를 ìƒì„±í•˜ëŠ” 대신 테스트합니다.\n"
-#~ " -v ìžì„¸í•˜ê²Œ(ë” ìžì„¸í•˜ê²Œ 하려면 v 추가).\n"
-#~ " -z GNU zipì„ ì‚¬ìš©í•˜ì—¬ PPD 파ì¼ì„ 압축합니다.\n"
-#~ " --cr CR로 ì¤„ì„ ë냅니다(Mac OS 9).\n"
-#~ " --crlf CR + LF로 ì¤„ì„ ë냅니다(Windows).\n"
-#~ " --lf LF로 ì¤„ì„ ë냅니다(UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "사용법: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value ì´ë¦„ì´ ì •í•´ì§„ 변수를 값으로 설정합니다.\n"
-#~ "옵션:\n"
-#~ " -I include-dir í¬í•¨ 디렉토리를 검색 ê²½ë¡œì— ì¶”ê°€í•©ë‹ˆë‹¤.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "사용법: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "옵션:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "사용법: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "옵션:\n"
-#~ " -o filename.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "사용법: ppdpo [options] -o filename.po filename.drv [ ... filenameN."
-#~ "drv ]\n"
-#~ "옵션:\n"
-#~ " -D name=value ì´ë¦„ì´ ì •í•´ì§„ 변수를 값으로 설정합니다.\n"
-#~ " -I include-dir í¬í•¨ 디렉토리를 검색 ê²½ë¡œì— ì¶”ê°€í•©ë‹ˆë‹¤.\n"
-#~ " -v ìžì„¸í•˜ê²Œ(ë” ìžì„¸í•˜ê²Œ 하려면 v 추가).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "사용법: snmp [host-or-ip-address]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: ë°œê²¬ëœ ì²«ë²ˆì§¸ %dê°œ 프린터만 추가 중"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: ë¶ˆë¦¬ì–¸ì´ waiteof ì˜µì…˜ì„ ì˜ˆìƒí•¨ \"%s\"\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: ì½ê¸° side-channel ìš”ì²­ì— ì‹¤íŒ¨í•¨!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr "WARNING: IncludeFeature를 통해 \"%s\" ì˜µì…˜ì„ í¬í•¨í•  수 ì—†ìŒ!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: 프린터가 ì‘답하지 않ìŒ\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: 프린터가 예기치 ì•Šì€ EOF를 보냄\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: %dì´ˆ í›„ì— ì›ê²© 호스트가 명령 ìƒíƒœ ë°”ì´íŠ¸ì— ì‘답하지 않ìŒ!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: %dì´ˆ í›„ì— ì›ê²© 호스트가 제어 ìƒíƒœ ë°”ì´íŠ¸ì— ì‘답하지 않ìŒ!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: %dì´ˆ í›„ì— ì›ê²© 호스트가 ë°ì´í„° ìƒíƒœ ë°”ì´íŠ¸ì— ì‘답하지 않ìŒ!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: SCSI 명령 시간 초과(%d); ìž¬ì‹œë„ ì¤‘...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: ì´ ë„í멘트는 Adobe Document Structuring Conventionsì„ ì‹¤í–‰í•˜ì§€ "
-#~ "않기 ë•Œë¬¸ì— ì˜¬ë°”ë¥´ê²Œ 프린트ë˜ì§€ ì•Šì„ ìˆ˜ 있ìŒ!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: \"%s:%s\"ì„(를) ì—´ 수 없습니다: %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: PAP ìƒíƒœ ìš”ì²­ì„ ë³´ë‚¼ 수 없습니다"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: %d ìœ í˜•ì˜ ì˜ˆê¸°ì¹˜ ì•Šì€ PAP 패킷\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: %d ìœ í˜•ì˜ ì•Œ 수 없는 PAP 패킷\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: \"%2$s\" ì˜µì…˜ì— ëŒ€í•œ 알 수 없는 \"%1$s\" ì„ íƒì‚¬í•­!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: 알 수 없는 \"%s\" 옵션!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: ì§€ì›ë˜ì§€ 않는 보드율 %s!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: \"%s\" ìƒíƒœ ì˜µì…˜ì— ëŒ€í•œ 예ìƒë˜ëŠ” 번호\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: ë³µì› ê°€ëŠ¥: '%s' ë„¤íŠ¸ì›Œí¬ í˜¸ìŠ¤íŠ¸ê°€ 사용 중; %dì´ˆ í›„ì— ë‹¤ì‹œ 시"
-#~ "ë„...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr "경고, ì„¤ì¹˜ëœ Windows 2000 프린터 드ë¼ì´ë²„ê°€ ì—†ìŒ!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4 봉투"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr "convert: 변환할 파ì¼ì„ 지정하려면 -f ì˜µì…˜ì„ ì‚¬ìš©í•©ë‹ˆë‹¤.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: \"%s\" í”„ë¦°í„°ì— ëŒ€í•œ PPD 파ì¼ì´ ì—†ìŒ - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: ë‹¤ìŒ ì„œë²„ì— ì—°ê²°í•  수 없습니다: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: 알 수 없는 옵션 \"%s\"!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: 알 수 없는 옵션 \"-%c\"!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: \"-c\" 옵션 ë’¤ì— êµ¬ì„± íŒŒì¼ ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: 현재 디렉토리를 ì–»ì„ ìˆ˜ ì—†ìŒ!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: 알 수 없는 \"%s\" 변수 - 중단 중!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: 알 수 없는 \"%c\" 옵션 - 중단 중!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: launchd(8) ì§€ì›ì´ 컴파ì¼ë˜ì§€ 않아서, ì¼ë°˜ 모드로 실행합니다.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: 유효하지 ì•Šì€ ë„í멘트 번호 %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: 유효하지 ì•Šì€ ìž‘ì—… ID %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: í•˜ë‚˜ì˜ ì‚¬ìš©ìž ì´ë¦„ë§Œ 지정ë¨!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: ë‹¤ìŒ ìž„ì‹œ 파ì¼ì„ ìƒì„±í•  수 없습니다: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: 작업 파ì¼ì„ ì–»ì„ ìˆ˜ ì—†ìŒ - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: -q ì˜µì…˜ì€ -v 옵션과 호환ë˜ì§€ 않습니다.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: -v ì˜µì…˜ì€ -q 옵션과 호환ë˜ì§€ 않습니다.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "%s/%sì— ëŒ€í•œ 장비: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "%sì— ëŒ€í•œ 장비: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\tëª…ë ¹ì— ëŒ€í•œ ë„ì›€ë§ ì–»ê¸°\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "job-printer-uri ì†ì„±ì´ 유실ë¨!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: í´ëž˜ìФ ì´ë¦„ì€ í”„ë¦°íŠ¸ 가능한 문ìžë§Œ í¬í•¨í•  수 있ìŒ!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: '-P' 옵션 ë’¤ì— PPDê°€ 예ìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: '-u' 옵션 ë’¤ì— allow/deny:userlistê°€ 예ìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: '-r' 옵션 ë’¤ì— í´ëž˜ìŠ¤ê°€ 예ìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: '-c' 옵션 ë’¤ì— í´ëž˜ìФ ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: '-D' 옵션 ë’¤ì— ì„¤ëª…ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: '-v' 옵션 ë’¤ì— ìž¥ë¹„ URIê°€ 예ìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: '-I' 옵션 ë’¤ì— íŒŒì¼ ìœ í˜•ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: '-h' 옵션 ë’¤ì— í˜¸ìŠ¤íŠ¸ ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: '-i' 옵션 ë’¤ì— ì¸í„°íŽ˜ì´ìŠ¤ê°€ 예ìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: '-L' 옵션 ë’¤ì— ìœ„ì¹˜ê°€ 예ìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: '-m' 옵션 ë’¤ì— ëª¨ë¸ì´ 예ìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: '-o' 옵션 ë’¤ì— name=valueê°€ 예ìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: '-p' 옵션 ë’¤ì— í”„ë¦°í„°ê°€ 예ìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: '-d' 옵션 ë’¤ì— í”„ë¦°í„° ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: '-x' 옵션 ë’¤ì— í”„ë¦°í„° ë˜ëŠ” í´ëž˜ìŠ¤ê°€ 예ìƒë¨!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: íšŒì› ì´ë¦„ì´ ë³´ì´ì§€ 않ìŒ!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: %s í”„ë¦°í„°ì— ì´ë¯¸ %s í´ëž˜ìФ 회ì›ì´ 있습니다.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: %s í”„ë¦°í„°ì— %s í´ëž˜ìФ 회ì›ì´ 없습니다.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: 프린터 ì´ë¦„ì€ í”„ë¦°íŠ¸ 가능한 문ìžë§Œ í¬í•¨í•  수 있ìŒ!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: í´ëž˜ìŠ¤ì— í”„ë¦°í„°ë¥¼ 추가할 수 ì—†ìŒ:\n"
-#~ " 먼저 프린터 ì´ë¦„ì„ ì§€ì •í•´ì•¼ 합니다!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: ì„œë²„ì— ì—°ê²°í•  수 ì—†ìŒ: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: 임시 파ì¼ì„ ìƒì„±í•  수 ì—†ìŒ - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: 임시 파ì¼ì„ ìƒì„±í•  수 ì—†ìŒ: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: \"%s\" PPD 파ì¼ì„ ì—´ 수 ì—†ìŒ - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: \"%s\" 파ì¼ì„ ì—´ 수 ì—†ìŒ: %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: í´ëž˜ìФì—서 프린터를 제거할 수 ì—†ìŒ:\n"
-#~ " 먼저 프린터 ì´ë¦„ì„ ì§€ì •í•´ì•¼ 합니다!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: PPD 파ì¼ì„ 설정할 수 ì—†ìŒ:\n"
-#~ " 먼저 프린터 ì´ë¦„ì„ ì§€ì •í•´ì•¼ 합니다!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: 장비 URI를 설정할 수 ì—†ìŒ:\n"
-#~ " 먼저 프린터 ì´ë¦„ì„ ì§€ì •í•´ì•¼ 합니다!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ì¸í„°íŽ˜ì´ìФ 스í¬ë¦½íЏ ë˜ëŠ” PPD 파ì¼ì„ 설정할 수 ì—†ìŒ:\n"
-#~ " 먼저 프린터 ì´ë¦„ì„ ì§€ì •í•´ì•¼ 합니다!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: ì¸í„°íŽ˜ì´ìФ 스í¬ë¦½íŠ¸ë¥¼ 설정할 수 ì—†ìŒ:\n"
-#~ " 먼저 프린터 ì´ë¦„ì„ ì§€ì •í•´ì•¼ 합니다!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: 프린터 ì„¤ëª…ì„ ì„¤ì •í•  수 ì—†ìŒ:\n"
-#~ " 먼저 프린터 ì´ë¦„ì„ ì§€ì •í•´ì•¼ 합니다!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: 프린터 위치를 설정할 수 ì—†ìŒ:\n"
-#~ " 먼저 프린터 ì´ë¦„ì„ ì§€ì •í•´ì•¼ 합니다!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: 프린터 ì˜µì…˜ì„ ì„¤ì •í•  수 ì—†ìŒ:\n"
-#~ " 먼저 프린터 ì´ë¦„ì„ ì§€ì •í•´ì•¼ 합니다!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: 알 수 없는 allow/deny 옵션 \"%s\"!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: 알 수 없는 '%s' 변수!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: 알 수 없는 '%c' 옵션!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: 경고 - 콘í…츠 유형 ëª©ë¡ ë¬´ì‹œë¨!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo: --device-id ë’¤ì— 1284 장비 ID 스트ë§ì´ 예ìƒë¨!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: --language ë’¤ì— ì–¸ì–´ê°€ 예ìƒë¨!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: --make-and-model ë’¤ì— ì œì¡°ì‚¬ ë° ëª¨ë¸ì´ 예ìƒë¨!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: --product ë’¤ì— ì œí’ˆ 스트ë§ì´ 예ìƒë¨!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: --exclude-schemes ë’¤ì— ì„¤ê³„ 목ë¡ì´ 예ìƒë¨!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: --include-schemess ë’¤ì— ì„¤ê³„ 목ë¡ì´ 예ìƒë¨!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: --timeout ë’¤ì— ì œí•œ ì‹œê°„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: 알 수 없는 '%s' 변수!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: 알 수 없는 '%c' 옵션!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: 알 수 없는 '%s' 옵션!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: ì„œë²„ì— ì—°ê²°í•  수 ì—†ìŒ: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: 알 수 없는 '%s' 변수!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: 알 수 없는 '%c' 옵션!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: 프린터가 없습니까!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: 프린터 ë˜ëŠ” ì¸ìŠ¤í„´ìŠ¤ë¥¼ 추가할 수 ì—†ìŒ: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: %sì— ëŒ€í•œ PPD 파ì¼ì„ ì–»ì„ ìˆ˜ ì—†ìŒ: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: %sì— ëŒ€í•œ PPD 파ì¼ì„ ì—´ 수 ì—†ìŒ!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: 알 수 없는 프린터 ë˜ëŠ” í´ëž˜ìФ!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: rootë§Œ 암호를 추가 ë˜ëŠ” 제거할 수 있ìŒ!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: 암호 íŒŒì¼ ì‚¬ìš© 중!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: 암호 파ì¼ì´ ì—…ë°ì´íЏë˜ì§€ 않ìŒ!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: 죄송합니다, 암호가 ì¼ì¹˜í•˜ì§€ 않습니다!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: 죄송합니다, 암호가 ê±°ë¶€ë˜ì—ˆìŠµë‹ˆë‹¤.\n"
-#~ "암호는 최소한 6ìž ì´ìƒì´ì–´ì•¼ 하고, ì‚¬ìš©ìž ì´ë¦„ì„ í¬í•¨í•´ì„œëŠ” 안ë˜ë©°, \n"
-#~ "최소 하나 ì´ìƒì˜ ë¬¸ìž ë° ìˆ«ìžë¥¼ í¬í•¨í•´ì•¼ 합니다.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: 죄송합니다, 암호가 ì¼ì¹˜í•˜ì§€ 않습니다!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: 암호 스트ë§ì„ 복사할 수 ì—†ìŒ: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: 암호 파ì¼ì„ ì—´ 수 ì—†ìŒ: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: 암호 파ì¼ì— 쓸 수 ì—†ìŒ: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr "lppasswd: ì´ì „ 암호 파ì¼ì„ ë°±ì—…í•˜ëŠ”ë° ì‹¤íŒ¨í•¨: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: 암호 íŒŒì¼ ì´ë¦„ì„ ìž¬ì„¤ì •í•˜ëŠ”ë° ì‹¤íŒ¨í•¨: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: \"%s\" ì‚¬ìš©ìž ë° \"%s\" ê·¸ë£¹ì´ ì¡´ìž¬í•˜ì§€ 않습니다.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: 오류 - %s 환경 변수 ì´ë¦„ì´ ì¡´ìž¬í•˜ì§€ 않는 ëŒ€ìƒ \"%s\" ì´ë¦„ìž„!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "%s í´ëž˜ìФ 회ì›:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "엔트리 ì—†ìŒ\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "시스템 기본 ëŒ€ìƒ ì—†ìŒ\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-eventsê°€ 지정ë˜ì§€ 않ìŒ!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri \"%s\" URIê°€ ì´ë¯¸ 사용 중임!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri \"%s\" URI가 알 수 없는 설계를 사용함!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "%d notify-subscription-id가 좋지 않습니다!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: \"%s\" í¬í•¨ 디렉토리 추가 중...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: %sì—서 UI í…스트 추가/ì—…ë°ì´íЏ 중...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: ìž˜ëª»ëœ ë¶ˆë¦¬ì–¸ ê°’(%1$s)ì´ %3$sì˜ %2$d번째 ì¤„ì— ìžˆìŒ.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: ìž˜ëª»ëœ \"%1$s\" í•´ìƒë„ ì´ë¦„ì´ %3$sì˜ %2$d번째 ì¤„ì— ìžˆìŒ!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: ìž˜ëª»ëœ %1$s ìƒíƒœ 키워드가 %3$sì˜ %2$d번째 ì¤„ì— ìžˆìŒ!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: ìž˜ëª»ëœ ë³€ìˆ˜ 대체항목($%1$c)ì´ %3$sì˜ %2$d번째 ì¤„ì— ìžˆìŒ.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: ì„ íƒì‚¬í•­ì´ %2$sì˜ %1$d번째 줄ì—서 옵션 ì—†ì´ ë°œê²¬ë¨!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: 로컬 %1$sì— ëŒ€í•œ ì¤‘ë³µëœ #poê°€ %3$sì˜ %2$d번째 ì¤„ì— ìžˆìŒ!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— í•„í„° ì •ì˜ê°€ 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— í”„ë¡œê·¸ëž¨ ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ë¶ˆë¦¬ì–¸ ê°’ì´ ì˜ˆìƒë¨.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Font ë’¤ì— ë¬¸ìž ì„¸íŠ¸ê°€ 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ì„ íƒì‚¬í•­ 코드가 예ìƒë¨.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ì„ íƒì‚¬í•­ ì´ë¦„/í…스트가 예ìƒë¨.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ColorModelì— ëŒ€í•œ ìƒ‰ìƒ ìˆœì„œê°€ 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ColorModelì— ëŒ€í•œ ìƒ‰ìƒ ê³µê°„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ColorModelì— ëŒ€í•œ ì••ì¶•ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %2$sì˜ %1$d번째 ì¤„ì— UIConstraintsì— ëŒ€í•œ 제한 스트ë§ì´ 예ìƒë¨!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: %2$sì˜ %1$d번째 줄, DriverType ë’¤ì— ë“œë¼ì´ë²„ 유형 키워드가 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Duplex ë’¤ì— ì–‘ë©´ ìœ í˜•ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Font ë’¤ì— ì¸ì½”ë”©ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 줄, #po %1$s ë’¤ì— íŒŒì¼ ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ê·¸ë£¹ ì´ë¦„/í…스트가 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— í¬í•¨ íŒŒì¼ ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ì •ìˆ˜ê°€ 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, #po ë’¤ì— ë¡œì»¬ 위치가 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 줄, %1$s ë’¤ì— ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, FileName ë’¤ì— ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Font ë’¤ì— ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Manufacturer ë’¤ì— ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, MediaSize ë’¤ì— ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, ModelName ë’¤ì— ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, PCFileName ë’¤ì— ì´ë¦„ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 줄, %1$s ë’¤ì— ì´ë¦„/í…스트가 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Installable ë’¤ì— ì´ë¦„/í…스트 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Resolution ë’¤ì— ì´ë¦„/í…스트 예ìƒë¨!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %2$sì˜ %1$d번째 줄, ColorModelì— ëŒ€í•´ ì´ë¦„/í…스트 ì¡°í•©ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ì˜µì…˜ ì´ë¦„/í…스트가 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ì˜µì…˜ ì„¹ì…˜ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì˜ ì˜µì…˜ ìœ í˜•ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %2$sì˜ %1$d번째 줄, Resolution ë’¤ì— ì˜¤ë²„ë¼ì´ë“œ 필드가 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ì‹¤ì œ 번호가 예ìƒë¨!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: %2$sì˜ %1$d번째 줄, ColorProfile ë’¤ì— í•´ìƒë„/미디어 ìœ í˜•ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %2$sì˜ %1$d번째 줄, SimpleColorProfile ë’¤ì— í•´ìƒë„/미디어 ìœ í˜•ì´ ì˜ˆ"
-#~ "ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 줄, %1$s ë’¤ì— ì„ íƒìžê°€ 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Font ë’¤ì— ìƒíƒœê°€ 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Copyright ë’¤ì— ìŠ¤íŠ¸ë§ì´ 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Version ë’¤ì— ìŠ¤íŠ¸ë§ì´ 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ì˜µì…˜ ì´ë¦„ 2개가 예ìƒë¨!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 줄, %1$s ë’¤ì— ê°’ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄, Font ë’¤ì— ë²„ì „ì´ ì˜ˆìƒë¨!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: 유효하지 ì•Šì€ #include/#po íŒŒì¼ ì´ë¦„ \"%s\"!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì˜ í•„í„°ì— ëŒ€í•´ 유효하지 ì•Šì€ ë¹„ìš©!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %2$sì˜ %1$d번째 ì¤„ì˜ í•„í„°ì— ëŒ€í•´ 유효하지 ì•Šì€ ë¹ˆ MIME 유형!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %2$sì˜ %1$d번째 ì¤„ì˜ í•„í„°ì— ëŒ€í•´ 유효하지 ì•Šì€ ë¹ˆ 프로그램 ì´ë¦„!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 ì¤„ì— ìœ íš¨í•˜ì§€ ì•Šì€ \"%1$s\" 옵션 섹션!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 ì¤„ì— ìœ íš¨í•˜ì§€ ì•Šì€ \"%1$s\" 옵션 유형!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: \"%s\" 드ë¼ì´ë²„ ì •ë³´ íŒŒì¼ ë¡œë“œ 중...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: 로컬 \"%s\"ì— ëŒ€í•œ 메시지 로드 중...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: \"%s\"ì—서 메시지 로드 중...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: \"%s\" ëì—서 #endif 유실ë¨!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 줄ì—서 #if 유실ë¨!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: 로컬 %sì— ëŒ€í•´ ì œê³µëœ ë©”ì‹œì§€ 카탈로그 ì—†ìŒ!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 ì¤„ì— %1$s ì˜µì…˜ì´ ë‹¤ë¥¸ 유형으로 재정ì˜ë¨!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ìžˆëŠ” 옵션 ì œí•œì€ *nameì´ì–´ì•¼ 함!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: %2$sì˜ %1$d번째 ì¤„ì— ë„ˆë¬´ ë§Žì´ ì¤‘ì²©ëœ #ifê°€ 있ìŒ!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: \"%s\" PPD 파ì¼ì„ ìƒì„±í•  수 ì—†ìŒ - %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: %s 출력 디렉토리를 ìƒì„±í•  수 ì—†ìŒ: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: 출력 파ì´í”„를 ìƒì„±í•  수 ì—†ìŒ: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: cupstestppd를 실행할 수 ì—†ìŒ: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 줄ì—서 #po íŒŒì¼ %1$sì„(를) ì°¾ì„ ìˆ˜ ì—†ìŒ!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %3$sì˜ %2$d번째 줄ì—서 í¬í•¨ íŒŒì¼ \"%1$s\"ì„(를) ì°¾ì„ ìˆ˜ ì—†ìŒ!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: \"%s\"ì— ëŒ€í•œ 현지화를 ì°¾ì„ ìˆ˜ ì—†ìŒ - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: \"%s\"ì— ëŒ€í•œ 현지화 파ì¼ì„ 로드할 수 ì—†ìŒ - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 ì¤„ì— ë³€ìˆ˜(%1$s)ê°€ ì •ì˜ë˜ì§€ 않ìŒ.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 ì¤„ì— ì•Œ 수 없는 %1$s 드ë¼ì´ë¸Œ 유형!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 ì¤„ì— ì•Œ 수 없는 \"%1$s\" ì–‘ë©´ 유형!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 ì¤„ì— ì•Œ 수 없는 \"%1$s\" 미디어 í¬ê¸°!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: %3$sì˜ %2$d번째 ì¤„ì— ë³´ì´ëŠ” 알 수 없는 \"%1$s\" 토í°!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: %3$sì˜ %2$d번째 ì¤„ì— ìžˆëŠ” \"%1$s\" ì‹¤ìˆ˜ì— ì•Œ 수 없는 마지막 문ìž!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: %3$sì˜ %2$d번째 ì¤„ì— %1$c(으)로 시작하는 ë나지 않는 스트ë§!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: %s 쓰는 중...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: \"%s\" ë””ë ‰í† ë¦¬ì— PPD íŒŒì¼ ì“°ëŠ” 중...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: %2$sì— ìž˜ëª»ëœ \"%1$s\" LanguageVersion!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: %s PPD íŒŒì¼ ë¬´ì‹œ 중...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: %sì„(를) %s(으)로 백업할 수 ì—†ìŒ- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "%2$s ì´í›„로 %1$s 프린터가 ë¹„í™œì„±í™”ë¨ -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "%s 프린터가 대기 중. %s ì´í›„ì— í™œì„±í™”ë¨\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "%s 프린터가 현재 %s-%dì„(를) 프린트 중입니다. %s ì´í›„ì— í™œì„±í™”ë¨\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "%s/%s 프린터가 %s ì´í›„ì— ë¹„í™œì„±í™”ë¨ -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "%s/%s 프린터가 대기 중. %s ì´í›„ì— í™œì„±í™”ë¨\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr ""
-#~ "%s/%s 프린터가 현재 %s-%dì„(를) 프린트 중입니다. %s ì´í›„ì— í™œì„±í™”ë¨\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "요청 id는 %s-%d(%dê°œì˜ íŒŒì¼)\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "ì¼ì •ì´ ì‹¤í–‰ë˜ì§€ 않ìŒ\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "ì¼ì •ì´ ì‹¤í–‰ 중\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "ìƒíƒœ\t\të°ëª¬ ë° ëŒ€ê¸°ì—´ ìƒíƒœ 보기\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "시스템 기본 대ìƒ: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "시스템 기본 대ìƒ: %s/%s\n"
diff --git a/locale/cups_nl.po b/locale/cups_nl.po
deleted file mode 100644
index 02adec61..00000000
--- a/locale/cups_nl.po
+++ /dev/null
@@ -1,8758 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f millimeter"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f tot %.0f x %.0f millimeter"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f inch"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f tot %.2f x %.2f inch"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s kan niet worden gewijzigd."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 inch/sec."
-
-msgid "1.25x0.25\""
-msgstr "1,25x0,25\""
-
-msgid "1.25x2.25\""
-msgstr "1,25x2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 inch/sec."
-
-msgid "1.50x0.25\""
-msgstr "1,50x0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50x0,50\""
-
-msgid "1.50x1.00\""
-msgstr "1,50x1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50x2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 inch/sec."
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/sec."
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 inch/sec."
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 inch/sec."
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/sec."
-
-msgid "120x60dpi"
-msgstr "120x60dpi"
-
-msgid "120x72dpi"
-msgstr "120x72dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/sec."
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/sec."
-
-msgid "150dpi"
-msgstr "150dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 inch/sec."
-
-msgid "2-Sided Printing"
-msgstr "Dubbelzijdig afdrukken"
-
-msgid "2.00x0.37\""
-msgstr "2,00x0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00x0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00x1,00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00x1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00x2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00x3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00x4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00x5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25x0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25x1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25x4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25x5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38x5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 inch/sec."
-
-msgid "2.50x1.00\""
-msgstr "2,50x1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50x2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75x1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/sec."
-
-msgid "200 mm/sec."
-msgstr "200 mm/sec."
-
-msgid "203dpi"
-msgstr "203dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24-pens serie"
-
-msgid "240x72dpi"
-msgstr "240x72dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/sec."
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 inch/sec."
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00x1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00x1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00x2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00x3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00x5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25x2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25x5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25x5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25x5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25x7,83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "3,5-inch diskette"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3,5-inch diskette - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50x1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/sec."
-
-msgid "300 mm/sec."
-msgstr "300 mm/sec."
-
-msgid "300dpi"
-msgstr "300dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360dpi"
-
-msgid "360x180dpi"
-msgstr "360x180dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 inch/sec."
-
-msgid "4.00x1.00\""
-msgstr "4,00x1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00x13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00x2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00x2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00x3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00x4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00x5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00x6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00x6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/sec."
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 inch/sec."
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 inch/sec."
-
-msgid "6.00x1.00\""
-msgstr "6,00x1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00x2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00x3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00x4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00x5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00x6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00x6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/sec."
-
-msgid "600dpi"
-msgstr "600dpi"
-
-msgid "60dpi"
-msgstr "60dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 inch/sec."
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 inch/sec."
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00x1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00x2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00x3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00x4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00x5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00x6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00x6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/sec."
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 inch/sec."
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "9-pens serie"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Accepteer taken"
-
-msgid "Accepted"
-msgstr "Geaccepteerd"
-
-msgid "Add Class"
-msgstr "Voeg klasse toe"
-
-msgid "Add Printer"
-msgstr "Voeg printer toe"
-
-msgid "Add RSS Subscription"
-msgstr "Voeg RSS-abonnement toe"
-
-msgid "Address"
-msgstr "Adres"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Adres - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Beheer"
-
-msgid "Always"
-msgstr "Altijd"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Applicator"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Ongeldige NULL-bestemmingspointer"
-
-msgid "Bad OpenGroup"
-msgstr "Ongeldige OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "Ongeldige OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "Ongeldige OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Ongeldig verzoek"
-
-msgid "Bad SNMP version number"
-msgstr "Ongeldig SNMP-versienummer"
-
-msgid "Bad UIConstraints"
-msgstr "Ongeldige UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Ongeldige waarde voor aantal exemplaren %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Ongeldige zelfingestelde parameter"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Ongeldige waarde voor number-up %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Ongeldige waarden voor paginabereik %d-%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Banners"
-
-msgid "Billing Information: "
-msgstr "Factuurgegevens: "
-
-msgid "Bond Paper"
-msgstr "Bankpost"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "CPCL-etikettenprinter"
-
-msgid "Cancel RSS Subscription"
-msgstr "Zeg RSS-abonnement op"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Wijzig instellingen"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Klassen"
-
-msgid "Clean Print Heads"
-msgstr "Reinig printerkoppen"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Kleur"
-
-msgid "Color Mode"
-msgstr "Kleurenmodus"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Onbepaalde lengte gebruikt voor community-naam"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Ga door"
-
-msgid "Continuous"
-msgstr "Doorlopend"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Aangemaakt"
-
-msgid "Created On: "
-msgstr "Aangemaakt op: "
-
-msgid "Custom"
-msgstr "Zelfingesteld"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Afsnijden"
-
-msgid "Cutter"
-msgstr "Snijmachine"
-
-msgid "Dark"
-msgstr "Donker"
-
-msgid "Darkness"
-msgstr "Donkerte"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Verwijder klasse"
-
-msgid "Delete Printer"
-msgstr "Verwijder printer"
-
-msgid "Description: "
-msgstr "Beschrijving: "
-
-msgid "DeskJet Series"
-msgstr "DeskJet-serie"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "Bestemming \"%s\" accepteert geen opdrachten."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Direct Thermal-materiaal"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Uitgeschakeld"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Naam stuurprogramma: "
-
-msgid "Driver Version: "
-msgstr "Versie stuurprogramma: "
-
-msgid "Duplexer"
-msgstr "Duplexer"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1-etikettenprinter"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2-etikettenprinter"
-
-msgid "Edit Configuration File"
-msgstr "Bewerk configuratiebestand"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Eindebanner"
-
-msgid "English"
-msgstr "Dutch"
-
-msgid "Enter old password:"
-msgstr "Voer oude wachtwoord in:"
-
-msgid "Enter password again:"
-msgstr "Voer wachtwoord opnieuw in:"
-
-msgid "Enter password:"
-msgstr "Voer wachtwoord in:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Voer uw gebruikersnaam en wachtwoord of de $%$root-gebruikersnaam en "
-"bijbehorend wachtwoord in om deze pagina te benaderen. Maakt u gebruik van "
-"Kerberos-toegangscontrole, controleer dan of u over een geldig Kerberos-"
-"ticket beschikt."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Envelopinvoer"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Foutenbeleid"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Elke 10 etiketten"
-
-msgid "Every 2 Labels"
-msgstr "Elke 2 etiketten"
-
-msgid "Every 3 Labels"
-msgstr "Elke 3 etiketten"
-
-msgid "Every 4 Labels"
-msgstr "Elke 4 etiketten"
-
-msgid "Every 5 Labels"
-msgstr "Elke 5 etiketten"
-
-msgid "Every 6 Labels"
-msgstr "Elke 6 etiketten"
-
-msgid "Every 7 Labels"
-msgstr "Elke 7 etiketten"
-
-msgid "Every 8 Labels"
-msgstr "Elke 8 etiketten"
-
-msgid "Every 9 Labels"
-msgstr "Elke 9 etiketten"
-
-msgid "Every Label"
-msgstr "Elk etiket"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Verwachting mislukt"
-
-msgid "Export Printers to Samba"
-msgstr "Exporteer printers naar Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Dossiermap"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Dossiermap - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Folio"
-
-msgid "Forbidden"
-msgstr "Verboden"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Algemeen"
-
-msgid "Generic"
-msgstr "Generiek"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Onbepaalde lengte gebruikt voor Get-Response-PDU"
-
-msgid "Glossy Paper"
-msgstr "Glanzend papier"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Grijstinten"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Hangmap"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Hangmap - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Ongeldig besturingsteken"
-
-msgid "Illegal main keyword string"
-msgstr "Ongeldige tekenreeks voor hoofdsleutelwoord"
-
-msgid "Illegal option keyword string"
-msgstr "Ongeldige tekenreeks voor optiesleutelwoord"
-
-msgid "Illegal translation string"
-msgstr "Ongeldige tekenreeks voor vertaling"
-
-msgid "Illegal whitespace character"
-msgstr "Ongeldig teken voor witruimte"
-
-msgid "Installable Options"
-msgstr "Uitbreidingsmogelijkheden"
-
-msgid "Installed"
-msgstr "Geïnstalleerd"
-
-msgid "IntelliBar Label Printer"
-msgstr "IntelliBar-etikettenprinter"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "Interne fout"
-
-msgid "Internet Postage 2-Part"
-msgstr "Internet Postage 2-Part"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Internet Postage 3-Part"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Internet Postage 3-Part - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Internet Printing Protocol"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "Taak #%d is al afgebroken - kan niet worden geannuleerd."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "Taak #%d is al geannuleerd - kan niet worden geannuleerd."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "Taak #%d is al gereed - kan niet worden geannuleerd."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Taak gereed"
-
-msgid "Job Created"
-msgstr "Taak aangemaakt"
-
-msgid "Job ID: "
-msgstr "Taak-ID: "
-
-msgid "Job Options Changed"
-msgstr "Taakopties gewijzigd"
-
-msgid "Job Stopped"
-msgstr "Taak gestopt"
-
-msgid "Job UUID: "
-msgstr "Taak-UUID: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "Taak is gereed en kan niet worden gewijzigd."
-
-msgid "Job operation failed:"
-msgstr "Verwerking van taak is mislukt:"
-
-msgid "Job state cannot be changed."
-msgstr "Status van taak kan niet worden gewijzigd."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Taken"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR-host of -printer"
-
-msgid "Label Printer"
-msgstr "Etikettenprinter"
-
-msgid "Label Top"
-msgstr "Bovenkant etiket"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Groot adres"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Groot adres - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet-serie PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Licht"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Regel is langer dan toegestane maximum (255 tekens)"
-
-msgid "List Available Printers"
-msgstr "Toon beschikbare printers"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Locatie: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Lange kant (staand)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Merk en model: "
-
-msgid "Manual Feed"
-msgstr "Handmatige invoer"
-
-msgid "Media Dimensions: "
-msgstr "Afmetingen materiaal: "
-
-msgid "Media Limits: "
-msgstr "Min. en max. afmetingen: "
-
-msgid "Media Name: "
-msgstr "Materiaalnaam: "
-
-msgid "Media Size"
-msgstr "Materiaalgrootte"
-
-msgid "Media Source"
-msgstr "Bron voor materiaal"
-
-msgid "Media Tracking"
-msgstr "Materiaaldetectie"
-
-msgid "Media Type"
-msgstr "Materiaaltype"
-
-msgid "Medium"
-msgstr "Materiaal"
-
-msgid "Memory allocation error"
-msgstr "Geheugentoewijzingsfout"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "Ontbrekende PPD-Adobe-4.x-kopregel"
-
-msgid "Missing asterisk in column 1"
-msgstr "Ontbrekende asterisk in kolom 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Ontbrekende tekenreeks voor waarde"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Wijzig klasse"
-
-msgid "Modify Printer"
-msgstr "Wijzig printer"
-
-msgid "Move All Jobs"
-msgstr "Verplaats alle taken"
-
-msgid "Move Job"
-msgstr "Verplaats taak"
-
-msgid "Moved Permanently"
-msgstr "Definitief verplaatst"
-
-msgid "NULL PPD file pointer"
-msgstr "NULL-pointer voor PPD-bestand"
-
-msgid "Name OID uses indefinite length"
-msgstr "Onbepaalde lengte gebruikt voor naam-OID"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Nooit"
-
-msgid "New Stylus Color Series"
-msgstr "Nieuwe Stylus Color-serie"
-
-msgid "New Stylus Photo Series"
-msgstr "Nieuwe Stylus Photo-serie"
-
-msgid "No"
-msgstr "Nee"
-
-msgid "No Content"
-msgstr "Geen inhoud"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Geen VarBind-SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Geen actieve verbinding"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Geen community-naam"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Geen bestemmingen toegevoegd."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Geen error-index"
-
-msgid "No error-status"
-msgstr "Geen error-status"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Geen naam-OID"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Geen verzoek-ID"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Geen abonnementen gevonden."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Geen variable-bindings-SEQUENCE"
-
-msgid "No version number"
-msgstr "Geen versienummer"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Niet-doorlopend (markeringssensor)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Niet-doorlopend (afstandssensor)"
-
-msgid "Normal"
-msgstr "Normaal"
-
-msgid "Not Found"
-msgstr "Niet gevonden"
-
-msgid "Not Implemented"
-msgstr "Niet geïmplementeerd"
-
-msgid "Not Installed"
-msgstr "Niet geïnstalleerd"
-
-msgid "Not Modified"
-msgstr "Niet gewijzigd"
-
-msgid "Not Supported"
-msgstr "Niet ondersteund"
-
-msgid "Not allowed to print."
-msgstr "Afdrukken niet toegestaan."
-
-msgid "Note"
-msgstr "Opmerking"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Uit (enkelzijdig)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Online Help"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "Openen van %s mislukt: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup zonder eerst een CloseGroup"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI zonder eerst een CloseUI/JCLCloseUI"
-
-msgid "Operation Policy"
-msgstr "Gebruiksbeleid"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Geïnstalleerde opties"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Opties: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Uitvoermodus"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "PCL-laserprinter"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Pakket bevat geen Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Pakket begint niet met SEQUENCE"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Wachtwoord voor %s op %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "Wachtwoord voor %s vereist om %s te benaderen via SAMBA: "
-
-msgid "Pause Class"
-msgstr "Onderbreek klasse"
-
-msgid "Pause Printer"
-msgstr "Onderbreek printer"
-
-msgid "Peel-Off"
-msgstr "Zelfklevend"
-
-msgid "Photo"
-msgstr "Foto"
-
-msgid "Photo Labels"
-msgstr "Foto-etiketten"
-
-msgid "Plain Paper"
-msgstr "Gewoon papier"
-
-msgid "Policies"
-msgstr "Beleid"
-
-msgid "Port Monitor"
-msgstr "Poortmonitor"
-
-msgid "PostScript Printer"
-msgstr "PostScript-printer"
-
-msgid "Postcard"
-msgstr "Briefkaart"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Afdrukdichtheid"
-
-msgid "Print Job:"
-msgstr "Afdruktaak:"
-
-msgid "Print Mode"
-msgstr "Afdrukmodus"
-
-msgid "Print Rate"
-msgstr "Afdrukdoorvoer"
-
-msgid "Print Self-Test Page"
-msgstr "Druk zelftestpagina af"
-
-msgid "Print Speed"
-msgstr "Afdruksnelheid"
-
-msgid "Print Test Page"
-msgstr "Druk testpagina af"
-
-msgid "Print and Cut"
-msgstr "Afdrukken en afsnijden"
-
-msgid "Print and Tear"
-msgstr "Afdrukken en afscheuren"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Afgedrukt voor: "
-
-msgid "Printed From: "
-msgstr "Afgedrukt vanaf: "
-
-msgid "Printed On: "
-msgstr "Afgedrukt op: "
-
-msgid "Printer Added"
-msgstr "Printer toegevoegd"
-
-msgid "Printer Default"
-msgstr "Printerstandaard"
-
-msgid "Printer Deleted"
-msgstr "Printer verwijderd"
-
-msgid "Printer Modified"
-msgstr "Printer gewijzigd"
-
-msgid "Printer Name: "
-msgstr "Printernaam: "
-
-msgid "Printer Paused"
-msgstr "Printer onderbroken"
-
-msgid "Printer Settings"
-msgstr "Printerinstellingen"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Printer:"
-
-msgid "Printers"
-msgstr "Printers"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Maak takenlijst leeg"
-
-msgid "Quarto"
-msgstr "Quarto"
-
-msgid "Quota limit reached."
-msgstr "Quotumlimiet bereikt."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Weiger taken"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Druk opnieuw af na fout"
-
-msgid "Request Entity Too Large"
-msgstr "Request Entity te groot"
-
-msgid "Resolution"
-msgstr "Resolutie"
-
-msgid "Resume Class"
-msgstr "Hervat klasse"
-
-msgid "Resume Printer"
-msgstr "Hervat printer"
-
-msgid "Return Address"
-msgstr "Adres afzender"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Adres afzender - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Oprollen"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "Onbepaalde lengte gebruikt voor SEQUENCE"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Zie andere"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Seriële poort #%d"
-
-msgid "Server Restarted"
-msgstr "Server herstart"
-
-msgid "Server Security Auditing"
-msgstr "Serverbeveiligingscontrole"
-
-msgid "Server Started"
-msgstr "Server gestart"
-
-msgid "Server Stopped"
-msgstr "Server gestopt"
-
-msgid "Service Unavailable"
-msgstr "Voorziening niet beschikbaar"
-
-msgid "Set Allowed Users"
-msgstr "Stel aantal toegestane gebruikers in"
-
-msgid "Set As Server Default"
-msgstr "Stel in als serverstandaard"
-
-msgid "Set Class Options"
-msgstr "Stel klasseopties in"
-
-msgid "Set Printer Options"
-msgstr "Stel printeropties in"
-
-msgid "Set Publishing"
-msgstr "Stel publicatie in"
-
-msgid "Shipping Address"
-msgstr "Afleveradres"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Afleveradres - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Korte kant (liggend)"
-
-msgid "Special Paper"
-msgstr "Speciaal papier"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Standaard"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Startbanner"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Statement"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color-serie"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo-serie"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Schakelen tussen protocollen"
-
-msgid "Tabloid"
-msgstr "Tabloid"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Scheuren"
-
-msgid "Tear-Off"
-msgstr "Afscheuren"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Pas positie voor afscheuren aan"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "Het PPD-bestand \"%s\" kon niet worden gevonden."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "Het PPD-bestand \"%s\" kon niet worden geopend: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"De klassenaam mag maximaal 127 afdrukbare tekens en geen spaties, schuine "
-"strepen (/) of hekjes (#) bevatten."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"Het attribuut &aops;notify-lease-duration&aops; kan niet worden gebruikt bij "
-"taakabonnementen."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"De printernaam mag maximaal 127 afdrukbare tekens en geen spaties, schuine "
-"strepen (/) of hekjes (#) bevatten."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "De printer-uri \"%s\" bevat ongeldige tekens."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"De printer-uri moet de vorm \"ipp://HOSTNAAM/klassen/KLASSENAAM\" hebben."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"De printer-uri moet de vorm \"ipp://HOSTNAAM/printers/PRINTERNAAM\" hebben."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"De abonnementsnaam mag geen spaties, schuine strepen (/), vraagtekens (?) of "
-"hekjes (#) bevatten."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Er zijn te veel abonnementen."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Thermal Transfer-materiaal"
-
-msgid "Title: "
-msgstr "Titel: "
-
-msgid "Too many active jobs."
-msgstr "Te veel actieve taken."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Transparantie"
-
-msgid "Tray"
-msgstr "Lade"
-
-msgid "Tray 1"
-msgstr "Lade 1"
-
-msgid "Tray 2"
-msgstr "Lade 2"
-
-msgid "Tray 3"
-msgstr "Lade 3"
-
-msgid "Tray 4"
-msgstr "Lade 4"
-
-msgid "URI Too Long"
-msgstr "URI te lang"
-
-msgid "US Ledger"
-msgstr "US Ledger"
-
-msgid "US Legal"
-msgstr "US Legal"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "US Letter"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "USB-seriële poort #%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Niet mogelijk om toegang te krijgen tot cupsd.conf-bestand:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Niet mogelijk om RSS-abonnement toe te voegen:"
-
-msgid "Unable to add class:"
-msgstr "Niet mogelijk om klasse toe te voegen:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Niet mogelijk om printer toe te voegen:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Niet mogelijk om RSS-abonnement op te zeggen:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Niet mogelijk om attribuut &aops;printer-is-shared&aops; te wijzigen:"
-
-msgid "Unable to change printer:"
-msgstr "Niet mogelijk om printer te wijzigen:"
-
-msgid "Unable to change server settings:"
-msgstr "Niet mogelijk om serverinstellingen te wijzigen:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Niet mogelijk om verbinding met host te maken."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Niet mogelijk om tijdelijk bestand aan te maken:"
-
-msgid "Unable to delete class:"
-msgstr "Niet mogelijk om klasse te verwijderen:"
-
-msgid "Unable to delete printer:"
-msgstr "Niet mogelijk om printer te verwijderen:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Niet mogelijk om onderhoudscommando op te geven:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Niet mogelijk om klasselijst weer te geven:"
-
-msgid "Unable to get class status:"
-msgstr "Niet mogelijk om klassestatus weer te geven:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Niet mogelijk om lijst van printerstuurprogramma&aops;s weer te geven:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Niet mogelijk om printerattributen weer te geven:"
-
-msgid "Unable to get printer list:"
-msgstr "Niet mogelijk om printerlijst weer te geven:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Niet mogelijk om printerstatus weer te geven:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Niet mogelijk om klasse te wijzigen:"
-
-msgid "Unable to modify printer:"
-msgstr "Niet mogelijk om printer te wijzigen:"
-
-msgid "Unable to move job"
-msgstr "Niet mogelijk om taak te verplaatsen"
-
-msgid "Unable to move jobs"
-msgstr "Niet mogelijk om taken te verplaatsen"
-
-msgid "Unable to open PPD file"
-msgstr "Niet mogelijk om PPD-bestand te openen"
-
-msgid "Unable to open PPD file:"
-msgstr "Niet mogelijk om PPD-bestand te openen:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Niet mogelijk om cupsd.conf-bestand te openen:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Niet mogelijk om testpagina af te drukken:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Niet mogelijk om opties in te stellen:"
-
-msgid "Unable to set server default:"
-msgstr "Niet mogelijk om serverstandaard in te stellen:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Niet mogelijk om cupsd.conf file-bestand te uploaden:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Onbevoegd"
-
-msgid "Units"
-msgstr "Eenheden"
-
-msgid "Unknown"
-msgstr "Onbekend"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Onbekend printerfoutbeleid \"%s\"."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Onbekend printergebruiksbeleid \"%s\"."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Niet-ondersteund waardetype"
-
-msgid "Upgrade Required"
-msgstr "Upgrade vereist"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Onbepaalde lengte gebruikt voor waarde"
-
-msgid "VarBind uses indefinite length"
-msgstr "Onbepaalde lengte gebruikt voor VarBind"
-
-msgid "Version uses indefinite length"
-msgstr "Onbepaalde lengte gebruikt voor versie"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Ja"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"U dient deze pagina te benaderen via de URL <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "ZPL-etikettenprinter"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "afgebroken"
-
-msgid "canceled"
-msgstr "geannuleerd"
-
-msgid "completed"
-msgstr "gereed"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "cups-deviced niet uitgevoerd."
-
-msgid "cups-driverd failed to execute."
-msgstr "cups-driverd niet uitgevoerd."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "Onbepaalde lengte gebruikt voor error-index"
-
-msgid "error-status uses indefinite length"
-msgstr "Onbepaalde lengte gebruikt voor error-status"
-
-msgid "held"
-msgstr "vastgehouden"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "niet in gebruik"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "in bewerking"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "taak wordt verwerkt"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "onbepaalde lengte gebruikt voor request-id"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "stat van %s mislukt: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "gestopt"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "onbekend"
-
-msgid "untitled"
-msgstr "naamloos"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "onbepaalde lengte gebruikt voor variable-bindings"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(alle)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(geen)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d onderdelen\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tNa storing: doorgaan\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tWaarschuwingen:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tBanner vereist\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tCharset-sets:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tVerbinding: direct\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tVerbinding: niet-lokaal\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tStandaard paginagrootte:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tStandaardpitch:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tStandaard poortinstellingen:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tOmschrijving: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tFormulier geactiveerd:\n"
-#~ "\tInhoudstypes: alle\n"
-#~ "\tPrintertypes: onbekend\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tFormulieren toegestaan:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tInterface: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tInterface: %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tInterface: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tLocatie: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tBij storing: geen waarschuwing\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tGebruikers toegelaten:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tGebruikers geweigerd:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tdaemon aanwezig\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tgeen onderdelen\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tprinter bevindt zich op apparaat &aops;%s&aops; snelheid -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tafdrukken is uitgeschakeld\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tafdrukken is ingeschakeld\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tgeplaatst in wachtrij voor %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tverplaatsen naar wachtrij is uitgeschakeld\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tverplaatsen naar wachtrij is ingeschakeld\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tonbekende oorzaak\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " GEDETAILLEERDE RESULTATEN VOOR CONFORMANTIETEST\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: Pagina 15, sectie 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: Pagina 15, sectie 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: Pagina 19, sectie 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: Pagina 20, sectie 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: Pagina 27, sectie 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: Pagina 42, sectie 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: Pagina 16-17, sectie 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: Pagina 42-45, sectie 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: Pagina 45-46, sectie 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: Pagina 48-49, sectie 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: Pagina 52-54, sectie 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f bytes\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN \"%s %s\" conflicteert met \"%s %s\"\n"
-#~ " (beperking=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %s heeft geen bijbehorende opties!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s deelt een gemeenschappelijke prefix met %s\n"
-#~ " REF: Pagina 15, sectie 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN Standaardkeuzen conflicteren!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN Sleutelwoord %s voor duplexoptie werkt mogelijk niet "
-#~ "zoals verwacht. Gebruik Duplex als sleutelwoord.\n"
-#~ " REF: Pagina 122, sectie 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " WARN Bestand bevat een combinatie van CR-, LF- en CR LF-"
-#~ "regeleinden!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN &aops;LanguageEncoding&aops; vereist door PPD 4.3-"
-#~ "specificatie.\n"
-#~ " REF: Pagina 56-57, sectie 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN Regel %d bevat alleen witruimte!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN &aops;Manufacturer&aops; vereist door PPD 4.3-"
-#~ "specificatie.\n"
-#~ " REF: Pagina 58-59, sectie 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN APDialogExtension-bestand \"%s\" ontbreekt\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN APPrinterIconPath-bestand \"%s\" ontbreekt\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN PPD-bestanden voor andere systemen dan Windows mogen "
-#~ "uitsluitend LF als regeleinde gebruiken, niet CR LF!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN Verouderde PPD-versie %.1f!\n"
-#~ " REF: Pagina 42, sectie 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName langer dan 8.3 komt niet overeen met PPD-"
-#~ "specificatie.\n"
-#~ " REF: Pagina 61-62, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protocols bevat PJL, maar JCL-attributen zijn niet "
-#~ "ingesteld.\n"
-#~ " REF: Pagina 78-79, sectie 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protocols bevat zowel PJL als BCP; verwachtte TBCP.\n"
-#~ " REF: Pagina 78-79, sectie 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN &aops;ShortNickName&aops; vereist door PPD 4.3-"
-#~ "specificatie.\n"
-#~ " REF: Pagina 64-65, sectie 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s bestaat niet!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Ongeldige %s keuze %s!\n"
-#~ " REF: Pagina 122, sectie 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Ongeldige UTF-8 \"%s\" vertaalreeks voor optie %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Ongeldige UTF-8 \"%s\" vertaalreeks voor optie %s, keuze %s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Ongeldige waarde voor cupsFilter \"%s\"!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s Ongeldig cupsICCProfile %s!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Ongeldige waarde voor cupsPreFilter \"%s\"!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Ongeldige cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Ongeldige taal \"%s\"!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s Lege cupsUIConstraints %s!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Ontbrekende \"%s\" vertaalreeks voor optie %s!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Ontbrekende \"%s\" vertaalreeks voor optie %s, keuze %s!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Ontbrekende keuze *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s Ontbrekende keuze *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s Ontbrekend cupsFilter-bestand \"%s\"\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s Ontbrekend cupsICCProfile-bestand \"%s\"!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s Ontbrekend cupsPreFilter-bestand \"%s\"\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s Ontbrekende cupsUIResolver %s!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Ontbrekende optie %s in UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Ontbrekende optie %s in cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s Geen basisvertaling \"%s\" opgenomen in bestand!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s REQUIRED %s bevat geen definitie voor keuze None!\n"
-#~ " REF: Pagina 122, sectie 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s cupsICCProfile %s hash-waarde conflicteert met %s!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s veroorzaakt een lus!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** %s keuzenamen %s en %s verschillen alleen in "
-#~ "hoofdlettergebruik!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FAIL** %s moet 1284DeviceID zijn!\n"
-#~ " REF: Pagina 72, sectie 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** ONGELDIGE Default%s %s\n"
-#~ " REF: Pagina 40, sectie 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ONGELDIGE DefaultImageableArea %s!\n"
-#~ " REF: Pagina 102, sectie 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ONGELDIGE DefaultPaperDimension %s!\n"
-#~ " REF: Pagina 103, sectie 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FAIL** ONGELDIG JobPatchFile-attribuut in bestand\n"
-#~ " REF: Pagina 24, sectie 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** ONGELDIGE Manufacturer (moet zijn \"HP\")\n"
-#~ " REF: Pagina 211, tabel D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** ONGELDIGE Manufacturer (moet zijn \"Oki\")\n"
-#~ " REF: Pagina 211, tabel D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ONGELDIGE ModelName - \"%c\" niet toegestaan in "
-#~ "tekenreeks.\n"
-#~ " REF: Pagina 59-60, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ONGELDIGE PSVersion - niet \"(tekenreeks) int\".\n"
-#~ " REF: Pagina 62-64, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ONGELDIG Product - niet \"(tekenreeks)\".\n"
-#~ " REF: Pagina 62, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ONGELDIGE ShortNickName - langer dan 31 tekens.\n"
-#~ " REF: Pagina 64-65, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FAIL** Ongeldige %s keuze %s!\n"
-#~ " REF: Pagina 84, sectie 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Ongeldige FileVersion \"%s\"\n"
-#~ " REF: Pagina 56, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Ongeldige FormatVersion \"%s\"\n"
-#~ " REF: Pagina 56, sectie 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **FAIL** Ongeldige LanguageEncoding %s - moet ISOLatin1 zijn!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **FAIL** Ongeldige LanguageVersion %s - moet Engels zijn!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr ""
-#~ " **FAIL** Code voor standaardoptie kan niet worden geïnterpreteerd: "
-#~ "%s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Standaardvertaalreeks voor optie %s keuze %s bevat 8-bits "
-#~ "tekens!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Standaardvertaalreeks voor optie %s bevat 8-bits tekens!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Groepsnamen %s en %s verschillen alleen in "
-#~ "hoofdlettergebruik!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FAIL** %s keuzenaam %s komt meerdere keren voor!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Optienamen %s en %s verschillen alleen in "
-#~ "hoofdlettergebruik!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Pagina 40, sectie 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Pagina 102, sectie 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Pagina 103, sectie 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Pagina 56, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Pagina 56, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED ImageableArea voor PageSize %s\n"
-#~ " REF: Pagina 41, sectie 5.\n"
-#~ " REF: Pagina 102, sectie 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pagina 56-57, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pagina 57-58, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pagina 58-59, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pagina 59-60, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Pagina 60, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pagina 61-62, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pagina 62-64, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Pagina 100, sectie 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pagina 41, sectie 5.\n"
-#~ " REF: Pagina 99, sectie 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pagina 99-100, sectie 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PaperDimension voor PageSize %s\n"
-#~ " REF: Pagina 41, sectie 5.\n"
-#~ " REF: Pagina 103, sectie 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Pagina 62, sectie 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Pagina 64-65, sectie 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d FOUTEN GEVONDEN"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " Ongeldige %%%%BoundingBox: op regel %d!\n"
-#~ " REF: Pagina 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " Ongeldige %%%%Page: op regel %d!\n"
-#~ " REF: Pagina 53, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " Ongeldige %%%%Pages: op regel %d!\n"
-#~ " REF: Pagina 43, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " Regel %d bevat meer dan 255 tekens (%d)!\n"
-#~ " REF: Pagina 25, Line Length\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " Ontbrekende %!PS-Adobe-3.0 op eerste regel!\n"
-#~ " REF: Pagina 17, 3.1 Conforming Documents\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " Ontbrekend %%EndComments-commentaar!\n"
-#~ " REF: Pagina 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " Ontbrekend of ongeldig %%BoundingBox-commentaar!\n"
-#~ " REF: Pagina 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " Ontbrekend of ongeldig %%Page-commentaar!\n"
-#~ " REF: Pagina 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " Ontbrekend of ongeldig %%Pages-commentaar!\n"
-#~ " REF: Pagina 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " GEEN FOUTEN GEVONDEN\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " %d Regels gevonden met meer dan 255 tekens!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " Te veel %%BeginDocument-commentaren!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " Te veel %%EndDocument-commentaren!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Waarschuwing: bestand bevat binaire gegevens!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Waarschuwing: bestand bevat geen %%EndComments-commentaar!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Waarschuwing: bestand bevat verouderde DSC versie %.1f!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FAIL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Kan PPD-bestand niet openen - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Kan PPD-bestand niet openen - %s op regel %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " PASS\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10-envelop"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11-envelop"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12-envelop"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14-envelop"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9-envelop"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s accepteert verzoeken sinds %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s is niet geïmplementeerd in de CUPS-versie van lpc.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s is niet gereed\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s is gereed\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s is gereed en bezig met afdrukken\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s accepteert geen verzoeken sinds %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s niet ondersteund!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s accepteert verzoeken sinds %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s accepteert geen verzoeken sinds %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [taak %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s niet gelukt: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: Ik weet niet wat ik moet doen!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Fout - %s niet-bestaande bestemming voor variabelenamen van omgeving "
-#~ "\"%s\"!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Fout - ongeldige taak-ID!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: Fout - niet mogelijk om gelijktijdig bestanden af te drukken en taken "
-#~ "te wijzigen!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Fout - niet mogelijk om af te drukken vanuit stdin als bestanden of "
-#~ "een taak-ID zijn aangeleverd!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Fout - verwachtte tekenset na optie &aops;-S&aops;!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Fout - verwachtte inhoudstype na optie &aops;-T&aops;!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: Fout - verwachtte aantal afdrukken na optie &aops;-n&aops;!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: Fout - verwachtte aantal exemplaren na optie &aops;-#&aops;!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Fout - verwachtte bestemming na optie &aops;-P&aops;!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Fout - verwachtte bestemming na optie &aops;-b&aops;!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Fout - verwachtte bestemming na optie &aops;-d&aops;!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Fout - verwachtte formulier na optie &aops;-f&aops;!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Fout - verwachtte hold-naam na optie &aops;-H&aops;!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Fout - verwachtte hostnaam na optie &aops;-H&aops;!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Fout - verwachtte hostnaam na optie &aops;-h&aops;!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: Fout - verwachtte moduslijst na optie &aops;-y&aops;!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Fout - verwachtte naam na optie &aops;-%c&aops;!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: Fout - verwachtte optietekenreeks na optie &aops;-o&aops;!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Fout - verwachtte paginalijst na optie &aops;-P&aops;!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Fout - verwachtte prioriteit na optie &aops;-%c&aops;!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Fout - verwachtte verklaring na optie &aops;-r&aops;!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Fout - verwachtte titel na optie &aops;-t&aops;!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: Fout - verwachtte gebruikersnaam na optie &aops;-U&aops;!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: Fout - verwachtte gebruikersnaam na optie &aops;-u&aops;!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Fout - verwachtte waarde na optie &aops;-%c&aops;!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Fout - optie &aops;-W&aops; moet worden gevolgd door \"gereed\", "
-#~ "\"niet gereed\" of \"alle\"!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Fout - geen standaardbestemming beschikbaar.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Fout - prioriteit moet tussen 1 en 100 liggen.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Fout - taakplanner reageert niet!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Fout - te veel bestanden - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Fout - niet mogelijk om \"%s\" te benaderen - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: Fout - in wachtrij plaatsen vanaf stdin is niet mogelijk - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Fout - onbekende bestemming \"%s\"!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Fout - onbekende bestemming \"%s/%s\"!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Fout - onbekende optie &aops;%c&aops;!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Fout - onbekende optie '%s'!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: Verwachtte taak-ID na optie &aops;-i&aops;!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Filter \"%s\" niet beschikbaar: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Ongeldige bestemmingsnaam in lijst \"%s\"!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: Ongeldige filtertekenreeks \"%s\"\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr ""
-#~ "%s: Taak-ID (&aops;-i jobid&aops;) nodig voor &aops;-H restart&aops;!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Geen filter beschikbaar voor conversie van %s/%s naar %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: Bewerking mislukt: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: Sorry, geen ondersteuning voor encryptie opgenomen!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Kan geen verbinding tot stand brengen met server\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: Kan geen contact maken met server!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: Niet mogelijk om MIME-type van \"%s\" vast te stellen!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: Niet mogelijk om %s - %s te openen\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: Niet mogelijk om %s - %s in regel %d te openen.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: Niet mogelijk om %s te openen: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: Niet mogelijk om PPD-bestand %s in regel %d te openen\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: Niet mogelijk om MIME-database van \"%s\" of \"%s\" te lezen!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: Onbekende bestemming \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: Onbekend MIME-type voor bestemming %s/%s!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: Onbekende optie &aops;%c&aops;!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: Onbekend MIME-type voor bron %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Waarschuwing - &aops;%c&aops; format modifier niet ondersteund - "
-#~ "uitvoer is mogelijk niet correct!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Waarschuwing - tekensetoptie genegeerd!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Waarschuwing - inhoudstype-optie genegeerd!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Waarschuwing - formulieroptie genegeerd!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Waarschuwing - modusoptie genegeerd!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: fout - %s niet-bestaande bestemming voor variabelenamen van omgeving "
-#~ "\"%s\"!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: fout - verwachtte optie=waarde na optie &aops;-o&aops;!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: fout - geen standaardbestemming beschikbaar.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600-DPI grijstinten"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Ongeldig en onbekend helpcommando\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr ""
-#~ "Voor het exporteren van printerstuurprogramma&aops;s is een Samba-"
-#~ "wachtwoord vereist!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr ""
-#~ "Voor het exporteren van printerstuurprogramma&aops;s is een Samba-"
-#~ "gebruikersnaam vereist!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Er is al een klasse met de naam \"%s\"!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Er is al een printer met de naam \"%s\"!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (oversize)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (oversize)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (klein)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (oversize)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "Poging om %s printer-state in te stellen op ongeldige waarde %d!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Attribuutgroepen hebben verkeerde volgorde (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "Ongeldige apparaat-URI \"%s\"!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "Ongeldige device-uri \"%s\"!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Ongeldig device-uri-schema \"%s\"!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "Ongeldige documentindeling \"%s\"!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Ongeldige bestandsnaambuffer!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Ongeldig lettertypeattribuut: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Ongeldige waarde voor job-priority!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Ongeldige waarde voor job-sheets \"%s\"!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Ongeldig waardetype voor job-sheets!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Ongeldige waarde voor job-state!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Ongeldig job-uri-attribuut \"%s\"!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Ongeldige notify-pull-method \"%s\"!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "Ongeldige URI voor notify-recipient-uri \"%s\"!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Ongeldige optie + keuze op regel %d!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Ongeldige port-monitor \"%s\"!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Ongeldige waarde voor printer-state %d!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Ongeldig versienummer voor verzoek %d.%d!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "Ongeldig abonnement-ID!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0-envelop"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1-envelop"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2-envelop"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3-envelop"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4-envelop"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5-envelop"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6-envelop"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65-envelop"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7-envelop"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Tekenset \"%s\" niet ondersteund!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3-envelop"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4-envelop"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Commando&aops;s kunnen worden afgekort. Commando&aops;s zijn:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Kon type \"%s\" niet scannen!"
-
-#~ msgid "Cover open."
-#~ msgstr "Printklep open."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL-envelop"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Ontwikkelaar bijna op."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Ontwikkelaar op!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Apparaat: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Document %d is niet gevonden in taak %d."
-
-#~ msgid "Door open."
-#~ msgstr "Deur open."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Dubbele briefkaart"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: Niet mogelijk geheugen toe te kennen voor pagina-info: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: Niet mogelijk geheugen toe te kennen voor paginareeks: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Ongeldige %%BoundingBox: opmerking ontdekt!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: Ongeldige %%IncludeFeature: opmerking!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: Ongeldige %%Page: opmerking in bestand!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: Ongeldige %%PageBoundingBox: opmerking in bestand!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Ongeldig SCSI-apparaatbestand \"%s\"!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: Ongeldig tekensetbestand %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: Ongeldig tekensettype %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: Ongeldige kolomwaarde %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: Ongeldige cpi-waarde %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: Ongeldige regel voor lettertypeomschrijving: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: Ongeldige lpi-waarde %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Ongeldige pagina-instelling!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: Ongeldige tekstrichting %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: Ongeldige tekstbreedte %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: Printer die is gekozen als bestemming bestaat niet!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Dubbele %%BoundingBox: opmerking ontdekt!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: Dubbele %%Pages: opmerking ontdekt!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: Leeg afdrukbestand!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: Fout %d bij versturen PAPSendData-verzoek: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr ""
-#~ "ERROR: Verwachtte tekenreeks met aanhalingstekens in regel %d van %s!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: Fatale USB-fout!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: Ongeldig HP-GL/2-commando ontdekt, kan afdrukbestand niet openen!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: Ontbrekende %%EndProlog!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: Ontbrekende %%EndSetup!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Ontbrekende apparaat-URI op commandoregel en geen DEVICE_URI-"
-#~ "omgevingsvariabele!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: Ontbrekende waarde in regel %d van bannerbestand!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: msgid-regel vereist voorafgaand aan vertaalreeksen in regel %d van "
-#~ "%s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: Geen %%BoundingBox: opmerking in kopregel!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: Geen %%Pages: opmerking in kopregel!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Geen apparaat-URI gevonden in argv[0] of in DEVICE_URI-"
-#~ "omgevingsvariabele!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: Geen lettertypen in tekensetbestand %s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: Geen pagina&aops;s gevonden!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: Papier is op!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: PRINTER-omgevingsvariabele niet gedefinieerd!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: Afdrukbestand niet geaccepteerd (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: Printer reageert niet\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: Printer reageert niet!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: Printer heeft onverwacht einde-bestandteken verstuurd\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: Niet-lokale host heeft stuurbestand niet geaccepteerd (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr ""
-#~ "ERROR: Niet-lokale host heeft gegevensbestand niet geaccepteerd (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: Time-out-fout tijdens het versturen van gegevens naar de printer\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: Niet mogelijk om bestand %d toe te voegen aan taak: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: Niet mogelijk om afdruktaak %d te annuleren: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: Niet mogelijk om PDF-bestand te kopiëren"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: Niet mogelijk om socket aan te maken"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: Niet mogelijk om tijdelijk gecomprimeerd afdrukbestand te maken: %"
-#~ "s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: Niet mogelijk om tijdelijk bestand aan te maken"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: Niet mogelijk om tijdelijk bestand - %s te maken.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: Niet mogelijk om tijdelijk bestand te maken: %s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: Niet mogelijk om pictwpstops uit te voeren: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: Niet mogelijk om gs-programma uit te voeren"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: Niet mogelijk om pdftops-programma uit te voeren"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: Niet mogelijk om pictwpstops te splitsen: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: Niet mogelijk om PAP-verzoek op te vragen"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: Niet mogelijk om PAP-reactie op te vragen"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr ""
-#~ "ERROR: Niet mogelijk om PPD-bestand voor printer \"%s\" op te vragen - %"
-#~ "s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: Niet mogelijk om standaard-AppleTalk-zone op te vragen"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: Niet mogelijk om taakattributen %d op te vragen (%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: Niet mogelijk om printerstatus op te vragen (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: Niet mogelijk om printer &aops;%s&aops; te vinden!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: Niet mogelijk om naar PAP-reactie te zoeken"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: Niet mogelijk om naar AppleTalk-printers te zoeken"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: Niet mogelijk om AppleTalk-adres aan te maken"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: Niet mogelijk om \"%s\" te openen - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: Niet mogelijk om %s te openen: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: Niet mogelijk om bannerbestand \"%s\" te openen - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: Niet mogelijk om apparaatbestand \"%s\" te openen: %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: Niet mogelijk om bestand \"%s\" te openen - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: Niet mogelijk om bestand \"%s\" te openen: %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: Niet mogelijk om beeldbestand te openen voor afdrukken!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: Niet mogelijk om afdrukbestand \"%s\" te openen: %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: Niet mogelijk om afdrukbestand %s te openen - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: Niet mogelijk om afdrukbestand %s te openen: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: Niet mogelijk om tijdelijk gecomprimeerd afdrukbestand te openen: %"
-#~ "s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: Niet mogelijk om tijdelijk bestand te openen"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: Niet mogelijk om %d tekstkolommen af te drukken!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: Niet mogelijk om %dx%d tekstpagina af te drukken!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: Niet mogelijk om afdrukgegevens te lezen"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: Niet mogelijk om afdrukgegevens te lezen!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: Niet mogelijk om poort te reserveren"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr ""
-#~ "ERROR: Niet mogelijk om te proberen %ld in bestand te positioneren - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr ""
-#~ "ERROR: Niet mogelijk om te proberen %lld in bestand te positioneren - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: Niet mogelijk om LPD-commando te versturen"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: Niet mogelijk om PAP-tickleverzoek te versturen"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr ""
-#~ "ERROR: Niet mogelijk om initieel PAP-verzoek voor versturen gegevens te "
-#~ "versturen"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: Niet mogelijk om afdrukgegevens te verzenden (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: Niet mogelijk om afdrukgegevens te versturen!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: Niet mogelijk om afdrukbestand naar printer te versturen"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr ""
-#~ "ERROR: Niet mogelijk om afsluitende lege tekens naar printer te versturen"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: Niet mogelijk om te wachten op pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: Niet mogelijk om %d bytes te schrijven naar \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: Niet mogelijk om %d bytes naar printer te schrijven!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: Niet mogelijk om stuurbestand weg te schrijven"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: Niet mogelijk om afdrukgegevens weg te schrijven"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: Niet mogelijk om afdrukgegevens weg te schrijven: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr ""
-#~ "ERROR: Niet mogelijk om rastergegevens weg te schrijven naar "
-#~ "stuurprogramma!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: Niet mogelijk om naar tijdelijk bestand te schrijven"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr ""
-#~ "ERROR: Niet mogelijk om ongecomprimeerde documentgegevens weg te "
-#~ "schrijven: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: Onverwachte tekst in regel %d van %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: Onbekende waarde voor encryptie-optie \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: Onbekende bestandsvolgorde \"%s\"\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: Onbekend opmaakteken \"%c\"\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: Onbekende berichtencatalogusstructuur voor \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: Onbekende optie \"%s\" met waarde \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: Onbekende afdrukmodus \"%s\"\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: Onbekende waarde voor versie-optie \"%s\"!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr ""
-#~ "ERROR: Niet-ondersteunde waarde voor helderheid %s, gebruikt "
-#~ "helderheid=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr ""
-#~ "ERROR: Niet-ondersteunde waarde voor gamma %s, gebruikt gamma=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr ""
-#~ "ERROR: Niet-ondersteunde waarde voor number-up %d, gebruikt number-up=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: Niet-ondersteunde waarde voor number-up-layout %s, gebruikt number-"
-#~ "up-layout=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: Niet-ondersteunde waarde voor page-border %s, gebruikt page-"
-#~ "border=none!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr ""
-#~ "ERROR: doc_printf-overflow (%d bytes) ontdekt, afdrukken wordt "
-#~ "geannuleerd!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: pdftops-filter vastgelopen op signaal %d!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: pdftops-filter gestopt met status %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops gestopt na signaal %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops gestopt met status %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: kan worden hersteld: niet mogelijk om verbinding te maken met "
-#~ "printer; nieuwe poging over 30 seconden...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() mislukt"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: stat van afdrukbestand niet mogelijk"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Leeg PPD-bestand!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Fout: hostnaam nodig na optie &aops;-h&aops;!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "FAIL\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "File device-URI&aops;s zijn uitgeschakeld! Raadpleeg als u de URI&aops;s "
-#~ "weer wilt inschakelen de richtlijn voor FileDevice in \"%s/cupsd.conf\"."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Fusertemperatuur te hoog!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Fusertemperatuur te laag!"
-
-#~ msgid "German FanFold"
-#~ msgstr "German FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "German FanFold Legal"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Printer-uri-attribuut gevonden, maar geen job-id!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk uitgeschakeld in Systeemvoorkeuren\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk uitgeschakeld in Systeemvoorkeuren.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: Afdrukopdracht wordt geannuleerd...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: Verbonden met printer...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: Verbinden met printer...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: Stuurbestand succesvol verzonden\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: Gegevensbestand succesvol verzonden\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: Bezig met indelen van pagina %d...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: Bezig met laden van beeldbestand...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: Zoeken naar printer...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: Verbinding wordt geopend\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr "INFO: Afdrukbestand verzonden, wacht tot printer gereed is...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: Printer is bezig; nieuwe poging over 10 seconden...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Printer is bezig; nieuwe poging over 30 seconden...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Printer is bezig; nieuwe poging over 5 seconden...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr ""
-#~ "INFO: Printer biedt geen ondersteuning voor IPP/%d.%d, probeert nu "
-#~ "IPP/1.0...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Printer is bezig; nieuwe poging over 5 seconden...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: Printer is momenteel offline.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: Printer is momenteel offline.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: Printer is nu online.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: Printer is offline.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr ""
-#~ "INFO: Geen verbinding met printer; nieuwe poging over 30 seconden...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: Bezig met afdrukken van pagina %d, %d%% gereed...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: Bezig met afdrukken van pagina %d...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: Klaar om af te drukken.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: Bezig met verzending van stuurbestand (%lu bytes)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: Bezig met verzending van stuurbestand (%u bytes)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: Bezig met verzenden van gegevens\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: Bezig met verzenden van gegevensbestand (%ld bytes)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: Bezig met verzenden van gegevensbestand (%lld bytes)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: Afdrukgegevens worden verstuurd...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: Afdrukbestand is verzonden, %ld bytes...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: Afdrukbestand is verzonden, %lld bytes...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: Bezig met spoolen van LPR-taak, %.0f%% gereed...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: Kan geen contact maken met printer, taak wordt overgebracht naar "
-#~ "volgende printer in klasse...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: Standaard-AppleTalk-zone \"%s\" wordt gebruikt\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: Wacht tot afdrukopdracht is afgerond...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: Wacht tot printer beschikbaar is...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4-envelop"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (oversize)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5-envelop"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6-envelop"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Inkt/toner bijna op."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Inkt/toner op!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Opvangbak voor inkt/toner bijna vol."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Opvangbak voor inkt/toner vol!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Interlock open."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Invite-envelop"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Italian-envelop"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "Taak #%d kan niet worden herstart - geen bestanden!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "Taak #%d bestaat niet!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "Taak #%d is gereed en kan niet worden gewijzigd!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "Taak #%d is nog niet gereed!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "Taak #%d wordt niet vastgehouden voor controle!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "Taak #%d wordt niet vastgehouden!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "Taak #%s bestaat niet!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Taak %d niet gevonden!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Taakabonnementen kunnen niet worden verlengd!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2-envelop"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3-envelop"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Taal \"%s\" wordt niet ondersteund!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Materiaal is vastgelopen!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Materiaallade is bijna leeg."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Materiaallade is leeg!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Materiaallade ontbreekt!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Materiaallade moet worden bijgevuld."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "Document-number-attribuut ontbreekt!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Ontbrekend dubbel aanhalingsteken op regel %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Ontbrekende formuliervariabele!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "Notify-subscription-ids-attribuut ontbreekt!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Requesting-user-name-attribuut ontbreekt!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Vereiste attributen ontbreken!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Ontbrekende waarde op regel %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Monarch-envelop"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: Afdrukbestand geaccepteerd - taak-ID %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: Afdrukbestand geaccepteerd - taak-ID onbekend.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Geen PPD-naam!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Er zijn geen Windows-printerstuurprogramma&aops;s geïnstalleerd!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Geen actieve taken op %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Verzoek bevat geen attributen!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Geen informatie verstrekt voor toegangscontrole!"
-
-#~ msgid "No default printer"
-#~ msgstr "Geen standaardprinter"
-
-#~ msgid "No file!?!"
-#~ msgstr "Geen bestand!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Geen bewerkingstijdstip!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Geen printernaam!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Geen printer-uri gevonden voor klasse!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Geen printer-uri gevonden!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Verzoek bevat geen printer-uri!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Verzoek bevat geen attributen voor abonnement!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC bijna aan einde levensduur."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC aan einde levensduur!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Toner is op!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Uitvoerbak is bijna vol."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Uitvoerbak is vol!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "Uitvoer voor printer %s wordt gestuurd naar %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Uitvoer voor printer %s wordt gestuurd naar niet-lokale printer %s op %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "Uitvoer voor printer %s/%s wordt gestuurd naar %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Uitvoer voor printer %s/%s wordt gestuurd naar niet-lokale printer %s op %"
-#~ "s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Uitvoerbak ontbreekt!"
-
-#~ msgid "PASS\n"
-#~ msgstr "PASS\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1-envelop"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10-envelop"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2-envelop"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3-envelop"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (oversize)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4-envelop"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5-envelop"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6-envelop"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7-envelop"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8-envelop"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9-envelop"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Personal-envelop"
-
-#~ msgid "Printer offline."
-#~ msgstr "Printer offline."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Positie Eigenaar Taak Bestand(en) Totale "
-#~ "grootte\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Positie Eigenaar Prioriteit Taak "
-#~ "Bestanden Totale grootte\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Commando wordt uitgevoerd: %s %s -N -A %s -c &aops;%s&aops;\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "SCSI-printer"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tabloid (oversize)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "De waarde voor notify-user-data is te groot (%d > 63 octetten)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr ""
-#~ "De printer of klasse is niet toegankelijk voor gemeenschappelijk gebruik!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "De printer of klasse kon niet worden gevonden."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "Het attribuut &aops;printer-uri&aops; is vereist!"
-
-#~ msgid "Toner low."
-#~ msgstr "Toner is bijna op."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "Te veel waarden voor job-sheets (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "Te veel waarden voor printer-state-reasons (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "US Executive"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US Legal (oversize)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US Letter (oversize)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US Letter (klein)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Niet mogelijk om taak toe te voegen voor bestemming \"%s\"!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Niet mogelijk om geheugen toe te wijzen voor bestandstypen!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Niet mogelijk om 64-bits CUPS-printerstuurprogramma&aops;s te kopiëren (%"
-#~ "d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr ""
-#~ "Niet mogelijk om 64-bits Windows-printerstuurprogramma&aops;s te kopiëren "
-#~ "(%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Niet mogelijk om CUPS-printerstuurprogramma&aops;s te kopiëren (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Niet mogelijk om PPD-bestand te kopiëren - %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Niet mogelijk om PPD-bestand te kopiëren!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Niet mogelijk om Windows 2000-printerstuurprogramma&aops;s te kopiëren (%"
-#~ "d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Niet mogelijk om Windows 9x-printerstuurprogramma&aops;s te kopiëren (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Niet mogelijk om interfacescript te kopiëren - %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Niet mogelijk om printer-uri aan te maken!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr ""
-#~ "Niet mogelijk om cupsd.conf-bestanden van meer dan 1 MB te bewerken!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Bestemming voor taak kon niet worden gevonden!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Printer is niet gevonden!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Niet mogelijk om Windows 2000-printerstuurprogramma&aops;s te installeren "
-#~ "(%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Niet mogelijk om Windows 9x-printerstuurprogramma&aops;s te installeren (%"
-#~ "d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Niet mogelijk om document %d in taak %d te openen!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Niet mogelijk om \"%s\" uit te voeren: %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Niet mogelijk om commando naar printerstuurprogramma te versturen!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Niet mogelijk om Windows-printerstuurprogramma in te stellen (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Niet mogelijk om verouderd USB-stuurprogramma te gebruiken!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Onbekende printerfout (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Niet-ondersteunde tekenset \"%s\"!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Niet-ondersteunde compressie \"%s\"!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Niet-ondersteund compressie-attribuut %s!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Niet-ondersteunde indeling \"%s\"!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Niet-ondersteunde indeling '%s'!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Niet-ondersteunde indeling '%s/%s'!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Gebruik:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d bestemming\n"
-#~ " lpadmin [-h server] -x bestemming\n"
-#~ " lpadmin [-h server] -p printer [-c voeg klasse toe] [-i interface] [-"
-#~ "m model]\n"
-#~ " [-r verwijder klasse] [-v apparaat] [-D "
-#~ "omschrijving]\n"
-#~ " [-P ppd-bestand] [-o naam=waarde]\n"
-#~ " [-u sta toe:gebruiker,gebruiker] [-u weiger:"
-#~ "gebruiker,gebruiker]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Gebruik: %s job user title copies options [bestandsnaam]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Gebruik: %s job-id user title copies options [bestand]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Gebruik: %s job-id user title copies options file\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Gebruik: convert [ opties ]\n"
-#~ "\n"
-#~ "Opties:\n"
-#~ "\n"
-#~ " -f bestandsnaam Stel te converteren bestand in (anders stdin)\n"
-#~ " -o bestandsnaam Stel te genereren bestand in (anders stdout)\n"
-#~ " -i mime/type Stel MIME-type voor invoer in (anders auto-typed)\n"
-#~ " -j mime/type Stel MIME-type voor uitvoer in (anders application/"
-#~ "pdf)\n"
-#~ " -P bestandsnaam.ppd Stel PPD-bestand in\n"
-#~ " -a 'naam=waarde ...' Stel optie(s) in\n"
-#~ " -U gebruikersnaam Stel gebruikersnaam voor taak in\n"
-#~ " -J titel Stel titel in\n"
-#~ " -c aantal Stel aantal exemplaren in\n"
-#~ " -u Verwijder het PPD-bestand na conversie\n"
-#~ " -D Verwijder het invoerbestand na conversie\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Gebruik: cupsaddsmb [opties] printer1 ... printerN\n"
-#~ " cupsaddsmb [opties] -a\n"
-#~ "\n"
-#~ "Opties:\n"
-#~ " -E Gebruik encryptie voor verbinding met server\n"
-#~ " -H samba-server Gebruik genoemde SAMBA-server\n"
-#~ " -U samba-gebruiker Controleer toegang via genoemde SAMBA-gebruiker\n"
-#~ " -a Exporteer alle printers\n"
-#~ " -h cups-server Gebruik genoemde CUPS-server\n"
-#~ " -v Gebruik verbose-modus (toon commando&aops;s)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Gebruik: cupsctl [opties] [param=waarde ... paramN=waardeN]\n"
-#~ "\n"
-#~ "Opties:\n"
-#~ "\n"
-#~ " -E Schakel encryptie in\n"
-#~ " -U gebruikersnaam Geef gebruikersnaam op\n"
-#~ " -h server[:poort] Geef serveradres op\n"
-#~ "\n"
-#~ " --[no-]debug-logging Schakel debug-logging in/uit\n"
-#~ " --[no-]remote-admin Schakel beheer op afstand in/uit\n"
-#~ " --[no-]remote-any Maak toegang via het internet mogelijk/"
-#~ "onmogelijk\n"
-#~ " --[no-]remote-printers Toon/verberg niet-lokale printers\n"
-#~ " --[no-]share-printers Schakel gemeenschappelijk printergebruik in/"
-#~ "uit\n"
-#~ " --[no-]user-cancel-any Maak annuleren van taken door gebruikers "
-#~ "mogelijk/onmogelijk\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Gebruik: cupsd [-c config-bestand] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Laad alternatief configuratiebestand\n"
-#~ "-f Voer uit op voorgrond\n"
-#~ "-F Voer uit op voorgrond, losgekoppeld\n"
-#~ "-h Toon dit gebruiksbericht\n"
-#~ "-l Voer cupsd uit vanaf launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Gebruik: cupsfilter -m mime/type [ opties ] bestandsnaam\n"
-#~ "\n"
-#~ "Opties:\n"
-#~ "\n"
-#~ " -c cupsd.conf Stel in welk cupsd.conf-bestand moet worden gebruikt\n"
-#~ " -j taak-ID[,N] Filter bestand N uit opgegeven taak (standaard is "
-#~ "bestand 1)\n"
-#~ " -n aantal Stel aantal exemplaren in\n"
-#~ " -o naam=waarde Stel optie(s) in\n"
-#~ " -p bestandsnaam.ppd Stel PPD-bestand in\n"
-#~ " -t titel Stel titel in\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Gebruik: cupstestdsc [opties] bestandsnaam.ps [... bestandsnaam.ps]\n"
-#~ " cupstestdsc [opties] -\n"
-#~ "\n"
-#~ "Opties:\n"
-#~ "\n"
-#~ " -h Toon programmagebruik\n"
-#~ "\n"
-#~ " Opmerking: dit programma valideert alleen het DSC-commentaar, niet de "
-#~ "PostScript-code.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Gebruik: cupstestppd [opties] bestandsnaam1.ppd[.gz] [... bestandsnaamN."
-#~ "ppd[.gz]]\n"
-#~ " program | cupstestppd [opties] -\n"
-#~ "\n"
-#~ "Opties:\n"
-#~ "\n"
-#~ " -R root-directory Stel alternatieve root in\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Toon waarschuwingen in plaats van fouten\n"
-#~ " -q Voer uit zonder meldingen\n"
-#~ " -r Gebruik &aops;relaxed&aops; open modus\n"
-#~ " -v Gebruik beperkte verbose-modus\n"
-#~ " -vv Gebruik uitgebreide verbose-modus\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Gebruik: lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Gebruik: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o optie[=waarde] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Gebruik: lppasswd [-g groepsnaam]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Gebruik: lppasswd [-g groepsnaam] [gebruikersnaam]\n"
-#~ " lppasswd [-g groepsnaam] -a [gebruikersnaam]\n"
-#~ " lppasswd [-g groepsnaam] -x [gebruikersnaam]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Gebruik: lpq [-P bestemming] [-U gebruikersnaam] [-h hostnaam[:poort]] [-"
-#~ "l] [+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Gebruik: ppdc [opties] bestandsnaam.drv [ ... bestandsnaamN.drv ]\n"
-#~ "Opties:\n"
-#~ " -D naam=waarde Stel benoemde variabele in op waarde.\n"
-#~ " -I include-dir Voeg include-directory toe aan zoekpad.\n"
-#~ " -c catalogus.po Laad de opgegeven berichtencatalogus.\n"
-#~ " -d uitvoer-dir Geef de uitvoerdirectory op.\n"
-#~ " -l taal[,taal,...] Geef de uitvoertaal/-talen (taalversie) op.\n"
-#~ " -m Gebruik de ModelName-waarde als bestandsnaam.\n"
-#~ " -t Test PPD&aops;s in plaats van ze te genereren.\n"
-#~ " -v Gebruik verbose-modus (meer v's voor uitgebreidere "
-#~ "modus).\n"
-#~ " -z Comprimeer PPD-bestanden met GNU-zip.\n"
-#~ " --cr Sluit regels af met CR (Mac OS 9).\n"
-#~ " --crlf Sluit regels af met CR + LF (Windows).\n"
-#~ " --lf Sluit regels af met LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Gebruik: ppdhtml [opties] bestandsnaam.drv >bestandsnaam.html\n"
-#~ " -D naam=waarde Stel benoemde variabele in op waarde.\n"
-#~ "Opties:\n"
-#~ " -I include-dir Voeg include-directory toe aan zoekpad.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Gebruik: ppdi [opties] bestandsnaam.ppd [ ... bestandsnaamN.ppd ]\n"
-#~ "Opties:\n"
-#~ " -I include-dir\n"
-#~ " -o bestandsnaam.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Gebruik: ppdmerge [opties] bestandsnaam.ppd [ ... bestandsnaamN.ppd ]\n"
-#~ "Opties:\n"
-#~ " -o bestandsnaam.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Gebruik: ppdpo [opties] -o bestandsnaam.po bestandsnaam.drv [ ... "
-#~ "bestandsnaamN.drv ]\n"
-#~ "Opties:\n"
-#~ " -D naam=waarde Stel benoemde variabele in op waarde.\n"
-#~ " -I include-dir Voeg include-directory toe aan zoekpad.\n"
-#~ " -v Gebruik verbose-modus (meer v's voor uitgebreidere "
-#~ "modus).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Gebruik: snmp [host- of ip-adres]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: Alleen de eerste %d gevonden printers worden toegevoegd"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: Verwachtte Boolean voor optie &aops;waiteof&aops; \"%s\"\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: Kon zijkanaalverzoek niet lezen!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: Optie \"%s\" kan niet worden ingevoegd met behulp van "
-#~ "IncludeFeature!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: Printer reageert niet\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: Printer heeft onverwacht einde-bestandteken verstuurd\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Niet-lokale host heeft niet binnen %d seconden gereageerd met "
-#~ "commandostatusbyte!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Niet-lokale host heeft niet binnen %d seconden gereageerd met "
-#~ "besturingsstatusbyte!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Niet-lokale host heeft niet binnen %d seconden gereageerd met "
-#~ "gegevensstatusbyte!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr ""
-#~ "WARNING: SCSI-commando niet tijdig verwerkt (%d); nieuwe poging...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Dit document beantwoordt niet aan de Adobe Document Structuring "
-#~ "Conventions en wordt mogelijk niet goed afgedrukt!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: Niet mogelijk om \"%s:%s\" te openen: %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: Niet mogelijk om PAP-statusverzoek te versturen"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: Onverwacht PAP-pakket van type %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: Onbekend PAP-pakket van type %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: Onbekende keuze \"%s\" voor optie \"%s\"!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: Onbekende optie \"%s\"!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: Niet-ondersteunde baudsnelheid %s!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: Verwachtte getal voor statusoptie \"%s\"\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: Herstelbare fout: netwerkhost &aops;%s&aops; is bezig; nieuwe "
-#~ "poging over %d seconden...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr ""
-#~ "Let op: geen Windows 2000-printerstuurprogramma&aops;s geïnstalleerd!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4-envelop"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "convert: Gebruik de optie -f om het bestand op te geven dat u wilt "
-#~ "converteren.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: Geen PPD-bestand voor printer \"%s\" - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr ""
-#~ "cupsctl: Niet mogelijk om verbinding met server tot stand te brengen: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: Onbekende optie \"%s\"!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: Onbekende optie \"-%c\"!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: Verwachtte config-bestandsnaam na optie \"-c\"!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: Niet mogelijk om huidige directory op te vragen!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: Onbekend argument \"%s\" - bewerking wordt afgebroken!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: Onbekende optie \"%c\" - bewerking wordt afgebroken!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: Geen ondersteuning voor launchd(8) opgenomen, bewerking wordt "
-#~ "uitgevoerd in normale modus.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: Ongeldig documentnummer %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: Ongeldige taak-ID %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: U kunt slechts één bestandsnaam opgeven!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: Niet mogelijk om tijdelijk bestand aan te maken: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: Niet mogelijk om taakbestand op te vragen - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr ""
-#~ "cupstestppd: De optie -q kan niet worden gebruikt in combinatie met de "
-#~ "optie -v.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr ""
-#~ "cupstestppd: De optie -v kan niet worden gebruikt in combinatie met de "
-#~ "optie -q.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "apparaat voor %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "apparaat voor %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\thulpinformatie voor commando&aops;s opvragen\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "Job-printer-uri-attribuut ontbreekt!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Klassenaam mag alleen afdrukbare tekens bevatten!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: Verwachtte PPD na optie &aops;-P&aops;!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: Verwachtte allow/deny:userlist na optie &aops;-u&aops;!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: Verwachtte klasse na optie &aops;-r&aops;!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: Verwachtte klassenaam na optie &aops;-c&aops;!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: Verwachtte omschrijving na optie &aops;-D&aops;!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: Verwachtte apparaat-URI na optie &aops;-v&aops;!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: Verwachtte bestandstype(n) na optie &aops;-I&aops;!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: Verwachtte hostnaam na optie &aops;-h&aops;!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: Verwachtte interface na optie &aops;-i&aops;!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: Verwachtte locatie na optie &aops;-L&aops;!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: Verwachtte model na optie &aops;-m&aops;!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: Verwachtte naam=waarde na optie &aops;-o&aops;!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: Verwachtte printer na optie &aops;-p&aops;!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: Verwachtte printernaam na optie &aops;-d&aops;!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: Verwachtte printer of klasse na optie &aops;-x&aops;!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: Geen lidnamen ontdekt!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: Printer %s is al lid van klasse %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: Printer %s is geen lid van klasse %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Printernaam mag alleen afdrukbare tekens bevatten!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Niet mogelijk om printer aan klasse toe te voegen:\n"
-#~ " U moet eerst een printernaam opgeven!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr ""
-#~ "lpadmin: Niet mogelijk om verbinding tot stand te brengen met server: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: Niet mogelijk om tijdelijk bestand aan te maken - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: Niet mogelijk om tijdelijk bestand aan te maken: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: Niet mogelijk om PPD-bestand \"%s\" te openen - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: Niet mogelijk om bestand \"%s\" te openen: %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Niet mogelijk om printer uit klasse te verwijderen:\n"
-#~ " U moet eerst een printernaam opgeven!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Niet mogelijk om het PPD-bestand in te stellen:\n"
-#~ " U moet eerst een printernaam opgeven!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Niet mogelijk om de apparaat-URI in te stellen:\n"
-#~ " U moet eerst een printernaam opgeven!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Niet mogelijk om het interfacescript of het PPD-bestand in te "
-#~ "stellen:\n"
-#~ " U moet eerst een printernaam opgeven!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Niet mogelijk om het interfacescript in te stellen:\n"
-#~ " U moet eerst een printernaam opgeven!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Niet mogelijk om de printerbeschrijving in te stellen:\n"
-#~ " U moet eerst een printernaam opgeven!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Niet mogelijk om de printerlocatie in te stellen:\n"
-#~ " U moet eerst een printernaam opgeven!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Niet mogelijk om de printeropties in te stellen:\n"
-#~ " U moet eerst een printernaam opgeven!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: Onbekende optie voor toestaan/weigeren \"%s\"!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: Onbekend argument &aops;%s&aops;!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: Onbekende optie &aops;%c&aops;!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: Waarschuwing - inhoudstypelijst genegeerd!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr ""
-#~ "lpinfo: Verwachtte tekenreeks met 1284-apparaat-ID na --device-id!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: Verwachtte taal na --language!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: Verwachtte merk en model na --make-and-model!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: Verwachtte producttekenreeks na --product!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: Verwachtte schemalijst na --exclude-schemes!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: Verwachtte schemalijst na --include-schemes!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: Verwachtte time-out na --timeout!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: Onbekend argument &aops;%s&aops;!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: Onbekende optie &aops;%c&aops;!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: Onbekende optie &aops;%s&aops;!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr ""
-#~ "lpmove: Niet mogelijk om verbinding met server tot stand te brengen: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: Onbekend argument &aops;%s&aops;!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: Onbekende optie &aops;%c&aops;!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: Geen printers!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: Niet mogelijk om printer of instance toe te voegen: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: Niet mogelijk om PPD-bestand voor %s op te vragen: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: Niet mogelijk om PPD-bestand voor %s te openen!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: Onbekende printer of klasse!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: Alleen root kan wachtwoorden toevoegen of verwijderen!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: Wachtwoordbestand is in gebruik!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: Wachtwoordbestand niet bijgewerkt!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: Wachtwoord komt helaas niet overeen!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: Dit wachtwoord is helaas niet toegestaan.\n"
-#~ "Uw wachtwoord moet uit minimaal 6 tekens bestaan, waarvan minimaal één "
-#~ "letter en één cijfer, en mag niet uw gebruikersnaam bevatten.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: Wachtwoorden komen helaas niet overeen!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: Niet mogelijk om wachtwoordreeks te kopiëren: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: Niet mogelijk om wachtwoordbestand te openen: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: Niet mogelijk om wachtwoordbestand weg te schrijven: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd: Kon geen reservekopie maken van oude wachtwoordbestand: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: Kon wachtwoordbestand geen andere naam geven: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: Gebruiker \"%s\" en groep \"%s\" bestaan niet.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: fout - %s niet-bestaande bestemming voor variabelenamen van "
-#~ "omgeving \"%s\"!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "leden van klasse %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "geen onderdelen\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "geen bestemming voor systeemstandaard\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events niet gespecificeerd!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri URI \"%s\" wordt al gebruikt!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri URI \"%s\" gebruikt onbekend schema!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d niet goed!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: Include-directory \"%s\" wordt toegevoegd...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: Interfacetekst van %s wordt toegevoegd/bijgewerkt...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Ongeldige Booleaanse waarde (%s) in regel %d van %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ongeldige resolutienaam \"%s\" in regel %d van %s!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: Ongeldig statussleutelwoord %s in regel %d van %s!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: Ongeldige variabelevervanging ($%c) in regel %d van %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: Keuze gevonden in regel %d van %s zonder optie!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: Dubbele #po voor taalversie %s in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte een filterdefinitie in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte een programmanaam in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: Verwachtte Booleaanse waarde in regel %d van %s.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte tekenset na Font in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: Verwachtte keuzecode in regel %d van %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: Verwachtte keuzenaam/-tekst in regel %d van %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Verwachtte kleurvolgorde voor ColorModel in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte kleurruimte voor ColorModel in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte compressie voor ColorModel in regel %d van %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Verwachtte beperkingenreeks voor UIConstraints in regel %d van %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Verwachtte sleutelwoord voor stuurprogrammatype na DriverType in "
-#~ "regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte duplextype na Duplex in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte codering na Font in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte bestandsnaam na #po %s in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte groepsnaam/-tekst in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte include-bestandsnaam in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte geheel getal in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte taalversie na #po in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte naam na %s in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte naam na FileName in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte naam na Font in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte naam na Manufacturer in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte naam na MediaSize in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte naam na ModelName in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte naam na PCFileName in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte naam/tekst na %s in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte naam/tekst na Installable in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte naam/tekst na Resolution in regel %d van %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Verwachtte naam/tekst-combinatie voor ColorModel in regel %d van %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte optienaam/-tekst in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte optiesectie in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte optietype in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte override-veld na Resolution in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte reëel getal in regel %d van %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Verwachtte resolutie/materiaaltype na ColorProfile in regel %d van %"
-#~ "s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Verwachtte resolutie/materiaaltype na SimpleColorProfile in regel %"
-#~ "d van %s!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte selector na %s in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte status na Font in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte tekenreeks na Copyright in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte tekenreeks na Version in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte twee optienamen in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte waarde na %s in regel %d van %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Verwachtte versie na Font in regel %d van %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: Ongeldige #include/#po-bestandsnaam \"%s\"!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ongeldige kosten voor filter in regel %d van %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ongeldig leeg MIME-type voor filter in regel %d van %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Ongeldige lege programmanaam voor filter in regel %d van %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ongeldige optiesectie \"%s\" in regel %d van %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ongeldig optietype \"%s\" in regel %d van %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: Bestand met stuurprogrammagegevens \"%s\" wordt geladen...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: Berichten voor taalversie \"%s\" worden geladen...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: Berichten worden geladen uit \"%s\"...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: #endif ontbreekt aan einde van \"%s\"!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: #if ontbreekt in regel %d van %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: Geen berichtencatalogus opgegeven voor taalversie %s!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Optie %s opnieuw gedefinieerd met een ander type in regel %d van %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc: Optiebeperking moet *name in regel %d van %s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: Te veel geneste #if's in regel %d van %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: Niet mogelijk om PPD-bestand \"%s\" aan te maken - %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: Niet mogelijk om uitvoerdirectory %s aan te maken: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: Niet mogelijk om uitvoerpipes aan te maken: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: Niet mogelijk om cupstestppd uit te voeren: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: #po-bestand %s niet gevonden in regel %d van %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: include-bestand \"%s\" niet gevonden in regel %d van %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: geen lokalisatie gevonden voor \"%s\" - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: Niet mogelijk om lokalisatiebestand \"%s\" te laden - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Niet-gedefinieerde variabele (%s) in regel %d van %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: Onbekend type stuurprogramma %s in regel %d van %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Onbekend duplextype \"%s\" in regel %d van %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Onbekende materiaalgrootte \"%s\" in regel %d van %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: Onbekend token \"%s\" in regel %d van %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Onbekende afsluitende tekens in reëel getal \"%s\" in regel %d van %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Niet-afgesloten tekenreeks die begint met %c in regel %d van %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: %s wordt weggeschreven...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: PPD-bestanden worden naar directory \"%s\" geschreven...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: Ongeldige LanguageVersion \"%s\" in %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: PPD-bestand %s wordt genegeerd...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr ""
-#~ "ppdmerge: Niet mogelijk om reservekopie van %s te bewaren als %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "printer %s uitgeschakeld sinds %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "printer %s is niet in gebruik. ingeschakeld sinds %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "printer %s is bezig met afdrukken %s-%d. ingeschakeld sinds %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "printer %s/%s uitgeschakeld sinds %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "printer %s/%s is niet in gebruik. ingeschakeld sinds %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr ""
-#~ "printer %s/%s is bezig met afdrukken %s-%d. ingeschakeld sinds %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "verzoek-ID is %s-%d (%d bestand(en))\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "taakplanner is niet actief\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "taakplanner is actief\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\ttoon status van daemon en wachtrij\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "bestemming voor systeemstandaard: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "bestemming voor systeemstandaard: %s/%s\n"
diff --git a/locale/cups_no.po b/locale/cups_no.po
deleted file mode 100644
index 2fe92139..00000000
--- a/locale/cups_no.po
+++ /dev/null
@@ -1,8659 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f millimeter"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f til %.0f x %.0f millimeter"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f tommer"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f til %.2f x %.2f tommer"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s kan ikke endres."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 tomme/sek"
-
-msgid "1.25x0.25\""
-msgstr "1,25 x 0,25\""
-
-msgid "1.25x2.25\""
-msgstr "1,25 x 2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 tommer/sek"
-
-msgid "1.50x0.25\""
-msgstr "1,50 x 0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50 x 0,50\""
-
-msgid "1.50x1.00\""
-msgstr "1,50 x 1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50 x 2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 tommer/sek"
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/sek"
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 tommer/sek"
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 tommer/sek"
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/sek"
-
-msgid "120x60dpi"
-msgstr "120 x 60 dpi"
-
-msgid "120x72dpi"
-msgstr "120 x 72 dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136 dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/sek"
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/sek"
-
-msgid "150dpi"
-msgstr "150 dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180 dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 tommer/sek"
-
-msgid "2-Sided Printing"
-msgstr "Tosidig utskrift"
-
-msgid "2.00x0.37\""
-msgstr "2,00 x 0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00 x 0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00 x 1,00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00 x 1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00 x 2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00 x 3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00 x 4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00 x 5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25 x 0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25 x 1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25 x 4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25 x 5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38 x 5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 tommer/sek"
-
-msgid "2.50x1.00\""
-msgstr "2,50 x 1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50 x 2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75 x 1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/sek"
-
-msgid "200 mm/sec."
-msgstr "200 mm/sek"
-
-msgid "203dpi"
-msgstr "203 dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24-pinners serie"
-
-msgid "240x72dpi"
-msgstr "240 x 72 dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/sek"
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 tommer/sek"
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00 x 1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00 x 1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00 x 2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00 x 3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00 x 5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25 x 2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25 x 5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25 x 5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25 x 5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25 x 7,83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "3,5-tommers disk"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3,5-tommers disk – 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50 x 1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/sek"
-
-msgid "300 mm/sec."
-msgstr "300 mm/sek"
-
-msgid "300dpi"
-msgstr "300 dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360 dpi"
-
-msgid "360x180dpi"
-msgstr "360 x 180 dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 tommer/sek"
-
-msgid "4.00x1.00\""
-msgstr "4,00 x 1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00 x 13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00 x 2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00 x 2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00 x 3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00 x 4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00 x 5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00 x 6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00 x 6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/sek"
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 tommer/sek"
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 tommer/sek"
-
-msgid "6.00x1.00\""
-msgstr "6,00 x 1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00 x 2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00 x 3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00 x 4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00 x 5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00 x 6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00 x 6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/sek"
-
-msgid "600dpi"
-msgstr "600 dpi"
-
-msgid "60dpi"
-msgstr "60 dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 tommer/sek"
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720 dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 tommer/sek"
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00 x 1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00 x 2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00 x 3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00 x 4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00 x 5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00 x 6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00 x 6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/sek"
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 tommer/sek"
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "9-pinners serie"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Motta jobber"
-
-msgid "Accepted"
-msgstr "Mottatt"
-
-msgid "Add Class"
-msgstr "Legg til klasse"
-
-msgid "Add Printer"
-msgstr "Legg til skriver"
-
-msgid "Add RSS Subscription"
-msgstr "Legg til RSS-abonnement"
-
-msgid "Address"
-msgstr "Adresse"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Adresse – 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Administrering"
-
-msgid "Always"
-msgstr "Alltid"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Applikator"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Ugyldig NULL-målpeker"
-
-msgid "Bad OpenGroup"
-msgstr "Ugyldig OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "Ugyldig ad OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "Ugyldig OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Ugyldig forespørsel"
-
-msgid "Bad SNMP version number"
-msgstr "Ugyldig SNMP-versjonsnummer"
-
-msgid "Bad UIConstraints"
-msgstr "Ugyldig UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Ugyldig kopiverdi %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Ugyldig, tilpasset parameter"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Ugyldig number-up-verdi %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Ugyldig page-ranges-verdier %d–%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Bannere"
-
-msgid "Billing Information: "
-msgstr "Faktureringsinformasjon: "
-
-msgid "Bond Paper"
-msgstr "Tykt papir"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "CPCL-etikettskriver"
-
-msgid "Cancel RSS Subscription"
-msgstr "Avbryt RSS-abonnement"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Endre innstillinger"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Klasser"
-
-msgid "Clean Print Heads"
-msgstr "Rengjør skrivehoder"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Farge"
-
-msgid "Color Mode"
-msgstr "Fargemodus"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Gruppenavn bruker uendelig lengde"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Fortsett"
-
-msgid "Continuous"
-msgstr "Kontinuerlig"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Opprettet"
-
-msgid "Created On: "
-msgstr "Opprettet på: "
-
-msgid "Custom"
-msgstr "Tilpasset"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Klipp"
-
-msgid "Cutter"
-msgstr "Kutter"
-
-msgid "Dark"
-msgstr "Mørk"
-
-msgid "Darkness"
-msgstr "Mørkhet"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Slett klasse"
-
-msgid "Delete Printer"
-msgstr "Slett skriver"
-
-msgid "Description: "
-msgstr "Beskrivelse: "
-
-msgid "DeskJet Series"
-msgstr "DeskJet-serie"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "Målet «%s» mottar ikke jobber."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Direkte varme-medium"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Deaktivert"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Drivernavn: "
-
-msgid "Driver Version: "
-msgstr "Driverversjon: "
-
-msgid "Duplexer"
-msgstr "Duplekser"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1-etikettskriver"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2-etikettskriver"
-
-msgid "Edit Configuration File"
-msgstr "Rediger konfigurasjonsfil"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Sluttbanner"
-
-msgid "English"
-msgstr "Norwegian"
-
-msgid "Enter old password:"
-msgstr "Oppgi det gamle passordet:"
-
-msgid "Enter password again:"
-msgstr "Oppgi passordet igjen:"
-
-msgid "Enter password:"
-msgstr "Oppgi passordet:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Oppgi brukernavnet og passordet ditt eller rotbrukernavnet og -passordet for "
-"å få tilgang til denne siden. Hvis du bruker Kerberos-godkjenning, forsikrer "
-"du deg om at du har en gyldig Kerberos-billett."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Konvoluttmating"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Feilkriterier"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Hver 10. etikett"
-
-msgid "Every 2 Labels"
-msgstr "Hver 2. etikett"
-
-msgid "Every 3 Labels"
-msgstr "Hver 3. etikett"
-
-msgid "Every 4 Labels"
-msgstr "Hver 4. etikett"
-
-msgid "Every 5 Labels"
-msgstr "Hver 5. etikett"
-
-msgid "Every 6 Labels"
-msgstr "Hver 6. etikett"
-
-msgid "Every 7 Labels"
-msgstr "Hver 7. etikett"
-
-msgid "Every 8 Labels"
-msgstr "Hver 8. etikett"
-
-msgid "Every 9 Labels"
-msgstr "Hver 9. etikett"
-
-msgid "Every Label"
-msgstr "Hver etikett"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Forventning mislyktes"
-
-msgid "Export Printers to Samba"
-msgstr "Eksporter skrivere til Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Filmappe"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Filmappe – 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Folio"
-
-msgid "Forbidden"
-msgstr "Forbudt"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Generelt"
-
-msgid "Generic"
-msgstr "Generisk"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU bruker uendelig lengde"
-
-msgid "Glossy Paper"
-msgstr "Glanset papir"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Gråskala"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Hengende mappe"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Hengende mappe – 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Ulovlig kontrolltegn"
-
-msgid "Illegal main keyword string"
-msgstr "Ulovlig streng for hovednøkkelord"
-
-msgid "Illegal option keyword string"
-msgstr "Ulovlig streng for valgnøkkelord"
-
-msgid "Illegal translation string"
-msgstr "Ulovlig oversettelsesstreng"
-
-msgid "Illegal whitespace character"
-msgstr "Ulovlig mellomromstegn"
-
-msgid "Installable Options"
-msgstr "Installerbare valg"
-
-msgid "Installed"
-msgstr "Installert"
-
-msgid "IntelliBar Label Printer"
-msgstr "IntelliBar-etikettskriver"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "Intern feil"
-
-msgid "Internet Postage 2-Part"
-msgstr "Internet Postage 2 deler"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Internet Postage 2 deler – 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Internet Postage 3 deler"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Internet Postage 3 deler – 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Internett-utskriftsprotokoll"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "Jobb nr. %d er allerede kansellert – kan ikke avbryte."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "Jobb nr. %d er allerede avbrutt – kan ikke avbryte."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "Jobb nr. %d er allerede fullført – kan ikke avbryte."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Jobb fullført"
-
-msgid "Job Created"
-msgstr "Jobb opprettet"
-
-msgid "Job ID: "
-msgstr "Jobb-ID: "
-
-msgid "Job Options Changed"
-msgstr "Jobbvalg endret"
-
-msgid "Job Stopped"
-msgstr "Jobb stoppet"
-
-msgid "Job UUID: "
-msgstr "Jobb-UUID: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "Jobben er fullført og kan ikke endres."
-
-msgid "Job operation failed:"
-msgstr "Jobbhandling mislyktes:"
-
-msgid "Job state cannot be changed."
-msgstr "Jobbstatus kan ikke endres."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Jobber"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR-vert eller -skriver"
-
-msgid "Label Printer"
-msgstr "Etikettskriver"
-
-msgid "Label Top"
-msgstr "Etikettopp"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Stor adresse"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Stor adresse – 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet-serie PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Lys"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Linjen er lengre enn det som er tillatt (255 tegn)"
-
-msgid "List Available Printers"
-msgstr "Vis tilgjengelige skrivere"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Plassering: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Langside (stående)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Merke og modell: "
-
-msgid "Manual Feed"
-msgstr "Manuell mating"
-
-msgid "Media Dimensions: "
-msgstr "Mediestørrelse: "
-
-msgid "Media Limits: "
-msgstr "Mediebegrensninger: "
-
-msgid "Media Name: "
-msgstr "Medienavn: "
-
-msgid "Media Size"
-msgstr "Papirstørrelse"
-
-msgid "Media Source"
-msgstr "Papirkilde"
-
-msgid "Media Tracking"
-msgstr "Mediesporing"
-
-msgid "Media Type"
-msgstr "Papirtype"
-
-msgid "Medium"
-msgstr "Medium"
-
-msgid "Memory allocation error"
-msgstr "Feil med hukommelsestildeling"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "PPD-Adobe-4.x-header mangler"
-
-msgid "Missing asterisk in column 1"
-msgstr "Stjerne mangler i kolonne 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Verdistreng mangler"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Endre klasse"
-
-msgid "Modify Printer"
-msgstr "Endre skriver"
-
-msgid "Move All Jobs"
-msgstr "Flytt alle jobber"
-
-msgid "Move Job"
-msgstr "Flytt jobb"
-
-msgid "Moved Permanently"
-msgstr "Flyttet permanent"
-
-msgid "NULL PPD file pointer"
-msgstr "NULL PPD-filpeker"
-
-msgid "Name OID uses indefinite length"
-msgstr "Navn-OID bruker uendelig lengde"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Aldri"
-
-msgid "New Stylus Color Series"
-msgstr "Ny Stylus Color-serie"
-
-msgid "New Stylus Photo Series"
-msgstr "Ny Stylus Photo-serie"
-
-msgid "No"
-msgstr "Nei"
-
-msgid "No Content"
-msgstr "Uten innhold"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Ingen VarBind SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Ingen aktive tilkoblinger"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Ingen gruppenavn"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Ingen mål lagt til."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Ingen error-index"
-
-msgid "No error-status"
-msgstr "Ingen error-status"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Uten navn-OID"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Ingen request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Fant ingen abonnementer."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Ingen variable-bindings SEQUENCE"
-
-msgid "No version number"
-msgstr "Uten versjonsnummer"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Ikke fortløpende (merkeregistrering)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Ikke fortløpende (webregistrering)"
-
-msgid "Normal"
-msgstr "Vanlig"
-
-msgid "Not Found"
-msgstr "Ikke funnet"
-
-msgid "Not Implemented"
-msgstr "Ikke implementert"
-
-msgid "Not Installed"
-msgstr "Ikke installert"
-
-msgid "Not Modified"
-msgstr "Ikke modifisert"
-
-msgid "Not Supported"
-msgstr "Ikke støttet"
-
-msgid "Not allowed to print."
-msgstr "Utskrift ikke tillatt."
-
-msgid "Note"
-msgstr "Merk"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Av (énsidig)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Internett-basert hjelp"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "Ã…pning av %s mislyktes: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup uten CloseGroup først"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI uten CloseUI/JCLCloseUI først"
-
-msgid "Operation Policy"
-msgstr "Handlingskriterier"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Valg installert"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Valg: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Utdatamodus"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "PCL-laserskriver"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Pakken inneholder ikke en Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Pakken begynner ikke med SEQUENCE"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Passord for %s på %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "Passord for %s kreves for å få tilgang til %s via SAMBA: "
-
-msgid "Pause Class"
-msgstr "Sett klasse på pause"
-
-msgid "Pause Printer"
-msgstr "Sett skriver på pause"
-
-msgid "Peel-Off"
-msgstr "Fjern papir"
-
-msgid "Photo"
-msgstr "Foto"
-
-msgid "Photo Labels"
-msgstr "Fotoetiketter"
-
-msgid "Plain Paper"
-msgstr "Vanlig papir"
-
-msgid "Policies"
-msgstr "Kriterier"
-
-msgid "Port Monitor"
-msgstr "Portovervåking"
-
-msgid "PostScript Printer"
-msgstr "PostScript-skriver"
-
-msgid "Postcard"
-msgstr "Postkort"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Utskriftstetthet"
-
-msgid "Print Job:"
-msgstr "Utskriftsjobb:"
-
-msgid "Print Mode"
-msgstr "Utskriftsmodus"
-
-msgid "Print Rate"
-msgstr "Utskriftshastighet"
-
-msgid "Print Self-Test Page"
-msgstr "Skriv ut testside"
-
-msgid "Print Speed"
-msgstr "Utskriftshastighet"
-
-msgid "Print Test Page"
-msgstr "Skriv ut testside"
-
-msgid "Print and Cut"
-msgstr "Skriv ut og klipp"
-
-msgid "Print and Tear"
-msgstr "Skriv ut og riv"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Skrevet ut for: "
-
-msgid "Printed From: "
-msgstr "Skrevet ut fra: "
-
-msgid "Printed On: "
-msgstr "Skrevet ut på: "
-
-msgid "Printer Added"
-msgstr "Skriver lagt til"
-
-msgid "Printer Default"
-msgstr "Skriverstandard"
-
-msgid "Printer Deleted"
-msgstr "Skriver slettet"
-
-msgid "Printer Modified"
-msgstr "Skriver endret"
-
-msgid "Printer Name: "
-msgstr "Skrivernavn: "
-
-msgid "Printer Paused"
-msgstr "Skriver satt på pause"
-
-msgid "Printer Settings"
-msgstr "Skriverinnstillinger"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Skriver:"
-
-msgid "Printers"
-msgstr "Skrivere"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Tøm jobber"
-
-msgid "Quarto"
-msgstr "Quarto"
-
-msgid "Quota limit reached."
-msgstr "Begrensning nådd."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Avslå jobber"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Skriv ut på nytt etter feil"
-
-msgid "Request Entity Too Large"
-msgstr "Forespørselsobjektet er for stort"
-
-msgid "Resolution"
-msgstr "Oppløsning"
-
-msgid "Resume Class"
-msgstr "Fortsett med klasse"
-
-msgid "Resume Printer"
-msgstr "Fortsett med skriver"
-
-msgid "Return Address"
-msgstr "Avsenderadresse"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Avsenderadresse – 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Spol tilbake"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE bruker uendelig lengde"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Se andre"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Serieport nr. %d"
-
-msgid "Server Restarted"
-msgstr "Tjener startet på nytt"
-
-msgid "Server Security Auditing"
-msgstr "Sikkerhetsgjennomgang for tjener"
-
-msgid "Server Started"
-msgstr "Tjener startet"
-
-msgid "Server Stopped"
-msgstr "Tjener stoppet"
-
-msgid "Service Unavailable"
-msgstr "Tjeneste ikke tilgjengelig"
-
-msgid "Set Allowed Users"
-msgstr "Angi tillatte brukere"
-
-msgid "Set As Server Default"
-msgstr "Bruk som tjenerstandard"
-
-msgid "Set Class Options"
-msgstr "Angi klassevalg"
-
-msgid "Set Printer Options"
-msgstr "Angi skrivervalg"
-
-msgid "Set Publishing"
-msgstr "Angi publisering"
-
-msgid "Shipping Address"
-msgstr "Leveringsadresse"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Leveringsadresse – 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Kortside (liggende)"
-
-msgid "Special Paper"
-msgstr "Spesialpapir"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Standard"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Startbanner"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Melding"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color-serie"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo-serie"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Bytter protokoll"
-
-msgid "Tabloid"
-msgstr "Tabloid"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Riv"
-
-msgid "Tear-Off"
-msgstr "Riv av"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Riv av, juster plassering"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "Fant ikke PPD-filen «%s»."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "Kunne ikke åpne PPD-filen «%s»: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Klassenavnet kan kun inneholde opptil 127 tegn som kan skrives ut, og kan "
-"ikke inneholde mellomrom, skråstrek (/) eller firkanttegn (#)."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"Notify-lease-duration-attributtet kan ikke brukes med jobbabonnementer."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Skrivernavnet kan kun inneholde opptil 127 tegn som kan skrives ut, og kan "
-"ikke inneholde mellomrom, skråstrek (/) eller firkanttegn (#)."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "Printer-uri «%s» inneholder ugyldige tegn."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr "Printer-uri må ha formatet «ipp://VERTSNAVN/klasser/KLASSENAVN»."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr "Printer-uri må ha formatet «ipp://VERTSNAVN/skrivere/SKRIVERNAVN»."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"Abonnementsnavnet kan ikke inneholde mellomrom, skråstrek (/), spørsmålstegn "
-"(?) eller firkanttegn (#)."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "For mange abonnementer."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Varmeoverføringsmedium"
-
-msgid "Title: "
-msgstr "Tittel: "
-
-msgid "Too many active jobs."
-msgstr "For mange aktive jobber."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Gjennomsiktighet"
-
-msgid "Tray"
-msgstr "Skuff"
-
-msgid "Tray 1"
-msgstr "Skuff 1"
-
-msgid "Tray 2"
-msgstr "Skuff 2"
-
-msgid "Tray 3"
-msgstr "Skuff 3"
-
-msgid "Tray 4"
-msgstr "Skuff 4"
-
-msgid "URI Too Long"
-msgstr "URI for lang"
-
-msgid "US Ledger"
-msgstr "US Ledger"
-
-msgid "US Legal"
-msgstr "US Legal"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "US Letter"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "USB-serieport nr. %d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "FÃ¥r ikke tilgang til cupsd.conf-fil:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Kan ikke legge til RSS-abonnement:"
-
-msgid "Unable to add class:"
-msgstr "Kan ikke legge til klasse:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Kan ikke legge til skriver:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Kan ikke avslutte RSS-abonnement:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Kan ikke endre printer-is-shared-attributt:"
-
-msgid "Unable to change printer:"
-msgstr "Kan ikke endre skriver:"
-
-msgid "Unable to change server settings:"
-msgstr "Kan ikke endre tjenerinnstillinger:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Kan ikke koble til vert"
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Kan ikke opprette midlertidig fil:"
-
-msgid "Unable to delete class:"
-msgstr "Kan ikke slette klasse:"
-
-msgid "Unable to delete printer:"
-msgstr "Kan ikke slette skriver:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Kan ikke utføre vedlikeholdskommando:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Kan ikke hente klasseliste:"
-
-msgid "Unable to get class status:"
-msgstr "Kan ikke hente klassestatus:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Kan ikke hente liste over skriverdrivere:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Kan ikke hente skriverattributter:"
-
-msgid "Unable to get printer list:"
-msgstr "Kan ikke hente skriverliste:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Kan ikke hente skriverstatus:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Kan ikke endre klasse:"
-
-msgid "Unable to modify printer:"
-msgstr "Kan ikke endre skriver:"
-
-msgid "Unable to move job"
-msgstr "Kan ikke flytte jobb"
-
-msgid "Unable to move jobs"
-msgstr "Kan ikke flytte jobber"
-
-msgid "Unable to open PPD file"
-msgstr "Kan ikke åpne PPD-fil"
-
-msgid "Unable to open PPD file:"
-msgstr "Kan ikke åpne PPD-fil:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Kan ikke åpne cupsd.conf-fil:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Kan ikke skrive ut testside:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Kan ikke angi valg:"
-
-msgid "Unable to set server default:"
-msgstr "Kan ikke angi tjenerstandard:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Kan ikke laste opp cupsd.conf-fil:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Uautorisert"
-
-msgid "Units"
-msgstr "Enheter"
-
-msgid "Unknown"
-msgstr "Ukjent"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Ukjent printer-error-policy «%s»."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Ukjent printer-op-policy «%s»."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Verditypen støttes ikke"
-
-msgid "Upgrade Required"
-msgstr "Oppgradering kreves"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Verdi bruker uendelig lengde"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind bruker uendelig lengde"
-
-msgid "Version uses indefinite length"
-msgstr "Versjon bruker uendelig lengde"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Ja"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Du må få tilgang til denne siden ved hjelp av URLen <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "ZPL-etikettskriver"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "kansellert"
-
-msgid "canceled"
-msgstr "avbrutt"
-
-msgid "completed"
-msgstr "fullført"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "cups-deviced ble ikke utført."
-
-msgid "cups-driverd failed to execute."
-msgstr "cups-driverd ble ikke utført."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index bruker uendelig lengde"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status bruker uendelig lengde"
-
-msgid "held"
-msgstr "holdt"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "inaktiv"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "ventende"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "behandler"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id bruker uendelig lengde"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "status for %s mislyktes: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "stoppet"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "ukjent"
-
-msgid "untitled"
-msgstr "uten navn"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings bruker uendelig lengde"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(alle)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(ingen)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d oppføringer\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tEtter feil: fortsett\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tVarsling:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tKrever banner\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tTegnsettsamlinger:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tTilkobling: direkte\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tTilkobling: ekstern\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tStandard sidestørrelse:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tStandard avstand:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tStandard portinnstillinger:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tBeskrivelse: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tAktivert skjema:\n"
-#~ "\tInnholdstyper: alle\n"
-#~ "\tSkrivertyper: ukjent\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tTillatte skjemaer:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tGrensesnitt: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tGrensesnitt: %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tGrensesnitt: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tPlassering: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tVed feil: ingen varsling\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tBrukere tillatt:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tBrukere avslått:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tdaemon til stede\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tingen oppføringer\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tskriver er på enhet «%s», hastighet -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tutskrift er deaktivert\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tutskrift er aktivert\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\ti kø for %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tutskriftskø er deaktivert\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tutskriftskø er aktivert\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tukjent grunn\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " DETALJERTE RESULTATER FRA SAMSVARSTEST\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: Side 15, del 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: Side 15, del 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: Side 19, del 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: Side 20, del 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: Side 27, del 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: Side 42, del 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: Sider 16–17, del 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: Sider 42–45, del 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: Sider 45–46, del 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: Sider 48–49, del 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: Sider 52–54, del 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f byte\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN «%s %s» er i strid med «%s %s»\n"
-#~ " (constraint=«%s %s %s %s»)\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %s har ingen relaterte valg!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s har samme prefiks som %s\n"
-#~ " REF: Side 15, del 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN Standardinnstillinger stemmer ikke overens!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN Det er mulig at dupleksvalgnøkkelordet %s ikke fungerer "
-#~ "som forventet og skal ha navnet Duplex!\n"
-#~ " REF: Side 122, del 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr " WARN Filen inneholder CR-, LF- og CR LF-linjeskift!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN LanguageEncoding kreves av PPD 4.3-spesifikasjonen.\n"
-#~ " REF: Sider 56–57, del 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN Linjen %d inneholder kun mellomrom!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN Manufacturer kreves av PPD 4.3-spesifikasjonen.\n"
-#~ " REF: Sider 58–59, del 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN APDialogExtension-filen «%s» mangler\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN APPrinterIconPath-filen «%s» mangler\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN PPD-filer som ikke er i Windows-format, bør kun bruke "
-#~ "linjeskift med LF, ikke CR LF!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN Foreldet PPD-versjon %.1f!\n"
-#~ " REF: Side 42, del 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName er lengre enn 8.3, noe som er et brudd på PPD-"
-#~ "spesifikasjonen.\n"
-#~ " REF: Sider 61–62, del 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protokoller inneholder PJL, men JCL-attributter er ikke "
-#~ "angitt.\n"
-#~ " REF: Sider 78–79, del 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protokoller inneholder både PJL og BCP. Forventet TBCP.\n"
-#~ " REF: Sider 78–79, del 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN ShortNickName kreves av PPD 4.3-spesifikasjonen.\n"
-#~ " REF: Sider 64–65, del 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s finnes ikke!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Ugyldig %s-valg %s!\n"
-#~ " REF: Side 122, del 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Ugyldig UTF-8 «%s»-oversettelsesstreng for valget %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Ugyldig UTF-8 «%s»-oversettelsesstreng for valget %s, "
-#~ "innstillingen %s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Ugyldig cupsFilter-verdi «%s»!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s Ugyldig cupsICCProfile %s!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Ugyldig cupsPreFilter-verdi «%s»!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Ugyldig cupsUIConstraints %s: «%s»!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Ugyldig språk «%s»!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s Tom cupsUIConstraints %s!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s «%s»-oversettelsesstreng for valget %s mangler!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s «%s»-oversettelsesstreng for valget %s, innstillingen %s "
-#~ "mangler!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s Valget *%s %s i UIConstraints «*%s %s *%s %s» mangler!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Valget *%s %s i cupsUIConstraints %s mangler: «%s»!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s cupsFilter-filen «%s» mangler\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s cupsICCProfile-filen «%s» mangler!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s cupsPreFilter-filen «%s» mangler\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s cupsUIResolver %s mangler!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s Valget %s i UIConstraints «*%s %s *%s %s» mangler!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Valget %s i cupsUIConstraints %s mangler: «%s»!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s Filen inneholder ingen grunnoversettelse «%s»!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s OBLIGATORISK %s definerer ikke innstillingen Ingen!\n"
-#~ " REF: Side 122, del 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s cupsICCProfile %s-hashverdi er i konflikt med %s!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s forårsaker en sløyfe!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FEIL** Den eneste forskjellen mellom %s-valgnavnene %s og %s er "
-#~ "store og små bokstaver!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FEIL** %s må være 1284DeviceID!\n"
-#~ " REF: Side 72, del 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FEIL** UGYLDIG Default%s %s\n"
-#~ " REF: Side 40, del 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEIL** UGYLDIG DefaultImageableArea %s!\n"
-#~ " REF: Side 102, del 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEIL** UGYLDIG DefaultPaperDimension %s!\n"
-#~ " REF: Side 103, del 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FEIL** UGYLDIG JobPatchFile-attributt i fil\n"
-#~ " REF: Side 24, del 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FEIL** UGYLDIG Manufacturer (skal være «HP»)\n"
-#~ " REF: Side 211, tabell D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FEIL** UGYLDIG Manufacturer (skal være «Oki»)\n"
-#~ " REF: Side 211, tabell D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** UGYLDIG ModelName – «%c» er ikke tillatt i strengen.\n"
-#~ " REF: Sider 59–60, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** UGYLDIG PSVersion – er ikke «(string) int».\n"
-#~ " REF: Sider 62–64, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** UGYLDIG Product – er ikke «(string)».\n"
-#~ " REF: Side 62, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** UGYLDIG ShortNickName – mer enn 31 tegn.\n"
-#~ " REF: Sider 64–65, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FEIL** Ugyldig %s-valg %s!\n"
-#~ " REF: Side 84, del 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** Ugyldig FileVersion «%s»\n"
-#~ " REF: Side 56, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** Ugyldig FormatVersion «%s»\n"
-#~ " REF: Side 56, del 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr " **FEIL** Ugyldig LanguageEncoding %s – må være ISOLatin1!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **FEIL** Ugyldig LanguageVersion %s – må være English!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr " **FEIL** Kan ikke tolke standard valgkode: %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FEIL** Standard oversettelsesstreng for valget %s, innstillingen "
-#~ "%s inneholder 8-bitstegn!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FEIL** Standard oversettelsesstreng for valget %s inneholder 8-"
-#~ "bitstegn!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FEIL** Den eneste forskjellen mellom gruppenavnene %s og %s er "
-#~ "store og små bokstaver!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FEIL** Flere forekomster av %s-valgnavnet %s!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FEIL** Den eneste forskjellen mellom valgnavnene %s og %s er "
-#~ "store og små bokstaver!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK Default%s\n"
-#~ " REF: Side 40, del 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK DefaultImageableArea\n"
-#~ " REF: Side 102, del 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK DefaultPaperDimension\n"
-#~ " REF: Side 103, del 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK FileVersion\n"
-#~ " REF: Side 56, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK FormatVersion\n"
-#~ " REF: Side 56, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK ImageableArea for PageSize %s\n"
-#~ " REF: Side 41, del 5.\n"
-#~ " REF: Side 102, del 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK LanguageEncoding\n"
-#~ " REF: Sider 56–57, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK LanguageVersion\n"
-#~ " REF: Sider 57–58, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK Manufacturer\n"
-#~ " REF: Sider 58–59, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK ModelName\n"
-#~ " REF: Sider 59–60, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK NickName\n"
-#~ " REF: Side 60, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK PCFileName\n"
-#~ " REF: Sider 61–62, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK PSVersion\n"
-#~ " REF: Sider 62–64, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK PageRegion\n"
-#~ " REF: Side 100, del 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK PageSize\n"
-#~ " REF: Side 41, del 5.\n"
-#~ " REF: Side 99, del 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK PageSize\n"
-#~ " REF: Sider 99–100, del 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK PaperDimension for PageSize %s\n"
-#~ " REF: Side 41, del 5.\n"
-#~ " REF: Side 103, del 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK Product\n"
-#~ " REF: Side 62, del 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEIL** OBLIGATORISK ShortNickName\n"
-#~ " REF: Sider 64–65, del 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " FANT %d FEIL\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " Ugyldig %%%%BoundingBox: på linje %d!\n"
-#~ " REF: Side 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " Ugyldig %%%%Page: på linje %d!\n"
-#~ " REF: Side 53, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " Ugyldig %%%%Pages: på linje %d!\n"
-#~ " REF: Side 43, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " Linje %d inneholder mer enn 255 tegn (%d)!\n"
-#~ " REF: Side 25, Line Length\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " %!PS-Adobe-3.0 mangler på første linje!\n"
-#~ " REF: Side 17, 3.1 Conforming Documents\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " %%EndComments-kommentar mangler!\n"
-#~ " REF: Side 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%BoundingBox:-kommentar mangler eller er ugyldig!\n"
-#~ " REF: Side 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " %%Page-kommentarer mangler eller er ugyldig!\n"
-#~ " REF: Side 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " %%Pages-kommentar mangler eller er ugyldig!\n"
-#~ " REF: Side 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " FANT INGEN FEIL\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " Fant %d linjer som er lengre enn 255 tegn!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " For mange %%BeginDocument-kommentarer!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " For mange %%EndDocument-kommentarer!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Advarsel: filen inneholder binærdata!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Advarsel: ingen %%EndComments-kommentar i fil!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Advarsel: foreldet DSC-versjon %.1f i fil!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FEIL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FEIL\n"
-#~ " **FEIL** Kan ikke åpne PPD-fil – %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FEIL\n"
-#~ " **FEIL** Kan ikke åpne PPD-fil – %s på linje %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " PASS\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10-konvolutt"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11-konvolutt"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12-konvolutt"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14-konvolutt"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9-konvolutt"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f byte\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f byte\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s mottar forespørsler siden %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s er ikke implementert av CUPS-versjonen av lpc.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s er ikke klar\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s er klar\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s er klar og skriver ut\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s mottar ikke forespørsler siden %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s støttes ikke!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s mottar forespørsler siden %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s mottar ikke forespørsler siden %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [jobb %d lokal vert]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s mislyktes: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: Vet ikke hva som skal gjøres!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%s: Feil – %s-miljøvariabel oppgir målet «%s» som ikke eksisterer!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Feil – ugyldig jobb-ID!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr "%s: Feil – kan ikke skrive ut filer og endre jobber samtidig!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Feil – kan ikke skrive ut fra stdin hvis det er oppgitt filer eller "
-#~ "en jobb-ID!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Feil – forventet tegnsett etter «-S»-valg!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Feil – forventet innholdstype etter «-T»-valg!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: Feil – forventet eksemplarer etter «-n»-valg!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: Feil – forventet antall eksemplarer etter «-#»-valg!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Feil – forventet mål etter «-P»-valg!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Feil – forventet mål etter «-b»-valg!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Feil – forventet mål etter «-d»-valg!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Feil – forventet skjema etter «-f»-valg!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Feil – forventet holdnavn etter «-H»-valg!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Feil – forventet vertsnavn etter «-H»-valg!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Feil – forventet vertsnavn etter «-h»-valg!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: Feil – forventet modusliste etter «-y»-valg!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Feil – forventet navn etter «%c»-valg!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: Feil – forventet valgstreng etter «-o»-valg!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Feil – forventet sideliste etter «-P»-valg!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Feil – forventet prioritet etter «%c»-valg!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Feil – forventet begrunnelsestekst etter «-r»-valg!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Feil – forventet tittel etter «-t»-valg!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: Feil – forventet brukernavn etter «-U»-valg!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: Feil – forventet brukernavn etter «-u»-valg!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Feil – forventet verdi etter «%c»-valg!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Feil – trenger «completed», «not-completed» eller «all» etter «-W»-valg!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Feil – ingen standardmål tilgjengelig.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Feil – prioritet må være mellom 1 og 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Feil – planlegger svarer ikke!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Feil – for mange filer – «%s»\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Feil – får ikke tilgang til «%s» – %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: Feil – kan ikke legge i kø fra stdin – %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Feil – ukjent mål «%s»!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Feil – ukjent mål «%s/%s»!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Feil – ukjent valg «%c»!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Feil – ukjent valg «%s»!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: Forventet jobb-ID etter «-i»-valg!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Filteret «%s» er ikke tilgjengelig: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Ugyldig målnavn i liste «%s»!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: Ugyldig filterstreng «%s»\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr "%s: Trenger jobb-ID («-i jobid») før «-H restart»!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Mangler filter for å konvertere fra %s/%s til %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: Handling mislyktes: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: Støtte for kryptering er ikke kompilert inn!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Kan ikke koble til tjener\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: FÃ¥r ikke kontakt med tjener!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: Kan ikke bestemme MIME-typen til «%s»!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: Kan ikke åpne %s – %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: Kan ikke åpne %s – %s på linje %d.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: Kan ikke åpne %s: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: Kan ikke åpne PDF-fil: %s på linje %d\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: Kan ikke lese MIME-database fra «%s» eller «%s»!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: Ukjent mål «%s»!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: Ukjent MIME-type for mål %s/%s!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: Ukjent valg «%c»!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: Ukjent kilde-MIME-type for mål %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Advarsel «%c»-formatmodifikator støttes ikke – det er mulig at utdata "
-#~ "ikke er korrekt!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Advarsel – ignorerte tegnsettvalg!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Advarsel – ignorerte innholdstypevalg!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Advarsel – ignorerte skjemavalg!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Advarsel – ignorerte modusvalg!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%s: feil – %s-miljøvariabel oppgir målet «%s» som ikke eksisterer!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: feil – forventet option=value etter «-o»-valg!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: feil – ingen standardmål tilgjengelig.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 DPI gråskala"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60 x 720 dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Ugyldig hjelpekommando ukjent\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "Et Samba-passord kreves for å eksportere skriverdrivere!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr "Et Samba-brukernavn kreves for å eksportere skriverdrivere!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Det finnes allerede en klasse med navnet «%s»!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Det finnes allerede en skriver med navnet «%s»!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (overdimensjonert)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (overdimensjonert)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (lite)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (overdimensjonert)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "Prøv å sette %s printer-state til den ugyldige verdien %d!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Attributtgrupper er ikke i rekkefølge (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "Ugyldig device-URI «%s»!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "Ugyldig device-uri «%s»!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Ugyldig device-uri-oppsett «%s»!\n"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "Ugyldig document-format «%s»!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Ugyldig filnavnbuffer!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Ugyldig fontattributt: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Ugyldig job-priority-verdi!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Ugyldig job-sheets-verdi «%s»!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Ugyldig job-sheets-verditype!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Ugyldig job-state-verdi!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Ugyldig job-uri-attributt «%s»!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Ugyldig notify-pull-method «%s»!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "Ugyldig notify-recipient-uri-URI «%s»!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Ugyldig valg og alternativ på linje %d!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Ugyldig port-monitor «%s»!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Ugyldig printer-state-verdi %d!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Ugyldig versjonsnummer for forespørsel %d.%d!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "Ugyldig abonnements-ID!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0-konvolutt"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1-konvolutt"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2-konvolutt"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3-konvolutt"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4-konvolutt"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5-konvolutt"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6-konvolutt"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65-konvolutt"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7-konvolutt"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Tegnsett «%s» støttes ikke!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3-konvolutt"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4-konvolutt"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Kommandoer kan være forkortet. Kommandoer er :\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Kunne ikke skanne type «%s»!"
-
-#~ msgid "Cover open."
-#~ msgstr "Deksel åpent."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL-konvolutt"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Fremkaller nesten tom."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Fremkaller tom!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Enhet: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Fant ikke dokumentet %d i jobben %d."
-
-#~ msgid "Door open."
-#~ msgstr "Dør åpen."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Dobbelt postkort"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: Kan ikke tildele hukommelse for sideinfo: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: Kan ikke tildele hukommelse for sidesett: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Fant ugyldig %%BoundingBox:-kommentar!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: Ugyldig %%IncludeFeature:-kommentar!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: Ugyldig %%Page:-kommentar i fil!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: Ugyldig %%PageBoundingBox:-kommentar i fil!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Ugyldig SCSI-enhetsfil «%s»!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: Ugyldig tegnsettfil %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: Ugyldig tegnsettype %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: Ugyldig kolonneverdi %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: Ugyldig cpi-verdi %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: Ugyldig fontbeskrivelseslinje: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: Ugyldig lpi-verdi %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Ugyldig sideoppsett!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: Ugyldig tekstretning %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: Ugyldig tekstbredde %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: MÃ¥lskriver finnes ikke!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Fant duplisert %%BoundingBox:-kommentar!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: Fant duplisert %%Pages:-kommentar!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: Tom utskriftsfil!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: Feil %d ved sending av PAPSendData-forespørsel: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: Forventet streng i anførselstegn på linje %d av %s!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: Kritisk USB-feil!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr "ERROR: Fant ugyldig HP-GL/2-kommando, kan ikke skrive ut fil!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: %%EndProlog mangler!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: %%EndSetup mangler!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Mangler enhets-URI på kommandolinje, og ingen DEVICE_URI-"
-#~ "miljøvariabel!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: Mangler verdi på linje %d i bannerfil!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: Krever en msgid-linje før oversettelsesstreng på linje %d av %s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: Ingen %%BoundingBox:-kommentar i header!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: Ingen %%Pages:-kommentar i header!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Fant ingen enhets-URI i argv[0] eller i DEVICE_URI-miljøvariabel!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: Ingen fonter i tegnsettfil %s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: Fant ingen sider!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: Tom for papir!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: PRINTER-miljøvariabel er ikke definert!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: Utskriftsfil ble ikke akseptert (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: Skriver svarer ikke\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: Skriver svarer ikke!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: Skriver sendte uventet EOF\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: Ekstern vert godtok ikke kontrollfil (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: Ekstern vert godtok ikke datafil (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: Det oppsto en tidsavbruddfeil under sending av data til skriveren\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: Kan ikke legge til filen %d i jobb: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: Kan ikke avbryte jobb %d: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: Kan ikke kopiere PDF-fil"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: Kan ikke opprette socket"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Kan ikke opprette midlertidig, komprimert utskriftsfil: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: Kan ikke opprette midlertidig fil"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: Kan ikke opprette midlertidig fil – %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: Kan ikke opprette midlertidig fil: %s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: Kan ikke utføre pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: Kan ikke utføre gs-program"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: Kan ikke utføre pdftops-program"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: Kan ikke forgrene pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: Kan ikke hente PAP-forespørsel"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: Kan ikke hente PAP-svar"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr "ERROR: Kan ikke hente PPD-fil for skriveren «%s» – %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: Kan ikke hente standard AppleTalk-sone"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: Kan ikke hente %d-attributter for jobb (%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: Kan ikke hente skriverstatus (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: Finner ikke skriveren «%s»!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: Kan ikke søke etter PAP-svar"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: Kan ikke søke etter AppleTalk-skrivere"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: Kan ikke lage AppleTalk-adresse"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: Kan ikke åpne «%s» – %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: Kan ikke åpne %s: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: Kan ikke åpne bannerfilen «%s» – %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: Kan ikke åpne enhetsfilen «%s»: %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: Kan ikke åpne filen «%s» – %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: Kan ikke åpne filen «%s»: %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: Kan ikke åpne bildefil for utskrift!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: Kan ikke åpne utskriftsfilen «%s»: %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: Kan ikke åpne utskriftsfilen %s – %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: Kan ikke åpne utskriftsfilen %s: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Kan ikke åpne midlertidig, komprimert utskriftsfil: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: Kan ikke åpne midlertidig fil"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: Kan ikke skrive ut %d tekstkolonner!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: Kan ikke skrive ut %d x %d tekstside!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: Kan ikke lese utskriftsdata"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: Kan ikke lese utskriftsdata!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: Kan ikke reservere port"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: Kan ikke søke for å forskyve %ld i fil – %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: Kan ikke søke for å forskyve %lld i fil – %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: Kan ikke sende LPD-kommando"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: Kan ikke sende PAP-tickleforespørsel"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: Kan ikke sende innledende PAP-forespørsel om sending av data"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: Kan ikke sende utskriftsdata (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: Kan ikke sende utskriftsdata!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: Kan ikke sende utskriftsfil til skriver"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: Kan ikke sende «trailing nul» til skriver"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: Kan ikke vente på pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: Kan ikke skrive %d byte til «%s»: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: Kan ikke skrive %d byte til skriver!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: Kan ikke skrive kontrollfil"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: Kan ikke skrive utskriftsdata"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: Kan ikke skrive utskriftsdata: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: Kan ikke skrive rasterdata til driver!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: Kan ikke skrive til midlertidig fil "
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: Kan ikke skrive ukomprimert dokumentdata: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: Uventet tekst på linje %d av %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: Ukjent krypteringsvalgverdi «%s»!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: Ukjent filrekkefølge «%s»\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: Ukjent formattegn «%c»\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: Ukjent meldingskatalogformat for «%s»!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: Ukjent valg «%s» med verdien «%s»!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: Ukjent utskriftsmodus «%s»\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: Ukjent versjonsvalgverdi «%s»!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr "ERROR: Lysstyrkeverdien %s støttes ikke, bruker brightness=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: Gammaverdien %s støttes ikke, bruker gamma=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: Number-up-verdien %d støttes ikke, bruker number-up=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: Number-up-layout-verdien %s støttes ikke, bruker number-up-"
-#~ "layout=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: Page-border-verdien %s støttes ikke, bruker page-border=none!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: fant doc_printf-overflyt (%d byte), avbryter!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: pdftops-filter krasjet på signal %d!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: pdftops-filter avsluttet med statusen %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops avsluttet på signalet %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops avsluttet med statusen %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: gjenopprettbar: Kan ikke koble til skriver. Prøver på nytt om 30 "
-#~ "sekunder...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() mislyktes"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: kan ikke statte utskriftsfilen"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Tom PPD-fil!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Feil: krever vertsnavn etter «-h»-valg!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "FEIL\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "Enhets-URIer for filer er deaktivert! Hvis du vil aktivere funksjonen, "
-#~ "leser du FileDevice-direktivet i «%s/cupsd.conf»."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Fikseringsenhetens temperatur er høy!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Fikseringsenhetens temperatur er lav!"
-
-#~ msgid "German FanFold"
-#~ msgstr "Tysk FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "Tysk FanFold Legal"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Fikk et printer-uri-attributt, men ingen jobb-ID!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk deaktivert i Systemvalg\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk deaktivert i Systemvalg.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: Avbryter utskriftsjobb...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: Koblet til skriver...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: Kobler til skriver...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: Kontrollfil sendt\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: Datafil sendt\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: Formaterer side %d...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: Laster inn bildefil...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: Søker etter skriver...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: Ã…pner forbindelse\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: Utskriftsfil sendt, venter på at skriveren skal bli ferdig...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: Skriveren er opptatt. Prøver på nytt om 10 sekunder...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Skriveren er opptatt. Prøver på nytt om 30 sekunder...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Skriveren er opptatt. Prøver på nytt om 5 sekunder...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr "INFO: Skriveren støtter ikke IPP/%d.%d, prøver IPP/1.0...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Skriveren er opptatt. Prøver på nytt om 5 sekunder...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: Skriveren er ikke tilgjengelig.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: Skriveren er ikke tilgjengelig.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: Skriveren er tilgjengelig.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: Skriveren er ikke tilgjengelig.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr ""
-#~ "INFO: Skriveren er ikke tilgjengelig. Prøver på nytt om 30 sekunder...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: Skriver ut side %d, %d%% fullført...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: Skriver ut side %d...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: Klar til utskrift.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: Sender kontrollfil (%lu byte)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: Sender kontrollfil (%u byte)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: Sender data\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: Sender datafil (%ld byte)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: Sender datafil (%lld byte)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: Sender utskriftsdata...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: Utskriftsfil sendt, %ld byte...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: Utskriftsfil sendt, %lld byte...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: Legger LPR-jobb i utskriftskø, %.0f%% fullført...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: Får ikke kontakt med skriver, legger i kø på neste skriver i "
-#~ "klassen...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: Bruker standard AppleTalk-sone «%s»\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: Venter på at jobben skal bli ferdig...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: Venter på at skriveren skal bli tilgjengelig...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4-konvolutt"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (overdimensjonert)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5-konvolutt"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6-konvolutt"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Blekk/toner nesten tom."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Blekk/toner tom!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Avfallsbeholder for blekk/toner nesten full."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Avfallsbeholder for blekk/toner full!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Sikkerhetsenhet åpen."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Invitasjonskonvolutt"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Italiensk konvolutt"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "Kan ikke starte jobb nr. %d på nytt – ingen filer!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "Jobb nr. %d finnes ikke!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "Jobb nr. %d er fullført og kan ikke endres!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "Jobb nr. %d er ikke fullført!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "Jobb nr. %d holdes ikke for godkjenning!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "Jobb nr. %d holdes ikke!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "Jobben #%s finnes ikke!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Fant ikke jobben %d!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Jobbabonnementer kan ikke fornyes!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2-konvolutt"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3-konvolutt"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Språket «%s» støttes ikke!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Papirstopp!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Arkskuff nesten tom."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Arkskuff tom!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Arkskuff mangler!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Arkskuffen må fylles."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "document-number-attributt mangler!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Dobbelt anførselstegn mangler på linje %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Skjemavariabel mangler!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "Notify-subscription-ids-attributt mangler!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Requesting-user-name-attributt mangler!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Nødvendige attributter mangler!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Verdi mangler på linje %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Modell: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Monarch-konvolutt"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: Utskriftsfil godtatt – jobb-ID %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: Utskriftsfil godtatt – jobb-ID ukjent.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Uten PPD-navn!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Ingen Windows-skriverdrivere er installert!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Ingen aktive jobber på %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Ingen attributter i forespørsel!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Ingen godkjenningsinformasjon oppgitt!"
-
-#~ msgid "No default printer"
-#~ msgstr "Ingen standardskriver"
-
-#~ msgid "No file!?!"
-#~ msgstr "Ingen fil!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Uten endringstidspunkt!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Ingen skrivernavn!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Fant ikke printer-uri for klasse!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Fant ikke printer-uri!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Ingen printer-uri i forespørsel!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Ingen abonnementsattributter i forespørsel!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC er nesten oppbrukt."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC oppbrukt!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Tomt for toner!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Ut-beholder nesten full."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Ut-beholder full!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "Utdata for skriveren %s er sendt til %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Utdata for skriveren %s er sendt til den eksterne skriveren %s på %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "Utdata for skriveren %s/%s er sendt til %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Utdata for skriveren %s/%s er sendt til den eksterne skriveren %s på %s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Utmatingsbrett mangler!"
-
-#~ msgid "PASS\n"
-#~ msgstr "PASS\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1-konvolutt"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10-konvolutt"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2-konvolutt"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3-konvolutt"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (overdimensjonert)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4-konvolutt"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5-konvolutt"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6-konvolutt"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7-konvolutt"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8-konvolutt"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9-konvolutt"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Personlig konvolutt"
-
-#~ msgid "Printer offline."
-#~ msgstr "Skriver ikke tilgjengelig."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Rangering Eier Jobb Fil(er) Samlet "
-#~ "størrelse\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Rangering Eier Prioritet Jobb Filer "
-#~ "Samlet størrelse\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Utfører kommando: %s %s -N -A %s -c «%s»\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "SCSI-skriver"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tabloid (overdimensjonert)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "Notify-user-data-verdien er for stor (%d > 63 oktetter)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "Skriveren eller klassen er ikke delt!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "Fant ikke skriveren eller klassen."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "Printer-uri-attributtet kreves!"
-
-#~ msgid "Toner low."
-#~ msgstr "Lite toner."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "For mange job-sheets-verdier (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "For mange printer-state-reasons-verdier (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "US Executive"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US Legal (overdimensjonert)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US Letter (overdimensjonert)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US Letter (lite)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Kan ikke legge til jobb for målet «%s»!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Kan ikke tildele hukommelse for filtyper!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr "Kan ikke kopiere 64-bits CUPS-skriverdriverfiler (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr "Kan ikke kopiere 64-bits Windows-skriverdriverfiler (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "Kan ikke kopiere CUPS-skriverdriverfiler (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Kan ikke kopiere PPD-fil – %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Kan ikke kopiere PPD-fil!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr "Kan ikke kopiere Windows 2000-skriverdriverfiler (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "Kan ikke kopiere Windows 9x-skriverdriverfiler (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Kan ikke kopiere grensesnittsprosedyre – %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Kan ikke opprette printer-uri!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "Kan ikke redigere cupsd.conf-filer som er større enn 1 MB!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Finner ikke mål for jobb!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Finner ikke skriver!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr "Kan ikke installere Windows 2000-skriverdriverfiler (%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr "Kan ikke installere Windows 9x-skriverdriverfiler (%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Kan ikke åpne dokumentet %d i jobben %d!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Kan ikke starte «%s»: %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Kan ikke sende kommando til skriverdriver!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Kan ikke angi Windows-skriverdriver (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Kan ikke bruke eldre driver for USB-klasse!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Ukjent skriverfeil (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Tegnsettet «%s» støttes ikke!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Komprimeringen «%s» støttes ikke!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Komprimeringsattributtet %s støttes ikke!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Formatet «%s» støttes ikke!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Formatet «%s» støttes ikke!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Formatet «%s/%s» støttes ikke!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Bruk:\n"
-#~ "\n"
-#~ " lpadmin [-h tjener] -d mål\n"
-#~ " lpadmin [-h tjener] -x mål\n"
-#~ " lpadmin [-h tjener] -p skriver [-c legg til klasse] [-i grensesnitt] "
-#~ "[-m modell]\n"
-#~ " [-r fjern klasse] [-v enhet] [-D beskrivelse]\n"
-#~ " [-P ppd-fil] [-o navn=verdi]\n"
-#~ " [-u tillat:bruker,bruker] [-u avslå:bruker,"
-#~ "bruker]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Bruk: %s jobb-id bruker tittel kopier valg [filnavn]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Bruk: %s jobb-id bruker tittel kopier valg [fil]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Bruk: %s jobb-id bruker tittel kopier valg fil\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Bruk: konverter [ valg ]\n"
-#~ "\n"
-#~ "Valg:\n"
-#~ "\n"
-#~ " -f filnavn Angi at fil skal konverteres (stdin hvis ikke)\n"
-#~ " -o filnavn Angi at fil skal genereres (stdout hvis ikke)\n"
-#~ " -i mime/type Angi MIME-type for inndata (auto-typed hvis ikke)\n"
-#~ " -j mime/type Angi MIME-type for utdata (application/pdf hvis "
-#~ "ikke)\n"
-#~ " -P filename.ppd Angi PPD-fil\n"
-#~ " -a 'navn=verdi ...' Angi valg\n"
-#~ " -U brukernavn Angi brukernavn for jobb\n"
-#~ " -J tittel Angi tittel\n"
-#~ " -c eksemplarer Angi antall eksemplarer\n"
-#~ " -u Fjern PPD-fil når ferdig\n"
-#~ " -D Fjern inndatafil når ferdig\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Bruk: cupsaddsmb [valg] printer1 ... printerN\n"
-#~ " cupsaddsmb [valg] -a\n"
-#~ "\n"
-#~ "Valg:\n"
-#~ " -E Krypter forbindelsen til tjeneren\n"
-#~ " -H samba-tjener Bruk den angitte SAMBA-tjeneren\n"
-#~ " -U samba-bruker Godkjenn ved hjelp av den angitte SAMBA-brukeren\n"
-#~ " -a Eksporter alle skrivere\n"
-#~ " -h cups-tjener Bruk den angitte CUPS-tjeneren\n"
-#~ " -v Vær detaljert (vis kommandoer)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Bruk: cupsctl [valg] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Valg:\n"
-#~ "\n"
-#~ " -E Aktiver kryptering\n"
-#~ " -U brukernavn Angi brukernavn\n"
-#~ " -h tjener[:port] Angi tjeneradresse\n"
-#~ "\n"
-#~ " --[no-]debug-logging Aktiver eller deaktiver feilsøkingslogging\n"
-#~ " --[no-]remote-admin Aktiver eller deaktiver ekstern "
-#~ "administrering\n"
-#~ " --[no-]remote-any Tillat eller forhindre tilgang fra Internett\n"
-#~ " --[no-]remote-printers Vis eller skjul eksterne skrivere\n"
-#~ " --[no-]share-printers Aktiver eller deaktiver skriverdeling\n"
-#~ " --[no-]user-cancel-any Tillat eller forhindre at brukere kan avbryte "
-#~ "en hvilken som helst jobb\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Bruk: cupsd [-c konfigurasjonsfil] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c konfigurasjonsfil Last inn alternativ konfigurasjonsfil\n"
-#~ "-f Kjør i forgrunnen\n"
-#~ "-F Kjør i forgrunnen, men skill\n"
-#~ "-h Vis denne bruksmeldingen\n"
-#~ "-l Kjør cupsd fra launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Bruk: cupsfilter -m mime/type [ valg ] filnavn\n"
-#~ "\n"
-#~ "Valg:\n"
-#~ "\n"
-#~ " -c cupsd.conf Angi hvilken cupsd.conf-fil som skal brukes\n"
-#~ " -j jobb-id[,N] Filtrer filen N fra angitt jobb (standard er fil 1)\n"
-#~ " -n eksemplarer Angi antall eksemplarer\n"
-#~ " -o navn=verdi Angi valg\n"
-#~ " -p filename.ppd Angi PPD-fil\n"
-#~ " -t tittel Angi tittel\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Bruk: cupstestdsc [valg] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [valg] -\n"
-#~ "\n"
-#~ "Valg:\n"
-#~ "\n"
-#~ " -h Vis programbruk\n"
-#~ "\n"
-#~ " Merk: dette programmet validerer DSC-kommentarer, ikke selve "
-#~ "PostScript-innholdet.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Bruk: cupstestppd [valg] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [valg] -\n"
-#~ "\n"
-#~ "Valg:\n"
-#~ "\n"
-#~ " -R rotkatalog Angi alternativ rot\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Gi advarsler i stedet for feil\n"
-#~ " -q Kjør stille\n"
-#~ " -r Bruk «avslappet» åpen modus\n"
-#~ " -v Vær litt detaljert\n"
-#~ " -vv Vær veldig detaljert\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Bruk: lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Bruk: lpoptions [-h tjener] [-E] -d skriver\n"
-#~ " lpoptions [-h tjener] [-E] [-p skriver] -l\n"
-#~ " lpoptions [-h tjener] [-E] -p skriver -o valg[=verdi] ...\n"
-#~ " lpoptions [-h tjener] [-E] -x skriver\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Bruk: lppasswd [-g gruppenavn]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Bruk: lppasswd [-g gruppenavn] [brukernavn]\n"
-#~ " lppasswd [-g gruppenavn] -a [brukernavn]\n"
-#~ " lppasswd [-g gruppenavn] -x [brukernavn]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Bruk: lpq [-P mål] [-U brukernavn] [-h vertsnavn[:port]] [-l] "
-#~ "[+intervall]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Bruk: ppdc [valg] filename.drv [ ... filenameN.drv ]\n"
-#~ "Valg:\n"
-#~ " -D navn=verdi Bruk verdi for angitt variabel.\n"
-#~ " -I include-dir Legg til inkluderingskatalog i søkebane.\n"
-#~ " -c catalog.po Last inn angitt meldingskatalog.\n"
-#~ " -d output-dir Angi utdatakatalog.\n"
-#~ " -l lang[,lang,...] Angi utdataspråk (nasjonal innstilling).\n"
-#~ " -m Bruk ModelName-verdi som filnavn.\n"
-#~ " -t Test PPD-er i stedet for å generere dem.\n"
-#~ " -v Vær detaljert (flere v-er gir høyere detaljnivå).\n"
-#~ " -z Komprimer PPD-filer ved hjelp av GNU zip.\n"
-#~ " --cr Bruk CR-linjeskift (Mac OS 9).\n"
-#~ " --crlf Bruk CR + LF-linjeskift (Windows).\n"
-#~ " --lf Bruk LF-linjeskift (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Bruk: ppdhtml [valg] filename.drv >filename.html\n"
-#~ " -D navn=verdi Bruk verdi for angitt variabel.\n"
-#~ "Valg:\n"
-#~ " -I include-dir Legg til inkluderingskatalog i søkebane.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Bruk: ppdi [valg] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Valg:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Bruk: ppdmerge [valg] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Valg:\n"
-#~ " -o filename.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Bruk: ppdpo [valg] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Valg:\n"
-#~ " -D navn=verdi Bruk verdi for angitt variabel.\n"
-#~ " -I include-dir Legg til inkluderingskatalog i søkebane.\n"
-#~ " -v Vær detaljert (flere v-er gir høyere detaljnivå).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Bruk: snmp [vert eller ip-adresse]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: Legger til kun de %d første skriverne som ble funnet"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: Boolsk forventet for waiteof-valget «%s»\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: Kunne ikke lese sidekanalforspørsel!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr "WARNING: Valget «%s» kan ikke inkluderes via IncludeFeature!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: Skriver svarer ikke\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: Skriver sendte uventet EOF\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Ekstern vert svarte ikke med kommandostatusbyte etter %d "
-#~ "sekunder!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Ekstern vert svarte ikke med kontrollstatusbyte etter %d "
-#~ "sekunder!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Ekstern vert svarte ikke med datastatusbyte etter %d sekunder!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: SCSI-kommando ble tidsavbrutt (%d). Prøver på nytt...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Dette dokumentet er ikke i overensstemmelse med Adobes "
-#~ "konvensjoner for dokumentstruktur, og det er mulig at dokumentet ikke "
-#~ "skrives ut riktig!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: Kan ikke åpne «%s:%s»: %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: Kan ikke sende PAP-statusforespørsel"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: Uventet PAP-pakke av typen %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: Ukjent PAP-pakke av typen %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: Ukjent innstilling «%s» for valget «%s»!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: Ukjent valg «%s»!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: Modulasjonshastigheten %s støttes ikke!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: tall forventet for statusvalget «%s»\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: gjenopprettbar: Nettverksverten «%s» er opptatt. Prøver på nytt "
-#~ "om %d sekunder...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr "Advarsel: Ingen Windows 2000-skriverdrivere er installert!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4-konvolutt"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr "konverter: Bruk valget -f for å angi en fil som skal konverteres.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: Ingen PPD-fil for skriveren «%s» – %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: Kan ikke koble til tjener: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: Ukjent valg «%s»!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: Ukjent valg «-%c»!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: Forventet config-filnavn etter «-c»-valg!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: Kan ikke hente nåværende katalog!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: Ukjent argument «%s» – avbryter!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: Ukjent valg «%c» – avbryter!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: launchd(8)-støtte er ikke kompilert inn, bruker vanlig modus.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: Ugyldig dokumentnummer %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: Ugyldig jobb-ID %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: Kun ett filnavn kan spesifiseres!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: Kan ikke opprette midlertidig fil: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: Kan ikke hente jobbfil – %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: Valget -q er ikke kompatibelt med valget -v.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: Valget -v er ikke kompatibelt med valget -q.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "enhet for %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "enhet for %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "hjelp\t\thent hjelp ved kommandoer\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "job-printer-uri-attributt mangler!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Klassenavn kan kun inneholde tegn som kan skrives ut!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: Forventet PPD etter «-P»-valg!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: Forventet tillat/avslå:brukerliste etter «-u»-valg!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: Forventet klasse etter «-r»-valg!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: Forventet klassenavn etter «-c»-valg!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: Forventet beskrivelse etter «-D»-valg!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: Forventet enhets-URI etter «-v»-valg!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: Forventet filtype etter «-I»-valg!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: Forventet vertsnavn etter «-h»-valg!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: Forventet grensesnitt etter «-i»-valg!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: Forventet sted etter «-L»-valg!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: Forventet modell etter «-m»-valg!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: Forventet navn=verdi etter «-o»-valg!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: Forventet skriver etter «-p»-valg!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: Forventet skrivernavn etter «-d»-valg!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: Forventet skriver eller klasse etter «-x»-valg!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: Fant ingen medlemsnavn!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: Skriveren %s er allerede medlem av klassen %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: Skriveren %s er ikke medlem av klassen %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Skrivernavn kan kun inneholde tegn som kan skrives ut!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke legge til skriver i klassen:\n"
-#~ " Du må angi et skrivernavn først!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: Kan ikke koble til tjener: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: Kan ikke opprette midlertidig fil – %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: Kan ikke opprette midlertidig fil: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: Kan ikke åpne PPD-filen «%s» – %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: Kan ikke åpne filen «%s»: %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke fjerne en skriver fra klassen:\n"
-#~ " Du må angi et skrivernavn først!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke angi PPD-fil:\n"
-#~ " Du må angi et skrivernavn først!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke angi enhets-URI:\n"
-#~ " Du må angi et skrivernavn først!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke angi grensesnittsprosedyre eller PPD-fil:\n"
-#~ " Du må angi et skrivernavn først!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke angi grensesnittsprosedyre:\n"
-#~ " Du må angi et skrivernavn først!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke angi beskrivelse av skriver:\n"
-#~ " Du må angi et skrivernavn først!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke angi skriverplassering:\n"
-#~ " Du må angi et skrivernavn først!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kan ikke angi skrivervalg:\n"
-#~ " Du må angi et skrivernavn først!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: Ukjent tillat/avslå-valg «%s»!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: Ukjent argument «%s»!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: Ukjent valg «%c»!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: Advarsel – ignorerte innholdstypeliste!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo: Forventet 1284-enhets-ID-streng etter --device-id!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: Forventet språk etter --language!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: Forventet merke og modell etter --make-and-model!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: Forventet produktstreng etter --product!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: Forventet oppsettliste etter --exclude-schemes!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: Forventet oppsettliste etter --include-schemes!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: Forventet tisdsavbrudd etter --timeout!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: Ukjent argument «%s»!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: Ukjent valg «%c»!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: Ukjent valg «%s»!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: Kan ikke koble til tjener: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: Ukjent argument «%s»!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: Ukjent valg «%c»!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: Ingen skrivere!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: Kan ikke legge til skriver eller forekomst: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: Kan ikke hente PPD-fil for %s: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: Kan ikke åpne PPD-fil for %s!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: Ukjent skriver eller klasse!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: Kun rot kan legge til og slette passord!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: Passordfil er opptatt!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: Passordfil er ikke oppdatert!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: Beklager. Passordet stemmer ikke!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: Beklager. Passordet ble ikke godtatt.\n"
-#~ "Passordet må være på minst 6 tegn og kan ikke inneholde\n"
-#~ "brukernavet ditt. Det må også inneholde must én bokstav og ett tall.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: Beklager. Passordene er ikke like!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: Kan ikke kopiere passordstreng: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: Kan ikke åpne passordfil: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: Kan ikke skrive til passordfil: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr "lppasswd: kunne ikke sikkerhetskopiere gammel passordfil: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: kunne ikke endre navn på passordfil: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: brukeren «%s» og gruppen «%s» finnes ikke.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: feil – %s-miljøvariabel oppgir målet «%s» som ikke eksisterer!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "medlemmer av klassen %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "ingen oppføringer\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "ingen standardmål for system\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events ikke angitt!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri-URI «%s» er i bruk!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri-URI «%s» bruker et ukjent oppsett!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d er ubrukelig!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: Legger til inkluderingskatalog «%s»...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: Legger til / oppdaterer UI-tekst fra %s...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Ugyldig boolsk verdi (%s) på linje %d av %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig oppløsningsnavn «%s» på linje %d av %s!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig statusnøkkelord %s på linje %d av %s!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: Ugyldig variabelutskifting ($%c) på linje %d av %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: Fant alternativ på linje %d av %s uten valg!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: Duplikat #po for nasjonal innstilling %s på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet filterdefinisjon på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet programnavn på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: Forventet boolsk verdi på linje %d av %s.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet tegnsett etter Font på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: Forventet valgkode på linje %d av %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: Forventet valgnavn/-tekst på linje %d av %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet fargerekkefølge for ColorModel på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet fargeområde for ColorModel på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet komprimering for ColorModel på linje %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventet restriksjoner for UIConstraints på linje %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventet nøkkelord for drivertype etter DriverType på linje %d av %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet duplekstype etter Duplex på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet koding etter Font på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet filnavn etter #po %s på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet gruppenavn/-tekst på linje %d av %s.\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet inkluderingsfilnavn på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet heltall på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet nasjonal innstilling etter #po på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet navn etter %s på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet navn etter FileName på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet navn etter Font på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet navn etter Manufacturer på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet navn etter MediaSize på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet navn etter ModelName på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet navn etter PCFileName på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet navn/tekst etter %s på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet navn/tekst etter Installable på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet navn/tekst etter Resolution på linje %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventet navn/tekst-kombinasjon for ColorModel på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet valgnavn/-tekst på linje %d av %s.\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet valgdel på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet valgtype på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventet overstyringsfelt etter Resolution på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet reelt tall på linje %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventet oppløsning/papirtype etter ColorProfile på linje %d av %"
-#~ "s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Forventet oppløsning/papirtype etter SimpleColorProfile på linje %d "
-#~ "av %s!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet velger etter %s på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet status etter Font på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet streng etter Copyright på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet streng etter Version på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet to valgnavn på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet verdi etter %s på linje %d av %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Forventet versjon etter Font på linje %d av %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: Ugyldig #include/#po filnavn «%s»!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig kostnad for filter på linje %d av %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig, tom MIME-type for filter på linje %d av %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig, tomt programnavn for filter på linje %d av %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig valgdel «%s» på linje %d av %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ugyldig valgtype «%s» på linje %d av %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: Laster inn driverinformasjonsfil «%s»...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: Laster inn meldinger for nasjonal innstilling «%s»...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: Laster inn meldinger fra «%s»...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: Mangler #endif ved slutten av «%s»!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: Mangler #if på linje %d av %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: Ingen meldingskatalog oppgitt for nasjonal innstilling %s!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Valg %s definert på nytt med forskjellig type på linje %d av %s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc: Valgrestriksjon må *navn på linje %d av %s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: For mange nestede #if-er på linje %d av %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: Kan ikke opprette PPD-filen «%s» – %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: Kan ikke opprette utdatakatalog %s: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: Kan ikke opprette utdatakanaler: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: Kan ikke utføre cupstestppd: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: Finner ikke #po-filen %s på linje %d av %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Finner ikke inkluderingsfilen «%s» på linje %d av %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: Finner ikke lokalisering for «%s» – %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: Finner ikke lokaliseringsfilen «%s» – %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Udefinert variabel (%s) på linje %d av %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: Ukjent drivertype %s på linje %d av %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ukjent duplekstype «%s» på linje %d av %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ukjent papirstørrelse «%s» på linje %d av %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: Ukjent kjennetegn «%s» funnet på linje %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Ukjente etterfølgende tegn i det reelle tallet «%s» på linje %d av %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc: Uavsluttet streng begynner med %c på linje %d av %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: Skriver %s...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: Skriver PPD-filer til katalog «%s»...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: Ugyldig LanguageVersion «%s» i %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: Ignorerer PPD-fil %s...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: Kan ikke sikkerhetskopiere %s til %s – %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "skriveren %s er deaktivert siden %s –\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "skriveren %s er inaktiv. aktivert siden %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "skriveren %s skriver nå ut %s–%d. aktivert siden %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "skriveren %s/%s er deaktivert siden %s –\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "skriveren %s/%s er inaktiv. aktivert siden %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "skriveren %s/%s skriver nå ut %s–%d. aktivert siden %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "request-id er %s–%d (%d fil(er))\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "planlegger er ikke i gang\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "planlegger er i gang\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\tvis status for daemon og kø\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "standardmål for system: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "standardmål for system: %s/%s\n"
diff --git a/locale/cups_pl.po b/locale/cups_pl.po
deleted file mode 100644
index 9b263b01..00000000
--- a/locale/cups_pl.po
+++ /dev/null
@@ -1,8717 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f mm"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f do %.0f x %.0f mm"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f cali"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f do %.2f x %.2f cali"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s nie może zostać zmienione."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 cal/sek."
-
-msgid "1.25x0.25\""
-msgstr "1,25x0,25\""
-
-msgid "1.25x2.25\""
-msgstr "1,25x2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 cala/sek."
-
-msgid "1.50x0.25\""
-msgstr "1,50x0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50x0,50\""
-
-msgid "1.50x1.00\""
-msgstr "1,50x1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50x2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 cali/sek."
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/sek."
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 cali/sek."
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 cali/sek."
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/sek."
-
-msgid "120x60dpi"
-msgstr "120x60dpi"
-
-msgid "120x72dpi"
-msgstr "120x72dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/sek."
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/sek."
-
-msgid "150dpi"
-msgstr "150dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 cale/sek."
-
-msgid "2-Sided Printing"
-msgstr "druk obustronny"
-
-msgid "2.00x0.37\""
-msgstr "2,00x0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00x0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00x1,00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00x1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00x2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00x3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00x4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00x5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25x0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25x1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25x4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25x5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38x5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 cala/sek."
-
-msgid "2.50x1.00\""
-msgstr "2,50x1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50x2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75x1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/sek."
-
-msgid "200 mm/sec."
-msgstr "200 mm/sek."
-
-msgid "203dpi"
-msgstr "203dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24 igłowa"
-
-msgid "240x72dpi"
-msgstr "240x72dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/sek."
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 cale/sek."
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00x1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00x1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00x2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00x3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00x5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25x2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25x5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25x5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25x5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25x7,83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "dysk 3.5\""
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "dysk 3.5\" - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50x1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/sek."
-
-msgid "300 mm/sec."
-msgstr "300 mm/sek."
-
-msgid "300dpi"
-msgstr "300dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360dpi"
-
-msgid "360x180dpi"
-msgstr "360x180dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 cale/sek."
-
-msgid "4.00x1.00\""
-msgstr "4,00x1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00x13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00x2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00x2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00x3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00x4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00x5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00x6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00x6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/sek."
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 cali/sek."
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 cali/sek."
-
-msgid "6.00x1.00\""
-msgstr "6,00x1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00x2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00x3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00x4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00x5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00x6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00x6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/sek."
-
-msgid "600dpi"
-msgstr "600dpi"
-
-msgid "60dpi"
-msgstr "60dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 cali/sek."
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 cali/sek."
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00x1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00x2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00x3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00x4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00x5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00x6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00x6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/sek."
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 cali/sek."
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "9 igłowa"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Zaakceptuj zlecenia"
-
-msgid "Accepted"
-msgstr "Zaakceptowane"
-
-msgid "Add Class"
-msgstr "Dodaj klasÄ™"
-
-msgid "Add Printer"
-msgstr "Dodaj drukarkÄ™"
-
-msgid "Add RSS Subscription"
-msgstr "Dodaj subskrypcjÄ™ RSS"
-
-msgid "Address"
-msgstr "Adres"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Adres - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Administracja"
-
-msgid "Always"
-msgstr "Zawsze"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Aplikator"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Błędny PUSTY wskaźnik dests"
-
-msgid "Bad OpenGroup"
-msgstr "Błędne OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "Błędne OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "Błędne OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Błędne żądanie"
-
-msgid "Bad SNMP version number"
-msgstr "Błędny numer wersji SNMP"
-
-msgid "Bad UIConstraints"
-msgstr "Błędne OrderDependency"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Błędna wartość kopii %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Błędny własny parametr"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Błędna wartość kopii %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Błędne wartości %d-%d page-ranges."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Bannery"
-
-msgid "Billing Information: "
-msgstr "Fakturowanie: "
-
-msgid "Bond Paper"
-msgstr "Papier uszlachetniony"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "Drukarka etykiet CPCL"
-
-msgid "Cancel RSS Subscription"
-msgstr "Wycofaj subskrypcjÄ™ RSS"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Zmień ustawienia"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Klasy"
-
-msgid "Clean Print Heads"
-msgstr "Czyść głowice drukarki"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Kolor"
-
-msgid "Color Mode"
-msgstr "Tryb koloru"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Community name używa nieograniczonej długości"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Dalej"
-
-msgid "Continuous"
-msgstr "Ciągły"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Utworzono"
-
-msgid "Created On: "
-msgstr "Utworzono: "
-
-msgid "Custom"
-msgstr "Własne"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Wytnij"
-
-msgid "Cutter"
-msgstr "Do cięcia"
-
-msgid "Dark"
-msgstr "Ciemne"
-
-msgid "Darkness"
-msgstr "Ciemność"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Usuń klasę"
-
-msgid "Delete Printer"
-msgstr "Usuń drukarkę"
-
-msgid "Description: "
-msgstr "Opis: "
-
-msgid "DeskJet Series"
-msgstr "Seria DeskJet"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "Cel \"%s\" nie akceptuje zadań."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Materiał bezpośredni termiczny"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Wyłączone"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Nazwa sterownika: "
-
-msgid "Driver Version: "
-msgstr "Wersja sterownika: "
-
-msgid "Duplexer"
-msgstr "Do druku obustronnego"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "Drukarka etykiet EPL1"
-
-msgid "EPL2 Label Printer"
-msgstr "Drukarka etykiet EPL2"
-
-msgid "Edit Configuration File"
-msgstr "Edytuj plik konfiguracji"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Baner końcowy"
-
-msgid "English"
-msgstr "Polish"
-
-msgid "Enter old password:"
-msgstr "Podaj stare hasło:"
-
-msgid "Enter password again:"
-msgstr "Powtórz hasło:"
-
-msgid "Enter password:"
-msgstr "Podaj hasło:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Wprowadź swoje nazwę użytkownika i hasło lub nazwę i hasło użytkownika root, "
-"aby uzyskać dostęp do tej strony. Jeżeli korzystasz z uwierzytelnienia "
-"Kerberos, upewnij się, że posiadasz prawidłowy bilet Kerberos."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Podajnik kopert"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Zasady obsługi błędów"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Co 10 etykiet"
-
-msgid "Every 2 Labels"
-msgstr "Co 2 etykiety"
-
-msgid "Every 3 Labels"
-msgstr "Co 3 etykiety"
-
-msgid "Every 4 Labels"
-msgstr "Co 4 etykiety"
-
-msgid "Every 5 Labels"
-msgstr "Co 5 etykiet"
-
-msgid "Every 6 Labels"
-msgstr "Co 6 etykiet"
-
-msgid "Every 7 Labels"
-msgstr "Co 7 etykiet"
-
-msgid "Every 8 Labels"
-msgstr "Co 8 etykiet"
-
-msgid "Every 9 Labels"
-msgstr "Co 9 etykiet"
-
-msgid "Every Label"
-msgstr "Co etykietÄ™"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Oczekiwana wartość nie do zwrócenia"
-
-msgid "Export Printers to Samba"
-msgstr "Wyeksportuj drukarki do Samby"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Folder"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Folder - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Folio"
-
-msgid "Forbidden"
-msgstr "Zabronione"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Ogólne"
-
-msgid "Generic"
-msgstr "Ogólne"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU używa nieskończonej długości"
-
-msgid "Glossy Paper"
-msgstr "Papier błyszczący"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Szarości"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "WiszÄ…cy folder"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "WiszÄ…cy folder - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "Polish"
-
-msgid "Illegal control character"
-msgstr "Niedozwolony znak kontrolny"
-
-msgid "Illegal main keyword string"
-msgstr "Niedozwolony główny łańcuch słowa kluczowego"
-
-msgid "Illegal option keyword string"
-msgstr "Niedozwolony łańcuch słowa kluczowego opcji"
-
-msgid "Illegal translation string"
-msgstr "Niedozwolony łańcuch tłumaczenia"
-
-msgid "Illegal whitespace character"
-msgstr "Niedozwolony biały znak"
-
-msgid "Installable Options"
-msgstr "Opcje instalowane"
-
-msgid "Installed"
-msgstr "Zainstalowane"
-
-msgid "IntelliBar Label Printer"
-msgstr "Drukarka etykiet IntelliBar"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "Błąd wewnętrzny"
-
-msgid "Internet Postage 2-Part"
-msgstr "Etykieta Internet Postage, dwuczęściowa"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Etykieta Internet Postage, dwuczęściowa - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Etykieta Internet Postage, trzyczęściowa"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Etykieta Internet Postage, trzyczęściowa - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Internetowy protokół druku"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "Zlecenie #%d zostało już przerwane - nie można anulować."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "Zlecenie #%d zostało już anulowane - nie można anulować."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "Zlecenie #%d zostało już zakończone - nie można anulować."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "zlecenie zakończone"
-
-msgid "Job Created"
-msgstr "utworzono zlecenie"
-
-msgid "Job ID: "
-msgstr "ID zlecenia: "
-
-msgid "Job Options Changed"
-msgstr "zmieniono opcje zlecenia"
-
-msgid "Job Stopped"
-msgstr "zlecenie zatrzymane"
-
-msgid "Job UUID: "
-msgstr "UUID zlecenia: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "Zlecenie zostało zakończone i nie może zostać zmienione."
-
-msgid "Job operation failed:"
-msgstr "Operacja zlecenia nie powiodła się:"
-
-msgid "Job state cannot be changed."
-msgstr "Stan zlecenia nie może zostać zmieniony."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Zlecenia"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "Host lub drukarka LPD/LPR"
-
-msgid "Label Printer"
-msgstr "Drukarka etykiet"
-
-msgid "Label Top"
-msgstr "Wierzch etykiety"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Duży adres"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Duży adres - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet Series PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Lekki"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Wiersz dłuższy niż maksymalnie dozwolony (255 znaków)"
-
-msgid "List Available Printers"
-msgstr "Pokaż dostępne drukarki"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Miejsce: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Portretowy"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Marka i model: "
-
-msgid "Manual Feed"
-msgstr "Ręczne podawanie papieru"
-
-msgid "Media Dimensions: "
-msgstr "Wymiary nośnika: "
-
-msgid "Media Limits: "
-msgstr "Ograniczenia nośnika: "
-
-msgid "Media Name: "
-msgstr "Nazwa nośnika: "
-
-msgid "Media Size"
-msgstr "Rozmiar nośnika"
-
-msgid "Media Source"
-msgstr "Źródło nośnika"
-
-msgid "Media Tracking"
-msgstr "Śledzenie nośnika"
-
-msgid "Media Type"
-msgstr "Rodzaj nośnika"
-
-msgid "Medium"
-msgstr "Åšredni"
-
-msgid "Memory allocation error"
-msgstr "Błąd przydziału pamięci"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "Brakujący nagłówek PPD-Adobe-4.x"
-
-msgid "Missing asterisk in column 1"
-msgstr "BrakujÄ…ca gwiazdka w kolumnie 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Brakujący łańcuch wartości"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Zmień klasę"
-
-msgid "Modify Printer"
-msgstr "Zmień drukarkę"
-
-msgid "Move All Jobs"
-msgstr "PrzenieÅ› wszystkie zlecenia"
-
-msgid "Move Job"
-msgstr "PrzenieÅ› zlecenie"
-
-msgid "Moved Permanently"
-msgstr "Trwale przeniesione"
-
-msgid "NULL PPD file pointer"
-msgstr "PUSTY wskaźnik pliku PPD"
-
-msgid "Name OID uses indefinite length"
-msgstr "OID nazwy używa nieskończonej długości"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Nigdy"
-
-msgid "New Stylus Color Series"
-msgstr "New Stylus Color Series"
-
-msgid "New Stylus Photo Series"
-msgstr "New Stylus Photo Series"
-
-msgid "No"
-msgstr "Nie"
-
-msgid "No Content"
-msgstr "Brak zawartości"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Brak VarBind SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Brak aktywnego połączenia"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Brak community name"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Nie dodano celów."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Brak error-index"
-
-msgid "No error-status"
-msgstr "Brak error-status"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Brak OID nazwy"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Brak request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Błędne ID subskrypcji."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Brak variable-bindings SEQUENCE"
-
-msgid "No version number"
-msgstr "Brak nazwy wersji"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Nieciągły (Mark sensing)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Nieciągły (Web sensing)"
-
-msgid "Normal"
-msgstr "Zwykły"
-
-msgid "Not Found"
-msgstr "Nie znaleziono"
-
-msgid "Not Implemented"
-msgstr "Niezaimplementowane"
-
-msgid "Not Installed"
-msgstr "Niezainstalowane"
-
-msgid "Not Modified"
-msgstr "Niezmienione"
-
-msgid "Not Supported"
-msgstr "Nieobsługiwane"
-
-msgid "Not allowed to print."
-msgstr "Brak zgody na druk."
-
-msgid "Note"
-msgstr "Notatka"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Jednostronny"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Pomoc internetowa"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "Otwarcie %s nie powiodło się: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup nie poprzedzony przez CloseGroup"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI nie poprzedzony przez CloseUI/JCLCloseUI"
-
-msgid "Operation Policy"
-msgstr "Polityka operacji"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Zainstalowane opcje"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Opcje: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Tryb wyjścia"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "Drukarka laserowa PCL"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Pakiet nie zawiera Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Pakiet nie rozpoczyna siÄ™ od SEQUENCE"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Hasło dla %s na %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "Wymagane jest hasło dla %s, aby uzyskać dostęp do %s przez Sambę:"
-
-msgid "Pause Class"
-msgstr "Wstrzymanie klasy"
-
-msgid "Pause Printer"
-msgstr "Wstrzymanie drukarki"
-
-msgid "Peel-Off"
-msgstr "Peel-Off"
-
-msgid "Photo"
-msgstr "Zdjęcie"
-
-msgid "Photo Labels"
-msgstr "Etykiety zdjęć"
-
-msgid "Plain Paper"
-msgstr "Zwykły papier"
-
-msgid "Policies"
-msgstr "Zasady"
-
-msgid "Port Monitor"
-msgstr "Monitor portów"
-
-msgid "PostScript Printer"
-msgstr "Drukarka PostScriptowa"
-
-msgid "Postcard"
-msgstr "Kartka pocztowa"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Gęstość druku"
-
-msgid "Print Job:"
-msgstr "Zlecenie drukowania:"
-
-msgid "Print Mode"
-msgstr "Tryb drukowania"
-
-msgid "Print Rate"
-msgstr "Prędkość drukowania"
-
-msgid "Print Self-Test Page"
-msgstr "Drukuj stronÄ™ testowÄ…"
-
-msgid "Print Speed"
-msgstr "Prędkość druku"
-
-msgid "Print Test Page"
-msgstr "Wydrukuj stronę próbną"
-
-msgid "Print and Cut"
-msgstr "Drukuj i obetnij"
-
-msgid "Print and Tear"
-msgstr "Drukuj i oderwij"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Druk dla: "
-
-msgid "Printed From: "
-msgstr "Druk z: "
-
-msgid "Printed On: "
-msgstr "Druk na: "
-
-msgid "Printer Added"
-msgstr "Dodano drukarkÄ™"
-
-msgid "Printer Default"
-msgstr "Domyślna drukarka"
-
-msgid "Printer Deleted"
-msgstr "Usunięto drukarkę"
-
-msgid "Printer Modified"
-msgstr "Zmieniono drukarkÄ™"
-
-msgid "Printer Name: "
-msgstr "Nazwa drukarki: "
-
-msgid "Printer Paused"
-msgstr "Drukarka wstrzymana"
-
-msgid "Printer Settings"
-msgstr "Ustawienia drukarki"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Drukarka:"
-
-msgid "Printers"
-msgstr "Drukarki"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Wyczyść zlecenia"
-
-msgid "Quarto"
-msgstr "Quarto"
-
-msgid "Quota limit reached."
-msgstr "Przekroczono limit miejsca."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Odrzuć zlecenia"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Drukuj ponownie po błędzie"
-
-msgid "Request Entity Too Large"
-msgstr "Encja zapytania zbyt długa"
-
-msgid "Resolution"
-msgstr "Rozdzielczość"
-
-msgid "Resume Class"
-msgstr "Wznowienie klasy"
-
-msgid "Resume Printer"
-msgstr "Wznowienie drukarki"
-
-msgid "Return Address"
-msgstr "Adres nadawcy"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Adres nadawcy - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Przewiń"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE używa nieskończonej długości"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Zobacz inne"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Port szeregowy #%d"
-
-msgid "Server Restarted"
-msgstr "Uruchomiono serwer ponownie"
-
-msgid "Server Security Auditing"
-msgstr "Sprawdzenie bezpieczeństwa serwera"
-
-msgid "Server Started"
-msgstr "Uruchomiono serwer"
-
-msgid "Server Stopped"
-msgstr "Zatrzymano serwer"
-
-msgid "Service Unavailable"
-msgstr "Usługa niedostępna"
-
-msgid "Set Allowed Users"
-msgstr "Ustaw dozwolonych użytkowników"
-
-msgid "Set As Server Default"
-msgstr "Ustaw jako domyślne serwera"
-
-msgid "Set Class Options"
-msgstr "Ustaw opcje klasy"
-
-msgid "Set Printer Options"
-msgstr "Ustaw opcje drukarki"
-
-msgid "Set Publishing"
-msgstr "Ustaw publikowanie"
-
-msgid "Shipping Address"
-msgstr "Adres wysyłki"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Adres wysyłki - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Poziome"
-
-msgid "Special Paper"
-msgstr "Papier specjalny"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Standardowy"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Uruchamiam baner"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Stwierdzenie"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color Series"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo Series"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Przełączanie protokołów"
-
-msgid "Tabloid"
-msgstr "Tabloid"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Tear"
-
-msgid "Tear-Off"
-msgstr "Tear-Off"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Korekcja pozycji odrywania"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "Nie można znaleźć pliku PPD \"%s\"."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "Nie można otworzyć pliku PPD \"%s\": %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Nazwa klasy może zawierać tylko do 127 drukowalnych znaków i nie może "
-"zawierać spacji, ukośników (/) lub znaku #."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"Cecha notify-lease-duration nie może być używana z subskrypcjami zadań."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Nazwa drukarki może zawierać tylko do 127 drukowalnych znaków i nie może "
-"zawierać spacji, ukośników (/) lub znaku #."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "printer-uri \"%s\" zawiera nieprawidłowe znaki."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"printer-uri musi być w formie \"ipp://NAZWA_KOMPUTERA/classes/NAZWA_KLASY\"."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"printer-uri musi być w formie \"ipp://NAZWA_KOMPUTERA/printers/NAZWA_DRUKARKI"
-"\"."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"Nazwa subskrypcji nie może zawierać spacji, ukośników (/), pytajników (?) "
-"lub znaku #."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Jest zbyt wiele subskrypcji."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Nośnik druku termicznego"
-
-msgid "Title: "
-msgstr "Tytuł: "
-
-msgid "Too many active jobs."
-msgstr "Za dużo aktywnych zadań."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Przezroczystość"
-
-msgid "Tray"
-msgstr "Podajnik"
-
-msgid "Tray 1"
-msgstr "Podajnik 1"
-
-msgid "Tray 2"
-msgstr "Podajnik 2"
-
-msgid "Tray 3"
-msgstr "Podajnik 3"
-
-msgid "Tray 4"
-msgstr "Podajnik 4"
-
-msgid "URI Too Long"
-msgstr "Zbyt długi URI"
-
-msgid "US Ledger"
-msgstr "US Ledger"
-
-msgid "US Legal"
-msgstr "US Legal"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "US Letter"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "Port szeregowy USB #%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Nie można uzyskać dostępu do pliku cupsd.conf:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Nie można dodać subskrypcji RSS:"
-
-msgid "Unable to add class:"
-msgstr "Nie można dodać klasy:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Nie można dodać drukarki:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Nie można wycofać subskrypcji RSS:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Nie można zmienić cechy printer-is-shared:"
-
-msgid "Unable to change printer:"
-msgstr "Nie można zmienić drukarki:"
-
-msgid "Unable to change server settings:"
-msgstr "Nie można zmienić ustawień serwera:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Nie można połączyć się z hostem."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Nie można utworzyć pliku tymczasowego:"
-
-msgid "Unable to delete class:"
-msgstr "Nie można usunąć klasy:"
-
-msgid "Unable to delete printer:"
-msgstr "Nie można usunąć drukarki:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Nie można wykonać polecenia konserwacji:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Nie można uzyskać listy klas:"
-
-msgid "Unable to get class status:"
-msgstr "Nie można uzyskać statusu klasy:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Nie można uzyskać listy sterowników drukarek:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Nie można uzyskać cech drukarki:"
-
-msgid "Unable to get printer list:"
-msgstr "Nie można uzyskać listy drukarek:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Nie można uzyskać statusu drukarki:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Nie można zmienić klasy:"
-
-msgid "Unable to modify printer:"
-msgstr "Nie można zmienić drukarki:"
-
-msgid "Unable to move job"
-msgstr "Nie można przenieść zlecenia"
-
-msgid "Unable to move jobs"
-msgstr "Nie można przenieść zadań"
-
-msgid "Unable to open PPD file"
-msgstr "Nie można otworzyć pliku PPD"
-
-msgid "Unable to open PPD file:"
-msgstr "Nie można otworzyć pliku PPD:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Nie można otworzyć pliku cupsd.conf:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Nie można wydrukować strony testowej:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Nie można ustawić opcji:"
-
-msgid "Unable to set server default:"
-msgstr "Nie można ustalić domyślnych parametrów serwera:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Nie można wysłać pliku cupsd.conf:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Brak uwierzytelnienia"
-
-msgid "Units"
-msgstr "Jednostki"
-
-msgid "Unknown"
-msgstr "Nieznane"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Nieznane printer-error-policy \"%s\"!"
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Nieznane printer-op-policy \"%s\"."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Nieobsługiwany rodzaj wartości"
-
-msgid "Upgrade Required"
-msgstr "Wymagane uaktualnienie"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Wartość używa nieskończonej długości"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind używa nieskończonej długości"
-
-msgid "Version uses indefinite length"
-msgstr "Version używa nieskończonej długości"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Tak"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Aby uzyskać dostęp do tej strony, użyj URL <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "Drukarka etykiet ZPL"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "przerwane"
-
-msgid "canceled"
-msgstr "anulowane"
-
-msgid "completed"
-msgstr "zakończone"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "Nie powiodło się wykonanie cups-deviced."
-
-msgid "cups-driverd failed to execute."
-msgstr "Nie powiodło się wykonanie cups-driverd."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index używa nieskończonej długości"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status używa nieskończonej długości"
-
-msgid "held"
-msgstr "wstrzymane"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "bezczynna"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "oczekujÄ…ce"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "przetwarzane"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id używa nieskończonej długości"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "użycie stat z %s nie powiodło się: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "zlecenie zatrzymane"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "nieznane"
-
-msgid "untitled"
-msgstr "nienazwane"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings używa nieskończonej długości"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(wszystko)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(brak)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d wpisów\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tPo niepowodzeniu: kontynuuj\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tAlarmy:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tBanner jest wymagany\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tZestawy znaków:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tPołączenie: bezpośrednie\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tPołączenie: zdalne\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tDomyślny rozmiar strony:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tDomyślny stopień:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tDomyślne ustawienia portu:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tOpis: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tFormularz zamontowany od:\n"
-#~ "\tRodzaje zawartości: dowolne\n"
-#~ "\tRodzaje drukarek: nieznane\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tDozwolone formularze:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tInterfejs: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tInterfejs: %s/interfejsy/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tInterfejs: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tPołożenie: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tPrzy niepowodzeniu: brak alarmu\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tDozwoleni użytkownicy:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tZabronieni użytkownicy:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tdemon jest obecny\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tbrak wpisów\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tdrukarka jest urządzeniem \"%s\" prędkość -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tdrukowanie jest wyłączone"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tdrukowanie jest włączone\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tw kolejce dla%s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tkolejka jest wyłączona\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tkolejka jest włączona\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tnieznana przyczyna\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " SZCZEGÓÅOWE WYNIKI TESTU ZGODNOÅšCI\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: strona 15, sekcja 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: strona 15, sekcja 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: strona 19, sekcja 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: strona 20, sekcja 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: strona 27, sekcja 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: strona 42, sekcja 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: strony 16-17, sekcja 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: strony 42-45, sekcja 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: strony 45-46, sekcja 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: strony 48-49, sekcja 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: strony 52-54, sekcja 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f bajtów\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " SUKCES Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " SUKCES DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " SUKCES DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " SUKCES FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " SUKCES FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " SUKCES LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " SUKCES LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " SUKCES Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " SUKCES ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " SUKCES NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " SUKCES PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " SUKCES PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " SUKCES PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " SUKCES PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " SUKCES Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " SUKCES ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE \"%s %s\" jest w konflikcie z \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " OSTRZEŻENIE %s nie posiada odpowiadających opcji!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE %s współdzieli wspólny przedrostek z %s\n"
-#~ " REF: strona 15, sekcja 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " OSTRZEŻENIE Konflikt domyślnych wyborów!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE Podwójna opcja słowo kluczowe %s może nie działać "
-#~ "w spodziewany sposób i powinno nosić nazwę Podwójne!\n"
-#~ " REF: strona 122, sekcja 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE Plik zawiera mieszaninę zakończeń wierszy CR, LF i "
-#~ "CR LF!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE LanguageEncoding jest wymagane przez specyfikację "
-#~ "PPD 4.3.\n"
-#~ " REF: strony 56-57, sekcja 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " OSTRZEŻENIE Wiersz %d zawiera wyłącznie białe spacje!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE Manufacturer jest wymagane przez specyfikację PPD "
-#~ "4.3.\n"
-#~ " REF: strony 58-59, sekcja 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " OSTRZEŻENIE Brakujący plik APDialogExtension \"%s\"\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " OSTRZEŻENIE Brakujący plik APPrinterIconPath \"%s\"\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE Pliki PPD nie przeznaczone dla Windows powinny "
-#~ "używać tylko zakończeń wierszy LF, nie CR LF!"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE Przestarzała wersja PPD %.1f!\n"
-#~ " REF: strona 42, sekcja 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE PCFileName dłuższa niż 8.3 narusza specyfikację "
-#~ "PPD.\n"
-#~ " REF: strony 61-62, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE Protokoły zawierają PJL, ale cechy JCL nie są "
-#~ "ustawione.\n"
-#~ " REF: strony 78-79, sekcja 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE Protokoły zawierają zarówno PJL jak i BCP, "
-#~ "oczekiwano TBCP.\n"
-#~ " REF: strony 78-79, sekcja 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " OSTRZEŻENIE ShortNickName jest wymagana przez specyfikację PPD "
-#~ "4.3.\n"
-#~ " REF: strony 64-65, sekcja 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s nie istnieje!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Zły wybór %s, %s!\n"
-#~ " REF: strona 122, sekcja 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Nieprawidłowy UTF-8 łańcucha tekstowegi tłumaczenia \"%s\" dla "
-#~ "opcji %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Nieprawidłowy UTF-8 łańcucha tekstowego tłumaczenia \"%s\" dla "
-#~ "opcji %s, wybór %s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Błędna wartość cupsFilter \"%s\"!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s Nieprawidłowy profil cupsICCProfile %s!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Błędna wartość cupsPreFilter \"%s\"!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Błędna wartość cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Błędny język \"%s\"!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s Puste cupsUIConstraints %s!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Brakujący łańcuch tekstowy tłumaczenia \"%s\" dla opcji %s!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Brakujący łańcuch tekstowy tłumaczenia \"%s\" dla opcji %s, "
-#~ "wybór %s!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Brakujący wybór *%s %s w UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Brakujący wybór *%s %s w cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s BrakujÄ…cy plik cupsFilter \"%s\"!\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s BrakujÄ…cy plik cupsICCProfile \"%s\"!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s BrakujÄ…cy plik cupsPreFilter \"%s\"!\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s BrakujÄ…cy cupsUIResolver %s!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s BrakujÄ…ca opcja %s w UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s BrakujÄ…ca opcja %s w cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s Brak podstawowego tłumaczenia \"%s\" zawartego w pliku!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s WYMAGANE %s nie defuniuje wyboru Brak!\n"
-#~ " REF: strona 122, sekcja 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s cupsICCProfile %s skrót koliduje z %s!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s powoduje pętlę!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **PROBLEM** %s nazwy wyborów %s i %s różnią się tylko wielkością "
-#~ "liter!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **PROBLEM** %s musi być 1284DeviceID!\n"
-#~ " REF: strona 72, sekcja 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **PROBLEM** BÅĘDNA wartość Default%s %s\n"
-#~ " REF: strona 40, sekcja 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **PROBLEM** BÅĘDNA wartość DefaultImageableArea %s!\n"
-#~ " REF: strona 102, sekcja 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **PROBLEM** BÅĘDNA wartość DefaultPaperDimension %s!\n"
-#~ " REF: strona 103, sekcja 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **PROBLEM** BÅĘDNA wartość wÅ‚aÅ›ciwoÅ›ci JobPatchFile w pliku\n"
-#~ " REF: strona 24, sekcja 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **PROBLEM** BÅĘDNA wartość Manufacturer (powinno być \"HP\")\n"
-#~ " REF: strona 211, tablica D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **PROBLEM** BÅĘDNA wartość Manufacturer (powinno być \"Oki\")\n"
-#~ " REF: strona 211, tablica D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** BÅĘDNA wartość ModelName - \"%c\" nie jest zezwolone w "
-#~ "ciągu znaków.\n"
-#~ " REF: strony 59-60, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** BÅĘDNE PSVersion - nie jest \"(string) int\".\n"
-#~ " REF: strony 62-64, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** BÅĘDNE Product - nie jest \"(string)\".\n"
-#~ " REF: strona 62, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** BÅĘDNE ShortNickName - dÅ‚uższe niż 31 znaków.\n"
-#~ " REF: strony 64-65, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **PROBLEM** Błędny %s wybór %s!\n"
-#~ " REF: strona 84, sekcja 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** Nieprawidłowe FileVersion \"%s\"\n"
-#~ " REF: strona 56, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** Nieprawidłowe FormatVersion \"%s\"\n"
-#~ " REF: strona 56, sekcja 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **PROBLEM** Błędna wartość LanguageEncoding %s - musi być "
-#~ "ISOLatin1!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr ""
-#~ " **PROBLEM** Błędna wartość LanguageVersion %s - musi być "
-#~ "angielski!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr ""
-#~ " **PROBLEM** Nie można zinterpretować domyślnego kodu opcji: %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **PROBLEM** Domyślny łańcuch tekstowy tłumaczenia dla opcji %s "
-#~ "wyboru %s zawiera 8 bitowe znaki!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **PROBLEM** Nie można zinterpretować domyślnego kodu opcji: %s\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **PROBLEM** Nazwy grup %s i %s różnią się tylko wielkością liter!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FAIL** Wielokrotne wystÄ…pienia nazwy wyboru %s, %s!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **PROBLEM** Nazwy opcji %s i %s różnią się tylko wielkością "
-#~ "liter!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE Default%s\n"
-#~ " REF: strona 40, sekcja 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE DefaultImageableArea\n"
-#~ " REF: strona 102, sekcja 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE DefaultPaperDimension\n"
-#~ " REF: strona 103, sekcja 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE FileVersion\n"
-#~ " REF: strona 56, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE FormatVersion\n"
-#~ " REF: strona 56, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE ImageableArea for PageSize %s\n"
-#~ " REF: strona 41, sekcja 5.\n"
-#~ " REF: strona 102, sekcja 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE LanguageEncoding\n"
-#~ " REF: strony 56-57, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE LanguageVersion\n"
-#~ " REF: strony 57-58, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** WYMAGANE Manufacturer\n"
-#~ " REF: strony 58-59, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** WYMAGANE ModelName\n"
-#~ " REF: strony 59-60, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE NickName\n"
-#~ " REF: strona 60, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE PCFileName\n"
-#~ " REF: strony 61-62, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE PSVersion\n"
-#~ " REF: strony 62-64, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE PageRegion\n"
-#~ " REF: strona 100, sekcja 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE PageSize\n"
-#~ " REF: strona 41, sekcja 5.\n"
-#~ " REF: strona 99, sekcja 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE PageSize\n"
-#~ " REF: strony 99-100, sekcja 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE PaperDimension dla PageSize %s\n"
-#~ " REF: strona 41, sekcja 5.\n"
-#~ " REF: strona 103, sekcja 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE Product\n"
-#~ " REF: strona 62, sekcja 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **PROBLEM** WYMAGANE ShortNickName\n"
-#~ " REF: strony 64-65, sekcja 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " ZNALEZIONO %d BÅĘDÓW\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " Błędna wartość %%%%BoundingBox: w wierszu %d!\n"
-#~ " REF: strona 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " Błędna wartość %%%%Page: w wierszu %d!\n"
-#~ " REF: strona 53, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " Błędna wartość %%%%Pages: w wierszu %d!\n"
-#~ " REF: strona 43, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " Wiersz %d jest dłuższy niż 255 znaków (%d)!\n"
-#~ " REF: strona 25, Długość wiersza\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " BrakujÄ…ce %!PS-Adobe-3.0 w pierwszym wierszu!\n"
-#~ " REF: strona 17, 3.1 Podporządkowywanie dokumentów\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " BrakujÄ…cy komentarz %%EndComments!\n"
-#~ " REF: strona 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " Brakujący lub błędny komentarz %%BoundingBox:!\n"
-#~ " REF: strona 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " Brakujące lub błędne komentarze %%Page:!\n"
-#~ " REF: strona 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " Brakujący lub błędny komentarz %%Pages:!\n"
-#~ " REF: strona 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " NIE ZNALEZIONO BÅĘDÓW\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " Znaleziono %d wierszy przekraczających 255 znaków!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " Zbyt wiele komentarzy %%BeginDocument!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " Zbyt wiele komentarzy %%EndDocument!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Ostrzeżenie: plik zawiera dane binarne!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Ostrzeżenie: brak komentarza %%EndComments w pliku!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Ostrzeżenie: przestarzała wersja DSC %.1f w pliku!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FAIL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **PROBLEM** Nie można otworzyć pliku PPD - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " PROBLEM\n"
-#~ " **PROBLEM** Nie można otworzyć pliku PPD - %s w wierszu %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " SUKCES\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "Koperta #10"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "Koperta #11"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "Koperta #12"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "Koperta #14"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "Koperta #9"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bajtów"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f bajtów\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s akceptuje żądania od %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s nie jest zaimplementowane przez lpc w wersji CUPS.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s nie jest gotowe\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s jest gotowe\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s jest gotowe i drukuje\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s nie akceptuje żądań od %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s jest nieobsługiwane!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s akceptuje żądania od %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s nie akceptuje żądań od %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [zlecenie %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s nie powiodło się: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: nie wiem co robić!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: błąd - %s nazw zmiennych środowiskowych z nieistniejącym celem \"%s"
-#~ "\"!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: błąd - błędny ID zlecenia!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: błąd - nie można jednocześnie drukować plików i zmieniać zlecenia!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: błąd - nie można drukować ze standardowego wejścia, jeśli dostarczone "
-#~ "sÄ… pliki lub ID zlecenia!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: błąd - oczekiwany zestaw znaków po opcji \"-S\"!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: błąd - oczekiwany typ zawartości po opcji \"-T\"!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: błąd - oczekiwane kopie po opcji \"-n\"!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: błąd - oczekiwany licznik kopii po opcji \"-#\"!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: błąd - oczekiwany cel po opcji \"-P\"!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: błąd - oczekiwany cel po opcji \"-b\"!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: błąd - oczekiwany cel po opcji \"-d\"!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: błąd - oczekiwana forma po opcji \"-f\"!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: błąd - oczekiwana wstrzymana nazwa po opcji \"-H\"!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: błąd - oczekiwana nazwa komputera po opcji \"-H\"!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: błąd - oczekiwana nazwa komputera po opcji \"-h\"!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: błąd - oczekiwana lista trybów po opcji \"-y\"!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: błąd - oczekiwana nazwa po opcji \"-%c\"!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: błąd - oczekiwany łańcuch tekstowy opcji po opcji \"-o\"!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: błąd - oczekiwana lista stron po opcji \"-P\"!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: błąd - oczekiwany priorytet po opcji \"-%c\"!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: błąd - oczekiwany tekst przyczyny po opcji \"-r\"!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: błąd - oczekiwany tytuł po opcji \"-t\"!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: błąd - oczekiwana nazwa użytkownika po opcji \"-U\"!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: błąd - oczekiwana nazwa komputera po opcji \"-u\"!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: błąd - oczekiwana wartość po opcji \"-%c\"!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: błąd - wymagane jest \"completed\", \"not-completed\" lub \"all\" po -"
-#~ "W!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: błąd - brak dostępnego domyślnego celu.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: błąd - priorytet musi być między 1 a 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: błąd - planista nie odpowiada!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: błąd - za dużo plików - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: błąd - nie można uzyskać dostępu do \"%s\" - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: błąd - nie można wykonać kolejki z stdin - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: błąd - nieznany cel \"%s\"!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: błąd - nieznany cel \"%s/%s\"!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: błąd - nieznana opcja \"%c\"!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: błąd - nieznana opcja '%s'!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: oczekiwany ID zlecenia po opcji \"-i\"!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: filtr \"%s\" jest niedostępny: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: nieprawidłowa nazwa celu na liście \"%s\"!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: nieprawidłowy łańcuch filtra \"%s\"\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr ""
-#~ "%s: wymagany jest ID zlecenia (\"-i id_zlecenia\") po \"-H restart\"!"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: brak filtra do konwersji z %s/%s na %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: operacja nie powiodła się: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: niestety, nie wkompilowano obsługi szyfowania!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: nie można połączyć się z serwerem\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: nie można skontaktować się z serwerem!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: nie można określić typu MIME \"%s\"!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: nie można otworzyć %s - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: nie można otworzyć %s - %s on line %d.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: nie można otworzyć %s: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: nie można otworzyć pliku PPD: %s on line %d\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: nie można odczytać bazy danych MIME z \"%s\" lub \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: nieznany cel \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: nieznany cel rodzaju MIME %s/%s!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: nieznana opcja \"%c\"!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: nieznane źródło rodzaju MIME %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: ostrzeżenie - modyfikator formatu \"%c\" jest nieobsługiwany - "
-#~ "wyjście może nie być prawidłowe!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: ostrzeżenie - opcja zestawu znaków została zignorowana!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: ostrzeżenie - opcja rodzaju zawartości została zignorowana!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: ostrzeżenie - opcja formularza została zignorowana!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: ostrzeżenie - opcja trybu została zignorowana!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: błąd - %s nazw zmiennych środowiskowych z nieistniejącym celem \"%s"
-#~ "\"!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: błąd - oczekiwana opcja=wartość po opcji \"-o\"!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: błąd - brak dostępnego domyślnego celu.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 DPI (szarości)"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Nieprawidłowe, nieznane polecenie pomocy\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "Hasło Samby jest wymagany, aby wyeksportować sterowniki drukarek!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr ""
-#~ "Nazwa użytkownika Samby jest wymagana, aby wyeksportować sterowniki "
-#~ "drukarek!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Klasa o nazwie \"%s\" już istnieje!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Drukarka o nazwie \"%s\" już istnieje!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (oversize)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (oversize)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (mały)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (oversize)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "Próba ustawienia błędnej wartości %2$d printer-state %1$s!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Grupy właściwości są nieuporządkowane (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "Błędny URI urządzenia \"%s\"!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "Błędne device-uri \"%s\"!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Błędny schemat device-uri \"%s\"!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "Błędne document-format \"%s\"!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Błędny bufor nazwy pliku!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Błędny atrybut czcionki: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Błędna wartość job-priority!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Błędna wartość job-sheets \"%s\"!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Błędny rodzaj wartości job-sheets!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Błędna wartość job-state!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Błędna właściwość job-uri \"%s\"!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Błędne notify-pull-method \"%s\"!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "Błędne notify-recipient-uri URI \"%s\"!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Błędna opcja + wybór w wierszu %d!\n"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Błędne port-monitor \"%s\"!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Błędna wartość printer-state %d!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Błędny numer wersji żądania %d.%d!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "Błędne ID subskrypcji."
-
-#~ msgid "C0 Envelope"
-#~ msgstr "Koperta C0"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "Koperta C1"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "Koperta C2"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "Koperta C3"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "Koperta C4"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "Koperta C5"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "Koperta C6"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "Koperta C65"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "Koperta C7"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Zestaw znaków \"%s\" jest nieobsługiwany!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Koperta Chou3"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Koperta Chou4"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Polecenia mogą być skracane. Poleceniami są:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Nie można przeskanować rodzaju \"%s\"!"
-
-#~ msgid "Cover open."
-#~ msgstr "Pokrywa jest otwarta."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "Koperta DL"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Wywoływacz jest niemal pusty."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Wywoływacz jest pusty!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "UrzÄ…dzenie: uri = %s\n"
-#~ " klasa = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " lokalizacja = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Dokument %d nie znaleziony w zleceniu %d."
-
-#~ msgid "Door open."
-#~ msgstr "Drzwi otwarte."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Podwójna pocztówka"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: Nie można przydzielić pamięci dla informacji strony: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: Nie można przydzielić pamięci dla tablicy stron: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: znaleziono nieprawidłowy komentarz %%BoundingBox:!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: nieprawidłowy komentarz %%IncludeFeature:!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: nieprawidłowy komentrza %%Page: w pliku!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: nieprawidłowy komentarz %%PageBoundingBox: w pliku!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Błędny plik urządzenia SCSI \"%s\"!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: nieprawidłowy plik zestawu znaków %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: nieprawidłowy rodzaj zestawu znaków %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: nieprawidłowa wartość kolumn %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: nieprawidłowa wartość cpi %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: nieprawidłowy wiersz opisu czcionki: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: nieprawidłowa wartość lpi %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: nieprawidłowe ustawienie strony!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: nieprawidłowy kierunek tekstu %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: nieprawidłowa szerokość tekstu %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: docelowa drukarka nie istnieje!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: znaleziono wielokrotny komentarz %%BoundingBox:!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: znaleziono wielokrotny komentarz %%Pages:!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: pusty plik druku!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: błąd %d podczas wysyłania żądania PAPSendData: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: spodziewany cytowany znak w linii %d w %s!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: błąd krytyczny USB!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: znaleziono nieprawidłowy komentarz HP-GL/2, nie można wydrukować "
-#~ "pliku!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: brakujÄ…cy %%EndProlog!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: brakujÄ…cy %%EndSetup!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: brak URI urządzenia w wierszu poleceń i zmiennej środowiska "
-#~ "DEVICE_URI!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: brakująca wartość w linii %d pliku bannera!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: potrzebna linia msgid przed ciągami tłumaczeń w linii %d w %s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: brak komentarza %%BoundingBox: w nagłówku!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: brak komentarza %%Pages: w nagłówku!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: nie znaleziono URI urządzenia w argv[0] lub w zmiennej środowiska "
-#~ "DEVICE_URI!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: brak czcionek w pliku zestawu znaków %s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: nie znaleziono żadnych stron!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: brak papieru!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: zmienna środowiska PRINTER nie została określona!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: plik wydruku nie został zaakceptowany (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: drukarka nie odpowiada\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: drukarka nie odpowiada!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: drukarka wysłała niespodziewany EOF\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: serwer zdalny nie zaakceptował pliku kontrolnego (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: serwer zdalny nie zaakceptował pliku danych (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: wystąpił błąd upływu limitu czasu podczas wysyłania danych do "
-#~ "drukarki\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: nie można dodać pliku %d do zlecenia: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: nie można anulować zlecenia %d: %s/n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: nie można skopiować pliku PDF"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: nie można utworzyć gniazda"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: nie można utworzyć skompresowanego tymczasowego pliku wydruku: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: nie można utworzyć pliku tymczasowego"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: nie można utworzyć pliku tymczasowego - %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: nie można utworzyć pliku tymczasowego: %s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: nie można wykonać pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: nie można wykonać programu gs"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: nie można wykonać programu pdftops"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: nie można rozdzielić pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: nie można uzyskać żądania PAP"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: nie można uzyskać odpowiedzi PAP"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr "ERROR: brak pliku PPD dla drukarki \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: nie można uzyskać domyślnej strefy AppleTalk"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: nie można uzyskać cech zlecenia %d (%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: nie można uzyskać stanu drukarki (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: nie można znaleźć drukarki \"%s\"!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: nie można wyszukać odpowiedzi PAP"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: nie można znaleźć drukarek AppleTalk"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: nie można utworzyć adresu AppleTalk"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: nie można otworzyć \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: nie można otworzyć %s: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: nie można otworzyć pliku bannera \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: nie można otworzyć pliku urządzenia \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: nie można otworzyć pliku \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: nie można otworzyć pliku \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: nie można otworzyć do druku pliku obrazka!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: nie można otworzyć pliku wydruku \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: nie można otworzyć pliku wydruku %s - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: nie można otworzyć pliku wydruku %s: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: nie można otworzyć tymczasowego skompresowanego pliku wydruku: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: nie można otworzyć pliku tymczasowego"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: nie można wydrukować %d łamów tekstu!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: nie można wydrukować %dx%d strony tekstu!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: nie można odczytać danych druku"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: nie można odczytać danych druku!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: nie można zarezerwować portu"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: nie można przejść do wiersza %ld w pliku - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: nie można przejść do wiersza %lld w pliku - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: nie można wysłać polecenia LPD"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: nie można wysłać żądania PAP tickle"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: nie można wysłać początkowego żądania wysyłania danych PAP"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: nie można wysłać danych drukowania (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: nie można wysłać danych druku!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: nie można wysłać pliku do drukarki"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: nie można wysłać początkowego zera do drukarki"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: nie można czekać na pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: nie można zapisać %d bajtów do \"%s\":%s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: nie można zapisać %d bajtów do drukarki!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: nie można zapisać pliku kontrolnego"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: nie można zapisać danych druku"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: nie można zapisać danych druku: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: nie można zapisać zrastrowanych danych do sterownika!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: nie można zapisać do pliku tymczasowego"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: nie można zapisać nieskompresowanych danych dokumentu: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: niespodziewany tekst w linii %d w %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: nieznana wartość opcji szyfrowania \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: nieznany porządek plików \"%s\"\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: nieznany znak formatujÄ…cy \"%c\"\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: nieznany format katalogu wiadomości \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: nieznana opcja \"%s\" o wartości \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: nieznany tryb druku \"%s\"\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: nieznana wartość opcji wersji \"%s\"!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr ""
-#~ "ERROR: nieobsługiwana wartość jasności %s, korzystam z jasności=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: nieobsługiwana wartość gamma %s, korzystam z gamma=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr ""
-#~ "ERROR: nieobsługiwana wartość liczby kopii %d, korzystam z liczby "
-#~ "kopii=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: nieobsługiwana liczba powtórzeń makiety %s, korzystam z liczby "
-#~ "powtórzeń makiety=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: nieobsługiwana wartość ramki strony %s, korzystam z ramki "
-#~ "strony=brak!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: wykryto przepełnienie doc_printf (%d bajtów), przerywam!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: filtr pdftops przerwał działanie po sygnale %d!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: filtr pdftops zakończył działanie ze stanem %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: zakończono pictwpstops po sygnale %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: zakończono pictwpstops ze stanem %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: usuwalny: nie można się połączyć z drukarką; ponowienie próby "
-#~ "nastąpi za 30 sekund…\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: nieudane select()"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: nie można utworzyć statusu pliku drukowania"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Pusty plik PPD!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Błąd: wymagana jest nazwa serwera po opcji \"-h\"!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "PROBLEM\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "URI pliku urządzenia zostało wyłączone! Aby włączyć, zobacz dyrektywę "
-#~ "FileDevice w \"%s/cupsd.conf\"."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Wysoka temperatura wygrzewacza!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Niska temperatura wygrzewacza!"
-
-#~ msgid "German FanFold"
-#~ msgstr "German FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "German FanFold Legal"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Otrzymano właściwość printer-uri, ale bez job-id!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk wyłączone w Preferencjach systemowych\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk wyłączone w Preferencjach systemowych.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: przerywam zlecenie drukowania…\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: połączony z drukarką...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: łączę z drukarką...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: udane wysłanie pliku kontrolnego\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: udane wysłanie pliku danych\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: formatuję stronę %d…\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: wczytuję plik obrazka…\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: szukam drukarki...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: otwieram połączenie\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: wysłano plik drukowania, czekam na zakończenie pracy drukarki…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: drukarka jest zajęta; ponowię próbę za 10 sekund…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: drukarka jest zajęta; ponowię próbę za 30 sekund…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: drukarka jest zajęta; ponowę próbę za 5 sekund…\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr "INFO: drukarka nie obsługuje IPP/%d.%d, próbuję IPP/1.0...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: drukarka jest zajęta; ponowię próbę za 5 sekund…\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: drukarka jest wyłączona.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: drukarka nie jest obecnie w trybie gotowości.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: drukarka jest w trybie gotowości.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: drukarka nie jest w trybie gotowości.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: drukarka nie jest podłączona; ponowię próbę za 30 sekund…\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: drukuję stronę %d, %d%% zakończonych…\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: drukuję stronę %d…\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: gotowy do drukowania.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: wysyłam plik kontrolny (%lu bajtów)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: wysyłam plik kontrolny (%u bajtów)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: wysyłam dane\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: wysyłam plik danych (%ld bajtów)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: wysyłam plik danych (%lld bajtów)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: wysyłam dane wydruku...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: wysyłam plik drukowania, %ld bajtów…\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: wysyłam plik drukowania, %lld bajtów…\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: Składuję zlecenie LPR, %.0f%% zakończono…\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: nie można skontaktować się z drukarką, ustawiam w kolejce następnej "
-#~ "drukarki tej klasy…\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: używam domyślnej strefy AppleTalk \"%s\"\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: czekam na zakończenie zlecenia…\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: czekam, aż drukarka stanie się dostępna...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "Koperta ISO B4"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (Oversize)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "Koperta ISO B5"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "Koperta ISO B6"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Tusz lub toner jest niemal pusty."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Tusz lub toner skończył się!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Zbiornik zużytego atramentu lub tonera jest niemal pełny."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Zbiornik zużytego atramentu lub tonera jest pełny!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Rygiel jest otwarty."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Koperta zaproszenia"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Koperta włoska"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "Zlecenie #%d nie może zostać ponownie uruchomione - brak plików!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "Zlecenie #%d nie istnieje!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "Zlecenie #%d zostało zakończone i nie może zostać zmienione!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "Zlecenie #%d nie zostało zakończone!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "Zlecenie #%d nie zostało wstrzymane do uwierzytelnienia!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "Zlecenie #%d nie zostało wstrzymane!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "Zlecenie #%s nie istnieje!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Nie znaleziono zlecenia %d!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Subskrypcje zlecenia nie mogą zostać ponowione!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Koperta Kaku2"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Koperta Kaku3"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Język \"%s\" jest nieobsługiwany!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Zacięcie nośnika!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Podajnik nośnika jest niemal pusty."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Podajnik nośnika jest pusty!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Brak podajnika nośnika!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Trzeba napełnić podajnik nośnika."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "BrakujÄ…cy atrybut document-number!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Brakujący cudzysłów w wierszu %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "BrakujÄ…ca zmienna formularza!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "BrakujÄ…ca cecha notify-subscription-ids!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Brakuje cecha requesting-user-name!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Brakuje wymaganych cech!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Brakująca wartość w wierszu %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Koperta Monarch"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: zaakceptowano plik druku - ID zlecenia %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: zaakceptowano plik drukowania - nieznane ID zlecenia.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Brak nazwy PPD!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Brak zainstalowanych sterowników drukarek dla Windows!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Brak aktywnych zadań na %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Brak cech w żądaniu!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Nie dostarczono informacji o uwierzytelnianiu!"
-
-#~ msgid "No default printer"
-#~ msgstr "Brak domyślnej drukarki"
-
-#~ msgid "No file!?!"
-#~ msgstr "Brak pliku?!?"
-
-#~ msgid "No modification time!"
-#~ msgstr "Brak czasu zmiany!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Brak nazwy drukarki!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Nie znaleziono printer-uri dla tej klasy!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Nie znaleziono printer-uri!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Żądanie nie zawiera printer-uri!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Brak cech subskrypcji w żądaniu!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC jest niemal zużyty."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC jest zużyty!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Brak tonera!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Odbiornik jest niemal pełny."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Odbiornik jest pełny!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "Wyjście dla drukarki %s zostało wysłane do %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Wyjście dla drukarki %s zostało wysłane do zdalnej drukarki %s na %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "Wyjście dla drukarki %s/%s zostało wysłane do %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Wyjście dla drukarki %s/%s zostało wysłane do zdalnej drukarki %s na %s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Brak odbiornika!"
-
-#~ msgid "PASS\n"
-#~ msgstr "SUKCES\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "Koperta PRC1"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "Koperta PRC10"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "Koperta PRC2"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "Koperta PRC3"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (oversize)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "Koperta PRC4"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "Koperta PRC5"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "Koperta PRC6"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "Koperta PRC7"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "Koperta PRC8"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "Koperta PRC9"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Koperta osobista"
-
-#~ msgid "Printer offline."
-#~ msgstr "Drukarka nie gotowa."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Kolejność Właściciel Zlecenie Pliki "
-#~ "Całkowity rozmiar\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Kolejność Właściciel Drukowanie Zlecenie "
-#~ "Pliki Całkowity rozmiar\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Uruchamiam polecenie: %s %s -N -A %s -c \"%s\"\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "Drukarka SCSI"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tabloid (oversize)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "Wartość notify-user-data jest za duża (%d > 63 oktety)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "Drukarka lub klasa nie jest udostępniana!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "Drukarka lub klasa nie została znaleziona."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "Wymagana jest cecha printer-uri!"
-
-#~ msgid "Toner low."
-#~ msgstr "Niski poziom tonera."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "Zbyt wiele wartości job-sheets (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "Zbyt wiele wartości printer-state-reasons (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "US Executive"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US Legal (Oversize)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US Letter (Oversize)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US Letter (Small)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Nie można dodać zlecenia do celu \"%s\"!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Nie można przydzielić pamięci dla rodzaju plików!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Nie można skopiować 64 bitowych plików sterowników drukarek CUPS (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr ""
-#~ "Nie można skopiować 64 bitowych plików sterowników drukarek Windows (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "Nie można skopiować plików sterowników drukarek CUPS (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Nie można skopiować pliku PPD - %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Nie można skopiować pliku PPD!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr "Nie można skopiować plików sterowników drukarek Windows 2000 (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "Nie można skopiować plików sterowników drukarek Windows 9x (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Nie można skopiować skryptu interfejsu - %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Nie można utworzyć printer-uri!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "Nie można zmienić plików cupsd.conf większych niż 1MB!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Nie można znaleźć celu dla zlecenia!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Nie można znaleźć drukarki!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Nie można zainstalować plików sterowników drukarek Windows 2000 (%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr "Nie można zainstalować plików sterowników drukarek Windows 9x (%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Nie można otworzyć dokumentu %d w zleceniu %d!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Nie można uruchomić \"%s\": %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Nie można wysłać polecenia do sterownika drukarki!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Nie można ustawić sterownika drukarki Windows (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Nie można użyć starszego sterownika USB!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Nieznany błąd drukarki (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Nieobsługiwany zestaw znaków \"%s\"!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Nieobsługiwana kompresja \"%s\"!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Nieobsługiwana cecha kompresji %s!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Nieobsługiwany format \"%s\"!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Nieobsługiwany format \"%s\"!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Nieobsługiwany format \"%s/%s\"!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Użycie:\n"
-#~ "\n"
-#~ " lpadmin [-h serwer] -d cel\n"
-#~ " lpadmin [-h serwer] -x cel\n"
-#~ " lpadmin [-h serwer] -p drukarka [-c dodaj-klasÄ™] [-i interfejs] [-m "
-#~ "model]\n"
-#~ " [-r usuń-klasę] [-v urządzenie] [-D opis]\n"
-#~ " [-P plik-ppd] [-o nazwa=wartość]\n"
-#~ " [-u zezwól:użytkownik,użytkownik] [-u zabroń:"
-#~ "użytkownik,użytkownik]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Użycie: %s zlecenie użytkownik tytuł liczba_kopii opcje [plik]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Użycie: %s id_zlecenia użytkownik tytuł liczba_kopii opcje [plik]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Użycie: %s id_zlecenia użytkownik tytuł liczba_kopii opcje plik\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Użycie: convert [ opcje ]\n"
-#~ "\n"
-#~ "Opcje:\n"
-#~ "\n"
-#~ " -f plik Wybiera plik do konwersji (gdy pominięte, przyjmuje "
-#~ "stdin)\n"
-#~ " -o plik Wybiera plik do wygenerowania (gdy pominięte, "
-#~ "przyjmuje stdout)\n"
-#~ " -i typ/MIME Typ MIME na wejściu (gdy pominięte, przyjmowany "
-#~ "automatycznie)\n"
-#~ " -j typ/MIME Typ MIME na wyjściu (gdy pominięte, przyjmowany "
-#~ "application/pdf)\n"
-#~ " -P plik.ppd Plik PPD\n"
-#~ " -a 'nazwa=wartość ...' Wybiera opcje\n"
-#~ " -U użytkownik Wybiera nazwę użytkownika dla zlecenia\n"
-#~ " -J tytuł Ustala tytuł\n"
-#~ " -c kopie Ustala liczbÄ™ kopii\n"
-#~ " -u Usuń plik PPD po zakończeniu\n"
-#~ " -D Usuń plik wejściowy po zakończeniu\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Użycie: cupsaddsmb [opcje] drukarka1 ... drukarkaN\n"
-#~ " cupsaddsmb [opcje] -a\n"
-#~ "\n"
-#~ "Opcje:\n"
-#~ " -E Szyfruj połączenie z serwerem\n"
-#~ " -H serwer_samba Użyj nazwy serwera SAMBA\n"
-#~ " -U użytkownik_samba Uwierzytelnienie nazwą użytkownika SAMBA\n"
-#~ " -a Eksportuj wszystkie drukarki\n"
-#~ " -h serwer_cups Użyj nazwy serwera CUPS\n"
-#~ " -v Podgląd (wyświetla polecenia)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Użycie: cupsctl [opcje] [param=wartość ... paramN=wartośćN]\n"
-#~ "\n"
-#~ "Opcje:\n"
-#~ "\n"
-#~ " -E Włącz szyfrowanie\n"
-#~ " -U nazwa_użytkownika Określ nazwę użytkownika\n"
-#~ " -h serwer[:port] Określ adres serwera\n"
-#~ "\n"
-#~ " --[no-]debug-logging Włącz lub wyłącz dziennik błędów\n"
-#~ " --[no-]remote-admin Włącz lub wyłącz zdalną administrację\n"
-#~ " --[no-]remote-any Pozwól lub zabroń dostęp przez Internet\n"
-#~ " --[no-]remote-printers Pokaż lub ukryj zdalne drukarki\n"
-#~ " --[no-]share-printers Włącz lub wyłącz udostępnianie drukarek\n"
-#~ " --[no-]user-cancel-any Pozwól lub zabroń użytkownikom anulowanie "
-#~ "dowolnego zlecenia\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Użycie: cupsd [-c plik-konfiguracji] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c plik-konfiguracji Wczytuje alternatywny plik konfiguracji\n"
-#~ "-f Uruchamia na pierwszym planie\n"
-#~ "-F Uruchamia na pierwszym planie, ale odłączone\n"
-#~ "-h Wyświetla wiadomości o użyciu\n"
-#~ "-l Uruchamia cupsd z launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Użycie: cupsfilter -m typ/mime [ opcje ] plik\n"
-#~ "\n"
-#~ "Opcje:\n"
-#~ "\n"
-#~ " -c cupsd.conf Wybiera plik cupsd.conf do użycia\n"
-#~ " -j job-id[,N] Filtruje plik N z podanego zlecenia (domyślnie plik "
-#~ "1)\n"
-#~ " -n kopie Ustala liczbÄ™ kopii\n"
-#~ " -o nazwa=wartość Ustala opcje\n"
-#~ " -p plik.ppd Wybiera plik PPD\n"
-#~ " -t tytuł Ustala tytuł\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Użycie: cupstestdsc [opcje] nazwapliku.ps [... nazwapliku.ps]\n"
-#~ " cupstestdsc [opcje] -\n"
-#~ "\n"
-#~ "Opcje:\n"
-#~ "\n"
-#~ " -h Wyświetla użycie programu\n"
-#~ "\n"
-#~ " Uwaga: ten program sprawdza tylko komentarze DSC, nie PostScriptowe.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Użycie: cupstestppd [options] plik1.ppd[.gz] [... plikN.ppd[.gz]]\n"
-#~ " program | cupstestppd [opcje] -\n"
-#~ "\n"
-#~ "Opcje:\n"
-#~ "\n"
-#~ " -R katalog-główny Ustala inny katalog główny\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Zwraca ostrzeżenia zamiast błędów\n"
-#~ " -q Działa bez komunikatów\n"
-#~ " -r Używaj trybu otwarcia relaxed\n"
-#~ " -v Mniej komunikatów\n"
-#~ " -vv Dużo komunikatów\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Użycie: lpmove zlecenie/źródło cel\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Użycie: lpoptions [-h serwer] [-E] -d drukarka\n"
-#~ " lpoptions [-h serwer] [-E] [-p drukarka] -l\n"
-#~ " lpoptions [-h serwer] [-E] -p drukarka -o opcja[=wartość] ...\n"
-#~ " lpoptions [-h serwer] [-E] -x drukarka\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Użycie: lppasswd [-g nazwagrupy]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Użycie: lppasswd [-g nazwagrupy] [nazwaużytkownika]\n"
-#~ " lppasswd [-g nazwagrupy] -a [nazwaużytkownika]\n"
-#~ " lppasswd [-g nazwagrupy] -x [nazwaużytkownika]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Użycie: lpq [-P cel] [-U nazwaużytkownika] [-h nazwakomputera[:port]] [-"
-#~ "l] [+przerwanie]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Użycie: ppdc [opcje] plik.drv [ ... plikN.drv ]\n"
-#~ "Opcje:\n"
-#~ " -D nazwa=wartość Przypisuje wartość nazwanej zmiennej.\n"
-#~ " -I katalog-dołączeń Dodaje katalog do ścieżki wyszukiwania.\n"
-#~ " -c katalog.po Wczytuje podany katalog komunikatów.\n"
-#~ " -d katalog-wyjściowy Wybiera katalog wyjściowy.\n"
-#~ " -l język[,język,...] Ustala języki wyjścia (locale).\n"
-#~ " -m Używa nazwy ModelName jako nazwy pliku.\n"
-#~ " -t Testuje pliki PPD zamiast je generować.\n"
-#~ " -v Dodatkowe informacje (im więcej opcji v, tym "
-#~ "więcej informacji).\n"
-#~ " -z Kompresuje plik PPD za pomocÄ… GNU zip.\n"
-#~ " --cr Znaki końca wiersza to CR (Mac OS 9).\n"
-#~ " --crlf Znaki końca wiersza to CR+LF (Windows).\n"
-#~ " --lf Znaki końca wiersza to LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Użycie: ppdhtml [opcje] plik.drv >plik.html\n"
-#~ " -D nazwa=wartość Przypisuje wartość nazwanej zmiennej.\n"
-#~ "Opcje:\n"
-#~ " -I katalog-dołączeń Dodaje katalog do ścieżki wyszukiwania.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Użycie: ppdi [opcje] plik.ppd [ ... plikN.ppd ]\n"
-#~ "Opcje:\n"
-#~ " -I katalog-dołączeń\n"
-#~ " -o plik.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Użycie: ppdmerge [opcje] plik.ppd [ ... plikN.ppd ]\n"
-#~ "Opcje:\n"
-#~ " -o plik.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Użycie: ppdpo [opcje] -o plik.po plik.drv [ ... plikN.drv ]\n"
-#~ "Opcje:\n"
-#~ " -D nazwa=wartość Przypisuje nazwanej zmiennej podaną wartość.\n"
-#~ " -I katalog-dołączeń Dodaje katalog do ścieżki wyszukiwania.\n"
-#~ " -v Dodatkowe informacje (im więcej opcji v, tym więcej "
-#~ "informacji).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Użycie: snmp [serwer_lub_adres_ip]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: dodajÄ™ tylko pierwszych %d znalezionych drukarek"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: dla opcji waiteof oczekiwano wartości logicznej \"%s\"\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: nie można odczytać żądania z kanału bocznego!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: Opcja \"%s\" nie może zostać dołączona za pomocą "
-#~ "IncludeFeature!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: drukarka nie odpowiada\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: drukarka wysłała niespodziewany EOF\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Serwer zdalny nie odpowiada bajtem statusu polecenia po %d "
-#~ "sekundach!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: zdalny serwer nie odpowiada bajtem statusu kontroli po %d "
-#~ "sekundach!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: zdalny serwer nie odpowiada bajtem statusu danych po %d "
-#~ "sekundach!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: Upłynął czas oczekiwania polecenia SCSI (%d); ponawiam…\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Ten dokument nie jest zgodny z KonwencjÄ… struktury dokumentu "
-#~ "Adobe i może nie zostać wydrukowany prawidłowo!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: nie można otworzyć \"%s:%s\": %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: nie da się wysłać żądania statusu PAP"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: niespodziewany pakiet PAP typu %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: nieznany pakiet PAP typu %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: Nieznany wybór \"%s\" dla opcji \"%s\"!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: Nieznana opcja \"%s\"!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: Nieobsługiwana częstotliwość bodów %s!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: spodziewana liczba dla opcji statusu \"%s\"\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: usuwalny: Serwer sieciowy '%s' jest zajęty; ponowię za %d "
-#~ "sekund...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr ""
-#~ "Ostrzeżenie, brak zainstalowanych sterowników drukarek Windows 2000!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "Koperta You4"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr "convert: użyj opcji -f, aby wskazać plik do konwersji.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: brak pliku PPD dla drukarki \"%s\" - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: nie można się połączyć z serwerem: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: Nieznana opcja \"%s\"!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: Nieznana opcja \"-%c\"!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: oczekiwana nazwa pliku konfiguracji po opcji \"-c\"!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: nie da się uzyskać bieżącego katalogu!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: nieznany argument \"%s\" - przerywam!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: nieznana opcja \"%c\" - przerywam!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: obsługa launchd(8) nie została wkompilowana, uruchamianie w "
-#~ "normalnym trybie.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: nieprawidłowy numer dokumentu %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: nieprawidłowy kod zlecenia %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: Może być określona tylko jedna nazwa pliku!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: nie udało się utworzyć pliku tymczasowego: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: nie da się uzyskać pliku zlecenia - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: opcja -q jest niezgodna z opcjÄ… -v.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: opcja -v jest niezgodna z opcjÄ… -q.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "urzÄ…dzenie dla %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "urzÄ…dzenie dla %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\tpomoc na temat poleceń\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "Brakuje cechy job-printer-uri!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: nazwa klasy może zawierać tylko drukowalne znaki!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: oczekiwany PPD po opcji \"-P\"!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: oczekiwane allow/deny:userlist po opcji \"-u\"!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: oczekiwana klasa po opcji \"-r\"!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: oczekiwana nazwa klasy po opcji \"-c\"!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: oczekiwany opis po pocji \"-D\"!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: oczekiwane URI urzÄ…dzenia po opcji \"-v\"!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: oczekiwane typy plików po opcji \"-I\"!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: oczekiwana nazwa komputera po opcji \"-h\"!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: oczekiwany interfejs po opcji \"-i\"!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: oczekiwane położenie po opcji \"-L\"!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: oczekiwany model po opcji \"-m\"!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: oczekiwana nazwa=wartość po opcji \"-o\"!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: oczekiwana drukarka po opcji \"-p\"!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: oczekiwana nazw drukarki po opcji \"-d\"!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: oczekiwana drukarka lub klasa po opcji \"-x\"!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: nie zobaczono żadnych nazw elementów!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: drukarka %s jest już elementem klasy %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: drukarka %s nie jest elementem klasy %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: nazwa drukarki może zawierać tylko drukowalne znaki!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: nie można dodać drukarki do klasy:\n"
-#~ " Najpierw musi zostać określona nazwa drukarki!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: nie można połączyć się do serwera: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: nie można utworzyć pliku tymczasowego - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: nie można utworzyć pliku tymczasowego: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: nie można otworzyć pliku PPD \"%s\" - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: nie można otworzyć pliku \"%s\": %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: nie można usunąć drukarki z klasy:\n"
-#~ " Najpierw musi zostać określona nazwa drukarki!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: nie można ustawić pliku PPD:\n"
-#~ " Najpierw musi zostać określona nazwa drukarki!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: nie można ustawić URI urządzenia:\n"
-#~ " Najpierw musi zostać określona nazwa drukarki!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: nie można ustawić skryptu interfejsu lub pliku PPD:\n"
-#~ " Najpierw musi zostać określona nazwa drukarki!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: nie można ustawić skryptu interfejsu:\n"
-#~ " Najpierw musi zostać określona nazwa drukarki!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " Najpierw musi zostać określona nazwa drukarki!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: nie można ustawić położenia drukarki:\n"
-#~ " Najpierw musi zostać określona nazwa drukarki!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: nie można ustawić opcji drukarki:\n"
-#~ " Najpierw musi zostać określona nazwa drukarki!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: nieznana opcja zezwól/zabroń \"%s\"!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: nieznany argument \"%s\"!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: nieznana opcja \"%c\"!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr ""
-#~ "lpadmin: ostrzeżenie - lista rodzajów zawartości została zignorowana!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo: po --device-id spodziewany jest ciÄ…g ID urzÄ…dzenia 1284!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: po --language spodziewany jest język!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: po --make-and-model spodziewana jest marka i model!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr ""
-#~ "lpinfo: po --product spodziewany jest ciÄ…g identyfikujÄ…cy producenta!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: po --exclude-schemes spodziewana jest lista schematów!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: po --include-schemes spodziewana jest lista schematów!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: po --timeout spodziewany jest limit czasu!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: nieznany argument \"%s\"!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: nieznana opcja \"%c\"!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: nieznana opcja '%s'!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: nie można połączyć się z serwerem: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: nieznany argument \"%s\"!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: nieznana opcja \"%c\"!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: brak drukarek?!?\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: nie można dodać drukarki lub przykładu: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: nie można otworzyć pliku PPD dla %s: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: nie można otworzyć pliku PPD dla %s!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: nieznana drukarka lub klasa!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: tylko root może dodać lub usunąć hasła!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: plik hasła jest zajęty!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: plik hasła nie został zaktualizowany!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: przepraszam, hasła się nie zgadzają!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: przepraszam, hasło zostało odrzucone.\n"
-#~ "Hasło musi mieć co najmniej 6 znaków, nie może zawierać nazwy\n"
-#~ "użytkownika i musi zawierać co najmniej jedną literę i liczbę.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: przepraszam, hasła się nie zgadzają!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: nie można skopiować łańcucha hasła: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: nie można otworzyć pliku hasła: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: nie można zapisać do pliku hasła: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd: utworzenie kopii zapasowej starego pliku hasła nie powiodło "
-#~ "siÄ™: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: zmiana nazwy pliku hasła nie powiodła się: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: użytkownik \"%s\" i grupa \"%s\" nie istnieją.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: błąd - %s nazw zmiennych środowiskowych z nieistniejącym celem \"%"
-#~ "s\"!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "elementy klasy %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "brak wpisów\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "brak domyślnego celu systemowego\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-even jest nieokreślone!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri URI \"%s\" jest już użyte!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "URI notify-recipient-uri \"%s\" wykorzystuje nieznany schemat!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "%d notify-subscription-id nie dobre!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: dodaję katalog dołączeń \"%s\"...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: dodajÄ™/uaktualniam tekst UI z %s...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: nieprawidłowa wartość logiczna (%s), linia %d w %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: nieprawidłowa nazwa rozdzielczości \"%s\", linia %d w %s!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: nieprawidłowe słowo kluczowe statusu %s, linia %d w %s!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: nieprawidłowe zastąpienie zmiennej ($%c), linia %d w %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: w linii %d %s jest wybór bez opcji!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: powielone #po dla %s, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest definicja filtra!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest nazwa programu!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest wartość logiczna.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewany jest zestaw znaków po Font!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: w linii %d %s spodziewany jest kod wyboru.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest nazwa/tekst wyboru.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: w linii %d %s spodziewana jest kolejność kolorów dla ColorModel!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: w linii %d %s spodziewana jest przestrzeń kolorów dla ColorModel!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest kompresja dla ColorModel!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: w linii %d %s spodziewany ciÄ…g ograniczenia dla UIConstraints!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: w linii %d %s spodziewane słowo kluczowe określające typ sterownika "
-#~ "po DriverType!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: w linii %d %s spodziewany jest typ druku obustronnego po Duplex!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewane jest kodowanie po Font!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa pliku po #po dla %s, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest nazwa grupy/tekst.\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest nazwa dołączanego pliku.\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest liczba całkowita.\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewane jest locale po #po dla, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa po %s, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa po FileName, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa po Font, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa po Manufacturer, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa po MediaSize, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa po ModelName, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa po PCFileName, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa/tekst po %s, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa/tekst po Installable, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest nazwa/tekst po Resolution, linia %d w %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: w linii %d %s spodziewana jest kombinacja nazwa/tekst dla "
-#~ "ColorModel!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest nazwa opcji/tekst.\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest nazwa opcji/tekst.\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewany jest typ opcji/tekst.\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: spodziewane jest pole zastÄ…pienia po Resolution, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewana jest liczba rzeczywista.\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: w linii %d %s spodziwana jest rozdzielczość/typ nośnika po "
-#~ "ColorProfile!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: w linii %d %s spodziwana jest rozdzielczość/typ nośnika po "
-#~ "SimpleColorProfile!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewany jest wybieracz po %s, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewany jest status po Font, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewany jest ciąg znaków po Copyright, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewany jest ciąg znaków po Version, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s spodziewane sÄ… dwie nazwy opcji!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest wartość po %s, linia %d w %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: spodziewana jest wersja po Fon, linia %d w %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: nieprawidłowa nazwa pliku #include/#po \"%s\"!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: nieprawidłowy koszt filtru w linii %d %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: nieprawidłowy typ MIME dla filtru w linii %d %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: nieprawidłowa pusta nazwa programu dla filtru w linii %d %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: nieprawidłowy wybór opcji \"%s\", linia %d w %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: nieprawidłowy typ opcji \"%s\", linia %d w %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: wczytujÄ™ plik informacyjny sterownika \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: wczytujÄ™ komunikaty locale \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: wczytujÄ™ komunikaty z \"%s\"...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: na końcu \"%s\" brakuje #endif!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s brakuje #if!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: brak katalogu komunikatów w locale %s!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: opcja %s zdefiniowana ponownie jako inny typ, linia %d w %s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc: ograniczenie opcji wymaga *name w linii %d %s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: w linii %d %s jest zbyt dużo zagnieżdżonych instrukcji #if!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: nie można utworzyć pliku PPD \"%s\" - %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: nie można utworzyć katalogu wyjścia %s: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: nie można utworzyć potoku wyjścia: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: nie można wykonać cupstestppd: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: nie można znaleźć pliku #po %s, linia %d w %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: nie można znaleźć pliku dołączenia \"%s\", linia %d w %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: nie można znaleźć lokalizacji dla \"%s\" - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: nie można wczytać lokalizacji dla \"%s\" - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: niezdefiniowana zmienna (%s), linia %d w %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: nieznany typ sterownika %s, linia %d w %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: nieznany typ obustronny \"%s\", linia %d w %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: nieznana wielkość nośnika \"%s\", linia %d w %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: nieznany znacznik \"%s\", linia %d w %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: nieznane znaki wiodÄ…ce w liczbie rzeczywistej \"%s\", linia %d w %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: niezakończony ciąg znaków, rozpoczynający się od %c, linia %d w %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: zapisujÄ™ %s...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: zapisujÄ™ pliki PPD do katalogu \"%s\"...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: nieprawidłowa wersja LanguageVersion \"%s\" w %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: ignorujÄ™ plik PPD %s...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: nie można wykonać kopii zapasowej %s w %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "drukarka %s jest wyłączona od %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "drukarka %s jest bezczynna. włączona od %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "drukarka %s drukuje teraz %s-%d. włączona od %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "drukarka %s/%s jest wyłączona od %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "drukarka %s/%s jest bezczynna. włączona od %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "drukarka %s/%s drukuje teraz %s-%d. włączona od %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "ID żądania to %s-%d (%d plików)\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "planista nie jest uruchomiony"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "planista jest uruchomiony\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\twyświetla stan demonów i kolejki\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "domyślny cel systemowy: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "domyślny cel systemowy: %s/%s\n"
diff --git a/locale/cups_pt.po b/locale/cups_pt.po
deleted file mode 100644
index e60a7d99..00000000
--- a/locale/cups_pt.po
+++ /dev/null
@@ -1,8733 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f milímetros"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f a %.0f x %.0f milímetros"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f polegadas"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f a %.2f x %.2f polegadas"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "Não é possível alterar %s."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 pol./seg."
-
-msgid "1.25x0.25\""
-msgstr "1,25x0,25\""
-
-msgid "1.25x2.25\""
-msgstr "1,25x2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 pol./seg."
-
-msgid "1.50x0.25\""
-msgstr "1,50x0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50x0,50\""
-
-msgid "1.50x1.00\""
-msgstr "1,50x1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50x2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 pol./seg."
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/seg."
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 pol./seg."
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 pol./seg."
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/seg."
-
-msgid "120x60dpi"
-msgstr "120x60dpi"
-
-msgid "120x72dpi"
-msgstr "120x72dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/seg."
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/seg."
-
-msgid "150dpi"
-msgstr "150dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 pol./seg."
-
-msgid "2-Sided Printing"
-msgstr "Impressão dos 2 lados"
-
-msgid "2.00x0.37\""
-msgstr "2,00x0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00x0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00x1,00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00x1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00x2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00x3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00x4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00x5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25x0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25x1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25x4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25x5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38x5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 pol./seg."
-
-msgid "2.50x1.00\""
-msgstr "2,50x1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50x2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75x1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/seg."
-
-msgid "200 mm/sec."
-msgstr "200 mm/seg."
-
-msgid "203dpi"
-msgstr "203dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "Série de 24 pinos"
-
-msgid "240x72dpi"
-msgstr "240x72dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/seg."
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 pol./seg."
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00x1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00x1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00x2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00x3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00x5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25x2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25x5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25x5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25x5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25x7,83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "Disco de 3,5\""
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "Disco de 3,5\" - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50x1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/seg."
-
-msgid "300 mm/sec."
-msgstr "300 mm/seg."
-
-msgid "300dpi"
-msgstr "300dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360dpi"
-
-msgid "360x180dpi"
-msgstr "360x180dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 pol./seg."
-
-msgid "4.00x1.00\""
-msgstr "4,00x1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00x13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00x2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00x2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00x3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00x4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00x5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00x6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00x6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/seg."
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 pol./seg."
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 pol./seg."
-
-msgid "6.00x1.00\""
-msgstr "6,00x1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00x2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00x3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00x4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00x5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00x6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00x6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/seg."
-
-msgid "600dpi"
-msgstr "600dpi"
-
-msgid "60dpi"
-msgstr "60dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 pol./seg."
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 pol./seg."
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00x1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00x2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00x3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00x4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00x5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00x6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00x6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/seg."
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 pol./seg."
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "Série de 9 pinos"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Aceitar trabalhos"
-
-msgid "Accepted"
-msgstr "Aceite(s)"
-
-msgid "Add Class"
-msgstr "Adicionar classe"
-
-msgid "Add Printer"
-msgstr "Adicionar impressora"
-
-msgid "Add RSS Subscription"
-msgstr "Adicionar subscrição RSS"
-
-msgid "Address"
-msgstr "Endereço"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Endereço - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Administração"
-
-msgid "Always"
-msgstr "Sempre"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Aplicador"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Ponteiro dests NULL inválido"
-
-msgid "Bad OpenGroup"
-msgstr "OpenGroup inválido"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "OpenUI/JCLOpenUI inválidos"
-
-msgid "Bad OrderDependency"
-msgstr "OrderDependency inválida"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Pedido inválido"
-
-msgid "Bad SNMP version number"
-msgstr "Número de versão SNMP inválido"
-
-msgid "Bad UIConstraints"
-msgstr "UIConstraints inválidas"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Valor de cópias inválido %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Parâmetro personalizado inválido"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Valor number-up inválido %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Valores page-ranges inválidos %d-%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Faixas publicitárias"
-
-msgid "Billing Information: "
-msgstr "Informação de facturação: "
-
-msgid "Bond Paper"
-msgstr "Papel de escritura"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "Impressora de etiquetas CPCL"
-
-msgid "Cancel RSS Subscription"
-msgstr "Cancelar subscrição RSS"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Alterar definições"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Classes"
-
-msgid "Clean Print Heads"
-msgstr "Limpar cabeças de impressão"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Cor"
-
-msgid "Color Mode"
-msgstr "Modo de cor"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Nome comunitário com comprimento indefinido"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Continuar"
-
-msgid "Continuous"
-msgstr "Contínuo"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Criação"
-
-msgid "Created On: "
-msgstr "Criação: "
-
-msgid "Custom"
-msgstr "Personalizar"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Cortar"
-
-msgid "Cutter"
-msgstr "Cortador"
-
-msgid "Dark"
-msgstr "Escuro"
-
-msgid "Darkness"
-msgstr "Escurecimento"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Apagar classe"
-
-msgid "Delete Printer"
-msgstr "Apagar impressora"
-
-msgid "Description: "
-msgstr "Descrição: "
-
-msgid "DeskJet Series"
-msgstr "Série DeskJet"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "Destino \"%s\" não está a aceitar trabalhos."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Suporte térmico directo"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Inactivo"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Nome do controlador: "
-
-msgid "Driver Version: "
-msgstr "Versão do controlador: "
-
-msgid "Duplexer"
-msgstr "Duplexer"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "Impressora de etiquetas EPL1"
-
-msgid "EPL2 Label Printer"
-msgstr "Impressora de etiquetas EPL2"
-
-msgid "Edit Configuration File"
-msgstr "Editar ficheiro de configuração"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Terminar faixa publicitária"
-
-msgid "English"
-msgstr "Portuguese"
-
-msgid "Enter old password:"
-msgstr "Introduza palavra-passe antiga:"
-
-msgid "Enter password again:"
-msgstr "Introduza palavra-passe novamente:"
-
-msgid "Enter password:"
-msgstr "Introduza palavra-passe:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Introduza o seu nome de utilizador e palavra-passe ou o nome de utilizador e "
-"palavra-passe da raiz para aceder a esta página. Se utilizar a autenticação "
-"Kerberos, certifique-se que tem um ticket de Kerberos válido."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Alimentação de envelopes"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Política de Erros"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "A cada 10 etiquetas"
-
-msgid "Every 2 Labels"
-msgstr "A cada 2 etiquetas"
-
-msgid "Every 3 Labels"
-msgstr "A cada 3 etiquetas"
-
-msgid "Every 4 Labels"
-msgstr "A cada 4 etiquetas"
-
-msgid "Every 5 Labels"
-msgstr "A cada 5 etiquetas"
-
-msgid "Every 6 Labels"
-msgstr "A cada 6 etiquetas"
-
-msgid "Every 7 Labels"
-msgstr "A cada 7 etiquetas"
-
-msgid "Every 8 Labels"
-msgstr "A cada 8 etiquetas"
-
-msgid "Every 9 Labels"
-msgstr "A cada 9 etiquetas"
-
-msgid "Every Label"
-msgstr "Todas as etiquetas"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "A expectativa não se concretizou"
-
-msgid "Export Printers to Samba"
-msgstr "Exportar Impressoras para Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Pasta de ficheiros"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Pasta de ficheiros - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Fólio"
-
-msgid "Forbidden"
-msgstr "Proibido"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Geral"
-
-msgid "Generic"
-msgstr "Genérico"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU com comprimento indefinido"
-
-msgid "Glossy Paper"
-msgstr "Papel brilhante"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Níveis de cinzento"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Pasta suspensa"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Pasta suspensa - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Carácter de controlo ilegal"
-
-msgid "Illegal main keyword string"
-msgstr "Cadeia de palavra-chave principal ilegal"
-
-msgid "Illegal option keyword string"
-msgstr "Cadeia de palavra-chave de opção ilegal"
-
-msgid "Illegal translation string"
-msgstr "Cadeia de tradução ilegal"
-
-msgid "Illegal whitespace character"
-msgstr "Carácter de espaço em branco ilegal"
-
-msgid "Installable Options"
-msgstr "Opções instaláveis"
-
-msgid "Installed"
-msgstr "Instalado"
-
-msgid "IntelliBar Label Printer"
-msgstr "Impressora de etiquetas IntelliBar"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "Erro interno"
-
-msgid "Internet Postage 2-Part"
-msgstr "Envio pela Internet em 2 partes"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Envio pela Internet em 2 partes - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Envio pela Internet em 3 partes"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Envio pela Internet em 3 partes - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Protocolo de impressão via Internet"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "Trabalho #%d já interrompido - impossível cancelar."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "Trabalho #%d já cancelado - impossível cancelar."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "Trabalho #%d já concluído - impossível cancelar."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Trabalho concluído"
-
-msgid "Job Created"
-msgstr "Trabalho criado"
-
-msgid "Job ID: "
-msgstr "ID do trabalho: "
-
-msgid "Job Options Changed"
-msgstr "Opções de trabalho alteradas"
-
-msgid "Job Stopped"
-msgstr "Trabalho parado"
-
-msgid "Job UUID: "
-msgstr "UUID do trabalho: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "Trabalho concluído; não é possível alterar."
-
-msgid "Job operation failed:"
-msgstr "Operação de trabalho falhou:"
-
-msgid "Job state cannot be changed."
-msgstr "Não é possível alterar o estado do trabalho."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Trabalhos"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "Host ou impressora LPD/LPR"
-
-msgid "Label Printer"
-msgstr "Impressora de etiquetas"
-
-msgid "Label Top"
-msgstr "Parte superior da etiqueta"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Endereço grande"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Endereço grande - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet Série PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Claro"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Linha excede máximo permitido (255 caracteres)"
-
-msgid "List Available Printers"
-msgstr "Apresentar impressoras disponíveis"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Localização: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Margem longa (vertical)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Marca e modelo: "
-
-msgid "Manual Feed"
-msgstr "Alimentação manual"
-
-msgid "Media Dimensions: "
-msgstr "Dimensões do suporte: "
-
-msgid "Media Limits: "
-msgstr "Limites do suporte: "
-
-msgid "Media Name: "
-msgstr "Nome do suporte: "
-
-msgid "Media Size"
-msgstr "Tamanho do suporte"
-
-msgid "Media Source"
-msgstr "Origem do suporte"
-
-msgid "Media Tracking"
-msgstr "Controlo do suporte"
-
-msgid "Media Type"
-msgstr "Tipo de suporte"
-
-msgid "Medium"
-msgstr "Médio"
-
-msgid "Memory allocation error"
-msgstr "Erro de alocação de memória"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "Cabeçalho PPD-Adobe-4.x inexistente"
-
-msgid "Missing asterisk in column 1"
-msgstr "Asterisco inexistente na coluna 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Cadeia de valor inexistente"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Modificar classe"
-
-msgid "Modify Printer"
-msgstr "Modificar impressora"
-
-msgid "Move All Jobs"
-msgstr "Mover todos os trabalhos"
-
-msgid "Move Job"
-msgstr "Mover trabalho"
-
-msgid "Moved Permanently"
-msgstr "Mudou-se permanentemente"
-
-msgid "NULL PPD file pointer"
-msgstr "Ponteiro do ficheiro PPD NULL"
-
-msgid "Name OID uses indefinite length"
-msgstr "Nome OID com comprimento indefinido"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Nunca"
-
-msgid "New Stylus Color Series"
-msgstr "Nova série a cores Stylus"
-
-msgid "New Stylus Photo Series"
-msgstr "Nova série fotográfica Stylus"
-
-msgid "No"
-msgstr "Não"
-
-msgid "No Content"
-msgstr "Sem conteúdo"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Sem SEQUÊNCIA VarBind"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Nenhuma ligação activa"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Sem nome comunitário"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Sem destinos adicionados."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Sem error-index"
-
-msgid "No error-status"
-msgstr "Sem error-status"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Sem OID de nome"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Sem request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Sem subscrições."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Sem SEQUÊNCIA variable-bindings"
-
-msgid "No version number"
-msgstr "Sem número de versão"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Não contínuo (leitura de marcas)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Não contínuo (leitura Web)"
-
-msgid "Normal"
-msgstr "Normal"
-
-msgid "Not Found"
-msgstr "Não encontrado"
-
-msgid "Not Implemented"
-msgstr "Não implementado"
-
-msgid "Not Installed"
-msgstr "Não instalado"
-
-msgid "Not Modified"
-msgstr "Não modificado"
-
-msgid "Not Supported"
-msgstr "Não suportado"
-
-msgid "Not allowed to print."
-msgstr "Sem permissão para imprimir."
-
-msgid "Note"
-msgstr "Nota"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Inactivo (1 lado)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Ajuda online"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "abertura de %s falhou: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup sem um CloseGroup primeiro"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI sem um CloseUI/JCLCloseUI primeiro"
-
-msgid "Operation Policy"
-msgstr "Política de Operação"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Opções instaladas"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Opções: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Modo de saída"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "Impressora Laser PCL"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "O pacote não contém Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "O pacote não começa por SEQUENCE"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Palavra-passe para %s em %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "Palavra-passe para %s requerida para aceder a %s via SAMBA: "
-
-msgid "Pause Class"
-msgstr "Colocar a classe em pausa"
-
-msgid "Pause Printer"
-msgstr "Colocar a impressora em pausa"
-
-msgid "Peel-Off"
-msgstr "Destacar"
-
-msgid "Photo"
-msgstr "Fotografia"
-
-msgid "Photo Labels"
-msgstr "Etiquetas de fotografias"
-
-msgid "Plain Paper"
-msgstr "Papel normal"
-
-msgid "Policies"
-msgstr "Políticas"
-
-msgid "Port Monitor"
-msgstr "Monitor da porta"
-
-msgid "PostScript Printer"
-msgstr "Impressora PostScript"
-
-msgid "Postcard"
-msgstr "Postal"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Densidade de impressão"
-
-msgid "Print Job:"
-msgstr "Imprimir trabalho:"
-
-msgid "Print Mode"
-msgstr "Modo de impressão"
-
-msgid "Print Rate"
-msgstr "Taxa de impressão"
-
-msgid "Print Self-Test Page"
-msgstr "Imprimir página de teste automático"
-
-msgid "Print Speed"
-msgstr "Velocidade de impressão"
-
-msgid "Print Test Page"
-msgstr "Imprimir página de teste"
-
-msgid "Print and Cut"
-msgstr "Imprimir e cortar"
-
-msgid "Print and Tear"
-msgstr "Imprimir e rasgar"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Impresso para: "
-
-msgid "Printed From: "
-msgstr "Impresso a partir de: "
-
-msgid "Printed On: "
-msgstr "Impresso a: "
-
-msgid "Printer Added"
-msgstr "Impressora adicionada"
-
-msgid "Printer Default"
-msgstr "Impressora predefinida"
-
-msgid "Printer Deleted"
-msgstr "Impressora apagada"
-
-msgid "Printer Modified"
-msgstr "Impressora modificada"
-
-msgid "Printer Name: "
-msgstr "Nome da impressora: "
-
-msgid "Printer Paused"
-msgstr "Impressora em pausa"
-
-msgid "Printer Settings"
-msgstr "Definições da impressora"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Impressora:"
-
-msgid "Printers"
-msgstr "Impressoras"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Limpar trabalhos"
-
-msgid "Quarto"
-msgstr "Quarto"
-
-msgid "Quota limit reached."
-msgstr "Quota atingida."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Rejeitar trabalhos"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Voltar a imprimir após o erro"
-
-msgid "Request Entity Too Large"
-msgstr "Entidade do pedido demasiado extensa"
-
-msgid "Resolution"
-msgstr "Resolução"
-
-msgid "Resume Class"
-msgstr "Retomar classe"
-
-msgid "Resume Printer"
-msgstr "Retomar impressora"
-
-msgid "Return Address"
-msgstr "Endereço de devolução"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Endereço de devolução - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Retroceder"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE com comprimento indefinido"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Ver outros"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Porta de série n.º %d"
-
-msgid "Server Restarted"
-msgstr "Servidor reiniciado"
-
-msgid "Server Security Auditing"
-msgstr "Auditoria de segurança do servidor"
-
-msgid "Server Started"
-msgstr "Servidor iniciado"
-
-msgid "Server Stopped"
-msgstr "Servidor parado"
-
-msgid "Service Unavailable"
-msgstr "Serviço indisponível"
-
-msgid "Set Allowed Users"
-msgstr "Definir utilizadores permitidos"
-
-msgid "Set As Server Default"
-msgstr "Definir como servidor predefinido"
-
-msgid "Set Class Options"
-msgstr "Definir opções de classe"
-
-msgid "Set Printer Options"
-msgstr "Definir opções de impressora"
-
-msgid "Set Publishing"
-msgstr "Definir publicação"
-
-msgid "Shipping Address"
-msgstr "Endereço de envio"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Endereço de envio - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Margem estreita (horizontal)"
-
-msgid "Special Paper"
-msgstr "Papel especial"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Padrão"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Iniciar faixa publicitária"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Declaração"
-
-msgid "Stylus Color Series"
-msgstr "Série a cores Stylus"
-
-msgid "Stylus Photo Series"
-msgstr "Série fotográfica Stylus"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "A mudar de protocolo"
-
-msgid "Tabloid"
-msgstr "Tablóide"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Rasgar"
-
-msgid "Tear-Off"
-msgstr "Descartar"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Descartar posição de ajuste"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "Não é possível localizar o ficheiro PPD \"%s\"."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "Não é possível abrir o ficheiro PPD \"%s\": %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"O nome de classe pode ter o máximo de 127 caracteres imprimíveis e não pode "
-"ter espaços, barras (/) ou cardinal (#)."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"Não é possível utilizar o atributo notify-lease-duration com subscrições de "
-"trabalho."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"O nome de impressora pode ter o máximo de 127 caracteres imprimíveis e não "
-"pode ter espaços, barras (/) ou cardinal (#)."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "O atributo printer-uri \"%s\" contém caracteres inválidos."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"O atributo printer-uri deve ser do formato \"ipp://HOSTNAME/classes/CLASSNAME"
-"\"."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"O atributo printer-uri deve ser do formato \"ipp://HOSTNAME/printers/"
-"PRINTERNAME\"."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"O nome de subscrição não pode ter espaços, barras (/), pontos de "
-"interrogação (?) ou cardinal (#)."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Existem demasiadas subscrições."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Suporte de transferência térmica"
-
-msgid "Title: "
-msgstr "Título: "
-
-msgid "Too many active jobs."
-msgstr "Demasiados trabalhos activos."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Transparência"
-
-msgid "Tray"
-msgstr "Bandeja"
-
-msgid "Tray 1"
-msgstr "Bandeja 1"
-
-msgid "Tray 2"
-msgstr "Bandeja 2"
-
-msgid "Tray 3"
-msgstr "Bandeja 3"
-
-msgid "Tray 4"
-msgstr "Bandeja 4"
-
-msgid "URI Too Long"
-msgstr "URI demasiado longo"
-
-msgid "US Ledger"
-msgstr "Livro de contas EUA"
-
-msgid "US Legal"
-msgstr "Legal EUA"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "Carta EUA"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "Porta de série USB n.º %d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Não é possível aceder ao ficheiro cupsd.conf:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Não é possível adicionar a subscrição RSS:"
-
-msgid "Unable to add class:"
-msgstr "Não é possível adicionar a classe:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Não é possível adicionar a impressora:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Não é possível cancelar a subscrição RSS:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Não é possível alterar o atributo printer-is-shared:"
-
-msgid "Unable to change printer:"
-msgstr "Não é possível alterar a impressora:"
-
-msgid "Unable to change server settings:"
-msgstr "Não é possível alterar as definições do servidor:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Não é possível ligar ao host."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Não é possível criar o ficheiro temporário:"
-
-msgid "Unable to delete class:"
-msgstr "Não é possível apagar a classe:"
-
-msgid "Unable to delete printer:"
-msgstr "Não é possível apagar a impressora:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Não é possível executar o comando de manutenção:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Não é possível obter a lista de classes:"
-
-msgid "Unable to get class status:"
-msgstr "Não é possível obter o estado da classe:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Não é possível obter a lista de recursos da impressora:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Não é possível obter os atributos da impressora:"
-
-msgid "Unable to get printer list:"
-msgstr "Não é possível obter a lista de impressoras:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Não é possível obter o estado da impressora:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Não é possível modificar a classe:"
-
-msgid "Unable to modify printer:"
-msgstr "Não é possível modificar a impressora:"
-
-msgid "Unable to move job"
-msgstr "Não é possível mover o trabalho"
-
-msgid "Unable to move jobs"
-msgstr "Não é possível mover os trabalhos"
-
-msgid "Unable to open PPD file"
-msgstr "Não é possível abrir o ficheiro PPD"
-
-msgid "Unable to open PPD file:"
-msgstr "Não é possível abrir o ficheiro PPD:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Não é possível abrir o ficheiro cupsd.conf:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Não é possível imprimir a página de teste:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Não é possível definir opções:"
-
-msgid "Unable to set server default:"
-msgstr "Não é possível definir como servidor predefinido:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Não é possível carregar o ficheiro cupsd.conf:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Não autorizado"
-
-msgid "Units"
-msgstr "Unidades"
-
-msgid "Unknown"
-msgstr "Desconhecido"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Printer-error-policy desconhecida \"%s\"."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Printer-op-policy desconhecida \"%s\"."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Tipo de valor não suportado"
-
-msgid "Upgrade Required"
-msgstr "Requer actualização"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Valor com comprimento indefinido"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind com comprimento indefinido"
-
-msgid "Version uses indefinite length"
-msgstr "Versão com comprimento indefinido"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Sim"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Deve aceder a esta página utilizando o URL <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "Impressora de etiquetas ZPL"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "interrompido"
-
-msgid "canceled"
-msgstr "cancelado"
-
-msgid "completed"
-msgstr "concluído"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "cups-deviced falhou a execução."
-
-msgid "cups-driverd failed to execute."
-msgstr "cups-driverd falhou a execução."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index com comprimento indefinido"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status com comprimento indefinido"
-
-msgid "held"
-msgstr "reter"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "inactivo"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "pendente"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "a processar"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id com comprimento indefinido"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "estatística de %s falhou: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "parado"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "desconhecido"
-
-msgid "untitled"
-msgstr "sem nome"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings com comprimento indefinido"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(tudo)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(sem)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d entradas\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tApós falha: continuar\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tAlertas:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tFaixa publicitária requerida\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tConjuntos charset:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tLigação: directa\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tLigação: remota\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tTamanho de página predefinido:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tPitch predefinido:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tPredefinições de porta:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tDescrição: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tFormato montado:\n"
-#~ "\tTipos de conteúdo: qualquer\n"
-#~ "\tTipos de impressora: desconhecido\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tFormatos permitidos:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tInterface: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tInterface: %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tInterface: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tLocalização: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tEm falha: sem alerta\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tUtilizadores permitidos:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tUtilizadores negados:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tdaemon presente\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tsem entradas\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\timpressora está no periférico '%s' velocidade -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\timpressão desactivada\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\timpressão activada\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tem fila para %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tcolocação em fila desactivada\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tcolocação em fila activada\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tmotivo desconhecido\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " RESULTADOS DETALHADOS DO TESTE DE CONFORMIDADE\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: Página 15, secção 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: Página 15, secção 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: Página 19, secção 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: Página 20, secção 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: Página 27, secção 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: Página 42, secção 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: Páginas 16-17, secção 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: Páginas 42-45, secção 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: Páginas 45-46, secção 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: Páginas 48-49, secção 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: Páginas 52-54, secção 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f bytes\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Predefinição%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Fabricante\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Produto\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN \"%s %s\" em conflito com \"%s %s\"\n"
-#~ " (restrição=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %s não tem opções correspondentes!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s partilha um prefixo comum com %s\n"
-#~ " REF: Página 15, secção 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN Escolhas predefinidas em conflito!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN Palavra-chave de opção de frente e verso %s pode não "
-#~ "funcionar como previsto e deve ter o nome Duplex!\n"
-#~ " REF: Página 122, secção 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " WARN Ficheiro contém um misto de fins de linha CR, LF e CR "
-#~ "LF!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN LanguageEncoding requerido por espec. de PPD 4.3\n"
-#~ " REF: Páginas 56-57, secção 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN Linha %d só contém espaço em branco!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN Fabricante requerido por espec. de PPD 4.3\n"
-#~ " REF: Páginas 58-59, secção 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN Ficheiro APDialogExtension inexistente \"%s\"\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN Ficheiro APPrinterIconPath inexistente \"%s\"\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN Ficheiros PPD não Windows devem utilizar fins de linha "
-#~ "com LF, e não CR LF!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN Versão de PPD obsoleta %.1f!\n"
-#~ " REF: Página 42, secção 5.2"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName superior a 8.3 viola espec. de PPD\n"
-#~ " REF: Páginas 61-62, secção 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protocolos contêm PJL, mas atributos JCL não estão "
-#~ "especificados.\n"
-#~ " REF: Páginas 78-79, secção 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protocolos contêm PJL e BCP; TBCP esperados.\n"
-#~ " REF: Páginas 78-79, secção 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN ShortNickName requerido por espec. de PPD 4.3\n"
-#~ " REF: Páginas 64-65, secção 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s não existe!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Escolha %s inválida %s!\n"
-#~ " REF: Página 122, secção 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Cadeia de tradução UTF-8 \"%s\" inválida para opção %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Cadeia de tradução UTF-8 \"%s\" inválida para opção %s, escolha "
-#~ "%s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Valor cupsFilter inválido \"%s\"!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s CupsICCProfile inválido %s!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Valor cupsPreFilter inválido \"%s\"!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s CupsUIConstraints inválido %s: \"%s\"!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Idioma inválido \"%s\"!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s CupsUIConstraints vazio %s!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Cadeia de tradução inexistente \"%s\" para opção %s!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Cadeia de tradução inexistente \"%s\" para opção %s, escolha %"
-#~ "s!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Escolha inexistente *%s %s em UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s Escolha inexistente *%s %s em cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s Ficheiro cupsFilter inexistente \"%s\"!\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s Ficheiro cupsICCProfile inexistente \"%s\"!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s Ficheiro cupsPreFilter inexistente \"%s\"!\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s CupsUIResolver inexistente %s!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Opção inexistente %s em UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Opção inexistente %s em cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s Sem tradução base \"%s\" incluída no ficheiro!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s REQUERIDO %s não define a escolha Sem!\n"
-#~ " REF: Página 122, secção 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s cupsICCProfile %s valor hash colide com %s!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s causa um loop!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** %s os nomes da escolha %s e %s divergem apenas pela "
-#~ "utilização de maiúsculas/minúsculas!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FAIL** %s deve ser 1284DeviceID!\n"
-#~ " REF: Página 72, secção 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** Predefinição%s %s inválida\n"
-#~ " REF: Página 40, secção 4.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DefaultImageableArea %s inválida!\n"
-#~ " REF: Página 102, secção 5.15\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DefaultPaperDimension %s inválida!\n"
-#~ " REF: Página 103, secção 5.15\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FAIL** Atributo JobPatchFile inválido no ficheiro!\n"
-#~ " REF: Página 24, secção 3.4\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** Fabricante inválido (deve ser \"HP\")\n"
-#~ " REF: Página 211, tabela D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** Fabricante inválido (deve ser \"Oki\")\n"
-#~ " REF: Página 211, tabela D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ModelName inválido - \"%c\" não permitido na cadeia.\n"
-#~ " REF: Páginas 59-60, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** PSVersion inválida - não \"(cadeia) int\".\n"
-#~ " REF: Páginas 62-64, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Produto inválido - não \"(cadeia)\".\n"
-#~ " REF: Página 62, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ShortNickName inválido - superior a 31 car.\n"
-#~ " REF: Páginas 64-65, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FAIL** Escolha %s inválida %s!\n"
-#~ " REF: Página 84, secção 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Versão de ficheiro inválida \"%s\"\n"
-#~ " REF: Página 56, secção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Versão de formato inválida \"%s\"\n"
-#~ " REF: Página 56, secção 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **FAIL** LanguageEncoding %s inválida - deve ser ISOLatin1!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **FAIL** LanguageVersion %s inválida - deve ser Inglês!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr ""
-#~ " **FAIL** Impossível interpretar código de opção predefinida: %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Cadeia de tradução predefinida para opção %s escolha %s "
-#~ "contém caracteres de 8 bits!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Cadeia de tradução predefinida para opção %s contém "
-#~ "caracteres de 8 bits!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Os nomes dos grupos%s e %s divergem apenas pela "
-#~ "utilização de maiúsculas/minúsculas!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FAIL** Múltiplos casos de %s nome da escolha %s!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Os nomes das opções %s e %s divergem apenas pela "
-#~ "utilização de maiúsculas/minúsculas!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** Predefinição%s requerida\n"
-#~ " REF: Página 40, secção 4.5\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DefaultImageableArea requerida\n"
-#~ " REF: Página 102, secção 5.15\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** DefaultPaperDimension requerida\n"
-#~ " REF: Página 103, secção 5.15\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** FileVersion requerida\n"
-#~ " REF: Página 56, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** FormatVersion requerida\n"
-#~ " REF: Página 56, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ImageableArea requerida para PageSize %s\n"
-#~ " REF: Página 41, secção 5.\n"
-#~ " REF: Página 102, secção 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** LanguageEncoding requerida\n"
-#~ " REF: Páginas 56-57, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** LanguageVersion requerida\n"
-#~ " REF: Páginas 57-58, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Fabricante requerido\n"
-#~ " REF: Páginas 58-59, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ModelName requerido\n"
-#~ " REF: Páginas 59-60, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** NickName requerido\n"
-#~ " REF: Página 60, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** PCFileName requerido\n"
-#~ " REF: Páginas 61-62, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** PSVersion requerida\n"
-#~ " REF: Páginas 62-64, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** PageRegion requerida\n"
-#~ " REF: Página 100, secção 5.14\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** PageSize requerido\n"
-#~ " REF: Página 41, secção 5.\n"
-#~ " REF: Página 99, secção 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** PageSize requerido\n"
-#~ " REF: Páginas 99-100, secção 5.14\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** PaperDimension requerida para PageSize %s\n"
-#~ " REF: Página 41, secção 5.\n"
-#~ " REF: Página 103, secção 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** Produto requerido\n"
-#~ " REF: Página 62, secção 5.3\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ShortNickName requerido\n"
-#~ " REF: Páginas 64-65, secção 5.3\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d ERROS ENCONTRADOS\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%%%BoundingBox: inválida na linha %d!\n"
-#~ " REF: Página 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " %%%%Page: inválida na linha %d!\n"
-#~ " REF: Página 53, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " %%%%Pages: inválidas na linha %d!\n"
-#~ " REF: Página 43, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " Linha %d tem mais de 255 caracteres (%d)!\n"
-#~ " REF: Página 25, Comprimento da Linha\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " %!PS-Adobe-3.0 inexistente na primeira linha!\n"
-#~ " REF: Página 17, 3.1 Documentos de Conformidade\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " Comentário %%EndComments inexistente!\n"
-#~ " REF: Página 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " Comentário %%BoundingBox: inexistente ou inválido!\n"
-#~ " REF: Página 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " Comentários %%Page: inexistentes ou inválidos!\n"
-#~ " REF: Página 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " Comentário %%Pages: inexistente ou inválido!\n"
-#~ " REF: Página 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " SEM ERROS\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " Detectadas %d linhas que excedem 255 caracteres!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " Demasiados comentários %%BeginDocument!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " Demasiados comentários %%EndDocument!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Aviso: ficheiro contém dados binários!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Aviso: sem comentário %%EndComments no ficheiro!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Aviso: versão obsoleta de DSC %.1f no ficheiro!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FAIL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Impossível abrir ficheiro PPD - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Impossível abrir ficheiro PPD - %s na linha %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " PASS\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "Envelope n.º 10"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "Envelope n.º 11"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "Envelope n.º 12"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "Envelope n.º 14"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "Envelope n.º 9"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s aceita pedidos desde %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s não é implementado pela versão CUPS de lpc.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s não está preparada\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s está preparada\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s está preparada e a imprimir\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s não aceita pedidos desde %s-\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s não suportado!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s aceita pedidos desde %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s não aceita pedidos desde %s-\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [trabalho %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s falhou: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: Não sei que fazer!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Erro - nomes de variáveis de ambiente %s inexistentes no destino \"%s"
-#~ "\"!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Erro - ID de trabalho inválido!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: Erro - não é possível imprimir ficheiros e alterar trabalhos em "
-#~ "simultâneo!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Erro - não é possível imprimir a partir de stdin se fornecidos "
-#~ "ficheiros ou ID do trabalho!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Erro - conjunto de caracteres esperado após opção '-S'!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Erro - tipo de conteúdo esperado após opção '-T'!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: Erro - cópias esperadas após opção '-n'!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: Erro - contagem de cópias esperadas após opção '-#'!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Erro - destino esperado após opção '-P'!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Erro - destino esperado após opção '-b'!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Erro - destino esperado após opção '-d'!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Erro - formato esperado após opção '-f'!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Erro - nome para reter esperado após opção '-H'!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Erro - nome de host esperado após opção '-h'!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Erro - nome de host esperado após opção '-h'!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: Erro - lista de modo esperada após opção '-y'!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Erro - nome esperado após opção '-%c'!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: Erro - cadeia de opção esperada após opção '-o'!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Erro - lista de página esperada após opção '-P'!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Erro - prioridade esperada após opção '-%c'!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Erro - texto de motivo esperado após opção '-r'!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Erro - título esperado após opção '-t'!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: Erro - nome de utilizador esperado após opção '-u'!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: Erro - nome de utilizador esperado após opção '-u'!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Erro - valor esperado após opção '-%c'!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Erro - necessário \"concluído\", \"não concluído\" ou \"tudo\" após "
-#~ "opção '-W'!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Erro - sem destino predefinido disponível.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Erro - prioridade deve ser entre 1 e 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Erro - programador não responde!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Erro - demasiados ficheiros - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Erro - não é possível aceder a \"%s\" - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr ""
-#~ "%s: Erro - não é possível criar fila de espera a partir de stdin - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Erro - destino desconhecido \"%s\"!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Erro - destino desconhecido \"%s/%s\"!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Erro - opção desconhecida '%c'!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Erro - opção desconhecida '%s'!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: ID de trabalho esperado após opção '-i'!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Filtro \"%s\" não disponível: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Nome de destino inválido na lista \"%s\"!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: Cadeia de filtro inválida \"%s\"\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr ""
-#~ "%s: Necessário ID do trabalho ('-i jobid') antes de '-H reiniciar'!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Sem filtro para converter de %s/%s para %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: Operação falhou: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: Sem suporte de encriptação compilado!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Não é possível ligar ao servidor\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: Não é possível contactar o servidor!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: Não é possível determinar tipo MIME de \"%s\"!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: Não é possível abrir %s - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: Não é possível abrir %s - %s na linha %d.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: Não é possível abrir %s: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: Não é possível abrir o ficheiro PDF: %s na linha %d\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr ""
-#~ "%s: Não é possível ler a base de dados MIME a partir de \"%s\" ou \"%s"
-#~ "\"!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: Destino desconhecido \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: Destino desconhecido de tipo MIME %s/%s!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: Opção desconhecida '%c'!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: Origem desconhecida de tipo MIME %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Aviso - modificador de formato '%c' não suportado - saída pode ser "
-#~ "incorrecta!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Aviso - opção de conjunto de caracteres ignorada!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Aviso - opção de tipo de conteúdo ignorada!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Aviso - opção de formato ignorada!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Aviso - opção de modo ignorada!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Erro - nomes de variáveis de ambiente %s inexistentes no destino \"%s"
-#~ "\"!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: Erro - opção=valor esperada após opção '-o'!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: Erro - sem destino predefinido disponível.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "Níveis de cinzento 600 DPI"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Comando de ajuda inválido desconhecido\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "Palavra-passe Samba requerida para exportar recursos de impressora!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr ""
-#~ "Nome de utilizador Samba requerido para exportar recursos de impressora!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Já existe uma classe com o nome \"%s\"!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Já existe uma impressora com o nome \"%s\"!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (extra grande)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (extra grande)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (pequeno)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (extra grande)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "Tentativa de definir %s printer-state como valor inválido %d!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Grupos de atributos desordenados (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "URI de periférico inválido \"%s\"!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "Device-uri \"%s\" inválido!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Esquema uri de periférico inválido \"%s\"!\n"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "Document-format \"%s\" inválido!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Buffer de nome de ficheiro inválido!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Atributo de tipo de letra inválido: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Valor job-priority inválido!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Valor job-sheets \"%s\" inválido!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Tipo de valor job-sheets inválido!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Valor job-state inválido!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Atributo job-uri \"%s\" inválido!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Notify-pull-method \"%s\" inválido!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "Notify-recipient-uri URI \"%s\" inválido!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Opção + escolha inválidas na linha %d!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Port-monitor \"%s\" inválido!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Valor printer-state inválido %d!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Número de versão pedido inválido %d.%d!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "ID de subscrição inválido!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "Envelope C0"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "Envelope C1"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "Envelope C2"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "Envelope C3"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "Envelope C4"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "Envelope C5"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "Envelope C6"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "Envelope C65"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "Envelope C7"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Conjunto de caracteres \"%s\" não suportado!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Envelope Chou3"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Envelope Chou4"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "É possível abreviar comandos. Comandos são:\n"
-#~ "\n"
-#~ "sair ajuda sair estado ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Não é possível procurar o tipo \"%s\"!"
-
-#~ msgid "Cover open."
-#~ msgstr "Tampa aberta."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "Envelope DL"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Programador quase vazio."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Programador vazio!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Periférico: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "O documento %d não foi encontrado no trabalho %d."
-
-#~ msgid "Door open."
-#~ msgstr "Porta aberta."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Postal duplo"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: Não é possível alocar memória para info de página: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: Não é possível alocar memória para matriz de páginas: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Detectado comentário %%BoundingBox: inválido!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: Detectado comentário %%IncludeFeature: inválido!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: Comentário %%Page: inválido no ficheiro!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: Comentário %%PageBoundingBox: inválido no ficheiro!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Ficheiro de periférico SCSI inválido \"%s\"!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: Ficheiro charset inválido %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: Tipo charset inválido %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: Valor de colunas inválido %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: Valor cpi inválido %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: Linha de descrição de tipo de letra inválida: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: Valor lpi inválido %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Configuração de página inválida!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: Orientação de texto inválida %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: Largura de texto inválida %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: A impressora de destino não existe!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Detectado comentário %%BoundingBox: em duplicado!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: Detectado comentário %%Pages: em duplicado!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: Ficheiro de impressão vazio!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: Erro %d ao enviar o pedido PAPSendData: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: Esperada cadeia entre aspas na linha %d de %s!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: Erro fatal de USB!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: Detectado comando HP-GL/2 inválido; impossível imprimir ficheiro!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: %%EndProlog inexistente!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: %%EndSetup inexistente!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: URI de periférico inexistente em command-line e sem variável de "
-#~ "ambiente DEVICE_URI!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr ""
-#~ "ERROR: Valor inexistente na linha %d do ficheiro da faixa publicitária!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: É necessária uma linha msgid antes de quaisquer cadeias de "
-#~ "tradução na linha %d de %s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: Sem comentário %%BoundingBox: no cabeçalho!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: Sem comentário %%Pages: no cabeçalho!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Sem URI de periférico em argv[0] ou na variável de ambiente "
-#~ "DEVICE_URI!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: Tipos de letra inexistentes no ficheiro charset %s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: Sem páginas!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: Sem papel!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: Variável de ambiente PRINTER não definida!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: O ficheiro de impressão não foi aceite (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: A impressora não responde\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: A impressora não responde!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: A impressora enviou um EOF inesperado\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: O host remoto não aceitou ficheiro de controlo (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: O host remoto não aceitou o ficheiro de dados (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: Ocorreu um erro de tempo limite excedido ao enviar dados para a "
-#~ "impressora\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: Não é possível adicionar o ficheiro %d ao trabalho: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: Não é possível cancelar o trabalho %d: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: Não é possível copiar o ficheiro PDF"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: Não é possível criar o socket"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: Não é possível criar o ficheiro de impressão comprimido "
-#~ "temporário: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: Não é possível criar o ficheiro temporário"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: Não é possível criar ficheiro o temporário - %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: Não é possível criar o ficheiro temporário: %s.\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: Não é possível executar pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: Não é possível executar o programa gs"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: Não é possível executar o programa pdftops"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: Não é possível separar pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: Não é possível obter pedidos PAP"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: Não é possível obter a resposta PAP"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr ""
-#~ "ERROR: Não é possível obter o ficheiro PPD para a impressora \"%s\" - %"
-#~ "s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: Não é possível obter a zona AppleTalk predefinida"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: Não é possível obter os atributos do trabalho %d (%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: Não é possível obter o estado da impressora (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: Não é possível localizar a impressora '%s'!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: Não é possível procurar a resposta PAP"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: Não é possível procurar impressoras AppleTalk"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: Não é possível criar o endereço AppleTalk"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: Não é possível abrir \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: Não é possível abrir %s: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr ""
-#~ "ERROR: Não é possível abrir o ficheiro da faixa publicitária \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: Não é possível abrir o ficheiro de periférico \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: Não é possível abrir o ficheiro \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: Não é possível abrir o ficheiro \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: Não é possível abrir o ficheiro de imagem para impressão!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: Não é possível abrir o ficheiro de impressão \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: Não é possível abrir o ficheiro de impressão %s - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: Não é possível abrir o ficheiro de impressão %s: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: Não é possível abrir o ficheiro de impressão comprimido "
-#~ "temporário: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: Não é possível abrir o ficheiro temporário"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: Não é possível imprimir %d colunas de texto!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: Não é possível imprimir %dx%d página de texto!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: Não é possível ler os dados de impressão"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: Não é possível ler os dados de impressão!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: Não é possível reservar a porta"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: Não é possível atingir offset %ld no ficheiro - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: Não é possível atingir offset %lld no ficheiro - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: Não é possível enviar o comando LPD"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: Não é possível enviar o pedido de carga PAP"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: Não é possível enviar o pedido de dados PAP inicial"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: Não é possível enviar dados de impressão (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: Não é possível enviar os dados de impressão!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr ""
-#~ "ERROR: Não é possível enviar o ficheiro de impressão para a impressora"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: Não é possível enviar trailing nul para a impressora"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: Não é possível aguardar por pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: Não é possível escrever %d bytes em \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: Não é possível escrever %d bytes na impressora!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: Não é possível escrever o ficheiro de controlo"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: Não é possível escrever os dados de impressão"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: Não é possível escrever dados de impressão: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: Não é possível escrever dados de retícula no recurso!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: Não é possível escrever no ficheiro temporário"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr ""
-#~ "ERROR: Não é possível escrever dados de documento não comprimidos: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: Texto inesperado na linha %d de %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: Valor de opção de encriptação desconhecido \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: Ordem de ficheiro desconhecida \"%s\"\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: Caracteres de formato desconhecido \"%c\"\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: Formato desconhecido do catálogo de mensagens para \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: Opção desconhecida \"%s\" com valor \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: Modo de impressão desconhecido \"%s\"\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: Valor de opção de versão desconhecido \"%s\"!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr "ERROR: Valor de brilho não suportado %s ao utilizar brilho=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: Valor gama não suportado %s ao utilizar gama=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: Valor number-up não suportado %d ao utilizar number-up=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: Valor number-up-layout não suportado %s ao utilizar number-up-"
-#~ "layout=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: Valor page-border não suportado %s ao utilizar page-border=none!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: Detectado excesso doc_printf (%d bytes); a interromper!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: Filtro pdftops falhou ao sinal %d!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: Filtro pdftops saiu com o estado %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops saiu ao sinal %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops saiu com o estado %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: recuperável: Não é possível ligar à impressora; nova tentativa "
-#~ "dentro de 30 segundos...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() falhou"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: Não é possível fazer stat do ficheiro de impressão"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Ficheiro PPD vazio!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Erro: necessário nome de host após opção '-h'!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "FAIL\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "URIs do periférico do ficheiro foram desactivados! Para activar, consulte "
-#~ "a directiva FileDevice em \"%s/cupsd.conf\"."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Temperatura do fusor elevada!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Temperatura do fusor baixa!"
-
-#~ msgid "German FanFold"
-#~ msgstr "FanFold alemão"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "FanFold legal alemão"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Obtive um atributo printer-uri, mas não job-id!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk inactivo nas Preferências do Sistema\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk inactivo nas Preferências do Sistema.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: A cancelar trabalho de impressão...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: Ligado à impressora...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: A ligar à impressora...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: Ficheiro de controlo enviado com êxito\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: Ficheiro de dados enviado com êxito\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: A formatar página %d...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: A carregar ficheiro de imagem...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: A procurar a impressora...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: A abrir a ligação\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: Ficheiro de impressão enviado; a aguardar conclusão da "
-#~ "impressora...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: Impressora ocupada; nova tentativa dentro de 10 segundos...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Impressora ocupada; nova tentativa dentro de 30 segundos...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Impressora ocupada; nova tentativa dentro de 5 segundos...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr "INFO: A impressora não suporta IPP/%d.%d, a tentar IPP/1.0...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr ""
-#~ "INFO: A impressora está ocupada; nova tentativa dentro de 5 segundos...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: A impressora está actualmente sem ligação.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: A impressora está actualmente sem ligação.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: A impressora tem agora ligação.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: A impressora está sem ligação.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr ""
-#~ "INFO: Impressora sem ligação; nova tentativa dentro de 30 segundos...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: A imprimir página %d, %d%% concluído...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: A imprimir página %d...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: Preparada para imprimir.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: A enviar ficheiro de controlo (%lu bytes)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: A enviar ficheiro de controlo (%u bytes)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: A enviar dados\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: A enviar ficheiro de dados (%ld bytes)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: A enviar ficheiro de dados (%lld bytes)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: A enviar dados de impressão...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: Ficheiro de impressão enviado, %ld bytes...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: Ficheiro de impressão enviado, %lld bytes...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: A processar trabalho LPR, %.0f%% concluído...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: Não é possível contactar a impressora; a colocar em fila na próxima "
-#~ "impressora na classe...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: A utilizar a zona AppleTalk predefinida \"%s\"\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: A aguardar conclusão do trabalho...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: A aguardar até que a impressora fique disponível...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO Envelope B4"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (extra grande)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO Envelope B5"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO Envelope B6"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Tinta/toner quase vazio."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Tinta/toner vazio!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Receptáculo de tinta/toner quase cheio."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Receptáculo de tinta/toner cheio!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Bloqueio aberto."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Envelope de convite"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Envelope italiano"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "Não é possível reiniciar o trabalho #%d - sem ficheiros!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "Trabalho #%d não existe!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "Trabalho #%d concluído; não é possível alterar!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "Trabalho #%d não concluído!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "Trabalho #%d não retido para autenticação!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "Trabalho #%d não retido!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "Trabalho #%s não existe!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Trabalho %d não encontrado!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Não é possível renovar as subscrições do trabalho!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Envelope Kaku2"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Envelope Kaku3"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Idioma \"%s\" não suportado!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Suporte encravado!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Tabuleiro de suporte quase vazio."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Tabuleiro de suporte vazio!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Tabuleiro de suporte inexistente!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "É necessário encher o tabuleiro de suporte."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "Atributo document-number inexistente!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Aspas inexistentes na linha %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Variável de formato inexistente!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "Atributo notify-subscription-ids inexistente!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Atributo requesting-user-name inexistente!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Atributos necessários inexistentes!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Valor inexistente na linha %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Modelo: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Envelope Monarch"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: Ficheiro de impressão aceite - ID do trabalho %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr ""
-#~ "NOTICE: Ficheiro de impressão aceite - ID do trabalho desconhecido.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Sem nome PPD!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Sem controladores de impressora Windows instalados!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Sem trabalhos activos em %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Sem atributos no pedido!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Sem informações de autenticação fornecidas!"
-
-#~ msgid "No default printer"
-#~ msgstr "Sem impressora predefinida"
-
-#~ msgid "No file!?!"
-#~ msgstr "Sem ficheiro?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Tempo de modificação inexistente!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Nome de impressão inexistente!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Nenhum printer-uri para a classe!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Nenhum printer-uri encontrado!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Nenhum printer-uri no pedido!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Sem atributos de subscrição no pedido!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC quase em fim de vida."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC em fim de vida!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Sem toner!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Receptáculo de saída quase cheio."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Receptáculo de saída cheio!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "Saída de impressora %s enviada para %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr "Saída de impressora %s enviada para impressora remota %s em %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "Saída de impressora %s/%s enviada para %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr "Saída de impressora %s/%s enviada para impressora remota %s em %s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Tabuleiro de saída inexistente!"
-
-#~ msgid "PASS\n"
-#~ msgstr "PASS\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "Envelope PRC1"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "Envelope PRC10"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "Envelope PRC2"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "Envelope PRC3"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (extra grande)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "Envelope PRC4"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "Envelope PRC5"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "Envelope PRC6"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "Envelope PRC7"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "Envelope PRC8"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "Envelope PRC9"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Envelope pessoal"
-
-#~ msgid "Printer offline."
-#~ msgstr "Impressora sem ligação."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Classificação Proprietário Trabalho Ficheiro"
-#~ "(s) Tamanho total\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Classificação Proprietário Pri Trabalho "
-#~ "Ficheiros Tamanho total\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Comando em execução: %s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "Impressora SCSI"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tablóide (extra grande)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "O valor notify-user-data é demasiado grande (%d > 63 octetos)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "Impressora ou classe não partilhadas!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "Impressora ou classe não localizadas."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "Necessário atributo printer-uri!"
-
-#~ msgid "Toner low."
-#~ msgstr "Pouco toner."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "Demasiados valores job-sheets (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "Demasiados valores printer-state-reasons (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "Executivo EUA"
-
-#~ msgid "US Fanfold"
-#~ msgstr "Fanfold EUA"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "Legal EUA (extra grande)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "Carta EUA (extra grande)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "Carta EUA (pequena)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Não é possível adicionar o trabalho ao destino \"%s\"!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Não é possível alocar memória para tipos de ficheiros!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível copiar os ficheiros de controladores de impressora CUPS de "
-#~ "64 bits (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível copiar os ficheiros de controladores de impressora Windows "
-#~ "de 64 bits (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "Não é possível copiar ficheiros de recurso de impressora CUPS (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Não é possível copiar o ficheiro PPD - %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Não é possível copiar o ficheiro PPD!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível copiar os ficheiros de controladores de impressora Windows "
-#~ "2000 (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível copiar os ficheiros de controladores de impressora Windows "
-#~ "9x (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Não é possível copiar o script de interface - %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Não é possível criar printer-uri!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "Não é possível editar ficheiros cupsd.conf com mais de 1MB!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Não é possível localizar o destino para o trabalho!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Não é possível encontrar a impressora!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível instalar os ficheiros de controladores de impressora "
-#~ "Windows 2000 (%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível instalar os ficheiros de controladores de impressora "
-#~ "Windows 9x (%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Não é possível abrir o documento %d no trabalho %d!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Não é possível executar \"%s\": %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Não é possível enviar o comando para o controlador de impressora!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Não é possível definir o controlador de impressora Windows (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Não é possível usar o controlador de classe USB!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Erro de impressora desconhecido (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Conjunto de caracteres \"%s\" não suportado!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Compressão não suportada \"%s\"!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Atributo de compressão não suportado %s!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Formato não suportado \"%s\"!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Formato não suportado '%s'!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Formato não suportado %s/%s'!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Utilização:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr ""
-#~ "Utilização: opções de cópias de título de utilizador %s job-id [nome do "
-#~ "ficheiro]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr ""
-#~ "Utilização: opções de cópias de título de utilizador %s job-id "
-#~ "[ficheiro]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr ""
-#~ "Utilização: ficheiro de opções de cópias de título de utilizador %s job-"
-#~ "id\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Utilização: convert [ options ]\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ "\n"
-#~ " -f filename Definir ficheiro a ser convertido (caso contrário "
-#~ "stdin)\n"
-#~ " -o filename Definir ficheiro a ser gerado (caso contrário "
-#~ "stdout)\n"
-#~ " -i mime/type Definir tipo MIME de entrada (caso contrário auto-"
-#~ "typed)\n"
-#~ " -j mime/type Definir tipo MIME de saída (caso contrário "
-#~ "application/pdf)\n"
-#~ " -P filename.ppd Definir ficheiro PPD\n"
-#~ " -a 'name=value ...' Definir opção(ões)\n"
-#~ " -U username Definir nome de utilizador do trabalho\n"
-#~ " -J title Definir título\n"
-#~ " -c copies Definir número de cópias\n"
-#~ " -u Remover o ficheiro PPD ao terminar\n"
-#~ " -D Remover o ficheiro de entrada ao terminar\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Utilização: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ " -E Encriptar a ligação ao servidor\n"
-#~ " -H samba-server Utilizar o servidor SAMBA\n"
-#~ " -U samba-user Autenticar utilizando utilizador SAMBA\n"
-#~ " -a Exportar todas as impressoras\n"
-#~ " -h cups-server Utilizar o servidor CUPS\n"
-#~ " -v Verboso (mostrar comandos)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Utilização: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ "\n"
-#~ " -E Activar encriptação\n"
-#~ " -U username Especificar nome de utilizador\n"
-#~ " -h server[:port] Especificar endereço de servidor\n"
-#~ "\n"
-#~ " --[no-]debug-logging Activar/desactivar registo da depuração\n"
-#~ " --[no-]remote-admin Activar/desactivar administração remota\n"
-#~ " --[no-]remote-any Permitir/impedir acesso a partir da Internet\n"
-#~ " --[no-]remote-printers Mostrar/ocultar impressoras remotas\n"
-#~ " --[no-]share-printers Activar/desactivar partilha de impressora\n"
-#~ " --[no-]user-cancel-any Permitir/impedir utilizadores de cancelar "
-#~ "trabalhos\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Utilização: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Carregar ficheiro de configuração alternativa\n"
-#~ "-f Executar em primeiro plano\n"
-#~ "-F Executar em primeiro plano, mas separar\n"
-#~ "-h Mostrar esta mensagem de utilização\n"
-#~ "-l Executar cupsd a partir de launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Utilização: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ "\n"
-#~ " -c cupsd.conf Definir ficheiro cupsd.conf a utilizar\n"
-#~ " -j job-id[,N] Filtrar ficheiro N do trabalho especificado (a "
-#~ "predefinição é ficheiro 1)\n"
-#~ " -n copies Definir número de cópias\n"
-#~ " -o name=value Definir opção(ões)\n"
-#~ " -p filename.ppd Definir ficheiro PPD\n"
-#~ " -t title Definir título\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Utilização: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ "\n"
-#~ " -h Mostrar utilização de programa\n"
-#~ "\n"
-#~ " Nota: este programa só valida comentários DSC, não o próprio "
-#~ "PostScript.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Utilização: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[."
-#~ "gz]]\n"
-#~ " programa | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ "\n"
-#~ " -R root-directory Especificar raiz alternativa\n"
-#~ " -W {tudo, sem, restrições, predefinições, duplex, filtros, "
-#~ "traduções}\n"
-#~ " Emitir avisos em vez de erros\n"
-#~ " -q Executar silenciosamente\n"
-#~ " -r Utilizar modo aberto 'descontraído'\n"
-#~ " -v Ligeiramente verboso\n"
-#~ " -vv Muito verboso\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Utilização: lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Utilização: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Utilização: lppasswd [-g groupname]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Utilização: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Utilização: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] "
-#~ "[+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Utilização: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Opções:\n"
-#~ " -D name=value Definir variável designada como valor.\n"
-#~ " -I include-dir Adicionar incluir directório ao caminho de "
-#~ "pesquisa.\n"
-#~ " -c catalog.po Carregar o catálogo de mensagens especificado.\n"
-#~ " -d output-dir Especificar o directório de saída.\n"
-#~ " -l lang[,lang,...] Especificar o(s) idioma(s) (locale).\n"
-#~ " -m Utilizar o valor ModelName como nome de ficheiro.\n"
-#~ " -t Testar PPDs em vez de os gerar.\n"
-#~ " -v Ser verboso (mais \"v\" para mais verbosidade).\n"
-#~ " -z Comprimir ficheiros PPD utilizando o zip GNU.\n"
-#~ " --cr Terminar linhas em CR (Mac OS 9).\n"
-#~ " --crlf Terminar linhas em CR + LF (Windows).\n"
-#~ " --lf Terminar linhas em LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Utilização: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Definir variável designada como valor.\n"
-#~ "Opções:\n"
-#~ " -I include-dir Adicionar incluir directório ao caminho de pesquisa.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Utilização: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Opções:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Utilização: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Opções:\n"
-#~ " -o filename.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Utilização: ppdpo [options] -o filename.po filename.drv [ ... filenameN."
-#~ "drv ]\n"
-#~ "Opções:\n"
-#~ " -D name=value Definir variável designada como valor.\n"
-#~ " -I include-dir Adicionar incluir directório ao caminho de pesquisa.\n"
-#~ " -v Ser verboso (mais \"v\" para mais verbosidade).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Utilização: snmp [host-or-ip-address]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: A adicionar apenas as primeiras %d impressoras encontradas"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: Booleano esperado para opção waiteof \"%s\"\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: Falha ao ler pedido de side-channel!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: Não é possível incluir a opção \"%s\" via IncludeFeature!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: a impressora não responde\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: A impressora enviou um EOF inesperado\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Host remoto não respondeu com byte de estado de comando após %d "
-#~ "segundos!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Host remoto não respondeu com byte de estado de controlo após %d "
-#~ "segundos!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Host remoto não respondeu com byte de estado de dados após %d "
-#~ "segundos!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: Comando SCSI sem resposta (%d); a tentar de novo...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Este documento não está de acordo com ADSC e pode não ser "
-#~ "impresso correctamente!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: Não é possível abrir o ficheiro \"%s:%s\": %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: Não é possível enviar o pedido de estado PAP"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: Pacote PAP inesperado do tipo %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: Pacote PAP desconhecido do tipo %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: Escolha desconhecida \"%s\" para opção \"%s\"!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: Opção desconhecida \"%s\"!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: Taxa baud não suportada %s!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: número esperado para opção status \"%s\"\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: recuperável: host de rede '%s' ocupado; nova tentativa dentro de "
-#~ "%d segundos...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr "Aviso, sem controladores de impressora Windows 2000 instalados!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "Envelope You4"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "convert: Utilize a opção -f para especificar um ficheiro para converter.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: Sem ficheiro PPD para impressora \"%s\" - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: Não é possível ligar ao servidor: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: Opção desconhecida \"%s\"!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: Opção desconhecida \"-%c\"!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: Nome de ficheiro config esperado após opção \"-c\"!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: Não é possível obter o directório actual!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: Argumento desconhecido \"%s\" - a interromper!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: Opção desconhecida \"%c\" - a interromper!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr "cupsd: suporte launchd(8) não compilado; execução em modo normal.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: Número de documento inválido %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: ID de trabalho inválido %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: Só pode ser especificado um nome de ficheiro!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: Não é possível criar o ficheiro temporário: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: Não é possível obter o ficheiro do trabalho - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: Opção -q incompatível com opção -v.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: Opção -v incompatível com opção -q.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "periférico para %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "periférico para %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\tobter ajuda sobre comandos\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "atributo job-printer-uri inexistente!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Nome de classe só pode ter caracteres imprimíveis!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: PPD esperado após opção '-P'!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr ""
-#~ "lpadmin: Permitir/negar:lista de utilizadores esperado após opção '-u'!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: Classe esperada após opção '-r'!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: Nome de classe esperado após opção '-c'!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: Descrição esperada após opção '-D'!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: URI de periférico esperado após opção '-v'!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: Tipo(s) de ficheiro esperados após opção '-I'!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: Nome de host esperado após opção '-h'!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: Interface esperada após opção '-i'!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: Localização esperada após opção '-L'!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: Modelo esperado após opção '-m'!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: Nome=valor esperado após opção '-o'!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: Impressora esperada após opção '-p'!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: Nome de impressora esperado após opção '-d'!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: Impressora ou classe esperadas após opção '-x'!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: Sem nomes de membro detectados!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: Impressora %s já é membro da classe %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: Impressora %s não é membro da classe %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Nome de impressora só pode ter caracteres imprimíveis!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível adicionar impressora à classe:\n"
-#~ " Especifique primeiro um nome de impressora!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: Não é possível ligar ao servidor: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: Não é possível criar o ficheiro temporário - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: Não é possível criar o ficheiro temporário: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: Não é possível abrir o ficheiro PPD \"%s\" - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: Não é possível abrir o ficheiro \"%s\": %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível remover a impressora da classe:\n"
-#~ " Especifique primeiro um nome de impressora!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível definir o ficheiro PPD:\n"
-#~ " Especifique primeiro um nome de impressora!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível definir o URI do periférico:\n"
-#~ " Especifique primeiro um nome de impressora!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível definir o script de interface ou ficheiro PPD:\n"
-#~ " Especifique primeiro um nome de impressora!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível definir o script de interface:\n"
-#~ " Especifique primeiro um nome de impressora!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível definir a descrição da impressora:\n"
-#~ " Especifique primeiro um nome de impressora!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível definir a localização da impressora:\n"
-#~ " Especifique primeiro um nome de impressora!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível definir as opções da impressora:\n"
-#~ " Especifique primeiro um nome de impressora!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: Opção permitir/negar desconhecida \"%s\"!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: Argumento desconhecido '%s'!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: Opção desconhecida '%c'!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: Aviso - lista de tipo de conteúdo ignorada!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo: Esperada cadeia ID de periférico 1284 após --device-id!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: Esperado idioma após --language!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: Esperados marca e modelo após --make-and-model!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: Esperada cadeia de produto após --product!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: Esperada lista de esquema após --exclude-schemes!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: Esperada lista de esquema após --include-schemes!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: Esperado limite de tempo excedido após --timeout!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: Argumento desconhecido '%s'!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: Opção desconhecida '%c'!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: Opção desconhecida '%s'!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: Não é possível ligar ao servidor: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: Argumento desconhecido '%s'!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: Opção desconhecida '%c'!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: Sem impressoras!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: Não é possível adicionar impressora ou instância: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: Não é possível obter o ficheiro PPD para %s: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: Não é possível abrir o ficheiro PPD para %s!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: Impressora ou classe desconhecidas!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: Só raiz pode adicionar ou apagar palavras-passe!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: Ficheiro de palavra-passe ocupado!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: Ficheiro de palavra-passe não actualizado!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: Palavra-passe não corresponde!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: Palavra-passe rejeitada.\n"
-#~ "A palavra-passe deve ter o mínimo de 6 caracteres, sem conter\n"
-#~ "o nome de utilizador, e deve ter pelo menos uma letra e um número.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: Palavras-passe não correspondem!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: Não é possível copiar a cadeia de palavra-passe: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: Não é possível abrir o ficheiro de palavra-passe: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd: Não é possível escrever no ficheiro de palavra-passe: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd: falha ao efectuar cópia de segurança de ficheiro de palavra-"
-#~ "passe antigo: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: falha ao alterar nome de ficheiro de palavra-passe: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: utilizador \"%s\" e grupo \"%s\" não existem.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: erro - nomes de variáveis de ambiente %s inexistentes no destino "
-#~ "\"%s\"!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "membros da classe %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "sem entradas\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "sem destino predefinido de sistema\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events não especificados!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri URI \"%s\" já está em utilização!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri URI \"%s\" utiliza esquema desconhecido!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d incorrecto!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: A adicionar incluir directório \"%s\"...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: A adicionar/actualizar texto UI de %s...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Valor boolean inválido (%s) na linha %d de %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Nome de resolução inválido \"%s\" na linha %d de %s!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: Palavra-chave de estado inválida %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: Substituição de variável inválida ($%c) na linha %d de %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: Encontrada escolha na linha %d de %s sem Opção!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: Duplicar #po para o locale %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: Esperada uma definição de filtro na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado um nome de programa na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: Esperado valor boolean na linha %d de %s.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado charset após Tipo de Letra na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: Esperado código de escolha na linha %d de %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: Esperado nome/texto de escolha na linha %d de %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Esperada ordem de cor para ColorModel na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado espaço de cor para ColorModel na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Esperada compressão para ColorModel na linha %d de %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Esperada cadeia de restrições para UIConstraints na linha %d de %"
-#~ "s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Esperada palavra-chave do tipo de controlador após DriverType na "
-#~ "linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado tipo duplex após Duplex na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Esperada codificação após Tipo de Letra na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome de ficheiro após #po %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome/texto de grupo na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado incluir nome de ficheiro na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado número inteiro na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado locale após #po na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome após %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome após FileName na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome após Tipo de Letra na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome após Fabricante na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome após MediaSize na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome após ModelName na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome após PCFileName na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome/texto após %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome/texto após Instalável na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome/texto após Resolução na linha %d de %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Esperada combinação nome/texto para ColorModel na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado nome/texto da opção na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: Esperada secção de opção na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado tipo de opção na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado substituir campo após Resolução na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado número real na linha %d de %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Esperada resolução/tipo de suporte após ColorProfile na linha %d de "
-#~ "%s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Esperada resolução/tipo de suporte após SimpleColorProfile na linha "
-#~ "%d de %s!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado selector após %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado estado Tipo de Letra na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: Esperada cadeia após Copyright na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: Esperada cadeia após Versão na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: Esperados dois nomes de opção na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Esperado valor após %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Esperada versão após Tipo de Letra na linha %d de %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: Nome de ficheiro #include/#po inválido \"%s\"!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Custo inválido de filtro na linha %d de %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Tipo MIME vazio inválido de filtro na linha %d de %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Nome de programa vazio inválido de filtro na linha %d de %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Secção de opção inválida \"%s\" na linha %d de %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Tipo de opção inválido \"%s\" na linha %d de %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: A carregar ficheiro de informação de controlador \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: A carregar mensagens do locale \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: A carregar mensagens de \"%s\"...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: #endif inexistente no final de \"%s\"!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: #if inexistente na linha %d de %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr ""
-#~ "ppdc: Não foi fornecido qualquer catálogo de mensagem para o locale %s!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Opção %s redefinida com um tipo diferente na linha %d de %s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc: Restrição de opção tem *name na linha %d de %s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: Demasiados #if aninhados na linha %d de %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: Não é possível criar o ficheiro PPD \"%s\" - %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: Não é possível criar o directório de saída %s: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: Não é possível criar dutos de saída de dados: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: Não é possível executar cupstestppd: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: Não é possível encontrar #po ficheiro %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Não é possível encontrar incluir ficheiro \"%s\" na linha %d de %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: Não é possível encontrar a localização de \"%s\" - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr ""
-#~ "ppdc: Não é possível carregar o ficheiro de localização \"%s\" - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Variável indefinida (%s) na linha %d de %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: Tipo de controlador desconhecido %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Tipo de duplex desconhecido \"%s\" na linha %d de %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Tamanho de suporte desconhecido \"%s\" na linha %d de %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: Token desconhecido \"%s\" visto na linha %d de %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Caracteres de controlo desconhecidos no número real \"%s\" na linha "
-#~ "%d de %s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc: Cadeia não terminada começando por %c na linha %d de %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: A escrever %s...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: A escrever ficheiros PPD no directório \"%s\"...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: LanguageVersion inválida \"%s\" em %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: A ignorar o ficheiro PPD %s...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr ""
-#~ "ppdmerge: Não é possível efectuar a cópia de segurança %s em %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "impressora %s desactivada desde %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "impressora %s inactiva. activada desde %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "impressora %s agora a imprimir %s-%d. activada desde %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "impressora %s/%s desactivada desde %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "impressora %s/%s inactiva. activada desde %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "impressora %s/%s agora a imprimir %s-%d. activada desde %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "id de pedido é %s-%d (%d ficheiro(s))\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "programador não está em execução\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "programador em execução\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\tmostra estado de daemon e fila\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "destino predefinido de sistema: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "destino predefinido de sistema: %s/%s\n"
diff --git a/locale/cups_pt_BR.po b/locale/cups_pt_BR.po
deleted file mode 100644
index 3df237e7..00000000
--- a/locale/cups_pt_BR.po
+++ /dev/null
@@ -1,8742 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2011-12-20 13:04-0200\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f milímetros"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f a %.0f x %.0f milímetros"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f polegadas"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f a %.2f x %.2f polegadas"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s não pode ser alterado."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 polegada/s"
-
-msgid "1.25x0.25\""
-msgstr "1.25x0.25\""
-
-msgid "1.25x2.25\""
-msgstr "1.25x2.25\""
-
-msgid "1.5 inch/sec."
-msgstr "1.5 polegada/s"
-
-msgid "1.50x0.25\""
-msgstr "1.50x0.25\""
-
-msgid "1.50x0.50\""
-msgstr "1.50x0.50\""
-
-msgid "1.50x1.00\""
-msgstr "1.50x1.00\""
-
-msgid "1.50x2.00\""
-msgstr "1.50x2.00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 polegadas/s"
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/s"
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 polegadas/s"
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 polegadas/s"
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/s"
-
-msgid "120x60dpi"
-msgstr "120x60ppp"
-
-msgid "120x72dpi"
-msgstr "120x72ppp"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136ppp"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/s"
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/s"
-
-msgid "150dpi"
-msgstr "150ppp"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180ppp"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 polegadas/s"
-
-msgid "2-Sided Printing"
-msgstr "Impressão Frente e Verso"
-
-msgid "2.00x0.37\""
-msgstr "2.00x0.37\""
-
-msgid "2.00x0.50\""
-msgstr "2.00x0.50\""
-
-msgid "2.00x1.00\""
-msgstr "2.00x1.00\""
-
-msgid "2.00x1.25\""
-msgstr "2.00x1.25\""
-
-msgid "2.00x2.00\""
-msgstr "2.00x2.00\""
-
-msgid "2.00x3.00\""
-msgstr "2.00x3.00\""
-
-msgid "2.00x4.00\""
-msgstr "2.00x4.00\""
-
-msgid "2.00x5.50\""
-msgstr "2.00x5.50\""
-
-msgid "2.25x0.50\""
-msgstr "2.25x0.50\""
-
-msgid "2.25x1.25\""
-msgstr "2.25x1.25\""
-
-msgid "2.25x4.00\""
-msgstr "2.25x4.00\""
-
-msgid "2.25x5.50\""
-msgstr "2.25x5.50\""
-
-msgid "2.38x5.50\""
-msgstr "2.38x5.50\""
-
-msgid "2.5 inches/sec."
-msgstr "2.5 polegadas/s"
-
-msgid "2.50x1.00\""
-msgstr "2.50x1.00\""
-
-msgid "2.50x2.00\""
-msgstr "2.50x2.00\""
-
-msgid "2.75x1.25\""
-msgstr "2.75x1.25\""
-
-msgid "2.9 x 1\""
-msgstr "2.9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/s"
-
-msgid "200 mm/sec."
-msgstr "200 mm/s"
-
-msgid "203dpi"
-msgstr "203ppp"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "Séries de 24 pinos"
-
-msgid "240x72dpi"
-msgstr "240x72ppp"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/s"
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 polegadas/s"
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3.00x1.00\""
-
-msgid "3.00x1.25\""
-msgstr "3.00x1.25\""
-
-msgid "3.00x2.00\""
-msgstr "3.00x2.00\""
-
-msgid "3.00x3.00\""
-msgstr "3.00x3.00\""
-
-msgid "3.00x5.00\""
-msgstr "3.00x5.00\""
-
-msgid "3.25x2.00\""
-msgstr "3.25x2.00\""
-
-msgid "3.25x5.00\""
-msgstr "3.25x5.00\""
-
-msgid "3.25x5.50\""
-msgstr "3.25x5.50\""
-
-msgid "3.25x5.83\""
-msgstr "3.25x5.83\""
-
-msgid "3.25x7.83\""
-msgstr "3.25x7.83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "Disco de 3.5\""
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "Disco de 3.5\" - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3.50x1.00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/s"
-
-msgid "300 mm/sec."
-msgstr "300 mm/s"
-
-msgid "300dpi"
-msgstr "300ppp"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360ppp"
-
-msgid "360x180dpi"
-msgstr "360x180ppp"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 polegadas/s"
-
-msgid "4.00x1.00\""
-msgstr "4.00x1.00\""
-
-msgid "4.00x13.00\""
-msgstr "4.00x13.00\""
-
-msgid "4.00x2.00\""
-msgstr "4.00x2.00\""
-
-msgid "4.00x2.50\""
-msgstr "4.00x2.50\""
-
-msgid "4.00x3.00\""
-msgstr "4.00x3.00\""
-
-msgid "4.00x4.00\""
-msgstr "4.00x4.00\""
-
-msgid "4.00x5.00\""
-msgstr "4.00x5.00\""
-
-msgid "4.00x6.00\""
-msgstr "4.00x6.00\""
-
-msgid "4.00x6.50\""
-msgstr "4.00x6.50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/s"
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 polegadas/s"
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 polegadas/s"
-
-msgid "6.00x1.00\""
-msgstr "6.00x1.00\""
-
-msgid "6.00x2.00\""
-msgstr "6.00x2.00\""
-
-msgid "6.00x3.00\""
-msgstr "6.00x3.00\""
-
-msgid "6.00x4.00\""
-msgstr "6.00x4.00\""
-
-msgid "6.00x5.00\""
-msgstr "6.00x5.00\""
-
-msgid "6.00x6.00\""
-msgstr "6.00x6.00\""
-
-msgid "6.00x6.50\""
-msgstr "6.00x6.50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/s"
-
-msgid "600dpi"
-msgstr "600ppp"
-
-msgid "60dpi"
-msgstr "60ppp"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 polegadas/s"
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720ppp"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 polegadas/s"
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8.00x1.00\""
-
-msgid "8.00x2.00\""
-msgstr "8.00x2.00\""
-
-msgid "8.00x3.00\""
-msgstr "8.00x3.00\""
-
-msgid "8.00x4.00\""
-msgstr "8.00x4.00\""
-
-msgid "8.00x5.00\""
-msgstr "8.00x5.00\""
-
-msgid "8.00x6.00\""
-msgstr "8.00x6.00\""
-
-msgid "8.00x6.50\""
-msgstr "8.00x6.50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/s"
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 polegadas/s"
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "Séries de 9 pinos"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCO C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCO D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCO E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Aceitar Trabalhos"
-
-msgid "Accepted"
-msgstr "Aceito"
-
-msgid "Add Class"
-msgstr "Adicionar Classe"
-
-msgid "Add Printer"
-msgstr "Adicionar Impressora"
-
-msgid "Add RSS Subscription"
-msgstr "Adicionar Inscrição RSS"
-
-msgid "Address"
-msgstr "Endereço"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Endereço - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Administração"
-
-msgid "Always"
-msgstr "Sempre"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Aplicador"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Cursor NULL dests inválido"
-
-msgid "Bad OpenGroup"
-msgstr "OpenGroup Inválido"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "OpenUI/JCLOpenUI Inválido"
-
-msgid "Bad OrderDependency"
-msgstr "OrderDependency Inválido"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Pedido Inválido"
-
-msgid "Bad SNMP version number"
-msgstr "Número de versão SNMP inválido"
-
-msgid "Bad UIConstraints"
-msgstr "UIConstraints Inválido"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Valor de cópias inválidas %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Parâmetro personalizado inválido"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Valor de number-up inválido %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Valores de page-ranges inválidos %d-%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Banners"
-
-msgid "Billing Information: "
-msgstr "Informações de Cobrança: "
-
-msgid "Bond Paper"
-msgstr "Papel Bond"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "Impressora de Etiqueta CPCL"
-
-msgid "Cancel RSS Subscription"
-msgstr "Cancelar Inscrição RSS"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Alterar Configurações"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Classes"
-
-msgid "Clean Print Heads"
-msgstr "Limpar Cabeçotes de Impressão"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Cor"
-
-msgid "Color Mode"
-msgstr "Modo de Cor"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Nome de comunidade usa comprimento indefinido"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Continuar"
-
-msgid "Continuous"
-msgstr "Contínuo"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Criado"
-
-msgid "Created On: "
-msgstr "Criado em: "
-
-msgid "Custom"
-msgstr "Personalizar"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Cortar"
-
-msgid "Cutter"
-msgstr "Guilhotina"
-
-msgid "Dark"
-msgstr "Escuro"
-
-msgid "Darkness"
-msgstr "Escuridão"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Apagar Classe"
-
-msgid "Delete Printer"
-msgstr "Apagar Impressora"
-
-msgid "Description: "
-msgstr "Descrição: "
-
-msgid "DeskJet Series"
-msgstr "DeskJet Series"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "O destino \"%s\" não está aceitando trabalhos."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Mídia Termal Direta"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Desativado"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Nome do Driver: "
-
-msgid "Driver Version: "
-msgstr "Versão do Driver: "
-
-msgid "Duplexer"
-msgstr "Duplexer"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "Impressora de Etiquetas EPL1"
-
-msgid "EPL2 Label Printer"
-msgstr "Impressora de Etiquetas EPL2"
-
-msgid "Edit Configuration File"
-msgstr "Editar Arquivo de Configuração"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Finalizando Banner"
-
-msgid "English"
-msgstr "Portuguese"
-
-msgid "Enter old password:"
-msgstr "Digite a senha antiga:"
-
-msgid "Enter password again:"
-msgstr "Digite a senha novamente:"
-
-msgid "Enter password:"
-msgstr "Digite a senha:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Digite o seu nome de usuário e a sua senha ou o nome de usuário e a senha de "
-"root para acessar esta página. Se estiver usando a autenticação Kerberos, "
-"certifique-se de possuir uma entrada Kerberos válida."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Alimentação de Envelopes"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Política de Erro"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "A cada 10 etiquetas"
-
-msgid "Every 2 Labels"
-msgstr "A cada 2 etiquetas"
-
-msgid "Every 3 Labels"
-msgstr "A cada 3 etiquetas"
-
-msgid "Every 4 Labels"
-msgstr "A cada 4 etiquetas"
-
-msgid "Every 5 Labels"
-msgstr "A cada 5 etiquetas"
-
-msgid "Every 6 Labels"
-msgstr "A cada 6 etiquetas"
-
-msgid "Every 7 Labels"
-msgstr "A cada 7 etiquetas"
-
-msgid "Every 8 Labels"
-msgstr "A cada 8 etiquetas"
-
-msgid "Every 9 Labels"
-msgstr "A cada 9 etiquetas"
-
-msgid "Every Label"
-msgstr "Todas as Etiquetas"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Falha de Expectativa"
-
-msgid "Export Printers to Samba"
-msgstr "Exportar Impressoras para Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Pasta de Arquivo"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Pasta de Arquivo - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Fólio"
-
-msgid "Forbidden"
-msgstr "Esquecido"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Geral"
-
-msgid "Generic"
-msgstr "Genérico"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU usa comprimento indefinido"
-
-msgid "Glossy Paper"
-msgstr "Papel Brilhante"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Escala de Cinzas"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Pasta Suspensa"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Pasta Suspensa - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Caractere de controle ilegal"
-
-msgid "Illegal main keyword string"
-msgstr "Seqüência de caracteres de palavra-chave principal ilegal"
-
-msgid "Illegal option keyword string"
-msgstr "Seqüência de caracteres de palavra-chave de opção ilegal"
-
-msgid "Illegal translation string"
-msgstr "Seqüência de caracteres de tradução ilegal"
-
-msgid "Illegal whitespace character"
-msgstr "Seqüência de caracteres de espaço em branco ilegal"
-
-msgid "Installable Options"
-msgstr "Opções Instaláveis"
-
-msgid "Installed"
-msgstr "Instalado"
-
-msgid "IntelliBar Label Printer"
-msgstr "Impressora de Etiquetas IntelliBar"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "Erro interno"
-
-msgid "Internet Postage 2-Part"
-msgstr "Porte de Internet 2-Part"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Porte de Internet 2-Part - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Porte de Internet 3-Part"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Porte de Internet 3-Part - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Protocolo de Impressão da Internet"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "O trabalho #%d já foi anulado - não é possível cancelar."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "O trabalho #%d já foi cancelado - não é possível cancelar."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "O trabalho #%d já está concluído - não é possível cancelar."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Trabalho Concluído"
-
-msgid "Job Created"
-msgstr "Trabalho Criado"
-
-msgid "Job ID: "
-msgstr "ID de Trabalho: "
-
-msgid "Job Options Changed"
-msgstr "Opções de Trabalho Alteradas"
-
-msgid "Job Stopped"
-msgstr "Trabalho Parado"
-
-msgid "Job UUID: "
-msgstr "UUID de Trabalho: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "O trabalho está concluído e não pode ser alterado."
-
-msgid "Job operation failed:"
-msgstr "Falha de operação de trabalho:"
-
-msgid "Job state cannot be changed."
-msgstr "O estado do trabalho não pode ser alterado."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Trabalhos"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "Host ou Impressora LPD/LPR"
-
-msgid "Label Printer"
-msgstr "Impressora de Etiquetas"
-
-msgid "Label Top"
-msgstr "Parte Superior da Etiqueta"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Endereço Grande"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Endereço Grande - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet Series PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Claro"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Linha maior do que o máximo permitido (255 caracteres)"
-
-msgid "List Available Printers"
-msgstr "Listar Impressoras Disponíveis"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Localização: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Margem Grande (Vertical)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Marca e Modelo: "
-
-msgid "Manual Feed"
-msgstr "Alimentação Manual"
-
-msgid "Media Dimensions: "
-msgstr "Dimensões da Mídia: "
-
-msgid "Media Limits: "
-msgstr "Limites da Mídia: "
-
-msgid "Media Name: "
-msgstr "Nome da Mídia: "
-
-msgid "Media Size"
-msgstr "Tamanho de Mídia"
-
-msgid "Media Source"
-msgstr "Fonte de Mídia"
-
-msgid "Media Tracking"
-msgstr "Rastreamento de Mídia"
-
-msgid "Media Type"
-msgstr "Tipo de Mídia"
-
-msgid "Medium"
-msgstr "Médio"
-
-msgid "Memory allocation error"
-msgstr "Erro de alocação de memória"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "Cabeçalho PPD-Adobe-4.x ausente"
-
-msgid "Missing asterisk in column 1"
-msgstr "Asterisco ausente na coluna 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Seqüência de caracteres de valor ausente"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Modificar Classe"
-
-msgid "Modify Printer"
-msgstr "Modificar Impressora"
-
-msgid "Move All Jobs"
-msgstr "Mover Todos os Trabalhos"
-
-msgid "Move Job"
-msgstr "Mover Trabalho"
-
-msgid "Moved Permanently"
-msgstr "Movido Permanentemente"
-
-msgid "NULL PPD file pointer"
-msgstr "Ponteiro de arquivo NULL PPD"
-
-msgid "Name OID uses indefinite length"
-msgstr "OID do nome usa comprimento indefinido"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Nunca"
-
-msgid "New Stylus Color Series"
-msgstr "New Stylus Color Series"
-
-msgid "New Stylus Photo Series"
-msgstr "New Stylus Photo Series"
-
-msgid "No"
-msgstr "Não"
-
-msgid "No Content"
-msgstr "Sem Conteúdo"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Nenhuma VarBind SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Nenhuma conexão ativa"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Nenhum nome de comunidade"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Nenhum destino adicionado."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Nenhum error-index"
-
-msgid "No error-status"
-msgstr "Nenhum error-status"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Nenhum OID de nome"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Nenhum request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Nenhuma inscrição encontrada."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Nenhuma variable-bindings SEQUENCE"
-
-msgid "No version number"
-msgstr "Nenhum número de versão"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Descontínuo (Leitura de marcas)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Descontínuo (Leitura Web)"
-
-msgid "Normal"
-msgstr "Normal"
-
-msgid "Not Found"
-msgstr "Não Encontrado"
-
-msgid "Not Implemented"
-msgstr "Não Implementado"
-
-msgid "Not Installed"
-msgstr "Não Instalado"
-
-msgid "Not Modified"
-msgstr "Não Modificado"
-
-msgid "Not Supported"
-msgstr "Incompatível"
-
-msgid "Not allowed to print."
-msgstr "Não permitido para impressão."
-
-msgid "Note"
-msgstr "Nota"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Desligado (Frente)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Ajuda On-line"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "falha na abertura de %s: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup sem um CloseGroup primeiro"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI sem um CloseUI/JCLCloseUI primeiro"
-
-msgid "Operation Policy"
-msgstr "Política de Operação"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Opções Instaladas"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Opções: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Modo de Saída"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "Impressora Laser PCL"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "O pacote não contém uma Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "O pacote não começa com SEQUENCE"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Senha para %s em %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "A senha para %s requerida para acessar %s através do SAMBA: "
-
-msgid "Pause Class"
-msgstr "Interromper Classe"
-
-msgid "Pause Printer"
-msgstr "Colocar Impressora em Pausa"
-
-msgid "Peel-Off"
-msgstr "Soltar"
-
-msgid "Photo"
-msgstr "Foto"
-
-msgid "Photo Labels"
-msgstr "Etiquetas de Foto"
-
-msgid "Plain Paper"
-msgstr "Papel Normal"
-
-msgid "Policies"
-msgstr "Políticas"
-
-msgid "Port Monitor"
-msgstr "Monitor da Porta"
-
-msgid "PostScript Printer"
-msgstr "Impressora PostScript"
-
-msgid "Postcard"
-msgstr "Cartão-Postal"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Densidade da Impressão"
-
-msgid "Print Job:"
-msgstr "Imprimir Trabalho:"
-
-msgid "Print Mode"
-msgstr "Modo de Impressão"
-
-msgid "Print Rate"
-msgstr "Taxa de Impressão"
-
-msgid "Print Self-Test Page"
-msgstr "Imprimir Página de Autoteste"
-
-msgid "Print Speed"
-msgstr "Velocidade de Impressão"
-
-msgid "Print Test Page"
-msgstr "Imprimir Página de Teste"
-
-msgid "Print and Cut"
-msgstr "Imprimir e Cortar"
-
-msgid "Print and Tear"
-msgstr "Imprimir e Romper"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Impresso para: "
-
-msgid "Printed From: "
-msgstr "Impresso de: "
-
-msgid "Printed On: "
-msgstr "Impresso em: "
-
-msgid "Printer Added"
-msgstr "Impressora Adicionada"
-
-msgid "Printer Default"
-msgstr "Padrão de Impressora"
-
-msgid "Printer Deleted"
-msgstr "Impressora Apagada"
-
-msgid "Printer Modified"
-msgstr "Impressora Modificada"
-
-msgid "Printer Name: "
-msgstr "Nome de Impressora: "
-
-msgid "Printer Paused"
-msgstr "Impressora em Pausa"
-
-msgid "Printer Settings"
-msgstr "Ajustes da Impressora"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Impressora:"
-
-msgid "Printers"
-msgstr "Impressoras"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Ignorar Trabalhos"
-
-msgid "Quarto"
-msgstr "Quarto"
-
-msgid "Quota limit reached."
-msgstr "Limite de quota alcançado."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Rejeitar Trabalhos"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Imprimir Novamente Após Erro"
-
-msgid "Request Entity Too Large"
-msgstr "Entidade do Pedido Muito Grande"
-
-msgid "Resolution"
-msgstr "Resolução"
-
-msgid "Resume Class"
-msgstr "Retomar Classe"
-
-msgid "Resume Printer"
-msgstr "Retomar Impressora"
-
-msgid "Return Address"
-msgstr "Endereço de Devolução"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Endereço de Devolução - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Retroceder"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE usa comprimento indefinido"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Ver Outro"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Porta serial nº%d"
-
-msgid "Server Restarted"
-msgstr "Servidor Reiniciado"
-
-msgid "Server Security Auditing"
-msgstr "Auditoria de Segurança de Servidor"
-
-msgid "Server Started"
-msgstr "Servidor Iniciado"
-
-msgid "Server Stopped"
-msgstr "Servidor Parado"
-
-msgid "Service Unavailable"
-msgstr "Serviço Não Disponível"
-
-msgid "Set Allowed Users"
-msgstr "Definir Usuários Permitidos"
-
-msgid "Set As Server Default"
-msgstr "Definir como Padrão de Servidor"
-
-msgid "Set Class Options"
-msgstr "Definir Opções de Classe"
-
-msgid "Set Printer Options"
-msgstr "Definir Opções de Impressão"
-
-msgid "Set Publishing"
-msgstr "Definir Publicação"
-
-msgid "Shipping Address"
-msgstr "Endereço de Remessa"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Endereço de Remessa - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Margem Pequena (Horizontal)"
-
-msgid "Special Paper"
-msgstr "Papel Especial"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Padrão"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Iniciando Banner"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Instrução"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color Series"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo Series"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Alternando Protocolos"
-
-msgid "Tabloid"
-msgstr "Tablóide"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Rasgar"
-
-msgid "Tear-Off"
-msgstr "Remover"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Remover Posição de Ajuste"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "O arquivo PPD \"%s\" não pôde ser encontrado."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "O arquivo PPD \"%s\" não pôde ser aberto: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"O nome de classe pode conter apenas até 127 caracteres imprimíveis e não "
-"pode conter espaços, barras (/) ou o sinal de quadrado (#)."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"O atributo notify-lease-duration não pode ser usado com as inscrições de "
-"trabalho."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"O nome da impressora somente pode conter até 127 caracteres imprimíveis e "
-"não pode conter espaços, barras (/) ou o sinal de quadrado (#)."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "O printer-uri \"%s\" contém caracteres inválidos."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"O printer-uri deve ser do formato \"ipp://HOSTNAME/classes/CLASSNAME\"."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"O printer-uri deve ser do formato \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"O nome de inscrição pode não conter espaços, barras (/), pontos de "
-"interrogação (?) ou o sinal de quadrado (#)."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Há muitas assinaturas."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Mídia de Transferência Termal"
-
-msgid "Title: "
-msgstr "Título: "
-
-msgid "Too many active jobs."
-msgstr "Muitos trabalhos ativos."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Transparência"
-
-msgid "Tray"
-msgstr "Bandeja"
-
-msgid "Tray 1"
-msgstr "Bandeja 1"
-
-msgid "Tray 2"
-msgstr "Bandeja 2"
-
-msgid "Tray 3"
-msgstr "Bandeja 3"
-
-msgid "Tray 4"
-msgstr "Bandeja 4"
-
-msgid "URI Too Long"
-msgstr "URI Muito Extenso"
-
-msgid "US Ledger"
-msgstr "Duplo Carta EUA"
-
-msgid "US Legal"
-msgstr "Legal EUA"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "Carta EUA"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "Porta Serial USB nº%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Não é possível acessar cupsd.conf file:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Não é possível adicionar a inscrição RSS:"
-
-msgid "Unable to add class:"
-msgstr "Não é possível adicionar a classe:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Não é possível adicionar a impressora:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Não é possível cancelar a inscrição RSS:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Não é possível alterar o atributo printer-is-shared:"
-
-msgid "Unable to change printer:"
-msgstr "Não é possível alterar a impressora:"
-
-msgid "Unable to change server settings:"
-msgstr "Não é possível alterar as configurações do servidor:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Não é possível conectar ao host."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Não é possível criar o arquivo temporário:"
-
-msgid "Unable to delete class:"
-msgstr "Não é possível apagar a classe:"
-
-msgid "Unable to delete printer:"
-msgstr "Não é possível apagar a impressora:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Não é possível fazer um comando de manutenção:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Não é possível obter a lista de classe:"
-
-msgid "Unable to get class status:"
-msgstr "Não é possível obter o estado de classe:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Não é possível obter uma lista de drivers de impressora:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Não é possível obter os atributos de impressora:"
-
-msgid "Unable to get printer list:"
-msgstr "Não é possível obter a lista de impressão:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Não é possível obter o estado da impressora:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Não é possível modificar a classe:"
-
-msgid "Unable to modify printer:"
-msgstr "Não é possível modificar a impressora:"
-
-msgid "Unable to move job"
-msgstr "Não é possível mover o trabalho"
-
-msgid "Unable to move jobs"
-msgstr "Não é possível mover os trabalhos"
-
-msgid "Unable to open PPD file"
-msgstr "Não é possível abrir o arquivo PPD"
-
-msgid "Unable to open PPD file:"
-msgstr "Não é possível abrir o arquivo PPD:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Não é possível abrir o arquivo cupsd.conf:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Não é possível imprimir uma página de teste:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Não é possível definir as opções:"
-
-msgid "Unable to set server default:"
-msgstr "Não é possível definir o padrão do servidor:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Não é possível carregar o arquivo cupsd.conf:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Não autorizado"
-
-msgid "Units"
-msgstr "Unidades"
-
-msgid "Unknown"
-msgstr "desconhecido"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "printer-error-policy desconhecido \"%s\"."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "printer-op-policy desconhecido \"%s\"."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Tipo de valor incompatível"
-
-msgid "Upgrade Required"
-msgstr "Atualização Requerida"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Valor usa comprimento indefinido"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind usa comprimento indefinido"
-
-msgid "Version uses indefinite length"
-msgstr "Versão usa comprimento indefinido"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Sim"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Você deve acessar esta página usando a URL <A HREF=\"https://%s:%d%s"
-"\">https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "Impressora de Etiquetas ZPL"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "anulado"
-
-msgid "canceled"
-msgstr "cancelado"
-
-msgid "completed"
-msgstr "concluído"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "falha de cups-deviced ao executar."
-
-msgid "cups-driverd failed to execute."
-msgstr "falha de cups-driverd ao executar."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index usa comprimento indefinido"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status usa comprimento indefinido"
-
-msgid "held"
-msgstr "mantido"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "ocioso"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "pendente"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "processando"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id usa comprimento indefinido"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "falha de stat de %s: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "parado"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "desconhecido"
-
-msgid "untitled"
-msgstr "sem título"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings usa comprimento indefinido"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(todos)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(nenhum)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d entradas\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tApós falha: continuar\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tAlertas:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tBanner requisitado\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tConjunto de caracteres:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tConexão: direta\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tConexão: remota\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tTamanho de página padrão:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tTom padrão:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tAjustes de porta padrão:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tDescrição: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tFormato montado:\n"
-#~ "\tTipos de conteúdo: qualquer\n"
-#~ "\tTipos de impressora: desconhecido\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tFormatos permitidos:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tInterface: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tInterface: %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tInterface: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tLocalização: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tNa falha: nenhum alerta\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tUsuários permitidos:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tUsuários negados:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tapresentação de daemon\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tnenhuma entrada\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\ta impressora está no dispositivo '%s' velocidade -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\ta impressão está desativada\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\ta impressão está ativada\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tenfileirado para %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\to enfileiramento está desativado\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\to enfileiramento está ativado\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tmotivo desconhecido\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: Página 15, seção 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: Página 15, seção 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: Página 19, seção 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: Página 20, seção 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: Página 27, seção 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: Página 42, seção 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: Página 16-17, seção 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: Página 42-45, seção 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: Página 45-46, seção 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: Página 48-49, seção 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: Página 52-54, seção 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f bytes\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Padrão%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Fabricante\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Produto\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN \"%s %s\" entra em conflito com \"%s %s\"\n"
-#~ " (restrição=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %s não possui opções correspondentes!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s compartilha um prefixo comum com %s\n"
-#~ " REF: Página 15, seção 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN Conflito de opções padrão!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN Talvez a opção dúplex do teclado %s não funcione como "
-#~ "esperado e deve ser denominada Dúplex!\n"
-#~ " REF: Página 122, seção 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " WARN O arquivo contém um mix de terminações de linha CR, LF e "
-#~ "CR LF!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN LanguageEncoding solicitado por PPD 4.3 spec.\n"
-#~ " REF: Páginas 56-57, seção 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN A linha %d contém apenas espaços em branco!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN Fabricante solicitado por PPD 4.3 spec.\n"
-#~ " REF: Páginas 58-59, seção 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN Arquivo APDialogExtension ausente \"%s\"\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN Arquivo APPrinterIconPath ausente \"%s\"\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN Os arquivos PPD que não sejam do Windows devem usar "
-#~ "linhas que terminem apenas com LF, e não com CR LF!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN Versão PPD obsoleta%.1f!\n"
-#~ " REF: Página 42, seção 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName maior que 8.3 em violação de PPD spec.\n"
-#~ " REF: Páginas 61-62, seção 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Os protocolos contém PJL, mas os atributos JCL não estão "
-#~ "definidos.\n"
-#~ " REF: Páginas 78-79, seção 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Os protocolos contêm PJL e BCP; TBCP esperado.\n"
-#~ " REF: Páginas 78-79, seção 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN ShortNickName solicitado por PPD 4.3 spec.\n"
-#~ " REF: Páginas 64-65, seção 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s não existe!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Escolha %s inválida %s!\n"
-#~ " REF: Página 122, seção 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s UTF-8 Inválido \"%s\" seqüência de caracteres de tradução para "
-#~ "a opção %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s UTF-8 Inválido \"%s\" seqüência de caracteres de tradução para "
-#~ "opção %s, escolha %s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Valor de cupsFilter inválido \"%s\"!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s cupsICCProfile Inválido %s!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Valor de cupsPreFilter inválido \"%s\"!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s cupsUIConstraints Inválido %s: \"%s\"!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Idioma inválido \"%s\"!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s cupsUIConstraints Vazio %s!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Ausente \"%s\" seqüência de caracteres de tradução para a opção "
-#~ "%s!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Ausente \"%s\" seqüência de caracteres de tradução para a opção "
-#~ "%s, escolha %s!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Escolha ausente *%s %s em UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Escolha ausente *%s %s em cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s Arquivo cupsFilter ausente \"%s\"\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s Arquivo cupsICCProfile ausente \"%s\"!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s Arquivo cupsPreFilter ausente \"%s\"\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s cupsUIResolver ausente %s!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s Opção ausente %s em UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Opção ausente %s em cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr ""
-#~ " %s Nenhuma tradução base de \"%s\" está incluída no arquivo!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s REQUIRED %s não define a opção Nenhum!\n"
-#~ " REF: Página 122, seção 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s o valor hash de cupsICCProfile %s colide com %s!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s provoca um loop!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** %s os nomes de seleção %s e %s se diferenciam apenas por "
-#~ "maiúscula ou minúscula!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FAIL** %s deve ser 1284DeviceID!\n"
-#~ " REF: Página 72, seção 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** BAD Padrão%s %s\n"
-#~ " REF: Página 40, seção 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Página 102, seção 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Página 103, seção 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FAIL** BAD atributo JobPatchFile no arquivo\n"
-#~ " REF: Página 24, seção 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** BAD Fabricante (deve ser \"HP\")\n"
-#~ " REF: Página 211, tabela D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** BAD Fabricante (deve ser \"Oki\")\n"
-#~ " REF: Página 211, tabela D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** BAD ModelName - \"%c\" não permitido na seqüência de "
-#~ "caracteres.\n"
-#~ " REF: Páginas 59-60, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** BAD PSVersion - não \"(seqüência de caracteres) int\".\n"
-#~ " REF: Páginas 62-64, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** BAD Produto - não \"(seqüência de caracteres)\".\n"
-#~ " REF: Página 62, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** BAD ShortNickName - maior que 31 caracteres.\n"
-#~ " REF: Páginas 64-65, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FAIL** Escolha %s inválida %s!\n"
-#~ " REF: Página 84, seção 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** FileVersion Inválida \"%s\"\n"
-#~ " REF: Página 56, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** FormatVersion Inválido \"%s\"\n"
-#~ " REF: Página 56, seção 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **FAIL** LanguageEncoding %s inválido - deve ser ISOLatin1!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **FAIL** LanguageVersion %s inválido - deve ser inglês!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr ""
-#~ " **FAIL** O código de opção padrão não pode ser interpretado: %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Seqüência de caracteres de tradução padrão para opção %s "
-#~ "escolha %s contém caracteres de 8 bits!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Seqüência de caracteres de tradução padrão para opção %s "
-#~ "contém caracteres de 8 bits!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Os nomes dos grupos %s e %s se diferenciam apenas por "
-#~ "maiúscula ou minúscula!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FAIL** Ocorrências múltiplas de %s nome de seleção %s!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Os nomes das opções %s e %s se diferenciam apenas por "
-#~ "maiúscula ou minúscula!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED Padrão%s\n"
-#~ " REF: Página 40, seção 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Página 102, seção 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Página 103, seção 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Página 56, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Página 56, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED ImageableArea para PageSize %s\n"
-#~ " REF: Página 41, seção 5.\n"
-#~ " REF: Página 102, seção 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Páginas 56-57, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Páginas 57-58, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED Fabricante\n"
-#~ " REF: Páginas 58-59, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Páginas 59-60, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Página 60, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Páginas 61-62, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Páginas 62-64, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Página 100, seção 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Página 41, seção 5.\n"
-#~ " REF: Página 99, seção 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Páginas 99-100, seção 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED PaperDimension para PageSize %s\n"
-#~ " REF: Página 41, seção 5.\n"
-#~ " REF: Página 103, seção 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED Produto\n"
-#~ " REF: Página 62, seção 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Página 64-65, seção 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d ERROS ENCONTRADOS\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%%%BoundingBox inválido: na linha %d!\n"
-#~ " REF: Página 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " %%%%Página inválida: na linha %d!\n"
-#~ " REF: Página 53, %%%%Página:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " %%%%Páginas inválidas: na linha %d!\n"
-#~ " REF: Página 43, %%%%Páginas:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " A linha %d é maior do que 255 caracteres (%d)!\n"
-#~ " REF: Página 25, Comprimento de Linha\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " %!PS-Adobe-3.0 ausente na primeira linha!\n"
-#~ " REF: Página 17, 3.1 Documentos Conformes\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " Comentário %%EndComments ausente!\n"
-#~ " REF: Página 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%BoundingBox ausente ou inválido: comentário!\n"
-#~ " REF: Página 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " %%Página ausente ou inválida: comentários!\n"
-#~ " REF: Página 53, %%Página:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " %%Páginas ausentes ou inválidas: comentário!\n"
-#~ " REF: Página 43, %%Páginas:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " NENHUM ERRO ENCONTRADO\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " Visualizadas %d linhas que excedem 255 caracteres!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " Muitos comentários %%BeginDocument!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " Muitos comentários %%EndDocument!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Aviso: o arquivo contém dados binários!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Aviso: nenhum comentário %%EndComments no arquivo!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Aviso: versão DSC obsoleta %.1f no arquivo!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FAIL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Não é possível abrir o arquivo - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Não é possível abrir o arquivo PPD - %s na linha %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " PASS\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10 Envelope"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11 Envelope"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12 Envelope"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14 Envelope"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9 Envelope"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s aceitando solicitações desde %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s não está implementado pela versão CUPS de lpc.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s não está pronto\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s está pronto\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s está pronto e imprimindo\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s não está aceitando solicitações desde %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s não é compatível!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s está aceitando solicitações desde %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s não está aceitando solicitações desde %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [trabalho %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s falhou: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: Não sei o que fazer!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Erro - %s nomes de variáveis de ambiente de destino não existente \"%s"
-#~ "\"!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Erro - ID de trabalho inválido!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: Erro - não é possível imprimir arquivos e alterar trabalhos "
-#~ "simultaneamente!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Erro - não é possível imprimir a partir de stdin se os arquivos ou um "
-#~ "ID de trabalho forem fornecidos!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Erro - conjunto de caracteres esperado após opção '-S'!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Erro - tipo de conteúdo esperado após opção '-T'!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: Erro - cópias esperadas após opção '-n'!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: Erro - contagem de cópias esperadas após opção '-#'!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Erro - destino esperado após opção '-P'!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Erro - destino esperado após opção '-b'!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Erro - destino esperado após opção '-d'!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Erro - formulário esperado após opção '-f'!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Erro - nome mantido esperado após opção '-H'!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Erro - nome de host esperado após opção '-H'!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Erro - nome de host esperado após opção '-H'!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: Erro - lista de modo esperado após opção '-y'!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Erro - nome esperado após opção '-%c'!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr ""
-#~ "%s: Erro - seqüência de caracteres de opção esperada após opção '-o'!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Erro - lista de página esperada após opção '-P'!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Erro - prioridade esperada após opção '-%c'!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Erro - texto de motivo esperado após opção '-r'!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Erro - título esperado após opção '-t'!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: Erro - nome de usuário esperado após opção '-U'!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: Erro - nome de usuário esperado após opção '-U'!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Erro - valor esperado após opção '-%c'!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Erro - necessária opções \"completo\", \"incompleto\" ou \"todos\" "
-#~ "após opção '-W'!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Erro - nenhum destino padrão disponível.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Erro - prioridade deve estar entre 1 e 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Erro - programador não responde!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Erro - muitos arquivos - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Erro - não foi possível acessar \"%s\" - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr ""
-#~ "%s: Erro - não foi possível fazer a fila a partir da mensagem padrão - %"
-#~ "s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Erro - destino desconhecido \"%s\"!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Erro - destino desconhecido \"%s/%s\"!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Erro - opção desconhecida '%c'!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Erro - opção desconhecida '%s'!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: ID de trabalho esperada após opção '-i'!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Filtro \"%s\" não disponível: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Nome de destino inválido na lista \"%s\"!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: Seqüência de caracteres inválida \"%s\"\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr ""
-#~ "%s: ID de trabalho necessária ('-i jobid') antes de 'reinício -H'!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Nenhum filtro para converter de %s/%s para %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: Falha de operação: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: Desculpe, não há compatibilidade de encriptação compilada!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Não é possível conectar ao servidor\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: Não é possível contactar ao servidor!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: Não é possível determinar o tipo MIME de \"%s\"!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: Não é possível abrir %s - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: Não é possível abrir %s - %s on-line %d.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: Não é possível abrir %s: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: Não é possível abrir um arquivo PPD: %s on-line %d\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: Não é possível ler o banco de dados MIME de \"%s\" ou \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: Destino desconhecido \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: Tipo MIME de destino desconhecido %s/%s!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: Opção desconhecida '%c'!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: Tipo MIME de fonte desconhecida %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Aviso - '%c' modificador de formato não compatível - a saída pode não "
-#~ "ser correta!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Aviso - opção de conjunto de caracteres foi ignorada!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Aviso - opção de tipo de conteúdo foi ignorada!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Aviso - opção de formulário foi ignorada!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Aviso - opção de modo foi ignorada!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: erro - %s nomes de variáveis de ambiente de destino não existente \"%s"
-#~ "\"!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: erro - option=value esperado após opção '-o'!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: erro - nenhum destino padrão disponível.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 ppp da escala de cinza"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720ppp"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Comando de ajuda inválido desconhecido\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr ""
-#~ "Uma senha do Samba é solicitada para exportar os drivers da impressora!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr ""
-#~ "Um nome de usuário do Samba é solicitado para exportar os drivers da "
-#~ "impressora!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "Uma classe chamada \"%s\" já existe!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Uma impressora chamada \"%s\" já existe!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (Excessivamente grande)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (Excessivamente grande)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (Pequeno)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (Excessivamente grande)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCO A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCO B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr ""
-#~ "Tentativa de configurar o estado da impressora %s para valor inválido %d!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Os grupos de atributos estão fora de ordem (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "Dispositivo URI inválido \"%s\"!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "dispositivo uri inválido \"%s\"!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Esquema device-uri inválido \"%s\"!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "formato de documento inválido \"%s\"!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Armazenamento intermediário do nome do arquivo inválido!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Atributo de fonte inválido: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Valor de job-priority inválido!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Valor job-sheets inválido \"%s\"!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Tipo de valor job-sheets inválido!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Valor de job-state inválido!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Atributo de job-uri inválido \"%s\"!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "notify-pull-method inválido \"%s\"!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "notify-recipient-uri URI inválido \"%s\"!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "opção + escolha inválida na linha %d!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "port-monitor inválido \"%s\"!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Valor de printer-state inválido %d!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Número de versão de solicitação inválido %d.%d!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "ID de inscrição inválido!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "Envelope C0"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "Envelope C1"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "Envelope C2"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "Envelope C3"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "Envelope C4"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "Envelope C5"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "Envelope C6"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "Envelope C65"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "Envelope C7"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Conjunto de caracteres \"%s\" não compatível!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Envelope Chou3"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Envelope Chou4"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Os comandos podem ser abreviados. Os comandos são:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Não foi possível escanear tipo \"%s\"!"
-
-#~ msgid "Cover open."
-#~ msgstr "Tampa aberta."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "Envelope DL"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Desenvolvedor quase vazio."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Desenvolvedor vazio!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Dispositivo: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Documento %d não encontrado no trabalho %d."
-
-#~ msgid "Door open."
-#~ msgstr "Porta aberta."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Cartão-Postal Duplo"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr ""
-#~ "EMERG: Não é possível alocar memória para informação de página: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: Não é possível alocar memória para matriz de páginas: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: %%BoundingBox inválido: comentário visto!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: %%IncludeFeature inválido: comentário!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: %%Página inválido: comentário no arquivo!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: %%PageBoundingBox inválido: comentário no arquivo!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Arquivo de dispositivo SCSI inválido \"%s\"!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: Arquivo de conjunto de caracteres inválido %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: Tipo de conjunto de caracteres inválido %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: Valor de colunas inválido %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: Valor cpi inválido %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: Linha de descrição de fonte inválida: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: Valor lpi inválido %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Configuração de página inválida!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: Direção de texto inválida %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: Largura de texto inválida %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: Impressora de destino inexistente!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Duplicar %%BoundingBox: comentário visto!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: Duplicar %%Páginas: comentário visto!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: Arquivo de impressão vazio!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: Erro %d ao enviar pedido PAPSendData: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: Seqüência de caracteres on-line esperada %d de %s!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: Erro grave de USB!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: Comentário visto HP-GL/2 inválido, não é possível imprimir o "
-#~ "arquivo!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: %%EndProlog ausente!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: %%EndSetup ausente!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: URI de dispositivo ausente URI em command-line e nenhuma variável "
-#~ "de ambiente DEVICE_URI!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: Valor ausente na linha %d do arquivo de banner!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: Necessária uma linha msgid antes de quaisquer seqüências de "
-#~ "caracteres na linha %d de %s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: Nenhum %%BoundingBox: comentário no cabeçalho!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: Nenhum %%Pages: comentário no cabeçalho!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Nenhum dispositivo URI encontrado em argv[0] ou em variável de "
-#~ "ambiente DEVICE_URI!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: Nenhuma fonte no arquivo de conjunto de caracteres %s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: Nenhuma página encontrada!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: Sem papel!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: Variável de ambiente PRINTER não definido!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: O arquivo de impressão não foi aceito (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: A impressora não responde\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: A impressora não responde!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: A impressora enviou um EOF inesperado\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: Host remoto não aceitou o arquivo de controle (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: Host remoto não aceitou o arquivo de dados (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: Houve um erro de tempo esgotado ao enviar os dados à impressora\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: Não é possível adicionar o arquivo %d ao trabalho: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: Não é possível cancelar o trabalho %d: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: Não foi possível copiar o arquivo PDF"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: Não foi possível criar soquete"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: Não é possível criar o arquivo de impressão comprimido temporário: "
-#~ "%s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: Não é possível criar o arquivo temporário"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: Não é possível criar o arquivo temporário - %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: Não é possível criar o arquivo temporário: %s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: Não é possível executar pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: Não é possível executar o programa gs"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: Não é possível executar o programa pdftops"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: Não é possível forçar pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: Não é possível obter o pedido PAP"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: Não é possível obter a resposta PAP"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr ""
-#~ "ERROR: Não é possível obter o arquivo PPD para a impressora \"%s\" - %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: Não é possível obter a zona AppleTalk"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: Não é possível obter os atributos %d do trabalho (%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: Não é possível obter o estado de impressão (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: Não é possível localizar a impressora '%s'!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: Não é possível procurar a resposta PAP"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: Não é possível buscar impressoras AppleTalk"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: Não é possível criar o endereço AppleTalk"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: Não é possível abrir \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: Não é possível abrir %s: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: Não é possível abrir o arquivo de banner \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: Não é possível abrir o arquivo de dispositivo \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: Não é possível abrir o arquivo \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: Não é possível abrir o arquivo \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: Não é possível abrir o arquivo de imagem para impressão!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: Não é possível abrir o arquivo de impressão \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: Não é possível abrir o arquivo de impressão %s - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: Não é possível abrir o arquivo de impressão %s: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr ""
-#~ "ERROR: Não é possível abrir o arquivo de impressão comprimido temporário: "
-#~ "%s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: Não é possível abrir o arquivo temporário"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: Não é possível imprimir %d colunas de texto!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: Não é possível imprimir %dx%d página de texto!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: Não é possível ler os dados de impressão"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: Não é possível ler os dados de impressão!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: Não é possível reservar porta"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: Não é possível localizar o deslocamento %ld no arquivo- %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr ""
-#~ "ERROR: Não é possível localizar o deslocamento %lld no arquivo - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: Não é possível enviar um comando LPD"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: Não é possível enviar um pedido tickle de PAP"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: Não é possível enviar o pedido de dados de envio PAP inicial"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: Não é possível enviar dados de impressão (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: Não é possível enviar dados de impressão!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: Não é possível enviar o arquivo de impressão à impressora"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr ""
-#~ "ERROR: Não é possível enviar o valor nulo do fim da seqüência à impressora"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: Não é possível aguardar pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: Não é possível gravar %d bytes para \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: Não é possível gravar %d bytes na impressora!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: Não é possível gravar no arquivo de controle"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: Não é possível gravar dados de impressão"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: Não é possível gravar os dados de impressão: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: Não é possível gravar os dados brutos para o driver!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: Não é possível gravar no arquivo temporário"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr ""
-#~ "ERROR: Não é possível gravar os dados de documentos não comprimidos: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: Texto inesperado na linha %d de %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: Valor de opção de encriptação desconhecido \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: Ordem de arquivo desconhecida \"%s\"\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: Caractere de formato desconhecido \"%c\"\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: Formato de catálogo de mensagem desconhecida para \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: Opção desconhecida \"%s\" com valor \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: Modo de impressão desconhecido \"%s\"\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: Valor de opção de versão desconhecido \"%s\"!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr "ERROR: Valor de brilho não compatível %s, usando brilho=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: Valor de gama não compatível %s, usando gama=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: Valor de number-up não compatível %d, usando number-up=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: Valor de number-up-layout não compatível %s, usando number-up-"
-#~ "layout=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: Valor de page-border não compatível %s, usando page-border=none!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: Sobrecarga de doc_printf (%d bytes) detectado, anulando!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: O filtro pdftops bloqueou no sinal %d!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: O filtro pdftops saiu com estado %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops saíram no sinal %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops saíram com estado %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: recuperável: Não é possível conectar-se à impressora; nova "
-#~ "tentativa em 30 segundos...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: Seleção() falhou"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: Não foi possível iniciar o arquivo de impressão"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Arquivo PPD vazio!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Error: necessário um nome de host após a opção '-h'!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "FAIL\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "URIs de dispositivo de arquivo foram desativados! Para ativá-los, "
-#~ "consulte a diretiva FileDevice em \"%s/cupsd.conf\"."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Temperatura do fuser alta!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "Temperatura do fuser baixa!"
-
-#~ msgid "German FanFold"
-#~ msgstr "German FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "German FanFold Legal"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Obtido um atributo printer-uri, mas não um job-id!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk desativado nas Preferências do Sistema\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk desativado nas Preferências do Sistema.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: Cancelando trabalho de impressão...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: Conectado à impressora...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: Conectando à impressora...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: Arquivo de controle enviado com êxito\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: Arquivo de dados enviado com êxito\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: Formatando página %d...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: Carregando arquivo de imagem...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: Buscando impressora...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: Abrindo conexão\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr ""
-#~ "INFO: Arquivo de impressão enviado, aguardando conclusão da "
-#~ "impressora...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: Impressora ocupada; nova tentativa em 10 segundos...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Impressora ocupada; nova tentativa em 30 segundos...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Impressora ocupada; nova tentativa em 5 segundos...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr ""
-#~ "INFO: A impressora não é compatível com IPP/%d.%d, tentando IPP/1.0...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: A impressora está ocupada; nova tentativa em 5 segundos...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: A impressora está atualmente desligada.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: A impressora está desligada atualmente.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: A impressora está conectada agora.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: A impressora está desligada.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Impressora não conectada; nova tentativa em 30 segundos...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: Imprimindo página %d, %d%% concluído...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: Imprimindo página %d...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: Pronta para imprimir.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: Enviando arquivo de controle (%lu bytes)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: Enviando arquivo de controle (%u bytes)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: Enviando dados\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: Enviando arquivo de dados (%ld bytes)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: Enviando arquivo de dados (%lld bytes)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: Enviando dados de impressão...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: Arquivo de impressão enviado, %ld bytes...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: Arquivo de impressão enviado, %lld bytes...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: Armazenando trabalho LPR, %.0f%% concluído...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: Não foi possível contactar a impressora, enfileirando na próxima "
-#~ "impressora na classe...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: Usando zona AppleTalk padrão \"%s\"\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: Aguardando conclusão do trabalho...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: Esperando que a impressora esteja disponível...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "Envelope ISO B4"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (Exces. grande)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "Envelope ISO B5"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "Envelope ISO B6"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Tinta/toner quase vazios."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Tinta/toner vazios!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Recipiente de tinta/toner quase cheio."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Recipiente de tinta/toner cheio!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Conexão aberta."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Envelope de Convite"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Envelope Italiano"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "O trabalho #%d não pode ser reiniciado - nenhum arquivo!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "O trabalho #%d não existe!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "O trabalho #%d está finalizado e não pode ser alterado!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "O trabalho #%d não está concluído!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "O trabalho #%d não está parado para autenticação!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "O trabalho #%d não está parado!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "O trabalho #%s não existe!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Trabalho %d não encontrado!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "As inscrições do trabalho não podem ser renovadas!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Envelope Kaku2"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Envelope Kaku3"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Idioma \"%s\" não compatível!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Atolamento de mídia!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Bandeja de mídia quase vazia."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Bandeja de mídia vazia!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Bandeja de mídia ausente!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "A bandeja de mídia necessita ser preenchida."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "Atributo document-number ausente!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Aspas ausentes na linha %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Variável de formato ausente!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "Atributo notify-subscription-ids ausente!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Atributo requesting-user-name ausente!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Atributos necessários ausentes!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Valor ausente na linha %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Modelo: nome = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarca"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Envelope Monarca"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: Arquivo de impressão aceito - ID de trabalho %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr ""
-#~ "NOTICE: Arquivo de impressão aceito - ID de trabalho desconhecido.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Nenhum nome PPD!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Nenhum driver de impressora do Windows instalado!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Nenhum trabalho ativo em %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Nenhum atributo na solicitação!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Nenhuma informação de autenticação fornecida!"
-
-#~ msgid "No default printer"
-#~ msgstr "Nenhuma impressora padrão"
-
-#~ msgid "No file!?!"
-#~ msgstr "Nenhum arquivo!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Nenhuma hora de modificação!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Nenhum nome de impressora!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Nenhum printer-uri encontrado para a classe!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Nenhum printer-uri encontrado!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Nenhum printer-uri em pedido!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Nenhum atributo de inscrição na solicitação!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC quase no final."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC no final!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Sem toner!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Recipiente de saída quase cheio."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Recipiente de saída cheio!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "A saída para impressora %s foi enviada a %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "A saída para impressora %s foi enviada à impressora remota %s em %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "A saída para impressora %s/%s foi enviada a %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "A saída para impressora %s/%s foi enviada para a impressora remota %s em %"
-#~ "s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Bandeja de saída ausente!"
-
-#~ msgid "PASS\n"
-#~ msgstr "PASS\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "Envelope PRC1"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "Envelope PRC10"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "Envelope PRC2"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "Envelope PRC3"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (Exces. grande)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "Envelope PRC4"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "Envelope PRC5"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "Envelope PRC6"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "Envelope PRC7"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "Envelope PRC8"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "Envelope PRC9"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Envelope Pessoal"
-
-#~ msgid "Printer offline."
-#~ msgstr "Impressora desconectada."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Rank Proprietário Trabalho Arquivo(s) "
-#~ "Tamanho Total\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Rank Proprietário Imp Trabalho "
-#~ "Arquivos Tamanho Total\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Executando comando: %s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "Impressora SCSI"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tablóide (Exces. grande)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "O valor notify-user-data é muito grande (%d > 63 octetos)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "A impressora ou a classe não estão compartilhadas!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "A impressora ou a classe não foram encontradas."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "O atributo printer-uri é necessário!"
-
-#~ msgid "Toner low."
-#~ msgstr "Toner baixo."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "Muitos valores de job-sheets (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "Muitos valores de printer-state-reasons (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "Executivo EUA"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "Legal EUA (Muito Grande)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "Carta EUA (Muito Grande)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "Carta EUA (Pequeno)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Não é possível adicionar o trabalho para o destino \"%s\"!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Não é possível alocar memória para os tipos de arquivo!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível copiar arquivos de driver de impressora CUPS de 64-bit (%"
-#~ "d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível copiar arquivos do driver da impressora Windows de 64-bit "
-#~ "(%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível copiar os arquivos do driver de impressora CUPS (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Não é possível copiar o arquivo PPD - %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Não é possível copiar o arquivo PPD!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível copiar os arquivos do driver de impressora do Windows 2000 "
-#~ "(%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível copiar os arquivos do driver de impressora do Windows 9x (%"
-#~ "d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Não é possível copiar o roteiro de interface - %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Não é possível criar printer-uri!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "Não é possível editar os arquivos cupsd.conf maiores que 1MB!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Não é possível buscar o destino para o trabalho!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Não é possível encontrar a impressora!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível instalar os arquivos de drivers de impressora do Windows "
-#~ "2000 (%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr ""
-#~ "Não é possível instalar os arquivos de drivers de impressora do Windows "
-#~ "9x (%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Não é possível abrir o documento %d no trabalho %d!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Não é possível executar \"%s\": %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Não é possível enviar o comando ao driver da impressora!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Não é possível configurar o driver de impressora do Windows (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Não é possível usar o driver de classe USB de legado!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Erro de impressora desconhecido (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Conjunto de caracteres incompatíveis \"%s\"!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Compressão não compatível \"%s\"!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Atributo de compressão não compatível %s!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Formato não compatível \"%s\"!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Formato não compatível '%s'!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Formato não compatível '%s/%s'!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr ""
-#~ "Usage: %s opções de cópias de título do usuário do trabalho [filename]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Usage: opções de cópias de título de usuário %s job-id [file]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr ""
-#~ "Usage: arquivo de opções de cópias de título de usuário %s job-id \n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Usage: converter [ options ]\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ "\n"
-#~ " -f filename Definir arquivo para conversão (senão stdin)\n"
-#~ " -o filename Definir para ser gerado (senão stdout)\n"
-#~ " -i mime/type Definir tipo MIME de entrada (senão auto-typed)\n"
-#~ " -j mime/type Definir tipo MIME de saída (senão application/"
-#~ "pdf)\n"
-#~ " -P filename.ppd Definir arquivo PPD\n"
-#~ " -a 'name=value ...' Definir opção(ões)\n"
-#~ " -U username Definir nome do usuário para trabalho\n"
-#~ " -J title Definir título\n"
-#~ " -c copies Definir número de cópias\n"
-#~ " -u Remover o arquivo PPD ao terminar\n"
-#~ " -D Remover o arquivo de entrada ao terminar\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ " -E Encriptar a conexão ao servidor\n"
-#~ " -H samba-server Usar o servidor SAMBA denominado\n"
-#~ " -U samba-user Autenticar usando o usuário do SAMBA denominado\n"
-#~ " -a Exportar todas as impressoras\n"
-#~ " -h cups-server Usar o servidor CUPS denominado\n"
-#~ " -v Ser detalhado (mostrar comandos)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ "\n"
-#~ " -E Ativar encriptação\n"
-#~ " -U username Especificar username\n"
-#~ " -h server[:port] Especificar endereço do servidor\n"
-#~ "\n"
-#~ " --[no-]debug-logging Ativar/desativar registro de depuração\n"
-#~ " --[no-]remote-admin Ativar/desativar administração remota\n"
-#~ " --[no-]remote-any Permitir/evitar acesso a partir da Internet\n"
-#~ " --[no-]remote-printers Mostrar/ocultar impressoras remotas\n"
-#~ " --[no-]share-printers Ativar/desativar compartilhamento de "
-#~ "impressora\n"
-#~ " --[no-]user-cancel-any Permitir/evitar que usuários cancelem "
-#~ "qualquer trabalho\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Carregar arquivo de configuração alternativa\n"
-#~ "-f Executar em segundo plano\n"
-#~ "-F Executar em segundo plano, porém destacar\n"
-#~ "-h Mostrar esta mensagem de uso\n"
-#~ "-l Executar cupsd a partir de launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ "\n"
-#~ " -c cupsd.conf Definir arquivo cupsd.conf para uso\n"
-#~ " -j job-id[,N] Arquivo de filtro N do trabalho especificado (o padrão "
-#~ "é o arquivo 1)\n"
-#~ " -n cópias Definir número de cópias\n"
-#~ " -o name=value Definir opção(ões)\n"
-#~ " -p filename.ppd Definir arquivo PPD\n"
-#~ " -t title Definir título\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ "\n"
-#~ " -h Mostrar utilização do programa\n"
-#~ "\n"
-#~ " Nota: este programa apenas valida os comentários DSC, não o próprio "
-#~ "PostScript.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Opções:\n"
-#~ "\n"
-#~ " -R root-directory Definir raiz alternada\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Expedir avisos em vez de erros\n"
-#~ " -q Executar silenciosamente\n"
-#~ " -r Usar modo aberto 'relaxed'\n"
-#~ " -v Ser levemente detalhado\n"
-#~ " -vv Ser bastante detalhado\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Usage: lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Usage: lppasswd [-g groupname]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Opções:\n"
-#~ " -D name=value Definir variável denominada ao valor.\n"
-#~ " -I include-dir Adicionar diretório de inclusão ao caminho da "
-#~ "busca.\n"
-#~ " -c catalog.po Carregar o catálogo da mensagem especificada.\n"
-#~ " -d output-dir Especificar o diretório de saída.\n"
-#~ " -l lang[,lang,...] Especificar o(s) idioma(s) de saída (local).\n"
-#~ " -m Usar o valor ModelName como nome de arquivo.\n"
-#~ " -t Testar PPDs em vez de gerá-los.\n"
-#~ " -v Ser detalhado (mais v's para maior detalhamento).\n"
-#~ " -z Comprimir arquivos PPD usando GNU zip.\n"
-#~ " --cr Terminar linhas com CR (Mac OS 9).\n"
-#~ " --crlf Terminar linhas com CR + LF (Windows).\n"
-#~ " --lf Terminar linhas com LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Definir variável denominada ao valor.\n"
-#~ "Options:\n"
-#~ " -I include-dir Adicionar diretório de inclusão ao caminho da busca.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Opções:\n"
-#~ " -o filename.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Opções:\n"
-#~ " -D name=value Definir variável denominada ao valor.\n"
-#~ " -I include-dir Adicionar diretório de inclusão ao caminho da busca.\n"
-#~ " -v Ser detalhado (mais v's para maior detalhamento).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Usage: snmp [host-or-ip-address]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr ""
-#~ "WARNING: Adicionando somente as primeiras %d impressoras encontradas"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: Boleano esperado para opção waiteof \"%s\"\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: Falha ao ler o pedido side-channel!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: A opção \"%s\" não pode ser incluída através de IncludeFeature!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: A impressora não responde\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: A impressora enviou um EOF inesperado\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: O host remoto não repondeu com o byte de estado de comando após %"
-#~ "d segundos!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: O host remoto não repondeu com o byte de estado de controle após "
-#~ "%d segundos!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: O host remoto não repondeu com o byte de estado de dados após %d "
-#~ "segundos!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr ""
-#~ "WARNING: Tempo esgotado para comando SCSI (%d); tentando novamente...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Este documento não está de acordo com o Adobe Document "
-#~ "Structuring Conventions e pode não ser impresso corretamente!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: Não é possível abrir \"%s:%s\": %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: Não é possível enviar o pedido de estado PAP"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: Pacote PAP do tipo %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: Pacote PAP desconhecido do tipo %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: Escolha desconhecida \"%s\" para a opção \"%s\"!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: Opção desconhecida \"%s\"!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: Taxa de transmissão não compatível %s!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: número esperado para a opção de estado \"%s\"\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: recuperável: O host de rede '%s' está ocupado; tentará novamente "
-#~ "em %d segundos...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr ""
-#~ "Warning, nenhum driver de impressora do Windows 2000 está instalado!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "Envelope You4"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "convert: use a opção -f para especificar um arquivo para converter.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: Nenhum arquivo PPD para a impressora \"%s\" - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: não é possível conectar ao servidor: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: Opção desconhecida \"%s\"!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: Opção desconhecida \"-%c\"!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr ""
-#~ "cupsd: Nome de arquivo de configuração esperado após a opção \"-c\"!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: não é possível obter o diretório atual!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: Argumento desconhecido \"%s\" - anulando!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: Opção desconhecida \"%c\" - anulando!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: suporte launchd(8) não compilado, executando em modo normal.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: número de documento inválido %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: ID de trabalho inválido %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: Apenas um filename pode ser especificado!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: não é possível criar um arquivo temporário: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: não é possível obter o arquivo de trabalho - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: A opção -q é incompatível com a opção -v.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: A opção -v é incompatível com a opção -q.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "dispositivo para %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "dispositivo para %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "ajuda\t\tobter ajuda sobre os comandos\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "Atributo job-printer-uri ausente!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr ""
-#~ "lpadmin: O nome de classe pode conter apenas caracteres imprimíveis!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: PPD esperado após a opção '-P'!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: Permitir/negar esperado:userlist após a opção '-u'!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: Classe esperada após opção '-r'!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: Nome de classe esperado após a opção '-c'!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: Descrição esperada após a opção '-D'!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: URI de dispositivo esperado após a opção '-v'!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: Tipo(s) de arquivo esperado após a opção '-I'!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: Hostname esperado após a opção '-h'!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: Interface esperada após a opção '-i'!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: Localização esperada após a opção '-L'!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: Modelo esperado após a opção '-m'!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: name=value esperado após a opção '-o'!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: Impressora esperada após a opção '-p'!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: Nome de impressora esperada após a opção '-d'!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: Impressora ou classe esperada após a opção '-x'!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: Nenhum nome de membro foi visto!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: A impressora %s já é um membro de classe %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: A impressora %s não é um membro de classe %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr ""
-#~ "lpadmin: O nome da impressora pode conter apenas caracteres imprimíveis!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível adicionar uma impressora à classe:\n"
-#~ " Você deve especificar um nome de impressora primeiro!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: Não é possível conectar-se ao servidor: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: Não é possível criar um arquivo temporário - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: Não é possível criar um arquivo temporário: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: Não é possível abrir um arquivo PPD \"%s\" - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: Não é possível abrir o arquivo \"%s\": %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível remover uma impressora da classe:\n"
-#~ " Você deve especificar um nome de impressora primeiro!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível configurar o arquivo PPD:\n"
-#~ " Você deve especificar um nome de impressora primeiro!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível configurar o URI de dispositivo:\n"
-#~ " Você deve especificar um nome de impressora primeiro!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível configurar o roteiro de interface ou arquivo "
-#~ "PPD:\n"
-#~ " Você deve especificar um nome de impressora primeiro!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível configurar o roteiro de interface:\n"
-#~ " Você deve especificar um nome de impressora primeiro!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível configurar a descrição da impressora:\n"
-#~ " Você deve especificar um nome de impressora primeiro!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível configurar a localização da impressora:\n"
-#~ " Você deve especificar um nome de impressora primeiro!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Não é possível configurar as opções da impressora:\n"
-#~ " Você deve especificar um nome de impressora primeiro!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: Opção permitir/negar desconhecida \"%s\"!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: Argumento desconhecido '%s'!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: Opção desconhecida '%c'!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: Aviso - lista de tipo de conteúdo ignorada!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr ""
-#~ "lpinfo: seqüência de caracteres de ID de dispositivo 1284 esperada após --"
-#~ "device-id!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: idioma esperado após --language!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: modelar e fazer esperado após --make-and-model!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr ""
-#~ "lpinfo: seqüência de caracteres de produto esperada após --product!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: lista de esquema esperada após --exclude-schemes!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: lista de esquema esperada após --include-schemes!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: tempo esgotado esperado após --timeout!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: Argumento desconhecido '%s'!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: Opção desconhecida '%c'!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: opção desconhecida '%s'!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: Não é possível conectar-se ao servidor: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: Argumento desconhecido '%s'!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: Opção desconhecida '%c'!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: Nenhuma impressora!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: Não é possível adicionar impressora ou instância: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: Não é possível obter o arquivo PPD para %s: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: Não é possível abrir o arquivo PPD para %s!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: Impressora ou classe desconhecidas!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: Apenas o root pode adicionar ou apagar senhas!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: Arquivo de senha ocupado!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: Arquivo de senha não atualizado!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: Desculpe, a senha não coincide!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: Desculpe, senha rejeitada.\n"
-#~ "A sua senha deve ter pelo menos 6 caracteres, não pode conter\n"
-#~ "o seu nome de usuário e deve possuir pelo menos uma letra e um número.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: Desculpe, as senhas não coincidem!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr ""
-#~ "lppasswd: Não é possível copiar a seqüência de caracteres da senha: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: Não é possível abrir o arquivo de senha: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: Não é possível gravar para o arquivo de senha: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr "lppasswd: falha ao fazer backup do arquivo de senha antigo: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: falha ao renomear o arquivo de senha: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: usuário \"%s\" e grupo \"%s\" não existem.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: erro - %s destino não existente de nomes de variáveis de ambiente "
-#~ "\"%s\"!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "membros de classe %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "nenhuma entrada\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "nenhum destino padrão de sistema\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events não especificado!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "URI notify-recipient-uri \"%s\" já foi usado!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri URI \"%s\" usa um esquema desconhecido!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d não confiável!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: adicionando diretório de inclusão \"%s\"...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: adicionando/atualizando texto UI de %s...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: valor booleano inválido (%s) na linha %d de %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: nome de resolução inválido \"%s\" na linha %d de %s!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: palavra-chave de estado inválido %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: substituição de variável inválida ($%c) na linha %d de %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: escolha encontrada na linha %d de %s com nenhuma Opção!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: duplicar #po para local %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: definição de filtro esperada na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: nome de programa esperado na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: valor booleano esperado na linha %d de %s.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: conjunto de caracteres depois de Font na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: código de escolha esperado na linha %d de %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: nome/texto de escolha esperado na linha %d de %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: ordem de cor esperada para ColorModel na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: colorspace esperada para ColorModel na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: compressão esperada para ColorModel na linha %d de %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: seqüência de caracteres de restrição esperada para UIConstraints na "
-#~ "linha %d de %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: palavra-chave do tipo de driver esperado após DriverType na linha %"
-#~ "d de %s!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: tipo de dúplex esperado após Duplex na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: codificação esperada após Font na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: nome de arquivo esperado após #po %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: nome/texto de grupo esperado na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: nome de arquivo de inclusão esperado na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: número inteiro esperado na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: localidade esperada após #po na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Nome esperado após %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: Nome esperado após FileName na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Nome esperado após Font na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: Nome esperado após Manufacturer na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: nome esperado após MediaSize na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: nome esperado após ModelName na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: nome esperado após PCFileName na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: nome/texto esperado após %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: nome/texto esperado após Installable na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: nome/texto esperado após Resolution na linha %d de %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: combinação de nome/texto esperado para ColorModel na linha %d de %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: nome/texto de opção esperado na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: seção de opção esperada na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: tipo de opção esperada na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: campo de substituição esperado após Resolution na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: número real esperado na linha %d de %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: resolução/tipo de mídia esperado após ColorProfile na linha %d de %"
-#~ "s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: resolução/tipo de mídia esperado após SimpleColorProfile na linha %"
-#~ "d de %s!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: seletor esperado após %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: estado esperado após Font na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: seqüência de caracteres esperada após Copyright na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: seqüência de caracteres esperada após Version na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: dois nomes de opção esperados na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: valor esperado após %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: versão esperada após Font na linha %d de %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: nome de arquivo #include/#po inválido \"%s\"!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: custo inválido para filtro na linha %d de %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: tipo MIME vazio inválido para filtro na linha %d de %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: nome de programa vazio inválido para filtro na linha %d de %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: seção de opção inválida \"%s\" na linha %d de %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: tipo de opção inválida \"%s\" na linha %d de %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: carregando arquivo de informações de driver \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: carregando mensagens para localidade \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: carregando mensagens de \"%s\"...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: #endif ausente no final de \"%s\"!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: #if ausente na linha %d de %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: nenhum catálogo de mensagem fornecido para a localidade %s!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: opção %s redefinida com um tipo diferente na linha %d de %s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc: a restrição da opção deve *name na linha %d de %s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: muitos aninhados #if's na linha %d de %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: não é possível criar um arquivo PPD \"%s\" - %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: não é possível criar o diretório de saída %s: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: não é possível criar canais de saída: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: não é possível executar cupstestppd: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: Não é possível buscar o arquivo #po %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Não é possível buscar o arquivo de inclusão \"%s\" na linha %d de %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: Não é possível buscar a localização para \"%s\" - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr ""
-#~ "ppdc: Não é possível carregar o arquivo de localização \"%s\" - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Variável indefinida (%s) na linha %d de %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: tipo de driver desconhecido %s na linha %d de %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: tipo de dúplex desconhecido \"%s\" na linha %d de %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: tamanho de mídia desconhecido \"%s\" na linha %d de %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: token desconhecido \"%s\" visto na linha %d de %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: caracteres delimitadores desconhecidos em número real \"%s\" na "
-#~ "linha %d de %s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: seqüência de caracteres não finalizados começando com %c na linha %"
-#~ "d de %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: gravando %s...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: gravando arquivos PPD no diretório \"%s\"...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: LanguageVersion inválido \"%s\" em %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: ignorando arquivo PPD %s...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: não é possível fazer o backup de %s em %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "impressora %s desativada desde %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "impressora %s está ociosa. ativada desde %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "impressora %s agora está imprimindo %s-%d. ativada desde %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "impressora %s/%s desativada desde %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "impressora %s/%s está ociosa. ativada desde %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "impressora %s/%s agora está imprimindo %s-%d. ativada desde %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "id solicitado é %s-%d (%d arquivo(s))\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "o programador não está executando\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "o programador está executando\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "estado status\t\tshow de daemon e da fila\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "destino padrão de sistema: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "destino padrão de sistema: %s/%s\n"
diff --git a/locale/cups_ru.po b/locale/cups_ru.po
deleted file mode 100644
index 7cf0f8c6..00000000
--- a/locale/cups_ru.po
+++ /dev/null
@@ -1,8709 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f мм"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f — %.0f x %.0f мм"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f дюймов"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f-%.2f x %.2f дюймов"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s не может быть изменен."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 дюйм/Ñ"
-
-msgid "1.25x0.25\""
-msgstr "1,25x0,25\""
-
-msgid "1.25x2.25\""
-msgstr "1,25x2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 дюйма/Ñ"
-
-msgid "1.50x0.25\""
-msgstr "1,50x0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50x0,50\""
-
-msgid "1.50x1.00\""
-msgstr "1,50x1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50x2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 дюймов/Ñ"
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 мм/Ñ"
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 дюймов/Ñ"
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 дюймов/Ñ"
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 мм/Ñ"
-
-msgid "120x60dpi"
-msgstr "120x60dpi"
-
-msgid "120x72dpi"
-msgstr "120x72dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 мм/Ñ"
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 мм/Ñ"
-
-msgid "150dpi"
-msgstr "150dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 дюйма/Ñ"
-
-msgid "2-Sided Printing"
-msgstr "двуÑтороннÑÑ Ð¿ÐµÑ‡Ð°Ñ‚ÑŒ"
-
-msgid "2.00x0.37\""
-msgstr "2,00x0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00x0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00x1,00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00x1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00x2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00x3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00x4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00x5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25x0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25x1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25x4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25x5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38x5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2,5 дюйма/Ñ"
-
-msgid "2.50x1.00\""
-msgstr "2,50x1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50x2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75x1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 мм/Ñ"
-
-msgid "200 mm/sec."
-msgstr "200 мм/Ñ"
-
-msgid "203dpi"
-msgstr "203dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "Тип 24-Pin"
-
-msgid "240x72dpi"
-msgstr "240x72dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 мм/Ñ"
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 дюйма/Ñ"
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00x1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00x1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00x2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00x3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00x5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25x2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25x5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25x5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25x5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25x7,83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "ДиÑк 3.5\""
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "ДиÑк 3.5\" - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50x1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 мм/Ñ"
-
-msgid "300 mm/sec."
-msgstr "300 мм/Ñ"
-
-msgid "300dpi"
-msgstr "300dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360dpi"
-
-msgid "360x180dpi"
-msgstr "360x180dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 дюйма/Ñ"
-
-msgid "4.00x1.00\""
-msgstr "4,00x1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00x13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00x2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00x2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00x3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00x4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00x5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00x6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00x6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 мм/Ñ"
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 дюймов/Ñ"
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 дюймов/Ñ"
-
-msgid "6.00x1.00\""
-msgstr "6,00x1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00x2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00x3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00x4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00x5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00x6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00x6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 мм/Ñ"
-
-msgid "600dpi"
-msgstr "600dpi"
-
-msgid "60dpi"
-msgstr "60dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 дюймов/Ñ"
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 дюймов/Ñ"
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00x1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00x2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00x3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00x4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00x5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00x6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00x6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 мм/Ñ"
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 дюймов/Ñ"
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "Тип 9-Pin"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "ПринÑть заданиÑ"
-
-msgid "Accepted"
-msgstr "ПринÑто"
-
-msgid "Add Class"
-msgstr "Добавить клаÑÑ"
-
-msgid "Add Printer"
-msgstr "Добавить принтер"
-
-msgid "Add RSS Subscription"
-msgstr "Добавить подпиÑку на RSS"
-
-msgid "Address"
-msgstr "ÐдреÑ"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "ÐÐ´Ñ€ÐµÑ - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "ÐдминиÑтрациÑ"
-
-msgid "Always"
-msgstr "Ð’Ñегда"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "ИÑполнительное уÑтройÑтво"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Ðеверный указатель NULL dests"
-
-msgid "Bad OpenGroup"
-msgstr "Ðеверное значение OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "Ðеверное значение OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "Ðеверное значение OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Ðеверный запроÑ"
-
-msgid "Bad SNMP version number"
-msgstr "Ðеверный номер верÑии SNMP"
-
-msgid "Bad UIConstraints"
-msgstr "Ðеверное значение UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Ðеверное значение количеÑтва копий %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Ðеверный индивидуальный параметр"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Ðеверное значение number-up %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Ðеверные Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ page-ranges %d-%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Баннеры"
-
-msgid "Billing Information: "
-msgstr "Реквизиты Ð´Ð»Ñ Ð²Ñ‹ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ñчета: "
-
-msgid "Bond Paper"
-msgstr "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð½Ð°Ñ Ð±ÑƒÐ¼Ð°Ð³Ð°"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "Принтер Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ Ñтикеток CPCL"
-
-msgid "Cancel RSS Subscription"
-msgstr "Отменить подпиÑку на RSS"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Изменить наÑтройки"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "КлаÑÑÑ‹"
-
-msgid "Clean Print Heads"
-msgstr "ОчиÑтить головки принтера"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Цвет"
-
-msgid "Color Mode"
-msgstr "Цветной режим"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Ð”Ð»Ñ Ð¸Ð¼ÐµÐ½Ð¸ ÑообщеÑтва длина не уÑтановлена"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Продолжить"
-
-msgid "Continuous"
-msgstr "Ðепрерывно"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Создано"
-
-msgid "Created On: "
-msgstr "Дата ÑозданиÑ: "
-
-msgid "Custom"
-msgstr "Индивидуальный"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Обрезать"
-
-msgid "Cutter"
-msgstr "Резак"
-
-msgid "Dark"
-msgstr "Темный"
-
-msgid "Darkness"
-msgstr "ЗатемненноÑть"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Удалить клаÑÑ"
-
-msgid "Delete Printer"
-msgstr "Удалить принтер"
-
-msgid "Description: "
-msgstr "ОпиÑание: "
-
-msgid "DeskJet Series"
-msgstr "Ð¡ÐµÑ€Ð¸Ñ DeskJet"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "Ðазначение «%s» не принимает заданиÑ."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "ÐоÑитель Ð´Ð»Ñ Ð¿Ñ€Ñмой термопечати"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Отключено"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Ð˜Ð¼Ñ Ð´Ñ€Ð°Ð¹Ð²ÐµÑ€Ð°: "
-
-msgid "Driver Version: "
-msgstr "ВерÑÐ¸Ñ Ð´Ñ€Ð°Ð¹Ð²ÐµÑ€Ð°: "
-
-msgid "Duplexer"
-msgstr "ДуплекÑер"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "Принтер Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ Ñтикеток EPL1"
-
-msgid "EPL2 Label Printer"
-msgstr "Принтер Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ Ñтикеток EPL2"
-
-msgid "Edit Configuration File"
-msgstr "Редактировать файл конфигурации"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Конечный баннер"
-
-msgid "English"
-msgstr "Russian"
-
-msgid "Enter old password:"
-msgstr "Введите Ñтарый пароль:"
-
-msgid "Enter password again:"
-msgstr "Введите пароль Ñнова:"
-
-msgid "Enter password:"
-msgstr "Введите пароль:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Введите Ñвое Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸ пароль или данные учетной запиÑи root, чтобы "
-"получить доÑтуп к Ñтой Ñтранице. ЕÑли иÑпользуетÑÑ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ° подлинноÑти "
-"Kerberos, необходимо также иметь дейÑтвительный билет Kerberos."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Подача конвертов"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Политика ошибок"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Каждые 10 Ñтикеток"
-
-msgid "Every 2 Labels"
-msgstr "Каждые 2 Ñтикетки"
-
-msgid "Every 3 Labels"
-msgstr "Каждые 3 Ñтикетки"
-
-msgid "Every 4 Labels"
-msgstr "Каждые 4 Ñтикетки"
-
-msgid "Every 5 Labels"
-msgstr "Каждые 5 Ñтикеток"
-
-msgid "Every 6 Labels"
-msgstr "Каждые 6 Ñтикеток"
-
-msgid "Every 7 Labels"
-msgstr "Каждые 7 Ñтикеток"
-
-msgid "Every 8 Labels"
-msgstr "Каждые 8 Ñтикеток"
-
-msgid "Every 9 Labels"
-msgstr "Каждые 9 Ñтикеток"
-
-msgid "Every Label"
-msgstr "ÐšÐ°Ð¶Ð´Ð°Ñ Ñтикетка"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Сбой ожиданиÑ"
-
-msgid "Export Printers to Samba"
-msgstr "ЭкÑпортировать принтеры в Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Каталог файла"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Каталог файла - 9 16/8 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Фолио"
-
-msgid "Forbidden"
-msgstr "Запрещено"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "ОÑновные"
-
-msgid "Generic"
-msgstr "Общее"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Ð”Ð»Ñ Get-Response-PDU длина не уÑтановлена"
-
-msgid "Glossy Paper"
-msgstr "ГлÑÐ½Ñ†ÐµÐ²Ð°Ñ Ð±ÑƒÐ¼Ð°Ð³Ð°"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Оттенки Ñерого"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Папка подвеÑного хранениÑ"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Папка подвеÑного Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "ÐедейÑтвительный контрольный Ñимвол"
-
-msgid "Illegal main keyword string"
-msgstr "ÐедейÑÑ‚Ð²Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ð¾ÑÐ½Ð¾Ð²Ð½Ð°Ñ Ñтрока ключевых Ñлов"
-
-msgid "Illegal option keyword string"
-msgstr "ÐедейÑÑ‚Ð²Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ñтрока ключевых Ñлов параметра"
-
-msgid "Illegal translation string"
-msgstr "ÐедейÑтвительный перевод"
-
-msgid "Illegal whitespace character"
-msgstr "ÐедейÑтвительный Ñимвол пробела"
-
-msgid "Installable Options"
-msgstr "Параметры, разрешенные к уÑтановке"
-
-msgid "Installed"
-msgstr "УÑтановлено"
-
-msgid "IntelliBar Label Printer"
-msgstr "Принтер Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ Ñтикеток IntelliBar"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "ВнутреннÑÑ Ð¾ÑˆÐ¸Ð±ÐºÐ°"
-
-msgid "Internet Postage 2-Part"
-msgstr "Ðаклейки Internet Postage 2-Part"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Ðаклейки Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Ðаклейки Internet Postage 3-Part"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Ðаклейки Internet Postage 3-Part - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Протокол интернет-печати"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "Задание #%d уже прервано – не удаетÑÑ Ð¾Ñ‚Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "Задание #%d уже отменено – не удаетÑÑ Ð¾Ñ‚Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "Задание #%d уже завершено – не удаетÑÑ Ð¾Ñ‚Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Задание завершено"
-
-msgid "Job Created"
-msgstr "Задание Ñоздано"
-
-msgid "Job ID: "
-msgstr "ID заданиÑ: "
-
-msgid "Job Options Changed"
-msgstr "Параметры Ð·Ð°Ð´Ð°Ð½Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ñ‹"
-
-msgid "Job Stopped"
-msgstr "Задание оÑтановлено"
-
-msgid "Job UUID: "
-msgstr "UUID заданиÑ: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "Задание завершено и не может быть изменено."
-
-msgid "Job operation failed:"
-msgstr "Сбой операции заданиÑ:"
-
-msgid "Job state cannot be changed."
-msgstr "СоÑтоÑние Ð·Ð°Ð´Ð°Ð½Ð¸Ñ Ð½Ðµ может быть изменено."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "ЗаданиÑ"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "ХоÑÑ‚ или принтер LPD/LPR"
-
-msgid "Label Printer"
-msgstr "Принтер Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ Ñтикеток"
-
-msgid "Label Top"
-msgstr "Верхний край Ñтикетки"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Полный адреÑ"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Полный Ð°Ð´Ñ€ÐµÑ - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "Ð¡ÐµÑ€Ð¸Ñ LaserJet, PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Светлый"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Строка длиннее разрешенного предела (255 Ñимволов)"
-
-msgid "List Available Printers"
-msgstr "СпиÑок доÑтупных принтеров"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "МеÑтоположение: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "По длинной Ñтороне (книжнаÑ)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Марка и модель: "
-
-msgid "Manual Feed"
-msgstr "Ð ÑƒÑ‡Ð½Ð°Ñ Ð¿Ð¾Ð´Ð°Ñ‡Ð°"
-
-msgid "Media Dimensions: "
-msgstr "Размеры бумаги: "
-
-msgid "Media Limits: "
-msgstr "ÐžÐ³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð±ÑƒÐ¼Ð°Ð³Ð¸: "
-
-msgid "Media Name: "
-msgstr "Ðазвание бумаги: "
-
-msgid "Media Size"
-msgstr "Размер бумаги"
-
-msgid "Media Source"
-msgstr "ИÑточник бумаги"
-
-msgid "Media Tracking"
-msgstr "Контроль подачи бумаги"
-
-msgid "Media Type"
-msgstr "Тип бумаги"
-
-msgid "Medium"
-msgstr "Средний"
-
-msgid "Memory allocation error"
-msgstr "Ошибка раÑÐ¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼Ñти"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "ОтÑутÑтвует заголовок PPD-Adobe-4.x"
-
-msgid "Missing asterisk in column 1"
-msgstr "ОтÑутÑтвует звездочка в колонке 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "ОтÑутÑтвует Ñтрока значениÑ"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Изменить клаÑÑ"
-
-msgid "Modify Printer"
-msgstr "Изменить принтер"
-
-msgid "Move All Jobs"
-msgstr "ПеремеÑтить вÑе заданиÑ"
-
-msgid "Move Job"
-msgstr "ПеремеÑтить задание"
-
-msgid "Moved Permanently"
-msgstr "Перемещено окончательно"
-
-msgid "NULL PPD file pointer"
-msgstr "Указатель PPD-файла уÑтановлен на NULL"
-
-msgid "Name OID uses indefinite length"
-msgstr "Ð”Ð»Ñ Ð¸Ð¼ÐµÐ½Ð¸ OID длина не уÑтановлена"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Ðикогда"
-
-msgid "New Stylus Color Series"
-msgstr "Ð¡ÐµÑ€Ð¸Ñ Stylus Color нового поколениÑ"
-
-msgid "New Stylus Photo Series"
-msgstr "Ð¡ÐµÑ€Ð¸Ñ Stylus Photo нового поколениÑ"
-
-msgid "No"
-msgstr "Ðет"
-
-msgid "No Content"
-msgstr "Ðет контента"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Ðет поÑледовательноÑти VarBind"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Ðет рабочего подключениÑ"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Ðет имени ÑообщеÑтва"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Ðет добавленных назначений."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Ðет Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ error-index"
-
-msgid "No error-status"
-msgstr "Ðет Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ error-status"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Ðет имени OID"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Ðет идентификатора request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "ПодпиÑки не найдены."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Ðет поÑледовательноÑти variable-bindings"
-
-msgid "No version number"
-msgstr "Ðет номера верÑии"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "С прерыванием (опознавание маркеров)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "С прерыванием (опознавание Ñети)"
-
-msgid "Normal"
-msgstr "Ðормальный"
-
-msgid "Not Found"
-msgstr "Ðе найдено"
-
-msgid "Not Implemented"
-msgstr "Ðе реализовано"
-
-msgid "Not Installed"
-msgstr "Ðе уÑтановлено"
-
-msgid "Not Modified"
-msgstr "Ðе изменено"
-
-msgid "Not Supported"
-msgstr "Ðе поддерживаетÑÑ"
-
-msgid "Not allowed to print."
-msgstr "Ðе разрешено печатать."
-
-msgid "Note"
-msgstr "Примечание"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "ОК"
-
-msgid "Off (1-Sided)"
-msgstr "Выкл. (одноÑтороннÑÑ Ð¿ÐµÑ‡Ð°Ñ‚ÑŒ)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Ð˜Ð½Ñ‚ÐµÑ€Ð°ÐºÑ‚Ð¸Ð²Ð½Ð°Ñ Ñправка"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "Ðе удалоÑÑŒ открыть %s: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup без предыдущего CloseGroup"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI без предыдущего CloseUI/JCLCloseUI"
-
-msgid "Operation Policy"
-msgstr "Политика операций"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Параметры уÑтановлены"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Параметры: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Режим вывода"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "Лазерный принтер PCL"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "В пакете нет Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Ðет индикатора SEQUENCE в начале пакета"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Пароль Ð´Ð»Ñ %s на %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "Ð”Ð»Ñ Ð´Ð¾Ñтупа к %s через SAMBA требуетÑÑ Ð¿Ð°Ñ€Ð¾Ð»ÑŒ Ð´Ð»Ñ %s: "
-
-msgid "Pause Class"
-msgstr "ПриоÑтановить клаÑÑ"
-
-msgid "Pause Printer"
-msgstr "ПриоÑтановить принтер"
-
-msgid "Peel-Off"
-msgstr "Съемный Ñлой"
-
-msgid "Photo"
-msgstr "Фото"
-
-msgid "Photo Labels"
-msgstr "ФотоÑтикетки"
-
-msgid "Plain Paper"
-msgstr "ÐžÐ±Ñ‹Ñ‡Ð½Ð°Ñ Ð±ÑƒÐ¼Ð°Ð³Ð°"
-
-msgid "Policies"
-msgstr "Политики"
-
-msgid "Port Monitor"
-msgstr "Мониторинг порта"
-
-msgid "PostScript Printer"
-msgstr "Принтер PostScript"
-
-msgid "Postcard"
-msgstr "Открытка"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "ПлотноÑть печати"
-
-msgid "Print Job:"
-msgstr "Задание печати:"
-
-msgid "Print Mode"
-msgstr "Режим печати"
-
-msgid "Print Rate"
-msgstr "СкороÑть печати"
-
-msgid "Print Self-Test Page"
-msgstr "Ðапечатать пробную Ñтраницу"
-
-msgid "Print Speed"
-msgstr "СкороÑть печати"
-
-msgid "Print Test Page"
-msgstr "Ðапечатать пробную Ñтраницу"
-
-msgid "Print and Cut"
-msgstr "Ðапечатать и обрезать"
-
-msgid "Print and Tear"
-msgstr "Ðапечатать и оборвать"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Ðапечатано длÑ: "
-
-msgid "Printed From: "
-msgstr "Ðапечатано из: "
-
-msgid "Printed On: "
-msgstr "Дата печати: "
-
-msgid "Printer Added"
-msgstr "Принтер добавлен"
-
-msgid "Printer Default"
-msgstr "Принтер выбран по умолчанию"
-
-msgid "Printer Deleted"
-msgstr "Принтер удален"
-
-msgid "Printer Modified"
-msgstr "Принтер изменен"
-
-msgid "Printer Name: "
-msgstr "Ð˜Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°: "
-
-msgid "Printer Paused"
-msgstr "Принтер приоÑтановлен"
-
-msgid "Printer Settings"
-msgstr "Параметры принтера"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Принтер:"
-
-msgid "Printers"
-msgstr "Принтеры"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Удалить заданиÑ"
-
-msgid "Quarto"
-msgstr "Кватро"
-
-msgid "Quota limit reached."
-msgstr "Предел квоты доÑтигнут."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Отклонить заданиÑ"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Повторить печать поÑле ошибки"
-
-msgid "Request Entity Too Large"
-msgstr "Слишком большое Ñодержимое запроÑа"
-
-msgid "Resolution"
-msgstr "Разрешение"
-
-msgid "Resume Class"
-msgstr "Возобновить работу клаÑÑа"
-
-msgid "Resume Printer"
-msgstr "Возобновить работу принтера"
-
-msgid "Return Address"
-msgstr "Обратный адреÑ"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Обратный Ð°Ð´Ñ€ÐµÑ - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "ВернутьÑÑ Ð² начало"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "Ð”Ð»Ñ SEQUENCE длина не уÑтановлена"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "ПоÑмотреть другие"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "ПоÑледовательный порт #%d"
-
-msgid "Server Restarted"
-msgstr "Сервер перезагружен"
-
-msgid "Server Security Auditing"
-msgstr "Проверка безопаÑноÑти Ñервера"
-
-msgid "Server Started"
-msgstr "Сервер загружен"
-
-msgid "Server Stopped"
-msgstr "Сервер оÑтановлен"
-
-msgid "Service Unavailable"
-msgstr "Служба недоÑтупна"
-
-msgid "Set Allowed Users"
-msgstr "Указать допущенных пользователей"
-
-msgid "Set As Server Default"
-msgstr "ИÑпользовать данный Ñервер по умолчанию"
-
-msgid "Set Class Options"
-msgstr "ÐаÑтроить параметры клаÑÑа"
-
-msgid "Set Printer Options"
-msgstr "ÐаÑтроить параметры принтера"
-
-msgid "Set Publishing"
-msgstr "ÐаÑтроить публикацию"
-
-msgid "Shipping Address"
-msgstr "ÐÐ´Ñ€ÐµÑ Ð´Ð¾Ñтавки"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "ÐÐ´Ñ€ÐµÑ Ð´Ð¾Ñтавки - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "По короткой Ñтороне (альбомнаÑ)"
-
-msgid "Special Paper"
-msgstr "ОÑÐ¾Ð±Ð°Ñ Ð±ÑƒÐ¼Ð°Ð³Ð°"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Стандартный"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "ЗапуÑк баннера"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Оператор"
-
-msgid "Stylus Color Series"
-msgstr "Ð¡ÐµÑ€Ð¸Ñ Stylus Color"
-
-msgid "Stylus Photo Series"
-msgstr "Ð¡ÐµÑ€Ð¸Ñ Stylus Photo"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Протоколы переключениÑ"
-
-msgid "Tabloid"
-msgstr "Tabloid"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Оборвать"
-
-msgid "Tear-Off"
-msgstr "МеÑто отрыва"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Откорректировать положение меÑта отрыва"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "Ðе удаетÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ PPD-файл «%s»."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "Ðе удалоÑÑŒ открыть PPD-файл «%s»: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Ð˜Ð¼Ñ ÐºÐ»Ð°ÑÑа может Ñодержать макÑимально 127 печатных Ñимволов и не может "
-"Ñодержать пробелы, дроби (/) или знак «решетки» (#)."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"Ðтрибут notify-lease-duration не может иÑпользоватьÑÑ Ñ Ð¿Ð¾Ð´Ð¿Ð¸Ñками на "
-"задание."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Ð˜Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð° может Ñодержать макÑимально 127 печатных Ñимволов и не может "
-"Ñодержать пробелы, дроби (/) или знак «решетки» (#)."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "printer-uri «%s» Ñодержит недопуÑтимые Ñимволы."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr "printer-uri должен иметь форму «ipp://HOSTNAME/classes/CLASSNAME»."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr "printer-uri должен иметь форму «ipp://HOSTNAME/printers/PRINTERNAME»."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"Ð˜Ð¼Ñ Ð¿Ð¾Ð´Ð¿Ð¸Ñки не может Ñодержать пробелы, дроби (/), вопроÑительные знаки (?) "
-"или знак «решетки» (#)."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Слишком много подпиÑок."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "ÐоÑитель Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ методом термопереноÑа"
-
-msgid "Title: "
-msgstr "Заголовок: "
-
-msgid "Too many active jobs."
-msgstr "Слишком много активных заданий."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "ПрозрачноÑть"
-
-msgid "Tray"
-msgstr "Лоток"
-
-msgid "Tray 1"
-msgstr "Лоток 1"
-
-msgid "Tray 2"
-msgstr "Лоток 2"
-
-msgid "Tray 3"
-msgstr "Лоток 3"
-
-msgid "Tray 4"
-msgstr "Лоток 4"
-
-msgid "URI Too Long"
-msgstr "Слишком длинный Ð°Ð´Ñ€ÐµÑ URI"
-
-msgid "US Ledger"
-msgstr "US Ledger"
-
-msgid "US Legal"
-msgstr "US Legal"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "US Letter"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "ПоÑледовательный порт USB #%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ доÑтуп к файлу «cupsd.conf»:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Ðе удаетÑÑ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚ÑŒ подпиÑку RSS:"
-
-msgid "Unable to add class:"
-msgstr "Ðе удаетÑÑ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚ÑŒ клаÑÑ:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Ðе удаетÑÑ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚ÑŒ принтер:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Ðе удаетÑÑ Ð¾Ñ‚Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ подпиÑку RSS:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Ðе удаетÑÑ Ð¸Ð·Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ атрибут printer-is-shared:"
-
-msgid "Unable to change printer:"
-msgstr "Ðе удаетÑÑ Ð¸Ð·Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ принтер:"
-
-msgid "Unable to change server settings:"
-msgstr "Ðе удаетÑÑ Ð¸Ð·Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ наÑтройки Ñервера:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Ðе удаетÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒÑÑ Ðº хоÑту."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Ðе удаетÑÑ Ñоздать временный файл:"
-
-msgid "Unable to delete class:"
-msgstr "Ðе удаетÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ клаÑÑ:"
-
-msgid "Unable to delete printer:"
-msgstr "Ðе удаетÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ принтер:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Ðе удаетÑÑ Ð²Ñ‹Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÑŒ команду обÑлуживаниÑ:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ ÑпиÑок клаÑÑа:"
-
-msgid "Unable to get class status:"
-msgstr "Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ ÑÑ‚Ð°Ñ‚ÑƒÑ ÐºÐ»Ð°ÑÑа:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ ÑпиÑок драйверов принтера:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ атрибуты принтера:"
-
-msgid "Unable to get printer list:"
-msgstr "Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ ÑпиÑок принтеров:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Ðе удаетÑÑ Ð¸Ð·Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ клаÑÑ:"
-
-msgid "Unable to modify printer:"
-msgstr "Ðе удаетÑÑ Ð¸Ð·Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ принтер:"
-
-msgid "Unable to move job"
-msgstr "Ðе удаетÑÑ Ð¿ÐµÑ€ÐµÐ¼ÐµÑтить задание"
-
-msgid "Unable to move jobs"
-msgstr "Ðе удаетÑÑ Ð¿ÐµÑ€ÐµÐ¼ÐµÑтить заданиÑ"
-
-msgid "Unable to open PPD file"
-msgstr "Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ PPD-файл"
-
-msgid "Unable to open PPD file:"
-msgstr "Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ PPD-файл:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл «cupsd.conf»:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Ðе удаетÑÑ Ð½Ð°Ð¿ÐµÑ‡Ð°Ñ‚Ð°Ñ‚ÑŒ пробную Ñтраницу:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Ðе удаетÑÑ Ð½Ð°Ñтроить параметры:"
-
-msgid "Unable to set server default:"
-msgstr "Ðе удаетÑÑ Ð½Ð°Ð·Ð½Ð°Ñ‡Ð¸Ñ‚ÑŒ Ñервер иÑпользуемым по умолчанию:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Ðе удаетÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ файл «cupsd.conf»:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Ðе Ñанкционировано"
-
-msgid "Units"
-msgstr "Единицы"
-
-msgid "Unknown"
-msgstr "ÐеизвеÑтный"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¿Ð¾Ð»Ð¸Ñ‚Ð¸ÐºÐ° printer-error-policy «%s»."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¿Ð¾Ð»Ð¸Ñ‚Ð¸ÐºÐ° printer-op-policy «%s»."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Ðеподдерживаемый тип значениÑ"
-
-msgid "Upgrade Required"
-msgstr "ТребуетÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ðµ"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Ð”Ð»Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð»Ð¸Ð½Ð° не уÑтановлена"
-
-msgid "VarBind uses indefinite length"
-msgstr "Ð”Ð»Ñ VarBind длина не уÑтановлена"
-
-msgid "Version uses indefinite length"
-msgstr "Ð”Ð»Ñ Version длина не уÑтановлена"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Да"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Ð’Ñ‹ должны получить доÑтуп к Ñтой Ñтранице Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ URL <A HREF=«https://%s:%d"
-"%s»>https://%s:%d%s</A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "Принтер Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ Ñтикеток ZPL"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "отменено"
-
-msgid "canceled"
-msgstr "отменено"
-
-msgid "completed"
-msgstr "завершено"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "Ðе удалоÑÑŒ выполнить cups-deviced."
-
-msgid "cups-driverd failed to execute."
-msgstr "Ðе удалоÑÑŒ выполнить cups-driverd."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "Ð”Ð»Ñ error-index длина не уÑтановлена"
-
-msgid "error-status uses indefinite length"
-msgstr "Ð”Ð»Ñ error-status длина не уÑтановлена"
-
-msgid "held"
-msgstr "задержано"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "Ñвободен"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "задержка"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "обработка"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "Ð”Ð»Ñ request-id длина не определена"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "не удалоÑÑŒ уÑтановить %s: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "оÑтановлен"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "неизвеÑтный"
-
-msgid "untitled"
-msgstr "новый"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "Ð”Ð»Ñ variable-bindings длина не уÑтановлена"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(вÑе)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(нет)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\tзапиÑей: %d\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tПоÑле ошибки: продолжить\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tПредупреждениÑ:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tТребуетÑÑ Ð±Ð°Ð½Ð½ÐµÑ€\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tÐабор Ñимволов уÑтанавливает:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tПодключение: прÑмое\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tПодключение: удаленное\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tРазмер Ñтраницы по умолчанию:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tÐ’Ñ‹Ñота по умолчанию:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tÐаÑтройки порта по умолчанию:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tОпиÑание: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tФорма подключениÑ:\n"
-#~ "\tТипы контента: любые\n"
-#~ "\tТипы принтеров: неизвеÑтно\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tРазрешенные формы:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tИнтерфейÑ: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tИнтерфейÑ: %s/интерфейÑÑ‹/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tИнтерфейÑ: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tРаÑположение: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tПри ошибке: не выводить предупреждение\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tРазрешенные пользователи:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tЗапрещенные пользователи:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tдемон приÑутÑтвует\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tнет запиÑей\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tпринтер на ÑкороÑти -1 уÑтройÑтва «%s»\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tпечать отключена\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tпечать включена\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tочередь Ð´Ð»Ñ %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tочередь отключена\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tочередь включена\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tпричина неизвеÑтна\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " ПОДРОБÐЫЕ РЕЗУЛЬТÐТЫ ТЕСТРСООТВЕТСТВИЯ\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: Стр. 15, раздел 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: Стр. 15, раздел 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: Стр. 19, раздел 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: Стр. 20, раздел 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: Стр. 27, раздел 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: Стр. 42, раздел 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: Стр. 16-17, раздел 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: Стр. 42-45, раздел 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: Стр. 45-46, раздел 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: Стр. 48-49, раздел 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: Стр. 52-54, раздел 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f байт\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " PASS Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " PASS DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " PASS DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " PASS FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " PASS FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " PASS LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " PASS LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " PASS Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " PASS ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " PASS NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " PASS PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " PASS PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " PASS PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " PASS PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " PASS Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " PASS ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN «%s %s» конфликтует Ñ Â«%s %s»\n"
-#~ " (constraint=«%s %s %s %s»)\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %s не Ñодержит ÑоответÑтвующих параметров!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s иÑпользует общий Ð¿Ñ€ÐµÑ„Ð¸ÐºÑ ÑовмеÑтно Ñ %s\n"
-#~ " REF: Стр. 15, раздел 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN ЗначениÑ, иÑпользуемые по умолчанию, конфликтуют!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN Ключевое Ñлово параметра дуплекÑа %s может привеÑти к "
-#~ "некорректным результатам. ИÑпользуйте Ð¸Ð¼Ñ Â«Duplex»!\n"
-#~ " REF: Стр. 122, раздел 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " WARN Файл Ñодержит комбинацию окончаний Ñтроки CR, LF и CR "
-#~ "LF!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN LanguageEncoding требуетÑÑ Ñпецификацией PPD 4.3.\n"
-#~ " REF: Стр. 56-57, раздел 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN Строка %d Ñодержит только пробелы!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN LanguageEncoding требуетÑÑ Ñпецификацией PPD 4.3.\n"
-#~ " REF: Стр. 58-59, раздел 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN Файл APDialogExtension отÑутÑтвует «%s»\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN Файл APPrinterIconPath отÑутÑтвует «%s»\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN PPD-файлы не из Windows должны иÑпользовать Ñтроки только "
-#~ "Ñ Ð¾ÐºÐ¾Ð½Ñ‡Ð°Ð½Ð¸ÐµÐ¼ LF, а не Ñ CR LF!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN УÑÑ‚Ð°Ñ€ÐµÐ²ÑˆÐ°Ñ Ð²ÐµÑ€ÑÐ¸Ñ PPD %.1f!\n"
-#~ " REF: Стр. 42, раздел 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName длиннее чем 8.3 нарушает Ñпецификацию PPD.\n"
-#~ " REF: Стр. 61-62, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN Protocols Ñодержит PJL, но атрибуты JCL не наÑтроены.\n"
-#~ " REF: Стр. 78-79, раздел 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN ShortNickName требуетÑÑ Ñпецификацией PPD 4.3.\n"
-#~ " REF: Стр. 64-65, раздел 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s не ÑущеÑтвует!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Ðеверный %s выбор %s!\n"
-#~ " REF: Стр. 122, раздел 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Ðеверный перевод UTF-8 «%s» Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr " %s Ðеверный перевод UTF-8 «%s» Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° %s, выбора %s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Ðеверное значение cupsFilter «%s»!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s Ðеверный cupsICCProfile %s!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Ðеверное значение cupsPreFilter «%s»!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Ðеверный cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Ðеверный Ñзык «%s»!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s ПуÑтой cupsUIConstraints %s!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Перевод «%s» отÑутÑтвует Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° %s!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr " %s Перевод «%s» отÑутÑтвует Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° %s, выбора %s!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Выбор *%s %s отÑутÑтвует в UIConstraints «*%s %s *%s %s»!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr ""
-#~ " %s Выбор *%s %s отÑутÑтвует в cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s Файл cupsFilter отÑутÑтвует «%s»\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s Файл cupsICCProfile отÑутÑтвует «%s»!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s Файл cupsFilter «%s» отÑутÑтвует\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s ОтÑутÑтвует cupsUIResolver %s!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s Параметр %s отÑутÑтвует в UIConstraints «*%s %s *%s %s»!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Параметр %s отÑутÑтвует в cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s ОÑновной перевод «%s» не включен в файл!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " ТРЕБУЕТСЯ %s: %s не определÑет выбор «Ðет»!\n"
-#~ " REF: Стр. 122, раздел 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " Хеш-значение %s cupsICCProfile %s конфликтует Ñ %s!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s Ñоздает цикл!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Ð”Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° %s имена %s и %s различаютÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ региÑтром "
-#~ "Ñимволов!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FAIL** %s должно ÑоответÑтвовать 1284DeviceID!\n"
-#~ " REF: Стр. 72, раздел 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐЕВЕРÐЫЙ Default%s %s\n"
-#~ " REF: Стр. 40, раздел 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐЕВЕРÐЫЙ DefaultImageableArea %s!\n"
-#~ " REF: Стр. 102, раздел 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐЕВЕРÐЫЙ DefaultPaperDimension %s!\n"
-#~ " REF: Стр. 103, раздел 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐЕВЕРÐЫЙ JobPatchFile атрибут в файле\n"
-#~ " REF: Стр. 24, раздел 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐЕВЕРÐЫЙ Manufacturer (должен быть «HP»)\n"
-#~ " REF: Стр. 211, таблица D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐЕВЕРÐЫЙ Manufacturer (должен быть «Oki»)\n"
-#~ " REF: Стр. 211, таблица D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐЕВЕРÐОЕ ModelName – «%c» не разрешено в Ñтроке.\n"
-#~ " REF: Стр. 59-60, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐЕВЕРÐÐЯ PSVersion – не «(string) int».\n"
-#~ " REF: Стр. 62-64, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐЕВЕРÐЫЙ Product – не «(string)».\n"
-#~ " REF: Стр. 62, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐЕВЕРÐЫЙ ShortNickName – длиннее чем 31 Ñимв.\n"
-#~ " REF: Стр. 64-65, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FAIL** Ðеверный %s выбор %s!\n"
-#~ " REF: Стр. 84, раздел 5,9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ FileVersion \"%s\"\n"
-#~ " REF: Стр. 56, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ FormatVersion \"%s\"\n"
-#~ " REF: Стр. 56, раздел 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr ""
-#~ " **FAIL** Ðеверный LanguageEncoding %s – должно быть ISOLatin1!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr ""
-#~ " **FAIL** Ðеверный LanguageVersion %s – должен быть английÑкий!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr ""
-#~ " **FAIL** Ðе удаетÑÑ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ñ€ÐµÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ код параметра по умолчанию: %"
-#~ "s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Стандартный перевод Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° %s выбора %s Ñодержит 8-"
-#~ "битовые Ñимволы!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FAIL** Стандартный перевод Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° %s Ñодержит 8-битовые "
-#~ "Ñимволы!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Имена групп %s и %s различаютÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ региÑтром "
-#~ "Ñимволов!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FAIL** Ð”Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° %s Ð¸Ð¼Ñ %s вÑтречаетÑÑ Ð½ÐµÑколько раз!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FAIL** Имена параметров %s и %s различаютÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ региÑтром "
-#~ "Ñимволов!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ Default%s\n"
-#~ " REF: Стр. 40, раздел 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ DefaultImageableArea\n"
-#~ " REF: Стр. 102, раздел 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ DefaultPaperDimension\n"
-#~ " REF: Стр. 103, раздел 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ FileVersion\n"
-#~ " REF: Стр. 56, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ FormatVersion\n"
-#~ " REF: Стр. 56, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ ImageableArea Ð´Ð»Ñ PageSize %s\n"
-#~ " REF: Стр. 41, раздел 5.\n"
-#~ " REF: Стр. 102, раздел 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ LanguageEncoding\n"
-#~ " REF: Стр. 56-57, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ LanguageVersion\n"
-#~ " REF: Стр. 57-58, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ Manufacturer\n"
-#~ " REF: Стр. 58-59, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ ModelName\n"
-#~ " REF: Стр. 59-60, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ NickName\n"
-#~ " REF: Стр. 60, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ PCFileName\n"
-#~ " REF: Стр. 61-62, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ PSVersion\n"
-#~ " REF: Стр. 62-64, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ PageRegion\n"
-#~ " REF: Стр. 100, раздел 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ PageSize\n"
-#~ " REF: Стр. 41, раздел 5.\n"
-#~ " REF: Стр. 99, раздел 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ PageSize\n"
-#~ " REF: Стр. 99-100, раздел 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ PaperDimension Ð´Ð»Ñ PageSize %s\n"
-#~ " REF: Стр. 41, раздел 5.\n"
-#~ " REF: Стр. 103, раздел 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ Product\n"
-#~ " REF: Стр. 62, раздел 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FAIL** ТРЕБУЕТСЯ ShortNickName\n"
-#~ " REF: Стр. 64-65, раздел 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " ОБÐÐРУЖЕÐО ОШИБОК: %d\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " Ðеверный %%%%BoundingBox: в Ñтроке %d!\n"
-#~ " REF: Стр. 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ %%%%Page: в Ñтроке %d!\n"
-#~ " REF: Стр. 53, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " Ðеверные %%%%Pages: в Ñтроке %d!\n"
-#~ " REF: Стр. 43, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " Строка %d длиннее 255 Ñимволов (%d)!\n"
-#~ " REF: Стр. 25, Длина Ñтроки\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " %!PS-Adobe-3.0 отÑутÑтвует в первой Ñтроке!\n"
-#~ " REF: Стр. 17, 3.1 СоответÑтвующие документы\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " Комментарий %%EndComments отÑутÑтвует!\n"
-#~ " REF: Стр. 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " ОтÑутÑтвующий или неверный %%BoundingBox: комментарий!\n"
-#~ " REF: Стр. 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " ОтÑутÑÑ‚Ð²ÑƒÑŽÑ‰Ð°Ñ Ð¸Ð»Ð¸ Ð½ÐµÐ²ÐµÑ€Ð½Ð°Ñ %%Page: комментарий!\n"
-#~ " REF: Стр. 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " ОтÑутÑтвующие или неверные %%Pages: комментарий!\n"
-#~ " REF: Стр. 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " ОШИБОК ÐЕ ОБÐÐРУЖЕÐО\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " Обнаружено Ñтрок длиннее 255 Ñимволов: %d!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " Слишком много комментариев %%BeginDocument!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " Слишком много комментариев %%EndDocument!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " WARNING: файл Ñодержит бинарные данные!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " WARNING: нет ÐºÐ¾Ð¼Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ð¸Ñ %%EndComments в файле!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " WARNING: уÑÑ‚Ð°Ñ€ÐµÐ²ÑˆÐ°Ñ Ð²ÐµÑ€ÑÐ¸Ñ DSC %.1f в файле!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FAIL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ PPD-файл – %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FAIL\n"
-#~ " **FAIL** Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ PPD-файл – %s в Ñтроке %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " PASS\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10 Envelope"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11 Envelope"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12 Envelope"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14 Envelope"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9 Envelope"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f байт\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f байт\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s принимает запроÑÑ‹ Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ‚Ð° %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s не выполнено верÑией CUPS Ð´Ð»Ñ lpc.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s не готов\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s готов\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s готов и печатает\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s не принимает запроÑÑ‹ Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ‚Ð° %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s не поддерживаетÑÑ!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s принимает запроÑÑ‹ Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ‚Ð° %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s не принимает запроÑÑ‹ Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ‚Ð° %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [задание %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: ошибка %s: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: Дальнейшие дейÑÑ‚Ð²Ð¸Ñ Ð½ÐµÐ¸Ð·Ð²ÐµÑтны!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: Ошибка – %s Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ ÑƒÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ неÑущеÑтвующее назначение «%"
-#~ "s»!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Ошибка – неверный ID заданиÑ!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: Ошибка – невозможно одновременно печатать файлы и изменÑть заданиÑ!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Ошибка – не удаетÑÑ Ð¿ÐµÑ‡Ð°Ñ‚Ð°Ñ‚ÑŒ из stdin, еÑли предоÑтавлены файлы или "
-#~ "ID заданиÑ!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-S» должен идти набор Ñимволов!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-T» должен быть указан тип контента!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr ""
-#~ "%s: Ошибка – поÑле параметра «-n» должно быть указано количеÑтво копий!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-#» должен быть указан номер копии!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-P» должно быть указано назначение!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-b» должно быть указано назначение!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-d» должно быть указано назначение!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-f» должна быть указана форма!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-H» должно быть указано Ð¸Ð¼Ñ Ñ…Ð¾Ñта!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-H» должно быть указано Ð¸Ð¼Ñ Ñ…Ð¾Ñта!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-h» должно быть указано Ð¸Ð¼Ñ Ñ…Ð¾Ñта!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr ""
-#~ "%s: Ошибка – поÑле параметра «-y» должен быть указан ÑпиÑок режимов!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-%c» должно быть указано имÑ!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr ""
-#~ "%s: Ошибка – поÑле параметра «-o» должна быть указана Ñтрока параметра!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-P» должен идти ÑпиÑок Ñтраниц!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-%c» должен быть указан приоритет!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-r» должен идти текÑÑ‚ причины!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-t» должен быть указан заголовок!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr ""
-#~ "%s: Ошибка – поÑле параметра «-U» должно быть указано Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr ""
-#~ "%s: Ошибка – поÑле параметра «-u» должно быть указано Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Ошибка – поÑле параметра «-%c» должно быть указано значение!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Ошибка – требуетÑÑ Â«Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¾Â», «не завершено» или «вÑе» поÑле параметра "
-#~ "«-W»!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Ошибка – нет доÑтупного Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Ошибка – приоритет должен быть от 1 до 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Ошибка – планировщик не отвечает!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Ошибка – Ñлишком много файлов – «%s»\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Ошибка – не удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ доÑтуп к «%s» – %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: Ошибка – не удаетÑÑ Ð¿Ð¾Ñтавить в очередь из stdin - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Ошибка – неизвеÑтное назначение «%s»!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Ошибка – неизвеÑтное назначение «%s/%s»!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Ошибка – неизвеÑтный параметр «%c»!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Ошибка – неизвеÑтный параметр «%s»!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: ПоÑле параметра «-i» должен быть указан ID заданиÑ!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Фильтр «%s» недоÑтупен: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Ðеверное Ð¸Ð¼Ñ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² ÑпиÑке «%s»!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ Ñтрока фильтра «%s»\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr "%s: ТребуетÑÑ ID Ð·Ð°Ð´Ð°Ð½Ð¸Ñ («-i jobid») перед «-H restart»!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Ðет фильтра Ð´Ð»Ñ Ð¿Ñ€ÐµÐ¾Ð±Ñ€Ð°Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸Ð· %s/%s в %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: ÐžÐ¿ÐµÑ€Ð°Ñ†Ð¸Ñ Ð½Ðµ удалаÑÑŒ: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: Ðет Ñкомпилированной поддержки шифрованиÑ!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Ðе удаетÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒÑÑ Ðº Ñерверу\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: Ðе удаетÑÑ ÑƒÑтановить ÑвÑзь Ñ Ñервером!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: Ðе удаетÑÑ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ð¸Ñ‚ÑŒ тип MIME «%s»!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ %s – %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ %s – %s в Ñтроке %d.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ %s: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ PPD-файл: %s в Ñтроке %d.\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: Ðе удаетÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚ÑŒ базу данных MIME в «%s» или «%s»!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: ÐеизвеÑтное назначение «%s»!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: ÐеизвеÑтный MIME-тип Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ %s/%s!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: ÐеизвеÑтный параметр «%c»!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: ÐеизвеÑтный MIME-тип иÑточника %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Внимание – модификатор формата «%c» не поддерживаетÑÑ â€“ вывод может "
-#~ "быть неправильным!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Внимание – параметр набора Ñимволов пропущен!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Внимание – параметр типа контента пропущен!\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Внимание – параметр формы пропущен!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Внимание – параметр режима пропущен!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr ""
-#~ "%s: ошибка – Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ %s указывает неÑущеÑтвующее назначение «%"
-#~ "s»!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr ""
-#~ "%s: ошибка – поÑле параметра «-o» должна идти запиÑÑŒ вида option=value!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: ошибка – нет доÑтупного Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600dpi, оттенки Ñерого"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° Ñправки неизвеÑтна\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "Ð”Ð»Ñ ÑкÑпорта драйверов принтера требуетÑÑ Ð¿Ð°Ñ€Ð¾Ð»ÑŒ Samba!"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr "Ð”Ð»Ñ ÑкÑпорта драйверов принтера требуетÑÑ Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Samba!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "КлаÑÑ Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ «%s» уже ÑущеÑтвует!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "Принтер Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ «%s» уже ÑущеÑтвует!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (раÑширенный)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (раÑширенный)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (уменьшенный)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (раÑширенный)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "Попытка уÑтановить %s printer-state на неверное значение %d!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Группы атрибутов не дейÑтвуют (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "Ðеверный URI уÑтройÑтва «%s»!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "Ðеверное значение device-uri «%s»!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ Ñхема device-uri «%s»!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "Ðеверное значение document-format «%s»!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Ошибка в буфере filename!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Ðеверный атрибут шрифта: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Ðеверное значение job-priority!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Ðеверное значение job-sheets «%s»!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Ðеверный тип Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ job-sheets!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Ðеверное значение job-state!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Ðеверный атрибут job-uri «%s»!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Ðеверное значение notify-pull-method «%s»!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "Ðеверный URI notify-recipient-uri «%s»!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Ðеверный параметр + выбор в Ñтроке %d!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Ðеверное значение port-monitor «%s»!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Ðеверное значение printer-state %d!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Ðеверный номер верÑии запроÑа %d.%d!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "Ðеверный ID подпиÑки!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "Конверт C0"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "Конверт C1"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "Конверт C2"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "Конверт C3"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "Конверт C4"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "Конверт C5"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "Конверт C6"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "Конверт C65"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "Конверт C7"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Ðабор Ñимволов «%s» не поддерживаетÑÑ!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Конверт Chou3"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Конверт Chou4"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Команды могут быть Ñокращены. Команды:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Ðе удалоÑÑŒ Ñканировать тип «%s»!"
-
-#~ msgid "Cover open."
-#~ msgstr "Крышка открыта."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "Конверт DL"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "ПроÑвитель почти закончилÑÑ."
-
-#~ msgid "Developer empty!"
-#~ msgstr "ПроÑвитель закончилÑÑ!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "УÑтройÑтво: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Документ %d в задании %d не найден."
-
-#~ msgid "Door open."
-#~ msgstr "Дверца открыта."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Ð”Ð²Ð¾Ð¹Ð½Ð°Ñ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÐºÐ°"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: Ðе удаетÑÑ Ð²Ñ‹Ð´ÐµÐ»Ð¸Ñ‚ÑŒ памÑть Ð´Ð»Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ð¸ Ñтраницы: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: Ðе удаетÑÑ Ð²Ñ‹Ð´ÐµÐ»Ð¸Ñ‚ÑŒ памÑть Ð´Ð»Ñ Ð¼Ð°ÑÑива Ñтраниц: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Ðеверный %%BoundingBox: комментарий проÑмотрен!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: Ðеверный %%IncludeFeature: комментарий!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ %%Page: комментарий в файле!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: Ðеверный %%PageBoundingBox: комментарий в файле!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Ðеверный файл уÑтройÑтва SCSI «%s»!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: Ðеверный файл набора Ñимволов %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: Ðеверный тип набора Ñимволов %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: Ðеверное значение количеÑтва Ñтолбцов %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: Ðеверное значение cpi %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ Ñтрока опиÑÐ°Ð½Ð¸Ñ ÑˆÑ€Ð¸Ñ„Ñ‚Ð°: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: Ðеверное значение lpi %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Ðеверные параметры Ñтраницы!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: Ðеверное направление текÑта %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ ÑˆÐ¸Ñ€Ð¸Ð½Ð° текÑта %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: Целевой принтер не ÑущеÑтвует!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Дубликат %%BoundingBox: комментарий проÑмотрен!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: Дубликат %%Pages: комментарий проÑмотрен!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: ПуÑтой файл печати!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: Ошибка %d при отправке запроÑа PAPSendData: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: Ð’ Ñтроке %d из %s должна быть Ñтрока в кавычках!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: КритичеÑкий Ñбой USB!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr ""
-#~ "ERROR: Обнаружена Ð½ÐµÐ²ÐµÑ€Ð½Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° HP-GL/2, не удаетÑÑ Ð½Ð°Ð¿ÐµÑ‡Ð°Ñ‚Ð°Ñ‚ÑŒ файл!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: ОтÑутÑтвует %%EndProlog!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: ОтÑутÑтвует %%EndSetup!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: ОтÑутÑтвует идентификатор URI уÑтройÑтва в командной Ñтроке и "
-#~ "Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ DEVICE_URI!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: ОтÑутÑтвует значение в Ñтроке %d в файле баннера!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: ТребуетÑÑ Ñтрока msgid перед Ñтрокой перевода в Ñтроке %d из %s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: Ðет %%BoundingBox: комментарий в заголовке!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: Ðет %%Pages: комментарий в заголовке!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Ðе обнаружено URI уÑтройÑтва в argv[0] или переменной Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ "
-#~ "DEVICE_URI!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: ОтÑутÑтвуют шрифты в файле набора Ñимволов %s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: Страницы не найдены!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: Ðет бумаги!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: ÐŸÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ PRINTER не указана!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: Файл печати не принÑÑ‚ (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: Принтер не отвечает\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: Принтер не отвечает!\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: Принтер преждевременно передал индикатор EOF\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: Удаленный хоÑÑ‚ не принÑл контрольный файл (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: Удаленный хоÑÑ‚ не принÑл файл данных (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: Сбой, ÑвÑзанный Ñо временем Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð¸ отправке данных на "
-#~ "принтер\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚ÑŒ файл %d к заданию: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ задание %d: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: Ðе удаетÑÑ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ файл PDF"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ñоздать Ñокет"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ñоздать временный Ñжатый файл печати: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ñоздать временный файл"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ñоздать временный файл – %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ñоздать временный файл: %s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð²Ñ‹Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÑŒ pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ð¿ÑƒÑтить программу gs"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ð¿ÑƒÑтить программу pdftops"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ñ€Ð°Ð·Ð²ÐµÑ‚Ð²Ð¸Ñ‚ÑŒ pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ Ð·Ð°Ð¿Ñ€Ð¾Ñ PAP"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ ответ PAP"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ PPD-файл Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð° «%s» – %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ð¸Ñ‚ÑŒ Ñтандартную зону AppleTalk"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ атрибуты Ð·Ð°Ð´Ð°Ð½Ð¸Ñ %d (%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð° (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ð±Ð½Ð°Ñ€ÑƒÐ¶Ð¸Ñ‚ÑŒ принтер «%s»!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¿Ñ€Ð¾Ð²ÐµÑти поиÑк ответа PAP"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¿Ñ€Ð¾Ð²ÐµÑти поиÑк принтеров AppleTalk"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ñтавить Ð°Ð´Ñ€ÐµÑ AppleTalk"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ «%s» – %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ %s: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл баннера «%s» – %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл уÑтройÑтва «%s»: %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл «%s» – %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл «%s»: %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл печати «%s»: %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл печати %s – %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл печати %s: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ временный Ñжатый файл печати: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ временный файл"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð½Ð°Ð¿ÐµÑ‡Ð°Ñ‚Ð°Ñ‚ÑŒ Ñтолбцы Ñ Ñ‚ÐµÐºÑтом (%d)!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð½Ð°Ð¿ÐµÑ‡Ð°Ñ‚Ð°Ñ‚ÑŒ Ñтраницу Ñ Ñ‚ÐµÐºÑтом %dx%d!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ñчитать данные печати"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ñчитать данные печати!\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ñ€ÐµÐ·ÐµÑ€Ð²Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ порт"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¿ÐµÑ€ÐµÐ¹Ñ‚Ð¸ к Ñмещению %ld в файле – %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¿ÐµÑ€ÐµÐ¹Ñ‚Ð¸ к Ñмещению %lld в файле – %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÑŒ команду LPD"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÑŒ контрольный Ð·Ð°Ð¿Ñ€Ð¾Ñ PAP"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÑŒ иÑходный Ð·Ð°Ð¿Ñ€Ð¾Ñ PAP на отправку данных"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÑŒ данные печати (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÑŒ данные печати!\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÑŒ файл печати на принтер"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÑŒ конечное нулевое значение на принтер"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð¿Ð¾Ð´Ð¾Ð¶Ð´Ð°Ñ‚ÑŒ pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ð¿Ð¸Ñать %d байт на «%s»: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ð¿Ð¸Ñать %d байт на принтер!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ð¿Ð¸Ñать контрольный файл"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ð¿Ð¸Ñать данные печати"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ð¿Ð¸Ñать данные печати: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ð¿Ð¸Ñать раÑтровые данные на драйвер!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ð¿Ð¸Ñать данные во временный файл"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: Ðе удаетÑÑ Ð·Ð°Ð¿Ð¸Ñать неÑжатые данные документа: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: Ðепредвиденный текÑÑ‚ в Ñтроке %d из %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: ÐеизвеÑтное значение параметра ÑˆÐ¸Ñ„Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Â«%s»!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: ÐеизвеÑтный порÑдок файлов «%s»\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: Символ неизвеÑтного формата «%c»\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: ÐеизвеÑтный формат каталога Ñообщений Ð´Ð»Ñ Â«%s»!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: ÐеизвеÑтный параметр «%s» Ñо значением «%s»!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: ÐеизвеÑтный режим печати «%s»\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: ÐеизвеÑтное значение параметра верÑии «%s»!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr ""
-#~ "ERROR: Ðеподдерживаемое значение ÑркоÑти %s, иÑпользуетÑÑ "
-#~ "brightness=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr ""
-#~ "ERROR: Ðеподдерживаемое значение гаммы %s, иÑпользуетÑÑ gamma=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr ""
-#~ "ERROR: Ðеподдерживаемое значение number-up %d, иÑпользуетÑÑ number-up=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: Ðеподдерживаемое значение number-up-layout %s, иÑпользуетÑÑ number-"
-#~ "up-layout=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: Ðеподдерживаемое значение page-border %s, иÑпользуетÑÑ page-"
-#~ "border=none!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: Обнаружено переполнение doc_printf (%d байт), отменÑÑŽ!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: Сбой фильтра pdftops при Ñигнале %d!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: Фильтр pictwpstops закрыт Ñо ÑтатуÑом %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: Фильтр pictwpstops закрыт по Ñигналу %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: Фильтр pictwpstops закрыт Ñо ÑтатуÑом %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: ВоÑÑтанавливаемо: не удаетÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒÑÑ Ðº принтеру; попытка "
-#~ "будет повторена через 30 Ñекунд…\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: Сбой оператора select()"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: Ðе удаетÑÑ ÑƒÑтановить файл печати"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "ПуÑтой PPD-файл!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "ERROR: ТребуетÑÑ Ð¸Ð¼Ñ Ñ…Ð¾Ñта поÑле параметра «-h»!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "FAIL\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "URI-адреÑа файлового уÑтройÑтва отключены! Чтобы включить их, иÑпользуйте "
-#~ "директиву FileDevice в «%s/cupsd.conf»."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Ð’Ñ‹ÑÐ¾ÐºÐ°Ñ Ñ‚ÐµÐ¼Ð¿ÐµÑ€Ð°Ñ‚ÑƒÑ€Ð° термофикÑатора!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "ÐÐ¸Ð·ÐºÐ°Ñ Ñ‚ÐµÐ¼Ð¿ÐµÑ€Ð°Ñ‚ÑƒÑ€Ð° термофикÑатора!"
-
-#~ msgid "German FanFold"
-#~ msgstr "German FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "German FanFold Legal"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Получен атрибут printer-uri, но не job-id!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk отключен в СиÑтемных наÑтройках\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk отключен в СиÑтемных наÑтройках.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: Отмена Ð·Ð°Ð´Ð°Ð½Ð¸Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸â€¦\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: Подключен к принтеру…\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: Подключение к принтеру…\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: Контрольный файл уÑпешно отправлен\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: Файл данных уÑпешно отправлен\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: Форматирование Ñтраницы %d…\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: Загрузка файла изображениÑ…\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: ПоиÑк принтера...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: УÑтановка ÑоединениÑ\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr "INFO: Файл печати отправлен, ожидание Ð¾ÐºÐ¾Ð½Ñ‡Ð°Ð½Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ принтера…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: Принтер занÑÑ‚; попытка будет повторена через 10 Ñекунд…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Принтер занÑÑ‚; попытка будет повторена через 30 Ñекунд…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Принтер занÑÑ‚; попытка будет повторена через 5 Ñекунд…\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr ""
-#~ "INFO: Принтер не поддерживает IPP/%d.%d; попытка иÑпользовать IPP/1.0…\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Принтер занÑÑ‚; попытка будет повторена через 5 Ñекунд…\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: Ð’ данный момент принтер не подключен к Ñети.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: Ð’ данный момент принтер не подключен к Ñети.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: Принтер подключен к Ñети.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: Принтер не подключен к Ñети.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr ""
-#~ "INFO: Принтер не подключен; попытка будет повторена через 30 Ñекунд…\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: Печать Ñтраницы %d, %d%% завершена…\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: Печать Ñтраницы %d…\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: Готов к печати.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: Отправка контрольного файла (%lu байт)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: Отправка контрольного файла (%u байт)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: Отправка данных\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: Отправка файла данных (%ld байт)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: Отправка файла данных (%lld байт)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: Отправка данных печати…\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: Отправлен файл печати, %ld байт…\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: Отправлен файл печати, %lld байт…\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: Спулинг Ð·Ð°Ð´Ð°Ð½Ð¸Ñ LPR, %.0f%% выполнено…\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: Ðе удаетÑÑ ÑƒÑтановить ÑвÑзь Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð¾Ð¼, поÑтановка в очередь на "
-#~ "Ñледующем принтере в клаÑÑе…\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: ИÑпользуетÑÑ ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð°Ñ Ð·Ð¾Ð½Ð° AppleTalk «%s»\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: Ожидание Ð¾ÐºÐ¾Ð½Ñ‡Ð°Ð½Ð¸Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð·Ð°Ð´Ð°Ð½Ð¸Ñ…\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: Ожидание доÑтупа к принтеру...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "Конверт ISO B4"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (раÑширенный)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "Конверт ISO B5"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "Конверт ISO B6"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Чернила/тонер заканчиваютÑÑ."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Чернила/тонер закончилиÑÑŒ!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Корзина чернил/тонера почти полный."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Корзина чернил/тонера полнаÑ!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Открыт замок."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Конверт Invite Envelope"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Конверт Italian Envelope"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "Задание #%d не может быть перезапущено – нет файлов!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "Задание #%d не ÑущеÑтвует!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "Задание #%d завершено и не может быть изменено!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "Задание #%d не завершено!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "Задание #%d не задержано Ð´Ð»Ñ Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ð¸!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "Задание #%d не задержано!"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "Задание #%s не ÑущеÑтвует!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Задание #%d не найдено!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "ПодпиÑки на задание не могут быть обновлены!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Конверт Kaku2"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Конверт Kaku3"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Язык «%s» не поддерживаетÑÑ!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Затор бумаги!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Лоток Ñ Ð±ÑƒÐ¼Ð°Ð³Ð¾Ð¹ почти пуÑÑ‚."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Лоток Ñ Ð±ÑƒÐ¼Ð°Ð³Ð¾Ð¹ пуÑÑ‚!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Лоток Ñ Ð±ÑƒÐ¼Ð°Ð³Ð¾Ð¹ отÑутÑтвует!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Ðеобходимо вÑтавить бумагу в лоток."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "ОтÑутÑтвует атрибут document-number!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "ОтÑутÑтвуют двойные кавычки в Ñтроке %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "ОтÑутÑтвует Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ñ„Ð¾Ñ€Ð¼Ñ‹!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "ОтÑутÑтвует атрибут notify-subscription-ids!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "ОтÑутÑтвует атрибут requesting-user-name!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "ОтÑутÑтвуют обÑзательные атрибуты!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "ОтÑутÑтвует значение в Ñтроке %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Конверт Monarch"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: Файл печати принÑÑ‚ – ID Ð·Ð°Ð´Ð°Ð½Ð¸Ñ %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: Файл печати принÑÑ‚ – ID Ð·Ð°Ð´Ð°Ð½Ð¸Ñ Ð½ÐµÐ¸Ð·Ð²ÐµÑтен.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Ðет имени PPD!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Ðет уÑтановленных драйверов принтера Windows!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Ðет активных заданий на %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Ðет атрибутов в запроÑе!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Ðет информации Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸ подлинноÑти!"
-
-#~ msgid "No default printer"
-#~ msgstr "Ðет принтера по умолчанию"
-
-#~ msgid "No file!?!"
-#~ msgstr "Ðет файла!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Ðе указано Ð²Ñ€ÐµÐ¼Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Ðет имени принтера!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Ðе указан Ð°Ð´Ñ€ÐµÑ printer-uri Ð´Ð»Ñ ÐºÐ»Ð°ÑÑа!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Ðе указан Ð°Ð´Ñ€ÐµÑ printer-uri!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Ðет адреÑа printer-uri в запроÑе!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Ðет атрибутов подпиÑки в запроÑе!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC почти в end-of-life."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC в end-of-life!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "ÐедоÑтаточно тонера!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Выходной лоток почти заполнен."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Выходной лоток заполнен!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "Вывод Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð° %s отправлен на %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr "Вывод Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð° %s отправлен на удаленный принтер %s на %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "Вывод Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð° %s/%s отправлен на %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr "Вывод Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð° %s/%s отправлен на удаленный принтер %s на %s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Выходной лоток отÑутÑтвует!"
-
-#~ msgid "PASS\n"
-#~ msgstr "PASS\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "Конверт PRC1"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "Конверт PRC10"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "Конверт PRC2"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "Конверт PRC3"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (раÑширенный)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "Конверт PRC4"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "Конверт PRC5"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "Конверт PRC6"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "Конверт PRC7"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "Конверт PRC8"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "Конверт PRC9"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Индивидуальный конверт"
-
-#~ msgid "Printer offline."
-#~ msgstr "Принтер в режиме не подключен к Ñети."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Ранг Владелец Задание Файл(ы) Общий "
-#~ "размер\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Ранг Владелец Задание печати Файл(ы) "
-#~ "Общий размер\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Ð—Ð°Ð¿ÑƒÑ‰ÐµÐ½Ð½Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð°: %s %s -N -A %s -c «%s»\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "Принтер SCSI"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tabloid (раÑширенный)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "Значение notify-user-data Ñлишком длинное (%d > 63 октетов)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "Ðет общего доÑтупа к принтеру или клаÑÑу!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "Принтер или клаÑÑ Ð½Ðµ найден."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "ТребуетÑÑ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚ printer-uri!"
-
-#~ msgid "Toner low."
-#~ msgstr "Тонер заканчиваетÑÑ."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "Слишком много значений job-sheets (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "Слишком много значений printer-state-reasons (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "US Executive"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US Legal (раÑширенный)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US Letter (раÑширенный)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US Letter (уменьшенный)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Ðе удаетÑÑ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚ÑŒ задание Ð´Ð»Ñ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Â«%s»!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Ðе удаетÑÑ Ð²Ñ‹Ð´ÐµÐ»Ð¸Ñ‚ÑŒ памÑть Ð´Ð»Ñ Ñ‚Ð¸Ð¿Ð¾Ð² файлов!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr "Ðе удаетÑÑ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ 64-битовые файлы драйвера принтера CUPS (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr ""
-#~ "Ðе удаетÑÑ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ 64-битовые файлы драйвера принтера Ð´Ð»Ñ Windows (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "Ðе удаетÑÑ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ файлы драйвера принтера CUPS (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Ðе удаетÑÑ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ PPD-файл – %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Ðе удаетÑÑ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ PPD-файл!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr "Ðе удаетÑÑ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ файлы драйвера принтера Windows 2000 (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "Ðе удаетÑÑ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ файлы драйвера принтера Windows 9x (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Ðе удаетÑÑ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ Ñкрипт интерфейÑа – %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Ðе удаетÑÑ Ñоздать printer-uri!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "Ðевозможно редактировать файлы «cupsd.conf» больше 1 МБ!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Ðе удаетÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ назначение Ð´Ð»Ñ Ð·Ð°Ð´Ð°Ð½Ð¸Ñ!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Ðе удаетÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ принтер!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr "Ðе удаетÑÑ ÑƒÑтановить файлы драйвера принтера Windows 2000 (%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr "Ðе удаетÑÑ ÑƒÑтановить файлы драйвера принтера Windows 9x (%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ документ %d в задании %d!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Ðе удаетÑÑ Ð·Ð°Ð¿ÑƒÑтить «%s»: %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Ðе удаетÑÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÑŒ команду драйверу принтера!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Ðе удаетÑÑ Ð½Ð°Ñтроить драйвер принтера Windows (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Ðе удаетÑÑ Ð¸Ñпользовать уÑтаревший драйвер клаÑÑа USB!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° принтера (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Ðеподдерживаемый набор Ñимволов «%s»!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Ðеподдерживаемое Ñжатие «%s»!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Ðеподдерживаемый атрибут ÑÐ¶Ð°Ñ‚Ð¸Ñ %s!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Ðеподдерживаемый формат «%s»!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "Ðеподдерживаемый формат «%s»!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Ðеподдерживаемый формат «%s/%s»!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "СинтакÑиÑ: %s job user title copies options [filename]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "СинтакÑиÑ: %s job-id user title copies options [file]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "СинтакÑиÑ: %s job-id user title copies options file\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: convert [ options ]\n"
-#~ "\n"
-#~ "Параметры:\n"
-#~ "\n"
-#~ " -f filename УказываетÑÑ ÐºÐ¾Ð½Ð²ÐµÑ€Ñ‚Ð¸Ñ€ÑƒÐµÐ¼Ñ‹Ð¹ файл (в противном "
-#~ "Ñлучае stdin)\n"
-#~ " -o filename УказываетÑÑ Ñоздаваемый файл (в противном Ñлучае "
-#~ "stdout)\n"
-#~ " -i mime/type УказываетÑÑ MIME-тип данных на входе (в противном "
-#~ "Ñлучае auto-typed)\n"
-#~ " -j mime/type УказываетÑÑ MIME-тип данных на выходе (в противном "
-#~ "Ñлучае application/pdf)\n"
-#~ " -P filename.ppd УказываетÑÑ PPD-файл\n"
-#~ " -a 'name=value ...' УказываютÑÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ‹\n"
-#~ " -U username УказываетÑÑ Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ Ð·Ð°Ð´Ð°Ð½Ð¸Ñ\n"
-#~ " -J title УказываетÑÑ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²Ð¾Ðº\n"
-#~ " -c copies УказываетÑÑ ÐºÐ¾Ð»Ð¸Ñ‡ÐµÑтво копий\n"
-#~ " -u PPD-файл удалÑетÑÑ Ð¿Ð¾Ñле Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ‹\n"
-#~ " -D Файл, поÑтупивший на вход, удалÑетÑÑ Ð¿Ð¾Ñле "
-#~ "Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ‹\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: cupsaddsmb [options] принтер1 ... принтерN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Параметры:\n"
-#~ " -E Подключение к Ñерверу шифруетÑÑ\n"
-#~ " -H samba-server ИÑпользуетÑÑ Ð½Ð°Ð·Ð²Ð°Ð½Ð½Ñ‹Ð¹ Ñервер SAMBA\n"
-#~ " -U samba-user ВыполнÑетÑÑ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ° подлинноÑти Ñ Ð¸Ñпользованием "
-#~ "указанного Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ SAMBA\n"
-#~ " -a ЭкÑпортируютÑÑ Ð²Ñе принтеры\n"
-#~ " -h cups-server ИÑпользуетÑÑ Ð½Ð°Ð·Ð²Ð°Ð½Ð½Ñ‹Ð¹ Ñервер CUPS\n"
-#~ " -v Подробное отображение (показать команды)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Параметры:\n"
-#~ "\n"
-#~ " -E ВключаетÑÑ ÑˆÐ¸Ñ„Ñ€Ð¾Ð²Ð°Ð½Ð¸Ðµ\n"
-#~ " -U username УказываетÑÑ Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ\n"
-#~ " -h server[:port] УказываетÑÑ Ð°Ð´Ñ€ÐµÑ Ñервера\n"
-#~ "\n"
-#~ " --[no-]debug-logging ВключаетÑÑ/отключаетÑÑ Ð²ÐµÐ´ÐµÐ½Ð¸Ðµ журнала "
-#~ "отладки\n"
-#~ " --[no-]remote-admin ВключаетÑÑ/отключаетÑÑ ÑƒÐ´Ð°Ð»ÐµÐ½Ð½Ð¾Ðµ "
-#~ "админиÑтрирование\n"
-#~ " --[no-]remote-any РазрешаетÑÑ/запрещаетÑÑ Ð´Ð¾Ñтуп из Интернета\n"
-#~ " --[no-]remote-printers ОтображаютÑÑ/ÑкрываютÑÑ ÑƒÐ´Ð°Ð»ÐµÐ½Ð½Ñ‹Ðµ принтеры\n"
-#~ " --[no-]share-printers ВключаетÑÑ/отключаетÑÑ ÑовмеÑтное "
-#~ "иÑпользование принтеров\n"
-#~ " --[no-]user-cancel-any ПользователÑм разрешаетÑÑ/запрещаетÑÑ "
-#~ "отменÑть заданиÑ\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file ЗагружаетÑÑ Ð°Ð»ÑŒÑ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ð½Ñ‹Ð¹ файл конфигурации\n"
-#~ "-f Задание имеет выÑокий приоритет\n"
-#~ "-F Задание имеет выÑокий приоритет и выделÑетÑÑ\n"
-#~ "-h ОтображаетÑÑ Ð´Ð°Ð½Ð½Ð¾Ðµ Ñообщение\n"
-#~ "-l cupsd запуÑкаетÑÑ Ð¸Ð· launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Параметры:\n"
-#~ "\n"
-#~ " -c cupsd.conf ИÑпользуетÑÑ Ñ„Ð°Ð¹Ð» cupsd.conf\n"
-#~ " -j job-id[,N] Из указанного Ð·Ð°Ð´Ð°Ð½Ð¸Ñ Ð²Ñ‹Ð±Ð¸Ñ€Ð°ÐµÑ‚ÑÑ Ñ„Ð°Ð¹Ð» N (по умолчанию "
-#~ "файл 1)\n"
-#~ " -n copies ЗадаетÑÑ ÐºÐ¾Ð»Ð¸Ñ‡ÐµÑтво копий\n"
-#~ " -o name=value ЗадаютÑÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ‹\n"
-#~ " -p filename.ppd ЗадаетÑÑ PPD-файл\n"
-#~ " -t title ЗадаетÑÑ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²Ð¾Ðº\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Параметры:\n"
-#~ "\n"
-#~ " -h ОтображаетÑÑ Ñправка по иÑпользованию программы\n"
-#~ "\n"
-#~ " Примечание: Ð´Ð°Ð½Ð½Ð°Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð° проверÑет только комментарии DSC, а не "
-#~ "Ñам PostScript.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[."
-#~ "gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Параметры:\n"
-#~ "\n"
-#~ " -R root-directory ЗадаетÑÑ Ð°Ð»ÑŒÑ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ð½Ñ‹Ð¹ корневой каталог\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " ВмеÑто ошибок выдаютÑÑ Ð¿Ñ€ÐµÐ´ÑƒÐ¿Ñ€ÐµÐ¶Ð´ÐµÐ½Ð¸Ñ\n"
-#~ " -q Команда выполнÑетÑÑ Ð² «тихом» режиме\n"
-#~ " -r ИÑпользуетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ñ‹Ð¹ режим\n"
-#~ " -v Режим более подробного отображениÑ\n"
-#~ " -vv Режим макÑимально подробного отображениÑ\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "СинтакÑиÑ: lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "СинтакÑиÑ: lppasswd [-g groupname]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "{>СинтакÑиÑ: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] "
-#~ "[+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Параметры:\n"
-#~ " -D name=value Указанной переменной приÑваиваетÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ.\n"
-#~ " -I include-dir ДобавлÑетÑÑ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³ в путь поиÑка.\n"
-#~ " -c catalog.po ЗагружаетÑÑ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ñ‹Ð¹ каталог Ñообщений.\n"
-#~ " -d output-dir УказываетÑÑ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³ Ð´Ð»Ñ Ð²Ñ‹Ñ…Ð¾Ð´Ð½Ñ‹Ñ… данных.\n"
-#~ " -l lang[,lang,...] УказываетÑÑ Ñзык (регион) Ð´Ð»Ñ Ð²Ñ‹Ñ…Ð¾Ð´Ð½Ñ‹Ñ… данных.\n"
-#~ " -m Ð’ качеÑтве имени файла иÑпользуетÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ "
-#~ "ModelName.\n"
-#~ " -t ВмеÑто ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ PPD-файлов выполнÑетÑÑ Ð¸Ñ… "
-#~ "проверка.\n"
-#~ " -v Режим подробного Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ (чем больше букв v, "
-#~ "тем выше уровень детализации).\n"
-#~ " -z Файлы PPD ÑжимаютÑÑ Ñ Ð¸Ñпользованием GNU zip.\n"
-#~ " --cr Строки заканчиваютÑÑ Ð½Ð° CR (Mac OS 9).\n"
-#~ " --crlf Строки заканчиваютÑÑ Ð½Ð° CR + LF (Windows).\n"
-#~ " --lf Строки заканчиваютÑÑ Ð½Ð° LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Указанной переменной приÑваиваетÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ.\n"
-#~ "Параметры:\n"
-#~ " -I include-dir ДобавлÑетÑÑ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³ в путь поиÑка.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Параметры:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Параметры:\n"
-#~ " -o filename.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "СинтакÑиÑ: ppdpo [options] -o filename.po filename.drv [ ... filenameN."
-#~ "drv ]\n"
-#~ "Параметры:\n"
-#~ " -D name=value Указанной переменной приÑваиваетÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ.\n"
-#~ " -I include-dir ДобавлÑетÑÑ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³ в путь поиÑка.\n"
-#~ " -v Подробный режим (чем больше букв v, тем выше уровень "
-#~ "детализации).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "СинтакÑиÑ: snmp [host-or-ip-address]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: Будут добавлены только первые найденные принтеры (%d)"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: Параметр waiteof «%s» должен иметь булево значение\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: Ðе удалоÑÑŒ прочитать Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð±Ð¾ÐºÐ¾Ð²Ð¾Ð³Ð¾ канала!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr "WARNING: Параметр «%s» не может быть включен через IncludeFeature!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: Принтер не отвечает\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: Принтер преждевременно передал индикатор EOF\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Удаленный хоÑÑ‚ не ответил байтом command-ÑтатуÑа поÑле %d "
-#~ "Ñекунд!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Удаленный хоÑÑ‚ не ответил байтом control-ÑтатуÑа поÑле %d "
-#~ "Ñекунд!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Удаленный хоÑÑ‚ не ответил байтом data-ÑтатуÑа поÑле %d Ñекунд!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: Ð’Ñ€ÐµÐ¼Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ‹ SCSI иÑтекло (%d). Повтор попытки…\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Этот документ не ÑоответÑтвует Adobe Document Structuring "
-#~ "Conventions и может быть напечатан неправильно!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ «%s:%s»: %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: Ðе удаетÑÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÑŒ Ð·Ð°Ð¿Ñ€Ð¾Ñ ÑтатуÑа PAP"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: Ðепредвиденный PAP-пакет типа %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: ÐеизвеÑтный PAP-пакет типа %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: ÐеизвеÑтный выбор «%s» Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° «%s»!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: ÐеизвеÑтный параметр «%s»!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: ÐÐµÐ¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ ÑкороÑть передачи данных в бодах %s!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: Параметр ÑтатуÑа «%s» должен иметь чиÑловое значение\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: ВоÑÑтанавливаемо. ХоÑÑ‚ Ñети «%s» занÑÑ‚. Попытка будет повторена "
-#~ "через %d Ñек…\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr "Внимание! Ðет уÑтановленных драйверов принтера Windows 2000!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "Конверт You4"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "convert: ИÑпользуйте параметр -f Ð´Ð»Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð¸Ñ ÐºÐ¾Ð½Ð²ÐµÑ€Ñ‚Ð¸Ñ€ÑƒÐµÐ¼Ð¾Ð³Ð¾ файла.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: Ðет PPD-файла Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð° «%s» – %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: Ðе удаетÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒÑÑ Ðº Ñерверу: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: ÐеизвеÑтный параметр «%s»!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: ÐеизвеÑтный параметр «-%c»!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: Ожидаемое Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° конфигурации поÑле параметра «-c»!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: Ðе удаетÑÑ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ð¸Ñ‚ÑŒ текущий каталог!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: ÐеизвеÑтный аргумент «%s» – отмена!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: ÐеизвеÑтный параметр «%c» – отмена!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr ""
-#~ "cupsd: Поддержка launchd(8) не Ñкомпилирована, работа в нормальном "
-#~ "режиме.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: ÐедопуÑтимый номер документа %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: ÐедопуÑтимый ID Ð·Ð°Ð´Ð°Ð½Ð¸Ñ %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: Только одно Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° может быть указано!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: Ðе удаетÑÑ Ñоздать временный файл: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ файл Ð·Ð°Ð´Ð°Ð½Ð¸Ñ - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd: Параметр «-q» неÑовмеÑтим Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ «-v».\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd: Параметр «-v» неÑовмеÑтим Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ «-q».\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "уÑтройÑтво Ð´Ð»Ñ %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "уÑтройÑтво Ð´Ð»Ñ %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "Ñправка\t\tполучить Ñправку о командах\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "Ðтрибут job-printer-uri отÑутÑтвует!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Ð˜Ð¼Ñ ÐºÐ»Ð°ÑÑа может Ñодержать только печатные Ñимволы!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-P» должен быть указан PPD!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr ""
-#~ "lpadmin: ПоÑле параметра «-u» должен быть указан allow/deny:userlist!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-r» должен быть указан клаÑÑ!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-c» должно быть указано Ð¸Ð¼Ñ ÐºÐ»Ð°ÑÑа!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-D» должно идти опиÑание!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-v» должен быть указан URI уÑтройÑтва!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-I» должны быть указаны типы файлов!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-h» должно быть указано Ð¸Ð¼Ñ Ñ…Ð¾Ñта!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-i» должен быть указан интерфейÑ!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-L» должно быть указано меÑтоположение!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-m» должна быть указана модель!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr ""
-#~ "lpadmin: ПоÑле параметра «-o» должно быть указано значение вида "
-#~ "name=value!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-p» должен быть указан принтер!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: ПоÑле параметра «-d» должно быть указано Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr ""
-#~ "lpadmin: ПоÑле параметра «-x» должен быть указан принтер или клаÑÑ!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: Имена учаÑтников не обнаружены!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: Принтер %s уже ÑвлÑетÑÑ Ñ‡Ð»ÐµÐ½Ð¾Ð¼ клаÑÑа %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: Принтер %s не ÑвлÑетÑÑ Ñ‡Ð»ÐµÐ½Ð¾Ð¼ клаÑÑа %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Ð˜Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð° может Ñодержать только печатные Ñимволы!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Ðе удаетÑÑ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚ÑŒ принтер к клаÑÑу:\n"
-#~ " Ðеобходимо Ñначала указать Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: Ðе удаетÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒÑÑ Ðº Ñерверу: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: Ðе удаетÑÑ Ñоздать временный файл – %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: Ðе удаетÑÑ Ñоздать временный файл: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ PPD-файл «%s» – %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл «%s»: %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Ðе удаетÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ принтер из клаÑÑа:\n"
-#~ " Ðеобходимо Ñначала указать Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Ðе удаетÑÑ Ð½Ð°Ñтроить PPD-файл:\n"
-#~ " Ðеобходимо Ñначала указать Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Ðе удаетÑÑ Ð½Ð°Ñтроить URI уÑтройÑтва:\n"
-#~ " Ðеобходимо Ñначала указать Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Ðе удаетÑÑ Ð½Ð°Ñтроить Ñкрипт интерфейÑа или PPD-файл:\n"
-#~ " Ðеобходимо Ñначала указать Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Ðе удаетÑÑ Ð½Ð°Ñтроить Ñкрипт интерфейÑа:\n"
-#~ " Ðеобходимо Ñначала указать Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Ðе удаетÑÑ Ð½Ð°Ñтроить опиÑание принтера:\n"
-#~ " Ðеобходимо Ñначала указать Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Ðе удаетÑÑ Ð½Ð°Ñтроить размещение принтера:\n"
-#~ " Ðеобходимо Ñначала указать Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Ðе удаетÑÑ Ð½Ð°Ñтроить параметры принтера:\n"
-#~ " Ðеобходимо Ñначала указать Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð°!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: ÐеизвеÑтный параметр allow/deny «%s»!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: ÐеизвеÑтный аргумент «%s»!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: ÐеизвеÑтный параметр «%c»!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: Внимание – ÑпиÑок типов контента пропущен!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo: ПоÑле --device-id должна идти Ñтрока ID уÑтройÑтва 1284!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: ПоÑле –language должен быть указан Ñзык!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr ""
-#~ "lpinfo: ПоÑле --make-and-model должна быть указана марка и модель!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: ПоÑле –product должна идти Ñтрока продукта!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: ПоÑле --exclude-schemes должен идти ÑпиÑок Ñхем!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: ПоÑле --ixclude-schemes должен идти ÑпиÑок Ñхем!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: ПоÑле –timeout должно быть указано Ð²Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: ÐеизвеÑтный аргумент «%s»!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: ÐеизвеÑтный параметр «%c»!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: ÐеизвеÑтный параметр «%s»!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: Ðе удаетÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒÑÑ Ðº Ñерверу: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: ÐеизвеÑтный аргумент «%s»!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: ÐеизвеÑтный параметр «%c»!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: Ðет принтеров!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr ""
-#~ "lpoptions: Ðе удаетÑÑ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚ÑŒ принтер или предÑтавитель клаÑÑа: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: Ðе удаетÑÑ Ð¿Ð¾Ð»ÑƒÑ‡Ð¸Ñ‚ÑŒ PPD-файл Ð´Ð»Ñ %s: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ PPD-файл Ð´Ð»Ñ %s!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: ÐеизвеÑтный принтер или клаÑÑ!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr ""
-#~ "lppasswd: Только пользователь root может добавлÑть или удалÑть пароли!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: Файл Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð·Ð°Ð½ÑÑ‚!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: Файл Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð½Ðµ обновлен!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: Пароль не подходит!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: Пароль отклонен.\n"
-#~ "Пароль должен ÑоÑтоÑть как минимум из 6 Ñимволов, не может Ñодержать\n"
-#~ "Ваше Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸ должен Ñодержать по крайней мере одну букву и "
-#~ "цифру.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: Пароль не подходит!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: Ðе удаетÑÑ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ Ñтроку паролÑ: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: Ðе удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл паролÑ: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: Ðе удаетÑÑ Ð·Ð°Ð¿Ð¸Ñать файл паролÑ: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr "lppasswd: Ðе удалоÑÑŒ Ñоздать рез. копию Ñтарого файла паролÑ: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: Ðе удалоÑÑŒ переименовать файл паролÑ: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: Пользователь «%s» и группа «%s» не ÑущеÑтвуют.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: Ошибка – %s Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ ÑƒÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ неÑущеÑтвующее "
-#~ "назначение «%s»!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "члены клаÑÑа %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "нет запиÑей\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "нет Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ ÑиÑтемы по умолчанию\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events не указаны!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "URI-Ð°Ð´Ñ€ÐµÑ notify-recipient-uri «%s» уже иÑпользуетÑÑ!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "URI-Ð°Ð´Ñ€ÐµÑ notify-recipient-uri «%s» иÑпользует неизвеÑтную Ñхему!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d неверный!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: ДобавлÑÑŽ каталог «%s»...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: ДобавлÑÑŽ/обновлÑÑŽ текÑÑ‚ интерфейÑа из %s...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: ÐедопуÑтимое булево значение (%s) в Ñтроке %d из %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: ÐедопуÑтимое Ð¸Ð¼Ñ Ñ€Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Â«%s» в Ñтроке %d из %s.\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: ÐедопуÑтимое ключевое Ñлово ÑтатуÑа %s в Ñтроке %d из %s.\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ Ð·Ð°Ð¼ÐµÐ½Ð° переменной ($%c) в Ñтроке %d из %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr ""
-#~ "ppdc: Ð’ Ñтроке %d из %s обнаружено значение, не привÑзанное к параметру!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: Дубликат #po Ð´Ð»Ñ Ñ€ÐµÐ³Ð¸Ð¾Ð½Ð° %s в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должно быть определение фильтра!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должно быть Ð¸Ð¼Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ñ‹!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должно быть булево значение.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: ПоÑле Font в Ñтроке %d из %s должен быть указан набор Ñимволов!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должен быть код выбора.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должно быть имÑ/текÑÑ‚ выбора.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: ПоÑле ColorModel в Ñтроке %d из %s должна быть указана Ñ†Ð²ÐµÑ‚Ð¾Ð²Ð°Ñ "
-#~ "Ñхема!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Ð”Ð»Ñ ColorModel в Ñтроке %d из %s должно быть указано проÑтранÑтво "
-#~ "цветов!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Ð”Ð»Ñ ColorModel в Ñтроке %d из %s должно быть указано Ñжатие!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Ð”Ð»Ñ UIConstraints в Ñтроке %d из %s должна быть указана Ñтрока "
-#~ "ограничений!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: ПоÑле DriverType в Ñтроке %d из %s должно быть указано ключевое "
-#~ "Ñлово типа драйвера!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: ПоÑле Duplex в Ñтроке %d из %s должен быть указан тип дуплекÑа!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле Font в Ñтроке %d из %s должна быть указана кодировка!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: ПоÑле #po %s в Ñтроке %d из %s должно быть указано Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должно быть указано Ð¸Ð¼Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹/текÑÑ‚!\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должно быть указано Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должно быть целое чиÑло!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле #po в Ñтроке %d из %s должен быть указан регион!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле %s в Ñтроке %d из %s должно быть имÑ!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле FileName в Ñтроке %d из %s должно быть имÑ!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле Font в Ñтроке %d из %s должно быть имÑ!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле Manufacturer в Ñтроке %d из %s должно быть имÑ!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле MediaSize в Ñтроке %d из %s должно быть имÑ!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле ModelName в Ñтроке %d из %s должно быть имÑ!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле PCFileName в Ñтроке %d из %s должно быть имÑ!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле %s в Ñтроке %d из %s должно быть имÑ/текÑÑ‚!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле Installable в Ñтроке %d из %s должно быть имÑ/текÑÑ‚!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле Resolution в Ñтроке %d из %s должно быть имÑ/текÑÑ‚!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле ColorModel в Ñтроке %d из %s должно быть имÑ/текÑÑ‚!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должно быть указано Ð¸Ð¼Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°/текÑÑ‚!\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должен быть раздел параметров!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должен быть указан тип параметра!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: ПоÑле Resolution в Ñтроке %d из %s должно быть поле "
-#~ "переопределениÑ!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должно быть дейÑтвительное чиÑло!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: ПоÑле ColorProfile в Ñтроке %d из %s должно быть указано разрешение/"
-#~ "тип ноÑителÑ!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: ПоÑле SimpleColorProfile в Ñтроке %d из %s должно быть указано "
-#~ "разрешение/тип ноÑителÑ!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле %s в Ñтроке %d из %s должен быть Ñелектор!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле Font в Ñтроке %d из %s должен быть указан ÑтатуÑ!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле Copyright в Ñтроке %d из %s должна быть Ñтрока!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле Version в Ñтроке %d из %s должна быть Ñтрока!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: Ð’ Ñтроке %d из %s должны быть два имени параметра!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле %s в Ñтроке %d из %s должно быть значение!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: ПоÑле Font в Ñтроке %d из %s должна быть указана верÑиÑ!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: Ðеверное Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° #include/#po «%s»!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Затраты на фильтр в Ñтроке %d из %s указаны неверно!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: ÐедопуÑтимый пуÑтой MIME-тип Ð´Ð»Ñ Ñ„Ð¸Ð»ÑŒÑ‚Ñ€Ð° в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: ÐедопуÑтимое пуÑтое Ð¸Ð¼Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ñ‹ Ð´Ð»Ñ Ñ„Ð¸Ð»ÑŒÑ‚Ñ€Ð° в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ðеверный раздел параметров «%s» в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ðеверный тип параметра «%s» в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: Загружаю файл Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸ÐµÐ¹ о драйвере «%s»...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: Загружаю ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ñ€ÐµÐ³Ð¸Ð¾Ð½Ð° «%s»...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: Загружаю ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸Ð· «%s»...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: ОтÑутÑтвует #endif в конце «%s»!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: ОтÑутÑтвует #if в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: Ðе указан каталог Ñообщений Ð´Ð»Ñ Ñ€ÐµÐ³Ð¸Ð¾Ð½Ð° %s!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr "ppdc: Ð”Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° %s определен другой тип в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Ð”Ð»Ñ Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° должно быть указано *name в Ñтроке %d из %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: Слишком много вложенных операторов #if в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "lpadmin: Ðе удаетÑÑ Ñоздать PPD-файл «%s» – %s\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: Ðе удаетÑÑ Ñоздать каталог Ð´Ð»Ñ Ð²Ñ‹Ñ…Ð¾Ð´Ð½Ñ‹Ñ… данных %s: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: Ðе удаетÑÑ Ñоздать конвейеры Ð´Ð»Ñ Ð²Ñ‹Ñ…Ð¾Ð´Ð½Ñ‹Ñ… данных: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: Ðе удаетÑÑ Ð²Ñ‹Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÑŒ cupstestppd: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: Ðе удаетÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ файл #po %s в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ðе удаетÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ файл «%s» в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: Ðе удаетÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ локализацию Ð´Ð»Ñ Â«%s» - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: Ðе удаетÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ файл локализации «%s» - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Ðе определена Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ (%s) в Ñтроке %d из %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: ÐеизвеÑтный тип драйвера %s в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: ÐеизвеÑтный тип дуплекÑа «%s» в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: ÐеизвеÑтный размер ноÑÐ¸Ñ‚ÐµÐ»Ñ Â«%s» в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: ÐеизвеÑтный маркер «%s» в Ñтроке %d из %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: ÐеизвеÑтные конечные Ñимволы в вещеÑтвенном чиÑле «%s» в Ñтроке %d "
-#~ "из %s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc: Ðе завершена Ñтрока, начинающаÑÑÑ Ñ %c в Ñтроке %d из %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: ЗапиÑываю %s...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: ЗапиÑываю PPD-файлы в каталог «%s»...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: Ðеверное значение LanguageVersion «%s» в %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: ПропуÑкаю PPD-файл %s...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: Ðевозможно Ñоздать резервную копию %s на %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "принтер %s отключен Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ‚Ð° %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "принтер %s Ñвободен. Включен Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ‚Ð° %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "принтер %s ÑÐµÐ¹Ñ‡Ð°Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð°ÐµÑ‚ %s-%d. Включен Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ‚Ð° %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "принтер %s/%s отключен Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ‚Ð° %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "принтер %s/%s Ñвободен. Включен Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ‚Ð° %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "принтер %s/%s ÑÐµÐ¹Ñ‡Ð°Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð°ÐµÑ‚ %s-%d. Включен Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ‚Ð° %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "id запроÑа %s-%d (%d файл.)\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "планировщик не запущен\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "планировщик запущен\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "ÑтатуÑ\t\tпоказать ÑÑ‚Ð°Ñ‚ÑƒÑ Ð´ÐµÐ¼Ð¾Ð½Ð° и очереди\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "назначение ÑиÑтемы по умолчанию: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "назначение ÑиÑтемы по умолчанию: %s/%s\n"
diff --git a/locale/cups_sv.po b/locale/cups_sv.po
deleted file mode 100644
index 8c83cbb1..00000000
--- a/locale/cups_sv.po
+++ /dev/null
@@ -1,8673 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f millimeter"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f to %.0f x %.0f millimeter"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f tum"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f to %.2f x %.2f tum"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s kan inte ändras."
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 tum/sek."
-
-msgid "1.25x0.25\""
-msgstr "1,25 x 0,25"
-
-msgid "1.25x2.25\""
-msgstr "1,25 x 2,25\""
-
-msgid "1.5 inch/sec."
-msgstr "1,5 tum/sek."
-
-msgid "1.50x0.25\""
-msgstr "1,50 x 0,25\""
-
-msgid "1.50x0.50\""
-msgstr "1,50 x 0,50"
-
-msgid "1.50x1.00\""
-msgstr "1,50 x 1,00\""
-
-msgid "1.50x2.00\""
-msgstr "1,50 x 2,00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 tum/sek."
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 mm/sek."
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 tum/sek."
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 tum/sek."
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 mm/sek."
-
-msgid "120x60dpi"
-msgstr "120 x 60 dpi"
-
-msgid "120x72dpi"
-msgstr "120 x 72 dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136 dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 mm/sek."
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 mm/sek."
-
-msgid "150dpi"
-msgstr "150 dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180 dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 tum/sek."
-
-msgid "2-Sided Printing"
-msgstr "Dubbelsidig utskrift"
-
-msgid "2.00x0.37\""
-msgstr "2,00 x 0,37\""
-
-msgid "2.00x0.50\""
-msgstr "2,00 x 0,50\""
-
-msgid "2.00x1.00\""
-msgstr "2,00 x 1,00\""
-
-msgid "2.00x1.25\""
-msgstr "2,00 x 1,25\""
-
-msgid "2.00x2.00\""
-msgstr "2,00 x 2,00\""
-
-msgid "2.00x3.00\""
-msgstr "2,00 x 3,00\""
-
-msgid "2.00x4.00\""
-msgstr "2,00 x 4,00\""
-
-msgid "2.00x5.50\""
-msgstr "2,00 x 5,50\""
-
-msgid "2.25x0.50\""
-msgstr "2,25 x 0,50\""
-
-msgid "2.25x1.25\""
-msgstr "2,25 x 1,25\""
-
-msgid "2.25x4.00\""
-msgstr "2,25 x 4,00\""
-
-msgid "2.25x5.50\""
-msgstr "2,25 x 5,50\""
-
-msgid "2.38x5.50\""
-msgstr "2,38 x 5,50\""
-
-msgid "2.5 inches/sec."
-msgstr "2.5 tum/sek."
-
-msgid "2.50x1.00\""
-msgstr "2,50 x 1,00\""
-
-msgid "2.50x2.00\""
-msgstr "2,50 x 2,00\""
-
-msgid "2.75x1.25\""
-msgstr "2,75 x 1,25\""
-
-msgid "2.9 x 1\""
-msgstr "2,9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 mm/sek."
-
-msgid "200 mm/sec."
-msgstr "200 mm/sek."
-
-msgid "203dpi"
-msgstr "203 dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "Serier med 24 pin"
-
-msgid "240x72dpi"
-msgstr "240 x 72 dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 mm/sek."
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 tum/sek."
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3,00 x 1,00\""
-
-msgid "3.00x1.25\""
-msgstr "3,00 x 1,25\""
-
-msgid "3.00x2.00\""
-msgstr "3,00 x 2,00\""
-
-msgid "3.00x3.00\""
-msgstr "3,00 x 3,00\""
-
-msgid "3.00x5.00\""
-msgstr "3,00 x 5,00\""
-
-msgid "3.25x2.00\""
-msgstr "3,25 x 2,00\""
-
-msgid "3.25x5.00\""
-msgstr "3,25 x 5,00\""
-
-msgid "3.25x5.50\""
-msgstr "3,25 x 5,50\""
-
-msgid "3.25x5.83\""
-msgstr "3,25 x 5,83\""
-
-msgid "3.25x7.83\""
-msgstr "3,25 x 7,83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "3.5\" Disk"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3,5\" Disk - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3,50 x 1,00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 mm/sek."
-
-msgid "300 mm/sec."
-msgstr "300 mm/sek."
-
-msgid "300dpi"
-msgstr "300 dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360 dpi"
-
-msgid "360x180dpi"
-msgstr "360 x 180 dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 tum/sek."
-
-msgid "4.00x1.00\""
-msgstr "4,00 x 1,00\""
-
-msgid "4.00x13.00\""
-msgstr "4,00 x 13,00\""
-
-msgid "4.00x2.00\""
-msgstr "4,00 x 2,00\""
-
-msgid "4.00x2.50\""
-msgstr "4,00 x 2,50\""
-
-msgid "4.00x3.00\""
-msgstr "4,00 x 3,00\""
-
-msgid "4.00x4.00\""
-msgstr "4,00 x 4,00\""
-
-msgid "4.00x5.00\""
-msgstr "4,00 x 5,00\""
-
-msgid "4.00x6.00\""
-msgstr "4,00 x 6,00\""
-
-msgid "4.00x6.50\""
-msgstr "4,00 x 6,50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 mm/sek."
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 tum/sek."
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 tum/sek."
-
-msgid "6.00x1.00\""
-msgstr "6,00 x 1,00\""
-
-msgid "6.00x2.00\""
-msgstr "6,00 x 2,00\""
-
-msgid "6.00x3.00\""
-msgstr "6,00 x 3,00\""
-
-msgid "6.00x4.00\""
-msgstr "6,00 x 4,00\""
-
-msgid "6.00x5.00\""
-msgstr "6,00 x 5,00\""
-
-msgid "6.00x6.00\""
-msgstr "6,00 x 6,00\""
-
-msgid "6.00x6.50\""
-msgstr "6,00 x 6,50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 mm/sek."
-
-msgid "600dpi"
-msgstr "600 dpi"
-
-msgid "60dpi"
-msgstr "60 dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 tum/sek."
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720 dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 tum/sek."
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8,00 x 1,00\""
-
-msgid "8.00x2.00\""
-msgstr "8,00 x 2,00\""
-
-msgid "8.00x3.00\""
-msgstr "8,00 x 3,00\""
-
-msgid "8.00x4.00\""
-msgstr "8,00 x 4,00\""
-
-msgid "8.00x5.00\""
-msgstr "8,00 x 5,00\""
-
-msgid "8.00x6.00\""
-msgstr "8,00 x 6,00\""
-
-msgid "8.00x6.50\""
-msgstr "8,00 x 6,50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 mm/sek."
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 tum/sek."
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "Serier med 9 pin"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "Acceptera utskrifter"
-
-msgid "Accepted"
-msgstr "Accepterade"
-
-msgid "Add Class"
-msgstr "Lägg till klass"
-
-msgid "Add Printer"
-msgstr "Lägg till skrivare"
-
-msgid "Add RSS Subscription"
-msgstr "Lägg till RSS-prenumeration"
-
-msgid "Address"
-msgstr "Adress"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "Adress - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "Administration"
-
-msgid "Always"
-msgstr "Alltid"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "Applikator"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "Felaktig NULL- destinationspekare"
-
-msgid "Bad OpenGroup"
-msgstr "Felaktig OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "Felaktig OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "Felaktig OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "Felaktig begäran"
-
-msgid "Bad SNMP version number"
-msgstr "Felaktigt SNMP-versionsnummer"
-
-msgid "Bad UIConstraints"
-msgstr "Felaktig UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "Felaktigt värde för exemplar %d."
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "Felaktig anpassad parameter"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "Felaktigt värde för exemplar %d."
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "Felaktiga värden för sidintervall %d-%d."
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "Banners"
-
-msgid "Billing Information: "
-msgstr "Faktureringsinformation: "
-
-msgid "Bond Paper"
-msgstr "Fint papperr"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "Etikettskrivare CPCL"
-
-msgid "Cancel RSS Subscription"
-msgstr "Avbryt RSS-prenumeration"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "Ändra inställningar"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "Klasser"
-
-msgid "Clean Print Heads"
-msgstr "Rengör skrivarhuvuden"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "Färg"
-
-msgid "Color Mode"
-msgstr "Färgläge"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "Gruppnamn använder obegränsad längd"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "Fortsätt"
-
-msgid "Continuous"
-msgstr "Kontinuerlig"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "Skapad"
-
-msgid "Created On: "
-msgstr "Skapad den: "
-
-msgid "Custom"
-msgstr "Anpassad"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "Beskär"
-
-msgid "Cutter"
-msgstr "Beskärare"
-
-msgid "Dark"
-msgstr "Mörk"
-
-msgid "Darkness"
-msgstr "Mörkhet"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "Ta bort klass"
-
-msgid "Delete Printer"
-msgstr "Ta bort skrivare"
-
-msgid "Description: "
-msgstr "Beskrivning: "
-
-msgid "DeskJet Series"
-msgstr "DeskJet-serier"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "MÃ¥l \"%s\" tar inte emot utskrifter."
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "Termiska direktmedia"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "Avaktiverad"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "Drivrutinnamn: "
-
-msgid "Driver Version: "
-msgstr "Drivrutinversion: "
-
-msgid "Duplexer"
-msgstr "Duplexr"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "Etikettskrivare EPL1"
-
-msgid "EPL2 Label Printer"
-msgstr "Etikettskrivare EPL2"
-
-msgid "Edit Configuration File"
-msgstr "Redigera konfigurationsfil"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "Slutbanner"
-
-msgid "English"
-msgstr "Swedish"
-
-msgid "Enter old password:"
-msgstr "Ange gammalt lösenord:"
-
-msgid "Enter password again:"
-msgstr "Ange lösenord igen:"
-
-msgid "Enter password:"
-msgstr "Ange lösenord:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"Ange ditt användarnamn och lösenord eller root-användarnamnet och lösenord "
-"för att komma åt denna sida. Om du använder Kerberos-autentisering, "
-"kontrollera att du har en giltig Kerberos-biljett."
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "Kuvertmatare"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "Felpolicy"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "Var tionde etikett"
-
-msgid "Every 2 Labels"
-msgstr "Varannan etikett"
-
-msgid "Every 3 Labels"
-msgstr "Var tredje etikett"
-
-msgid "Every 4 Labels"
-msgstr "Var fjärde etikett"
-
-msgid "Every 5 Labels"
-msgstr "Var femte etikett"
-
-msgid "Every 6 Labels"
-msgstr "Var sjätte etikett"
-
-msgid "Every 7 Labels"
-msgstr "Var sjunde etikett"
-
-msgid "Every 8 Labels"
-msgstr "Var åttonde etikett"
-
-msgid "Every 9 Labels"
-msgstr "Var nionde etikett"
-
-msgid "Every Label"
-msgstr "Alla etiketter"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "Ej förväntad respons"
-
-msgid "Export Printers to Samba"
-msgstr "Exportera skrivare till Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "Filmapp"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "Filmapp - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "Folio"
-
-msgid "Forbidden"
-msgstr "Förbjudet"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "Allmänt"
-
-msgid "Generic"
-msgstr "Generisk"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU använder obegränsad längd"
-
-msgid "Glossy Paper"
-msgstr "Blankt papper"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "Gråskala"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "Hängmapp"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "Hängmapp- 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "Otillåtet styrtecken"
-
-msgid "Illegal main keyword string"
-msgstr "Otillåten huvudnyckelordssträng"
-
-msgid "Illegal option keyword string"
-msgstr "Otillåten alternativnyckelordssträng"
-
-msgid "Illegal translation string"
-msgstr "Otillåten översättningssträng"
-
-msgid "Illegal whitespace character"
-msgstr "Otillåtet blanktecken"
-
-msgid "Installable Options"
-msgstr "Installerbara alternativ"
-
-msgid "Installed"
-msgstr "Installerad"
-
-msgid "IntelliBar Label Printer"
-msgstr "Eikettskrivare från IntelliBar"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "Internt fel"
-
-msgid "Internet Postage 2-Part"
-msgstr "Internet Postage 2-Part"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Internet Postage 3-Part"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Internet Postage 3-Part - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Internet Printing Protocol"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "Utskrift #%d är redan avbruten - kan inte avbryta."
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "Utskrift #%d är redan avbruten - kan inte avbryta."
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "Utskrift #%d är redan klar - kan inte avbryta."
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "Utskriften är klar"
-
-msgid "Job Created"
-msgstr "Utskrift skapad"
-
-msgid "Job ID: "
-msgstr "Uskrifts-ID: "
-
-msgid "Job Options Changed"
-msgstr "Utskriftsalternativ ändrades"
-
-msgid "Job Stopped"
-msgstr "Utskriften har stoppats"
-
-msgid "Job UUID: "
-msgstr "Utskriftens UUID: "
-
-msgid "Job is completed and cannot be changed."
-msgstr "Utskriften är klar och kan inte ändras."
-
-msgid "Job operation failed:"
-msgstr "Utskriftsåtgärd misslyckades:"
-
-msgid "Job state cannot be changed."
-msgstr "Utskriftsstatus kan inte ändras."
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "Utskrifter"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR-värd eller skrivare"
-
-msgid "Label Printer"
-msgstr "Etikettskrivare"
-
-msgid "Label Top"
-msgstr "Etikettens överdel"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "Large Address"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "Large Address - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet Series PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "Lätt"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "Rad överskrider maxlängd (255 tecken)"
-
-msgid "List Available Printers"
-msgstr "Senast tillgängliga skrivare"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "Plats: "
-
-msgid "Long-Edge (Portrait)"
-msgstr "Långsida (porträtt)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "Tillverkning och modell: "
-
-msgid "Manual Feed"
-msgstr "Manuell matning"
-
-msgid "Media Dimensions: "
-msgstr "Mediemått: "
-
-msgid "Media Limits: "
-msgstr "Mediegränser: "
-
-msgid "Media Name: "
-msgstr "Medienamn: "
-
-msgid "Media Size"
-msgstr "Mediestorlek"
-
-msgid "Media Source"
-msgstr "Mediekälla"
-
-msgid "Media Tracking"
-msgstr "Mediespårning"
-
-msgid "Media Type"
-msgstr "Medietyp"
-
-msgid "Medium"
-msgstr "Medium"
-
-msgid "Memory allocation error"
-msgstr "Minnestilldelningsfel"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "Saknar PPD-Adobe-4.x-huvud"
-
-msgid "Missing asterisk in column 1"
-msgstr "Saknar asterisk i kolumn 1"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "Saknar värdesträng"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "Ändra klass"
-
-msgid "Modify Printer"
-msgstr "Ändra skrivare"
-
-msgid "Move All Jobs"
-msgstr "Flytta alla utskrifter"
-
-msgid "Move Job"
-msgstr "Flytta utskrift"
-
-msgid "Moved Permanently"
-msgstr "Flyttad permanent"
-
-msgid "NULL PPD file pointer"
-msgstr "NULL PPD-filspekare"
-
-msgid "Name OID uses indefinite length"
-msgstr "OID-namn använder obegränsad längd"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "Aldrig"
-
-msgid "New Stylus Color Series"
-msgstr "Nya Stylus Color-serier"
-
-msgid "New Stylus Photo Series"
-msgstr "Nya Stylus Photo-serier"
-
-msgid "No"
-msgstr "Nej"
-
-msgid "No Content"
-msgstr "Inget innehåll"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "Ingen VarBind SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "Ingen aktiv anslutning"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "Inget gruppnamn"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "Inga mål tillagda."
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "Inget felindex"
-
-msgid "No error-status"
-msgstr "Ingen felstatus"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "Inget OID-namn"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "Inget order-ID"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "Inga prenumerationer hittades."
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "Ingen variable-bindings SEQUENCE"
-
-msgid "No version number"
-msgstr "Inget versionsnummer"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "Non-continuous (Mark sensing)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "Non-continuous (Web sensing)"
-
-msgid "Normal"
-msgstr "Normal"
-
-msgid "Not Found"
-msgstr "Hittades inte"
-
-msgid "Not Implemented"
-msgstr "Inte implementerad"
-
-msgid "Not Installed"
-msgstr "Inte installerad"
-
-msgid "Not Modified"
-msgstr "Inte ändrad"
-
-msgid "Not Supported"
-msgstr "Stöds inte"
-
-msgid "Not allowed to print."
-msgstr "Ingen förvald skrivare."
-
-msgid "Note"
-msgstr "Anm"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "OK"
-
-msgid "Off (1-Sided)"
-msgstr "Av (1-sidig)"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "Hjälp på webben"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "Kunde inte öppna %s: %s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup utan en CloseGroup först"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI utan en CloseUI/JCLCloseUI först"
-
-msgid "Operation Policy"
-msgstr "Åtgärdspolicy"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "Alternativ installerade"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Alternativ: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "Utmatningsläge"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "Laserskrivare PCL"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "Paket innehåller inte Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "Paket börjar inte med SEQUENCE"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "Lösenord för %s på %s? "
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "Lösenord för %s krävs för att nå %s via SAMBA: "
-
-msgid "Pause Class"
-msgstr "Pausa klass"
-
-msgid "Pause Printer"
-msgstr "Pausa skrivare"
-
-msgid "Peel-Off"
-msgstr "Peel-Off"
-
-msgid "Photo"
-msgstr "Foto"
-
-msgid "Photo Labels"
-msgstr "Fotoetiketter"
-
-msgid "Plain Paper"
-msgstr "Vanligt papper"
-
-msgid "Policies"
-msgstr "Policier"
-
-msgid "Port Monitor"
-msgstr "Portövervakare"
-
-msgid "PostScript Printer"
-msgstr "PostScript-skrivare"
-
-msgid "Postcard"
-msgstr "Vykort"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "Svärta"
-
-msgid "Print Job:"
-msgstr "Utskrift:"
-
-msgid "Print Mode"
-msgstr "Utskriftsläge"
-
-msgid "Print Rate"
-msgstr "Utskriftshastighet"
-
-msgid "Print Self-Test Page"
-msgstr "Skriv ut självtestsida"
-
-msgid "Print Speed"
-msgstr "Utskriftshastighet"
-
-msgid "Print Test Page"
-msgstr "Skriv ut testsida"
-
-msgid "Print and Cut"
-msgstr "Skriv ut och beskär"
-
-msgid "Print and Tear"
-msgstr "Skriv ut riv"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "Utskriven för: "
-
-msgid "Printed From: "
-msgstr "Utskriven från: "
-
-msgid "Printed On: "
-msgstr "Utskriven den: "
-
-msgid "Printer Added"
-msgstr "Skrivare tillagd"
-
-msgid "Printer Default"
-msgstr "Skrivarstandard"
-
-msgid "Printer Deleted"
-msgstr "Skrivare borttagen"
-
-msgid "Printer Modified"
-msgstr "Skrivare ändrad"
-
-msgid "Printer Name: "
-msgstr "Skrivarnamn: "
-
-msgid "Printer Paused"
-msgstr "Utskrift pausad"
-
-msgid "Printer Settings"
-msgstr "Skrivarinställningar"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "Skrivare:"
-
-msgid "Printers"
-msgstr "Skrivare"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "Rensa utskrifter"
-
-msgid "Quarto"
-msgstr "Kvartsark"
-
-msgid "Quota limit reached."
-msgstr "Kvotgräns nådd."
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "Neka utskrifter"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "Skriv ut igen efter fel"
-
-msgid "Request Entity Too Large"
-msgstr "Enheten är för stor"
-
-msgid "Resolution"
-msgstr "Upplösning"
-
-msgid "Resume Class"
-msgstr "Ã…teruppta klass"
-
-msgid "Resume Printer"
-msgstr "Ã…teruppta skrivare"
-
-msgid "Return Address"
-msgstr "Returadress"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "Returadress- 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "Bakåt"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE använder obegränsad längd"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "Visa andra"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "Serieport #%d"
-
-msgid "Server Restarted"
-msgstr "Servern har startats om"
-
-msgid "Server Security Auditing"
-msgstr "Säkerhetskontroll av servern"
-
-msgid "Server Started"
-msgstr "Servern har startat"
-
-msgid "Server Stopped"
-msgstr "Servern har stoppats"
-
-msgid "Service Unavailable"
-msgstr "Tjänst otillgänglig"
-
-msgid "Set Allowed Users"
-msgstr "Ställ in tillåtna användare"
-
-msgid "Set As Server Default"
-msgstr "Ställ in som serverförval"
-
-msgid "Set Class Options"
-msgstr "Ställ in klassalternativ"
-
-msgid "Set Printer Options"
-msgstr "Ställ in skrivaralternativ"
-
-msgid "Set Publishing"
-msgstr "Ställ in publicering"
-
-msgid "Shipping Address"
-msgstr "Leveransadress"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "Leveransadress - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "Kortsida (landskap)"
-
-msgid "Special Paper"
-msgstr "Specialpapper"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "Standard"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "Startbanner"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "Utsaga"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color-serier"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo-serier"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "Byter protokoll"
-
-msgid "Tabloid"
-msgstr "Tabloid"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "Riv"
-
-msgid "Tear-Off"
-msgstr "Riv-av"
-
-msgid "Tear-Off Adjust Position"
-msgstr "Justeringsposition för avrivning"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "PPD-filen \"%s\" hittades inte."
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "PPD-filen \"%s\" kunde inte öppnas: %s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Klassnamnet får endast innehålla upp till 127 skrivbara tecken och får inte "
-"innehålla blanksteg, snedstreck (/) eller fyrkantstecknet (#)."
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr ""
-"Attributet notify-lease-duration kan inte användas med "
-"utskriftsprenumerationer."
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"Skrivarnamnet får endast innehålla upp till 127 skrivbara tecken och får "
-"inte innehålla blanksteg, snedstreck (/) eller fyrkantstecknet (#)."
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "Printer-uri \"%s\" innehåller ogiltiga tecken."
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr ""
-"Printer-uri måste vara i formatet \"ipp://VÄRDNAMN/classes/KLASSNAMN\"."
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr ""
-"Printer-uri måste vara i formatet \"ipp://VÄRDNAMN/printers/SKRIVARNAMN\"."
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr ""
-"&quot;Klassnamnet får endast innehålla upp till 127 skrivbara tecken och får "
-"inte innehålla blanksteg, snedstreck (/), frågetecken (?) eller "
-"fyrkantstecknet (#)."
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "Det finns för många prenumerationer."
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "Termiska överföringsmedia"
-
-msgid "Title: "
-msgstr "Titel: "
-
-msgid "Too many active jobs."
-msgstr "För många aktiva utskrifter."
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "Genomskinlighet"
-
-msgid "Tray"
-msgstr "Fack"
-
-msgid "Tray 1"
-msgstr "Fack 1"
-
-msgid "Tray 2"
-msgstr "Fack 2"
-
-msgid "Tray 3"
-msgstr "Fack 3"
-
-msgid "Tray 4"
-msgstr "Fack 4"
-
-msgid "URI Too Long"
-msgstr "För lång URI"
-
-msgid "US Ledger"
-msgstr "US Ledger"
-
-msgid "US Legal"
-msgstr "US Legal"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "US Letter"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "USB-serieport #%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "Kunde inte nå filen cupsd.conf:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "Kunde inte lägga till RSS-prenumeration:"
-
-msgid "Unable to add class:"
-msgstr "Kunde inte lägga till klass:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "Kunde inte lägga till skrivare:"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "Kunde inte avbryta RSS-prenumeration:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "Kunde inte ändra attributet printer-is-shared:"
-
-msgid "Unable to change printer:"
-msgstr "Kunde inte ändra skrivare:"
-
-msgid "Unable to change server settings:"
-msgstr "Kunde inte ändra serverinställningar:"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "Kunde inte ansluta till värd."
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "Kunde inte skapa temporär fil:"
-
-msgid "Unable to delete class:"
-msgstr "Kunde inte ta bort klass:"
-
-msgid "Unable to delete printer:"
-msgstr "Kunde inte ta bort skrivare:"
-
-msgid "Unable to do maintenance command:"
-msgstr "Kunde inte utföra underhållskommando:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "Kunde inte hämta klasslista:"
-
-msgid "Unable to get class status:"
-msgstr "Kunde inte hämta klasstatus:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "Kunde inte hämta listan med skrivardrivrutiner:"
-
-msgid "Unable to get printer attributes:"
-msgstr "Kunde inte hämta skrivarattribut:"
-
-msgid "Unable to get printer list:"
-msgstr "Kunde inte hämta skrivarlista:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "Kunde inte hämta skrivarstatus:"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "Kunde inte ändra klass:"
-
-msgid "Unable to modify printer:"
-msgstr "Kunde inte ändra skrivare:"
-
-msgid "Unable to move job"
-msgstr "Kunde inte flytta utskrift"
-
-msgid "Unable to move jobs"
-msgstr "Kunde inte flytta utskrifter"
-
-msgid "Unable to open PPD file"
-msgstr "Kunde inte öppna PPD-fil"
-
-msgid "Unable to open PPD file:"
-msgstr "Kunde inte öppna PPD-fil:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "Kunde inte öppna filen cupsd.conf:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "Kunde inte skriva ut testsida:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "Kunde inte ställa in alternativ:"
-
-msgid "Unable to set server default:"
-msgstr "Kunde inte ställa in serverstandard:"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "Kunde inte skicka upp filen cupsd.conf:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "Ej auktoriserad"
-
-msgid "Units"
-msgstr "Enheter"
-
-msgid "Unknown"
-msgstr "Okänd"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "Okänd printer-error-policy \"%s\"."
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "Okänd printer-op-policy \"%s\"."
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "Ogiltig värdetyp"
-
-msgid "Upgrade Required"
-msgstr "Uppgradering krävs"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Värde använder obegränsad längd"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind använder obegränsad längd"
-
-msgid "Version uses indefinite length"
-msgstr "Version använder obegränsad längd"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "Ja"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"Du måste öppna sidan med url:en <A HREF=\"https://%s:%d%s\">https://%s:%d%s</"
-"A>."
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "Etikettskrivare ZPL"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "stoppad"
-
-msgid "canceled"
-msgstr "stoppad"
-
-msgid "completed"
-msgstr "klar"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "cups-deviced misslyckades med att starta."
-
-msgid "cups-driverd failed to execute."
-msgstr "cups-driverd misslyckades med att starta."
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "felindex använder obegränsad längd"
-
-msgid "error-status uses indefinite length"
-msgstr "felstatus använder obegränsad längd"
-
-msgid "held"
-msgstr "hålls kvar"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "overksam"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "väntar"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "bearbetar"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "order-ID använder obegränsad längd"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "status för %s misslyckades: %s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "stoppad"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "okänd"
-
-msgid "untitled"
-msgstr "namnlös"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variabelbindningar använder obegränsad längd"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(alla)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(ingen)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d poster\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tEfter fel: fortsätt\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tVarningar:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\tBanner krävs\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\tTeckenkodningar:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\tAnslutning: direkt\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\tAnslutning: fjärr\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\tFörvalt pappersformat:\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\tStandardavstånd mellan bildpunkter:\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\tStandardportinställningar:\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tBeskrivning: %s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tAktiv skrivarmall:\n"
-#~ "\tInnehållstyper: alla\n"
-#~ "\tSkrivartyper: okänt\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tTillåtna format:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\tGränssnitt: %s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\tGränssnitt: %s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\tGränssnitt: %s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tPlats: %s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tVid fel: ingen varning\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tTillåtna användare:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tNekade användare:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tdemon närvarande\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tinga poster\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tskrivare finns pÃ¥ enheten â€%s†hastighet -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tutskrifter är avaktiverade\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\tutskrifter är aktiverade\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\tköad för %s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tköläggning är avaktiverad\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\tköläggning är aktiverad\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\tokänd anledning\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " DETALJERADE TESTRESULTAT\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: Sida 15, sektion 3.1.\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: Sida 15, sektion 3.2.\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: Sida 19, sektion 3.3.\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: Sida 20, sektion 3.4.\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: Sida 27, sektion 3.5.\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: Sida 42, sektion 5.2.\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: Sidorna 16-17, sektion 3.2.\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: Sidorna 42-45, sektion 5.2.\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: Sidorna 45-46, sektion 5.2.\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: Sidorna 48-49, sektion 5.2.\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: Sidorna 52-54, sektion 5.2.\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f byte\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " OK Standard%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " OK DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " OK DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " OK FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " OK FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " OK LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " OK LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " OK Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " OK ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " OK NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " OK PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " OK PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " OK PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " OK PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " OK Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " OK ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " VARN \"%s %s\" är i konflikt med \"%s %s\"\n"
-#~ " (begränsare=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " VARN %s har inga motsvarande alternativ!\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " VARN %s delar ett vanligt prefix med %s\n"
-#~ " REF: Sida 15, sektion 3.2.\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " VARN Standardval är i konflikt!\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " VARN Nyckelordet %s för duplexalternativet kanske inte "
-#~ "fungerar som det ska och bör vara Duplex!\n"
-#~ " REF: Sida 122, sektion 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr ""
-#~ " VARN Filen innehåller en blandning av radslut med CR, LF och "
-#~ "CR LF!\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " VARN LanguageEncoding krävs av PPD 4.3-spec.\n"
-#~ " REF: Sidorna 56-57, sektion 5.3.\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " VARN Rad %d innehåller endast mellanslag!\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " VARN Manufacturer krävs av PPD 4.3-spec.\n"
-#~ " REF: Sidorna 58-59, sektion 5.3.\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " VARN Saknad APDialogExtension-fil â€%sâ€\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " VARN Saknad APPrinterIconPath-fil â€%sâ€\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " VARN Icke-Windows PPD-filer bör använda radslut med endast LF, "
-#~ "inte CR LF!\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " VARN Föråldrad PPD-version %.1f!\n"
-#~ " REF: Sida 42, sektion 5.2.\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " VARN PCFileName längre än 8.3 i strid med PPD-spec.\n"
-#~ " REF: Sidorna 61-62, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " VARN Protokollen innehåller PJL men JCL-attributen är inte "
-#~ "inställda.\n"
-#~ " REF: Sidorna 78-79, sektion 5.7.\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " VARN Protokollen innehåller både PJL och BCP, förväntade "
-#~ "TBCP.\n"
-#~ " REF: Sidorna 78-79, sektion 5.7.\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " VARN ShortNickName krävs av PPD 4.3-spec.\n"
-#~ " REF: Sidorna 64-65, sektion 5.3.\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s finns inte!\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s Felaktigt %s val %s!\n"
-#~ " REF: Sida 122, sektion 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr ""
-#~ " %s Felaktig UTF-8-översättningssträng â€%s†för alternativet %s!\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Felaktig UTF-8-översättningssträng â€%s†för alternativet %s, "
-#~ "valet %s!\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s Felaktigt cupsFilter-värde \"%s\"!\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s Felaktig cupsICCProfile %s!\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s Felaktigt cupsFilter-värde \"%s\"!\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Felaktig cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s Felaktigt språk \"%s\"!\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s Tom cupsUIConstraints %s!\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s Saknad översättningssträng â€%s†för alternativet %s!\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr ""
-#~ " %s Saknad översättningssträng â€%s†för alternativet %s, valet %s!\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s Valet *%s %s saknas i UIConstraints \"*%s %s *%s %sâ€!\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Valet *%s %s saknas i cupsUIConstraints %s: \"%sâ€!\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s Felaktigt cupsFilter-värde \"%s\"\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s Saknad cupsICCProfile-fil \"%s\"!\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s Saknad cupsPreFilter-fil \"%s\"\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s Saknad cupsUIResolver %s!\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s Alternativet %s saknas i UIConstraints \"*%s %s *%s %s\"!\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s Alternativet %s saknas i cupsUIConstraints %s: \"%s\"!\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s Ingen grundöversättning \"%s\" finns i filen!\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s KRÄVER %s definierar inte valet None!\n"
-#~ " REF: Sida 122, sektion 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s cupsICCProfile %s hashvärde står i konflikt med %s!\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s orsakade en loop!\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FEL** %s namnen %s och %s skiljer sig endast i fråga om stor "
-#~ "eller liten bokstav!\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **FEL** %s måste vara 1284DeviceID!\n"
-#~ " REF: Sida 72, sektion 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FEL** FELAKTIG standard%s %s\n"
-#~ " REF: Sida 40, sektion 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEL** FELAKTIG DefaultImageableArea %s!\n"
-#~ " REF: Sida 102, sektion 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEL** FELAKTIG DefaultPaperDimension %s!\n"
-#~ " REF: Sida 103, sektion 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **FEL** FELAKTIGT JobPatchFile-attribut i fil\n"
-#~ " REF: Sida 24, sektion 3.4.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FEL** FELAKTIG Manufacturer (ska vara \"HP\")\n"
-#~ " REF: Sida 211, tabell D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **FEL** FELAKTIG Manufacturer (ska vara \"Oki\")\n"
-#~ " REF: Sida 211, tabell D.1.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** FELAKTIG ModelName- \"%c\" tillåts inte i sträng.\n"
-#~ " REF: Sidorna 59-60, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** FELAKTIG PSVersion - inte \"(string) int\".\n"
-#~ " REF: Sidorna 62-64, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** FELAKTIG Product - inte \"(string)\".\n"
-#~ " REF: Sida 62, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** FELAKTIG ShortNickName - längre än 31 tecken.\n"
-#~ " REF: Sidorna 64-65, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **FEL** Felaktigt %s-val %s!\n"
-#~ " REF: Sida 84, sektion 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** Felaktig FileVersion \"%s\"\n"
-#~ " REF: Sida 56, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** Felaktig FormatVersion \"%s\"\n"
-#~ " REF: Sida 56, sektion 5.3.\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr " **FEL** Felaktig språkkodning %s - måste vara ISOLatin1!\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **FEL** Felaktigt språk %s - måste vara engelska!\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr " **FEL** Förvald alternativkod kan inte tolkas: %s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr ""
-#~ " **FEL** Standardöversättningssträng för alternativet %s val %s "
-#~ "innehåller 8-bitars tecken!\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr ""
-#~ " **FEL** Standardöversättningssträng för alternativet %s innehåller "
-#~ "8-bitars tecken!\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FEL** Gruppnamnen %s och %s skiljer sig endast i fråga om stor "
-#~ "eller liten bokstav!\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **FEL** Flera förekomster av %s namn %s!\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr ""
-#~ " **FEL** Alternativnamnen %s och %s skiljer sig endast i fråga om "
-#~ "stor eller liten bokstav!\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **FEL** Standard%s KRÄVS\n"
-#~ " REF: Sida 40, sektion 4.5.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER DefaultImageableArea\n"
-#~ " REF: Sida 102, sektion 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER DefaultPaperDimension\n"
-#~ " REF: Sida 103, sektion 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER FileVersion\n"
-#~ " REF: Sida 56, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER FormatVersion\n"
-#~ " REF: Sida 56, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER ImageableArea för PageSize %s\n"
-#~ " REF: Sida 41, sektion 5.\n"
-#~ " REF: Sida 102, sektion 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER LanguageEncoding\n"
-#~ " REF: Sidorna 56-57, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER LanguageVersion\n"
-#~ " REF: Sidorna 57-58, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER Manufacturer\n"
-#~ " REF: Sidorna 58-59, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER ModelName\n"
-#~ " REF: Sidorna 59-60, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER NickName\n"
-#~ " REF: Sida 60, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER PCFileName\n"
-#~ " REF: Sidorna 61-62, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER PSVersion\n"
-#~ " REF: Sidorna 62-64, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER PageRegion\n"
-#~ " REF: Sida 100, sektion 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER PageSize\n"
-#~ " REF: Sida 41, sektion 5.\n"
-#~ " REF: Sida 99, sektion 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER PageSize\n"
-#~ " REF: Sidorna 99-100, sektion 5.14.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER PaperDimension för PageSize %s\n"
-#~ " REF: Sida 41, sektion 5.\n"
-#~ " REF: Sida 103, sektion 5.15.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER Product\n"
-#~ " REF: Sida 62, sektion 5.3.\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **FEL** KRÄVER ShortNickName\n"
-#~ " REF: Sidorna 64-65, sektion 5.3.\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " %d FEL HITTADES\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " Felaktig %%%%BoundingBox: på rad %d!\n"
-#~ " REF: Sida 39, %%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " Felaktig %%%%Page: på rad %d!\n"
-#~ " REF: Sida 53, %%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " Felaktiga %%%%Pages: på rad %d!\n"
-#~ " REF: Sida 43, %%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " Rad %d är längre än 255 tecken (%d)!\n"
-#~ " REF: Sida 25, Line Length\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " Saknar %!PS-Adobe-3.0 på första raden!\n"
-#~ " REF: Sida 17, 3.1 Conforming Documents\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " Saknar %%EndComments-kommentar!\n"
-#~ " REF: Sida 41, %%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " Saknad eller felaktig %%BoundingBox: kommentar!\n"
-#~ " REF: Sida 39, %%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " Saknad eller felaktig %%Page: kommentar!\n"
-#~ " REF: Sida 53, %%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " Saknad eller felaktig %%Pages: kommentar!\n"
-#~ " REF: Sida 43, %%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " INGA FEL HITTADES\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " Såg %d rader som översteg 255 tecken!\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " För många %%BeginDocument-kommentarer!\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " För många %%EndDocument-kommentarer!\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " Varning: filen innehåller binärdata!\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " Varning: ingen %%EndComments-kommentar i fil!\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " Varning: föråldrad DSC-version %.1f i fil!\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " FEL\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " FEL\n"
-#~ " **FEL** Kunde inte öppna PPD-fil - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " FEL\n"
-#~ " **FEL** Kunde inte öppna PPD-fil - %s på rad %d.\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " OK\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10 Envelope"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11 Envelope"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12 Envelope"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14 Envelope"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9 Envelope"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f byte\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f byte\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s accepterar begäran sedan %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s är inte införd i CUPS-versionen av lpc.\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s är inte klar\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s är klar\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s är klar och skriver ut\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s accepterar inte begäran sedan %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s stöds inte!"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s accepterar begäran sedan %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s accepterar inte begäran sedan %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s: %-33.33s [utskrift %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s: %s misslyckades: %s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s: Vet inte vad som ska göras!\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%s: Fel - miljövariabeln %s namnger icke-existerande mål \"%s\"!\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s: Fel - felaktigt utskrifts-ID!\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr ""
-#~ "%s: Fel - kan inte skriva ut filer och ändra utskrifter samtidigt!\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr ""
-#~ "%s: Fel - kan inte skriva ut från standard in om filer eller ett "
-#~ "utskrifts-ID anges!\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s: Fel - förväntade teckenkodning efter alternativet â€-Sâ€!\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s: Fel - förväntade innehÃ¥llstyp efter alternativet â€-Tâ€!\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s: Fel - förväntade exemplar efter alternativet â€-nâ€!\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s: Fel - förväntade antal exemplar efter alternativet â€-#â€!\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s: Fel - förväntade mÃ¥l efter alternativet â€-Pâ€!\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s: Fel - förväntade mÃ¥l efter alternativet â€-bâ€!\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s: Fel - förväntade mÃ¥l efter alternativet â€-dâ€!\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s: Fel - förväntade format efter alternativet â€-fâ€!\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s: Fel - förväntade kvarhÃ¥llningsnamn efter alternativet â€-Hâ€!\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s: Fel - förväntade värdnamn efter alternativet â€-Hâ€!\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s: Fel - förväntade värdnamn efter alternativet â€-hâ€!\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s: Fel - förväntade lägeslista efter alternativet â€-yâ€!\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s: Fel - förväntade namn efter alternativet â€-%câ€!\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s: Fel - förväntade alternativsträng efter alternativet â€-oâ€!\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s: Fel - förväntade sidlista efter alternativet â€-Pâ€!\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s: Fel - förväntade prioritet efter alternativet â€-%câ€!\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s: Fel - förväntade anledningstext efter alternativet â€-râ€!\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s: Fel - förväntade titel efter alternativet â€-tâ€!\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s: Fel - förväntade användarnamn efter alternativet â€-Uâ€!\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s: Fel - förväntade användarnamn efter alternativet â€-Uâ€!\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s: Fel - förväntade värde efter alternativet â€-%câ€!\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s: Fel - behöver â€completedâ€, â€not-completed†eller â€all†efter "
-#~ "alternativet â€-Wâ€!\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s: Fel - inget standardmål tillgängligt.\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s: Fel - prioritet måste vara mellan 1 och 100.\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s: Fel - schemaläggare svarar inte!\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s: Fel - för många filer - \"%s\"\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s: Fel - kunde inte komma åt \"%s\" - %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s: Fel - kunde inte köa från standard in - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s: Fel - okänt mål \"%s\"!\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s: Fel - okänt mål \"%s/%s\"!\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s: Fel - okänt alternativ â€%câ€!\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s: Fel - okänt alternativ â€%sâ€!\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s: Förväntade utskrifts-ID efter alternativet â€-iâ€!\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s: Filter \"%s\" inte tillgängligt: %s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s: Ogiltigt målnamn i listan \"%s\"!\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s: Ogiltig filtersträng \"%s\"\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr "%s: Behöver utskrifts-ID (â€-i jobidâ€) före â€-H restartâ€!\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s: Filter saknas för konvertering från %s/%s till %s/%s!\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s: Åtgärd misslyckades: %s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s: Tyvärr, inget stöd för kryptering har byggts in!\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s: Kunde inte ansluta till server\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s: Kunde inte kontakta server!\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s: Kan inte avgöra MIME-typ hos \"%s\"!\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s: Kan inte öppna %s - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s: Kan inte öppna %s - %s på rad %d.\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s: Kan inte öppna %s: %s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s: Kan inte öppna PPD-fil: %s på rad %d\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s: Kan inte läsa MIME-databas från \"%s\" eller \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s: Okänt mål \"%s\"!\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s: Okänd mål-MIME-typ %s/%s!\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s: Okänt alternativ â€%câ€!\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%s: Okänd käll-MIME-typ %s/%s!\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr ""
-#~ "%s: Varning - â€%c†formatmodifieraren stöds inte - utmatning kanske inte "
-#~ "blir korrekt!\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s: Varning - alternativet för teckenkodning ignorerades!\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s: Varning - alternativet för innehållstyp ignorerades!"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s: Varning - formuläralternativ ignorerades!\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s: Varning - lägesalternativ ignorerades!\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%s: fel - miljövariabeln %s namnger icke-existerande mål \"%s\"!\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s: förväntade option=value efter alternativet â€-oâ€!\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s: Fel - inget standardmål tillgängligt.\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 DPI gråskala"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60 x 720 dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?Ogiltigt hjälpkommando okänt\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "Ett Samba-lösenord krävs för att exportera skrivardrivrutiner"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr "Ett Samba-användarnamn krävs för att exportera skrivardrivrutiner!"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "En klass med namnet \"%s\" finns redan!"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "En skrivare med namnet \"%s\" finns redan!"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3 (större)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4 (större)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4 (mindre)"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5 (större)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "Försök att ställa in %s printer-state till felaktigt värde %d!"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "Attributgrupper har fel ordning (%x < %x)!"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "Felaktig device URI \"%s\"!\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "Felaktig device-uri \"%s\"!"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "Felaktigt device-uri-system\"%s\"!"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "Felaktigt document-format \"%s\"!"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "Felaktig buffring av filnamn!"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "Felaktigt teckensnittsattribut: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "Felaktigt värde för utskriftsprioritet!"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "Felaktigt värde för utskriftsark \"%s\"!"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "Felaktigt värde för typ av utskriftsark!"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "Felaktigt värde för utskriftsstatus!"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "Felaktigt attribut för job-uri \"%s\"!"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "Felaktig notify-pull-method \"%s\"!"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "Felaktig URI för notify-recipient \"%s\"!"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "Felaktigt alternativ + val på rad %d!"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "Felaktig portövervakare \"%s\"!"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "Felaktigt värde för skrivarstatus %d!"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "Felaktigt versionsnummer %d.%d för begäran!"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "Felaktigt prenumerations-ID!"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "Kuvert C0"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "Kuvert C1"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "Kuvert C2"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "Kuvert C3"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "Kuvert C4"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "Kuvert C5"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "Kuvert C6"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "Kuvert C65"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "Kuvert C7"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "Teckenkodningen \"%s\" stöds inte!"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3-kuvert"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4-kuvert"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "Kommandon kan förkortas. Kommandon är:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "Kunde inte skanna typen \"%s\"!"
-
-#~ msgid "Cover open."
-#~ msgstr "Lock öppet."
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL-kuvert"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "Tonern nästan slut."
-
-#~ msgid "Developer empty!"
-#~ msgstr "Tonern är slut!"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "Enhet: uri = %s\n"
-#~ " klass = %s\n"
-#~ " info = %s\n"
-#~ " tillverkning-och-modell = %s\n"
-#~ " enhets-id = %s\n"
-#~ " plats = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "Dokument %d hittades inte i utskrift %d."
-
-#~ msgid "Door open."
-#~ msgstr "Lucka öppen."
-
-#~ msgid "Double Postcard"
-#~ msgstr "Dubbelt vykort"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: Kunde inte tilldela minne för sidinfo: %s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: Kunde inte tilldela minne för sidordning: %s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Felaktig %%BoundingBox: kommentar sedd!\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: Felaktig %%IncludeFeature: kommentar!\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: Felaktig %%Page: kommentar i fil!\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: Felaktig %%PageBoundingBox: kommentar i fil!\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: Felaktig SCSI-enhetsfil \"%s\"!\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: Felaktig teckenkodningsfil %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: Felaktig teckenkodningstyp %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: Felaktigt kolumnvärde %d!\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: Felaktigt cpi-värde %f!\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: Felaktig typsnittsbeskrivning rad: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: Felaktigt lpi-värde %f!\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: Felaktigt utskriftsformat!\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: Felaktig textriktning %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: Felaktig textbredd %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: MÃ¥lskrivaren finns inte!\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: Duplikat av %%BoundingBox: kommentar sedd!\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: Duplikat av %%Pages: kommentar sedd!\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: Tom utskriftsfil!\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: Fel %d vid sändning av PAPSendData- begäran: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: Förväntad sträng inom citationstecken på rad %d av %s!\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: Allvarligt USB-fel!\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr "ERROR: Ogiltigt HP-GL/2-kommando sett, kan inte skriva ut filen!\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: Saknad %%EndProlog!\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: Saknad %%EndSetup!\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Saknad enhets-URI i kommandoraden och ingen miljövariabel för "
-#~ "DEVICE_URI!\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: Saknar värde på rad %d i bannerfil!\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: Ingen %%BoundingBox: kommentar i sidhuvud!\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: Inga %%Pages: kommentar i sidhuvud!\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr ""
-#~ "ERROR: Ingen enhets-URI hittades i argv[0] eller i miljövariabeln "
-#~ "DEVICE_URI!\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: Inga typsnitt i teckenkodningsfil %s\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: Inga sidor hittades!\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: Slut på papper!\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: PRINTER-miljövariabeln är inte definierad!\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: Utskriftsfilen accepterades inte (%s)!\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: Skrivaren svarar inte\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: Skrivaren svarar inte\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: Skrivare skickade oväntat EOF\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: Fjärrvärden accepterade inte styrfilen (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: Fjärrvärden accepterade inte datafilen (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr ""
-#~ "ERROR: Ett tidsgränsfel uppstod vid sändning av data till skrivare\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: Kunde inte lägga till filen %d i utskriften: %s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: Kunde inte avbryta utskriften %d: %s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: Kunde inte kopiera PDF-fil"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: Kunde inte skapa sockel"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Kunde inte skapa en temporär komprimerad utskriftsfil: %s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: Kunde inte skapa temporär fil"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: Kunde inte skapa temporär fil - %s.\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: Kunde inte skapa temporär fil: %s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: Kunde inte utföra pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: Kunde inte exekvera gs-program"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: Kunde inte exekvera pdftops-program"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: Kunde inte grena process: %s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: Kunde inte hämta PAP-förfrågan"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: Kunde inte hämta PAP-svar"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr "ERROR: Ingen PPD-fil för skrivaren \"%s\" - %s.\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: Kunde inte hämta förvald AppleTalk-zon"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: Kunde inte hämta utskriftsattribut %d (%s)!\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: Kunde inte hämta skrivarstatus (%s)!\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: Kunde inte hitta skrivaren â€%sâ€!\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: Kunde inte söka PAP-svar"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: Kunde inte söka AppleTalk-skrivare"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: Kunde inte göra AppleTalk-adress"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: Kunde inte öppna \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: Kunde inte öppna %s: %s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: Kunde inte öppna bannerfil \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: Kunde inte öppna enhetsfil \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: Kunde inte öppna fil \"%s\" - %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: Kunde inte öppna fil \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: Kunde inte öppna bildfilen för utskrift!\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: Kunde inte öppna utskriftsfilen \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: Kunde inte öppna utskriftsfilen %s - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: Kunde inte öppna utskriftsfilen %s: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr "ERROR: Kunde inte öppna temporär komprimerad utskriftsfil: %s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: Kunde inte öppna temporär fil"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: Kunde inte skriva ut %d textkolumner!\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: Kunde inte skriva ut %dx%d textsida!\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: Kunde inte läsa utskriftsdata"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: Kunde inte läsa utskriftsdata!"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: Kunde inte reservera porten"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: Kunde inte skapa offset %ld i fil - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: Kunde inte skapa offset %lld i fil - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: Kunde inte skicka LPD-kommando"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: Kunde inte skicka PAP-tickle-förfrågan"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: Kunde inte skicka första PAP-send-data-förfrågan"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: Kunde inte skicka utskriftsdata (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: Kunde inte skicka utskriftsdata!"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: Kunde inte skicka utskriftsfil till skrivare"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: Kunde inte skicka avslutande nullvärden till skrivare"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: Kunde inte vänta på pictwpstops: %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: Kunde inte skriva %d byte till \"%s\": %s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: Kunde inte skriva %d byte till skrivare!\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: Kunde inte skriva styrfil"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: Kunde inte skriva utskriftsdata"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: Kunde inte skriva utskriftsdata: %s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: Kunde skriva rasterdata till skrivaren!\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: Kunde inte skriva till temporär fil"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: Kunde inte skriva okomprimerade dokumentdata: %s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: Oväntad text på rad %d av %s!\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: Okänt krypteringsalternativvärde \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: Okänd filordning \"%s\"\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: Okänt formattecken \"%c\"\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: Okänt meddelandekatalogformat för \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: Okänt alternativ \"%s\" med värde \"%s\"!\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: Okänt utskriftsläge \"%s\"\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: Okänt versionsalternativvärde \"%s\"!\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr ""
-#~ "ERROR: Värdet %s för ljusstyrka stöds inte, använder ljusstyrka=100!\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: Värdet %s för gamma stöds inte, använder gamma=1000!\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: Värdet %d för number-up stöds inte, använder number-up=1!\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: Värdet %s för number-up-layout stöds inte, använder number-up-"
-#~ "layout=lrtb!\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr ""
-#~ "ERROR: Värdet %s för sidmarginal stöds inte, använder page-border=none!\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: doc_printf overflow (%d byte) upptäckt, stoppar!\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: pdftops-filter kraschade på signal %d!\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: pdftops-filter avslutades med status %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops avslutade med signalen %d!\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops avslutades med status %d!\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "ERROR: kan återställas: Kan inte ansluta till skrivaren, försöker igen om "
-#~ "30 sekunder...\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() kunde inte utföras"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: kan inte få status för utskriftsfilen"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "Tom PPD-fil!"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "Fel: behöver värdnamn efter alternativet â€-hâ€!\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "FEL\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "Filenhets URI:er har blivit avaktiverade! För att aktivera, se direktivet "
-#~ "FileDevice i \"%s/cupsd.conf\"."
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "Hög fixeringstemperatur!"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "LÃ¥g fixeringstemperatur!"
-
-#~ msgid "German FanFold"
-#~ msgstr "German FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "German FanFold Legal"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "Attribut för printer-uri finns, men inget utskrifts-ID!"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk avaktiverat i Systeminställningar\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk avaktiverat i Systeminställningar.\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: Avbryter utskrift...\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: Ansluten till skrivare...\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: Ansluter till skrivare...\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: Styrfil har skickats\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: Datafil har skickats\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: Formaterar sidan %d...\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: Läser in bildfil...\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: Söker skrivare...\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: Öppnar anslutning\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr "INFO: Utskriftsfil skickad, väntar på skrivaren...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: Skrivaren är upptagen, försöker igen om 10 sekunder...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Skrivaren är upptagen, försöker igen om 30 sekunder...\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Skrivaren är upptagen, försöker igen om 5 sekunder...\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr "INFO: Skrivaren stöder inte IPP/%d.%d, försöker med IPP/1.0...\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: Skrivaren är upptagen, försöker igen om 5 sekunder...\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: Skrivaren är frånkopplad just nu.\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: Skrivaren är frånkopplad just nu.\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: Skrivaren är online nu.\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: Skrivaren är frånkopplad.\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: Skrivaren är inte ansluten, försöker igen om 30 sekunder...\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: Skriver ut sidan %d, %d %% klart...\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: Skriver ut sidan %d...\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: Klar för utskrifter.\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: Skickar styrfil (%lu byte)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: Skickar styrfil (%u byte)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: Skickar data\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: Skickar datafil (%ld byte)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: Skickar datafil (%lld byte)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: Skickar utskriftsdata...\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: Skickar utskriftsfil, %ld byte...\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: Skickar utskriftsfil, %lld byte...\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: Buffrar LPR-utskrift, %.0f %% klart...\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr ""
-#~ "INFO: Kan inte kontakta skrivaren, köar för nästa skrivare i klassen...\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: Använder förvald AppleTalk-zon \"%s\"\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: Väntar på att utskrift ska bli klar...\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: Väntar på att skrivaren ska bli tillgänglig...\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "Kuvert ISO B4"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5 (större)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "Kuvert ISO B5"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "Kuvert ISO B6"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "Bläck/toner är nästan slut."
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "Bläck/toner är slut!"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "Avfallsbehållaren för bläck/toner nästan full."
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "Avfallsbehållaren för bläck/toner är full!"
-
-#~ msgid "Interlock open."
-#~ msgstr "Spärrmekanism öppen."
-
-#~ msgid "Invite Envelope"
-#~ msgstr "Invite-kuvert"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "Italienskt kuvert"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "Utskrift #%d kan inte startas om - inga filer!"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "Utskrift #%d finns inte!"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "Utskrift #%d är klar och kan inte ändras!"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "Utskrift #%d är inte klar!"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "Utskrift #%d hålls inte kvar för autentisering!"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "Utskrift #%d hålls inte kvar"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "Utskrift #%s finns inte!"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "Utskrift %d hittades inte!"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "Utskriftsprenumerationer kan inte förnyas!"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2-kuvert"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3-kuvert"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "Språket \"%s\" stöds inte!"
-
-#~ msgid "Media jam!"
-#~ msgstr "Medietrassel!"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "Mediefack nästan tomt."
-
-#~ msgid "Media tray empty!"
-#~ msgstr "Mediefack tomt!"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "Mediefack saknas!"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "Mediefacket måste fyllas på."
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "Saknar attribut för dokumentnummer!"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "Saknar dubbla citationstecken på rad %d!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "Saknar formatvariabel!"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "Saknar attributet notify-subscription-ids!"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "Saknar attributet requesting-user-name!"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "Saknar nödvändiga attribut!"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "Saknar värde på rad %d!"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "Modell: namn = %s\n"
-#~ " natural_language = %s\n"
-#~ " tillverkare-och-modell = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Monarch-kuvert"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: Utskriftsfil accepterad - utskrifts-ID %d.\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: Utskriftsfil accepterad - utskrifts-ID okänt.\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "Inget PPD-namn!"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "Inga skrivardrivrutiner för Windows är installerade!"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "Inga aktiva utskrifter på %s!"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "Inga attribut i begäran!"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "Ingen autentiseringsinformation angiven!"
-
-#~ msgid "No default printer"
-#~ msgstr "Ingen förvald skrivare"
-
-#~ msgid "No file!?!"
-#~ msgstr "Ingen fil!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "Ingen ändringstid!"
-
-#~ msgid "No printer name!"
-#~ msgstr "Inget skrivarnamn!"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "Ingen printer-uri hittades för klass!"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "Inget printer-uri hittades!"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "Inga printer-uri i begäran!"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "Inga prenumerationsattribut i begäran!"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC nästan vid slutpunkten."
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC vid slutpunkten!"
-
-#~ msgid "Out of toner!"
-#~ msgstr "Slut på toner!"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "Utmatningsfack nästan fullt."
-
-#~ msgid "Output bin full!"
-#~ msgstr "Utmatningsfack fullt!"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "Utmatning för skrivaren %s skickas till %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr "Utmatning för skrivaren %s skickas till fjärrskrivaren %s på %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "Utmatning för skrivaren %s/%s skickas till %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr ""
-#~ "Utmatning för skrivaren %s/%s skickas till fjärrskrivaren %s på %s\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "Utmatningsfack saknas!"
-
-#~ msgid "PASS\n"
-#~ msgstr "OK\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "Kuvert PRC1"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "Kuvert PRC10"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "Kuvert PRC2"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "Kuvert PRC3"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K (större)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "Kuvert PRC4"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "Kuvert PRC5"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "Kuvert PRC6"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "Kuvert PRC7"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "Kuvert PRC8"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "Kuvert PRC9"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "Personligt kuvert"
-
-#~ msgid "Printer offline."
-#~ msgstr "Skrivare frånkopplad."
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr ""
-#~ "Prioritet Ägare Utskrift Fil(er) Total "
-#~ "storlek\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "Prioritet Ägare Utskrift Filer Total "
-#~ "storlek\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "Kör kommando: %s %s -N -A %s -c â€%sâ€\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "Skrivare SCSI"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "Tabloid (större)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "Värdet för notify-user-data är för stort (%d &gt; 63 oktetter)!"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "Skrivaren eller klassen är inte delad!"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "Skrivaren eller klassen hittades inte."
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "Attributet printer-uri krävs!"
-
-#~ msgid "Toner low."
-#~ msgstr "Toner låg."
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "För många värden för utskriftsark (%d > 2)!"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "För många värden för skrivarstatus (%d > %d)!"
-
-#~ msgid "US Executive"
-#~ msgstr "US Executive"
-
-#~ msgid "US Fanfold"
-#~ msgstr "US Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "US Legal (större)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "US Letter (större)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "US Letter (mindre)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "Kunde inte lägga till utskrift för målet \"%s\"!"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "Kunde inte tilldela minne för filtyper!"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr "Kunde inte kopiera filer för 64-bitars CUPS-skrivardrivrutin (%d)!"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr ""
-#~ "Kunde inte kopiera filer för 64-bitars Windows-skrivardrivrutin (%d)!"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "Kunde inte kopiera filer för CUPS-skrivardrivrutin (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "Kunde inte kopiera PPD-fil - %s!"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "Kunde inte kopiera PPD-fil!"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Kunde inte kopiera filer för skrivardrivrutiner till 2000 Windows (%d)!"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "Kunde inte kopiera filer för Windows 9x-skrivardrivrutin (%d)!"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "Kunde inte kopiera gränssnittsskript - %s!"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "Kunde inte skapa printer-uri!"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "Kunde inte redigera cupsd.conf-filer större än 1 MB!"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "Kunde inte hitta mål för utskrift!"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "Kunde inte hitta skrivare!\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr ""
-#~ "Kunde inte installera filer för skrivardrivrutiner till 2000 Windows (%d)!"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr "Kunde inte installera filer för Windows 9x-skrivardrivrutin (%d)!"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "Kunde inte öppna dokument %d i utskrift %d!"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "Kunde inte köra \"%s\": %s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "Kunde inte skicka kommando till skrivardrivrutin!"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "Kunde inte ställa in Windows-skrivardrivrutin (%d)!"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "Kunde inte använda tidigare USB-klassdrivrutin!\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "Okänt skrivarfel (%s)!"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "Ogiltig teckenuppsättning \"%s\"!"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "Ogiltig komprimering \"%s\"!"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "Ogiltigt komprimeringsattribut %s!"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "Formatet \"%s\" stöds inte!"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr " Formatet â€%s†stöds inte!"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "Formatet â€%s/%s†stöds inte!"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Användning:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d mål\n"
-#~ " lpadmin [-h server] -x mål\n"
-#~ " lpadmin [-h server] -p skrivare [-c lägg-till-klass] [-i gränssnitt] "
-#~ "[-m modell]\n"
-#~ " [-r radera-klass] [-v enhet] [-D beskrivning]\n"
-#~ " [-P ppd-fil] [-o name=value]\n"
-#~ " [-u tillåt:användare,användare] [-u neka:användare,"
-#~ "användare]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Användning: %s job user title copies options [filename]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Användning: %s job-id user title copies options [file]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Användning: %s job-id user title copies options file\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Användning: konvertera [ alternativ ]\n"
-#~ "\n"
-#~ "Alternativ:\n"
-#~ "\n"
-#~ " -f filnamn Ange fil att konvertera (annars standard in)\n"
-#~ " -o filnamn Ange fil att generera (annars standard ut)\n"
-#~ " -i MIME/typ Ange MIME-typ för indata (annars automatiskt)\n"
-#~ " -j MIME/typ Ange MIME-typ för utdata (annars program/pdf)\n"
-#~ " -P filnamn.ppd Ange PPD-fil\n"
-#~ " -a â€name=value ...†Ange alternativ\n"
-#~ " -U användarnamn Ange användarnamn för utskrift\n"
-#~ " -J titel Ange titel\n"
-#~ " -c kopior Ange antal kopior\n"
-#~ " -u Radera PPD-filen när det är klart\n"
-#~ " -D Radera indatafilen när det är klart\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Användning: cupsaddsmb [alternativ] printer1 ... printerN\n"
-#~ " cupsaddsmb [alternativ] -a\n"
-#~ "\n"
-#~ "Alternativ:\n"
-#~ " -E Kryptera anslutningen till servernr\n"
-#~ " -H samba-server Använd den som heter SAMBA server\n"
-#~ " -U samba-användare Autentisera med den som heter SAMBA användare \n"
-#~ " -a Exportera alla skrivare\n"
-#~ " -h cups-server Använd den som heter CUPS server\n"
-#~ " -v Visa utförligt (visa kommandon)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Användning: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Alternativ:\n"
-#~ "\n"
-#~ " -E Aktivera kryptering\n"
-#~ " -U username Ange användarnamn\n"
-#~ " -h server[:port] Ange serveradress\n"
-#~ "\n"
-#~ " --[no-]debug-logging Slå av/på loggning vid felsökning\n"
-#~ " --[no-]remote-admin Slå av/på fjärradministrering\n"
-#~ " --[no-]remote-any Tillåt/förhindra åtkomst från Internet\n"
-#~ " --[no-]remote-printers Visa/göm fjärrskrivare\n"
-#~ " --[no-]share-printers Slå av/på skrivardelning\n"
-#~ " --[no-]user-cancel-any Tillåt/förhindra att användare kan avbryta "
-#~ "utskrifter\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Användning: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Läs upp alternativ konfigurationsfil\n"
-#~ "-f Kör i förgrunden\n"
-#~ "-F Kör i förgrunden men koppla bort\n"
-#~ "-h Visa det här användningsmeddelandet\n"
-#~ "-l Kör cupsd från launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Användning: cupsfilter -m MIME/typ [ alternativ ] filnamn\n"
-#~ "\n"
-#~ "Alternativ:\n"
-#~ "\n"
-#~ " -c cupsd.conf Ange cupsd.conf-fil för användning\n"
-#~ " -j utskrifts-ID[,N] Filtrera fil N från angiven utskrift (fil 1 är "
-#~ "förvald)\n"
-#~ " -n kopior Ange antal kopior\n"
-#~ " -o name=value Ange alternativ)\n"
-#~ " -p filnamn.ppd Ange PPD-fil\n"
-#~ " -t titel Ange titel\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Användning: cupstestdsc [alternativ] filnamn.ps [... filnamn.ps]\n"
-#~ " cupstestdsc [alternativ] -\n"
-#~ "\n"
-#~ "Alternativ:\n"
-#~ "\n"
-#~ " -h Visa programanvändning\n"
-#~ "\n"
-#~ " Obs: det här programmet verifierar DSC-kommentarer, men inte "
-#~ "PostScript.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Användning: cupstestppd [alternativ] filnamn1.ppd[.gz] [... filnamnN.ppd[."
-#~ "gz]]\n"
-#~ " program | cupstestppd [alternativ] -\n"
-#~ "\n"
-#~ "Alternativ:\n"
-#~ "\n"
-#~ " -R root-directory Ange alternativ rot\n"
-#~ " -W {alla,ingen,regler,standard,duplex,filter,översättningar}\n"
-#~ " Skicka varningar istället för fel\n"
-#~ " -q Kör ljudlöst\n"
-#~ " -r Använd öppet läge\n"
-#~ " -v Visa mindre utförligt\n"
-#~ " -vv Visa mycket utförligt\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Användning: lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Användning: lpoptions [-h server] [-E] -d skrivare\n"
-#~ " lpoptions [-h server] [-E] [-p skrivare] -l\n"
-#~ " lpoptions [-h server] [-E] -p skrivare -o alternativ[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x skrivare\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Användning: lppasswd [-g gruppnamn]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Användning: lppasswd [-g gruppnamn] [användarnamn]\n"
-#~ " lppasswd [-g gruppnamn] -a [användarnamn]\n"
-#~ " lppasswd [-g gruppnamn] -x [användarnamn]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Användning: lpq [-P dest] [-U användarnamn] [-h värdnamn[:port]] [-l] "
-#~ "[+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Användning: ppdc [alternativ] filnamn.drv [ ... filnamnN.drv ]\n"
-#~ "Alternativ:\n"
-#~ " -D name=value Ange namngiven variabel till värde.\n"
-#~ " -I include-dir Lägg till inkluderingsfiler till sökväg.\n"
-#~ " -c catalog.po Läs upp angiven meddelandekatalog.\n"
-#~ " -d output-dir Ange utdatakatalog.\n"
-#~ " -l lang[,lang,...] Ange språk för utdata (språkversion).\n"
-#~ " -m Använd värdet för modellnamn som filnamn.\n"
-#~ " -t Testa PPD-filer istället för att skapa fler.\n"
-#~ " -v Visa utförligt (ju fler v:n desto mer "
-#~ "detaljerat).\n"
-#~ " -z Komprimera PPD-filer med GNU zip.\n"
-#~ " --cr Avsluta rader med CR (Mac OS 9).\n"
-#~ " --crlf Avsluta rader med CR + LF (Windows).\n"
-#~ " --lf Avsluta rader med LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Användning: ppdhtml [alternativ] filnamn.drv >filnamn.html\n"
-#~ " -D name=value Ange namngiven variabel till värde.\n"
-#~ "Alternativ:\n"
-#~ " -I include-dir Lägg till inkluderingsfiler till sökväg.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Användning: ppdi [alternativ] filnamn.ppd [ ... filnamnN.ppd ]\n"
-#~ "Alternativ:\n"
-#~ " -I include-dir\n"
-#~ " -o filnamn.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Användning: ppdmerge [alternativ] filnamn.ppd [ ... filnamnN.ppd ]\n"
-#~ "Alternativ:\n"
-#~ " -o filnamn.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Användning: ppdpo [alternativ] -o filnamn.po filnamn.drv [ ... filnamnN."
-#~ "drv ]\n"
-#~ "Alternativ:\n"
-#~ " -D name=value Ange namngiven variabel till värde.\n"
-#~ " -I include-dir Lägg till inkluderingsfiler till sökväg.\n"
-#~ " -v Visa utförligt (ju fler v:n desto mer detaljerat).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Användning: snmp [host-or-ip-address]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: Lägger endast till de första %d som hittas"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: Boolesk förväntat för alternativet waiteof \"%s\"\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: Kunde inte läsa sidkanalsbegäran!\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr ""
-#~ "WARNING: Alternativet \"%s\" kan inte inkluderas via IncludeFeature!\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: Skrivaren svarar inte\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: Skrivare skickade oväntat EOF\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Fjärrvärden svarade inte med kommandostatusbyte efter %d "
-#~ "sekunder!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Fjärrvärden svarade inte med kontrollstatusbyte efter %d "
-#~ "sekunder!\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr ""
-#~ "WARNING: Fjärrvärden svarade inte med datastatusbyte efter %d sekunder!\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr ""
-#~ "WARNING: SCSI-kommando nådde en maxtidsgräns (%d), försöker igen...\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: Det här dokumentet följer inte Adobes dokumentspecifikationer "
-#~ "och kanske inte skrivs ut på rätt sätt!\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: Kunde inte öppna \"%s:%s\": %s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: Kunde inte skicka begäran för PAP-status"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: Oväntat PAP-paket av typen %d\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: Okänt PAP-paket av typen %d\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: Okänt val \"%s\" för alternativet \"%s\"!\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: Okänt alternativ \"%s\"!\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: Formatet %s stöds inte!\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: siffra förväntad för statusalternativ \"%s\"\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr ""
-#~ "WARNING: kan Ã¥terställas: Nätverksvärden â€%s†är upptagen, försöker igen "
-#~ "om %d sekunder...\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr "Varning, inga skrivardrivrutiner för Windows 2000 är installerade!"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4-kuvert"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr ""
-#~ "konvertera: Använd alternativet -f till att ange den fil som ska "
-#~ "konverteras.\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb: Ingen PPD-fil för skrivaren \"%s\" - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl: Kunde inte ansluta till server: %s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl: Okänt alternativ \"%s\"!\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl: Okänt alternativ \"-%c\"!\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd: Förväntat konfigurationsfilnamn efter alternativet \"-c\"!\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd: Kunde inte hämta aktuell katalog!\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd: Okänt argument \"%s\" - stoppar!\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd: Okänt alternativ \"%c\" - stoppar!\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr "cupsd: Stöd för launchd(8) inte inbyggt, kör i normalt läge.\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter: Ogiltigt dokumentnummer %d!\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter: Ogiltigt utskrifts-ID %d!\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter: Bara ett filnamn kan anges!\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter: Kunde inte skapa temporär fil: %s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter: Kunde inte hämta utskriftsfil - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr ""
-#~ "cupstestppd: Alternativet -q är inte kompatibelt med alternativet -v.\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr ""
-#~ "cupstestppd: Alternativet -v är inte kompatibelt med alternativet -q.\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "enhet för %s/%s: %s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "enhet för %s: %s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "help\t\tfå hjälp om kommandon\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "Attributet job-printer-uri saknas!"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Klassnamn kan endast innehålla skrivbara tecken!\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: Förväntat PPD efter alternativet â€-Pâ€!\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: Förväntad allow/deny:userlist efter alternativet â€-uâ€!\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: Förväntad klass efter alternativet â€-râ€!\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: Förväntat klassnamn efter alternativet â€-câ€!\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: Förväntad beskrivning efter alternativet â€-Dâ€!\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: Förväntad enhets-URI efter alternativet â€-vâ€!\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: Förväntade filtyp(er) efter alternativet â€-Iâ€!\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: Förväntat värdnamn efter alternativet â€-hâ€!\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: Förväntat gränssnitt efter alternativet â€-iâ€!\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: Förväntad plats efter alternativet â€-Lâ€!\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: Förväntad modell efter alternativet â€-mâ€!\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: Förväntad name=value efter alternativet â€-oâ€!\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: Förväntad skrivare efter alternativet â€-pâ€!\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: Förväntat skrivarnamn efter alternativet â€-dâ€!\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: Förväntad skrivare eller klass efter alternativet â€-xâ€!\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: Inga medlemsnamn sågs!\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: Skrivaren %s är redan medlem av klassen %s.\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: Skrivaren %s är inte en medlem av klassen %s.\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: Skrivarnamn kan endast innehålla skrivbara tecken!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kunde inte lägga till en skrivare till klassen:\n"
-#~ " Du måste ange ett skrivarnamn först!\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: Kunde inte ansluta till server: %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: Kunde inte skapa tempfil - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: Kunde inte skapa tempfil: %s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: Kunde inte öppna PPD-fil \"%s\" - %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: Kunde inte öppna filen \"%s\": %s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kunde inte ta bort en skrivare från klassen:\n"
-#~ " Du måste ange ett skrivarnamn först!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kunde inte ställa in PPD-filen:\n"
-#~ " Du måste ange ett skrivarnamn först!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kunde inte ställa in enhets-URI:\n"
-#~ " Du måste ange ett skrivarnamn först!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kunde inte ställa in gränssnittsskriptet eller PPD-fil:\n"
-#~ " Du måste ange ett skrivarnamn först!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kunde inte ställa in gränssnittsskriptet:\n"
-#~ " Du måste ange ett skrivarnamn först!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kunde inte ställa in skrivarbeskrivningen:\n"
-#~ " Du måste ange ett skrivarnamn först!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kunde inte ställa in skrivarens plats:\n"
-#~ " Du måste ange ett skrivarnamn först!\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: Kunde inte ställa in skrivaralternativen:\n"
-#~ " Du måste ange ett skrivarnamn först!\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: : Okänt tillåta/neka-alternativ \"%s\"!\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: Okänt argument â€%sâ€!\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: Okänt alternativ â€%câ€!\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: Varning - innehållstyplista ignorerades!\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo: Förväntad 1284 device ID string efter--device-id!\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo: Förväntat språk efter --language!\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo: Förväntad tillverkning och modell efter --make-and-model!\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo: Förväntad produktsträng efter --product!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo: Förväntad schemalista efter --exclude-schemes!\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo: Förväntad schemalista efter --include-schemes!\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo: Förväntat tidsgränsfel efter --timeout!\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo: Okänt argument â€%sâ€!\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo: Okänt alternativ â€%câ€!\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo: Okänt alternativ â€%sâ€!\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove: Kunde inte ansluta till server: %s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove: Okänt argument â€%sâ€!\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove: Okänt alternativ â€%câ€!\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions: Inga skrivare!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions: Kunde inte lägga till skrivare eller instans: %s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions: Kunde inte hämta PPD-fil för %s: %s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions: Kunde inte öppna PPD-fil för %s!\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions: Okänd skrivare eller klass!\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: Endast rot kan lägga till eller ta bort lösenord!\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: Lösenordsfil upptagen!\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: Lösenordsfil inte uppdaterad!\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: Tyvärr, lösenord stämmer inte!\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: Tyvärr, lösenord stämmer inte.\n"
-#~ "Lösenordet måste vara minst 6 tecken långt, får inte innehålla\n"
-#~ "ditt användarnamn, och måste innehålla åtminstone en bokstav och siffra.\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: Tyvärr, lösenorden stämmer inte överens!\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: Kunde inte kopiera lösenordssträng: %s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: Kunde inte öppna lösenordsfil: %s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: Kunde inte skriva till lösenordsfil: %s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr ""
-#~ "lppasswd: misslyckades med att säkerhetskopiera gamla lösenordsfilen: %s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: misslyckades med att byta namn på lösenordsfilen: %s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: användare \"%s\" och grupp \"%s\" finns inte.\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr ""
-#~ "lpstat: fel - miljövariabeln %s namnger icke-existerande mål \"%s\"!\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "medlemmar av klassen %s:\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "inga objekt\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "inget systemstandardmål\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events inte angivet!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "URI för notify-recipient-uri \"%s\" används redan!"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "URI för notify-recipient-uri \"%s\" använder okänt schema!"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d inte bra!"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc: Lägger till inkluderingskatalog \"%s\"...\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc: Lägger till/uppdaterar UI-text från %s...\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Felaktigt booleskt värde (%s) på rad %d av %s.\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Felaktigt upplösningsnamn \"%s\" på rad %d av %s!\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc: Felaktigt statuslösenord %s på rad %d av %s!\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc: Felaktig variabelersättning ($%c) på rad %d av %s.\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc: Val hittades på rad %d of %s utan alternativ!\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc: Dublicera #po för språk %s på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad filterdefinition på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat programnamn på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc: Förväntat booleskt värde på rad %d av %s.\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad teckenkodning efter typsnitt på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc: Förväntad valkod på rad %d av %s.\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc: Förväntad namn-/textkod på rad %d av %s.\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad färgordning för ColorModel på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad färgrymd för ColorModel på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad komprimering för ColorModel på rad %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad regelsträng för UIConstraints på rad %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Förväntat lösenord för drivrutinstyp efter DriverType på rad %d av %"
-#~ "s!\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad duplextyp efter Duplex på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad kodning efter typsnitt på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat filnamn efter #po %s på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat gruppnamn/-text på rad %d av %s.\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat inkluderingsfilnamn på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat heltal på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad språkversion #po på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat namn efter %s på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat namn efter filnamn på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat namn efter typsnitt på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat namn efter tillverkare på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat namn efter mediestorlek på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat namn efter modellnamn på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat namn efter PC-filnamn på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat namn/text efter %s på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat namn/text efter installerbart på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat namn/text efter upplösning på rad %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Förväntat namn-/textkombination för ColorModel på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat alternativnamn/-text på rad %d av %s.\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat alternativavsnitt på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad alternativtyp på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat ersättningsfält efter upplösning på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat reellt tal på rad %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Förväntad upplösning/medietyp efter ColorProfile på rad %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Förväntad upplösning/medietyp efter SimpleColorProfile på rad %d av "
-#~ "%s!\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad väljare efter %s på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad status efter typsnitt på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad sträng efter upphovsrätt på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad sträng efter version på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntade två alternativnamn på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntat värde efter %s på rad %d av %s!\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc: Förväntad version efter typsnitt på rad %d av %s!\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc: Ogiltigt #include/#po filnamn \"%s\"!\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ogiltig kostnad för filter på rad %d av %s!\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ogiltig tom MIME-typ för filter på rad %d av %s!\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr "ppdc: Ogiltigt tomt programnamn för filter på rad %d av %s!\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ogiltigt alternativavsnitt \"%s\" på rad %d av %s!\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Ogiltig alternativtyp \"%s\" på rad %d av %s!\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc: Läser in fil med drivrutinsinformation \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc: Läser in meddelanden för språk \"%s\"...\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc: Läser in meddelanden från \"%s\"...\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc: Saknad #endif i slutet av \"%s\"!\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc: Saknad #if på rad %d av %s!\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc: Ingen meddelandekatalog angiven för språkversionen %s!\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr ""
-#~ "ppdc: Alternativ %s definieras om med en annan typ på rad %d av %s!\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc: Alternativregel måste *name på rad %d av %s!\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc: För mÃ¥nga nästlade #ifâ€s pÃ¥ rad %d av %s!\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc: Kunde inte skapa PPD-fil \"%s\" - %s.\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc: Kunde inte skapa utdatakatalog %s: %s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc: Kunde inte skapa utdatarör: %s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc: Kunde inte köra cupstestppd: %s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc: Kunde inte hitta #po fil %s på rad %d av %s!\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Kunde inte hitta inkluderingsfil \"%s\" på rad %d av %s!\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc: Kunde inte hitta lokalisering för \"%s\" - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc: Kunde inte läsa in lokaliseringsfil för \"%s\" - %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc: Odefinierad variabel (%s) på rad %d av %s.\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc: Okänd drivrutinstyp %s på rad %d av %s!\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Okänd duplextyp \"%s\" på rad %d av %s!\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc: Okänd mediestorlek \"%s\" på rad %d of %s!\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc: Okänd symbol \"%s\" sågs på rad %d av %s!\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc: Okända avslutande tecken i reellt tal \"%s\" på rad %d av %s!\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc: Oavslutad sträng börjar med %c på rad %d av %s!\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc: Skriver %s...\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc: Skriver PPD-filer till katalogen \"%s\"...\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge: Felaktig LanguageVersion \"%s\" i %s!\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge: Ignorerar PPD-fil %s...\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge: Kan inte säkerhetskopiera %s till %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "skrivare %s avaktiverad sedan %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "skrivare %s är overksam. aktiverad sedan %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "skrivare %s skriver ut %s-%d. avaktiverad sedan %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "skrivare %s/%s avaktiverad sedan %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "skrivare %s/%s är overksam. aktiverad sedan %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "skrivare %s/%s skriver ut %s-%d. aktiverad sedan %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "ID för begäran är %s-%d (%d fil(er))\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "schemaläggare körs inte\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "schemaläggare körs\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "status\t\tvisa status för demon och kö\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "systemstandardmål: %s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "systemstandardmål: %s/%s\n"
diff --git a/locale/cups_zh.po b/locale/cups_zh.po
deleted file mode 100644
index 4ba6b5ac..00000000
--- a/locale/cups_zh.po
+++ /dev/null
@@ -1,8592 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f 亳米"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f 至 %.0f x %.0f 亳米"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f 英寸"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f 至 %.2f x %.2f 英寸"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "%s ä¸èƒ½æ›´æ”¹ã€‚"
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 英寸/秒"
-
-msgid "1.25x0.25\""
-msgstr "1.25x0.25 英寸"
-
-msgid "1.25x2.25\""
-msgstr "1.25x2.25 英寸"
-
-msgid "1.5 inch/sec."
-msgstr "1.5 英寸/秒"
-
-msgid "1.50x0.25\""
-msgstr "1.50x0.25 英寸"
-
-msgid "1.50x0.50\""
-msgstr "1.50x0.50 英寸"
-
-msgid "1.50x1.00\""
-msgstr "1.50x1.00 英寸"
-
-msgid "1.50x2.00\""
-msgstr "1.50x2.00 英寸"
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 英寸/秒"
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 毫米/秒"
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 英寸/秒"
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 英寸/秒"
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 毫米/秒"
-
-msgid "120x60dpi"
-msgstr "120x60dpi"
-
-msgid "120x72dpi"
-msgstr "120x72dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 毫米/秒"
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 毫米/秒"
-
-msgid "150dpi"
-msgstr "150dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 英寸/秒"
-
-msgid "2-Sided Printing"
-msgstr "åŒé¢æ‰“å°"
-
-msgid "2.00x0.37\""
-msgstr "2.00x0.37 英寸"
-
-msgid "2.00x0.50\""
-msgstr "2.00x0.50 英寸"
-
-msgid "2.00x1.00\""
-msgstr "2.00x1.00 英寸"
-
-msgid "2.00x1.25\""
-msgstr "2.00x1.25 英寸"
-
-msgid "2.00x2.00\""
-msgstr "2.00x2.00 英寸"
-
-msgid "2.00x3.00\""
-msgstr "2.00x3.00 英寸"
-
-msgid "2.00x4.00\""
-msgstr "2.00x4.00 英寸"
-
-msgid "2.00x5.50\""
-msgstr "2.00x5.50 英寸"
-
-msgid "2.25x0.50\""
-msgstr "2.25x0.50 英寸"
-
-msgid "2.25x1.25\""
-msgstr "2.25x1.25 英寸"
-
-msgid "2.25x4.00\""
-msgstr "2.25x4.00 英寸"
-
-msgid "2.25x5.50\""
-msgstr "2.25x5.50 英寸"
-
-msgid "2.38x5.50\""
-msgstr "2.38x5.50 英寸"
-
-msgid "2.5 inches/sec."
-msgstr "2.5 英寸/秒"
-
-msgid "2.50x1.00\""
-msgstr "2.50x1.00 英寸"
-
-msgid "2.50x2.00\""
-msgstr "2.50x2.00 英寸"
-
-msgid "2.75x1.25\""
-msgstr "2.75x1.25 英寸"
-
-msgid "2.9 x 1\""
-msgstr "2.9 x 1 英寸"
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 毫米/秒"
-
-msgid "200 mm/sec."
-msgstr "200 毫米/秒"
-
-msgid "203dpi"
-msgstr "203dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24 针系列"
-
-msgid "240x72dpi"
-msgstr "240x72dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 毫米/秒"
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 英寸/秒"
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3.00x1.00 英寸"
-
-msgid "3.00x1.25\""
-msgstr "3.00x1.25 英寸"
-
-msgid "3.00x2.00\""
-msgstr "3.00x2.00 英寸"
-
-msgid "3.00x3.00\""
-msgstr "3.00x3.00 英寸"
-
-msgid "3.00x5.00\""
-msgstr "3.00x5.00 英寸"
-
-msgid "3.25x2.00\""
-msgstr "3.25x2.00 英寸"
-
-msgid "3.25x5.00\""
-msgstr "3.25x5.00 英寸"
-
-msgid "3.25x5.50\""
-msgstr "3.25x5.50 英寸"
-
-msgid "3.25x5.83\""
-msgstr "3.25x5.83 英寸"
-
-msgid "3.25x7.83\""
-msgstr "3.25x7.83 英寸"
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "3.5 英寸ç£ç›˜"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3.5 英寸ç£ç›˜ - 2 1/8 x 2 3/4 英寸"
-
-msgid "3.50x1.00\""
-msgstr "3.50x1.00 英寸"
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 毫米/秒"
-
-msgid "300 mm/sec."
-msgstr "300 毫米/秒"
-
-msgid "300dpi"
-msgstr "300dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360dpi"
-
-msgid "360x180dpi"
-msgstr "360x180dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 英寸/秒"
-
-msgid "4.00x1.00\""
-msgstr "4.00x1.00 英寸"
-
-msgid "4.00x13.00\""
-msgstr "4.00x13.00 英寸"
-
-msgid "4.00x2.00\""
-msgstr "4.00x2.00 英寸"
-
-msgid "4.00x2.50\""
-msgstr "4.00x2.50 英寸"
-
-msgid "4.00x3.00\""
-msgstr "4.00x3.00 英寸"
-
-msgid "4.00x4.00\""
-msgstr "4.00x4.00 英寸"
-
-msgid "4.00x5.00\""
-msgstr "4.00x5.00 英寸"
-
-msgid "4.00x6.00\""
-msgstr "4.00x6.00 英寸"
-
-msgid "4.00x6.50\""
-msgstr "4.00x6.50 英寸"
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 毫米/秒"
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 英寸/秒"
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 英寸/秒"
-
-msgid "6.00x1.00\""
-msgstr "6.00x1.00 英寸"
-
-msgid "6.00x2.00\""
-msgstr "6.00x2.00 英寸"
-
-msgid "6.00x3.00\""
-msgstr "6.00x3.00 英寸"
-
-msgid "6.00x4.00\""
-msgstr "6.00x4.00 英寸"
-
-msgid "6.00x5.00\""
-msgstr "6.00x5.00 英寸"
-
-msgid "6.00x6.00\""
-msgstr "6.00x6.00 英寸"
-
-msgid "6.00x6.50\""
-msgstr "6.00x6.50 英寸"
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 毫米/秒"
-
-msgid "600dpi"
-msgstr "600dpi"
-
-msgid "60dpi"
-msgstr "60dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 英寸/秒"
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 英寸/秒"
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8.00x1.00 英寸"
-
-msgid "8.00x2.00\""
-msgstr "8.00x2.00 英寸"
-
-msgid "8.00x3.00\""
-msgstr "8.00x3.00 英寸"
-
-msgid "8.00x4.00\""
-msgstr "8.00x4.00 英寸"
-
-msgid "8.00x5.00\""
-msgstr "8.00x5.00 英寸"
-
-msgid "8.00x6.00\""
-msgstr "8.00x6.00 英寸"
-
-msgid "8.00x6.50\""
-msgstr "8.00x6.50 英寸"
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 毫米/秒"
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 英寸/秒"
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "9 针系列"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "接å—作业"
-
-msgid "Accepted"
-msgstr "已接å—"
-
-msgid "Add Class"
-msgstr "添加类"
-
-msgid "Add Printer"
-msgstr "æ·»åŠ æ‰“å°æœº"
-
-msgid "Add RSS Subscription"
-msgstr "添加 RSS 订阅"
-
-msgid "Address"
-msgstr "地å€"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "åœ°å€ - 1 1/8 x 3 1/2 英寸"
-
-msgid "Administration"
-msgstr "管ç†"
-
-msgid "Always"
-msgstr "始终"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "涂敷器"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "错误的 NULL dests 指针"
-
-msgid "Bad OpenGroup"
-msgstr "错误的 OpenGroup"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "错误的 OpenUI/JCLOpenUI"
-
-msgid "Bad OrderDependency"
-msgstr "错误的 OrderDependency"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "错误的请求"
-
-msgid "Bad SNMP version number"
-msgstr "错误的 SNMP 版本å·"
-
-msgid "Bad UIConstraints"
-msgstr "错误的 UIConstraints"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "错误的份数值 %d。"
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "é”™è¯¯çš„è‡ªå®šå‚æ•°"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "错误的 number-up 值 %d。"
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "错误的 page-ranges 值 %d-%d。"
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "标题"
-
-msgid "Billing Information: "
-msgstr "å¸å•ä¿¡æ¯ï¼š"
-
-msgid "Bond Paper"
-msgstr "åŠé€æ˜Žçº¸"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "CPCL æ ‡ç­¾æ‰“å°æœº"
-
-msgid "Cancel RSS Subscription"
-msgstr "å–æ¶ˆ RSS 订阅"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "更改设置"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "ç±»"
-
-msgid "Clean Print Heads"
-msgstr "æ¸…æ´æ‰“å°å¤´"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "彩色"
-
-msgid "Color Mode"
-msgstr "彩色模å¼"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "团体å称使用ä¸å®šé•¿åº¦"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "ç»§ç»­"
-
-msgid "Continuous"
-msgstr "连续"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "创建"
-
-msgid "Created On: "
-msgstr "创建于:"
-
-msgid "Custom"
-msgstr "自定"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "切纸"
-
-msgid "Cutter"
-msgstr "切纸器"
-
-msgid "Dark"
-msgstr "æš—"
-
-msgid "Darkness"
-msgstr "æš—"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "删除类"
-
-msgid "Delete Printer"
-msgstr "åˆ é™¤æ‰“å°æœº"
-
-msgid "Description: "
-msgstr "æè¿°ï¼š"
-
-msgid "DeskJet Series"
-msgstr "DeskJet 系列"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "目的ä½ç½®â€œ%sâ€æ²¡æœ‰æŽ¥å—作业。"
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "热æ•介质"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "åœç”¨"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "驱动程åºå称:"
-
-msgid "Driver Version: "
-msgstr "驱动程åºç‰ˆæœ¬ï¼š"
-
-msgid "Duplexer"
-msgstr "åŒé¢æ‰“å°å™¨"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1 æ ‡ç­¾æ‰“å°æœº"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2 æ ‡ç­¾æ‰“å°æœº"
-
-msgid "Edit Configuration File"
-msgstr "编辑é…置文件"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "ç»“æŸæ ‡é¢˜"
-
-msgid "English"
-msgstr "Chinese"
-
-msgid "Enter old password:"
-msgstr "输入旧密ç ï¼š"
-
-msgid "Enter password again:"
-msgstr "冿¬¡è¾“入密ç ï¼š"
-
-msgid "Enter password:"
-msgstr "输入密ç ï¼š"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"请输入您的用户åç§°å’Œå¯†ç æˆ–者 root 用户的用户åç§°å’Œå¯†ç æ¥è®¿é—®æ­¤é¡µé¢ã€‚如果您正"
-"在使用 Kerberos 鉴定,请确定您拥有的 Kerberos ç¥¨æ®æ˜¯æœ‰æ•ˆçš„。"
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "ä¿¡å°é€çº¸"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "错误策略"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "æ¯ 10 个标签"
-
-msgid "Every 2 Labels"
-msgstr "æ¯ 2 个标签"
-
-msgid "Every 3 Labels"
-msgstr "æ¯ 3 个标签"
-
-msgid "Every 4 Labels"
-msgstr "æ¯ 4 个标签"
-
-msgid "Every 5 Labels"
-msgstr "æ¯ 5 个标签"
-
-msgid "Every 6 Labels"
-msgstr "æ¯ 6 个标签"
-
-msgid "Every 7 Labels"
-msgstr "æ¯ 7 个标签"
-
-msgid "Every 8 Labels"
-msgstr "æ¯ 8 个标签"
-
-msgid "Every 9 Labels"
-msgstr "æ¯ 9 个标签"
-
-msgid "Every Label"
-msgstr "æ¯ä¸ªæ ‡ç­¾"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "预期失败"
-
-msgid "Export Printers to Samba"
-msgstr "å°†æ‰“å°æœºå¯¼å‡ºä¸º Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "文件夹"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "文件夹 - 9/16 x 3 7/16 英寸"
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "对开本"
-
-msgid "Forbidden"
-msgstr "ç¦æ­¢"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "通用"
-
-msgid "Generic"
-msgstr "通用"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU 使用ä¸å®šé•¿åº¦"
-
-msgid "Glossy Paper"
-msgstr "å…‰é¢çº¸"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "ç°åº¦"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "åŠå¤¹"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "åŠå¤¹ - 9/16 x 2 英寸"
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "éžæ³•控制字符"
-
-msgid "Illegal main keyword string"
-msgstr "éžæ³•主关键è¯å­—符串"
-
-msgid "Illegal option keyword string"
-msgstr "éžæ³•选项关键è¯å­—符串"
-
-msgid "Illegal translation string"
-msgstr "éžæ³•转æ¢å­—符串"
-
-msgid "Illegal whitespace character"
-msgstr "éžæ³•空白字符"
-
-msgid "Installable Options"
-msgstr "å¯å®‰è£…的选项"
-
-msgid "Installed"
-msgstr "已安装"
-
-msgid "IntelliBar Label Printer"
-msgstr "IntelliBar æ ‡ç­¾æ‰“å°æœº"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "内部错误"
-
-msgid "Internet Postage 2-Part"
-msgstr "Internet 邮寄 2 部分"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Internet 邮寄 2 部分 - 2 1/4 x 7 1/2 英寸"
-
-msgid "Internet Postage 3-Part"
-msgstr "Internet 邮寄 3 部分"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Internet 邮寄 3 部分 - 2 1/4 x 7 英寸"
-
-msgid "Internet Printing Protocol"
-msgstr "Internet 打å°åè®®"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "作业 #%d å·²ç»ä¸­æ­¢ - ä¸èƒ½å–消。"
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "作业 #%d å·²ç»å–消 - ä¸èƒ½å–消。"
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "作业 #%d å·²ç»å®Œæˆ - ä¸èƒ½å–消。"
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "作业已完æˆ"
-
-msgid "Job Created"
-msgstr "作业已创建"
-
-msgid "Job ID: "
-msgstr "作业 ID:"
-
-msgid "Job Options Changed"
-msgstr "作业选项已更改"
-
-msgid "Job Stopped"
-msgstr "ä½œä¸šå·²åœæ­¢"
-
-msgid "Job UUID: "
-msgstr "作业 UUID:"
-
-msgid "Job is completed and cannot be changed."
-msgstr "作业已完æˆï¼Œä¸èƒ½æ›´æ”¹ã€‚"
-
-msgid "Job operation failed:"
-msgstr "作业æ“作失败:"
-
-msgid "Job state cannot be changed."
-msgstr "作业状æ€ä¸èƒ½æ›´æ”¹ã€‚"
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "作业"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR ä¸»æœºæˆ–æ‰“å°æœº"
-
-msgid "Label Printer"
-msgstr "æ ‡ç­¾æ‰“å°æœº"
-
-msgid "Label Top"
-msgstr "标签顶部"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "长地å€"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "é•¿åœ°å€ - 1 4/10 x 3 1/2 英寸"
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet 系列 PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "指示ç¯"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "行多于所å…许的最大字符数(255 个字符)"
-
-msgid "List Available Printers"
-msgstr "列出å¯ç”¨çš„æ‰“å°æœº"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "ä½ç½®ï¼š"
-
-msgid "Long-Edge (Portrait)"
-msgstr "长边(纵å‘)"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "制造和型å·ï¼š"
-
-msgid "Manual Feed"
-msgstr "手动é€çº¸"
-
-msgid "Media Dimensions: "
-msgstr "介质尺寸:"
-
-msgid "Media Limits: "
-msgstr "介质é™åˆ¶ï¼š"
-
-msgid "Media Name: "
-msgstr "介质å称:"
-
-msgid "Media Size"
-msgstr "介质大å°"
-
-msgid "Media Source"
-msgstr "ä»‹è´¨æ¥æº"
-
-msgid "Media Tracking"
-msgstr "介质跟踪"
-
-msgid "Media Type"
-msgstr "介质类型"
-
-msgid "Medium"
-msgstr "中等"
-
-msgid "Memory allocation error"
-msgstr "内存分é…错误"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "缺少 PPD-Adobe-4.x 标头"
-
-msgid "Missing asterisk in column 1"
-msgstr "æ  1 缺少星å·"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "缺少值字符串"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "修改类"
-
-msgid "Modify Printer"
-msgstr "ä¿®æ”¹æ‰“å°æœº"
-
-msgid "Move All Jobs"
-msgstr "移动所有作业"
-
-msgid "Move Job"
-msgstr "移动作业"
-
-msgid "Moved Permanently"
-msgstr "永久移动"
-
-msgid "NULL PPD file pointer"
-msgstr "空 PPD 文件指针"
-
-msgid "Name OID uses indefinite length"
-msgstr "åç§° OID 使用ä¸å®šé•¿åº¦"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "æ°¸ä¸"
-
-msgid "New Stylus Color Series"
-msgstr "新 Stylus Color 系列"
-
-msgid "New Stylus Photo Series"
-msgstr "新 Stylus Photo 系列"
-
-msgid "No"
-msgstr "å¦"
-
-msgid "No Content"
-msgstr "无内容"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "æ—  VarBind SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "无活跃连接"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "无团体åç§°"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "未添加目的ä½ç½®ã€‚"
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "无错误索引"
-
-msgid "No error-status"
-msgstr "无错误状æ€"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "æ— åç§° OID"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "æ—  request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "找ä¸åˆ°è®¢é˜…。"
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "æ—  variable-bindings SEQUENCE"
-
-msgid "No version number"
-msgstr "无版本å·"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "éžè¿žç»­ï¼ˆæ ‡è®°æ„Ÿåº”)"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "éžè¿žç»­ï¼ˆWeb 感应)"
-
-msgid "Normal"
-msgstr "正常"
-
-msgid "Not Found"
-msgstr "找ä¸åˆ°"
-
-msgid "Not Implemented"
-msgstr "未完æˆ"
-
-msgid "Not Installed"
-msgstr "未安装"
-
-msgid "Not Modified"
-msgstr "未修改"
-
-msgid "Not Supported"
-msgstr "䏿”¯æŒ"
-
-msgid "Not allowed to print."
-msgstr "ä¸å…许打å°ã€‚"
-
-msgid "Note"
-msgstr "注释"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "好"
-
-msgid "Off (1-Sided)"
-msgstr "关闭(å•é¢ï¼‰"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "网上帮助"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "打开 %s 失败:%s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup 没有 CloseGroup 优先"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI 没有 CloseUI/JCLCloseUI 优先"
-
-msgid "Operation Policy"
-msgstr "æ“作策略"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "选项已安装"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "Options: "
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "输出模å¼"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "PCL æ¿€å…‰æ‰“å°æœº"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "包ä¸åŒ…å« Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "包ä¸ä»¥ SEQUENCE 开始"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "%s(在 %s 上)的密ç ï¼Ÿ"
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "éœ€è¦ %s çš„å¯†ç æ‰èƒ½é€šè¿‡ SAMBA 访问 %s:"
-
-msgid "Pause Class"
-msgstr "æš‚åœç±»"
-
-msgid "Pause Printer"
-msgstr "æ‰“å°æœºæš‚åœæ‰“å°"
-
-msgid "Peel-Off"
-msgstr "剥离"
-
-msgid "Photo"
-msgstr "照片"
-
-msgid "Photo Labels"
-msgstr "照片标签"
-
-msgid "Plain Paper"
-msgstr "普通纸张"
-
-msgid "Policies"
-msgstr "ç­–ç•¥"
-
-msgid "Port Monitor"
-msgstr "端å£ç›‘视器"
-
-msgid "PostScript Printer"
-msgstr "PostScript æ‰“å°æœº"
-
-msgid "Postcard"
-msgstr "明信片"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "打å°å¯†åº¦"
-
-msgid "Print Job:"
-msgstr "打å°ä½œä¸šï¼š"
-
-msgid "Print Mode"
-msgstr "æ‰“å°æ¨¡å¼"
-
-msgid "Print Rate"
-msgstr "打å°é€Ÿçއ"
-
-msgid "Print Self-Test Page"
-msgstr "打å°è‡ªæµ‹è¯•页é¢"
-
-msgid "Print Speed"
-msgstr "打å°é€Ÿåº¦"
-
-msgid "Print Test Page"
-msgstr "æ‰“å°æµ‹è¯•页"
-
-msgid "Print and Cut"
-msgstr "打å°å’Œåˆ‡çº¸"
-
-msgid "Print and Tear"
-msgstr "打å°å’Œæ’•纸"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "打å°äººï¼š"
-
-msgid "Printed From: "
-msgstr "打å°è‡ªï¼š"
-
-msgid "Printed On: "
-msgstr "打å°äºŽï¼š"
-
-msgid "Printer Added"
-msgstr "æ‰“å°æœºå·²æ·»åŠ "
-
-msgid "Printer Default"
-msgstr "æ‰“å°æœºé»˜è®¤"
-
-msgid "Printer Deleted"
-msgstr "æ‰“å°æœºå·²åˆ é™¤"
-
-msgid "Printer Modified"
-msgstr "æ‰“å°æœºå·²ä¿®æ”¹"
-
-msgid "Printer Name: "
-msgstr "æ‰“å°æœºå称:"
-
-msgid "Printer Paused"
-msgstr "æ‰“å°æœºå·²æš‚åœ"
-
-msgid "Printer Settings"
-msgstr "æ‰“å°æœºè®¾ç½®"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "æ‰“å°æœºï¼š"
-
-msgid "Printers"
-msgstr "æ‰“å°æœº"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "消除作业"
-
-msgid "Quarto"
-msgstr "四开"
-
-msgid "Quota limit reached."
-msgstr "已达到é…é¢é™åˆ¶ã€‚"
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "æ‹’ç»ä½œä¸š"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "出错åŽé‡æ–°æ‰“å°"
-
-msgid "Request Entity Too Large"
-msgstr "请求实体太大"
-
-msgid "Resolution"
-msgstr "分辨率"
-
-msgid "Resume Class"
-msgstr "ç»§ç»­ç±»"
-
-msgid "Resume Printer"
-msgstr "æ‰“å°æœºç»§ç»­æ‰“å°"
-
-msgid "Return Address"
-msgstr "寄信人地å€"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "å¯„ä¿¡äººåœ°å€ - 3/4 x 2 英寸"
-
-msgid "Rewind"
-msgstr "倒回"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE 使用ä¸å®šé•¿åº¦"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "请å‚阅其他"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "ä¸²å£ #%d"
-
-msgid "Server Restarted"
-msgstr "æœåС噍已釿–°å¯åЍ"
-
-msgid "Server Security Auditing"
-msgstr "æœåŠ¡å™¨å®‰å…¨æ€§å®¡æ ¸"
-
-msgid "Server Started"
-msgstr "æœåС噍已å¯åЍ"
-
-msgid "Server Stopped"
-msgstr "æœåŠ¡å™¨å·²åœæ­¢"
-
-msgid "Service Unavailable"
-msgstr "æœåŠ¡ä¸å¯ç”¨"
-
-msgid "Set Allowed Users"
-msgstr "设定å…许的用户"
-
-msgid "Set As Server Default"
-msgstr "设定为æœåŠ¡å™¨é»˜è®¤"
-
-msgid "Set Class Options"
-msgstr "设定类选项"
-
-msgid "Set Printer Options"
-msgstr "è®¾å®šæ‰“å°æœºé€‰é¡¹"
-
-msgid "Set Publishing"
-msgstr "设定出版"
-
-msgid "Shipping Address"
-msgstr "é€è´§åœ°å€"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "é€è´§åœ°å€ - 2 5/16 x 4 英寸"
-
-msgid "Short-Edge (Landscape)"
-msgstr "短边(横å‘)"
-
-msgid "Special Paper"
-msgstr "专用纸张"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "标准"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "å¯åŠ¨æ ‡é¢˜"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "报表"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color 系列"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo 系列"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "交æ¢åè®®"
-
-msgid "Tabloid"
-msgstr "å°æŠ¥ç”¨çº¸"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "撕纸"
-
-msgid "Tear-Off"
-msgstr "撕纸"
-
-msgid "Tear-Off Adjust Position"
-msgstr "撕纸调整ä½ç½®"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "PPD 文件“%sâ€æœªèƒ½æ‰¾åˆ°ã€‚"
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "PPD 文件“%sâ€æœªèƒ½æ‰“开。%s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"ç±»åç§°å¯èƒ½æœ€å¤šåŒ…å« 127 ä¸ªå¯æ‰“å°çš„字符,且ä¸èƒ½åŒ…å«ç©ºæ ¼ã€æ–œçº¿ (/) æˆ–ç£…ç¬¦å· "
-"(#)。"
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr "notify-lease-duration 属性ä¸èƒ½é…åˆä½œä¸šè®¢é˜…使用。"
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"æ‰“å°æœºåç§°å¯èƒ½æœ€å¤šåŒ…å« 127 ä¸ªå¯æ‰“å°çš„字符,且ä¸èƒ½åŒ…å«ç©ºæ ¼ã€æ–œçº¿ (/) æˆ–ç£…ç¬¦å· "
-"(#)。"
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "printer-uri“%sâ€å«æœ‰æ— æ•ˆå­—符。"
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr "printer-uri 必须是“ipp://HOSTNAME/classes/CLASSNAMEâ€å½¢å¼ã€‚"
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr "printer-uri 必须是“ipp://HOSTNAME/classes/PRINTERNAMEâ€å½¢å¼ã€‚"
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr "订阅åç§°å¯èƒ½ä¸åŒ…å«ç©ºæ ¼ã€æ–œçº¿ (/)ã€é—®å· (?) æˆ–ç£…ç¬¦å· (#)。"
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "有太多订阅。"
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "热转å°ä»‹è´¨"
-
-msgid "Title: "
-msgstr "标题:"
-
-msgid "Too many active jobs."
-msgstr "太多活跃的作业。"
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "逿˜Žåº¦"
-
-msgid "Tray"
-msgstr "纸盒"
-
-msgid "Tray 1"
-msgstr "纸盒 1"
-
-msgid "Tray 2"
-msgstr "纸盒 2"
-
-msgid "Tray 3"
-msgstr "纸盒 3"
-
-msgid "Tray 4"
-msgstr "纸盒 4"
-
-msgid "URI Too Long"
-msgstr "URI 太长"
-
-msgid "US Ledger"
-msgstr "美国总å¸ç”¨çº¸"
-
-msgid "US Legal"
-msgstr "美国法定用纸"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "美国信纸"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "USB ä¸²å£ #%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "无法访问 cupsd.conf 文件:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "无法添加 RSS 订阅:"
-
-msgid "Unable to add class:"
-msgstr "无法添加类:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "æ— æ³•æ·»åŠ æ‰“å°æœºï¼š"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "æ— æ³•å–æ¶ˆ RSS 订阅:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "无法更改 printer-is-shared 属性:"
-
-msgid "Unable to change printer:"
-msgstr "æ— æ³•æ›´æ”¹æ‰“å°æœºï¼š"
-
-msgid "Unable to change server settings:"
-msgstr "无法更改æœåŠ¡å™¨è®¾ç½®ï¼š"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "无法连接到主机。"
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "无法创建临时文件:"
-
-msgid "Unable to delete class:"
-msgstr "无法删除类:"
-
-msgid "Unable to delete printer:"
-msgstr "æ— æ³•åˆ é™¤æ‰“å°æœºï¼š"
-
-msgid "Unable to do maintenance command:"
-msgstr "无法执行维护命令:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "无法获得类列表:"
-
-msgid "Unable to get class status:"
-msgstr "无法获得类状æ€ï¼š"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "æ— æ³•èŽ·å¾—æ‰“å°æœºé©±åŠ¨ç¨‹åºçš„列表:"
-
-msgid "Unable to get printer attributes:"
-msgstr "æ— æ³•èŽ·å¾—æ‰“å°æœºå±žæ€§ï¼š"
-
-msgid "Unable to get printer list:"
-msgstr "æ— æ³•èŽ·å¾—æ‰“å°æœºåˆ—表:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "æ— æ³•èŽ·å¾—æ‰“å°æœºçжæ€ï¼š"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "无法修改类:"
-
-msgid "Unable to modify printer:"
-msgstr "æ— æ³•ä¿®æ”¹æ‰“å°æœºï¼š"
-
-msgid "Unable to move job"
-msgstr "无法移动作业"
-
-msgid "Unable to move jobs"
-msgstr "无法移动作业"
-
-msgid "Unable to open PPD file"
-msgstr "无法打开 PPD 文件"
-
-msgid "Unable to open PPD file:"
-msgstr "无法打开 PPD 文件:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "无法打开 cupsd.conf 文件:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "æ— æ³•æ‰“å°æµ‹è¯•页:"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "无法设定选项:"
-
-msgid "Unable to set server default:"
-msgstr "无法设定æœåŠ¡å™¨é»˜è®¤å€¼ï¼š"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "无法上传 cupsd.conf 文件:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "未授æƒ"
-
-msgid "Units"
-msgstr "å•ä½"
-
-msgid "Unknown"
-msgstr "未知"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "未知 printer-error-policy“%sâ€ã€‚"
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "未知 printer-op-policy“%sâ€ã€‚"
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "䏿”¯æŒçš„值类型"
-
-msgid "Upgrade Required"
-msgstr "è¦æ±‚å‡çº§"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "Value 使用ä¸å®šé•¿åº¦"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind 使用ä¸å®šé•¿åº¦"
-
-msgid "Version uses indefinite length"
-msgstr "Version 使用ä¸å®šé•¿åº¦"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "是"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"您必须使用 URL <A HREF=\"https://%s:%d%s\">https://%s:%d%s</A> 访问此页é¢ã€‚"
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "ZPL æ ‡ç­¾æ‰“å°æœº"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "已中止"
-
-msgid "canceled"
-msgstr "已喿¶ˆ"
-
-msgid "completed"
-msgstr "已完æˆ"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "cups-deviced 执行失败。"
-
-msgid "cups-driverd failed to execute."
-msgstr "cups-driverd 执行失败。"
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index 使用ä¸å®šé•¿åº¦"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status 使用ä¸å®šé•¿åº¦"
-
-msgid "held"
-msgstr "ä¿ç•™"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "闲置"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc&gt; "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "挂起"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "正在处ç†"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id 使用ä¸å®šé•¿åº¦"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "获得 %s 的状æ€å¤±è´¥ï¼š%s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "å·²åœæ­¢"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "未知"
-
-msgid "untitled"
-msgstr "未命å"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings 使用ä¸å®šé•¿åº¦"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(全部)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(无)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d 个æ¡ç›®\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\tå‘生故障åŽï¼šç»§ç»­\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\t警报:"
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\téœ€è¦æ ‡é¢˜\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\t字符集集åˆï¼š\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\t连接:直接\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\t连接:远程\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\t默认页é¢å¤§å°ï¼š\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\t默认间è·ï¼š\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\t默认端å£è®¾ç½®ï¼š\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tæè¿°ï¼š%s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\t已装载的表格:\n"
-#~ "\t内容类型:任何\n"
-#~ "\tæ‰“å°æœºç±»åž‹ï¼šæœªçŸ¥\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tå…许的形å¼ï¼š\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\t接å£ï¼š%s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\t接å£ï¼š%s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\t接å£ï¼š%s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tä½ç½®ï¼š%s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\tå‘生故障时:无警报\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tå…许的用户:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\tæ‹’ç»çš„用户:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\t监控程åºå·²å­˜åœ¨\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tæ— æ¡ç›®\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tæ‰“å°æœºåœ¨è®¾å¤‡ &apos;%s&apos; 上,速度 -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\t打å°å·²åœç”¨\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\t打å°å·²å¯ç”¨\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\t已排队进行%s\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\t队列已åœç”¨\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\t队列已å¯ç”¨\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\t原因未知\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " 详细的一致性测试结果\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " REF: 页 15,节 3.1。\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " REF: 页 15,节 3.2。\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " REF: 页 19,节 3.3。\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " REF: 页 20,节 3.4。\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " REF: 页 27,节 3.5。\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " REF: 页 42,节 5.2。\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " REF: 页 16-17,节 3.2。\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " REF: 页 42-45,节 5.2。\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " REF: 页 45-46,节 5.2。\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " REF: 页 48-49,节 5.2。\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " REF: 页 52-54,节 5.2。\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f 字节\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " 通过 Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " 通过 DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " 通过 DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " 通过 FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " 通过 FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " 通过 LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " 通过 LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " 通过 Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " 通过 ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " 通过 NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " 通过 PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " 通过 PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " 通过 PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " 通过 PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " 通过 Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " 通过 ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " WARN “%s %sâ€ä¸Žâ€œ%s %sâ€æœ‰å†²çª\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " WARN %s 没有相应的选项ï¼\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " WARN %s 与 %s 共享一个公共å‰ç¼€\n"
-#~ " REF: 第 15 页,第 3.2 节。\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " WARN 默认选择有冲çªï¼\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " WARN Duplex é€‰é¡¹å…³é”®è¯ %s å¯èƒ½æ— æ³•åƒæœŸæœ›é‚£æ ·å·¥ä½œï¼Œä¸”应当命å为 "
-#~ "Duplexï¼\n"
-#~ " REF: 页 122,节 5.17。\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr " WARN 文件混有 CRã€LF å’Œ CR LF 行尾ï¼\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PPD 4.3 è§„èŒƒè¦æ±‚ LanguageEncoding。\n"
-#~ " REF: 页 56-57,节 5.3。\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " WARN 行 %d 仅包å«ç©ºç™½ï¼\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PPD 4.3 è§„èŒƒè¦æ±‚ Manufacturer。\n"
-#~ " REF: 第 58-59 页,第 5.3 节。\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " WARN 缺少 APDialogExtension 文件“%sâ€\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " WARN 缺少 APPrinterIconPath 文件“%sâ€\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " WARN éž Windows PPD 文件应当仅使用以 LF ç»“å°¾çš„è¡Œï¼Œè€Œä¸æ˜¯ä»¥ CR "
-#~ "LF 结尾的行ï¼\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " WARN 过时的 PPD 版本 %.1fï¼\n"
-#~ " REF: 页 42,节 5.2。\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PCFileName 长于 8.3,ä¸ç¬¦åˆ PPD 规范。\n"
-#~ " REF: 页 61-62,节 5.3。\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN åè®®å«æœ‰ PJL,但 JCL 属性未设定。\n"
-#~ " REF: 页 78-79,节 5.7。\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " WARN åè®®å«æœ‰ PJL å’Œ BCP;还期待 TBCP。\n"
-#~ " REF: 页 78-79,节 5.7。\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " WARN PPD 4.3 è§„èŒƒè¦æ±‚ ShortNickName。\n"
-#~ " REF: 页 64-65,节 5.3。\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s ä¸å­˜åœ¨ï¼\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s 错误的 %s 选择 %sï¼\n"
-#~ " REF: 第 122 页,第 5.17 节。\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr " %s 错误的 UTF-8“%sâ€è½¬æ¢å­—符串(用于选项“%sâ€ï¼‰ï¼\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr " %s 错误的 UTF-8“%sâ€è½¬æ¢å­—符串(用于选项“%sâ€ï¼‰ï¼Œé€‰æ‹©â€œ%sâ€ï¼\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s 错误的 cupsFilter 值“%sâ€ï¼\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s 错误的 cupsICCProfile %sï¼\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s 错误的 cupsPreFilter 值“%sâ€ï¼\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s 错误的 cupsUIConstraints %s:“%sâ€ï¼\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s 错误的语言“%sâ€ï¼\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s 空的 cupsUIConstraints %sï¼\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s 缺少“%sâ€è½¬æ¢å­—符串(用于选项“%sâ€ï¼‰ï¼\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr " %s 缺少“%sâ€è½¬æ¢å­—符串(用于选项“%sâ€ï¼‰ï¼Œé€‰æ‹©â€œ%sâ€ï¼\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s 缺少选择 *%s %s(在 UIConstraints“*%s %s *%s %sâ€ä¸­ï¼‰ï¼\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s 缺少选择 *%s %s(在 cupsUIConstraints“%sâ€ä¸­ï¼‰ï¼šâ€œ%sâ€ï¼\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s 缺少 cupsFilter 文件“%sâ€\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s 缺少 cupsICCProfile 文件“%sâ€ï¼\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s 缺少 cupsPreFilter 文件“%sâ€\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s 缺少 cupsUIResolver %sï¼\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s 缺少选项 %s(在 UIConstraints“*%s %s *%s %sâ€ä¸­ï¼‰ï¼\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s 缺少选项 %s(在 cupsUIConstraints“%sâ€ä¸­ï¼‰ï¼šâ€œ%sâ€ï¼\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s 文件中ä¸åŒ…括基本转æ¢â€œ%sâ€ï¼\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s 所请求的 %s 没有定义选择 Noneï¼\n"
-#~ " REF: 第 122 页,第 5.17 节。\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s cupsICCProfile %s 散列值与 %s 冲çªï¼\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s 导致了一个循环ï¼\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr " **失败** %s 选择åç§° %s å’Œ %s åªä¼šæ ¹æ®æƒ…况而ä¸åŒï¼\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **失败** %s 必须是 1284DeviceIDï¼\n"
-#~ " REF: 页 72,节 5.5。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 Default%s %s\n"
-#~ " REF: 第 40 页,第 4.5 节。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 DefaultImageableArea %sï¼\n"
-#~ " REF: 页 102,节 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 DefaultPaperDimension %sï¼\n"
-#~ " REF: 页 103,节 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **失败** 文件中错误的 JobPatchFile 属性\n"
-#~ " REF: 第 24 页,第 3.4 节。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 Manufacturer(应该是“HPâ€ï¼‰\n"
-#~ " REF: 第 211 页,表 D.1。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 Manufacturer(应该是“Okiâ€ï¼‰\n"
-#~ " REF: 第 211 页,表 D.1。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 ModelName -“%câ€ï¼Œå­—符串中ä¸å…许。\n"
-#~ " REF: 页 59-60,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 PSVersion - 䏿˜¯â€œ(string) intâ€ã€‚\n"
-#~ " REF: 页 62-64,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 Product - 䏿˜¯â€œ(string) intâ€ã€‚\n"
-#~ " REF: 页 62,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 ShortNickName - 多于 31 个字符。\n"
-#~ " REF: 页 64-65,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **失败** 错误的 %s 选择 %sï¼\n"
-#~ " REF: 第 84 页,第 5.9 节。\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 FileVersion“%sâ€\n"
-#~ " REF: 第 56 页,第 5.3 节。\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** 错误的 FormatVersion“%sâ€\n"
-#~ " REF: 第 56 页,第 5.3 节。\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr " **失败** 错误的 LanguageEncoding %s - 必须是 ISOLatin1ï¼\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **失败** 错误的 LanguageVersion %s - 必须是 Englishï¼\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr " **失败** ä¸èƒ½è§£é‡Šé»˜è®¤é€‰é¡¹ç¼–ç ï¼š%s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr " **失败** 选项 %s 选择 %s 的默认转æ¢å­—ç¬¦ä¸²å«æœ‰ 8 ä½å­—符ï¼\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr " **失败** 选项 %s 的默认转æ¢å­—ç¬¦ä¸²å«æœ‰ 8 ä½å­—符ï¼\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr " **失败** 组别åç§° %s å’Œ %s åªä¼šæ ¹æ®æƒ…况而ä¸åŒï¼\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **失败** 多次出现 %s 选择åç§° %sï¼\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr " **失败** 选项åç§° %s å’Œ %s åªä¼šæ ¹æ®æƒ…况而ä¸åŒï¼\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ Default%s\n"
-#~ " REF: 页 40,节 4.5。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ DefaultImageableArea\n"
-#~ " REF: 页 102,节 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ DefaultPaperDimension\n"
-#~ " REF: 页 103,节 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ FileVersion\n"
-#~ " REF: 页 56,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ FormatVersion\n"
-#~ " REF: 页 56,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ PageSize %s çš„ ImageableArea\n"
-#~ " REF: 第 41 页,第 5 节。\n"
-#~ " REF: 页 102,节 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ LanguageEncoding\n"
-#~ " REF: 页 56-57,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ LanguageVersion\n"
-#~ " REF: 页 57-58,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ Manufacturer\n"
-#~ " REF: 页 58-59,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ ModelName\n"
-#~ " REF: 页 59-60,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ NickName\n"
-#~ " REF: 页 60,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ PCFileName\n"
-#~ " REF: 页 61-62,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ PSVersion\n"
-#~ " REF: 页 62-64,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ PageRegion\n"
-#~ " REF: 页 100,节 5.14。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ PageSize\n"
-#~ " REF: 第 41 页,第 5 节。\n"
-#~ " REF: 页 99,节 5.14。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ PageSize\n"
-#~ " REF: 页 99-100,节 5.14。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ PageSize %s çš„ PaperDimension\n"
-#~ " REF: 第 41 页,第 5 节。\n"
-#~ " REF: 页 103,节 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ Product\n"
-#~ " REF: 页 62,节 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **失败** è¦æ±‚ ShortNickName\n"
-#~ " REF: 页 64-65,节 5.3。\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " å‘现 %d 个错误\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " 错误的 %%%%BoundingBox:在行 %dï¼\n"
-#~ " REF: 页 39,%%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " 错误的 %%%%Page:在行 %dï¼\n"
-#~ " REF: 页 53,%%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " 错误的 %%%%Pages:在行 %dï¼\n"
-#~ " REF: 页 43,%%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " 行 %d 多于 255 个字符 (%d)ï¼\n"
-#~ " REF: 页 25,行长度\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " 首行缺少 %!PS-Adobe-3.0ï¼\n"
-#~ " REF: 页 17,3.1 ç¬¦åˆæ–‡ç¨¿\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " 缺少 %%EndComments 批注ï¼\n"
-#~ " REF: 页 41,%%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " 缺少或错误的 %%%%BoundingBox:批注ï¼\n"
-#~ " REF: 页 39,%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " 缺少或错误的 %%Page:批注ï¼\n"
-#~ " REF: 页 53,%%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " 缺少或错误的 %%Pages:批注ï¼\n"
-#~ " REF: 页 43,%%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " 未å‘现错误\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " å‘现 %d 行超过 255 个字符ï¼\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " 太多 %%BeginDocument 批注ï¼\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " 太多 %%EndDocument 批注ï¼\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " WARNING: æ–‡ä»¶å«æœ‰äºŒè¿›åˆ¶æ•°æ®ï¼\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " WARNING: 文件中没有 %%EndComments 批注ï¼\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " WARNING: 文件中的 DSC 版本 %.1f 过时ï¼\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " 失败\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " 失败\n"
-#~ " **失败** 无法打开 PPD 文件 - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " 失败\n"
-#~ " **失败** 无法打开 PPD 文件 - %s 在第 %d 行。\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " 通过\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "10 å·ä¿¡å°"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "11 å·ä¿¡å°"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "12 å·ä¿¡å°"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "14 å·ä¿¡å°"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "9 å·ä¿¡å°"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f 字节\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f 字节\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s 正在接å—请求,时间从 %s\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s 未被 lpc 的 CUPS 版本实施。\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s 未准备就绪\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s 准备就绪\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s 已准备就绪,正在打å°\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s 没有在接å—请求,时间从 %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "%s ä¸è¢«æ”¯æŒï¼"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s 正在接å—请求,时间从 %s\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s 没有在接å—请求,时间从 %s -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s:%-33.33s [作业 %d 本地主机]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s:%s 失败:%s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s:ä¸çŸ¥é“è¦åšä»€ä¹ˆï¼\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%s:错误 - %s 个环境å˜é‡åç§°ä¸å­˜åœ¨ç›®çš„ä½ç½®â€œ%sâ€ï¼\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s:错误 - 错误的作业 IDï¼\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr "%s:错误 - ä¸èƒ½åŒæ—¶æ‰“å°æ–‡ä»¶å’Œæ›´æ”¹ä½œä¸šï¼\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr "%s:错误 - 如果文件或作业 ID å·²æä¾›ï¼Œåˆ™ä¸èƒ½ä»Ž stdin 打å°ï¼\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s:错误 - &apos;-S&apos; é€‰é¡¹åŽæœŸæœ›å­—符集ï¼\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s:错误 - &apos;-T&apos; é€‰é¡¹åŽæœŸæœ›å†…容类型ï¼\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s:错误 - &apos;-n&apos; é€‰é¡¹åŽæœŸæœ›ä»½æ•°ï¼\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s:错误 - &apos;-#&apos; é€‰é¡¹åŽæœŸæœ›ä»½æ•°ï¼\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s:错误 - &apos;-P&apos; é€‰é¡¹åŽæœŸæœ›ç›®çš„ä½ç½®ï¼\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s:错误 - &apos;-b&apos; é€‰é¡¹åŽæœŸæœ›ç›®çš„ä½ç½®ï¼\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s:错误 - &apos;-d&apos; é€‰é¡¹åŽæœŸæœ›ç›®çš„ä½ç½®ï¼\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s:错误 - &apos;-f&apos; é€‰é¡¹åŽæœŸæœ›å½¢å¼ï¼\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s:错误 - &apos;-H&apos; é€‰é¡¹åŽæœŸæœ›ä¿ç•™åç§°ï¼\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s:错误 - &apos;-H&apos; é€‰é¡¹åŽæœŸæœ›ä¸»æœºåç§°ï¼\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s:错误 - &apos;-H&apos; é€‰é¡¹åŽæœŸæœ›ä¸»æœºåç§°ï¼\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s:错误 - &apos;-y&apos; é€‰é¡¹åŽæœŸæœ›æ¨¡å¼åˆ—表ï¼\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s:错误 - &apos;-%c&apos; é€‰é¡¹åŽæœŸæœ›åç§°ï¼\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s:错误 - &apos;-o&apos; é€‰é¡¹åŽæœŸæœ›é€‰é¡¹å­—符串ï¼\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s:错误 - &apos;-P&apos; é€‰é¡¹åŽæœŸæœ›é¡µé¢åˆ—表ï¼\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s:错误 - &apos;-%c&apos; é€‰é¡¹åŽæœŸæœ›ä¼˜å…ˆçº§ï¼\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s:错误 - &apos;-r&apos; é€‰é¡¹åŽæœŸæœ›åŽŸå› æ–‡æœ¬ï¼\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s:错误 - &apos;-t&apos; é€‰é¡¹åŽæœŸæœ›æ ‡é¢˜ï¼\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s:错误 - &apos;-U&apos; é€‰é¡¹åŽæœŸæœ›ç”¨æˆ·åç§°ï¼\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s:错误 - &apos;-U&apos; é€‰é¡¹åŽæœŸæœ›ç”¨æˆ·åç§°ï¼\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s:错误 - &apos;-%c&apos; é€‰é¡¹åŽæœŸæœ›å€¼ï¼\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr "%s:错误 -“-Wâ€é€‰é¡¹åŽéœ€è¦â€œcompletedâ€ã€â€œnot-completedâ€æˆ–“allâ€\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s:错误 - 没有默认目的ä½ç½®ã€‚\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s:错误 - 优先级必须在 1 到 100 之间。\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s:错误 - è°ƒåº¦ç¨‹åºæ— å“应ï¼\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s:错误 - 太多文件 -“%sâ€\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s:错误 - 无法访问“%sâ€- %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s:错误 - 无法从 stdin 排队 - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s:错误 - 未知目的ä½ç½®â€œ%sâ€ï¼\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s:错误 - 未知目的ä½ç½®â€œ%s/%sâ€ï¼\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s:错误 - 未知选项 &apos;%c&apos;ï¼\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s:错误 - 未知选项“%sâ€ï¼\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s:&apos;-i&apos; é€‰é¡¹åŽæœŸæœ›ä½œä¸š IDï¼\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s:滤镜“%sâ€ä¸å¯ç”¨ï¼š%s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s:列表“%sâ€ä¸­çš„目的ä½ç½®å称无效ï¼\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%s:无效的滤镜字符串“%sâ€\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr ""
-#~ "%s:&apos;-H restart&apos; 之å‰éœ€è¦ä½œä¸š ID (&apos;-i jobid&apos;)ï¼\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s:无滤镜å¯ä»Ž %s/%s è½¬æ¢æˆ %s/%sï¼\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s:æ“作失败:%s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s:对ä¸èµ·ï¼Œæœªç¼–译加密支æŒï¼\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s:无法连接到æœåС噍\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s:无法è”ç³»æœåС噍ï¼\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s:无法确定“%sâ€çš„ MIME 类型ï¼\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s:无法打开 %s - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s:无法打开 %s - %s(在第 %d 行)。\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s:无法打开 %s:%s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s:无法打开 PPD 文件:%s 在第 %d 行\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s:无法从“%sâ€æˆ–“%sâ€è¯»å– MIME æ•°æ®åº“ï¼\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s:未知目的ä½ç½®â€œ%sâ€ï¼\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s:未知目的 MIME 类型 %s/%sï¼\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s:未知选项 &apos;%c&apos;ï¼\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%sï¼šæœªçŸ¥çš„æº MIME 类型 %s/%sï¼\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr "%s:警告 - “%câ€æ ¼å¼ä¿®é¥°ç¬¦ä¸æ”¯æŒ - 输出å¯èƒ½ä¸æ­£ç¡®ï¼\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s:警告 - 字符集选项被忽略ï¼\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s:警告 - 内容类型选项被忽略ï¼\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s:警告 - å½¢å¼é€‰é¡¹è¢«å¿½ç•¥ï¼\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s:警告 - 模å¼é€‰é¡¹è¢«å¿½ç•¥ï¼\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%s:错误 - %s 个环境å˜é‡åç§°ä¸å­˜åœ¨ç›®çš„ä½ç½®â€œ%sâ€ï¼\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s:错误 - &apos;-o&apos; é€‰é¡¹åŽæœŸæœ› option=valueï¼\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s:错误 - 没有默认目的ä½ç½®ã€‚\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11 英寸"
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13 英寸"
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14 英寸"
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11 英寸"
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11 英寸"
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 DPI ç°åº¦"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9 英寸"
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10 英寸"
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11 英寸"
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12 英寸"
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?未知的无效帮助命令\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "å¯¼å‡ºæ‰“å°æœºé©±åŠ¨ç¨‹åºéœ€è¦ Samba 密ç ï¼"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr "å¯¼å‡ºæ‰“å°æœºé©±åŠ¨ç¨‹åºéœ€è¦ Samba 用户åç§°ï¼"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "å称为“%sâ€çš„类已ç»å­˜åœ¨ï¼"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "å称为“%sâ€çš„æ‰“å°æœºå·²ç»å­˜åœ¨ï¼"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3(大å·ï¼‰"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4(大å·ï¼‰"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4(å°å·ï¼‰"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5(大å·ï¼‰"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "å°è¯•å°† %s æ‰“å°æœºçжæ€è®¾å®šä¸ºé”™è¯¯å€¼ %dï¼"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "å±žæ€§ç»„é¡ºåºæ··ä¹± (%x &lt; %x)ï¼"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "错误的设备 URI“%sâ€ï¼\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "错误的 device-uri“%sâ€ï¼"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "错误的 device-uri 方案“%sâ€ï¼"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "错误的 document-format“%sâ€ï¼"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "错误的文件å称缓冲区ï¼"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "错误的字体属性:%s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "错误的 job-priority 值ï¼"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "错误的 job-sheets 值“%sâ€ï¼"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "错误的 job-sheets 值类型ï¼"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "错误的 job-state 值ï¼"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "错误的 job-uri 属性“%sâ€ï¼"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "错误的 notify-pull-method“%sâ€ï¼"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "错误的 notify-recipient-uri URI“%sâ€ï¼"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "行 %d 中错误的 option + choiceï¼"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "错误的 port-monitor“%sâ€ï¼"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "错误的 printer-state 值 %dï¼"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "é”™è¯¯çš„è¯·æ±‚ç‰ˆæœ¬å· %d.%dï¼"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "错误的订阅 IDï¼"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0 ä¿¡å°"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1 ä¿¡å°"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2 ä¿¡å°"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3 ä¿¡å°"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4 ä¿¡å°"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5 ä¿¡å°"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6 ä¿¡å°"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65 ä¿¡å°"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7 ä¿¡å°"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "字符集“%sâ€ä¸è¢«æ”¯æŒï¼"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3 ä¿¡å°"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4 ä¿¡å°"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "命令å¯èƒ½æ˜¯ç¼©å†™ã€‚命令是:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "未能扫æç±»åž‹â€œ%sâ€ï¼"
-
-#~ msgid "Cover open."
-#~ msgstr "机盖打开。"
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL ä¿¡å°"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "显影剂差ä¸å¤šå¿«è¦ç©ºäº†ã€‚"
-
-#~ msgid "Developer empty!"
-#~ msgstr "显影剂已空ï¼"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "设备:uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "找ä¸åˆ°æ–‡ç¨¿ %d(在作业 %d 中)。"
-
-#~ msgid "Door open."
-#~ msgstr "æ‰“å°æœºé—¨æ‰“开。"
-
-#~ msgid "Double Postcard"
-#~ msgstr "åŒé¢æ˜Žä¿¡ç‰‡"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: 无法为页é¢ä¿¡æ¯åˆ†é…内存:%s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: 无法为页é¢åºåˆ—分é…内存:%s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: 错误的 %%BoundingBox:å‘现批注ï¼\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: 错误的 %%IncludeFeature:批注ï¼\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: 错误的 %%Page:文件中的批注ï¼\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: 错误的 %%PageBoundingBox:文件中的批注ï¼\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: 错误的 SCSI 设备文件“%sâ€ï¼\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: 错误的字符集文件 %s\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: 错误的字符集类型 %s\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: 错误的列值 %dï¼\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: 错误的 cpi 值 %fï¼\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: 错误的字体æè¿°è¡Œï¼š%s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: 错误的 lpi 值 %fï¼\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: 错误的页é¢è®¾ç½®ï¼\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: é”™è¯¯çš„æ–‡æœ¬æ–¹å‘ %s\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: 错误的文本宽度 %s\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: 目的ä½ç½®æ‰“å°æœºä¸å­˜åœ¨ï¼\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: é‡å¤çš„ %%BoundingBox:å‘现批注ï¼\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: é‡å¤çš„ %%Pagesï¼å‘现批注ï¼\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: ç©ºæ‰“å°æ–‡ä»¶ï¼\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: å‘é€ PAPSendData 请求时å‘生错误 %d:%s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: %2$s 的第 %1$d 行期望引å·å­—符串ï¼\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: 致命的 USB 错误ï¼\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr "ERROR: å‘现无效的 HP-GL/2 å‘½ä»¤ï¼Œæ— æ³•æ‰“å°æ–‡ä»¶ï¼\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: 缺少 %%EndPrologï¼\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: 缺少 %%EndSetupï¼\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr "ERROR: 命令行上缺少设备 URI,且无 DEVICE_URI 环境å˜é‡ï¼\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: 标题文件的第 %d 行缺少值ï¼\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr "ERROR: %2$s 的第 %1$d 行上的任何转æ¢å­—符串å‰é¢å‡éœ€è¦æœ‰ msgid 行ï¼\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: æ—  %%BoundingBox:标头中的批注ï¼\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: æ—  %%Pages:标头中的批注ï¼\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr "ERROR: 在 argv[0] 或 DEVICE_URI 环境å˜é‡ä¸­æ‰¾ä¸åˆ°è®¾å¤‡ URIï¼\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: 字符集文件 %s 中没有字体\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: 找ä¸åˆ°é¡µé¢ï¼\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: 缺纸ï¼\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: PRINTER 环境å˜é‡æœªå®šä¹‰ï¼\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: æ‰“å°æ–‡ä»¶ä¸è¢«æŽ¥å— (%s)ï¼\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: æ‰“å°æœºæ²¡æœ‰å“应\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: æ‰“å°æœºæ²¡æœ‰å“应ï¼\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: æ‰“å°æœºå‘é€äº†æ„外的 EOF\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: è¿œç¨‹ä¸»æœºä¸æŽ¥å—æŽ§åˆ¶æ–‡ä»¶ (%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: è¿œç¨‹ä¸»æœºä¸æŽ¥å—æ•°æ®æ–‡ä»¶ (%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr "ERROR: 将数æ®å‘é€åˆ°æ‰“å°æœºæ—¶å‘生了超时错误\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: 无法将文件 %d 添加到作业:%s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: æ— æ³•å–æ¶ˆä½œä¸š %d:%s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: æ— æ³•æ‹·è´ PDF 文件"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: 无法创建套接字"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr "ERROR: æ— æ³•åˆ›å»ºä¸´æ—¶çš„åŽ‹ç¼©æ‰“å°æ–‡ä»¶ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: 无法创建临时文件"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: 无法创建临时文件 - %s。\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: 无法创建临时文件:%s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: 无法执行 pictwpstops:%s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: 无法执行 gs 程åº"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: 无法执行 pdftops 程åº"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: 无法 fork pictwpstops:%s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: 无法获得 PAP 请求"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: 无法获得 PAP å“应"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr "ERROR: æ— æ³•èŽ·å¾—ç”¨äºŽæ‰“å°æœºâ€œ%sâ€çš„ PPD 文件 - %s。\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: 无法获得默认的 AppleTalk 区域"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: 无法获得作业 %d 属性 (%s)ï¼\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: æ— æ³•èŽ·å¾—æ‰“å°æœºçŠ¶æ€ (%s)ï¼\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: 找ä¸åˆ°æ‰“å°æœº &apos;%s&apos; çš„ä½ç½®ï¼\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: 无法查找 PAP å“应"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: 无法查找 AppleTalk æ‰“å°æœº"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: 无法确定 AppleTalk 地å€"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: 无法打开“%sâ€- %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: 无法打开 %s:%s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: 无法打开标题文件“%s†- %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: 无法打开设备文件“%sâ€ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: 无法打开文件“%sâ€- %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: 无法打开文件“%sâ€ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: æ— æ³•æ‰“å¼€å›¾åƒæ–‡ä»¶è¿›è¡Œæ‰“å°ï¼\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: æ— æ³•æ‰“å¼€æ‰“å°æ–‡ä»¶â€œ%sâ€ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: æ— æ³•æ‰“å¼€æ‰“å°æ–‡ä»¶ %s - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: æ— æ³•æ‰“å¼€æ‰“å°æ–‡ä»¶ %s:%s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr "ERROR: æ— æ³•æ‰“å¼€ä¸´æ—¶çš„åŽ‹ç¼©æ‰“å°æ–‡ä»¶ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: 无法打开临时文件"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: æ— æ³•æ‰“å° %d 个文本æ ï¼\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: æ— æ³•æ‰“å° %dx%d 页文本页é¢ï¼\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: æ— æ³•è¯»å–æ‰“å°æ•°æ®"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: æ— æ³•è¯»å–æ‰“å°æ•°æ®ï¼\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: 无法ä¿ç•™ç«¯å£"
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: 无法æœå¯»åˆ°æ–‡ä»¶ä¸­çš„åç§» %ld - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: 无法æœå¯»åˆ°æ–‡ä»¶ä¸­çš„åç§» %lld - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: 无法å‘é€ LPD 命令"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: 无法å‘é€ PAP å馈请求"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: 无法å‘é€åˆå§‹ PAP å‘逿•°æ®è¯·æ±‚"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: 无法å‘逿‰“å°æ•°æ® (%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: 无法å‘逿‰“å°æ•°æ®ï¼\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: æ— æ³•å°†æ‰“å°æ–‡ä»¶å‘é€åˆ°æ‰“å°æœº"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: 无法将尾空å‘é€åˆ°æ‰“å°æœº"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: 无法等待 pictwpstops:%s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: 无法将 %d 字节写入“%sâ€ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: 无法将 %d å­—èŠ‚å†™å…¥æ‰“å°æœºï¼\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: 无法写入控制文件"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: æ— æ³•å†™å…¥æ‰“å°æ•°æ®"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: æ— æ³•å†™å…¥æ‰“å°æ•°æ®ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: 无法将光栅数æ®å†™å…¥é©±åŠ¨ç¨‹åºï¼\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: 无法写入到临时文件"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: 无法写入未压缩的文稿数æ®ï¼š%s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: %2$s 的第 %1$d 行有æ„外的文本ï¼\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: 未知的加密选项值“%sâ€ï¼\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: 未知的文件顺åºâ€œ%sâ€\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: 未知的格å¼å­—符“%câ€\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: “%sâ€çš„ä¿¡æ¯ç›®å½•æ ¼å¼æœªçŸ¥ï¼\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: 未知选项“%sâ€ï¼Œå…¶å€¼ä¸ºâ€œ%sâ€ï¼\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: æœªçŸ¥æ‰“å°æ¨¡å¼â€œ%sâ€\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: 未知的版本选项值“%sâ€ï¼\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr "ERROR: ä¸è¢«æ”¯æŒçš„亮度值 %s,使用 brightness=100ï¼\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: ä¸è¢«æ”¯æŒçš„ç°åº¦ç³»æ•°å€¼ %s,使用 gamma=1000ï¼\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: ä¸è¢«æ”¯æŒçš„ number-up 值 %d,使用 number-up=1ï¼\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: ä¸è¢«æ”¯æŒçš„ number-up-layout 值 %s,使用 number-up-layout=lrtbï¼\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr "ERROR: ä¸è¢«æ”¯æŒçš„ page-border 值 %s,使用 page-border=noneï¼\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: 检测到 doc_printf 溢出(%d 字节),正在中止ï¼\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: pdftops æ»¤é•œåœ¨ä¿¡å· %d 处崩溃ï¼\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: pdftops 滤镜退出,状æ€ä¸º %dï¼\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops å› ä¿¡å· %d 退出ï¼\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops å› çŠ¶æ€ %d 退出ï¼\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr "ERROR: 坿¢å¤ï¼šæ— æ³•è¿žæŽ¥åˆ°æ‰“å°æœºï¼›å°†åœ¨ 30 ç§’é’ŸåŽé‡è¯•…\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() 失败"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: æ— æ³•èŽ·å¾—æ‰“å°æ–‡ä»¶çš„状æ€"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "空 PPD 文件ï¼"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "ERROR: &apos;-h&apos; 选项åŽéœ€è¦ä¸»æœºåç§°ï¼\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "失败\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "文件设备 URI 已被åœç”¨ï¼è¦å¯ç”¨ï¼Œè¯·å‚阅“%s/cupsd.confâ€ä¸­çš„ FileDevice 指令。"
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "加热鼓温度过高ï¼"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "加热鼓温度过低ï¼"
-
-#~ msgid "German FanFold"
-#~ msgstr "德国 FanFold"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "德国 FanFold 法定用纸"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "获得 printer-uri å±žæ€§è€Œä¸æ˜¯ job-idï¼"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: AppleTalk 已在“系统å好设置â€ä¸­åœç”¨\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: AppleTalk 已在“系统å好设置â€ä¸­åœç”¨ã€‚\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: æ­£åœ¨å–æ¶ˆæ‰“å°ä½œä¸šâ€¦\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: å·²è¿žæŽ¥åˆ°æ‰“å°æœºâ€¦\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: æ­£åœ¨è¿žæŽ¥åˆ°æ‰“å°æœºâ€¦\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: 控制文件已æˆåŠŸå‘é€\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: æ•°æ®æ–‡ä»¶å·²æˆåŠŸå‘é€\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: 正在格å¼åŒ–é¡µé¢ %d…\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: æ­£åœ¨è½½å…¥å›¾åƒæ–‡ä»¶â€¦\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: æ­£åœ¨æŸ¥æ‰¾æ‰“å°æœºâ€¦\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: 正在打开连接\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr "INFO: æ‰“å°æ–‡ä»¶å·²å‘é€ï¼Œæ­£åœ¨ç­‰ä¾æ‰“å°æœºç»“æŸæ‰“å°â€¦\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: æ‰“å°æœºæ­£å¿™ï¼›å°†åœ¨ 10 ç§’é’ŸåŽé‡è¯•…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: æ‰“å°æœºæ­£å¿™ï¼›å°†åœ¨ 30 ç§’é’ŸåŽé‡è¯•…\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: æ‰“å°æœºæ­£å¿™ï¼›å°†åœ¨ 5 ç§’é’ŸåŽé‡è¯•…\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr "INFO: æ‰“å°æœºä¸æ”¯æŒ IPP/%d.%d,正在å°è¯• IPP/1.0…\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: æ‰“å°æœºæ­£å¿™ï¼›å°†åœ¨ 5 ç§’é’ŸåŽé‡è¯•…\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: æ‰“å°æœºå½“å‰å·²è„±æœºã€‚\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: æ‰“å°æœºå½“å‰å·²è„±æœºã€‚\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: æ‰“å°æœºçŽ°åœ¨è”æœºã€‚\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: æ‰“å°æœºå·²è„±æœºã€‚\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: æ‰“å°æœºæœªè¿žæŽ¥ï¼›å°†åœ¨ 30 ç§’é’ŸåŽé‡è¯•…\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: 正在打å°ç¬¬ %d é¡µï¼Œå·²å®Œæˆ %d%%…\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: 正在打å°ç¬¬ %d 页…\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: 准备打å°ã€‚\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: 正在å‘é€æŽ§åˆ¶æ–‡ä»¶ï¼ˆ%lu 字节)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: 正在å‘é€æŽ§åˆ¶æ–‡ä»¶ï¼ˆ%u 字节)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: 正在å‘逿•°æ®\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: 正在å‘逿•°æ®æ–‡ä»¶ï¼ˆ%ld 字节)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: 正在å‘逿•°æ®æ–‡ä»¶ï¼ˆ%lld 字节)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: 正在å‘逿‰“å°æ•°æ®â€¦\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: å·²å‘逿‰“å°æ–‡ä»¶ï¼Œ%ld 字节…\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: å·²å‘逿‰“å°æ–‡ä»¶ï¼Œ%lld 字节…\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: 正在缓冲 LPR ä½œä¸šï¼Œå·²å®Œæˆ %.0f%%…\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr "INFO: 无法è”ç³»æ‰“å°æœºï¼Œæ­£åœ¨æŽ’é˜Ÿç­‰å¾…ç±»ä¸­çš„ä¸‹ä¸€ä¸ªæ‰“å°æœºâ€¦\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: 正在使用默认的 AppleTalk 区域“%sâ€\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: 正在等待作业完æˆâ€¦\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: æ­£åœ¨ç­‰å¾…æ‰“å°æœºå¯ç”¨â€¦\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4 ä¿¡å°"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5(大å·ï¼‰"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5 ä¿¡å°"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6 ä¿¡å°"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "墨水/碳粉差ä¸å¤šå¿«è¦ç©ºäº†ã€‚"
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "墨水/碳粉已空ï¼"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "墨水/碳粉废物箱差ä¸å¤šå¿«è¦æ»¡äº†ã€‚"
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "墨水/碳粉废物箱已满ï¼"
-
-#~ msgid "Interlock open."
-#~ msgstr "äº’é”æ‰“开。"
-
-#~ msgid "Invite Envelope"
-#~ msgstr "邀请信å°"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "æ„大利信å°"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "作业 #%d ä¸èƒ½é‡æ–°å¼€å§‹ - 无文件ï¼"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "作业 #%d ä¸å­˜åœ¨ï¼"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "作业 #%d 已结æŸï¼Œä¸èƒ½æ›´æ”¹ï¼"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "作业 #%d 没有完æˆï¼"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "作业 #%d 没有等待进行签定ï¼"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "作业 #%d 没有等待ï¼"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "作业 #%s ä¸å­˜åœ¨ï¼"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "作业 %d 找ä¸åˆ°ï¼"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "作业订阅ä¸èƒ½ç»­è®¢ï¼"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2 ä¿¡å°"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3 ä¿¡å°"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "语言“%sâ€ä¸è¢«æ”¯æŒï¼"
-
-#~ msgid "Media jam!"
-#~ msgstr "å¡çº¸ï¼"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "介质盒差ä¸å¤šå¿«è¦ç©ºäº†ã€‚"
-
-#~ msgid "Media tray empty!"
-#~ msgstr "介质盒已空ï¼"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "缺少介质盒ï¼"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "介质盒需è¦è£…纸。"
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "缺少 document-number 属性ï¼"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "行 %d 缺少åŒå¼•å·ï¼"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "缺少形å¼å˜é‡ï¼"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "缺少 notify-subscription-ids 属性ï¼"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "缺少 requesting-user-name 属性ï¼"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "ç¼ºå°‘è¦æ±‚的属性ï¼"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "行 %d 缺少值ï¼"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "åž‹å·ï¼šname = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "皇家用纸"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "皇家信å°"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: æ‰“å°æ–‡ä»¶å·²æŽ¥å— - 作业 ID %d。\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: æ‰“å°æ–‡ä»¶å·²æŽ¥å— - 作业 ID 未知。\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "æ—  PPD åç§°ï¼"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "未安装 Windows æ‰“å°æœºé©±åŠ¨ç¨‹åºï¼"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "%s 上没有活跃的作业ï¼"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "请求中没有属性ï¼"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "未æä¾›é‰´å®šä¿¡æ¯ï¼"
-
-#~ msgid "No default printer"
-#~ msgstr "æ— é»˜è®¤æ‰“å°æœº"
-
-#~ msgid "No file!?!"
-#~ msgstr "无文件!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "无修改时间ï¼"
-
-#~ msgid "No printer name!"
-#~ msgstr "æ— æ‰“å°æœºåç§°ï¼"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "找ä¸åˆ°ç±»çš„ printer-uriï¼"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "找ä¸åˆ° printer-uriï¼"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "请求中没有 printer-uriï¼"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "请求中没有订阅属性ï¼"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC 的使用寿命差ä¸å¤šå¿«è¦åˆ°äº†ã€‚"
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC 的使用寿命已到ï¼"
-
-#~ msgid "Out of toner!"
-#~ msgstr "碳粉ä¸è¶³ï¼"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "出纸箱差ä¸å¤šå¿«è¦æ»¡äº†ã€‚"
-
-#~ msgid "Output bin full!"
-#~ msgstr "出纸箱已满ï¼"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "æ‰“å°æœº %s 的输出已å‘é€åˆ° %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr "æ‰“å°æœº %s 的输出已å‘é€åˆ°è¿œç¨‹æ‰“å°æœº %s(在 %s 上)\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "æ‰“å°æœº %s 的输出已å‘é€åˆ° %s/%s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr "æ‰“å°æœº %s/%s 的输出已å‘é€åˆ°è¿œç¨‹æ‰“å°æœº %s(在 %s 上)\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "缺少输出盒ï¼"
-
-#~ msgid "PASS\n"
-#~ msgstr "通过\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1 ä¿¡å°"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10 ä¿¡å°"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2 ä¿¡å°"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3 ä¿¡å°"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K(大å·ï¼‰"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4 ä¿¡å°"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5 ä¿¡å°"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6 ä¿¡å°"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7 ä¿¡å°"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8 ä¿¡å°"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9 ä¿¡å°"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "个人信å°"
-
-#~ msgid "Printer offline."
-#~ msgstr "æ‰“å°æœºå·²è„±æœºã€‚"
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr "é¡ºåº æ‰€æœ‰è€… 作业 文件 总大å°\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "é¡ºåº æ‰€æœ‰è€… 优先级 作业 文件 总大å°\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "è¿è¡Œå‘½ä»¤ï¼š%s %s -N -A %s -c &apos;%s&apos;\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "SCSI æ‰“å°æœº"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "å°æŠ¥ç”¨çº¸ï¼ˆå¤§å·ï¼‰"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "notify-user-data 值太大(%d &gt; 63 个八ä½å­—节)ï¼"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "æ‰“å°æœºæˆ–类没有共享ï¼"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "æ‰“å°æœºæˆ–类找ä¸åˆ°ã€‚"
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "éœ€è¦ printer-uri 属性。"
-
-#~ msgid "Toner low."
-#~ msgstr "碳粉ä¸è¶³ã€‚"
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "太多 job-sheets 值 (%d > 2)ï¼"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "太多 printer-state-reasons 值 (%d > %d)ï¼"
-
-#~ msgid "US Executive"
-#~ msgstr "美国行政用纸"
-
-#~ msgid "US Fanfold"
-#~ msgstr "美国 Fanfold"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "美国法定用纸(大å·ï¼‰"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "美国信纸(大å·ï¼‰"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "美国信纸(å°å·ï¼‰"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "无法为目的ä½ç½®â€œ%sâ€æ·»åŠ ä½œä¸šï¼"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "无法为文件类型分é…内存ï¼"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr "æ— æ³•æ‹·è´ 64 ä½ CUPS æ‰“å°æœºé©±åŠ¨ç¨‹åºæ–‡ä»¶ (%d)ï¼"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr "æ— æ³•æ‹·è´ 64 ä½ Windows æ‰“å°æœºé©±åŠ¨ç¨‹åºæ–‡ä»¶ (%d)ï¼"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "æ— æ³•æ‹·è´ CUPS æ‰“å°æœºé©±åŠ¨ç¨‹åºæ–‡ä»¶ (%d)!"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "æ— æ³•æ‹·è´ PPD 文件 - %sï¼"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "æ— æ³•æ‹·è´ PPD 文件ï¼"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr "æ— æ³•æ‹·è´ Windows 2000 æ‰“å°æœºé©±åŠ¨ç¨‹åºæ–‡ä»¶ (%d)ï¼"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "æ— æ³•æ‹·è´ Windows 9x æ‰“å°æœºé©±åŠ¨ç¨‹åºæ–‡ä»¶ (%d)ï¼"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "æ— æ³•æ‹·è´æŽ¥å£è„šæœ¬ - %sï¼"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "无法创建 printer-uriï¼"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "无法编辑大于 1MB çš„ cupsd.conf 文件ï¼"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "找ä¸åˆ°ä½œä¸šçš„目的ä½ç½®ï¼"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "找ä¸åˆ°æ‰“å°æœº\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr "无法安装 Windows 2000 æ‰“å°æœºé©±åŠ¨ç¨‹åºæ–‡ä»¶ (%d)ï¼"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr "无法安装 Windows 9x æ‰“å°æœºé©±åŠ¨ç¨‹åºæ–‡ä»¶ (%d)ï¼"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "无法打开文稿 %d(在作业 %d 中)ï¼"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "无法è¿è¡Œâ€œ%sâ€ï¼š%s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "无法将命令å‘é€åˆ°æ‰“å°æœºé©±åŠ¨ç¨‹åºï¼"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "无法获得 Windows æ‰“å°æœºé©±åŠ¨ç¨‹åº (%d)ï¼"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "无法使用传统 USB 类驱动程åºï¼\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "æœªçŸ¥æ‰“å°æœºé”™è¯¯ (%s)ï¼"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "䏿”¯æŒçš„字符集“%sâ€ï¼"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "ä¸è¢«æ”¯æŒçš„压缩“%sâ€ï¼"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "ä¸è¢«æ”¯æŒçš„压缩属性 %sï¼"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "ä¸è¢«æ”¯æŒçš„æ ¼å¼â€œ%sâ€ï¼"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "ä¸è¢«æ”¯æŒçš„æ ¼å¼ &apos;%s&apos;ï¼"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "ä¸è¢«æ”¯æŒçš„æ ¼å¼ &apos;%s/%s&apos;ï¼"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "Usage: %s job user title copies options [filename]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "Usage: %s job-id user title copies options [file]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "Usage: %s job-id user title copies options file\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "Usage: lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "Usage: lppasswd [-g groupname]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "Usage: snmp [host-or-ip-address]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: ä»…æ·»åŠ æ‰¾åˆ°çš„å‰ %d å°æ‰“å°æœº"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: Boolean 期望 waiteof 选项“%sâ€\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: 读å–é¢é€šé“请求失败ï¼\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr "WARNING: ä¸èƒ½é€šè¿‡ IncludeFeature 包括选项“%sâ€ï¼\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: æ‰“å°æœºæ²¡æœ‰å“应\n"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: æ‰“å°æœºå‘é€äº†æ„外的 EOF\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr "WARNING: %d ç§’é’ŸåŽï¼Œè¿œç¨‹ä¸»æœºæ²¡æœ‰å“应命令状æ€å­—节ï¼\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr "WARNING: %d ç§’é’ŸåŽï¼Œè¿œç¨‹ä¸»æœºæ²¡æœ‰å“应控制状æ€å­—节ï¼\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr "WARNING: %d ç§’é’ŸåŽï¼Œè¿œç¨‹ä¸»æœºæ²¡æœ‰å“应数æ®çжæ€å­—节ï¼\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: SCSI 命令超时 (%d);正在é‡è¯•…\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr ""
-#~ "WARNING: 此文稿ä¸ç¬¦åˆ Adobe Document Structuring Conventions çš„è¦æ±‚,å¯èƒ½"
-#~ "无法正确打å°ï¼\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: 无法打开“%s:%sâ€ï¼š%s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: 无法å‘é€ PAP 状æ€è¯·æ±‚"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: æ„外的 PAP 包(类型 %d)\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: 未知的 PAP 包(类型 %d)\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: 未知选择“%sâ€ï¼ˆç”¨äºŽé€‰é¡¹â€œ%sâ€ï¼‰ï¼\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: 未知选项“%sâ€ï¼\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: ä¸è¢«æ”¯æŒçš„æ³¢ç‰¹çއ %sï¼\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: 状æ€é€‰é¡¹â€œ%sâ€æœŸæœ›æ•°å­—\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr "WARNING: 坿¢å¤ï¼šç½‘络主机“%sâ€æ­£å¿™ï¼›å°†åœ¨ %d ç§’é’ŸåŽé‡è¯•…\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr "警告,未安装 Windows 2000 æ‰“å°æœºé©±åŠ¨ç¨‹åºï¼"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4 ä¿¡å°"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr "转æ¢ï¼šä½¿ç”¨ -f é€‰é¡¹æ¥æŒ‡å®šè¦è½¬æ¢çš„æ–‡ä»¶ã€‚\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb:无 PPD 文件å¯ç”¨äºŽæ‰“å°æœºâ€œ%sâ€- %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl:无法连接到æœåŠ¡å™¨ï¼š%s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl:未知选项“%sâ€ï¼\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl:未知选项“-%câ€ï¼\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd:“-câ€é€‰é¡¹åŽæœŸæœ›é…置文件åç§°ï¼\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd:无法获得当å‰ç›®å½•ï¼\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsd:未知自å˜é‡â€œ%sâ€- 正在中止ï¼\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd:未知选项“%câ€- 正在中止ï¼\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr "cupsd:launchd(8) æ”¯æŒæœªç¼–译,正在以正常模å¼è¿è¡Œã€‚\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilterï¼šæ— æ•ˆçš„æ–‡ç¨¿ç¼–å· %dï¼\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter:无效的作业 ID %dï¼\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter:åªèƒ½æŒ‡å®šä¸€ä¸ªæ–‡ä»¶åç§°ï¼\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter:无法创建临时文件:%s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter:无法获得作业文件 - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd:-q 选项与 -v 选项ä¸å…¼å®¹ã€‚\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd:-v 选项与 -q 选项ä¸å…¼å®¹ã€‚\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "用于 %s/%s 设备:%s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "用于 %s 的设备:%s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "帮助\t\t获得命令帮助\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "job-printer-uri 属性丢失ï¼"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin: ç±»åç§°åªèƒ½å«æœ‰å¯æ‰“å°å­—符ï¼\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin: &apos;-P&apos; é€‰é¡¹åŽæœŸæœ› PPDï¼\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin: &apos;-u&apos; é€‰é¡¹åŽæœŸæœ› allow/deny:userlistï¼\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin: &apos;-r&apos; é€‰é¡¹åŽæœŸæœ›ç±»ã€‚\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin: &apos;-c&apos; é€‰é¡¹åŽæœŸæœ›ç±»åç§°ï¼\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin: &apos;-D&apos; é€‰é¡¹åŽæœŸæœ›æè¿°ï¼\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin: &apos;-v&apos; é€‰é¡¹åŽæœŸæœ›è®¾å¤‡ URIï¼\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin: &apos;-I&apos; é€‰é¡¹åŽæœŸæœ›æ–‡ä»¶ç±»åž‹ï¼\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin: &apos;-h&apos; é€‰é¡¹åŽæœŸæœ›ä¸»æœºåç§°ï¼\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin: &apos;-i&apos; é€‰é¡¹åŽæœŸæœ›æŽ¥å£ï¼\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin: &apos;-L&apos; é€‰é¡¹åŽæœŸæœ›ä½ç½®ï¼\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin: &apos;-m&apos; é€‰é¡¹åŽæœŸæœ›åž‹å·ï¼\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin: &apos;-o&apos; é€‰é¡¹åŽæœŸæœ› name=valueï¼\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin: &apos;-p&apos; é€‰é¡¹åŽæœŸæœ›æ‰“å°æœºï¼\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin: &apos;-d&apos; é€‰é¡¹åŽæœŸæœ›æ‰“å°æœºåç§°ï¼\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin: &apos;-x&apos; é€‰é¡¹åŽæœŸæœ›æ‰“å°æœºæˆ–ç±»ï¼\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadmin: 会å‘现æˆå‘˜åç§°ï¼\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin: æ‰“å°æœº %s å·²ç»æ˜¯ç±» %s çš„æˆå‘˜ã€‚\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin: æ‰“å°æœº %s 䏿˜¯ç±» %s çš„æˆå‘˜ã€‚\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin: æ‰“å°æœºåç§°åªèƒ½å«æœ‰å¯æ‰“å°å­—符ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: æ— æ³•å°†æ‰“å°æœºæ·»åŠ åˆ°ç±»ï¼š\n"
-#~ " æ‚¨å¿…é¡»å…ˆæŒ‡å®šä¸€ä¸ªæ‰“å°æœºåç§°ï¼\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin: 无法连接到æœåŠ¡å™¨ï¼š%s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin: 无法创建临时文件 - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin: 无法创建临时文件:%s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin: 无法打开 PPD 文件“%sâ€- %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin: 无法打开文件“%sâ€ï¼š%s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: æ— æ³•ä»Žç±»ä¸­åŽ»æŽ‰æ‰“å°æœºï¼š\n"
-#~ " æ‚¨å¿…é¡»å…ˆæŒ‡å®šä¸€ä¸ªæ‰“å°æœºåç§°ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: 无法设定 PPD 文件:\n"
-#~ " æ‚¨å¿…é¡»å…ˆæŒ‡å®šä¸€ä¸ªæ‰“å°æœºåç§°ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: 无法设定设备 URI:\n"
-#~ " æ‚¨å¿…é¡»å…ˆæŒ‡å®šä¸€ä¸ªæ‰“å°æœºåç§°ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: 无法设定接å£è„šæœ¬æˆ– PPD 文件:\n"
-#~ " æ‚¨å¿…é¡»å…ˆæŒ‡å®šä¸€ä¸ªæ‰“å°æœºåç§°ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: 无法设定接å£è„šæœ¬ï¼š\n"
-#~ " æ‚¨å¿…é¡»å…ˆæŒ‡å®šä¸€ä¸ªæ‰“å°æœºåç§°ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: æ— æ³•è®¾å®šæ‰“å°æœºæè¿°ï¼š\n"
-#~ " æ‚¨å¿…é¡»å…ˆæŒ‡å®šä¸€ä¸ªæ‰“å°æœºåç§°ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: æ— æ³•è®¾å®šæ‰“å°æœºä½ç½®ï¼š\n"
-#~ " æ‚¨å¿…é¡»å…ˆæŒ‡å®šä¸€ä¸ªæ‰“å°æœºåç§°ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin: æ— æ³•è®¾å®šæ‰“å°æœºé€‰é¡¹ï¼š\n"
-#~ " æ‚¨å¿…é¡»å…ˆæŒ‡å®šä¸€ä¸ªæ‰“å°æœºåç§°ï¼\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin: 未知的å…许/æ‹’ç»é€‰é¡¹â€œ%sâ€ï¼\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadmin: 未知自å˜é‡ &apos;%s&apos;ï¼\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin: 未知选项 &apos;%c&apos;ï¼\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin: 警告 - 内容类型列表被忽略ï¼\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo:--device-id åŽæœŸæœ›çš„ 1284 设备 ID 字符串ï¼\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo:--language åŽæœŸæœ›çš„语言ï¼\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo:--make-and-model åŽæœŸæœ›çš„制造和型å·ï¼\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo:--product åŽæœŸæœ›çš„产å“字符串ï¼\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo:--exclude-schemes åŽæœŸæœ›çš„æ–¹æ¡ˆåˆ—表ï¼\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo:--include-schemes åŽæœŸæœ›çš„æ–¹æ¡ˆåˆ—表ï¼\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo:--timeout åŽæœŸæœ›çš„è¶…æ—¶ï¼\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfo:未知自å˜é‡ &apos;%s&apos;ï¼\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo:未知选项 &apos;%c&apos;ï¼\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo:未知选项“%sâ€ï¼\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove:无法连接到æœåŠ¡å™¨ï¼š%s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmove:未知自å˜é‡ &apos;%s&apos;ï¼\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove:未知选项 &apos;%c&apos;ï¼\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptionsï¼šæ— æ‰“å°æœº!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptionsï¼šæ— æ³•æ·»åŠ æ‰“å°æœºæˆ–实例:%s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions:无法获得 %s 的 PPD 文件:%s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions:无法打开 %s çš„ PPD 文件ï¼\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptionsï¼šæœªçŸ¥æ‰“å°æœºæˆ–ç±»ï¼\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswd: 仅根用户æ‰å¯ä»¥æ·»åŠ æˆ–åˆ é™¤å¯†ç ï¼\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd: å¯†ç æ–‡ä»¶æ­£å¿™ï¼\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd: å¯†ç æ–‡ä»¶æœªæ›´æ–°ï¼\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd: 对ä¸èµ·ï¼Œå¯†ç ä¸åŒ¹é…ï¼\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd: 对ä¸èµ·ï¼Œå¯†ç è¢«æ‹’ç»ã€‚\n"
-#~ "您的密ç å¿…须至少有 6 个字符长,ä¸èƒ½åŒ…å«\n"
-#~ "您的用户åç§°ï¼Œå¹¶ä¸”å¿…é¡»è‡³å°‘åŒ…å« 1 个字æ¯å’Œ 1 个数字。\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd: 对ä¸èµ·ï¼Œå¯†ç ä¸åŒ¹é…ï¼\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd: 无法拷è´å¯†ç å­—符串:%s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd: æ— æ³•æ‰“å¼€å¯†ç æ–‡ä»¶ï¼š%s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd: æ— æ³•å†™å…¥å¯†ç æ–‡ä»¶ï¼š%s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr "lppasswd: å¤‡ä»½æ—§å¯†ç æ–‡ä»¶å¤±è´¥ï¼š%s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswd: ç»™å¯†ç æ–‡ä»¶é‡æ–°å‘½å失败:%s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd: 用户“%sâ€å’Œç»„“%sâ€ä¸å­˜åœ¨ã€‚\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr "lpstat: 错误 - %s 个环境å˜é‡åç§°ä¸å­˜åœ¨ç›®çš„ä½ç½®â€œ%sâ€ï¼\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "ç±» %s çš„æˆå‘˜ï¼š\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "æ— æ¡ç›®\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "无系统默认目的ä½ç½®\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "notify-events 未指定ï¼"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri URI“%sâ€å·²ç»åœ¨ä½¿ç”¨ï¼"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri URI“%sâ€ä½¿ç”¨æœªçŸ¥æ–¹æ¡ˆï¼"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d ä¸å¥½ï¼"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc:正在添加包括目录“%sâ€â€¦\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc:正在从 %s 添加/更新 UI 文本…\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc:错误的布尔值 (%1$s),在 %3$s 的第 %2$d 行。\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:错误的分辨率å称“%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行。\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdcï¼šé”™è¯¯çš„å…³é”®è¯ %1$s,在 %3$s 的第 %2$d 行。\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc:错误的å˜é‡æ›¿æ¢ ($%1$c),在 %3$s 的第 %2$d 行。\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc:在 %2$s 的第 %1$d 行找到选择,但没有选项ï¼\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc:地点 %1$s çš„ #po é‡å¤ï¼ˆåœ¨ %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望滤镜定义ï¼\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望程åºåç§°ï¼\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望布尔值。\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Font åŽé¢æœŸæœ›å­—符集ï¼\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望选择代ç ã€‚\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望选择åç§°/文本。\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望 ColorModel 的颜色顺åºï¼\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望 ColorModel 的颜色空间ï¼\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望 ColorModel 的压缩ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望 UIConstraints 的约æŸå­—符串ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc:%2$s 的第 %1$d 行上的 DriverType åŽé¢æœŸæœ›é©±åŠ¨ç¨‹åºç±»åž‹å…³é”®è¯ï¼\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Duplex åŽé¢æœŸæœ›åŒé¢ç±»åž‹ï¼\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Font åŽé¢æœŸæœ›ç¼–ç ï¼\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc:#po %1$s åŽé¢æœŸæœ›æ–‡ä»¶å称(在 %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望组别åç§°/文本。\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望包括文件åç§°ï¼\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望整数ï¼\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 #po åŽé¢æœŸæœ›åœ°ç‚¹ï¼\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc:%1$s åŽé¢æœŸæœ›å称(在 %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 FileName åŽé¢æœŸæœ›åç§°ï¼\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Font åŽé¢æœŸæœ›åç§°ï¼\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Manufacturer åŽé¢æœŸæœ›åç§°ï¼\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 MediaSize åŽé¢æœŸæœ›åç§°ï¼\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 ModelName åŽé¢æœŸæœ›åç§°ï¼\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 PCFileName åŽé¢æœŸæœ›åç§°ï¼\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc:%1$s åŽé¢æœŸæœ›åç§°/文本(在 %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Installable åŽé¢æœŸæœ›åç§°/文本ï¼\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Resolution åŽé¢æœŸæœ›åç§°/文本ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望 ColorModel çš„åç§°/文本组åˆï¼\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望选项åç§°/文本ï¼\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望选项区ï¼\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望选项类型ï¼\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Resolution åŽé¢æœŸæœ›è¦†ç›–字段ï¼\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望实数ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc:%2$s 的第 %1$d 行上的 ColorProfile åŽé¢æœŸæœ›åˆ†è¾¨çއ/介质类型ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc:%2$s 的第 %1$d 行上的 SimpleColorProfile åŽé¢æœŸæœ›åˆ†è¾¨çއ/介质类型ï¼\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc:%1$s åŽé¢æœŸæœ›é€‰æ‹©å™¨ï¼ˆåœ¨ %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Font åŽé¢æœŸæœ›çжæ€ï¼\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Copyright åŽé¢æœŸæœ›å­—符串ï¼\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Version åŽé¢æœŸæœ›å­—符串ï¼\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行期望两个选项åç§°ï¼\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc:%1$s åŽé¢æœŸæœ›å€¼ï¼ˆåœ¨ %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上的 Font åŽé¢æœŸæœ›ç‰ˆæœ¬ï¼\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc:无效的 #include/#po 文件å称“%sâ€ï¼\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œæœ‰æ— æ•ˆçš„æ»¤é•œæˆæœ¬ï¼\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行有无效的滤镜空 MIME 类型ï¼\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行有无效的滤镜空程åºåç§°ï¼\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:无效的选项区“%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:无效的选项类型“%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc:正在载入驱动程åºä¿¡æ¯æ–‡ä»¶â€œ%sâ€â€¦\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc:正在载入地点“%sâ€çš„ä¿¡æ¯â€¦\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc:正在从“%sâ€è½½å…¥ä¿¡æ¯â€¦\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc:“%sâ€çš„æœ«å°¾ä¸¢å¤± #endifï¼\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行丢失 #ifï¼\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc:没有为地点 %s æä¾›ä¿¡æ¯ç›®å½•ï¼\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr "ppdc:选项 %1$s è¢«é‡æ–°å®šä¹‰ä¸ºä¸åŒçš„类型(在 %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc:选项约æŸå¿…须在 %2$s 的第 %1$d 行上指定的 *name 中ï¼\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行嵌套的 #if 太多ï¼\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc:无法创建 PPD 文件“%s†- %s。\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc:无法创建输出目录 %s:%s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc:无法创建输出管é“:%s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc:无法执行 cupstestppd:%s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc:找ä¸åˆ° #po 文件 %1$s(在 %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:找ä¸åˆ°åŒ…括文件“%1$sâ€ï¼ˆåœ¨ %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc:找ä¸åˆ°â€œ%sâ€çš„æœ¬åœ°åŒ–文件 - %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc:无法载入本地化文件“%s†- %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc:未定义的å˜é‡ (%1$s),在 %3$s 的第 %2$d 行。\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc:未知的驱动程åºç±»åž‹ %1$s,在 %3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:未知的åŒé¢ç±»åž‹â€œ%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:未知的介质大å°â€œ%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdc:未知的令牌“%1$sâ€ï¼Œå‡ºçŽ°åœ¨ %3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr "ppdc:实数“%1$sâ€ä¸­æœ‰æœªçŸ¥çš„æœ«å°¾å­—符(在 %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc:未结æŸçš„字符串以 %1$c 开头(在 %3$s 的第 %2$d 行)ï¼\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc:正在写入 %s…\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc:正在将 PPD 文件写入目录“%sâ€â€¦\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge:错误的 LanguageVersion“%sâ€ï¼ˆåœ¨ %s 中)ï¼\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge:正在忽略 PPD 文件 %s…\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge:无法将 %s 备份到 %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "æ‰“å°æœº %s å·²åœç”¨ï¼Œæ—¶é—´ä»Ž %s -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "æ‰“å°æœº %s 闲置,å¯ç”¨æ—¶é—´ä»Ž %s\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "æ‰“å°æœº %s çŽ°åœ¨æ­£åœ¨æ‰“å° %s-%d,å¯ç”¨æ—¶é—´ä»Ž %s\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "æ‰“å°æœº %s/%s å·²åœç”¨ï¼Œæ—¶é—´ä»Ž %s -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "æ‰“å°æœº %s/%s 闲置,å¯ç”¨æ—¶é—´ä»Ž %s\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "æ‰“å°æœº %s/%s çŽ°åœ¨æ­£åœ¨æ‰“å° %s-%d,å¯ç”¨æ—¶é—´ä»Ž %s\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "请求 id 是 %s-%d(%d 个文件)\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "è°ƒåº¦ç¨‹åºæ²¡æœ‰è¿è¡Œ\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "è°ƒåº¦ç¨‹åºæ­£åœ¨è¿è¡Œ\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "状æ€\t\t显示监控程åºå’Œé˜Ÿåˆ—的状æ€\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "系统默认目的ä½ç½®ï¼š%s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "系统默认目的ä½ç½®ï¼š%s/%s\n"
diff --git a/locale/cups_zh_TW.po b/locale/cups_zh_TW.po
deleted file mode 100644
index 556ab6ac..00000000
--- a/locale/cups_zh_TW.po
+++ /dev/null
@@ -1,8590 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: CUPS 1.4\n"
-"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
-"POT-Creation-Date: 2012-03-07 13:38-0800\n"
-"PO-Revision-Date: 2009-02-16 12:00-0800\n"
-"Last-Translator: Apple Inc.\n"
-"Language-Team: Apple Inc.\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
-
-msgid "\t\t(all)"
-msgstr ""
-
-msgid "\t\t(none)"
-msgstr ""
-
-#, c-format
-msgid "\t%d entries"
-msgstr ""
-
-#, c-format
-msgid "\t%s"
-msgstr ""
-
-msgid "\tAfter fault: continue"
-msgstr ""
-
-#, c-format
-msgid "\tAlerts: %s"
-msgstr ""
-
-msgid "\tBanner required"
-msgstr ""
-
-msgid "\tCharset sets:"
-msgstr ""
-
-msgid "\tConnection: direct"
-msgstr ""
-
-msgid "\tConnection: remote"
-msgstr ""
-
-msgid "\tContent types: any"
-msgstr ""
-
-msgid "\tDefault page size:"
-msgstr ""
-
-msgid "\tDefault pitch:"
-msgstr ""
-
-msgid "\tDefault port settings:"
-msgstr ""
-
-#, c-format
-msgid "\tDescription: %s"
-msgstr ""
-
-msgid "\tForm mounted:"
-msgstr ""
-
-msgid "\tForms allowed:"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/interfaces/%s"
-msgstr ""
-
-#, c-format
-msgid "\tInterface: %s/ppd/%s.ppd"
-msgstr ""
-
-#, c-format
-msgid "\tLocation: %s"
-msgstr ""
-
-msgid "\tOn fault: no alert"
-msgstr ""
-
-msgid "\tPrinter types: unknown"
-msgstr ""
-
-#, c-format
-msgid "\tStatus: %s"
-msgstr ""
-
-msgid "\tUsers allowed:"
-msgstr ""
-
-msgid "\tUsers denied:"
-msgstr ""
-
-msgid "\tdaemon present"
-msgstr ""
-
-msgid "\tno entries"
-msgstr ""
-
-#, c-format
-msgid "\tprinter is on device '%s' speed -1"
-msgstr ""
-
-msgid "\tprinting is disabled"
-msgstr ""
-
-msgid "\tprinting is enabled"
-msgstr ""
-
-#, c-format
-msgid "\tqueued for %s"
-msgstr ""
-
-msgid "\tqueuing is disabled"
-msgstr ""
-
-msgid "\tqueuing is enabled"
-msgstr ""
-
-msgid "\treason unknown"
-msgstr ""
-
-msgid ""
-"\n"
-" DETAILED CONFORMANCE TEST RESULTS"
-msgstr ""
-
-msgid " Ignore specific warnings."
-msgstr ""
-
-msgid " Issue warnings instead of errors."
-msgstr ""
-
-msgid " REF: Page 15, section 3.1."
-msgstr ""
-
-msgid " REF: Page 15, section 3.2."
-msgstr ""
-
-msgid " REF: Page 19, section 3.3."
-msgstr ""
-
-msgid " REF: Page 20, section 3.4."
-msgstr ""
-
-msgid " REF: Page 27, section 3.5."
-msgstr ""
-
-msgid " REF: Page 42, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 16-17, section 3.2."
-msgstr ""
-
-msgid " REF: Pages 42-45, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 45-46, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 48-49, section 5.2."
-msgstr ""
-
-msgid " REF: Pages 52-54, section 5.2."
-msgstr ""
-
-#, c-format
-msgid " %-39.39s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid " PASS Default%s"
-msgstr ""
-
-msgid " PASS DefaultImageableArea"
-msgstr ""
-
-msgid " PASS DefaultPaperDimension"
-msgstr ""
-
-msgid " PASS FileVersion"
-msgstr ""
-
-msgid " PASS FormatVersion"
-msgstr ""
-
-msgid " PASS LanguageEncoding"
-msgstr ""
-
-msgid " PASS LanguageVersion"
-msgstr ""
-
-msgid " PASS Manufacturer"
-msgstr ""
-
-msgid " PASS ModelName"
-msgstr ""
-
-msgid " PASS NickName"
-msgstr ""
-
-msgid " PASS PCFileName"
-msgstr ""
-
-msgid " PASS PSVersion"
-msgstr ""
-
-msgid " PASS PageRegion"
-msgstr ""
-
-msgid " PASS PageSize"
-msgstr ""
-
-msgid " PASS Product"
-msgstr ""
-
-msgid " PASS ShortNickName"
-msgstr ""
-
-#, c-format
-msgid " WARN %s has no corresponding options."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN %s shares a common prefix with %s\n"
-" REF: Page 15, section 3.2."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Duplex option keyword %s may not work as expected and should "
-"be named Duplex.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-msgid " WARN File contains a mix of CR, LF, and CR LF line endings."
-msgstr ""
-
-msgid ""
-" WARN LanguageEncoding required by PPD 4.3 spec.\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " WARN Line %d only contains whitespace."
-msgstr ""
-
-msgid ""
-" WARN Manufacturer required by PPD 4.3 spec.\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Non-Windows PPD files should use lines ending with only LF, "
-"not CR LF."
-msgstr ""
-
-#, c-format
-msgid ""
-" WARN Obsolete PPD version %.1f.\n"
-" REF: Page 42, section 5.2."
-msgstr ""
-
-msgid ""
-" WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN PCFileName should contain a unique filename.\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains PJL but JCL attributes are not set.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-" REF: Pages 78-79, section 5.7."
-msgstr ""
-
-msgid ""
-" WARN ShortNickName required by PPD 4.3 spec.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-msgid " cupsaddsmb [options] -a"
-msgstr ""
-
-msgid " cupstestdsc [options] -"
-msgstr ""
-
-msgid " program | cupstestppd [options] -"
-msgstr ""
-
-#, c-format
-msgid ""
-" %s \"%s %s\" conflicts with \"%s %s\"\n"
-" (constraint=\"%s %s %s %s\")."
-msgstr ""
-
-#, c-format
-msgid " %s %s %s does not exist."
-msgstr ""
-
-#, c-format
-msgid " %s %s file \"%s\" has the wrong capitalization."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Bad %s choice %s.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad UTF-8 \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsFilter2 value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsICCProfile %s."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsPreFilter value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Bad language \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad permissions on %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Bad spelling of %s - should be %s."
-msgstr ""
-
-#, c-format
-msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID."
-msgstr ""
-
-#, c-format
-msgid " %s Default choices conflicting."
-msgstr ""
-
-#, c-format
-msgid " %s Empty cupsUIConstraints %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s, choice %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing \"%s\" translation string for option %s."
-msgstr ""
-
-#, c-format
-msgid " %s Missing %s file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageRegion option.\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s Missing REQUIRED PageSize option.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s Missing cupsUIResolver %s"
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\""
-msgstr ""
-
-#, c-format
-msgid " %s No base translation \"%s\" is included in file."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s REQUIRED %s does not define choice None.\n"
-" REF: Page 122, section 5.17"
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" defined for %s but not for %s."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"."
-msgstr ""
-
-#, c-format
-msgid " %s cupsICCProfile %s hash value collides with %s."
-msgstr ""
-
-#, c-format
-msgid " %s cupsUIResolver %s causes a loop."
-msgstr ""
-
-#, c-format
-msgid ""
-" %s cupsUIResolver %s does not list at least two different options."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** %s choice names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** %s must be 1284DeviceID\n"
-" REF: Page 72, section 5.5"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD Default%s %s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultImageableArea %s\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD DefaultPaperDimension %s\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD JobPatchFile attribute in file\n"
-" REF: Page 24, section 3.4."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"HP\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-" REF: Page 211, table D.1."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD PSVersion - not \"(string) int\".\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD Product - not \"(string)\".\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-" REF: Pages 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad %s choice %s\n"
-" REF: Page 84, section 5.9"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FileVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Bad FormatVersion \"%s\"\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Bad LanguageVersion %s - must be English."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Default option code cannot be interpreted: %s"
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s choice %s contains "
-"8-bit characters."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** Default translation string for option %s contains 8-bit "
-"characters."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Group names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Multiple occurrences of %s choice name %s."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Option names %s and %s differ only by case."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED Default%s\n"
-" REF: Page 40, section 4.5."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultImageableArea\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED DefaultPaperDimension\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FileVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED FormatVersion\n"
-" REF: Page 56, section 5.3."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 102, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageEncoding\n"
-" REF: Pages 56-57, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED LanguageVersion\n"
-" REF: Pages 57-58, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Manufacturer\n"
-" REF: Pages 58-59, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ModelName\n"
-" REF: Pages 59-60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED NickName\n"
-" REF: Page 60, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PCFileName\n"
-" REF: Pages 61-62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PSVersion\n"
-" REF: Pages 62-64, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageRegion\n"
-" REF: Page 100, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 99, section 5.14."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED PageSize\n"
-" REF: Pages 99-100, section 5.14."
-msgstr ""
-
-#, c-format
-msgid ""
-" **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-" REF: Page 41, section 5.\n"
-" REF: Page 103, section 5.15."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED Product\n"
-" REF: Page 62, section 5.3."
-msgstr ""
-
-msgid ""
-" **FAIL** REQUIRED ShortNickName\n"
-" REF: Page 64-65, section 5.3."
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s"
-msgstr ""
-
-#, c-format
-msgid " **FAIL** Unable to open PPD file - %s on line %d."
-msgstr ""
-
-#, c-format
-msgid " %d ERRORS FOUND"
-msgstr ""
-
-msgid " -h Show program usage"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%BoundingBox: on line %d.\n"
-" REF: Page 39, %%%%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Page: on line %d.\n"
-" REF: Page 53, %%%%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Bad %%%%Pages: on line %d.\n"
-" REF: Page 43, %%%%Pages:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Line %d is longer than 255 characters (%d).\n"
-" REF: Page 25, Line Length"
-msgstr ""
-
-msgid ""
-" Missing %!PS-Adobe-3.0 on first line.\n"
-" REF: Page 17, 3.1 Conforming Documents"
-msgstr ""
-
-#, c-format
-msgid " Missing %%EndComments comment. REF: Page 41, %%EndComments"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%BoundingBox: comment.\n"
-" REF: Page 39, %%BoundingBox:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Page: comments.\n"
-" REF: Page 53, %%Page:"
-msgstr ""
-
-#, c-format
-msgid ""
-" Missing or bad %%Pages: comment.\n"
-" REF: Page 43, %%Pages:"
-msgstr ""
-
-msgid " NO ERRORS FOUND"
-msgstr ""
-
-#, c-format
-msgid " Saw %d lines that exceeded 255 characters."
-msgstr ""
-
-#, c-format
-msgid " Too many %%BeginDocument comments."
-msgstr ""
-
-#, c-format
-msgid " Too many %%EndDocument comments."
-msgstr ""
-
-msgid " Warning: file contains binary data."
-msgstr ""
-
-#, c-format
-msgid " Warning: no %%EndComments comment in file."
-msgstr ""
-
-#, c-format
-msgid " Warning: obsolete DSC version %.1f in file."
-msgstr ""
-
-msgid " --[no-]debug-logging Turn debug logging on/off."
-msgstr ""
-
-msgid " --[no-]remote-admin Turn remote administration on/off."
-msgstr ""
-
-msgid " --[no-]remote-any Allow/prevent access from the Internet."
-msgstr ""
-
-msgid " --[no-]remote-printers Show/hide remote printers."
-msgstr ""
-
-msgid " --[no-]share-printers Turn printer sharing on/off."
-msgstr ""
-
-msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job."
-msgstr ""
-
-msgid " --cr End lines with CR (Mac OS 9)."
-msgstr ""
-
-msgid " --crlf End lines with CR + LF (Windows)."
-msgstr ""
-
-msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)."
-msgstr ""
-
-msgid " -4 Connect using IPv4."
-msgstr ""
-
-msgid " -6 Connect using IPv6."
-msgstr ""
-
-msgid " -C Send requests using chunking (default)."
-msgstr ""
-
-msgid " -D Remove the input file when finished."
-msgstr ""
-
-msgid " -D name=value Set named variable to value."
-msgstr ""
-
-msgid " -E Enable encryption."
-msgstr ""
-
-msgid " -E Encrypt the connection to the server."
-msgstr ""
-
-msgid " -E Test with TLS encryption."
-msgstr ""
-
-msgid ""
-" -F Run in the foreground but detach from console."
-msgstr ""
-
-msgid " -H samba-server Use the named SAMBA server."
-msgstr ""
-
-msgid " -I Ignore errors."
-msgstr ""
-
-msgid " -I include-dir Add include directory to search path."
-msgstr ""
-
-msgid " -I {filename,filters,none,profiles}"
-msgstr ""
-
-msgid " -J title Set title."
-msgstr ""
-
-msgid " -L Send requests using content-length."
-msgstr ""
-
-msgid " -P filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -R root-directory Set alternate root."
-msgstr ""
-
-msgid " -S Test with SSL encryption."
-msgstr ""
-
-msgid " -T Set the receive/send timeout in seconds."
-msgstr ""
-
-msgid " -U samba-user Authenticate using the named SAMBA user."
-msgstr ""
-
-msgid " -U username Set username for job."
-msgstr ""
-
-msgid " -U username Specify username."
-msgstr ""
-
-msgid " -V version Set default IPP version."
-msgstr ""
-
-msgid ""
-" -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
-"translations}"
-msgstr ""
-
-msgid " -X Produce XML plist instead of plain text."
-msgstr ""
-
-msgid " -a Export all printers."
-msgstr ""
-
-msgid " -a 'name=value ...' Set option(s)."
-msgstr ""
-
-msgid " -c catalog.po Load the specified message catalog."
-msgstr ""
-
-msgid " -c config-file Load alternate configuration file."
-msgstr ""
-
-msgid " -c copies Set number of copies."
-msgstr ""
-
-msgid " -c cupsd.conf Set cupsd.conf file to use."
-msgstr ""
-
-msgid " -d name=value Set named variable to value."
-msgstr ""
-
-msgid " -d output-dir Specify the output directory."
-msgstr ""
-
-msgid " -d printer Use the named printer."
-msgstr ""
-
-msgid " -e Use every filter from the PPD file."
-msgstr ""
-
-msgid " -f Run in the foreground."
-msgstr ""
-
-msgid " -f filename Set default request filename."
-msgstr ""
-
-msgid " -f filename Set file to be converted (otherwise stdin)."
-msgstr ""
-
-msgid " -h Show this usage message."
-msgstr ""
-
-msgid " -h cups-server Use the named CUPS server."
-msgstr ""
-
-msgid " -h server[:port] Specify server address."
-msgstr ""
-
-msgid " -i mime/type Set input MIME type (otherwise auto-typed)."
-msgstr ""
-
-msgid ""
-" -i seconds Repeat the last file with the given time interval."
-msgstr ""
-
-msgid ""
-" -j job-id[,N] Filter file N from the specified job (default is "
-"file 1)."
-msgstr ""
-
-msgid ""
-" -j mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -l Run cupsd from launchd(8)."
-msgstr ""
-
-msgid " -l lang[,lang,...] Specify the output language(s) (locale)."
-msgstr ""
-
-msgid " -m Use the ModelName value as the filename."
-msgstr ""
-
-msgid ""
-" -m mime/type Set output MIME type (otherwise application/pdf)."
-msgstr ""
-
-msgid " -n copies Set number of copies."
-msgstr ""
-
-msgid ""
-" -n count Repeat the last file the given number of times."
-msgstr ""
-
-msgid " -o filename Set file to be generated (otherwise stdout)."
-msgstr ""
-
-msgid ""
-" -o filename.drv Set driver information file (otherwise ppdi.drv)."
-msgstr ""
-
-msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)."
-msgstr ""
-
-msgid " -o name=value Set option(s)."
-msgstr ""
-
-msgid " -p filename.ppd Set PPD file."
-msgstr ""
-
-msgid " -q Be quiet - no output except errors."
-msgstr ""
-
-msgid " -q Run silently."
-msgstr ""
-
-msgid " -r Use 'relaxed' open mode."
-msgstr ""
-
-msgid " -t Produce a test report."
-msgstr ""
-
-msgid " -t Test PPDs instead of generating them."
-msgstr ""
-
-msgid " -t Test the configuration file."
-msgstr ""
-
-msgid " -t title Set title."
-msgstr ""
-
-msgid " -u Remove the PPD file when finished."
-msgstr ""
-
-msgid " -v Be slightly verbose."
-msgstr ""
-
-msgid " -v Be verbose (more v's for more verbosity)."
-msgstr ""
-
-msgid " -v Be verbose (show commands)."
-msgstr ""
-
-msgid " -v Show all attributes sent and received."
-msgstr ""
-
-msgid " -vv Be very verbose."
-msgstr ""
-
-msgid " -z Compress PPD files using GNU zip."
-msgstr ""
-
-msgid " FAIL"
-msgstr ""
-
-msgid " PASS"
-msgstr ""
-
-#, c-format
-msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
-msgstr ""
-
-#, c-format
-msgid "%.0f x %.0f millimeters"
-msgstr "%.0f x %.0f å…¬é‡"
-
-#, c-format
-msgid "%.0f x %.0f to %.0f x %.0f millimeters"
-msgstr "%.0f x %.0f to %.0f x %.0f å…¬é‡"
-
-#, c-format
-msgid "%.2f x %.2f inches"
-msgstr "%.2f x %.2f 英å‹"
-
-#, c-format
-msgid "%.2f x %.2f to %.2f x %.2f inches"
-msgstr "%.2f x %.2f to %.2f x %.2f 英å‹"
-
-#, c-format
-msgid "%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s cannot be changed."
-msgstr "無法更改 %s。"
-
-#, c-format
-msgid "%s is not implemented by the CUPS version of lpc."
-msgstr ""
-
-#, c-format
-msgid "%s is not ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready"
-msgstr ""
-
-#, c-format
-msgid "%s is ready and printing"
-msgstr ""
-
-#, c-format
-msgid "%s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s not supported."
-msgstr ""
-
-#, c-format
-msgid "%s/%s accepting requests since %s"
-msgstr ""
-
-#, c-format
-msgid "%s/%s not accepting requests since %s -"
-msgstr ""
-
-#, c-format
-msgid "%s: %-33.33s [job %d localhost]"
-msgstr ""
-
-#. TRANSLATORS: Message is "subject: error"
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: %s failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Don't know what to do."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - %s environment variable names non-existent destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - bad job ID."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print files and alter jobs simultaneously."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected character set after \"-S\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected content type after \"-T\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-#\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected copies after \"-n\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-b\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected destination after \"-d\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected form after \"-f\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hold name after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-H\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected hostname after \"-h\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected mode list after \"-y\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected name after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected option=value after \"-o\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected page list after \"-P\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected priority after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected reason text after \"-r\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected title after \"-t\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-U\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected username after \"-u\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - expected value after \"-%c\" option."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
-"option."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - no default destination available."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - priority must be between 1 and 100."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - scheduler not responding."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - too many files - \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to access \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unable to queue from stdin - %s."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown destination \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Error - unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Expected job ID after \"-i\" option."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid destination name in list \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Invalid filter string \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
-msgstr ""
-
-#, c-format
-msgid "%s: No filter to convert from %s/%s to %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Operation failed: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Sorry, no encryption support."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to connect to server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to contact server."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to determine MIME type of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to open PPD file: %s on line %d."
-msgstr ""
-
-#, c-format
-msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown destination MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "%s: Unknown source MIME type %s/%s."
-msgstr ""
-
-#, c-format
-msgid ""
-"%s: Warning - \"%c\" format modifier not supported - output may not be "
-"correct."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - character set option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - content type option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - form option ignored."
-msgstr ""
-
-#, c-format
-msgid "%s: Warning - mode option ignored."
-msgstr ""
-
-msgid "-1"
-msgstr "-1"
-
-msgid "-10"
-msgstr "-10"
-
-msgid "-100"
-msgstr "-100"
-
-msgid "-105"
-msgstr "-105"
-
-msgid "-11"
-msgstr "-11"
-
-msgid "-110"
-msgstr "-110"
-
-msgid "-115"
-msgstr "-115"
-
-msgid "-12"
-msgstr "-12"
-
-msgid "-120"
-msgstr "-120"
-
-msgid "-13"
-msgstr "-13"
-
-msgid "-14"
-msgstr "-14"
-
-msgid "-15"
-msgstr "-15"
-
-msgid "-2"
-msgstr "-2"
-
-msgid "-20"
-msgstr "-20"
-
-msgid "-25"
-msgstr "-25"
-
-msgid "-3"
-msgstr "-3"
-
-msgid "-30"
-msgstr "-30"
-
-msgid "-35"
-msgstr "-35"
-
-msgid "-4"
-msgstr "-4"
-
-msgid "-40"
-msgstr "-40"
-
-msgid "-45"
-msgstr "-45"
-
-msgid "-5"
-msgstr "-5"
-
-msgid "-50"
-msgstr "-50"
-
-msgid "-55"
-msgstr "-55"
-
-msgid "-6"
-msgstr "-6"
-
-msgid "-60"
-msgstr "-60"
-
-msgid "-65"
-msgstr "-65"
-
-msgid "-7"
-msgstr "-7"
-
-msgid "-70"
-msgstr "-70"
-
-msgid "-75"
-msgstr "-75"
-
-msgid "-8"
-msgstr "-8"
-
-msgid "-80"
-msgstr "-80"
-
-msgid "-85"
-msgstr "-85"
-
-msgid "-9"
-msgstr "-9"
-
-msgid "-90"
-msgstr "-90"
-
-msgid "-95"
-msgstr "-95"
-
-msgid "0"
-msgstr "0"
-
-msgid "1"
-msgstr "1"
-
-msgid "1 inch/sec."
-msgstr "1 英å‹âˆ•ç§’"
-
-msgid "1.25x0.25\""
-msgstr "1.25x0.25\""
-
-msgid "1.25x2.25\""
-msgstr "1.25x2.25\""
-
-msgid "1.5 inch/sec."
-msgstr "1.5 英å‹âˆ•ç§’"
-
-msgid "1.50x0.25\""
-msgstr "1.50x0.25\""
-
-msgid "1.50x0.50\""
-msgstr "1.50x0.50\""
-
-msgid "1.50x1.00\""
-msgstr "1.50x1.00\""
-
-msgid "1.50x2.00\""
-msgstr "1.50x2.00\""
-
-msgid "10"
-msgstr "10"
-
-msgid "10 inches/sec."
-msgstr "10 英å‹âˆ•ç§’"
-
-msgid "10 x 11"
-msgstr ""
-
-msgid "10 x 13"
-msgstr ""
-
-msgid "10 x 14"
-msgstr ""
-
-msgid "100"
-msgstr "100"
-
-msgid "100 mm/sec."
-msgstr "100 å…¬é‡âˆ•ç§’"
-
-msgid "105"
-msgstr "105"
-
-msgid "11"
-msgstr "11"
-
-msgid "11 inches/sec."
-msgstr "11 英å‹âˆ•ç§’"
-
-msgid "110"
-msgstr "110"
-
-msgid "115"
-msgstr "115"
-
-msgid "12"
-msgstr "12"
-
-msgid "12 inches/sec."
-msgstr "12 英å‹âˆ•ç§’"
-
-msgid "12 x 11"
-msgstr ""
-
-msgid "120"
-msgstr "120"
-
-msgid "120 mm/sec."
-msgstr "120 å…¬é‡âˆ•ç§’"
-
-msgid "120x60dpi"
-msgstr "120x60dpi"
-
-msgid "120x72dpi"
-msgstr "120x72dpi"
-
-msgid "13"
-msgstr "13"
-
-msgid "136dpi"
-msgstr "136dpi"
-
-msgid "14"
-msgstr "14"
-
-msgid "15"
-msgstr "15"
-
-msgid "15 mm/sec."
-msgstr "15 å…¬é‡âˆ•ç§’"
-
-msgid "15 x 11"
-msgstr ""
-
-msgid "150 mm/sec."
-msgstr "150 å…¬é‡âˆ•ç§’"
-
-msgid "150dpi"
-msgstr "150dpi"
-
-msgid "16"
-msgstr "16"
-
-msgid "17"
-msgstr "17"
-
-msgid "18"
-msgstr "18"
-
-msgid "180dpi"
-msgstr "180dpi"
-
-msgid "19"
-msgstr "19"
-
-msgid "2"
-msgstr "2"
-
-msgid "2 inches/sec."
-msgstr "2 英å‹âˆ•ç§’"
-
-msgid "2-Sided Printing"
-msgstr "é›™é¢åˆ—å°"
-
-msgid "2.00x0.37\""
-msgstr "2.00x0.37\""
-
-msgid "2.00x0.50\""
-msgstr "2.00x0.50\""
-
-msgid "2.00x1.00\""
-msgstr "2.00x1.00\""
-
-msgid "2.00x1.25\""
-msgstr "2.00x1.25\""
-
-msgid "2.00x2.00\""
-msgstr "2.00x2.00\""
-
-msgid "2.00x3.00\""
-msgstr "2.00x3.00\""
-
-msgid "2.00x4.00\""
-msgstr "2.00x4.00\""
-
-msgid "2.00x5.50\""
-msgstr "2.00x5.50\""
-
-msgid "2.25x0.50\""
-msgstr "2.25x0.50\""
-
-msgid "2.25x1.25\""
-msgstr "2.25x1.25\""
-
-msgid "2.25x4.00\""
-msgstr "2.25x4.00\""
-
-msgid "2.25x5.50\""
-msgstr "2.25x5.50\""
-
-msgid "2.38x5.50\""
-msgstr "2.38x5.50\""
-
-msgid "2.5 inches/sec."
-msgstr "2.5 英å‹âˆ•ç§’"
-
-msgid "2.50x1.00\""
-msgstr "2.50x1.00\""
-
-msgid "2.50x2.00\""
-msgstr "2.50x2.00\""
-
-msgid "2.75x1.25\""
-msgstr "2.75x1.25\""
-
-msgid "2.9 x 1\""
-msgstr "2.9 x 1\""
-
-msgid "20"
-msgstr "20"
-
-msgid "20 mm/sec."
-msgstr "20 å…¬é‡âˆ•ç§’"
-
-msgid "200 mm/sec."
-msgstr "200 å…¬é‡âˆ•ç§’"
-
-msgid "203dpi"
-msgstr "203dpi"
-
-msgid "21"
-msgstr "21"
-
-msgid "22"
-msgstr "22"
-
-msgid "23"
-msgstr "23"
-
-msgid "24"
-msgstr "24"
-
-msgid "24-Pin Series"
-msgstr "24-Pin 系列"
-
-msgid "240x72dpi"
-msgstr "240x72dpi"
-
-msgid "25"
-msgstr "25"
-
-msgid "250 mm/sec."
-msgstr "250 å…¬é‡âˆ•ç§’"
-
-msgid "26"
-msgstr "26"
-
-msgid "27"
-msgstr "27"
-
-msgid "28"
-msgstr "28"
-
-msgid "29"
-msgstr "29"
-
-msgid "3"
-msgstr "3"
-
-msgid "3 inches/sec."
-msgstr "3 英å‹âˆ•ç§’"
-
-msgid "3 x 5"
-msgstr ""
-
-msgid "3.00x1.00\""
-msgstr "3.00x1.00\""
-
-msgid "3.00x1.25\""
-msgstr "3.00x1.25\""
-
-msgid "3.00x2.00\""
-msgstr "3.00x2.00\""
-
-msgid "3.00x3.00\""
-msgstr "3.00x3.00\""
-
-msgid "3.00x5.00\""
-msgstr "3.00x5.00\""
-
-msgid "3.25x2.00\""
-msgstr "3.25x2.00\""
-
-msgid "3.25x5.00\""
-msgstr "3.25x5.00\""
-
-msgid "3.25x5.50\""
-msgstr "3.25x5.50\""
-
-msgid "3.25x5.83\""
-msgstr "3.25x5.83\""
-
-msgid "3.25x7.83\""
-msgstr "3.25x7.83\""
-
-msgid "3.5 x 5"
-msgstr ""
-
-msgid "3.5\" Disk"
-msgstr "3.5 å‹ç£ç¢Ÿ"
-
-msgid "3.5\" Disk - 2 1/8 x 2 3/4\""
-msgstr "3.5 å‹ç£ç¢Ÿ - 2 1/8 x 2 3/4\""
-
-msgid "3.50x1.00\""
-msgstr "3.50x1.00\""
-
-msgid "30"
-msgstr "30"
-
-msgid "30 mm/sec."
-msgstr "30 å…¬é‡âˆ•ç§’"
-
-msgid "300 mm/sec."
-msgstr "300 å…¬é‡âˆ•ç§’"
-
-msgid "300dpi"
-msgstr "300dpi"
-
-msgid "35"
-msgstr "35"
-
-msgid "360dpi"
-msgstr "360dpi"
-
-msgid "360x180dpi"
-msgstr "360x180dpi"
-
-msgid "4"
-msgstr "4"
-
-msgid "4 inches/sec."
-msgstr "4 英å‹âˆ•ç§’"
-
-msgid "4.00x1.00\""
-msgstr "4.00x1.00\""
-
-msgid "4.00x13.00\""
-msgstr "4.00x13.00\""
-
-msgid "4.00x2.00\""
-msgstr "4.00x2.00\""
-
-msgid "4.00x2.50\""
-msgstr "4.00x2.50\""
-
-msgid "4.00x3.00\""
-msgstr "4.00x3.00\""
-
-msgid "4.00x4.00\""
-msgstr "4.00x4.00\""
-
-msgid "4.00x5.00\""
-msgstr "4.00x5.00\""
-
-msgid "4.00x6.00\""
-msgstr "4.00x6.00\""
-
-msgid "4.00x6.50\""
-msgstr "4.00x6.50\""
-
-msgid "40"
-msgstr "40"
-
-msgid "40 mm/sec."
-msgstr "40 å…¬é‡âˆ•ç§’"
-
-msgid "45"
-msgstr "45"
-
-msgid "5"
-msgstr "5"
-
-msgid "5 inches/sec."
-msgstr "5 英å‹âˆ•ç§’"
-
-msgid "5 x 7"
-msgstr ""
-
-msgid "50"
-msgstr "50"
-
-msgid "55"
-msgstr "55"
-
-msgid "6"
-msgstr "6"
-
-msgid "6 inches/sec."
-msgstr "6 英å‹âˆ•ç§’"
-
-msgid "6.00x1.00\""
-msgstr "6.00x1.00\""
-
-msgid "6.00x2.00\""
-msgstr "6.00x2.00\""
-
-msgid "6.00x3.00\""
-msgstr "6.00x3.00\""
-
-msgid "6.00x4.00\""
-msgstr "6.00x4.00\""
-
-msgid "6.00x5.00\""
-msgstr "6.00x5.00\""
-
-msgid "6.00x6.00\""
-msgstr "6.00x6.00\""
-
-msgid "6.00x6.50\""
-msgstr "6.00x6.50\""
-
-msgid "60"
-msgstr "60"
-
-msgid "60 mm/sec."
-msgstr "60 å…¬é‡âˆ•ç§’"
-
-msgid "600dpi"
-msgstr "600dpi"
-
-msgid "60dpi"
-msgstr "60dpi"
-
-msgid "60x72dpi"
-msgstr ""
-
-msgid "65"
-msgstr "65"
-
-msgid "7"
-msgstr "7"
-
-msgid "7 inches/sec."
-msgstr "7 英å‹âˆ•ç§’"
-
-msgid "7 x 9"
-msgstr ""
-
-msgid "70"
-msgstr "70"
-
-msgid "720dpi"
-msgstr "720dpi"
-
-msgid "75"
-msgstr "75"
-
-msgid "8"
-msgstr "8"
-
-msgid "8 inches/sec."
-msgstr "8 英å‹âˆ•ç§’"
-
-msgid "8 x 10"
-msgstr ""
-
-msgid "8.00x1.00\""
-msgstr "8.00x1.00\""
-
-msgid "8.00x2.00\""
-msgstr "8.00x2.00\""
-
-msgid "8.00x3.00\""
-msgstr "8.00x3.00\""
-
-msgid "8.00x4.00\""
-msgstr "8.00x4.00\""
-
-msgid "8.00x5.00\""
-msgstr "8.00x5.00\""
-
-msgid "8.00x6.00\""
-msgstr "8.00x6.00\""
-
-msgid "8.00x6.50\""
-msgstr "8.00x6.50\""
-
-msgid "80"
-msgstr "80"
-
-msgid "80 mm/sec."
-msgstr "80 å…¬é‡âˆ•ç§’"
-
-msgid "85"
-msgstr "85"
-
-msgid "9"
-msgstr "9"
-
-msgid "9 inches/sec."
-msgstr "9 英å‹âˆ•ç§’"
-
-msgid "9 x 11"
-msgstr ""
-
-msgid "9 x 12"
-msgstr ""
-
-msgid "9-Pin Series"
-msgstr "9-Pin 系列"
-
-msgid "90"
-msgstr "90"
-
-msgid "95"
-msgstr "95"
-
-msgid "?Invalid help command unknown."
-msgstr ""
-
-msgid "A Samba password is required to export printer drivers"
-msgstr ""
-
-msgid "A Samba username is required to export printer drivers"
-msgstr ""
-
-#, c-format
-msgid "A class named \"%s\" already exists."
-msgstr ""
-
-#, c-format
-msgid "A printer named \"%s\" already exists."
-msgstr ""
-
-msgid "A0"
-msgstr "A0"
-
-msgid "A0 Long Edge"
-msgstr ""
-
-msgid "A1"
-msgstr "A1"
-
-msgid "A1 Long Edge"
-msgstr ""
-
-msgid "A10"
-msgstr "A10"
-
-msgid "A2"
-msgstr "A2"
-
-msgid "A2 Long Edge"
-msgstr ""
-
-msgid "A3"
-msgstr "A3"
-
-msgid "A3 Long Edge"
-msgstr ""
-
-msgid "A3 Oversize"
-msgstr ""
-
-msgid "A3 Oversize Long Edge"
-msgstr ""
-
-msgid "A4"
-msgstr "A4"
-
-msgid "A4 Long Edge"
-msgstr ""
-
-msgid "A4 Oversize"
-msgstr ""
-
-msgid "A4 Small"
-msgstr ""
-
-msgid "A5"
-msgstr "A5"
-
-msgid "A5 Long Edge"
-msgstr ""
-
-msgid "A5 Oversize"
-msgstr ""
-
-msgid "A6"
-msgstr "A6"
-
-msgid "A6 Long Edge"
-msgstr ""
-
-msgid "A7"
-msgstr "A7"
-
-msgid "A8"
-msgstr "A8"
-
-msgid "A9"
-msgstr "A9"
-
-msgid "ANSI A"
-msgstr "ANSI A"
-
-msgid "ANSI B"
-msgstr "ANSI B"
-
-msgid "ANSI C"
-msgstr "ANSI C"
-
-msgid "ANSI D"
-msgstr "ANSI D"
-
-msgid "ANSI E"
-msgstr "ANSI E"
-
-msgid "ARCH C"
-msgstr "ARCH C"
-
-msgid "ARCH C Long Edge"
-msgstr ""
-
-msgid "ARCH D"
-msgstr "ARCH D"
-
-msgid "ARCH D Long Edge"
-msgstr ""
-
-msgid "ARCH E"
-msgstr "ARCH E"
-
-msgid "ARCH E Long Edge"
-msgstr ""
-
-msgid "Accept Jobs"
-msgstr "接å—作業"
-
-msgid "Accepted"
-msgstr "已接å—"
-
-msgid "Add Class"
-msgstr "加入類別"
-
-msgid "Add Printer"
-msgstr "新增å°è¡¨æ©Ÿ"
-
-msgid "Add RSS Subscription"
-msgstr "新增 RSS 訂閱"
-
-msgid "Address"
-msgstr "地å€"
-
-msgid "Address - 1 1/8 x 3 1/2\""
-msgstr "åœ°å€ - 1 1/8 x 3 1/2\""
-
-msgid "Administration"
-msgstr "管ç†"
-
-msgid "Always"
-msgstr "總是"
-
-msgid "AppSocket/HP JetDirect"
-msgstr "AppSocket/HP JetDirect"
-
-msgid "Applicator"
-msgstr "å™´é ­"
-
-#, c-format
-msgid "Attempt to set %s printer-state to bad value %d."
-msgstr ""
-
-#, c-format
-msgid "Attribute groups are out of order (%x < %x)."
-msgstr ""
-
-msgid "B0"
-msgstr "B0"
-
-msgid "B1"
-msgstr "B1"
-
-msgid "B10"
-msgstr "B10"
-
-msgid "B2"
-msgstr "B2"
-
-msgid "B3"
-msgstr "B3"
-
-msgid "B4"
-msgstr "B4"
-
-msgid "B5"
-msgstr "B5"
-
-msgid "B5 Oversize"
-msgstr ""
-
-msgid "B6"
-msgstr "B6"
-
-msgid "B7"
-msgstr "B7"
-
-msgid "B8"
-msgstr "B8"
-
-msgid "B9"
-msgstr "B9"
-
-msgid "Bad NULL dests pointer"
-msgstr "NULL dests 指標錯誤"
-
-msgid "Bad OpenGroup"
-msgstr "OpenGroup 錯誤"
-
-msgid "Bad OpenUI/JCLOpenUI"
-msgstr "OpenUI/JCLOpenUI 錯誤"
-
-msgid "Bad OrderDependency"
-msgstr "OrderDependency 錯誤"
-
-msgid "Bad PPD cache file."
-msgstr ""
-
-msgid "Bad Request"
-msgstr "請求錯誤"
-
-msgid "Bad SNMP version number"
-msgstr "SNMP 版本號碼錯誤"
-
-msgid "Bad UIConstraints"
-msgstr "UIConstraints 錯誤"
-
-#, c-format
-msgid "Bad charset file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad charset type: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad columns value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad copies value %d."
-msgstr "列å°ä»½æ•¸å€¼ %d 錯誤。"
-
-#, c-format
-msgid "Bad cpi value %f."
-msgstr ""
-
-msgid "Bad custom parameter"
-msgstr "è‡ªå®šåƒæ•¸éŒ¯èª¤"
-
-#, c-format
-msgid "Bad device-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad device-uri scheme \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad document-format-default \"%s\"."
-msgstr ""
-
-msgid "Bad filename buffer"
-msgstr ""
-
-#, c-format
-msgid "Bad font description line \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad font description line: %s"
-msgstr ""
-
-msgid "Bad job-priority value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-sheets value \"%s\"."
-msgstr ""
-
-msgid "Bad job-sheets value type."
-msgstr ""
-
-msgid "Bad job-state value."
-msgstr ""
-
-#, c-format
-msgid "Bad job-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad lpi value %f."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-pull-method \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad notify-recipient-uri \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad number-up value %d."
-msgstr "number-up 值 %d 錯誤。"
-
-#, c-format
-msgid "Bad option + choice on line %d."
-msgstr ""
-
-#, c-format
-msgid "Bad page-ranges values %d-%d."
-msgstr "page-ranges 值 %d-%d 錯誤。"
-
-#, c-format
-msgid "Bad port-monitor \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad printer-state value %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request ID %d."
-msgstr ""
-
-#, c-format
-msgid "Bad request version number %d.%d."
-msgstr ""
-
-msgid "Bad subscription ID"
-msgstr ""
-
-#, c-format
-msgid "Bad text direction \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text direction: %s"
-msgstr ""
-
-#, c-format
-msgid "Bad text width \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Bad text width: %s"
-msgstr ""
-
-msgid "Bad value string"
-msgstr ""
-
-msgid "Banners"
-msgstr "標語"
-
-msgid "Billing Information: "
-msgstr "帳單資訊:"
-
-msgid "Bond Paper"
-msgstr "證券紙"
-
-#, c-format
-msgid "Boolean expected for waiteof option \"%s\"."
-msgstr ""
-
-msgid "Buffer overflow detected, aborting."
-msgstr ""
-
-msgid "CMYK"
-msgstr "CMYK"
-
-msgid "CPCL Label Printer"
-msgstr "CPCL 標籤å°è¡¨æ©Ÿ"
-
-msgid "Cancel RSS Subscription"
-msgstr "å–æ¶ˆ RSS 訂閱"
-
-msgid "Canceling print job."
-msgstr ""
-
-msgid "Cannot share a remote Kerberized printer."
-msgstr ""
-
-msgid "Cassette"
-msgstr ""
-
-msgid "Change Settings"
-msgstr "更改設定"
-
-#, c-format
-msgid "Character set \"%s\" not supported."
-msgstr ""
-
-msgid "Classes"
-msgstr "類別"
-
-msgid "Clean Print Heads"
-msgstr "乾淨的列å°é ­"
-
-msgid "Close-Job doesn't support the job-uri attribute."
-msgstr ""
-
-msgid "Color"
-msgstr "é¡è‰²"
-
-msgid "Color Mode"
-msgstr "é¡è‰²æ¨¡å¼"
-
-msgid ""
-"Commands may be abbreviated. Commands are:\n"
-"\n"
-"exit help quit status ?"
-msgstr ""
-
-msgid "Community name uses indefinite length"
-msgstr "社群å稱使用的長度ä¸ç¢ºå®š"
-
-msgid "Connected to printer."
-msgstr ""
-
-msgid "Connecting to printer."
-msgstr ""
-
-msgid "Continue"
-msgstr "繼續"
-
-msgid "Continuous"
-msgstr "連續"
-
-msgid "Control file sent successfully."
-msgstr ""
-
-msgid "Copying print data."
-msgstr ""
-
-msgid "Created"
-msgstr "已製作"
-
-msgid "Created On: "
-msgstr "製作日期:"
-
-msgid "Custom"
-msgstr "自定"
-
-msgid "CustominCutInterval"
-msgstr "CustominCutInterval"
-
-msgid "CustominTearInterval"
-msgstr "CustominTearInterval"
-
-msgid "Cut"
-msgstr "剪下"
-
-msgid "Cutter"
-msgstr "剪下程å¼"
-
-msgid "Dark"
-msgstr "æš—"
-
-msgid "Darkness"
-msgstr "æš—"
-
-msgid "Data file sent successfully."
-msgstr ""
-
-msgid "Delete Class"
-msgstr "刪除類別"
-
-msgid "Delete Printer"
-msgstr "刪除å°è¡¨æ©Ÿ"
-
-msgid "Description: "
-msgstr "æè¿°ï¼š"
-
-msgid "DeskJet Series"
-msgstr "DeskJet 系列"
-
-#, c-format
-msgid "Destination \"%s\" is not accepting jobs."
-msgstr "目的地“%sâ€ä¸æŽ¥å—作業。"
-
-#, c-format
-msgid ""
-"Device: uri = %s\n"
-" class = %s\n"
-" info = %s\n"
-" make-and-model = %s\n"
-" device-id = %s\n"
-" location = %s"
-msgstr ""
-
-msgid "Direct Thermal Media"
-msgstr "直接熱感媒體"
-
-#, c-format
-msgid "Directory \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" is a file."
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "Disabled"
-msgstr "å·²åœç”¨"
-
-#, c-format
-msgid "Document #%d does not exist in job #%d."
-msgstr ""
-
-msgid "Driver Name: "
-msgstr "驅動程å¼å稱:"
-
-msgid "Driver Version: "
-msgstr "驅動程å¼ç‰ˆæœ¬ï¼š"
-
-msgid "Duplexer"
-msgstr "Duplexer"
-
-msgid "Dymo"
-msgstr "Dymo"
-
-msgid "EPL1 Label Printer"
-msgstr "EPL1 標籤å°è¡¨æ©Ÿ"
-
-msgid "EPL2 Label Printer"
-msgstr "EPL2 標籤å°è¡¨æ©Ÿ"
-
-msgid "Edit Configuration File"
-msgstr "編輯é…置檔案"
-
-msgid "Empty PPD file."
-msgstr ""
-
-#. TRANSLATORS: Banner/cover sheet after the print job.
-msgid "Ending Banner"
-msgstr "çµæŸæ¨™èªž"
-
-msgid "English"
-msgstr ""
-
-msgid "Enter old password:"
-msgstr "輸入新密碼:"
-
-msgid "Enter password again:"
-msgstr "è«‹å†è¼¸å…¥å¯†ç¢¼ï¼š"
-
-msgid "Enter password:"
-msgstr "輸入密碼:"
-
-msgid ""
-"Enter your username and password or the root username and password to access "
-"this page. If you are using Kerberos authentication, make sure you have a "
-"valid Kerberos ticket."
-msgstr ""
-"請輸入您的使用者å稱和密碼或 root 使用者åç¨±å’Œå¯†ç¢¼ä¾†å­˜å–æ­¤é é¢ã€‚如果您是使用 "
-"Kerberos èªè­‰ï¼Œè«‹ç¢ºå®šå…·å‚™æœ‰æ•ˆçš„ Kerberos 票券。"
-
-msgid "Envelope #10 "
-msgstr ""
-
-msgid "Envelope #11"
-msgstr ""
-
-msgid "Envelope #12"
-msgstr ""
-
-msgid "Envelope #14"
-msgstr ""
-
-msgid "Envelope #9"
-msgstr ""
-
-msgid "Envelope B4"
-msgstr ""
-
-msgid "Envelope B5"
-msgstr ""
-
-msgid "Envelope B6"
-msgstr ""
-
-msgid "Envelope C0"
-msgstr ""
-
-msgid "Envelope C1"
-msgstr ""
-
-msgid "Envelope C2"
-msgstr ""
-
-msgid "Envelope C3"
-msgstr ""
-
-msgid "Envelope C4"
-msgstr ""
-
-msgid "Envelope C5"
-msgstr ""
-
-msgid "Envelope C6"
-msgstr ""
-
-msgid "Envelope C65"
-msgstr ""
-
-msgid "Envelope C7"
-msgstr ""
-
-msgid "Envelope Choukei 3"
-msgstr ""
-
-msgid "Envelope Choukei 3 Long Edge"
-msgstr ""
-
-msgid "Envelope Choukei 4"
-msgstr ""
-
-msgid "Envelope Choukei 4 Long Edge"
-msgstr ""
-
-msgid "Envelope DL"
-msgstr ""
-
-msgid "Envelope Feed"
-msgstr "ä¿¡å°é€ç´™å™¨"
-
-msgid "Envelope Invite"
-msgstr ""
-
-msgid "Envelope Italian"
-msgstr ""
-
-msgid "Envelope Kaku2"
-msgstr ""
-
-msgid "Envelope Kaku2 Long Edge"
-msgstr ""
-
-msgid "Envelope Kaku3"
-msgstr ""
-
-msgid "Envelope Kaku3 Long Edge"
-msgstr ""
-
-msgid "Envelope Monarch"
-msgstr ""
-
-msgid "Envelope PRC1 "
-msgstr ""
-
-msgid "Envelope PRC1 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC10"
-msgstr ""
-
-msgid "Envelope PRC10 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC2"
-msgstr ""
-
-msgid "Envelope PRC2 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC3"
-msgstr ""
-
-msgid "Envelope PRC3 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC4"
-msgstr ""
-
-msgid "Envelope PRC4 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC5PRC5"
-msgstr ""
-
-msgid "Envelope PRC6"
-msgstr ""
-
-msgid "Envelope PRC6 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC7"
-msgstr ""
-
-msgid "Envelope PRC7 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC8"
-msgstr ""
-
-msgid "Envelope PRC8 Long Edge"
-msgstr ""
-
-msgid "Envelope PRC9"
-msgstr ""
-
-msgid "Envelope PRC9 Long Edge"
-msgstr ""
-
-msgid "Envelope Personal"
-msgstr ""
-
-msgid "Envelope You4"
-msgstr ""
-
-msgid "Envelope You4 Long Edge"
-msgstr ""
-
-msgid "Epson"
-msgstr "Epson"
-
-msgid "Error Policy"
-msgstr "錯誤的原則"
-
-msgid "Error sending raster data."
-msgstr ""
-
-msgid "Error: need hostname after \"-h\" option."
-msgstr ""
-
-msgid "Every 10 Labels"
-msgstr "æ¯ 10 個標籤"
-
-msgid "Every 2 Labels"
-msgstr "æ¯ 2 個標籤"
-
-msgid "Every 3 Labels"
-msgstr "æ¯ 3 個標籤"
-
-msgid "Every 4 Labels"
-msgstr "æ¯ 4 個標籤"
-
-msgid "Every 5 Labels"
-msgstr "æ¯ 5 個標籤"
-
-msgid "Every 6 Labels"
-msgstr "æ¯ 6 個標籤"
-
-msgid "Every 7 Labels"
-msgstr "æ¯ 7 個標籤"
-
-msgid "Every 8 Labels"
-msgstr "æ¯ 8 個標籤"
-
-msgid "Every 9 Labels"
-msgstr "æ¯ 9 個標籤"
-
-msgid "Every Label"
-msgstr "æ¯ä¸€å€‹æ¨™ç±¤"
-
-msgid "Executive"
-msgstr ""
-
-msgid "Expectation Failed"
-msgstr "èˆ‡é æœŸä¸ç¬¦"
-
-msgid "Export Printers to Samba"
-msgstr "å°‡å°è¡¨æ©Ÿè¼¸å‡ºè‡³ Samba"
-
-msgid "FAIL"
-msgstr ""
-
-msgid "FanFold German"
-msgstr ""
-
-msgid "FanFold Legal German"
-msgstr ""
-
-msgid "Fanfold US"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" contains a relative path."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" is a directory."
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" not available: %s"
-msgstr ""
-
-#, c-format
-msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
-msgstr ""
-
-msgid "File Folder"
-msgstr "檔案夾"
-
-msgid "File Folder - 9/16 x 3 7/16\""
-msgstr "檔案夾 - 9/16 x 3 7/16\""
-
-#, c-format
-msgid ""
-"File device URIs have been disabled. To enable, see the FileDevice directive "
-"in \"%s/cupsd.conf\"."
-msgstr ""
-
-#, c-format
-msgid "Finished page %d."
-msgstr ""
-
-msgid "Folio"
-msgstr "å°é–‹ç´™"
-
-msgid "Forbidden"
-msgstr "å·²ç¦æ­¢"
-
-#, c-format
-msgid "Formatting page %d."
-msgstr ""
-
-msgid "General"
-msgstr "一般"
-
-msgid "Generic"
-msgstr "通用"
-
-msgid "Get-Response-PDU uses indefinite length"
-msgstr "Get-Response-PDU 使用的長度ä¸ç¢ºå®š"
-
-msgid "Glossy Paper"
-msgstr "é¡é¢ç´™"
-
-msgid "Got a printer-uri attribute but no job-id."
-msgstr ""
-
-msgid "Grayscale"
-msgstr "ç°éšŽ"
-
-msgid "HP"
-msgstr "HP"
-
-msgid "Hanging Folder"
-msgstr "懸掛的檔案夾"
-
-msgid "Hanging Folder - 9/16 x 2\""
-msgstr "懸掛的檔案夾 - 9/16 x 2\""
-
-msgid "IPP 1setOf attribute with incompatible value tags."
-msgstr ""
-
-msgid "IPP attribute has no name."
-msgstr ""
-
-msgid "IPP begCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP boolean value not 1 byte."
-msgstr ""
-
-msgid "IPP date value not 11 bytes."
-msgstr ""
-
-msgid "IPP endCollection value not 0 bytes."
-msgstr ""
-
-msgid "IPP enum value not 4 bytes."
-msgstr ""
-
-msgid "IPP integer value not 4 bytes."
-msgstr ""
-
-msgid "IPP language length overflows value."
-msgstr ""
-
-msgid "IPP member name is not empty."
-msgstr ""
-
-msgid "IPP name larger than 32767 bytes."
-msgstr ""
-
-msgid "IPP nameWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP rangeOfInteger value not 8 bytes."
-msgstr ""
-
-msgid "IPP resolution value not 9 bytes."
-msgstr ""
-
-msgid "IPP string length overflows value."
-msgstr ""
-
-msgid "IPP textWithLanguage value less than minimum 4 bytes."
-msgstr ""
-
-msgid "IPP value larger than 32767 bytes."
-msgstr ""
-
-msgid "ISOLatin1"
-msgstr "UTF-8"
-
-msgid "Illegal control character"
-msgstr "ä¸åˆæ³•的控制字元"
-
-msgid "Illegal main keyword string"
-msgstr "ä¸åˆæ³•的主è¦é—œéµå­—串"
-
-msgid "Illegal option keyword string"
-msgstr "ä¸åˆæ³•çš„é¸é …é—œéµå­—串"
-
-msgid "Illegal translation string"
-msgstr "ä¸åˆæ³•的轉æ›å­—串"
-
-msgid "Illegal whitespace character"
-msgstr "ä¸åˆæ³•的空白字元"
-
-msgid "Installable Options"
-msgstr "å¯å®‰è£çš„é¸é …"
-
-msgid "Installed"
-msgstr "已安è£"
-
-msgid "IntelliBar Label Printer"
-msgstr "IntelliBar 標籤å°è¡¨æ©Ÿ"
-
-msgid "Intellitech"
-msgstr "Intellitech"
-
-msgid "Internal Server Error"
-msgstr ""
-
-msgid "Internal error"
-msgstr "內部錯誤"
-
-msgid "Internet Postage 2-Part"
-msgstr "Internet Postage 2-Part"
-
-msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-msgstr "Internet Postage 2-Part - 2 1/4 x 7 1/2\""
-
-msgid "Internet Postage 3-Part"
-msgstr "Internet Postage 3-Part"
-
-msgid "Internet Postage 3-Part - 2 1/4 x 7\""
-msgstr "Internet Postage 3-Part - 2 1/4 x 7\""
-
-msgid "Internet Printing Protocol"
-msgstr "Internet 列å°é€šè¨Šå”定"
-
-#, c-format
-msgid "Invalid printer command \"%s\"."
-msgstr ""
-
-msgid "JCL"
-msgstr "JCL"
-
-msgid "JIS B0"
-msgstr ""
-
-msgid "JIS B1"
-msgstr ""
-
-msgid "JIS B10"
-msgstr ""
-
-msgid "JIS B2"
-msgstr ""
-
-msgid "JIS B3"
-msgstr ""
-
-msgid "JIS B4"
-msgstr ""
-
-msgid "JIS B4 Long Edge"
-msgstr ""
-
-msgid "JIS B5"
-msgstr ""
-
-msgid "JIS B5 Long Edge"
-msgstr ""
-
-msgid "JIS B6"
-msgstr ""
-
-msgid "JIS B6 Long Edge"
-msgstr ""
-
-msgid "JIS B7"
-msgstr ""
-
-msgid "JIS B8"
-msgstr ""
-
-msgid "JIS B9"
-msgstr ""
-
-#, c-format
-msgid "Job #%d cannot be restarted - no files."
-msgstr ""
-
-#, c-format
-msgid "Job #%d does not exist."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is already aborted - can't cancel."
-msgstr "已中止作業 #%d - ç„¡æ³•å–æ¶ˆã€‚"
-
-#, c-format
-msgid "Job #%d is already canceled - can't cancel."
-msgstr "已喿¶ˆä½œæ¥­ #%d - ç„¡æ³•å–æ¶ˆã€‚"
-
-#, c-format
-msgid "Job #%d is already completed - can't cancel."
-msgstr "已完æˆä½œæ¥­ #%d - ç„¡æ³•å–æ¶ˆã€‚"
-
-#, c-format
-msgid "Job #%d is finished and cannot be altered."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not complete."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held for authentication."
-msgstr ""
-
-#, c-format
-msgid "Job #%d is not held."
-msgstr ""
-
-msgid "Job Completed"
-msgstr "已完æˆä½œæ¥­"
-
-msgid "Job Created"
-msgstr "已建立作業"
-
-msgid "Job ID: "
-msgstr "作業 ID:"
-
-msgid "Job Options Changed"
-msgstr "已更改作業é¸é …"
-
-msgid "Job Stopped"
-msgstr "å·²åœæ­¢ä½œæ¥­"
-
-msgid "Job UUID: "
-msgstr "作業 UUID:"
-
-msgid "Job is completed and cannot be changed."
-msgstr "作業已完æˆä¸”無法更改。"
-
-msgid "Job operation failed:"
-msgstr "作業æ“作失敗:"
-
-msgid "Job state cannot be changed."
-msgstr "無法更改作業狀態。"
-
-msgid "Job subscriptions cannot be renewed."
-msgstr ""
-
-msgid "Jobs"
-msgstr "作業"
-
-msgid "LPD/LPR Host or Printer"
-msgstr "LPD/LPR 主機或å°è¡¨æ©Ÿ"
-
-msgid "Label Printer"
-msgstr "標籤å°è¡¨æ©Ÿ"
-
-msgid "Label Top"
-msgstr "標籤頂端"
-
-#, c-format
-msgid "Language \"%s\" not supported."
-msgstr ""
-
-msgid "Large Address"
-msgstr "大型地å€"
-
-msgid "Large Address - 1 4/10 x 3 1/2\""
-msgstr "å¤§åž‹åœ°å€ - 1 4/10 x 3 1/2\""
-
-msgid "LaserJet Series PCL 4/5"
-msgstr "LaserJet 系列 PCL 4/5"
-
-msgid "Letter Oversize"
-msgstr ""
-
-msgid "Letter Oversize Long Edge"
-msgstr ""
-
-msgid "Light"
-msgstr "䏿˜Žé¡¯"
-
-msgid "Line longer than the maximum allowed (255 characters)"
-msgstr "å…許行長度大於最大值(255 個字元)"
-
-msgid "List Available Printers"
-msgstr "列出å¯ç”¨å°è¡¨æ©Ÿ"
-
-msgid "Loading print file."
-msgstr ""
-
-msgid "Location: "
-msgstr "ä½ç½®ï¼š"
-
-msgid "Long-Edge (Portrait)"
-msgstr "沿長邊(直å¼ï¼‰"
-
-msgid "Looking for printer."
-msgstr ""
-
-msgid "Make and Model: "
-msgstr "製造和型號:"
-
-msgid "Manual Feed"
-msgstr "手動é€ç´™"
-
-msgid "Media Dimensions: "
-msgstr "媒體尺寸:"
-
-msgid "Media Limits: "
-msgstr "媒體é™åˆ¶ï¼š"
-
-msgid "Media Name: "
-msgstr "媒體å稱:"
-
-msgid "Media Size"
-msgstr "媒體大å°"
-
-msgid "Media Source"
-msgstr "媒體來æº"
-
-msgid "Media Tracking"
-msgstr "媒體軌跡"
-
-msgid "Media Type"
-msgstr "媒體類型"
-
-msgid "Medium"
-msgstr "中"
-
-msgid "Memory allocation error"
-msgstr "記憶體分é…錯誤"
-
-msgid "Missing CloseGroup"
-msgstr ""
-
-msgid "Missing PPD-Adobe-4.x header"
-msgstr "éºå¤± PPD-Adobe-4.x 標題"
-
-msgid "Missing asterisk in column 1"
-msgstr "直欄 1 中éºå¤±æ˜Ÿè™Ÿ"
-
-msgid "Missing document-number attribute."
-msgstr ""
-
-#, c-format
-msgid "Missing double quote on line %d."
-msgstr ""
-
-msgid "Missing form variable"
-msgstr ""
-
-msgid "Missing last-document attribute in request."
-msgstr ""
-
-msgid "Missing media or media-col."
-msgstr ""
-
-msgid "Missing media-size in media-col."
-msgstr ""
-
-msgid "Missing notify-subscription-ids attribute."
-msgstr ""
-
-msgid "Missing option keyword"
-msgstr ""
-
-msgid "Missing requesting-user-name attribute."
-msgstr ""
-
-msgid "Missing required attributes."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d of banner file."
-msgstr ""
-
-#, c-format
-msgid "Missing value on line %d."
-msgstr ""
-
-msgid "Missing value string"
-msgstr "éºå¤±å€¼å­—串"
-
-msgid "Missing x-dimension in media-size."
-msgstr ""
-
-msgid "Missing y-dimension in media-size."
-msgstr ""
-
-#, c-format
-msgid ""
-"Model: name = %s\n"
-" natural_language = %s\n"
-" make-and-model = %s\n"
-" device-id = %s"
-msgstr ""
-
-msgid "Modify Class"
-msgstr "修改類別"
-
-msgid "Modify Printer"
-msgstr "修改å°è¡¨æ©Ÿ"
-
-msgid "Move All Jobs"
-msgstr "移動所有作業"
-
-msgid "Move Job"
-msgstr "移動作業"
-
-msgid "Moved Permanently"
-msgstr "永久地移動"
-
-msgid "NULL PPD file pointer"
-msgstr "NULL PPD 檔案指標"
-
-msgid "Name OID uses indefinite length"
-msgstr "å稱 OID 使用的長度ä¸ç¢ºå®š"
-
-msgid "Nested classes are not allowed."
-msgstr ""
-
-msgid "Never"
-msgstr "æ°¸ä¸"
-
-msgid "New Stylus Color Series"
-msgstr "新 Stylus Color 系列"
-
-msgid "New Stylus Photo Series"
-msgstr "新 Stylus Photo 系列"
-
-msgid "No"
-msgstr "å¦"
-
-msgid "No Content"
-msgstr "無內容"
-
-msgid "No PPD name"
-msgstr ""
-
-msgid "No VarBind SEQUENCE"
-msgstr "沒有 VarBind SEQUENCE"
-
-msgid "No Windows printer drivers are installed."
-msgstr ""
-
-msgid "No active connection"
-msgstr "沒有已啟用的連線"
-
-#, c-format
-msgid "No active jobs on %s."
-msgstr ""
-
-msgid "No attributes in request."
-msgstr ""
-
-msgid "No authentication information provided."
-msgstr ""
-
-msgid "No community name"
-msgstr "沒有社群å稱"
-
-msgid "No default printer."
-msgstr ""
-
-msgid "No destinations added."
-msgstr "未加入目的地。"
-
-msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
-msgstr ""
-
-msgid "No error-index"
-msgstr "沒有錯誤索引"
-
-msgid "No error-status"
-msgstr "沒有錯誤狀態"
-
-msgid "No file in print request."
-msgstr ""
-
-msgid "No fonts in charset file."
-msgstr ""
-
-msgid "No modification time"
-msgstr ""
-
-msgid "No name OID"
-msgstr "沒有å稱 OID"
-
-msgid "No pages were found."
-msgstr ""
-
-msgid "No printer name"
-msgstr ""
-
-msgid "No printer-uri found"
-msgstr ""
-
-msgid "No printer-uri found for class"
-msgstr ""
-
-msgid "No printer-uri in request."
-msgstr ""
-
-msgid "No request-id"
-msgstr "沒有 request-id"
-
-msgid "No subscription attributes in request."
-msgstr ""
-
-msgid "No subscriptions found."
-msgstr "找ä¸åˆ°è¨‚閱。"
-
-msgid "No variable-bindings SEQUENCE"
-msgstr "沒有 variable-bindings SEQUENCE"
-
-msgid "No version number"
-msgstr "沒有版本號碼"
-
-msgid "Non-continuous (Mark sensing)"
-msgstr "ä¸é€£çºŒï¼ˆæ¨™ç¤ºæ„Ÿæ‡‰ï¼‰"
-
-msgid "Non-continuous (Web sensing)"
-msgstr "ä¸é€£çºŒï¼ˆWeb 感應)"
-
-msgid "Normal"
-msgstr "正常"
-
-msgid "Not Found"
-msgstr "找ä¸åˆ°"
-
-msgid "Not Implemented"
-msgstr "尚未完æˆ"
-
-msgid "Not Installed"
-msgstr "尚未安è£"
-
-msgid "Not Modified"
-msgstr "尚未修改"
-
-msgid "Not Supported"
-msgstr "ä¸å—支æ´"
-
-msgid "Not allowed to print."
-msgstr "ä¸å…許列å°ã€‚"
-
-msgid "Note"
-msgstr "注æ„"
-
-msgid ""
-"Note: this program only validates the DSC comments, not the PostScript "
-"itself."
-msgstr ""
-
-msgid "OK"
-msgstr "確定"
-
-msgid "Off (1-Sided)"
-msgstr "關(單é¢ï¼‰"
-
-msgid "Oki"
-msgstr "Oki"
-
-msgid "Online Help"
-msgstr "線上輔助說明"
-
-#, c-format
-msgid "Open of %s failed: %s"
-msgstr "打開 %s 失敗:%s"
-
-msgid "OpenGroup without a CloseGroup first"
-msgstr "OpenGroup 之剿²’有先 CloseGroup"
-
-msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
-msgstr "OpenUI/JCLOpenUI 之剿²’有先 CloseUI/JCLCloseUI"
-
-msgid "Operation Policy"
-msgstr "æ“作政策"
-
-#, c-format
-msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
-msgstr ""
-
-msgid "Options Installed"
-msgstr "已安è£çš„é¸é …"
-
-msgid "Options:"
-msgstr ""
-
-msgid "Options: "
-msgstr "é¸é …:"
-
-msgid "Out of date PPD cache file."
-msgstr ""
-
-msgid "Out of memory."
-msgstr ""
-
-msgid "Output Mode"
-msgstr "輸出模å¼"
-
-#, c-format
-msgid "Output for printer %s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s is sent to remote printer %s on %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to %s"
-msgstr ""
-
-#, c-format
-msgid "Output for printer %s/%s is sent to remote printer %s on %s"
-msgstr ""
-
-msgid "PASS"
-msgstr ""
-
-msgid "PCL Laser Printer"
-msgstr "PCL é›·å°„å°è¡¨æ©Ÿ"
-
-msgid "PRC16K"
-msgstr "PRC16K"
-
-msgid "PRC16K Long Edge"
-msgstr ""
-
-msgid "PRC32K"
-msgstr "PRC32K"
-
-msgid "PRC32K Long Edge"
-msgstr ""
-
-msgid "PRC32K Oversize"
-msgstr ""
-
-msgid "PRC32K Oversize Long Edge"
-msgstr ""
-
-msgid "Packet does not contain a Get-Response-PDU"
-msgstr "å°åŒ…ä¸åŒ…å« Get-Response-PDU"
-
-msgid "Packet does not start with SEQUENCE"
-msgstr "å°åŒ…䏿˜¯ä»¥ SEQUENCE é–‹é ­"
-
-msgid "ParamCustominCutInterval"
-msgstr "ParamCustominCutInterval"
-
-msgid "ParamCustominTearInterval"
-msgstr "ParamCustominTearInterval"
-
-#, c-format
-msgid "Password for %s on %s? "
-msgstr "éœ€è¦ %sï¼ˆä½æ–¼ %s 上)的密碼?"
-
-#, c-format
-msgid "Password for %s required to access %s via SAMBA: "
-msgstr "éœ€è¦ %s 的密碼æ‰èƒ½é€éŽ SAMBA å­˜å– %s:"
-
-msgid "Pause Class"
-msgstr "æš«åœé¡žåˆ¥"
-
-msgid "Pause Printer"
-msgstr "æš«åœå°è¡¨æ©Ÿ"
-
-msgid "Peel-Off"
-msgstr "去皮"
-
-msgid "Photo"
-msgstr "照片"
-
-msgid "Photo Labels"
-msgstr "照片標籤"
-
-msgid "Plain Paper"
-msgstr "一般紙張"
-
-msgid "Policies"
-msgstr "政策"
-
-msgid "Port Monitor"
-msgstr "連接埠監視器"
-
-msgid "PostScript Printer"
-msgstr "PostScript å°è¡¨æ©Ÿ"
-
-msgid "Postcard"
-msgstr "明信片"
-
-msgid "Postcard Double "
-msgstr ""
-
-msgid "Postcard Double Long Edge"
-msgstr ""
-
-msgid "Postcard Long Edge"
-msgstr ""
-
-msgid "Print Density"
-msgstr "列å°å¯†åº¦"
-
-msgid "Print Job:"
-msgstr "列å°ä½œæ¥­ï¼š"
-
-msgid "Print Mode"
-msgstr "åˆ—å°æ¨¡å¼"
-
-msgid "Print Rate"
-msgstr "列å°é€Ÿçއ"
-
-msgid "Print Self-Test Page"
-msgstr "列å°è‡ªæˆ‘測試é é¢"
-
-msgid "Print Speed"
-msgstr "列å°é€Ÿåº¦"
-
-msgid "Print Test Page"
-msgstr "åˆ—å°æ¸¬è©¦é é¢"
-
-msgid "Print and Cut"
-msgstr "列å°ä¸¦å‰ªä¸‹"
-
-msgid "Print and Tear"
-msgstr "列å°ä¸¦æ’•é–‹"
-
-#, c-format
-msgid "Print file accepted - job ID %d."
-msgstr ""
-
-msgid "Print file accepted - job ID unknown."
-msgstr ""
-
-msgid "Print file sent."
-msgstr ""
-
-msgid "Print file was not accepted."
-msgstr ""
-
-msgid "Print job too large."
-msgstr ""
-
-msgid "Printed For: "
-msgstr "列å°å°è±¡ï¼š"
-
-msgid "Printed From: "
-msgstr "列å°è‡ªï¼š"
-
-msgid "Printed On: "
-msgstr "åˆ—å°æ—¥æœŸï¼š"
-
-msgid "Printer Added"
-msgstr "已加入å°è¡¨æ©Ÿ"
-
-msgid "Printer Default"
-msgstr "é è¨­å°è¡¨æ©Ÿ"
-
-msgid "Printer Deleted"
-msgstr "已刪除å°è¡¨æ©Ÿ"
-
-msgid "Printer Modified"
-msgstr "已修改å°è¡¨æ©Ÿ"
-
-msgid "Printer Name: "
-msgstr "å°è¡¨æ©Ÿå稱:"
-
-msgid "Printer Paused"
-msgstr "å°è¡¨æ©Ÿå·²æš«åœ"
-
-msgid "Printer Settings"
-msgstr "å°è¡¨æ©Ÿè¨­å®š"
-
-msgid "Printer busy, will retry in 10 seconds."
-msgstr ""
-
-msgid "Printer busy; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer did not respond."
-msgstr ""
-
-#, c-format
-msgid "Printer does not support IPP/%d.%d, trying IPP/%s."
-msgstr ""
-
-msgid "Printer is busy, will retry in 5 seconds."
-msgstr ""
-
-msgid "Printer is not currently connected."
-msgstr ""
-
-msgid "Printer is now connected."
-msgstr ""
-
-msgid "Printer is now online."
-msgstr ""
-
-msgid "Printer is offline."
-msgstr ""
-
-msgid "Printer not connected, will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer not connected; will retry in 30 seconds."
-msgstr ""
-
-msgid "Printer:"
-msgstr "å°è¡¨æ©Ÿï¼š"
-
-msgid "Printers"
-msgstr "å°è¡¨æ©Ÿ"
-
-#, c-format
-msgid "Printing page %d, %d%% complete."
-msgstr ""
-
-#, c-format
-msgid "Printing page %d."
-msgstr ""
-
-msgid "Purge Jobs"
-msgstr "清除作業"
-
-msgid "Quarto"
-msgstr "四開紙"
-
-msgid "Quota limit reached."
-msgstr "å·²é”到四開紙é™åˆ¶ã€‚"
-
-msgid "Rank Owner Job File(s) Total Size"
-msgstr ""
-
-#. TRANSLATORS: Pri is job priority.
-msgid ""
-"Rank Owner Pri Job Files Total Size"
-msgstr ""
-
-msgid "Ready to print."
-msgstr ""
-
-msgid "Reject Jobs"
-msgstr "退出作業"
-
-#, c-format
-msgid "Remote host did not accept control file (%d)."
-msgstr ""
-
-#, c-format
-msgid "Remote host did not accept data file (%d)."
-msgstr ""
-
-msgid "Reprint After Error"
-msgstr "ç™¼ç”ŸéŒ¯èª¤å¾Œé‡æ–°åˆ—å°"
-
-msgid "Request Entity Too Large"
-msgstr "請求的實體éŽå¤§"
-
-msgid "Resolution"
-msgstr "è§£æžåº¦"
-
-msgid "Resume Class"
-msgstr "繼續類別"
-
-msgid "Resume Printer"
-msgstr "繼續å°è¡¨æ©Ÿ"
-
-msgid "Return Address"
-msgstr "寄件人地å€"
-
-msgid "Return Address - 3/4 x 2\""
-msgstr "å¯„ä»¶äººåœ°å€ - 3/4 x 2\""
-
-msgid "Rewind"
-msgstr "倒轉"
-
-#, c-format
-msgid "Running command: %s %s -N -A %s -c '%s'"
-msgstr ""
-
-msgid "SEQUENCE uses indefinite length"
-msgstr "SEQUENCE 使用的長度ä¸ç¢ºå®š"
-
-msgid "SSL/TLS Negotiation Error"
-msgstr ""
-
-msgid "See Other"
-msgstr "åƒé–±å…¶ä»–"
-
-msgid "Sending data to printer."
-msgstr ""
-
-#, c-format
-msgid "Serial Port #%d"
-msgstr "åºåˆ—埠 #%d"
-
-msgid "Server Restarted"
-msgstr "釿–°å•Ÿå‹•伺æœå™¨"
-
-msgid "Server Security Auditing"
-msgstr "伺æœå™¨å®‰å…¨æ€§å¯©å®š"
-
-msgid "Server Started"
-msgstr "已啟動伺æœå™¨"
-
-msgid "Server Stopped"
-msgstr "å·²åœæ­¢ä¼ºæœå™¨"
-
-msgid "Service Unavailable"
-msgstr "æœå‹™ç„¡æ³•使用"
-
-msgid "Set Allowed Users"
-msgstr "設定å…許的使用者"
-
-msgid "Set As Server Default"
-msgstr "設為伺æœå™¨é è¨­å€¼"
-
-msgid "Set Class Options"
-msgstr "設定類別é¸é …"
-
-msgid "Set Printer Options"
-msgstr "設定å°è¡¨æ©Ÿé¸é …"
-
-msgid "Set Publishing"
-msgstr "設定發佈"
-
-msgid "Shipping Address"
-msgstr "é‹é€åœ°å€"
-
-msgid "Shipping Address - 2 5/16 x 4\""
-msgstr "é‹é€åœ°å€ - 2 5/16 x 4\""
-
-msgid "Short-Edge (Landscape)"
-msgstr "沿短邊(橫å¼ï¼‰"
-
-msgid "Special Paper"
-msgstr "特殊紙張"
-
-#, c-format
-msgid "Spooling job, %.0f%% complete."
-msgstr ""
-
-msgid "Standard"
-msgstr "標準"
-
-#. TRANSLATORS: Banner/cover sheet before the print job.
-msgid "Starting Banner"
-msgstr "起始標語"
-
-#, c-format
-msgid "Starting page %d."
-msgstr ""
-
-msgid "Statement"
-msgstr "敘述"
-
-msgid "Stylus Color Series"
-msgstr "Stylus Color 系列"
-
-msgid "Stylus Photo Series"
-msgstr "Stylus Photo 系列"
-
-#, c-format
-msgid "Subscription #%d does not exist."
-msgstr ""
-
-msgid "Super A"
-msgstr "Super A"
-
-msgid "Super B"
-msgstr "Super B"
-
-msgid "Super B/A3"
-msgstr "Super B/A3"
-
-msgid "Switching Protocols"
-msgstr "切æ›é€šè¨Šå”定"
-
-msgid "Tabloid"
-msgstr "å°å ±ç”¨ç´™ï¼ˆTabloid)"
-
-msgid "Tabloid Oversize"
-msgstr ""
-
-msgid "Tabloid Oversize Long Edge"
-msgstr ""
-
-msgid "Tear"
-msgstr "æ’•é–‹"
-
-msgid "Tear-Off"
-msgstr "撕下"
-
-msgid "Tear-Off Adjust Position"
-msgstr "撕下調整ä½ç½®"
-
-#, c-format
-msgid "The %s attribute cannot be provided with job-ids."
-msgstr ""
-
-#, c-format
-msgid "The PPD file \"%s\" could not be found."
-msgstr "找ä¸åˆ° PPD 檔案“%sâ€ã€‚"
-
-#, c-format
-msgid "The PPD file \"%s\" could not be opened: %s"
-msgstr "無法打開 PPD 檔案“%sâ€ï¼š%s"
-
-msgid "The PPD file could not be opened."
-msgstr ""
-
-msgid ""
-"The class name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"類別å稱åªèƒ½åŒ…嫿œ€å¤š 127 個å¯åˆ—å°å­—元,而且ä¸èƒ½åŒ…å«ç©ºæ ¼ã€æ–œç·šï¼ˆ/)或井字號"
-"(#)。"
-
-msgid "The developer unit needs to be replaced."
-msgstr ""
-
-msgid "The developer unit will need to be replaced soon."
-msgstr ""
-
-msgid "The fuser's temperature is high."
-msgstr ""
-
-msgid "The fuser's temperature is low."
-msgstr ""
-
-msgid ""
-"The notify-lease-duration attribute cannot be used with job subscriptions."
-msgstr "notify-lease-duration 屬性ä¸èƒ½èˆ‡ä½œæ¥­è¨‚é–±æ­é…使用。"
-
-#, c-format
-msgid "The notify-user-data value is too large (%d > 63 octets)."
-msgstr ""
-
-msgid "The optical photoconductor needs to be replaced."
-msgstr ""
-
-msgid "The optical photoconductor will need to be replaced soon."
-msgstr ""
-
-msgid "The output bin is almost full."
-msgstr ""
-
-msgid "The output bin is full."
-msgstr ""
-
-msgid "The output bin is missing."
-msgstr ""
-
-msgid "The page setup information was not valid."
-msgstr ""
-
-msgid "The paper tray is almost empty."
-msgstr ""
-
-msgid "The paper tray is empty."
-msgstr ""
-
-msgid "The paper tray is missing."
-msgstr ""
-
-msgid "The paper tray needs to be filled."
-msgstr ""
-
-msgid "The print file could not be opened."
-msgstr ""
-
-msgid "The printer URI is incorrect or no longer exists."
-msgstr ""
-
-msgid "The printer is busy."
-msgstr ""
-
-msgid "The printer is not connected."
-msgstr ""
-
-msgid "The printer is not responding."
-msgstr ""
-
-msgid "The printer is out of ink."
-msgstr ""
-
-msgid "The printer is running low on ink."
-msgstr ""
-
-msgid "The printer is running low on toner."
-msgstr ""
-
-msgid "The printer is unreachable at this time."
-msgstr ""
-
-msgid "The printer may be out of toner."
-msgstr ""
-
-msgid "The printer may not exist or is unavailable at this time."
-msgstr ""
-
-msgid ""
-"The printer name may only contain up to 127 printable characters and may not "
-"contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"å°è¡¨æ©Ÿå稱åªèƒ½åŒ…嫿œ€å¤š 127 個å¯åˆ—å°çš„字元,而且ä¸èƒ½åŒ…å«ç©ºæ ¼ã€æ–œç·šï¼ˆ/)或井字"
-"號(#)。"
-
-msgid "The printer or class does not exist."
-msgstr ""
-
-msgid "The printer or class is not shared."
-msgstr ""
-
-msgid "The printer's cover is open."
-msgstr ""
-
-msgid "The printer's door is open."
-msgstr ""
-
-msgid "The printer's interlock is open."
-msgstr ""
-
-msgid "The printer's waste bin is almost full."
-msgstr ""
-
-msgid "The printer's waste bin is full."
-msgstr ""
-
-#, c-format
-msgid "The printer-uri \"%s\" contains invalid characters."
-msgstr "printer-uri“%sâ€åŒ…å«ç„¡æ•ˆçš„字元。"
-
-msgid "The printer-uri attribute is required."
-msgstr ""
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
-msgstr "printer-uri æ ¼å¼å¿…須為“ipp://HOSTNAME/classes/CLASSNAMEâ€ã€‚"
-
-msgid ""
-"The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
-msgstr "printer-uri æ ¼å¼å¿…須為“ipp://HOSTNAME/printers/PRINTERNAMEâ€ã€‚"
-
-msgid ""
-"The subscription name may not contain spaces, slashes (/), question marks "
-"(?), or the pound sign (#)."
-msgstr "訂閱å稱ä¸èƒ½åŒ…å«ç©ºæ ¼ã€æ–œç·šï¼ˆ/)ã€å•號(?)或井字號(#)。"
-
-msgid ""
-"The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
-"enable it."
-msgstr ""
-
-#, c-format
-msgid "The which-jobs value \"%s\" is not supported."
-msgstr ""
-
-msgid "There are too many subscriptions."
-msgstr "訂閱數é‡å¤ªå¤šã€‚"
-
-msgid "There is a paper jam."
-msgstr ""
-
-msgid "There was an unrecoverable USB error."
-msgstr ""
-
-msgid "Thermal Transfer Media"
-msgstr "熱感傳é€åª’é«”"
-
-msgid "Title: "
-msgstr "標題:"
-
-msgid "Too many active jobs."
-msgstr "已啟用的作業太多。"
-
-#, c-format
-msgid "Too many job-sheets values (%d > 2)."
-msgstr ""
-
-#, c-format
-msgid "Too many printer-state-reasons values (%d > %d)."
-msgstr ""
-
-msgid "Transparency"
-msgstr "逿˜Žåº¦"
-
-msgid "Tray"
-msgstr "è£ç´™åŒ£"
-
-msgid "Tray 1"
-msgstr "è£ç´™åŒ£ 1"
-
-msgid "Tray 2"
-msgstr "è£ç´™åŒ£ 2"
-
-msgid "Tray 3"
-msgstr "è£ç´™åŒ£ 3"
-
-msgid "Tray 4"
-msgstr "è£ç´™åŒ£ 4"
-
-msgid "URI Too Long"
-msgstr "URI 太長"
-
-msgid "US Ledger"
-msgstr "美å¼å¸³ç›®å ±è¡¨ç´™ï¼ˆUS Ledger)"
-
-msgid "US Legal"
-msgstr "ç¾Žå¼æ³•定紙(US Legal)"
-
-msgid "US Legal Oversize"
-msgstr ""
-
-msgid "US Letter"
-msgstr "美å¼ä¿¡ç´™ï¼ˆUS Letter)"
-
-msgid "US Letter Long Edge"
-msgstr ""
-
-msgid "US Letter Oversize"
-msgstr ""
-
-msgid "US Letter Oversize Long Edge"
-msgstr ""
-
-msgid "US Letter Small"
-msgstr ""
-
-#, c-format
-msgid "USB Serial Port #%d"
-msgstr "USB åºåˆ—埠 #%d"
-
-msgid "Unable to access cupsd.conf file:"
-msgstr "ç„¡æ³•å­˜å– cupsd.conf 檔案:"
-
-msgid "Unable to add RSS subscription:"
-msgstr "無法加入 RSS 訂閱:"
-
-msgid "Unable to add class:"
-msgstr "無法加入類別:"
-
-msgid "Unable to add document to print job."
-msgstr ""
-
-#, c-format
-msgid "Unable to add job for destination \"%s\"."
-msgstr ""
-
-msgid "Unable to add printer:"
-msgstr "無法新增å°è¡¨æ©Ÿï¼š"
-
-msgid "Unable to allocate memory for file types."
-msgstr ""
-
-msgid "Unable to allocate memory for page info"
-msgstr ""
-
-msgid "Unable to allocate memory for pages array"
-msgstr ""
-
-msgid "Unable to cancel RSS subscription:"
-msgstr "ç„¡æ³•å–æ¶ˆ RSS 訂閱:"
-
-msgid "Unable to cancel print job."
-msgstr ""
-
-msgid "Unable to change printer-is-shared attribute:"
-msgstr "無法更改 printer-is-shared 屬性:"
-
-msgid "Unable to change printer:"
-msgstr "無法更改å°è¡¨æ©Ÿï¼š"
-
-msgid "Unable to change server settings:"
-msgstr "無法更改伺æœå™¨è¨­å®šï¼š"
-
-msgid "Unable to configure printer options."
-msgstr ""
-
-msgid "Unable to connect to host."
-msgstr "無法連接主機。"
-
-msgid "Unable to contact printer, queuing on next printer in class."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy 64-bit Windows printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy CUPS printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy PPD file - %s"
-msgstr ""
-
-msgid "Unable to copy PPD file."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to copy interface script - %s"
-msgstr ""
-
-msgid "Unable to copy print file"
-msgstr ""
-
-msgid "Unable to create compressed print file"
-msgstr ""
-
-msgid "Unable to create pipes for filters"
-msgstr ""
-
-msgid "Unable to create printer-uri"
-msgstr ""
-
-msgid "Unable to create temporary file"
-msgstr ""
-
-msgid "Unable to create temporary file:"
-msgstr "無法製作暫存檔:"
-
-msgid "Unable to delete class:"
-msgstr "無法刪除類別:"
-
-msgid "Unable to delete printer:"
-msgstr "無法刪除å°è¡¨æ©Ÿï¼š"
-
-msgid "Unable to do maintenance command:"
-msgstr "無法執行維護指令:"
-
-msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate chain invalid)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (certificate not yet valid)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (expired certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host (host name mismatch)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (peer dropped connection "
-"before responding)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (self-signed certificate)."
-msgstr ""
-
-msgid ""
-"Unable to establish a secure connection to host (untrusted certificate)."
-msgstr ""
-
-msgid "Unable to establish a secure connection to host."
-msgstr ""
-
-msgid "Unable to find destination for job"
-msgstr ""
-
-msgid "Unable to find printer."
-msgstr ""
-
-msgid "Unable to fork filter"
-msgstr ""
-
-msgid "Unable to generate compressed print file"
-msgstr ""
-
-msgid "Unable to get backend exit status."
-msgstr ""
-
-msgid "Unable to get class list:"
-msgstr "無法å–得類別列表:"
-
-msgid "Unable to get class status:"
-msgstr "無法å–得類別狀態:"
-
-msgid "Unable to get list of printer drivers:"
-msgstr "無法å–å¾—å°è¡¨æ©Ÿé©…動程å¼çš„列表:"
-
-msgid "Unable to get printer attributes:"
-msgstr "無法å–å¾—å°è¡¨æ©Ÿå±¬æ€§ï¼š"
-
-msgid "Unable to get printer list:"
-msgstr "無法å–å¾—å°è¡¨æ©Ÿåˆ—表:"
-
-msgid "Unable to get printer status."
-msgstr ""
-
-msgid "Unable to get printer status:"
-msgstr "無法å–å¾—å°è¡¨æ©Ÿç‹€æ…‹ï¼š"
-
-#, c-format
-msgid "Unable to install Windows 2000 printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to install Windows 9x printer driver files (%d)."
-msgstr ""
-
-#, c-format
-msgid "Unable to locate printer \"%s\"."
-msgstr ""
-
-msgid "Unable to locate printer."
-msgstr ""
-
-msgid "Unable to modify class:"
-msgstr "無法修改類別:"
-
-msgid "Unable to modify printer:"
-msgstr "無法修改å°è¡¨æ©Ÿï¼š"
-
-msgid "Unable to move job"
-msgstr "無法移動作業"
-
-msgid "Unable to move jobs"
-msgstr "無法移動作業"
-
-msgid "Unable to open PPD file"
-msgstr "無法打開 PPD 檔案"
-
-msgid "Unable to open PPD file:"
-msgstr "無法打開 PPD 檔案:"
-
-msgid "Unable to open charset file"
-msgstr ""
-
-msgid "Unable to open compressed print file"
-msgstr ""
-
-msgid "Unable to open cupsd.conf file:"
-msgstr "無法打開 cupsd.conf 檔案:"
-
-msgid "Unable to open device file"
-msgstr ""
-
-#, c-format
-msgid "Unable to open document #%d in job #%d."
-msgstr ""
-
-msgid "Unable to open print file"
-msgstr ""
-
-msgid "Unable to open psglyphs"
-msgstr ""
-
-msgid "Unable to open raster file"
-msgstr ""
-
-#, c-format
-msgid "Unable to print %d text columns."
-msgstr ""
-
-#, c-format
-msgid "Unable to print %dx%d text page."
-msgstr ""
-
-msgid "Unable to print test page:"
-msgstr "ç„¡æ³•åˆ—å°æ¸¬è©¦é é¢ï¼š"
-
-msgid "Unable to read print data"
-msgstr ""
-
-msgid "Unable to read print data."
-msgstr ""
-
-#, c-format
-msgid "Unable to run \"%s\": %s"
-msgstr ""
-
-msgid "Unable to see in file"
-msgstr ""
-
-msgid "Unable to send command to printer driver"
-msgstr ""
-
-msgid "Unable to send data to printer."
-msgstr ""
-
-msgid "Unable to send raster data to the driver."
-msgstr ""
-
-#, c-format
-msgid "Unable to set Windows printer driver (%d)."
-msgstr ""
-
-msgid "Unable to set options:"
-msgstr "無法設定é¸é …:"
-
-msgid "Unable to set server default:"
-msgstr "無法設定伺æœå™¨é è¨­å€¼ï¼š"
-
-msgid "Unable to start backend process."
-msgstr ""
-
-msgid "Unable to upload cupsd.conf file:"
-msgstr "無法上傳 cupsd.conf 檔案:"
-
-msgid "Unable to use legacy USB class driver."
-msgstr ""
-
-msgid "Unable to write print data"
-msgstr ""
-
-#, c-format
-msgid "Unable to write uncompressed print data: %s"
-msgstr ""
-
-msgid "Unauthorized"
-msgstr "未授權"
-
-msgid "Units"
-msgstr "å–®ä½"
-
-msgid "Unknown"
-msgstr "未知"
-
-#, c-format
-msgid "Unknown choice \"%s\" for option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown encryption option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown file order: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown format character: \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\" with value \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown print mode: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unknown printer-error-policy \"%s\"."
-msgstr "未知的 printer-error-policy“%sâ€ã€‚"
-
-#, c-format
-msgid "Unknown printer-op-policy \"%s\"."
-msgstr "未知的 printer-op-policy“%sâ€ã€‚"
-
-#, c-format
-msgid "Unknown version option value: \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported baud rate: %s"
-msgstr ""
-
-#, c-format
-msgid "Unsupported brightness value %s, using brightness=100."
-msgstr ""
-
-#, c-format
-msgid "Unsupported character set \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported compression \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported document-format \"%s/%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported format \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "Unsupported gamma value %s, using gamma=1000."
-msgstr ""
-
-msgid "Unsupported margins."
-msgstr ""
-
-msgid "Unsupported media value."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up value %d, using number-up=1."
-msgstr ""
-
-#, c-format
-msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
-msgstr ""
-
-#, c-format
-msgid "Unsupported page-border value %s, using page-border=none."
-msgstr ""
-
-msgid "Unsupported raster data."
-msgstr ""
-
-msgid "Unsupported value type"
-msgstr "ä¸å—支æ´çš„值類型"
-
-msgid "Upgrade Required"
-msgstr "需è¦å‡ç´š"
-
-msgid ""
-"Usage:\n"
-"\n"
-" lpadmin [-h server] -d destination\n"
-" lpadmin [-h server] -x destination\n"
-" lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
-" [-r remove-class] [-v device] [-D description]\n"
-" [-P ppd-file] [-o name=value]\n"
-" [-u allow:user,user] [-u deny:user,user]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job user title copies options [filename]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options [file]"
-msgstr ""
-
-#, c-format
-msgid "Usage: %s job-id user title copies options file"
-msgstr ""
-
-msgid "Usage: convert [ options ]"
-msgstr ""
-
-msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
-msgstr ""
-
-msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
-msgstr ""
-
-msgid "Usage: cupsd [options]"
-msgstr ""
-
-msgid "Usage: cupsfilter [ options ] filename"
-msgstr ""
-
-msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr ""
-
-msgid ""
-"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
-msgstr ""
-
-msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
-msgstr ""
-
-msgid "Usage: lpmove job/src dest"
-msgstr ""
-
-msgid ""
-"Usage: lpoptions [-h server] [-E] -d printer\n"
-" lpoptions [-h server] [-E] [-p printer] -l\n"
-" lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-" lpoptions [-h server] [-E] -x printer"
-msgstr ""
-
-msgid "Usage: lppasswd [-g groupname]"
-msgstr ""
-
-msgid ""
-"Usage: lppasswd [-g groupname] [username]\n"
-" lppasswd [-g groupname] -a [username]\n"
-" lppasswd [-g groupname] -x [username]"
-msgstr ""
-
-msgid ""
-"Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
-msgstr ""
-
-msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: ppdhtml [options] filename.drv >filename.html"
-msgstr ""
-
-msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
-msgstr ""
-
-msgid ""
-"Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
-msgstr ""
-
-msgid "Usage: snmp [host-or-ip-address]"
-msgstr ""
-
-msgid "Value uses indefinite length"
-msgstr "值使用的長度ä¸ç¢ºå®š"
-
-msgid "VarBind uses indefinite length"
-msgstr "VarBind 使用的長度ä¸ç¢ºå®š"
-
-msgid "Version uses indefinite length"
-msgstr "版本使用的長度ä¸ç¢ºå®š"
-
-msgid "Waiting for job to complete."
-msgstr ""
-
-msgid "Waiting for printer to become available."
-msgstr ""
-
-msgid "Waiting for printer to finish."
-msgstr ""
-
-msgid "Warning, no Windows 2000 printer drivers are installed."
-msgstr ""
-
-msgid "Web Interface is Disabled"
-msgstr ""
-
-msgid "Yes"
-msgstr "是"
-
-#, c-format
-msgid ""
-"You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%"
-"s:%d%s</A>."
-msgstr ""
-"您必須使用 URL <A HREF=\"https://%s:%d%s\">https://%s:%d%s</A> å­˜å–æ­¤é é¢ã€‚"
-
-msgid ""
-"Your password must be at least 6 characters long, cannot contain your "
-"username, and must contain at least one letter and number."
-msgstr ""
-
-msgid "ZPL Label Printer"
-msgstr "ZPL 標籤å°è¡¨æ©Ÿ"
-
-msgid "Zebra"
-msgstr "Zebra"
-
-msgid "aborted"
-msgstr "已中止"
-
-msgid "canceled"
-msgstr "已喿¶ˆ"
-
-msgid "completed"
-msgstr "已完æˆ"
-
-msgid "convert: Use the -f option to specify a file to convert."
-msgstr ""
-
-msgid "cups-deviced failed to execute."
-msgstr "無法執行 cups-deviced。"
-
-msgid "cups-driverd failed to execute."
-msgstr "無法執行 cups-driverd。"
-
-#, c-format
-msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
-msgstr ""
-
-msgid "cupsctl: Cannot set Listen or Port directly."
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"%s\""
-msgstr ""
-
-#, c-format
-msgid "cupsctl: Unknown option \"-%c\""
-msgstr ""
-
-msgid "cupsd: Expected config filename after \"-c\" option."
-msgstr ""
-
-msgid "cupsd: Unable to get current directory."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown argument \"%s\" - aborting."
-msgstr ""
-
-#, c-format
-msgid "cupsd: Unknown option \"%c\" - aborting."
-msgstr ""
-
-msgid "cupsd: launchd(8) support not compiled in, running in normal mode."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid document number %d."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Invalid job ID %d."
-msgstr ""
-
-msgid "cupsfilter: Only one filename can be specified."
-msgstr ""
-
-#, c-format
-msgid "cupsfilter: Unable to get job file - %s"
-msgstr ""
-
-msgid "cupstestppd: The -q option is incompatible with the -v option."
-msgstr ""
-
-msgid "cupstestppd: The -v option is incompatible with the -q option."
-msgstr ""
-
-#, c-format
-msgid "device for %s/%s: %s"
-msgstr ""
-
-#, c-format
-msgid "device for %s: %s"
-msgstr ""
-
-msgid "error-index uses indefinite length"
-msgstr "error-index 使用的長度ä¸ç¢ºå®š"
-
-msgid "error-status uses indefinite length"
-msgstr "error-status 使用的長度ä¸ç¢ºå®š"
-
-msgid "held"
-msgstr "æš«åœ"
-
-msgid "help\t\tGet help on commands."
-msgstr ""
-
-msgid "idle"
-msgstr "é–’ç½®"
-
-msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."
-msgstr ""
-
-msgid "ipptool: \"-i\" is incompatible with \"-X\"."
-msgstr ""
-
-msgid "ipptool: \"-n\" is incompatible with \"-X\"."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad URI - %s."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Bad version %s for \"-V\"."
-msgstr ""
-
-msgid "ipptool: Invalid seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: May only specify a single URI."
-msgstr ""
-
-msgid "ipptool: Missing count for \"-n\"."
-msgstr ""
-
-msgid "ipptool: Missing filename for \"-f\"."
-msgstr ""
-
-msgid "ipptool: Missing name=value for \"-d\"."
-msgstr ""
-
-msgid "ipptool: Missing seconds for \"-i\"."
-msgstr ""
-
-msgid "ipptool: Missing timeout for \"-T\"."
-msgstr ""
-
-msgid "ipptool: Missing version for \"-V\"."
-msgstr ""
-
-msgid "ipptool: URI required before test file."
-msgstr ""
-
-#, c-format
-msgid "ipptool: Unknown option \"-%c\"."
-msgstr ""
-
-msgid "job-printer-uri attribute missing."
-msgstr ""
-
-msgid "lpadmin: Class name can only contain printable characters."
-msgstr ""
-
-msgid "lpadmin: Expected PPD after \"-P\" option."
-msgstr ""
-
-msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class after \"-r\" option."
-msgstr ""
-
-msgid "lpadmin: Expected class name after \"-c\" option."
-msgstr ""
-
-msgid "lpadmin: Expected description after \"-D\" option."
-msgstr ""
-
-msgid "lpadmin: Expected device URI after \"-v\" option."
-msgstr ""
-
-msgid "lpadmin: Expected file type(s) after \"-I\" option."
-msgstr ""
-
-msgid "lpadmin: Expected hostname after \"-h\" option."
-msgstr ""
-
-msgid "lpadmin: Expected interface after \"-i\" option."
-msgstr ""
-
-msgid "lpadmin: Expected location after \"-L\" option."
-msgstr ""
-
-msgid "lpadmin: Expected model after \"-m\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name after \"-R\" option."
-msgstr ""
-
-msgid "lpadmin: Expected name=value after \"-o\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer after \"-p\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer name after \"-d\" option."
-msgstr ""
-
-msgid "lpadmin: Expected printer or class after \"-x\" option."
-msgstr ""
-
-msgid "lpadmin: No member names were seen."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is already a member of class %s."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Printer %s is not a member of class %s."
-msgstr ""
-
-msgid "lpadmin: Printer name can only contain printable characters."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to add a printer to the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to connect to server: %s"
-msgstr ""
-
-msgid "lpadmin: Unable to create temporary file"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to delete option:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to remove a printer from the class:\n"
-" You must specify a printer name first."
-msgstr ""
-
-msgid ""
-"lpadmin: Unable to set the printer options:\n"
-" You must specify a printer name first."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown allow/deny option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpadmin: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpadmin: Warning - content type list ignored."
-msgstr ""
-
-msgid "lpc> "
-msgstr "lpc> "
-
-msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
-msgstr ""
-
-msgid "lpinfo: Expected language after \"--language\"."
-msgstr ""
-
-msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-
-msgid "lpinfo: Expected product string after \"--product\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
-msgstr ""
-
-msgid "lpinfo: Expected timeout after \"--timeout\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%c\"."
-msgstr ""
-
-#, c-format
-msgid "lpinfo: Unknown option \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unable to connect to server: %s"
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown argument \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "lpmove: Unknown option \"%c\"."
-msgstr ""
-
-msgid "lpoptions: No printers."
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to get PPD file for %s: %s"
-msgstr ""
-
-#, c-format
-msgid "lpoptions: Unable to open PPD file for %s."
-msgstr ""
-
-msgid "lpoptions: Unknown printer or class."
-msgstr ""
-
-msgid "lppasswd: Only root can add or delete passwords."
-msgstr ""
-
-msgid "lppasswd: Password file busy."
-msgstr ""
-
-msgid "lppasswd: Password file not updated."
-msgstr ""
-
-msgid "lppasswd: Sorry, password doesn't match."
-msgstr ""
-
-msgid "lppasswd: Sorry, password rejected."
-msgstr ""
-
-msgid "lppasswd: Sorry, passwords don't match."
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to copy password string: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to open password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: Unable to write to password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to backup old password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: failed to rename password file: %s"
-msgstr ""
-
-#, c-format
-msgid "lppasswd: user \"%s\" and group \"%s\" do not exist."
-msgstr ""
-
-#, c-format
-msgid ""
-"lpstat: error - %s environment variable names non-existent destination \"%s"
-"\"."
-msgstr ""
-
-#, c-format
-msgid "members of class %s:"
-msgstr ""
-
-msgid "no entries"
-msgstr ""
-
-msgid "no system default destination"
-msgstr ""
-
-msgid "notify-events not specified."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" is already used."
-msgstr ""
-
-#, c-format
-msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
-msgstr ""
-
-msgid "pending"
-msgstr "等待中"
-
-#, c-format
-msgid "ppdc: Adding include directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Adding/updating UI text from %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad boolean value (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad font attribute: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Choice found on line %d of %s with no Option."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a filter definition on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected a program name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected boolean value on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected charset after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice code on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected choice name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected color order for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected compression for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected driver type keyword following DriverType on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected encoding after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected filename after #po %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected group name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected include filename on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected integer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected locale after #po on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after FileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after Manufacturer on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after MediaSize on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after ModelName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name after PCFileName on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Installable on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option name/text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option section on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected option type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected override field after Resolution on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected quoted string on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected real number on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
-"of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected selector after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected status after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Copyright on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected string after Version on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected two option names on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected value after %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Expected version after Font on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid #include/#po filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid cost for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid empty program name for filter on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading driver information file \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages for locale \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Loading messages from \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #endif at end of \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Missing #if on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Need a msgid line before any translation strings on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: No message catalog provided for locale %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s defined in two different groups on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Option constraint must *name on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Too many nested #if's on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create PPD file \"%s\" - %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output directory %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to create output pipes: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to execute cupstestppd: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find #po file %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to find localization for \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to load localization file \"%s\" - %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unable to open %s: %s"
-msgstr ""
-
-#, c-format
-msgid "ppdc: Undefined variable (%s) on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unexpected text on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown driver type %s on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown message catalog format for \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid ""
-"ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Unterminated string starting with %c on line %d of %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Warning - overlapping filename \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing %s."
-msgstr ""
-
-#, c-format
-msgid "ppdc: Writing PPD files to directory \"%s\"."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Ignoring PPD file %s."
-msgstr ""
-
-#, c-format
-msgid "ppdmerge: Unable to backup %s to %s - %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s now printing %s-%d. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s disabled since %s -"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s is idle. enabled since %s"
-msgstr ""
-
-#, c-format
-msgid "printer %s/%s now printing %s-%d. enabled since %s"
-msgstr ""
-
-msgid "processing"
-msgstr "正在處ç†"
-
-#, c-format
-msgid "request id is %s-%d (%d file(s))"
-msgstr ""
-
-msgid "request-id uses indefinite length"
-msgstr "request-id 使用的長度ä¸ç¢ºå®š"
-
-msgid "scheduler is not running"
-msgstr ""
-
-msgid "scheduler is running"
-msgstr ""
-
-#, c-format
-msgid "stat of %s failed: %s"
-msgstr "啟動 %s 失敗:%s"
-
-msgid "status\t\tShow status of daemon and queue."
-msgstr ""
-
-msgid "stopped"
-msgstr "å·²åœæ­¢"
-
-#, c-format
-msgid "system default destination: %s"
-msgstr ""
-
-#, c-format
-msgid "system default destination: %s/%s"
-msgstr ""
-
-msgid "unknown"
-msgstr "未知"
-
-msgid "untitled"
-msgstr "未命å"
-
-msgid "variable-bindings uses indefinite length"
-msgstr "variable-bindings 使用的長度ä¸ç¢ºå®š"
-
-#~ msgid "\t\t(all)\n"
-#~ msgstr "\t\t(全部)\n"
-
-#~ msgid "\t\t(none)\n"
-#~ msgstr "\t\t(無)\n"
-
-#~ msgid "\t%d entries\n"
-#~ msgstr "\t%d 個項目\n"
-
-#~ msgid "\tAfter fault: continue\n"
-#~ msgstr "\t出錯後:繼續\n"
-
-#~ msgid "\tAlerts:"
-#~ msgstr "\tWARNING: "
-
-#~ msgid "\tBanner required\n"
-#~ msgstr "\téœ€è¦æ¨™èªžï¼š\n"
-
-#~ msgid "\tCharset sets:\n"
-#~ msgstr "\t字元集:\n"
-
-#~ msgid "\tConnection: direct\n"
-#~ msgstr "\t連線:直接\n"
-
-#~ msgid "\tConnection: remote\n"
-#~ msgstr "\t連線:é ç«¯\n"
-
-#~ msgid "\tDefault page size:\n"
-#~ msgstr "\té è¨­é é¢å¤§å°ï¼š\n"
-
-#~ msgid "\tDefault pitch:\n"
-#~ msgstr "\té è¨­éŸ³é«˜ï¼š\n"
-
-#~ msgid "\tDefault port settings:\n"
-#~ msgstr "\té è¨­é€£æŽ¥åŸ è¨­å®šï¼š\n"
-
-#~ msgid "\tDescription: %s\n"
-#~ msgstr "\tæè¿°ï¼š%s\n"
-
-#~ msgid ""
-#~ "\tForm mounted:\n"
-#~ "\tContent types: any\n"
-#~ "\tPrinter types: unknown\n"
-#~ msgstr ""
-#~ "\tå·²è£è¼‰çš„表單:\n"
-#~ "\t內容類型:任æ„\n"
-#~ "\tå°è¡¨æ©Ÿé¡žåž‹ï¼šæœªçŸ¥\n"
-
-#~ msgid "\tForms allowed:\n"
-#~ msgstr "\tå…許的表單:\n"
-
-#~ msgid "\tInterface: %s.ppd\n"
-#~ msgstr "\t介é¢ï¼š%s.ppd\n"
-
-#~ msgid "\tInterface: %s/interfaces/%s\n"
-#~ msgstr "\t介é¢ï¼š%s/interfaces/%s\n"
-
-#~ msgid "\tInterface: %s/ppd/%s.ppd\n"
-#~ msgstr "\t介é¢ï¼š%s/ppd/%s.ppd\n"
-
-#~ msgid "\tLocation: %s\n"
-#~ msgstr "\tä½ç½®ï¼š%s\n"
-
-#~ msgid "\tOn fault: no alert\n"
-#~ msgstr "\t出錯時:無æç¤º\n"
-
-#~ msgid "\tUsers allowed:\n"
-#~ msgstr "\tå…許的使用者:\n"
-
-#~ msgid "\tUsers denied:\n"
-#~ msgstr "\t拒絕的使用者:\n"
-
-#~ msgid "\tdaemon present\n"
-#~ msgstr "\tç¾æœ‰çš„æœå‹™ç¨‹å¼\n"
-
-#~ msgid "\tno entries\n"
-#~ msgstr "\tç„¡é …ç›®\n"
-
-#~ msgid "\tprinter is on device '%s' speed -1\n"
-#~ msgstr "\tå°è¡¨æ©Ÿç‚ºè¨­å‚™ '%s' 的速度 -1\n"
-
-#~ msgid "\tprinting is disabled\n"
-#~ msgstr "\tå·²åœç”¨åˆ—å°\n"
-
-#~ msgid "\tprinting is enabled\n"
-#~ msgstr "\t已啟用列å°\n"
-
-#~ msgid "\tqueued for %s\n"
-#~ msgstr "\t%s 已佇列\n"
-
-#~ msgid "\tqueuing is disabled\n"
-#~ msgstr "\tå·²åœç”¨ä½‡åˆ—\n"
-
-#~ msgid "\tqueuing is enabled\n"
-#~ msgstr "\t已啟用佇列\n"
-
-#~ msgid "\treason unknown\n"
-#~ msgstr "\t原因未知\n"
-
-#~ msgid ""
-#~ "\n"
-#~ " DETAILED CONFORMANCE TEST RESULTS\n"
-#~ msgstr ""
-#~ "\n"
-#~ " è©³ç´°çš„ç›¸ä¼¼åº¦æ¸¬è©¦çµæžœ\n"
-
-#~ msgid " REF: Page 15, section 3.1.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 15 é ï¼Œç« ç¯€ 3.1。\n"
-
-#~ msgid " REF: Page 15, section 3.2.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 15 é ï¼Œç« ç¯€ 3.2。\n"
-
-#~ msgid " REF: Page 19, section 3.3.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 19 é ï¼Œç« ç¯€ 3.3。\n"
-
-#~ msgid " REF: Page 20, section 3.4.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 20 é ï¼Œç« ç¯€ 3.4。\n"
-
-#~ msgid " REF: Page 27, section 3.5.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 27 é ï¼Œç« ç¯€ 3.5。\n"
-
-#~ msgid " REF: Page 42, section 5.2.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 42 é ï¼Œç« ç¯€ 5.2。\n"
-
-#~ msgid " REF: Pages 16-17, section 3.2.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 16-17 é ï¼Œç« ç¯€ 3.2。\n"
-
-#~ msgid " REF: Pages 42-45, section 5.2.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 42-45 é ï¼Œç« ç¯€ 5.2。\n"
-
-#~ msgid " REF: Pages 45-46, section 5.2.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 45-46 é ï¼Œç« ç¯€ 5.2。\n"
-
-#~ msgid " REF: Pages 48-49, section 5.2.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 48-49 é ï¼Œç« ç¯€ 5.2。\n"
-
-#~ msgid " REF: Pages 52-54, section 5.2.\n"
-#~ msgstr " åƒè€ƒï¼šç¬¬ 52-54 é ï¼Œç« ç¯€ 5.2。\n"
-
-#~ msgid " %-39.39s %.0f bytes\n"
-#~ msgstr " %-39.39s %.0f byte\n"
-
-#~ msgid " PASS Default%s\n"
-#~ msgstr " é€šéŽ Default%s\n"
-
-#~ msgid " PASS DefaultImageableArea\n"
-#~ msgstr " é€šéŽ DefaultImageableArea\n"
-
-#~ msgid " PASS DefaultPaperDimension\n"
-#~ msgstr " é€šéŽ DefaultPaperDimension\n"
-
-#~ msgid " PASS FileVersion\n"
-#~ msgstr " é€šéŽ FileVersion\n"
-
-#~ msgid " PASS FormatVersion\n"
-#~ msgstr " é€šéŽ FormatVersion\n"
-
-#~ msgid " PASS LanguageEncoding\n"
-#~ msgstr " é€šéŽ LanguageEncoding\n"
-
-#~ msgid " PASS LanguageVersion\n"
-#~ msgstr " é€šéŽ LanguageVersion\n"
-
-#~ msgid " PASS Manufacturer\n"
-#~ msgstr " é€šéŽ Manufacturer\n"
-
-#~ msgid " PASS ModelName\n"
-#~ msgstr " é€šéŽ ModelName\n"
-
-#~ msgid " PASS NickName\n"
-#~ msgstr " é€šéŽ NickName\n"
-
-#~ msgid " PASS PCFileName\n"
-#~ msgstr " é€šéŽ PCFileName\n"
-
-#~ msgid " PASS PSVersion\n"
-#~ msgstr " é€šéŽ PSVersion\n"
-
-#~ msgid " PASS PageRegion\n"
-#~ msgstr " é€šéŽ PageRegion\n"
-
-#~ msgid " PASS PageSize\n"
-#~ msgstr " é€šéŽ PageSize\n"
-
-#~ msgid " PASS Product\n"
-#~ msgstr " é€šéŽ Product\n"
-
-#~ msgid " PASS ShortNickName\n"
-#~ msgstr " é€šéŽ ShortNickName\n"
-
-#~ msgid ""
-#~ " WARN \"%s %s\" conflicts with \"%s %s\"\n"
-#~ " (constraint=\"%s %s %s %s\")\n"
-#~ msgstr ""
-#~ " 警告 “%s %sâ€èˆ‡â€œ%s %sâ€è¡çª\n"
-#~ " (é™åˆ¶=“%s %s %s %sâ€ï¼‰\n"
-
-#~ msgid " WARN %s has no corresponding options!\n"
-#~ msgstr " 警告 %s æ²’æœ‰å°æ‡‰çš„é¸é …ï¼\n"
-
-#~ msgid ""
-#~ " WARN %s shares a common prefix with %s\n"
-#~ " REF: Page 15, section 3.2.\n"
-#~ msgstr ""
-#~ " 警告 %s 與 %s 共用一般的å‰ç½®ç¢¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 15 é ï¼Œç« ç¯€ 3.2。\n"
-
-#~ msgid " WARN Default choices conflicting!\n"
-#~ msgstr " 警告 é è¨­çš„é¸é …è¡çªï¼\n"
-
-#~ msgid ""
-#~ " WARN Duplex option keyword %s may not work as expected and "
-#~ "should be named Duplex!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " 警告 兩用è£ç´™åŒ£é¸é …的關éµå­— %s ä¸èƒ½å¦‚é æœŸé‹ä½œï¼Œè€Œæ‡‰è©²å‘½å為 "
-#~ "Duplexï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 122 é ï¼Œç« ç¯€ 5.17\n"
-
-#~ msgid ""
-#~ " WARN File contains a mix of CR, LF, and CR LF line endings!\n"
-#~ msgstr " 警告 æª”æ¡ˆåŒ…å« CRã€LF å’Œ CR LF 的行çµå°¾ï¼\n"
-
-#~ msgid ""
-#~ " WARN LanguageEncoding required by PPD 4.3 spec.\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " 警告 PPD 4.3 è¦æ ¼è¦æ±‚有 LanguageEncoding\n"
-#~ " åƒè€ƒï¼šç¬¬ 56-57 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid " WARN Line %d only contains whitespace!\n"
-#~ msgstr " 警告 第 %d 行åªåŒ…å«ç©ºç™½ï¼\n"
-
-#~ msgid ""
-#~ " WARN Manufacturer required by PPD 4.3 spec.\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " 警告 PD 4.3 è¦æ ¼è¦æ±‚有 Manufacturer\n"
-#~ " åƒè€ƒï¼šç¬¬ 58-59 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid " WARN Missing APDialogExtension file \"%s\"\n"
-#~ msgstr " 警告 éºå¤± APDialogExtension 檔案“%sâ€\n"
-
-#~ msgid " WARN Missing APPrinterIconPath file \"%s\"\n"
-#~ msgstr " 警告 éºå¤± APPrinterIconPath 檔案“%sâ€\n"
-
-#~ msgid ""
-#~ " WARN Non-Windows PPD files should use lines ending with only "
-#~ "LF, not CR LF!\n"
-#~ msgstr ""
-#~ " 警告 éž Windows PPD æª”æ¡ˆæ‡‰è©²ä½¿ç”¨åƒ…å«æœ‰ LF 的行çµå°¾ï¼Œè€Œä¸æ˜¯ CR "
-#~ "LFï¼\n"
-
-#~ msgid ""
-#~ " WARN Obsolete PPD version %.1f!\n"
-#~ " REF: Page 42, section 5.2.\n"
-#~ msgstr ""
-#~ " 警告 PPD 版本 %.1f å·²éŽæ™‚ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 42 é ï¼Œç« ç¯€ 5.2。\n"
-
-#~ msgid ""
-#~ " WARN PCFileName longer than 8.3 in violation of PPD spec.\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " 警告 PCFileName 長度大於 8.3,這é•å了 PPD è¦æ ¼ã€‚\n"
-#~ " åƒè€ƒï¼šç¬¬ 61-62 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains PJL but JCL attributes are not set.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " 警告 通訊å”å®šåŒ…å« PJL,但未設定 JCL 屬性。\n"
-#~ " åƒè€ƒï¼šç¬¬ 78-79 é ï¼Œç« ç¯€ 5.7。\n"
-
-#~ msgid ""
-#~ " WARN Protocols contains both PJL and BCP; expected TBCP.\n"
-#~ " REF: Pages 78-79, section 5.7.\n"
-#~ msgstr ""
-#~ " 警告 通訊å”å®šåŒæ™‚åŒ…å« PJL å’Œ BCP;應該為 TBCP。\n"
-#~ " åƒè€ƒï¼šç¬¬ 78-79 é ï¼Œç« ç¯€ 5.7。\n"
-
-#~ msgid ""
-#~ " WARN ShortNickName required by PPD 4.3 spec.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " 警告 PPD 4.3 è¦æ ¼è¦æ±‚有 ShortNickName\n"
-#~ " åƒè€ƒï¼šç¬¬ 64-65 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid " %s %s %s does not exist!\n"
-#~ msgstr " %s %s %s ä¸å­˜åœ¨ï¼\n"
-
-#~ msgid ""
-#~ " %s Bad %s choice %s!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s %s é¸é … %s 錯誤ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 122 é ï¼Œç« ç¯€ 5.17\n"
-
-#~ msgid " %s Bad UTF-8 \"%s\" translation string for option %s!\n"
-#~ msgstr " %s 下列項目的 UTF-8“%sâ€è½‰æ›å­—串ERROR: é¸é … %sï¼\n"
-
-#~ msgid ""
-#~ " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr " %s 下列項目的 UTF-8“%sâ€è½‰æ›å­—串ERROR: é¸é … %s,é¸é … %sï¼\n"
-
-#~ msgid " %s Bad cupsFilter value \"%s\"!\n"
-#~ msgstr " %s cupsFilter 值“%sâ€éŒ¯èª¤ï¼\n"
-
-#~ msgid " %s Bad cupsICCProfile %s!\n"
-#~ msgstr " %s cupsICCProfile %s 錯誤ï¼\n"
-
-#~ msgid " %s Bad cupsPreFilter value \"%s\"!\n"
-#~ msgstr " %s cupsPreFilter 值“%sâ€éŒ¯èª¤ï¼\n"
-
-#~ msgid " %s Bad cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s cupsUIConstraints %s:“%sâ€éŒ¯èª¤ï¼\n"
-
-#~ msgid " %s Bad language \"%s\"!\n"
-#~ msgstr " %s 語言“%sâ€éŒ¯èª¤ï¼\n"
-
-#~ msgid " %s Empty cupsUIConstraints %s!\n"
-#~ msgstr " %s cupsUIConstraints %s 為空白ï¼\n"
-
-#~ msgid " %s Missing \"%s\" translation string for option %s!\n"
-#~ msgstr " %s 下列項目的“%sâ€è½‰æ›å­—串éºå¤±ï¼šé¸é … %sï¼\n"
-
-#~ msgid ""
-#~ " %s Missing \"%s\" translation string for option %s, choice %s!\n"
-#~ msgstr " %s 下列項目的“%sâ€è½‰æ›å­—串éºå¤±ï¼šé¸é … %s,é¸é … %sï¼\n"
-
-#~ msgid ""
-#~ " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr ""
-#~ " %s 下列項目中éºå¤±é¸é … *%s %s:UIConstraints“*%s %s *%s %sâ€ï¼\n"
-
-#~ msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s 下列項目中éºå¤±é¸é … *%s %s:cupsUIConstraints %s:“%sâ€ï¼\n"
-
-#~ msgid " %s Missing cupsFilter file \"%s\"\n"
-#~ msgstr " %s éºå¤± cupsFilter 檔案“%sâ€\n"
-
-#~ msgid " %s Missing cupsICCProfile file \"%s\"!\n"
-#~ msgstr " %s éºå¤± cupsICCProfile 檔案“%sâ€ï¼\n"
-
-#~ msgid " %s Missing cupsPreFilter file \"%s\"\n"
-#~ msgstr " %s éºå¤± cupsPreFilter 檔案“%sâ€\n"
-
-#~ msgid " %s Missing cupsUIResolver %s!\n"
-#~ msgstr " %s éºå¤± cupsUIResolver %sï¼\n"
-
-#~ msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"!\n"
-#~ msgstr " %s 下列項目中éºå¤±é¸é … %s:UIConstraints“*%s %s *%s %sâ€ï¼\n"
-
-#~ msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"!\n"
-#~ msgstr " %s 下列項目中éºå¤±é¸é … %s:cupsUIConstraints %s:“%sâ€ï¼\n"
-
-#~ msgid " %s No base translation \"%s\" is included in file!\n"
-#~ msgstr " %s 檔案中ä¸åŒ…括基礎轉æ›â€œ%sâ€ï¼\n"
-
-#~ msgid ""
-#~ " %s REQUIRED %s does not define choice None!\n"
-#~ " REF: Page 122, section 5.17\n"
-#~ msgstr ""
-#~ " %s REQUIRED %s 未定義é¸é … Noneï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 122 é ï¼Œç« ç¯€ 5.17\n"
-
-#~ msgid " %s cupsICCProfile %s hash value collides with %s!\n"
-#~ msgstr " %s cupsICCProfile %s 雜湊值與 %s è¡çªï¼\n"
-
-#~ msgid " %s cupsUIResolver %s causes a loop!\n"
-#~ msgstr " %s cupsUIResolver %s 造æˆè¿´åœˆï¼\n"
-
-#~ msgid " **FAIL** %s choice names %s and %s differ only by case!\n"
-#~ msgstr " **失敗** %s é¸é …å稱 %s å’Œ %s 僅在æŸäº›æƒ…æ³ä¸‹ä¸åŒï¼\n"
-
-#~ msgid ""
-#~ " **FAIL** %s must be 1284DeviceID!\n"
-#~ " REF: Page 72, section 5.5\n"
-#~ msgstr ""
-#~ " **失敗** %s 必須為 1284DeviceIDï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 72 é ï¼Œç« ç¯€ 5.5\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Default%s %s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **失敗** Default%s %s 錯誤\n"
-#~ " åƒè€ƒï¼šç¬¬ 40 é ï¼Œç« ç¯€ 4.5。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultImageableArea %s!\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** DefaultImageableArea %s 錯誤ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 102 é ï¼Œç« ç¯€ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD DefaultPaperDimension %s!\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** DefaultPaperDimension %s 錯誤ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 103 é ï¼Œç« ç¯€ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD JobPatchFile attribute in file\n"
-#~ " REF: Page 24, section 3.4.\n"
-#~ msgstr ""
-#~ " **失敗** 檔案中的 JobPatchFile 屬性錯誤\n"
-#~ " åƒè€ƒï¼šç¬¬ 24 é ï¼Œç« ç¯€ 3.4。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"HP\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **失敗** Manufacturer 錯誤(應該為“HPâ€ï¼‰\n"
-#~ " åƒè€ƒï¼šç¬¬ 211 é ï¼Œè¡¨æ ¼ D.1。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Manufacturer (should be \"Oki\")\n"
-#~ " REF: Page 211, table D.1.\n"
-#~ msgstr ""
-#~ " **失敗** Manufacturer 錯誤(應該為“Okiâ€ï¼‰\n"
-#~ " åƒè€ƒï¼šç¬¬ 211 é ï¼Œè¡¨æ ¼ D.1。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** ModelName 錯誤 - 字串中ä¸å…許“%câ€ã€‚\n"
-#~ " åƒè€ƒï¼šç¬¬ 59-60 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD PSVersion - not \"(string) int\".\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** PSVersion 錯誤 - 䏿˜¯â€œ(string) intâ€ã€‚\n"
-#~ " åƒè€ƒï¼šç¬¬ 62-64 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD Product - not \"(string)\".\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** Product 錯誤 - 䏿˜¯â€œ(string)â€ã€‚\n"
-#~ " åƒè€ƒï¼šç¬¬ 62 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** BAD ShortNickName - longer than 31 chars.\n"
-#~ " REF: Pages 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** ShortNickName 錯誤 - 長度大於 31 個字元。\n"
-#~ " åƒè€ƒï¼šç¬¬ 64-65 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad %s choice %s!\n"
-#~ " REF: Page 84, section 5.9\n"
-#~ msgstr ""
-#~ " **失敗** %s é¸é … %s 錯誤ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 84 é ï¼Œç« ç¯€ 5.9\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FileVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** FileVersion“%sâ€éŒ¯èª¤\n"
-#~ " åƒè€ƒï¼šç¬¬ 56 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** Bad FormatVersion \"%s\"\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** FormatVersion“%sâ€éŒ¯èª¤\n"
-#~ " åƒè€ƒï¼šç¬¬ 56 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1!\n"
-#~ msgstr " **失敗** LanguageEncoding %s 錯誤 - 必須為 ISOLatin1ï¼\n"
-
-#~ msgid " **FAIL** Bad LanguageVersion %s - must be English!\n"
-#~ msgstr " **失敗** LanguageVersion %s 錯誤 - 必須為英語ï¼\n"
-
-#~ msgid " **FAIL** Default option code cannot be interpreted: %s\n"
-#~ msgstr " **失敗** 無法解譯é è¨­é¸é …代碼:%s\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s choice %s "
-#~ "contains 8-bit characters!\n"
-#~ msgstr " **失敗** é¸é … %s é¸é … %s çš„é è¨­è½‰æ›å­—ä¸²åŒ…å« 8 ä½å…ƒå­—å…ƒï¼\n"
-
-#~ msgid ""
-#~ " **FAIL** Default translation string for option %s contains 8-bit "
-#~ "characters!\n"
-#~ msgstr " **失敗** é¸é … %s çš„é è¨­è½‰æ›å­—ä¸²åŒ…å« 8 ä½å…ƒå­—å…ƒï¼\n"
-
-#~ msgid " **FAIL** Group names %s and %s differ only by case!\n"
-#~ msgstr " **失敗** 群組å稱 %s å’Œ %s 僅在æŸäº›æƒ…æ³ä¸‹ä¸åŒï¼\n"
-
-#~ msgid " **FAIL** Multiple occurrences of %s choice name %s!\n"
-#~ msgstr " **失敗** 出ç¾äº†å¤šå€‹ %s é¸é …å稱 %sï¼\n"
-
-#~ msgid " **FAIL** Option names %s and %s differ only by case!\n"
-#~ msgstr " **失敗** é¸é …å稱 %s å’Œ %s 僅在æŸäº›æƒ…æ³ä¸‹ä¸åŒï¼\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Default%s\n"
-#~ " REF: Page 40, section 4.5.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ Default%s\n"
-#~ " åƒè€ƒï¼šç¬¬ 40 é ï¼Œç« ç¯€ 4.5。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultImageableArea\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ DefaultImageableArea\n"
-#~ " åƒè€ƒï¼šç¬¬ 102 é ï¼Œç« ç¯€ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED DefaultPaperDimension\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ DefaultPaperDimension\n"
-#~ " åƒè€ƒï¼šç¬¬ 103 é ï¼Œç« ç¯€ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FileVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ FileVersion\n"
-#~ " åƒè€ƒï¼šç¬¬ 56 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED FormatVersion\n"
-#~ " REF: Page 56, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ FormatVersion\n"
-#~ " åƒè€ƒï¼šç¬¬ 56 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ImageableArea for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 102, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** PageSize %s éœ€è¦ ImageableArea\n"
-#~ " åƒè€ƒï¼šç¬¬ 41 é ï¼Œç« ç¯€ 5。\n"
-#~ " åƒè€ƒï¼šç¬¬ 102 é ï¼Œç« ç¯€ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageEncoding\n"
-#~ " REF: Pages 56-57, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ LanguageEncoding\n"
-#~ " åƒè€ƒï¼šç¬¬ 56-57 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED LanguageVersion\n"
-#~ " REF: Pages 57-58, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ LanguageVersion\n"
-#~ " åƒè€ƒï¼šç¬¬ 57-58 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Manufacturer\n"
-#~ " REF: Pages 58-59, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ Manufacturer\n"
-#~ " åƒè€ƒï¼šç¬¬ 58-59 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ModelName\n"
-#~ " REF: Pages 59-60, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ ModelName\n"
-#~ " åƒè€ƒï¼šç¬¬ 59-60 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED NickName\n"
-#~ " REF: Page 60, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ NickName\n"
-#~ " åƒè€ƒï¼šç¬¬ 60 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PCFileName\n"
-#~ " REF: Pages 61-62, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ PCFileName\n"
-#~ " åƒè€ƒï¼šç¬¬ 61-62 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PSVersion\n"
-#~ " REF: Pages 62-64, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ PSVersion\n"
-#~ " åƒè€ƒï¼šç¬¬ 62-64 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageRegion\n"
-#~ " REF: Page 100, section 5.14.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ PageRegion\n"
-#~ " åƒè€ƒï¼šç¬¬ 100 é ï¼Œç« ç¯€ 5.14。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 99, section 5.14.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ PageSize\n"
-#~ " åƒè€ƒï¼šç¬¬ 41 é ï¼Œç« ç¯€ 5。\n"
-#~ " åƒè€ƒï¼šç¬¬ 99 é ï¼Œç« ç¯€ 5.14。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PageSize\n"
-#~ " REF: Pages 99-100, section 5.14.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ PageSize\n"
-#~ " åƒè€ƒï¼šç¬¬ 99-100 é ï¼Œç« ç¯€ 5.14。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED PaperDimension for PageSize %s\n"
-#~ " REF: Page 41, section 5.\n"
-#~ " REF: Page 103, section 5.15.\n"
-#~ msgstr ""
-#~ " **失敗** PageSize %s éœ€è¦ PaperDimension\n"
-#~ " åƒè€ƒï¼šç¬¬ 41 é ï¼Œç« ç¯€ 5。\n"
-#~ " åƒè€ƒï¼šç¬¬ 103 é ï¼Œç« ç¯€ 5.15。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED Product\n"
-#~ " REF: Page 62, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ Product\n"
-#~ " åƒè€ƒï¼šç¬¬ 62 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid ""
-#~ " **FAIL** REQUIRED ShortNickName\n"
-#~ " REF: Page 64-65, section 5.3.\n"
-#~ msgstr ""
-#~ " **失敗** éœ€è¦ ShortNickName\n"
-#~ " åƒè€ƒï¼šç¬¬ 64-65 é ï¼Œç« ç¯€ 5.3。\n"
-
-#~ msgid " %d ERRORS FOUND\n"
-#~ msgstr " ç™¼ç¾ %d 個錯誤\n"
-
-#~ msgid ""
-#~ " Bad %%%%BoundingBox: on line %d!\n"
-#~ " REF: Page 39, %%%%BoundingBox:\n"
-#~ msgstr ""
-#~ " 第 %d 行的 %%%%BoundingBox: 錯誤ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 39 é ï¼Œ%%%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Page: on line %d!\n"
-#~ " REF: Page 53, %%%%Page:\n"
-#~ msgstr ""
-#~ " 第 %d 行的 %%%%Page: 錯誤ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 53 é ï¼Œ%%%%Page:\n"
-
-#~ msgid ""
-#~ " Bad %%%%Pages: on line %d!\n"
-#~ " REF: Page 43, %%%%Pages:\n"
-#~ msgstr ""
-#~ " 第 %d 行的 %%%%Pages: 錯誤ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 43 é ï¼Œ%%%%Pages:\n"
-
-#~ msgid ""
-#~ " Line %d is longer than 255 characters (%d)!\n"
-#~ " REF: Page 25, Line Length\n"
-#~ msgstr ""
-#~ " 第 %d 行長度大於 255 個字元(%d)ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 25 é ï¼Œè¡Œé•·åº¦\n"
-
-#~ msgid ""
-#~ " Missing %!PS-Adobe-3.0 on first line!\n"
-#~ " REF: Page 17, 3.1 Conforming Documents\n"
-#~ msgstr ""
-#~ " 第一行éºå¤± %!PS-Adobe-3.0ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 17 é ï¼Œ3.1 ç¢ºèªæ–‡ä»¶\n"
-
-#~ msgid ""
-#~ " Missing %%EndComments comment!\n"
-#~ " REF: Page 41, %%EndComments\n"
-#~ msgstr ""
-#~ " éºå¤± %%EndComments 註解ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 41 é ï¼Œ%%EndComments\n"
-
-#~ msgid ""
-#~ " Missing or bad %%BoundingBox: comment!\n"
-#~ " REF: Page 39, %%BoundingBox:\n"
-#~ msgstr ""
-#~ " %%BoundingBox﹕ 註解éºå¤±æˆ–錯誤ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 39 é ï¼Œ%%BoundingBox:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Page: comments!\n"
-#~ " REF: Page 53, %%Page:\n"
-#~ msgstr ""
-#~ " %%Page: 註解éºå¤±æˆ–錯誤ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 53 é ï¼Œ%%Page:\n"
-
-#~ msgid ""
-#~ " Missing or bad %%Pages: comment!\n"
-#~ " REF: Page 43, %%Pages:\n"
-#~ msgstr ""
-#~ " %%Pages: 註解éºå¤±æˆ–錯誤ï¼\n"
-#~ " åƒè€ƒï¼šç¬¬ 43 é ï¼Œ%%Pages:\n"
-
-#~ msgid " NO ERRORS FOUND\n"
-#~ msgstr " 未發ç¾éŒ¯èª¤\n"
-
-#~ msgid " Saw %d lines that exceeded 255 characters!\n"
-#~ msgstr " ç™¼ç¾ %d 行超出 255 個字元ï¼\n"
-
-#~ msgid " Too many %%BeginDocument comments!\n"
-#~ msgstr " %%BeginDocument 註解太多ï¼\n"
-
-#~ msgid " Too many %%EndDocument comments!\n"
-#~ msgstr " %%EndDocument 註解太多ï¼\n"
-
-#~ msgid " Warning: file contains binary data!\n"
-#~ msgstr " WARNING: 檔案包å«äºŒé€²ä½è³‡æ–™ï¼\n"
-
-#~ msgid " Warning: no %%EndComments comment in file!\n"
-#~ msgstr " WARNING: 檔案中沒有 %%EndComments 註解ï¼\n"
-
-#~ msgid " Warning: obsolete DSC version %.1f in file!\n"
-#~ msgstr " WARNING: 檔案中的 DSC 版本 %.1f å·²éŽæ™‚ï¼\n"
-
-#~ msgid " FAIL\n"
-#~ msgstr " 失敗\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s\n"
-#~ msgstr ""
-#~ " 失敗\n"
-#~ " **失敗** 無法打開 PPD 檔案 - %s\n"
-
-#~ msgid ""
-#~ " FAIL\n"
-#~ " **FAIL** Unable to open PPD file - %s on line %d.\n"
-#~ msgstr ""
-#~ " 失敗\n"
-#~ " **失敗** 無法打開 PPD 檔案 - 第 %2$d 行的 %1$s。\n"
-
-#~ msgid " PASS\n"
-#~ msgstr " 通éŽ\n"
-
-#~ msgid "#10 Envelope"
-#~ msgstr "#10 ä¿¡å°"
-
-#~ msgid "#11 Envelope"
-#~ msgstr "#11 ä¿¡å°"
-
-#~ msgid "#12 Envelope"
-#~ msgstr "#12 ä¿¡å°"
-
-#~ msgid "#14 Envelope"
-#~ msgstr "#14 ä¿¡å°"
-
-#~ msgid "#9 Envelope"
-#~ msgstr "#9 ä¿¡å°"
-
-#~ msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
-#~ msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f byte\n"
-
-#~ msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
-#~ msgstr "%-7s %-7.7s %-7d %-31.31s %.0f byte\n"
-
-#~ msgid "%s accepting requests since %s\n"
-#~ msgstr "%s 自 %s 後接å—請求\n"
-
-#~ msgid "%s is not implemented by the CUPS version of lpc.\n"
-#~ msgstr "%s 未由 CUPS 版本 lpc 執行。\n"
-
-#~ msgid "%s is not ready\n"
-#~ msgstr "%s 尚未備妥\n"
-
-#~ msgid "%s is ready\n"
-#~ msgstr "%s 已備妥\n"
-
-#~ msgid "%s is ready and printing\n"
-#~ msgstr "%s 已備妥列å°\n"
-
-#~ msgid ""
-#~ "%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s 自 %s å¾Œä¸æŽ¥å—請求 -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s not supported!"
-#~ msgstr "䏿”¯æ´ %sï¼"
-
-#~ msgid "%s/%s accepting requests since %s\n"
-#~ msgstr "%s/%s 自 %s 後接å—請求\n"
-
-#~ msgid ""
-#~ "%s/%s not accepting requests since %s -\n"
-#~ "\t%s\n"
-#~ msgstr ""
-#~ "%s/%s 自 %s å¾Œä¸æŽ¥å—請求 -\n"
-#~ "\t%s\n"
-
-#~ msgid "%s: %-33.33s [job %d localhost]\n"
-#~ msgstr "%s:%-33.33s [作業 %d localhost]\n"
-
-#~ msgid "%s: %s failed: %s\n"
-#~ msgstr "%s:%s 失敗:%s\n"
-
-#~ msgid "%s: Don't know what to do!\n"
-#~ msgstr "%s:ä¸çŸ¥é“è¦åŸ·è¡Œçš„動作ï¼\n"
-
-#~ msgid ""
-#~ "%s: Error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%s:錯誤 - %s 環境變數å稱中有ä¸å­˜åœ¨çš„目的地“%sâ€ï¼\n"
-
-#~ msgid "%s: Error - bad job ID!\n"
-#~ msgstr "%s:錯誤 - 作業 ID 錯誤ï¼\n"
-
-#~ msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
-#~ msgstr "%s:錯誤 - ç„¡æ³•åˆ—å°æª”æ¡ˆä¸¦åŒæ™‚更改作業ï¼\n"
-
-#~ msgid ""
-#~ "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
-#~ msgstr "%s:錯誤 - 在æä¾›æª”案或作業 ID 的情æ³ä¸‹ç„¡æ³•從 stdin 進行列å°ï¼\n"
-
-#~ msgid "%s: Error - expected character set after '-S' option!\n"
-#~ msgstr "%s:錯誤 - '-S' é¸é …後é¢é æœŸç‚ºå­—元集ï¼\n"
-
-#~ msgid "%s: Error - expected content type after '-T' option!\n"
-#~ msgstr "%s:錯誤 - '-T' é¸é …後é¢é æœŸç‚ºå…§å®¹é¡žåž‹ï¼\n"
-
-#~ msgid "%s: Error - expected copies after '-n' option!\n"
-#~ msgstr "%s:錯誤 - '-n' é¸é …後é¢é æœŸç‚ºä»½æ•¸ï¼\n"
-
-#~ msgid "%s: Error - expected copy count after '-#' option!\n"
-#~ msgstr "%s:錯誤 - '-#' é¸é …後é¢é æœŸç‚ºè¤‡æœ¬è¨ˆæ•¸ï¼\n"
-
-#~ msgid "%s: Error - expected destination after '-P' option!\n"
-#~ msgstr "%s:錯誤 - '-P' é¸é …後é¢é æœŸç‚ºç›®çš„地ï¼\n"
-
-#~ msgid "%s: Error - expected destination after '-b' option!\n"
-#~ msgstr "%s:錯誤 - '-b' é¸é …後é¢é æœŸç‚ºç›®çš„地ï¼\n"
-
-#~ msgid "%s: Error - expected destination after '-d' option!\n"
-#~ msgstr "%s:錯誤 - '-d' é¸é …後é¢é æœŸç‚ºç›®çš„地ï¼\n"
-
-#~ msgid "%s: Error - expected form after '-f' option!\n"
-#~ msgstr "%s:錯誤 - '-f' é¸é …後é¢é æœŸç‚ºè¡¨å–®ï¼\n"
-
-#~ msgid "%s: Error - expected hold name after '-H' option!\n"
-#~ msgstr "%s:錯誤 - '-H' é¸é …後é¢é æœŸç‚ºä¿ç•™å稱ï¼\n"
-
-#~ msgid "%s: Error - expected hostname after '-H' option!\n"
-#~ msgstr "%s:錯誤 - '-H' é¸é …後é¢é æœŸç‚ºä¸»æ©Ÿå稱ï¼\n"
-
-#~ msgid "%s: Error - expected hostname after '-h' option!\n"
-#~ msgstr "%s:錯誤 - '-h' é¸é …後é¢é æœŸç‚ºä¸»æ©Ÿå稱ï¼\n"
-
-#~ msgid "%s: Error - expected mode list after '-y' option!\n"
-#~ msgstr "%s:錯誤 - '-y' é¸é …後é¢é æœŸç‚ºæ¨¡å¼åˆ—表ï¼\n"
-
-#~ msgid "%s: Error - expected name after '-%c' option!\n"
-#~ msgstr "%s:錯誤 - '-%c' é¸é …後é¢é æœŸç‚ºå稱ï¼\n"
-
-#~ msgid "%s: Error - expected option string after '-o' option!\n"
-#~ msgstr "%s:錯誤 - '-o' é¸é …後é¢é æœŸç‚ºé¸é …字串ï¼\n"
-
-#~ msgid "%s: Error - expected page list after '-P' option!\n"
-#~ msgstr "%s:錯誤 - '-P' é¸é …後é¢é æœŸç‚ºé é¢åˆ—表ï¼\n"
-
-#~ msgid "%s: Error - expected priority after '-%c' option!\n"
-#~ msgstr "%s:錯誤 - '-%c' é¸é …後é¢é æœŸç‚ºå„ªå…ˆé †åºï¼\n"
-
-#~ msgid "%s: Error - expected reason text after '-r' option!\n"
-#~ msgstr "%s:錯誤 - '-r' é¸é …後é¢é æœŸç‚ºåŽŸå› æ–‡å­—ï¼\n"
-
-#~ msgid "%s: Error - expected title after '-t' option!\n"
-#~ msgstr "%s:錯誤 - '-t' é¸é …後é¢é æœŸç‚ºæ¨™é¡Œï¼\n"
-
-#~ msgid "%s: Error - expected username after '-U' option!\n"
-#~ msgstr "%s:錯誤 - '-U' é¸é …後é¢é æœŸç‚ºä½¿ç”¨è€…å稱ï¼\n"
-
-#~ msgid "%s: Error - expected username after '-u' option!\n"
-#~ msgstr "%s:錯誤 - '-u' é¸é …後é¢é æœŸç‚ºä½¿ç”¨è€…å稱ï¼\n"
-
-#~ msgid "%s: Error - expected value after '-%c' option!\n"
-#~ msgstr "%s:錯誤 - '-%c' é¸é …後é¢é æœŸç‚ºå€¼ï¼\n"
-
-#~ msgid ""
-#~ "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' "
-#~ "option!\n"
-#~ msgstr ""
-#~ "%s:錯誤 - &aops;-W&aops; é¸é …後é¢éœ€è¦â€œcompletedâ€ã€â€œnot-"
-#~ "completedâ€æˆ–“allâ€ï¼\n"
-
-#~ msgid "%s: Error - no default destination available.\n"
-#~ msgstr "%s:錯誤 - ç„¡å¯ç”¨çš„é è¨­ç›®çš„地。\n"
-
-#~ msgid "%s: Error - priority must be between 1 and 100.\n"
-#~ msgstr "%s:錯誤 - 優先順åºå¿…須介於 1 å’Œ 100 之間。\n"
-
-#~ msgid "%s: Error - scheduler not responding!\n"
-#~ msgstr "%s:錯誤 - 排程器沒有回應ï¼\n"
-
-#~ msgid "%s: Error - too many files - \"%s\"\n"
-#~ msgstr "%s:錯誤 - 檔案太多 -“%sâ€\n"
-
-#~ msgid "%s: Error - unable to access \"%s\" - %s\n"
-#~ msgstr "%s:錯誤 - 無法存å–“%sâ€- %s\n"
-
-#~ msgid "%s: Error - unable to queue from stdin - %s\n"
-#~ msgstr "%s:錯誤 - 無法從 stdin 佇列 - %s\n"
-
-#~ msgid "%s: Error - unknown destination \"%s\"!\n"
-#~ msgstr "%s:錯誤 - 未知的目的地“%sâ€ï¼\n"
-
-#~ msgid "%s: Error - unknown destination \"%s/%s\"!\n"
-#~ msgstr "%s:錯誤 - 未知的目的地“%s/%sâ€ï¼\n"
-
-#~ msgid "%s: Error - unknown option '%c'!\n"
-#~ msgstr "%s:錯誤 - 未知的é¸é … '%c'ï¼\n"
-
-#~ msgid "%s: Error - unknown option '%s'!\n"
-#~ msgstr "%s:錯誤 - 未知的é¸é … '%s'ï¼\n"
-
-#~ msgid "%s: Expected job ID after '-i' option!\n"
-#~ msgstr "%s:'-i' é¸é …後é¢é æœŸç‚ºä½œæ¥­ IDï¼\n"
-
-#~ msgid "%s: Filter \"%s\" not available: %s\n"
-#~ msgstr "%s:無法使用濾é¡â€œ%sâ€ï¼š%s\n"
-
-#~ msgid "%s: Invalid destination name in list \"%s\"!\n"
-#~ msgstr "%s:列表“%sâ€ä¸­çš„目的地å稱無效ï¼\n"
-
-#~ msgid "%s: Invalid filter string \"%s\"\n"
-#~ msgstr "%sï¼šéŽæ¿¾å­—串“%sâ€ç„¡æ•ˆ\n"
-
-#~ msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
-#~ msgstr "%s:&aops;-H restart&aops; å‰é¢éœ€è¦ä½œæ¥­ ID('-i jobid')ï¼\n"
-
-#~ msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
-#~ msgstr "%s:沒有濾é¡è¦å¾ž %s/%s 轉æ›ç‚º %s/%sï¼\n"
-
-#~ msgid "%s: Operation failed: %s\n"
-#~ msgstr "%s:作業失敗:%s\n"
-
-#~ msgid "%s: Sorry, no encryption support compiled in!\n"
-#~ msgstr "%s:抱歉,未編譯入加密支æ´ï¼\n"
-
-#~ msgid "%s: Unable to connect to server\n"
-#~ msgstr "%s:無法連接伺æœå™¨\n"
-
-#~ msgid "%s: Unable to contact server!\n"
-#~ msgstr "%s:無法è¯çµ¡ä¼ºæœå™¨ï¼\n"
-
-#~ msgid "%s: Unable to determine MIME type of \"%s\"!\n"
-#~ msgstr "%s:無法確定“%sâ€çš„ MIME 類型ï¼\n"
-
-#~ msgid "%s: Unable to open %s - %s\n"
-#~ msgstr "%s:無法打開 %s - %s\n"
-
-#~ msgid "%s: Unable to open %s - %s on line %d.\n"
-#~ msgstr "%s:無法打開 %s - %s 在第 %d 行。\n"
-
-#~ msgid "%s: Unable to open %s: %s\n"
-#~ msgstr "%s:無法打開 %s:%s\n"
-
-#~ msgid "%s: Unable to open PPD file: %s on line %d\n"
-#~ msgstr "%s:無法打開 PPD 檔案:%s 在第 %d 行\n"
-
-#~ msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"!\n"
-#~ msgstr "%s:無法從“%sâ€æˆ–“%sâ€è®€å– MIME 資料庫ï¼\n"
-
-#~ msgid "%s: Unknown destination \"%s\"!\n"
-#~ msgstr "%s:未知的目的地“%sâ€ï¼\n"
-
-#~ msgid "%s: Unknown destination MIME type %s/%s!\n"
-#~ msgstr "%s:未知的目的地 MIME 類型 %s/%sï¼\n"
-
-#~ msgid "%s: Unknown option '%c'!\n"
-#~ msgstr "%s:未知的é¸é … '%c'ï¼\n"
-
-#~ msgid "%s: Unknown source MIME type %s/%s!\n"
-#~ msgstr "%sï¼šæœªçŸ¥çš„ä¾†æº MIME 類型 %s/%sï¼\n"
-
-#~ msgid ""
-#~ "%s: Warning - '%c' format modifier not supported - output may not be "
-#~ "correct!\n"
-#~ msgstr "%s:警告 - 䏿”¯æ´ '%c' æ ¼å¼ä¿®é£¾ç¬¦ - 輸出å¯èƒ½ä¸æ­£ç¢ºï¼\n"
-
-#~ msgid "%s: Warning - character set option ignored!\n"
-#~ msgstr "%s:警告 - 已忽略字元集é¸é …ï¼\n"
-
-#~ msgid "%s: Warning - content type option ignored!\n"
-#~ msgstr "%s:警告 - 已忽略內容類型é¸é …ï¼\n"
-
-#~ msgid "%s: Warning - form option ignored!\n"
-#~ msgstr "%s:警告 - 已忽略表單é¸é …ï¼\n"
-
-#~ msgid "%s: Warning - mode option ignored!\n"
-#~ msgstr "%s:警告 - 已忽略模å¼é¸é …ï¼\n"
-
-#~ msgid ""
-#~ "%s: error - %s environment variable names non-existent destination \"%s"
-#~ "\"!\n"
-#~ msgstr "%s:錯誤 - %s 環境變數å稱中有ä¸å­˜åœ¨çš„目的地“%sâ€ï¼\n"
-
-#~ msgid "%s: error - expected option=value after '-o' option!\n"
-#~ msgstr "%s:錯誤 - &aops;-o&aops; é¸é …後é¢é æœŸç‚º option=valueï¼\n"
-
-#~ msgid "%s: error - no default destination available.\n"
-#~ msgstr "%s:錯誤 - 沒有å¯ç”¨çš„é è¨­ç›®çš„地。\n"
-
-#~ msgid "10 x 11\""
-#~ msgstr "10 x 11\""
-
-#~ msgid "10 x 13\""
-#~ msgstr "10 x 13\""
-
-#~ msgid "10 x 14\""
-#~ msgstr "10 x 14\""
-
-#~ msgid "12 x 11\""
-#~ msgstr "12 x 11\""
-
-#~ msgid "15 x 11\""
-#~ msgstr "15 x 11\""
-
-#~ msgid "600 DPI Grayscale"
-#~ msgstr "600 DPI ç°éšŽ"
-
-#~ msgid "60x720dpi"
-#~ msgstr "60x720dpi"
-
-#~ msgid "7 x 9\""
-#~ msgstr "7 x 9\""
-
-#~ msgid "8 x 10\""
-#~ msgstr "8 x 10\""
-
-#~ msgid "9 x 11\""
-#~ msgstr "9 x 11\""
-
-#~ msgid "9 x 12\""
-#~ msgstr "9 x 12\""
-
-#~ msgid "?Invalid help command unknown\n"
-#~ msgstr "?無效的輔助說明指令未知\n"
-
-#~ msgid "A Samba password is required to export printer drivers!"
-#~ msgstr "éœ€è¦ Samba 密碼,æ‰èƒ½è¼¸å‡ºå°è¡¨æ©Ÿé©…動程å¼ï¼"
-
-#~ msgid "A Samba username is required to export printer drivers!"
-#~ msgstr "éœ€è¦ Samba 使用者å稱,æ‰èƒ½è¼¸å‡ºå°è¡¨æ©Ÿé©…動程å¼ï¼"
-
-#~ msgid "A class named \"%s\" already exists!"
-#~ msgstr "å為“%sâ€çš„類別已存在ï¼"
-
-#~ msgid "A printer named \"%s\" already exists!"
-#~ msgstr "å為“%sâ€çš„å°è¡¨æ©Ÿå·²å­˜åœ¨ï¼"
-
-#~ msgid "A3 (Oversize)"
-#~ msgstr "A3(超大型)"
-
-#~ msgid "A4 (Oversize)"
-#~ msgstr "A4(超大型)"
-
-#~ msgid "A4 (Small)"
-#~ msgstr "A4(å°åž‹ï¼‰"
-
-#~ msgid "A5 (Oversize)"
-#~ msgstr "A5(超大型)"
-
-#~ msgid "ARCH A"
-#~ msgstr "ARCH A"
-
-#~ msgid "ARCH B"
-#~ msgstr "ARCH B"
-
-#~ msgid "Attempt to set %s printer-state to bad value %d!"
-#~ msgstr "嘗試將 %s å°è¡¨æ©Ÿç‹€æ…‹è¨­ç‚ºéŒ¯èª¤çš„值 %dï¼"
-
-#~ msgid "Attribute groups are out of order (%x < %x)!"
-#~ msgstr "屬性群組有å•題(%x < %x)ï¼"
-
-#~ msgid "Bad device URI \"%s\"!\n"
-#~ msgstr "設備 URI“%sâ€éŒ¯èª¤ï¼\n"
-
-#~ msgid "Bad device-uri \"%s\"!"
-#~ msgstr "device-uri“%sâ€éŒ¯èª¤ï¼"
-
-#~ msgid "Bad device-uri scheme \"%s\"!"
-#~ msgstr "device-uri 架構“%sâ€éŒ¯èª¤ï¼"
-
-#~ msgid "Bad document-format \"%s\"!"
-#~ msgstr "document-format“%sâ€éŒ¯èª¤ï¼"
-
-#~ msgid "Bad filename buffer!"
-#~ msgstr "檔åç·©è¡å€éŒ¯èª¤ï¼"
-
-#~ msgid "Bad font attribute: %s\n"
-#~ msgstr "字體屬性ERROR: %s\n"
-
-#~ msgid "Bad job-priority value!"
-#~ msgstr "job-priority 值錯誤ï¼"
-
-#~ msgid "Bad job-sheets value \"%s\"!"
-#~ msgstr "job-sheets 值“%sâ€éŒ¯èª¤ï¼"
-
-#~ msgid "Bad job-sheets value type!"
-#~ msgstr "job-sheets 值類型錯誤ï¼"
-
-#~ msgid "Bad job-state value!"
-#~ msgstr "job-state 值錯誤ï¼"
-
-#~ msgid "Bad job-uri attribute \"%s\"!"
-#~ msgstr "job-uri 屬性“%sâ€éŒ¯èª¤ï¼"
-
-#~ msgid "Bad notify-pull-method \"%s\"!"
-#~ msgstr "notify-pull-method“%sâ€éŒ¯èª¤ï¼"
-
-#~ msgid "Bad notify-recipient-uri URI \"%s\"!"
-#~ msgstr "notify-recipient-uri URI“%sâ€éŒ¯èª¤ï¼"
-
-#~ msgid "Bad option + choice on line %d!"
-#~ msgstr "第 %d 行的 option + choice 錯誤ï¼"
-
-#~ msgid "Bad port-monitor \"%s\"!"
-#~ msgstr "port-monitor“%sâ€éŒ¯èª¤ï¼"
-
-#~ msgid "Bad printer-state value %d!"
-#~ msgstr "printer-state 值 %d 錯誤ï¼"
-
-#~ msgid "Bad request version number %d.%d!"
-#~ msgstr "請求版本號碼 %d.%d 錯誤ï¼"
-
-#~ msgid "Bad subscription ID!"
-#~ msgstr "訂閱 ID 錯誤ï¼"
-
-#~ msgid "C0 Envelope"
-#~ msgstr "C0 ä¿¡å°"
-
-#~ msgid "C1 Envelope"
-#~ msgstr "C1 ä¿¡å°"
-
-#~ msgid "C2 Envelope"
-#~ msgstr "C2 ä¿¡å°"
-
-#~ msgid "C3 Envelope"
-#~ msgstr "C3 ä¿¡å°"
-
-#~ msgid "C4"
-#~ msgstr "C4"
-
-#~ msgid "C4 Envelope"
-#~ msgstr "C4 ä¿¡å°"
-
-#~ msgid "C5"
-#~ msgstr "C5"
-
-#~ msgid "C5 Envelope"
-#~ msgstr "C5 ä¿¡å°"
-
-#~ msgid "C6"
-#~ msgstr "C6"
-
-#~ msgid "C6 Envelope"
-#~ msgstr "C6 ä¿¡å°"
-
-#~ msgid "C65 Envelope"
-#~ msgstr "C65 ä¿¡å°"
-
-#~ msgid "C7 Envelope"
-#~ msgstr "C7 ä¿¡å°"
-
-#~ msgid "Character set \"%s\" not supported!"
-#~ msgstr "䏿”¯æ´å­—元集“%sâ€ï¼"
-
-#~ msgid "Chou3 Envelope"
-#~ msgstr "Chou3 ä¿¡å°"
-
-#~ msgid "Chou4 Envelope"
-#~ msgstr "Chou4 ä¿¡å°"
-
-#~ msgid ""
-#~ "Commands may be abbreviated. Commands are:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-#~ msgstr ""
-#~ "指令å¯ä»¥ç°¡å¯«ã€‚指令為:\n"
-#~ "\n"
-#~ "exit help quit status ?\n"
-
-#~ msgid "Could not scan type \"%s\"!"
-#~ msgstr "無法掃æé¡žåž‹â€œ%sâ€ï¼"
-
-#~ msgid "Cover open."
-#~ msgstr "機蓋已打開。"
-
-#~ msgid "DL"
-#~ msgstr "DL"
-
-#~ msgid "DL Envelope"
-#~ msgstr "DL ä¿¡å°"
-
-#~ msgid "Developer almost empty."
-#~ msgstr "顯åƒåŠ‘å³å°‡è€—盡。"
-
-#~ msgid "Developer empty!"
-#~ msgstr "顯åƒåŠ‘å·²è€—ç›¡ï¼"
-
-#~ msgid ""
-#~ "Device: uri = %s\n"
-#~ " class = %s\n"
-#~ " info = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ " location = %s\n"
-#~ msgstr ""
-#~ "設備:uri = %s\n"
-#~ " 類別 = %s\n"
-#~ " 資訊 = %s\n"
-#~ " 製造和型號 = %s\n"
-#~ " 設備 ID = %s\n"
-#~ " ä½ç½® = %s\n"
-
-#~ msgid "Document %d not found in job %d."
-#~ msgstr "文件 %d 在作業 %d 中找ä¸åˆ°ã€‚"
-
-#~ msgid "Door open."
-#~ msgstr "機門已打開。"
-
-#~ msgid "Double Postcard"
-#~ msgstr "雙明信片"
-
-#~ msgid "EMERG: Unable to allocate memory for page info: %s\n"
-#~ msgstr "EMERG: 無法為é é¢è³‡è¨Šåˆ†é…記憶體:%s\n"
-
-#~ msgid "EMERG: Unable to allocate memory for pages array: %s\n"
-#~ msgstr "EMERG: 無法為é é¢é™£åˆ—分é…記憶體:%s\n"
-
-#~ msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: %%BoundingBox ERROR: ç™¼ç¾æœ‰è¨»è§£ï¼\n"
-
-#~ msgid "ERROR: Bad %%IncludeFeature: comment!\n"
-#~ msgstr "ERROR: %%IncludeFeature ERROR: 註解ï¼\n"
-
-#~ msgid "ERROR: Bad %%Page: comment in file!\n"
-#~ msgstr "ERROR: %%Page ERROR: 檔案中的註解ï¼\n"
-
-#~ msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
-#~ msgstr "ERROR: %%PageBoundingBox ERROR: 檔案中的註解ï¼\n"
-
-#~ msgid "ERROR: Bad SCSI device file \"%s\"!\n"
-#~ msgstr "ERROR: SCSI 設備檔案“%sâ€éŒ¯èª¤ï¼\n"
-
-#~ msgid "ERROR: Bad charset file %s\n"
-#~ msgstr "ERROR: 字元集檔案 %s 錯誤\n"
-
-#~ msgid "ERROR: Bad charset type %s\n"
-#~ msgstr "ERROR: 字元集類型 %s 錯誤\n"
-
-#~ msgid "ERROR: Bad columns value %d!\n"
-#~ msgstr "ERROR: 直欄值 %d 錯誤ï¼\n"
-
-#~ msgid "ERROR: Bad cpi value %f!\n"
-#~ msgstr "ERROR: cpi 值 %f 錯誤ï¼\n"
-
-#~ msgid "ERROR: Bad font description line: %s\n"
-#~ msgstr "ERROR: å­—é«”æè¿°è¡ŒERROR: %s\n"
-
-#~ msgid "ERROR: Bad lpi value %f!\n"
-#~ msgstr "ERROR: lpi 值 %f 錯誤ï¼\n"
-
-#~ msgid "ERROR: Bad page setup!\n"
-#~ msgstr "ERROR: é é¢è¨­å®šéŒ¯èª¤ï¼\n"
-
-#~ msgid "ERROR: Bad text direction %s\n"
-#~ msgstr "ERROR: æ–‡å­—æ–¹å‘ %s 錯誤\n"
-
-#~ msgid "ERROR: Bad text width %s\n"
-#~ msgstr "ERROR: 文字寬度 %s 錯誤\n"
-
-#~ msgid "ERROR: Destination printer does not exist!\n"
-#~ msgstr "ERROR: 目的å°è¡¨æ©Ÿä¸å­˜åœ¨ï¼\n"
-
-#~ msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
-#~ msgstr "ERROR: é‡è¤‡çš„ %%BoundingBoxï¼šç™¼ç¾æœ‰è¨»è§£ï¼\n"
-
-#~ msgid "ERROR: Duplicate %%Pages: comment seen!\n"
-#~ msgstr "ERROR: é‡è¤‡çš„ %%Pagesï¼šç™¼ç¾æœ‰è¨»è§£ï¼\n"
-
-#~ msgid "ERROR: Empty print file!\n"
-#~ msgstr "ERROR: åˆ—å°æª”案為空ï¼\n"
-
-#~ msgid "ERROR: Error %d sending PAPSendData request: %s\n"
-#~ msgstr "ERROR: %d å‚³é€ PAPSendData 請求時發生ERROR: %s\n"
-
-#~ msgid "ERROR: Expected quoted string on line %d of %s!\n"
-#~ msgstr "ERROR: %2$s 的第 %1$d è¡Œé æœŸç‚ºå¼•言字串ï¼\n"
-
-#~ msgid "ERROR: Fatal USB error!\n"
-#~ msgstr "ERROR: åš´é‡çš„ USB 錯誤ï¼\n"
-
-#~ msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
-#~ msgstr "ERROR: 發ç¾ç„¡æ•ˆçš„ HP-GL/2 æŒ‡ä»¤ï¼Œç„¡æ³•åˆ—å°æª”案ï¼\n"
-
-#~ msgid "ERROR: Missing %%EndProlog!\n"
-#~ msgstr "ERROR: éºå¤± %%EndPrologï¼\n"
-
-#~ msgid "ERROR: Missing %%EndSetup!\n"
-#~ msgstr "ERROR: éºå¤± %%EndSetupï¼\n"
-
-#~ msgid ""
-#~ "ERROR: Missing device URI on command-line and no DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr "ERROR: 指令行éºå¤±è¨­å‚™ URI 且沒有 DEVICE_URI 環境變數ï¼\n"
-
-#~ msgid "ERROR: Missing value on line %d of banner file!\n"
-#~ msgstr "ERROR: 標語檔案的第 %d 行éºå¤±å€¼ï¼\n"
-
-#~ msgid ""
-#~ "ERROR: Need a msgid line before any translation strings on line %d of %"
-#~ "s!\n"
-#~ msgstr "ERROR: 在 %2$s 第 %1$d 行的任何轉æ›å­—串å‰é¢éƒ½éœ€è¦ msgid 行ï¼\n"
-
-#~ msgid "ERROR: No %%BoundingBox: comment in header!\n"
-#~ msgstr "ERROR: 沒有 %%BoundingBox:標題中的註解ï¼\n"
-
-#~ msgid "ERROR: No %%Pages: comment in header!\n"
-#~ msgstr "ERROR: 沒有 %%Pages:標題中的註解ï¼\n"
-
-#~ msgid ""
-#~ "ERROR: No device URI found in argv[0] or in DEVICE_URI environment "
-#~ "variable!\n"
-#~ msgstr "ERROR: 在 argv[0] 或 DEVICE_URI 環境變數中找ä¸åˆ°è¨­å‚™ URIï¼\n"
-
-#~ msgid "ERROR: No fonts in charset file %s\n"
-#~ msgstr "ERROR: 字元集檔案 %s 中沒有字體\n"
-
-#~ msgid "ERROR: No pages found!\n"
-#~ msgstr "ERROR: 找ä¸åˆ°é é¢ï¼\n"
-
-#~ msgid "ERROR: Out of paper!\n"
-#~ msgstr "ERROR: 缺紙ï¼\n"
-
-#~ msgid "ERROR: PRINTER environment variable not defined!\n"
-#~ msgstr "ERROR: 未定義 PRINTER 環境變數ï¼\n"
-
-#~ msgid "ERROR: Print file was not accepted (%s)!\n"
-#~ msgstr "ERROR: 䏿ޥå—åˆ—å°æª”案(%s)ï¼\n"
-
-#~ msgid "ERROR: Printer not responding\n"
-#~ msgstr "ERROR: å°è¡¨æ©Ÿæœªå›žæ‡‰\n"
-
-#~ msgid "ERROR: Printer not responding!\n"
-#~ msgstr "ERROR: å°è¡¨æ©Ÿæœªå›žæ‡‰ï¼\n"
-
-#~ msgid "ERROR: Printer sent unexpected EOF\n"
-#~ msgstr "ERROR: å°è¡¨æ©Ÿå‚³é€äº†éžé æœŸçš„ EOF\n"
-
-#~ msgid "ERROR: Remote host did not accept control file (%d)\n"
-#~ msgstr "ERROR: é ç«¯ä¸»æ©ŸæœªæŽ¥å—控制檔案(%d)\n"
-
-#~ msgid "ERROR: Remote host did not accept data file (%d)\n"
-#~ msgstr "ERROR: é ç«¯ä¸»æ©ŸæœªæŽ¥å—資料檔(%d)\n"
-
-#~ msgid "ERROR: There was a timeout error while sending data to the printer\n"
-#~ msgstr "ERROR: 將資料傳é€åˆ°å°è¡¨æ©Ÿæ™‚發生逾時錯誤\n"
-
-#~ msgid "ERROR: Unable to add file %d to job: %s\n"
-#~ msgstr "ERROR: 無法將檔案 %d 加入作業:%s\n"
-
-#~ msgid "ERROR: Unable to cancel job %d: %s\n"
-#~ msgstr "ERROR: ç„¡æ³•å–æ¶ˆä½œæ¥­ %d:%s\n"
-
-#~ msgid "ERROR: Unable to copy PDF file"
-#~ msgstr "ERROR: ç„¡æ³•æ‹·è² PDF 檔案"
-
-#~ msgid "ERROR: Unable to create socket"
-#~ msgstr "ERROR: 無法製作 socket"
-
-#~ msgid "ERROR: Unable to create temporary compressed print file: %s\n"
-#~ msgstr "ERROR: ç„¡æ³•è£½ä½œæš«æ™‚çš„å£“ç¸®åˆ—å°æª”案:%s\n"
-
-#~ msgid "ERROR: Unable to create temporary file"
-#~ msgstr "ERROR: 無法製作暫存檔"
-
-#~ msgid "ERROR: Unable to create temporary file - %s.\n"
-#~ msgstr "ERROR: 無法製作暫存檔 - %s。\n"
-
-#~ msgid "ERROR: Unable to create temporary file: %s\n"
-#~ msgstr "ERROR: 無法製作暫存檔:%s\n"
-
-#~ msgid "ERROR: Unable to exec pictwpstops: %s\n"
-#~ msgstr "ERROR: 無法執行 pictwpstops:%s\n"
-
-#~ msgid "ERROR: Unable to execute gs program"
-#~ msgstr "ERROR: 無法執行 gs 程å¼"
-
-#~ msgid "ERROR: Unable to execute pdftops program"
-#~ msgstr "ERROR: 無法執行 pdftops 程å¼"
-
-#~ msgid "ERROR: Unable to fork pictwpstops: %s\n"
-#~ msgstr "ERROR: 無法分開 pictwpstops:%s\n"
-
-#~ msgid "ERROR: Unable to get PAP request"
-#~ msgstr "ERROR: 無法å–å¾— PAP 請求"
-
-#~ msgid "ERROR: Unable to get PAP response"
-#~ msgstr "ERROR: 無法å–å¾— PAP 回應"
-
-#~ msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
-#~ msgstr "ERROR: 無法å–å¾—å°è¡¨æ©Ÿâ€œ%sâ€çš„ PPD 檔案 - %s。\n"
-
-#~ msgid "ERROR: Unable to get default AppleTalk zone"
-#~ msgstr "ERROR: 無法å–å¾—é è¨­çš„ AppleTalk å€åŸŸ"
-
-#~ msgid "ERROR: Unable to get job %d attributes (%s)!\n"
-#~ msgstr "ERROR: 無法å–得作業 %d 屬性(%s)ï¼\n"
-
-#~ msgid "ERROR: Unable to get printer status (%s)!\n"
-#~ msgstr "ERROR: 無法å–å¾—å°è¡¨æ©Ÿç‹€æ…‹ï¼ˆ%s)ï¼\n"
-
-#~ msgid "ERROR: Unable to locate printer '%s'!\n"
-#~ msgstr "ERROR: 找ä¸åˆ°å°è¡¨æ©Ÿ '%s'ï¼\n"
-
-#~ msgid "ERROR: Unable to look for PAP response"
-#~ msgstr "ERROR: 無法尋找 PAP 回應"
-
-#~ msgid "ERROR: Unable to lookup AppleTalk printers"
-#~ msgstr "ERROR: 無法尋找 AppleTalk å°è¡¨æ©Ÿ"
-
-#~ msgid "ERROR: Unable to make AppleTalk address"
-#~ msgstr "ERROR: 無法設定 AppleTalk 地å€"
-
-#~ msgid "ERROR: Unable to open \"%s\" - %s\n"
-#~ msgstr "ERROR: 無法打開“%sâ€- %s\n"
-
-#~ msgid "ERROR: Unable to open %s: %s\n"
-#~ msgstr "ERROR: 無法打開 %s:%s\n"
-
-#~ msgid "ERROR: Unable to open banner file \"%s\" - %s\n"
-#~ msgstr "ERROR: 無法打開標語檔案“%sâ€- %s\n"
-
-#~ msgid "ERROR: Unable to open device file \"%s\": %s\n"
-#~ msgstr "ERROR: 無法打開設備檔案“%sâ€ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\" - %s\n"
-#~ msgstr "ERROR: 無法打開檔案“%sâ€- %s\n"
-
-#~ msgid "ERROR: Unable to open file \"%s\": %s\n"
-#~ msgstr "ERROR: 無法打開檔案“%sâ€ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to open image file for printing!\n"
-#~ msgstr "ERROR: 無法打開è¦åˆ—å°çš„å½±åƒæª”ï¼\n"
-
-#~ msgid "ERROR: Unable to open print file \"%s\": %s\n"
-#~ msgstr "ERROR: ç„¡æ³•æ‰“é–‹åˆ—å°æª”案“%sâ€ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to open print file %s - %s\n"
-#~ msgstr "ERROR: ç„¡æ³•æ‰“é–‹åˆ—å°æª”案 %s - %s\n"
-
-#~ msgid "ERROR: Unable to open print file %s: %s\n"
-#~ msgstr "ERROR: ç„¡æ³•æ‰“é–‹åˆ—å°æª”案 %s:%s\n"
-
-#~ msgid "ERROR: Unable to open temporary compressed print file: %s\n"
-#~ msgstr "ERROR: ç„¡æ³•æ‰“é–‹æš«æ™‚çš„å£“ç¸®åˆ—å°æª”案:%s\n"
-
-#~ msgid "ERROR: Unable to open temporary file"
-#~ msgstr "ERROR: 無法打開暫存檔"
-
-#~ msgid "ERROR: Unable to print %d text columns!\n"
-#~ msgstr "ERROR: ç„¡æ³•åˆ—å° %d 文字直欄ï¼\n"
-
-#~ msgid "ERROR: Unable to print %dx%d text page!\n"
-#~ msgstr "ERROR: ç„¡æ³•åˆ—å° %dx%d 文字é é¢ï¼\n"
-
-#~ msgid "ERROR: Unable to read print data"
-#~ msgstr "ERROR: 無法讀å–列å°è³‡æ–™"
-
-#~ msgid "ERROR: Unable to read print data!\n"
-#~ msgstr "ERROR: 無法讀å–列å°è³‡æ–™ï¼\n"
-
-#~ msgid "ERROR: Unable to reserve port"
-#~ msgstr "ERROR: 無法ä¿ç•™é€£æŽ¥åŸ "
-
-#~ msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
-#~ msgstr "ERROR: 無法在檔案中尋找åç§» %ld - %s\n"
-
-#~ msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
-#~ msgstr "ERROR: 無法在檔案中尋找åç§» %lld - %s\n"
-
-#~ msgid "ERROR: Unable to send LPD command"
-#~ msgstr "ERROR: ç„¡æ³•å‚³é€ LPD 指令"
-
-#~ msgid "ERROR: Unable to send PAP tickle request"
-#~ msgstr "ERROR: ç„¡æ³•å‚³é€ PAP tickle 請求"
-
-#~ msgid "ERROR: Unable to send initial PAP send data request"
-#~ msgstr "ERROR: 無法傳é€åˆå§‹ PAP 傳é€è³‡æ–™è«‹æ±‚"
-
-#~ msgid "ERROR: Unable to send print data (%d)\n"
-#~ msgstr "ERROR: 無法傳é€åˆ—å°è³‡æ–™ï¼ˆ%d)\n"
-
-#~ msgid "ERROR: Unable to send print data!\n"
-#~ msgstr "ERROR: 無法傳é€åˆ—å°è³‡æ–™ï¼\n"
-
-#~ msgid "ERROR: Unable to send print file to printer"
-#~ msgstr "ERROR: ç„¡æ³•å°‡åˆ—å°æª”案傳é€è‡³å°è¡¨æ©Ÿ"
-
-#~ msgid "ERROR: Unable to send trailing nul to printer"
-#~ msgstr "ERROR: 無法將 trailing nul 傳é€è‡³å°è¡¨æ©Ÿ"
-
-#~ msgid "ERROR: Unable to wait for pictwpstops: %s\n"
-#~ msgstr "ERROR: 無法等待 pictwpstops:%s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
-#~ msgstr "ERROR: 無法將 %d ä½å…ƒçµ„寫入至“%sâ€ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to write %d bytes to printer!\n"
-#~ msgstr "ERROR: 無法將 %d ä½å…ƒçµ„寫入至å°è¡¨æ©Ÿï¼\n"
-
-#~ msgid "ERROR: Unable to write control file"
-#~ msgstr "ERROR: 無法寫入控制檔案"
-
-#~ msgid "ERROR: Unable to write print data"
-#~ msgstr "ERROR: 無法寫入列å°è³‡æ–™"
-
-#~ msgid "ERROR: Unable to write print data: %s\n"
-#~ msgstr "ERROR: 無法寫入列å°è³‡æ–™ï¼š%s\n"
-
-#~ msgid "ERROR: Unable to write raster data to driver!\n"
-#~ msgstr "ERROR: 無法將水平掃瞄線資料寫入驅動程å¼ï¼\n"
-
-#~ msgid "ERROR: Unable to write to temporary file"
-#~ msgstr "ERROR: 無法寫入暫存檔"
-
-#~ msgid "ERROR: Unable to write uncompressed document data: %s\n"
-#~ msgstr "ERROR: 無法寫入未壓縮的文件資料:%s\n"
-
-#~ msgid "ERROR: Unexpected text on line %d of %s!\n"
-#~ msgstr "ERROR: %2$s 的第 %1$d 行有éžé æœŸçš„æ–‡å­—ï¼\n"
-
-#~ msgid "ERROR: Unknown encryption option value \"%s\"!\n"
-#~ msgstr "ERROR: 未知的加密é¸é …值“%sâ€ï¼\n"
-
-#~ msgid "ERROR: Unknown file order \"%s\"\n"
-#~ msgstr "ERROR: 未知的檔案順åºâ€œ%sâ€\n"
-
-#~ msgid "ERROR: Unknown format character \"%c\"\n"
-#~ msgstr "ERROR: 未知的格å¼å­—元“%câ€\n"
-
-#~ msgid "ERROR: Unknown message catalog format for \"%s\"!\n"
-#~ msgstr "ERROR: “%sâ€çš„訊æ¯ç›®éŒ„æ ¼å¼æœªçŸ¥ï¼\n"
-
-#~ msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
-#~ msgstr "ERROR: 未知的é¸é …“%sâ€ï¼Œå€¼ç‚ºâ€œ%sâ€ï¼\n"
-
-#~ msgid "ERROR: Unknown print mode \"%s\"\n"
-#~ msgstr "ERROR: æœªçŸ¥çš„åˆ—å°æ¨¡å¼â€œ%sâ€\n"
-
-#~ msgid "ERROR: Unknown version option value \"%s\"!\n"
-#~ msgstr "ERROR: 未知的版本é¸é …值“%sâ€ï¼\n"
-
-#~ msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
-#~ msgstr "ERROR: ä¸å—支æ´çš„亮度值 %s,使用 brightness=100ï¼\n"
-
-#~ msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
-#~ msgstr "ERROR: ä¸å—支æ´çš„ gamma 值 %s,使用 gamma=1000ï¼\n"
-
-#~ msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
-#~ msgstr "ERROR: ä¸å—支æ´çš„ number-up 值 %d,使用 number-up=1ï¼\n"
-
-#~ msgid ""
-#~ "ERROR: Unsupported number-up-layout value %s, using number-up-"
-#~ "layout=lrtb!\n"
-#~ msgstr ""
-#~ "ERROR: ä¸å—支æ´çš„ number-up-layout 值 %s,使用 number-up-layout=lrtbï¼\n"
-
-#~ msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
-#~ msgstr "ERROR: ä¸å—支æ´çš„ page-border 值 %s,使用 page-border=noneï¼\n"
-
-#~ msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
-#~ msgstr "ERROR: 嵿¸¬åˆ° doc_printf 溢ä½ï¼ˆ%d ä½å…ƒçµ„),正在中斷ï¼\n"
-
-#~ msgid "ERROR: pdftops filter crashed on signal %d!\n"
-#~ msgstr "ERROR: pdftops 濾é¡åœ¨é‡åˆ°è¨Šè™Ÿ %d 時當機ï¼\n"
-
-#~ msgid "ERROR: pdftops filter exited with status %d!\n"
-#~ msgstr "ERROR: pdftops 濾é¡ä»¥ç‹€æ…‹ %d çµæŸï¼\n"
-
-#~ msgid "ERROR: pictwpstops exited on signal %d!\n"
-#~ msgstr "ERROR: pictwpstops 在é‡åˆ°è¨Šè™Ÿ %d æ™‚çµæŸï¼\n"
-
-#~ msgid "ERROR: pictwpstops exited with status %d!\n"
-#~ msgstr "ERROR: pictwpstops 以狀態 %d çµæŸï¼\n"
-
-#~ msgid ""
-#~ "ERROR: recoverable: Unable to connect to printer; will retry in 30 "
-#~ "seconds...\n"
-#~ msgstr "ERROR: å¯å›žå¾©ï¼šç„¡æ³•連接å°è¡¨æ©Ÿï¼›30 ç§’å…§å°‡é‡è©¦â‹¯\n"
-
-#~ msgid "ERROR: select() failed"
-#~ msgstr "ERROR: select() 失敗"
-
-#~ msgid "ERROR: unable to stat print file"
-#~ msgstr "ERROR: ç„¡æ³•é–‹å§‹åˆ—å°æª”案"
-
-#~ msgid "Empty PPD file!"
-#~ msgstr "PPD 檔案為空ï¼"
-
-#~ msgid "Error: need hostname after '-h' option!\n"
-#~ msgstr "ERROR: '-h' é¸é …後é¢éœ€è¦ä¸»æ©Ÿå稱ï¼\n"
-
-#~ msgid "FAIL\n"
-#~ msgstr "失敗\n"
-
-#~ msgid ""
-#~ "File device URIs have been disabled! To enable, see the FileDevice "
-#~ "directive in \"%s/cupsd.conf\"."
-#~ msgstr ""
-#~ "å·²åœç”¨æª”案設備 URIï¼è‹¥è¦å•Ÿç”¨ï¼Œè«‹åƒé–±â€œ%s/cupsd.confâ€ä¸­çš„ FileDevice 指示。"
-
-#~ msgid "Fuser temperature high!"
-#~ msgstr "加熱器溫度高ï¼"
-
-#~ msgid "Fuser temperature low!"
-#~ msgstr "加熱器溫度低ï¼"
-
-#~ msgid "German FanFold"
-#~ msgstr "å¾·å¼æŠ˜ç–Šå¼å ±è¡¨ç´™ï¼ˆGerman FanFold)"
-
-#~ msgid "German FanFold Legal"
-#~ msgstr "å¾·å¼æŠ˜ç–Šå¼æ³•定報表紙(German FanFold Legal)"
-
-#~ msgid "Got a printer-uri attribute but no job-id!"
-#~ msgstr "å·²å–å¾— printer-uri 屬性,但沒有 job-idï¼"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences\n"
-#~ msgstr "INFO: 已在“系統å好設定â€ä¸­åœç”¨ AppleTalk\n"
-
-#~ msgid "INFO: AppleTalk disabled in System Preferences.\n"
-#~ msgstr "INFO: 已在“系統å好設定â€ä¸­åœç”¨ AppleTalk。\n"
-
-#~ msgid "INFO: Canceling print job...\n"
-#~ msgstr "INFO: æ­£åœ¨å–æ¶ˆåˆ—å°ä½œæ¥­â‹¯\n"
-
-#~ msgid "INFO: Connected to printer...\n"
-#~ msgstr "INFO: 已連接å°è¡¨æ©Ÿâ‹¯\n"
-
-#~ msgid "INFO: Connecting to printer...\n"
-#~ msgstr "INFO: 正在連接å°è¡¨æ©Ÿâ‹¯\n"
-
-#~ msgid "INFO: Control file sent successfully\n"
-#~ msgstr "INFO: å·²æˆåŠŸå‚³é€æŽ§åˆ¶æª”æ¡ˆ\n"
-
-#~ msgid "INFO: Data file sent successfully\n"
-#~ msgstr "INFO: å·²æˆåŠŸå‚³é€è³‡æ–™æª”\n"
-
-#~ msgid "INFO: Formatting page %d...\n"
-#~ msgstr "INFO: 正在格å¼åŒ–é é¢ %d⋯\n"
-
-#~ msgid "INFO: Loading image file...\n"
-#~ msgstr "INFO: æ­£åœ¨è¼‰å…¥å½±åƒæª”⋯\n"
-
-#~ msgid "INFO: Looking for printer...\n"
-#~ msgstr "INFO: 正在尋找å°è¡¨æ©Ÿâ‹¯\n"
-
-#~ msgid "INFO: Opening connection\n"
-#~ msgstr "INFO: 正在打開連線\n"
-
-#~ msgid "INFO: Print file sent, waiting for printer to finish...\n"
-#~ msgstr "INFO: 已傳é€åˆ—å°æª”案,正在等待å°è¡¨æ©Ÿå®Œæˆå·¥ä½œâ‹¯\n"
-
-#~ msgid "INFO: Printer busy; will retry in 10 seconds...\n"
-#~ msgstr "INFO: å°è¡¨æ©Ÿå¿™ç¢Œä¸­ï¼›10 ç§’å…§å°‡é‡è©¦â‹¯\n"
-
-#~ msgid "INFO: Printer busy; will retry in 30 seconds...\n"
-#~ msgstr "INFO: å°è¡¨æ©Ÿå¿™ç¢Œä¸­ï¼›30 ç§’å…§å°‡é‡è©¦â‹¯\n"
-
-#~ msgid "INFO: Printer busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: å°è¡¨æ©Ÿå¿™ç¢Œä¸­ï¼›5 ç§’å…§å°‡é‡è©¦â‹¯\n"
-
-#~ msgid "INFO: Printer does not support IPP/%d.%d, trying IPP/1.0...\n"
-#~ msgstr "INFO: å°è¡¨æ©Ÿä¸æ”¯æ´ IPP/%d.%d,正在嘗試 IPP/1.0⋯\n"
-
-#~ msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
-#~ msgstr "INFO: å°è¡¨æ©Ÿå¿™ç¢Œä¸­ï¼›5 ç§’å…§å°‡é‡è©¦â‹¯\n"
-
-#~ msgid "INFO: Printer is currently off-line.\n"
-#~ msgstr "INFO: å°è¡¨æ©Ÿç›®å‰å·²é›¢ç·šã€‚\n"
-
-#~ msgid "INFO: Printer is currently offline.\n"
-#~ msgstr "INFO: å°è¡¨æ©Ÿç›®å‰å·²é›¢ç·šã€‚\n"
-
-#~ msgid "INFO: Printer is now online.\n"
-#~ msgstr "INFO: å°è¡¨æ©Ÿå·²å›žåˆ°ç·šä¸Šã€‚\n"
-
-#~ msgid "INFO: Printer is offline.\n"
-#~ msgstr "INFO: å°è¡¨æ©Ÿå·²é›¢ç·šã€‚\n"
-
-#~ msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
-#~ msgstr "INFO: 未連接å°è¡¨æ©Ÿï¼›30 ç§’å…§å°‡é‡è©¦â‹¯\n"
-
-#~ msgid "INFO: Printing page %d, %d%% complete...\n"
-#~ msgstr "INFO: 正在列å°é é¢ %d,%d%% 已完æˆâ‹¯\n"
-
-#~ msgid "INFO: Printing page %d...\n"
-#~ msgstr "INFO: 正在列å°é é¢ %d⋯\n"
-
-#~ msgid "INFO: Ready to print.\n"
-#~ msgstr "INFO: 準備好進行列å°ã€‚\n"
-
-#~ msgid "INFO: Sending control file (%lu bytes)\n"
-#~ msgstr "INFO: æ­£åœ¨å‚³é€æŽ§åˆ¶æª”æ¡ˆï¼ˆ%lu ä½å…ƒçµ„)\n"
-
-#~ msgid "INFO: Sending control file (%u bytes)\n"
-#~ msgstr "INFO: æ­£åœ¨å‚³é€æŽ§åˆ¶æª”æ¡ˆï¼ˆ%u ä½å…ƒçµ„)\n"
-
-#~ msgid "INFO: Sending data\n"
-#~ msgstr "INFO: 正在傳é€è³‡æ–™\n"
-
-#~ msgid "INFO: Sending data file (%ld bytes)\n"
-#~ msgstr "INFO: 正在傳é€è³‡æ–™æª”(%ld ä½å…ƒçµ„)\n"
-
-#~ msgid "INFO: Sending data file (%lld bytes)\n"
-#~ msgstr "INFO: 正在傳é€è³‡æ–™æª”(%lld ä½å…ƒçµ„)\n"
-
-#~ msgid "INFO: Sending print data...\n"
-#~ msgstr "INFO: 正在傳é€åˆ—å°è³‡æ–™â‹¯\n"
-
-#~ msgid "INFO: Sent print file, %ld bytes...\n"
-#~ msgstr "INFO: 已傳é€åˆ—å°æª”案,%ld ä½å…ƒçµ„⋯\n"
-
-#~ msgid "INFO: Sent print file, %lld bytes...\n"
-#~ msgstr "INFO: 已傳é€åˆ—å°æª”案,%lld ä½å…ƒçµ„⋯\n"
-
-#~ msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
-#~ msgstr "INFO: 正在緩è¡åˆ—å°ä½œæ¥­ï¼Œ%.0f%% 已完æˆâ‹¯\n"
-
-#~ msgid ""
-#~ "INFO: Unable to contact printer, queuing on next printer in class...\n"
-#~ msgstr "INFO: 無法è¯çµ¡å°è¡¨æ©Ÿï¼Œæ­£åœ¨ä½‡åˆ—等待類別中的下一個å°è¡¨æ©Ÿâ‹¯\n"
-
-#~ msgid "INFO: Using default AppleTalk zone \"%s\"\n"
-#~ msgstr "INFO: 使用é è¨­çš„ AppleTalk å€åŸŸâ€œ%sâ€\n"
-
-#~ msgid "INFO: Waiting for job to complete...\n"
-#~ msgstr "INFO: 正在等待作業完æˆâ‹¯\n"
-
-#~ msgid "INFO: Waiting for printer to become available...\n"
-#~ msgstr "INFO: 正在等待å°è¡¨æ©Ÿæˆç‚ºå¯ç”¨ç‹€æ…‹â‹¯\n"
-
-#~ msgid "ISO B0"
-#~ msgstr "ISO B0"
-
-#~ msgid "ISO B1"
-#~ msgstr "ISO B1"
-
-#~ msgid "ISO B10"
-#~ msgstr "ISO B10"
-
-#~ msgid "ISO B2"
-#~ msgstr "ISO B2"
-
-#~ msgid "ISO B3"
-#~ msgstr "ISO B3"
-
-#~ msgid "ISO B4"
-#~ msgstr "ISO B4"
-
-#~ msgid "ISO B4 Envelope"
-#~ msgstr "ISO B4 ä¿¡å°"
-
-#~ msgid "ISO B5"
-#~ msgstr "ISO B5"
-
-#~ msgid "ISO B5 (Oversize)"
-#~ msgstr "ISO B5(超大型)"
-
-#~ msgid "ISO B5 Envelope"
-#~ msgstr "ISO B5 ä¿¡å°"
-
-#~ msgid "ISO B6"
-#~ msgstr "ISO B6"
-
-#~ msgid "ISO B6 Envelope"
-#~ msgstr "ISO B6 ä¿¡å°"
-
-#~ msgid "ISO B7"
-#~ msgstr "ISO B7"
-
-#~ msgid "ISO B8"
-#~ msgstr "ISO B8"
-
-#~ msgid "ISO B9"
-#~ msgstr "ISO B9"
-
-#~ msgid "Ink/toner almost empty."
-#~ msgstr "墨水或碳粉å³å°‡è€—盡。"
-
-#~ msgid "Ink/toner empty!"
-#~ msgstr "墨水或碳粉已耗盡ï¼"
-
-#~ msgid "Ink/toner waste bin almost full."
-#~ msgstr "墨水或碳粉廢料槽將滿。"
-
-#~ msgid "Ink/toner waste bin full!"
-#~ msgstr "墨水或碳粉廢料槽已滿ï¼"
-
-#~ msgid "Interlock open."
-#~ msgstr "Interlock 已打開。"
-
-#~ msgid "Invite Envelope"
-#~ msgstr "邀請信å°"
-
-#~ msgid "Italian Envelope"
-#~ msgstr "義大利信å°"
-
-#~ msgid "Job #%d cannot be restarted - no files!"
-#~ msgstr "ç„¡æ³•é‡æ–°å•Ÿå‹•作業 #%d - 沒有檔案ï¼"
-
-#~ msgid "Job #%d does not exist!"
-#~ msgstr "作業 #%d ä¸å­˜åœ¨ï¼"
-
-#~ msgid "Job #%d is finished and cannot be altered!"
-#~ msgstr "已完æˆä½œæ¥­ #%d 且無法更改ï¼"
-
-#~ msgid "Job #%d is not complete!"
-#~ msgstr "未完æˆä½œæ¥­ #%dï¼"
-
-#~ msgid "Job #%d is not held for authentication!"
-#~ msgstr "未暫åœä½œæ¥­ #%d 進行èªè­‰ï¼"
-
-#~ msgid "Job #%d is not held!"
-#~ msgstr "未暫åœä½œæ¥­ #%dï¼"
-
-#~ msgid "Job #%s does not exist!"
-#~ msgstr "作業 #%s ä¸å­˜åœ¨ï¼"
-
-#~ msgid "Job %d not found!"
-#~ msgstr "找ä¸åˆ°ä½œæ¥­ %dï¼"
-
-#~ msgid "Job subscriptions cannot be renewed!"
-#~ msgstr "無法更新作業訂閱ï¼"
-
-#~ msgid "Kaku2 Envelope"
-#~ msgstr "Kaku2 ä¿¡å°"
-
-#~ msgid "Kaku3 Envelope"
-#~ msgstr "Kaku3 ä¿¡å°"
-
-#~ msgid "Language \"%s\" not supported!"
-#~ msgstr "䏿”¯æ´èªžè¨€â€œ%sâ€ï¼"
-
-#~ msgid "Media jam!"
-#~ msgstr "媒體å¡ç´™ï¼"
-
-#~ msgid "Media tray almost empty."
-#~ msgstr "媒體é€ç´™åŒ£å³å°‡ç”¨å®Œã€‚"
-
-#~ msgid "Media tray empty!"
-#~ msgstr "媒體é€ç´™åŒ£ç‚ºç©ºï¼"
-
-#~ msgid "Media tray missing!"
-#~ msgstr "找ä¸åˆ°åª’é«”é€ç´™åŒ£ï¼"
-
-#~ msgid "Media tray needs to be filled."
-#~ msgstr "媒體é€ç´™åŒ£éœ€è¦æ·»åŠ ç´™å¼µã€‚"
-
-#~ msgid "Missing document-number attribute!"
-#~ msgstr "éºå¤± document-number 屬性ï¼"
-
-#~ msgid "Missing double quote on line %d!"
-#~ msgstr "第 %d 行éºå¤±é›™å¼•號ï¼!"
-
-#~ msgid "Missing form variable!"
-#~ msgstr "éºå¤±è¡¨å–®è®Šæ•¸ï¼"
-
-#~ msgid "Missing notify-subscription-ids attribute!"
-#~ msgstr "éºå¤± notify-subscription-ids 屬性ï¼"
-
-#~ msgid "Missing requesting-user-name attribute!"
-#~ msgstr "éºå¤± requesting-user-name 屬性ï¼"
-
-#~ msgid "Missing required attributes!"
-#~ msgstr "éºå¤±å¿…è¦çš„屬性ï¼"
-
-#~ msgid "Missing value on line %d!"
-#~ msgstr "第 %d 行éºå¤±å€¼ï¼"
-
-#~ msgid ""
-#~ "Model: name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-#~ msgstr ""
-#~ "型號:name = %s\n"
-#~ " natural_language = %s\n"
-#~ " make-and-model = %s\n"
-#~ " device-id = %s\n"
-
-#~ msgid "Monarch"
-#~ msgstr "Monarch"
-
-#~ msgid "Monarch Envelope"
-#~ msgstr "Monarch ä¿¡å°"
-
-#~ msgid "NOTICE: Print file accepted - job ID %d.\n"
-#~ msgstr "NOTICE: 已接å—åˆ—å°æª”案 - 作業 ID %d。\n"
-
-#~ msgid "NOTICE: Print file accepted - job ID unknown.\n"
-#~ msgstr "NOTICE: 已接å—åˆ—å°æª”案 - 作業 ID 未知。\n"
-
-#~ msgid "No PPD name!"
-#~ msgstr "沒有 PPD å稱ï¼"
-
-#~ msgid "No Windows printer drivers are installed!"
-#~ msgstr "æœªå®‰è£ Windows å°è¡¨æ©Ÿé©…動程å¼ï¼"
-
-#~ msgid "No active jobs on %s!"
-#~ msgstr "%s 上沒有已啟用的作業ï¼"
-
-#~ msgid "No attributes in request!"
-#~ msgstr "請求中沒有屬性ï¼"
-
-#~ msgid "No authentication information provided!"
-#~ msgstr "未æä¾›èªè­‰è³‡è¨Šï¼"
-
-#~ msgid "No default printer"
-#~ msgstr "沒有é è¨­å°è¡¨æ©Ÿ"
-
-#~ msgid "No file!?!"
-#~ msgstr "沒有檔案!?!"
-
-#~ msgid "No modification time!"
-#~ msgstr "沒有修改時間ï¼"
-
-#~ msgid "No printer name!"
-#~ msgstr "沒有å°è¡¨æ©Ÿå稱ï¼"
-
-#~ msgid "No printer-uri found for class!"
-#~ msgstr "找ä¸åˆ°é¡žåˆ¥çš„ printer-uriï¼"
-
-#~ msgid "No printer-uri found!"
-#~ msgstr "找ä¸åˆ° printer-uriï¼"
-
-#~ msgid "No printer-uri in request!"
-#~ msgstr "請求中沒有 printer-uriï¼"
-
-#~ msgid "No subscription attributes in request!"
-#~ msgstr "請求中沒有訂閱屬性ï¼"
-
-#~ msgid "OPC almost at end-of-life."
-#~ msgstr "OPC 壽命å³å°‡è€—盡。"
-
-#~ msgid "OPC at end-of-life!"
-#~ msgstr "OPC 壽命耗盡。"
-
-#~ msgid "Out of toner!"
-#~ msgstr "碳粉已耗盡ï¼"
-
-#~ msgid "Output bin almost full."
-#~ msgstr "輸出槽將滿。"
-
-#~ msgid "Output bin full!"
-#~ msgstr "輸出槽已滿ï¼"
-
-#~ msgid "Output for printer %s is sent to %s\n"
-#~ msgstr "已將å°è¡¨æ©Ÿ %s 的輸出傳é€è‡³ %s\n"
-
-#~ msgid "Output for printer %s is sent to remote printer %s on %s\n"
-#~ msgstr "已將å°è¡¨æ©Ÿ %s 的輸出傳é€è‡³é ç«¯å°è¡¨æ©Ÿ %sï¼ˆä½æ–¼ %s 上)\n"
-
-#~ msgid "Output for printer %s/%s is sent to %s\n"
-#~ msgstr "已將å°è¡¨æ©Ÿ %s/%s 的輸出傳é€è‡³ %s\n"
-
-#~ msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
-#~ msgstr "已將å°è¡¨æ©Ÿ %s/%s 的輸出傳é€è‡³é ç«¯å°è¡¨æ©Ÿ %sï¼ˆä½æ–¼ %s 上)\n"
-
-#~ msgid "Output tray missing!"
-#~ msgstr "找ä¸åˆ°è¼¸å‡ºç´™åŒ£ï¼"
-
-#~ msgid "PASS\n"
-#~ msgstr "通éŽ\n"
-
-#~ msgid "PRC1 Envelope"
-#~ msgstr "PRC1 ä¿¡å°"
-
-#~ msgid "PRC10 Envelope"
-#~ msgstr "PRC10 ä¿¡å°"
-
-#~ msgid "PRC2 Envelope"
-#~ msgstr "PRC2 ä¿¡å°"
-
-#~ msgid "PRC3 Envelope"
-#~ msgstr "PRC3 ä¿¡å°"
-
-#~ msgid "PRC32K (Oversize)"
-#~ msgstr "PRC32K(超大型)"
-
-#~ msgid "PRC4 Envelope"
-#~ msgstr "PRC4 ä¿¡å°"
-
-#~ msgid "PRC5 Envelope"
-#~ msgstr "PRC5 ä¿¡å°"
-
-#~ msgid "PRC6 Envelope"
-#~ msgstr "PRC6 ä¿¡å°"
-
-#~ msgid "PRC7 Envelope"
-#~ msgstr "PRC7 ä¿¡å°"
-
-#~ msgid "PRC8 Envelope"
-#~ msgstr "PRC8 ä¿¡å°"
-
-#~ msgid "PRC9 Envelope"
-#~ msgstr "PRC9 ä¿¡å°"
-
-#~ msgid "Personal Envelope"
-#~ msgstr "個人信å°"
-
-#~ msgid "Printer offline."
-#~ msgstr "å°è¡¨æ©Ÿå·²é›¢ç·šã€‚"
-
-#~ msgid "Rank Owner Job File(s) Total Size\n"
-#~ msgstr "等級 æŒæœ‰äºº 作業 檔案 大å°ç¸½è¨ˆ\n"
-
-#~ msgid ""
-#~ "Rank Owner Pri Job Files Total Size\n"
-#~ msgstr ""
-#~ "等級 æŒæœ‰äºº 優先作業 檔案 大å°ç¸½è¨ˆ\n"
-
-#~ msgid "Running command: %s %s -N -A %s -c '%s'\n"
-#~ msgstr "執行指令:%s %s -N -A %s -c '%s'\n"
-
-#~ msgid "SCSI Printer"
-#~ msgstr "SCSI å°è¡¨æ©Ÿ"
-
-#~ msgid "Tabloid (Oversize)"
-#~ msgstr "å°å ±ç”¨ç´™ï¼è¶…大型(Tabloidï¼Oversize)"
-
-#~ msgid "The notify-user-data value is too large (%d > 63 octets)!"
-#~ msgstr "notify-user-data 值太大(%d > 63 å…«ä½å…ƒçµ„)ï¼"
-
-#~ msgid "The printer or class is not shared!"
-#~ msgstr "未共享å°è¡¨æ©Ÿæˆ–類別ï¼"
-
-#~ msgid "The printer or class was not found."
-#~ msgstr "找ä¸åˆ°å°è¡¨æ©Ÿæˆ–類別。"
-
-#~ msgid "The printer-uri attribute is required!"
-#~ msgstr "éœ€è¦ printer-uri 屬性ï¼"
-
-#~ msgid "Toner low."
-#~ msgstr "碳粉éŽå°‘。"
-
-#~ msgid "Too many job-sheets values (%d > 2)!"
-#~ msgstr "太多 job-sheets 值(%d > 2)ï¼"
-
-#~ msgid "Too many printer-state-reasons values (%d > %d)!"
-#~ msgstr "太多 printer-state-reasons 值(%d > %d)ï¼"
-
-#~ msgid "US Executive"
-#~ msgstr "美å¼è¡Œæ”¿ç”¨ç´™ï¼ˆUS Executive)"
-
-#~ msgid "US Fanfold"
-#~ msgstr "ç¾Žå¼æŠ˜ç–Šå¼å ±è¡¨ç´™ï¼ˆUS Fanfold)"
-
-#~ msgid "US Legal (Oversize)"
-#~ msgstr "ç¾Žå¼æ³•定紙ï¼è¶…大型(US Legalï¼Oversize)"
-
-#~ msgid "US Letter (Oversize)"
-#~ msgstr "美å¼ä¿¡ç´™ï¼è¶…大型(US Letterï¼Oversize)"
-
-#~ msgid "US Letter (Small)"
-#~ msgstr "美å¼ä¿¡ç´™ï¼å°åž‹ï¼ˆUS Letterï¼Small)"
-
-#~ msgid "Unable to add job for destination \"%s\"!"
-#~ msgstr "無法為目的地“%sâ€åŠ å…¥ä½œæ¥­ï¼"
-
-#~ msgid "Unable to allocate memory for file types!"
-#~ msgstr "無法為檔案類型分é…記憶體ï¼"
-
-#~ msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
-#~ msgstr "ç„¡æ³•æ‹·è² 64 ä½å…ƒ CUPS å°è¡¨æ©Ÿé©…å‹•ç¨‹å¼æª”案(%d)ï¼"
-
-#~ msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
-#~ msgstr "ç„¡æ³•æ‹·è² 64 ä½å…ƒ Windows å°è¡¨æ©Ÿé©…å‹•ç¨‹å¼æª”案(%d)ï¼"
-
-#~ msgid "Unable to copy CUPS printer driver files (%d)!"
-#~ msgstr "ç„¡æ³•æ‹·è² CUPS å°è¡¨æ©Ÿé©…å‹•ç¨‹å¼æª”案(%d)ï¼"
-
-#~ msgid "Unable to copy PPD file - %s!"
-#~ msgstr "ç„¡æ³•æ‹·è² PPD 檔案 - %sï¼"
-
-#~ msgid "Unable to copy PPD file!"
-#~ msgstr "ç„¡æ³•æ‹·è² PPD 檔案ï¼"
-
-#~ msgid "Unable to copy Windows 2000 printer driver files (%d)!"
-#~ msgstr "ç„¡æ³•æ‹·è² Windows 2000 å°è¡¨æ©Ÿé©…å‹•ç¨‹å¼æª”案(%d)ï¼"
-
-#~ msgid "Unable to copy Windows 9x printer driver files (%d)!"
-#~ msgstr "ç„¡æ³•æ‹·è² Windows 9x å°è¡¨æ©Ÿé©…å‹•ç¨‹å¼æª”案(%d)ï¼"
-
-#~ msgid "Unable to copy interface script - %s!"
-#~ msgstr "無法拷è²ä»‹é¢å·¥åºæŒ‡ä»¤ - %sï¼"
-
-#~ msgid "Unable to create printer-uri!"
-#~ msgstr "無法製作 printer-uriï¼"
-
-#~ msgid "Unable to edit cupsd.conf files larger than 1MB!"
-#~ msgstr "無法編輯大å°è¶…éŽ 1MB çš„ cupsd.conf 檔案ï¼"
-
-#~ msgid "Unable to find destination for job!"
-#~ msgstr "找ä¸åˆ°ä½œæ¥­çš„目的地ï¼"
-
-#~ msgid "Unable to find printer!\n"
-#~ msgstr "找ä¸åˆ°å°è¡¨æ©Ÿï¼\n"
-
-#~ msgid "Unable to install Windows 2000 printer driver files (%d)!"
-#~ msgstr "ç„¡æ³•å®‰è£ Windows 2000 å°è¡¨æ©Ÿé©…å‹•ç¨‹å¼æª”案(%d)ï¼"
-
-#~ msgid "Unable to install Windows 9x printer driver files (%d)!"
-#~ msgstr "ç„¡æ³•å®‰è£ Windows 9x å°è¡¨æ©Ÿé©…å‹•ç¨‹å¼æª”案(%d)ï¼"
-
-#~ msgid "Unable to open document %d in job %d!"
-#~ msgstr "無法打開文件 %d(在作業 %d 中)ï¼"
-
-#~ msgid "Unable to run \"%s\": %s\n"
-#~ msgstr "無法執行“%sâ€ï¼š%s\n"
-
-#~ msgid "Unable to send command to printer driver!"
-#~ msgstr "無法將指令傳é€è‡³å°è¡¨æ©Ÿé©…動程å¼ï¼"
-
-#~ msgid "Unable to set Windows printer driver (%d)!"
-#~ msgstr "無法設定 Windows å°è¡¨æ©Ÿé©…動程å¼ï¼ˆ%d)ï¼"
-
-#~ msgid "Unable to use legacy USB class driver!\n"
-#~ msgstr "無法使用繼承的 USB 類別驅動程å¼ï¼\n"
-
-#~ msgid "Unknown printer error (%s)!"
-#~ msgstr "未知的å°è¡¨æ©ŸéŒ¯èª¤ï¼ˆ%s)ï¼"
-
-#~ msgid "Unsupported character set \"%s\"!"
-#~ msgstr "ä¸å—支æ´çš„字元集“%sâ€ï¼"
-
-#~ msgid "Unsupported compression \"%s\"!"
-#~ msgstr "ä¸å—支æ´çš„壓縮“%sâ€ï¼"
-
-#~ msgid "Unsupported compression attribute %s!"
-#~ msgstr "ä¸å—支æ´çš„壓縮屬性 %sï¼"
-
-#~ msgid "Unsupported format \"%s\"!"
-#~ msgstr "ä¸å—支æ´çš„æ ¼å¼â€œ%sâ€ï¼"
-
-#~ msgid "Unsupported format '%s'!"
-#~ msgstr "ä¸å—支æ´çš„æ ¼å¼ '%s'ï¼"
-
-#~ msgid "Unsupported format '%s/%s'!"
-#~ msgstr "ä¸å—支æ´çš„æ ¼å¼ '%s/%s'ï¼"
-
-#~ msgid ""
-#~ "Usage:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-#~ msgstr ""
-#~ "使用:\n"
-#~ "\n"
-#~ " lpadmin [-h server] -d destination\n"
-#~ " lpadmin [-h server] -x destination\n"
-#~ " lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m "
-#~ "model]\n"
-#~ " [-r remove-class] [-v device] [-D description]\n"
-#~ " [-P ppd-file] [-o name=value]\n"
-#~ " [-u allow:user,user] [-u deny:user,user]\n"
-#~ "\n"
-
-#~ msgid "Usage: %s job user title copies options [filename]\n"
-#~ msgstr "使用:%s 作業使用者標題拷è²é¸é … [檔å]\n"
-
-#~ msgid "Usage: %s job-id user title copies options [file]\n"
-#~ msgstr "使用:%s job-id 使用者標題拷è²é¸é … [檔案]\n"
-
-#~ msgid "Usage: %s job-id user title copies options file\n"
-#~ msgstr "使用:%s job-id 使用者標題拷è²é¸é …檔案\n"
-
-#~ msgid ""
-#~ "Usage: convert [ options ]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -f filename Set file to be converted (otherwise stdin)\n"
-#~ " -o filename Set file to be generated (otherwise stdout)\n"
-#~ " -i mime/type Set input MIME type (otherwise auto-typed)\n"
-#~ " -j mime/type Set output MIME type (otherwise application/pdf)\n"
-#~ " -P filename.ppd Set PPD file\n"
-#~ " -a 'name=value ...' Set option(s)\n"
-#~ " -U username Set username for job\n"
-#~ " -J title Set title\n"
-#~ " -c copies Set number of copies\n"
-#~ " -u Remove the PPD file when finished\n"
-#~ " -D Remove the input file when finished\n"
-#~ msgstr ""
-#~ "使用:convert [ options ]\n"
-#~ "\n"
-#~ "é¸é …:\n"
-#~ "\n"
-#~ " -f filename 設定è¦è½‰æ›çš„æª”案(å¦å‰‡ç‚º stdin)\n"
-#~ " -o filename 設定è¦ç”¢ç”Ÿçš„æª”案(å¦å‰‡ç‚º stdout)\n"
-#~ " -i mime/type 設定輸入 MIME 類型(å¦å‰‡ç‚º auto-typed)\n"
-#~ " -j mime/type 設定輸出 MIME 類型(å¦å‰‡ç‚º application/pdf)\n"
-#~ " -P filename.ppd 設定 PPD 檔案\n"
-#~ " -a 'name=value ...' 設定é¸é …\n"
-#~ " -U username 設定作業的使用者å稱\n"
-#~ " -J title 設定標題\n"
-#~ " -c copies 設定份數\n"
-#~ " -u å®Œæˆæ™‚移除 PPD 檔案\n"
-#~ " -D å®Œæˆæ™‚移除輸入檔案\n"
-
-#~ msgid ""
-#~ "Usage: cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "Options:\n"
-#~ " -E Encrypt the connection to the server\n"
-#~ " -H samba-server Use the named SAMBA server\n"
-#~ " -U samba-user Authenticate using the named SAMBA user\n"
-#~ " -a Export all printers\n"
-#~ " -h cups-server Use the named CUPS server\n"
-#~ " -v Be verbose (show commands)\n"
-#~ msgstr ""
-#~ "使用:cupsaddsmb [options] printer1 ... printerN\n"
-#~ " cupsaddsmb [options] -a\n"
-#~ "\n"
-#~ "é¸é …:\n"
-#~ " -E 加密與伺æœå™¨çš„連線\n"
-#~ " -H samba-server 使用已命åçš„ SAMBA 伺æœå™¨\n"
-#~ " -U samba-user 使用已命åçš„ SAMBA 使用者進行èªè­‰\n"
-#~ " -a 輸出所有å°è¡¨æ©Ÿ\n"
-#~ " -h cups-server 使用已命åçš„ CUPS 伺æœå™¨\n"
-#~ " -v 列出明細(顯示指令)\n"
-
-#~ msgid ""
-#~ "Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -E Enable encryption\n"
-#~ " -U username Specify username\n"
-#~ " -h server[:port] Specify server address\n"
-#~ "\n"
-#~ " --[no-]debug-logging Turn debug logging on/off\n"
-#~ " --[no-]remote-admin Turn remote administration on/off\n"
-#~ " --[no-]remote-any Allow/prevent access from the Internet\n"
-#~ " --[no-]remote-printers Show/hide remote printers\n"
-#~ " --[no-]share-printers Turn printer sharing on/off\n"
-#~ " --[no-]user-cancel-any Allow/prevent users to cancel any job\n"
-#~ msgstr ""
-#~ "使用:cupsctl [options] [param=value ... paramN=valueN]\n"
-#~ "\n"
-#~ "é¸é …:\n"
-#~ "\n"
-#~ " -E 啟用加密\n"
-#~ " -U username 指定使用者å稱\n"
-#~ " -h server[:port] 指定伺æœå™¨ä½å€\n"
-#~ "\n"
-#~ " --[no-]debug-logging 開啟/關閉除錯記錄\n"
-#~ " --[no-]remote-admin 開啟/關閉é ç«¯ç®¡ç†\n"
-#~ " --[no-]remote-any å…許∕ä¸å…許從 Internet å­˜å–\n"
-#~ " --[no-]remote-printers 顯示∕隱è—é ç«¯å°è¡¨æ©Ÿ\n"
-#~ " --[no-]share-printers 開啟/關閉å°è¡¨æ©Ÿå…±äº«\n"
-#~ " --[no-]user-cancel-any å…許∕ä¸å…è¨±ä½¿ç”¨è€…å–æ¶ˆä»»ä½•作業\n"
-
-#~ msgid ""
-#~ "Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file Load alternate configuration file\n"
-#~ "-f Run in the foreground\n"
-#~ "-F Run in the foreground but detach\n"
-#~ "-h Show this usage message\n"
-#~ "-l Run cupsd from launchd(8)\n"
-#~ msgstr ""
-#~ "使用:cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
-#~ "\n"
-#~ "-c config-file 載入替用é…置檔案\n"
-#~ "-f åœ¨å‰æ™¯åŸ·è¡Œ\n"
-#~ "-F åœ¨å‰æ™¯åŸ·è¡Œä½†èˆ‡ä¹‹åˆ†é›¢\n"
-#~ "-h 顯示本用法訊æ¯\n"
-#~ "-l 從 launchd(8) 執行 cupsd\n"
-
-#~ msgid ""
-#~ "Usage: cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -c cupsd.conf Set cupsd.conf file to use\n"
-#~ " -j job-id[,N] Filter file N from the specified job (default is file "
-#~ "1)\n"
-#~ " -n copies Set number of copies\n"
-#~ " -o name=value Set option(s)\n"
-#~ " -p filename.ppd Set PPD file\n"
-#~ " -t title Set title\n"
-#~ msgstr ""
-#~ "使用:cupsfilter -m mime/type [ options ] filename\n"
-#~ "\n"
-#~ "é¸é …:\n"
-#~ "\n"
-#~ " -c cupsd.conf 設定è¦ä½¿ç”¨çš„ cupsd.conf 檔案\n"
-#~ " -j job-id[,N] å¾žæŒ‡å®šçš„ä½œæ¥­éŽæ¿¾æª”案 N(é è¨­ç‚ºæª”案 1)\n"
-#~ " -n copies 設定份數\n"
-#~ " -o name=value 設定é¸é …\n"
-#~ " -p filename.ppd 設定 PPD 檔案\n"
-#~ " -t title 設定標題\n"
-
-#~ msgid ""
-#~ "Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -h Show program usage\n"
-#~ "\n"
-#~ " Note: this program only validates the DSC comments, not the "
-#~ "PostScript itself.\n"
-#~ msgstr ""
-#~ "使用:cupstestdsc [options] filename.ps [... filename.ps]\n"
-#~ " cupstestdsc [options] -\n"
-#~ "\n"
-#~ "é¸é …:\n"
-#~ "\n"
-#~ " -h 顯示程å¼ç”¨æ³•\n"
-#~ "\n"
-#~ " NOTICE: 此程å¼åƒ…é©—è­‰ DSC è¨»è§£ï¼Œè€Œä¸æ˜¯ PostScript 本身。\n"
-
-#~ msgid ""
-#~ "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "Options:\n"
-#~ "\n"
-#~ " -R root-directory Set alternate root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " Issue warnings instead of errors\n"
-#~ " -q Run silently\n"
-#~ " -r Use 'relaxed' open mode\n"
-#~ " -v Be slightly verbose\n"
-#~ " -vv Be very verbose\n"
-#~ msgstr ""
-#~ "使用:cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
-#~ " program | cupstestppd [options] -\n"
-#~ "\n"
-#~ "é¸é …:\n"
-#~ "\n"
-#~ " -R root-directory 設定替用 root\n"
-#~ " -W {all,none,constraints,defaults,duplex,filters,translations}\n"
-#~ " ç™¼å‡ºè­¦å‘Šè€Œä¸æ˜¯éŒ¯èª¤\n"
-#~ " -q éœéŸ³åŸ·è¡Œ\n"
-#~ " -r 使用 'relaxed' 打開模å¼\n"
-#~ " -v 列出明細\n"
-#~ " -vv 列出詳盡明細\n"
-
-#~ msgid "Usage: lpmove job/src dest\n"
-#~ msgstr "使用:lpmove job/src dest\n"
-
-#~ msgid ""
-#~ "Usage: lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-#~ msgstr ""
-#~ "使用:lpoptions [-h server] [-E] -d printer\n"
-#~ " lpoptions [-h server] [-E] [-p printer] -l\n"
-#~ " lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
-#~ " lpoptions [-h server] [-E] -x printer\n"
-
-#~ msgid "Usage: lppasswd [-g groupname]\n"
-#~ msgstr "使用:lppasswd [-g groupname]\n"
-
-#~ msgid ""
-#~ "Usage: lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-#~ msgstr ""
-#~ "使用:lppasswd [-g groupname] [username]\n"
-#~ " lppasswd [-g groupname] -a [username]\n"
-#~ " lppasswd [-g groupname] -x [username]\n"
-
-#~ msgid ""
-#~ "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-#~ msgstr ""
-#~ "使用:lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
-
-#~ msgid ""
-#~ "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -c catalog.po Load the specified message catalog.\n"
-#~ " -d output-dir Specify the output directory.\n"
-#~ " -l lang[,lang,...] Specify the output language(s) (locale).\n"
-#~ " -m Use the ModelName value as the filename.\n"
-#~ " -t Test PPDs instead of generating them.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ " -z Compress PPD files using GNU zip.\n"
-#~ " --cr End lines with CR (Mac OS 9).\n"
-#~ " --crlf End lines with CR + LF (Windows).\n"
-#~ " --lf End lines with LF (UNIX/Linux/Mac OS X).\n"
-#~ msgstr ""
-#~ "使用:ppdc [options] filename.drv [ ... filenameN.drv ]\n"
-#~ "é¸é …:\n"
-#~ " -D name=value 為已命å的變數設定值。\n"
-#~ " -I include-dir 將包å«çš„目錄加入æœå°‹è·¯å¾‘。\n"
-#~ " -c catalog.po 載入指定的訊æ¯ç›®éŒ„。\n"
-#~ " -d output-dir 指定輸出目錄。\n"
-#~ " -l lang[,lang,...] 指定輸出語言(å€åŸŸç’°å¢ƒè¨­å®šï¼‰ã€‚\n"
-#~ " -m 使用 ModelName 值作為檔å。\n"
-#~ " -t æ¸¬è©¦è€Œä¸æ˜¯ç”¢ç”Ÿ PPD。\n"
-#~ " -v 列出明細(v 越多就越詳盡)。\n"
-#~ " -z 使用 GNU zip 壓縮 PPD 檔案。\n"
-#~ " --cr 以 CR 作為行çµå°¾ï¼ˆMac OS 9)。\n"
-#~ " --crlf 以 CR + LF 作為行çµå°¾ï¼ˆWindows)。\n"
-#~ " --lf 以 LF 作為行çµå°¾ï¼ˆUNIX/Linux/Mac OS X)。\n"
-
-#~ msgid ""
-#~ "Usage: ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ "Options:\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ msgstr ""
-#~ "使用:ppdhtml [options] filename.drv >filename.html\n"
-#~ " -D name=value 為已命å的變數設定值。\n"
-#~ "é¸é …:\n"
-#~ " -I include-dir 將包å«çš„目錄加入æœå°‹è·¯å¾‘。\n"
-
-#~ msgid ""
-#~ "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-#~ msgstr ""
-#~ "使用:ppdi [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "é¸é …:\n"
-#~ " -I include-dir\n"
-#~ " -o filename.drv\n"
-
-#~ msgid ""
-#~ "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "Options:\n"
-#~ " -o filename.ppd[.gz]\n"
-#~ msgstr ""
-#~ "使用:ppdmerge [options] filename.ppd [ ... filenameN.ppd ]\n"
-#~ "é¸é …:\n"
-#~ " -o filename.ppd[.gz]\n"
-
-#~ msgid ""
-#~ "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "Options:\n"
-#~ " -D name=value Set named variable to value.\n"
-#~ " -I include-dir Add include directory to search path.\n"
-#~ " -v Be verbose (more v's for more verbosity).\n"
-#~ msgstr ""
-#~ "使用:ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]\n"
-#~ "é¸é …:\n"
-#~ " -D name=value 為已命å的變數設定值。\n"
-#~ " -I include-dir 將包å«çš„目錄加入æœå°‹è·¯å¾‘。\n"
-#~ " -v 列出明細(v 越多就越詳盡)。\n"
-
-#~ msgid "Usage: snmp [host-or-ip-address]\n"
-#~ msgstr "使用:snmp [host-or-ip-address]\n"
-
-#~ msgid "WARNING: Adding only the first %d printers found"
-#~ msgstr "WARNING: åƒ…åŠ å…¥æ‰¾åˆ°çš„å‰ %d 個å°è¡¨æ©Ÿ"
-
-#~ msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
-#~ msgstr "WARNING: waiteof é¸é …“%sâ€é æœŸç‚ºå¸ƒæž—類型\n"
-
-#~ msgid "WARNING: Failed to read side-channel request!\n"
-#~ msgstr "WARNING: ç„¡æ³•è®€å– side-channel 請求ï¼\n"
-
-#~ msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
-#~ msgstr "WARNING: 無法é€éŽ IncludeFeature 併入é¸é …“%sâ€ï¼\n"
-
-#~ msgid "WARNING: Printer not responding\n"
-#~ msgstr "WARNING: å°è¡¨æ©Ÿæœªå›žæ‡‰ï¼"
-
-#~ msgid "WARNING: Printer sent unexpected EOF\n"
-#~ msgstr "WARNING: å°è¡¨æ©Ÿå‚³é€äº†éžé æœŸçš„ EOF\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with command status byte after %d "
-#~ "seconds!\n"
-#~ msgstr "WARNING: é ç«¯ä¸»æ©Ÿæœªåœ¨ %d ç§’å¾Œå°æŒ‡ä»¤ç‹€æ…‹ä½å…ƒçµ„產生回應ï¼\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with control status byte after %d "
-#~ "seconds!\n"
-#~ msgstr "WARNING: é ç«¯ä¸»æ©Ÿæœªåœ¨ %d ç§’å¾Œå°æŽ§åˆ¶ç‹€æ…‹ä½å…ƒçµ„產生回應ï¼\n"
-
-#~ msgid ""
-#~ "WARNING: Remote host did not respond with data status byte after %d "
-#~ "seconds!\n"
-#~ msgstr "WARNING: é ç«¯ä¸»æ©Ÿæœªåœ¨ %d 秒後å°è³‡æ–™ç‹€æ…‹ä½å…ƒçµ„產生回應ï¼\n"
-
-#~ msgid "WARNING: SCSI command timed out (%d); retrying...\n"
-#~ msgstr "WARNING: SCSI 指令逾時(%d);正在é‡è©¦â‹¯\n"
-
-#~ msgid ""
-#~ "WARNING: This document does not conform to the Adobe Document Structuring "
-#~ "Conventions and may not print correctly!\n"
-#~ msgstr "WARNING: 此文件未éµå¾ªâ€œAdobe æ–‡ä»¶çµæ§‹æ…£ä¾‹â€ï¼Œè€Œä¸”ä¸èƒ½æ­£ç¢ºåœ°åˆ—å°ï¼\n"
-
-#~ msgid "WARNING: Unable to open \"%s:%s\": %s\n"
-#~ msgstr "WARNING: 無法打開“%s:%sâ€ï¼š%s\n"
-
-#~ msgid "WARNING: Unable to send PAP status request"
-#~ msgstr "WARNING: ç„¡æ³•å‚³é€ PAP 狀態請求ï¼"
-
-#~ msgid "WARNING: Unexpected PAP packet of type %d\n"
-#~ msgstr "WARNING: 類型 %d çš„éžé æœŸ PAP å°åŒ…\n"
-
-#~ msgid "WARNING: Unknown PAP packet of type %d\n"
-#~ msgstr "WARNING: 類型 %d 的未知 PAP å°åŒ…\n"
-
-#~ msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
-#~ msgstr "WARNING: 未知的é¸é …“%sâ€ï¼ˆé‡å°é¸é …“%sâ€ï¼‰ï¼\n"
-
-#~ msgid "WARNING: Unknown option \"%s\"!\n"
-#~ msgstr "WARNING: 未知的é¸é …“%sâ€ï¼\n"
-
-#~ msgid "WARNING: Unsupported baud rate %s!\n"
-#~ msgstr "WARNING: ä¸å—支æ´çš„傳輸速率 %sï¼\n"
-
-#~ msgid "WARNING: number expected for status option \"%s\"\n"
-#~ msgstr "WARNING: 狀態é¸é …“%sâ€é æœŸç‚ºæ•¸å­—\n"
-
-#~ msgid ""
-#~ "WARNING: recoverable: Network host '%s' is busy; will retry in %d "
-#~ "seconds...\n"
-#~ msgstr "WARNING: å¯å›žå¾©ï¼šç¶²è·¯ä¸»æ©Ÿ '%s' 忙碌中;%d å…§å°‡é‡è©¦â‹¯\n"
-
-#~ msgid "Warning, no Windows 2000 printer drivers are installed!"
-#~ msgstr "è­¦å‘Šï¼Œæœªå®‰è£ Windows 2000 å°è¡¨æ©Ÿé©…動程å¼ï¼"
-
-#~ msgid "You4 Envelope"
-#~ msgstr "You4 ä¿¡å°"
-
-#~ msgid "convert: Use the -f option to specify a file to convert.\n"
-#~ msgstr "convert:使用 -f é¸é …來指定è¦è½‰æ›çš„æª”案。\n"
-
-#~ msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
-#~ msgstr "cupsaddsmb:沒有é©ç”¨æ–¼å°è¡¨æ©Ÿâ€œ%sâ€çš„ PPD 檔案 - %s\n"
-
-#~ msgid "cupsctl: Unable to connect to server: %s\n"
-#~ msgstr "cupsctl:無法連接伺æœå™¨ï¼š%s\n"
-
-#~ msgid "cupsctl: Unknown option \"%s\"!\n"
-#~ msgstr "cupsctl:未知的é¸é …“%sâ€ï¼\n"
-
-#~ msgid "cupsctl: Unknown option \"-%c\"!\n"
-#~ msgstr "cupsctl:未知的é¸é …“-%câ€ï¼\n"
-
-#~ msgid "cupsd: Expected config filename after \"-c\" option!\n"
-#~ msgstr "cupsd:“-câ€é¸é …後é¢é æœŸç‚ºé…置檔案å稱ï¼\n"
-
-#~ msgid "cupsd: Unable to get current directory!\n"
-#~ msgstr "cupsd:無法å–å¾—ç›®å‰çš„目錄ï¼\n"
-
-#~ msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
-#~ msgstr "cupsdï¼šæœªçŸ¥çš„åƒæ•¸â€œ%sâ€- 正在中止ï¼\n"
-
-#~ msgid "cupsd: Unknown option \"%c\" - aborting!\n"
-#~ msgstr "cupsd:未知的é¸é …“%câ€- 正在中止ï¼\n"
-
-#~ msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
-#~ msgstr "cupsd:未編譯入 launchd(8) 支æ´ï¼Œåœ¨æ­£å¸¸æ¨¡å¼ä¸‹åŸ·è¡Œã€‚\n"
-
-#~ msgid "cupsfilter: Invalid document number %d!\n"
-#~ msgstr "cupsfilter:無效的文件編號 %dï¼\n"
-
-#~ msgid "cupsfilter: Invalid job ID %d!\n"
-#~ msgstr "cupsfilter:無效的作業 ID %dï¼\n"
-
-#~ msgid "cupsfilter: Only one filename can be specified!\n"
-#~ msgstr "cupsfilter:åªèƒ½æŒ‡å®šä¸€å€‹æª”åï¼\n"
-
-#~ msgid "cupsfilter: Unable to create temporary file: %s\n"
-#~ msgstr "cupsfilter:無法製作暫存檔:%s\n"
-
-#~ msgid "cupsfilter: Unable to get job file - %s\n"
-#~ msgstr "cupsfilter:無法å–得作業檔案 - %s\n"
-
-#~ msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
-#~ msgstr "cupstestppd:-q é¸é …與 -v é¸é …ä¸ç›¸å®¹ã€‚\n"
-
-#~ msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
-#~ msgstr "cupstestppd:-v é¸é …與 -q é¸é …ä¸ç›¸å®¹ã€‚\n"
-
-#~ msgid "device for %s/%s: %s\n"
-#~ msgstr "%s/%s 的設備:%s\n"
-
-#~ msgid "device for %s: %s\n"
-#~ msgstr "%s 的設備:%s\n"
-
-#~ msgid "help\t\tget help on commands\n"
-#~ msgstr "輔助說明\t\tå–得指令的輔助說明\n"
-
-#~ msgid "job-printer-uri attribute missing!"
-#~ msgstr "job-printer-uri 屬性éºå¤±ï¼"
-
-#~ msgid "lpadmin: Class name can only contain printable characters!\n"
-#~ msgstr "lpadmin:類別å稱åªèƒ½åŒ…å«å¯åˆ—å°çš„å­—å…ƒï¼\n"
-
-#~ msgid "lpadmin: Expected PPD after '-P' option!\n"
-#~ msgstr "lpadmin:'-P' é¸é …後é¢é æœŸç‚º PPDï¼\n"
-
-#~ msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
-#~ msgstr "lpadmin:&aops;-u&aops; é¸é …後é¢é æœŸç‚º allow/deny:userlistï¼\n"
-
-#~ msgid "lpadmin: Expected class after '-r' option!\n"
-#~ msgstr "lpadmin:&aops;-r&aops; é¸é …後é¢é æœŸç‚ºé¡žåˆ¥ï¼\n"
-
-#~ msgid "lpadmin: Expected class name after '-c' option!\n"
-#~ msgstr "lpadmin:&aops;-c&aops; é¸é …後é¢é æœŸç‚ºé¡žåˆ¥å稱ï¼\n"
-
-#~ msgid "lpadmin: Expected description after '-D' option!\n"
-#~ msgstr "lpadmin:&aops;-D&aops; é¸é …後é¢é æœŸç‚ºæè¿°ï¼\n"
-
-#~ msgid "lpadmin: Expected device URI after '-v' option!\n"
-#~ msgstr "lpadmin:&aops;-v&aops; é¸é …後é¢é æœŸç‚ºè¨­å‚™ URIï¼\n"
-
-#~ msgid "lpadmin: Expected file type(s) after '-I' option!\n"
-#~ msgstr "lpadmin:&aops;-I&aops; é¸é …後é¢é æœŸç‚ºæª”案類型ï¼\n"
-
-#~ msgid "lpadmin: Expected hostname after '-h' option!\n"
-#~ msgstr "lpadmin:&aops;-h&aops; é¸é …後é¢é æœŸç‚ºä¸»æ©Ÿå稱ï¼\n"
-
-#~ msgid "lpadmin: Expected interface after '-i' option!\n"
-#~ msgstr "lpadmin:&aops;-i&aops; é¸é …後é¢é æœŸç‚ºä»‹é¢ï¼\n"
-
-#~ msgid "lpadmin: Expected location after '-L' option!\n"
-#~ msgstr "lpadmin:'-L' é¸é …後é¢é æœŸç‚ºä½ç½®ï¼\n"
-
-#~ msgid "lpadmin: Expected model after '-m' option!\n"
-#~ msgstr "lpadmin:'-m' é¸é …後é¢é æœŸç‚ºåž‹è™Ÿï¼\n"
-
-#~ msgid "lpadmin: Expected name=value after '-o' option!\n"
-#~ msgstr "lpadmin:&aops;-o&aops; é¸é …後é¢é æœŸç‚º name=valueï¼\n"
-
-#~ msgid "lpadmin: Expected printer after '-p' option!\n"
-#~ msgstr "lpadmin:'-p' é¸é …後é¢é æœŸç‚ºå°è¡¨æ©Ÿï¼\n"
-
-#~ msgid "lpadmin: Expected printer name after '-d' option!\n"
-#~ msgstr "lpadmin:'-d' é¸é …後é¢é æœŸç‚ºå°è¡¨æ©Ÿå稱ï¼\n"
-
-#~ msgid "lpadmin: Expected printer or class after '-x' option!\n"
-#~ msgstr "lpadmin:'-x' é¸é …後é¢é æœŸç‚ºå°è¡¨æ©Ÿæˆ–類別ï¼\n"
-
-#~ msgid "lpadmin: No member names were seen!\n"
-#~ msgstr "lpadminï¼šæœªç™¼ç¾æœƒå“¡å稱ï¼\n"
-
-#~ msgid "lpadmin: Printer %s is already a member of class %s.\n"
-#~ msgstr "lpadmin:å°è¡¨æ©Ÿ %s 已經是類別 %s çš„æˆå“¡ã€‚\n"
-
-#~ msgid "lpadmin: Printer %s is not a member of class %s.\n"
-#~ msgstr "lpadmin:å°è¡¨æ©Ÿ %s 䏿˜¯é¡žåˆ¥ %s çš„æˆå“¡ã€‚\n"
-
-#~ msgid "lpadmin: Printer name can only contain printable characters!\n"
-#~ msgstr "lpadmin:å°è¡¨æ©Ÿå稱åªèƒ½åŒ…å«å¯åˆ—å°çš„å­—å…ƒï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to add a printer to the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin:無法將å°è¡¨æ©ŸåŠ å…¥åˆ°é¡žåˆ¥ï¼š\n"
-#~ " æ‚¨å¿…é ˆç¾æŒ‡å®šå°è¡¨æ©Ÿå稱ï¼\n"
-
-#~ msgid "lpadmin: Unable to connect to server: %s\n"
-#~ msgstr "lpadmin:無法連接伺æœå™¨ï¼š%s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file - %s\n"
-#~ msgstr "lpadmin:無法製作暫存檔 - %s\n"
-
-#~ msgid "lpadmin: Unable to create temporary file: %s\n"
-#~ msgstr "lpadmin:無法製作暫存檔:%s\n"
-
-#~ msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
-#~ msgstr "lpadmin:無法打開 PPD 檔案“%sâ€- %s\n"
-
-#~ msgid "lpadmin: Unable to open file \"%s\": %s\n"
-#~ msgstr "lpadmin:無法打開檔案“%sâ€ï¼š%s\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to remove a printer from the class:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin:無法從類別中移除å°è¡¨æ©Ÿï¼š\n"
-#~ " 您必須先指定å°è¡¨æ©Ÿå稱ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin:無法設定 PPD 檔案:\n"
-#~ " 您必須先指定å°è¡¨æ©Ÿå稱ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the device URI:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin:無法設定設備 URI:\n"
-#~ " 您必須先指定å°è¡¨æ©Ÿå稱ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script or PPD file:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin:無法設定 PPD 檔案的介é¢å·¥åºæŒ‡ä»¤ï¼š\n"
-#~ " 您必須先指定å°è¡¨æ©Ÿå稱ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the interface script:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin:無法設定介é¢å·¥åºæŒ‡ä»¤ï¼š\n"
-#~ " 您必須先指定å°è¡¨æ©Ÿå稱ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer description:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin:無法設定å°è¡¨æ©Ÿæè¿°ï¼š\n"
-#~ " 您必須先指定å°è¡¨æ©Ÿå稱ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer location:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin:無法設定å°è¡¨æ©Ÿä½ç½®ï¼š\n"
-#~ " 您必須先指定å°è¡¨æ©Ÿå稱ï¼\n"
-
-#~ msgid ""
-#~ "lpadmin: Unable to set the printer options:\n"
-#~ " You must specify a printer name first!\n"
-#~ msgstr ""
-#~ "lpadmin:無法設定å°è¡¨æ©Ÿé¸é …:\n"
-#~ " 您必須先指定å°è¡¨æ©Ÿå稱ï¼\n"
-
-#~ msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
-#~ msgstr "lpadmin:未知的 allow/deny é¸é …“%sâ€ï¼\n"
-
-#~ msgid "lpadmin: Unknown argument '%s'!\n"
-#~ msgstr "lpadminï¼šæœªçŸ¥çš„åƒæ•¸ '%s'ï¼\n"
-
-#~ msgid "lpadmin: Unknown option '%c'!\n"
-#~ msgstr "lpadmin:未知的é¸é … '%c'ï¼\n"
-
-#~ msgid "lpadmin: Warning - content type list ignored!\n"
-#~ msgstr "lpadmin:警告 - 已忽略內容類型列表ï¼\n"
-
-#~ msgid "lpinfo: Expected 1284 device ID string after --device-id!\n"
-#~ msgstr "lpinfo:--device-id 後é¢é æœŸç‚º 1284 設備 ID 字串ï¼\n"
-
-#~ msgid "lpinfo: Expected language after --language!\n"
-#~ msgstr "lpinfo:--language 後é¢é æœŸç‚ºèªžè¨€ï¼\n"
-
-#~ msgid "lpinfo: Expected make and model after --make-and-model!\n"
-#~ msgstr "lpinfo:--make-and-model 後é¢é æœŸç‚ºè£½é€ å’Œåž‹è™Ÿï¼\n"
-
-#~ msgid "lpinfo: Expected product string after --product!\n"
-#~ msgstr "lpinfo:--product 後é¢é æœŸç‚ºç”¢å“字串ï¼\n"
-
-#~ msgid "lpinfo: Expected scheme list after --exclude-schemes!\n"
-#~ msgstr "lpinfo:--exclude-schemes 後é¢é æœŸç‚ºæž¶æ§‹åˆ—表ï¼\n"
-
-#~ msgid "lpinfo: Expected scheme list after --include-schemes!\n"
-#~ msgstr "lpinfo:--include-schemes 後é¢é æœŸç‚ºæž¶æ§‹åˆ—表ï¼\n"
-
-#~ msgid "lpinfo: Expected timeout after --timeout!\n"
-#~ msgstr "lpinfo:--timeout 後é¢é æœŸç‚ºé€¾æ™‚ï¼\n"
-
-#~ msgid "lpinfo: Unknown argument '%s'!\n"
-#~ msgstr "lpinfoï¼šæœªçŸ¥çš„åƒæ•¸ '%s'ï¼\n"
-
-#~ msgid "lpinfo: Unknown option '%c'!\n"
-#~ msgstr "lpinfo:未知的é¸é … '%c'ï¼\n"
-
-#~ msgid "lpinfo: Unknown option '%s'!\n"
-#~ msgstr "lpinfo:未知的é¸é … '%s'ï¼\n"
-
-#~ msgid "lpmove: Unable to connect to server: %s\n"
-#~ msgstr "lpmove:無法連接伺æœå™¨ï¼š%s\n"
-
-#~ msgid "lpmove: Unknown argument '%s'!\n"
-#~ msgstr "lpmoveï¼šæœªçŸ¥çš„åƒæ•¸ '%s'ï¼\n"
-
-#~ msgid "lpmove: Unknown option '%c'!\n"
-#~ msgstr "lpmove:未知的é¸é … '%c'ï¼\n"
-
-#~ msgid "lpoptions: No printers!?!\n"
-#~ msgstr "lpoptions:沒有å°è¡¨æ©Ÿ!?!\n"
-
-#~ msgid "lpoptions: Unable to add printer or instance: %s\n"
-#~ msgstr "lpoptions:無法新增å°è¡¨æ©Ÿæˆ–實例:%s\n"
-
-#~ msgid "lpoptions: Unable to get PPD file for %s: %s\n"
-#~ msgstr "lpoptions:無法å–å¾— %s çš„ PPD 檔案:%s\n"
-
-#~ msgid "lpoptions: Unable to open PPD file for %s!\n"
-#~ msgstr "lpoptions:無法打開 %s çš„ PPD 檔案ï¼\n"
-
-#~ msgid "lpoptions: Unknown printer or class!\n"
-#~ msgstr "lpoptions:未知的å°è¡¨æ©Ÿæˆ–類別ï¼\n"
-
-#~ msgid "lppasswd: Only root can add or delete passwords!\n"
-#~ msgstr "lppasswdï¼šåªæœ‰ root 使用者æ‰èƒ½åŠ å…¥æˆ–åˆªé™¤å¯†ç¢¼ï¼\n"
-
-#~ msgid "lppasswd: Password file busy!\n"
-#~ msgstr "lppasswd:密碼檔案忙碌中ï¼\n"
-
-#~ msgid "lppasswd: Password file not updated!\n"
-#~ msgstr "lppasswd:未更新密碼檔案ï¼\n"
-
-#~ msgid "lppasswd: Sorry, password doesn't match!\n"
-#~ msgstr "lppasswd:抱歉,密碼ä¸ç›¸ç¬¦ï¼\n"
-
-#~ msgid ""
-#~ "lppasswd: Sorry, password rejected.\n"
-#~ "Your password must be at least 6 characters long, cannot contain\n"
-#~ "your username, and must contain at least one letter and number.\n"
-#~ msgstr ""
-#~ "lppasswd:抱歉,密碼é­åˆ°æ‹’絕。\n"
-#~ "您的密碼長度至少必須為 6 個字元,ä¸èƒ½åŒ…å«\n"
-#~ "使用者å稱,而且至少必須包å«ä¸€å€‹å­—æ¯å’Œæ•¸å­—。\n"
-
-#~ msgid "lppasswd: Sorry, passwords don't match!\n"
-#~ msgstr "lppasswd:抱歉,密碼ä¸ç›¸ç¬¦ï¼\n"
-
-#~ msgid "lppasswd: Unable to copy password string: %s\n"
-#~ msgstr "lppasswd:無法拷è²å¯†ç¢¼å­—串:%s\n"
-
-#~ msgid "lppasswd: Unable to open password file: %s\n"
-#~ msgstr "lppasswd:無法打開密碼檔案:%s\n"
-
-#~ msgid "lppasswd: Unable to write to password file: %s\n"
-#~ msgstr "lppasswd:無法寫入密碼檔案:%s\n"
-
-#~ msgid "lppasswd: failed to backup old password file: %s\n"
-#~ msgstr "lppasswd:無法備份舊的密碼檔案:%s\n"
-
-#~ msgid "lppasswd: failed to rename password file: %s\n"
-#~ msgstr "lppasswdï¼šç„¡æ³•é‡æ–°å‘½å密碼檔案:%s\n"
-
-#~ msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
-#~ msgstr "lppasswd:使用者“%sâ€å’Œç¾¤çµ„“%sâ€ä¸å­˜åœ¨ã€‚\n"
-
-#~ msgid ""
-#~ "lpstat: error - %s environment variable names non-existent destination \"%"
-#~ "s\"!\n"
-#~ msgstr "lpstat:錯誤 - %s 環境變數å稱中有ä¸å­˜åœ¨çš„目的地“%sâ€ï¼\n"
-
-#~ msgid "members of class %s:\n"
-#~ msgstr "類別 %s çš„æˆå“¡ï¼š\n"
-
-#~ msgid "no entries\n"
-#~ msgstr "沒有項目\n"
-
-#~ msgid "no system default destination\n"
-#~ msgstr "沒有系統é è¨­ç›®çš„地\n"
-
-#~ msgid "notify-events not specified!"
-#~ msgstr "未指定 notify-eventsï¼"
-
-#~ msgid "notify-recipient-uri URI \"%s\" is already used!"
-#~ msgstr "notify-recipient-uri URI“%sâ€å·²è¢«ä½¿ç”¨ï¼"
-
-#~ msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
-#~ msgstr "notify-recipient-uri URI“%sâ€ä½¿ç”¨çš„æ˜¯æœªçŸ¥çš„æž¶æ§‹ï¼"
-
-#~ msgid "notify-subscription-id %d no good!"
-#~ msgstr "notify-subscription-id %d ä¸åˆé©ï¼"
-
-#~ msgid "ppdc: Adding include directory \"%s\"...\n"
-#~ msgstr "ppdc:正在加入包å«çš„目錄“%sâ€â‹¯\n"
-
-#~ msgid "ppdc: Adding/updating UI text from %s...\n"
-#~ msgstr "ppdc:正在從 %s 加入/更新 UI 文字⋯\n"
-
-#~ msgid "ppdc: Bad boolean value (%s) on line %d of %s.\n"
-#~ msgstr "ppdc:錯誤的布林值(%1$s),在 %3$s 的第 %2$d 行。\n"
-
-#~ msgid "ppdc: Bad resolution name \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:錯誤的解æžåº¦å稱“%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid "ppdc: Bad status keyword %s on line %d of %s!\n"
-#~ msgstr "ppdc:錯誤的狀態關éµå­— %1$s,在 %3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid "ppdc: Bad variable substitution ($%c) on line %d of %s.\n"
-#~ msgstr "ppdc:錯誤的變數替代($%1$c),在 %3$s 的第 %2$d 行。\n"
-
-#~ msgid "ppdc: Choice found on line %d of %s with no Option!\n"
-#~ msgstr "ppdc:在 %2$s 的第 %1$d è¡Œç™¼ç¾æ²’有“é¸é …â€çš„鏿“‡ï¼\n"
-
-#~ msgid "ppdc: Duplicate #po for locale %s on line %d of %s!\n"
-#~ msgstr "ppdc:環境變數 %1$s çš„ #po é‡è¤‡ï¼Œåœ¨ %3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid "ppdc: Expected a filter definition on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰éŽæ¿¾å®šç¾©ï¼\n"
-
-#~ msgid "ppdc: Expected a program name on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰ç¨‹å¼å稱ï¼\n"
-
-#~ msgid "ppdc: Expected boolean value on line %d of %s.\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰å¸ƒæž—值。\n"
-
-#~ msgid "ppdc: Expected charset after Font on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Font 後é¢é æœŸç‚ºå­—元集ï¼\n"
-
-#~ msgid "ppdc: Expected choice code on line %d of %s.\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰é¸é …代碼。\n"
-
-#~ msgid "ppdc: Expected choice name/text on line %d of %s.\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰é¸é …å稱/文字。\n"
-
-#~ msgid "ppdc: Expected color order for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰ ColorModel çš„é¡è‰²é«”ç³»ï¼\n"
-
-#~ msgid "ppdc: Expected colorspace for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰ ColorModel 的色彩空間ï¼\n"
-
-#~ msgid "ppdc: Expected compression for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰ ColorModel 的壓縮度ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Expected constraints string for UIConstraints on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰ UIConstraints çš„é™åˆ¶å­—串ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Expected driver type keyword following DriverType on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc:%2$s 的第 %1$d 行上 DriverType 後é¢é æœŸæœ‰é©…動程å¼é¡žåž‹é—œéµå­—ï¼\n"
-
-#~ msgid "ppdc: Expected duplex type after Duplex on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Duplex 後é¢é æœŸæœ‰å…©ç”¨è£ç´™åŒ£é¡žåž‹ï¼\n"
-
-#~ msgid "ppdc: Expected encoding after Font on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Font 後é¢é æœŸç‚ºç·¨ç¢¼ï¼\n"
-
-#~ msgid "ppdc: Expected filename after #po %s on line %d of %s!\n"
-#~ msgstr "ppdc:#po %1$s 後é¢é æœŸç‚ºæª”å,在 %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid "ppdc: Expected group name/text on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰ç¾¤çµ„å稱/文字ï¼\n"
-
-#~ msgid "ppdc: Expected include filename on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰åŒ…å«çš„æª”åï¼\n"
-
-#~ msgid "ppdc: Expected integer on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰æ•´æ•¸ï¼\n"
-
-#~ msgid "ppdc: Expected locale after #po on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 #po 後é¢é æœŸæœ‰ç’°å¢ƒè®Šæ•¸ï¼\n"
-
-#~ msgid "ppdc: Expected name after %s on line %d of %s!\n"
-#~ msgstr "ppdc:%1$s 後é¢é æœŸæœ‰å稱,在 %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid "ppdc: Expected name after FileName on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 FileName 後é¢é æœŸç‚ºå稱ï¼\n"
-
-#~ msgid "ppdc: Expected name after Font on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Font 後é¢é æœŸç‚ºå稱ï¼\n"
-
-#~ msgid "ppdc: Expected name after Manufacturer on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Manufacturer 後é¢é æœŸç‚ºå稱ï¼\n"
-
-#~ msgid "ppdc: Expected name after MediaSize on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 MediaSize 後é¢é æœŸç‚ºå稱ï¼\n"
-
-#~ msgid "ppdc: Expected name after ModelName on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 ModelName 後é¢é æœŸç‚ºå稱ï¼\n"
-
-#~ msgid "ppdc: Expected name after PCFileName on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 PCFileName 後é¢é æœŸç‚ºå稱ï¼\n"
-
-#~ msgid "ppdc: Expected name/text after %s on line %d of %s!\n"
-#~ msgstr "ppdc:%1$s 後é¢é æœŸç‚ºå稱/文字,在 %3$s 的第 %2$d 行上。\n"
-
-#~ msgid "ppdc: Expected name/text after Installable on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Installable 後é¢é æœŸç‚ºå稱/文字ï¼\n"
-
-#~ msgid "ppdc: Expected name/text after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Resolution 後é¢é æœŸç‚ºå稱/文字ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Expected name/text combination for ColorModel on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰ ColorModel çš„å稱/文字組åˆï¼\n"
-
-#~ msgid "ppdc: Expected option name/text on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰é¸é …å稱/文字ï¼\n"
-
-#~ msgid "ppdc: Expected option section on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰é¸é …部分ï¼\n"
-
-#~ msgid "ppdc: Expected option type on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰é¸é …類型ï¼\n"
-
-#~ msgid "ppdc: Expected override field after Resolution on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Resolution 後é¢é æœŸæœ‰è¦†è“‹æ¬„ä½ï¼\n"
-
-#~ msgid "ppdc: Expected real number on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰å¯¦æ•¸ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %"
-#~ "s!\n"
-#~ msgstr ""
-#~ "ppdc:%2$s 的第 %1$d 行上 ColorProfile 後é¢é æœŸæœ‰è§£æžåº¦âˆ•媒體類型ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %"
-#~ "d of %s!\n"
-#~ msgstr ""
-#~ "ppdc:%2$s 的第 %1$d 行上 SimpleColorProfile 後é¢é æœŸæœ‰è§£æžåº¦âˆ•媒體類型ï¼\n"
-
-#~ msgid "ppdc: Expected selector after %s on line %d of %s!\n"
-#~ msgstr "ppdc:%1$s 後é¢é æœŸæœ‰é¸æ“‡å™¨ï¼Œåœ¨ %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid "ppdc: Expected status after Font on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Font 後é¢é æœŸç‚ºç‹€æ…‹ï¼\n"
-
-#~ msgid "ppdc: Expected string after Copyright on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Copyright 後é¢é æœŸæœ‰å­—串ï¼\n"
-
-#~ msgid "ppdc: Expected string after Version on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Version 後é¢é æœŸæœ‰å­—串ï¼\n"
-
-#~ msgid "ppdc: Expected two option names on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šé æœŸæœ‰å…©å€‹é¸é …å稱ï¼\n"
-
-#~ msgid "ppdc: Expected value after %s on line %d of %s!\n"
-#~ msgstr "ppdc:%1$s 後é¢é æœŸæœ‰å€¼ï¼Œåœ¨ %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid "ppdc: Expected version after Font on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行上 Font 後é¢é æœŸæœ‰ç‰ˆæœ¬ï¼\n"
-
-#~ msgid "ppdc: Invalid #include/#po filename \"%s\"!\n"
-#~ msgstr "ppdc:無效的 #include/#po 檔å“%sâ€ï¼\n"
-
-#~ msgid "ppdc: Invalid cost for filter on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 第 %1$d è¡Œä¸Šçš„éŽæ¿¾æˆæœ¬ç„¡æ•ˆï¼\n"
-
-#~ msgid "ppdc: Invalid empty MIME type for filter on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šç”¨æ–¼éŽæ¿¾çš„空 MIME 類型無效ï¼\n"
-
-#~ msgid "ppdc: Invalid empty program name for filter on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d è¡Œä¸Šç”¨æ–¼éŽæ¿¾çš„空程å¼å稱無效ï¼\n"
-
-#~ msgid "ppdc: Invalid option section \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:無效的é¸é …部分“%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid "ppdc: Invalid option type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:無效的é¸é …類型“%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid "ppdc: Loading driver information file \"%s\"...\n"
-#~ msgstr "ppdc:正在載入驅動程å¼è³‡è¨Šæª”案“%sâ€â‹¯\n"
-
-#~ msgid "ppdc: Loading messages for locale \"%s\"...\n"
-#~ msgstr "ppdc:正在為環境變數“%sâ€è¼‰å…¥è¨Šæ¯â‹¯\n"
-
-#~ msgid "ppdc: Loading messages from \"%s\"...\n"
-#~ msgstr "ppdc:正在從“%sâ€è¼‰å…¥è¨Šæ¯â‹¯\n"
-
-#~ msgid "ppdc: Missing #endif at end of \"%s\"!\n"
-#~ msgstr "ppdc:“%sâ€æœ«ç«¯éºå¤± #endifï¼\n"
-
-#~ msgid "ppdc: Missing #if on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 的第 %1$d 行中éºå¤± #ifï¼\n"
-
-#~ msgid "ppdc: No message catalog provided for locale %s!\n"
-#~ msgstr "ppdc:沒有é‡å°ç’°å¢ƒè®Šæ•¸ %s æä¾›çš„訊æ¯ç›®éŒ„ï¼\n"
-
-#~ msgid "ppdc: Option %s redefined with a different type on line %d of %s!\n"
-#~ msgstr "ppdc:在 %3$s 的第 %2$d: 行上,以ä¸åŒçš„類型é‡è¤‡å®šç¾©äº†é¸é … %1$sï¼\n"
-
-#~ msgid "ppdc: Option constraint must *name on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 第 %1$d 行上的é¸é …é™åˆ¶å½¢å¼å¿…須為 *nameï¼\n"
-
-#~ msgid "ppdc: Too many nested #if's on line %d of %s!\n"
-#~ msgstr "ppdc:%2$s 第 %1$d 行上的巢狀 #if 太多ï¼\n"
-
-#~ msgid "ppdc: Unable to create PPD file \"%s\" - %s.\n"
-#~ msgstr "ppdc:無法製作 PPD 檔案“%sâ€- %s。\n"
-
-#~ msgid "ppdc: Unable to create output directory %s: %s\n"
-#~ msgstr "ppdc:無法製作輸出目錄 %s:%s\n"
-
-#~ msgid "ppdc: Unable to create output pipes: %s\n"
-#~ msgstr "ppdc:無法製作輸出路徑:%s\n"
-
-#~ msgid "ppdc: Unable to execute cupstestppd: %s\n"
-#~ msgstr "ppdc:無法執行 cupstestppd:%s\n"
-
-#~ msgid "ppdc: Unable to find #po file %s on line %d of %s!\n"
-#~ msgstr "ppdc:在下列行中找ä¸åˆ° #po 檔案 %1$s:%3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid "ppdc: Unable to find include file \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:在下列行中找ä¸åˆ°åŒ…嫿ª”案“%1$sâ€ï¼š%3$s 的第 %2$d 行ï¼\n"
-
-#~ msgid "ppdc: Unable to find localization for \"%s\" - %s\n"
-#~ msgstr "ppdc:找ä¸åˆ°æœ¬åœ°åŒ–的“%sâ€- %s\n"
-
-#~ msgid "ppdc: Unable to load localization file \"%s\" - %s\n"
-#~ msgstr "ppdc:無法載入本地化檔案“%sâ€- %s\n"
-
-#~ msgid "ppdc: Undefined variable (%s) on line %d of %s.\n"
-#~ msgstr "ppdc:未定義的變數(%1$s),在 %3$s 的第 %2$d 行上。\n"
-
-#~ msgid "ppdc: Unknown driver type %s on line %d of %s!\n"
-#~ msgstr "ppdc:未知的驅動程å¼é¡žåž‹ %1$s,在 %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:未知的兩用類型“%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid "ppdc: Unknown media size \"%s\" on line %d of %s!\n"
-#~ msgstr "ppdc:未知的媒體大å°â€œ%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid "ppdc: Unknown token \"%s\" seen on line %d of %s!\n"
-#~ msgstr "ppdcï¼šç™¼ç¾æœªçŸ¥çš„代號“%1$sâ€ï¼Œåœ¨ %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid ""
-#~ "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %"
-#~ "s!\n"
-#~ msgstr "ppdc:實數“%1$sâ€ä¸­æœ‰æœªçŸ¥çš„尾字元,在 %3$s 的第 %2$d 行上ï¼\n"
-
-#~ msgid "ppdc: Unterminated string starting with %c on line %d of %s!\n"
-#~ msgstr "ppdc:%3$s 的第 %2$d 行上有以 %1$c 開頭的未終止字串ï¼\n"
-
-#~ msgid "ppdc: Writing %s...\n"
-#~ msgstr "ppdc:正在寫入 %s⋯\n"
-
-#~ msgid "ppdc: Writing PPD files to directory \"%s\"...\n"
-#~ msgstr "ppdc:正在將 PPD 檔案寫入目錄“%sâ€â‹¯\n"
-
-#~ msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s!\n"
-#~ msgstr "ppdmerge:錯誤的 LanguageVersion“%sâ€ï¼Œåœ¨ %s 中ï¼\n"
-
-#~ msgid "ppdmerge: Ignoring PPD file %s...\n"
-#~ msgstr "ppdmerge:正在忽略 PPD 檔案 %s⋯\n"
-
-#~ msgid "ppdmerge: Unable to backup %s to %s- %s\n"
-#~ msgstr "ppdmerge:無法將 %s 備份到 %s- %s\n"
-
-#~ msgid "printer %s disabled since %s -\n"
-#~ msgstr "å°è¡¨æ©Ÿ %s å·²åœç”¨ï¼Œè‡ª %s 後 -\n"
-
-#~ msgid "printer %s is idle. enabled since %s\n"
-#~ msgstr "å°è¡¨æ©Ÿ %s 處於閒置狀態,自 %s 後啟用\n"
-
-#~ msgid "printer %s now printing %s-%d. enabled since %s\n"
-#~ msgstr "å°è¡¨æ©Ÿ %s æ­£åœ¨åˆ—å° %s-%d。自 %s 後啟用\n"
-
-#~ msgid "printer %s/%s disabled since %s -\n"
-#~ msgstr "å°è¡¨æ©Ÿ %s/%s 自 %s 後åœç”¨ -\n"
-
-#~ msgid "printer %s/%s is idle. enabled since %s\n"
-#~ msgstr "å°è¡¨æ©Ÿ %s/%s 處於閑置狀態。自 %s 後啟用\n"
-
-#~ msgid "printer %s/%s now printing %s-%d. enabled since %s\n"
-#~ msgstr "å°è¡¨æ©Ÿ %s/%s æ­£åœ¨åˆ—å° %s-%d。自 %s 後啟用\n"
-
-#~ msgid "request id is %s-%d (%d file(s))\n"
-#~ msgstr "請求 ID 為 %s-%d(%d 個檔案)\n"
-
-#~ msgid "scheduler is not running\n"
-#~ msgstr "排程器並沒有執行\n"
-
-#~ msgid "scheduler is running\n"
-#~ msgstr "排程器正在執行中\n"
-
-#~ msgid "status\t\tshow status of daemon and queue\n"
-#~ msgstr "狀態\t\t顯示æœå‹™ç¨‹å¼å’Œä½‡åˆ—的狀態\n"
-
-#~ msgid "system default destination: %s\n"
-#~ msgstr "系統é è¨­ç›®çš„地:%s\n"
-
-#~ msgid "system default destination: %s/%s\n"
-#~ msgstr "系統é è¨­ç›®çš„地:%s/%s\n"
diff --git a/locale/po2strings.c b/locale/po2strings.c
index 70b7fd04..7bb31f79 100644
--- a/locale/po2strings.c
+++ b/locale/po2strings.c
@@ -1,5 +1,5 @@
/*
- * "$Id: po2strings.c 10379 2012-03-23 22:16:22Z mike $"
+ * "$Id: po2strings.c 10378 2012-03-23 21:38:25Z mike $"
*
* Convert a GNU gettext .po file to an Apple .strings file.
*
@@ -290,5 +290,5 @@ main(int argc, /* I - Number of command-line args */
/*
- * End of "$Id: po2strings.c 10379 2012-03-23 22:16:22Z mike $".
+ * End of "$Id: po2strings.c 10378 2012-03-23 21:38:25Z mike $".
*/
diff --git a/man/Makefile b/man/Makefile
index 0e021433..03f98b5d 100644
--- a/man/Makefile
+++ b/man/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 9177 2010-06-22 21:21:37Z mike $"
+# "$Id: Makefile 10515 2012-05-25 03:11:46Z mike $"
#
# Man page makefile for CUPS.
#
-# Copyright 2007-2010 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1993-2006 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
@@ -58,7 +58,7 @@ MAN8 = cupsaccept.$(MAN8EXT) \
cups-deviced.$(MAN8EXT) \
cups-driverd.$(MAN8EXT) \
cups-lpd.$(MAN8EXT) \
- cups-polld.$(MAN8EXT) \
+ cups-snmp.$(MAN8EXT) \
cupsd.$(MAN8EXT) \
cupsenable.$(MAN8EXT) \
lpadmin.$(MAN8EXT) \
@@ -96,10 +96,14 @@ clean:
$(RM) mantohtml mantohtml.o
$(RM) $(MAN1) $(MAN5) $(MAN7) $(MAN8)
for file in $(MAN1); do \
- $(RM) ../doc/help/man-`basename $$file .$(MAN1EXT)`.html; \
+ if test $$file != ipptool.$(MAN1EXT); then \
+ $(RM) ../doc/help/man-`basename $$file .$(MAN1EXT)`.html; \
+ fi \
done
for file in $(MAN5); do \
- $(RM) ../doc/help/man-`basename $$file .$(MAN5EXT)`.html; \
+ if test $$file != ipptoolfile.$(MAN5EXT); then \
+ $(RM) ../doc/help/man-`basename $$file .$(MAN5EXT)`.html; \
+ fi \
done
for file in $(MAN7); do \
$(RM) ../doc/help/man-`basename $$file .$(MAN7EXT)`.html; \
@@ -232,5 +236,5 @@ mantohtml: mantohtml.o
#
-# End of "$Id: Makefile 9177 2010-06-22 21:21:37Z mike $".
+# End of "$Id: Makefile 10515 2012-05-25 03:11:46Z mike $".
#
diff --git a/man/backend.man b/man/backend.man
index 644d85dd..ab5e7aaa 100644
--- a/man/backend.man
+++ b/man/backend.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: backend.man 9693 2011-04-16 02:51:22Z mike $"
+.\" "$Id: backend.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" Backend man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -12,11 +12,10 @@
.\" which should have been included with this file. If this file is
.\" file is missing or damaged, see the license at "http://www.cups.org/".
.\"
-.TH backend 7 "CUPS" "15 April 2011" "Apple Inc."
+.TH backend 7 "CUPS" "23 April 2012" "Apple Inc."
.SH NAME
backend \- cups backend transmission interfaces
-
.SH SYNOPSIS
.B backend
.br
@@ -24,34 +23,42 @@ backend \- cups backend transmission interfaces
job user title num-copies options [
.I filename
]
-
.SH DESCRIPTION
-Backends are a special type of \fIfilter(7)\fR which is used to
-send print data to and discover different devices on the system.
-
+Backends are a special type of \fIfilter(7)\fR which is used to send print data
+to and discover different devices on the system.
.LP
-Like filters, backends must be capable of reading from a filename
-on the command-line or from the standard input, copying the
-standard input to a temporary file as required by the physical
-interface.
-
+Like filters, backends must be capable of reading from a filename on the
+command-line or from the standard input, copying the standard input to a
+temporary file as required by the physical interface.
.LP
The command name (argv[0]) is set to the device URI of the destination printer.
Starting with CUPS 1.1.22, any authentication information in argv[0] is removed,
so backend developers are urged to use the DEVICE_URI environment variable
whenever authentication information is required. The CUPS API includes a
\fIcupsBackendDeviceURI\fR function for retrieving the correct device URI.
-
.LP
Back-channel data from the device should be relayed to the job
filters by writing to file descriptor 3. The CUPS API includes
the \fIcupsBackChannelWrite\fR function for this purpose.
-
+.SH WARNING
+CUPS backends are not generally design to be run directly by the user. Aside
+from the device URI issue (argv[0] and DEVICE_URI environment variable contain
+the device URI), CUPS backends also expect specific environment variables and
+file descriptors, and typically run in a user session that (on OS X) has
+additional restrictions that affect how it runs. Backends can also be installed
+with restricted permissions (0500 or 0700) that tell the scheduler to run them
+as the "root" user instead of an unprivileged user (typically "lp") on the
+system.
+.LP
+Unless you are a developer and know what you are doing, please do not run
+backends directly. Instead, use the \fIlp(1)\fR or \fIlpr(1)\fR programs to send
+a print job or \fIlpinfo(8)\fR program to query for available printers using the
+backend. The one exception is the SNMP backend - see \fIsnmpbackend(8)\fR for
+more information.
.SH DEVICE DISCOVERY
-When run with no arguments, the backend should list the devices
-and schemes it supports or is advertising to stdout. The output
-consists of zero or more lines consisting of any of the following
-forms:
+When run with no arguments, the backend should list the devices and schemes it
+supports or is advertising to stdout. The output consists of zero or more lines
+consisting of any of the following forms:
.nf
device-class scheme "Unknown" "device-info"
@@ -59,138 +66,107 @@ forms:
device-class device-uri "device-make-and-model" "device-info" "device-id"
device-class device-uri "device-make-and-model" "device-info" "device-id" "device-location"
.fi
-
.LP
The \fIdevice-class\fR field is one of the following values:
-
.TP 5
direct
.br
-The device-uri refers to a specific direct-access device with no
-options, such as a parallel, USB, or SCSI device.
-
+The device-uri refers to a specific direct-access device with no options, such
+as a parallel, USB, or SCSI device.
.TP 5
file
.br
The device-uri refers to a file on disk.
-
.TP 5
network
.br
-The device-uri refers to a networked device and conforms to the
-general form for network URIs.
-
+The device-uri refers to a networked device and conforms to the general form for
+network URIs.
.TP 5
serial
.br
-The device-uri refers to a serial device with configurable baud
-rate and other options. If the device-uri contains a baud value,
-it represents the maximum baud rate supported by the device.
-
+The device-uri refers to a serial device with configurable baud rate and other
+options. If the device-uri contains a baud value, it represents the maximum baud
+rate supported by the device.
.LP
-The \fIscheme\fR field provides the URI scheme that is supported
-by the backend. Backends should use this form only when the
-backend supports any URI using that scheme. The \fIdevice-uri\fR
-field specifies the full URI to use when communicating with the
-device.
-
+The \fIscheme\fR field provides the URI scheme that is supported by the backend.
+Backends should use this form only when the backend supports any URI using that
+scheme. The \fIdevice-uri\fR field specifies the full URI to use when
+communicating with the device.
.LP
-The \fIdevice-make-and-model\fR field specifies the make and
-model of the device, e.g. "Acme Foojet 2000". If the make and
-model is not known, you must report "Unknown".
-
+The \fIdevice-make-and-model\fR field specifies the make and model of the
+device, e.g. "Example Foojet 2000". If the make and model is not known, you must
+report "Unknown".
.LP
-The \fIdevice-info\fR field specifies additional information
-about the device. Typically this includes the make and model
-along with the port number or network address, e.g. "Acme Foojet
-2000 USB #1".
-
+The \fIdevice-info\fR field specifies additional information about the device.
+Typically this includes the make and model along with the port number or network
+address, e.g. "Example Foojet 2000 USB #1".
.LP
-The optional \fIdevice-id\fR field specifies the IEEE-1284 device
-ID string for the device, which is used to select a matching
-driver.
-
+The optional \fIdevice-id\fR field specifies the IEEE-1284 device ID string for
+the device, which is used to select a matching driver.
.LP
The optional \fIdevice-location\fR field specifies the physical location of
the device, which is often used to pre-populate the printer-location attribute
when adding a printer.
-
.SH PERMISSIONS
-Backends without world execute permissions are run as the root
-user. Otherwise, the backend is run using the unprivileged user
-account, typically "lp".
-
+Backends without world execute permissions are run as the root user. Otherwise,
+the backend is run using an unprivileged user account, typically "lp".
.SH EXIT CODES
-The following exit codes are defined for backends; C API
-constants defined in the <cups/backend.h> header file are defined
-in parenthesis:
-
+The following exit codes are defined for backends; C API constants defined in
+the <cups/backend.h> header file are defined in parenthesis:
.TP 5
0 (CUPS_BACKEND_OK)
.br
-The print file was successfully transmitted to the device or
-remote server.
-
+The print file was successfully transmitted to the device or remote server.
.TP 5
1 (CUPS_BACKEND_FAILED)
.br
-The print file was not successfully transmitted to the device or
-remote server. The scheduler will respond to this by canceling
-the job, retrying the job, or stopping the queue depending on the
-state of the error-policy attribute.
-
+The print file was not successfully transmitted to the device or remote server.
+The scheduler will respond to this by canceling the job, retrying the job, or
+stopping the queue depending on the state of the error-policy attribute.
.TP 5
2 (CUPS_BACKEND_AUTH_REQUIRED)
.br
-The print file was not successfully transmitted because valid
-authentication information is required. The scheduler will
-respond to this by holding the job and adding the
-authentication-required job-reasons keyword.
-
+The print file was not successfully transmitted because valid authentication
+information is required. The scheduler will respond to this by holding the job
+and adding the "cups-held-for-authentication" keyword to the "job-reasons"
+attribute.
.TP 5
3 (CUPS_BACKEND_HOLD)
.br
-The print file was not successfully transmitted because it cannot
-be printed at this time. The scheduler will respond to this by
-holding the job.
-
+The print file was not successfully transmitted because it cannot be printed at
+this time. The scheduler will respond to this by holding the job.
.TP 5
4 (CUPS_BACKEND_STOP)
.br
-The print file was not successfully transmitted because it cannot
-be printed at this time. The scheduler will respond to this by
-stopping the queue.
-
+The print file was not successfully transmitted because it cannot be printed at
+this time. The scheduler will respond to this by stopping the queue.
.TP 5
5 (CUPS_BACKEND_CANCEL)
.br
-The print file was not successfully transmitted because one or
-more attributes are not supported. The scheduler will respond to
-this by canceling the job.
-
+The print file was not successfully transmitted because one or more attributes
+are not supported or the job was canceled at the printer. The scheduler will
+respond to this by canceling the job.
.TP 5
6 (CUPS_BACKEND_RETRY)
.br
The print file was not successfully transmitted because of a temporary issue.
The scheduler will retry the job at a future time - other jobs may print before
this one.
-
.TP 5
7 (CUPS_BACKEND_RETRY_CURRENT)
.br
The print file was not successfully transmitted because of a temporary issue.
The scheduler will retry the job immediately without allowing intervening jobs.
-
.PP
All other exit code values are reserved.
-
.SH SEE ALSO
-\fIcupsd(8)\fR, \fIcupsd.conf(5)\fR, \fIfilter(7)\fR,
+\fIcups-snmp(8)\fR, \fIcupsd(8)\fR, \fIcupsd.conf(5)\fR, \fIfilter(7)\fR,
+\fIlpinfo(8)\fR,
.br
http://localhost:631/help
-
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: backend.man 9693 2011-04-16 02:51:22Z mike $".
+.\" End of "$Id: backend.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cancel.man b/man/cancel.man
index eda61eb1..a69c6647 100644
--- a/man/cancel.man
+++ b/man/cancel.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cancel.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cancel.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" cancel man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -69,7 +69,7 @@ Cancel-Jobs operations in \fIcupsd.conf(5)\fR.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cancel.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cancel.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/classes.conf.man b/man/classes.conf.man
index 0664442d..843e7e95 100644
--- a/man/classes.conf.man
+++ b/man/classes.conf.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: classes.conf.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: classes.conf.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" classes.conf man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -104,7 +104,7 @@ Specifies the date/time associated with the state.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: classes.conf.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: classes.conf.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/client.conf.man.in b/man/client.conf.man.in
index 6e606b17..6fa94bd0 100644
--- a/man/client.conf.man.in
+++ b/man/client.conf.man.in
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: client.conf.man.in 9960 2011-09-02 22:37:14Z mike $"
+.\" "$Id: client.conf.man.in 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" client.conf man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -12,7 +12,7 @@
.\" which should have been included with this file. If this file is
.\" file is missing or damaged, see the license at "http://www.cups.org/".
.\"
-.TH client.conf 5 "CUPS" "2 September 2011" "Apple Inc."
+.TH client.conf 5 "CUPS" "23 April 2012" "Apple Inc."
.SH NAME
client.conf \- client configuration file for cups
.SH DESCRIPTION
@@ -45,11 +45,15 @@ ServerName hostname-or-ip-address[:port]
ServerName /domain/socket
.br
Specifies the address and optionally the port to use when connecting to the
-server. \fBNote: Not supported on Mac OS X 10.7 or later.\fR
+server. \fBNote: Not supported on OS X 10.7 or later.\fR
+.TP 5
+User name
+.br
+Specifies the default user name to use for requests.
.SH SEE ALSO
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: client.conf.man.in 9960 2011-09-02 22:37:14Z mike $".
+.\" End of "$Id: client.conf.man.in 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cups-config.man b/man/cups-config.man
index 577dd44f..6fc47d8d 100644
--- a/man/cups-config.man
+++ b/man/cups-config.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cups-config.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cups-config.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" cups-config man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -111,7 +111,7 @@ Displays the full version number of the CUPS installation
.SH SEE ALSO
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cups-config.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cups-config.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cups-deviced.man.in b/man/cups-deviced.man.in
index 19fec7dd..56e761fd 100644
--- a/man/cups-deviced.man.in
+++ b/man/cups-deviced.man.in
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cups-deviced.man.in 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cups-deviced.man.in 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" cups-deviced man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -38,7 +38,7 @@ backend(7), cupsd(8), cupsd.conf(5),
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cups-deviced.man.in 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cups-deviced.man.in 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cups-driverd.man.in b/man/cups-driverd.man.in
index e93ffa91..f0cd27ff 100644
--- a/man/cups-driverd.man.in
+++ b/man/cups-driverd.man.in
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cups-driverd.man.in 9419 2011-01-06 18:49:38Z mike $"
+.\" "$Id: cups-driverd.man.in 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" cups-driverd man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -116,7 +116,7 @@ cupsd(8), cupsd.conf(5), cupstestppd(1), lpinfo(8),
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cups-driverd.man.in 9419 2011-01-06 18:49:38Z mike $".
+.\" End of "$Id: cups-driverd.man.in 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cups-lpd.man.in b/man/cups-lpd.man.in
index 2959c0ae..ebc9fa75 100644
--- a/man/cups-lpd.man.in
+++ b/man/cups-lpd.man.in
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cups-lpd.man.in 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cups-lpd.man.in 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" cups-lpd man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -118,7 +118,7 @@ clients may be unreliable.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cups-lpd.man.in 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cups-lpd.man.in 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cups-polld.man b/man/cups-polld.man
deleted file mode 100644
index aee70687..00000000
--- a/man/cups-polld.man
+++ /dev/null
@@ -1,38 +0,0 @@
-.\"
-.\" "$Id: cups-polld.man 9771 2011-05-12 05:21:56Z mike $"
-.\"
-.\" cups-polld man page for CUPS.
-.\"
-.\" Copyright 2007-2011 by Apple Inc.
-.\" Copyright 1997-2006 by Easy Software Products.
-.\"
-.\" These coded instructions, statements, and computer programs are the
-.\" property of Apple Inc. and are protected by Federal copyright
-.\" law. Distribution and use rights are outlined in the file "LICENSE.txt"
-.\" which should have been included with this file. If this file is
-.\" file is missing or damaged, see the license at "http://www.cups.org/".
-.\"
-.TH cups-polld 8 "CUPS" "12 February 2006" "Apple Inc."
-.SH NAME
-cups-polld \- cups printer polling daemon
-.SH SYNOPSIS
-.B cups-polld
-.I address ipp-port interval browse-port
-.SH DESCRIPTION
-\fIcups-polld\fR polls remote servers for a list of available
-printers and printer classes every \fIinterval\fR seconds.
-Printer and class information is then broadcast to the localhost
-interface (127.0.0.1) on the specified browse port for reception
-by \fIcupsd(8)\fR.
-.PP
-This program is started automatically by \fIcupsd\fR for every
-\fIBrowsePoll\fR directive found in the \fIcupsd.conf(5)\fR file.
-.SH SEE ALSO
-\fIcupsd(8)\fR, \fIcupsd.conf(5)\fR,
-.br
-http://localhost:631/help
-.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
-.\"
-.\" End of "$Id: cups-polld.man 9771 2011-05-12 05:21:56Z mike $".
-.\"
diff --git a/man/cups-snmp.conf.man b/man/cups-snmp.conf.man
index 1c778bc8..140c90b4 100644
--- a/man/cups-snmp.conf.man
+++ b/man/cups-snmp.conf.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cups-snmp.conf.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cups-snmp.conf.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" snmp.conf man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -12,24 +12,22 @@
.\" which should have been included with this file. If this file is
.\" file is missing or damaged, see the license at "http://www.cups.org/".
.\"
-.TH snmp.conf 5 "CUPS" "31 July 2006" "Apple Inc."
+.TH snmp.conf 5 "CUPS" "23 April 2012" "Apple Inc."
+
.SH NAME
snmp.conf \- snmp configuration file for cups
.SH DESCRIPTION
-The \fIsnmp.conf\fR file configures the CUPS SNMP printer
-discovery backend and is normally located in the \fI/etc/cups\fR
-directory. Each line in the file can be a configuration
-directive, a blank line, or a comment. Comment lines start with
-the # character.
+The \fIsnmp.conf\fR file configures how the standard CUPS network backends
+(http, https, ipp, ipps, lpd, snmp, and socket) access printer information using
+SNMPv1 and is normally located in the \fI/etc/cups\fR directory. Each line in
+the file can be a configuration directive, a blank line, or a comment. Comment
+lines start with the # character.
.LP
-The SNMP backend uses the SNMPv1 protocol to discover network
-printers, collecting information from the Host MIB along with
-intelligent port probes to determine the correct device URI and
-make and model for each printer. Future versions of CUPS will
-likely support the new Port Monitor MIB as well.
+The Community and DebugLevel directives are used by all backends. The remainder
+apply only to the SNMP backend (\fIcups-snmp(8)\fR).
.SH DIRECTIVES
-The following directives are understood by the SNMP backend.
-Consult the on-line help for detailed descriptions:
+The following directives are understood by the CUPS network backends. Consult
+the on-line help for detailed descriptions:
.TP 5
Address @IF(\fIname\fR)
.TP 5
@@ -37,37 +35,44 @@ Address @LOCAL
.TP 5
Address \fIaddress\fR
.br
-Sends SNMP broadcast queries to the specified address(es). The
-default address is "@LOCAL" which broadcasts to all LAN
-interfaces.
+Sends SNMP broadcast queries to the specified address(es). There is no default
+for the broadcast address.
.TP 5
Community \fIname\fR
.br
-Specifies a SNMP community to query. The default community is
-"public".
+Specifies the community name to use. Only a single community name may be
+specified. The default community name is "public".
.TP 5
-DebugLevel \fIN\fR
+DebugLevel number
.br
-Sets the debug logging level to \fIN\fR; 0 disables debug
-logging, 1 enables basic logging, 2 displays SNMP values, and 3
-displays raw hex data.
+Specifies the logging level from 0 (none) to 3 (everything). Typically only used
+for debugging (thus the name). The default debug level is 0.
+.TP 5
+DeviceURI "regular expression" device-uri [... device-uri]
+.br
+Specifies one or more device URIs that should be used for a given make and model
+string. The regular expression is used to match the detected make and model, and
+the device URI strings must be of the form "scheme://%s[:port]/[path]", where
+"%s" represents the detected address or hostname. There are no default device
+URI matching rules.
.TP 5
HostNameLookups on
.TP 5
HostNameLookups off
.br
-Specifies whether the addresses of printers should be converted
-to hostnames or left as numeric IP addresses. The default is
-"off".
+Specifies whether the addresses of printers should be converted to hostnames or
+left as numeric IP addresses. The default is "off".
.TP 5
MaxRunTime \fIseconds\fR
.br
-Specifies the maximum number of seconds that the SNMP backend
-will scan the network for printers.
+Specifies the maximum number of seconds that the SNMP backend will scan the
+network for printers. The default is 120 seconds (2 minutes).
.SH SEE ALSO
+cups-snmp(8),
+.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cups-snmp.conf.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cups-snmp.conf.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cups-snmp.man.in b/man/cups-snmp.man.in
new file mode 100644
index 00000000..da2538f4
--- /dev/null
+++ b/man/cups-snmp.man.in
@@ -0,0 +1,59 @@
+.\"
+.\" "$Id: cups-snmp.man.in 10424 2012-04-23 17:26:57Z mike $"
+.\"
+.\" SNMP backend man page for CUPS.
+.\"
+.\" Copyright 2012 by Apple Inc.
+.\"
+.\" These coded instructions, statements, and computer programs are the
+.\" property of Apple Inc. and are protected by Federal copyright
+.\" law. Distribution and use rights are outlined in the file "LICENSE.txt"
+.\" which should have been included with this file. If this file is
+.\" file is missing or damaged, see the license at "http://www.cups.org/".
+.\"
+.TH cups-snmp 8 "CUPS" "23 April 2012" "Apple Inc."
+.SH NAME
+snmp \- cups snmp backend
+.SH SYNOPSIS
+.B @CUPS_SERVERBIN@/backend/snmp
+.I ip-address-or-hostname
+.br
+.B lpinfo -v --include-schemes snmp
+.SH DESCRIPTION
+The CUPS SNMP backend provides legacy discovery and identification of network
+printers using SNMPv1. When used for discovery through the scheduler, the
+backend will list all printers that respond to a broadcast SNMPv1 query with the
+"public" community name. Additional queries are then sent to printers that
+respond in order to determine the correct device URI, make and model, and other
+information needed for printing.
+.LP
+In the first form, the SNMP backend is run directly by the user to look up the
+device URI and other information when you have an IP address or hostname. This
+can be used for programs that need to configure print queues where the user has
+supplied an address but nothing else.
+.LP
+In the second form, the SNMP backend is run indirectly using the \fIlpinfo(8)\fR
+command. The output provides all printers detected via SNMP on the configured
+broadcast addresses. \fBNote\fR: no broadcast addresses are configured by
+default.
+.SH MIBS
+The CUPS SNMP backend uses the information from the Host, Printer, and Port
+Monitor MIBs along with some vendor private MIBs and intelligent port probes to
+determine the correct device URI and make and model for each printer.
+.SH CONFIGURATION
+The SNMP backend reads the @CUPS_SERVERROOT@/snmp.conf configuration file, if
+present, to set the default broadcast address, community name, and logging
+level. The configuration file is documented in \fIcups-snmp.conf(5)\fR. The
+DebugLevel value can be overridden using the CUPS_DEBUG_LEVEL environment
+variable and the MaxRunTime value can be overridden using the CUPS_MAX_RUN_TIME
+environment variable.
+.SH SEE ALSO
+\fIbackend(7)\fR, \fIcups-snmp.conf(5)\fR, \fIcupsd(8)\fR, \fIcupsd.conf(5)\fR,
+\fIfilter(7)\fR, \fIlpinfo(8)\fR,
+.br
+http://localhost:631/help
+.SH COPYRIGHT
+Copyright 2007-2012 by Apple Inc.
+.\"
+.\" End of "$Id: cups-snmp.man.in 10424 2012-04-23 17:26:57Z mike $".
+.\"
diff --git a/man/cupsaccept.man b/man/cupsaccept.man
index 7c53d862..3405040e 100644
--- a/man/cupsaccept.man
+++ b/man/cupsaccept.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cupsaccept.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cupsaccept.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" accept/reject man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -73,7 +73,7 @@ require the root user to execute these commands.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cupsaccept.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cupsaccept.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cupsaddsmb.man.in b/man/cupsaddsmb.man.in
index 98fce094..c26858f8 100644
--- a/man/cupsaddsmb.man.in
+++ b/man/cupsaddsmb.man.in
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cupsaddsmb.man.in 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cupsaddsmb.man.in 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" cupsaddsmb man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -208,7 +208,7 @@ http://localhost:631/help
http://www.cups.org/windows/
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cupsaddsmb.man.in 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cupsaddsmb.man.in 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cupsctl.man b/man/cupsctl.man
index 411ada83..dc301f07 100644
--- a/man/cupsctl.man
+++ b/man/cupsctl.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cupsctl.man 9457 2011-01-11 03:04:04Z mike $"
+.\" "$Id: cupsctl.man 10544 2012-07-16 17:14:39Z mike $"
.\"
.\" cupsctl man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 2007 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -12,7 +12,7 @@
.\" which should have been included with this file. If this file is
.\" file is missing or damaged, see the license at "http://www.cups.org/".
.\"
-.TH cupsctl 8 "CUPS" "10 January 2011" "Apple Inc."
+.TH cupsctl 8 "CUPS" "16 July 2012" "Apple Inc."
.SH NAME
cupsctl \- configure cupsd.conf options
.SH SYNOPSIS
@@ -22,7 +22,7 @@ cupsctl \- configure cupsd.conf options
] [ -h
.I server[:port]
] [ --[no-]debug-logging ] [ --[no-]remote-admin ] [ --[no-]remote-any ]
-[ --[no-]remote-printers ] [ --[no-]share-printers ] [ --[no-]user-cancel-any ]
+[ --[no-]share-printers ] [ --[no-]user-cancel-any ]
[
.I name=value
]
@@ -57,11 +57,6 @@ Enables or disables remote administration.
.br
Enables or disables printing from any address, e.g. the Internet.
.TP 5
---[no-]remote-printers
-.br
-Enables or disables the display of remote printers shared via the CUPS, LDAP,
-or SLP protocols.
-.TP 5
--[no-]share-printers
.br
Enables or disables sharing of local printers with other computers.
@@ -101,7 +96,7 @@ You cannot set the Listen or Port directives using \fIcupsctl\fR.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cupsctl.man 9457 2011-01-11 03:04:04Z mike $".
+.\" End of "$Id: cupsctl.man 10544 2012-07-16 17:14:39Z mike $".
.\"
diff --git a/man/cupsd.conf.man.in b/man/cupsd.conf.man.in
index c517f0b2..4ca249ae 100644
--- a/man/cupsd.conf.man.in
+++ b/man/cupsd.conf.man.in
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cupsd.conf.man.in 9784 2011-05-18 21:33:35Z mike $"
+.\" "$Id: cupsd.conf.man.in 10482 2012-05-18 19:51:02Z mike $"
.\"
.\" cupsd.conf man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -12,7 +12,7 @@
.\" which should have been included with this file. If this file is
.\" file is missing or damaged, see the license at "http://www.cups.org/".
.\"
-.TH cupsd.conf 5 "CUPS" "18 May 2011" "Apple Inc."
+.TH cupsd.conf 5 "CUPS" "18 May 2012" "Apple Inc."
.SH NAME
cupsd.conf \- server configuration file for cups
.SH DESCRIPTION
@@ -94,121 +94,9 @@ AutoPurgeJobs No
Specifies whether to purge job history data automatically when
it is no longer required for quotas.
.TP 5
-BrowseAddress ip-address
-.TP 5
-BrowseAddress @IF(name)
-.TP 5
-BrowseAddress @LOCAL
-.br
-Specifies a broadcast address for outgoing printer information packets.
-.TP 5
-BrowseAllow all
-.TP 5
-BrowseAllow none
-.TP 5
-BrowseAllow host.domain.com
-.TP 5
-BrowseAllow *.domain.com
-.TP 5
-BrowseAllow ip-address
-.TP 5
-BrowseAllow ip-address/netmask
-.TP 5
-BrowseAllow ip-address/mm
-.TP 5
-BrowseAllow @IF(name)
-.TP 5
-BrowseAllow @LOCAL
-.br
-Allows incoming printer information packets from the named host or address.
-.TP 5
-BrowseDeny all
-.TP 5
-BrowseDeny none
-.TP 5
-BrowseDeny host.domain.com
-.TP 5
-BrowseDeny *.domain.com
-.TP 5
-BrowseDeny ip-address
-.TP 5
-BrowseDeny ip-address/netmask
-.TP 5
-BrowseDeny ip-address/mm
-.TP 5
-BrowseDeny @IF(name)
-.TP 5
-BrowseDeny @LOCAL
-.br
-Denies incoming printer information packets from the named host or address.
-.TP 5
-BrowseInterval seconds
-.br
-Specifies the maximum interval between printer information broadcasts.
-.TP 5
-BrowseLDAPBindDN
-.br
-Specifies the LDAP domain name to use when registering printers.
-.TP 5
-BrowseLDAPCACertFile
-.br
-Specifies the SSL certificate authority file to use.
-.TP 5
-BrowseLDAPDN
-.br
-Specifies the LDAP domain name to use when discovering printers.
-.TP 5
-BrowseLDAPPassword
-.br
-Specifies the password to use when accessing the LDAP server.
-.TP 5
-BrowseLDAPServer
+BrowseLocalProtocols [All] [DNSSD]
.br
-Specifies the LDAP server to use.
-.TP 5
-BrowseOrder allow,deny
-.TP 5
-BrowseOrder deny,allow
-.br
-Specifies the order of printer information access control (allow,deny or deny,allow)
-.TP 5
-BrowsePoll host-or-ip-address
-.br
-Specifies a server to poll for printer information.
-.TP 5
-BrowsePort port
-.br
-Specifies the port to listen to for printer information packets.
-.TP 5
-BrowseProtocols [All] [CUPS] [DNSSD] [LDAP] [SLP]
-.br
-Specifies the protocols to use for printer browsing.
-.TP 5
-BrowseLocalProtocols [All] [CUPS] [DNSSD] [LDAP] [SLP]
-.br
-Specifies the protocols to use for local printer browsing.
-.TP 5
-BrowseRemoteProtocols [All] [CUPS] [DNSSD] [LDAP] [SLP]
-.br
-Specifies the protocols to use for remote printer browsing.
-.TP 5
-BrowseRelay from-address to-address
-.br
-Specifies that printer information packets should be relayed from one host or
-network to another.
-.TP 5
-BrowseShortNames Yes
-.TP 5
-BrowseShortNames No
-.br
-Specifies whether remote printers will use short names ("printer") or not
-("printer@server"). This option is ignored if more than one remote printer
-exists with the same name.
-.TP 5
-BrowseTimeout seconds
-.br
-Specifies the maximum interval between printer information updates before
-remote printers will be removed from the list of available printers.
+Specifies the protocols to use for local printer sharing.
.TP 5
BrowseWebIF Yes
.TP 5
@@ -362,11 +250,10 @@ Group group-name-or-number
Specifies the group name or ID that will be used when executing
external programs.
.TP 5
-HideImplicitMembers Yes
-.TP 5
-HideImplicitMembers No
+GSSServiceName name
.br
-Specifies whether to hide members of implicit classes.
+Specifies the service name when using Kerberos authentication. The default
+service name is "@CUPS_DEFAULT_GSSSERVICENAME@".
.TP 5
HostNameLookups On
.TP 5
@@ -376,21 +263,6 @@ HostNameLookups Double
.br
Specifies whether or not to do reverse lookups on client addresses.
.TP 5
-ImplicitAnyClasses Yes
-.TP 5
-ImplicitAnyClasses No
-.br
-Specifies whether or not to create implicit classes for local and
-remote printers, e.g. "AnyPrinter" from "Printer", "Printer@server1",
-and "Printer@server2".
-.TP 5
-ImplicitClasses Yes
-.TP 5
-ImplicitClasses No
-.br
-Specifies whether or not to create implicit classes from identical
-remote printers.
-.TP 5
Include filename
.br
Includes the named file.
@@ -514,6 +386,11 @@ MaxCopies number
.br
Specifies the maximum number of copies that a user can print of each job.
.TP 5
+MaxHoldTime seconds
+.br
+Specifies the maximum time a job may remain in the "indefinite" hold state
+before it is canceled. Set to 0 to disable cancellation of held jobs.
+.TP 5
MaxJobs number
.br
Specifies the maximum number of simultaneous jobs to support.
@@ -526,6 +403,12 @@ MaxJobsPerUser number
.br
Specifies the maximum number of simultaneous jobs per user to support.
.TP 5
+MaxJobTime seconds
+.br
+Specifies the maximum time a job may take to print before it is canceled. The
+default is 10800 seconds (3 hours). Set to 0 to disable cancellation of "stuck"
+jobs.
+.TP 5
MaxLogSize number-bytes
.br
Specifies the maximum size of the log files before they are
@@ -708,6 +591,13 @@ SSLPort
.br
Listens on the specified port for encrypted connections.
.TP 5
+StrictConformance Yes
+.TP 5
+StrictConformance No
+.br
+Specifies whether the scheduler requires clients to strictly adhere to the IPP
+specifications. The default is No.
+.TP 5
SubscriptionPrivateAccess all
.TP 5
SubscriptionPrivateAccess default
@@ -756,7 +646,7 @@ Specifies whether the web interface is enabled.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cupsd.conf.man.in 9784 2011-05-18 21:33:35Z mike $".
+.\" End of "$Id: cupsd.conf.man.in 10482 2012-05-18 19:51:02Z mike $".
.\"
diff --git a/man/cupsd.man.in b/man/cupsd.man.in
index 820afd88..c7768dba 100644
--- a/man/cupsd.man.in
+++ b/man/cupsd.man.in
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cupsd.man.in 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cupsd.man.in 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" cupsd man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -66,7 +66,7 @@ operations.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cupsd.man.in 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cupsd.man.in 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cupsenable.man b/man/cupsenable.man
index 0552f427..f2616eec 100644
--- a/man/cupsenable.man
+++ b/man/cupsenable.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cupsenable.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cupsenable.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" cupsenable/cupsdisable man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -86,8 +86,8 @@ require the root user to execute these commands.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cupsenable.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cupsenable.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cupsfilter.man b/man/cupsfilter.man
index 67fbbea5..f791ec8b 100644
--- a/man/cupsfilter.man
+++ b/man/cupsfilter.man
@@ -1,5 +1,5 @@
.\"
-.\" "$Id: cupsfilter.man 10526 2012-06-20 16:16:25Z mike $"
+.\" "$Id: cupsfilter.man 10525 2012-06-20 15:59:17Z mike $"
.\"
.\" cupsfilter man page for CUPS.
.\"
@@ -105,5 +105,5 @@ http://localhost:631/help
.SH COPYRIGHT
Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cupsfilter.man 10526 2012-06-20 16:16:25Z mike $".
+.\" End of "$Id: cupsfilter.man 10525 2012-06-20 15:59:17Z mike $".
.\"
diff --git a/man/cupstestdsc.man b/man/cupstestdsc.man
index 781c5efe..b834eb11 100644
--- a/man/cupstestdsc.man
+++ b/man/cupstestdsc.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cupstestdsc.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cupstestdsc.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" cupstestdsc man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -44,7 +44,7 @@ http://localhost:631/help
Adobe PostScript Language Document Structuring Conventions
Specification, Version 3.0.
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cupstestdsc.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cupstestdsc.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/cupstestppd.man b/man/cupstestppd.man
index 042f4c29..2c44ce78 100644
--- a/man/cupstestppd.man
+++ b/man/cupstestppd.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: cupstestppd.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: cupstestppd.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" cupstestppd man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -159,7 +159,7 @@ http://localhost:631/help
.br
Adobe PostScript Printer Description File Format Specification, Version 4.3.
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: cupstestppd.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: cupstestppd.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/filter.man b/man/filter.man
index 03faeb48..b95283ac 100644
--- a/man/filter.man
+++ b/man/filter.man
@@ -1,5 +1,5 @@
.\"
-.\" "$Id: filter.man 10486 2012-05-18 20:21:41Z mike $"
+.\" "$Id: filter.man 10485 2012-05-18 20:17:41Z mike $"
.\"
.\" filter man page for CUPS.
.\"
@@ -33,7 +33,14 @@ standard output.
.LP
The command name (argv[0]) is set to the name of the destination printer but is
also available in the PRINTER environment variable.
-
+.SH WARNING
+CUPS filters are not meant to be run directly by the user. Aside from the legacy
+System V interface issues (argv[0] is the printer name), CUPS filters also
+expect specific environment variables and file descriptors, and typically run in
+a user session that (on OS X) has additional restrictions that affect how it
+runs. Unless you are a developer and know what you are doing, please do not run
+filters directly. Instead, use the \fIcupsfilter(8)\fR program to use the
+appropriate filters to do the conversions you need.
.SH OPTIONS
Options passed on the command-line typically do not include the default choices
the printer's PPD file. In addition, some options may be specified in multiple
@@ -48,67 +55,59 @@ Raster filters should use option choices set through the raster page header, as
those reflect the options in effect for a given page. Options specified on the
command-line determine the default values for the entire job, which can be
overridden on a per-page basis.
-
.SH LOG MESSAGES
Messages sent to stderr are generally logged to
printer-state-message attribute and the current \fIErrorLog\fR.
Each line begins with a standard prefix:
-
.TP 5
ALERT: message
.br
Sets the printer-state-message attribute and adds the specified
message to the current \fIErrorLog\fR using the "alert" log level.
-
.TP 5
ATTR: attribute=value [attribute=value]
.br
-Sets the named job attribute(s). Typically this will be used to
-set the job-remote-id attribute.
-
+Sets the named job or printer attribute(s). The following job attributes can be
+set: "job-media-progress". The following printer attributes can be set:
+"auth-info-required", "marker-colors", "marker-high-levels", "marker-levels",
+"marker-low-levels", "marker-message", "marker-names", "marker-types",
+"printer-alert", and "printer-alert-description".
.TP 5
CRIT: message
.br
Sets the printer-state-message attribute and adds the specified
message to the current \fIErrorLog\fR using the "critical" log level.
-
.TP 5
DEBUG: message
.br
Sets the printer-state-message attribute and adds the specified
message to the current \fIErrorLog\fR using the "debug" log level.
-
.TP 5
DEBUG2: message
.br
Sets the printer-state-message attribute and adds the specified
message to the current \fIErrorLog\fR using the "debug2" log level.
-
.TP 5
EMERG: message
.br
Sets the printer-state-message attribute and adds the specified
message to the current \fIErrorLog\fR using the "emergency" log level.
-
.TP 5
ERROR: message
.br
Sets the printer-state-message attribute and adds the specified
message to the current \fIErrorLog\fR using the "error" log level.
-
.TP 5
INFO: message
.br
Sets the printer-state-message attribute. If the current \fILogLevel\fR
is set to "debug2", also adds the specified message to the
current \fIErrorLog\fR using the "info" log level.
-
.TP 5
NOTICE: message
.br
Sets the printer-state-message attribute and adds the specified
message to the current \fIErrorLog\fR using the "notice" log level.
-
.TP 5
PAGE: page-number #-copies
.TP 5
@@ -117,14 +116,12 @@ PAGE: total #-pages
Adds an entry to the current \fIPageLog\fR. The first form adds
#-copies to the job-media-sheets-completed attribute. The second
form sets the job-media-sheets-completed attribute to #-pages.
-
.TP 5
PPD: Keyword=Value ... KeywordN=Value
.br
Sets the named keywords in the printer's PPD file. This is typically
used to update default option keywords such as DefaultPageSize and
the various installable options in the PPD file.
-
.TP 5
STATE: printer-state-reason [printer-state-reason ...]
.TP 5
@@ -135,51 +132,42 @@ STATE: - printer-state-reason [printer-state-reason ...]
Sets, adds, or removes printer-state-reason keywords to the
current queue. Typically this is used to indicate media, ink, and
toner conditions on a printer.
-
.TP 5
WARNING: message
.br
Sets the printer-state-message attribute and adds the specified
message to the current \fIErrorLog\fR using the "warning" log level.
-
.SH ENVIRONMENT VARIABLES
The following environment variables are defined by the CUPS
server when executing the filter:
-
.TP 5
CHARSET
.br
The default text character set, typically utf-8.
-
.TP 5
CLASS
.br
When a job is submitted to a printer class, contains the name of
the destination printer class. Otherwise this environment
variable will not be set.
-
.TP 5
CONTENT_TYPE
.br
The MIME type associated with the file (e.g.
application/postscript).
-
.TP 5
CUPS_CACHEDIR
.br
The directory for semi-persistent cache files can be found.
-
.TP 5
CUPS_DATADIR
.br
The directory where data files can be found.
-
.TP 5
CUPS_FILETYPE
.br
The type of file being printed: "job-sheet" for a banner page and "document"
for a regular print file.
-
.TP 5
CUPS_MAX_MESSAGE
.br
@@ -189,73 +177,62 @@ the trailing newline.
CUPS_SERVERROOT
.br
The root directory of the server.
-
.TP 5
DEVICE_URI
.br
The device-uri associated with the printer.
-
.TP 5
FINAL_CONTENT_TYPE
.br
The MIME type associated with the printer (e.g.
application/vnd.cups-postscript).
-
.TP 5
LANG
.br
The default language locale (typically C or en).
-
.TP 5
PATH
.br
The standard execution path for external programs that may be run by
the filter.
-
.TP 5
PPD
.br
The full pathname of the PostScript Printer Description (PPD)
file for this printer.
-
.TP 5
PRINTER
.br
The name of the printer.
-
.TP 5
RIP_CACHE
.br
The recommended amount of memory to use for Raster Image
Processors (RIPs).
-
.TP 5
SOFTWARE
.br
The name and version number of the server (typically CUPS/1.2).
-
.TP 5
TZ
.br
The timezone of the server.
-
.TP 5
USER
.br
The user executing the filter, typically "lp" or "root"; consult the
\fIcupsd.conf(5)\fR file for the current setting.
-
.SH COMPATIBILITY
While the filter interface is compatible with System V interface
scripts, it will only work with the System V interface script as the
only filter. Typically the interface script will be provided via the
\fIlpadmin(8)\fR command using the \fI-i\fR option.
.SH SEE ALSO
-\fIbackend(7)\fR, \fIcupsd(8)\fR,
+\fIbackend(7)\fR, \fIcupsd(8)\fR, \fIcupsfilter(8)\fR,
.br
http://localhost:631/help
.SH COPYRIGHT
Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: filter.man 10486 2012-05-18 20:21:41Z mike $".
+.\" End of "$Id: filter.man 10485 2012-05-18 20:17:41Z mike $".
.\"
diff --git a/man/ipptool.man b/man/ipptool.man
index 6cf84509..81c83ef6 100644
--- a/man/ipptool.man
+++ b/man/ipptool.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: ipptool.man 9354 2010-11-10 06:48:19Z mike $"
+.\" "$Id: ipptool.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" ipptool man page for CUPS.
.\"
-.\" Copyright 2010 by Apple Inc.
+.\" Copyright 2010-2012 by Apple Inc.
.\"
.\" These coded instructions, statements, and computer programs are the
.\" property of Apple Inc. and are protected by Federal copyright
@@ -108,12 +108,25 @@ Send email notifications to "user@example.com" when "myprinter" changes:
.SH STANDARD FILES
The following standard files are available:
.nf
+ color.jpg
create-printer-subscription.test
+ document-a4.pdf
+ document-a4.ps
+ document-letter.pdf
+ document-letter.ps
get-completed-jobs.test
get-jobs.test
+ get-printer-attributes.test
+ gray.jpg
ipp-1.1.test
ipp-2.0.test
ipp-2.1.test
+ ipp-2.2.test
+ onepage-a4.pdf
+ onepage-a4.ps
+ onepage-letter.pdf
+ onepage-letter.ps
+ print-job.test
testfile.jpg
testfile.pdf
testfile.ps
@@ -124,7 +137,7 @@ The following standard files are available:
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2010 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: ipptool.man 9354 2010-11-10 06:48:19Z mike $".
+.\" End of "$Id: ipptool.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/ipptoolfile.man b/man/ipptoolfile.man
index 8a5d58e2..aa667c16 100644
--- a/man/ipptoolfile.man
+++ b/man/ipptoolfile.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: ipptoolfile.man 10023 2011-09-28 16:21:15Z mike $"
+.\" "$Id: ipptoolfile.man 10461 2012-05-11 23:01:21Z mike $"
.\"
.\" ipptoolfile man page for CUPS.
.\"
-.\" Copyright 2010-2011 by Apple Inc.
+.\" Copyright 2010-2012 by Apple Inc.
.\"
.\" These coded instructions, statements, and computer programs are the
.\" property of Apple Inc. and are protected by Federal copyright
@@ -11,7 +11,7 @@
.\" which should have been included with this file. If this file is
.\" file is missing or damaged, see the license at "http://www.cups.org/".
.\"
-.TH ipptoolfile 5 "CUPS" "28 September 2011" "Apple Inc."
+.TH ipptoolfile 5 "CUPS" "11 May 2012" "Apple Inc."
.SH NAME
ipptoolfile \- ipptool file format
@@ -266,6 +266,10 @@ Requires the EXPECT attribute to be in the specified group tag.
OF-TYPE tag[,tag,...]
Requires the EXPECT attribute to use the specified value tag(s).
.TP 5
+REPEAT-LIMIT number
+.br
+Specifies the maximum number of times to repeat. The default value is 1000.
+.TP 5
REPEAT-MATCH
.TP 5
REPEAT-NO-MATCH
@@ -276,14 +280,45 @@ SAME-COUNT-AS attribute-name
Requires the EXPECT attribute to have the same number of values as the specified
parallel attribute.
.TP 5
+WITH-ALL-VALUES "literal string"
+Requires that all values of the EXPECT attribute match the literal string. Comparisons are case-sensitive.
+.TP 5
+WITH-ALL-VALUES <number
+.TP 5
+WITH-ALL-VALUES =number
+.TP 5
+WITH-ALL-VALUES >number
+.TP 5
+WITH-ALL-VALUES number[,number,...]
+Requires that all values of the EXPECT attribute match the number(s) or numeric comparison. When comparing rangeOfInteger values, the "<" and ">" operators only check the upper bound of the range.
+.TP 5
+WITH-ALL-VALUES "false"
+.TP 5
+WITH-ALL-VALUES "true"
+Requires that all values of the EXPECT attribute match the boolean value given.
+.TP 5
+WITH-ALL-VALUES "/regular expression/"
+Requires that all values of the EXPECT attribute match the regular expression, which must conform to the POSIX regular expression syntax. Comparisons are case-sensitive.
+.TP 5
WITH-VALUE "literal string"
-Requires at least one value of the EXPECT attribute to match the literal string.
-Comparisons are case-sensitive.
+Requires that at least one value of the EXPECT attribute matches the literal string. Comparisons are case-sensitive.
+.TP 5
+WITH-VALUE <number
+.TP 5
+WITH-VALUE =number
+.TP 5
+WITH-VALUE >number
+.TP 5
+WITH-VALUE number[,number,...]
+Requires that at least one value of the EXPECT attribute matches the number(s) or numeric comparison. When comparing rangeOfInteger values, the "<" and ">" operators only check the upper bound of the range.
+.TP 5
+WITH-VALUE "false"
+.TP 5
+WITH-VALUE "true"
+Requires that at least one value of the EXPECT attribute matches the boolean value given.
.TP 5
WITH-VALUE "/regular expression/"
-Requires that all values of the EXPECT attribute match the regular expression,
-which must conform to the POSIX regular expression syntax.
-Comparisons are case-sensitive.
+Requires that at least one value of the EXPECT attribute matches the regular expression, which must conform to the POSIX regular expression syntax. Comparisons are case-sensitive.
.SH STATUS PREDICATES
The following predicates are understood following the STATUS test directive:
@@ -294,6 +329,10 @@ Makes the STATUS apply only if the specified variable is defined.
IF-NOT-DEFINED variable-name
Makes the STATUS apply only if the specified variable is not defined.
.TP 5
+REPEAT-LIMIT number
+.br
+Specifies the maximum number of times to repeat. The default value is 1000.
+.TP 5
REPEAT-MATCH
.TP 5
REPEAT-NO-MATCH
@@ -343,6 +382,7 @@ RFC 2911 and other IPP extension specifications. Here is a complete list:
Get-Subscriptions
Hold-Job
Hold-New-Jobs
+ Identify-Printer
Pause-Printer
Pause-Printer-After-Current-Job
Print-Job
@@ -367,6 +407,7 @@ RFC 2911 and other IPP extension specifications. Here is a complete list:
Shutdown-Printer
Startup-Printer
Suspend-Current-Job
+ Validate-Document
Validate-Job
.fi
@@ -384,6 +425,10 @@ Status codes correspond to the hexadecimal numbers (0xHHHH) and names from RFC
client-error-document-access-error
client-error-document-format-error
client-error-document-format-not-supported
+ client-error-document-password-error
+ client-error-document-permission-error
+ client-error-document-security-error
+ client-error-document-unprintable-error
client-error-forbidden
client-error-gone
client-error-ignored-all-notifications
@@ -517,7 +562,7 @@ Inserts the username from the URI provided to \fIipptool\fR, if any.
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: ipptoolfile.man 10023 2011-09-28 16:21:15Z mike $".
+.\" End of "$Id: ipptoolfile.man 10461 2012-05-11 23:01:21Z mike $".
.\"
diff --git a/man/lp.man b/man/lp.man
index 58750181..f9c904d9 100644
--- a/man/lp.man
+++ b/man/lp.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lp.man 10545 2012-07-16 17:16:46Z mike $"
+.\" "$Id: lp.man 10541 2012-07-16 16:53:26Z mike $"
.\"
.\" lp man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -246,7 +246,7 @@ is highest priority).
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lp.man 10545 2012-07-16 17:16:46Z mike $".
+.\" End of "$Id: lp.man 10541 2012-07-16 16:53:26Z mike $".
.\"
diff --git a/man/lpadmin.man b/man/lpadmin.man
index c388f03b..7ccd2940 100644
--- a/man/lpadmin.man
+++ b/man/lpadmin.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lpadmin.man 9762 2011-05-11 05:30:50Z mike $"
+.\" "$Id: lpadmin.man 10542 2012-07-16 16:56:04Z mike $"
.\"
.\" lpadmin man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -12,7 +12,7 @@
.\" which should have been included with this file. If this file is
.\" file is missing or damaged, see the license at "http://www.cups.org/".
.\"
-.TH lpadmin 8 "CUPS" "10 May 2011" "Apple Inc."
+.TH lpadmin 8 "CUPS" "16 July 2012" "Apple Inc."
.SH NAME
lpadmin \- configure cups printers and classes
.SH SYNOPSIS
@@ -182,10 +182,9 @@ user-level access control off.
.TP 5
-v "device-uri"
.br
-Sets the \fIdevice-uri\fR attribute of the printer queue. If
-\fIdevice-uri\fR is a filename it is automatically converted to
-the form \fIfile:///file/name\fR. Use the \fI-v\fR option with the
-\fIlpinfo(8)\fR command to get a list of supported device URIs and schemes.
+Sets the \fIdevice-uri\fR attribute of the printer queue. Use the \fI-v\fR
+option with the \fIlpinfo(8)\fR command to get a list of supported device URIs
+and schemes.
.TP 5
-D "info"
.br
@@ -222,7 +221,7 @@ System V or Solaris printing system configuration options.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lpadmin.man 9762 2011-05-11 05:30:50Z mike $".
+.\" End of "$Id: lpadmin.man 10542 2012-07-16 16:56:04Z mike $".
.\"
diff --git a/man/lpc.man b/man/lpc.man
index 8e5c7101..60ae768f 100644
--- a/man/lpc.man
+++ b/man/lpc.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lpc.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: lpc.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" lpc man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -65,7 +65,7 @@ standard Berkeley or LPRng commands.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lpc.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: lpc.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/lpinfo.man b/man/lpinfo.man
index 42bda480..be031217 100644
--- a/man/lpinfo.man
+++ b/man/lpinfo.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lpinfo.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: lpinfo.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" lpinfo man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -109,7 +109,7 @@ The \fIlpinfo\fR command is unique to CUPS.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lpinfo.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: lpinfo.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/lpmove.man b/man/lpmove.man
index b5688f41..9cc1a53c 100644
--- a/man/lpmove.man
+++ b/man/lpmove.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lpmove.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: lpmove.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" lpmove man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -60,7 +60,7 @@ Specifies an alternate server.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lpmove.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: lpmove.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/lpoptions.man.in b/man/lpoptions.man.in
index 7e5f07e6..d59e60c3 100644
--- a/man/lpoptions.man.in
+++ b/man/lpoptions.man.in
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lpoptions.man.in 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: lpoptions.man.in 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" lpoptions man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -129,7 +129,7 @@ created by the root user.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lpoptions.man.in 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: lpoptions.man.in 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/lppasswd.man b/man/lppasswd.man
index 87ade67b..a1136070 100644
--- a/man/lppasswd.man
+++ b/man/lppasswd.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lppasswd.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: lppasswd.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" lpadmin man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -62,7 +62,7 @@ accounts managed by PAM instead.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lppasswd.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: lppasswd.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/lpq.man b/man/lpq.man
index 502d45a0..ceafabcf 100644
--- a/man/lpq.man
+++ b/man/lpq.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lpq.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: lpq.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" lpq man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -66,7 +66,7 @@ Requests a more verbose (long) reporting format.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lpq.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: lpq.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/lpr.man b/man/lpr.man
index b60a265e..25c294c2 100644
--- a/man/lpr.man
+++ b/man/lpr.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lpr.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: lpr.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" lpr man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -116,7 +116,7 @@ are not supported by CUPS and produce a warning message if used.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lpr.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: lpr.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/lprm.man b/man/lprm.man
index d64ac03d..2ae0058b 100644
--- a/man/lprm.man
+++ b/man/lprm.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lprm.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: lprm.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" lprm man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -59,7 +59,7 @@ Berkeley \fIlprm\fR command.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lprm.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: lprm.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/lpstat.man b/man/lpstat.man
index c51c44ad..9302e290 100644
--- a/man/lpstat.man
+++ b/man/lpstat.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: lpstat.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: lpstat.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" lpstat man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -137,7 +137,7 @@ The Solaris "-f", "-P", and "-S" options are silently ignored.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: lpstat.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: lpstat.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/mailto.conf.man b/man/mailto.conf.man
index 7f9e30d5..c5551d61 100644
--- a/man/mailto.conf.man
+++ b/man/mailto.conf.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: mailto.conf.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: mailto.conf.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" mailto.conf man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -54,7 +54,7 @@ Specifies a prefix string for the subject line of an email notification.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: mailto.conf.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: mailto.conf.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/mime.convs.man b/man/mime.convs.man
index d55cad47..b9f74874 100644
--- a/man/mime.convs.man
+++ b/man/mime.convs.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: mime.convs.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: mime.convs.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" mime.convs man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -40,7 +40,7 @@ application/postscript application/vnd.cups-raster 50 pstoraster
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: mime.convs.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: mime.convs.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/mime.types.man b/man/mime.types.man
index 9c695660..cf85f057 100644
--- a/man/mime.types.man
+++ b/man/mime.types.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: mime.types.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: mime.types.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" mime.types man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -109,7 +109,7 @@ higher priority than "text/bar", "text/foo" will be chosen instead.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: mime.types.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: mime.types.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/notifier.man b/man/notifier.man
index 498dfd59..39bf9125 100644
--- a/man/notifier.man
+++ b/man/notifier.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: notifier.man 8999 2010-02-24 01:01:04Z mike $"
+.\" "$Id: notifier.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" notifier man page for CUPS.
.\"
-.\" Copyright 2007-2009 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2007 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -151,7 +151,7 @@ file for the current setting.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2009 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: notifier.man 8999 2010-02-24 01:01:04Z mike $".
+.\" End of "$Id: notifier.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/ppdc.man b/man/ppdc.man
index b613d429..f8696d22 100644
--- a/man/ppdc.man
+++ b/man/ppdc.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: ppdc.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: ppdc.man 10306 2012-02-16 05:31:55Z mike $"
.\"
.\" ppdc man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2007 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -12,7 +12,7 @@
.\" which should have been included with this file. If this file is
.\" file is missing or damaged, see the license at "http://www.cups.org/".
.\"
-.TH ppdc 1 "CUPS" "10 October 2008" "Apple Inc."
+.TH ppdc 1 "CUPS" "15 February 2012" "Apple Inc."
.SH NAME
ppdc \- cups ppd compiler
.SH SYNOPSIS
@@ -31,7 +31,8 @@ ppdc \- cups ppd compiler
.I source-file
.SH DESCRIPTION
\fIppdc\fR compiles PPDC source files into one or more PPD
-files.
+files. \fBThis program is deprecated and will be removed in a future release of
+CUPS.\fR
.PP
The \fI-D\fR option sets the named variable for use in the
source file. It is equivalent to using the #define directive
@@ -74,7 +75,7 @@ ppdhtml(1), ppdi(1), ppdmerge(1), ppdpo(1), ppdcfile(5)
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: ppdc.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: ppdc.man 10306 2012-02-16 05:31:55Z mike $".
.\"
diff --git a/man/ppdcfile.man b/man/ppdcfile.man
index fbd63586..3d019eab 100644
--- a/man/ppdcfile.man
+++ b/man/ppdcfile.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: ppdcfile.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: ppdcfile.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" ppdcfile man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2007 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -165,7 +165,7 @@ ppdc(1), ppdhtml(1), ppdi(1), ppdmerge(1), ppdpo(1)
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: ppdcfile.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: ppdcfile.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/ppdhtml.man b/man/ppdhtml.man
index bebf4e1e..4918ab85 100644
--- a/man/ppdhtml.man
+++ b/man/ppdhtml.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: ppdhtml.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: ppdhtml.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" ppdhtml man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2007 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -40,7 +40,7 @@ ppdc(1), ppdcfile(5), ppdi(1), ppdmerge(1), ppdpo(1)
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: ppdhtml.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: ppdhtml.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/ppdi.man b/man/ppdi.man
index 610d91cd..90eb58af 100644
--- a/man/ppdi.man
+++ b/man/ppdi.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: ppdi.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: ppdi.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" ppdi man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2007 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -40,7 +40,7 @@ ppdc(1), ppdhtml(1), ppdmerge(1), ppdpo(1), ppdcfile(5)
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: ppdi.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: ppdi.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/ppdmerge.man b/man/ppdmerge.man
index 90fee820..f579c6bb 100644
--- a/man/ppdmerge.man
+++ b/man/ppdmerge.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: ppdmerge.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: ppdmerge.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" ppdmerge man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2007 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -41,7 +41,7 @@ cupsprofile(1), ppdc(1), ppdhtml(1), ppdi(1), ppdpo(1), ppdcfile(5)
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: ppdmerge.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: ppdmerge.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/ppdpo.man b/man/ppdpo.man
index a3f9ac9b..62441509 100644
--- a/man/ppdpo.man
+++ b/man/ppdpo.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: ppdpo.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: ppdpo.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" ppdpo man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2007 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -12,7 +12,7 @@
.\" which should have been included with this file. If this file is
.\" file is missing or damaged, see the license at "http://www.cups.org/".
.\"
-.TH ppdpo 1 "CUPS" "10 October 2008" "Apple Inc."
+.TH ppdpo 1 "CUPS" "23 April 2012" "Apple Inc."
.SH NAME
ppdpo \- ppd message catalog generator
.SH SYNOPSIS
@@ -27,7 +27,7 @@ ppdpo \- ppd message catalog generator
.I source-file
.SH DESCRIPTION
\fIppdpo\fR extracts UI strings from PPDC source files and updates either
-a GNU gettext or Mac OS X strings format message catalog source file for
+a GNU gettext or OS X strings format message catalog source file for
translation.
.PP
The \fI-D\fR option sets the named variable for use in the
@@ -40,13 +40,13 @@ directories.
.PP
The \fI-o\fR option specifies the output file. The supported extensions are
".po" or ".po.gz" for GNU gettext format message catalogs and ".strings" for
-Mac OS X strings files.
+OS X strings files.
.SH SEE ALSO
ppdc(1), ppdhtml(1), ppdi(1), ppdmerge(1), ppdcfile(5)
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: ppdpo.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: ppdpo.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/printers.conf.man b/man/printers.conf.man
index abda49b2..dcd0e562 100644
--- a/man/printers.conf.man
+++ b/man/printers.conf.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: printers.conf.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: printers.conf.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" printers.conf man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -118,7 +118,7 @@ Specifies the date/time associated with the state.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: printers.conf.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: printers.conf.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/man/subscriptions.conf.man b/man/subscriptions.conf.man
index 4ff851cb..d8e16e39 100644
--- a/man/subscriptions.conf.man
+++ b/man/subscriptions.conf.man
@@ -1,9 +1,9 @@
.\"
-.\" "$Id: subscriptions.conf.man 9771 2011-05-12 05:21:56Z mike $"
+.\" "$Id: subscriptions.conf.man 10424 2012-04-23 17:26:57Z mike $"
.\"
.\" subscriptions.conf man page for CUPS.
.\"
-.\" Copyright 2007-2011 by Apple Inc.
+.\" Copyright 2007-2012 by Apple Inc.
.\" Copyright 2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -83,7 +83,7 @@ is typically the "from" address in mailto: notifications.
.br
http://localhost:631/help
.SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
+Copyright 2007-2012 by Apple Inc.
.\"
-.\" End of "$Id: subscriptions.conf.man 9771 2011-05-12 05:21:56Z mike $".
+.\" End of "$Id: subscriptions.conf.man 10424 2012-04-23 17:26:57Z mike $".
.\"
diff --git a/monitor/Dependencies b/monitor/Dependencies
index 451a95a3..54d05e76 100644
--- a/monitor/Dependencies
+++ b/monitor/Dependencies
@@ -1,18 +1,13 @@
-# DO NOT DELETE THIS LINE -- make depend depends on it.
-
-bcp.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-bcp.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-bcp.o: ../cups/language.h ../cups/string-private.h ../config.h
-bcp.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-bcp.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-bcp.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-bcp.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-bcp.o: ../cups/transcode.h ../cups/thread-private.h
-tbcp.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-tbcp.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-tbcp.o: ../cups/language.h ../cups/string-private.h ../config.h
-tbcp.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-tbcp.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-tbcp.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-tbcp.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-tbcp.o: ../cups/transcode.h ../cups/thread-private.h
+bcp.o: bcp.c ../cups/cups-private.h ../cups/string-private.h ../config.h \
+ ../cups/debug-private.h ../cups/versioning.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+tbcp.o: tbcp.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
diff --git a/monitor/Makefile b/monitor/Makefile
index dcb1ed01..4c0392da 100644
--- a/monitor/Makefile
+++ b/monitor/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $"
+# "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $"
#
# Port monitor makefile for CUPS.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 2006 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
@@ -56,7 +56,7 @@ clean:
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
@@ -142,5 +142,5 @@ include Dependencies
#
-# End of "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $".
+# End of "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $".
#
diff --git a/monitor/bcp.c b/monitor/bcp.c
index e3b59d5a..e70c7314 100644
--- a/monitor/bcp.c
+++ b/monitor/bcp.c
@@ -1,5 +1,5 @@
/*
- * "$Id: bcp.c 9901 2011-08-17 21:01:53Z mike $"
+ * "$Id: bcp.c 9900 2011-08-17 20:59:46Z mike $"
*
* TBCP port monitor for CUPS.
*
@@ -288,5 +288,5 @@ pswrite(const char *buf, /* I - Buffer to write */
/*
- * End of "$Id: bcp.c 9901 2011-08-17 21:01:53Z mike $".
+ * End of "$Id: bcp.c 9900 2011-08-17 20:59:46Z mike $".
*/
diff --git a/notifier/Dependencies b/notifier/Dependencies
index 9e723214..f5a26a46 100644
--- a/notifier/Dependencies
+++ b/notifier/Dependencies
@@ -1,25 +1,20 @@
-# DO NOT DELETE THIS LINE -- make depend depends on it.
-
-dbus.o: ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-dbus.o: ../cups/http.h ../cups/array.h ../cups/language.h
-dbus.o: ../cups/string-private.h ../config.h
-mailto.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-mailto.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-mailto.o: ../cups/language.h ../cups/string-private.h ../config.h
-mailto.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-mailto.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-mailto.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-mailto.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-mailto.o: ../cups/transcode.h ../cups/thread-private.h
-rss.o: ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-rss.o: ../cups/http.h ../cups/array.h ../cups/language.h ../cups/language.h
-rss.o: ../cups/string-private.h ../config.h ../cups/array.h
-testnotify.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-testnotify.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-testnotify.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-testnotify.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-testnotify.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-testnotify.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-testnotify.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-testnotify.o: ../cups/language-private.h ../cups/transcode.h
-testnotify.o: ../cups/thread-private.h
+dbus.o: dbus.c ../cups/cups.h ../cups/file.h ../cups/versioning.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \
+ ../cups/string-private.h ../config.h
+mailto.o: mailto.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+rss.o: rss.c ../cups/cups.h ../cups/file.h ../cups/versioning.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \
+ ../cups/string-private.h ../config.h ../cups/ipp-private.h
+testnotify.o: testnotify.c ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
diff --git a/notifier/Makefile b/notifier/Makefile
index 5fcd1e40..64aa5756 100644
--- a/notifier/Makefile
+++ b/notifier/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $"
+# "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $"
#
# Notifier makefile for CUPS.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -113,7 +113,7 @@ uninstall:
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
@@ -158,5 +158,5 @@ include Dependencies
#
-# End of "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $".
+# End of "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $".
#
diff --git a/notifier/dbus.c b/notifier/dbus.c
index 13e38403..597a218b 100644
--- a/notifier/dbus.c
+++ b/notifier/dbus.c
@@ -1,5 +1,5 @@
/*
- * "$Id: dbus.c 10178 2012-01-13 23:00:22Z mike $"
+ * "$Id: dbus.c 10191 2012-01-20 19:00:32Z mike $"
*
* D-Bus notifier for CUPS.
*
@@ -32,13 +32,14 @@
#include <sys/types.h>
#include <unistd.h>
-#include <dbus/dbus.h>
-#ifdef HAVE_DBUS_MESSAGE_ITER_INIT_APPEND
-# define dbus_message_append_iter_init dbus_message_iter_init_append
-# define dbus_message_iter_append_string(i,v) dbus_message_iter_append_basic(i, DBUS_TYPE_STRING, v)
-# define dbus_message_iter_append_uint32(i,v) dbus_message_iter_append_basic(i, DBUS_TYPE_UINT32, v)
-# define dbus_message_iter_append_boolean(i,v) dbus_message_iter_append_basic(i, DBUS_TYPE_BOOLEAN, v)
-#endif /* HAVE_DBUS_MESSAGE_ITER_INIT_APPEND */
+#ifdef HAVE_DBUS
+# include <dbus/dbus.h>
+# ifdef HAVE_DBUS_MESSAGE_ITER_INIT_APPEND
+# define dbus_message_append_iter_init dbus_message_iter_init_append
+# define dbus_message_iter_append_string(i,v) dbus_message_iter_append_basic(i, DBUS_TYPE_STRING, v)
+# define dbus_message_iter_append_uint32(i,v) dbus_message_iter_append_basic(i, DBUS_TYPE_UINT32, v)
+# define dbus_message_iter_append_boolean(i,v) dbus_message_iter_append_basic(i, DBUS_TYPE_BOOLEAN, v)
+# endif /* HAVE_DBUS_MESSAGE_ITER_INIT_APPEND */
/*
@@ -283,11 +284,11 @@ main(int argc, /* I - Number of command-line args */
continue;
attr = ippFindAttribute(msg, "notify-subscribed-event",
- IPP_TAG_KEYWORD);
+ IPP_TAG_KEYWORD);
if (!attr)
continue;
- event = attr->values[0].string.text;
+ event = ippGetString(attr, 0, NULL);
if (!strncmp(event, "server-", 7))
{
const char *word2 = event + 7; /* Second word */
@@ -363,9 +364,13 @@ main(int argc, /* I - Number of command-line args */
dbus_message_append_iter_init(message, &iter);
attr = ippFindAttribute(msg, "notify-text", IPP_TAG_TEXT);
- if (!attr)
- goto bail;
- if (!dbus_message_iter_append_string(&iter, &(attr->values[0].string.text)))
+ if (attr)
+ {
+ const char *val = ippGetString(attr, 0, NULL);
+ if (!dbus_message_iter_append_string(&iter, &val))
+ goto bail;
+ }
+ else
goto bail;
if (params >= PARAMS_PRINTER)
@@ -379,9 +384,9 @@ main(int argc, /* I - Number of command-line args */
attr = ippFindAttribute(msg, "notify-printer-uri", IPP_TAG_URI);
if (attr)
{
- if (!dbus_message_iter_append_string(&iter,
- &(attr->values[0].string.text)))
- goto bail;
+ const char *val = ippGetString(attr, 0, NULL);
+ if (!dbus_message_iter_append_string(&iter, &val))
+ goto bail;
}
else
{
@@ -393,14 +398,14 @@ main(int argc, /* I - Number of command-line args */
if (have_printer_params)
{
attr = ippFindAttribute(msg, "printer-name", IPP_TAG_NAME);
- if (attr)
- {
- if (!dbus_message_iter_append_string(&iter,
- &(attr->values[0].string.text)))
- goto bail;
- }
- else
- goto bail;
+ if (attr)
+ {
+ const char *val = ippGetString(attr, 0, NULL);
+ if (!dbus_message_iter_append_string(&iter, &val))
+ goto bail;
+ }
+ else
+ goto bail;
}
else
dbus_message_iter_append_string(&iter, &nul);
@@ -410,7 +415,10 @@ main(int argc, /* I - Number of command-line args */
{
attr = ippFindAttribute(msg, "printer-state", IPP_TAG_ENUM);
if (attr)
- dbus_message_iter_append_uint32(&iter, &(attr->values[0].integer));
+ {
+ dbus_uint32_t val = ippGetInteger(attr, 0);
+ dbus_message_iter_append_uint32(&iter, &val);
+ }
else
goto bail;
}
@@ -424,19 +432,20 @@ main(int argc, /* I - Number of command-line args */
IPP_TAG_KEYWORD);
if (attr)
{
- for (reasons_length = 0, i = 0; i < attr->num_values; i++)
+ int num_values = ippGetCount(attr);
+ for (reasons_length = 0, i = 0; i < num_values; i++)
/* All need commas except the last, which needs a nul byte. */
- reasons_length += 1 + strlen(attr->values[i].string.text);
+ reasons_length += 1 + strlen(ippGetString(attr, i, NULL));
printer_reasons = malloc(reasons_length);
if (!printer_reasons)
goto bail;
p = printer_reasons;
- for (i = 0; i < attr->num_values; i++)
+ for (i = 0; i < num_values; i++)
{
if (i)
*p++ = ',';
- strcpy(p, attr->values[i].string.text);
+ strcpy(p, ippGetString(attr, i, NULL));
p += strlen(p);
}
if (!dbus_message_iter_append_string(&iter, &printer_reasons))
@@ -454,7 +463,10 @@ main(int argc, /* I - Number of command-line args */
attr = ippFindAttribute(msg, "printer-is-accepting-jobs",
IPP_TAG_BOOLEAN);
if (attr)
- dbus_message_iter_append_boolean(&iter, &(attr->values[0].boolean));
+ {
+ dbus_bool_t val = ippGetBoolean(attr, 0);
+ dbus_message_iter_append_boolean(&iter, &val);
+ }
else
goto bail;
}
@@ -470,33 +482,42 @@ main(int argc, /* I - Number of command-line args */
/* UINT32 job-id */
attr = ippFindAttribute(msg, "notify-job-id", IPP_TAG_INTEGER);
- if (!attr)
+ if (attr)
+ {
+ dbus_uint32_t val = ippGetInteger(attr, 0);
+ dbus_message_iter_append_uint32(&iter, &val);
+ }
+ else
goto bail;
- dbus_message_iter_append_uint32(&iter, &(attr->values[0].integer));
/* UINT32 job-state */
attr = ippFindAttribute(msg, "job-state", IPP_TAG_ENUM);
- if (!attr)
+ if (attr)
+ {
+ dbus_uint32_t val = ippGetInteger(attr, 0);
+ dbus_message_iter_append_uint32(&iter, &val);
+ }
+ else
goto bail;
- dbus_message_iter_append_uint32(&iter, &(attr->values[0].integer));
/* STRING job-state-reasons */
attr = ippFindAttribute(msg, "job-state-reasons", IPP_TAG_KEYWORD);
if (attr)
{
- for (reasons_length = 0, i = 0; i < attr->num_values; i++)
+ int num_values = ippGetCount(attr);
+ for (reasons_length = 0, i = 0; i < num_values; i++)
/* All need commas except the last, which needs a nul byte. */
- reasons_length += 1 + strlen(attr->values[i].string.text);
+ reasons_length += 1 + strlen(ippGetString(attr, i, NULL));
job_reasons = malloc(reasons_length);
if (!job_reasons)
goto bail;
p = job_reasons;
- for (i = 0; i < attr->num_values; i++)
+ for (i = 0; i < num_values; i++)
{
if (i)
*p++ = ',';
- strcpy(p, attr->values[i].string.text);
+ strcpy(p, ippGetString(attr, i, NULL));
p += strlen(p);
}
if (!dbus_message_iter_append_string(&iter, &job_reasons))
@@ -509,8 +530,8 @@ main(int argc, /* I - Number of command-line args */
attr = ippFindAttribute(msg, "job-name", IPP_TAG_NAME);
if (attr)
{
- if (!dbus_message_iter_append_string(&iter,
- &(attr->values[0].string.text)))
+ const char *val = ippGetString(attr, 0, NULL);
+ if (!dbus_message_iter_append_string(&iter, &val))
goto bail;
}
else
@@ -519,9 +540,13 @@ main(int argc, /* I - Number of command-line args */
/* UINT32 job-impressions-completed */
attr = ippFindAttribute(msg, "job-impressions-completed",
IPP_TAG_INTEGER);
- if (!attr)
+ if (attr)
+ {
+ dbus_uint32_t val = ippGetInteger(attr, 0);
+ dbus_message_iter_append_uint32(&iter, &val);
+ }
+ else
goto bail;
- dbus_message_iter_append_uint32(&iter, &(attr->values[0].integer));
}
dbus_connection_send(con, message, NULL);
@@ -588,8 +613,15 @@ acquire_lock(int *fd, /* O - Lock file descriptor */
else
return (0);
}
+#else /* !HAVE_DBUS */
+int
+main(void)
+{
+ return (1);
+}
+#endif /* HAVE_DBUS */
/*
- * End of "$Id: dbus.c 10178 2012-01-13 23:00:22Z mike $".
+ * End of "$Id: dbus.c 10191 2012-01-20 19:00:32Z mike $".
*/
diff --git a/notifier/mailto.c b/notifier/mailto.c
index cebcfbb9..aaca9184 100644
--- a/notifier/mailto.c
+++ b/notifier/mailto.c
@@ -1,5 +1,5 @@
/*
- * "$Id: mailto.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: mailto.c 10097 2011-11-02 05:35:38Z mike $"
*
* "mailto" notifier for CUPS.
*
@@ -632,7 +632,7 @@ print_attributes(ipp_t *ipp, /* I - IPP request */
fprintf(stderr, "DEBUG: %*s%s:\n\n", indent - 4, "", ippTagString(group));
}
- _ippAttrString(attr, buffer, sizeof(buffer));
+ ippAttributeString(attr, buffer, sizeof(buffer));
fprintf(stderr, "DEBUG: %*s%s (%s%s) %s", indent, "", attr->name,
attr->num_values > 1 ? "1setOf " : "",
@@ -642,5 +642,5 @@ print_attributes(ipp_t *ipp, /* I - IPP request */
/*
- * End of "$Id: mailto.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: mailto.c 10097 2011-11-02 05:35:38Z mike $".
*/
diff --git a/notifier/rss.c b/notifier/rss.c
index 1897e621..ac42aa3c 100644
--- a/notifier/rss.c
+++ b/notifier/rss.c
@@ -1,9 +1,9 @@
/*
- * "$Id: rss.c 10379 2012-03-23 22:16:22Z mike $"
+ * "$Id: rss.c 10378 2012-03-23 21:38:25Z mike $"
*
* RSS notifier for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -33,6 +33,7 @@
#include <cups/string-private.h>
#include <cups/array.h>
#include <sys/select.h>
+#include <cups/ipp-private.h> /* TODO: Update so we don't need this */
/*
@@ -736,5 +737,5 @@ xml_escape(const char *s) /* I - String to escape */
/*
- * End of "$Id: rss.c 10379 2012-03-23 22:16:22Z mike $".
+ * End of "$Id: rss.c 10378 2012-03-23 21:38:25Z mike $".
*/
diff --git a/notifier/testnotify.c b/notifier/testnotify.c
index e8bb8f5a..880b51d9 100644
--- a/notifier/testnotify.c
+++ b/notifier/testnotify.c
@@ -1,5 +1,5 @@
/*
- * "$Id: testnotify.c 9499 2011-01-19 21:38:13Z mike $"
+ * "$Id: testnotify.c 10097 2011-11-02 05:35:38Z mike $"
*
* Test notifier for CUPS.
*
@@ -113,7 +113,7 @@ print_attributes(ipp_t *ipp, /* I - IPP request */
fprintf(stderr, "DEBUG: %*s%s:\n\n", indent - 4, "", ippTagString(group));
}
- _ippAttrString(attr, buffer, sizeof(buffer));
+ ippAttributeString(attr, buffer, sizeof(buffer));
fprintf(stderr, "DEBUG: %*s%s (%s%s) %s", indent, "", attr->name,
attr->num_values > 1 ? "1setOf " : "",
@@ -123,5 +123,5 @@ print_attributes(ipp_t *ipp, /* I - IPP request */
/*
- * End of "$Id: testnotify.c 9499 2011-01-19 21:38:13Z mike $".
+ * End of "$Id: testnotify.c 10097 2011-11-02 05:35:38Z mike $".
*/
diff --git a/packaging/InstallationCheck b/packaging/InstallationCheck
index 4e3405ca..3458cbb5 100755
--- a/packaging/InstallationCheck
+++ b/packaging/InstallationCheck
@@ -1,11 +1,11 @@
#!/bin/sh
case `uname -r` in
- # Mac OS X 10.4.x
- 8.*) exit 0;;
+ # OS X 10.7.x
+ 11.*) exit 0;;
- # Mac OS X 10.5.x
- 9.*) exit 0;;
+ # OS X 10.8.x
+ 12.*) exit 0;;
- # Older Mac OS X...
+ # Older OS X...
*) exit 97;;
esac
diff --git a/packaging/cups.list.in b/packaging/cups.list.in
index e7967591..3e313b34 100644
--- a/packaging/cups.list.in
+++ b/packaging/cups.list.in
@@ -1,5 +1,5 @@
#
-# "$Id: cups.list.in 10439 2012-04-23 23:49:19Z mike $"
+# "$Id: cups.list.in 10456 2012-05-07 22:41:42Z mike $"
#
# ESP Package Manager (EPM) file list for CUPS.
#
@@ -225,9 +225,7 @@ $XINETD=@XINETD@
$LIB32DIR=@LIB32DIR@
$LIB64DIR=@LIB64DIR@
-$IMGFILTERS=@IMGFILTERS@
$MDNS=@MDNS@
-$PDFTOPS=@PDFTOPS@
$CUPS_USER=@CUPS_USER@
$CUPS_GROUP=@CUPS_GROUP@
@@ -243,6 +241,7 @@ $MAN7EXT=@MAN7EXT@
$MAN8EXT=@MAN8EXT@
$MAN8DIR=@MAN8DIR@
+$LIBZ=@LIBZ@
$DSOLIBS=@DSOLIBS@
# Make sure the MD5 password file is now owned by CUPS_USER...
@@ -278,12 +277,10 @@ l 0700 root sys $SERVERBIN/backend/ipps ipp
f 0500 root sys $SERVERBIN/backend/lpd backend/lpd
%if DNSSD_BACKEND
f 0500 root sys $SERVERBIN/backend/dnssd backend/dnssd
+%system darwin
l 0700 root sys $SERVERBIN/backend/mdns dnssd
-%endif
-%system !darwin
-f 0555 root sys $SERVERBIN/backend/parallel backend/parallel
%system all
-f 0555 root sys $SERVERBIN/backend/serial backend/serial
+%endif
f 0555 root sys $SERVERBIN/backend/snmp backend/snmp
f 0555 root sys $SERVERBIN/backend/socket backend/socket
f 0555 root sys $SERVERBIN/backend/usb backend/usb
@@ -299,27 +296,14 @@ f 0555 root sys $SERVERBIN/daemon/cups-driverd scheduler/cups-driverd
f 0555 root sys $SERVERBIN/daemon/cups-polld scheduler/cups-polld
d 0755 root sys $SERVERBIN/driver -
d 0755 root sys $SERVERBIN/filter -
-f 0555 root sys $SERVERBIN/filter/bannertops filter/bannertops
-f 0555 root sys $SERVERBIN/filter/commandtoespcx driver/commandtoescpx
-f 0555 root sys $SERVERBIN/filter/commandtopclx driver/commandtopclx
f 0555 root sys $SERVERBIN/filter/commandtops filter/commandtops
f 0555 root sys $SERVERBIN/filter/gziptoany filter/gziptoany
-%if IMGFILTERS
-f 0555 root sys $SERVERBIN/filter/imagetops filter/imagetops
-f 0555 root sys $SERVERBIN/filter/imagetoraster filter/imagetoraster
-%endif
-%if PDFTOPS
-f 0555 root sys $SERVERBIN/filter/pdftops filter/pdftops
-%endif
f 0555 root sys $SERVERBIN/filter/pstops filter/pstops
-f 0555 root sys $SERVERBIN/filter/rastertoespcx driver/rastertoescpx
f 0555 root sys $SERVERBIN/filter/rastertolabel filter/rastertolabel
l 0755 root sys $SERVERBIN/filter/rastertodymo rastertolabel
f 0555 root sys $SERVERBIN/filter/rastertoepson filter/rastertoepson
f 0555 root sys $SERVERBIN/filter/rastertohp filter/rastertohp
-f 0555 root sys $SERVERBIN/filter/rastertopclx driver/rastertopclx
f 0555 root sys $SERVERBIN/filter/rastertopwg filter/rastertopwg
-f 0555 root sys $SERVERBIN/filter/texttops filter/texttops
d 0755 root sys $SERVERBIN/notifier -
f 0555 root sys $SERVERBIN/notifier/mailto notifier/mailto
@@ -427,42 +411,6 @@ l 0755 root sys $LIBDIR/libcupsppdc.so libcupsppdc.so.1
%subpackage
%endif
-%if LIB32DIR
-%subpackage libs
-f 0555 root sys $LIB32DIR/libcups.so.2 cups/libcups.32.so.2 nostrip()
-l 0755 root sys $LIB32DIR/libcups.so libcups.so.2
-f 0555 root sys $LIB32DIR/libcupscgi.so.1 cgi-bin/libcupscgi.32.so.1 nostrip()
-l 0755 root sys $LIB32DIR/libcupscgi.so libcupscgi.so.1
-f 0555 root sys $LIB32DIR/libcupsdriver.so.1 driver/libcupsdriver.32.so.1 nostrip()
-l 0755 root sys $LIB32DIR/libcupsdriver.so libcupsdriver.so.1
-f 0555 root sys $LIB32DIR/libcupsimage.so.2 filter/libcupsimage.32.so.2 nostrip()
-l 0755 root sys $LIB32DIR/libcupsimage.so libcupsimage.so.2
-f 0555 root sys $LIB32DIR/libcupsmime.so.1 scheduler/libcupsmime.32.so.1 nostrip()
-l 0755 root sys $LIB32DIR/libcupsmime.so libcupsmime.so.1
-f 0555 root sys $LIB32DIR/libcupsppdc.so.1 ppdc/libcupsppdc.32.so.1 nostrip()
-l 0755 root sys $LIB32DIR/libcupsppdc.so libcupsppdc.so.1
-%system all
-%subpackage
-%endif
-
-%if LIB64DIR
-%subpackage libs
-f 0555 root sys $LIB64DIR/libcups.so.2 cups/libcups.64.so.2 nostrip()
-l 0755 root sys $LIB64DIR/libcups.so libcups.so.2
-f 0555 root sys $LIB64DIR/libcupscgi.so.1 cgi-bin/libcupscgi.64.so.1 nostrip()
-l 0755 root sys $LIB64DIR/libcupscgi.so libcupscgi.so.1
-f 0555 root sys $LIB64DIR/libcupsdriver.so.1 driver/libcupsdriver.64.so.1 nostrip()
-l 0755 root sys $LIB64DIR/libcupsdriver.so libcupsdriver.so.1
-f 0555 root sys $LIB64DIR/libcupsimage.so.2 filter/libcupsimage.64.so.2 nostrip()
-l 0755 root sys $LIB64DIR/libcupsimage.so libcupsimage.so.2
-f 0555 root sys $LIB64DIR/libcupsmime.so.1 scheduler/libcupsmime.64.so.1 nostrip()
-l 0755 root sys $LIB64DIR/libcupsmime.so libcupsmime.so.1
-f 0555 root sys $LIB64DIR/libcupsppdc.so.1 ppdc/libcupsppdc.64.so.1 nostrip()
-l 0755 root sys $LIB64DIR/libcupsppdc.so libcupsppdc.so.1
-%system all
-%subpackage
-%endif
-
# Directories
d 0755 root sys $LOGDIR -
d 0710 root $CUPS_GROUP $REQUESTS -
@@ -474,27 +422,27 @@ d 0755 root $CUPS_GROUP $STATEDIR -
d 0511 root $CUPS_PRIMARY_SYSTEM_GROUP $STATEDIR/certs -
# Data files
-f 0444 root sys $LOCALEDIR/da/cups_da.po locale/cups_da.po
-f 0444 root sys $LOCALEDIR/de/cups_de.po locale/cups_de.po
-f 0444 root sys $LOCALEDIR/es/cups_es.po locale/cups_es.po
+#f 0444 root sys $LOCALEDIR/da/cups_da.po locale/cups_da.po
+#f 0444 root sys $LOCALEDIR/de/cups_de.po locale/cups_de.po
+#f 0444 root sys $LOCALEDIR/es/cups_es.po locale/cups_es.po
#f 0444 root sys $LOCALEDIR/et/cups_et.po locale/cups_et.po
-f 0444 root sys $LOCALEDIR/eu/cups_eu.po locale/cups_eu.po
-f 0444 root sys $LOCALEDIR/fi/cups_fi.po locale/cups_fi.po
-f 0444 root sys $LOCALEDIR/fr/cups_fr.po locale/cups_fr.po
+#f 0444 root sys $LOCALEDIR/eu/cups_eu.po locale/cups_eu.po
+#f 0444 root sys $LOCALEDIR/fi/cups_fi.po locale/cups_fi.po
+#f 0444 root sys $LOCALEDIR/fr/cups_fr.po locale/cups_fr.po
#f 0444 root sys $LOCALEDIR/he/cups_he.po locale/cups_he.po
-f 0444 root sys $LOCALEDIR/id/cups_id.po locale/cups_id.po
-f 0444 root sys $LOCALEDIR/it/cups_it.po locale/cups_it.po
-f 0444 root sys $LOCALEDIR/ja/cups_ja.po locale/cups_ja.po
-f 0444 root sys $LOCALEDIR/ko/cups_ko.po locale/cups_ko.po
-f 0444 root sys $LOCALEDIR/nl/cups_nl.po locale/cups_nl.po
-f 0444 root sys $LOCALEDIR/no/cups_no.po locale/cups_no.po
-f 0444 root sys $LOCALEDIR/pl/cups_pl.po locale/cups_pl.po
-f 0444 root sys $LOCALEDIR/pt/cups_pt.po locale/cups_pt.po
-f 0444 root sys $LOCALEDIR/pt_BR/cups_pt_BR.po locale/cups_pt_BR.po
-f 0444 root sys $LOCALEDIR/ru/cups_ru.po locale/cups_ru.po
-f 0444 root sys $LOCALEDIR/sv/cups_sv.po locale/cups_sv.po
-f 0444 root sys $LOCALEDIR/zh/cups_zh.po locale/cups_zh.po
-f 0444 root sys $LOCALEDIR/zh_TW/cups_zh_TW.po locale/cups_zh_TW.po
+#f 0444 root sys $LOCALEDIR/id/cups_id.po locale/cups_id.po
+#f 0444 root sys $LOCALEDIR/it/cups_it.po locale/cups_it.po
+#f 0444 root sys $LOCALEDIR/ja/cups_ja.po locale/cups_ja.po
+#f 0444 root sys $LOCALEDIR/ko/cups_ko.po locale/cups_ko.po
+#f 0444 root sys $LOCALEDIR/nl/cups_nl.po locale/cups_nl.po
+#f 0444 root sys $LOCALEDIR/no/cups_no.po locale/cups_no.po
+#f 0444 root sys $LOCALEDIR/pl/cups_pl.po locale/cups_pl.po
+#f 0444 root sys $LOCALEDIR/pt/cups_pt.po locale/cups_pt.po
+#f 0444 root sys $LOCALEDIR/pt_BR/cups_pt_BR.po locale/cups_pt_BR.po
+#f 0444 root sys $LOCALEDIR/ru/cups_ru.po locale/cups_ru.po
+#f 0444 root sys $LOCALEDIR/sv/cups_sv.po locale/cups_sv.po
+#f 0444 root sys $LOCALEDIR/zh/cups_zh.po locale/cups_zh.po
+#f 0444 root sys $LOCALEDIR/zh_TW/cups_zh_TW.po locale/cups_zh_TW.po
d 0755 root sys $DATADIR -
@@ -506,11 +454,7 @@ f 0444 root sys $DATADIR/banners/standard data/standard
f 0444 root sys $DATADIR/banners/topsecret data/topsecret
f 0444 root sys $DATADIR/banners/unclassified data/unclassified
-d 0755 root sys $DATADIR/charsets -
-f 0444 root sys $DATADIR/charsets/utf-8 data/utf-8
-
d 0755 root sys $DATADIR/data -
-f 0444 root sys $DATADIR/data/psglyphs data/psglyphs
f 0444 root sys $DATADIR/data/testprint data/testprint
d 0755 root sys $DATADIR/drv -
@@ -519,15 +463,18 @@ f 0444 root sys $DATADIR/drv/sample.drv ppdc/sample.drv
d 0755 root sys $DATADIR/examples -
f 0444 root sys $DATADIR/examples examples/*.drv
-d 0755 root sys $DATADIR/fonts -
-f 0444 root sys $DATADIR/fonts fonts/Monospace*
-
d 0755 root sys $DATADIR/ipptool -
f 0444 root sys $DATADIR/ipptool/create-printer-subscription.test test/create-printer-subscription.test
f 0444 root sys $DATADIR/ipptool/get-completed-jobs.test test/get-completed-jobs.test
f 0444 root sys $DATADIR/ipptool/get-jobs.test test/get-jobs.test
+f 0444 root sys $DATADIR/ipptool/get-printer-attributes.test test/get-printer-attributes.test
+f 0444 root sys $DATADIR/ipptool/print-job.test test/print-job.test
+f 0444 root sys $DATADIR/ipptool test/document-*.p*
f 0444 root sys $DATADIR/ipptool test/ipp-*.test
+f 0444 root sys $DATADIR/ipptool test/onepage-*.p*
f 0444 root sys $DATADIR/ipptool test/testfile.*
+f 0444 root sys $DATADIR/ipptool/color.jpg test/color.jpg
+f 0444 root sys $DATADIR/ipptool/gray.jpg test/gray.jpg
d 0755 root sys $DATADIR/mime -
f 0444 root sys $DATADIR/mime/mime.convs conf/mime.convs
@@ -543,17 +490,17 @@ d 0755 root sys $DATADIR/templates -
f 0444 root sys $DATADIR/templates templates/*.tmpl
## Template files
-d 0755 root sys $DATADIR/templates/de
-f 0444 root sys $DATADIR/templates/de templates/de/*.tmpl
+#d 0755 root sys $DATADIR/templates/de
+#f 0444 root sys $DATADIR/templates/de templates/de/*.tmpl
-d 0755 root sys $DATADIR/templates/es
-f 0444 root sys $DATADIR/templates/es templates/es/*.tmpl
+#d 0755 root sys $DATADIR/templates/es
+#f 0444 root sys $DATADIR/templates/es templates/es/*.tmpl
#d 0755 root sys $DATADIR/templates/et
#f 0444 root sys $DATADIR/templates/et templates/et/*.tmpl
-d 0755 root sys $DATADIR/templates/eu
-f 0444 root sys $DATADIR/templates/eu templates/eu/*.tmpl
+#d 0755 root sys $DATADIR/templates/eu
+#f 0444 root sys $DATADIR/templates/eu templates/eu/*.tmpl
#d 0755 root sys $DATADIR/templates/fr
#f 0444 root sys $DATADIR/templates/fr templates/fr/*.tmpl
@@ -561,20 +508,20 @@ f 0444 root sys $DATADIR/templates/eu templates/eu/*.tmpl
#d 0755 root sys $DATADIR/templates/he
#f 0444 root sys $DATADIR/templates/he templates/he/*.tmpl
-d 0755 root sys $DATADIR/templates/id
-f 0444 root sys $DATADIR/templates/id templates/id/*.tmpl
+#d 0755 root sys $DATADIR/templates/id
+#f 0444 root sys $DATADIR/templates/id templates/id/*.tmpl
-d 0755 root sys $DATADIR/templates/it
-f 0444 root sys $DATADIR/templates/it templates/it/*.tmpl
+#d 0755 root sys $DATADIR/templates/it
+#f 0444 root sys $DATADIR/templates/it templates/it/*.tmpl
-d 0755 root sys $DATADIR/templates/ja
-f 0444 root sys $DATADIR/templates/ja templates/ja/*.tmpl
+#d 0755 root sys $DATADIR/templates/ja
+#f 0444 root sys $DATADIR/templates/ja templates/ja/*.tmpl
-d 0755 root sys $DATADIR/templates/pl
-f 0444 root sys $DATADIR/templates/pl templates/pl/*.tmpl
+#d 0755 root sys $DATADIR/templates/pl
+#f 0444 root sys $DATADIR/templates/pl templates/pl/*.tmpl
-d 0755 root sys $DATADIR/templates/ru
-f 0444 root sys $DATADIR/templates/ru templates/ru/*.tmpl
+#d 0755 root sys $DATADIR/templates/ru
+#f 0444 root sys $DATADIR/templates/ru templates/ru/*.tmpl
#d 0755 root sys $DATADIR/templates/sv
#f 0444 root sys $DATADIR/templates/sv templates/sv/*.tmpl
@@ -587,8 +534,9 @@ d 0755 root sys $SERVERROOT -
d 0755 root $CUPS_GROUP $SERVERROOT/interfaces -
d 0755 root $CUPS_GROUP $SERVERROOT/ppd -
d 0700 root $CUPS_GROUP $SERVERROOT/ssl -
-c $CUPS_PERM root $CUPS_GROUP $SERVERROOT/ conf/*.conf
+c $CUPS_PERM root $CUPS_GROUP $SERVERROOT/cupsd.conf conf/cupsd.conf
f $CUPS_PERM root $CUPS_GROUP $SERVERROOT/cupsd.conf.default conf/cupsd.conf
+c $CUPS_PERM root $CUPS_GROUP $SERVERROOT/snmp.conf conf/snmp.conf
%if PAMDIR
d 0755 root sys $PAMDIR -
@@ -604,24 +552,19 @@ f 0444 root sys $INCLUDEDIR/cups/array.h cups/array.h
f 0444 root sys $INCLUDEDIR/cups/backend.h cups/backend.h
f 0444 root sys $INCLUDEDIR/cups/cups.h cups/cups.h
f 0444 root sys $INCLUDEDIR/cups/dir.h cups/dir.h
-f 0444 root sys $INCLUDEDIR/cups/driver.h driver/driver.h
f 0444 root sys $INCLUDEDIR/cups/file.h cups/file.h
f 0444 root sys $INCLUDEDIR/cups/http.h cups/http.h
-f 0444 root sys $INCLUDEDIR/cups/image.h filter/image.h
f 0444 root sys $INCLUDEDIR/cups/ipp.h cups/ipp.h
-f 0444 root sys $INCLUDEDIR/cups/mime.h scheduler/mime.h
f 0444 root sys $INCLUDEDIR/cups/language.h cups/language.h
f 0444 root sys $INCLUDEDIR/cups/ppd.h cups/ppd.h
f 0444 root sys $INCLUDEDIR/cups/raster.h cups/raster.h
+f 0444 root sys $INCLUDEDIR/cups/sidechannel.h cups/sidechannel.h
f 0444 root sys $INCLUDEDIR/cups/transcode.h cups/transcode.h
+f 0444 root sys $INCLUDEDIR/cups/versioning.h cups/versioning.h
%if INSTALLSTATIC
f 0444 root sys $LIBDIR/libcups.a cups/libcups.a
-f 0444 root sys $LIBDIR/libcupscgi.a cgi-bin/libcupscgi.a
-f 0444 root sys $LIBDIR/libcupsdriver.a driver/libcupsdriver.a
f 0444 root sys $LIBDIR/libcupsimage.a filter/libcupsimage.a
-f 0444 root sys $LIBDIR/libcupsmime.a scheduler/libcupsmime.a
-f 0444 root sys $LIBDIR/libcupsppdc.a ppdc/libcupsppdc.a
%endif
d 0755 root sys $DOCDIR/help -
@@ -660,17 +603,17 @@ f 0444 root sys $DOCDIR/images doc/images/*.png
f 0444 root sys $DOCDIR/robots.txt doc/robots.txt
# Localized documentation files
-d 0755 root sys $DOCDIR/de
-f 0444 root sys $DOCDIR/de doc/de/*.html
+#d 0755 root sys $DOCDIR/de
+#f 0444 root sys $DOCDIR/de doc/de/*.html
-d 0755 root sys $DOCDIR/es
-f 0444 root sys $DOCDIR/es doc/es/*.html
+#d 0755 root sys $DOCDIR/es
+#f 0444 root sys $DOCDIR/es doc/es/*.html
#d 0755 root sys $DOCDIR/et
#f 0444 root sys $DOCDIR/et doc/et/*.html
-d 0755 root sys $DOCDIR/eu
-f 0444 root sys $DOCDIR/eu doc/eu/*.html
+#d 0755 root sys $DOCDIR/eu
+#f 0444 root sys $DOCDIR/eu doc/eu/*.html
#d 0755 root sys $DOCDIR/fr
#f 0444 root sys $DOCDIR/fr doc/fr/*.html
@@ -679,20 +622,20 @@ f 0444 root sys $DOCDIR/eu doc/eu/*.html
#f 0444 root sys $DOCDIR/he doc/he/*.html
#f 0444 root sys $DOCDIR/he/cups.css doc/he/cups.css
-d 0755 root sys $DOCDIR/id
-f 0444 root sys $DOCDIR/id doc/id/*.html
+#d 0755 root sys $DOCDIR/id
+#f 0444 root sys $DOCDIR/id doc/id/*.html
-d 0755 root sys $DOCDIR/it
-f 0444 root sys $DOCDIR/it doc/it/*.html
+#d 0755 root sys $DOCDIR/it
+#f 0444 root sys $DOCDIR/it doc/it/*.html
-d 0755 root sys $DOCDIR/ja
-f 0444 root sys $DOCDIR/ja doc/ja/*.html
+#d 0755 root sys $DOCDIR/ja
+#f 0444 root sys $DOCDIR/ja doc/ja/*.html
-d 0755 root sys $DOCDIR/pl
-f 0444 root sys $DOCDIR/pl doc/pl/*.html
+#d 0755 root sys $DOCDIR/pl
+#f 0444 root sys $DOCDIR/pl doc/pl/*.html
-d 0755 root sys $DOCDIR/ru
-f 0444 root sys $DOCDIR/ru doc/ru/*.html
+#d 0755 root sys $DOCDIR/ru
+#f 0444 root sys $DOCDIR/ru doc/ru/*.html
#d 0755 root sys $DOCDIR/sv
#f 0444 root sys $DOCDIR/sv doc/sv/*.html
@@ -721,6 +664,7 @@ f 0444 root sys $MANDIR/man1/lpstat.$MAN1EXT man/lpstat.$MAN1EXT
f 0444 root sys $MANDIR/man1/lp.$MAN1EXT man/lp.$MAN1EXT
f 0444 root sys $MANDIR/man5/classes.conf.$MAN5EXT man/classes.conf.$MAN5EXT
+f 0444 root sys $MANDIR/man5/cups-snmp.conf.$MAN5EXT man/cups-snmp.conf.$MAN5EXT
f 0444 root sys $MANDIR/man5/cupsd.conf.$MAN5EXT man/cupsd.conf.$MAN5EXT
f 0444 root sys $MANDIR/man5/ipptoolfile.$MAN5EXT man/ipptoolfile.$MAN5EXT
f 0444 root sys $MANDIR/man5/mailto.conf.$MAN5EXT man/mailto.conf.$MAN5EXT
@@ -734,7 +678,7 @@ l 0644 root sys $AMANDIR/man$MAN8DIR/cupsreject.$MAN8EXT cupsaccept.$MAN8EXT
f 0444 root sys $AMANDIR/man$MAN8DIR/cupsaddsmb.$MAN8EXT man/cupsaddsmb.$MAN8EXT
f 0444 root sys $AMANDIR/man$MAN8DIR/cupsctl.$MAN8EXT man/cupsctl.$MAN8EXT
f 0444 root sys $AMANDIR/man$MAN8DIR/cupsfilter.$MAN8EXT man/cupsfilter.$MAN8EXT
-f 0444 root sys $AMANDIR/man$MAN8DIR/cups-polld.$MAN8EXT man/cups-polld.$MAN8EXT
+f 0444 root sys $AMANDIR/man$MAN8DIR/cups-snmp.$MAN8EXT man/cups-snmp.$MAN8EXT
f 0444 root sys $AMANDIR/man$MAN8DIR/cupsd.$MAN8EXT man/cupsd.$MAN8EXT
f 0444 root sys $AMANDIR/man$MAN8DIR/cupsenable.$MAN8EXT man/cupsenable.$MAN8EXT
l 0644 root sys $AMANDIR/man$MAN8DIR/cupsdisable.$MAN8EXT cupsenable.$MAN8EXT
@@ -796,5 +740,5 @@ f 0444 root sys $XINETD/cups-lpd scheduler/cups-lpd.xinetd
%subpackage
#
-# End of "$Id: cups.list.in 10439 2012-04-23 23:49:19Z mike $".
+# End of "$Id: cups.list.in 10456 2012-05-07 22:41:42Z mike $".
#
diff --git a/packaging/cups.spec b/packaging/cups.spec
index 8e37f5ad..018a8709 100644
--- a/packaging/cups.spec
+++ b/packaging/cups.spec
@@ -1,5 +1,5 @@
#
-# "$Id: cups.spec.in 10428 2012-04-23 17:46:53Z mike $"
+# "$Id: cups.spec.in 10534 2012-06-22 02:50:27Z mike $"
#
# RPM "spec" file for CUPS.
#
@@ -18,34 +18,29 @@
# Conditional build options (--with name/--without name):
#
# dbus - Enable/disable DBUS support (default = enable)
-# dnssd - Enable/disable DNS-SD support (default = disable)
-# php - Enable/disable PHP support (default = enable)
+# dnssd - Enable/disable DNS-SD support (default = enable)
# static - Enable/disable static libraries (default = enable)
%{!?_with_dbus: %{!?_without_dbus: %define _with_dbus --with-dbus}}
%{?_with_dbus: %define _dbus --enable-dbus}
%{!?_with_dbus: %define _dbus --disable-dbus}
-%{!?_with_dnssd: %{!?_without_dnssd: %define _with_dnssd --with-dnssd}}
+%{!?_with_dnssd: %{!?_without_dnssd: %define _without_dnssd --without-dnssd}}
%{?_with_dnssd: %define _dnssd --enable-dnssd}
%{!?_with_dnssd: %define _dnssd --disable-dnssd}
-%{!?_with_php: %{!?_without_php: %define _with_php --with-php}}
-%{?_with_php: %define _php --with-php}
-%{!?_with_php: %define _php --without-php}
-
%{!?_with_static: %{!?_without_static: %define _without_static --without-static}}
%{?_with_static: %define _static --enable-static}
%{!?_with_static: %define _static --disable-static}
Summary: CUPS
Name: cups
-Version: 1.5.4
+Version: 1.6.0
Release: 1
Epoch: 1
License: GPL
Group: System Environment/Daemons
-Source: http://ftp.easysw.com/pub/cups/1.5.4/cups-1.5.4-source.tar.bz2
+Source: http://ftp.easysw.com/pub/cups/1.6.0/cups-1.6.0-source.tar.bz2
Url: http://www.cups.org
Packager: Anonymous <anonymous@foo.com>
Vendor: Apple Inc.
@@ -76,13 +71,6 @@ Summary: CUPS - LPD support
Group: System Environment/Daemons
Requires: %{name} = %{epoch}:%{version} xinetd
-%if %{?_with_php:1}%{!?_with_php:0}
-%package php
-Summary: CUPS - PHP support
-Group: Development/Languages
-Requires: %{name}-libs = %{epoch}:%{version}
-%endif
-
%description
CUPS is the standards-based, open source printing system developed by
Apple Inc. for OS X and other UNIX®-like operating systems.
@@ -96,17 +84,12 @@ This package provides the CUPS shared libraries.
%description lpd
This package provides LPD client support.
-%if %{?_with_php:1}%{!?_with_php:0}
-%description php
-This package provides PHP support for CUPS.
-%endif
-
%prep
%setup
%build
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_OPT_FLAGS" \
- ./configure %{_dbus} %{_dnssd} %{_php} %{_static}
+ ./configure %{_dbus} %{_dnssd} %{_static}
# If we got this far, all prerequisite libraries must be here.
make
@@ -203,8 +186,6 @@ rm -rf $RPM_BUILD_ROOT
%attr(0700,root,root) /usr/lib/cups/backend/ipp
/usr/lib/cups/backend/ipps
%attr(0700,root,root) /usr/lib/cups/backend/lpd
-/usr/lib/cups/backend/parallel
-/usr/lib/cups/backend/serial
/usr/lib/cups/backend/snmp
/usr/lib/cups/backend/socket
/usr/lib/cups/backend/usb
@@ -214,7 +195,6 @@ rm -rf $RPM_BUILD_ROOT
/usr/lib/cups/daemon/cups-deviced
/usr/lib/cups/daemon/cups-driverd
/usr/lib/cups/daemon/cups-exec
-/usr/lib/cups/daemon/cups-polld
%dir /usr/lib/cups/driver
%dir /usr/lib/cups/filter
/usr/lib/cups/filter/*
@@ -227,14 +207,10 @@ rm -rf $RPM_BUILD_ROOT
%dir /usr/share/cups
%dir /usr/share/cups/banners
/usr/share/cups/banners/*
-%dir /usr/share/cups/charsets
-/usr/share/cups/charsets/*
%dir /usr/share/cups/data
/usr/share/cups/data/*
%dir /usr/share/cups/drv
/usr/share/cups/drv/*
-%dir /usr/share/cups/fonts
-/usr/share/cups/fonts/*
%dir /usr/share/cups/ipptool
/usr/share/cups/ipptool/*
%dir /usr/share/cups/mime
@@ -246,26 +222,6 @@ rm -rf $RPM_BUILD_ROOT
/usr/share/cups/templates/*
%dir /usr/share/doc/cups
/usr/share/doc/cups/*.*
-%dir /usr/share/doc/cups/de
-/usr/share/doc/cups/de/*
-%dir /usr/share/doc/cups/es
-/usr/share/doc/cups/es/*
-%dir /usr/share/doc/cups/eu
-/usr/share/doc/cups/eu/*
-%dir /usr/share/doc/cups/fr
-/usr/share/doc/cups/fr/*
-%dir /usr/share/doc/cups/hu
-/usr/share/doc/cups/hu/*
-%dir /usr/share/doc/cups/id
-/usr/share/doc/cups/id/*
-%dir /usr/share/doc/cups/it
-/usr/share/doc/cups/it/*
-%dir /usr/share/doc/cups/ja
-/usr/share/doc/cups/ja/*
-%dir /usr/share/doc/cups/pl
-/usr/share/doc/cups/pl/*
-%dir /usr/share/doc/cups/ru
-/usr/share/doc/cups/ru/*
%dir /usr/share/doc/cups/help
/usr/share/doc/cups/help/accounting.html
/usr/share/doc/cups/help/cgi.html
@@ -285,7 +241,12 @@ rm -rf $RPM_BUILD_ROOT
/usr/share/doc/cups/help/whatsnew.html
%dir /usr/share/doc/cups/images
/usr/share/doc/cups/images/*
-/usr/share/locale/*
+
+%dir /usr/share/doc/cups/ja
+/usr/share/doc/cups/ja/*
+
+%dir /usr/share/locale/ja
+/usr/share/locale/ja/cups_ja.po
%dir /usr/share/man/man1
/usr/share/man/man1/cancel.1.gz
@@ -315,7 +276,7 @@ rm -rf $RPM_BUILD_ROOT
/usr/share/man/man8/cupsreject.8.gz
/usr/share/man/man8/cups-deviced.8.gz
/usr/share/man/man8/cups-driverd.8.gz
-/usr/share/man/man8/cups-polld.8.gz
+/usr/share/man/man8/cups-snmp.8.gz
/usr/share/man/man8/lpadmin.8.gz
/usr/share/man/man8/lpc.8.gz
/usr/share/man/man8/lpinfo.8.gz
@@ -377,13 +338,7 @@ rm -rf $RPM_BUILD_ROOT
%dir /usr/share/man/man8
/usr/share/man/man8/cups-lpd.8.gz
-%if %{?_with_php:1}%{!?_with_php:0}
-%files php
-# PHP
-/usr/lib*/php*
-%endif
-
#
-# End of "$Id: cups.spec.in 10428 2012-04-23 17:46:53Z mike $".
+# End of "$Id: cups.spec.in 10534 2012-06-22 02:50:27Z mike $".
#
diff --git a/packaging/cups.spec.in b/packaging/cups.spec.in
index 004258a1..a17c5161 100644
--- a/packaging/cups.spec.in
+++ b/packaging/cups.spec.in
@@ -1,5 +1,5 @@
#
-# "$Id: cups.spec.in 10428 2012-04-23 17:46:53Z mike $"
+# "$Id: cups.spec.in 10534 2012-06-22 02:50:27Z mike $"
#
# RPM "spec" file for CUPS.
#
@@ -18,22 +18,17 @@
# Conditional build options (--with name/--without name):
#
# dbus - Enable/disable DBUS support (default = enable)
-# dnssd - Enable/disable DNS-SD support (default = disable)
-# php - Enable/disable PHP support (default = enable)
+# dnssd - Enable/disable DNS-SD support (default = enable)
# static - Enable/disable static libraries (default = enable)
%{!?_with_dbus: %{!?_without_dbus: %define _with_dbus --with-dbus}}
%{?_with_dbus: %define _dbus --enable-dbus}
%{!?_with_dbus: %define _dbus --disable-dbus}
-%{!?_with_dnssd: %{!?_without_dnssd: %define _with_dnssd --with-dnssd}}
+%{!?_with_dnssd: %{!?_without_dnssd: %define _without_dnssd --without-dnssd}}
%{?_with_dnssd: %define _dnssd --enable-dnssd}
%{!?_with_dnssd: %define _dnssd --disable-dnssd}
-%{!?_with_php: %{!?_without_php: %define _with_php --with-php}}
-%{?_with_php: %define _php --with-php}
-%{!?_with_php: %define _php --without-php}
-
%{!?_with_static: %{!?_without_static: %define _without_static --without-static}}
%{?_with_static: %define _static --enable-static}
%{!?_with_static: %define _static --disable-static}
@@ -76,13 +71,6 @@ Summary: CUPS - LPD support
Group: System Environment/Daemons
Requires: %{name} = %{epoch}:%{version} xinetd
-%if %{?_with_php:1}%{!?_with_php:0}
-%package php
-Summary: CUPS - PHP support
-Group: Development/Languages
-Requires: %{name}-libs = %{epoch}:%{version}
-%endif
-
%description
CUPS is the standards-based, open source printing system developed by
Apple Inc. for OS X and other UNIX®-like operating systems.
@@ -96,17 +84,12 @@ This package provides the CUPS shared libraries.
%description lpd
This package provides LPD client support.
-%if %{?_with_php:1}%{!?_with_php:0}
-%description php
-This package provides PHP support for CUPS.
-%endif
-
%prep
%setup
%build
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_OPT_FLAGS" \
- ./configure %{_dbus} %{_dnssd} %{_php} %{_static}
+ ./configure %{_dbus} %{_dnssd} %{_static}
# If we got this far, all prerequisite libraries must be here.
make
@@ -203,8 +186,6 @@ rm -rf $RPM_BUILD_ROOT
%attr(0700,root,root) /usr/lib/cups/backend/ipp
/usr/lib/cups/backend/ipps
%attr(0700,root,root) /usr/lib/cups/backend/lpd
-/usr/lib/cups/backend/parallel
-/usr/lib/cups/backend/serial
/usr/lib/cups/backend/snmp
/usr/lib/cups/backend/socket
/usr/lib/cups/backend/usb
@@ -214,7 +195,6 @@ rm -rf $RPM_BUILD_ROOT
/usr/lib/cups/daemon/cups-deviced
/usr/lib/cups/daemon/cups-driverd
/usr/lib/cups/daemon/cups-exec
-/usr/lib/cups/daemon/cups-polld
%dir /usr/lib/cups/driver
%dir /usr/lib/cups/filter
/usr/lib/cups/filter/*
@@ -227,14 +207,10 @@ rm -rf $RPM_BUILD_ROOT
%dir /usr/share/cups
%dir /usr/share/cups/banners
/usr/share/cups/banners/*
-%dir /usr/share/cups/charsets
-/usr/share/cups/charsets/*
%dir /usr/share/cups/data
/usr/share/cups/data/*
%dir /usr/share/cups/drv
/usr/share/cups/drv/*
-%dir /usr/share/cups/fonts
-/usr/share/cups/fonts/*
%dir /usr/share/cups/ipptool
/usr/share/cups/ipptool/*
%dir /usr/share/cups/mime
@@ -246,26 +222,6 @@ rm -rf $RPM_BUILD_ROOT
/usr/share/cups/templates/*
%dir /usr/share/doc/cups
/usr/share/doc/cups/*.*
-%dir /usr/share/doc/cups/de
-/usr/share/doc/cups/de/*
-%dir /usr/share/doc/cups/es
-/usr/share/doc/cups/es/*
-%dir /usr/share/doc/cups/eu
-/usr/share/doc/cups/eu/*
-%dir /usr/share/doc/cups/fr
-/usr/share/doc/cups/fr/*
-%dir /usr/share/doc/cups/hu
-/usr/share/doc/cups/hu/*
-%dir /usr/share/doc/cups/id
-/usr/share/doc/cups/id/*
-%dir /usr/share/doc/cups/it
-/usr/share/doc/cups/it/*
-%dir /usr/share/doc/cups/ja
-/usr/share/doc/cups/ja/*
-%dir /usr/share/doc/cups/pl
-/usr/share/doc/cups/pl/*
-%dir /usr/share/doc/cups/ru
-/usr/share/doc/cups/ru/*
%dir /usr/share/doc/cups/help
/usr/share/doc/cups/help/accounting.html
/usr/share/doc/cups/help/cgi.html
@@ -285,7 +241,12 @@ rm -rf $RPM_BUILD_ROOT
/usr/share/doc/cups/help/whatsnew.html
%dir /usr/share/doc/cups/images
/usr/share/doc/cups/images/*
-/usr/share/locale/*
+
+%dir /usr/share/doc/cups/ja
+/usr/share/doc/cups/ja/*
+
+%dir /usr/share/locale/ja
+/usr/share/locale/ja/cups_ja.po
%dir /usr/share/man/man1
/usr/share/man/man1/cancel.1.gz
@@ -315,7 +276,7 @@ rm -rf $RPM_BUILD_ROOT
/usr/share/man/man8/cupsreject.8.gz
/usr/share/man/man8/cups-deviced.8.gz
/usr/share/man/man8/cups-driverd.8.gz
-/usr/share/man/man8/cups-polld.8.gz
+/usr/share/man/man8/cups-snmp.8.gz
/usr/share/man/man8/lpadmin.8.gz
/usr/share/man/man8/lpc.8.gz
/usr/share/man/man8/lpinfo.8.gz
@@ -377,13 +338,7 @@ rm -rf $RPM_BUILD_ROOT
%dir /usr/share/man/man8
/usr/share/man/man8/cups-lpd.8.gz
-%if %{?_with_php:1}%{!?_with_php:0}
-%files php
-# PHP
-/usr/lib*/php*
-%endif
-
#
-# End of "$Id: cups.spec.in 10428 2012-04-23 17:46:53Z mike $".
+# End of "$Id: cups.spec.in 10534 2012-06-22 02:50:27Z mike $".
#
diff --git a/ppdc/Dependencies b/ppdc/Dependencies
index 72feab0d..bcabc319 100644
--- a/ppdc/Dependencies
+++ b/ppdc/Dependencies
@@ -1,253 +1,184 @@
-# DO NOT DELETE
-
-ppdc-array.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-array.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-array.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-ppdc-array.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-ppdc-array.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-ppdc-array.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-ppdc-array.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-ppdc-array.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-ppdc-array.o: ../cups/thread-private.h
-ppdc-attr.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-attr.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-attr.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-ppdc-attr.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-ppdc-attr.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-ppdc-attr.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-ppdc-attr.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-ppdc-attr.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-ppdc-attr.o: ../cups/thread-private.h
-ppdc-catalog.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-catalog.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-catalog.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-catalog.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-catalog.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-catalog.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-catalog.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-catalog.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-catalog.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-catalog.o: ../cups/thread-private.h
-ppdc-choice.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-choice.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-choice.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-choice.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-choice.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-choice.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-choice.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-choice.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-choice.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-choice.o: ../cups/thread-private.h
-ppdc-constraint.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-constraint.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-constraint.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-constraint.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-constraint.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-constraint.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-constraint.o: ../cups/pwg-private.h ../cups/http-private.h
-ppdc-constraint.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-ppdc-constraint.o: ../cups/ipp.h ../cups/language-private.h
-ppdc-constraint.o: ../cups/transcode.h ../cups/thread-private.h
-ppdc-driver.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-driver.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-driver.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-driver.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-driver.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-driver.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-driver.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-driver.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-driver.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-driver.o: ../cups/thread-private.h
-ppdc-file.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-file.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-file.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-ppdc-file.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-ppdc-file.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-ppdc-file.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-ppdc-file.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-ppdc-file.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-ppdc-file.o: ../cups/thread-private.h
-ppdc-filter.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-filter.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-filter.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-filter.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-filter.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-filter.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-filter.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-filter.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-filter.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-filter.o: ../cups/thread-private.h
-ppdc-font.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-font.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-font.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-ppdc-font.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-ppdc-font.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-ppdc-font.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-ppdc-font.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-ppdc-font.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-ppdc-font.o: ../cups/thread-private.h
-ppdc-group.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-group.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-group.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-ppdc-group.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-ppdc-group.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-ppdc-group.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-ppdc-group.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-ppdc-group.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-ppdc-group.o: ../cups/thread-private.h
-ppdc-import.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-import.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-import.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-import.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-import.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-import.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-import.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-import.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-import.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-import.o: ../cups/thread-private.h
-ppdc-mediasize.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-mediasize.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-mediasize.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-mediasize.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-mediasize.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-mediasize.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-mediasize.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-mediasize.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-mediasize.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-mediasize.o: ../cups/thread-private.h
-ppdc-message.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-message.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-message.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-message.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-message.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-message.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-message.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-message.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-message.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-message.o: ../cups/thread-private.h
-ppdc-option.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-option.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-option.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-option.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-option.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-option.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-option.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-option.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-option.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-option.o: ../cups/thread-private.h
-ppdc-profile.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-profile.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-profile.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-profile.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-profile.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-profile.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-profile.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-profile.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-profile.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-profile.o: ../cups/thread-private.h
-ppdc-shared.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-shared.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-shared.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-shared.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-shared.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-shared.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-shared.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-shared.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-shared.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-shared.o: ../cups/thread-private.h
-ppdc-source.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-source.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-source.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-source.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-source.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-source.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-source.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-source.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-source.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-source.o: ../cups/thread-private.h ../cups/raster.h ../cups/ppd.h
-ppdc-source.o: ../data/epson.h ../data/escp.h ../data/hp.h ../data/label.h
-ppdc-source.o: ../data/pcl.h
-ppdc-string.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-string.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-string.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-string.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-string.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-string.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-string.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-string.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-string.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-string.o: ../cups/thread-private.h
-ppdc-variable.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc-variable.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdc-variable.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-ppdc-variable.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdc-variable.o: ../cups/debug-private.h ../cups/versioning.h
-ppdc-variable.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdc-variable.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdc-variable.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdc-variable.o: ../cups/language-private.h ../cups/transcode.h
-ppdc-variable.o: ../cups/thread-private.h
-genstrings.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-genstrings.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-genstrings.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-genstrings.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-genstrings.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-genstrings.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-genstrings.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-genstrings.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-genstrings.o: ../cups/thread-private.h
-ppdc.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdc.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h ../cups/ipp.h
-ppdc.o: ../cups/http.h ../cups/array.h ../cups/language.h
-ppdc.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-ppdc.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-ppdc.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-ppdc.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-ppdc.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-ppdc.o: ../cups/thread-private.h
-ppdhtml.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdhtml.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h ../cups/ipp.h
-ppdhtml.o: ../cups/http.h ../cups/array.h ../cups/language.h
-ppdhtml.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-ppdhtml.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-ppdhtml.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-ppdhtml.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-ppdhtml.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-ppdhtml.o: ../cups/thread-private.h
-ppdi.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdi.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h ../cups/ipp.h
-ppdi.o: ../cups/http.h ../cups/array.h ../cups/language.h
-ppdi.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-ppdi.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-ppdi.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-ppdi.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-ppdi.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-ppdi.o: ../cups/thread-private.h
-ppdmerge.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ppdmerge.o: ../cups/ipp.h ../cups/http.h ../cups/versioning.h ../cups/array.h
-ppdmerge.o: ../cups/language.h ../cups/string-private.h ../config.h
-ppdmerge.o: ../cups/debug-private.h ../cups/versioning.h
-ppdmerge.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ppdmerge.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ppdmerge.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ppdmerge.o: ../cups/language-private.h ../cups/transcode.h
-ppdmerge.o: ../cups/thread-private.h ../cups/ppd-private.h ../cups/array.h
-ppdpo.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-ppdpo.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h ../cups/ipp.h
-ppdpo.o: ../cups/http.h ../cups/array.h ../cups/language.h
-ppdpo.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-ppdpo.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-ppdpo.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-ppdpo.o: ../cups/http.h ../cups/md5-private.h ../cups/ipp-private.h
-ppdpo.o: ../cups/ipp.h ../cups/language-private.h ../cups/transcode.h
-ppdpo.o: ../cups/thread-private.h
-testcatalog.o: ppdc-private.h ppdc.h ../cups/file.h ../cups/versioning.h
-testcatalog.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-testcatalog.o: ../cups/ipp.h ../cups/http.h ../cups/array.h
-testcatalog.o: ../cups/language.h ../cups/string-private.h ../config.h
-testcatalog.o: ../cups/debug-private.h ../cups/versioning.h
-testcatalog.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-testcatalog.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-testcatalog.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-testcatalog.o: ../cups/language-private.h ../cups/transcode.h
-testcatalog.o: ../cups/thread-private.h
+ppdc-array.o: ppdc-array.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-attr.o: ppdc-attr.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-catalog.o: ppdc-catalog.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-choice.o: ppdc-choice.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-constraint.o: ppdc-constraint.cxx ppdc-private.h ppdc.h \
+ ../cups/file.h ../cups/versioning.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/ppd-private.h \
+ ../cups/ppd.h ../cups/thread-private.h
+ppdc-driver.o: ppdc-driver.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-file.o: ppdc-file.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-filter.o: ppdc-filter.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-font.o: ppdc-font.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-group.o: ppdc-group.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-import.o: ppdc-import.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-mediasize.o: ppdc-mediasize.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-message.o: ppdc-message.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-option.o: ppdc-option.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-profile.o: ppdc-profile.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-shared.o: ppdc-shared.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-source.o: ppdc-source.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/raster.h ../data/epson.h ../data/hp.h ../data/label.h
+ppdc-string.o: ppdc-string.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc-variable.o: ppdc-variable.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+genstrings.o: genstrings.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdc.o: ppdc.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdhtml.o: ppdhtml.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdi.o: ppdi.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdmerge.o: ppdmerge.cxx ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ppdpo.o: ppdpo.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+testcatalog.o: testcatalog.cxx ppdc-private.h ppdc.h ../cups/file.h \
+ ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
diff --git a/ppdc/Makefile b/ppdc/Makefile
index 91c05c36..1c1ce2aa 100644
--- a/ppdc/Makefile
+++ b/ppdc/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 9422 2011-01-06 22:20:15Z mike $"
+# "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $"
#
# Makefile for the CUPS PPD Compiler.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 2002-2006 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
@@ -112,7 +112,7 @@ clean:
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.cxx) >/dev/null 2>&1
+ $(CXX) -MM $(ALL_CXXFLAGS) $(OBJS:.o=.cxx) >Dependencies
#
@@ -400,5 +400,5 @@ include Dependencies
#
-# End of "$Id: Makefile 9422 2011-01-06 22:20:15Z mike $".
+# End of "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $".
#
diff --git a/ppdc/ppdc-catalog.cxx b/ppdc/ppdc-catalog.cxx
index bbadc5d1..5059ce52 100644
--- a/ppdc/ppdc-catalog.cxx
+++ b/ppdc/ppdc-catalog.cxx
@@ -1,9 +1,9 @@
//
-// "$Id: ppdc-catalog.cxx 9384 2010-11-22 07:06:39Z mike $"
+// "$Id: ppdc-catalog.cxx 10424 2012-04-23 17:26:57Z mike $"
//
// Shared message catalog class for the CUPS PPD Compiler.
//
-// Copyright 2007-2010 by Apple Inc.
+// Copyright 2007-2012 by Apple Inc.
// Copyright 2002-2006 by Easy Software Products.
//
// These coded instructions, statements, and computer programs are the
@@ -206,8 +206,8 @@ ppdcCatalog::load_messages(
else if (!strcmp(ptr, ".strings"))
{
/*
- * Read messages in Mac OS X ".strings" format, which are UTF-16 text
- * files of the format:
+ * Read messages in OS X ".strings" format, which are UTF-16 text files of
+ * the format:
*
* "id" = "str";
*
@@ -318,7 +318,7 @@ ppdcCatalog::load_messages(
int which, // In msgid?
haveid, // Did we get a msgid string?
havestr; // Did we get a msgstr string?
-
+
linenum = 0;
id[0] = '\0';
str[0] = '\0';
@@ -893,5 +893,5 @@ put_utf16(cups_file_t *fp, // I - File to write to
//
-// End of "$Id: ppdc-catalog.cxx 9384 2010-11-22 07:06:39Z mike $".
+// End of "$Id: ppdc-catalog.cxx 10424 2012-04-23 17:26:57Z mike $".
//
diff --git a/ppdc/ppdc-file.cxx b/ppdc/ppdc-file.cxx
index 0e373f9e..af47b8e7 100644
--- a/ppdc/ppdc-file.cxx
+++ b/ppdc/ppdc-file.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: ppdc-file.cxx 10338 2012-03-07 06:05:39Z mike $"
+// "$Id: ppdc-file.cxx 10335 2012-03-07 05:58:19Z mike $"
//
// File class for the CUPS PPD Compiler.
//
@@ -106,5 +106,5 @@ ppdcFile::peek()
//
-// End of "$Id: ppdc-file.cxx 10338 2012-03-07 06:05:39Z mike $".
+// End of "$Id: ppdc-file.cxx 10335 2012-03-07 05:58:19Z mike $".
//
diff --git a/ppdc/ppdc-source.cxx b/ppdc/ppdc-source.cxx
index 17aadabf..91e823c8 100644
--- a/ppdc/ppdc-source.cxx
+++ b/ppdc/ppdc-source.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: ppdc-source.cxx 10379 2012-03-23 22:16:22Z mike $"
+// "$Id: ppdc-source.cxx 10378 2012-03-23 21:38:25Z mike $"
//
// Source class for the CUPS PPD Compiler.
//
@@ -66,10 +66,8 @@
#include <unistd.h>
#include <cups/raster.h>
#include "data/epson.h"
-#include "data/escp.h"
#include "data/hp.h"
#include "data/label.h"
-#include "data/pcl.h"
#ifndef WIN32
# include <sys/utsname.h>
#endif // !WIN32
@@ -3552,64 +3550,6 @@ ppdcSource::write_file(const char *f) // I - File to write
{
switch (d->type)
{
- case PPDC_DRIVER_ESCP :
- cupsFilePuts(fp, " ModelNumber (");
-
- if (d->model_number & ESCP_DOTMATRIX)
- cupsFilePuts(fp, " $ESCP_DOTMATRIX");
- if (d->model_number & ESCP_MICROWEAVE)
- cupsFilePuts(fp, " $ESCP_MICROWEAVE");
- if (d->model_number & ESCP_STAGGER)
- cupsFilePuts(fp, " $ESCP_STAGGER");
- if (d->model_number & ESCP_ESCK)
- cupsFilePuts(fp, " $ESCP_ESCK");
- if (d->model_number & ESCP_EXT_UNITS)
- cupsFilePuts(fp, " $ESCP_EXT_UNITS");
- if (d->model_number & ESCP_EXT_MARGINS)
- cupsFilePuts(fp, " $ESCP_EXT_MARGINS");
- if (d->model_number & ESCP_USB)
- cupsFilePuts(fp, " $ESCP_USB");
- if (d->model_number & ESCP_PAGE_SIZE)
- cupsFilePuts(fp, " $ESCP_PAGE_SIZE");
- if (d->model_number & ESCP_RASTER_ESCI)
- cupsFilePuts(fp, " $ESCP_RASTER_ESCI");
- if (d->model_number & ESCP_REMOTE)
- cupsFilePuts(fp, " $ESCP_REMOTE");
-
- cupsFilePuts(fp, ")\n");
- break;
-
- case PPDC_DRIVER_PCL :
- cupsFilePuts(fp, " ModelNumber (");
-
- if (d->model_number & PCL_PAPER_SIZE)
- cupsFilePuts(fp, " $PCL_PAPER_SIZE");
- if (d->model_number & PCL_INKJET)
- cupsFilePuts(fp, " $PCL_INKJET");
- if (d->model_number & PCL_RASTER_END_COLOR)
- cupsFilePuts(fp, " $PCL_RASTER_END_COLOR");
- if (d->model_number & PCL_RASTER_CID)
- cupsFilePuts(fp, " $PCL_RASTER_CID");
- if (d->model_number & PCL_RASTER_CRD)
- cupsFilePuts(fp, " $PCL_RASTER_CRD");
- if (d->model_number & PCL_RASTER_SIMPLE)
- cupsFilePuts(fp, " $PCL_RASTER_SIMPLE");
- if (d->model_number & PCL_RASTER_RGB24)
- cupsFilePuts(fp, " $PCL_RASTER_RGB24");
- if (d->model_number & PCL_PJL)
- cupsFilePuts(fp, " $PCL_PJL");
- if (d->model_number & PCL_PJL_PAPERWIDTH)
- cupsFilePuts(fp, " $PCL_PJL_PAPERWIDTH");
- if (d->model_number & PCL_PJL_HPGL2)
- cupsFilePuts(fp, " $PCL_PJL_HPGL2");
- if (d->model_number & PCL_PJL_PCL3GUI)
- cupsFilePuts(fp, " $PCL_PJL_PCL3GUI");
- if (d->model_number & PCL_PJL_RESOLUTION)
- cupsFilePuts(fp, " $PCL_PJL_RESOLUTION");
-
- cupsFilePuts(fp, ")\n");
- break;
-
case PPDC_DRIVER_LABEL :
cupsFilePuts(fp, " ModelNumber ");
@@ -3907,5 +3847,5 @@ ppdcSource::write_file(const char *f) // I - File to write
//
-// End of "$Id: ppdc-source.cxx 10379 2012-03-23 22:16:22Z mike $".
+// End of "$Id: ppdc-source.cxx 10378 2012-03-23 21:38:25Z mike $".
//
diff --git a/ppdc/ppdc.cxx b/ppdc/ppdc.cxx
index da643f87..7cff4cad 100644
--- a/ppdc/ppdc.cxx
+++ b/ppdc/ppdc.cxx
@@ -1,9 +1,9 @@
//
-// "$Id: ppdc.cxx 9793 2011-05-20 03:49:49Z mike $"
+// "$Id: ppdc.cxx 10431 2012-04-23 19:19:19Z mike $"
//
// PPD file compiler main entry for the CUPS PPD Compiler.
//
-// Copyright 2007-2011 by Apple Inc.
+// Copyright 2007-2012 by Apple Inc.
// Copyright 2002-2007 by Easy Software Products.
//
// These coded instructions, statements, and computer programs are the
@@ -449,8 +449,7 @@ usage(void)
"as the filename."));
_cupsLangPuts(stdout, _(" -t Test PPDs instead of "
"generating them."));
- _cupsLangPuts(stdout, _(" -v Be verbose (more v's for "
- "more verbosity)."));
+ _cupsLangPuts(stdout, _(" -v Be verbose."));
_cupsLangPuts(stdout, _(" -z Compress PPD files using "
"GNU zip."));
_cupsLangPuts(stdout, _(" --cr End lines with CR (Mac "
@@ -458,12 +457,12 @@ usage(void)
_cupsLangPuts(stdout, _(" --crlf End lines with CR + LF "
"(Windows)."));
_cupsLangPuts(stdout, _(" --lf End lines with LF "
- "(UNIX/Linux/Mac OS X)."));
+ "(UNIX/Linux/OS X)."));
exit(1);
}
//
-// End of "$Id: ppdc.cxx 9793 2011-05-20 03:49:49Z mike $".
+// End of "$Id: ppdc.cxx 10431 2012-04-23 19:19:19Z mike $".
//
diff --git a/ppdc/ppdc.h b/ppdc/ppdc.h
index 121274a7..a87b8625 100644
--- a/ppdc/ppdc.h
+++ b/ppdc/ppdc.h
@@ -1,5 +1,5 @@
//
-// "$Id: ppdc.h 10338 2012-03-07 06:05:39Z mike $"
+// "$Id: ppdc.h 10335 2012-03-07 05:58:19Z mike $"
//
// Definitions for the CUPS PPD Compiler.
//
@@ -529,5 +529,5 @@ class ppdcSource //// Source File
#endif // !_PPDC_H_
//
-// End of "$Id: ppdc.h 10338 2012-03-07 06:05:39Z mike $".
+// End of "$Id: ppdc.h 10335 2012-03-07 05:58:19Z mike $".
//
diff --git a/ppdc/ppdpo.cxx b/ppdc/ppdpo.cxx
index 9c922521..85761548 100644
--- a/ppdc/ppdpo.cxx
+++ b/ppdc/ppdpo.cxx
@@ -1,9 +1,9 @@
//
-// "$Id: ppdpo.cxx 9793 2011-05-20 03:49:49Z mike $"
+// "$Id: ppdpo.cxx 10431 2012-04-23 19:19:19Z mike $"
//
// PPD file message catalog program for the CUPS PPD Compiler.
//
-// Copyright 2007-2011 by Apple Inc.
+// Copyright 2007-2012 by Apple Inc.
// Copyright 2002-2005 by Easy Software Products.
//
// These coded instructions, statements, and computer programs are the
@@ -256,13 +256,12 @@ usage(void)
"value."));
_cupsLangPuts(stdout, _(" -I include-dir Add include directory to "
"search path."));
- _cupsLangPuts(stdout, _(" -v Be verbose (more v's for "
- "more verbosity)."));
+ _cupsLangPuts(stdout, _(" -v Be verbose."));
exit(1);
}
//
-// End of "$Id: ppdpo.cxx 9793 2011-05-20 03:49:49Z mike $".
+// End of "$Id: ppdpo.cxx 10431 2012-04-23 19:19:19Z mike $".
//
diff --git a/ppdc/sample.drv b/ppdc/sample.drv
index 010ccb24..dc30255a 100644
--- a/ppdc/sample.drv
+++ b/ppdc/sample.drv
@@ -1,5 +1,5 @@
//
-// "$Id: sample.drv 9588 2011-03-07 16:53:16Z mike $"
+// "$Id: sample.drv 10431 2012-04-23 19:19:19Z mike $"
//
// Driver info file for CUPS-supplied PPDs.
//
@@ -44,15 +44,6 @@
//#po zh_TW ""
// MediaSize sizes used by label drivers...
-#media "w81h252/Address - 1 1/8 x 3 1/2\"" 81 252
-#media "w101h252/Large Address - 1 4/10 x 3 1/2\"" 101 252
-#media "w54h144/Return Address - 3/4 x 2\"" 54 144
-#media "w167h288/Shipping Address - 2 5/16 x 4\"" 167 288
-#media "w162h540/Internet Postage 2-Part - 2 1/4 x 7 1/2\"" 162 540
-#media "w162h504/Internet Postage 3-Part - 2 1/4 x 7\"" 162 504
-#media "w41h248/File Folder - 9/16 x 3 7/16\"" 41 248
-#media "w41h144/Hanging Folder - 9/16 x 2\"" 41 144
-#media "w153h198/3.5\" Disk - 2 1/8 x 2 3/4\"" 153 198
#media "w90h18/1.25x0.25\"" 90 18
#media "w90h162/1.25x2.25\"" 90 162
#media "w108h18/1.50x0.25\"" 108 18
@@ -112,12 +103,12 @@
#media "w576h468/8.00x6.50\"" 576 468
// Common stuff for all drivers...
-Attribute "cupsVersion" "" "1.5"
+Attribute "cupsVersion" "" "1.6"
Attribute "FileSystem" "" "False"
Attribute "LandscapeOrientation" "" "Plus90"
Attribute "TTRasterizer" "" "Type42"
-Copyright "Copyright 2007-2011 by Apple Inc."
+Copyright "Copyright 2007-2012 by Apple Inc."
Copyright "Copyright 1997-2007 by Easy Software Products."
Copyright ""
Copyright "These coded instructions, statements, and computer programs are the"
@@ -1250,5 +1241,5 @@ Version "1.5"
}
//
-// End of "$Id: sample.drv 9588 2011-03-07 16:53:16Z mike $".
+// End of "$Id: sample.drv 10431 2012-04-23 19:19:19Z mike $".
//
diff --git a/scheduler/Dependencies b/scheduler/Dependencies
index 5be01ff1..20356462 100644
--- a/scheduler/Dependencies
+++ b/scheduler/Dependencies
@@ -1,361 +1,329 @@
-# DO NOT DELETE
-
-auth.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-auth.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-auth.o: ../cups/language.h ../cups/string-private.h ../config.h
-auth.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-auth.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-auth.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-auth.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-auth.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-auth.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h sysman.h
-auth.o: statbuf.h cert.h auth.h client.h policy.h printers.h
-auth.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-auth.o: network.h subscriptions.h
-banners.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-banners.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-banners.o: ../cups/language.h ../cups/string-private.h ../config.h
-banners.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-banners.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-banners.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-banners.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-banners.o: ../cups/transcode.h ../cups/thread-private.h
-banners.o: ../cups/file-private.h ../cups/cups-private.h mime.h
-banners.o: ../cups/array.h ../cups/file.h sysman.h statbuf.h cert.h auth.h
-banners.o: client.h policy.h printers.h ../cups/pwg-private.h classes.h job.h
-banners.o: conf.h banners.h dirsvc.h network.h subscriptions.h ../cups/dir.h
-cert.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-cert.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-cert.o: ../cups/language.h ../cups/string-private.h ../config.h
-cert.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-cert.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-cert.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-cert.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-cert.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-cert.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h sysman.h
-cert.o: statbuf.h cert.h auth.h client.h policy.h printers.h
-cert.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-cert.o: network.h subscriptions.h
-classes.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-classes.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-classes.o: ../cups/language.h ../cups/string-private.h ../config.h
-classes.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-classes.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-classes.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-classes.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-classes.o: ../cups/transcode.h ../cups/thread-private.h
-classes.o: ../cups/file-private.h ../cups/cups-private.h mime.h
-classes.o: ../cups/array.h ../cups/file.h sysman.h statbuf.h cert.h auth.h
-classes.o: client.h policy.h printers.h ../cups/pwg-private.h classes.h job.h
-classes.o: conf.h banners.h dirsvc.h network.h subscriptions.h
-client.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-client.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-client.o: ../cups/language.h ../cups/string-private.h ../config.h
-client.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-client.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-client.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-client.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-client.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-client.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h
-client.o: sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h
-client.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-client.o: network.h subscriptions.h
-conf.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-conf.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-conf.o: ../cups/language.h ../cups/string-private.h ../config.h
-conf.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-conf.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-conf.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-conf.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-conf.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-conf.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h sysman.h
-conf.o: statbuf.h cert.h auth.h client.h policy.h printers.h
-conf.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-conf.o: network.h subscriptions.h
-dirsvc.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-dirsvc.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-dirsvc.o: ../cups/language.h ../cups/string-private.h ../config.h
-dirsvc.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-dirsvc.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-dirsvc.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-dirsvc.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-dirsvc.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-dirsvc.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h
-dirsvc.o: sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h
-dirsvc.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-dirsvc.o: network.h subscriptions.h
-env.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-env.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-env.o: ../cups/language.h ../cups/string-private.h ../config.h
-env.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-env.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-env.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-env.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-env.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-env.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h sysman.h
-env.o: statbuf.h cert.h auth.h client.h policy.h printers.h
-env.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-env.o: network.h subscriptions.h
-file.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-file.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-file.o: ../cups/language.h ../cups/string-private.h ../config.h
-file.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-file.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-file.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-file.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-file.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-file.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h sysman.h
-file.o: statbuf.h cert.h auth.h client.h policy.h printers.h
-file.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-file.o: network.h subscriptions.h ../cups/dir.h
-main.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-main.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-main.o: ../cups/language.h ../cups/string-private.h ../config.h
-main.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-main.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-main.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-main.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-main.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-main.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h sysman.h
-main.o: statbuf.h cert.h auth.h client.h policy.h printers.h
-main.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-main.o: network.h subscriptions.h
-ipp.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ipp.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-ipp.o: ../cups/language.h ../cups/string-private.h ../config.h
-ipp.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-ipp.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-ipp.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-ipp.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-ipp.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-ipp.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h sysman.h
-ipp.o: statbuf.h cert.h auth.h client.h policy.h printers.h
-ipp.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-ipp.o: network.h subscriptions.h ../cups/ppd-private.h
-listen.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-listen.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-listen.o: ../cups/language.h ../cups/string-private.h ../config.h
-listen.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-listen.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-listen.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-listen.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-listen.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-listen.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h
-listen.o: sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h
-listen.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-listen.o: network.h subscriptions.h
-job.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-job.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-job.o: ../cups/language.h ../cups/string-private.h ../config.h
-job.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-job.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-job.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-job.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-job.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-job.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h sysman.h
-job.o: statbuf.h cert.h auth.h client.h policy.h printers.h
-job.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-job.o: network.h subscriptions.h ../cups/backend.h ../cups/dir.h
-log.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-log.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-log.o: ../cups/language.h ../cups/string-private.h ../config.h
-log.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-log.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-log.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-log.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-log.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-log.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h sysman.h
-log.o: statbuf.h cert.h auth.h client.h policy.h printers.h
-log.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-log.o: network.h subscriptions.h
-network.o: ../cups/http-private.h ../config.h ../cups/http.h
-network.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h cupsd.h
-network.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-network.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-network.o: ../cups/language.h ../cups/string-private.h
-network.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-network.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-network.o: ../cups/http-private.h ../cups/language-private.h
-network.o: ../cups/transcode.h ../cups/thread-private.h
-network.o: ../cups/file-private.h ../cups/cups-private.h mime.h
-network.o: ../cups/array.h ../cups/file.h sysman.h statbuf.h cert.h auth.h
-network.o: client.h policy.h printers.h ../cups/pwg-private.h classes.h job.h
-network.o: conf.h banners.h dirsvc.h network.h subscriptions.h
-policy.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-policy.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-policy.o: ../cups/language.h ../cups/string-private.h ../config.h
-policy.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-policy.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-policy.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-policy.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-policy.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-policy.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h
-policy.o: sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h
-policy.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-policy.o: network.h subscriptions.h
-printers.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-printers.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-printers.o: ../cups/language.h ../cups/string-private.h ../config.h
-printers.o: ../cups/debug-private.h ../cups/versioning.h
-printers.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-printers.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-printers.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-printers.o: ../cups/language-private.h ../cups/transcode.h
-printers.o: ../cups/thread-private.h ../cups/file-private.h
-printers.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h
-printers.o: sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h
-printers.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-printers.o: network.h subscriptions.h ../cups/dir.h
-process.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-process.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-process.o: ../cups/language.h ../cups/string-private.h ../config.h
-process.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-process.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-process.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-process.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-process.o: ../cups/transcode.h ../cups/thread-private.h
-process.o: ../cups/file-private.h ../cups/cups-private.h mime.h
-process.o: ../cups/array.h ../cups/file.h sysman.h statbuf.h cert.h auth.h
-process.o: client.h policy.h printers.h ../cups/pwg-private.h classes.h job.h
-process.o: conf.h banners.h dirsvc.h network.h subscriptions.h
-quotas.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-quotas.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-quotas.o: ../cups/language.h ../cups/string-private.h ../config.h
-quotas.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-quotas.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-quotas.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-quotas.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-quotas.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-quotas.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h
-quotas.o: sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h
-quotas.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-quotas.o: network.h subscriptions.h
-select.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-select.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-select.o: ../cups/language.h ../cups/string-private.h ../config.h
-select.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-select.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-select.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-select.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-select.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-select.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h
-select.o: sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h
-select.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-select.o: network.h subscriptions.h
-server.o: ../cups/http-private.h ../config.h ../cups/http.h
-server.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h cupsd.h
-server.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-server.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-server.o: ../cups/language.h ../cups/string-private.h ../cups/debug-private.h
-server.o: ../cups/versioning.h ../cups/ppd-private.h ../cups/ppd.h
-server.o: ../cups/cups.h ../cups/pwg-private.h ../cups/http-private.h
-server.o: ../cups/language-private.h ../cups/transcode.h
-server.o: ../cups/thread-private.h ../cups/file-private.h
-server.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h
-server.o: sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h
-server.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-server.o: network.h subscriptions.h
-statbuf.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-statbuf.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-statbuf.o: ../cups/language.h ../cups/string-private.h ../config.h
-statbuf.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-statbuf.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-statbuf.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-statbuf.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-statbuf.o: ../cups/transcode.h ../cups/thread-private.h
-statbuf.o: ../cups/file-private.h ../cups/cups-private.h mime.h
-statbuf.o: ../cups/array.h ../cups/file.h sysman.h statbuf.h cert.h auth.h
-statbuf.o: client.h policy.h printers.h ../cups/pwg-private.h classes.h job.h
-statbuf.o: conf.h banners.h dirsvc.h network.h subscriptions.h
-subscriptions.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-subscriptions.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-subscriptions.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-subscriptions.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-subscriptions.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-subscriptions.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-subscriptions.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-subscriptions.o: ../cups/language-private.h ../cups/transcode.h
-subscriptions.o: ../cups/thread-private.h ../cups/file-private.h
-subscriptions.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h
-subscriptions.o: sysman.h statbuf.h cert.h auth.h client.h policy.h
-subscriptions.o: printers.h ../cups/pwg-private.h classes.h job.h conf.h
-subscriptions.o: banners.h dirsvc.h network.h subscriptions.h
-sysman.o: cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-sysman.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-sysman.o: ../cups/language.h ../cups/string-private.h ../config.h
-sysman.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-sysman.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-sysman.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-sysman.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-sysman.o: ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h
-sysman.o: ../cups/cups-private.h mime.h ../cups/array.h ../cups/file.h
-sysman.o: sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h
-sysman.o: ../cups/pwg-private.h classes.h job.h conf.h banners.h dirsvc.h
-sysman.o: network.h subscriptions.h
-filter.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-filter.o: ../cups/versioning.h mime.h ../cups/array.h ../cups/ipp.h
-filter.o: ../cups/file.h
-mime.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-mime.o: ../cups/versioning.h ../cups/dir.h ../cups/versioning.h
-mime.o: mime-private.h mime.h ../cups/array.h ../cups/ipp.h ../cups/file.h
-type.o: ../cups/string-private.h ../config.h ../cups/debug-private.h
-type.o: ../cups/versioning.h mime.h ../cups/array.h ../cups/ipp.h
-type.o: ../cups/file.h
-cupsfilter.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-cupsfilter.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-cupsfilter.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-cupsfilter.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-cupsfilter.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-cupsfilter.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-cupsfilter.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-cupsfilter.o: ../cups/language-private.h ../cups/transcode.h
-cupsfilter.o: ../cups/thread-private.h ../cups/file-private.h
-cupsfilter.o: ../cups/cups-private.h ../cups/ppd-private.h mime.h
-cupsfilter.o: ../cups/array.h ../cups/file.h
-cups-deviced.o: util.h ../cups/array-private.h ../cups/array.h
-cups-deviced.o: ../cups/file-private.h ../cups/cups-private.h ../cups/dir.h
-cups-deviced.o: ../cups/versioning.h
-cups-exec.o: ../cups/string-private.h ../config.h
-cups-lpd.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-cups-lpd.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-cups-lpd.o: ../cups/language.h ../cups/string-private.h ../config.h
-cups-lpd.o: ../cups/debug-private.h ../cups/versioning.h
-cups-lpd.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-cups-lpd.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-cups-lpd.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-cups-lpd.o: ../cups/language-private.h ../cups/transcode.h
-cups-lpd.o: ../cups/thread-private.h
-cups-polld.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-cups-polld.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-cups-polld.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-cups-polld.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-cups-polld.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-cups-polld.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-cups-polld.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-cups-polld.o: ../cups/language-private.h ../cups/transcode.h
-cups-polld.o: ../cups/thread-private.h
-testdirsvc.o: ../cups/cups.h ../cups/file.h ../cups/versioning.h
-testdirsvc.o: ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h
-testdirsvc.o: ../cups/string-private.h ../config.h
-testlpd.o: ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-testlpd.o: ../cups/http.h ../cups/array.h ../cups/language.h
-testlpd.o: ../cups/string-private.h ../config.h
-testmime.o: ../cups/string-private.h ../config.h ../cups/dir.h
-testmime.o: ../cups/versioning.h ../cups/debug-private.h ../cups/versioning.h
-testmime.o: ../cups/ppd-private.h mime.h ../cups/array.h ../cups/ipp.h
-testmime.o: ../cups/file.h
-testspeed.o: ../cups/string-private.h ../config.h ../cups/cups.h
-testspeed.o: ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-testspeed.o: ../cups/array.h ../cups/language.h ../cups/language.h
-testspeed.o: ../cups/debug-private.h ../cups/versioning.h
-testsub.o: ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h
-testsub.o: ../cups/http.h ../cups/array.h ../cups/language.h
-testsub.o: ../cups/debug-private.h ../cups/versioning.h
-testsub.o: ../cups/string-private.h ../config.h
-util.o: util.h ../cups/array-private.h ../cups/array.h ../cups/file-private.h
-util.o: ../cups/cups-private.h
-cups-driverd.o: util.h ../cups/array-private.h ../cups/array.h
-cups-driverd.o: ../cups/file-private.h ../cups/cups-private.h ../cups/dir.h
-cups-driverd.o: ../cups/versioning.h ../cups/transcode.h ../cups/language.h
-cups-driverd.o: ../cups/array.h ../cups/ppd-private.h ../ppdc/ppdc.h
-cups-driverd.o: ../cups/file.h
+auth.o: auth.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+avahi.o: avahi.c ../config.h
+banners.o: banners.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h ../cups/dir.h
+cert.o: cert.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+classes.o: classes.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+client.o: client.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+conf.o: conf.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+dirsvc.o: dirsvc.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+env.o: env.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+file.o: file.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h ../cups/dir.h
+main.o: main.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+ipp.o: ipp.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+listen.o: listen.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+job.o: job.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h ../cups/backend.h ../cups/dir.h
+log.o: log.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+network.o: network.c ../cups/http-private.h ../config.h ../cups/http.h \
+ ../cups/versioning.h ../cups/array.h ../cups/md5-private.h \
+ ../cups/ipp-private.h ../cups/ipp.h cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+policy.o: policy.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+printers.o: printers.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h ../cups/dir.h
+process.o: process.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+quotas.o: quotas.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+select.o: select.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+server.o: server.c ../cups/http-private.h ../config.h ../cups/http.h \
+ ../cups/versioning.h ../cups/array.h ../cups/md5-private.h \
+ ../cups/ipp-private.h ../cups/ipp.h cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../cups/debug-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+statbuf.o: statbuf.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+subscriptions.o: subscriptions.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+sysman.o: sysman.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+timeout.o: timeout.c cupsd.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h
+tls.o: tls.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \
+ client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \
+ network.h subscriptions.h tls-darwin.c
+filter.o: filter.c ../cups/string-private.h ../config.h \
+ ../cups/debug-private.h ../cups/versioning.h mime.h ../cups/array.h \
+ ../cups/ipp.h ../cups/http.h ../cups/file.h
+mime.o: mime.c ../cups/string-private.h ../config.h \
+ ../cups/debug-private.h ../cups/versioning.h ../cups/dir.h \
+ mime-private.h mime.h ../cups/array.h ../cups/ipp.h ../cups/http.h \
+ ../cups/file.h
+type.o: type.c ../cups/string-private.h ../config.h \
+ ../cups/debug-private.h ../cups/versioning.h mime.h ../cups/array.h \
+ ../cups/ipp.h ../cups/http.h ../cups/file.h
+cupsfilter.o: cupsfilter.c ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h mime.h
+cups-deviced.o: cups-deviced.c util.h ../cups/array-private.h \
+ ../cups/array.h ../cups/versioning.h ../cups/file-private.h \
+ ../cups/cups-private.h ../cups/string-private.h ../config.h \
+ ../cups/debug-private.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/dir.h
+cups-exec.o: cups-exec.c ../cups/string-private.h ../config.h
+cups-lpd.o: cups-lpd.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+testlpd.o: testlpd.c ../cups/cups.h ../cups/file.h ../cups/versioning.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \
+ ../cups/string-private.h ../config.h
+testmime.o: testmime.c ../cups/string-private.h ../config.h ../cups/dir.h \
+ ../cups/versioning.h ../cups/debug-private.h ../cups/ppd-private.h \
+ ../cups/cups.h ../cups/file.h ../cups/ipp.h ../cups/http.h \
+ ../cups/array.h ../cups/language.h ../cups/ppd.h ../cups/pwg-private.h \
+ mime.h
+testspeed.o: testspeed.c ../cups/string-private.h ../config.h \
+ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/language.h \
+ ../cups/debug-private.h
+testsub.o: testsub.c ../cups/cups.h ../cups/file.h ../cups/versioning.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \
+ ../cups/debug-private.h ../cups/string-private.h ../config.h \
+ ../cups/ipp-private.h
+util.o: util.c util.h ../cups/array-private.h ../cups/array.h \
+ ../cups/versioning.h ../cups/file-private.h ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+cups-driverd.o: cups-driverd.cxx util.h ../cups/array-private.h \
+ ../cups/array.h ../cups/versioning.h ../cups/file-private.h \
+ ../cups/cups-private.h ../cups/string-private.h ../config.h \
+ ../cups/debug-private.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/dir.h ../ppdc/ppdc.h
diff --git a/scheduler/Makefile b/scheduler/Makefile
index 18dc80c2..8c791040 100644
--- a/scheduler/Makefile
+++ b/scheduler/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 9766 2011-05-11 22:17:34Z mike $"
+# "$Id: Makefile 10490 2012-05-21 17:40:22Z mike $"
#
# Scheduler Makefile for CUPS.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -21,6 +21,7 @@ CUPSDOBJS = \
cert.o \
classes.o \
client.o \
+ colorman.o \
conf.o \
dirsvc.o \
env.o \
@@ -39,7 +40,8 @@ CUPSDOBJS = \
server.o \
statbuf.o \
subscriptions.o \
- sysman.o
+ sysman.o \
+ tls.o
LIBOBJS = \
filter.o \
mime.o \
@@ -51,8 +53,6 @@ COBJS = \
cups-deviced.o \
cups-exec.o \
cups-lpd.o \
- cups-polld.o \
- testdirsvc.o \
testlpd.o \
testmime.o \
testspeed.o \
@@ -68,7 +68,6 @@ LIBTARGETS = \
libcupsmime.a
UNITTARGETS = \
- testdirsvc \
testlpd \
testmime \
testspeed \
@@ -80,8 +79,7 @@ PROGRAMS = \
cups-deviced \
cups-driverd \
cups-exec \
- cups-lpd \
- cups-polld
+ cups-lpd
TARGETS = \
$(LIBTARGETS) \
@@ -124,8 +122,8 @@ clean:
#
depend:
- makedepend -Y -I.. -fDependencies $(COBJS:.o=.c) \
- $(CXXOBJS:.o=.cxx) >/dev/null 2>&1
+ $(CC) -MM $(ALL_CFLAGS) $(COBJS:.o=.c) >Dependencies
+ $(CXX) -MM $(ALL_CXXFLAGS) $(CXXOBJS:.o=.cxx) >>Dependencies
#
@@ -213,12 +211,8 @@ install-data:
install-exec:
echo Installing programs in $(SBINDIR)...
$(INSTALL_DIR) -m 755 $(SBINDIR)
- $(INSTALL_BIN) -m 500 cupsd $(SBINDIR)
+ $(INSTALL_BIN) -m $(CUPS_CUPSD_FILE_PERM) cupsd $(SBINDIR)
$(INSTALL_BIN) cupsfilter $(SBINDIR)
- -if test "x`uname`" = xDarwin; then \
- $(INSTALL_DIR) $(BUILDROOT)/System/Library/Printers/Libraries; \
- $(LN) $(sbindir)/cupsfilter $(BUILDROOT)/System/Library/Printers/Libraries/convert; \
- fi
echo Installing programs in $(SERVERBIN)/daemon...
$(INSTALL_DIR) -m 755 $(SERVERBIN)
$(INSTALL_DIR) -m 755 $(SERVERBIN)/daemon
@@ -226,7 +220,6 @@ install-exec:
$(INSTALL_BIN) cups-driverd $(SERVERBIN)/daemon
$(INSTALL_BIN) cups-exec $(SERVERBIN)/daemon
$(INSTALL_BIN) cups-lpd $(SERVERBIN)/daemon
- $(INSTALL_BIN) cups-polld $(SERVERBIN)/daemon
if test "x$(SYMROOT)" != "x"; then \
$(INSTALL_DIR) $(SYMROOT); \
for file in $(PROGRAMS); do \
@@ -284,7 +277,6 @@ uninstall:
$(RM) $(SERVERBIN)/daemon/cups-driverd
$(RM) $(SERVERBIN)/daemon/cups-exec
$(RM) $(SERVERBIN)/daemon/cups-lpd
- $(RM) $(SERVERBIN)/daemon/cups-polld
$(RM) $(BUILDROOT)/System/Library/Printers/Libraries/convert
-$(RMDIR) $(STATEDIR)/certs
-$(RMDIR) $(STATEDIR)
@@ -389,6 +381,8 @@ cupsd-static: $(CUPSDOBJS) libcupsmime.a ../cups/$(LIBCUPSSTATIC)
$(LIBMALLOC) $(SERVERLIBS) $(DNSSDLIBS) $(LIBGSSAPI) \
$(LIBWRAP)
+tls.o: tls-darwin.c tls-gnutls.c tls-openssl.c
+
#
# Make the cupsfilter utility.
@@ -439,15 +433,6 @@ cups-lpd: cups-lpd.o ../cups/$(LIBCUPS)
#
-# Make the polling daemon, "cups-polld".
-#
-
-cups-polld: cups-polld.o ../cups/$(LIBCUPS)
- echo Linking $@...
- $(CC) $(LDFLAGS) -o cups-polld cups-polld.o $(LIBS)
-
-
-#
# libcupsmime.so.1, libcupsmime.sl.1
#
@@ -507,15 +492,6 @@ libcupsmime.a: $(LIBOBJS)
#
-# Make the test program, "testdirsvc".
-#
-
-testdirsvc: testdirsvc.o
- echo Linking $@...
- $(CC) $(LDFLAGS) -o testdirsvc testdirsvc.o $(COMMONLIBS) $(NETLIBS)
-
-
-#
# Make the test program, "testlpd".
#
@@ -564,7 +540,7 @@ testsub: testsub.o ../cups/$(LIBCUPSSTATIC)
sloc:
echo "cupsd: \c"
- sloccount $(CUPSDOBJS:.o=.c) $(LIBOBJS:.o=.c) cups-driverd.cxx cups-polld.c cups-lpd.c 2>/dev/null | grep "Total Physical" | awk '{print $$9}'
+ sloccount $(CUPSDOBJS:.o=.c) $(LIBOBJS:.o=.c) cups-driverd.cxx cups-lpd.c 2>/dev/null | grep "Total Physical" | awk '{print $$9}'
#
@@ -575,5 +551,5 @@ include Dependencies
#
-# End of "$Id: Makefile 9766 2011-05-11 22:17:34Z mike $".
+# End of "$Id: Makefile 10490 2012-05-21 17:40:22Z mike $".
#
diff --git a/scheduler/auth.c b/scheduler/auth.c
index d2aeb406..5791c025 100644
--- a/scheduler/auth.c
+++ b/scheduler/auth.c
@@ -1,9 +1,9 @@
/*
- * "$Id: auth.c 9949 2011-08-31 04:58:33Z mike $"
+ * "$Id: auth.c 10376 2012-03-22 20:53:47Z mike $"
*
* Authorization routines for the CUPS scheduler.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* This file contains Kerberos support code, copyright 2006 by
@@ -130,8 +130,8 @@ static void to64(char *s, unsigned long v, int n);
#if HAVE_LIBPAM
typedef struct cupsd_authdata_s /**** Authentication data ****/
{
- char username[33], /* Username string */
- password[33]; /* Password string */
+ char username[HTTP_MAX_VALUE], /* Username string */
+ password[HTTP_MAX_VALUE]; /* Password string */
} cupsd_authdata_t;
#endif /* HAVE_LIBPAM */
@@ -322,8 +322,10 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
int type; /* Authentication type */
const char *authorization; /* Pointer into Authorization string */
char *ptr, /* Pointer into string */
- username[256], /* Username string */
- password[33]; /* Password string */
+ username[HTTP_MAX_VALUE],
+ /* Username string */
+ password[HTTP_MAX_VALUE];
+ /* Password string */
cupsd_cert_t *localuser; /* Certificate username */
char nonce[HTTP_MAX_VALUE], /* Nonce value from client */
md5[33], /* MD5 password */
@@ -356,18 +358,19 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
con->type = CUPSD_AUTH_NONE;
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdAuthorize: con->uri=\"%s\", con->best=%p(%s)",
- con->uri, con->best, con->best ? con->best->location : "");
+ "[Client %d] con->uri=\"%s\", con->best=%p(%s)",
+ con->http.fd, con->uri, con->best,
+ con->best ? con->best->location : "");
if (con->best && con->best->type != CUPSD_AUTH_NONE)
{
if (con->best->type == CUPSD_AUTH_DEFAULT)
- type = DefaultAuthType;
+ type = cupsdDefaultAuthType();
else
type = con->best->type;
}
else
- type = DefaultAuthType;
+ type = cupsdDefaultAuthType();
/*
* Decode the Authorization string...
@@ -375,8 +378,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
authorization = httpGetField(&con->http, HTTP_FIELD_AUTHORIZATION);
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdAuthorize: Authorization=\"%s\"",
- authorization);
+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Client %d] Authorization=\"%s\"",
+ con->http.fd, authorization);
username[0] = '\0';
password[0] = '\0';
@@ -400,7 +403,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
*/
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: No authentication data provided.");
+ "[Client %d] No authentication data provided.",
+ con->http.fd);
return;
}
#ifdef HAVE_AUTHORIZATION_H
@@ -425,7 +429,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (authlen != kAuthorizationExternalFormLength)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "External Authorization reference size is incorrect!");
+ "[Client %d] External Authorization reference size is "
+ "incorrect.", con->http.fd);
return;
}
@@ -433,8 +438,9 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
(AuthorizationExternalForm *)nonce, &con->authref)) != 0)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "AuthorizationCreateFromExternalForm returned %d (%s)",
- (int)status, cssmErrorString(status));
+ "[Client %d] AuthorizationCreateFromExternalForm "
+ "returned %d (%s)", con->http.fd, (int)status,
+ cssmErrorString(status));
return;
}
@@ -449,8 +455,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
strlcpy(username, authinfo->items[0].value, sizeof(username));
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: Authorized as \"%s\" using AuthRef",
- username);
+ "[Client %d] Authorized as \"%s\" using AuthRef",
+ con->http.fd, username);
}
AuthorizationFreeItemSet(authinfo);
@@ -470,15 +476,17 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (getsockopt(con->http.fd, 0, LOCAL_PEERCRED, &peercred, &peersize))
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to get peer credentials - %s",
- strerror(errno));
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "[Client %d] Unable to get peer credentials - %s",
+ con->http.fd, strerror(errno));
return;
}
if ((pwd = getpwuid(CUPSD_UCRED_UID(peercred))) == NULL)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to find UID %d for peer credentials.",
+ "[Client %d] Unable to find UID %d for peer "
+ "credentials.", con->http.fd,
(int)CUPSD_UCRED_UID(peercred));
return;
}
@@ -486,8 +494,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
strlcpy(username, pwd->pw_name, sizeof(username));
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: Authorized as \"%s\" using "
- "AuthRef + PeerCred", username);
+ "[Client %d] Authorized as \"%s\" using "
+ "AuthRef + PeerCred", con->http.fd, username);
}
con->type = CUPSD_AUTH_BASIC;
@@ -510,17 +518,20 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
for (name = (char *)cupsArrayFirst(con->best->names);
name;
name = (char *)cupsArrayNext(con->best->names))
- if (!_cups_strncasecmp(name, "@AUTHKEY(", 9) || !_cups_strcasecmp(name, "@SYSTEM"))
+ if (!_cups_strncasecmp(name, "@AUTHKEY(", 9) ||
+ !_cups_strcasecmp(name, "@SYSTEM"))
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "PeerCred authentication not allowed for resource.");
+ "[Client %d] PeerCred authentication not allowed for "
+ "resource.", con->http.fd);
return;
}
#endif /* HAVE_AUTHORIZATION_H */
if ((pwd = getpwnam(authorization + 9)) == NULL)
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "User \"%s\" does not exist.",
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "[Client %d] User \"%s\" does not exist.", con->http.fd,
authorization + 9);
return;
}
@@ -533,26 +544,27 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (getsockopt(con->http.fd, SOL_SOCKET, SO_PEERCRED, &peercred, &peersize))
# endif /* __APPLE__ */
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to get peer credentials - %s",
- strerror(errno));
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "[Client %d] Unable to get peer credentials - %s",
+ con->http.fd, strerror(errno));
return;
}
if (pwd->pw_uid != CUPSD_UCRED_UID(peercred))
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Invalid peer credentials for \"%s\" - got %d, "
- "expected %d!", authorization + 9,
+ "[Client %d] Invalid peer credentials for \"%s\" - got "
+ "%d, expected %d!", con->http.fd, authorization + 9,
CUPSD_UCRED_UID(peercred), pwd->pw_uid);
# ifdef HAVE_SYS_UCRED_H
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdAuthorize: cr_version=%d",
- peercred.cr_version);
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdAuthorize: cr_uid=%d",
- peercred.cr_uid);
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdAuthorize: cr_ngroups=%d",
- peercred.cr_ngroups);
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdAuthorize: cr_groups[0]=%d",
- peercred.cr_groups[0]);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] cr_version=%d",
+ con->http.fd, peercred.cr_version);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] cr_uid=%d",
+ con->http.fd, peercred.cr_uid);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] cr_ngroups=%d",
+ con->http.fd, peercred.cr_ngroups);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] cr_groups[0]=%d",
+ con->http.fd, peercred.cr_groups[0]);
# endif /* HAVE_SYS_UCRED_H */
return;
}
@@ -564,7 +576,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
# endif /* HAVE_GSSAPI */
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: Authorized as %s using PeerCred",
+ "[Client %d] Authorized as %s using PeerCred", con->http.fd,
username);
con->type = CUPSD_AUTH_BASIC;
@@ -586,14 +598,14 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
strlcpy(username, localuser->username, sizeof(username));
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: Authorized as %s using Local",
+ "[Client %d] Authorized as %s using Local", con->http.fd,
username);
}
else
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Local authentication certificate not "
- "found!");
+ "[Client %d] Local authentication certificate not found.",
+ con->http.fd);
return;
}
@@ -626,8 +638,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if ((ptr = strchr(username, ':')) == NULL)
{
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Missing Basic password!");
+ cupsdLogMessage(CUPSD_LOG_ERROR, "[Client %d] Missing Basic password.",
+ con->http.fd);
return;
}
@@ -639,8 +651,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
* Username must not be empty...
*/
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Empty Basic username!");
+ cupsdLogMessage(CUPSD_LOG_ERROR, "[Client %d] Empty Basic username.",
+ con->http.fd);
return;
}
@@ -650,8 +662,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
* Password must not be empty...
*/
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Empty Basic password!");
+ cupsdLogMessage(CUPSD_LOG_ERROR, "[Client %d] Empty Basic password.",
+ con->http.fd);
return;
}
@@ -703,8 +715,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (pamerr != PAM_SUCCESS)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: pam_start() returned %d (%s)!",
- pamerr, pam_strerror(pamh, pamerr));
+ "[Client %d] pam_start() returned %d (%s)",
+ con->http.fd, pamerr, pam_strerror(pamh, pamerr));
return;
}
@@ -713,8 +725,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
pamerr = pam_set_item(pamh, PAM_RHOST, con->http.hostname);
if (pamerr != PAM_SUCCESS)
cupsdLogMessage(CUPSD_LOG_WARN,
- "cupsdAuthorize: pam_set_item(PAM_RHOST) "
- "returned %d (%s)!", pamerr,
+ "[Client %d] pam_set_item(PAM_RHOST) "
+ "returned %d (%s)", con->http.fd, pamerr,
pam_strerror(pamh, pamerr));
# endif /* PAM_RHOST */
@@ -722,8 +734,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
pamerr = pam_set_item(pamh, PAM_TTY, "cups");
if (pamerr != PAM_SUCCESS)
cupsdLogMessage(CUPSD_LOG_WARN,
- "cupsdAuthorize: pam_set_item(PAM_TTY) "
- "returned %d (%s)!", pamerr,
+ "[Client %d] pam_set_item(PAM_TTY) "
+ "returned %d (%s)!", con->http.fd, pamerr,
pam_strerror(pamh, pamerr));
# endif /* PAM_TTY */
# endif /* HAVE_PAM_SET_ITEM */
@@ -732,9 +744,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (pamerr != PAM_SUCCESS)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: pam_authenticate() returned %d "
- "(%s)!",
- pamerr, pam_strerror(pamh, pamerr));
+ "[Client %d] pam_authenticate() returned %d (%s)",
+ con->http.fd, pamerr, pam_strerror(pamh, pamerr));
pam_end(pamh, 0);
return;
}
@@ -743,8 +754,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
pamerr = pam_setcred(pamh, PAM_ESTABLISH_CRED | PAM_SILENT);
if (pamerr != PAM_SUCCESS)
cupsdLogMessage(CUPSD_LOG_WARN,
- "cupsdAuthorize: pam_setcred() "
- "returned %d (%s)!", pamerr,
+ "[Client %d] pam_setcred() returned %d (%s)",
+ con->http.fd, pamerr,
pam_strerror(pamh, pamerr));
# endif /* HAVE_PAM_SETCRED */
@@ -752,9 +763,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (pamerr != PAM_SUCCESS)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: pam_acct_mgmt() returned %d "
- "(%s)!",
- pamerr, pam_strerror(pamh, pamerr));
+ "[Client %d] pam_acct_mgmt() returned %d (%s)",
+ con->http.fd, pamerr, pam_strerror(pamh, pamerr));
pam_end(pamh, 0);
return;
}
@@ -771,16 +781,16 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: AIX authenticate of username "
- "\"%s\"", username);
+ "[Client %d] AIX authenticate of username \"%s\"",
+ con->http.fd, username);
reenter = 1;
if (authenticate(username, password, &reenter, &authmsg) != 0)
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: Unable to authenticate username "
- "\"%s\": %s",
- username, strerror(errno));
+ "[Client %d] Unable to authenticate username "
+ "\"%s\": %s", con->http.fd, username,
+ strerror(errno));
return;
}
@@ -806,8 +816,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
*/
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Unknown username \"%s\"!",
- username);
+ "[Client %d] Unknown username \"%s\".",
+ con->http.fd, username);
return;
}
@@ -822,8 +832,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
*/
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Username \"%s\" has no shadow "
- "password!", username);
+ "[Client %d] Username \"%s\" has no shadow "
+ "password.", con->http.fd, username);
return;
}
@@ -837,8 +847,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
*/
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Username \"%s\" has no password!",
- username);
+ "[Client %d] Username \"%s\" has no password.",
+ con->http.fd, username);
return;
}
@@ -850,8 +860,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
pass = cups_crypt(password, pw->pw_passwd);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdAuthorize: pw_passwd=\"%s\", crypt=\"%s\"",
- pw->pw_passwd, pass);
+ "[Client %d] pw_passwd=\"%s\", crypt=\"%s\"",
+ con->http.fd, pw->pw_passwd, pass);
if (!pass || strcmp(pw->pw_passwd, pass))
{
@@ -861,15 +871,14 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
pass = cups_crypt(password, spw->sp_pwdp);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdAuthorize: sp_pwdp=\"%s\", crypt=\"%s\"",
- spw->sp_pwdp, pass);
+ "[Client %d] sp_pwdp=\"%s\", crypt=\"%s\"",
+ con->http.fd, spw->sp_pwdp, pass);
if (pass == NULL || strcmp(spw->sp_pwdp, pass))
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Authentication failed for "
- "user \"%s\"!",
- username);
+ "[Client %d] Authentication failed for user "
+ "\"%s\".", con->http.fd, username);
return;
}
}
@@ -877,9 +886,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
# endif /* HAVE_SHADOW_H */
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Authentication failed for "
- "user \"%s\"!",
- username);
+ "[Client %d] Authentication failed for user "
+ "\"%s\".", con->http.fd, username);
return;
}
}
@@ -887,8 +895,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
}
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: Authorized as %s using Basic",
- username);
+ "[Client %d] Authorized as %s using Basic",
+ con->http.fd, username);
break;
case CUPSD_AUTH_BASICDIGEST :
@@ -899,8 +907,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (!get_md5_password(username, NULL, md5))
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Unknown MD5 username \"%s\"!",
- username);
+ "[Client %d] Unknown MD5 username \"%s\".",
+ con->http.fd, username);
return;
}
@@ -909,14 +917,14 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (strcmp(md5, basicmd5))
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Authentication failed for \"%s\"!",
- username);
+ "[Client %d] Authentication failed for \"%s\".",
+ con->http.fd, username);
return;
}
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: Authorized as %s using BasicDigest",
- username);
+ "[Client %d] Authorized as %s using BasicDigest",
+ con->http.fd, username);
break;
}
@@ -936,7 +944,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
*/
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Empty or missing Digest username!");
+ "[Client %d] Empty or missing Digest username.",
+ con->http.fd);
return;
}
@@ -948,7 +957,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
*/
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Empty or missing Digest password!");
+ "[Client %d] Empty or missing Digest password.",
+ con->http.fd);
return;
}
@@ -956,16 +966,16 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
nonce))
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: No nonce value for Digest "
- "authentication!");
+ "[Client %d] No nonce value for Digest authentication.",
+ con->http.fd);
return;
}
if (strcmp(con->http.hostname, nonce))
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Bad nonce value, expected \"%s\", "
- "got \"%s\"!", con->http.hostname, nonce);
+ "[Client %d] Bad nonce value, expected \"%s\", "
+ "got \"%s\".", con->http.fd, con->http.hostname, nonce);
return;
}
@@ -976,8 +986,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (!get_md5_password(username, NULL, md5))
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Unknown MD5 username \"%s\"!",
- username);
+ "[Client %d] Unknown MD5 username \"%s\".",
+ con->http.fd, username);
return;
}
@@ -986,13 +996,13 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (strcmp(md5, password))
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdAuthorize: Authentication failed for \"%s\"!",
- username);
+ "[Client %d] Authentication failed for \"%s\".",
+ con->http.fd, username);
return;
}
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: Authorized as %s using Digest",
+ "[Client %d] Authorized as %s using Digest", con->http.fd,
username);
con->type = CUPSD_AUTH_DIGEST;
@@ -1020,8 +1030,9 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (gss_init_sec_context == NULL)
{
cupsdLogMessage(CUPSD_LOG_WARN,
- "GSSAPI/Kerberos authentication failed because the "
- "Kerberos framework is not present.");
+ "[Client %d] GSSAPI/Kerberos authentication failed "
+ "because the Kerberos framework is not present.",
+ con->http.fd);
return;
}
# endif /* __APPLE__ */
@@ -1037,7 +1048,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (!*authorization)
{
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdAuthorize: No authentication data specified.");
+ "[Client %d] No authentication data specified.",
+ con->http.fd);
return;
}
@@ -1059,7 +1071,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
client_name = GSS_C_NO_NAME;
major_status = gss_accept_sec_context(&minor_status,
&context,
- GSS_C_NO_CREDENTIAL,
+ ServerCreds,
&input_token,
GSS_C_NO_CHANNEL_BINDINGS,
&client_name,
@@ -1075,8 +1087,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (GSS_ERROR(major_status))
{
cupsdLogGSSMessage(CUPSD_LOG_DEBUG, major_status, minor_status,
- "cupsdAuthorize: Error accepting GSSAPI security "
- "context");
+ "[Client %d] Error accepting GSSAPI security context",
+ con->http.fd);
if (context != GSS_C_NO_CONTEXT)
gss_delete_sec_context(&minor_status, &context, GSS_C_NO_BUFFER);
@@ -1091,7 +1103,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (major_status == GSS_S_CONTINUE_NEEDED)
cupsdLogGSSMessage(CUPSD_LOG_DEBUG, major_status, minor_status,
- "cupsdAuthorize: Credentials not complete");
+ "[Client %d] Credentials not complete", con->http.fd);
else if (major_status == GSS_S_COMPLETE)
{
major_status = gss_display_name(&minor_status, client_name,
@@ -1100,7 +1112,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (GSS_ERROR(major_status))
{
cupsdLogGSSMessage(CUPSD_LOG_DEBUG, major_status, minor_status,
- "cupsdAuthorize: Error getting username");
+ "[Client %d] Error getting username", con->http.fd);
gss_release_name(&minor_status, &client_name);
gss_delete_sec_context(&minor_status, &context, GSS_C_NO_BUFFER);
return;
@@ -1109,8 +1121,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
strlcpy(username, output_token.value, sizeof(username));
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: Authorized as %s using Negotiate",
- username);
+ "[Client %d] Authorized as %s using Negotiate",
+ con->http.fd, username);
gss_release_name(&minor_status, &client_name);
gss_release_buffer(&minor_status, &output_token);
@@ -1140,14 +1152,15 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
&peersize))
# endif /* __APPLE__ */
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to get peer credentials - %s",
- strerror(errno));
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "[Client %d] Unable to get peer credentials - %s",
+ con->http.fd, strerror(errno));
}
else
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdAuthorize: Using credentials for UID %d...",
- CUPSD_UCRED_UID(peercred));
+ "[Client %d] Using credentials for UID %d.",
+ con->http.fd, CUPSD_UCRED_UID(peercred));
con->gss_uid = CUPSD_UCRED_UID(peercred);
}
}
@@ -1162,8 +1175,9 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
if (sscanf(authorization, "%255s", scheme) != 1)
strcpy(scheme, "UNKNOWN");
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad authentication data \"%s ...\"",
- scheme);
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "[Client %d] Bad authentication data \"%s ...\"",
+ con->http.fd, scheme);
return;
}
@@ -1843,7 +1857,7 @@ cupsdIsAuthorized(cupsd_client_t *con, /* I - Connection */
best = con->best;
if ((type = best->type) == CUPSD_AUTH_DEFAULT)
- type = DefaultAuthType;
+ type = cupsdDefaultAuthType();
cupsdLogMessage(CUPSD_LOG_DEBUG2,
"cupsdIsAuthorized: level=CUPSD_AUTH_%s, type=%s, "
@@ -1907,7 +1921,8 @@ cupsdIsAuthorized(cupsd_client_t *con, /* I - Connection */
_cups_strcasecmp(con->http.hostname, "localhost") &&
best->satisfy == CUPSD_AUTH_SATISFY_ALL) &&
!(type == CUPSD_AUTH_NEGOTIATE ||
- (type == CUPSD_AUTH_NONE && DefaultAuthType == CUPSD_AUTH_NEGOTIATE)))
+ (type == CUPSD_AUTH_NONE &&
+ cupsdDefaultAuthType() == CUPSD_AUTH_NEGOTIATE)))
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
"cupsdIsAuthorized: Need upgrade to TLS...");
@@ -2582,5 +2597,5 @@ to64(char *s, /* O - Output string */
/*
- * End of "$Id: auth.c 9949 2011-08-31 04:58:33Z mike $".
+ * End of "$Id: auth.c 10376 2012-03-22 20:53:47Z mike $".
*/
diff --git a/scheduler/auth.h b/scheduler/auth.h
index f15a6f9b..c6865156 100644
--- a/scheduler/auth.h
+++ b/scheduler/auth.h
@@ -1,5 +1,5 @@
/*
- * "$Id: auth.h 9652 2011-03-25 21:25:38Z mike $"
+ * "$Id: auth.h 10131 2011-11-30 23:11:23Z mike $"
*
* Authorization definitions for the CUPS scheduler.
*
@@ -30,6 +30,7 @@
#define CUPSD_AUTH_DIGEST 2 /* Digest authentication */
#define CUPSD_AUTH_BASICDIGEST 3 /* Basic authentication w/passwd.md5 */
#define CUPSD_AUTH_NEGOTIATE 4 /* Kerberos authentication */
+#define CUPSD_AUTH_AUTO 5 /* Kerberos or Basic, depending on configuration of server */
#define CUPSD_AUTH_ANON 0 /* Anonymous access */
#define CUPSD_AUTH_USER 1 /* Must have a valid username/password */
@@ -112,8 +113,6 @@ typedef struct cupsd_client_s cupsd_client_t;
VAR cups_array_t *Locations VALUE(NULL);
/* Authorization locations */
-VAR int DefaultAuthType VALUE(CUPSD_AUTH_BASIC);
- /* Default AuthType, if not specified */
#ifdef HAVE_SSL
VAR http_encryption_t DefaultEncryption VALUE(HTTP_ENCRYPT_REQUIRED);
/* Default encryption for authentication */
@@ -148,5 +147,5 @@ extern cupsd_location_t *cupsdNewLocation(const char *location);
/*
- * End of "$Id: auth.h 9652 2011-03-25 21:25:38Z mike $".
+ * End of "$Id: auth.h 10131 2011-11-30 23:11:23Z mike $".
*/
diff --git a/scheduler/cert.c b/scheduler/cert.c
index 2e83a8b6..1937d35f 100644
--- a/scheduler/cert.c
+++ b/scheduler/cert.c
@@ -1,5 +1,5 @@
/*
- * "$Id: cert.c 10262 2012-02-12 05:48:09Z mike $"
+ * "$Id: cert.c 10257 2012-02-12 04:34:46Z mike $"
*
* Authentication certificate routines for the CUPS scheduler.
*
@@ -454,5 +454,5 @@ cupsdInitCerts(void)
/*
- * End of "$Id: cert.c 10262 2012-02-12 05:48:09Z mike $".
+ * End of "$Id: cert.c 10257 2012-02-12 04:34:46Z mike $".
*/
diff --git a/scheduler/classes.c b/scheduler/classes.c
index c001bc46..f5b5bcc6 100644
--- a/scheduler/classes.c
+++ b/scheduler/classes.c
@@ -1,5 +1,5 @@
/*
- * "$Id: classes.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: classes.c 10104 2011-11-04 06:37:03Z mike $"
*
* Printer class routines for the CUPS scheduler.
*
@@ -22,8 +22,6 @@
* cupsdFindClass() - Find the named class.
* cupsdLoadAllClasses() - Load classes from the classes.conf file.
* cupsdSaveAllClasses() - Save classes to the classes.conf file.
- * cupsdUpdateImplicitClasses() - Update the accepting state of implicit
- * classes.
*/
/*
@@ -184,24 +182,9 @@ cupsdDeletePrinterFromClasses(
for (c = (cupsd_printer_t *)cupsArrayFirst(Printers);
c;
c = (cupsd_printer_t *)cupsArrayNext(Printers))
- if (c->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT))
+ if (c->type & CUPS_PRINTER_CLASS)
changed |= cupsdDeletePrinterFromClass(c, p);
- /*
- * Then clean out any empty implicit classes...
- */
-
- for (c = (cupsd_printer_t *)cupsArrayFirst(ImplicitPrinters);
- c;
- c = (cupsd_printer_t *)cupsArrayNext(ImplicitPrinters))
- if (c->num_printers == 0)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Deleting implicit class \"%s\"...",
- c->name);
- cupsdDeletePrinter(c, 0);
- changed = 1;
- }
-
return (changed);
}
@@ -279,8 +262,7 @@ cupsdFindClass(const char *name) /* I - Name of class */
cupsd_printer_t *c; /* Current class/printer */
- if ((c = cupsdFindDest(name)) != NULL &&
- (c->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT)))
+ if ((c = cupsdFindDest(name)) != NULL && (c->type & CUPS_PRINTER_CLASS))
return (c);
else
return (NULL);
@@ -443,9 +425,8 @@ cupsdLoadAllClasses(void)
{
cupsdSetString(&temp->make_model, "Remote Printer on unknown");
- temp->state = IPP_PRINTER_STOPPED;
- temp->type |= CUPS_PRINTER_REMOTE;
- temp->browse_time = 2147483647;
+ temp->state = IPP_PRINTER_STOPPED;
+ temp->type |= CUPS_PRINTER_REMOTE;
cupsdSetString(&temp->location, "Location Unknown");
cupsdSetString(&temp->info, "No Information Available");
@@ -733,7 +714,6 @@ cupsdSaveAllClasses(void)
*/
if ((pclass->type & CUPS_PRINTER_REMOTE) ||
- (pclass->type & CUPS_PRINTER_IMPLICIT) ||
!(pclass->type & CUPS_PRINTER_CLASS))
continue;
@@ -834,35 +814,5 @@ cupsdSaveAllClasses(void)
/*
- * 'cupsdUpdateImplicitClasses()' - Update the accepting state of implicit
- * classes.
- */
-
-void
-cupsdUpdateImplicitClasses(void)
-{
- int i; /* Looping var */
- cupsd_printer_t *pclass; /* Current class */
- int accepting; /* printer-is-accepting-jobs value */
-
-
- for (pclass = (cupsd_printer_t *)cupsArrayFirst(ImplicitPrinters);
- pclass;
- pclass = (cupsd_printer_t *)cupsArrayNext(ImplicitPrinters))
- {
- /*
- * Loop through the printers to come up with a composite state...
- */
-
- for (i = 0, accepting = 0; i < pclass->num_printers; i ++)
- if ((accepting = pclass->printers[i]->accepting) != 0)
- break;
-
- pclass->accepting = accepting;
- }
-}
-
-
-/*
- * End of "$Id: classes.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: classes.c 10104 2011-11-04 06:37:03Z mike $".
*/
diff --git a/scheduler/classes.h b/scheduler/classes.h
index 05c08784..d050a183 100644
--- a/scheduler/classes.h
+++ b/scheduler/classes.h
@@ -1,9 +1,9 @@
/*
- * "$Id: classes.h 9350 2010-11-04 23:23:25Z mike $"
+ * "$Id: classes.h 10104 2011-11-04 06:37:03Z mike $"
*
* Printer class definitions for the CUPS scheduler.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2011 by Apple Inc.
* Copyright 1997-2005 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -28,9 +28,8 @@ extern cupsd_printer_t *cupsdFindAvailablePrinter(const char *name);
extern cupsd_printer_t *cupsdFindClass(const char *name);
extern void cupsdLoadAllClasses(void);
extern void cupsdSaveAllClasses(void);
-extern void cupsdUpdateImplicitClasses(void);
/*
- * End of "$Id: classes.h 9350 2010-11-04 23:23:25Z mike $".
+ * End of "$Id: classes.h 10104 2011-11-04 06:37:03Z mike $".
*/
diff --git a/scheduler/client.c b/scheduler/client.c
index e40ed270..4d42bcea 100644
--- a/scheduler/client.c
+++ b/scheduler/client.c
@@ -1,9 +1,9 @@
/*
- * "$Id: client.c 10338 2012-03-07 06:05:39Z mike $"
+ * "$Id: client.c 10455 2012-05-07 22:41:30Z mike $"
*
* Client routines for the CUPS scheduler.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* This file contains Kerberos support code, copyright 2006 by
@@ -17,34 +17,30 @@
*
* Contents:
*
- * cupsdAcceptClient() - Accept a new client.
- * cupsdCloseAllClients() - Close all remote clients immediately.
- * cupsdCloseClient() - Close a remote client.
- * cupsdFlushHeader() - Flush the header fields to the client.
- * cupsdReadClient() - Read data from a client.
- * cupsdSendCommand() - Send output from a command via HTTP.
- * cupsdSendError() - Send an error message via HTTP.
- * cupsdSendHeader() - Send an HTTP request.
- * cupsdUpdateCGI() - Read status messages from CGI scripts and
- * programs.
- * cupsdWriteClient() - Write data to a client as needed.
- * check_if_modified() - Decode an "If-Modified-Since" line.
- * compare_clients() - Compare two client connections.
- * copy_cdsa_certificate() - Copy a SSL/TLS certificate from the System
- * keychain.
- * data_ready() - Check whether data is available from a client.
- * encrypt_client() - Enable encryption for the client...
- * get_file() - Get a filename and state info.
- * install_conf_file() - Install a configuration file.
- * is_cgi() - Is the resource a CGI script/program?
- * is_path_absolute() - Is a path absolute and free of relative elements
- * (i.e. "..").
- * make_certificate() - Make a self-signed SSL/TLS certificate.
- * pipe_command() - Pipe the output of a command to the remote
- * client.
- * valid_host() - Is the Host: field valid?
- * write_file() - Send a file via HTTP.
- * write_pipe() - Flag that data is available on the CGI pipe.
+ * cupsdAcceptClient() - Accept a new client.
+ * cupsdCloseAllClients() - Close all remote clients immediately.
+ * cupsdCloseClient() - Close a remote client.
+ * cupsdFlushHeader() - Flush the header fields to the client.
+ * cupsdReadClient() - Read data from a client.
+ * cupsdSendCommand() - Send output from a command via HTTP.
+ * cupsdSendError() - Send an error message via HTTP.
+ * cupsdSendHeader() - Send an HTTP request.
+ * cupsdUpdateCGI() - Read status messages from CGI scripts and
+ * programs.
+ * cupsdWriteClient() - Write data to a client as needed.
+ * check_if_modified() - Decode an "If-Modified-Since" line.
+ * compare_clients() - Compare two client connections.
+ * data_ready() - Check whether data is available from a client.
+ * get_file() - Get a filename and state info.
+ * install_conf_file() - Install a configuration file.
+ * is_cgi() - Is the resource a CGI script/program?
+ * is_path_absolute() - Is a path absolute and free of relative elements
+ * (i.e. "..").
+ * pipe_command() - Pipe the output of a command to the remote
+ * client.
+ * valid_host() - Is the Host: field valid?
+ * write_file() - Send a file via HTTP.
+ * write_pipe() - Flag that data is available on the CGI pipe.
*/
/*
@@ -59,6 +55,36 @@
/*
+ * Local globals...
+ */
+
+static const char * const http_states[] =
+ { /* HTTP state strings */
+ "HTTP_WAITING",
+ "HTTP_OPTIONS",
+ "HTTP_GET",
+ "HTTP_GET_SEND",
+ "HTTP_HEAD",
+ "HTTP_POST",
+ "HTTP_POST_RECV",
+ "HTTP_POST_SEND",
+ "HTTP_PUT",
+ "HTTP_PUT_RECV",
+ "HTTP_DELETE",
+ "HTTP_TRACE",
+ "HTTP_CLOSE",
+ "HTTP_STATUS"
+ };
+static const char * const ipp_states[] =
+ { /* IPP state strings */
+ "IPP_IDLE",
+ "IPP_HEADER",
+ "IPP_ATTRIBUTE",
+ "IPP_DATA"
+ };
+
+
+/*
* Local functions...
*/
@@ -66,22 +92,13 @@ static int check_if_modified(cupsd_client_t *con,
struct stat *filestats);
static int compare_clients(cupsd_client_t *a, cupsd_client_t *b,
void *data);
-#ifdef HAVE_CDSASSL
-static CFArrayRef copy_cdsa_certificate(cupsd_client_t *con);
-#endif /* HAVE_CDSASSL */
static int data_ready(cupsd_client_t *con);
-#ifdef HAVE_SSL
-static int encrypt_client(cupsd_client_t *con);
-#endif /* HAVE_SSL */
static char *get_file(cupsd_client_t *con, struct stat *filestats,
char *filename, int len);
static http_status_t install_conf_file(cupsd_client_t *con);
static int is_cgi(cupsd_client_t *con, const char *filename,
struct stat *filestats, mime_type_t *type);
static int is_path_absolute(const char *path);
-#ifdef HAVE_SSL
-static int make_certificate(cupsd_client_t *con);
-#endif /* HAVE_SSL */
static int pipe_command(cupsd_client_t *con, int infile, int *outfile,
char *command, char *options, int root);
static int valid_host(cupsd_client_t *con);
@@ -157,8 +174,8 @@ cupsdAcceptClient(cupsd_listener_t *lis)/* I - Listener socket */
return;
}
- con->http.activity = time(NULL);
con->file = -1;
+ con->http.activity = time(NULL);
con->http.hostaddr = &(con->clientaddr);
con->http.wait_value = 10000;
@@ -356,11 +373,11 @@ cupsdAcceptClient(cupsd_listener_t *lis)/* I - Listener socket */
#ifdef AF_LOCAL
if (con->http.hostaddr->addr.sa_family == AF_LOCAL)
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdAcceptClient: %d from %s (Domain)",
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] Accepted from %s (Domain)",
con->http.fd, con->http.hostname);
else
#endif /* AF_LOCAL */
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdAcceptClient: %d from %s:%d (IPv%d)",
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] Accepted from %s:%d (IPv%d)",
con->http.fd, con->http.hostname,
_httpAddrPort(con->http.hostaddr),
_httpAddrFamily(con->http.hostaddr) == AF_INET ? 4 : 6);
@@ -397,6 +414,10 @@ cupsdAcceptClient(cupsd_listener_t *lis)/* I - Listener socket */
con->serverport = _httpAddrPort(&(lis->address));
}
+ /*
+ * Add the connection to the array of active clients...
+ */
+
cupsArrayAdd(Clients, con);
/*
@@ -440,7 +461,7 @@ cupsdAcceptClient(cupsd_listener_t *lis)/* I - Listener socket */
con->http.encryption = HTTP_ENCRYPT_ALWAYS;
- if (!encrypt_client(con))
+ if (!cupsdStartTLS(con))
cupsdCloseClient(con);
}
else
@@ -479,17 +500,13 @@ cupsdCloseClient(cupsd_client_t *con) /* I - Client to close */
{
int partial; /* Do partial close for SSL? */
#ifdef HAVE_LIBSSL
- SSL_CTX *context; /* Context for encryption */
- unsigned long error; /* Error code */
#elif defined(HAVE_GNUTLS)
- int error; /* Error code */
- gnutls_certificate_server_credentials *credentials;
- /* TLS credentials */
# elif defined(HAVE_CDSASSL)
#endif /* HAVE_LIBSSL */
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdCloseClient: %d", con->http.fd);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] Closing connection.",
+ con->http.fd);
/*
* Flush pending writes before closing...
@@ -508,60 +525,7 @@ cupsdCloseClient(cupsd_client_t *con) /* I - Client to close */
{
partial = 1;
-# ifdef HAVE_LIBSSL
- context = SSL_get_SSL_CTX(con->http.tls);
-
- switch (SSL_shutdown(con->http.tls))
- {
- case 1 :
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "SSL shutdown successful!");
- break;
- case -1 :
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Fatal error during SSL shutdown!");
- default :
- while ((error = ERR_get_error()) != 0)
- cupsdLogMessage(CUPSD_LOG_ERROR, "SSL shutdown failed: %s",
- ERR_error_string(error, NULL));
- break;
- }
-
- SSL_CTX_free(context);
- SSL_free(con->http.tls);
-
-# elif defined(HAVE_GNUTLS)
- credentials = (gnutls_certificate_server_credentials *)(con->http.tls_credentials);
-
- error = gnutls_bye(con->http.tls, GNUTLS_SHUT_WR);
- switch (error)
- {
- case GNUTLS_E_SUCCESS:
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "SSL shutdown successful!");
- break;
- default:
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "SSL shutdown failed: %s", gnutls_strerror(error));
- break;
- }
-
- gnutls_deinit(con->http.tls);
- gnutls_certificate_free_credentials(*credentials);
- free(credentials);
-
-# elif defined(HAVE_CDSASSL)
- while (SSLClose(con->http.tls) == errSSLWouldBlock)
- usleep(1000);
-
- SSLDisposeContext(con->http.tls);
-
- if (con->http.tls_credentials)
- CFRelease(con->http.tls_credentials);
-
-# endif /* HAVE_LIBSSL */
-
- con->http.tls = NULL;
+ cupsdEndTLS(con);
}
#endif /* HAVE_SSL */
@@ -719,18 +683,22 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
status = HTTP_CONTINUE;
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdReadClient(con=%p(%d)) "
- "con->http.error=%d "
- "con->http.used=%d, "
- "con->http.state=%d "
- "con->data_encoding=HTTP_ENCODE_%s, "
- "con->data_remaining=" CUPS_LLFMT ", "
- "con->file=%d",
- con, con->http.fd, con->http.error, con->http.used,
- con->http.state,
+ "[Client %d] cupsdReadClient "
+ "error=%d, "
+ "used=%d, "
+ "state=%s, "
+ "data_encoding=HTTP_ENCODE_%s, "
+ "data_remaining=" CUPS_LLFMT ", "
+ "request=%p(%s), "
+ "file=%d",
+ con->http.fd, con->http.error, con->http.used,
+ http_states[con->http.state],
con->http.data_encoding == HTTP_ENCODE_CHUNKED ?
"CHUNKED" : "LENGTH",
- CUPS_LLCAST con->http.data_remaining, con->file);
+ CUPS_LLCAST con->http.data_remaining,
+ con->request,
+ con->request ? ipp_states[con->request->state] : "",
+ con->file);
#ifdef HAVE_SSL
if (con->auto_ssl)
@@ -749,10 +717,10 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
*/
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdReadClient: Saw first byte %02X, auto-negotiating "
- "SSL/TLS session...", buf[0] & 255);
+ "[Client %d] Saw first byte %02X, auto-negotiating "
+ "SSL/TLS session.", con->http.fd, buf[0] & 255);
- if (!encrypt_client(con))
+ if (!cupsdStartTLS(con))
cupsdCloseClient(con);
return;
@@ -771,12 +739,12 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
{
if (con->http.error && con->http.error != EPIPE)
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d WAITING Closing for error %d "
+ "[Client %d] HTTP_WAITING Closing for error %d "
"(%s)", con->http.fd, con->http.error,
strerror(con->http.error));
else
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d WAITING Closing on EOF",
+ "[Client %d] HTTP_WAITING Closing on EOF",
con->http.fd);
cupsdCloseClient(con);
@@ -848,7 +816,8 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
if (line[0])
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Bad request line \"%s\" from %s!",
+ "[Client %d] Bad request line \"%s\" from %s.",
+ con->http.fd,
_httpEncodeURI(buf, line, sizeof(buf)),
con->http.hostname);
cupsdSendError(con, HTTP_BAD_REQUEST, CUPSD_AUTH_NONE);
@@ -862,7 +831,8 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
if (sscanf(version, "HTTP/%d.%d", &major, &minor) != 2)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Bad request line \"%s\" from %s!",
+ "[Client %d] Bad request line \"%s\" from %s.",
+ con->http.fd,
_httpEncodeURI(buf, line, sizeof(buf)),
con->http.hostname);
cupsdSendError(con, HTTP_BAD_REQUEST, CUPSD_AUTH_NONE);
@@ -881,7 +851,8 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
else
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unsupported request line \"%s\" from %s!",
+ "[Client %d] Unsupported request line \"%s\" "
+ "from %s.", con->http.fd,
_httpEncodeURI(buf, line, sizeof(buf)),
con->http.hostname);
cupsdSendError(con, HTTP_NOT_SUPPORTED, CUPSD_AUTH_NONE);
@@ -928,8 +899,9 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
* Nope, we don't do proxies...
*/
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad URI \"%s\" in request!",
- con->uri);
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "[Client %d] Bad URI \"%s\" in request.",
+ con->http.fd, con->uri);
cupsdSendError(con, HTTP_METHOD_NOT_ALLOWED, CUPSD_AUTH_NONE);
cupsdCloseClient(con);
return;
@@ -963,7 +935,9 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
con->http.state = HTTP_HEAD;
else
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad operation \"%s\"!", operation);
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "[Client %d] Bad operation \"%s\".", con->http.fd,
+ operation);
cupsdSendError(con, HTTP_BAD_REQUEST, CUPSD_AUTH_NONE);
cupsdCloseClient(con);
return;
@@ -972,7 +946,7 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
gettimeofday(&(con->start), NULL);
con->operation = con->http.state;
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdReadClient: %d %s %s HTTP/%d.%d",
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] %s %s HTTP/%d.%d",
con->http.fd, operation, con->uri,
con->http.version / 100, con->http.version % 100);
@@ -1003,13 +977,14 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
{
if (con->http.error && con->http.error != EPIPE)
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d FIELDS Closing for error %d "
- "(%s)", con->http.fd, con->http.error,
+ "[Client %d] Closing for error %d (%s) while "
+ "reading headers.",
+ con->http.fd, con->http.error,
strerror(con->http.error));
else
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d FIELDS Closing on EOF",
- con->http.fd);
+ "[Client %d] Closing on EOF while reading headers.",
+ con->http.fd);
cupsdSendError(con, HTTP_BAD_REQUEST, CUPSD_AUTH_NONE);
cupsdCloseClient(con);
@@ -1025,7 +1000,7 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
*/
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d Closing on EOF", con->http.fd);
+ "[Client %d] Closing on EOF", con->http.fd);
cupsdCloseClient(con);
return;
}
@@ -1078,10 +1053,11 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
cupsdAuthorize(con);
- if (!_cups_strncasecmp(con->http.fields[HTTP_FIELD_CONNECTION], "Keep-Alive",
- 10) && KeepAlive)
+ if (!_cups_strncasecmp(con->http.fields[HTTP_FIELD_CONNECTION],
+ "Keep-Alive", 10) && KeepAlive)
con->http.keep_alive = HTTP_KEEPALIVE_ON;
- else if (!_cups_strncasecmp(con->http.fields[HTTP_FIELD_CONNECTION], "close", 5))
+ else if (!_cups_strncasecmp(con->http.fields[HTTP_FIELD_CONNECTION],
+ "close", 5))
con->http.keep_alive = HTTP_KEEPALIVE_OFF;
if (!con->http.fields[HTTP_FIELD_HOST][0] &&
@@ -1093,7 +1069,9 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
if (!cupsdSendError(con, HTTP_BAD_REQUEST, CUPSD_AUTH_NONE))
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Missing Host: field in request!");
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "[Client %d] Missing Host: field in request.",
+ con->http.fd);
cupsdCloseClient(con);
return;
}
@@ -1106,8 +1084,9 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
*/
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Request from \"%s\" using invalid Host: field \"%s\"",
- con->http.hostname, con->http.fields[HTTP_FIELD_HOST]);
+ "[Client %d] Request from \"%s\" using invalid Host: "
+ "field \"%s\"", con->http.fd, con->http.hostname,
+ con->http.fields[HTTP_FIELD_HOST]);
if (!cupsdSendError(con, HTTP_BAD_REQUEST, CUPSD_AUTH_NONE))
{
@@ -1155,7 +1134,7 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
return;
}
- if (!encrypt_client(con))
+ if (!cupsdStartTLS(con))
{
cupsdCloseClient(con);
return;
@@ -1192,7 +1171,8 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
*/
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Request for non-absolute resource \"%s\"!", con->uri);
+ "[Client %d] Request for non-absolute resource \"%s\".",
+ con->http.fd, con->uri);
if (!cupsdSendError(con, HTTP_FORBIDDEN, CUPSD_AUTH_NONE))
{
@@ -1202,15 +1182,16 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
}
else
{
- if (!_cups_strcasecmp(con->http.fields[HTTP_FIELD_CONNECTION], "Upgrade") &&
- con->http.tls == NULL)
+ if (!_cups_strcasecmp(con->http.fields[HTTP_FIELD_CONNECTION],
+ "Upgrade") && con->http.tls == NULL)
{
#ifdef HAVE_SSL
/*
* Do encryption stuff...
*/
- if (!cupsdSendHeader(con, HTTP_SWITCHING_PROTOCOLS, NULL, CUPSD_AUTH_NONE))
+ if (!cupsdSendHeader(con, HTTP_SWITCHING_PROTOCOLS, NULL,
+ CUPSD_AUTH_NONE))
{
cupsdCloseClient(con);
return;
@@ -1227,7 +1208,7 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
return;
}
- if (!encrypt_client(con))
+ if (!cupsdStartTLS(con))
{
cupsdCloseClient(con);
return;
@@ -1695,7 +1676,8 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
*/
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Request for subdirectory \"%s\"!", con->uri);
+ "[Client %d] Request for subdirectory \"%s\".",
+ con->http.fd, con->uri);
if (!cupsdSendError(con, HTTP_FORBIDDEN, CUPSD_AUTH_NONE))
{
@@ -1753,8 +1735,9 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
if (con->file < 0)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create request file %s: %s",
- con->filename, strerror(errno));
+ "[Client %d] Unable to create request file "
+ "\"%s\": %s", con->http.fd, con->filename,
+ strerror(errno));
if (!cupsdSendError(con, HTTP_REQUEST_TOO_LARGE, CUPSD_AUTH_NONE))
{
@@ -1890,7 +1873,8 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
*/
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Request for subdirectory \"%s\"!", con->uri);
+ "[Client %d] Request for subdirectory \"%s\".",
+ con->http.fd, con->uri);
if (!cupsdSendError(con, HTTP_FORBIDDEN, CUPSD_AUTH_NONE))
{
@@ -1991,12 +1975,12 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
{
if (con->http.error && con->http.error != EPIPE)
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d PUT_RECV Closing for error "
+ "[Client %d] HTTP_PUT_RECV Closing for error "
"%d (%s)", con->http.fd, con->http.error,
strerror(con->http.error));
else
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d PUT_RECV Closing on EOF",
+ "[Client %d] HTTP_PUT_RECV Closing on EOF",
con->http.fd);
cupsdCloseClient(con);
@@ -2009,8 +1993,9 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
if (write(con->file, line, bytes) < bytes)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdReadClient: Unable to write %d bytes to %s: %s",
- bytes, con->filename, strerror(errno));
+ "[Client %d] Unable to write %d bytes to "
+ "\"%s\": %s", con->http.fd, bytes, con->filename,
+ strerror(errno));
close(con->file);
con->file = -1;
@@ -2085,8 +2070,8 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
if ((ipp_state = ippRead(&(con->http), con->request)) == IPP_ERROR)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdReadClient: %d IPP Read Error!",
- con->http.fd);
+ "[Client %d] IPP read error: %s", con->http.fd,
+ cupsLastErrorString());
cupsdSendError(con, HTTP_BAD_REQUEST, CUPSD_AUTH_NONE);
cupsdCloseClient(con);
@@ -2105,7 +2090,7 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
}
else
{
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdReadClient: %d %d.%d %s %d",
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] %d.%d %s %d",
con->http.fd, con->request->request.op.version[0],
con->request->request.op.version[1],
ippOpString(con->request->request.op.operation_id),
@@ -2127,8 +2112,9 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
if (con->file < 0)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create request file %s: %s",
- con->filename, strerror(errno));
+ "[Client %d] Unable to create request file "
+ "\"%s\": %s", con->http.fd, con->filename,
+ strerror(errno));
if (!cupsdSendError(con, HTTP_REQUEST_TOO_LARGE, CUPSD_AUTH_NONE))
{
@@ -2148,12 +2134,12 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
{
if (con->http.error && con->http.error != EPIPE)
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d POST_SEND Closing for "
+ "[Client %d] HTTP_POST_SEND Closing for "
"error %d (%s)", con->http.fd, con->http.error,
strerror(con->http.error));
else
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d POST_SEND Closing on EOF",
+ "[Client %d] HTTP_POST_SEND Closing on EOF",
con->http.fd);
cupsdCloseClient(con);
@@ -2166,9 +2152,9 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
if (write(con->file, line, bytes) < bytes)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdReadClient: Unable to write %d bytes to "
- "%s: %s", bytes, con->filename,
- strerror(errno));
+ "[Client %d] Unable to write %d bytes to "
+ "\"%s\": %s", con->http.fd, bytes,
+ con->filename, strerror(errno));
close(con->file);
con->file = -1;
@@ -2188,8 +2174,8 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
else if (con->http.state != HTTP_POST_SEND)
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d Closing on unknown HTTP "
- "state %d", con->http.fd, con->http.state);
+ "[Client %d] Closing on unexpected state %s.",
+ con->http.fd, http_states[con->http.state]);
cupsdCloseClient(con);
return;
}
@@ -2281,7 +2267,7 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */
if (!con->http.keep_alive)
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdReadClient: %d Closing because Keep-Alive disabled",
+ "[Client %d] Closing because Keep-Alive disabled",
con->http.fd);
cupsdCloseClient(con);
}
@@ -2315,7 +2301,7 @@ cupsdSendCommand(
if (fd < 0)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdSendCommand: %d Unable to open \"%s\" for reading: %s",
+ "[Client %d] Unable to open \"%s\" for reading: %s",
con->http.fd, con->filename ? con->filename : "/dev/null",
strerror(errno));
return (0);
@@ -2331,11 +2317,11 @@ cupsdSendCommand(
if (fd >= 0)
close(fd);
- cupsdLogMessage(CUPSD_LOG_INFO, "Started \"%s\" (pid=%d)", command,
- con->pipe_pid);
+ cupsdLogMessage(CUPSD_LOG_INFO, "[Client %d] Started \"%s\" (pid=%d)",
+ con->http.fd, command, con->pipe_pid);
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdSendCommand: %d file=%d",
- con->http.fd, con->file);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] file=%d", con->http.fd,
+ con->file);
if (con->pipe_pid == 0)
return (0);
@@ -2363,7 +2349,7 @@ cupsdSendError(cupsd_client_t *con, /* I - Connection */
int auth_type)/* I - Authentication type */
{
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdSendError(con=%p(%d), code=%d, auth_type=%d", con,
+ "[Client %d] cupsdSendError code=%d, auth_type=%d",
con->http.fd, code, auth_type);
#ifdef HAVE_SSL
@@ -2519,10 +2505,6 @@ cupsdSendHeader(
int auth_type) /* I - Type of authentication */
{
char auth_str[1024]; /* Authorization string */
-#if 0 /* def HAVE_GSSAPI */
- static char *gss_buf = NULL; /* Kerberos auth data buffer */
- static int gss_bufsize = 0; /* Size of Kerberos auth data buffer */
-#endif /* HAVE_GSSAPI */
/*
@@ -2577,7 +2559,7 @@ cupsdSendHeader(
if (auth_type == CUPSD_AUTH_NONE)
{
if (!con->best || con->best->type <= CUPSD_AUTH_NONE)
- auth_type = DefaultAuthType;
+ auth_type = cupsdDefaultAuthType();
else
auth_type = con->best->type;
}
@@ -2609,7 +2591,7 @@ cupsdSendHeader(
* requests when the request requires system group membership - then the
* client knows the root certificate can/should be used.
*
- * Also, for Mac OS X we also look for @AUTHKEY and add an "authkey"
+ * Also, for OS X we also look for @AUTHKEY and add an "authkey"
* parameter as needed...
*/
@@ -2652,7 +2634,7 @@ cupsdSendHeader(
if (auth_str[0])
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdSendHeader: %d WWW-Authenticate: %s", con->http.fd,
+ "[Client %d] WWW-Authenticate: %s", con->http.fd,
auth_str);
if (httpPrintf(HTTP(con), "WWW-Authenticate: %s\r\n", auth_str) < 0)
@@ -2733,11 +2715,23 @@ cupsdWriteClient(cupsd_client_t *con) /* I - Client connection */
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdWriteClient(con=%p(%d)) response=%p(%d), file=%d "
- "pipe_pid=%d state=%d",
- con, con->http.fd, con->response,
- con->response ? con->response->state : -1,
- con->file, con->pipe_pid, con->http.state);
+ "[Client %d] cupsdWriteClient "
+ "error=%d, "
+ "used=%d, "
+ "state=%s, "
+ "data_encoding=HTTP_ENCODE_%s, "
+ "data_remaining=" CUPS_LLFMT ", "
+ "response=%p(%s), "
+ "pipe_pid=%d, "
+ "file=%d",
+ con->http.fd, con->http.error, con->http.used,
+ http_states[con->http.state],
+ con->http.data_encoding == HTTP_ENCODE_CHUNKED ?
+ "CHUNKED" : "LENGTH",
+ CUPS_LLCAST con->http.data_remaining,
+ con->response,
+ con->response ? ipp_states[con->response->state] : "",
+ con->pipe_pid, con->file);
if (con->http.state != HTTP_GET_SEND &&
con->http.state != HTTP_POST_SEND)
@@ -2748,8 +2742,8 @@ cupsdWriteClient(cupsd_client_t *con) /* I - Client connection */
*/
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdWriteClient: %d Closing on unknown HTTP state %d",
- con->http.fd, con->http.state);
+ "[Client %d] Closing on unexpected HTTP state %s.",
+ con->http.fd, http_states[con->http.state]);
cupsdCloseClient(con);
return;
}
@@ -2902,7 +2896,7 @@ cupsdWriteClient(cupsd_client_t *con) /* I - Client connection */
if (httpWrite2(HTTP(con), con->header, con->header_used) < 0)
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdWriteClient: %d Closing for error %d (%s)",
+ "[Client %d] Closing for error %d (%s)",
con->http.fd, con->http.error,
strerror(con->http.error));
cupsdCloseClient(con);
@@ -2939,7 +2933,7 @@ cupsdWriteClient(cupsd_client_t *con) /* I - Client connection */
if (httpWrite2(HTTP(con), "", 0) < 0)
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdWriteClient: %d Closing for error %d (%s)",
+ "[Client %d] Closing for error %d (%s)",
con->http.fd, con->http.error,
strerror(con->http.error));
cupsdCloseClient(con);
@@ -2989,7 +2983,7 @@ cupsdWriteClient(cupsd_client_t *con) /* I - Client connection */
if (!con->http.keep_alive)
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdWriteClient: %d Closing because Keep-Alive disabled",
+ "[Client %d] Closing because Keep-Alive disabled.",
con->http.fd);
cupsdCloseClient(con);
return;
@@ -3027,9 +3021,9 @@ check_if_modified(
return (1);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "check_if_modified(con=%p(%d), "
+ "[Client %d] check_if_modified "
"filestats=%p(" CUPS_LLFMT ", %d)) If-Modified-Since=\"%s\"",
- con, con->http.fd, filestats, CUPS_LLCAST filestats->st_size,
+ con->http.fd, filestats, CUPS_LLCAST filestats->st_size,
(int)filestats->st_mtime, ptr);
while (*ptr != '\0')
@@ -3081,274 +3075,6 @@ compare_clients(cupsd_client_t *a, /* I - First client */
}
-#ifdef HAVE_CDSASSL
-/*
- * 'copy_cdsa_certificate()' - Copy a SSL/TLS certificate from the System
- * keychain.
- */
-
-static CFArrayRef /* O - Array of certificates */
-copy_cdsa_certificate(
- cupsd_client_t *con) /* I - Client connection */
-{
- OSStatus err; /* Error info */
- SecKeychainRef keychain = NULL;/* Keychain reference */
- SecIdentitySearchRef search = NULL; /* Search reference */
- SecIdentityRef identity = NULL;/* Identity */
- CFArrayRef certificates = NULL;
- /* Certificate array */
-# if HAVE_SECPOLICYCREATESSL
- SecPolicyRef policy = NULL; /* Policy ref */
- CFStringRef servername = NULL;
- /* Server name */
- CFMutableDictionaryRef query = NULL; /* Query qualifiers */
- char localname[1024];/* Local hostname */
-# elif defined(HAVE_SECIDENTITYSEARCHCREATEWITHPOLICY)
- SecPolicyRef policy = NULL; /* Policy ref */
- SecPolicySearchRef policy_search = NULL;
- /* Policy search ref */
- CSSM_DATA options; /* Policy options */
- CSSM_APPLE_TP_SSL_OPTIONS
- ssl_options; /* SSL Option for hostname */
- char localname[1024];/* Local hostname */
-# endif /* HAVE_SECPOLICYCREATESSL */
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "copy_cdsa_certificate: Looking for certs for \"%s\"...",
- con->servername);
-
- if ((err = SecKeychainOpen(ServerCertificate, &keychain)))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot open keychain \"%s\" - %s (%d)",
- ServerCertificate, cssmErrorString(err), (int)err);
- goto cleanup;
- }
-
-# if HAVE_SECPOLICYCREATESSL
- servername = CFStringCreateWithCString(kCFAllocatorDefault, con->servername,
- kCFStringEncodingUTF8);
-
- policy = SecPolicyCreateSSL(1, servername);
-
- if (servername)
- CFRelease(servername);
-
- if (!policy)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot create ssl policy reference");
- goto cleanup;
- }
-
- if (!(query = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
- &kCFTypeDictionaryKeyCallBacks,
- &kCFTypeDictionaryValueCallBacks)))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot create query dictionary");
- goto cleanup;
- }
-
- CFDictionaryAddValue(query, kSecClass, kSecClassIdentity);
- CFDictionaryAddValue(query, kSecMatchPolicy, policy);
- CFDictionaryAddValue(query, kSecReturnRef, kCFBooleanTrue);
- CFDictionaryAddValue(query, kSecMatchLimit, kSecMatchLimitOne);
-
- err = SecItemCopyMatching(query, (CFTypeRef *)&identity);
-
- if (err && DNSSDHostName)
- {
- /*
- * Search for the connection server name failed; try the DNS-SD .local
- * hostname instead...
- */
-
- snprintf(localname, sizeof(localname), "%s.local", DNSSDHostName);
-
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "copy_cdsa_certificate: Looking for certs for \"%s\"...",
- localname);
-
- servername = CFStringCreateWithCString(kCFAllocatorDefault, localname,
- kCFStringEncodingUTF8);
-
- CFRelease(policy);
-
- policy = SecPolicyCreateSSL(1, servername);
-
- if (servername)
- CFRelease(servername);
-
- if (!policy)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot create ssl policy reference");
- goto cleanup;
- }
-
- CFDictionarySetValue(query, kSecMatchPolicy, policy);
-
- err = SecItemCopyMatching(query, (CFTypeRef *)&identity);
- }
-
- if (err)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "Cannot find signing key in keychain \"%s\": %s (%d)",
- ServerCertificate, cssmErrorString(err), (int)err);
- goto cleanup;
- }
-
-# elif defined(HAVE_SECIDENTITYSEARCHCREATEWITHPOLICY)
- /*
- * Use a policy to search for valid certificates whose common name matches the
- * servername...
- */
-
- if (SecPolicySearchCreate(CSSM_CERT_X_509v3, &CSSMOID_APPLE_TP_SSL,
- NULL, &policy_search))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot create a policy search reference");
- goto cleanup;
- }
-
- if (SecPolicySearchCopyNext(policy_search, &policy))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Cannot find a policy to use for searching");
- goto cleanup;
- }
-
- memset(&ssl_options, 0, sizeof(ssl_options));
- ssl_options.Version = CSSM_APPLE_TP_SSL_OPTS_VERSION;
- ssl_options.ServerName = con->servername;
- ssl_options.ServerNameLen = strlen(con->servername);
-
- options.Data = (uint8 *)&ssl_options;
- options.Length = sizeof(ssl_options);
-
- if (SecPolicySetValue(policy, &options))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Cannot set policy value to use for searching");
- goto cleanup;
- }
-
- if ((err = SecIdentitySearchCreateWithPolicy(policy, NULL, CSSM_KEYUSE_SIGN,
- keychain, FALSE, &search)))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Cannot create identity search reference: %s (%d)",
- cssmErrorString(err), (int)err);
- goto cleanup;
- }
-
- err = SecIdentitySearchCopyNext(search, &identity);
-
- if (err && DNSSDHostName)
- {
- /*
- * Search for the connection server name failed; try the DNS-SD .local
- * hostname instead...
- */
-
- snprintf(localname, sizeof(localname), "%s.local", DNSSDHostName);
-
- ssl_options.ServerName = localname;
- ssl_options.ServerNameLen = strlen(localname);
-
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "copy_cdsa_certificate: Looking for certs for \"%s\"...",
- localname);
-
- if (SecPolicySetValue(policy, &options))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Cannot set policy value to use for searching");
- goto cleanup;
- }
-
- CFRelease(search);
- search = NULL;
- if ((err = SecIdentitySearchCreateWithPolicy(policy, NULL, CSSM_KEYUSE_SIGN,
- keychain, FALSE, &search)))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Cannot create identity search reference: %s (%d)",
- cssmErrorString(err), (int)err);
- goto cleanup;
- }
-
- err = SecIdentitySearchCopyNext(search, &identity);
-
- }
-
- if (err)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "Cannot find signing key in keychain \"%s\": %s (%d)",
- ServerCertificate, cssmErrorString(err), (int)err);
- goto cleanup;
- }
-
-# else
- /*
- * Assume there is exactly one SecIdentity in the keychain...
- */
-
- if ((err = SecIdentitySearchCreate(keychain, CSSM_KEYUSE_SIGN, &search)))
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "Cannot create identity search reference (%d)", (int)err);
- goto cleanup;
- }
-
- if ((err = SecIdentitySearchCopyNext(search, &identity)))
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "Cannot find signing key in keychain \"%s\": %s (%d)",
- ServerCertificate, cssmErrorString(err), (int)err);
- goto cleanup;
- }
-# endif /* HAVE_SECPOLICYCREATESSL */
-
- if (CFGetTypeID(identity) != SecIdentityGetTypeID())
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "SecIdentity CFTypeID failure!");
- goto cleanup;
- }
-
- if ((certificates = CFArrayCreate(NULL, (const void **)&identity,
- 1, &kCFTypeArrayCallBacks)) == NULL)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot create certificate array");
- goto cleanup;
- }
-
- cleanup :
-
- if (keychain)
- CFRelease(keychain);
- if (search)
- CFRelease(search);
- if (identity)
- CFRelease(identity);
-
-# if HAVE_SECPOLICYCREATESSL
- if (policy)
- CFRelease(policy);
- if (query)
- CFRelease(query);
-# elif defined(HAVE_SECIDENTITYSEARCHCREATEWITHPOLICY)
- if (policy)
- CFRelease(policy);
- if (policy_search)
- CFRelease(policy_search);
-# endif /* HAVE_SECPOLICYCREATESSL */
-
- return (certificates);
-}
-#endif /* HAVE_CDSASSL */
-
-
/*
* 'data_ready()' - Check whether data is available from a client.
*/
@@ -3380,245 +3106,6 @@ data_ready(cupsd_client_t *con) /* I - Client */
}
-#ifdef HAVE_SSL
-/*
- * 'encrypt_client()' - Enable encryption for the client...
- */
-
-static int /* O - 1 on success, 0 on error */
-encrypt_client(cupsd_client_t *con) /* I - Client to encrypt */
-{
-# ifdef HAVE_LIBSSL
- SSL_CTX *context; /* Context for encryption */
- BIO *bio; /* BIO data */
- unsigned long error; /* Error code */
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "encrypt_client(con=%p(%d))", con,
- con->http.fd);
-
- /*
- * Verify that we have a certificate...
- */
-
- if (access(ServerKey, 0) || access(ServerCertificate, 0))
- {
- /*
- * Nope, make a self-signed certificate...
- */
-
- if (!make_certificate(con))
- return (0);
- }
-
- /*
- * Create the SSL context and accept the connection...
- */
-
- context = SSL_CTX_new(SSLv23_server_method());
-
- SSL_CTX_set_options(context, SSL_OP_NO_SSLv2); /* Only use SSLv3 or TLS */
- if (SSLOptions & CUPSD_SSL_NOEMPTY)
- SSL_CTX_set_options(context, SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS);
- SSL_CTX_use_PrivateKey_file(context, ServerKey, SSL_FILETYPE_PEM);
- SSL_CTX_use_certificate_chain_file(context, ServerCertificate);
-
- bio = BIO_new(_httpBIOMethods());
- BIO_ctrl(bio, BIO_C_SET_FILE_PTR, 0, (char *)HTTP(con));
-
- con->http.tls = SSL_new(context);
- SSL_set_bio(con->http.tls, bio, bio);
-
- if (SSL_accept(con->http.tls) != 1)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to encrypt connection from %s.",
- con->http.hostname);
-
- while ((error = ERR_get_error()) != 0)
- cupsdLogMessage(CUPSD_LOG_ERROR, "%s", ERR_error_string(error, NULL));
-
- SSL_CTX_free(context);
- SSL_free(con->http.tls);
- con->http.tls = NULL;
- return (0);
- }
-
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Connection from %s now encrypted.",
- con->http.hostname);
-
- return (1);
-
-# elif defined(HAVE_GNUTLS)
- int status; /* Error code */
- gnutls_certificate_server_credentials *credentials;
- /* TLS credentials */
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "encrypt_client(con=%p(%d))", con,
- con->http.fd);
-
- /*
- * Verify that we have a certificate...
- */
-
- if (access(ServerKey, 0) || access(ServerCertificate, 0))
- {
- /*
- * Nope, make a self-signed certificate...
- */
-
- if (!make_certificate(con))
- return (0);
- }
-
- /*
- * Create the SSL object and perform the SSL handshake...
- */
-
- credentials = (gnutls_certificate_server_credentials *)
- malloc(sizeof(gnutls_certificate_server_credentials));
- if (credentials == NULL)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to encrypt connection from %s - %s",
- con->http.hostname, strerror(errno));
-
- return (0);
- }
-
- gnutls_certificate_allocate_credentials(credentials);
- gnutls_certificate_set_x509_key_file(*credentials, ServerCertificate,
- ServerKey, GNUTLS_X509_FMT_PEM);
-
- gnutls_init(&con->http.tls, GNUTLS_SERVER);
- gnutls_set_default_priority(con->http.tls);
-
- gnutls_credentials_set(con->http.tls, GNUTLS_CRD_CERTIFICATE, *credentials);
- gnutls_transport_set_ptr(con->http.tls, (gnutls_transport_ptr)HTTP(con));
- gnutls_transport_set_pull_function(con->http.tls, _httpReadGNUTLS);
- gnutls_transport_set_push_function(con->http.tls, _httpWriteGNUTLS);
-
- while ((status = gnutls_handshake(con->http.tls)) != GNUTLS_E_SUCCESS)
- {
- if (gnutls_error_is_fatal(status))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to encrypt connection from %s - %s",
- con->http.hostname, gnutls_strerror(status));
-
- gnutls_deinit(con->http.tls);
- gnutls_certificate_free_credentials(*credentials);
- con->http.tls = NULL;
- free(credentials);
- return (0);
- }
- }
-
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Connection from %s now encrypted.",
- con->http.hostname);
-
- con->http.tls_credentials = credentials;
- return (1);
-
-# elif defined(HAVE_CDSASSL)
- OSStatus error = 0; /* Error code */
- CFArrayRef peerCerts; /* Peer certificates */
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "encrypt_client(con=%p(%d))", con,
- con->http.fd);
-
- con->http.tls_credentials = copy_cdsa_certificate(con);
-
- if (!con->http.tls_credentials)
- {
- /*
- * No keychain (yet), make a self-signed certificate...
- */
-
- if (make_certificate(con))
- con->http.tls_credentials = copy_cdsa_certificate(con);
- }
-
- if (!con->http.tls_credentials)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Could not find signing key in keychain \"%s\"",
- ServerCertificate);
- error = errSSLBadCert; /* errSSLBadConfiguration is a better choice, but not available on 10.2.x */
- }
-
- if (!error)
- error = SSLNewContext(true, &con->http.tls);
-
- if (!error)
- error = SSLSetIOFuncs(con->http.tls, _httpReadCDSA, _httpWriteCDSA);
-
- if (!error)
- error = SSLSetConnection(con->http.tls, HTTP(con));
-
- if (!error)
- error = SSLSetAllowsExpiredCerts(con->http.tls, true);
-
- if (!error)
- error = SSLSetAllowsAnyRoot(con->http.tls, true);
-
- if (!error)
- error = SSLSetCertificate(con->http.tls, con->http.tls_credentials);
-
- if (!error)
- {
- /*
- * Perform SSL/TLS handshake
- */
-
- while ((error = SSLHandshake(con->http.tls)) == errSSLWouldBlock)
- usleep(1000);
- }
-
- if (error)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to encrypt connection from %s - %s (%d)",
- con->http.hostname, cssmErrorString(error), (int)error);
-
- con->http.error = error;
- con->http.status = HTTP_ERROR;
-
- if (con->http.tls)
- {
- SSLDisposeContext(con->http.tls);
- con->http.tls = NULL;
- }
-
- if (con->http.tls_credentials)
- {
- CFRelease(con->http.tls_credentials);
- con->http.tls_credentials = NULL;
- }
-
- return (0);
- }
-
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Connection from %s now encrypted.",
- con->http.hostname);
-
- if (!SSLCopyPeerCertificates(con->http.tls, &peerCerts) && peerCerts)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Received %d peer certificates!",
- (int)CFArrayGetCount(peerCerts));
- CFRelease(peerCerts);
- }
- else
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Received NO peer certificates!");
-
- return (1);
-
-# endif /* HAVE_LIBSSL */
-}
-#endif /* HAVE_SSL */
-
-
/*
* 'get_file()' - Get a filename and state info.
*/
@@ -3802,8 +3289,8 @@ get_file(cupsd_client_t *con, /* I - Client connection */
}
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "get_file(con=%p(%d), filestats=%p, filename=%p, len=%d) = "
- "%s", con, con->http.fd, filestats, filename, len,
+ "[Client %d] get_file filestats=%p, filename=%p, len=%d, "
+ "returning \"%s\".", con->http.fd, filestats, filename, len,
status ? "(null)" : filename);
if (status)
@@ -3942,9 +3429,9 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */
if (!type || _cups_strcasecmp(type->super, "application"))
{
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "is_cgi(con=%p(%d), filename=\"%s\", filestats=%p, "
- "type=%s/%s) = 0", con, con->http.fd, filename, filestats,
- type ? type->super : "unknown",
+ "[Client %d] is_cgi filename=\"%s\", filestats=%p, "
+ "type=%s/%s, returning 0", con->http.fd, filename,
+ filestats, type ? type->super : "unknown",
type ? type->type : "unknown");
return (0);
}
@@ -3962,9 +3449,9 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */
cupsdSetStringf(&con->options, " %s", options);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "is_cgi(con=%p(%d), filename=\"%s\", filestats=%p, "
- "type=%s/%s) = 1", con, con->http.fd, filename, filestats,
- type->super, type->type);
+ "[Client %d] is_cgi filename=\"%s\", filestats=%p, "
+ "type=%s/%s, returning 1", con->http.fd, filename,
+ filestats, type->super, type->type);
return (1);
}
#ifdef HAVE_JAVA
@@ -3982,9 +3469,9 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */
cupsdSetStringf(&con->options, " %s", filename);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "is_cgi(con=%p(%d), filename=\"%s\", filestats=%p, "
- "type=%s/%s) = 1", con, con->http.fd, filename, filestats,
- type->super, type->type);
+ "[Client %d] is_cgi filename=\"%s\", filestats=%p, "
+ "type=%s/%s, returning 1", con->http.fd, filename,
+ filestats, type->super, type->type);
return (1);
}
#endif /* HAVE_JAVA */
@@ -4003,9 +3490,9 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */
cupsdSetStringf(&con->options, " %s", filename);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "is_cgi(con=%p(%d), filename=\"%s\", filestats=%p, "
- "type=%s/%s) = 1", con, con->http.fd, filename, filestats,
- type->super, type->type);
+ "[Client %d] is_cgi filename=\"%s\", filestats=%p, "
+ "type=%s/%s, returning 1", con->http.fd, filename,
+ filestats, type->super, type->type);
return (1);
}
#endif /* HAVE_PERL */
@@ -4024,9 +3511,9 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */
cupsdSetStringf(&con->options, " %s", filename);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "is_cgi(con=%p(%d), filename=\"%s\", filestats=%p, "
- "type=%s/%s) = 1", con, con->http.fd, filename, filestats,
- type->super, type->type);
+ "[Client %d] is_cgi filename=\"%s\", filestats=%p, "
+ "type=%s/%s, returning 1", con->http.fd, filename,
+ filestats, type->super, type->type);
return (1);
}
#endif /* HAVE_PHP */
@@ -4045,17 +3532,17 @@ is_cgi(cupsd_client_t *con, /* I - Client connection */
cupsdSetStringf(&con->options, " %s", filename);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "is_cgi(con=%p(%d), filename=\"%s\", filestats=%p, "
- "type=%s/%s) = 1", con, con->http.fd, filename, filestats,
- type->super, type->type);
+ "[Client %d] is_cgi filename=\"%s\", filestats=%p, "
+ "type=%s/%s, returning 1", con->http.fd, filename,
+ filestats, type->super, type->type);
return (1);
}
#endif /* HAVE_PYTHON */
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "is_cgi(con=%p(%d), filename=\"%s\", filestats=%p, "
- "type=%s/%s) = 0", con, con->http.fd, filename, filestats,
- type->super, type->type);
+ "[Client %d] is_cgi filename=\"%s\", filestats=%p, "
+ "type=%s/%s, returning 0", con->http.fd, filename,
+ filestats, type->super, type->type);
return (0);
}
@@ -4095,475 +3582,6 @@ is_path_absolute(const char *path) /* I - Input path */
}
-#ifdef HAVE_SSL
-/*
- * 'make_certificate()' - Make a self-signed SSL/TLS certificate.
- */
-
-static int /* O - 1 on success, 0 on failure */
-make_certificate(cupsd_client_t *con) /* I - Client connection */
-{
-#if defined(HAVE_LIBSSL) && defined(HAVE_WAITPID)
- int pid, /* Process ID of command */
- status; /* Status of command */
- char command[1024], /* Command */
- *argv[12], /* Command-line arguments */
- *envp[MAX_ENV + 1], /* Environment variables */
- infofile[1024], /* Type-in information for cert */
- seedfile[1024]; /* Random number seed file */
- int envc, /* Number of environment variables */
- bytes; /* Bytes written */
- cups_file_t *fp; /* Seed/info file */
- int infofd; /* Info file descriptor */
-
-
- /*
- * Run the "openssl" command to seed the random number generator and
- * generate a self-signed certificate that is good for 10 years:
- *
- * openssl rand -rand seedfile 1
- *
- * openssl req -new -x509 -keyout ServerKey \
- * -out ServerCertificate -days 3650 -nodes
- *
- * The seeding step is crucial in ensuring that the openssl command
- * does not block on systems without sufficient entropy...
- */
-
- if (!cupsFileFind("openssl", getenv("PATH"), 1, command, sizeof(command)))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "No SSL certificate and openssl command not found!");
- return (0);
- }
-
- if (access("/dev/urandom", 0))
- {
- /*
- * If the system doesn't provide /dev/urandom, then any random source
- * will probably be blocking-style, so generate some random data to
- * use as a seed for the certificate. Note that we have already
- * seeded the random number generator in cupsdInitCerts()...
- */
-
- cupsdLogMessage(CUPSD_LOG_INFO,
- "Seeding the random number generator...");
-
- /*
- * Write the seed file...
- */
-
- if ((fp = cupsTempFile2(seedfile, sizeof(seedfile))) == NULL)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to create seed file %s - %s",
- seedfile, strerror(errno));
- return (0);
- }
-
- for (bytes = 0; bytes < 262144; bytes ++)
- cupsFilePutChar(fp, random());
-
- cupsFileClose(fp);
-
- /*
- * Run the openssl command to seed its random number generator...
- */
-
- argv[0] = "openssl";
- argv[1] = "rand";
- argv[2] = "-rand";
- argv[3] = seedfile;
- argv[4] = "1";
- argv[5] = NULL;
-
- envc = cupsdLoadEnv(envp, MAX_ENV);
- envp[envc] = NULL;
-
- if (!cupsdStartProcess(command, argv, envp, -1, -1, -1, -1, -1, 1, NULL,
- NULL, &pid))
- {
- unlink(seedfile);
- return (0);
- }
-
- while (waitpid(pid, &status, 0) < 0)
- if (errno != EINTR)
- {
- status = 1;
- break;
- }
-
- cupsdFinishProcess(pid, command, sizeof(command), NULL);
-
- /*
- * Remove the seed file, as it is no longer needed...
- */
-
- unlink(seedfile);
-
- if (status)
- {
- if (WIFEXITED(status))
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to seed random number generator - "
- "the openssl command stopped with status %d!",
- WEXITSTATUS(status));
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to seed random number generator - "
- "the openssl command crashed on signal %d!",
- WTERMSIG(status));
-
- return (0);
- }
- }
-
- /*
- * Create a file with the certificate information fields...
- *
- * Note: This assumes that the default questions are asked by the openssl
- * command...
- */
-
- if ((fp = cupsTempFile2(infofile, sizeof(infofile))) == NULL)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create certificate information file %s - %s",
- infofile, strerror(errno));
- return (0);
- }
-
- cupsFilePrintf(fp, ".\n.\n.\n%s\n.\n%s\n%s\n",
- ServerName, ServerName, ServerAdmin);
- cupsFileClose(fp);
-
- cupsdLogMessage(CUPSD_LOG_INFO,
- "Generating SSL server key and certificate...");
-
- argv[0] = "openssl";
- argv[1] = "req";
- argv[2] = "-new";
- argv[3] = "-x509";
- argv[4] = "-keyout";
- argv[5] = ServerKey;
- argv[6] = "-out";
- argv[7] = ServerCertificate;
- argv[8] = "-days";
- argv[9] = "3650";
- argv[10] = "-nodes";
- argv[11] = NULL;
-
- cupsdLoadEnv(envp, MAX_ENV);
-
- infofd = open(infofile, O_RDONLY);
-
- if (!cupsdStartProcess(command, argv, envp, infofd, -1, -1, -1, -1, 1, NULL,
- NULL, &pid))
- {
- close(infofd);
- unlink(infofile);
- return (0);
- }
-
- close(infofd);
- unlink(infofile);
-
- while (waitpid(pid, &status, 0) < 0)
- if (errno != EINTR)
- {
- status = 1;
- break;
- }
-
- cupsdFinishProcess(pid, command, sizeof(command), NULL);
-
- if (status)
- {
- if (WIFEXITED(status))
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create SSL server key and certificate - "
- "the openssl command stopped with status %d!",
- WEXITSTATUS(status));
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create SSL server key and certificate - "
- "the openssl command crashed on signal %d!",
- WTERMSIG(status));
- }
- else
- {
- cupsdLogMessage(CUPSD_LOG_INFO, "Created SSL server key file \"%s\"...",
- ServerKey);
- cupsdLogMessage(CUPSD_LOG_INFO,
- "Created SSL server certificate file \"%s\"...",
- ServerCertificate);
- }
-
- return (!status);
-
-#elif defined(HAVE_GNUTLS)
- gnutls_x509_crt crt; /* Self-signed certificate */
- gnutls_x509_privkey key; /* Encryption key */
- cups_lang_t *language; /* Default language info */
- cups_file_t *fp; /* Key/cert file */
- unsigned char buffer[8192]; /* Buffer for x509 data */
- size_t bytes; /* Number of bytes of data */
- unsigned char serial[4]; /* Serial number buffer */
- time_t curtime; /* Current time */
- int result; /* Result of GNU TLS calls */
-
-
- /*
- * Create the encryption key...
- */
-
- cupsdLogMessage(CUPSD_LOG_INFO, "Generating SSL server key...");
-
- gnutls_x509_privkey_init(&key);
- gnutls_x509_privkey_generate(key, GNUTLS_PK_RSA, 2048, 0);
-
- /*
- * Save it...
- */
-
- bytes = sizeof(buffer);
-
- if ((result = gnutls_x509_privkey_export(key, GNUTLS_X509_FMT_PEM,
- buffer, &bytes)) < 0)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to export SSL server key - %s",
- gnutls_strerror(result));
- gnutls_x509_privkey_deinit(key);
- return (0);
- }
- else if ((fp = cupsFileOpen(ServerKey, "w")) != NULL)
- {
- cupsFileWrite(fp, (char *)buffer, bytes);
- cupsFileClose(fp);
-
- cupsdLogMessage(CUPSD_LOG_INFO, "Created SSL server key file \"%s\"...",
- ServerKey);
- }
- else
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create SSL server key file \"%s\" - %s",
- ServerKey, strerror(errno));
- gnutls_x509_privkey_deinit(key);
- return (0);
- }
-
- /*
- * Create the self-signed certificate...
- */
-
- cupsdLogMessage(CUPSD_LOG_INFO, "Generating self-signed SSL certificate...");
-
- language = cupsLangDefault();
- curtime = time(NULL);
- serial[0] = curtime >> 24;
- serial[1] = curtime >> 16;
- serial[2] = curtime >> 8;
- serial[3] = curtime;
-
- gnutls_x509_crt_init(&crt);
- if (strlen(language->language) == 5)
- gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_COUNTRY_NAME, 0,
- language->language + 3, 2);
- else
- gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_COUNTRY_NAME, 0,
- "US", 2);
- gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_COMMON_NAME, 0,
- ServerName, strlen(ServerName));
- gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_ORGANIZATION_NAME, 0,
- ServerName, strlen(ServerName));
- gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME,
- 0, "Unknown", 7);
- gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, 0,
- "Unknown", 7);
- gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_LOCALITY_NAME, 0,
- "Unknown", 7);
- gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_PKCS9_EMAIL, 0,
- ServerAdmin, strlen(ServerAdmin));
- gnutls_x509_crt_set_key(crt, key);
- gnutls_x509_crt_set_serial(crt, serial, sizeof(serial));
- gnutls_x509_crt_set_activation_time(crt, curtime);
- gnutls_x509_crt_set_expiration_time(crt, curtime + 10 * 365 * 86400);
- gnutls_x509_crt_set_ca_status(crt, 0);
- gnutls_x509_crt_set_subject_alternative_name(crt, GNUTLS_SAN_DNSNAME,
- ServerName);
- gnutls_x509_crt_set_key_purpose_oid(crt, GNUTLS_KP_TLS_WWW_SERVER, 0);
- gnutls_x509_crt_set_key_usage(crt, GNUTLS_KEY_KEY_ENCIPHERMENT);
- gnutls_x509_crt_set_version(crt, 3);
-
- bytes = sizeof(buffer);
- if (gnutls_x509_crt_get_key_id(crt, 0, buffer, &bytes) >= 0)
- gnutls_x509_crt_set_subject_key_id(crt, buffer, bytes);
-
- gnutls_x509_crt_sign(crt, crt, key);
-
- /*
- * Save it...
- */
-
- bytes = sizeof(buffer);
- if ((result = gnutls_x509_crt_export(crt, GNUTLS_X509_FMT_PEM,
- buffer, &bytes)) < 0)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to export SSL server certificate - %s",
- gnutls_strerror(result));
- else if ((fp = cupsFileOpen(ServerCertificate, "w")) != NULL)
- {
- cupsFileWrite(fp, (char *)buffer, bytes);
- cupsFileClose(fp);
-
- cupsdLogMessage(CUPSD_LOG_INFO,
- "Created SSL server certificate file \"%s\"...",
- ServerCertificate);
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create SSL server certificate file \"%s\" - %s",
- ServerCertificate, strerror(errno));
-
- /*
- * Cleanup...
- */
-
- gnutls_x509_crt_deinit(crt);
- gnutls_x509_privkey_deinit(key);
-
- return (1);
-
-#elif defined(HAVE_CDSASSL) && defined(HAVE_WAITPID)
- int pid, /* Process ID of command */
- status; /* Status of command */
- char command[1024], /* Command */
- *argv[4], /* Command-line arguments */
- *envp[MAX_ENV + 1], /* Environment variables */
- keychain[1024], /* Keychain argument */
- infofile[1024], /* Type-in information for cert */
- localname[1024], /* Local hostname */
- *servername; /* Name of server in cert */
- cups_file_t *fp; /* Seed/info file */
- int infofd; /* Info file descriptor */
-
-
- if (con->servername && isdigit(con->servername[0] & 255) && DNSSDHostName)
- {
- snprintf(localname, sizeof(localname), "%s.local", DNSSDHostName);
- servername = localname;
- }
- else
- servername = con->servername;
-
- /*
- * Run the "certtool" command to generate a self-signed certificate...
- */
-
- if (!cupsFileFind("certtool", getenv("PATH"), 1, command, sizeof(command)))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "No SSL certificate and certtool command not found!");
- return (0);
- }
-
- /*
- * Create a file with the certificate information fields...
- *
- * Note: This assumes that the default questions are asked by the certtool
- * command...
- */
-
- if ((fp = cupsTempFile2(infofile, sizeof(infofile))) == NULL)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create certificate information file %s - %s",
- infofile, strerror(errno));
- return (0);
- }
-
- cupsFilePrintf(fp,
- "%s\n" /* Enter key and certificate label */
- "r\n" /* Generate RSA key pair */
- "2048\n" /* Key size in bits */
- "y\n" /* OK (y = yes) */
- "b\n" /* Usage (b=signing/encryption) */
- "s\n" /* Sign with SHA1 */
- "y\n" /* OK (y = yes) */
- "%s\n" /* Common name */
- "\n" /* Country (default) */
- "\n" /* Organization (default) */
- "\n" /* Organizational unit (default) */
- "\n" /* State/Province (default) */
- "%s\n" /* Email address */
- "y\n", /* OK (y = yes) */
- servername, servername, ServerAdmin);
- cupsFileClose(fp);
-
- cupsdLogMessage(CUPSD_LOG_INFO,
- "Generating SSL server key and certificate...");
-
- snprintf(keychain, sizeof(keychain), "k=%s", ServerCertificate);
-
- argv[0] = "certtool";
- argv[1] = "c";
- argv[2] = keychain;
- argv[3] = NULL;
-
- cupsdLoadEnv(envp, MAX_ENV);
-
- infofd = open(infofile, O_RDONLY);
-
- if (!cupsdStartProcess(command, argv, envp, infofd, -1, -1, -1, -1, 1, NULL,
- NULL, &pid))
- {
- close(infofd);
- unlink(infofile);
- return (0);
- }
-
- close(infofd);
- unlink(infofile);
-
- while (waitpid(pid, &status, 0) < 0)
- if (errno != EINTR)
- {
- status = 1;
- break;
- }
-
- cupsdFinishProcess(pid, command, sizeof(command), NULL);
-
- if (status)
- {
- if (WIFEXITED(status))
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create SSL server key and certificate - "
- "the certtool command stopped with status %d!",
- WEXITSTATUS(status));
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create SSL server key and certificate - "
- "the certtool command crashed on signal %d!",
- WTERMSIG(status));
- }
- else
- {
- cupsdLogMessage(CUPSD_LOG_INFO,
- "Created SSL server certificate file \"%s\"...",
- ServerCertificate);
- }
-
- return (!status);
-
-#else
- return (0);
-#endif /* HAVE_LIBSSL && HAVE_WAITPID */
-}
-#endif /* HAVE_SSL */
-
-
/*
* 'pipe_command()' - Pipe the output of a command to the remote client.
*/
@@ -4625,9 +3643,9 @@ pipe_command(cupsd_client_t *con, /* I - Client connection */
*/
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "pipe_command(con=%p(%d), infile=%d, outfile=%p, "
- "command=\"%s\", options=\"%s\", root=%d)",
- con, con->http.fd, infile, outfile, command,
+ "[Client %d] pipe_command infile=%d, outfile=%p, "
+ "command=\"%s\", options=\"%s\", root=%d",
+ con->http.fd, infile, outfile, command,
options ? options : "(null)", root);
argv[0] = command;
@@ -5008,9 +4026,19 @@ valid_host(cupsd_client_t *con) /* I - Client connection */
* Check if the hostname is something.local (Bonjour); if so, allow it.
*/
- if ((end = strrchr(host, '.')) != NULL &&
- (!_cups_strcasecmp(end, ".local") || !_cups_strncasecmp(end, ".local:", 7) ||
- !_cups_strcasecmp(end, ".local.") || !_cups_strncasecmp(end, ".local.:", 8)))
+ if ((end = strrchr(host, '.')) != NULL && end > host &&
+ (!end[1] || end[1] == ':'))
+ {
+ /*
+ * "." on end, work back to second-to-last "."...
+ */
+ for (end --; end > host && *end != '.'; end --);
+ }
+
+ if (end && (!_cups_strcasecmp(end, ".local") ||
+ !_cups_strncasecmp(end, ".local:", 7) ||
+ !_cups_strcasecmp(end, ".local.") ||
+ !_cups_strncasecmp(end, ".local.:", 8)))
return (1);
#endif /* HAVE_DNSSD */
@@ -5140,8 +4168,8 @@ write_file(cupsd_client_t *con, /* I - Client connection */
con->file = open(filename, O_RDONLY);
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "write_file(con=%p(%d), code=%d, filename=\"%s\" (%d), "
- "type=\"%s\", filestats=%p)", con, con->http.fd,
+ "[Client %d] write_file code=%d, filename=\"%s\" (%d), "
+ "type=\"%s\", filestats=%p", con->http.fd,
code, filename, con->file, type ? type : "(null)", filestats);
if (con->file < 0)
@@ -5189,8 +4217,8 @@ static void
write_pipe(cupsd_client_t *con) /* I - Client connection */
{
cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "write_pipe(con=%p(%d)) CGI output on fd %d",
- con, con->http.fd, con->file);
+ "[Client %d] write_pipe CGI output on fd %d",
+ con->http.fd, con->file);
con->file_ready = 1;
@@ -5200,5 +4228,5 @@ write_pipe(cupsd_client_t *con) /* I - Client connection */
/*
- * End of "$Id: client.c 10338 2012-03-07 06:05:39Z mike $".
+ * End of "$Id: client.c 10455 2012-05-07 22:41:30Z mike $".
*/
diff --git a/scheduler/client.h b/scheduler/client.h
index 7beb4aab..17c05d02 100644
--- a/scheduler/client.h
+++ b/scheduler/client.h
@@ -1,5 +1,5 @@
/*
- * "$Id: client.h 9652 2011-03-25 21:25:38Z mike $"
+ * "$Id: client.h 10374 2012-03-22 20:30:20Z mike $"
*
* Client definitions for the CUPS scheduler.
*
@@ -32,8 +32,10 @@ struct cupsd_client_s
http_state_t operation; /* Request operation */
off_t bytes; /* Bytes transferred for this request */
int type; /* AuthType for username */
- char username[256], /* Username from Authorization: line */
- password[33], /* Password from Authorization: line */
+ char username[HTTP_MAX_VALUE],
+ /* Username from Authorization: line */
+ password[HTTP_MAX_VALUE],
+ /* Password from Authorization: line */
uri[HTTP_MAX_URI],
/* Localized URL/URI for GET/PUT */
*filename, /* Filename of output file */
@@ -131,7 +133,12 @@ extern void cupsdStopListening(void);
extern void cupsdUpdateCGI(void);
extern void cupsdWriteClient(cupsd_client_t *con);
+#ifdef HAVE_SSL
+extern int cupsdEndTLS(cupsd_client_t *con);
+extern int cupsdStartTLS(cupsd_client_t *con);
+#endif /* HAVE_SSL */
+
/*
- * End of "$Id: client.h 9652 2011-03-25 21:25:38Z mike $".
+ * End of "$Id: client.h 10374 2012-03-22 20:30:20Z mike $".
*/
diff --git a/scheduler/colorman.c b/scheduler/colorman.c
new file mode 100644
index 00000000..061c505a
--- /dev/null
+++ b/scheduler/colorman.c
@@ -0,0 +1,1509 @@
+/*
+ * "$Id: colorman.c 10514 2012-05-25 03:11:18Z mike $"
+ *
+ * Color management routines for the CUPS scheduler.
+ *
+ * Copyright 2007-2012 by Apple Inc.
+ * Copyright 1997-2007 by Easy Software Products, all rights reserved.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * Original DBUS/colord code is Copyright 2011 Red Hat, Inc.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Contents:
+ *
+ */
+
+/*
+ * Include necessary headers...
+ */
+
+#include "cupsd.h"
+#include <cups/ppd-private.h>
+
+#ifdef __APPLE__
+# include <ApplicationServices/ApplicationServices.h>
+extern CFUUIDRef ColorSyncCreateUUIDFromUInt32(unsigned id);
+# include <CoreFoundation/CoreFoundation.h>
+#elif defined(HAVE_DBUS)
+# include <dbus/dbus.h>
+
+/*
+ * Defines used by colord. See the reference docs for further details:
+ *
+ * http://colord.hughsie.com/api/ref-dbus.html
+ */
+
+# define COLORD_SCOPE_NORMAL "normal"
+ /* System scope */
+# define COLORD_SCOPE_TEMP "temp" /* Process scope */
+# define COLORD_SCOPE_DISK "disk" /* Lives forever, as stored in DB */
+
+# define COLORD_RELATION_SOFT "soft" /* Mapping is not default */
+# define COLORD_RELATION_HARD "hard" /* Explicitly mapped profile */
+
+# define COLORD_SPACE_RGB "rgb" /* RGB colorspace */
+# define COLORD_SPACE_CMYK "cmyk" /* CMYK colorspace */
+# define COLORD_SPACE_GRAY "gray" /* Gray colorspace */
+# define COLORD_SPACE_UNKNOWN "unknown"
+ /* Unknown colorspace */
+
+# define COLORD_MODE_PHYSICAL "physical"
+ /* Actual device */
+# define COLORD_MODE_VIRTUAL "virtual"
+ /* Virtual device with no hardware */
+
+# define COLORD_KIND_PRINTER "printer"
+ /* printing output device */
+
+# define COLORD_DBUS_MSG(p,m) dbus_message_new_method_call(\
+ "org.freedesktop.ColorManager", (p),\
+ "org.freedesktop.ColorManager", (m))
+ /* Macro to make new colord messages */
+# define COLORD_DBUS_PATH "/org/freedesktop/ColorManager"
+ /* Path for color management system */
+# define COLORD_DBUS_TIMEOUT 5000 /* Timeout for connecting to colord in ms */
+#endif /* __APPLE__ */
+
+
+/*
+ * Local globals...
+ */
+
+#if !defined(__APPLE__) && defined(HAVE_DBUS)
+static DBusConnection *colord_con = NULL;
+ /* DBUS connection for colord */
+#endif /* !__APPLE__ && HAVE_DBUS */
+
+
+/*
+ * Local functions...
+ */
+
+#ifdef __APPLE__
+static void apple_init_profile(ppd_file_t *ppd, cups_array_t *languages,
+ CFMutableDictionaryRef profile,
+ unsigned id, const char *name,
+ const char *text, const char *iccfile);
+static void apple_register_profiles(cupsd_printer_t *p);
+static void apple_unregister_profiles(cupsd_printer_t *p);
+
+#elif defined(HAVE_DBUS)
+static void colord_create_device(cupsd_printer_t *p, ppd_file_t *ppd,
+ cups_array_t *profiles,
+ const char *colorspace, char **format,
+ const char *relation, const char *scope);
+static void colord_create_profile(cups_array_t *profiles,
+ const char *printer_name,
+ const char *qualifier,
+ const char *colorspace,
+ char **format, const char *iccfile,
+ const char *scope);
+static void colord_delete_device(const char *device_id);
+static void colord_device_add_profile(const char *device_path,
+ const char *profile_path,
+ const char *relation);
+static void colord_dict_add_strings(DBusMessageIter *dict,
+ const char *key, const char *value);
+static char *colord_find_device(const char *device_id);
+static void colord_get_qualifier_format(ppd_file_t *ppd, char *format[3]);
+static void colord_register_printer(cupsd_printer_t *p);
+static void colord_unregister_printer(cupsd_printer_t *p);
+#endif /* __APPLE__ */
+
+
+/*
+ * 'cupsdRegisterColor()' - Register vendor color profiles in a PPD file.
+ */
+
+void
+cupsdRegisterColor(cupsd_printer_t *p) /* I - Printer */
+{
+#ifdef __APPLE__
+ if (!RunUser)
+ {
+ apple_unregister_profiles(p);
+ apple_register_profiles(p);
+ }
+
+#elif defined(HAVE_DBUS)
+ colord_unregister_printer(p);
+ colord_register_printer(p);
+#endif /* __APPLE__ */
+}
+
+
+/*
+ * 'cupsdStartColor()' - Initialize color management.
+ */
+
+void
+cupsdStartColor(void)
+{
+#if !defined(__APPLE__) && defined(HAVE_DBUS)
+ cupsd_printer_t *p; /* Current printer */
+
+
+ colord_con = dbus_bus_get(DBUS_BUS_SYSTEM, NULL);
+
+ for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
+ p;
+ p = (cupsd_printer_t *)cupsArrayNext(Printers))
+ cupsdRegisterColor(p);
+#endif /* !__APPLE__ && HAVE_DBUS */
+}
+
+
+/*
+ * 'cupsdStopColor()' - Shutdown color management.
+ */
+
+void
+cupsdStopColor(void)
+{
+#if !defined(__APPLE__) && defined(HAVE_DBUS)
+ dbus_connection_unref(colord_con);
+ colord_con = NULL;
+#endif /* !__APPLE__ && HAVE_DBUS */
+}
+
+
+/*
+ * 'cupsdUnregisterColor()' - Unregister vendor color profiles in a PPD file.
+ */
+
+void
+cupsdUnregisterColor(cupsd_printer_t *p)/* I - Printer */
+{
+#ifdef __APPLE__
+ if (!RunUser)
+ apple_unregister_profiles(p);
+
+#elif defined(HAVE_DBUS)
+ colord_unregister_printer(p);
+#endif /* __APPLE__ */
+}
+
+
+#ifdef __APPLE__
+/*
+ * 'apple_init_profile()' - Initialize a color profile.
+ */
+
+static void
+apple_init_profile(
+ ppd_file_t *ppd, /* I - PPD file */
+ cups_array_t *languages, /* I - Languages in the PPD file */
+ CFMutableDictionaryRef profile, /* I - Profile dictionary */
+ unsigned id, /* I - Profile ID */
+ const char *name, /* I - Profile name */
+ const char *text, /* I - Profile UI text */
+ const char *iccfile) /* I - ICC filename */
+{
+ CFURLRef url; /* URL for profile filename */
+ CFMutableDictionaryRef dict; /* Dictionary for name */
+ char *language; /* Current language */
+ ppd_attr_t *attr; /* Profile attribute */
+ CFStringRef cflang, /* Language string */
+ cftext; /* Localized text */
+
+
+ (void)id;
+
+ /*
+ * Build the profile name dictionary...
+ */
+
+ dict = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
+ &kCFTypeDictionaryKeyCallBacks,
+ &kCFTypeDictionaryValueCallBacks);
+ if (!dict)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to initialize profile \"%s\".",
+ iccfile);
+ return;
+ }
+
+ cftext = CFStringCreateWithCString(kCFAllocatorDefault, text,
+ kCFStringEncodingUTF8);
+
+ if (cftext)
+ {
+ CFDictionarySetValue(dict, CFSTR("en_US"), cftext);
+ CFRelease(cftext);
+ }
+
+ if (languages)
+ {
+ /*
+ * Find localized names for the color profiles...
+ */
+
+ cupsArraySave(ppd->sorted_attrs);
+
+ for (language = (char *)cupsArrayFirst(languages);
+ language;
+ language = (char *)cupsArrayNext(languages))
+ {
+ if (iccfile)
+ {
+ if ((attr = _ppdLocalizedAttr(ppd, "cupsICCProfile", name,
+ language)) == NULL)
+ attr = _ppdLocalizedAttr(ppd, "APTiogaProfile", name, language);
+ }
+ else
+ attr = _ppdLocalizedAttr(ppd, "ColorModel", name, language);
+
+ if (attr && attr->text[0])
+ {
+ cflang = CFStringCreateWithCString(kCFAllocatorDefault, language,
+ kCFStringEncodingUTF8);
+ cftext = CFStringCreateWithCString(kCFAllocatorDefault, attr->text,
+ kCFStringEncodingUTF8);
+
+ if (cflang && cftext)
+ CFDictionarySetValue(dict, cflang, cftext);
+
+ if (cflang)
+ CFRelease(cflang);
+
+ if (cftext)
+ CFRelease(cftext);
+ }
+ }
+
+ cupsArrayRestore(ppd->sorted_attrs);
+ }
+
+ /*
+ * Fill in the profile data...
+ */
+
+ if (iccfile)
+ {
+ url = CFURLCreateFromFileSystemRepresentation(kCFAllocatorDefault,
+ (const UInt8 *)iccfile,
+ strlen(iccfile), false);
+
+ if (url)
+ {
+ CFDictionarySetValue(profile, kColorSyncDeviceProfileURL, url);
+ CFRelease(url);
+ }
+ }
+
+ CFDictionarySetValue(profile, kColorSyncDeviceModeDescriptions, dict);
+ CFRelease(dict);
+}
+
+
+/*
+ * 'apple_register_profiles()' - Register color profiles for a printer.
+ */
+
+static void
+apple_register_profiles(
+ cupsd_printer_t *p) /* I - Printer */
+{
+ int i; /* Looping var */
+ char ppdfile[1024], /* PPD filename */
+ iccfile[1024], /* ICC filename */
+ selector[PPD_MAX_NAME];
+ /* Profile selection string */
+ ppd_file_t *ppd; /* PPD file */
+ ppd_attr_t *attr, /* Profile attributes */
+ *profileid_attr,/* cupsProfileID attribute */
+ *q1_attr, /* ColorModel (or other) qualifier */
+ *q2_attr, /* MediaType (or other) qualifier */
+ *q3_attr; /* Resolution (or other) qualifier */
+ char q_keyword[PPD_MAX_NAME];
+ /* Qualifier keyword */
+ const char *q1_choice, /* ColorModel (or other) choice */
+ *q2_choice, /* MediaType (or other) choice */
+ *q3_choice; /* Resolution (or other) choice */
+ ppd_option_t *cm_option; /* Color model option */
+ ppd_choice_t *cm_choice; /* Color model choice */
+ int num_profiles; /* Number of profiles */
+ OSStatus error = 0; /* Last error */
+ unsigned device_id, /* Printer device ID */
+ profile_id = 0, /* Profile ID */
+ default_profile_id = 0;
+ /* Default profile ID */
+ CFMutableDictionaryRef device_name; /* Printer device name dictionary */
+ CFStringRef printer_name; /* Printer name string */
+ cups_array_t *languages; /* Languages array */
+ CFMutableDictionaryRef profiles, /* Dictionary of profiles */
+ profile; /* Current profile info dictionary */
+ CFStringRef dict_key; /* Key in factory profile dictionary */
+
+
+ /*
+ * Make sure ColorSync is available...
+ */
+
+ if (ColorSyncRegisterDevice == NULL)
+ return;
+
+ /*
+ * Try opening the PPD file for this printer...
+ */
+
+ snprintf(ppdfile, sizeof(ppdfile), "%s/ppd/%s.ppd", ServerRoot, p->name);
+ if ((ppd = _ppdOpenFile(ppdfile, _PPD_LOCALIZATION_ICC_PROFILES)) == NULL)
+ return;
+
+ /*
+ * See if we have any profiles...
+ */
+
+ for (num_profiles = 0, attr = ppdFindAttr(ppd, "cupsICCProfile", NULL);
+ attr;
+ attr = ppdFindNextAttr(ppd, "cupsICCProfile", NULL))
+ if (attr->spec[0] && attr->value && attr->value[0])
+ {
+ if (attr->value[0] != '/')
+ snprintf(iccfile, sizeof(iccfile), "%s/profiles/%s", DataDir,
+ attr->value);
+ else
+ strlcpy(iccfile, attr->value, sizeof(iccfile));
+
+ if (access(iccfile, 0))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "%s: ICC Profile \"%s\" does not exist.", p->name,
+ iccfile);
+ cupsdSetPrinterReasons(p, "+cups-missing-filter-warning");
+ continue;
+ }
+
+ num_profiles ++;
+ }
+
+ /*
+ * Create a dictionary for the factory profiles...
+ */
+
+ profiles = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
+ &kCFTypeDictionaryKeyCallBacks,
+ &kCFTypeDictionaryValueCallBacks);
+ if (!profiles)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to allocate memory for factory profiles.");
+ ppdClose(ppd);
+ return;
+ }
+
+ /*
+ * If we have profiles, add them...
+ */
+
+ if (num_profiles > 0)
+ {
+ /*
+ * For CUPS PPDs, figure out the default profile selector values...
+ */
+
+ if ((attr = ppdFindAttr(ppd, "cupsICCQualifier1", NULL)) != NULL &&
+ attr->value && attr->value[0])
+ {
+ snprintf(q_keyword, sizeof(q_keyword), "Default%s", attr->value);
+ q1_attr = ppdFindAttr(ppd, q_keyword, NULL);
+ }
+ else if ((q1_attr = ppdFindAttr(ppd, "DefaultColorModel", NULL)) == NULL)
+ q1_attr = ppdFindAttr(ppd, "DefaultColorSpace", NULL);
+
+ if (q1_attr && q1_attr->value && q1_attr->value[0])
+ q1_choice = q1_attr->value;
+ else
+ q1_choice = "";
+
+ if ((attr = ppdFindAttr(ppd, "cupsICCQualifier2", NULL)) != NULL &&
+ attr->value && attr->value[0])
+ {
+ snprintf(q_keyword, sizeof(q_keyword), "Default%s", attr->value);
+ q2_attr = ppdFindAttr(ppd, q_keyword, NULL);
+ }
+ else
+ q2_attr = ppdFindAttr(ppd, "DefaultMediaType", NULL);
+
+ if (q2_attr && q2_attr->value && q2_attr->value[0])
+ q2_choice = q2_attr->value;
+ else
+ q2_choice = NULL;
+
+ if ((attr = ppdFindAttr(ppd, "cupsICCQualifier3", NULL)) != NULL &&
+ attr->value && attr->value[0])
+ {
+ snprintf(q_keyword, sizeof(q_keyword), "Default%s", attr->value);
+ q3_attr = ppdFindAttr(ppd, q_keyword, NULL);
+ }
+ else
+ q3_attr = ppdFindAttr(ppd, "DefaultResolution", NULL);
+
+ if (q3_attr && q3_attr->value && q3_attr->value[0])
+ q3_choice = q3_attr->value;
+ else
+ q3_choice = NULL;
+
+ /*
+ * Loop through the profiles listed in the PPD...
+ */
+
+ languages = _ppdGetLanguages(ppd);
+
+ for (attr = ppdFindAttr(ppd, "cupsICCProfile", NULL);
+ attr;
+ attr = ppdFindNextAttr(ppd, "cupsICCProfile", NULL))
+ if (attr->spec[0] && attr->value && attr->value[0])
+ {
+ /*
+ * Add this profile...
+ */
+
+ if (attr->value[0] != '/')
+ snprintf(iccfile, sizeof(iccfile), "%s/profiles/%s", DataDir,
+ attr->value);
+ else
+ strlcpy(iccfile, attr->value, sizeof(iccfile));
+
+ if (_cupsFileCheck(iccfile, _CUPS_FILE_CHECK_FILE, !RunUser,
+ cupsdLogFCMessage, p))
+ continue;
+
+ cupsArraySave(ppd->sorted_attrs);
+
+ if ((profileid_attr = ppdFindAttr(ppd, "cupsProfileID",
+ attr->spec)) != NULL &&
+ profileid_attr->value && isdigit(profileid_attr->value[0] & 255))
+ profile_id = (unsigned)strtoul(profileid_attr->value, NULL, 10);
+ else
+ profile_id = _ppdHashName(attr->spec);
+
+ cupsArrayRestore(ppd->sorted_attrs);
+
+ profile = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
+ &kCFTypeDictionaryKeyCallBacks,
+ &kCFTypeDictionaryValueCallBacks);
+ if (!profile)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to allocate memory for color profile.");
+ CFRelease(profiles);
+ ppdClose(ppd);
+ return;
+ }
+
+ apple_init_profile(ppd, languages, profile, profile_id, attr->spec,
+ attr->text[0] ? attr->text : attr->spec, iccfile);
+
+ dict_key = CFStringCreateWithFormat(kCFAllocatorDefault, NULL,
+ CFSTR("%u"), profile_id);
+ if (dict_key)
+ {
+ CFDictionarySetValue(profiles, dict_key, profile);
+ CFRelease(dict_key);
+ }
+
+ CFRelease(profile);
+
+ /*
+ * See if this is the default profile...
+ */
+
+ if (!default_profile_id && q1_choice && q2_choice && q3_choice)
+ {
+ snprintf(selector, sizeof(selector), "%s.%s.%s", q1_choice, q2_choice,
+ q3_choice);
+ if (!strcmp(selector, attr->spec))
+ default_profile_id = profile_id;
+ }
+
+ if (!default_profile_id && q1_choice && q2_choice)
+ {
+ snprintf(selector, sizeof(selector), "%s.%s.", q1_choice, q2_choice);
+ if (!strcmp(selector, attr->spec))
+ default_profile_id = profile_id;
+ }
+
+ if (!default_profile_id && q1_choice && q3_choice)
+ {
+ snprintf(selector, sizeof(selector), "%s..%s", q1_choice, q3_choice);
+ if (!strcmp(selector, attr->spec))
+ default_profile_id = profile_id;
+ }
+
+ if (!default_profile_id && q1_choice)
+ {
+ snprintf(selector, sizeof(selector), "%s..", q1_choice);
+ if (!strcmp(selector, attr->spec))
+ default_profile_id = profile_id;
+ }
+
+ if (!default_profile_id && q2_choice && q3_choice)
+ {
+ snprintf(selector, sizeof(selector), ".%s.%s", q2_choice, q3_choice);
+ if (!strcmp(selector, attr->spec))
+ default_profile_id = profile_id;
+ }
+
+ if (!default_profile_id && q2_choice)
+ {
+ snprintf(selector, sizeof(selector), ".%s.", q2_choice);
+ if (!strcmp(selector, attr->spec))
+ default_profile_id = profile_id;
+ }
+
+ if (!default_profile_id && q3_choice)
+ {
+ snprintf(selector, sizeof(selector), "..%s", q3_choice);
+ if (!strcmp(selector, attr->spec))
+ default_profile_id = profile_id;
+ }
+ }
+
+ _ppdFreeLanguages(languages);
+ }
+ else if ((cm_option = ppdFindOption(ppd, "ColorModel")) != NULL)
+ {
+ /*
+ * Extract profiles from ColorModel option...
+ */
+
+ const char *profile_name; /* Name of generic profile */
+
+
+ num_profiles = cm_option->num_choices;
+
+ for (i = cm_option->num_choices, cm_choice = cm_option->choices;
+ i > 0;
+ i --, cm_choice ++)
+ {
+ if (!strcmp(cm_choice->choice, "Gray") ||
+ !strcmp(cm_choice->choice, "Black"))
+ profile_name = "Gray";
+ else if (!strcmp(cm_choice->choice, "RGB") ||
+ !strcmp(cm_choice->choice, "CMY"))
+ profile_name = "RGB";
+ else if (!strcmp(cm_choice->choice, "CMYK") ||
+ !strcmp(cm_choice->choice, "KCMY"))
+ profile_name = "CMYK";
+ else
+ profile_name = "DeviceN";
+
+ snprintf(selector, sizeof(selector), "%s..", profile_name);
+ profile_id = _ppdHashName(selector);
+
+ profile = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
+ &kCFTypeDictionaryKeyCallBacks,
+ &kCFTypeDictionaryValueCallBacks);
+ if (!profile)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to allocate memory for color profile.");
+ CFRelease(profiles);
+ ppdClose(ppd);
+ return;
+ }
+
+ apple_init_profile(ppd, NULL, profile, profile_id, cm_choice->choice,
+ cm_choice->text, NULL);
+
+ dict_key = CFStringCreateWithFormat(kCFAllocatorDefault, NULL,
+ CFSTR("%u"), profile_id);
+ if (dict_key)
+ {
+ CFDictionarySetValue(profiles, dict_key, profile);
+ CFRelease(dict_key);
+ }
+
+ CFRelease(profile);
+
+ if (cm_choice->marked)
+ default_profile_id = profile_id;
+ }
+ }
+ else
+ {
+ /*
+ * Use the default colorspace...
+ */
+
+ attr = ppdFindAttr(ppd, "DefaultColorSpace", NULL);
+
+ num_profiles = (attr && ppd->colorspace == PPD_CS_GRAY) ? 1 : 2;
+
+ /*
+ * Add the grayscale profile first. We always have a grayscale profile.
+ */
+
+ profile = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
+ &kCFTypeDictionaryKeyCallBacks,
+ &kCFTypeDictionaryValueCallBacks);
+
+ if (!profile)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to allocate memory for color profile.");
+ CFRelease(profiles);
+ ppdClose(ppd);
+ return;
+ }
+
+ profile_id = _ppdHashName("Gray..");
+ apple_init_profile(ppd, NULL, profile, profile_id, "Gray", "Gray", NULL);
+
+ dict_key = CFStringCreateWithFormat(kCFAllocatorDefault, NULL, CFSTR("%u"),
+ profile_id);
+ if (dict_key)
+ {
+ CFDictionarySetValue(profiles, dict_key, profile);
+ CFRelease(dict_key);
+ }
+
+ CFRelease(profile);
+
+ /*
+ * Then add the RGB/CMYK/DeviceN color profile...
+ */
+
+ profile = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
+ &kCFTypeDictionaryKeyCallBacks,
+ &kCFTypeDictionaryValueCallBacks);
+
+ if (!profile)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to allocate memory for color profile.");
+ CFRelease(profiles);
+ ppdClose(ppd);
+ return;
+ }
+
+ switch (ppd->colorspace)
+ {
+ default :
+ case PPD_CS_RGB :
+ case PPD_CS_CMY :
+ profile_id = _ppdHashName("RGB..");
+ apple_init_profile(ppd, NULL, profile, profile_id, "RGB", "RGB",
+ NULL);
+ break;
+
+ case PPD_CS_RGBK :
+ case PPD_CS_CMYK :
+ profile_id = _ppdHashName("CMYK..");
+ apple_init_profile(ppd, NULL, profile, profile_id, "CMYK", "CMYK",
+ NULL);
+ break;
+
+ case PPD_CS_GRAY :
+ if (attr)
+ break;
+
+ case PPD_CS_N :
+ profile_id = _ppdHashName("DeviceN..");
+ apple_init_profile(ppd, NULL, profile, profile_id, "DeviceN",
+ "DeviceN", NULL);
+ break;
+ }
+
+ if (CFDictionaryGetCount(profile) > 0)
+ {
+ dict_key = CFStringCreateWithFormat(kCFAllocatorDefault, NULL,
+ CFSTR("%u"), profile_id);
+ if (dict_key)
+ {
+ CFDictionarySetValue(profiles, dict_key, profile);
+ CFRelease(dict_key);
+ }
+ }
+
+ CFRelease(profile);
+ }
+
+ if (num_profiles > 0)
+ {
+ /*
+ * Make sure we have a default profile ID...
+ */
+
+ if (!default_profile_id)
+ default_profile_id = profile_id; /* Last profile */
+
+ dict_key = CFStringCreateWithFormat(kCFAllocatorDefault, NULL, CFSTR("%u"),
+ default_profile_id);
+ if (dict_key)
+ {
+ CFDictionarySetValue(profiles, kColorSyncDeviceDefaultProfileID,
+ dict_key);
+ CFRelease(dict_key);
+ }
+
+ /*
+ * Get the device ID hash and pathelogical name dictionary.
+ */
+
+ cupsdLogMessage(CUPSD_LOG_INFO, "Registering ICC color profiles for \"%s\"",
+ p->name);
+
+ device_id = _ppdHashName(p->name);
+ device_name = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
+ &kCFTypeDictionaryKeyCallBacks,
+ &kCFTypeDictionaryValueCallBacks);
+ printer_name = CFStringCreateWithCString(kCFAllocatorDefault,
+ p->name, kCFStringEncodingUTF8);
+
+ if (device_name && printer_name)
+ {
+ /*
+ * Register the device with ColorSync...
+ */
+
+ CFTypeRef deviceDictKeys[] =
+ { /* Device keys */
+ kColorSyncDeviceDescriptions,
+ kColorSyncFactoryProfiles,
+ kColorSyncDeviceUserScope,
+ kColorSyncDeviceHostScope
+ };
+ CFTypeRef deviceDictVals[] =
+ { /* Device values */
+ device_name,
+ profiles,
+ kCFPreferencesAnyUser,
+ kCFPreferencesCurrentHost
+ };
+ CFDictionaryRef deviceDict; /* Device dictionary */
+ CFUUIDRef deviceUUID; /* Device UUID */
+
+ CFDictionarySetValue(device_name, CFSTR("en_US"), printer_name);
+
+ deviceDict = CFDictionaryCreate(kCFAllocatorDefault,
+ (const void **)deviceDictKeys,
+ (const void **)deviceDictVals,
+ sizeof(deviceDictKeys) /
+ sizeof(deviceDictKeys[0]),
+ &kCFTypeDictionaryKeyCallBacks,
+ &kCFTypeDictionaryValueCallBacks);
+ deviceUUID = ColorSyncCreateUUIDFromUInt32(device_id);
+
+ if (!deviceDict || !deviceUUID ||
+ !ColorSyncRegisterDevice(kColorSyncPrinterDeviceClass, deviceUUID,
+ deviceDict))
+ error = 1001;
+
+ if (deviceUUID)
+ CFRelease(deviceUUID);
+
+ if (deviceDict)
+ CFRelease(deviceDict);
+ }
+ else
+ error = 1000;
+
+ /*
+ * Clean up...
+ */
+
+ if (error != noErr)
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to register ICC color profiles for \"%s\": %d",
+ p->name, (int)error);
+
+ if (printer_name)
+ CFRelease(printer_name);
+
+ if (device_name)
+ CFRelease(device_name);
+ }
+
+ /*
+ * Free any memory we used...
+ */
+
+ CFRelease(profiles);
+
+ ppdClose(ppd);
+}
+
+
+/*
+ * 'apple_unregister_profiles()' - Remove color profiles for the specified
+ * printer.
+ */
+
+static void
+apple_unregister_profiles(
+ cupsd_printer_t *p) /* I - Printer */
+{
+ /*
+ * Make sure ColorSync is available...
+ */
+
+ if (ColorSyncUnregisterDevice != NULL)
+ {
+ CFUUIDRef deviceUUID; /* Device UUID */
+
+ deviceUUID = ColorSyncCreateUUIDFromUInt32(_ppdHashName(p->name));
+ if (deviceUUID)
+ {
+ ColorSyncUnregisterDevice(kColorSyncPrinterDeviceClass, deviceUUID);
+ CFRelease(deviceUUID);
+ }
+ }
+}
+
+
+#elif defined(HAVE_DBUS)
+/*
+ * 'colord_create_device()' - Create a device and register profiles.
+ */
+
+static void
+colord_create_device(
+ cupsd_printer_t *p, /* I - Printer */
+ ppd_file_t *ppd, /* I - PPD file */
+ cups_array_t *profiles, /* I - Profiles array */
+ const char *colorspace, /* I - Device colorspace, e.g. 'rgb' */
+ char **format, /* I - Device qualifier format */
+ const char *relation, /* I - Profile relation, either 'soft'
+ or 'hard' */
+ const char *scope) /* I - The scope of the device, e.g.
+ 'normal', 'temp' or 'disk' */
+{
+ DBusMessage *message = NULL; /* D-Bus request */
+ DBusMessage *reply = NULL; /* D-Bus reply */
+ DBusMessageIter args; /* D-Bus method arguments */
+ DBusMessageIter dict; /* D-Bus method arguments */
+ DBusError error; /* D-Bus error */
+ const char *device_path; /* Device object path */
+ const char *profile_path; /* Profile path */
+ char *default_profile_path = NULL;
+ /* Default profile path */
+ char device_id[1024]; /* Device ID as understood by colord */
+ char format_str[1024]; /* Qualifier format as a string */
+
+
+ /*
+ * Create the device...
+ */
+
+ snprintf(device_id, sizeof(device_id), "cups-%s", p->name);
+ device_path = device_id;
+
+ message = COLORD_DBUS_MSG(COLORD_DBUS_PATH, "CreateDevice");
+
+ dbus_message_iter_init_append(message, &args);
+ dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &device_path);
+ dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &scope);
+
+ snprintf(format_str, sizeof(format_str), "%s.%s.%s", format[0], format[1],
+ format[2]);
+
+ dbus_message_iter_open_container(&args, DBUS_TYPE_ARRAY, "{ss}", &dict);
+ colord_dict_add_strings(&dict, "Colorspace", colorspace);
+ colord_dict_add_strings(&dict, "Mode", COLORD_MODE_PHYSICAL);
+ if (ppd->manufacturer)
+ colord_dict_add_strings(&dict, "Vendor", ppd->manufacturer);
+ if (ppd->modelname)
+ colord_dict_add_strings(&dict, "Model", ppd->modelname);
+ if (p->sanitized_device_uri)
+ colord_dict_add_strings(&dict, "Serial", p->sanitized_device_uri);
+ colord_dict_add_strings(&dict, "Format", format_str);
+ colord_dict_add_strings(&dict, "Kind", COLORD_KIND_PRINTER);
+ dbus_message_iter_close_container(&args, &dict);
+
+ /*
+ * Send the CreateDevice request synchronously...
+ */
+
+ dbus_error_init(&error);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Calling CreateDevice(%s,%s)", device_id,
+ scope);
+ reply = dbus_connection_send_with_reply_and_block(colord_con, message,
+ COLORD_DBUS_TIMEOUT,
+ &error);
+ if (!reply)
+ {
+ cupsdLogMessage(CUPSD_LOG_WARN, "CreateDevice failed: %s:%s", error.name,
+ error.message);
+ dbus_error_free(&error);
+ goto out;
+ }
+
+ /*
+ * Get reply data...
+ */
+
+ dbus_message_iter_init(reply, &args);
+ if (dbus_message_iter_get_arg_type(&args) != DBUS_TYPE_OBJECT_PATH)
+ {
+ cupsdLogMessage(CUPSD_LOG_WARN,
+ "CreateDevice failed: Incorrect reply type.");
+ goto out;
+ }
+
+ dbus_message_iter_get_basic(&args, &device_path);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Created device \"%s\".", device_path);
+
+ /*
+ * Add profiles...
+ */
+
+ for (profile_path = cupsArrayFirst(profiles);
+ profile_path;
+ profile_path = cupsArrayNext(profiles))
+ {
+ colord_device_add_profile(device_path, profile_path, relation);
+ }
+
+out:
+
+ if (default_profile_path)
+ free(default_profile_path);
+
+ if (message)
+ dbus_message_unref(message);
+
+ if (reply)
+ dbus_message_unref(reply);
+}
+
+
+/*
+ * 'colord_create_profile()' - Create a color profile for a printer.
+ */
+
+static void
+colord_create_profile(
+ cups_array_t *profiles, /* I - Profiles array */
+ const char *printer_name, /* I - Printer name */
+ const char *qualifier, /* I - Profile qualifier */
+ const char *colorspace, /* I - Profile colorspace */
+ char **format, /* I - Profile qualifier format */
+ const char *iccfile, /* I - ICC filename */
+ const char *scope) /* I - The scope of the profile, e.g.
+ 'normal', 'temp' or 'disk' */
+{
+ DBusMessage *message = NULL; /* D-Bus request */
+ DBusMessage *reply = NULL; /* D-Bus reply */
+ DBusMessageIter args; /* D-Bus method arguments */
+ DBusMessageIter dict; /* D-Bus method arguments */
+ DBusError error; /* D-Bus error */
+ char *idstr; /* Profile ID string */
+ size_t idstrlen; /* Profile ID allocated length */
+ const char *profile_path; /* Device object path */
+ char format_str[1024]; /* Qualifier format as a string */
+
+
+ /*
+ * Create the profile...
+ */
+
+ message = COLORD_DBUS_MSG(COLORD_DBUS_PATH, "CreateProfile");
+
+ idstrlen = strlen(printer_name) + 1 + strlen(qualifier) + 1;
+ if ((idstr = malloc(idstrlen)) == NULL)
+ goto out;
+ snprintf(idstr, idstrlen, "%s-%s", printer_name, qualifier);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Using profile ID \"%s\".", idstr);
+
+ dbus_message_iter_init_append(message, &args);
+ dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &idstr);
+ dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &scope);
+
+ snprintf(format_str, sizeof(format_str), "%s.%s.%s", format[0], format[1],
+ format[2]);
+
+ dbus_message_iter_open_container(&args, DBUS_TYPE_ARRAY, "{ss}", &dict);
+ colord_dict_add_strings(&dict, "Qualifier", qualifier);
+ colord_dict_add_strings(&dict, "Format", format_str);
+ colord_dict_add_strings(&dict, "Colorspace", colorspace);
+ if (iccfile)
+ colord_dict_add_strings(&dict, "Filename", iccfile);
+ dbus_message_iter_close_container(&args, &dict);
+
+ /*
+ * Send the CreateProfile request synchronously...
+ */
+
+ dbus_error_init(&error);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Calling CreateProfile(%s,%s)", idstr,
+ scope);
+ reply = dbus_connection_send_with_reply_and_block(colord_con, message,
+ COLORD_DBUS_TIMEOUT,
+ &error);
+ if (!reply)
+ {
+ cupsdLogMessage(CUPSD_LOG_WARN, "CreateProfile failed: %s:%s", error.name,
+ error.message);
+ dbus_error_free(&error);
+ goto out;
+ }
+
+ /*
+ * Get reply data...
+ */
+
+ dbus_message_iter_init(reply, &args);
+ if (dbus_message_iter_get_arg_type(&args) != DBUS_TYPE_OBJECT_PATH)
+ {
+ cupsdLogMessage(CUPSD_LOG_WARN,
+ "CreateProfile failed: Incorrect reply type.");
+ goto out;
+ }
+
+ dbus_message_iter_get_basic(&args, &profile_path);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Created profile \"%s\".", profile_path);
+ cupsArrayAdd(profiles, strdup(profile_path));
+
+out:
+
+ if (message)
+ dbus_message_unref(message);
+
+ if (reply)
+ dbus_message_unref(reply);
+
+ if (idstr)
+ free(idstr);
+}
+
+
+/*
+ * 'colord_delete_device()' - Delete a device
+ */
+
+static void
+colord_delete_device(
+ const char *device_id) /* I - Device ID string */
+{
+ DBusMessage *message = NULL; /* D-Bus request */
+ DBusMessage *reply = NULL; /* D-Bus reply */
+ DBusMessageIter args; /* D-Bus method arguments */
+ DBusError error; /* D-Bus error */
+ char *device_path; /* Device object path */
+
+
+ /*
+ * Find the device...
+ */
+
+ if ((device_path = colord_find_device(device_id)) == NULL)
+ goto out;
+
+ /*
+ * Delete the device...
+ */
+
+ message = COLORD_DBUS_MSG(COLORD_DBUS_PATH, "DeleteDevice");
+
+ dbus_message_iter_init_append(message, &args);
+ dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &device_id);
+
+ /*
+ * Send the DeleteDevice request synchronously...
+ */
+
+ dbus_error_init(&error);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Calling DeleteDevice(%s)", device_id);
+ reply = dbus_connection_send_with_reply_and_block(colord_con, message,
+ COLORD_DBUS_TIMEOUT,
+ &error);
+ if (!reply)
+ {
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "DeleteDevice failed: %s:%s", error.name,
+ error.message);
+ dbus_error_free(&error);
+ goto out;
+ }
+
+out:
+
+ if (device_path)
+ free(device_path);
+
+ if (message)
+ dbus_message_unref(message);
+
+ if (reply)
+ dbus_message_unref(reply);
+}
+
+
+/*
+ * 'colord_device_add_profile()' - Assign a profile to a device.
+ */
+
+static void
+colord_device_add_profile(
+ const char *device_path, /* I - Device object path */
+ const char *profile_path, /* I - Profile object path */
+ const char *relation) /* I - Device relation, either
+ 'soft' or 'hard' */
+{
+ DBusMessage *message = NULL; /* D-Bus request */
+ DBusMessage *reply = NULL; /* D-Bus reply */
+ DBusMessageIter args; /* D-Bus method arguments */
+ DBusError error; /* D-Bus error */
+
+
+ message = COLORD_DBUS_MSG(device_path, "AddProfile");
+
+ dbus_message_iter_init_append(message, &args);
+ dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &relation);
+ dbus_message_iter_append_basic(&args, DBUS_TYPE_OBJECT_PATH, &profile_path);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Calling %s:AddProfile(%s) [%s]",
+ device_path, profile_path, relation);
+
+ /*
+ * Send the AddProfile request synchronously...
+ */
+
+ dbus_error_init(&error);
+ reply = dbus_connection_send_with_reply_and_block(colord_con, message,
+ COLORD_DBUS_TIMEOUT,
+ &error);
+ if (!reply)
+ {
+ cupsdLogMessage(CUPSD_LOG_WARN, "AddProfile failed: %s:%s", error.name,
+ error.message);
+ dbus_error_free(&error);
+ goto out;
+ }
+
+out:
+
+ if (message)
+ dbus_message_unref(message);
+
+ if (reply)
+ dbus_message_unref(reply);
+}
+
+
+/*
+ * 'colord_dict_add_strings()' - Add two strings to a dictionary.
+ */
+
+static void
+colord_dict_add_strings(
+ DBusMessageIter *dict, /* I - Dictionary */
+ const char *key, /* I - Key string */
+ const char *value) /* I - Value string */
+{
+ DBusMessageIter entry; /* Entry to add */
+
+
+ dbus_message_iter_open_container(dict, DBUS_TYPE_DICT_ENTRY, NULL, &entry);
+ dbus_message_iter_append_basic(&entry, DBUS_TYPE_STRING, &key);
+ dbus_message_iter_append_basic(&entry, DBUS_TYPE_STRING, &value);
+ dbus_message_iter_close_container(dict, &entry);
+}
+
+
+/*
+ * 'colord_find_device()' - Finds a device
+ */
+
+static char * /* O - Device path or NULL */
+colord_find_device(
+ const char *device_id) /* I - Device ID string */
+{
+ DBusMessage *message = NULL; /* D-Bus request */
+ DBusMessage *reply = NULL; /* D-Bus reply */
+ DBusMessageIter args; /* D-Bus method arguments */
+ DBusError error; /* D-Bus error */
+ const char *device_path_tmp; /* Device object path */
+ char *device_path = NULL; /* Device object path */
+
+
+ message = COLORD_DBUS_MSG(COLORD_DBUS_PATH, "FindDeviceById");
+
+ dbus_message_iter_init_append(message, &args);
+ dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &device_id);
+
+ /*
+ * Send the FindDeviceById request synchronously...
+ */
+
+ dbus_error_init(&error);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Calling FindDeviceById(%s)", device_id);
+ reply = dbus_connection_send_with_reply_and_block(colord_con, message,
+ COLORD_DBUS_TIMEOUT,
+ &error);
+ if (!reply)
+ {
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "FindDeviceById failed: %s:%s",
+ error.name, error.message);
+ dbus_error_free(&error);
+ goto out;
+ }
+
+ /*
+ * Get reply data...
+ */
+
+ dbus_message_iter_init(reply, &args);
+ if (dbus_message_iter_get_arg_type(&args) != DBUS_TYPE_OBJECT_PATH)
+ {
+ cupsdLogMessage(CUPSD_LOG_WARN,
+ "FindDeviceById failed: Incorrect reply type.");
+ goto out;
+ }
+
+ dbus_message_iter_get_basic(&args, &device_path_tmp);
+ if (device_path_tmp)
+ device_path = strdup(device_path_tmp);
+
+out:
+
+ if (message)
+ dbus_message_unref(message);
+
+ if (reply)
+ dbus_message_unref(reply);
+
+ return (device_path);
+}
+
+
+/*
+ * 'colord_get_qualifier_format()' - Get the qualifier format.
+ *
+ * Note: Returns a value of "ColorSpace.MediaType.Resolution" by default.
+ */
+
+static void
+colord_get_qualifier_format(
+ ppd_file_t *ppd, /* I - PPD file data */
+ char *format[3]) /* I - Format tuple */
+{
+ const char *tmp; /* Temporary string */
+ ppd_attr_t *attr; /* Profile attributes */
+
+
+ /*
+ * Get 1st section...
+ */
+
+ if ((attr = ppdFindAttr(ppd, "cupsICCQualifier1", NULL)) != NULL)
+ tmp = attr->value;
+ else if (ppdFindAttr(ppd, "DefaultColorModel", NULL))
+ tmp = "ColorModel";
+ else if (ppdFindAttr(ppd, "DefaultColorSpace", NULL))
+ tmp = "ColorSpace";
+ else
+ tmp = "";
+
+ format[0] = strdup(tmp);
+
+ /*
+ * Get 2nd section...
+ */
+
+ if ((attr = ppdFindAttr(ppd, "cupsICCQualifier2", NULL)) != NULL)
+ tmp = attr->value;
+ else
+ tmp = "MediaType";
+
+ format[1] = strdup(tmp);
+
+ /*
+ * Get 3rd section...
+ */
+
+ if ((attr = ppdFindAttr(ppd, "cupsICCQualifier3", NULL)) != NULL)
+ tmp = attr->value;
+ else
+ tmp = "Resolution";
+
+ format[2] = strdup(tmp);
+}
+
+
+/*
+ * 'colord_register_printer()' - Register profiles for a printer.
+ */
+
+static void
+colord_register_printer(
+ cupsd_printer_t *p) /* I - printer */
+{
+ char ppdfile[1024], /* PPD filename */
+ iccfile[1024]; /* ICC filename */
+ ppd_file_t *ppd; /* PPD file */
+ cups_array_t *profiles; /* Profile paths array */
+ ppd_attr_t *attr; /* Profile attributes */
+ const char *device_colorspace; /* Device colorspace */
+ char *format[3]; /* Qualifier format tuple */
+
+
+ /*
+ * Ensure we have a D-Bus connection...
+ */
+
+ if (!colord_con)
+ return;
+
+ /*
+ * Try opening the PPD file for this printer...
+ */
+
+ snprintf(ppdfile, sizeof(ppdfile), "%s/ppd/%s.ppd", ServerRoot, p->name);
+ if ((ppd = _ppdOpenFile(ppdfile, _PPD_LOCALIZATION_ICC_PROFILES)) == NULL)
+ return;
+
+ /*
+ * Find out the qualifier format
+ */
+
+ colord_get_qualifier_format(ppd, format);
+
+ /*
+ * See if we have any embedded profiles...
+ */
+
+ profiles = cupsArrayNew3(NULL, NULL, NULL, 0, (cups_acopy_func_t)strdup,
+ (cups_afree_func_t)free);
+ for (attr = ppdFindAttr(ppd, "cupsICCProfile", NULL);
+ attr;
+ attr = ppdFindNextAttr(ppd, "cupsICCProfile", NULL))
+ if (attr->spec[0] && attr->value && attr->value[0])
+ {
+ if (attr->value[0] != '/')
+ snprintf(iccfile, sizeof(iccfile), "%s/profiles/%s", DataDir,
+ attr->value);
+ else
+ strlcpy(iccfile, attr->value, sizeof(iccfile));
+
+ if (_cupsFileCheck(iccfile, _CUPS_FILE_CHECK_FILE, !RunUser,
+ cupsdLogFCMessage, p))
+ continue;
+
+ colord_create_profile(profiles, p->name, attr->spec, COLORD_SPACE_UNKNOWN,
+ format, iccfile, COLORD_SCOPE_TEMP);
+ }
+
+ /*
+ * Add the grayscale profile first. We always have a grayscale profile.
+ */
+
+ colord_create_profile(profiles, p->name, "Gray..", COLORD_SPACE_GRAY,
+ format, NULL, COLORD_SCOPE_TEMP);
+
+ /*
+ * Then add the RGB/CMYK/DeviceN color profile...
+ */
+
+ device_colorspace = "unknown";
+ switch (ppd->colorspace)
+ {
+ case PPD_CS_RGB :
+ case PPD_CS_CMY :
+ device_colorspace = COLORD_SPACE_RGB;
+ colord_create_profile(profiles, p->name, "RGB..", COLORD_SPACE_RGB,
+ format, NULL, COLORD_SCOPE_TEMP);
+ break;
+
+ case PPD_CS_RGBK :
+ case PPD_CS_CMYK :
+ device_colorspace = COLORD_SPACE_CMYK;
+ colord_create_profile(profiles, p->name, "CMYK..", COLORD_SPACE_CMYK,
+ format, NULL, COLORD_SCOPE_TEMP);
+ break;
+
+ case PPD_CS_GRAY :
+ device_colorspace = COLORD_SPACE_GRAY;
+ break;
+
+ case PPD_CS_N :
+ colord_create_profile(profiles, p->name, "DeviceN..",
+ COLORD_SPACE_UNKNOWN, format, NULL,
+ COLORD_SCOPE_TEMP);
+ break;
+ }
+
+ /*
+ * Register the device with colord.
+ */
+
+ cupsdLogMessage(CUPSD_LOG_INFO, "Registering ICC color profiles for \"%s\".",
+ p->name);
+ colord_create_device(p, ppd, profiles, device_colorspace, format,
+ COLORD_RELATION_SOFT, COLORD_SCOPE_TEMP);
+
+ /*
+ * Free any memory we used...
+ */
+
+ cupsArrayDelete(profiles);
+
+ free(format[0]);
+ free(format[1]);
+ free(format[2]);
+
+ ppdClose(ppd);
+}
+
+
+/*
+ * 'colord_unregister_printer()' - Unregister profiles for a printer.
+ */
+
+static void
+colord_unregister_printer(
+ cupsd_printer_t *p) /* I - printer */
+{
+ char device_id[1024]; /* Device ID as understood by colord */
+
+
+ /*
+ * Ensure we have a D-Bus connection...
+ */
+
+ if (!colord_con)
+ return;
+
+ /*
+ * Just delete the device itself, and leave the profiles registered
+ */
+
+ snprintf(device_id, sizeof(device_id), "cups-%s", p->name);
+ colord_delete_device(device_id);
+}
+#endif /* __APPLE__ */
+
+
+/*
+ * End of "$Id: colorman.c 10514 2012-05-25 03:11:18Z mike $".
+ */
diff --git a/scheduler/colorman.h b/scheduler/colorman.h
new file mode 100644
index 00000000..1a8493c5
--- /dev/null
+++ b/scheduler/colorman.h
@@ -0,0 +1,28 @@
+/*
+ * "$Id: colorman.h 10490 2012-05-21 17:40:22Z mike $"
+ *
+ * Color management definitions for the CUPS scheduler.
+ *
+ * Copyright 2007-2012 by Apple Inc.
+ * Copyright 1997-2007 by Easy Software Products, all rights reserved.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ */
+
+/*
+ * Prototypes...
+ */
+
+extern void cupsdRegisterColor(cupsd_printer_t *p);
+extern void cupsdStartColor(void);
+extern void cupsdStopColor(void);
+extern void cupsdUnregisterColor(cupsd_printer_t *p);
+
+
+/*
+ * End of "$Id: colorman.h 10490 2012-05-21 17:40:22Z mike $".
+ */
diff --git a/scheduler/conf.c b/scheduler/conf.c
index 3ddcdcd8..aaf42734 100644
--- a/scheduler/conf.c
+++ b/scheduler/conf.c
@@ -1,9 +1,9 @@
/*
- * "$Id: conf.c 10121 2011-11-16 15:28:11Z mike $"
+ * "$Id: conf.c 10482 2012-05-18 19:51:02Z mike $"
*
* Configuration routines for the CUPS scheduler.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -17,6 +17,7 @@
* cupsdAddAlias() - Add a host alias.
* cupsdCheckPermissions() - Fix the mode and ownership of a file or
* directory.
+ * cupsdDefaultAuthType() - Get the default AuthType.
* cupsdFreeAliases() - Free all of the alias entries.
* cupsdReadConfiguration() - Read the cupsd.conf file.
* get_address() - Get an address + port number from a line.
@@ -64,6 +65,7 @@
typedef enum
{
CUPSD_VARTYPE_INTEGER, /* Integer option */
+ CUPSD_VARTYPE_TIME, /* Time interval option */
CUPSD_VARTYPE_STRING, /* String option */
CUPSD_VARTYPE_BOOLEAN, /* Boolean option */
CUPSD_VARTYPE_PATHNAME /* File/directory name option */
@@ -71,7 +73,7 @@ typedef enum
typedef struct
{
- char *name; /* Name of variable */
+ const char *name; /* Name of variable */
void *ptr; /* Pointer to variable */
cupsd_vartype_t type; /* Type (int, string, address) */
} cupsd_var_t;
@@ -81,28 +83,15 @@ typedef struct
* Local globals...
*/
+static int default_auth_type = CUPSD_AUTH_AUTO;
+ /* Default AuthType, if not specified */
static const cupsd_var_t variables[] =
{
{ "AccessLog", &AccessLog, CUPSD_VARTYPE_STRING },
{ "AutoPurgeJobs", &JobAutoPurge, CUPSD_VARTYPE_BOOLEAN },
#ifdef HAVE_DNSSD
- { "BrowseDNSSDRegType", &DNSSDRegType, CUPSD_VARTYPE_STRING },
+ { "BrowseDNSSDSubTypes", &DNSSDSubTypes, CUPSD_VARTYPE_STRING },
#endif /* HAVE_DNSSD */
- { "BrowseInterval", &BrowseInterval, CUPSD_VARTYPE_INTEGER },
-#ifdef HAVE_LDAP
- { "BrowseLDAPBindDN", &BrowseLDAPBindDN, CUPSD_VARTYPE_STRING },
-# ifdef HAVE_LDAP_SSL
- { "BrowseLDAPCACertFile", &BrowseLDAPCACertFile, CUPSD_VARTYPE_PATHNAME },
-# endif /* HAVE_LDAP_SSL */
- { "BrowseLDAPDN", &BrowseLDAPDN, CUPSD_VARTYPE_STRING },
- { "BrowseLDAPPassword", &BrowseLDAPPassword, CUPSD_VARTYPE_STRING },
- { "BrowseLDAPServer", &BrowseLDAPServer, CUPSD_VARTYPE_STRING },
-#endif /* HAVE_LDAP */
- { "BrowseLocalOptions", &BrowseLocalOptions, CUPSD_VARTYPE_STRING },
- { "BrowsePort", &BrowsePort, CUPSD_VARTYPE_INTEGER },
- { "BrowseRemoteOptions", &BrowseRemoteOptions, CUPSD_VARTYPE_STRING },
- { "BrowseShortNames", &BrowseShortNames, CUPSD_VARTYPE_BOOLEAN },
- { "BrowseTimeout", &BrowseTimeout, CUPSD_VARTYPE_INTEGER },
{ "BrowseWebIF", &BrowseWebIF, CUPSD_VARTYPE_BOOLEAN },
{ "Browsing", &Browsing, CUPSD_VARTYPE_BOOLEAN },
{ "CacheDir", &CacheDir, CUPSD_VARTYPE_STRING },
@@ -111,11 +100,11 @@ static const cupsd_var_t variables[] =
{ "ConfigFilePerm", &ConfigFilePerm, CUPSD_VARTYPE_INTEGER },
{ "DataDir", &DataDir, CUPSD_VARTYPE_STRING },
{ "DefaultLanguage", &DefaultLanguage, CUPSD_VARTYPE_STRING },
- { "DefaultLeaseDuration", &DefaultLeaseDuration, CUPSD_VARTYPE_INTEGER },
+ { "DefaultLeaseDuration", &DefaultLeaseDuration, CUPSD_VARTYPE_TIME },
{ "DefaultPaperSize", &DefaultPaperSize, CUPSD_VARTYPE_STRING },
{ "DefaultPolicy", &DefaultPolicy, CUPSD_VARTYPE_STRING },
{ "DefaultShared", &DefaultShared, CUPSD_VARTYPE_BOOLEAN },
- { "DirtyCleanInterval", &DirtyCleanInterval, CUPSD_VARTYPE_INTEGER },
+ { "DirtyCleanInterval", &DirtyCleanInterval, CUPSD_VARTYPE_TIME },
{ "DocumentRoot", &DocumentRoot, CUPSD_VARTYPE_STRING },
{ "ErrorLog", &ErrorLog, CUPSD_VARTYPE_STRING },
{ "ErrorPolicy", &ErrorPolicy, CUPSD_VARTYPE_STRING },
@@ -123,16 +112,16 @@ static const cupsd_var_t variables[] =
{ "FilterLimit", &FilterLimit, CUPSD_VARTYPE_INTEGER },
{ "FilterNice", &FilterNice, CUPSD_VARTYPE_INTEGER },
{ "FontPath", &FontPath, CUPSD_VARTYPE_STRING },
- { "HideImplicitMembers", &HideImplicitMembers, CUPSD_VARTYPE_BOOLEAN },
- { "ImplicitClasses", &ImplicitClasses, CUPSD_VARTYPE_BOOLEAN },
- { "ImplicitAnyClasses", &ImplicitAnyClasses, CUPSD_VARTYPE_BOOLEAN },
- { "JobKillDelay", &JobKillDelay, CUPSD_VARTYPE_INTEGER },
+#ifdef HAVE_GSSAPI
+ { "GSSServiceName", &GSSServiceName, CUPSD_VARTYPE_STRING },
+#endif /* HAVE_GSSAPI */
+ { "JobKillDelay", &JobKillDelay, CUPSD_VARTYPE_TIME },
{ "JobRetryLimit", &JobRetryLimit, CUPSD_VARTYPE_INTEGER },
- { "JobRetryInterval", &JobRetryInterval, CUPSD_VARTYPE_INTEGER },
- { "KeepAliveTimeout", &KeepAliveTimeout, CUPSD_VARTYPE_INTEGER },
+ { "JobRetryInterval", &JobRetryInterval, CUPSD_VARTYPE_TIME },
+ { "KeepAliveTimeout", &KeepAliveTimeout, CUPSD_VARTYPE_TIME },
{ "KeepAlive", &KeepAlive, CUPSD_VARTYPE_BOOLEAN },
#ifdef HAVE_LAUNCHD
- { "LaunchdTimeout", &LaunchdTimeout, CUPSD_VARTYPE_INTEGER },
+ { "LaunchdTimeout", &LaunchdTimeout, CUPSD_VARTYPE_TIME },
#endif /* HAVE_LAUNCHD */
{ "LimitRequestBody", &MaxRequestSize, CUPSD_VARTYPE_INTEGER },
{ "ListenBackLog", &ListenBackLog, CUPSD_VARTYPE_INTEGER },
@@ -144,28 +133,30 @@ static const cupsd_var_t variables[] =
{ "MaxClientsPerHost", &MaxClientsPerHost, CUPSD_VARTYPE_INTEGER },
{ "MaxCopies", &MaxCopies, CUPSD_VARTYPE_INTEGER },
{ "MaxEvents", &MaxEvents, CUPSD_VARTYPE_INTEGER },
+ { "MaxHoldTime", &MaxHoldTime, CUPSD_VARTYPE_TIME },
{ "MaxJobs", &MaxJobs, CUPSD_VARTYPE_INTEGER },
{ "MaxJobsPerPrinter", &MaxJobsPerPrinter, CUPSD_VARTYPE_INTEGER },
{ "MaxJobsPerUser", &MaxJobsPerUser, CUPSD_VARTYPE_INTEGER },
- { "MaxLeaseDuration", &MaxLeaseDuration, CUPSD_VARTYPE_INTEGER },
+ { "MaxJobTime", &MaxJobTime, CUPSD_VARTYPE_INTEGER },
+ { "MaxLeaseDuration", &MaxLeaseDuration, CUPSD_VARTYPE_TIME },
{ "MaxLogSize", &MaxLogSize, CUPSD_VARTYPE_INTEGER },
{ "MaxRequestSize", &MaxRequestSize, CUPSD_VARTYPE_INTEGER },
{ "MaxSubscriptions", &MaxSubscriptions, CUPSD_VARTYPE_INTEGER },
{ "MaxSubscriptionsPerJob", &MaxSubscriptionsPerJob, CUPSD_VARTYPE_INTEGER },
{ "MaxSubscriptionsPerPrinter",&MaxSubscriptionsPerPrinter, CUPSD_VARTYPE_INTEGER },
{ "MaxSubscriptionsPerUser", &MaxSubscriptionsPerUser, CUPSD_VARTYPE_INTEGER },
- { "MultipleOperationTimeout", &MultipleOperationTimeout, CUPSD_VARTYPE_INTEGER },
+ { "MultipleOperationTimeout", &MultipleOperationTimeout, CUPSD_VARTYPE_TIME },
{ "PageLog", &PageLog, CUPSD_VARTYPE_STRING },
{ "PageLogFormat", &PageLogFormat, CUPSD_VARTYPE_STRING },
- { "PreserveJobFiles", &JobFiles, CUPSD_VARTYPE_BOOLEAN },
- { "PreserveJobHistory", &JobHistory, CUPSD_VARTYPE_BOOLEAN },
+ { "PreserveJobFiles", &JobFiles, CUPSD_VARTYPE_TIME },
+ { "PreserveJobHistory", &JobHistory, CUPSD_VARTYPE_TIME },
{ "Printcap", &Printcap, CUPSD_VARTYPE_STRING },
{ "PrintcapGUI", &PrintcapGUI, CUPSD_VARTYPE_STRING },
- { "ReloadTimeout", &ReloadTimeout, CUPSD_VARTYPE_INTEGER },
+ { "ReloadTimeout", &ReloadTimeout, CUPSD_VARTYPE_TIME },
{ "RemoteRoot", &RemoteRoot, CUPSD_VARTYPE_STRING },
{ "RequestRoot", &RequestRoot, CUPSD_VARTYPE_STRING },
{ "RIPCache", &RIPCache, CUPSD_VARTYPE_STRING },
- { "RootCertDuration", &RootCertDuration, CUPSD_VARTYPE_INTEGER },
+ { "RootCertDuration", &RootCertDuration, CUPSD_VARTYPE_TIME },
{ "ServerAdmin", &ServerAdmin, CUPSD_VARTYPE_STRING },
{ "ServerBin", &ServerBin, CUPSD_VARTYPE_PATHNAME },
#ifdef HAVE_SSL
@@ -178,12 +169,12 @@ static const cupsd_var_t variables[] =
{ "ServerRoot", &ServerRoot, CUPSD_VARTYPE_PATHNAME },
{ "SMBConfigFile", &SMBConfigFile, CUPSD_VARTYPE_STRING },
{ "StateDir", &StateDir, CUPSD_VARTYPE_STRING },
+ { "StrictConformance", &StrictConformance, CUPSD_VARTYPE_BOOLEAN },
#ifdef HAVE_AUTHORIZATION_H
{ "SystemGroupAuthKey", &SystemGroupAuthKey, CUPSD_VARTYPE_STRING },
#endif /* HAVE_AUTHORIZATION_H */
{ "TempDir", &TempDir, CUPSD_VARTYPE_PATHNAME },
- { "Timeout", &Timeout, CUPSD_VARTYPE_INTEGER },
- { "UseNetworkDefault", &UseNetworkDefault, CUPSD_VARTYPE_BOOLEAN },
+ { "Timeout", &Timeout, CUPSD_VARTYPE_TIME },
{ "WebInterface", &WebInterface, CUPSD_VARTYPE_BOOLEAN }
};
#define NUM_VARS (sizeof(variables) / sizeof(variables[0]))
@@ -394,6 +385,118 @@ cupsdCheckPermissions(
/*
+ * 'cupsdDefaultAuthType()' - Get the default AuthType.
+ *
+ * When the default_auth_type is "auto", this function tries to get the GSS
+ * credentials for the server. If that succeeds we use Kerberos authentication,
+ * otherwise we do a fallback to Basic authentication against the local user
+ * accounts.
+ */
+
+int /* O - Default AuthType value */
+cupsdDefaultAuthType(void)
+{
+#ifdef HAVE_GSSAPI
+ OM_uint32 major_status, /* Major status code */
+ minor_status; /* Minor status code */
+ gss_name_t server_name; /* Server name */
+ gss_buffer_desc token = GSS_C_EMPTY_BUFFER;
+ /* Service name token */
+ char buf[1024]; /* Service name buffer */
+#endif /* HAVE_GSSAPI */
+
+
+ /*
+ * If we have already determined the correct default AuthType, use it...
+ */
+
+ if (default_auth_type != CUPSD_AUTH_AUTO)
+ return (default_auth_type);
+
+#ifdef HAVE_GSSAPI
+# ifdef __APPLE__
+ /*
+ * If the weak-linked GSSAPI/Kerberos library is not present, don't try
+ * to use it...
+ */
+
+ if (gss_init_sec_context == NULL)
+ return (default_auth_type = CUPSD_AUTH_BASIC);
+# endif /* __APPLE__ */
+
+ /*
+ * Try to obtain the server's GSS credentials (GSSServiceName@servername). If
+ * that fails we must use Basic...
+ */
+
+ snprintf(buf, sizeof(buf), "%s@%s", GSSServiceName, ServerName);
+
+ token.value = buf;
+ token.length = strlen(buf);
+ server_name = GSS_C_NO_NAME;
+ major_status = gss_import_name(&minor_status, &token,
+ GSS_C_NT_HOSTBASED_SERVICE,
+ &server_name);
+
+ memset(&token, 0, sizeof(token));
+
+ if (GSS_ERROR(major_status))
+ {
+ cupsdLogGSSMessage(CUPSD_LOG_DEBUG, major_status, minor_status,
+ "cupsdDefaultAuthType: gss_import_name(%s) failed", buf);
+ return (default_auth_type = CUPSD_AUTH_BASIC);
+ }
+
+ major_status = gss_display_name(&minor_status, server_name, &token, NULL);
+
+ if (GSS_ERROR(major_status))
+ {
+ cupsdLogGSSMessage(CUPSD_LOG_DEBUG, major_status, minor_status,
+ "cupsdDefaultAuthType: gss_display_name(%s) failed",
+ buf);
+ return (default_auth_type = CUPSD_AUTH_BASIC);
+ }
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "cupsdDefaultAuthType: Attempting to acquire Kerberos "
+ "credentials for %s...", (char *)token.value);
+
+ ServerCreds = GSS_C_NO_CREDENTIAL;
+ major_status = gss_acquire_cred(&minor_status, server_name, GSS_C_INDEFINITE,
+ GSS_C_NO_OID_SET, GSS_C_ACCEPT,
+ &ServerCreds, NULL, NULL);
+ if (GSS_ERROR(major_status))
+ {
+ cupsdLogGSSMessage(CUPSD_LOG_DEBUG, major_status, minor_status,
+ "cupsdDefaultAuthType: gss_acquire_cred(%s) failed",
+ (char *)token.value);
+ gss_release_name(&minor_status, &server_name);
+ gss_release_buffer(&minor_status, &token);
+ return (default_auth_type = CUPSD_AUTH_BASIC);
+ }
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "cupsdDefaultAuthType: Kerberos credentials acquired "
+ "successfully for %s.", (char *)token.value);
+
+ gss_release_name(&minor_status, &server_name);
+ gss_release_buffer(&minor_status, &token);
+
+ HaveServerCreds = 1;
+
+ return (default_auth_type = CUPSD_AUTH_NEGOTIATE);
+
+#else
+ /*
+ * No Kerberos support compiled in so just use Basic all the time...
+ */
+
+ return (default_auth_type = CUPSD_AUTH_BASIC);
+#endif /* HAVE_GSSAPI */
+}
+
+
+/*
* 'cupsdFreeAliases()' - Free all of the alias entries.
*/
@@ -451,31 +554,6 @@ cupsdReadConfiguration(void)
cupsdDeleteAllLocations();
- if (NumBrowsers > 0)
- {
- free(Browsers);
- Browsers = NULL;
-
- NumBrowsers = 0;
- }
-
- if (NumPolled > 0)
- {
- free(Polled);
-
- NumPolled = 0;
- }
-
- if (NumRelays > 0)
- {
- for (i = 0; i < NumRelays; i ++)
- cupsArrayDelete(Relays[i].from);
-
- free(Relays);
-
- NumRelays = 0;
- }
-
cupsdDeleteAllListeners();
old_remote_port = RemotePort;
@@ -548,6 +626,21 @@ cupsdReadConfiguration(void)
cupsdSetString(&TempDir, NULL);
+#ifdef HAVE_GSSAPI
+ cupsdSetString(&GSSServiceName, CUPS_DEFAULT_GSSSERVICENAME);
+
+ if (HaveServerCreds)
+ {
+ OM_uint32 minor_status; /* Minor status code */
+
+ gss_release_cred(&minor_status, &ServerCreds);
+
+ HaveServerCreds = 0;
+ }
+
+ ServerCreds = GSS_C_NO_CREDENTIAL;
+#endif /* HAVE_GSSAPI */
+
/*
* Find the default user...
*/
@@ -604,7 +697,7 @@ cupsdReadConfiguration(void)
AccessLogLevel = CUPSD_ACCESSLOG_ACTIONS;
ConfigFilePerm = CUPS_DEFAULT_CONFIG_FILE_PERM;
FatalErrors = parse_fatal_errors(CUPS_DEFAULT_FATAL_ERRORS);
- DefaultAuthType = CUPSD_AUTH_BASIC;
+ default_auth_type = CUPSD_AUTH_BASIC;
#ifdef HAVE_SSL
DefaultEncryption = HTTP_ENCRYPT_REQUIRED;
SSLOptions = CUPSD_SSL_NONE;
@@ -618,9 +711,6 @@ cupsdReadConfiguration(void)
FilterLimit = 0;
FilterNice = 0;
HostNameLookups = FALSE;
- ImplicitClasses = CUPS_DEFAULT_IMPLICIT_CLASSES;
- ImplicitAnyClasses = FALSE;
- HideImplicitMembers = TRUE;
KeepAlive = TRUE;
KeepAliveTimeout = DEFAULT_KEEPALIVE;
ListenBackLog = SOMAXCONN;
@@ -633,51 +723,36 @@ cupsdReadConfiguration(void)
MaxLogSize = 1024 * 1024;
MaxRequestSize = 0;
MultipleOperationTimeout = DEFAULT_TIMEOUT;
+ NumSystemGroups = 0;
ReloadTimeout = DEFAULT_KEEPALIVE;
RootCertDuration = 300;
+ StrictConformance = FALSE;
Timeout = DEFAULT_TIMEOUT;
- NumSystemGroups = 0;
WebInterface = CUPS_DEFAULT_WEBIF;
- BrowseInterval = DEFAULT_INTERVAL;
- BrowsePort = ippPort();
BrowseLocalProtocols = parse_protocols(CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS);
- BrowseRemoteProtocols = parse_protocols(CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS);
- BrowseShortNames = CUPS_DEFAULT_BROWSE_SHORT_NAMES;
- BrowseTimeout = DEFAULT_TIMEOUT;
BrowseWebIF = FALSE;
Browsing = CUPS_DEFAULT_BROWSING;
DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED;
#ifdef HAVE_DNSSD
- cupsdSetString(&DNSSDRegType, "_ipp._tcp,_cups");
+ cupsdSetString(&DNSSDSubTypes, "_cups,_print");
#endif /* HAVE_DNSSD */
cupsdSetString(&LPDConfigFile, CUPS_DEFAULT_LPD_CONFIG_FILE);
cupsdSetString(&SMBConfigFile, CUPS_DEFAULT_SMB_CONFIG_FILE);
- cupsdClearString(&BrowseLocalOptions);
- cupsdClearString(&BrowseRemoteOptions);
-
cupsdSetString(&ErrorPolicy, "stop-printer");
-#ifdef HAVE_LDAP
- cupsdClearString(&BrowseLDAPBindDN);
- cupsdClearString(&BrowseLDAPDN);
- cupsdClearString(&BrowseLDAPPassword);
- cupsdClearString(&BrowseLDAPServer);
-# ifdef HAVE_LDAP_SSL
- cupsdClearString(&BrowseLDAPCACertFile);
-# endif /* HAVE_LDAP_SSL */
-#endif /* HAVE_LDAP */
-
JobHistory = DEFAULT_HISTORY;
JobFiles = DEFAULT_FILES;
JobAutoPurge = 0;
+ MaxHoldTime = 0;
MaxJobs = 500;
MaxActiveJobs = 0;
MaxJobsPerUser = 0;
MaxJobsPerPrinter = 0;
+ MaxJobTime = 3 * 60 * 60; /* 3 hours */
MaxCopies = CUPS_DEFAULT_MAX_COPIES;
cupsdDeleteAllPolicies();
@@ -695,7 +770,7 @@ cupsdReadConfiguration(void)
MaxLeaseDuration = 0;
#ifdef HAVE_LAUNCHD
- LaunchdTimeout = DEFAULT_TIMEOUT + 10;
+ LaunchdTimeout = 10;
#endif /* HAVE_LAUNCHD */
/*
@@ -833,12 +908,6 @@ cupsdReadConfiguration(void)
}
/*
- * Get the access control list for browsing...
- */
-
- BrowseACL = cupsdFindLocation("CUPS_INTERNAL_BROWSE_ACL");
-
- /*
* Open the system log for cupsd if necessary...
*/
@@ -1156,24 +1225,6 @@ cupsdReadConfiguration(void)
MaxClientsPerHost);
/*
- * Make sure that BrowseTimeout is at least twice the interval...
- */
-
- if (BrowseTimeout < (2 * BrowseInterval) || BrowseTimeout <= 0)
- {
- cupsdLogMessage(CUPSD_LOG_ALERT, "Invalid BrowseTimeout value %d.",
- BrowseTimeout);
-
- if (BrowseInterval)
- BrowseTimeout = BrowseInterval * 2;
- else
- BrowseTimeout = DEFAULT_TIMEOUT;
-
- cupsdLogMessage(CUPSD_LOG_ALERT, "Reset BrowseTimeout to %d.",
- BrowseTimeout);
- }
-
- /*
* Update the default policy, as needed...
*/
@@ -1477,7 +1528,6 @@ cupsdReadConfiguration(void)
cupsdLoadAllPrinters();
cupsdLoadAllClasses();
- cupsdLoadRemoteCache();
cupsdCreateCommonData();
@@ -1511,6 +1561,12 @@ cupsdReadConfiguration(void)
cupsdCreateCommonData();
/*
+ * Update all jobs as needed...
+ */
+
+ cupsdUpdateJobs();
+
+ /*
* Update all printers as needed...
*/
@@ -2474,20 +2530,10 @@ parse_protocols(const char *s) /* I - Space-delimited protocols */
* Add the protocol to the bitmask...
*/
- if (!_cups_strcasecmp(valstart, "cups"))
- protocols |= BROWSE_CUPS;
- else if (!_cups_strcasecmp(valstart, "slp"))
- protocols |= BROWSE_SLP;
- else if (!_cups_strcasecmp(valstart, "ldap"))
- protocols |= BROWSE_LDAP;
- else if (!_cups_strcasecmp(valstart, "dnssd") ||
- !_cups_strcasecmp(valstart, "dns-sd") ||
- !_cups_strcasecmp(valstart, "bonjour"))
+ if (!_cups_strcasecmp(valstart, "dnssd") ||
+ !_cups_strcasecmp(valstart, "dns-sd") ||
+ !_cups_strcasecmp(valstart, "bonjour"))
protocols |= BROWSE_DNSSD;
- else if (!_cups_strcasecmp(valstart, "lpd"))
- protocols |= BROWSE_LPD;
- else if (!_cups_strcasecmp(valstart, "smb"))
- protocols |= BROWSE_SMB;
else if (!_cups_strcasecmp(valstart, "all"))
protocols |= BROWSE_ALL;
else if (_cups_strcasecmp(valstart, "none"))
@@ -2516,18 +2562,12 @@ read_configuration(cups_file_t *fp) /* I - File to read from */
/* Line from file */
temp[HTTP_MAX_BUFFER],
/* Temporary buffer for value */
- *ptr, /* Pointer into line/temp */
*value, /* Pointer to value */
*valueptr; /* Pointer into value */
int valuelen; /* Length of value */
cupsd_var_t const *var; /* Current variable */
http_addrlist_t *addrlist, /* Address list */
*addr; /* Current address */
- unsigned ip[4], /* Address value */
- mask[4]; /* Netmask value */
- cupsd_dirsvc_relay_t *relay; /* Relay data */
- cupsd_dirsvc_poll_t *pollp; /* Polling data */
- cupsd_location_t *location; /* Browse location */
cups_file_t *incfile; /* Include file */
char incname[1024]; /* Include filename */
struct group *group; /* Group */
@@ -2711,117 +2751,12 @@ read_configuration(cups_file_t *fp) /* I - File to read from */
httpAddrFreeList(addrlist);
}
- else if (!_cups_strcasecmp(line, "BrowseAddress") && value)
- {
- /*
- * Add a browse address to the list...
- */
-
- cupsd_dirsvc_addr_t *dira; /* New browse address array */
-
-
- if (NumBrowsers == 0)
- dira = malloc(sizeof(cupsd_dirsvc_addr_t));
- else
- dira = realloc(Browsers, (NumBrowsers + 1) * sizeof(cupsd_dirsvc_addr_t));
-
- if (!dira)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate BrowseAddress at line %d - %s.",
- linenum, strerror(errno));
- continue;
- }
-
- Browsers = dira;
- dira += NumBrowsers;
-
- memset(dira, 0, sizeof(cupsd_dirsvc_addr_t));
-
- if (!_cups_strcasecmp(value, "@LOCAL"))
- {
- /*
- * Send browse data to all local interfaces...
- */
-
- strcpy(dira->iface, "*");
- NumBrowsers ++;
- }
- else if (!_cups_strncasecmp(value, "@IF(", 4))
- {
- /*
- * Send browse data to the named interface...
- */
-
- strlcpy(dira->iface, value + 4, sizeof(Browsers[0].iface));
-
- ptr = dira->iface + strlen(dira->iface) - 1;
- if (*ptr == ')')
- *ptr = '\0';
-
- NumBrowsers ++;
- }
- else if ((addrlist = get_address(value, BrowsePort)) != NULL)
- {
- /*
- * Only IPv4 addresses are supported...
- */
-
- for (addr = addrlist; addr; addr = addr->next)
- if (_httpAddrFamily(&(addr->addr)) == AF_INET)
- break;
-
- if (addr)
- {
- memcpy(&(dira->to), &(addrlist->addr), sizeof(dira->to));
- httpAddrString(&(dira->to), temp, sizeof(temp));
-
- cupsdLogMessage(CUPSD_LOG_INFO,
- "Sending browsing info to %s:%d (IPv4)",
- temp, _httpAddrPort(&(dira->to)));
-
- NumBrowsers ++;
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad BrowseAddress %s at line %d.",
- value, linenum);
-
- httpAddrFreeList(addrlist);
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad BrowseAddress %s at line %d.",
- value, linenum);
- }
- else if (!_cups_strcasecmp(line, "BrowseOrder") && value)
- {
- /*
- * "BrowseOrder Deny,Allow" or "BrowseOrder Allow,Deny"...
- */
-
- if ((location = cupsdFindLocation("CUPS_INTERNAL_BROWSE_ACL")) == NULL)
- if ((location = cupsdNewLocation("CUPS_INTERNAL_BROWSE_ACL")) != NULL)
- cupsdAddLocation(location);
-
- if (location == NULL)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to initialize browse access control list.");
- else if (!_cups_strncasecmp(value, "deny", 4))
- location->order_type = CUPSD_AUTH_ALLOW;
- else if (!_cups_strncasecmp(value, "allow", 5))
- location->order_type = CUPSD_AUTH_DENY;
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unknown BrowseOrder value %s on line %d.",
- value, linenum);
- }
else if (!_cups_strcasecmp(line, "BrowseProtocols") ||
- !_cups_strcasecmp(line, "BrowseLocalProtocols") ||
- !_cups_strcasecmp(line, "BrowseRemoteProtocols"))
+ !_cups_strcasecmp(line, "BrowseLocalProtocols"))
{
/*
* "BrowseProtocols name [... name]"
* "BrowseLocalProtocols name [... name]"
- * "BrowseRemoteProtocols name [... name]"
*/
int protocols = parse_protocols(value);
@@ -2834,386 +2769,28 @@ read_configuration(cups_file_t *fp) /* I - File to read from */
break;
}
- if (_cups_strcasecmp(line, "BrowseLocalProtocols"))
- BrowseRemoteProtocols = protocols;
- if (_cups_strcasecmp(line, "BrowseRemoteProtocols"))
- BrowseLocalProtocols = protocols;
+ BrowseLocalProtocols = protocols;
}
- else if ((!_cups_strcasecmp(line, "BrowseAllow") ||
- !_cups_strcasecmp(line, "BrowseDeny")) && value)
+ else if (!_cups_strcasecmp(line, "default_auth_type") && value)
{
/*
- * BrowseAllow [From] host/ip...
- * BrowseDeny [From] host/ip...
- */
-
- if ((location = cupsdFindLocation("CUPS_INTERNAL_BROWSE_ACL")) == NULL)
- if ((location = cupsdNewLocation("CUPS_INTERNAL_BROWSE_ACL")) != NULL)
- cupsdAddLocation(location);
-
-
- if (location == NULL)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to initialize browse access control list.");
- else
- {
- if (!_cups_strncasecmp(value, "from", 4))
- {
- /*
- * Skip leading "from"...
- */
-
- value += 4;
- }
-
- while (*value)
- {
- /*
- * Skip leading whitespace...
- */
-
- while (_cups_isspace(*value))
- value ++;
-
- if (!*value)
- break;
-
- /*
- * Find the end of the value...
- */
-
- for (valueptr = value;
- *valueptr && !_cups_isspace(*valueptr);
- valueptr ++);
-
- while (_cups_isspace(*valueptr))
- *valueptr++ = '\0';
-
- /*
- * Figure out what form the allow/deny address takes:
- *
- * All
- * None
- * *.domain.com
- * .domain.com
- * host.domain.com
- * nnn.*
- * nnn.nnn.*
- * nnn.nnn.nnn.*
- * nnn.nnn.nnn.nnn
- * nnn.nnn.nnn.nnn/mm
- * nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
- */
-
- if (!_cups_strcasecmp(value, "all"))
- {
- /*
- * All hosts...
- */
-
- if (!_cups_strcasecmp(line, "BrowseAllow"))
- cupsdAddIPMask(&(location->allow), zeros, zeros);
- else
- cupsdAddIPMask(&(location->deny), zeros, zeros);
- }
- else if (!_cups_strcasecmp(value, "none"))
- {
- /*
- * No hosts...
- */
-
- if (!_cups_strcasecmp(line, "BrowseAllow"))
- cupsdAddIPMask(&(location->allow), ones, zeros);
- else
- cupsdAddIPMask(&(location->deny), ones, zeros);
- }
-#ifdef AF_INET6
- else if (value[0] == '*' || value[0] == '.' ||
- (!isdigit(value[0] & 255) && value[0] != '['))
-#else
- else if (value[0] == '*' || value[0] == '.' ||
- !isdigit(value[0] & 255))
-#endif /* AF_INET6 */
- {
- /*
- * Host or domain name...
- */
-
- if (!_cups_strcasecmp(line, "BrowseAllow"))
- cupsdAddNameMask(&(location->allow), value);
- else
- cupsdAddNameMask(&(location->deny), value);
- }
- else
- {
- /*
- * One of many IP address forms...
- */
-
- if (!get_addr_and_mask(value, ip, mask))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad netmask value %s on line %d.",
- value, linenum);
- break;
- }
-
- if (!_cups_strcasecmp(line, "BrowseAllow"))
- cupsdAddIPMask(&(location->allow), ip, mask);
- else
- cupsdAddIPMask(&(location->deny), ip, mask);
- }
-
- /*
- * Advance to next value...
- */
-
- value = valueptr;
- }
- }
- }
- else if (!_cups_strcasecmp(line, "BrowseRelay") && value)
- {
- /*
- * BrowseRelay [from] source [to] destination
- */
-
- if (NumRelays == 0)
- relay = malloc(sizeof(cupsd_dirsvc_relay_t));
- else
- relay = realloc(Relays, (NumRelays + 1) * sizeof(cupsd_dirsvc_relay_t));
-
- if (!relay)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate BrowseRelay at line %d - %s.",
- linenum, strerror(errno));
- continue;
- }
-
- Relays = relay;
- relay += NumRelays;
-
- memset(relay, 0, sizeof(cupsd_dirsvc_relay_t));
-
- if (!_cups_strncasecmp(value, "from ", 5))
- {
- /*
- * Skip leading "from"...
- */
-
- value += 5;
-
- /*
- * Skip leading whitespace...
- */
-
- while (_cups_isspace(*value))
- value ++;
- }
-
- /*
- * Find the end of the from value...
- */
-
- for (valueptr = value;
- *valueptr && !_cups_isspace(*valueptr);
- valueptr ++);
-
- while (_cups_isspace(*valueptr))
- *valueptr++ = '\0';
-
- /*
- * Figure out what form the from address takes:
- *
- * *.domain.com
- * .domain.com
- * host.domain.com
- * nnn.*
- * nnn.nnn.*
- * nnn.nnn.nnn.*
- * nnn.nnn.nnn.nnn
- * nnn.nnn.nnn.nnn/mm
- * nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
- */
-
-#ifdef AF_INET6
- if (value[0] == '*' || value[0] == '.' ||
- (!isdigit(value[0] & 255) && value[0] != '['))
-#else
- if (value[0] == '*' || value[0] == '.' || !isdigit(value[0] & 255))
-#endif /* AF_INET6 */
- {
- /*
- * Host or domain name...
- */
-
- if (!cupsdAddNameMask(&(relay->from), value))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate BrowseRelay name at line %d - %s.",
- linenum, strerror(errno));
- continue;
- }
- }
- else
- {
- /*
- * One of many IP address forms...
- */
-
- if (!get_addr_and_mask(value, ip, mask))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad netmask value %s on line %d.",
- value, linenum);
- break;
- }
-
- if (!cupsdAddIPMask(&(relay->from), ip, mask))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate BrowseRelay IP at line %d - %s.",
- linenum, strerror(errno));
- continue;
- }
- }
-
- /*
- * Get "to" address and port...
- */
-
- if (!_cups_strncasecmp(valueptr, "to ", 3))
- {
- /*
- * Strip leading "to"...
- */
-
- valueptr += 3;
-
- while (_cups_isspace(*valueptr))
- valueptr ++;
- }
-
- if ((addrlist = get_address(valueptr, BrowsePort)) != NULL)
- {
- /*
- * Only IPv4 addresses are supported...
- */
-
- for (addr = addrlist; addr; addr = addr->next)
- if (addr->addr.addr.sa_family == AF_INET)
- break;
-
- if (addr)
- {
- memcpy(&(relay->to), &(addrlist->addr), sizeof(relay->to));
-
- httpAddrString(&(relay->to), temp, sizeof(temp));
-
- cupsdLogMessage(CUPSD_LOG_INFO, "Relaying from %s to %s:%d (IPv4)",
- value, temp, _httpAddrPort(&(relay->to)));
-
- NumRelays ++;
- }
- else
- {
- cupsArrayDelete(relay->from);
- relay->from = NULL;
-
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad relay address %s at line %d.",
- valueptr, linenum);
- }
-
- httpAddrFreeList(addrlist);
- }
- else
- {
- cupsArrayDelete(relay->from);
- relay->from = NULL;
-
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad relay address %s at line %d.",
- valueptr, linenum);
- }
- }
- else if (!_cups_strcasecmp(line, "BrowsePoll") && value)
- {
- /*
- * BrowsePoll address[:port]
- */
-
- char *portname; /* Port name */
- int portnum; /* Port number */
- struct servent *service; /* Service */
-
-
- /*
- * Extract the port name from the address...
- */
-
- if ((portname = strrchr(value, ':')) != NULL && !strchr(portname, ']'))
- {
- *portname++ = '\0';
-
- if (isdigit(*portname & 255))
- portnum = atoi(portname);
- else if ((service = getservbyname(portname, NULL)) != NULL)
- portnum = ntohs(service->s_port);
- else
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Lookup of service \"%s\" failed.",
- portname);
- continue;
- }
- }
- else
- portnum = ippPort();
-
- /*
- * Add the poll entry...
- */
-
- if (NumPolled == 0)
- pollp = malloc(sizeof(cupsd_dirsvc_poll_t));
- else
- pollp = realloc(Polled, (NumPolled + 1) * sizeof(cupsd_dirsvc_poll_t));
-
- if (!pollp)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate BrowsePoll at line %d - %s.",
- linenum, strerror(errno));
- continue;
- }
-
- Polled = pollp;
- pollp += NumPolled;
-
- NumPolled ++;
- memset(pollp, 0, sizeof(cupsd_dirsvc_poll_t));
-
- strlcpy(pollp->hostname, value, sizeof(pollp->hostname));
- pollp->port = portnum;
-
- cupsdLogMessage(CUPSD_LOG_INFO, "Polling %s:%d", pollp->hostname,
- pollp->port);
- }
- else if (!_cups_strcasecmp(line, "DefaultAuthType") && value)
- {
- /*
- * DefaultAuthType {basic,digest,basicdigest,negotiate}
+ * default_auth_type {basic,digest,basicdigest,negotiate}
*/
if (!_cups_strcasecmp(value, "none"))
- DefaultAuthType = CUPSD_AUTH_NONE;
+ default_auth_type = CUPSD_AUTH_NONE;
else if (!_cups_strcasecmp(value, "basic"))
- DefaultAuthType = CUPSD_AUTH_BASIC;
+ default_auth_type = CUPSD_AUTH_BASIC;
else if (!_cups_strcasecmp(value, "digest"))
- DefaultAuthType = CUPSD_AUTH_DIGEST;
+ default_auth_type = CUPSD_AUTH_DIGEST;
else if (!_cups_strcasecmp(value, "basicdigest"))
- DefaultAuthType = CUPSD_AUTH_BASICDIGEST;
+ default_auth_type = CUPSD_AUTH_BASICDIGEST;
#ifdef HAVE_GSSAPI
else if (!_cups_strcasecmp(value, "negotiate"))
- DefaultAuthType = CUPSD_AUTH_NEGOTIATE;
+ default_auth_type = CUPSD_AUTH_NEGOTIATE;
#endif /* HAVE_GSSAPI */
+ else if (!_cups_strcasecmp(value, "auto"))
+ default_auth_type = CUPSD_AUTH_AUTO;
else
{
cupsdLogMessage(CUPSD_LOG_WARN,
@@ -3572,12 +3149,15 @@ read_configuration(cups_file_t *fp) /* I - File to read from */
cupsdLogMessage(CUPSD_LOG_ERROR,
"Missing integer value for %s on line %d.",
line, linenum);
+ else if (!isdigit(*value & 255))
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Bad integer value for %s on line %d.",
+ line, linenum);
else
{
int n; /* Number */
char *units; /* Units */
-
n = strtol(value, &units, 0);
if (units && *units)
@@ -3590,6 +3170,13 @@ read_configuration(cups_file_t *fp) /* I - File to read from */
n *= 1024;
else if (tolower(units[0] & 255) == 't')
n *= 262144;
+ else
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unknown integer value for %s on line %d.",
+ line, linenum);
+ break;
+ }
}
if (n < 0)
@@ -3601,6 +3188,61 @@ read_configuration(cups_file_t *fp) /* I - File to read from */
}
break;
+ case CUPSD_VARTYPE_TIME :
+ if (!value)
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Missing time interval value for %s on line %d.",
+ line, linenum);
+ else if (!_cups_strncasecmp(line, "PreserveJob", 11) &&
+ (!_cups_strcasecmp(value, "true") ||
+ !_cups_strcasecmp(value, "on") ||
+ !_cups_strcasecmp(value, "enabled") ||
+ !_cups_strcasecmp(value, "yes")))
+ *((int *)var->ptr) = INT_MAX;
+ else if (!_cups_strcasecmp(value, "false") ||
+ !_cups_strcasecmp(value, "off") ||
+ !_cups_strcasecmp(value, "disabled") ||
+ !_cups_strcasecmp(value, "no"))
+ *((int *)var->ptr) = 0;
+ else if (!isdigit(*value & 255))
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unknown time interval value for %s on line %d.",
+ line, linenum);
+ else
+ {
+ double n; /* Number */
+ char *units; /* Units */
+
+ n = strtod(value, &units);
+
+ if (units && *units)
+ {
+ if (tolower(units[0] & 255) == 'w')
+ n *= 7 * 24 * 60 * 60;
+ else if (tolower(units[0] & 255) == 'd')
+ n *= 24 * 60 * 60;
+ else if (tolower(units[0] & 255) == 'h')
+ n *= 60 * 60;
+ else if (tolower(units[0] & 255) == 'm')
+ n *= 60;
+ else
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unknown time interval value for %s on line "
+ "%d.", line, linenum);
+ break;
+ }
+ }
+
+ if (n < 0.0 || n > INT_MAX)
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Bad time value for %s on line %d.",
+ line, linenum);
+ else
+ *((int *)var->ptr) = (int)n;
+ }
+ break;
+
case CUPSD_VARTYPE_BOOLEAN :
if (!value)
cupsdLogMessage(CUPSD_LOG_ERROR,
@@ -3970,6 +3612,7 @@ read_policy(cups_file_t *fp, /* I - Configuration file */
cupsdAddString(&(pol->job_attrs), "job-name");
cupsdAddString(&(pol->job_attrs), "job-originating-host-name");
cupsdAddString(&(pol->job_attrs), "job-originating-user-name");
+ cupsdAddString(&(pol->job_attrs), "phone");
}
else
cupsdAddString(&(pol->job_attrs), value);
@@ -4194,6 +3837,7 @@ set_policy_defaults(cupsd_policy_t *pol)/* I - Policy */
cupsdAddString(&(pol->job_attrs), "job-name");
cupsdAddString(&(pol->job_attrs), "job-originating-host-name");
cupsdAddString(&(pol->job_attrs), "job-originating-user-name");
+ cupsdAddString(&(pol->job_attrs), "phone");
}
if (!pol->sub_access)
@@ -4220,5 +3864,5 @@ set_policy_defaults(cupsd_policy_t *pol)/* I - Policy */
/*
- * End of "$Id: conf.c 10121 2011-11-16 15:28:11Z mike $".
+ * End of "$Id: conf.c 10482 2012-05-18 19:51:02Z mike $".
*/
diff --git a/scheduler/conf.h b/scheduler/conf.h
index 0c05ced1..776a54bf 100644
--- a/scheduler/conf.h
+++ b/scheduler/conf.h
@@ -1,9 +1,9 @@
/*
- * "$Id: conf.h 9710 2011-04-22 17:47:03Z mike $"
+ * "$Id: conf.h 10482 2012-05-18 19:51:02Z mike $"
*
* Configuration file definitions for the CUPS scheduler.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -69,7 +69,7 @@ typedef enum
#define PRINTCAP_BSD 0 /* Berkeley LPD format */
#define PRINTCAP_SOLARIS 1 /* Solaris lpsched format */
-#define PRINTCAP_PLIST 2 /* Mac OS X plist format */
+#define PRINTCAP_PLIST 2 /* OS X plist format */
/*
@@ -169,6 +169,8 @@ VAR int ClassifyOverride VALUE(0),
/* Amount of automatic debug history */
FatalErrors VALUE(CUPSD_FATAL_CONFIG),
/* Which errors are fatal? */
+ StrictConformance VALUE(FALSE),
+ /* Require strict IPP conformance? */
LogFilePerm VALUE(0644);
/* Permissions for log files */
VAR cupsd_loglevel_t LogLevel VALUE(CUPSD_LOG_WARN);
@@ -193,12 +195,6 @@ VAR int MaxClients VALUE(100),
/* Support the Keep-Alive option? */
KeepAliveTimeout VALUE(DEFAULT_KEEPALIVE),
/* Timeout between requests */
- ImplicitClasses VALUE(TRUE),
- /* Are classes implicitly created? */
- ImplicitAnyClasses VALUE(FALSE),
- /* Create AnyPrinter classes? */
- HideImplicitMembers VALUE(TRUE),
- /* Hide implicit class members? */
FileDevice VALUE(FALSE),
/* Allow file: devices? */
FilterLimit VALUE(0),
@@ -248,7 +244,7 @@ VAR int SSLOptions VALUE(CUPSD_SSL_NONE);
#endif /* HAVE_SSL */
#ifdef HAVE_LAUNCHD
-VAR int LaunchdTimeout VALUE(DEFAULT_KEEPALIVE);
+VAR int LaunchdTimeout VALUE(10);
/* Time after which an idle cupsd will exit */
#endif /* HAVE_LAUNCHD */
@@ -257,6 +253,14 @@ VAR char *SystemGroupAuthKey VALUE(NULL);
/* System group auth key */
#endif /* HAVE_AUTHORIZATION_H */
+#ifdef HAVE_GSSAPI
+VAR char *GSSServiceName VALUE(NULL);
+ /* GSS service name */
+int HaveServerCreds VALUE(0);
+ /* Do we have server credentials? */
+gss_cred_id_t ServerCreds; /* Server's GSS credentials */
+#endif /* HAVE_GSSAPI */
+
/*
* Prototypes...
@@ -269,6 +273,7 @@ extern int cupsdCheckPermissions(const char *filename,
int user, int group, int is_dir,
int create_dir);
extern int cupsdCheckProgram(const char *filename, cupsd_printer_t *p);
+extern int cupsdDefaultAuthType(void);
extern void cupsdFreeAliases(cups_array_t *aliases);
extern char *cupsdGetDateTime(struct timeval *t, cupsd_time_t format);
extern void cupsdLogFCMessage(void *context, _cups_fc_result_t result,
@@ -278,16 +283,10 @@ extern int cupsdLogGSSMessage(int level, int major_status,
int minor_status,
const char *message, ...);
#endif /* HAVE_GSSAPI */
-extern int cupsdLogJob(cupsd_job_t *job, int level, const char *message, ...)
-#ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 3, 4)))
-#endif /* __GNUC__ */
-;
+extern int cupsdLogJob(cupsd_job_t *job, int level, const char *message,
+ ...) __attribute__((__format__(__printf__, 3, 4)));
extern int cupsdLogMessage(int level, const char *message, ...)
-#ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 2, 3)))
-#endif /* __GNUC__ */
-;
+ __attribute__ ((__format__ (__printf__, 2, 3)));
extern int cupsdLogPage(cupsd_job_t *job, const char *page);
extern int cupsdLogRequest(cupsd_client_t *con, http_status_t code);
extern int cupsdReadConfiguration(void);
@@ -295,5 +294,5 @@ extern int cupsdWriteErrorLog(int level, const char *message);
/*
- * End of "$Id: conf.h 9710 2011-04-22 17:47:03Z mike $".
+ * End of "$Id: conf.h 10482 2012-05-18 19:51:02Z mike $".
*/
diff --git a/scheduler/cups-driverd.cxx b/scheduler/cups-driverd.cxx
index 85000312..b2aca641 100644
--- a/scheduler/cups-driverd.cxx
+++ b/scheduler/cups-driverd.cxx
@@ -1,5 +1,5 @@
/*
- * "$Id: cups-driverd.cxx 10276 2012-02-13 22:48:22Z mike $"
+ * "$Id: cups-driverd.cxx 10489 2012-05-21 16:05:58Z mike $"
*
* PPD/driver support for CUPS.
*
@@ -18,26 +18,31 @@
*
* Contents:
*
- * main() - Scan for drivers and return an IPP response.
- * add_ppd() - Add a PPD file.
- * cat_drv() - Generate a PPD from a driver info file.
- * cat_ppd() - Copy a PPD file to stdout.
+ * main() - Scan for drivers and return an IPP response.
+ * add_ppd() - Add a PPD file.
+ * cat_drv() - Generate a PPD from a driver info file.
+ * cat_ppd() - Copy a PPD file to stdout.
* copy_static() - Copy a static PPD file to stdout.
+ * cat_tar() - Copy an archived PPD file to stdout.
* compare_inodes() - Compare two inodes.
* compare_matches() - Compare PPD match scores for sorting.
* compare_names() - Compare PPD filenames for sorting.
* compare_ppds() - Compare PPD file make and model names for sorting.
* dump_ppds_dat() - Dump the contents of the ppds.dat file.
* free_array() - Free an array of strings.
+ * get_file() - Get the filename associated with a request.
* list_ppds() - List PPD files.
* load_drv() - Load the PPDs from a driver information file.
* load_drivers() - Load driver-generated PPD files.
+ * load_ppd() - Load a PPD file.
* load_ppds() - Load PPD files recursively.
* load_ppds_dat() - Load the ppds.dat file.
+ * load_tar() - Load archived PPD files.
+ * read_tar() - Read a file header from an archive.
* regex_device_id() - Compile a regular expression based on the 1284 device
- * ID.
+ * ID.
* regex_string() - Construct a regular expression to compare a simple
- * string.
+ * string.
*/
/*
@@ -67,16 +72,23 @@
#define PPD_TYPE_FAX 3 /* Facsimile/MFD PPD */
#define PPD_TYPE_UNKNOWN 4 /* Other/hybrid PPD */
#define PPD_TYPE_DRV 5 /* Driver info file */
+#define PPD_TYPE_ARCHIVE 6 /* Archive file */
-static const char * const ppd_types[] = /* ppd-type values */
-{
- "postscript",
- "pdf",
- "raster",
- "fax",
- "unknown",
- "drv"
-};
+#define TAR_BLOCK 512 /* Number of bytes in a block */
+#define TAR_BLOCKS 10 /* Blocking factor */
+
+#define TAR_MAGIC "ustar" /* 5 chars and a null */
+#define TAR_VERSION "00" /* POSIX tar version */
+
+#define TAR_OLDNORMAL '\0' /* Normal disk file, Unix compat */
+#define TAR_NORMAL '0' /* Normal disk file */
+#define TAR_LINK '1' /* Link to previously dumped file */
+#define TAR_SYMLINK '2' /* Symbolic link */
+#define TAR_CHR '3' /* Character special file */
+#define TAR_BLK '4' /* Block special file */
+#define TAR_DIR '5' /* Directory */
+#define TAR_FIFO '6' /* FIFO special file */
+#define TAR_CONTIG '7' /* Contiguous file */
/*
@@ -110,15 +122,51 @@ typedef struct /**** In-memory record ****/
ppd_rec_t record; /* PPDs.dat record */
} ppd_info_t;
+typedef union /**** TAR record format ****/
+{
+ unsigned char all[TAR_BLOCK]; /* Raw data block */
+ struct
+ {
+ char pathname[100], /* Destination path */
+ mode[8], /* Octal file permissions */
+ uid[8], /* Octal user ID */
+ gid[8], /* Octal group ID */
+ size[12], /* Octal size in bytes */
+ mtime[12], /* Octal modification time */
+ chksum[8], /* Octal checksum value */
+ linkflag, /* File type */
+ linkname[100], /* Source path for link */
+ magic[6], /* Magic string */
+ version[2], /* Format version */
+ uname[32], /* User name */
+ gname[32], /* Group name */
+ devmajor[8], /* Octal device major number */
+ devminor[8], /* Octal device minor number */
+ prefix[155]; /* Prefix for long filenames */
+ } header;
+} tar_rec_t;
+
/*
* Globals...
*/
-cups_array_t *Inodes = NULL, /* Inodes of directories we've visited */
- *PPDsByName = NULL, /* PPD files sorted by filename and name */
- *PPDsByMakeModel = NULL;/* PPD files sorted by make and model */
-int ChangedPPD; /* Did we change the PPD database? */
+static cups_array_t *Inodes = NULL, /* Inodes of directories we've visited */
+ *PPDsByName = NULL,
+ /* PPD files sorted by filename and name */
+ *PPDsByMakeModel = NULL;
+ /* PPD files sorted by make and model */
+static int ChangedPPD; /* Did we change the PPD database? */
+static const char * const PPDTypes[] = /* ppd-type values */
+ {
+ "postscript",
+ "pdf",
+ "raster",
+ "fax",
+ "unknown",
+ "drv",
+ "archive"
+ };
/*
@@ -135,6 +183,7 @@ static ppd_info_t *add_ppd(const char *filename, const char *name,
static int cat_drv(const char *name, int request_id);
static int cat_ppd(const char *name, int request_id);
static int cat_static(const char *name, int request_id);
+static int cat_tar(const char *name, int request_id);
static int compare_inodes(struct stat *a, struct stat *b);
static int compare_matches(const ppd_info_t *p0,
const ppd_info_t *p1);
@@ -142,16 +191,26 @@ static int compare_names(const ppd_info_t *p0,
const ppd_info_t *p1);
static int compare_ppds(const ppd_info_t *p0,
const ppd_info_t *p1);
-static int dump_ppds_dat(void);
+static int dump_ppds_dat(const char *filename);
static void free_array(cups_array_t *a);
+static cups_file_t *get_file(const char *name, int request_id,
+ const char *subdir, char *buffer,
+ size_t bufsize, char **subfile);
static int list_ppds(int request_id, int limit, const char *opt);
static int load_drivers(cups_array_t *include,
cups_array_t *exclude);
static int load_drv(const char *filename, const char *name,
cups_file_t *fp, time_t mtime, off_t size);
+static void load_ppd(const char *filename, const char *name,
+ const char *scheme, struct stat *fileinfo,
+ ppd_info_t *ppd, cups_file_t *fp, off_t end);
static int load_ppds(const char *d, const char *p, int descend);
static void load_ppds_dat(char *filename, size_t filesize,
int verbose);
+static int load_tar(const char *filename, const char *name,
+ cups_file_t *fp, time_t mtime, off_t size);
+static int read_tar(cups_file_t *fp, char *name, size_t namesize,
+ struct stat *info);
static regex_t *regex_device_id(const char *device_id);
static regex_t *regex_string(const char *s);
@@ -174,8 +233,8 @@ main(int argc, /* I - Number of command-line args */
if (argc == 3 && !strcmp(argv[1], "cat"))
return (cat_ppd(argv[2], 0));
- else if (argc == 2 && !strcmp(argv[1], "dump"))
- return (dump_ppds_dat());
+ else if ((argc == 2 || argc == 3) && !strcmp(argv[1], "dump"))
+ return (dump_ppds_dat(argv[2]));
else if (argc == 4 && !strcmp(argv[1], "get"))
return (cat_ppd(argv[3], atoi(argv[2])));
else if (argc == 5 && !strcmp(argv[1], "list"))
@@ -281,7 +340,7 @@ static int /* O - Exit code */
cat_drv(const char *name, /* I - PPD name */
int request_id) /* I - Request ID for response? */
{
- const char *datadir; // CUPS_DATADIR env var
+ cups_file_t *fp; // File pointer
ppdcSource *src; // PPD source file data
ppdcDriver *d; // Current driver
cups_file_t *out; // Stdout via CUPS file API
@@ -295,23 +354,16 @@ cat_drv(const char *name, /* I - PPD name */
int port; // Port number (unused)
- // Determine where CUPS has installed the data files...
- if ((datadir = getenv("CUPS_DATADIR")) == NULL)
- datadir = CUPS_DATADIR;
-
// Pull out the path to the .drv file...
if (httpSeparateURI(HTTP_URI_CODING_ALL, name, scheme, sizeof(scheme),
userpass, sizeof(userpass), host, sizeof(host), &port,
- resource, sizeof(resource)) < HTTP_URI_OK ||
- strstr(resource, "../") ||
- (pc_file_name = strrchr(resource, '/')) == NULL ||
- pc_file_name == resource)
+ resource, sizeof(resource)) < HTTP_URI_OK)
{
- fprintf(stderr, "ERROR: Bad PPD name \"%s\"!\n", name);
+ fprintf(stderr, "ERROR: Bad PPD name \"%s\".\n", name);
if (request_id)
{
- snprintf(message, sizeof(message), "Bad PPD name \"%s\"!", name);
+ snprintf(message, sizeof(message), "Bad PPD name \"%s\".", name);
cupsdSendIPPHeader(IPP_NOT_FOUND, request_id);
cupsdSendIPPGroup(IPP_TAG_OPERATION);
@@ -325,21 +377,11 @@ cat_drv(const char *name, /* I - PPD name */
return (1);
}
- *pc_file_name++ = '\0';
-
-#ifdef __APPLE__
- if (!strncmp(resource, "/Library/Printers/PPDs/Contents/Resources/", 42) ||
- !strncmp(resource, "/System/Library/Printers/PPDs/Contents/Resources/", 49))
- strlcpy(filename, resource, sizeof(filename));
- else
-#endif // __APPLE__
- {
- snprintf(filename, sizeof(filename), "%s/drv%s", datadir, resource);
- if (access(filename, 0))
- snprintf(filename, sizeof(filename), "%s/model%s", datadir, resource);
- }
+ if ((fp = get_file(resource, request_id, "drv", filename, sizeof(filename),
+ &pc_file_name)) == NULL)
+ return (1);
- src = new ppdcSource(filename);
+ src = new ppdcSource(filename, fp);
for (d = (ppdcDriver *)src->drivers->first();
d;
@@ -387,11 +429,11 @@ cat_drv(const char *name, /* I - PPD name */
}
else
{
- fprintf(stderr, "ERROR: PPD \"%s\" not found!\n", name);
+ fprintf(stderr, "ERROR: PPD \"%s\" not found.\n", name);
if (request_id)
{
- snprintf(message, sizeof(message), "PPD \"%s\" not found!", name);
+ snprintf(message, sizeof(message), "PPD \"%s\" not found.", name);
cupsdSendIPPHeader(IPP_NOT_FOUND, request_id);
cupsdSendIPPGroup(IPP_TAG_OPERATION);
@@ -404,6 +446,7 @@ cat_drv(const char *name, /* I - PPD name */
}
src->release();
+ cupsFileClose(fp);
return (!d);
}
@@ -439,7 +482,12 @@ cat_ppd(const char *name, /* I - PPD name */
*/
name += 5;
- scheme[0] = '\0';
+
+ while (*name == '/')
+ name ++;
+
+ if (!strstr(name, ".tar/") && !strstr(name, ".tar.gz/"))
+ scheme[0] = '\0';
}
}
else
@@ -452,6 +500,8 @@ cat_ppd(const char *name, /* I - PPD name */
return (cat_static(name, request_id));
else if (!strcmp(scheme, "drv"))
return (cat_drv(name, request_id));
+ else if (!strcmp(scheme, "file"))
+ return (cat_tar(name, request_id));
else
{
/*
@@ -540,144 +590,132 @@ cat_static(const char *name, /* I - PPD name */
int request_id) /* I - Request ID for response? */
{
cups_file_t *fp; /* PPD file */
- const char *datadir; /* CUPS_DATADIR env var */
- char line[1024], /* Line/filename */
- message[2048]; /* status-message */
-#ifdef __APPLE__
- const char *printerDriver, /* Pointer to .printerDriver extension */
- *slash; /* Pointer to next slash */
-#endif /* __APPLE__ */
-
-
- if (name[0] == '/' || strstr(name, "../") || strstr(name, "/.."))
- {
- /*
- * Bad name...
- */
-
- fprintf(stderr, "ERROR: [cups-driverd] Bad PPD name \"%s\"!\n", name);
-
- if (request_id)
- {
- snprintf(message, sizeof(message), "Bad PPD name \"%s\"!", name);
+ char filename[1024], /* PPD filename */
+ line[1024]; /* Line buffer */
- cupsdSendIPPHeader(IPP_NOT_FOUND, request_id);
- cupsdSendIPPGroup(IPP_TAG_OPERATION);
- cupsdSendIPPString(IPP_TAG_CHARSET, "attributes-charset", "utf-8");
- cupsdSendIPPString(IPP_TAG_LANGUAGE, "attributes-natural-language",
- "en-US");
- cupsdSendIPPString(IPP_TAG_TEXT, "status-message", message);
- cupsdSendIPPTrailer();
- }
+ if ((fp = get_file(name, request_id, "model", filename, sizeof(filename),
+ NULL)) == NULL)
return (1);
+
+ if (request_id)
+ {
+ cupsdSendIPPHeader(IPP_OK, request_id);
+ cupsdSendIPPGroup(IPP_TAG_OPERATION);
+ cupsdSendIPPString(IPP_TAG_CHARSET, "attributes-charset", "utf-8");
+ cupsdSendIPPString(IPP_TAG_LANGUAGE, "attributes-natural-language",
+ "en-US");
+ cupsdSendIPPTrailer();
}
/*
- * Try opening the file...
+ * Now copy the file to stdout...
*/
-#ifdef __APPLE__
- if (!strncmp(name, "System/Library/Printers/PPDs/Contents/Resources/", 48) ||
- !strncmp(name, "Library/Printers/PPDs/Contents/Resources/", 41) ||
- (!strncmp(name, "System/Library/Printers/", 24) &&
- (printerDriver =
- strstr(name + 24,
- ".printerDriver/Contents/Resources/PPDs")) != NULL &&
- (slash = strchr(name + 24, '/')) != NULL &&
- slash > printerDriver) ||
- (!strncmp(name, "Library/Printers/", 17) &&
- (printerDriver =
- strstr(name + 17,
- ".printerDriver/Contents/Resources/PPDs")) != NULL &&
- (slash = strchr(name + 17, '/')) != NULL &&
- slash > printerDriver))
- {
- /*
- * Map ppd-name to Mac OS X standard locations...
- */
+ while (cupsFileGets(fp, line, sizeof(line)))
+ puts(line);
- snprintf(line, sizeof(line), "/%s", name);
- }
- else
+ cupsFileClose(fp);
-#elif defined(__linux)
- if (!strncmp(name, "lsb/usr/", 8))
- {
- /*
- * Map ppd-name to LSB standard /usr/share/ppd location...
- */
+ return (0);
+}
- snprintf(line, sizeof(line), "/usr/share/ppd/%s", name + 8);
- }
- else if (!strncmp(name, "lsb/opt/", 8))
- {
- /*
- * Map ppd-name to LSB standard /opt/share/ppd location...
- */
- snprintf(line, sizeof(line), "/opt/share/ppd/%s", name + 8);
- }
- else if (!strncmp(name, "lsb/local/", 10))
- {
- /*
- * Map ppd-name to LSB standard /usr/local/share/ppd location...
- */
+/*
+ * 'cat_tar()' - Copy an archived PPD file to stdout.
+ */
- snprintf(line, sizeof(line), "/usr/local/share/ppd/%s", name + 10);
- }
- else
+static int /* O - Exit code */
+cat_tar(const char *name, /* I - PPD name */
+ int request_id) /* I - Request ID */
+{
+ cups_file_t *fp; /* Archive file pointer */
+ char filename[1024], /* Archive filename */
+ *ppdname, /* PPD filename in archive */
+ curname[256], /* Current name in archive */
+ buffer[8192]; /* Copy buffer */
+ struct stat curinfo; /* Current file info in archive */
+ off_t total, /* Total bytes copied */
+ next; /* Offset for next record in archive */
+ ssize_t bytes; /* Bytes read */
-#endif /* __APPLE__ */
- {
- if ((datadir = getenv("CUPS_DATADIR")) == NULL)
- datadir = CUPS_DATADIR;
- snprintf(line, sizeof(line), "%s/model/%s", datadir, name);
- }
+ /*
+ * Open the archive file...
+ */
- if ((fp = cupsFileOpen(line, "r")) == NULL)
+ if ((fp = get_file(name, request_id, "model", filename, sizeof(filename),
+ &ppdname)) == NULL)
+ return (1);
+
+ /*
+ * Scan the archive for the PPD...
+ */
+
+ while (read_tar(fp, curname, sizeof(curname), &curinfo))
{
- fprintf(stderr, "ERROR: [cups-driverd] Unable to open \"%s\" - %s\n",
- line, strerror(errno));
+ next = cupsFileTell(fp) + ((curinfo.st_size + TAR_BLOCK - 1) &
+ ~(TAR_BLOCK - 1));
- if (request_id)
+ if (!strcmp(ppdname, curname))
{
- snprintf(message, sizeof(message), "Unable to open \"%s\" - %s",
- line, strerror(errno));
+ if (request_id)
+ {
+ cupsdSendIPPHeader(IPP_OK, request_id);
+ cupsdSendIPPGroup(IPP_TAG_OPERATION);
+ cupsdSendIPPString(IPP_TAG_CHARSET, "attributes-charset", "utf-8");
+ cupsdSendIPPString(IPP_TAG_LANGUAGE, "attributes-natural-language",
+ "en-US");
+ cupsdSendIPPTrailer();
+ }
- cupsdSendIPPHeader(IPP_NOT_FOUND, request_id);
- cupsdSendIPPGroup(IPP_TAG_OPERATION);
- cupsdSendIPPString(IPP_TAG_CHARSET, "attributes-charset", "utf-8");
- cupsdSendIPPString(IPP_TAG_LANGUAGE, "attributes-natural-language",
- "en-US");
- cupsdSendIPPString(IPP_TAG_TEXT, "status-message", message);
- cupsdSendIPPTrailer();
+ for (total = 0; total < curinfo.st_size; total += bytes)
+ {
+ if ((size_t)(bytes = (curinfo.st_size - total)) > sizeof(buffer))
+ bytes = sizeof(buffer);
+
+ if ((bytes = cupsFileRead(fp, buffer, bytes)) < 0)
+ {
+ if (errno == EINTR || errno == EAGAIN)
+ {
+ bytes = 0;
+ }
+ else
+ {
+ perror("ERROR: [cups-driverd] Read error");
+ break;
+ }
+ }
+ else if (bytes > 0 && fwrite(buffer, bytes, 1, stdout) != 1)
+ break;
+ }
+
+ cupsFileClose(fp);
+ return (0);
}
- return (1);
+ if (cupsFileTell(fp) != next)
+ cupsFileSeek(fp, next);
}
+ cupsFileClose(fp);
+
+ fprintf(stderr, "ERROR: PPD \"%s\" not found.\n", name);
+
if (request_id)
{
- cupsdSendIPPHeader(IPP_OK, request_id);
+ snprintf(buffer, sizeof(buffer), "PPD \"%s\" not found.", name);
+
+ cupsdSendIPPHeader(IPP_NOT_FOUND, request_id);
cupsdSendIPPGroup(IPP_TAG_OPERATION);
cupsdSendIPPString(IPP_TAG_CHARSET, "attributes-charset", "utf-8");
cupsdSendIPPString(IPP_TAG_LANGUAGE, "attributes-natural-language",
"en-US");
+ cupsdSendIPPString(IPP_TAG_TEXT, "status-message", buffer);
cupsdSendIPPTrailer();
}
- /*
- * Now copy the file to stdout...
- */
-
- while (cupsFileGets(fp, line, sizeof(line)))
- puts(line);
-
- cupsFileClose(fp);
-
- return (0);
+ return (1);
}
@@ -763,9 +801,9 @@ compare_ppds(const ppd_info_t *p0, /* I - First PPD file */
*/
static int /* O - Exit status */
-dump_ppds_dat(void)
+dump_ppds_dat(const char *filename) /* I - Filename */
{
- char filename[1024]; /* ppds.dat filename */
+ char temp[1024]; /* ppds.dat filename */
ppd_info_t *ppd; /* Current PPD */
@@ -773,7 +811,12 @@ dump_ppds_dat(void)
* See if we a PPD database file...
*/
- load_ppds_dat(filename, sizeof(filename), 0);
+ if (filename)
+ strlcpy(temp, filename, sizeof(temp));
+ else
+ temp[0] = '\0';
+
+ load_ppds_dat(temp, sizeof(temp), 0);
puts("mtime,size,model_number,type,filename,name,languages0,products0,"
"psversions0,make,make_and_model,device_id,scheme");
@@ -813,6 +856,173 @@ free_array(cups_array_t *a) /* I - Array to free */
/*
+ * 'get_file()' - Get the filename associated with a request.
+ */
+
+static cups_file_t * /* O - File pointer or NULL */
+get_file(const char *name, /* I - Name */
+ int request_id, /* I - Request ID */
+ const char *subdir, /* I - Subdirectory for file */
+ char *buffer, /* I - Filename buffer */
+ size_t bufsize, /* I - Size of filename buffer */
+ char **subfile) /* O - Sub-filename */
+{
+ cups_file_t *fp; /* File pointer */
+ const char *datadir; /* CUPS_DATADIR env var */
+ char *bufptr, /* Pointer into filename buffer */
+ message[2048]; /* status-message */
+#ifdef __APPLE__
+ const char *printerDriver, /* Pointer to .printerDriver extension */
+ *slash; /* Pointer to next slash */
+#endif /* __APPLE__ */
+
+
+ if (subfile)
+ *subfile = NULL;
+
+ while (*name == '/')
+ name ++;
+
+ if (strstr(name, "../") || strstr(name, "/.."))
+ {
+ /*
+ * Bad name...
+ */
+
+ fprintf(stderr, "ERROR: [cups-driverd] Bad PPD name \"%s\".\n", name);
+
+ if (request_id)
+ {
+ snprintf(message, sizeof(message), "Bad PPD name \"%s\".", name);
+
+ cupsdSendIPPHeader(IPP_NOT_FOUND, request_id);
+ cupsdSendIPPGroup(IPP_TAG_OPERATION);
+ cupsdSendIPPString(IPP_TAG_CHARSET, "attributes-charset", "utf-8");
+ cupsdSendIPPString(IPP_TAG_LANGUAGE, "attributes-natural-language",
+ "en-US");
+ cupsdSendIPPString(IPP_TAG_TEXT, "status-message", message);
+ cupsdSendIPPTrailer();
+ }
+
+ return (NULL);
+ }
+
+ /*
+ * Try opening the file...
+ */
+
+#ifdef __APPLE__
+ if (!strncmp(name, "System/Library/Printers/PPDs/Contents/Resources/", 48) ||
+ !strncmp(name, "Library/Printers/PPDs/Contents/Resources/", 41) ||
+ (!strncmp(name, "System/Library/Printers/", 24) &&
+ (printerDriver =
+ strstr(name + 24,
+ ".printerDriver/Contents/Resources/PPDs")) != NULL &&
+ (slash = strchr(name + 24, '/')) != NULL &&
+ slash > printerDriver) ||
+ (!strncmp(name, "Library/Printers/", 17) &&
+ (printerDriver =
+ strstr(name + 17,
+ ".printerDriver/Contents/Resources/PPDs")) != NULL &&
+ (slash = strchr(name + 17, '/')) != NULL &&
+ slash > printerDriver))
+ {
+ /*
+ * Map ppd-name to OS X standard locations...
+ */
+
+ snprintf(buffer, bufsize, "/%s", name);
+ }
+ else
+
+#elif defined(__linux)
+ if (!strncmp(name, "lsb/usr/", 8))
+ {
+ /*
+ * Map ppd-name to LSB standard /usr/share/ppd location...
+ */
+
+ snprintf(buffer, bufsize, "/usr/share/ppd/%s", name + 8);
+ }
+ else if (!strncmp(name, "lsb/opt/", 8))
+ {
+ /*
+ * Map ppd-name to LSB standard /opt/share/ppd location...
+ */
+
+ snprintf(buffer, bufsize, "/opt/share/ppd/%s", name + 8);
+ }
+ else if (!strncmp(name, "lsb/local/", 10))
+ {
+ /*
+ * Map ppd-name to LSB standard /usr/local/share/ppd location...
+ */
+
+ snprintf(buffer, bufsize, "/usr/local/share/ppd/%s", name + 10);
+ }
+ else
+
+#endif /* __APPLE__ */
+ {
+ if ((datadir = getenv("CUPS_DATADIR")) == NULL)
+ datadir = CUPS_DATADIR;
+
+ snprintf(buffer, bufsize, "%s/%s/%s", datadir, subdir, name);
+ }
+
+ /*
+ * Strip anything after ".drv/", ".drv.gz/", ".tar/", or ".tar.gz/"...
+ */
+
+ if (subfile)
+ {
+ if ((bufptr = strstr(buffer, ".drv/")) != NULL)
+ bufptr += 4;
+ else if ((bufptr = strstr(buffer, ".drv.gz/")) != NULL)
+ bufptr += 7;
+ else if ((bufptr = strstr(buffer, ".tar/")) != NULL)
+ bufptr += 4;
+ else if ((bufptr = strstr(buffer, ".tar.gz/")) != NULL)
+ bufptr += 7;
+
+ if (bufptr)
+ {
+ *bufptr++ = '\0';
+ *subfile = bufptr;
+ }
+ }
+
+ /*
+ * Try opening the file...
+ */
+
+ if ((fp = cupsFileOpen(buffer, "r")) == NULL)
+ {
+ fprintf(stderr, "ERROR: [cups-driverd] Unable to open \"%s\" - %s\n",
+ buffer, strerror(errno));
+
+ if (request_id)
+ {
+ snprintf(message, sizeof(message), "Unable to open \"%s\" - %s",
+ buffer, strerror(errno));
+
+ cupsdSendIPPHeader(IPP_NOT_FOUND, request_id);
+ cupsdSendIPPGroup(IPP_TAG_OPERATION);
+ cupsdSendIPPString(IPP_TAG_CHARSET, "attributes-charset", "utf-8");
+ cupsdSendIPPString(IPP_TAG_LANGUAGE, "attributes-natural-language",
+ "en-US");
+ cupsdSendIPPString(IPP_TAG_TEXT, "status-message", message);
+ cupsdSendIPPTrailer();
+ }
+
+ return (NULL);
+ }
+
+ return (fp);
+}
+
+
+/*
* 'list_ppds()' - List PPD files.
*/
@@ -869,6 +1079,7 @@ list_ppds(int request_id, /* I - Request ID */
* See if we a PPD database file...
*/
+ filename[0] = '\0';
load_ppds_dat(filename, sizeof(filename), 1);
/*
@@ -888,7 +1099,7 @@ list_ppds(int request_id, /* I - Request ID */
#ifdef __APPLE__
/*
- * Load PPDs from standard Mac OS X locations...
+ * Load PPDs from standard OS X locations...
*/
load_ppds("/Library/Printers",
@@ -1029,12 +1240,12 @@ list_ppds(int request_id, /* I - Request ID */
if (type_str)
{
for (type = 0;
- type < (int)(sizeof(ppd_types) / sizeof(ppd_types[0]));
+ type < (int)(sizeof(PPDTypes) / sizeof(PPDTypes[0]));
type ++)
- if (!strcmp(type_str, ppd_types[type]))
+ if (!strcmp(type_str, PPDTypes[type]))
break;
- if (type >= (int)(sizeof(ppd_types) / sizeof(ppd_types[0])))
+ if (type >= (int)(sizeof(PPDTypes) / sizeof(PPDTypes[0])))
{
fprintf(stderr, "ERROR: [cups-driverd] Bad ppd-type=\"%s\" ignored!\n",
type_str);
@@ -1273,11 +1484,14 @@ list_ppds(int request_id, /* I - Request ID */
{
sent_header = 1;
- cupsdSendIPPHeader(IPP_OK, request_id);
- cupsdSendIPPGroup(IPP_TAG_OPERATION);
- cupsdSendIPPString(IPP_TAG_CHARSET, "attributes-charset", "utf-8");
- cupsdSendIPPString(IPP_TAG_LANGUAGE, "attributes-natural-language",
- "en-US");
+ if (request_id)
+ {
+ cupsdSendIPPHeader(IPP_OK, request_id);
+ cupsdSendIPPGroup(IPP_TAG_OPERATION);
+ cupsdSendIPPString(IPP_TAG_CHARSET, "attributes-charset", "utf-8");
+ cupsdSendIPPString(IPP_TAG_LANGUAGE, "attributes-natural-language",
+ "en-US");
+ }
}
fprintf(stderr, "DEBUG2: [cups-driverd] Sending %s (%s)...\n",
@@ -1285,56 +1499,61 @@ list_ppds(int request_id, /* I - Request ID */
count --;
- cupsdSendIPPGroup(IPP_TAG_PRINTER);
+ if (request_id)
+ {
+ cupsdSendIPPGroup(IPP_TAG_PRINTER);
- if (send_name)
- cupsdSendIPPString(IPP_TAG_NAME, "ppd-name", ppd->record.name);
+ if (send_name)
+ cupsdSendIPPString(IPP_TAG_NAME, "ppd-name", ppd->record.name);
- if (send_natural_language)
- {
- cupsdSendIPPString(IPP_TAG_LANGUAGE, "ppd-natural-language",
- ppd->record.languages[0]);
+ if (send_natural_language)
+ {
+ cupsdSendIPPString(IPP_TAG_LANGUAGE, "ppd-natural-language",
+ ppd->record.languages[0]);
- for (i = 1; i < PPD_MAX_LANG && ppd->record.languages[i][0]; i ++)
- cupsdSendIPPString(IPP_TAG_LANGUAGE, "", ppd->record.languages[i]);
- }
+ for (i = 1; i < PPD_MAX_LANG && ppd->record.languages[i][0]; i ++)
+ cupsdSendIPPString(IPP_TAG_LANGUAGE, "", ppd->record.languages[i]);
+ }
- if (send_make)
- cupsdSendIPPString(IPP_TAG_TEXT, "ppd-make", ppd->record.make);
+ if (send_make)
+ cupsdSendIPPString(IPP_TAG_TEXT, "ppd-make", ppd->record.make);
- if (send_make_and_model)
- cupsdSendIPPString(IPP_TAG_TEXT, "ppd-make-and-model",
- ppd->record.make_and_model);
+ if (send_make_and_model)
+ cupsdSendIPPString(IPP_TAG_TEXT, "ppd-make-and-model",
+ ppd->record.make_and_model);
- if (send_device_id)
- cupsdSendIPPString(IPP_TAG_TEXT, "ppd-device-id",
- ppd->record.device_id);
+ if (send_device_id)
+ cupsdSendIPPString(IPP_TAG_TEXT, "ppd-device-id",
+ ppd->record.device_id);
- if (send_product)
- {
- cupsdSendIPPString(IPP_TAG_TEXT, "ppd-product",
- ppd->record.products[0]);
+ if (send_product)
+ {
+ cupsdSendIPPString(IPP_TAG_TEXT, "ppd-product",
+ ppd->record.products[0]);
- for (i = 1; i < PPD_MAX_PROD && ppd->record.products[i][0]; i ++)
- cupsdSendIPPString(IPP_TAG_TEXT, "", ppd->record.products[i]);
- }
+ for (i = 1; i < PPD_MAX_PROD && ppd->record.products[i][0]; i ++)
+ cupsdSendIPPString(IPP_TAG_TEXT, "", ppd->record.products[i]);
+ }
- if (send_psversion)
- {
- cupsdSendIPPString(IPP_TAG_TEXT, "ppd-psversion",
- ppd->record.psversions[0]);
+ if (send_psversion)
+ {
+ cupsdSendIPPString(IPP_TAG_TEXT, "ppd-psversion",
+ ppd->record.psversions[0]);
- for (i = 1; i < PPD_MAX_VERS && ppd->record.psversions[i][0]; i ++)
- cupsdSendIPPString(IPP_TAG_TEXT, "", ppd->record.psversions[i]);
- }
+ for (i = 1; i < PPD_MAX_VERS && ppd->record.psversions[i][0]; i ++)
+ cupsdSendIPPString(IPP_TAG_TEXT, "", ppd->record.psversions[i]);
+ }
- if (send_type)
- cupsdSendIPPString(IPP_TAG_KEYWORD, "ppd-type",
- ppd_types[ppd->record.type]);
+ if (send_type)
+ cupsdSendIPPString(IPP_TAG_KEYWORD, "ppd-type",
+ PPDTypes[ppd->record.type]);
- if (send_model_number)
- cupsdSendIPPInteger(IPP_TAG_INTEGER, "ppd-model-number",
- ppd->record.model_number);
+ if (send_model_number)
+ cupsdSendIPPInteger(IPP_TAG_INTEGER, "ppd-model-number",
+ ppd->record.model_number);
+ }
+ else
+ printf("%s (%s)\n", ppd->record.name, ppd->record.make_and_model);
/*
* If we have only requested the ppd-make attribute, then skip
@@ -1358,7 +1577,7 @@ list_ppds(int request_id, /* I - Request ID */
}
}
- if (!sent_header)
+ if (!sent_header && request_id)
{
cupsdSendIPPHeader(IPP_NOT_FOUND, request_id);
cupsdSendIPPGroup(IPP_TAG_OPERATION);
@@ -1366,7 +1585,8 @@ list_ppds(int request_id, /* I - Request ID */
cupsdSendIPPString(IPP_TAG_LANGUAGE, "attributes-natural-language", "en-US");
}
- cupsdSendIPPTrailer();
+ if (request_id)
+ cupsdSendIPPTrailer();
return (0);
}
@@ -1687,12 +1907,12 @@ load_drivers(cups_array_t *include, /* I - Drivers to include */
*start++ = '\0';
for (type = 0;
- type < (int)(sizeof(ppd_types) / sizeof(ppd_types[0]));
+ type < (int)(sizeof(PPDTypes) / sizeof(PPDTypes[0]));
type ++)
- if (!strcmp(type_str, ppd_types[type]))
+ if (!strcmp(type_str, PPDTypes[type]))
break;
- if (type >= (int)(sizeof(ppd_types) / sizeof(ppd_types[0])))
+ if (type >= (int)(sizeof(PPDTypes) / sizeof(PPDTypes[0])))
{
fprintf(stderr,
"ERROR: [cups-driverd] Bad ppd-type \"%s\" ignored!\n",
@@ -1745,24 +1965,21 @@ load_drivers(cups_array_t *include, /* I - Drivers to include */
/*
- * 'load_ppds()' - Load PPD files recursively.
+ * 'load_ppd()' - Load a PPD file.
*/
-static int /* O - 1 on success, 0 on failure */
-load_ppds(const char *d, /* I - Actual directory */
- const char *p, /* I - Virtual path in name */
- int descend) /* I - Descend into directories? */
+static void
+load_ppd(const char *filename, /* I - Real filename */
+ const char *name, /* I - Virtual filename */
+ const char *scheme, /* I - PPD scheme */
+ struct stat *fileinfo, /* I - File information */
+ ppd_info_t *ppd, /* I - Existing PPD file or NULL */
+ cups_file_t *fp, /* I - File to read from */
+ off_t end) /* I - End of file position or 0 */
{
- struct stat dinfo, /* Directory information */
- *dinfoptr; /* Pointer to match */
int i; /* Looping var */
- cups_file_t *fp; /* Pointer to file */
- cups_dir_t *dir; /* Directory pointer */
- cups_dentry_t *dent; /* Directory entry */
- char filename[1024], /* Name of PPD or directory */
- line[256], /* Line from backend */
- *ptr, /* Pointer into name */
- name[128], /* Name of PPD file */
+ char line[256], /* Line from file */
+ *ptr, /* Pointer into line */
lang_version[64], /* PPD LanguageVersion */
lang_encoding[64], /* PPD LanguageEncoding */
country[64], /* Country code */
@@ -1780,8 +1997,6 @@ load_ppds(const char *d, /* I - Actual directory */
cups_array_t *products, /* Product array */
*psversions, /* PSVersion array */
*cups_languages; /* cupsLanguages array */
- ppd_info_t *ppd, /* New PPD file */
- key; /* Search key */
int new_ppd; /* Is this a new PPD? */
struct /* LanguageVersion translation table */
{
@@ -1816,6 +2031,379 @@ load_ppds(const char *d, /* I - Actual directory */
/*
+ * Now read until we get the required fields...
+ */
+
+ cups_languages = cupsArrayNew(NULL, NULL);
+ products = cupsArrayNew(NULL, NULL);
+ psversions = cupsArrayNew(NULL, NULL);
+
+ model_name[0] = '\0';
+ nick_name[0] = '\0';
+ manufacturer[0] = '\0';
+ device_id[0] = '\0';
+ lang_encoding[0] = '\0';
+ strcpy(lang_version, "en");
+ model_number = 0;
+ install_group = 0;
+ type = PPD_TYPE_POSTSCRIPT;
+
+ while ((end == 0 || cupsFileTell(fp) < end) &&
+ cupsFileGets(fp, line, sizeof(line)))
+ {
+ if (!strncmp(line, "*Manufacturer:", 14))
+ sscanf(line, "%*[^\"]\"%255[^\"]", manufacturer);
+ else if (!strncmp(line, "*ModelName:", 11))
+ sscanf(line, "%*[^\"]\"%127[^\"]", model_name);
+ else if (!strncmp(line, "*LanguageEncoding:", 18))
+ sscanf(line, "%*[^:]:%63s", lang_encoding);
+ else if (!strncmp(line, "*LanguageVersion:", 17))
+ sscanf(line, "%*[^:]:%63s", lang_version);
+ else if (!strncmp(line, "*NickName:", 10))
+ sscanf(line, "%*[^\"]\"%255[^\"]", nick_name);
+ else if (!_cups_strncasecmp(line, "*1284DeviceID:", 14))
+ {
+ sscanf(line, "%*[^\"]\"%255[^\"]", device_id);
+
+ // Make sure device ID ends with a semicolon...
+ if (device_id[0] && device_id[strlen(device_id) - 1] != ';')
+ strlcat(device_id, ";", sizeof(device_id));
+ }
+ else if (!strncmp(line, "*Product:", 9))
+ {
+ if (sscanf(line, "%*[^\"]\"(%255[^\"]", product) == 1)
+ {
+ /*
+ * Make sure the value ends with a right parenthesis - can't stop at
+ * the first right paren since the product name may contain escaped
+ * parenthesis...
+ */
+
+ ptr = product + strlen(product) - 1;
+ if (ptr > product && *ptr == ')')
+ {
+ /*
+ * Yes, ends with a parenthesis, so remove it from the end and
+ * add the product to the list...
+ */
+
+ *ptr = '\0';
+ cupsArrayAdd(products, strdup(product));
+ }
+ }
+ }
+ else if (!strncmp(line, "*PSVersion:", 11))
+ {
+ sscanf(line, "%*[^\"]\"%255[^\"]", psversion);
+ cupsArrayAdd(psversions, strdup(psversion));
+ }
+ else if (!strncmp(line, "*cupsLanguages:", 15))
+ {
+ char *start; /* Start of language */
+
+
+ for (start = line + 15; *start && isspace(*start & 255); start ++);
+
+ if (*start++ == '\"')
+ {
+ while (*start)
+ {
+ for (ptr = start + 1;
+ *ptr && *ptr != '\"' && !isspace(*ptr & 255);
+ ptr ++);
+
+ if (*ptr)
+ {
+ *ptr++ = '\0';
+
+ while (isspace(*ptr & 255))
+ *ptr++ = '\0';
+ }
+
+ cupsArrayAdd(cups_languages, strdup(start));
+ start = ptr;
+ }
+ }
+ }
+ else if (!strncmp(line, "*cupsFax:", 9))
+ {
+ for (ptr = line + 9; isspace(*ptr & 255); ptr ++);
+
+ if (!_cups_strncasecmp(ptr, "true", 4))
+ type = PPD_TYPE_FAX;
+ }
+ else if (!strncmp(line, "*cupsFilter:", 12) && type == PPD_TYPE_POSTSCRIPT)
+ {
+ if (strstr(line + 12, "application/vnd.cups-raster"))
+ type = PPD_TYPE_RASTER;
+ else if (strstr(line + 12, "application/vnd.cups-pdf"))
+ type = PPD_TYPE_PDF;
+ }
+ else if (!strncmp(line, "*cupsModelNumber:", 17))
+ sscanf(line, "*cupsModelNumber:%d", &model_number);
+ else if (!strncmp(line, "*OpenGroup: Installable", 23))
+ install_group = 1;
+ else if (!strncmp(line, "*CloseGroup:", 12))
+ install_group = 0;
+ else if (!strncmp(line, "*OpenUI", 7))
+ {
+ /*
+ * Stop early if we have a NickName or ModelName attributes
+ * before the first non-installable OpenUI...
+ */
+
+ if (!install_group && (model_name[0] || nick_name[0]) &&
+ cupsArrayCount(products) > 0 && cupsArrayCount(psversions) > 0)
+ break;
+ }
+ }
+
+ /*
+ * See if we got all of the required info...
+ */
+
+ if (nick_name[0])
+ cupsCharsetToUTF8((cups_utf8_t *)make_model, nick_name,
+ sizeof(make_model), _ppdGetEncoding(lang_encoding));
+ else
+ strcpy(make_model, model_name);
+
+ while (isspace(make_model[0] & 255))
+ _cups_strcpy(make_model, make_model + 1);
+
+ if (!make_model[0] || cupsArrayCount(products) == 0 ||
+ cupsArrayCount(psversions) == 0)
+ {
+ /*
+ * We don't have all the info needed, so skip this file...
+ */
+
+ if (!make_model[0])
+ fprintf(stderr, "WARNING: Missing NickName and ModelName in %s!\n",
+ filename);
+
+ if (cupsArrayCount(products) == 0)
+ fprintf(stderr, "WARNING: Missing Product in %s!\n", filename);
+
+ if (cupsArrayCount(psversions) == 0)
+ fprintf(stderr, "WARNING: Missing PSVersion in %s!\n", filename);
+
+ free_array(products);
+ free_array(psversions);
+ free_array(cups_languages);
+
+ return;
+ }
+
+ if (model_name[0])
+ cupsArrayAdd(products, strdup(model_name));
+
+ /*
+ * Normalize the make and model string...
+ */
+
+ while (isspace(manufacturer[0] & 255))
+ _cups_strcpy(manufacturer, manufacturer + 1);
+
+ if (!_cups_strncasecmp(make_model, manufacturer, strlen(manufacturer)))
+ strlcpy(temp, make_model, sizeof(temp));
+ else
+ snprintf(temp, sizeof(temp), "%s %s", manufacturer, make_model);
+
+ _ppdNormalizeMakeAndModel(temp, make_model, sizeof(make_model));
+
+ /*
+ * See if we got a manufacturer...
+ */
+
+ if (!manufacturer[0] || !strcmp(manufacturer, "ESP"))
+ {
+ /*
+ * Nope, copy the first part of the make and model then...
+ */
+
+ strlcpy(manufacturer, make_model, sizeof(manufacturer));
+
+ /*
+ * Truncate at the first space, dash, or slash, or make the
+ * manufacturer "Other"...
+ */
+
+ for (ptr = manufacturer; *ptr; ptr ++)
+ if (*ptr == ' ' || *ptr == '-' || *ptr == '/')
+ break;
+
+ if (*ptr && ptr > manufacturer)
+ *ptr = '\0';
+ else
+ strcpy(manufacturer, "Other");
+ }
+ else if (!_cups_strncasecmp(manufacturer, "LHAG", 4) ||
+ !_cups_strncasecmp(manufacturer, "linotype", 8))
+ strcpy(manufacturer, "LHAG");
+ else if (!_cups_strncasecmp(manufacturer, "Hewlett", 7))
+ strcpy(manufacturer, "HP");
+
+ /*
+ * Fix the lang_version as needed...
+ */
+
+ if ((ptr = strchr(lang_version, '-')) != NULL)
+ *ptr++ = '\0';
+ else if ((ptr = strchr(lang_version, '_')) != NULL)
+ *ptr++ = '\0';
+
+ if (ptr)
+ {
+ /*
+ * Setup the country suffix...
+ */
+
+ country[0] = '_';
+ _cups_strcpy(country + 1, ptr);
+ }
+ else
+ {
+ /*
+ * No country suffix...
+ */
+
+ country[0] = '\0';
+ }
+
+ for (i = 0; i < (int)(sizeof(languages) / sizeof(languages[0])); i ++)
+ if (!_cups_strcasecmp(languages[i].version, lang_version))
+ break;
+
+ if (i < (int)(sizeof(languages) / sizeof(languages[0])))
+ {
+ /*
+ * Found a known language...
+ */
+
+ snprintf(lang_version, sizeof(lang_version), "%s%s",
+ languages[i].language, country);
+ }
+ else
+ {
+ /*
+ * Unknown language; use "xx"...
+ */
+
+ strcpy(lang_version, "xx");
+ }
+
+ /*
+ * Record the PPD file...
+ */
+
+ new_ppd = !ppd;
+
+ if (new_ppd)
+ {
+ /*
+ * Add new PPD file...
+ */
+
+ fprintf(stderr, "DEBUG2: [cups-driverd] Adding ppd \"%s\"...\n", name);
+
+ ppd = add_ppd(name, name, lang_version, manufacturer, make_model,
+ device_id, (char *)cupsArrayFirst(products),
+ (char *)cupsArrayFirst(psversions),
+ fileinfo->st_mtime, fileinfo->st_size,
+ model_number, type, scheme);
+
+ if (!ppd)
+ return;
+ }
+ else
+ {
+ /*
+ * Update existing record...
+ */
+
+ fprintf(stderr, "DEBUG2: [cups-driverd] Updating ppd \"%s\"...\n", name);
+
+ memset(ppd, 0, sizeof(ppd_info_t));
+
+ ppd->found = 1;
+ ppd->record.mtime = fileinfo->st_mtime;
+ ppd->record.size = fileinfo->st_size;
+ ppd->record.model_number = model_number;
+ ppd->record.type = type;
+
+ strlcpy(ppd->record.filename, name, sizeof(ppd->record.filename));
+ strlcpy(ppd->record.name, name, sizeof(ppd->record.name));
+ strlcpy(ppd->record.languages[0], lang_version,
+ sizeof(ppd->record.languages[0]));
+ strlcpy(ppd->record.products[0], (char *)cupsArrayFirst(products),
+ sizeof(ppd->record.products[0]));
+ strlcpy(ppd->record.psversions[0], (char *)cupsArrayFirst(psversions),
+ sizeof(ppd->record.psversions[0]));
+ strlcpy(ppd->record.make, manufacturer, sizeof(ppd->record.make));
+ strlcpy(ppd->record.make_and_model, make_model,
+ sizeof(ppd->record.make_and_model));
+ strlcpy(ppd->record.device_id, device_id, sizeof(ppd->record.device_id));
+ strlcpy(ppd->record.scheme, scheme, sizeof(ppd->record.scheme));
+ }
+
+ /*
+ * Add remaining products, versions, and languages...
+ */
+
+ for (i = 1;
+ i < PPD_MAX_PROD && (ptr = (char *)cupsArrayNext(products)) != NULL;
+ i ++)
+ strlcpy(ppd->record.products[i], ptr,
+ sizeof(ppd->record.products[0]));
+
+ for (i = 1;
+ i < PPD_MAX_VERS && (ptr = (char *)cupsArrayNext(psversions)) != NULL;
+ i ++)
+ strlcpy(ppd->record.psversions[i], ptr,
+ sizeof(ppd->record.psversions[0]));
+
+ for (i = 1, ptr = (char *)cupsArrayFirst(cups_languages);
+ i < PPD_MAX_LANG && ptr;
+ i ++, ptr = (char *)cupsArrayNext(cups_languages))
+ strlcpy(ppd->record.languages[i], ptr,
+ sizeof(ppd->record.languages[0]));
+
+ /*
+ * Free products, versions, and languages...
+ */
+
+ free_array(cups_languages);
+ free_array(products);
+ free_array(psversions);
+
+ ChangedPPD = 1;
+}
+
+
+/*
+ * 'load_ppds()' - Load PPD files recursively.
+ */
+
+static int /* O - 1 on success, 0 on failure */
+load_ppds(const char *d, /* I - Actual directory */
+ const char *p, /* I - Virtual path in name */
+ int descend) /* I - Descend into directories? */
+{
+ struct stat dinfo, /* Directory information */
+ *dinfoptr; /* Pointer to match */
+ cups_file_t *fp; /* Pointer to file */
+ cups_dir_t *dir; /* Directory pointer */
+ cups_dentry_t *dent; /* Directory entry */
+ char filename[1024], /* Name of PPD or directory */
+ line[256], /* Line from file */
+ *ptr, /* Pointer into name */
+ name[128]; /* Name of PPD file */
+ ppd_info_t *ppd, /* New PPD file */
+ key; /* Search key */
+
+
+ /*
* See if we've loaded this directory before...
*/
@@ -1915,8 +2503,7 @@ load_ppds(const char *d, /* I - Actual directory */
continue;
}
- else if ((ptr = filename + strlen(filename) - 6) > filename &&
- !strcmp(ptr, ".plist"))
+ else if (strstr(filename, ".plist"))
{
/*
* Skip plist files in the PPDs directory...
@@ -1973,373 +2560,36 @@ load_ppds(const char *d, /* I - Actual directory */
line[0] = '\0';
cupsFileGets(fp, line, sizeof(line));
- if (strncmp(line, "*PPD-Adobe:", 11))
- {
- /*
- * Nope, treat it as a driver information file...
- */
-
- load_drv(filename, name, fp, dent->fileinfo.st_mtime,
- dent->fileinfo.st_size);
- continue;
- }
-
- /*
- * Now read until we get the NickName field...
- */
-
- cups_languages = cupsArrayNew(NULL, NULL);
- products = cupsArrayNew(NULL, NULL);
- psversions = cupsArrayNew(NULL, NULL);
-
- model_name[0] = '\0';
- nick_name[0] = '\0';
- manufacturer[0] = '\0';
- device_id[0] = '\0';
- lang_encoding[0] = '\0';
- strcpy(lang_version, "en");
- model_number = 0;
- install_group = 0;
- type = PPD_TYPE_POSTSCRIPT;
-
- while (cupsFileGets(fp, line, sizeof(line)) != NULL)
- {
- if (!strncmp(line, "*Manufacturer:", 14))
- sscanf(line, "%*[^\"]\"%255[^\"]", manufacturer);
- else if (!strncmp(line, "*ModelName:", 11))
- sscanf(line, "%*[^\"]\"%127[^\"]", model_name);
- else if (!strncmp(line, "*LanguageEncoding:", 18))
- sscanf(line, "%*[^:]:%63s", lang_encoding);
- else if (!strncmp(line, "*LanguageVersion:", 17))
- sscanf(line, "%*[^:]:%63s", lang_version);
- else if (!strncmp(line, "*NickName:", 10))
- sscanf(line, "%*[^\"]\"%255[^\"]", nick_name);
- else if (!_cups_strncasecmp(line, "*1284DeviceID:", 14))
- {
- sscanf(line, "%*[^\"]\"%255[^\"]", device_id);
-
- // Make sure device ID ends with a semicolon...
- if (device_id[0] && device_id[strlen(device_id) - 1] != ';')
- strlcat(device_id, ";", sizeof(device_id));
- }
- else if (!strncmp(line, "*Product:", 9))
- {
- if (sscanf(line, "%*[^\"]\"(%255[^\"]", product) == 1)
- {
- /*
- * Make sure the value ends with a right parenthesis - can't stop at
- * the first right paren since the product name may contain escaped
- * parenthesis...
- */
-
- ptr = product + strlen(product) - 1;
- if (ptr > product && *ptr == ')')
- {
- /*
- * Yes, ends with a parenthesis, so remove it from the end and
- * add the product to the list...
- */
-
- *ptr = '\0';
- cupsArrayAdd(products, strdup(product));
- }
- }
- }
- else if (!strncmp(line, "*PSVersion:", 11))
- {
- sscanf(line, "%*[^\"]\"%255[^\"]", psversion);
- cupsArrayAdd(psversions, strdup(psversion));
- }
- else if (!strncmp(line, "*cupsLanguages:", 15))
- {
- char *start; /* Start of language */
-
-
- for (start = line + 15; *start && isspace(*start & 255); start ++);
-
- if (*start++ == '\"')
- {
- while (*start)
- {
- for (ptr = start + 1;
- *ptr && *ptr != '\"' && !isspace(*ptr & 255);
- ptr ++);
-
- if (*ptr)
- {
- *ptr++ = '\0';
-
- while (isspace(*ptr & 255))
- *ptr++ = '\0';
- }
-
- cupsArrayAdd(cups_languages, strdup(start));
- start = ptr;
- }
- }
- }
- else if (!strncmp(line, "*cupsFax:", 9))
- {
- for (ptr = line + 9; isspace(*ptr & 255); ptr ++);
-
- if (!_cups_strncasecmp(ptr, "true", 4))
- type = PPD_TYPE_FAX;
- }
- else if (!strncmp(line, "*cupsFilter:", 12) && type == PPD_TYPE_POSTSCRIPT)
- {
- if (strstr(line + 12, "application/vnd.cups-raster"))
- type = PPD_TYPE_RASTER;
- else if (strstr(line + 12, "application/vnd.cups-pdf"))
- type = PPD_TYPE_PDF;
- }
- else if (!strncmp(line, "*cupsModelNumber:", 17))
- sscanf(line, "*cupsModelNumber:%d", &model_number);
- else if (!strncmp(line, "*OpenGroup: Installable", 23))
- install_group = 1;
- else if (!strncmp(line, "*CloseGroup:", 12))
- install_group = 0;
- else if (!strncmp(line, "*OpenUI", 7))
- {
- /*
- * Stop early if we have a NickName or ModelName attributes
- * before the first non-installable OpenUI...
- */
-
- if (!install_group && (model_name[0] || nick_name[0]) &&
- cupsArrayCount(products) > 0 && cupsArrayCount(psversions) > 0)
- break;
- }
- }
-
- /*
- * Close the file...
- */
-
- cupsFileClose(fp);
-
- /*
- * See if we got all of the required info...
- */
-
- if (nick_name[0])
- cupsCharsetToUTF8((cups_utf8_t *)make_model, nick_name,
- sizeof(make_model), _ppdGetEncoding(lang_encoding));
- else
- strcpy(make_model, model_name);
-
- while (isspace(make_model[0] & 255))
- _cups_strcpy(make_model, make_model + 1);
-
- if (!make_model[0] || cupsArrayCount(products) == 0 ||
- cupsArrayCount(psversions) == 0)
+ if (!strncmp(line, "*PPD-Adobe:", 11))
{
/*
- * We don't have all the info needed, so skip this file...
+ * Yes, load it...
*/
- if (!make_model[0])
- fprintf(stderr, "WARNING: Missing NickName and ModelName in %s!\n",
- filename);
-
- if (cupsArrayCount(products) == 0)
- fprintf(stderr, "WARNING: Missing Product in %s!\n", filename);
-
- if (cupsArrayCount(psversions) == 0)
- fprintf(stderr, "WARNING: Missing PSVersion in %s!\n", filename);
-
- free_array(products);
- free_array(psversions);
- free_array(cups_languages);
-
- continue;
+ load_ppd(filename, name, "file", &dent->fileinfo, ppd, fp, 0);
}
-
- if (model_name[0])
- cupsArrayAdd(products, strdup(model_name));
-
- /*
- * Normalize the make and model string...
- */
-
- while (isspace(manufacturer[0] & 255))
- _cups_strcpy(manufacturer, manufacturer + 1);
-
- if (!_cups_strncasecmp(make_model, manufacturer, strlen(manufacturer)))
- strlcpy(temp, make_model, sizeof(temp));
else
- snprintf(temp, sizeof(temp), "%s %s", manufacturer, make_model);
-
- _ppdNormalizeMakeAndModel(temp, make_model, sizeof(make_model));
-
- /*
- * See if we got a manufacturer...
- */
-
- if (!manufacturer[0] || !strcmp(manufacturer, "ESP"))
{
/*
- * Nope, copy the first part of the make and model then...
- */
-
- strlcpy(manufacturer, make_model, sizeof(manufacturer));
-
- /*
- * Truncate at the first space, dash, or slash, or make the
- * manufacturer "Other"...
+ * Nope, treat it as a driver information file or archive...
*/
- for (ptr = manufacturer; *ptr; ptr ++)
- if (*ptr == ' ' || *ptr == '-' || *ptr == '/')
- break;
+ cupsFileRewind(fp);
- if (*ptr && ptr > manufacturer)
- *ptr = '\0';
+ if ((ptr = strstr(filename, ".tar")) != NULL &&
+ (!strcmp(ptr, ".tar") || !strcmp(ptr, ".tar.gz")))
+ load_tar(filename, name, fp, dent->fileinfo.st_mtime,
+ dent->fileinfo.st_size);
else
- strcpy(manufacturer, "Other");
- }
- else if (!_cups_strncasecmp(manufacturer, "LHAG", 4) ||
- !_cups_strncasecmp(manufacturer, "linotype", 8))
- strcpy(manufacturer, "LHAG");
- else if (!_cups_strncasecmp(manufacturer, "Hewlett", 7))
- strcpy(manufacturer, "HP");
-
- /*
- * Fix the lang_version as needed...
- */
-
- if ((ptr = strchr(lang_version, '-')) != NULL)
- *ptr++ = '\0';
- else if ((ptr = strchr(lang_version, '_')) != NULL)
- *ptr++ = '\0';
-
- if (ptr)
- {
- /*
- * Setup the country suffix...
- */
-
- country[0] = '_';
- _cups_strcpy(country + 1, ptr);
- }
- else
- {
- /*
- * No country suffix...
- */
-
- country[0] = '\0';
- }
-
- for (i = 0; i < (int)(sizeof(languages) / sizeof(languages[0])); i ++)
- if (!_cups_strcasecmp(languages[i].version, lang_version))
- break;
-
- if (i < (int)(sizeof(languages) / sizeof(languages[0])))
- {
- /*
- * Found a known language...
- */
-
- snprintf(lang_version, sizeof(lang_version), "%s%s",
- languages[i].language, country);
- }
- else
- {
- /*
- * Unknown language; use "xx"...
- */
-
- strcpy(lang_version, "xx");
- }
-
- /*
- * Record the PPD file...
- */
-
- new_ppd = !ppd;
-
- if (new_ppd)
- {
- /*
- * Add new PPD file...
- */
-
- fprintf(stderr, "DEBUG2: [cups-driverd] Adding ppd \"%s\"...\n", name);
-
- ppd = add_ppd(name, name, lang_version, manufacturer, make_model,
- device_id, (char *)cupsArrayFirst(products),
- (char *)cupsArrayFirst(psversions),
- dent->fileinfo.st_mtime, dent->fileinfo.st_size,
- model_number, type, "file");
-
- if (!ppd)
- {
- cupsDirClose(dir);
- return (0);
- }
- }
- else
- {
- /*
- * Update existing record...
- */
-
- fprintf(stderr, "DEBUG2: [cups-driverd] Updating ppd \"%s\"...\n", name);
-
- memset(ppd, 0, sizeof(ppd_info_t));
-
- ppd->found = 1;
- ppd->record.mtime = dent->fileinfo.st_mtime;
- ppd->record.size = dent->fileinfo.st_size;
- ppd->record.model_number = model_number;
- ppd->record.type = type;
-
- strlcpy(ppd->record.filename, name, sizeof(ppd->record.filename));
- strlcpy(ppd->record.name, name, sizeof(ppd->record.name));
- strlcpy(ppd->record.languages[0], lang_version,
- sizeof(ppd->record.languages[0]));
- strlcpy(ppd->record.products[0], (char *)cupsArrayFirst(products),
- sizeof(ppd->record.products[0]));
- strlcpy(ppd->record.psversions[0], (char *)cupsArrayFirst(psversions),
- sizeof(ppd->record.psversions[0]));
- strlcpy(ppd->record.make, manufacturer, sizeof(ppd->record.make));
- strlcpy(ppd->record.make_and_model, make_model,
- sizeof(ppd->record.make_and_model));
- strlcpy(ppd->record.device_id, device_id, sizeof(ppd->record.device_id));
- strlcpy(ppd->record.scheme, "file", sizeof(ppd->record.scheme));
+ load_drv(filename, name, fp, dent->fileinfo.st_mtime,
+ dent->fileinfo.st_size);
}
/*
- * Add remaining products, versions, and languages...
- */
-
- for (i = 1;
- i < PPD_MAX_PROD && (ptr = (char *)cupsArrayNext(products)) != NULL;
- i ++)
- strlcpy(ppd->record.products[i], ptr,
- sizeof(ppd->record.products[0]));
-
- for (i = 1;
- i < PPD_MAX_VERS && (ptr = (char *)cupsArrayNext(psversions)) != NULL;
- i ++)
- strlcpy(ppd->record.psversions[i], ptr,
- sizeof(ppd->record.psversions[0]));
-
- for (i = 1, ptr = (char *)cupsArrayFirst(cups_languages);
- i < PPD_MAX_LANG && ptr;
- i ++, ptr = (char *)cupsArrayNext(cups_languages))
- strlcpy(ppd->record.languages[i], ptr,
- sizeof(ppd->record.languages[0]));
-
- /*
- * Free products, versions, and languages...
+ * Close the file...
*/
- free_array(cups_languages);
- free_array(products);
- free_array(psversions);
-
- ChangedPPD = 1;
+ cupsFileClose(fp);
}
cupsDirClose(dir);
@@ -2367,10 +2617,14 @@ load_ppds_dat(char *filename, /* I - Filename buffer */
PPDsByMakeModel = cupsArrayNew((cups_array_func_t)compare_ppds, NULL);
ChangedPPD = 0;
- if ((cups_cachedir = getenv("CUPS_CACHEDIR")) == NULL)
- cups_cachedir = CUPS_CACHEDIR;
+ if (!filename[0])
+ {
+ if ((cups_cachedir = getenv("CUPS_CACHEDIR")) == NULL)
+ cups_cachedir = CUPS_CACHEDIR;
+
+ snprintf(filename, filesize, "%s/ppds.dat", cups_cachedir);
+ }
- snprintf(filename, filesize, "%s/ppds.dat", cups_cachedir);
if ((fp = cupsFileOpen(filename, "r")) != NULL)
{
/*
@@ -2425,6 +2679,117 @@ load_ppds_dat(char *filename, /* I - Filename buffer */
/*
+ * 'load_tar()' - Load archived PPD files.
+ */
+
+static int /* O - 1 on success, 0 on failure */
+load_tar(const char *filename, /* I - Actual filename */
+ const char *name, /* I - Name to the rest of the world */
+ cups_file_t *fp, /* I - File to read from */
+ time_t mtime, /* I - Mod time of driver info file */
+ off_t size) /* I - Size of driver info file */
+{
+ char curname[256], /* Current archive file name */
+ uri[1024]; /* Virtual file URI */
+ const char *curext; /* Extension on file */
+ struct stat curinfo; /* Current archive file information */
+ off_t next; /* Position for next header */
+
+
+ /*
+ * Add a dummy entry for the file...
+ */
+
+ (void)filename;
+
+ add_ppd(name, name, "", "", "", "", "", "", mtime, size, 0,
+ PPD_TYPE_ARCHIVE, "file");
+ ChangedPPD = 1;
+
+ /*
+ * Scan for PPDs in the archive...
+ */
+
+ while (read_tar(fp, curname, sizeof(curname), &curinfo))
+ {
+ next = cupsFileTell(fp) + ((curinfo.st_size + TAR_BLOCK - 1) &
+ ~(TAR_BLOCK - 1));
+
+ if ((curext = strrchr(curname, '.')) != NULL &&
+ !_cups_strcasecmp(curext, ".ppd"))
+ {
+ httpAssembleURIf(HTTP_URI_CODING_ALL, uri, sizeof(uri), "file", "", "",
+ 0, "/%s/%s", name, curname);
+ load_ppd(name, uri, "file", &curinfo, NULL, fp, next);
+ }
+
+ if (cupsFileTell(fp) != next)
+ cupsFileSeek(fp, next);
+ }
+
+ return (1);
+}
+
+
+/*
+ * 'read_tar()' - Read a file header from an archive.
+ *
+ * This function skips all directories and special files.
+ */
+
+static int /* O - 1 if found, 0 on EOF */
+read_tar(cups_file_t *fp, /* I - Archive to read */
+ char *name, /* I - Filename buffer */
+ size_t namesize, /* I - Size of filename buffer */
+ struct stat *info) /* O - File information */
+{
+ tar_rec_t record; /* Record from file */
+
+
+ while (cupsFileRead(fp, (char *)&record, sizeof(record)) == sizeof(record))
+ {
+ /*
+ * Check for a valid tar header...
+ */
+
+ if (memcmp(record.header.magic, TAR_MAGIC, 6) ||
+ memcmp(record.header.version, TAR_VERSION, 2))
+ {
+ if (record.header.magic[0] ||
+ memcmp(record.header.magic, record.header.magic + 1, 5))
+ fputs("ERROR: [cups-driverd] Bad tar magic/version.\n", stderr);
+ break;
+ }
+
+ /*
+ * Ignore non-files...
+ */
+
+ if (record.header.linkflag != TAR_OLDNORMAL &&
+ record.header.linkflag != TAR_NORMAL)
+ continue;
+
+ /*
+ * Grab size and name from tar header and return...
+ */
+
+ if (record.header.prefix[0])
+ snprintf(name, namesize, "%s/%s", record.header.prefix,
+ record.header.pathname);
+ else
+ strlcpy(name, record.header.pathname, namesize);
+
+ info->st_mtime = strtol(record.header.mtime, NULL, 8);
+ info->st_size = strtoll(record.header.size, NULL, 8);
+
+ return (1);
+ }
+
+ return (0);
+}
+
+
+/*
* 'regex_device_id()' - Compile a regular expression based on the 1284 device
* ID.
*/
@@ -2582,5 +2947,5 @@ regex_string(const char *s) /* I - String to compare */
/*
- * End of "$Id: cups-driverd.cxx 10276 2012-02-13 22:48:22Z mike $".
+ * End of "$Id: cups-driverd.cxx 10489 2012-05-21 16:05:58Z mike $".
*/
diff --git a/scheduler/cups-exec.c b/scheduler/cups-exec.c
index 6918c7f3..d24bdc11 100644
--- a/scheduler/cups-exec.c
+++ b/scheduler/cups-exec.c
@@ -1,9 +1,9 @@
/*
- * "$Id: cups-exec.c 9931 2011-08-29 20:12:39Z mike $"
+ * "$Id: cups-exec.c 10523 2012-06-20 15:01:07Z mike $"
*
* Sandbox helper for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -60,6 +60,7 @@ main(int argc, /* I - Number of command-line args */
}
#ifdef HAVE_SANDBOX_H
+# pragma GCC diagnostic ignored "-Wdeprecated-declarations"
/*
* Run in a separate security profile...
*/
@@ -104,5 +105,5 @@ main(int argc, /* I - Number of command-line args */
/*
- * End of "$Id: cups-exec.c 9931 2011-08-29 20:12:39Z mike $".
+ * End of "$Id: cups-exec.c 10523 2012-06-20 15:01:07Z mike $".
*/
diff --git a/scheduler/cups-lpd.c b/scheduler/cups-lpd.c
index 423aeb45..ba4c4fac 100644
--- a/scheduler/cups-lpd.c
+++ b/scheduler/cups-lpd.c
@@ -1,5 +1,5 @@
/*
- * "$Id: cups-lpd.c 10526 2012-06-20 16:16:25Z mike $"
+ * "$Id: cups-lpd.c 10524 2012-06-20 15:13:33Z mike $"
*
* Line Printer Daemon interface for CUPS.
*
@@ -1622,5 +1622,5 @@ smart_gets(char *s, /* I - Pointer to line buffer */
/*
- * End of "$Id: cups-lpd.c 10526 2012-06-20 16:16:25Z mike $".
+ * End of "$Id: cups-lpd.c 10524 2012-06-20 15:13:33Z mike $".
*/
diff --git a/scheduler/cups-polld.c b/scheduler/cups-polld.c
deleted file mode 100644
index 65b2e68b..00000000
--- a/scheduler/cups-polld.c
+++ /dev/null
@@ -1,470 +0,0 @@
-/*
- * "$Id: cups-polld.c 10321 2012-03-02 18:26:30Z mike $"
- *
- * Polling daemon for CUPS.
- *
- * Copyright 2007-2012 by Apple Inc.
- * Copyright 1997-2006 by Easy Software Products, all rights reserved.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * main() - Open sockets and poll until we are killed...
- * dequote() - Remote quotes from a string.
- * poll_server() - Poll the server for the given set of printers or
- * classes.
- * sighup_handler() - Handle 'hangup' signals to restart polling.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include <cups/cups-private.h>
-#include <signal.h>
-
-
-/*
- * Local globals...
- */
-
-static int restart_polling = 1;
-
-
-/*
- * Local functions...
- */
-
-static char *dequote(char *d, const char *s, int dlen);
-static int poll_server(http_t *http, int sock, int port, int interval,
- const char *prefix);
-static void sighup_handler(int sig);
-
-
-/*
- * 'main()' - Open sockets and poll until we are killed...
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line args */
- char *argv[]) /* I - Command-line arguments */
-{
- http_t *http; /* HTTP connection */
- int interval; /* Polling interval */
- int sock; /* Browser sock */
- int port; /* Browser port */
- int val; /* Socket option value */
- int seconds, /* Seconds left from poll */
- remain; /* Total remaining time to sleep */
- char prefix[1024]; /* Prefix for log messages */
-#if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
- struct sigaction action; /* Actions for POSIX signals */
-#endif /* HAVE_SIGACTION && !HAVE_SIGSET */
-
-
- /*
- * Catch hangup signals for when the network changes...
- */
-
-#ifdef HAVE_SIGSET /* Use System V signals over POSIX to avoid bugs */
- sigset(SIGHUP, sighup_handler);
-#elif defined(HAVE_SIGACTION)
- memset(&action, 0, sizeof(action));
-
- sigemptyset(&action.sa_mask);
- sigaddset(&action.sa_mask, SIGHUP);
- action.sa_handler = sighup_handler;
- sigaction(SIGHUP, &action, NULL);
-#else
- signal(SIGHUP, sighup_handler);
-#endif /* HAVE_SIGSET */
-
- /*
- * Don't buffer log messages...
- */
-
- setbuf(stderr, NULL);
-
- /*
- * The command-line must contain the following:
- *
- * cups-polld server server-port interval port
- */
-
- if (argc != 5)
- {
- fputs("Usage: cups-polld server server-port interval port\n", stderr);
- return (1);
- }
-
- interval = atoi(argv[3]);
- port = atoi(argv[4]);
-
- if (interval < 2)
- interval = 2;
-
- snprintf(prefix, sizeof(prefix), "[cups-polld %s:%d]", argv[1], atoi(argv[2]));
-
- /*
- * Open a broadcast socket...
- */
-
- if ((sock = socket(AF_INET, SOCK_DGRAM, 0)) < 0)
- {
- fprintf(stderr, "ERROR: %s Unable to open broadcast socket: %s\n", prefix,
- strerror(errno));
- return (1);
- }
-
- /*
- * Set the "broadcast" flag...
- */
-
- val = 1;
- if (setsockopt(sock, SOL_SOCKET, SO_BROADCAST, &val, sizeof(val)))
- {
- fprintf(stderr, "ERROR: %s Unable to put socket in broadcast mode: %s\n",
- prefix, strerror(errno));
-
- close(sock);
- return (1);
- }
-
- /*
- * Loop forever, asking for available printers and classes...
- */
-
- for (http = NULL; !ferror(stderr);)
- {
- /*
- * Open a connection to the server...
- */
-
- if (restart_polling || !http)
- {
- restart_polling = 0;
- httpClose(http);
-
- if ((http = httpConnectEncrypt(argv[1], atoi(argv[2]),
- cupsEncryption())) == NULL)
- {
- fprintf(stderr, "ERROR: %s Unable to connect to %s on port %s.\n",
- prefix, argv[1], argv[2]);
- }
- }
-
- /*
- * Get the printers and classes...
- */
-
- remain = interval;
-
- if (http && (seconds = poll_server(http, sock, port, interval, prefix)) > 0)
- remain -= seconds;
-
- /*
- * Sleep for any remaining time...
- */
-
- if (remain > 0 && !restart_polling)
- sleep(remain);
- }
-
- return (1);
-}
-
-
-/*
- * 'dequote()' - Remote quotes from a string.
- */
-
-static char * /* O - Dequoted string */
-dequote(char *d, /* I - Destination string */
- const char *s, /* I - Source string */
- int dlen) /* I - Destination length */
-{
- char *dptr; /* Pointer into destination */
-
-
- if (s)
- {
- for (dptr = d, dlen --; *s && dlen > 0; s ++)
- if (*s != '\"')
- {
- *dptr++ = *s;
- dlen --;
- }
-
- *dptr = '\0';
- }
- else
- *d = '\0';
-
- return (d);
-}
-
-
-/*
- * 'poll_server()' - Poll the server for the given set of printers or classes.
- */
-
-static int /* O - Number of seconds or -1 on error */
-poll_server(http_t *http, /* I - HTTP connection */
- int sock, /* I - Broadcast sock */
- int port, /* I - Broadcast port */
- int interval, /* I - Polling interval */
- const char *prefix) /* I - Prefix for log messages */
-{
- int seconds; /* Number of seconds */
- int count, /* Current number of printers/classes */
- max_count; /* Maximum printers/classes per second */
- ipp_t *request, /* Request data */
- *response; /* Response data */
- ipp_attribute_t *attr; /* Current attribute */
- const char *uri; /* printer-uri */
- char info[1024], /* printer-info */
- job_sheets[1024],/* job-sheets-default */
- location[1024], /* printer-location */
- make_model[1024];
- /* printer-make-and-model */
- cups_ptype_t type; /* printer-type */
- ipp_pstate_t state; /* printer-state */
- int accepting; /* printer-is-accepting-jobs */
- struct sockaddr_in addr; /* Broadcast address */
- char packet[1540]; /* Data packet */
- static const char * const attrs[] = /* Requested attributes */
- {
- "job-sheets-default",
- "printer-info",
- "printer-is-accepting-jobs",
- "printer-location",
- "printer-make-and-model",
- "printer-name",
- "printer-state",
- "printer-type",
- "printer-uri-supported"
- };
-
-
- /*
- * Broadcast to 127.0.0.1 (localhost)
- */
-
- memset(&addr, 0, sizeof(addr));
- addr.sin_addr.s_addr = htonl(0x7f000001);
- addr.sin_family = AF_INET;
- addr.sin_port = htons(port);
-
- /*
- * Build a CUPS_GET_PRINTERS request and pass along a list of the
- * attributes we are interested in along with the types of printers
- * (and classes) we want.
- */
-
- request = ippNewRequest(CUPS_GET_PRINTERS);
-
- ippAddStrings(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD,
- "requested-attributes", sizeof(attrs) / sizeof(attrs[0]),
- NULL, attrs);
-
- ippAddInteger(request, IPP_TAG_OPERATION, IPP_TAG_ENUM,
- "printer-type", 0);
- ippAddInteger(request, IPP_TAG_OPERATION, IPP_TAG_ENUM,
- "printer-type-mask",
- CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT |
- CUPS_PRINTER_NOT_SHARED);
-
- /*
- * Do the request and get back a response...
- */
-
- seconds = time(NULL);
- response = cupsDoRequest(http, request, "/");
-
- if (cupsLastError() > IPP_OK_CONFLICT)
- {
- fprintf(stderr, "ERROR: %s CUPS-Get-Printers failed: %s\n", prefix,
- cupsLastErrorString());
- ippDelete(response);
- restart_polling = 1;
- return (-1);
- }
-
- if (response)
- {
- /*
- * Figure out how many printers/classes we have...
- */
-
- for (attr = ippFindAttribute(response, "printer-name", IPP_TAG_NAME),
- max_count = 0;
- attr != NULL;
- attr = ippFindNextAttribute(response, "printer-name", IPP_TAG_NAME),
- max_count ++);
-
- fprintf(stderr, "DEBUG: %s Found %d printers.\n", prefix, max_count);
-
- count = 0;
- max_count = 2 * max_count / interval + 1;
-
- /*
- * Loop through the printers or classes returned in the list...
- */
-
- for (attr = response->attrs; attr; attr = attr->next)
- {
- /*
- * Skip leading attributes until we hit a printer...
- */
-
- while (attr && attr->group_tag != IPP_TAG_PRINTER)
- attr = attr->next;
-
- if (!attr)
- break;
-
- /*
- * Pull the needed attributes from this printer...
- */
-
- uri = NULL;
- info[0] = '\0';
- job_sheets[0] = '\0';
- location[0] = '\0';
- make_model[0] = '\0';
- type = CUPS_PRINTER_REMOTE;
- accepting = 1;
- state = IPP_PRINTER_IDLE;
-
- while (attr != NULL && attr->group_tag == IPP_TAG_PRINTER)
- {
- if (!strcmp(attr->name, "job-sheets-default") &&
- (attr->value_tag == IPP_TAG_NAME ||
- attr->value_tag == IPP_TAG_KEYWORD))
- {
- if (attr->num_values == 1)
- snprintf(job_sheets, sizeof(job_sheets), " job-sheets=%s",
- attr->values[0].string.text);
- else
- snprintf(job_sheets, sizeof(job_sheets), " job-sheets=%s,%s",
- attr->values[0].string.text,
- attr->values[1].string.text);
- }
- else if (!strcmp(attr->name, "printer-uri-supported") &&
- attr->value_tag == IPP_TAG_URI)
- uri = attr->values[0].string.text;
- else if (!strcmp(attr->name, "printer-info") &&
- attr->value_tag == IPP_TAG_TEXT)
- dequote(info, attr->values[0].string.text, sizeof(info));
- else if (!strcmp(attr->name, "printer-is-accepting-jobs") &&
- attr->value_tag == IPP_TAG_BOOLEAN)
- accepting = attr->values[0].boolean;
- else if (!strcmp(attr->name, "printer-location") &&
- attr->value_tag == IPP_TAG_TEXT)
- dequote(location, attr->values[0].string.text, sizeof(location));
- else if (!strcmp(attr->name, "printer-make-and-model") &&
- attr->value_tag == IPP_TAG_TEXT)
- dequote(make_model, attr->values[0].string.text, sizeof(location));
- else if (!strcmp(attr->name, "printer-state") &&
- attr->value_tag == IPP_TAG_ENUM)
- state = (ipp_pstate_t)attr->values[0].integer;
- else if (!strcmp(attr->name, "printer-type") &&
- attr->value_tag == IPP_TAG_ENUM)
- type = (cups_ptype_t)attr->values[0].integer;
-
- attr = attr->next;
- }
-
- /*
- * See if we have everything needed...
- */
-
- if (uri == NULL)
- {
- if (attr == NULL)
- break;
- else
- continue;
- }
-
- /*
- * Send the printer information...
- */
-
- type |= CUPS_PRINTER_REMOTE;
-
- if (!accepting)
- type |= CUPS_PRINTER_REJECTING;
-
- snprintf(packet, sizeof(packet),
- "%x %x %s \"%s\" \"%s\" \"%s\" lease-duration=%d%s\n",
- type, state, uri, location, info, make_model, interval * 2,
- job_sheets);
-
- fprintf(stderr, "DEBUG2: %s Sending %s", prefix, packet);
-
- if (sendto(sock, packet, strlen(packet), 0,
- (struct sockaddr *)&addr, sizeof(addr)) <= 0)
- {
- ippDelete(response);
- perror("cups-polld");
- return (-1);
- }
-
- /*
- * Throttle the local broadcasts as needed so that we don't
- * overwhelm the local server...
- */
-
- count ++;
- if (count >= max_count)
- {
- /*
- * Sleep for a second...
- */
-
- count = 0;
-
- sleep(1);
- }
-
- if (!attr || restart_polling)
- break;
- }
-
- ippDelete(response);
- }
-
- /*
- * Return the number of seconds we used...
- */
-
- return (time(NULL) - seconds);
-}
-
-
-/*
- * 'sighup_handler()' - Handle 'hangup' signals to restart polling.
- */
-
-static void
-sighup_handler(int sig) /* I - Signal number */
-{
- (void)sig;
-
- restart_polling = 1;
-
-#if !defined(HAVE_SIGSET) && !defined(HAVE_SIGACTION)
- signal(SIGHUP, sighup_handler);
-#endif /* !HAVE_SIGSET && !HAVE_SIGACTION */
-}
-
-
-/*
- * End of "$Id: cups-polld.c 10321 2012-03-02 18:26:30Z mike $".
- */
diff --git a/scheduler/cups.sh.in b/scheduler/cups.sh.in
index 133bca6e..49cf909a 100644
--- a/scheduler/cups.sh.in
+++ b/scheduler/cups.sh.in
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# "$Id: cups.sh.in 9949 2011-08-31 04:58:33Z mike $"
+# "$Id: cups.sh.in 9945 2011-08-31 04:57:08Z mike $"
#
# Startup/shutdown script for CUPS.
#
@@ -233,5 +233,5 @@ exit 0
#
-# End of "$Id: cups.sh.in 9949 2011-08-31 04:58:33Z mike $".
+# End of "$Id: cups.sh.in 9945 2011-08-31 04:57:08Z mike $".
#
diff --git a/scheduler/cupsd.h b/scheduler/cupsd.h
index 55d5ccb4..def25e30 100644
--- a/scheduler/cupsd.h
+++ b/scheduler/cupsd.h
@@ -1,9 +1,9 @@
/*
- * "$Id: cupsd.h 9766 2011-05-11 22:17:34Z mike $"
+ * "$Id: cupsd.h 10490 2012-05-21 17:40:22Z mike $"
*
* Main header file for the CUPS scheduler.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -82,12 +82,10 @@ extern const char *cups_hstrerror(int);
* Defaults...
*/
-#define DEFAULT_HISTORY 1 /* Preserve job history? */
-#define DEFAULT_FILES 0 /* Preserve job files? */
+#define DEFAULT_HISTORY INT_MAX /* Preserve job history? */
+#define DEFAULT_FILES 86400 /* Preserve job files? */
#define DEFAULT_TIMEOUT 300 /* Timeout during requests/updates */
#define DEFAULT_KEEPALIVE 30 /* Timeout between requests */
-#define DEFAULT_INTERVAL 30 /* Interval between browse updates */
-#define DEFAULT_CHARSET "utf-8" /* Default charset */
/*
@@ -118,6 +116,7 @@ extern const char *cups_hstrerror(int);
#include "printers.h"
#include "classes.h"
#include "job.h"
+#include "colorman.h"
#include "conf.h"
#include "banners.h"
#include "dirsvc.h"
@@ -183,10 +182,7 @@ extern void cupsdInitEnv(void);
extern int cupsdLoadEnv(char *envp[], int envmax);
extern void cupsdSetEnv(const char *name, const char *value);
extern void cupsdSetEnvf(const char *name, const char *value, ...)
-#ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 2, 3)))
-#endif /* __GNUC__ */
-;
+ __attribute__ ((__format__ (__printf__, 2, 3)));
extern void cupsdUpdateEnv(void);
/* file.c */
@@ -210,10 +206,7 @@ extern char *cupsdMakeUUID(const char *name, int number,
extern void cupsdReleaseSignals(void);
extern void cupsdSetString(char **s, const char *v);
extern void cupsdSetStringf(char **s, const char *f, ...)
-#ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 2, 3)))
-#endif /* __GNUC__ */
-;
+ __attribute__ ((__format__ (__printf__, 2, 3)));
/* process.c */
extern void *cupsdCreateProfile(int job_id);
@@ -244,5 +237,5 @@ extern void cupsdStopServer(void);
/*
- * End of "$Id: cupsd.h 9766 2011-05-11 22:17:34Z mike $".
+ * End of "$Id: cupsd.h 10490 2012-05-21 17:40:22Z mike $".
*/
diff --git a/scheduler/cupsfilter.c b/scheduler/cupsfilter.c
index 9f21a52b..ba7a9ce6 100644
--- a/scheduler/cupsfilter.c
+++ b/scheduler/cupsfilter.c
@@ -1,9 +1,9 @@
/*
- * "$Id: cupsfilter.c 9862 2011-08-03 02:44:09Z mike $"
+ * "$Id: cupsfilter.c 10434 2012-04-23 21:47:41Z mike $"
*
* Filtering program for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -102,7 +102,7 @@ static int open_pipe(int *fds);
static int read_cupsd_conf(const char *filename);
static void set_string(char **s, const char *val);
static void sighandler(int sig);
-static void usage(const char *command, const char *opt);
+static void usage(const char *opt) __attribute__((noreturn));
/*
@@ -192,7 +192,7 @@ main(int argc, /* I - Number of command-line args */
if (i < argc && !infile)
infile = argv[i];
else
- usage(command, opt);
+ usage(opt);
break;
case 'a' : /* Specify option... */
@@ -200,7 +200,7 @@ main(int argc, /* I - Number of command-line args */
if (i < argc)
num_options = cupsParseOptions(argv[i], num_options, &options);
else
- usage(command, opt);
+ usage(opt);
break;
case 'c' : /* Specify cupsd.conf file location... */
@@ -214,7 +214,7 @@ main(int argc, /* I - Number of command-line args */
strlcpy(cupsdconf, argv[i], sizeof(cupsdconf));
}
else
- usage(command, opt);
+ usage(opt);
break;
case 'd' : /* Specify the real printer name */
@@ -222,7 +222,7 @@ main(int argc, /* I - Number of command-line args */
if (i < argc)
printer = argv[i];
else
- usage(command, opt);
+ usage(opt);
break;
case 'D' : /* Delete input file after conversion */
@@ -238,7 +238,7 @@ main(int argc, /* I - Number of command-line args */
if (i < argc && !infile)
infile = argv[i];
else
- usage(command, opt);
+ usage(opt);
break;
case 'i' : /* Specify source MIME type... */
@@ -246,12 +246,12 @@ main(int argc, /* I - Number of command-line args */
if (i < argc)
{
if (sscanf(argv[i], "%15[^/]/%255s", super, type) != 2)
- usage(command, opt);
+ usage(opt);
srctype = argv[i];
}
else
- usage(command, opt);
+ usage(opt);
break;
case 'j' : /* Get job file or specify destination MIME type... */
@@ -264,7 +264,7 @@ main(int argc, /* I - Number of command-line args */
infile = TempFile;
}
else
- usage(command, opt);
+ usage(opt);
break;
}
@@ -274,12 +274,12 @@ main(int argc, /* I - Number of command-line args */
if (i < argc)
{
if (sscanf(argv[i], "%15[^/]/%255s", super, type) != 2)
- usage(command, opt);
+ usage(opt);
dsttype = argv[i];
}
else
- usage(command, opt);
+ usage(opt);
break;
case 'n' : /* Specify number of copies... */
@@ -288,7 +288,7 @@ main(int argc, /* I - Number of command-line args */
num_options = cupsAddOption("copies", argv[i], num_options,
&options);
else
- usage(command, opt);
+ usage(opt);
break;
case 'o' : /* Specify option(s) or output filename */
@@ -298,7 +298,7 @@ main(int argc, /* I - Number of command-line args */
if (!strcmp(command, "convert"))
{
if (outfile)
- usage(command, NULL);
+ usage(NULL);
else
outfile = argv[i];
}
@@ -307,7 +307,7 @@ main(int argc, /* I - Number of command-line args */
&options);
}
else
- usage(command, opt);
+ usage(opt);
break;
case 'p' : /* Specify PPD file... */
@@ -316,7 +316,7 @@ main(int argc, /* I - Number of command-line args */
if (i < argc)
ppdfile = argv[i];
else
- usage(command, opt);
+ usage(opt);
break;
case 't' : /* Specify title... */
@@ -325,7 +325,7 @@ main(int argc, /* I - Number of command-line args */
if (i < argc)
title = argv[i];
else
- usage(command, opt);
+ usage(opt);
break;
case 'u' : /* Delete PPD file after conversion */
@@ -337,11 +337,11 @@ main(int argc, /* I - Number of command-line args */
if (i < argc)
user = argv[i];
else
- usage(command, opt);
+ usage(opt);
break;
default : /* Something we don't understand... */
- usage(command, opt);
+ usage(opt);
break;
}
}
@@ -350,22 +350,17 @@ main(int argc, /* I - Number of command-line args */
if (strcmp(command, "convert"))
infile = argv[i];
else
- {
- _cupsLangPuts(stderr,
- _("convert: Use the -f option to specify a file to "
- "convert."));
- usage(command, NULL);
- }
+ usage(NULL);
}
else
{
_cupsLangPuts(stderr,
_("cupsfilter: Only one filename can be specified."));
- usage(command, NULL);
+ usage(NULL);
}
if (!infile && !srctype)
- usage(command, NULL);
+ usage(NULL);
if (!title)
{
@@ -658,7 +653,7 @@ add_printer_filters(
mime_type_t *printer_type; /* Printer filter type */
- if ((ppd = ppdOpenFile(ppdfile)) == NULL)
+ if ((ppd = _ppdOpenFile(ppdfile, _PPD_LOCALIZATION_NONE)) == NULL)
{
ppd_status_t status; /* PPD load status */
int linenum; /* Line number */
@@ -1425,70 +1420,41 @@ sighandler(int s) /* I - Signal number */
*/
static void
-usage(const char *command, /* I - Command name */
- const char *opt) /* I - Incorrect option, if any */
+usage(const char *opt) /* I - Incorrect option, if any */
{
if (opt)
- _cupsLangPrintf(stderr, _("%s: Unknown option \"%c\"."), command, *opt);
-
- if (!strcmp(command, "cupsfilter"))
- {
- _cupsLangPuts(stdout, _("Usage: cupsfilter [ options ] filename"));
- _cupsLangPuts(stdout, _("Options:"));
- _cupsLangPuts(stdout, _(" -D Remove the input file "
- "when finished."));
- _cupsLangPuts(stdout, _(" -P filename.ppd Set PPD file."));
- _cupsLangPuts(stdout, _(" -U username Set username for job."));
- _cupsLangPuts(stdout, _(" -c cupsd.conf Set cupsd.conf file to "
- "use."));
- _cupsLangPuts(stdout, _(" -d printer Use the named "
- "printer."));
- _cupsLangPuts(stdout, _(" -e Use every filter from "
- "the PPD file."));
- _cupsLangPuts(stdout, _(" -i mime/type Set input MIME type "
- "(otherwise auto-typed)."));
- _cupsLangPuts(stdout, _(" -j job-id[,N] Filter file N from the "
- "specified job (default is file 1)."));
- _cupsLangPuts(stdout, _(" -m mime/type Set output MIME type "
- "(otherwise application/pdf)."));
- _cupsLangPuts(stdout, _(" -n copies Set number of copies."));
- _cupsLangPuts(stdout, _(" -o name=value Set option(s)."));
- _cupsLangPuts(stdout, _(" -p filename.ppd Set PPD file."));
- _cupsLangPuts(stdout, _(" -t title Set title."));
- _cupsLangPuts(stdout, _(" -u Remove the PPD file "
- "when finished."));
- }
- else
- {
- _cupsLangPuts(stdout, _("Usage: convert [ options ]"));
- _cupsLangPuts(stdout, _("Options:"));
- _cupsLangPuts(stdout, _(" -D Remove the input file "
- "when finished."));
- _cupsLangPuts(stdout, _(" -J title Set title."));
- _cupsLangPuts(stdout, _(" -P filename.ppd Set PPD file."));
- _cupsLangPuts(stdout, _(" -U username Set username for job."));
- _cupsLangPuts(stdout, _(" -a 'name=value ...' Set option(s)."));
- _cupsLangPuts(stdout, _(" -c copies Set number of copies."));
- _cupsLangPuts(stdout, _(" -d printer Use the named "
- "printer."));
- _cupsLangPuts(stdout, _(" -e Use every filter from "
- "the PPD file."));
- _cupsLangPuts(stdout, _(" -f filename Set file to be "
- "converted (otherwise stdin)."));
- _cupsLangPuts(stdout, _(" -i mime/type Set input MIME type "
- "(otherwise auto-typed)."));
- _cupsLangPuts(stdout, _(" -j mime/type Set output MIME type "
- "(otherwise application/pdf)."));
- _cupsLangPuts(stdout, _(" -o filename Set file to be "
- "generated (otherwise stdout)."));
- _cupsLangPuts(stdout, _(" -u Remove the PPD file "
- "when finished."));
- }
+ _cupsLangPrintf(stderr, _("%s: Unknown option \"%c\"."), "cupsfilter",
+ *opt);
+
+ _cupsLangPuts(stdout, _("Usage: cupsfilter [ options ] filename"));
+ _cupsLangPuts(stdout, _("Options:"));
+ _cupsLangPuts(stdout, _(" -D Remove the input file "
+ "when finished."));
+ _cupsLangPuts(stdout, _(" -P filename.ppd Set PPD file."));
+ _cupsLangPuts(stdout, _(" -U username Specify username."));
+ _cupsLangPuts(stdout, _(" -c cupsd.conf Set cupsd.conf file to "
+ "use."));
+ _cupsLangPuts(stdout, _(" -d printer Use the named "
+ "printer."));
+ _cupsLangPuts(stdout, _(" -e Use every filter from "
+ "the PPD file."));
+ _cupsLangPuts(stdout, _(" -i mime/type Set input MIME type "
+ "(otherwise auto-typed)."));
+ _cupsLangPuts(stdout, _(" -j job-id[,N] Filter file N from the "
+ "specified job (default is file 1)."));
+ _cupsLangPuts(stdout, _(" -m mime/type Set output MIME type "
+ "(otherwise application/pdf)."));
+ _cupsLangPuts(stdout, _(" -n copies Set number of copies."));
+ _cupsLangPuts(stdout, _(" -o name=value Set option(s)."));
+ _cupsLangPuts(stdout, _(" -p filename.ppd Set PPD file."));
+ _cupsLangPuts(stdout, _(" -t title Set title."));
+ _cupsLangPuts(stdout, _(" -u Remove the PPD file "
+ "when finished."));
exit(1);
}
/*
- * End of "$Id: cupsfilter.c 9862 2011-08-03 02:44:09Z mike $".
+ * End of "$Id: cupsfilter.c 10434 2012-04-23 21:47:41Z mike $".
*/
diff --git a/scheduler/dirsvc.c b/scheduler/dirsvc.c
index 00e88071..b575fb43 100644
--- a/scheduler/dirsvc.c
+++ b/scheduler/dirsvc.c
@@ -1,9 +1,9 @@
/*
- * "$Id: dirsvc.c 10243 2012-02-11 02:05:21Z mike $"
+ * "$Id: dirsvc.c 10472 2012-05-18 02:25:18Z mike $"
*
* Directory services routines for the CUPS scheduler.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -14,68 +14,33 @@
*
* Contents:
*
- * cupsdDeregisterPrinter() - Stop sending broadcast information for a local
- * printer and remove any pending references to
- * remote printers.
- * cupsdLoadRemoteCache() - Load the remote printer cache.
- * cupsdRegisterPrinter() - Start sending broadcast information for a
- * printer or update the broadcast contents.
- * cupsdRestartPolling() - Restart polling servers as needed.
- * cupsdSaveRemoteCache() - Save the remote printer cache.
- * cupsdSendBrowseList() - Send new browsing information as necessary.
- * ldap_rebind_proc() - Callback function for LDAP rebind
- * ldap_connect() - Start new LDAP connection
- * ldap_reconnect() - Reconnect to LDAP Server
- * ldap_disconnect() - Disconnect from LDAP Server
- * cupsdStartBrowsing() - Start sending and receiving broadcast
- * information.
- * cupsdStartPolling() - Start polling servers as needed.
- * cupsdStopBrowsing() - Stop sending and receiving broadcast
- * information.
- * cupsdStopPolling() - Stop polling servers as needed.
- * cupsdUpdateDNSSDName() - Update the computer name we use for
- * browsing...
- * cupsdUpdateLDAPBrowse() - Scan for new printers via LDAP...
- * cupsdUpdateSLPBrowse() - Get browsing information via SLP.
- * dequote() - Remote quotes from a string.
- * dnssdAddAlias() - Add a DNS-SD alias name.
- * dnssdBuildTxtRecord() - Build a TXT record from printer info.
- * dnssdComparePrinters() - Compare the registered names of two printers.
- * dnssdDeregisterPrinter() - Stop sending broadcast information for a
- * printer.
- * dnssdPackTxtRecord() - Pack an array of key/value pairs into the TXT
- * record format.
- * dnssdRegisterCallback() - DNSServiceRegister callback.
- * dnssdRegisterPrinter() - Start sending broadcast information for a
- * printer or update the broadcast contents.
- * dnssdStop() - Stop all DNS-SD registrations.
- * dnssdUpdate() - Handle DNS-SD queries.
- * get_auth_info_required() - Get the auth-info-required value to advertise.
- * get_hostconfig() - Get an /etc/hostconfig service setting.
- * is_local_queue() - Determine whether the URI points at a local
- * queue.
- * process_browse_data() - Process new browse data.
- * process_implicit_classes() - Create/update implicit classes as needed.
- * send_cups_browse() - Send new browsing information using the CUPS
- * protocol.
- * ldap_search_rec() - LDAP Search with reconnect
- * ldap_freeres() - Free LDAPMessage
- * ldap_getval_char() - Get first LDAP value and convert to string
- * send_ldap_ou() - Send LDAP ou registrations.
- * send_ldap_browse() - Send LDAP printer registrations.
- * ldap_dereg_printer() - Delete printer from directory
- * ldap_dereg_ou() - Remove the organizational unit.
- * send_slp_browse() - Register the specified printer with SLP.
- * slp_attr_callback() - SLP attribute callback
- * slp_dereg_printer() - SLPDereg() the specified printer
- * slp_get_attr() - Get an attribute from an SLP registration.
- * slp_reg_callback() - Empty SLPRegReport.
- * slp_url_callback() - SLP service url callback
- * update_cups_browse() - Update the browse lists using the CUPS
- * protocol.
- * update_lpd() - Update the LPD configuration as needed.
- * update_polling() - Read status messages from the poll daemons.
- * update_smb() - Update the SMB configuration as needed.
+ * cupsdDeregisterPrinter() - Stop sending broadcast information for a local
+ * printer and remove any pending references to
+ * remote printers.
+ * cupsdRegisterPrinter() - Start sending broadcast information for a
+ * printer or update the broadcast contents.
+ * cupsdStartBrowsing() - Start sending and receiving broadcast
+ * information.
+ * cupsdStopBrowsing() - Stop sending and receiving broadcast
+ * information.
+ * cupsdUpdateDNSSDName() - Update the computer name we use for
+ * browsing...
+ * dnssdAddAlias() - Add a DNS-SD alias name.
+ * dnssdBuildTxtRecord() - Build a TXT record from printer info.
+ * dnssdDeregisterInstance() - Deregister a DNS-SD service instance.
+ * dnssdDeregisterPrinter() - Deregister all services for a printer.
+ * dnssdErrorString() - Return an error string for an error code.
+ * dnssdRegisterCallback() - Free a TXT record.
+ * dnssdRegisterCallback() - DNSServiceRegister callback.
+ * dnssdRegisterInstance() - Register an instance of a printer service.
+ * dnssdRegisterPrinter() - Start sending broadcast information for a
+ * printer or update the broadcast contents.
+ * dnssdStop() - Stop all DNS-SD registrations.
+ * dnssdUpdate() - Handle DNS-SD queries.
+ * get_auth_info_required() - Get the auth-info-required value to advertise.
+ * get_hostconfig() - Get an /etc/hostconfig service setting.
+ * update_lpd() - Update the LPD configuration as needed.
+ * update_smb() - Update the SMB configuration as needed.
*/
/*
@@ -85,153 +50,63 @@
#include "cupsd.h"
#include <grp.h>
-#ifdef HAVE_DNSSD
-# include <dns_sd.h>
-# ifdef __APPLE__
-# include <nameser.h>
-# ifdef HAVE_COREFOUNDATION
-# include <CoreFoundation/CoreFoundation.h>
-# endif /* HAVE_COREFOUNDATION */
-# ifdef HAVE_SYSTEMCONFIGURATION
-# include <SystemConfiguration/SystemConfiguration.h>
-# endif /* HAVE_SYSTEMCONFIGURATION */
-# endif /* __APPLE__ */
-#endif /* HAVE_DNSSD */
+#if defined(HAVE_DNSSD) && defined(__APPLE__)
+# include <nameser.h>
+# include <CoreFoundation/CoreFoundation.h>
+# include <SystemConfiguration/SystemConfiguration.h>
+#endif /* HAVE_DNSSD && __APPLE__ */
/*
* Local functions...
*/
-static char *dequote(char *d, const char *s, int dlen);
-static char *get_auth_info_required(cupsd_printer_t *p, char *buffer,
- size_t bufsize);
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+static char *get_auth_info_required(cupsd_printer_t *p,
+ char *buffer, size_t bufsize);
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
#ifdef __APPLE__
-static int get_hostconfig(const char *name);
+static int get_hostconfig(const char *name);
#endif /* __APPLE__ */
-static int is_local_queue(const char *uri, char *host, int hostlen,
- char *resource, int resourcelen);
-static void process_browse_data(const char *uri, const char *host,
- const char *resource, cups_ptype_t type,
- ipp_pstate_t state, const char *location,
- const char *info, const char *make_model,
- int num_attrs, cups_option_t *attrs);
-static void process_implicit_classes(void);
-static void send_cups_browse(cupsd_printer_t *p);
-#ifdef HAVE_LDAP
-static LDAP *ldap_connect(void);
-static LDAP *ldap_reconnect(void);
-static void ldap_disconnect(LDAP *ld);
-static int ldap_search_rec(LDAP *ld, char *base, int scope,
- char *filter, char *attrs[],
- int attrsonly, LDAPMessage **res);
-static int ldap_getval_firststring(LDAP *ld, LDAPMessage *entry,
- char *attr, char *retval,
- unsigned long maxsize);
-static void ldap_freeres(LDAPMessage *entry);
-static void send_ldap_ou(char *ou, char *basedn, char *descstring);
-static void send_ldap_browse(cupsd_printer_t *p);
-static void ldap_dereg_printer(cupsd_printer_t *p);
-static void ldap_dereg_ou(char *ou, char *basedn);
-# ifdef HAVE_LDAP_REBIND_PROC
-# if defined(LDAP_API_FEATURE_X_OPENLDAP) && (LDAP_API_VERSION > 2000)
-static int ldap_rebind_proc(LDAP *RebindLDAPHandle,
- LDAP_CONST char *refsp,
- ber_tag_t request,
- ber_int_t msgid,
- void *params);
-# else
-static int ldap_rebind_proc(LDAP *RebindLDAPHandle,
- char **dnp,
- char **passwdp,
- int *authmethodp,
- int freeit,
- void *arg);
-# endif /* defined(LDAP_API_FEATURE_X_OPENLDAP) && (LDAP_API_VERSION > 2000) */
-# endif /* HAVE_LDAP_REBIND_PROC */
-#endif /* HAVE_LDAP */
-#ifdef HAVE_LIBSLP
-static void send_slp_browse(cupsd_printer_t *p);
-#endif /* HAVE_LIBSLP */
-static void update_cups_browse(void);
-static void update_lpd(int onoff);
-static void update_polling(void);
-static void update_smb(int onoff);
-
-
-#ifdef HAVE_DNSSD
-# ifdef HAVE_COREFOUNDATION
-static void dnssdAddAlias(const void *key, const void *value,
- void *context);
-# endif /* HAVE_COREFOUNDATION */
-static char *dnssdBuildTxtRecord(int *txt_len, cupsd_printer_t *p,
- int for_lpd);
-static int dnssdComparePrinters(cupsd_printer_t *a, cupsd_printer_t *b);
-static void dnssdDeregisterPrinter(cupsd_printer_t *p);
-static char *dnssdPackTxtRecord(int *txt_len, char *keyvalue[][2],
- int count);
-static void dnssdRegisterCallback(DNSServiceRef sdRef,
- DNSServiceFlags flags,
- DNSServiceErrorType errorCode,
- const char *name, const char *regtype,
- const char *domain, void *context);
-static void dnssdRegisterPrinter(cupsd_printer_t *p);
-static void dnssdStop(void);
-static void dnssdUpdate(void);
-#endif /* HAVE_DNSSD */
-
-#ifdef HAVE_LDAP
-static const char * const ldap_attrs[] =/* CUPS LDAP attributes */
- {
- "printerDescription",
- "printerLocation",
- "printerMakeAndModel",
- "printerType",
- "printerURI",
- NULL
- };
-#endif /* HAVE_LDAP */
-
-#ifdef HAVE_LIBSLP
-/*
- * SLP definitions...
- */
-
-/*
- * SLP service name for CUPS...
- */
-
-# define SLP_CUPS_SRVTYPE "service:printer"
-# define SLP_CUPS_SRVLEN 15
-
+static void update_lpd(int onoff);
+static void update_smb(int onoff);
-/*
- * Printer service URL structure
- */
-
-typedef struct _slpsrvurl_s /**** SLP URL list ****/
-{
- struct _slpsrvurl_s *next; /* Next URL in list */
- char url[HTTP_MAX_URI];
- /* URL */
-} slpsrvurl_t;
-
-
-/*
- * Local functions...
- */
-static SLPBoolean slp_attr_callback(SLPHandle hslp, const char *attrlist,
- SLPError errcode, void *cookie);
-static void slp_dereg_printer(cupsd_printer_t *p);
-static int slp_get_attr(const char *attrlist, const char *tag,
- char **valbuf);
-static void slp_reg_callback(SLPHandle hslp, SLPError errcode,
- void *cookie);
-static SLPBoolean slp_url_callback(SLPHandle hslp, const char *srvurl,
- unsigned short lifetime,
- SLPError errcode, void *cookie);
-#endif /* HAVE_LIBSLP */
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+# ifdef __APPLE__
+static void dnssdAddAlias(const void *key, const void *value,
+ void *context);
+# endif /* __APPLE__ */
+static cupsd_txt_t dnssdBuildTxtRecord(cupsd_printer_t *p, int for_lpd);
+static void dnssdDeregisterInstance(cupsd_srv_t *srv);
+static void dnssdDeregisterPrinter(cupsd_printer_t *p,
+ int clear_name);
+static const char *dnssdErrorString(int error);
+static void dnssdFreeTxtRecord(cupsd_txt_t *txt);
+# ifdef HAVE_DNSSD
+static void dnssdRegisterCallback(DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ DNSServiceErrorType errorCode,
+ const char *name,
+ const char *regtype,
+ const char *domain,
+ void *context);
+# else
+static void dnssdRegisterCallback(AvahiEntryGroup *p,
+ AvahiEntryGroupState state,
+ void *context);
+# endif /* HAVE_DNSSD */
+static int dnssdRegisterInstance(cupsd_srv_t *srv,
+ cupsd_printer_t *p,
+ char *name, const char *type,
+ const char *subtypes, int port,
+ cupsd_txt_t *txt, int commit);
+static void dnssdRegisterPrinter(cupsd_printer_t *p);
+static void dnssdStop(void);
+# ifdef HAVE_DNSSD
+static void dnssdUpdate(void);
+# endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
/*
@@ -254,430 +129,17 @@ cupsdDeregisterPrinter(
removeit);
if (!Browsing || !p->shared ||
- (p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT |
- CUPS_PRINTER_SCANNER)))
+ (p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_SCANNER)))
return;
/*
* Announce the deletion...
*/
- if ((BrowseLocalProtocols & BROWSE_CUPS) && BrowseSocket >= 0)
- {
- cups_ptype_t savedtype = p->type; /* Saved printer type */
-
- p->type |= CUPS_PRINTER_DELETE;
-
- send_cups_browse(p);
-
- p->type = savedtype;
- }
-
-#ifdef HAVE_LIBSLP
- if (BrowseLocalProtocols & BROWSE_SLP)
- slp_dereg_printer(p);
-#endif /* HAVE_LIBSLP */
-
-#ifdef HAVE_LDAP
- if (BrowseLocalProtocols & BROWSE_LDAP)
- ldap_dereg_printer(p);
-#endif /* HAVE_LDAP */
-
-#ifdef HAVE_DNSSD
- if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef)
- dnssdDeregisterPrinter(p);
-#endif /* HAVE_DNSSD */
-}
-
-
-/*
- * 'cupsdLoadRemoteCache()' - Load the remote printer cache.
- */
-
-void
-cupsdLoadRemoteCache(void)
-{
- int i; /* Looping var */
- cups_file_t *fp; /* remote.cache file */
- int linenum; /* Current line number */
- char line[4096], /* Line from file */
- *value, /* Pointer to value */
- *valueptr, /* Pointer into value */
- scheme[32], /* Scheme portion of URI */
- username[64], /* Username portion of URI */
- host[HTTP_MAX_HOST],
- /* Hostname portion of URI */
- resource[HTTP_MAX_URI];
- /* Resource portion of URI */
- int port; /* Port number */
- cupsd_printer_t *p; /* Current printer */
- time_t now; /* Current time */
-
-
- /*
- * Don't load the cache if the remote protocols are disabled...
- */
-
- if (!Browsing)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdLoadRemoteCache: Not loading remote cache.");
- return;
- }
-
- /*
- * Open the remote.cache file...
- */
-
- snprintf(line, sizeof(line), "%s/remote.cache", CacheDir);
- if ((fp = cupsdOpenConfFile(line)) == NULL)
- return;
-
- /*
- * Read printer configurations until we hit EOF...
- */
-
- linenum = 0;
- p = NULL;
- now = time(NULL);
-
- while (cupsFileGetConf(fp, line, sizeof(line), &value, &linenum))
- {
- /*
- * Decode the directive...
- */
-
- if (!_cups_strcasecmp(line, "<Printer") ||
- !_cups_strcasecmp(line, "<DefaultPrinter"))
- {
- /*
- * <Printer name> or <DefaultPrinter name>
- */
-
- if (p == NULL && value)
- {
- /*
- * Add the printer and a base file type...
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdLoadRemoteCache: Loading printer %s...", value);
-
- if ((p = cupsdFindDest(value)) != NULL)
- {
- if (p->type & CUPS_PRINTER_CLASS)
- {
- cupsdLogMessage(CUPSD_LOG_WARN,
- "Cached remote printer \"%s\" conflicts with "
- "existing class!",
- value);
- p = NULL;
- continue;
- }
- }
- else
- p = cupsdAddPrinter(value);
-
- p->accepting = 1;
- p->state = IPP_PRINTER_IDLE;
- p->type |= CUPS_PRINTER_REMOTE | CUPS_PRINTER_DISCOVERED;
- p->browse_time = now;
- p->browse_expire = now + BrowseTimeout;
-
- /*
- * Set the default printer as needed...
- */
-
- if (!_cups_strcasecmp(line, "<DefaultPrinter"))
- DefaultPrinter = p;
- }
- else
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- break;
- }
- }
- else if (!_cups_strcasecmp(line, "<Class") ||
- !_cups_strcasecmp(line, "<DefaultClass"))
- {
- /*
- * <Class name> or <DefaultClass name>
- */
-
- if (p == NULL && value)
- {
- /*
- * Add the printer and a base file type...
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdLoadRemoteCache: Loading class %s...", value);
-
- if ((p = cupsdFindDest(value)) != NULL)
- p->type = CUPS_PRINTER_CLASS;
- else
- p = cupsdAddClass(value);
-
- p->accepting = 1;
- p->state = IPP_PRINTER_IDLE;
- p->type |= CUPS_PRINTER_REMOTE | CUPS_PRINTER_DISCOVERED;
- p->browse_time = now;
- p->browse_expire = now + BrowseTimeout;
-
- /*
- * Set the default printer as needed...
- */
-
- if (!_cups_strcasecmp(line, "<DefaultClass"))
- DefaultPrinter = p;
- }
- else
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- break;
- }
- }
- else if (!_cups_strcasecmp(line, "</Printer>") ||
- !_cups_strcasecmp(line, "</Class>"))
- {
- if (p != NULL)
- {
- /*
- * Close out the current printer...
- */
-
- cupsdSetPrinterAttrs(p);
-
- p = NULL;
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else if (!p)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else if (!_cups_strcasecmp(line, "UUID"))
- {
- if (value && !strncmp(value, "urn:uuid:", 9))
- cupsdSetString(&(p->uuid), value);
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Bad UUID on line %d of remote.cache.", linenum);
- }
- else if (!_cups_strcasecmp(line, "Info"))
- {
- if (value)
- cupsdSetString(&p->info, value);
- }
- else if (!_cups_strcasecmp(line, "MakeModel"))
- {
- if (value)
- cupsdSetString(&p->make_model, value);
- }
- else if (!_cups_strcasecmp(line, "Location"))
- {
- if (value)
- cupsdSetString(&p->location, value);
- }
- else if (!_cups_strcasecmp(line, "DeviceURI"))
- {
- if (value)
- {
- httpSeparateURI(HTTP_URI_CODING_ALL, value, scheme, sizeof(scheme),
- username, sizeof(username), host, sizeof(host), &port,
- resource, sizeof(resource));
-
- cupsdSetString(&p->hostname, host);
- cupsdSetString(&p->uri, value);
- cupsdSetDeviceURI(p, value);
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else if (!_cups_strcasecmp(line, "Option") && value)
- {
- /*
- * Option name value
- */
-
- for (valueptr = value; *valueptr && !isspace(*valueptr & 255); valueptr ++);
-
- if (!*valueptr)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- else
- {
- for (; *valueptr && isspace(*valueptr & 255); *valueptr++ = '\0');
-
- p->num_options = cupsAddOption(value, valueptr, p->num_options,
- &(p->options));
- }
- }
- else if (!_cups_strcasecmp(line, "Reason"))
- {
- if (value)
- {
- for (i = 0 ; i < p->num_reasons; i ++)
- if (!strcmp(value, p->reasons[i]))
- break;
-
- if (i >= p->num_reasons &&
- p->num_reasons < (int)(sizeof(p->reasons) / sizeof(p->reasons[0])))
- {
- p->reasons[p->num_reasons] = _cupsStrAlloc(value);
- p->num_reasons ++;
- }
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else if (!_cups_strcasecmp(line, "State"))
- {
- /*
- * Set the initial queue state...
- */
-
- if (value && !_cups_strcasecmp(value, "idle"))
- p->state = IPP_PRINTER_IDLE;
- else if (value && !_cups_strcasecmp(value, "stopped"))
- {
- p->state = IPP_PRINTER_STOPPED;
- cupsdSetPrinterReasons(p, "+paused");
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else if (!_cups_strcasecmp(line, "StateMessage"))
- {
- /*
- * Set the initial queue state message...
- */
-
- if (value)
- strlcpy(p->state_message, value, sizeof(p->state_message));
- }
- else if (!_cups_strcasecmp(line, "Accepting"))
- {
- /*
- * Set the initial accepting state...
- */
-
- if (value &&
- (!_cups_strcasecmp(value, "yes") ||
- !_cups_strcasecmp(value, "on") ||
- !_cups_strcasecmp(value, "true")))
- p->accepting = 1;
- else if (value &&
- (!_cups_strcasecmp(value, "no") ||
- !_cups_strcasecmp(value, "off") ||
- !_cups_strcasecmp(value, "false")))
- p->accepting = 0;
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else if (!_cups_strcasecmp(line, "Type"))
- {
- if (value)
- p->type = atoi(value);
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else if (!_cups_strcasecmp(line, "BrowseTime"))
- {
- if (value)
- {
- time_t t = atoi(value);
-
- if (t > p->browse_expire)
- p->browse_expire = t;
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else if (!_cups_strcasecmp(line, "JobSheets"))
- {
- /*
- * Set the initial job sheets...
- */
-
- if (value)
- {
- for (valueptr = value; *valueptr && !isspace(*valueptr & 255); valueptr ++);
-
- if (*valueptr)
- *valueptr++ = '\0';
-
- cupsdSetString(&p->job_sheets[0], value);
-
- while (isspace(*valueptr & 255))
- valueptr ++;
-
- if (*valueptr)
- {
- for (value = valueptr; *valueptr && !isspace(*valueptr & 255); valueptr ++);
-
- if (*valueptr)
- *valueptr = '\0';
-
- cupsdSetString(&p->job_sheets[1], value);
- }
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else if (!_cups_strcasecmp(line, "AllowUser"))
- {
- if (value)
- {
- p->deny_users = 0;
- cupsdAddString(&(p->users), value);
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else if (!_cups_strcasecmp(line, "DenyUser"))
- {
- if (value)
- {
- p->deny_users = 1;
- cupsdAddString(&(p->users), value);
- }
- else
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Syntax error on line %d of remote.cache.", linenum);
- }
- else
- {
- /*
- * Something else we don't understand...
- */
-
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unknown configuration directive %s on line %d of remote.cache.",
- line, linenum);
- }
- }
-
- cupsFileClose(fp);
-
- /*
- * Do auto-classing if needed...
- */
-
- process_implicit_classes();
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDMaster)
+ dnssdDeregisterPrinter(p, 1);
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
}
@@ -693,730 +155,14 @@ cupsdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */
p->name);
if (!Browsing || !BrowseLocalProtocols ||
- (p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT |
- CUPS_PRINTER_SCANNER)))
+ (p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_SCANNER)))
return;
-#ifdef HAVE_LIBSLP
-/* if (BrowseLocalProtocols & BROWSE_SLP)
- slpRegisterPrinter(p); */
-#endif /* HAVE_LIBSLP */
-
-#ifdef HAVE_DNSSD
- if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef)
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDMaster)
dnssdRegisterPrinter(p);
-#endif /* HAVE_DNSSD */
-}
-
-
-/*
- * 'cupsdRestartPolling()' - Restart polling servers as needed.
- */
-
-void
-cupsdRestartPolling(void)
-{
- int i; /* Looping var */
- cupsd_dirsvc_poll_t *pollp; /* Current polling server */
-
-
- for (i = 0, pollp = Polled; i < NumPolled; i ++, pollp ++)
- if (pollp->pid)
- kill(pollp->pid, SIGHUP);
-}
-
-
-/*
- * 'cupsdSaveRemoteCache()' - Save the remote printer cache.
- */
-
-void
-cupsdSaveRemoteCache(void)
-{
- int i; /* Looping var */
- cups_file_t *fp; /* remote.cache file */
- char filename[1024], /* remote.cache filename */
- temp[1024], /* Temporary string */
- value[2048], /* Value string */
- *name; /* Current user name */
- cupsd_printer_t *printer; /* Current printer class */
- time_t curtime; /* Current time */
- struct tm *curdate; /* Current date */
- cups_option_t *option; /* Current option */
-
-
- /*
- * Create the remote.cache file...
- */
-
- snprintf(filename, sizeof(filename), "%s/remote.cache", CacheDir);
-
- if ((fp = cupsdCreateConfFile(filename, ConfigFilePerm)) == NULL)
- return;
-
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Saving remote.cache...");
-
- /*
- * Write a small header to the file...
- */
-
- curtime = time(NULL);
- curdate = localtime(&curtime);
- strftime(temp, sizeof(temp) - 1, "%Y-%m-%d %H:%M", curdate);
-
- cupsFilePuts(fp, "# Remote cache file for " CUPS_SVERSION "\n");
- cupsFilePrintf(fp, "# Written by cupsd on %s\n", temp);
-
- /*
- * Write each local printer known to the system...
- */
-
- for (printer = (cupsd_printer_t *)cupsArrayFirst(Printers);
- printer;
- printer = (cupsd_printer_t *)cupsArrayNext(Printers))
- {
- /*
- * Skip local destinations...
- */
-
- if (!(printer->type & CUPS_PRINTER_DISCOVERED))
- continue;
-
- /*
- * Write printers as needed...
- */
-
- if (printer == DefaultPrinter)
- cupsFilePuts(fp, "<Default");
- else
- cupsFilePutChar(fp, '<');
-
- if (printer->type & CUPS_PRINTER_CLASS)
- cupsFilePrintf(fp, "Class %s>\n", printer->name);
- else
- cupsFilePrintf(fp, "Printer %s>\n", printer->name);
-
- cupsFilePrintf(fp, "BrowseTime %d\n", (int)printer->browse_expire);
-
- cupsFilePrintf(fp, "UUID %s\n", printer->uuid);
-
- if (printer->info)
- cupsFilePutConf(fp, "Info", printer->info);
-
- if (printer->location)
- cupsFilePutConf(fp, "Location", printer->location);
-
- if (printer->make_model)
- cupsFilePutConf(fp, "MakeModel", printer->make_model);
-
- cupsFilePutConf(fp, "DeviceURI", printer->device_uri);
-
- if (printer->state == IPP_PRINTER_STOPPED)
- cupsFilePuts(fp, "State Stopped\n");
- else
- cupsFilePuts(fp, "State Idle\n");
-
- for (i = 0; i < printer->num_reasons; i ++)
- cupsFilePutConf(fp, "Reason", printer->reasons[i]);
-
- cupsFilePrintf(fp, "Type %d\n", printer->type);
-
- if (printer->accepting)
- cupsFilePuts(fp, "Accepting Yes\n");
- else
- cupsFilePuts(fp, "Accepting No\n");
-
- snprintf(value, sizeof(value), "%s %s", printer->job_sheets[0],
- printer->job_sheets[1]);
- cupsFilePutConf(fp, "JobSheets", value);
-
- for (name = (char *)cupsArrayFirst(printer->users);
- name;
- name = (char *)cupsArrayNext(printer->users))
- cupsFilePutConf(fp, printer->deny_users ? "DenyUser" : "AllowUser", name);
-
- for (i = printer->num_options, option = printer->options;
- i > 0;
- i --, option ++)
- {
- snprintf(value, sizeof(value), "%s %s", option->name, option->value);
- cupsFilePutConf(fp, "Option", value);
- }
-
- if (printer->type & CUPS_PRINTER_CLASS)
- cupsFilePuts(fp, "</Class>\n");
- else
- cupsFilePuts(fp, "</Printer>\n");
- }
-
- cupsdCloseCreatedConfFile(fp, filename);
-}
-
-
-/*
- * 'cupsdSendBrowseList()' - Send new browsing information as necessary.
- */
-
-void
-cupsdSendBrowseList(void)
-{
- int count; /* Number of dests to update */
- cupsd_printer_t *p; /* Current printer */
- time_t ut, /* Minimum update time */
- to; /* Timeout time */
-
-
- if (!Browsing || !Printers)
- return;
-
- /*
- * Compute the update and timeout times...
- */
-
- to = time(NULL);
- ut = to - BrowseInterval;
-
- /*
- * Figure out how many printers need an update...
- */
-
- if (BrowseInterval > 0 && BrowseLocalProtocols)
- {
- int max_count; /* Maximum number to update */
-
-
- /*
- * Throttle the number of printers we'll be updating this time
- * around based on the number of queues that need updating and
- * the maximum number of queues to update each second...
- */
-
- max_count = 2 * cupsArrayCount(Printers) / BrowseInterval + 1;
-
- for (count = 0, p = (cupsd_printer_t *)cupsArrayFirst(Printers);
- count < max_count && p != NULL;
- p = (cupsd_printer_t *)cupsArrayNext(Printers))
- if (!(p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT |
- CUPS_PRINTER_SCANNER)) &&
- p->shared && p->browse_time < ut)
- count ++;
-
- /*
- * Loop through all of the printers and send local updates as needed...
- */
-
- if (BrowseNext)
- p = (cupsd_printer_t *)cupsArrayFind(Printers, BrowseNext);
- else
- p = (cupsd_printer_t *)cupsArrayFirst(Printers);
-
- for (;
- count > 0;
- p = (cupsd_printer_t *)cupsArrayNext(Printers))
- {
- /*
- * Check for wraparound...
- */
-
- if (!p)
- p = (cupsd_printer_t *)cupsArrayFirst(Printers);
-
- if (!p)
- break;
- else if ((p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT |
- CUPS_PRINTER_SCANNER)) ||
- !p->shared)
- continue;
- else if (p->browse_time < ut)
- {
- /*
- * Need to send an update...
- */
-
- count --;
-
- p->browse_time = time(NULL);
-
- if ((BrowseLocalProtocols & BROWSE_CUPS) && BrowseSocket >= 0)
- send_cups_browse(p);
-
-#ifdef HAVE_LIBSLP
- if (BrowseLocalProtocols & BROWSE_SLP)
- send_slp_browse(p);
-#endif /* HAVE_LIBSLP */
-
-#ifdef HAVE_LDAP
- if (BrowseLocalProtocols & BROWSE_LDAP)
- send_ldap_browse(p);
-#endif /* HAVE_LDAP */
- }
- }
-
- /*
- * Save where we left off so that all printers get updated...
- */
-
- BrowseNext = p;
- }
-
- /*
- * Loop through all of the printers and timeout old printers as needed...
- */
-
- for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
- p;
- p = (cupsd_printer_t *)cupsArrayNext(Printers))
- {
- /*
- * If this is a remote queue, see if it needs to be timed out...
- */
-
- if ((p->type & CUPS_PRINTER_DISCOVERED) &&
- !(p->type & CUPS_PRINTER_IMPLICIT) &&
- p->browse_expire < to)
- {
- cupsdAddEvent(CUPSD_EVENT_PRINTER_DELETED, p, NULL,
- "%s \'%s\' deleted by directory services (timeout).",
- (p->type & CUPS_PRINTER_CLASS) ? "Class" : "Printer",
- p->name);
-
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "Remote destination \"%s\" has timed out; "
- "deleting it...",
- p->name);
-
- cupsArraySave(Printers);
- cupsdDeletePrinter(p, 1);
- cupsArrayRestore(Printers);
- cupsdMarkDirty(CUPSD_DIRTY_PRINTCAP | CUPSD_DIRTY_REMOTE);
- }
- }
-}
-
-
-#ifdef HAVE_LDAP_REBIND_PROC
-# if defined(LDAP_API_FEATURE_X_OPENLDAP) && (LDAP_API_VERSION > 2000)
-/*
- * 'ldap_rebind_proc()' - Callback function for LDAP rebind
- */
-
-static int /* O - Result code */
-ldap_rebind_proc(
- LDAP *RebindLDAPHandle, /* I - LDAP handle */
- LDAP_CONST char *refsp, /* I - ??? */
- ber_tag_t request, /* I - ??? */
- ber_int_t msgid, /* I - ??? */
- void *params) /* I - ??? */
-{
- int rc; /* Result code */
-# if LDAP_API_VERSION > 3000
- struct berval bval; /* Bind value */
-# endif /* LDAP_API_VERSION > 3000 */
-
-
- (void)request;
- (void)msgid;
- (void)params;
-
- /*
- * Bind to new LDAP server...
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "ldap_rebind_proc: Rebind to %s", refsp);
-
-# if LDAP_API_VERSION > 3000
- bval.bv_val = BrowseLDAPPassword;
- bval.bv_len = (BrowseLDAPPassword == NULL) ? 0 : strlen(BrowseLDAPPassword);
-
- rc = ldap_sasl_bind_s(RebindLDAPHandle, BrowseLDAPBindDN, LDAP_SASL_SIMPLE,
- &bval, NULL, NULL, NULL);
-# else
- rc = ldap_bind_s(RebindLDAPHandle, BrowseLDAPBindDN, BrowseLDAPPassword,
- LDAP_AUTH_SIMPLE);
-# endif /* LDAP_API_VERSION > 3000 */
-
- return (rc);
-}
-
-
-# else /* defined(LDAP_API_FEATURE_X_OPENLDAP) && (LDAP_API_VERSION > 2000) */
-/*
- * 'ldap_rebind_proc()' - Callback function for LDAP rebind
- */
-
-static int /* O - Result code */
-ldap_rebind_proc(
- LDAP *RebindLDAPHandle, /* I - LDAP handle */
- char **dnp, /* I - ??? */
- char **passwdp, /* I - ??? */
- int *authmethodp, /* I - ??? */
- int freeit, /* I - ??? */
- void *arg) /* I - ??? */
-{
- switch (freeit)
- {
- case 1:
- /*
- * Free current values...
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "ldap_rebind_proc: Free values...");
-
- if (dnp && *dnp)
- free(*dnp);
-
- if (passwdp && *passwdp)
- free(*passwdp);
- break;
-
- case 0:
- /*
- * Return credentials for LDAP referal...
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "ldap_rebind_proc: Return necessary values...");
-
- *dnp = strdup(BrowseLDAPBindDN);
- *passwdp = strdup(BrowseLDAPPassword);
- *authmethodp = LDAP_AUTH_SIMPLE;
- break;
-
- default:
- /*
- * Should never happen...
- */
-
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "LDAP rebind has been called with wrong freeit value!");
- break;
- }
-
- return (LDAP_SUCCESS);
-}
-# endif /* defined(LDAP_API_FEATURE_X_OPENLDAP) && (LDAP_API_VERSION > 2000) */
-#endif /* HAVE_LDAP_REBIND_PROC */
-
-
-#ifdef HAVE_LDAP
-/*
- * 'ldap_connect()' - Start new LDAP connection
- */
-
-static LDAP * /* O - LDAP handle */
-ldap_connect(void)
-{
- int rc; /* LDAP API status */
- int version = 3; /* LDAP version */
- struct berval bv = {0, ""}; /* SASL bind value */
- LDAP *TempBrowseLDAPHandle=NULL;
- /* Temporary LDAP Handle */
-# if defined(HAVE_LDAP_SSL) && defined (HAVE_MOZILLA_LDAP)
- int ldap_ssl = 0; /* LDAP SSL indicator */
- int ssl_err = 0; /* LDAP SSL error value */
-# endif /* defined(HAVE_LDAP_SSL) && defined (HAVE_MOZILLA_LDAP) */
-
-
-# ifdef HAVE_OPENLDAP
-# ifdef HAVE_LDAP_SSL
- /*
- * Set the certificate file to use for encrypted LDAP sessions...
- */
-
- if (BrowseLDAPCACertFile)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "ldap_connect: Setting CA certificate file \"%s\"",
- BrowseLDAPCACertFile);
-
- if ((rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_CACERTFILE,
- (void *)BrowseLDAPCACertFile)) != LDAP_SUCCESS)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to set CA certificate file for LDAP "
- "connections: %d - %s", rc, ldap_err2string(rc));
- }
-# endif /* HAVE_LDAP_SSL */
-
- /*
- * Initialize OPENLDAP connection...
- * LDAP stuff currently only supports ldapi EXTERNAL SASL binds...
- */
-
- if (!BrowseLDAPServer || !_cups_strcasecmp(BrowseLDAPServer, "localhost"))
- rc = ldap_initialize(&TempBrowseLDAPHandle, "ldapi:///");
- else
- rc = ldap_initialize(&TempBrowseLDAPHandle, BrowseLDAPServer);
-
-# else /* HAVE_OPENLDAP */
-
- int ldap_port = 0; /* LDAP port */
- char ldap_protocol[11], /* LDAP protocol */
- ldap_host[255]; /* LDAP host */
-
- /*
- * Split LDAP URI into its components...
- */
-
- if (!BrowseLDAPServer)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "BrowseLDAPServer not configured!");
- cupsdLogMessage(CUPSD_LOG_ERROR, "Disabling LDAP browsing!");
- BrowseLocalProtocols &= ~BROWSE_LDAP;
- BrowseRemoteProtocols &= ~BROWSE_LDAP;
- return (NULL);
- }
-
- sscanf(BrowseLDAPServer, "%10[^:]://%254[^:/]:%d", ldap_protocol, ldap_host,
- &ldap_port);
-
- if (!strcmp(ldap_protocol, "ldap"))
- ldap_ssl = 0;
- else if (!strcmp(ldap_protocol, "ldaps"))
- ldap_ssl = 1;
- else
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unrecognized LDAP protocol (%s)!",
- ldap_protocol);
- cupsdLogMessage(CUPSD_LOG_ERROR, "Disabling LDAP browsing!");
- BrowseLocalProtocols &= ~BROWSE_LDAP;
- BrowseRemoteProtocols &= ~BROWSE_LDAP;
- return (NULL);
- }
-
- if (ldap_port == 0)
- {
- if (ldap_ssl)
- ldap_port = LDAPS_PORT;
- else
- ldap_port = LDAP_PORT;
- }
-
- cupsdLogMessage(CUPSD_LOG_DEBUG, "ldap_connect: PROT:%s HOST:%s PORT:%d",
- ldap_protocol, ldap_host, ldap_port);
-
- /*
- * Initialize LDAP connection...
- */
-
- if (!ldap_ssl)
- {
- if ((TempBrowseLDAPHandle = ldap_init(ldap_host, ldap_port)) == NULL)
- rc = LDAP_OPERATIONS_ERROR;
- else
- rc = LDAP_SUCCESS;
-
-# ifdef HAVE_LDAP_SSL
- }
- else
- {
- /*
- * Initialize SSL LDAP connection...
- */
-
- if (BrowseLDAPCACertFile)
- {
- rc = ldapssl_client_init(BrowseLDAPCACertFile, (void *)NULL);
- if (rc != LDAP_SUCCESS)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Failed to initialize LDAP SSL client!");
- rc = LDAP_OPERATIONS_ERROR;
- }
- else
- {
- if ((TempBrowseLDAPHandle = ldapssl_init(ldap_host, ldap_port,
- 1)) == NULL)
- rc = LDAP_OPERATIONS_ERROR;
- else
- rc = LDAP_SUCCESS;
- }
- }
- else
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "LDAP SSL certificate file/database not configured!");
- rc = LDAP_OPERATIONS_ERROR;
- }
-
-# else /* HAVE_LDAP_SSL */
-
- /*
- * Return error, because client libraries doesn't support SSL
- */
-
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "LDAP client libraries do not support SSL");
- rc = LDAP_OPERATIONS_ERROR;
-
-# endif /* HAVE_LDAP_SSL */
- }
-# endif /* HAVE_OPENLDAP */
-
- /*
- * Check return code from LDAP initialize...
- */
-
- if (rc != LDAP_SUCCESS)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to initialize LDAP!");
-
- if (rc == LDAP_SERVER_DOWN || rc == LDAP_CONNECT_ERROR)
- cupsdLogMessage(CUPSD_LOG_ERROR, "Temporarily disabling LDAP browsing...");
- else
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Disabling LDAP browsing!");
-
- BrowseLocalProtocols &= ~BROWSE_LDAP;
- BrowseRemoteProtocols &= ~BROWSE_LDAP;
- }
-
- ldap_disconnect(TempBrowseLDAPHandle);
-
- return (NULL);
- }
-
- /*
- * Upgrade LDAP version...
- */
-
- if (ldap_set_option(TempBrowseLDAPHandle, LDAP_OPT_PROTOCOL_VERSION,
- (const void *)&version) != LDAP_SUCCESS)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to set LDAP protocol version %d!",
- version);
- cupsdLogMessage(CUPSD_LOG_ERROR, "Disabling LDAP browsing!");
-
- BrowseLocalProtocols &= ~BROWSE_LDAP;
- BrowseRemoteProtocols &= ~BROWSE_LDAP;
- ldap_disconnect(TempBrowseLDAPHandle);
-
- return (NULL);
- }
-
- /*
- * Register LDAP rebind procedure...
- */
-
-# ifdef HAVE_LDAP_REBIND_PROC
-# if defined(LDAP_API_FEATURE_X_OPENLDAP) && (LDAP_API_VERSION > 2000)
-
- rc = ldap_set_rebind_proc(TempBrowseLDAPHandle, &ldap_rebind_proc,
- (void *)NULL);
- if (rc != LDAP_SUCCESS)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Setting LDAP rebind function failed with status %d: %s",
- rc, ldap_err2string(rc));
-
-# else
-
- ldap_set_rebind_proc(TempBrowseLDAPHandle, &ldap_rebind_proc, (void *)NULL);
-
-# endif /* defined(LDAP_API_FEATURE_X_OPENLDAP) && (LDAP_API_VERSION > 2000) */
-# endif /* HAVE_LDAP_REBIND_PROC */
-
- /*
- * Start LDAP bind...
- */
-
-# if LDAP_API_VERSION > 3000
- struct berval bval;
- bval.bv_val = BrowseLDAPPassword;
- bval.bv_len = (BrowseLDAPPassword == NULL) ? 0 : strlen(BrowseLDAPPassword);
-
- if (!BrowseLDAPServer || !_cups_strcasecmp(BrowseLDAPServer, "localhost"))
- rc = ldap_sasl_bind_s(TempBrowseLDAPHandle, NULL, "EXTERNAL", &bv, NULL,
- NULL, NULL);
- else
- rc = ldap_sasl_bind_s(TempBrowseLDAPHandle, BrowseLDAPBindDN, LDAP_SASL_SIMPLE, &bval, NULL, NULL, NULL);
-
-# else
- rc = ldap_bind_s(TempBrowseLDAPHandle, BrowseLDAPBindDN,
- BrowseLDAPPassword, LDAP_AUTH_SIMPLE);
-# endif /* LDAP_API_VERSION > 3000 */
-
- if (rc != LDAP_SUCCESS)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "LDAP bind failed with error %d: %s",
- rc, ldap_err2string(rc));
-
-# if defined(HAVE_LDAP_SSL) && defined (HAVE_MOZILLA_LDAP)
- if (ldap_ssl && (rc == LDAP_SERVER_DOWN || rc == LDAP_CONNECT_ERROR))
- {
- ssl_err = PORT_GetError();
- if (ssl_err != 0)
- cupsdLogMessage(CUPSD_LOG_ERROR, "LDAP SSL error %d: %s", ssl_err,
- ldapssl_err2string(ssl_err));
- }
-# endif /* defined(HAVE_LDAP_SSL) && defined (HAVE_MOZILLA_LDAP) */
-
- ldap_disconnect(TempBrowseLDAPHandle);
-
- return (NULL);
- }
-
- cupsdLogMessage(CUPSD_LOG_INFO, "LDAP connection established");
-
- return (TempBrowseLDAPHandle);
-}
-
-
-/*
- * 'ldap_reconnect()' - Reconnect to LDAP Server
- */
-
-static LDAP * /* O - New LDAP handle */
-ldap_reconnect(void)
-{
- LDAP *TempBrowseLDAPHandle = NULL; /* Temp Handle to LDAP server */
-
-
- /*
- * Get a new LDAP Handle and replace the global Handle
- * if the new connection was successful.
- */
-
- cupsdLogMessage(CUPSD_LOG_INFO, "Try LDAP reconnect...");
-
- TempBrowseLDAPHandle = ldap_connect();
-
- if (TempBrowseLDAPHandle != NULL)
- {
- if (BrowseLDAPHandle != NULL)
- ldap_disconnect(BrowseLDAPHandle);
-
- BrowseLDAPHandle = TempBrowseLDAPHandle;
- }
-
- return (BrowseLDAPHandle);
-}
-
-
-/*
- * 'ldap_disconnect()' - Disconnect from LDAP Server
- */
-
-static void
-ldap_disconnect(LDAP *ld) /* I - LDAP handle */
-{
- int rc; /* Return code */
-
-
- /*
- * Close LDAP handle...
- */
-
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- rc = ldap_unbind_ext_s(ld, NULL, NULL);
-# else
- rc = ldap_unbind_s(ld);
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
-
- if (rc != LDAP_SUCCESS)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unbind from LDAP server failed with status %d: %s",
- rc, ldap_err2string(rc));
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
}
-#endif /* HAVE_LDAP */
/*
@@ -1426,134 +172,24 @@ ldap_disconnect(LDAP *ld) /* I - LDAP handle */
void
cupsdStartBrowsing(void)
{
- int val; /* Socket option value */
- struct sockaddr_in addr; /* Broadcast address */
cupsd_printer_t *p; /* Current printer */
- BrowseNext = NULL;
-
- if (!Browsing || !(BrowseLocalProtocols | BrowseRemoteProtocols))
+ if (!Browsing || !BrowseLocalProtocols)
return;
- if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_CUPS)
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ if (BrowseLocalProtocols & BROWSE_DNSSD)
{
- if (BrowseSocket < 0)
- {
- /*
- * Create the broadcast socket...
- */
-
- if ((BrowseSocket = socket(AF_INET, SOCK_DGRAM, 0)) < 0)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create broadcast socket - %s.",
- strerror(errno));
- BrowseLocalProtocols &= ~BROWSE_CUPS;
- BrowseRemoteProtocols &= ~BROWSE_CUPS;
-
- if (FatalErrors & CUPSD_FATAL_BROWSE)
- cupsdEndProcess(getpid(), 0);
- }
- }
-
- if (BrowseSocket >= 0)
- {
- /*
- * Bind the socket to browse port...
- */
-
- memset(&addr, 0, sizeof(addr));
- addr.sin_addr.s_addr = htonl(INADDR_ANY);
- addr.sin_family = AF_INET;
- addr.sin_port = htons(BrowsePort);
-
- if (bind(BrowseSocket, (struct sockaddr *)&addr, sizeof(addr)))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to bind broadcast socket - %s.",
- strerror(errno));
-
-#ifdef WIN32
- closesocket(BrowseSocket);
-#else
- close(BrowseSocket);
-#endif /* WIN32 */
-
- BrowseSocket = -1;
- BrowseLocalProtocols &= ~BROWSE_CUPS;
- BrowseRemoteProtocols &= ~BROWSE_CUPS;
-
- if (FatalErrors & CUPSD_FATAL_BROWSE)
- cupsdEndProcess(getpid(), 0);
- }
- }
-
- if (BrowseSocket >= 0)
- {
- /*
- * Set the "broadcast" flag...
- */
-
- val = 1;
- if (setsockopt(BrowseSocket, SOL_SOCKET, SO_BROADCAST, &val, sizeof(val)))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to set broadcast mode - %s.",
- strerror(errno));
-
-#ifdef WIN32
- closesocket(BrowseSocket);
-#else
- close(BrowseSocket);
-#endif /* WIN32 */
-
- BrowseSocket = -1;
- BrowseLocalProtocols &= ~BROWSE_CUPS;
- BrowseRemoteProtocols &= ~BROWSE_CUPS;
-
- if (FatalErrors & CUPSD_FATAL_BROWSE)
- cupsdEndProcess(getpid(), 0);
- }
- }
-
- if (BrowseSocket >= 0)
- {
- /*
- * Close the socket on exec...
- */
-
- fcntl(BrowseSocket, F_SETFD, fcntl(BrowseSocket, F_GETFD) | FD_CLOEXEC);
-
- /*
- * Finally, add the socket to the input selection set as needed...
- */
-
- if (BrowseRemoteProtocols & BROWSE_CUPS)
- {
- /*
- * We only listen if we want remote printers...
- */
-
- cupsdAddSelect(BrowseSocket, (cupsd_selfunc_t)update_cups_browse,
- NULL, NULL);
- }
- }
- }
- else
- BrowseSocket = -1;
-
-#ifdef HAVE_DNSSD
- if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_DNSSD)
- {
- DNSServiceErrorType error; /* Error from service creation */
cupsd_listener_t *lis; /* Current listening socket */
-
+# ifdef HAVE_DNSSD
+ DNSServiceErrorType error; /* Error from service creation */
/*
* First create a "master" connection for all registrations...
*/
- if ((error = DNSServiceCreateConnection(&DNSSDRef))
+ if ((error = DNSServiceCreateConnection(&DNSSDMaster))
!= kDNSServiceErr_NoError)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
@@ -1568,100 +204,68 @@ cupsdStartBrowsing(void)
* Add the master connection to the select list...
*/
- int fd = DNSServiceRefSockFD(DNSSDRef);
+ int fd = DNSServiceRefSockFD(DNSSDMaster);
fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC);
cupsdAddSelect(fd, (cupsd_selfunc_t)dnssdUpdate, NULL, NULL);
+ }
- /*
- * Then get the port we use for registrations. If we are not listening
- * on any non-local ports, there is no sense sharing local printers via
- * Bonjour...
- */
+# else /* HAVE_AVAHI */
+ if ((DNSSDMaster = avahi_threaded_poll_new()) == NULL)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to create DNS-SD thread.");
- DNSSDPort = 0;
+ if (FatalErrors & CUPSD_FATAL_BROWSE)
+ cupsdEndProcess(getpid(), 0);
+ }
+ else
+ {
+ int error; /* Error code, if any */
+
+ DNSSDClient = avahi_client_new(avahi_threaded_poll_get(DNSSDMaster), 0,
+ NULL, NULL, &error);
- for (lis = (cupsd_listener_t *)cupsArrayFirst(Listeners);
- lis;
- lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
+ if (DNSSDClient == NULL)
{
- if (httpAddrLocalhost(&(lis->address)))
- continue;
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to communicate with avahi-daemon: %s",
+ dnssdErrorString(error));
- DNSSDPort = _httpAddrPort(&(lis->address));
- break;
+ if (FatalErrors & CUPSD_FATAL_BROWSE)
+ cupsdEndProcess(getpid(), 0);
}
- /*
- * Create an array to track the printers we share...
- */
-
- if (BrowseRemoteProtocols & BROWSE_DNSSD)
- DNSSDPrinters = cupsArrayNew((cups_array_func_t)dnssdComparePrinters,
- NULL);
-
- /*
- * Set the computer name and register the web interface...
- */
-
- cupsdUpdateDNSSDName();
+ avahi_threaded_poll_start(DNSSDMaster);
}
- }
-#endif /* HAVE_DNSSD */
+# endif /* HAVE_DNSSD */
-#ifdef HAVE_LIBSLP
- if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_SLP)
- {
/*
- * Open SLP handle...
+ * Then get the port we use for registrations. If we are not listening
+ * on any non-local ports, there is no sense sharing local printers via
+ * Bonjour...
*/
- if (SLPOpen("en", SLP_FALSE, &BrowseSLPHandle) != SLP_OK)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to open an SLP handle; disabling SLP browsing!");
- BrowseLocalProtocols &= ~BROWSE_SLP;
- BrowseRemoteProtocols &= ~BROWSE_SLP;
- BrowseSLPHandle = NULL;
+ DNSSDPort = 0;
- if (FatalErrors & CUPSD_FATAL_BROWSE)
- cupsdEndProcess(getpid(), 0);
- }
-
- BrowseSLPRefresh = 0;
- }
- else
- BrowseSLPHandle = NULL;
-#endif /* HAVE_LIBSLP */
-
-#ifdef HAVE_LDAP
- if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_LDAP)
- {
- if (!BrowseLDAPDN)
+ for (lis = (cupsd_listener_t *)cupsArrayFirst(Listeners);
+ lis;
+ lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
{
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Need to set BrowseLDAPDN to use LDAP browsing!");
- BrowseLocalProtocols &= ~BROWSE_LDAP;
- BrowseRemoteProtocols &= ~BROWSE_LDAP;
+ if (httpAddrLocalhost(&(lis->address)))
+ continue;
- if (FatalErrors & CUPSD_FATAL_BROWSE)
- cupsdEndProcess(getpid(), 0);
+ DNSSDPort = _httpAddrPort(&(lis->address));
+ break;
}
- else
- {
- /*
- * Open LDAP handle...
- */
- if ((BrowseLDAPHandle = ldap_connect()) == NULL &&
- (FatalErrors & CUPSD_FATAL_BROWSE))
- cupsdEndProcess(getpid(), 0);
- }
+ /*
+ * Set the computer name and register the web interface...
+ */
- BrowseLDAPRefresh = 0;
+ cupsdUpdateDNSSDName();
}
-#endif /* HAVE_LDAP */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
/*
* Enable LPD and SMB printer sharing as needed through external programs...
@@ -1680,116 +284,12 @@ cupsdStartBrowsing(void)
for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
p;
p = (cupsd_printer_t *)cupsArrayNext(Printers))
- if (!(p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT |
- CUPS_PRINTER_SCANNER)))
+ if (!(p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_SCANNER)))
cupsdRegisterPrinter(p);
}
/*
- * 'cupsdStartPolling()' - Start polling servers as needed.
- */
-
-void
-cupsdStartPolling(void)
-{
- int i; /* Looping var */
- cupsd_dirsvc_poll_t *pollp; /* Current polling server */
- char polld[1024]; /* Poll daemon path */
- char sport[255]; /* Server port */
- char bport[255]; /* Browser port */
- char interval[255]; /* Poll interval */
- int statusfds[2]; /* Status pipe */
- char *argv[6]; /* Arguments */
- char *envp[100]; /* Environment */
-
-
- /*
- * Don't do anything if we aren't polling...
- */
-
- if (NumPolled == 0 || BrowseSocket < 0)
- {
- PollPipe = -1;
- PollStatusBuffer = NULL;
- return;
- }
-
- /*
- * Setup string arguments for polld, port and interval options.
- */
-
- snprintf(polld, sizeof(polld), "%s/daemon/cups-polld", ServerBin);
-
- sprintf(bport, "%d", BrowsePort);
-
- if (BrowseInterval)
- sprintf(interval, "%d", BrowseInterval);
- else
- strcpy(interval, "30");
-
- argv[0] = "cups-polld";
- argv[2] = sport;
- argv[3] = interval;
- argv[4] = bport;
- argv[5] = NULL;
-
- cupsdLoadEnv(envp, (int)(sizeof(envp) / sizeof(envp[0])));
-
- /*
- * Create a pipe that receives the status messages from each
- * polling daemon...
- */
-
- if (cupsdOpenPipe(statusfds))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to create polling status pipes - %s.",
- strerror(errno));
- PollPipe = -1;
- PollStatusBuffer = NULL;
- return;
- }
-
- PollPipe = statusfds[0];
- PollStatusBuffer = cupsdStatBufNew(PollPipe, "[Poll]");
-
- /*
- * Run each polling daemon, redirecting stderr to the polling pipe...
- */
-
- for (i = 0, pollp = Polled; i < NumPolled; i ++, pollp ++)
- {
- sprintf(sport, "%d", pollp->port);
-
- argv[1] = pollp->hostname;
-
- if (cupsdStartProcess(polld, argv, envp, -1, -1, statusfds[1], -1, -1,
- 0, DefaultProfile, NULL, &(pollp->pid)) < 0)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdStartPolling: Unable to fork polling daemon - %s",
- strerror(errno));
- pollp->pid = 0;
- break;
- }
- else
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "cupsdStartPolling: Started polling daemon for %s:%d, pid = %d",
- pollp->hostname, pollp->port, pollp->pid);
- }
-
- close(statusfds[1]);
-
- /*
- * Finally, add the pipe to the input selection set...
- */
-
- cupsdAddSelect(PollPipe, (cupsd_selfunc_t)update_polling, NULL, NULL);
-}
-
-
-/*
* 'cupsdStopBrowsing()' - Stop sending and receiving broadcast information.
*/
@@ -1799,7 +299,7 @@ cupsdStopBrowsing(void)
cupsd_printer_t *p; /* Current printer */
- if (!Browsing || !(BrowseLocalProtocols | BrowseRemoteProtocols))
+ if (!Browsing || !BrowseLocalProtocols)
return;
/*
@@ -1809,58 +309,17 @@ cupsdStopBrowsing(void)
for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
p;
p = (cupsd_printer_t *)cupsArrayNext(Printers))
- if (!(p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT |
- CUPS_PRINTER_SCANNER)))
+ if (!(p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_SCANNER)))
cupsdDeregisterPrinter(p, 1);
/*
* Shut down browsing sockets...
*/
- if (((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_CUPS) &&
- BrowseSocket >= 0)
- {
- /*
- * Close the socket and remove it from the input selection set.
- */
-
-#ifdef WIN32
- closesocket(BrowseSocket);
-#else
- close(BrowseSocket);
-#endif /* WIN32 */
-
- cupsdRemoveSelect(BrowseSocket);
- BrowseSocket = -1;
- }
-
-#ifdef HAVE_DNSSD
- if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef)
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDMaster)
dnssdStop();
-#endif /* HAVE_DNSSD */
-
-#ifdef HAVE_LIBSLP
- if (((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_SLP) &&
- BrowseSLPHandle)
- {
- /*
- * Close SLP handle...
- */
-
- SLPClose(BrowseSLPHandle);
- BrowseSLPHandle = NULL;
- }
-#endif /* HAVE_LIBSLP */
-
-#ifdef HAVE_LDAP
- if (((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_LDAP) &&
- BrowseLDAPHandle)
- {
- ldap_dereg_ou(ServerName, BrowseLDAPDN);
- ldap_disconnect(BrowseLDAPHandle);
- BrowseLDAPHandle = NULL;
- }
-#endif /* HAVE_OPENLDAP */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
/*
* Disable LPD and SMB printer sharing as needed through external programs...
@@ -1874,35 +333,7 @@ cupsdStopBrowsing(void)
}
-/*
- * 'cupsdStopPolling()' - Stop polling servers as needed.
- */
-
-void
-cupsdStopPolling(void)
-{
- int i; /* Looping var */
- cupsd_dirsvc_poll_t *pollp; /* Current polling server */
-
-
- if (PollPipe >= 0)
- {
- cupsdStatBufDelete(PollStatusBuffer);
- close(PollPipe);
-
- cupsdRemoveSelect(PollPipe);
-
- PollPipe = -1;
- PollStatusBuffer = NULL;
- }
-
- for (i = 0, pollp = Polled; i < NumPolled; i ++, pollp ++)
- if (pollp->pid)
- cupsdEndProcess(pollp->pid, 0);
-}
-
-
-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
/*
* 'cupsdUpdateDNSSDName()' - Update the computer name we use for browsing...
*/
@@ -1910,15 +341,14 @@ cupsdStopPolling(void)
void
cupsdUpdateDNSSDName(void)
{
- DNSServiceErrorType error; /* Error from service creation */
char webif[1024]; /* Web interface share name */
-# ifdef HAVE_SYSTEMCONFIGURATION
+# ifdef __APPLE__
SCDynamicStoreRef sc; /* Context for dynamic store */
CFDictionaryRef btmm; /* Back-to-My-Mac domains */
CFStringEncoding nameEncoding; /* Encoding of computer name */
CFStringRef nameRef; /* Host name CFString */
char nameBuffer[1024]; /* C-string buffer */
-# endif /* HAVE_SYSTEMCONFIGURATION */
+# endif /* __APPLE__ */
/*
@@ -1926,7 +356,6 @@ cupsdUpdateDNSSDName(void)
* enabled...
*/
-
if (!DNSSDPort)
return;
@@ -1934,7 +363,7 @@ cupsdUpdateDNSSDName(void)
* Get the computer name as a c-string...
*/
-# ifdef HAVE_SYSTEMCONFIGURATION
+# ifdef __APPLE__
sc = SCDynamicStoreCreate(kCFAllocatorDefault, CFSTR("cupsd"), NULL, NULL);
if (sc)
@@ -2025,11 +454,19 @@ cupsdUpdateDNSSDName(void)
CFRelease(sc);
}
else
-# endif /* HAVE_SYSTEMCONFIGURATION */
+# endif /* __APPLE__ */
+# ifdef HAVE_AVAHI
+ {
+ cupsdSetString(&DNSSDComputerName, avahi_client_get_host_name(DNSSDClient));
+ cupsdSetString(&DNSSDHostName,
+ avahi_client_get_host_name_fqdn(DNSSDClient));
+ }
+# else /* HAVE_DNSSD */
{
cupsdSetString(&DNSSDComputerName, ServerName);
cupsdSetString(&DNSSDHostName, ServerName);
}
+# endif /* HAVE_AVAHI */
/*
* Then (re)register the web interface if enabled...
@@ -2040,267 +477,16 @@ cupsdUpdateDNSSDName(void)
if (DNSSDComputerName)
snprintf(webif, sizeof(webif), "CUPS @ %s", DNSSDComputerName);
else
- strlcpy(webif, "CUPS Web Interface", sizeof(webif));
-
- if (WebIFRef)
- DNSServiceRefDeallocate(WebIFRef);
-
- WebIFRef = DNSSDRef;
- if ((error = DNSServiceRegister(&WebIFRef,
- kDNSServiceFlagsShareConnection,
- 0, webif, "_http._tcp", NULL,
- NULL, htons(DNSSDPort), 7,
- "\006path=/", dnssdRegisterCallback,
- NULL)) != kDNSServiceErr_NoError)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "DNS-SD web interface registration failed: %d", error);
- }
-}
-#endif /* HAVE_DNSSD */
-
-
-#ifdef HAVE_LDAP
-/*
- * 'cupsdUpdateLDAPBrowse()' - Scan for new printers via LDAP...
- */
-
-void
-cupsdUpdateLDAPBrowse(void)
-{
- char uri[HTTP_MAX_URI], /* Printer URI */
- host[HTTP_MAX_URI], /* Hostname */
- resource[HTTP_MAX_URI], /* Resource path */
- location[1024], /* Printer location */
- info[1024], /* Printer information */
- make_model[1024], /* Printer make and model */
- type_num[30]; /* Printer type number */
- int type; /* Printer type */
- int rc; /* LDAP status */
- int limit; /* Size limit */
- LDAPMessage *res, /* LDAP search results */
- *e; /* Current entry from search */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "UpdateLDAPBrowse: %s", ServerName);
-
- BrowseLDAPRefresh = time(NULL) + BrowseInterval;
-
- /*
- * Reconnect if LDAP Handle is invalid...
- */
-
- if (! BrowseLDAPHandle)
- {
- ldap_reconnect();
- return;
- }
-
- /*
- * Search for cups printers in LDAP directory...
- */
-
- rc = ldap_search_rec(BrowseLDAPHandle, BrowseLDAPDN, LDAP_SCOPE_SUBTREE,
- "(objectclass=cupsPrinter)", (char **)ldap_attrs, 0, &res);
-
- /*
- * If ldap search was successfull then exit function
- * and temporary disable LDAP updates...
- */
-
- if (rc != LDAP_SUCCESS)
- {
- if (BrowseLDAPUpdate && ((rc == LDAP_SERVER_DOWN) || (rc == LDAP_CONNECT_ERROR)))
- {
- BrowseLDAPUpdate = FALSE;
- cupsdLogMessage(CUPSD_LOG_INFO,
- "LDAP update temporary disabled");
- }
- return;
- }
+ strlcpy(webif, "CUPS", sizeof(webif));
- /*
- * If LDAP updates were disabled, we will reenable them...
- */
-
- if (! BrowseLDAPUpdate)
- {
- BrowseLDAPUpdate = TRUE;
- cupsdLogMessage(CUPSD_LOG_INFO,
- "LDAP update enabled");
+ dnssdDeregisterInstance(&WebIFSrv);
+ dnssdRegisterInstance(&WebIFSrv, NULL, webif, "_http._tcp", "_printer",
+ DNSSDPort, NULL, 1);
}
-
- /*
- * Count LDAP entries and return if no entry exist...
- */
-
- limit = ldap_count_entries(BrowseLDAPHandle, res);
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "LDAP search returned %d entries", limit);
- if (limit < 1)
- {
- ldap_freeres(res);
- return;
- }
-
- /*
- * Loop through the available printers...
- */
-
- for (e = ldap_first_entry(BrowseLDAPHandle, res);
- e;
- e = ldap_next_entry(BrowseLDAPHandle, e))
- {
- /*
- * Get the required values from this entry...
- */
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e,
- "printerDescription", info, sizeof(info)) == -1)
- continue;
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e,
- "printerLocation", location, sizeof(location)) == -1)
- continue;
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e,
- "printerMakeAndModel", make_model, sizeof(make_model)) == -1)
- continue;
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e,
- "printerType", type_num, sizeof(type_num)) == -1)
- continue;
-
- type = atoi(type_num);
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e,
- "printerURI", uri, sizeof(uri)) == -1)
- continue;
-
- /*
- * Process the entry as browse data...
- */
-
- if (!is_local_queue(uri, host, sizeof(host), resource, sizeof(resource)))
- process_browse_data(uri, host, resource, type, IPP_PRINTER_IDLE,
- location, info, make_model, 0, NULL);
-
- }
-
- ldap_freeres(res);
}
-#endif /* HAVE_LDAP */
-#ifdef HAVE_LIBSLP
-/*
- * 'cupsdUpdateSLPBrowse()' - Get browsing information via SLP.
- */
-
-void
-cupsdUpdateSLPBrowse(void)
-{
- slpsrvurl_t *s, /* Temporary list of service URLs */
- *next; /* Next service in list */
- cupsd_printer_t p; /* Printer information */
- const char *uri; /* Pointer to printer URI */
- char host[HTTP_MAX_URI], /* Host portion of URI */
- resource[HTTP_MAX_URI]; /* Resource portion of URI */
-
-
- /*
- * Reset the refresh time...
- */
-
- BrowseSLPRefresh = time(NULL) + BrowseInterval;
-
- /*
- * Poll for remote printers using SLP...
- */
-
- s = NULL;
-
- SLPFindSrvs(BrowseSLPHandle, SLP_CUPS_SRVTYPE, "", "",
- slp_url_callback, &s);
-
- /*
- * Loop through the list of available printers...
- */
-
- for (; s; s = next)
- {
- /*
- * Save the "next" pointer...
- */
-
- next = s->next;
-
- /*
- * Load a cupsd_printer_t structure with the SLP service attributes...
- */
-
- SLPFindAttrs(BrowseSLPHandle, s->url, "", "", slp_attr_callback, &p);
-
- /*
- * Process this printer entry...
- */
-
- uri = s->url + SLP_CUPS_SRVLEN + 1;
-
- if (!strncmp(uri, "http://", 7) || !strncmp(uri, "ipp://", 6))
- {
- /*
- * Pull the URI apart to see if this is a local or remote printer...
- */
-
- if (!is_local_queue(uri, host, sizeof(host), resource, sizeof(resource)))
- process_browse_data(uri, host, resource, p.type, IPP_PRINTER_IDLE,
- p.location, p.info, p.make_model, 0, NULL);
- }
-
- /*
- * Free this listing...
- */
-
- cupsdClearString(&p.info);
- cupsdClearString(&p.location);
- cupsdClearString(&p.make_model);
-
- free(s);
- }
-}
-#endif /* HAVE_LIBSLP */
-
-
-/*
- * 'dequote()' - Remote quotes from a string.
- */
-
-static char * /* O - Dequoted string */
-dequote(char *d, /* I - Destination string */
- const char *s, /* I - Source string */
- int dlen) /* I - Destination length */
-{
- char *dptr; /* Pointer into destination */
-
-
- if (s)
- {
- for (dptr = d, dlen --; *s && dlen > 0; s ++)
- if (*s != '\"')
- {
- *dptr++ = *s;
- dlen --;
- }
-
- *dptr = '\0';
- }
- else
- *d = '\0';
-
- return (d);
-}
-
-
-#ifdef HAVE_DNSSD
-# ifdef HAVE_COREFOUNDATION
+# ifdef __APPLE__
/*
* 'dnssdAddAlias()' - Add a DNS-SD alias name.
*/
@@ -2338,20 +524,20 @@ dnssdAddAlias(const void *key, /* I - Key */
cupsdLogMessage(CUPSD_LOG_ERROR,
"Bad Back to My Mac domain in dynamic store!");
}
-# endif /* HAVE_COREFOUNDATION */
+# endif /* __APPLE__ */
/*
* 'dnssdBuildTxtRecord()' - Build a TXT record from printer info.
*/
-static char * /* O - TXT record */
+static cupsd_txt_t /* O - TXT record */
dnssdBuildTxtRecord(
- int *txt_len, /* O - TXT record length */
cupsd_printer_t *p, /* I - Printer information */
int for_lpd) /* I - 1 = LPD, 0 = IPP */
{
- int i; /* Looping var */
+ int i, /* Looping var */
+ count; /* Count of key/value pairs */
char admin_hostname[256], /* .local hostname for admin page */
adminurl_str[256], /* URL for the admin page */
type_str[32], /* Type to string buffer */
@@ -2359,249 +545,370 @@ dnssdBuildTxtRecord(
rp_str[1024], /* Queue name string buffer */
air_str[1024], /* auth-info-required string buffer */
*keyvalue[32][2]; /* Table of key/value pairs */
+ cupsd_txt_t txt; /* TXT record */
/*
* Load up the key value pairs...
*/
- i = 0;
-
- keyvalue[i ][0] = "txtvers";
- keyvalue[i++][1] = "1";
+ count = 0;
- keyvalue[i ][0] = "qtotal";
- keyvalue[i++][1] = "1";
-
- keyvalue[i ][0] = "rp";
- keyvalue[i++][1] = rp_str;
- if (for_lpd)
- strlcpy(rp_str, p->name, sizeof(rp_str));
- else
- snprintf(rp_str, sizeof(rp_str), "%s/%s",
- (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers", p->name);
+ if (!for_lpd || (BrowseLocalProtocols & BROWSE_LPD))
+ {
+ keyvalue[count ][0] = "txtvers";
+ keyvalue[count++][1] = "1";
- keyvalue[i ][0] = "ty";
- keyvalue[i++][1] = p->make_model ? p->make_model : "Unknown";
+ keyvalue[count ][0] = "qtotal";
+ keyvalue[count++][1] = "1";
- snprintf(admin_hostname, sizeof(admin_hostname), "%s.local.", DNSSDHostName);
- httpAssembleURIf(HTTP_URI_CODING_ALL, adminurl_str, sizeof(adminurl_str),
- "http", NULL, admin_hostname, DNSSDPort, "/%s/%s",
- (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers",
- p->name);
- keyvalue[i ][0] = "adminurl";
- keyvalue[i++][1] = adminurl_str;
+ keyvalue[count ][0] = "rp";
+ keyvalue[count++][1] = rp_str;
+ if (for_lpd)
+ strlcpy(rp_str, p->name, sizeof(rp_str));
+ else
+ snprintf(rp_str, sizeof(rp_str), "%s/%s",
+ (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers",
+ p->name);
- keyvalue[i ][0] = "note";
- keyvalue[i++][1] = p->location ? p->location : "";
+ keyvalue[count ][0] = "ty";
+ keyvalue[count++][1] = p->make_model ? p->make_model : "Unknown";
- keyvalue[i ][0] = "priority";
- keyvalue[i++][1] = for_lpd ? "100" : "0";
+ if (strstr(DNSSDHostName, ".local"))
+ strlcpy(admin_hostname, DNSSDHostName, sizeof(admin_hostname));
+ else
+ snprintf(admin_hostname, sizeof(admin_hostname), "%s.local.",
+ DNSSDHostName);
+ httpAssembleURIf(HTTP_URI_CODING_ALL, adminurl_str, sizeof(adminurl_str),
+# ifdef HAVE_SSL
+ "https",
+# else
+ "http",
+# endif /* HAVE_SSL */
+ NULL, admin_hostname, DNSSDPort, "/%s/%s",
+ (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers",
+ p->name);
+ keyvalue[count ][0] = "adminurl";
+ keyvalue[count++][1] = adminurl_str;
- keyvalue[i ][0] = "product";
- keyvalue[i++][1] = p->pc && p->pc->product ? p->pc->product : "Unknown";
+ if (p->location)
+ {
+ keyvalue[count ][0] = "note";
+ keyvalue[count++][1] = p->location;
+ }
- keyvalue[i ][0] = "pdl";
- keyvalue[i++][1] = p->pdl ? p->pdl : "application/postscript";
+ keyvalue[count ][0] = "priority";
+ keyvalue[count++][1] = for_lpd ? "100" : "0";
- if (get_auth_info_required(p, air_str, sizeof(air_str)))
- {
- keyvalue[i ][0] = "air";
- keyvalue[i++][1] = air_str;
- }
+ keyvalue[count ][0] = "product";
+ keyvalue[count++][1] = p->pc && p->pc->product ? p->pc->product : "Unknown";
- keyvalue[i ][0] = "UUID";
- keyvalue[i++][1] = p->uuid + 9;
+ keyvalue[count ][0] = "pdl";
+ keyvalue[count++][1] = p->pdl ? p->pdl : "application/postscript";
-#ifdef HAVE_SSL
- keyvalue[i ][0] = "TLS";
- keyvalue[i++][1] = "1.2";
-#endif /* HAVE_SSL */
+ if (get_auth_info_required(p, air_str, sizeof(air_str)))
+ {
+ keyvalue[count ][0] = "air";
+ keyvalue[count++][1] = air_str;
+ }
- keyvalue[i ][0] = "Transparent";
- keyvalue[i++][1] = "F";
+ keyvalue[count ][0] = "UUID";
+ keyvalue[count++][1] = p->uuid + 9;
- keyvalue[i ][0] = "Binary";
- keyvalue[i++][1] = "F";
+ #ifdef HAVE_SSL
+ keyvalue[count ][0] = "TLS";
+ keyvalue[count++][1] = "1.2";
+ #endif /* HAVE_SSL */
- keyvalue[i ][0] = "Fax";
- keyvalue[i++][1] = (p->type & CUPS_PRINTER_FAX) ? "T" : "F";
+ if (p->type & CUPS_PRINTER_FAX)
+ {
+ keyvalue[count ][0] = "Fax";
+ keyvalue[count++][1] = (p->type & CUPS_PRINTER_FAX) ? "T" : "F";
+ }
- keyvalue[i ][0] = "Color";
- keyvalue[i++][1] = (p->type & CUPS_PRINTER_COLOR) ? "T" : "F";
+ if (p->type & CUPS_PRINTER_COLOR)
+ {
+ keyvalue[count ][0] = "Color";
+ keyvalue[count++][1] = (p->type & CUPS_PRINTER_COLOR) ? "T" : "F";
+ }
- keyvalue[i ][0] = "Duplex";
- keyvalue[i++][1] = (p->type & CUPS_PRINTER_DUPLEX) ? "T" : "F";
+ if (p->type & CUPS_PRINTER_DUPLEX)
+ {
+ keyvalue[count ][0] = "Duplex";
+ keyvalue[count++][1] = (p->type & CUPS_PRINTER_DUPLEX) ? "T" : "F";
+ }
- keyvalue[i ][0] = "Staple";
- keyvalue[i++][1] = (p->type & CUPS_PRINTER_STAPLE) ? "T" : "F";
+ if (p->type & CUPS_PRINTER_STAPLE)
+ {
+ keyvalue[count ][0] = "Staple";
+ keyvalue[count++][1] = (p->type & CUPS_PRINTER_STAPLE) ? "T" : "F";
+ }
- keyvalue[i ][0] = "Copies";
- keyvalue[i++][1] = (p->type & CUPS_PRINTER_COPIES) ? "T" : "F";
+ if (p->type & CUPS_PRINTER_COPIES)
+ {
+ keyvalue[count ][0] = "Copies";
+ keyvalue[count++][1] = (p->type & CUPS_PRINTER_COPIES) ? "T" : "F";
+ }
- keyvalue[i ][0] = "Collate";
- keyvalue[i++][1] = (p->type & CUPS_PRINTER_COLLATE) ? "T" : "F";
+ if (p->type & CUPS_PRINTER_COLLATE)
+ {
+ keyvalue[count ][0] = "Collate";
+ keyvalue[count++][1] = (p->type & CUPS_PRINTER_COLLATE) ? "T" : "F";
+ }
- keyvalue[i ][0] = "Punch";
- keyvalue[i++][1] = (p->type & CUPS_PRINTER_PUNCH) ? "T" : "F";
+ if (p->type & CUPS_PRINTER_PUNCH)
+ {
+ keyvalue[count ][0] = "Punch";
+ keyvalue[count++][1] = (p->type & CUPS_PRINTER_PUNCH) ? "T" : "F";
+ }
- keyvalue[i ][0] = "Bind";
- keyvalue[i++][1] = (p->type & CUPS_PRINTER_BIND) ? "T" : "F";
+ if (p->type & CUPS_PRINTER_BIND)
+ {
+ keyvalue[count ][0] = "Bind";
+ keyvalue[count++][1] = (p->type & CUPS_PRINTER_BIND) ? "T" : "F";
+ }
- keyvalue[i ][0] = "Sort";
- keyvalue[i++][1] = (p->type & CUPS_PRINTER_SORT) ? "T" : "F";
+ if (p->type & CUPS_PRINTER_SORT)
+ {
+ keyvalue[count ][0] = "Sort";
+ keyvalue[count++][1] = (p->type & CUPS_PRINTER_SORT) ? "T" : "F";
+ }
- keyvalue[i ][0] = "Scan";
- keyvalue[i++][1] = (p->type & CUPS_PRINTER_MFP) ? "T" : "F";
+ if (p->type & CUPS_PRINTER_MFP)
+ {
+ keyvalue[count ][0] = "Scan";
+ keyvalue[count++][1] = (p->type & CUPS_PRINTER_MFP) ? "T" : "F";
+ }
- snprintf(type_str, sizeof(type_str), "0x%X", p->type | CUPS_PRINTER_REMOTE);
- snprintf(state_str, sizeof(state_str), "%d", p->state);
+ snprintf(type_str, sizeof(type_str), "0x%X", p->type | CUPS_PRINTER_REMOTE);
+ snprintf(state_str, sizeof(state_str), "%d", p->state);
- keyvalue[i ][0] = "printer-state";
- keyvalue[i++][1] = state_str;
+ keyvalue[count ][0] = "printer-state";
+ keyvalue[count++][1] = state_str;
- keyvalue[i ][0] = "printer-type";
- keyvalue[i++][1] = type_str;
+ keyvalue[count ][0] = "printer-type";
+ keyvalue[count++][1] = type_str;
+ }
/*
* Then pack them into a proper txt record...
*/
- return (dnssdPackTxtRecord(txt_len, keyvalue, i));
-}
+# ifdef HAVE_DNSSD
+ TXTRecordCreate(&txt, 0, NULL);
+ for (i = 0; i < count; i ++)
+ {
+ size_t len = strlen(keyvalue[i][1]);
-/*
- * 'dnssdComparePrinters()' - Compare the registered names of two printers.
- */
+ if (len < 256)
+ TXTRecordSetValue(&txt, keyvalue[i][0], (uint8_t)len, keyvalue[i][1]);
+ }
-static int /* O - Result of comparison */
-dnssdComparePrinters(cupsd_printer_t *a,/* I - First printer */
- cupsd_printer_t *b)/* I - Second printer */
-{
- return (_cups_strcasecmp(a->reg_name, b->reg_name));
+# else
+ for (i = 0, txt = NULL; i < count; i ++)
+ txt = avahi_string_list_add_printf(txt, "%s=%s", keyvalue[i][0],
+ keyvalue[i][1]);
+# endif /* HAVE_DNSSD */
+
+ return (txt);
}
/*
- * 'dnssdDeregisterPrinter()' - Stop sending broadcast information for a
- * printer.
+ * 'dnssdDeregisterInstance()' - Deregister a DNS-SD service instance.
*/
static void
-dnssdDeregisterPrinter(
- cupsd_printer_t *p) /* I - Printer */
+dnssdDeregisterInstance(
+ cupsd_srv_t *srv) /* I - Service */
{
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdDeregisterPrinter(%s)", p->name);
+ if (!srv || !*srv)
+ return;
- /*
- * Closing the socket deregisters the service
- */
+# ifdef HAVE_DNSSD
+ DNSServiceRefDeallocate(*srv);
- if (p->ipp_ref)
- {
- DNSServiceRefDeallocate(p->ipp_ref);
- p->ipp_ref = NULL;
- }
+# else /* HAVE_AVAHI */
+ avahi_threaded_poll_lock(DNSSDMaster);
+ avahi_entry_group_free(*srv);
+ avahi_threaded_poll_unlock(DNSSDMaster);
+# endif /* HAVE_DNSSD */
- if (p->ipp_txt)
- {
- /*
- * p->ipp_txt is malloc'd, not _cupsStrAlloc'd...
- */
+ *srv = NULL;
+}
- free(p->ipp_txt);
- p->ipp_txt = NULL;
- }
- if (p->printer_ref)
- {
- DNSServiceRefDeallocate(p->printer_ref);
- p->printer_ref = NULL;
- }
+/*
+ * 'dnssdDeregisterPrinter()' - Deregister all services for a printer.
+ */
+
+static void
+dnssdDeregisterPrinter(
+ cupsd_printer_t *p, /* I - Printer */
+ int clear_name) /* I - Clear the name? */
+
+{
+ cupsdLogMessage(CUPSD_LOG_DEBUG2,
+ "dnssdDeregisterPrinter(p=%p(%s), clear_name=%d)", p, p->name,
+ clear_name);
- if (p->printer_txt)
+ if (p->ipp_srv)
{
- /*
- * p->printer_txt is malloc'd, not _cupsStrAlloc'd...
- */
+ dnssdDeregisterInstance(&p->ipp_srv);
- free(p->printer_txt);
- p->printer_txt = NULL;
+# ifdef HAVE_DNSSD
+# ifdef HAVE_SSL
+ dnssdDeregisterInstance(&p->ipps_srv);
+# endif /* HAVE_SSL */
+ dnssdDeregisterInstance(&p->printer_srv);
+# endif /* HAVE_DNSSD */
}
/*
- * Remove the printer from the array of DNS-SD printers, then clear the
+ * Remove the printer from the array of DNS-SD printers but keep the
* registered name...
*/
cupsArrayRemove(DNSSDPrinters, p);
- cupsdClearString(&p->reg_name);
+
+ /*
+ * Optionally clear the service name...
+ */
+
+ if (clear_name)
+ cupsdClearString(&p->reg_name);
}
/*
- * 'dnssdPackTxtRecord()' - Pack an array of key/value pairs into the
- * TXT record format.
+ * 'dnssdErrorString()' - Return an error string for an error code.
*/
-static char * /* O - TXT record */
-dnssdPackTxtRecord(int *txt_len, /* O - TXT record length */
- char *keyvalue[][2], /* I - Table of key value pairs */
- int count) /* I - Items in table */
+static const char * /* O - Error message */
+dnssdErrorString(int error) /* I - Error number */
{
- int i; /* Looping var */
- int length; /* Length of TXT record */
- int length2; /* Length of value */
- char *txtRecord; /* TXT record buffer */
- char *cursor; /* Looping pointer */
+# ifdef HAVE_DNSSD
+ switch (error)
+ {
+ case kDNSServiceErr_NoError :
+ return ("OK.");
+ default :
+ case kDNSServiceErr_Unknown :
+ return ("Unknown error.");
- /*
- * Calculate the buffer size
- */
+ case kDNSServiceErr_NoSuchName :
+ return ("Service not found.");
- if (count <= 0)
- return (NULL);
+ case kDNSServiceErr_NoMemory :
+ return ("Out of memory.");
- for (length = i = 0; i < count; i++)
- length += 1 + strlen(keyvalue[i][0]) +
- (keyvalue[i][1] ? 1 + strlen(keyvalue[i][1]) : 0);
+ case kDNSServiceErr_BadParam :
+ return ("Bad parameter.");
- /*
- * Allocate and fill it
- */
+ case kDNSServiceErr_BadReference :
+ return ("Bad service reference.");
- txtRecord = malloc(length);
- if (txtRecord)
- {
- *txt_len = length;
+ case kDNSServiceErr_BadState :
+ return ("Bad state.");
- for (cursor = txtRecord, i = 0; i < count; i++)
- {
- /*
- * Drop in the p-string style length byte followed by the data
- */
+ case kDNSServiceErr_BadFlags :
+ return ("Bad flags.");
- length = strlen(keyvalue[i][0]);
- length2 = keyvalue[i][1] ? 1 + strlen(keyvalue[i][1]) : 0;
+ case kDNSServiceErr_Unsupported :
+ return ("Unsupported.");
- *cursor++ = (unsigned char)(length + length2);
+ case kDNSServiceErr_NotInitialized :
+ return ("Not initialized.");
- memcpy(cursor, keyvalue[i][0], length);
- cursor += length;
+ case kDNSServiceErr_AlreadyRegistered :
+ return ("Already registered.");
- if (length2)
- {
- length2 --;
- *cursor++ = '=';
- memcpy(cursor, keyvalue[i][1], length2);
- cursor += length2;
- }
- }
+ case kDNSServiceErr_NameConflict :
+ return ("Name conflict.");
+
+ case kDNSServiceErr_Invalid :
+ return ("Invalid name.");
+
+ case kDNSServiceErr_Firewall :
+ return ("Firewall prevents registration.");
+
+ case kDNSServiceErr_Incompatible :
+ return ("Client library incompatible.");
+
+ case kDNSServiceErr_BadInterfaceIndex :
+ return ("Bad interface index.");
+
+ case kDNSServiceErr_Refused :
+ return ("Server prevents registration.");
+
+ case kDNSServiceErr_NoSuchRecord :
+ return ("Record not found.");
+
+ case kDNSServiceErr_NoAuth :
+ return ("Authentication required.");
+
+ case kDNSServiceErr_NoSuchKey :
+ return ("Encryption key not found.");
+
+ case kDNSServiceErr_NATTraversal :
+ return ("Unable to traverse NAT boundary.");
+
+ case kDNSServiceErr_DoubleNAT :
+ return ("Unable to traverse double-NAT boundary.");
+
+ case kDNSServiceErr_BadTime :
+ return ("Bad system time.");
+
+ case kDNSServiceErr_BadSig :
+ return ("Bad signature.");
+
+ case kDNSServiceErr_BadKey :
+ return ("Bad encryption key.");
+
+ case kDNSServiceErr_Transient :
+ return ("Transient error occurred - please try again.");
+
+ case kDNSServiceErr_ServiceNotRunning :
+ return ("Server not running.");
+
+ case kDNSServiceErr_NATPortMappingUnsupported :
+ return ("NAT doesn't support NAT-PMP or UPnP.");
+
+ case kDNSServiceErr_NATPortMappingDisabled :
+ return ("NAT supports NAT-PNP or UPnP but it is disabled.");
+
+ case kDNSServiceErr_NoRouter :
+ return ("No Internet/default router configured.");
+
+ case kDNSServiceErr_PollingMode :
+ return ("Service polling mode error.");
+
+ case kDNSServiceErr_Timeout :
+ return ("Service timeout.");
}
- return (txtRecord);
+# else /* HAVE_AVAHI */
+ return (avahi_strerror(error));
+# endif /* HAVE_DNSSD */
+}
+
+
+/*
+ * 'dnssdRegisterCallback()' - Free a TXT record.
+ */
+
+static void
+dnssdFreeTxtRecord(cupsd_txt_t *txt) /* I - TXT record */
+{
+# ifdef HAVE_DNSSD
+ TXTRecordDeallocate(txt);
+
+# else /* HAVE_AVAHI */
+ avahi_string_list_free(*txt);
+ *txt = NULL;
+# endif /* HAVE_DNSSD */
}
@@ -2609,6 +916,7 @@ dnssdPackTxtRecord(int *txt_len, /* O - TXT record length */
* 'dnssdRegisterCallback()' - DNSServiceRegister callback.
*/
+# ifdef HAVE_DNSSD
static void
dnssdRegisterCallback(
DNSServiceRef sdRef, /* I - DNS Service reference */
@@ -2617,7 +925,7 @@ dnssdRegisterCallback(
const char *name, /* I - Service name */
const char *regtype, /* I - Service type */
const char *domain, /* I - Domain. ".local" for now */
- void *context) /* I - User-defined context */
+ void *context) /* I - Printer */
{
cupsd_printer_t *p = (cupsd_printer_t *)context;
/* Current printer */
@@ -2650,245 +958,330 @@ dnssdRegisterCallback(
}
}
+# else /* HAVE_AVAHI */
+static void
+dnssdRegisterCallback(
+ AvahiEntryGroup *srv, /* I - Service */
+ AvahiEntryGroupState state, /* I - Registration state */
+ void *context) /* I - Printer */
+{
+ cupsd_printer_t *p = (cupsd_printer_t *)context;
+ /* Current printer */
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG2,
+ "dnssdRegisterCallback(srv=%p, state=%d, context=%p) "
+ "for %s (%s)", srv, state, context,
+ p ? p->name : "Web Interface",
+ p ? (p->reg_name ? p->reg_name : "(null)") : "NA");
+
+ /* TODO: Handle collisions with avahi_alternate_service_name(p->reg_name)? */
+}
+# endif /* HAVE_DNSSD */
+
/*
- * 'dnssdRegisterPrinter()' - Start sending broadcast information for a printer
- * or update the broadcast contents.
+ * 'dnssdRegisterInstance()' - Register an instance of a printer service.
*/
-static void
-dnssdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */
+static int /* O - 1 on success, 0 on failure */
+dnssdRegisterInstance(
+ cupsd_srv_t *srv, /* O - Service */
+ cupsd_printer_t *p, /* I - Printer */
+ char *name, /* I - DNS-SD service name */
+ const char *type, /* I - DNS-SD service type */
+ const char *subtypes, /* I - Subtypes to register or NULL */
+ int port, /* I - Port number or 0 */
+ cupsd_txt_t *txt, /* I - TXT record */
+ int commit) /* I - Commit registration? */
{
- DNSServiceErrorType se; /* dnssd errors */
- char *ipp_txt, /* IPP TXT record buffer */
- *printer_txt, /* LPD TXT record buffer */
- name[1024], /* Service name */
- *nameptr; /* Pointer into name */
- int ipp_len, /* IPP TXT record length */
- printer_len, /* LPD TXT record length */
- printer_port; /* LPD port number */
- const char *regtype; /* Registration type */
+ char temp[256], /* Temporary string */
+ *ptr; /* Pointer into string */
+ int error; /* Any error */
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name,
- !p->ipp_ref ? "new" : "update");
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "Registering \"%s\" with DNS-SD type \"%s\".", name, type);
- /*
- * If per-printer sharing was just disabled make sure we're not
- * registered before returning.
- */
+ if (p && !srv)
+ {
+ /*
+ * Assign the correct pointer for "srv"...
+ */
- if (!p->shared)
+# ifdef HAVE_DNSSD
+ if (!strcmp(type, "_printer._tcp"))
+ srv = &p->printer_srv; /* Target LPD service */
+# ifdef HAVE_SSL
+ else if (!strcmp(type, "_ipps._tcp"))
+ srv = &p->ipps_srv; /* Target IPPS service */
+# endif /* HAVE_SSL */
+ else
+ srv = &p->ipp_srv; /* Target IPP service */
+
+# else /* HAVE_AVAHI */
+ srv = &p->ipp_srv; /* Target service group */
+# endif /* HAVE_DNSSD */
+ }
+
+# ifdef HAVE_DNSSD
+ (void)commit;
+
+# else /* HAVE_AVAHI */
+ avahi_threaded_poll_lock(DNSSDMaster);
+
+ if (!*srv)
+ *srv = avahi_entry_group_new(DNSSDClient, dnssdRegisterCallback, NULL);
+ if (!*srv)
{
- dnssdDeregisterPrinter(p);
- return;
+ avahi_threaded_poll_unlock(DNSSDMaster);
+
+ cupsdLogMessage(CUPSD_LOG_WARN, "DNS-SD registration of \"%s\" failed: %s",
+ name, dnssdErrorString(avahi_client_errno(DNSSDClient)));
+ return (0);
}
+# endif /* HAVE_DNSSD */
/*
- * The registered name takes the form of "<printer-info> @ <computer name>"...
+ * Make sure the name is <= 63 octets, and when we truncate be sure to
+ * properly truncate any UTF-8 characters...
*/
- if (p->info && strlen(p->info) > 0)
+ ptr = name + strlen(name);
+ while ((ptr - name) > 63)
{
- if (DNSSDComputerName)
- snprintf(name, sizeof(name), "%s @ %s", p->info, DNSSDComputerName);
- else
- strlcpy(name, p->info, sizeof(name));
+ do
+ {
+ ptr --;
+ }
+ while (ptr > name && (*ptr & 0xc0) == 0x80);
+
+ if (ptr > name)
+ *ptr = '\0';
}
- else if (DNSSDComputerName)
- snprintf(name, sizeof(name), "%s @ %s", p->name, DNSSDComputerName);
- else
- strlcpy(name, p->name, sizeof(name));
/*
- * If an existing printer was renamed, unregister it and start over...
+ * Register the service...
*/
- if (p->reg_name && strcmp(p->reg_name, name))
- dnssdDeregisterPrinter(p);
+# ifdef HAVE_DNSSD
+ if (subtypes)
+ snprintf(temp, sizeof(temp), "%s,%s", type, subtypes);
+ else
+ strlcpy(temp, type, sizeof(temp));
+
+ *srv = DNSSDMaster;
+ error = DNSServiceRegister(srv, kDNSServiceFlagsShareConnection,
+ 0, name, temp, NULL, NULL, htons(port),
+ txt ? TXTRecordGetLength(txt) : 0,
+ txt ? TXTRecordGetBytesPtr(txt) : NULL,
+ dnssdRegisterCallback, p);
- if (!p->reg_name)
+# else /* HAVE_AVAHI */
+ if (txt)
{
- cupsdSetString(&p->reg_name, name);
- cupsArrayAdd(DNSSDPrinters, p);
+ AvahiStringList *temptxt;
+ for (temptxt = *txt; temptxt; temptxt = temptxt->next)
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS_SD \"%s\" %s", name, temptxt->text);
}
- /*
- * Register IPP and (optionally) LPD...
- */
-
- ipp_len = 0; /* anti-compiler-warning-code */
- ipp_txt = dnssdBuildTxtRecord(&ipp_len, p, 0);
+ error = avahi_entry_group_add_service_strlst(*srv, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC, 0, name,
+ type, NULL, NULL, port,
+ txt ? *txt : NULL);
+ if (error)
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS-SD service add for \"%s\" failed.",
+ name);
- if (p->ipp_ref &&
- (ipp_len != p->ipp_len || memcmp(ipp_txt, p->ipp_txt, ipp_len)))
+ if (!error && subtypes)
{
/*
- * Update the existing registration...
+ * Register all of the subtypes...
*/
- /* A TTL of 0 means use record's original value (Radar 3176248) */
- if ((se = DNSServiceUpdateRecord(p->ipp_ref, NULL, 0, ipp_len, ipp_txt,
- 0)) == kDNSServiceErr_NoError)
- {
- if (p->ipp_txt)
- free(p->ipp_txt);
+ char *start, /* Start of subtype */
+ subtype[256]; /* Subtype string */
- p->ipp_txt = ipp_txt;
- p->ipp_len = ipp_len;
- ipp_txt = NULL;
- }
- else
+ strlcpy(temp, subtypes, sizeof(temp));
+
+ for (start = temp; *start; start = ptr)
{
/*
- * Failed to update record, lets close this reference and move on...
+ * Skip leading whitespace...
*/
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to update IPP DNS-SD record for %s - %d", p->name,
- se);
+ while (*start && isspace(*start & 255))
+ start ++;
+
+ /*
+ * Grab everything up to the next comma or the end of the string...
+ */
+
+ for (ptr = start; *ptr && *ptr != ','; ptr ++);
+
+ if (*ptr)
+ *ptr++ = '\0';
+
+ if (!*start)
+ break;
- DNSServiceRefDeallocate(p->ipp_ref);
- p->ipp_ref = NULL;
+ /*
+ * Register the subtype...
+ */
+
+ snprintf(subtype, sizeof(subtype), "%s._sub.%s", start, type);
+
+ error = avahi_entry_group_add_service_subtype(*srv, AVAHI_IF_UNSPEC,
+ AVAHI_PROTO_UNSPEC, 0,
+ name, type, NULL, subtype);
+ if (error)
+ {
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "DNS-SD subtype %s registration for \"%s\" failed." ,
+ subtype, name);
+ break;
+ }
}
}
- if (!p->ipp_ref)
+ if (!error && commit)
{
- /*
- * Initial registration. Use the _fax-ipp regtype for fax queues...
- */
+ if ((error = avahi_entry_group_commit(*srv)) != 0)
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS-SD commit of \"%s\" failed.",
+ name);
+ }
- regtype = (p->type & CUPS_PRINTER_FAX) ? "_fax-ipp._tcp" : DNSSDRegType;
+ avahi_threaded_poll_unlock(DNSSDMaster);
+# endif /* HAVE_DNSSD */
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "Registering DNS-SD printer %s with name \"%s\" and "
- "type \"%s\"", p->name, name, regtype);
+ if (error)
+ {
+ cupsdLogMessage(CUPSD_LOG_WARN, "DNS-SD registration of \"%s\" failed: %s",
+ name, dnssdErrorString(error));
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS-SD type: %s", type);
+ if (subtypes)
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS-SD sub-types: %s", subtypes);
+ }
- /*
- * Register the queue, dropping characters as needed until we succeed...
- */
+ return (!error);
+}
- nameptr = name + strlen(name);
- do
- {
- p->ipp_ref = DNSSDRef;
- if ((se = DNSServiceRegister(&p->ipp_ref, kDNSServiceFlagsShareConnection,
- 0, name, regtype, NULL, NULL,
- htons(DNSSDPort), ipp_len, ipp_txt,
- dnssdRegisterCallback,
- p)) == kDNSServiceErr_BadParam)
- {
- /*
- * Name is too long, drop trailing characters, taking into account
- * UTF-8 encoding...
- */
+/*
+ * 'dnssdRegisterPrinter()' - Start sending broadcast information for a printer
+ * or update the broadcast contents.
+ */
- nameptr --;
+static void
+dnssdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */
+{
+ char name[256]; /* Service name */
+ int printer_port; /* LPD port number */
+ int status; /* Registration status */
+ cupsd_txt_t ipp_txt, /* IPP(S) TXT record */
+ printer_txt; /* LPD TXT record */
- while (nameptr > name && (*nameptr & 0xc0) == 0x80)
- nameptr --;
+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name,
+ !p->ipp_srv ? "new" : "update");
- if (nameptr > name)
- *nameptr = '\0';
- }
- }
- while (se == kDNSServiceErr_BadParam && nameptr > name);
+ /*
+ * Remove the current registrations if we have them and then return if
+ * per-printer sharing was just disabled...
+ */
- if (se == kDNSServiceErr_NoError)
+ dnssdDeregisterPrinter(p, 0);
+
+ if (!p->shared)
+ return;
+
+ /*
+ * Set the registered name as needed; the registered name takes the form of
+ * "<printer-info> @ <computer name>"...
+ */
+
+ if (!p->reg_name)
+ {
+ if (p->info && strlen(p->info) > 0)
{
- p->ipp_txt = ipp_txt;
- p->ipp_len = ipp_len;
- ipp_txt = NULL;
+ if (DNSSDComputerName)
+ snprintf(name, sizeof(name), "%s @ %s", p->info, DNSSDComputerName);
+ else
+ strlcpy(name, p->info, sizeof(name));
}
+ else if (DNSSDComputerName)
+ snprintf(name, sizeof(name), "%s @ %s", p->name, DNSSDComputerName);
else
- cupsdLogMessage(CUPSD_LOG_WARN,
- "DNS-SD IPP registration of \"%s\" failed: %d",
- p->name, se);
+ strlcpy(name, p->name, sizeof(name));
}
+ else
+ strlcpy(name, p->reg_name, sizeof(name));
+
+ /*
+ * Register IPP and LPD...
+ *
+ * We always must register the "_printer" service type in order to reserve
+ * our name, but use port number 0 if we haven't actually configured cups-lpd
+ * to share via LPD...
+ */
- if (ipp_txt)
- free(ipp_txt);
+ ipp_txt = dnssdBuildTxtRecord(p, 0);
+ printer_txt = dnssdBuildTxtRecord(p, 1);
if (BrowseLocalProtocols & BROWSE_LPD)
- {
- printer_len = 0; /* anti-compiler-warning-code */
printer_port = 515;
- printer_txt = dnssdBuildTxtRecord(&printer_len, p, 1);
- }
else
- {
- printer_len = 0;
printer_port = 0;
- printer_txt = NULL;
- }
- if (p->printer_ref &&
- (printer_len != p->printer_len ||
- memcmp(printer_txt, p->printer_txt, printer_len)))
+ status = dnssdRegisterInstance(NULL, p, name, "_printer._tcp", NULL,
+ printer_port, &printer_txt, 0);
+
+# ifdef HAVE_SSL
+ if (status)
+ dnssdRegisterInstance(NULL, p, name, "_ipps._tcp", DNSSDSubTypes,
+ DNSSDPort, &ipp_txt, 0);
+# endif /* HAVE_SSL */
+
+ if (status)
{
/*
- * Update the existing registration...
+ * Use the "_fax-ipp" service type for fax queues, otherwise use "_ipp"...
*/
- /* A TTL of 0 means use record's original value (Radar 3176248) */
- if ((se = DNSServiceUpdateRecord(p->printer_ref, NULL, 0, printer_len,
- printer_txt,
- 0)) == kDNSServiceErr_NoError)
- {
- if (p->printer_txt)
- free(p->printer_txt);
-
- p->printer_txt = printer_txt;
- p->printer_len = printer_len;
- printer_txt = NULL;
- }
+ if (p->type & CUPS_PRINTER_FAX)
+ status = dnssdRegisterInstance(NULL, p, name, "_fax-ipp._tcp",
+ DNSSDSubTypes, DNSSDPort, &ipp_txt, 1);
else
- {
- /*
- * Failed to update record, lets close this reference and move on...
- */
-
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to update LPD DNS-SD record for %s - %d",
- p->name, se);
-
- DNSServiceRefDeallocate(p->printer_ref);
- p->printer_ref = NULL;
- }
+ status = dnssdRegisterInstance(NULL, p, name, "_ipp._tcp", DNSSDSubTypes,
+ DNSSDPort, &ipp_txt, 1);
}
- if (!p->printer_ref)
+ dnssdFreeTxtRecord(&ipp_txt);
+ dnssdFreeTxtRecord(&printer_txt);
+
+ if (status)
{
/*
- * Initial registration...
+ * Save the registered name and add the printer to the array of DNS-SD
+ * printers...
*/
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "Registering DNS-SD printer %s with name \"%s\" and "
- "type \"_printer._tcp\"", p->name, name);
-
- p->printer_ref = DNSSDRef;
- if ((se = DNSServiceRegister(&p->printer_ref,
- kDNSServiceFlagsShareConnection,
- 0, name, "_printer._tcp", NULL, NULL,
- htons(printer_port), printer_len, printer_txt,
- dnssdRegisterCallback,
- p)) == kDNSServiceErr_NoError)
- {
- p->printer_txt = printer_txt;
- p->printer_len = printer_len;
- printer_txt = NULL;
- }
- else
- cupsdLogMessage(CUPSD_LOG_WARN,
- "DNS-SD LPD registration of \"%s\" failed: %d",
- p->name, se);
+ cupsdSetString(&p->reg_name, name);
+ cupsArrayAdd(DNSSDPrinters, p);
}
+ else
+ {
+ /*
+ * Registration failed for this printer...
+ */
+
+ dnssdDeregisterInstance(&p->ipp_srv);
- if (printer_txt)
- free(printer_txt);
+# ifdef HAVE_DNSSD
+# ifdef HAVE_SSL
+ dnssdDeregisterInstance(&p->ipps_srv);
+# endif /* HAVE_SSL */
+ dnssdDeregisterInstance(&p->printer_srv);
+# endif /* HAVE_DNSSD */
+ }
}
@@ -2909,28 +1302,27 @@ dnssdStop(void)
for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
p;
p = (cupsd_printer_t *)cupsArrayNext(Printers))
- dnssdDeregisterPrinter(p);
+ dnssdDeregisterPrinter(p, 1);
/*
* Shutdown the rest of the service refs...
*/
- if (WebIFRef)
- {
- DNSServiceRefDeallocate(WebIFRef);
- WebIFRef = NULL;
- }
+ dnssdDeregisterInstance(&WebIFSrv);
- if (RemoteRef)
- {
- DNSServiceRefDeallocate(RemoteRef);
- RemoteRef = NULL;
- }
+# ifdef HAVE_DNSSD
+ cupsdRemoveSelect(DNSServiceRefSockFD(DNSSDMaster));
+
+ DNSServiceRefDeallocate(DNSSDMaster);
+ DNSSDMaster = NULL;
- cupsdRemoveSelect(DNSServiceRefSockFD(DNSSDRef));
+# else /* HAVE_AVAHI */
+ avahi_client_free(DNSSDClient);
+ DNSSDClient = NULL;
- DNSServiceRefDeallocate(DNSSDRef);
- DNSSDRef = NULL;
+ avahi_threaded_poll_free(DNSSDMaster);
+ DNSSDMaster = NULL;
+# endif /* HAVE_DNSSD */
cupsArrayDelete(DNSSDPrinters);
DNSSDPrinters = NULL;
@@ -2939,6 +1331,7 @@ dnssdStop(void)
}
+# ifdef HAVE_DNSSD
/*
* 'dnssdUpdate()' - Handle DNS-SD queries.
*/
@@ -2949,7 +1342,7 @@ dnssdUpdate(void)
DNSServiceErrorType sdErr; /* Service discovery error */
- if ((sdErr = DNSServiceProcessResult(DNSSDRef)) != kDNSServiceErr_NoError)
+ if ((sdErr = DNSServiceProcessResult(DNSSDMaster)) != kDNSServiceErr_NoError)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
"DNS Service Discovery registration error %d!",
@@ -2957,7 +1350,7 @@ dnssdUpdate(void)
dnssdStop();
}
}
-#endif /* HAVE_DNSSD */
+# endif /* HAVE_DNSSD */
/*
@@ -3016,7 +1409,7 @@ get_auth_info_required(
int auth_type; /* Authentication type */
if ((auth_type = auth->type) == CUPSD_AUTH_DEFAULT)
- auth_type = DefaultAuthType;
+ auth_type = cupsdDefaultAuthType();
switch (auth_type)
{
@@ -3037,6 +1430,7 @@ get_auth_info_required(
return ("none");
}
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
#ifdef __APPLE__
@@ -3092,2295 +1486,6 @@ get_hostconfig(const char *name) /* I - Name of service */
/*
- * 'is_local_queue()' - Determine whether the URI points at a local queue.
- */
-
-static int /* O - 1 = local, 0 = remote, -1 = bad URI */
-is_local_queue(const char *uri, /* I - Printer URI */
- char *host, /* O - Host string */
- int hostlen, /* I - Length of host buffer */
- char *resource, /* O - Resource string */
- int resourcelen) /* I - Length of resource buffer */
-{
- char scheme[32], /* Scheme portion of URI */
- username[HTTP_MAX_URI]; /* Username portion of URI */
- int port; /* Port portion of URI */
- cupsd_netif_t *iface; /* Network interface */
-
-
- /*
- * Pull the URI apart to see if this is a local or remote printer...
- */
-
- if (httpSeparateURI(HTTP_URI_CODING_ALL, uri, scheme, sizeof(scheme),
- username, sizeof(username), host, hostlen, &port,
- resource, resourcelen) < HTTP_URI_OK)
- return (-1);
-
- DEBUG_printf(("host=\"%s\", ServerName=\"%s\"\n", host, ServerName));
-
- /*
- * Check for local server addresses...
- */
-
- if (!_cups_strcasecmp(host, ServerName) && port == LocalPort)
- return (1);
-
- cupsdNetIFUpdate();
-
- for (iface = (cupsd_netif_t *)cupsArrayFirst(NetIFList);
- iface;
- iface = (cupsd_netif_t *)cupsArrayNext(NetIFList))
- if (!_cups_strcasecmp(host, iface->hostname) && port == iface->port)
- return (1);
-
- /*
- * If we get here, the printer is remote...
- */
-
- return (0);
-}
-
-
-/*
- * 'process_browse_data()' - Process new browse data.
- */
-
-static void
-process_browse_data(
- const char *uri, /* I - URI of printer/class */
- const char *host, /* I - Hostname */
- const char *resource, /* I - Resource path */
- cups_ptype_t type, /* I - Printer type */
- ipp_pstate_t state, /* I - Printer state */
- const char *location, /* I - Printer location */
- const char *info, /* I - Printer information */
- const char *make_model, /* I - Printer make and model */
- int num_attrs, /* I - Number of attributes */
- cups_option_t *attrs) /* I - Attributes */
-{
- int i; /* Looping var */
- int update; /* Update printer attributes? */
- char finaluri[HTTP_MAX_URI], /* Final URI for printer */
- name[IPP_MAX_NAME], /* Name of printer */
- newname[IPP_MAX_NAME], /* New name of printer */
- *hptr, /* Pointer into hostname */
- *sptr; /* Pointer into ServerName */
- const char *shortname; /* Short queue name (queue) */
- char local_make_model[IPP_MAX_NAME];
- /* Local make and model */
- cupsd_printer_t *p; /* Printer information */
- const char *ipp_options, /* ipp-options value */
- *lease_duration, /* lease-duration value */
- *uuid; /* uuid value */
- int is_class; /* Is this queue a class? */
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "process_browse_data(uri=\"%s\", host=\"%s\", "
- "resource=\"%s\", type=%x, state=%d, location=\"%s\", "
- "info=\"%s\", make_model=\"%s\", num_attrs=%d, attrs=%p)",
- uri, host, resource, type, state,
- location ? location : "(nil)", info ? info : "(nil)",
- make_model ? make_model : "(nil)", num_attrs, attrs);
-
- /*
- * Determine if the URI contains any illegal characters in it...
- */
-
- if (strncmp(uri, "ipp://", 6) || !host[0] ||
- (strncmp(resource, "/printers/", 10) &&
- strncmp(resource, "/classes/", 9)))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad printer URI in browse data: %s", uri);
- return;
- }
-
- if (strchr(resource, '?') ||
- (!strncmp(resource, "/printers/", 10) && strchr(resource + 10, '/')) ||
- (!strncmp(resource, "/classes/", 9) && strchr(resource + 9, '/')))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad resource in browse data: %s",
- resource);
- return;
- }
-
- /*
- * OK, this isn't a local printer; add any remote options...
- */
-
- ipp_options = cupsGetOption("ipp-options", num_attrs, attrs);
-
- if (BrowseRemoteOptions)
- {
- if (BrowseRemoteOptions[0] == '?')
- {
- /*
- * Override server-supplied options...
- */
-
- snprintf(finaluri, sizeof(finaluri), "%s%s", uri, BrowseRemoteOptions);
- }
- else if (ipp_options)
- {
- /*
- * Combine the server and local options...
- */
-
- snprintf(finaluri, sizeof(finaluri), "%s?%s+%s", uri, ipp_options,
- BrowseRemoteOptions);
- }
- else
- {
- /*
- * Just use the local options...
- */
-
- snprintf(finaluri, sizeof(finaluri), "%s?%s", uri, BrowseRemoteOptions);
- }
-
- uri = finaluri;
- }
- else if (ipp_options)
- {
- /*
- * Just use the server-supplied options...
- */
-
- snprintf(finaluri, sizeof(finaluri), "%s?%s", uri, ipp_options);
- uri = finaluri;
- }
-
- /*
- * See if we already have it listed in the Printers list, and add it if not...
- */
-
- type |= CUPS_PRINTER_REMOTE | CUPS_PRINTER_DISCOVERED;
- type &= ~CUPS_PRINTER_IMPLICIT;
- update = 0;
- hptr = strchr(host, '.');
- sptr = strchr(ServerName, '.');
- is_class = type & CUPS_PRINTER_CLASS;
- uuid = cupsGetOption("uuid", num_attrs, attrs);
-
- if (!ServerNameIsIP && sptr != NULL && hptr != NULL)
- {
- /*
- * Strip the common domain name components...
- */
-
- while (hptr != NULL)
- {
- if (!_cups_strcasecmp(hptr, sptr))
- {
- *hptr = '\0';
- break;
- }
- else
- hptr = strchr(hptr + 1, '.');
- }
- }
-
- if (is_class)
- {
- /*
- * Remote destination is a class...
- */
-
- if (!strncmp(resource, "/classes/", 9))
- snprintf(name, sizeof(name), "%s@%s", resource + 9, host);
- else
- return;
-
- shortname = resource + 9;
- }
- else
- {
- /*
- * Remote destination is a printer...
- */
-
- if (!strncmp(resource, "/printers/", 10))
- snprintf(name, sizeof(name), "%s@%s", resource + 10, host);
- else
- return;
-
- shortname = resource + 10;
- }
-
- if (hptr && !*hptr)
- *hptr = '.'; /* Resource FQDN */
-
- if ((p = cupsdFindDest(name)) == NULL && BrowseShortNames)
- {
- /*
- * Long name doesn't exist, try short name...
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG, "process_browse_data: %s not found...",
- name);
-
- if ((p = cupsdFindDest(shortname)) == NULL)
- {
- /*
- * Short name doesn't exist, use it for this shared queue.
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "process_browse_data: %s not found...",
- shortname);
- strlcpy(name, shortname, sizeof(name));
- }
- else
- {
- /*
- * Short name exists...
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "process_browse_data: %s found, type=%x, hostname=%s...",
- shortname, p->type, p->hostname ? p->hostname : "(nil)");
-
- if (p->type & CUPS_PRINTER_IMPLICIT)
- p = NULL; /* Don't replace implicit classes */
- else if (p->hostname && _cups_strcasecmp(p->hostname, host))
- {
- /*
- * Short name exists but is for a different host. If this is a remote
- * queue, rename it and use the long name...
- */
-
- if (p->type & CUPS_PRINTER_REMOTE)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "Renamed remote %s \"%s\" to \"%s@%s\"...",
- is_class ? "class" : "printer", p->name, p->name,
- p->hostname);
- cupsdAddEvent(CUPSD_EVENT_PRINTER_DELETED, p, NULL,
- "%s \'%s\' deleted by directory services.",
- is_class ? "Class" : "Printer", p->name);
-
- snprintf(newname, sizeof(newname), "%s@%s", p->name, p->hostname);
- cupsdRenamePrinter(p, newname);
-
- cupsdAddEvent(CUPSD_EVENT_PRINTER_ADDED, p, NULL,
- "%s \'%s\' added by directory services.",
- is_class ? "Class" : "Printer", p->name);
- }
-
- /*
- * Force creation with long name...
- */
-
- p = NULL;
- }
- }
- }
- else if (p)
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "process_browse_data: %s found, type=%x, hostname=%s...",
- name, p->type, p->hostname ? p->hostname : "(nil)");
-
- if (!p)
- {
- /*
- * Queue doesn't exist; add it...
- */
-
- if (is_class)
- p = cupsdAddClass(name);
- else
- p = cupsdAddPrinter(name);
-
- if (!p)
- return;
-
- cupsdClearString(&(p->hostname));
-
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Added remote %s \"%s\"...",
- is_class ? "class" : "printer", name);
-
- cupsdAddEvent(CUPSD_EVENT_PRINTER_ADDED, p, NULL,
- "%s \'%s\' added by directory services.",
- is_class ? "Class" : "Printer", name);
-
- /*
- * Force the URI to point to the real server...
- */
-
- p->type = type & ~CUPS_PRINTER_REJECTING;
- p->accepting = 1;
-
- cupsdMarkDirty(CUPSD_DIRTY_PRINTCAP);
- }
-
- if (!p->hostname)
- {
- /*
- * Hostname not set, so this must be a cached remote printer
- * that was created for a pending print job...
- */
-
- cupsdSetString(&p->hostname, host);
- cupsdSetString(&p->uri, uri);
- cupsdSetString(&p->device_uri, uri);
- update = 1;
-
- cupsdMarkDirty(CUPSD_DIRTY_REMOTE);
- }
-
- /*
- * Update the state...
- */
-
- p->state = state;
- p->browse_time = time(NULL);
-
- if ((lease_duration = cupsGetOption("lease-duration", num_attrs,
- attrs)) != NULL)
- {
- /*
- * Grab the lease-duration for the browse data; anything less then 1
- * second or more than 1 week gets the default BrowseTimeout...
- */
-
- i = atoi(lease_duration);
- if (i < 1 || i > 604800)
- i = BrowseTimeout;
-
- p->browse_expire = p->browse_time + i;
- }
- else
- p->browse_expire = p->browse_time + BrowseTimeout;
-
- if (type & CUPS_PRINTER_REJECTING)
- {
- type &= ~CUPS_PRINTER_REJECTING;
-
- if (p->accepting)
- {
- update = 1;
- p->accepting = 0;
- }
- }
- else if (!p->accepting)
- {
- update = 1;
- p->accepting = 1;
- }
-
- if (p->type != type)
- {
- p->type = type;
- update = 1;
- }
-
- if (uuid && strcmp(p->uuid, uuid))
- {
- cupsdSetString(&p->uuid, uuid);
- update = 1;
- }
-
- if (location && (!p->location || strcmp(p->location, location)))
- {
- cupsdSetString(&p->location, location);
- update = 1;
- }
-
- if (info && (!p->info || strcmp(p->info, info)))
- {
- cupsdSetString(&p->info, info);
- update = 1;
-
- cupsdMarkDirty(CUPSD_DIRTY_PRINTCAP | CUPSD_DIRTY_REMOTE);
- }
-
- if (!make_model || !make_model[0])
- {
- if (is_class)
- snprintf(local_make_model, sizeof(local_make_model),
- "Remote Class on %s", host);
- else
- snprintf(local_make_model, sizeof(local_make_model),
- "Remote Printer on %s", host);
- }
- else
- snprintf(local_make_model, sizeof(local_make_model),
- "%s on %s", make_model, host);
-
- if (!p->make_model || strcmp(p->make_model, local_make_model))
- {
- cupsdSetString(&p->make_model, local_make_model);
- update = 1;
- }
-
- if (p->num_options)
- {
- if (!update && !(type & CUPS_PRINTER_DELETE))
- {
- /*
- * See if we need to update the attributes...
- */
-
- if (p->num_options != num_attrs)
- update = 1;
- else
- {
- for (i = 0; i < num_attrs; i ++)
- if (strcmp(attrs[i].name, p->options[i].name) ||
- (!attrs[i].value != !p->options[i].value) ||
- (attrs[i].value && strcmp(attrs[i].value, p->options[i].value)))
- {
- update = 1;
- break;
- }
- }
- }
-
- /*
- * Free the old options...
- */
-
- cupsFreeOptions(p->num_options, p->options);
- }
-
- p->num_options = num_attrs;
- p->options = attrs;
-
- if (type & CUPS_PRINTER_DELETE)
- {
- cupsdAddEvent(CUPSD_EVENT_PRINTER_DELETED, p, NULL,
- "%s \'%s\' deleted by directory services.",
- is_class ? "Class" : "Printer", p->name);
-
- cupsdExpireSubscriptions(p, NULL);
-
- cupsdDeletePrinter(p, 1);
- cupsdUpdateImplicitClasses();
- cupsdMarkDirty(CUPSD_DIRTY_PRINTCAP | CUPSD_DIRTY_REMOTE);
- }
- else if (update)
- {
- cupsdSetPrinterAttrs(p);
- cupsdUpdateImplicitClasses();
- }
-
- /*
- * See if we have a default printer... If not, make the first network
- * default printer the default.
- */
-
- if (DefaultPrinter == NULL && Printers != NULL && UseNetworkDefault)
- {
- /*
- * Find the first network default printer and use it...
- */
-
- for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
- p;
- p = (cupsd_printer_t *)cupsArrayNext(Printers))
- if (p->type & CUPS_PRINTER_DEFAULT)
- {
- DefaultPrinter = p;
- cupsdMarkDirty(CUPSD_DIRTY_PRINTCAP | CUPSD_DIRTY_REMOTE);
- break;
- }
- }
-
- /*
- * Do auto-classing if needed...
- */
-
- process_implicit_classes();
-}
-
-
-/*
- * 'process_implicit_classes()' - Create/update implicit classes as needed.
- */
-
-static void
-process_implicit_classes(void)
-{
- int i; /* Looping var */
- int update; /* Update printer attributes? */
- char name[IPP_MAX_NAME], /* Name of printer */
- *hptr; /* Pointer into hostname */
- cupsd_printer_t *p, /* Printer information */
- *pclass, /* Printer class */
- *first; /* First printer in class */
- int offset, /* Offset of name */
- len; /* Length of name */
-
-
- if (!ImplicitClasses || !Printers)
- return;
-
- /*
- * Loop through all available printers and create classes as needed...
- */
-
- for (p = (cupsd_printer_t *)cupsArrayFirst(Printers), len = 0, offset = 0,
- update = 0, pclass = NULL, first = NULL;
- p != NULL;
- p = (cupsd_printer_t *)cupsArrayNext(Printers))
- {
- /*
- * Skip implicit classes...
- */
-
- if (p->type & CUPS_PRINTER_IMPLICIT)
- {
- len = 0;
- continue;
- }
-
- /*
- * If len == 0, get the length of this printer name up to the "@"
- * sign (if any).
- */
-
- cupsArraySave(Printers);
-
- if (len > 0 &&
- !_cups_strncasecmp(p->name, name + offset, len) &&
- (p->name[len] == '\0' || p->name[len] == '@'))
- {
- /*
- * We have more than one printer with the same name; see if
- * we have a class, and if this printer is a member...
- */
-
- if (pclass && _cups_strcasecmp(pclass->name, name))
- {
- if (update)
- cupsdSetPrinterAttrs(pclass);
-
- update = 0;
- pclass = NULL;
- }
-
- if (!pclass && (pclass = cupsdFindDest(name)) == NULL)
- {
- /*
- * Need to add the class...
- */
-
- pclass = cupsdAddPrinter(name);
- cupsArrayAdd(ImplicitPrinters, pclass);
-
- pclass->type |= CUPS_PRINTER_IMPLICIT;
- pclass->accepting = 1;
- pclass->state = IPP_PRINTER_IDLE;
-
- cupsdSetString(&pclass->location, p->location);
- cupsdSetString(&pclass->info, p->info);
-
- cupsdSetString(&pclass->job_sheets[0], p->job_sheets[0]);
- cupsdSetString(&pclass->job_sheets[1], p->job_sheets[1]);
-
- update = 1;
-
- cupsdMarkDirty(CUPSD_DIRTY_PRINTCAP | CUPSD_DIRTY_REMOTE);
-
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Added implicit class \"%s\"...",
- name);
- cupsdAddEvent(CUPSD_EVENT_PRINTER_ADDED, p, NULL,
- "Implicit class \'%s\' added by directory services.",
- name);
- }
-
- if (first != NULL)
- {
- for (i = 0; i < pclass->num_printers; i ++)
- if (pclass->printers[i] == first)
- break;
-
- if (i >= pclass->num_printers)
- {
- first->in_implicit_class = 1;
- cupsdAddPrinterToClass(pclass, first);
- }
-
- first = NULL;
- }
-
- for (i = 0; i < pclass->num_printers; i ++)
- if (pclass->printers[i] == p)
- break;
-
- if (i >= pclass->num_printers)
- {
- p->in_implicit_class = 1;
- cupsdAddPrinterToClass(pclass, p);
- update = 1;
- }
- }
- else
- {
- /*
- * First time around; just get name length and mark it as first
- * in the list...
- */
-
- if ((hptr = strchr(p->name, '@')) != NULL)
- len = hptr - p->name;
- else
- len = strlen(p->name);
-
- if (len >= sizeof(name))
- {
- /*
- * If the printer name length somehow is greater than we normally allow,
- * skip this printer...
- */
-
- len = 0;
- cupsArrayRestore(Printers);
- continue;
- }
-
- strncpy(name, p->name, len);
- name[len] = '\0';
- offset = 0;
-
- if ((first = (hptr ? cupsdFindDest(name) : p)) != NULL &&
- !(first->type & CUPS_PRINTER_IMPLICIT))
- {
- /*
- * Can't use same name as a local printer; add "Any" to the
- * front of the name, unless we have explicitly disabled
- * the "ImplicitAnyClasses"...
- */
-
- if (ImplicitAnyClasses && len < (sizeof(name) - 4))
- {
- /*
- * Add "Any" to the class name...
- */
-
- strcpy(name, "Any");
- strncpy(name + 3, p->name, len);
- name[len + 3] = '\0';
- offset = 3;
- }
- else
- {
- /*
- * Don't create an implicit class if we have a local printer
- * with the same name...
- */
-
- len = 0;
- cupsArrayRestore(Printers);
- continue;
- }
- }
-
- first = p;
- }
-
- cupsArrayRestore(Printers);
- }
-
- /*
- * Update the last printer class as needed...
- */
-
- if (pclass && update)
- cupsdSetPrinterAttrs(pclass);
-}
-
-
-/*
- * 'send_cups_browse()' - Send new browsing information using the CUPS
- * protocol.
- */
-
-static void
-send_cups_browse(cupsd_printer_t *p) /* I - Printer to send */
-{
- int i; /* Looping var */
- cups_ptype_t type; /* Printer type */
- cupsd_dirsvc_addr_t *b; /* Browse address */
- int bytes; /* Length of packet */
- char packet[1453], /* Browse data packet */
- uri[1024], /* Printer URI */
- location[1024], /* printer-location */
- info[1024], /* printer-info */
- make_model[1024],
- /* printer-make-and-model */
- air[1024]; /* auth-info-required */
- cupsd_netif_t *iface; /* Network interface */
-
-
- /*
- * Figure out the printer type value...
- */
-
- type = p->type | CUPS_PRINTER_REMOTE;
-
- if (!p->accepting)
- type |= CUPS_PRINTER_REJECTING;
-
- if (p == DefaultPrinter)
- type |= CUPS_PRINTER_DEFAULT;
-
- /*
- * Remove quotes from printer-info, printer-location, and
- * printer-make-and-model attributes...
- */
-
- dequote(location, p->location, sizeof(location));
- dequote(info, p->info, sizeof(info));
-
- if (p->make_model)
- dequote(make_model, p->make_model, sizeof(make_model));
- else if (p->type & CUPS_PRINTER_CLASS)
- {
- if (p->num_printers > 0 && p->printers[0]->make_model)
- strlcpy(make_model, p->printers[0]->make_model, sizeof(make_model));
- else
- strlcpy(make_model, "Local Printer Class", sizeof(make_model));
- }
- else if (p->raw)
- strlcpy(make_model, "Local Raw Printer", sizeof(make_model));
- else
- strlcpy(make_model, "Local System V Printer", sizeof(make_model));
-
- if (get_auth_info_required(p, packet, sizeof(packet)))
- snprintf(air, sizeof(air), " auth-info-required=%s", packet);
- else
- air[0] = '\0';
-
- /*
- * Send a packet to each browse address...
- */
-
- for (i = NumBrowsers, b = Browsers; i > 0; i --, b ++)
- if (b->iface[0])
- {
- /*
- * Send the browse packet to one or more interfaces...
- */
-
- if (!strcmp(b->iface, "*"))
- {
- /*
- * Send to all local interfaces...
- */
-
- cupsdNetIFUpdate();
-
- for (iface = (cupsd_netif_t *)cupsArrayFirst(NetIFList);
- iface;
- iface = (cupsd_netif_t *)cupsArrayNext(NetIFList))
- {
- /*
- * Only send to local, IPv4 interfaces...
- */
-
- if (!iface->is_local || !iface->port ||
- iface->address.addr.sa_family != AF_INET)
- continue;
-
- httpAssembleURIf(HTTP_URI_CODING_ALL, uri, sizeof(uri), "ipp", NULL,
- iface->hostname, iface->port,
- (p->type & CUPS_PRINTER_CLASS) ? "/classes/%s" :
- "/printers/%s",
- p->name);
- snprintf(packet, sizeof(packet),
- "%x %x %s \"%s\" \"%s\" \"%s\" %s%s uuid=%s\n",
- type, p->state, uri, location, info, make_model,
- p->browse_attrs ? p->browse_attrs : "", air, p->uuid);
-
- bytes = strlen(packet);
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdSendBrowseList: (%d bytes to \"%s\") %s", bytes,
- iface->name, packet);
-
- iface->broadcast.ipv4.sin_port = htons(BrowsePort);
-
- sendto(BrowseSocket, packet, bytes, 0,
- (struct sockaddr *)&(iface->broadcast),
- httpAddrLength(&(iface->broadcast)));
- }
- }
- else if ((iface = cupsdNetIFFind(b->iface)) != NULL)
- {
- /*
- * Send to the named interface using the IPv4 address...
- */
-
- while (iface)
- if (strcmp(b->iface, iface->name))
- {
- iface = NULL;
- break;
- }
- else if (iface->address.addr.sa_family == AF_INET && iface->port)
- break;
- else
- iface = (cupsd_netif_t *)cupsArrayNext(NetIFList);
-
- if (iface)
- {
- httpAssembleURIf(HTTP_URI_CODING_ALL, uri, sizeof(uri), "ipp", NULL,
- iface->hostname, iface->port,
- (p->type & CUPS_PRINTER_CLASS) ? "/classes/%s" :
- "/printers/%s",
- p->name);
- snprintf(packet, sizeof(packet),
- "%x %x %s \"%s\" \"%s\" \"%s\" %s%s uuid=%s\n",
- type, p->state, uri, location, info, make_model,
- p->browse_attrs ? p->browse_attrs : "", air, p->uuid);
-
- bytes = strlen(packet);
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdSendBrowseList: (%d bytes to \"%s\") %s", bytes,
- iface->name, packet);
-
- iface->broadcast.ipv4.sin_port = htons(BrowsePort);
-
- sendto(BrowseSocket, packet, bytes, 0,
- (struct sockaddr *)&(iface->broadcast),
- httpAddrLength(&(iface->broadcast)));
- }
- }
- }
- else
- {
- /*
- * Send the browse packet to the indicated address using
- * the default server name...
- */
-
- snprintf(packet, sizeof(packet),
- "%x %x %s \"%s\" \"%s\" \"%s\" %s%s uuid=%s\n",
- type, p->state, p->uri, location, info, make_model,
- p->browse_attrs ? p->browse_attrs : "", air, p->uuid);
-
- bytes = strlen(packet);
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdSendBrowseList: (%d bytes) %s", bytes, packet);
-
- if (sendto(BrowseSocket, packet, bytes, 0,
- (struct sockaddr *)&(b->to),
- httpAddrLength(&(b->to))) <= 0)
- {
- /*
- * Unable to send browse packet, so remove this address from the
- * list...
- */
-
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "cupsdSendBrowseList: sendto failed for browser "
- "%d - %s.",
- (int)(b - Browsers + 1), strerror(errno));
-
- if (i > 1)
- memmove(b, b + 1, (i - 1) * sizeof(cupsd_dirsvc_addr_t));
-
- b --;
- NumBrowsers --;
- }
- }
-}
-
-
-#ifdef HAVE_LDAP
-/*
- * 'ldap_search_rec()' - LDAP Search with reconnect
- */
-
-static int /* O - Return code */
-ldap_search_rec(LDAP *ld, /* I - LDAP handler */
- char *base, /* I - Base dn */
- int scope, /* I - LDAP search scope */
- char *filter, /* I - Filter string */
- char *attrs[], /* I - Requested attributes */
- int attrsonly, /* I - Return only attributes? */
- LDAPMessage **res) /* I - LDAP handler */
-{
- int rc; /* Return code */
- LDAP *ldr; /* LDAP handler after reconnect */
-
-
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- rc = ldap_search_ext_s(ld, base, scope, filter, attrs, attrsonly, NULL, NULL,
- NULL, LDAP_NO_LIMIT, res);
-# else
- rc = ldap_search_s(ld, base, scope, filter, attrs, attrsonly, res);
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
-
- /*
- * If we have a connection problem try again...
- */
-
- if (rc == LDAP_SERVER_DOWN || rc == LDAP_CONNECT_ERROR)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "LDAP search failed with status %d: %s",
- rc, ldap_err2string(rc));
- cupsdLogMessage(CUPSD_LOG_INFO,
- "We try the LDAP search once again after reconnecting to "
- "the server");
- ldap_freeres(*res);
- ldr = ldap_reconnect();
-
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- rc = ldap_search_ext_s(ldr, base, scope, filter, attrs, attrsonly, NULL,
- NULL, NULL, LDAP_NO_LIMIT, res);
-# else
- rc = ldap_search_s(ldr, base, scope, filter, attrs, attrsonly, res);
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
- }
-
- if (rc == LDAP_NO_SUCH_OBJECT)
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "ldap_search_rec: LDAP entry/object not found");
- else if (rc != LDAP_SUCCESS)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "ldap_search_rec: LDAP search failed with status %d: %s",
- rc, ldap_err2string(rc));
-
- if (rc != LDAP_SUCCESS)
- ldap_freeres(*res);
-
- return (rc);
-}
-
-
-/*
- * 'ldap_freeres()' - Free LDAPMessage
- */
-
-static void
-ldap_freeres(LDAPMessage *entry) /* I - LDAP handler */
-{
- int rc; /* Return value */
-
-
- rc = ldap_msgfree(entry);
- if (rc == -1)
- cupsdLogMessage(CUPSD_LOG_WARN, "Can't free LDAPMessage!");
- else if (rc == 0)
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "Freeing LDAPMessage was unnecessary");
-}
-
-
-/*
- * 'ldap_getval_char()' - Get first LDAP value and convert to string
- */
-
-static int /* O - Return code */
-ldap_getval_firststring(
- LDAP *ld, /* I - LDAP handler */
- LDAPMessage *entry, /* I - LDAP message or search result */
- char *attr, /* I - the wanted attribute */
- char *retval, /* O - String to return */
- unsigned long maxsize) /* I - Max string size */
-{
- char *dn; /* LDAP DN */
- int rc = 0; /* Return code */
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- struct berval **bval; /* LDAP value array */
- unsigned long size; /* String size */
-
-
- /*
- * Get value from LDAPMessage...
- */
-
- if ((bval = ldap_get_values_len(ld, entry, attr)) == NULL)
- {
- rc = -1;
- dn = ldap_get_dn(ld, entry);
- cupsdLogMessage(CUPSD_LOG_WARN,
- "Failed to get LDAP value %s for %s!",
- attr, dn);
- ldap_memfree(dn);
- }
- else
- {
- /*
- * Check size and copy value into our string...
- */
-
- size = maxsize;
- if (size < (bval[0]->bv_len + 1))
- {
- rc = -1;
- dn = ldap_get_dn(ld, entry);
- cupsdLogMessage(CUPSD_LOG_WARN,
- "Attribute %s is too big! (dn: %s)",
- attr, dn);
- ldap_memfree(dn);
- }
- else
- size = bval[0]->bv_len + 1;
-
- strlcpy(retval, bval[0]->bv_val, size);
- ldap_value_free_len(bval);
- }
-# else
- char **value; /* LDAP value */
-
- /*
- * Get value from LDAPMessage...
- */
-
- if ((value = (char **)ldap_get_values(ld, entry, attr)) == NULL)
- {
- rc = -1;
- dn = ldap_get_dn(ld, entry);
- cupsdLogMessage(CUPSD_LOG_WARN, "Failed to get LDAP value %s for %s!",
- attr, dn);
- ldap_memfree(dn);
- }
- else
- {
- strlcpy(retval, *value, maxsize);
- ldap_value_free(value);
- }
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
-
- return (rc);
-}
-
-
-/*
- * 'send_ldap_ou()' - Send LDAP ou registrations.
- */
-
-static void
-send_ldap_ou(char *ou, /* I - Servername/ou to register */
- char *basedn, /* I - Our base dn */
- char *descstring) /* I - Description for ou */
-{
- int i; /* Looping var... */
- LDAPMod mods[3]; /* The 3 attributes we will be adding */
- LDAPMod *pmods[4]; /* Pointers to the 3 attributes + NULL */
- LDAPMessage *res, /* Search result token */
- *e; /* Current entry from search */
- int rc; /* LDAP status */
- int rcmod; /* LDAP status for modifications */
- char dn[1024], /* DN of the organizational unit we are adding */
- *desc[2], /* Change records */
- *ou_value[2];
- char old_desc[1024]; /* Old description */
- static const char * const objectClass_values[] =
- { /* The 2 objectClass's we use in */
- "top", /* our LDAP entries */
- "organizationalUnit",
- NULL
- };
- static const char * const ou_attrs[] =/* CUPS LDAP attributes */
- {
- "description",
- NULL
- };
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "send_ldap_ou: %s", ou);
-
- /*
- * Reconnect if LDAP Handle is invalid...
- */
-
- if (!BrowseLDAPHandle)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "send_ldap_ou: LDAP Handle is invalid. Try reconnecting...");
- ldap_reconnect();
- return;
- }
-
- /*
- * Prepare ldap search...
- */
-
- snprintf(dn, sizeof(dn), "ou=%s, %s", ou, basedn);
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "send_ldap_ou: dn=\"%s\"", dn);
-
- ou_value[0] = ou;
- ou_value[1] = NULL;
- desc[0] = descstring;
- desc[1] = NULL;
-
- mods[0].mod_type = "ou";
- mods[0].mod_values = ou_value;
- mods[1].mod_type = "description";
- mods[1].mod_values = desc;
- mods[2].mod_type = "objectClass";
- mods[2].mod_values = (char **)objectClass_values;
-
- rc = ldap_search_rec(BrowseLDAPHandle, dn, LDAP_SCOPE_BASE, NULL,
- (char **)ou_attrs, 0, &res);
-
- /*
- * If ldap search was not successfull then exit function...
- */
-
- if (rc != LDAP_SUCCESS && rc != LDAP_NO_SUCH_OBJECT)
- return;
-
- /*
- * Check if we need to insert or update the LDAP entry...
- */
-
- if (ldap_count_entries(BrowseLDAPHandle, res) > 0 &&
- rc != LDAP_NO_SUCH_OBJECT)
- {
- /*
- * Printserver has already been registered, check if
- * modification is required...
- */
-
- e = ldap_first_entry(BrowseLDAPHandle, res);
-
- /*
- * Get the required values from this entry...
- */
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e, "description", old_desc,
- sizeof(old_desc)) == -1)
- old_desc[0] = '\0';
-
- /*
- * Check if modification is required...
- */
-
- if ( strcmp(desc[0], old_desc) == 0 )
- {
- /*
- * LDAP entry for the printer exists.
- * Printer has already been registered,
- * no modifications required...
- */
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "send_ldap_ou: No updates required for %s", ou);
- }
- else
- {
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "send_ldap_ou: Replace entry for %s", ou);
-
- for (i = 0; i < 3; i ++)
- {
- pmods[i] = mods + i;
- pmods[i]->mod_op = LDAP_MOD_REPLACE;
- }
- pmods[i] = NULL;
-
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- if ((rcmod = ldap_modify_ext_s(BrowseLDAPHandle, dn, pmods, NULL,
- NULL)) != LDAP_SUCCESS)
-# else
- if ((rcmod = ldap_modify_s(BrowseLDAPHandle, dn, pmods)) != LDAP_SUCCESS)
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "LDAP modify for %s failed with status %d: %s",
- ou, rcmod, ldap_err2string(rcmod));
- if (rcmod == LDAP_SERVER_DOWN)
- ldap_reconnect();
- }
- }
- }
- else
- {
- /*
- * Printserver has never been registered,
- * add registration...
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "send_ldap_ou: Add entry for %s", ou);
-
- for (i = 0; i < 3; i ++)
- {
- pmods[i] = mods + i;
- pmods[i]->mod_op = LDAP_MOD_ADD;
- }
- pmods[i] = NULL;
-
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- if ((rcmod = ldap_add_ext_s(BrowseLDAPHandle, dn, pmods, NULL,
- NULL)) != LDAP_SUCCESS)
-# else
- if ((rcmod = ldap_add_s(BrowseLDAPHandle, dn, pmods)) != LDAP_SUCCESS)
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "LDAP add for %s failed with status %d: %s",
- ou, rcmod, ldap_err2string(rcmod));
- if (rcmod == LDAP_SERVER_DOWN)
- ldap_reconnect();
- }
- }
-
- if (rc == LDAP_SUCCESS)
- ldap_freeres(res);
-}
-
-
-/*
- * 'send_ldap_browse()' - Send LDAP printer registrations.
- */
-
-static void
-send_ldap_browse(cupsd_printer_t *p) /* I - Printer to register */
-{
- int i; /* Looping var... */
- LDAPMod mods[7]; /* The 7 attributes we will be adding */
- LDAPMod *pmods[8]; /* Pointers to the 7 attributes + NULL */
- LDAPMessage *res, /* Search result token */
- *e; /* Current entry from search */
- char *cn_value[2], /* Change records */
- *uri[2],
- *info[2],
- *location[2],
- *make_model[2],
- *type[2],
- typestring[255], /* String to hold printer-type */
- dn[1024]; /* DN of the printer we are adding */
- int rc; /* LDAP status */
- int rcmod; /* LDAP status for modifications */
- char old_uri[HTTP_MAX_URI], /* Printer URI */
- old_location[1024], /* Printer location */
- old_info[1024], /* Printer information */
- old_make_model[1024], /* Printer make and model */
- old_type_string[30]; /* Temporary type number */
- int old_type; /* Printer type */
- static const char * const objectClass_values[] =
- { /* The 3 objectClass's we use in */
- "top", /* our LDAP entries */
- "device",
- "cupsPrinter",
- NULL
- };
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "send_ldap_browse: %s", p->name);
-
- /*
- * Exit function if LDAP updates has been disabled...
- */
-
- if (!BrowseLDAPUpdate)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "send_ldap_browse: Updates temporary disabled; "
- "skipping...");
- return;
- }
-
- /*
- * Reconnect if LDAP Handle is invalid...
- */
-
- if (!BrowseLDAPHandle)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "send_ldap_browse: LDAP Handle is invalid. Try "
- "reconnecting...");
- ldap_reconnect();
- return;
- }
-
- /*
- * Everything in ldap is ** so we fudge around it...
- */
-
- sprintf(typestring, "%u", p->type);
-
- cn_value[0] = p->name;
- cn_value[1] = NULL;
- info[0] = p->info ? p->info : "Unknown";
- info[1] = NULL;
- location[0] = p->location ? p->location : "Unknown";
- location[1] = NULL;
- make_model[0] = p->make_model ? p->make_model : "Unknown";
- make_model[1] = NULL;
- type[0] = typestring;
- type[1] = NULL;
- uri[0] = p->uri;
- uri[1] = NULL;
-
- /*
- * Get ldap entry for printer ...
- */
-
- snprintf(dn, sizeof(dn), "cn=%s, ou=%s, %s", p->name, ServerName,
- BrowseLDAPDN);
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "send_ldap_browse: dn=\"%s\"", dn);
-
- rc = ldap_search_rec(BrowseLDAPHandle, dn, LDAP_SCOPE_BASE, NULL,
- (char **)ldap_attrs, 0, &res);
-
- /*
- * If ldap search was not successfull then exit function
- * and temporary disable LDAP updates...
- */
-
- if (rc != LDAP_SUCCESS && rc != LDAP_NO_SUCH_OBJECT)
- {
- if (BrowseLDAPUpdate &&
- (rc == LDAP_SERVER_DOWN || rc == LDAP_CONNECT_ERROR))
- {
- BrowseLDAPUpdate = FALSE;
- cupsdLogMessage(CUPSD_LOG_INFO,
- "LDAP update temporary disabled");
- }
-
- return;
- }
-
- /*
- * Fill modification array...
- */
-
- mods[0].mod_type = "cn";
- mods[0].mod_values = cn_value;
- mods[1].mod_type = "printerDescription";
- mods[1].mod_values = info;
- mods[2].mod_type = "printerURI";
- mods[2].mod_values = uri;
- mods[3].mod_type = "printerLocation";
- mods[3].mod_values = location;
- mods[4].mod_type = "printerMakeAndModel";
- mods[4].mod_values = make_model;
- mods[5].mod_type = "printerType";
- mods[5].mod_values = type;
- mods[6].mod_type = "objectClass";
- mods[6].mod_values = (char **)objectClass_values;
-
- /*
- * Check if we need to insert or update the LDAP entry...
- */
-
- if (ldap_count_entries(BrowseLDAPHandle, res) > 0 &&
- rc != LDAP_NO_SUCH_OBJECT)
- {
- /*
- * Printer has already been registered, check if
- * modification is required...
- */
-
- e = ldap_first_entry(BrowseLDAPHandle, res);
-
- /*
- * Get the required values from this entry...
- */
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e, "printerDescription",
- old_info, sizeof(old_info)) == -1)
- old_info[0] = '\0';
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e, "printerLocation",
- old_location, sizeof(old_location)) == -1)
- old_info[0] = '\0';
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e, "printerMakeAndModel",
- old_make_model, sizeof(old_make_model)) == -1)
- old_info[0] = '\0';
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e, "printerType",
- old_type_string, sizeof(old_type_string)) == -1)
- old_info[0] = '\0';
-
- old_type = atoi(old_type_string);
-
- if (ldap_getval_firststring(BrowseLDAPHandle, e, "printerURI", old_uri,
- sizeof(old_uri)) == -1)
- old_info[0] = '\0';
-
- /*
- * Check if modification is required...
- */
-
- if (!strcmp(info[0], old_info) && !strcmp(uri[0], old_uri) &&
- !strcmp(location[0], old_location) &&
- !strcmp(make_model[0], old_make_model) && p->type == old_type)
- {
- /*
- * LDAP entry for the printer exists. Printer has already been registered,
- * no modifications required...
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "send_ldap_browse: No updates required for %s", p->name);
- }
- else
- {
- /*
- * LDAP entry for the printer exists. Printer has already been registered,
- * modify the current registration...
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "send_ldap_browse: Replace entry for %s", p->name);
-
- for (i = 0; i < 7; i ++)
- {
- pmods[i] = mods + i;
- pmods[i]->mod_op = LDAP_MOD_REPLACE;
- }
- pmods[i] = NULL;
-
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- if ((rcmod = ldap_modify_ext_s(BrowseLDAPHandle, dn, pmods, NULL,
- NULL)) != LDAP_SUCCESS)
-# else
- if ((rcmod = ldap_modify_s(BrowseLDAPHandle, dn, pmods)) != LDAP_SUCCESS)
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "LDAP modify for %s failed with status %d: %s",
- p->name, rcmod, ldap_err2string(rcmod));
- if (rcmod == LDAP_SERVER_DOWN)
- ldap_reconnect();
- }
- }
- }
- else
- {
- /*
- * No LDAP entry exists for the printer. Printer has never been registered,
- * add the current registration...
- */
-
- send_ldap_ou(ServerName, BrowseLDAPDN, "CUPS Server");
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "send_ldap_browse: Add entry for %s", p->name);
-
- for (i = 0; i < 7; i ++)
- {
- pmods[i] = mods + i;
- pmods[i]->mod_op = LDAP_MOD_ADD;
- }
- pmods[i] = NULL;
-
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- if ((rcmod = ldap_add_ext_s(BrowseLDAPHandle, dn, pmods, NULL,
- NULL)) != LDAP_SUCCESS)
-# else
- if ((rcmod = ldap_add_s(BrowseLDAPHandle, dn, pmods)) != LDAP_SUCCESS)
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "LDAP add for %s failed with status %d: %s",
- p->name, rcmod, ldap_err2string(rcmod));
- if (rcmod == LDAP_SERVER_DOWN)
- ldap_reconnect();
- }
- }
-
- if (rc == LDAP_SUCCESS)
- ldap_freeres(res);
-}
-
-
-/*
- * 'ldap_dereg_printer()' - Delete printer from directory
- */
-
-static void
-ldap_dereg_printer(cupsd_printer_t *p) /* I - Printer to deregister */
-{
- char dn[1024]; /* DN of the printer */
- int rc; /* LDAP status */
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "ldap_dereg_printer: Remove entry for %s",
- p->name);
-
- /*
- * Reconnect if LDAP Handle is invalid...
- */
-
- if (!BrowseLDAPHandle)
- {
- ldap_reconnect();
- return;
- }
-
- /*
- * Get dn for printer and delete LDAP entry...
- */
-
- snprintf(dn, sizeof(dn), "cn=%s, ou=%s, %s", p->name, ServerName,
- BrowseLDAPDN);
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "ldap_dereg_printer: dn=\"%s\"", dn);
-
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- if ((rc = ldap_delete_ext_s(BrowseLDAPHandle, dn, NULL,
- NULL)) != LDAP_SUCCESS)
-# else
- if ((rc = ldap_delete_s(BrowseLDAPHandle, dn)) != LDAP_SUCCESS)
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
- {
- cupsdLogMessage(CUPSD_LOG_WARN,
- "LDAP delete for %s failed with status %d: %s",
- p->name, rc, ldap_err2string(rc));
-
- /*
- * If we had a connection problem (connection timed out, etc.)
- * we should reconnect and try again to delete the entry...
- */
-
- if (rc == LDAP_SERVER_DOWN || rc == LDAP_CONNECT_ERROR)
- {
- cupsdLogMessage(CUPSD_LOG_INFO,
- "Retry deleting LDAP entry for %s after a reconnect...", p->name);
- ldap_reconnect();
-
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- if ((rc = ldap_delete_ext_s(BrowseLDAPHandle, dn, NULL,
- NULL)) != LDAP_SUCCESS)
-# else
- if ((rc = ldap_delete_s(BrowseLDAPHandle, dn)) != LDAP_SUCCESS)
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
- cupsdLogMessage(CUPSD_LOG_WARN,
- "LDAP delete for %s failed with status %d: %s",
- p->name, rc, ldap_err2string(rc));
- }
- }
-}
-
-
-/*
- * 'ldap_dereg_ou()' - Remove the organizational unit.
- */
-
-static void
-ldap_dereg_ou(char *ou, /* I - Organizational unit (servername) */
- char *basedn) /* I - Dase dn */
-{
- char dn[1024]; /* DN of the printer */
- int rc; /* LDAP status */
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "ldap_dereg_ou: Remove entry for %s", ou);
-
- /*
- * Reconnect if LDAP Handle is invalid...
- */
-
- if (!BrowseLDAPHandle)
- {
- ldap_reconnect();
- return;
- }
-
- /*
- * Get dn for printer and delete LDAP entry...
- */
-
- snprintf(dn, sizeof(dn), "ou=%s, %s", ou, basedn);
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "ldap_dereg_ou: dn=\"%s\"", dn);
-
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- if ((rc = ldap_delete_ext_s(BrowseLDAPHandle, dn, NULL,
- NULL)) != LDAP_SUCCESS)
-# else
- if ((rc = ldap_delete_s(BrowseLDAPHandle, dn)) != LDAP_SUCCESS)
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
- {
- cupsdLogMessage(CUPSD_LOG_WARN,
- "LDAP delete for %s failed with status %d: %s",
- ou, rc, ldap_err2string(rc));
-
- /*
- * If we had a connection problem (connection timed out, etc.)
- * we should reconnect and try again to delete the entry...
- */
-
- if (rc == LDAP_SERVER_DOWN || rc == LDAP_CONNECT_ERROR)
- {
- cupsdLogMessage(CUPSD_LOG_INFO,
- "Retry deleting LDAP entry for %s after a reconnect...", ou);
- ldap_reconnect();
-# if defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000
- if ((rc = ldap_delete_ext_s(BrowseLDAPHandle, dn, NULL,
- NULL)) != LDAP_SUCCESS)
-# else
- if ((rc = ldap_delete_s(BrowseLDAPHandle, dn)) != LDAP_SUCCESS)
-# endif /* defined(HAVE_OPENLDAP) && LDAP_API_VERSION > 3000 */
- cupsdLogMessage(CUPSD_LOG_WARN,
- "LDAP delete for %s failed with status %d: %s",
- ou, rc, ldap_err2string(rc));
- }
- }
-}
-#endif /* HAVE_LDAP */
-
-
-#ifdef HAVE_LIBSLP
-/*
- * 'send_slp_browse()' - Register the specified printer with SLP.
- */
-
-static void
-send_slp_browse(cupsd_printer_t *p) /* I - Printer to register */
-{
- char srvurl[HTTP_MAX_URI], /* Printer service URI */
- attrs[8192], /* Printer attributes */
- finishings[1024], /* Finishings to support */
- make_model[IPP_MAX_NAME * 2],
- /* Make and model, quoted */
- location[IPP_MAX_NAME * 2],
- /* Location, quoted */
- info[IPP_MAX_NAME * 2], /* Info, quoted */
- *src, /* Pointer to original string */
- *dst; /* Pointer to destination string */
- ipp_attribute_t *authentication; /* uri-authentication-supported value */
- SLPError error; /* SLP error, if any */
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG, "send_slp_browse(%p = \"%s\")", p,
- p->name);
-
- /*
- * Make the SLP service URL that conforms to the IANA
- * 'printer:' template.
- */
-
- snprintf(srvurl, sizeof(srvurl), SLP_CUPS_SRVTYPE ":%s", p->uri);
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "Service URL = \"%s\"", srvurl);
-
- /*
- * Figure out the finishings string...
- */
-
- if (p->type & CUPS_PRINTER_STAPLE)
- strcpy(finishings, "staple");
- else
- finishings[0] = '\0';
-
- if (p->type & CUPS_PRINTER_BIND)
- {
- if (finishings[0])
- strlcat(finishings, ",bind", sizeof(finishings));
- else
- strcpy(finishings, "bind");
- }
-
- if (p->type & CUPS_PRINTER_PUNCH)
- {
- if (finishings[0])
- strlcat(finishings, ",punch", sizeof(finishings));
- else
- strcpy(finishings, "punch");
- }
-
- if (p->type & CUPS_PRINTER_COVER)
- {
- if (finishings[0])
- strlcat(finishings, ",cover", sizeof(finishings));
- else
- strcpy(finishings, "cover");
- }
-
- if (p->type & CUPS_PRINTER_SORT)
- {
- if (finishings[0])
- strlcat(finishings, ",sort", sizeof(finishings));
- else
- strcpy(finishings, "sort");
- }
-
- if (!finishings[0])
- strcpy(finishings, "none");
-
- /*
- * Quote any commas in the make and model, location, and info strings...
- */
-
- for (src = p->make_model, dst = make_model;
- src && *src && dst < (make_model + sizeof(make_model) - 2);)
- {
- if (*src == ',' || *src == '\\' || *src == ')')
- *dst++ = '\\';
-
- *dst++ = *src++;
- }
-
- *dst = '\0';
-
- if (!make_model[0])
- strcpy(make_model, "Unknown");
-
- for (src = p->location, dst = location;
- src && *src && dst < (location + sizeof(location) - 2);)
- {
- if (*src == ',' || *src == '\\' || *src == ')')
- *dst++ = '\\';
-
- *dst++ = *src++;
- }
-
- *dst = '\0';
-
- if (!location[0])
- strcpy(location, "Unknown");
-
- for (src = p->info, dst = info;
- src && *src && dst < (info + sizeof(info) - 2);)
- {
- if (*src == ',' || *src == '\\' || *src == ')')
- *dst++ = '\\';
-
- *dst++ = *src++;
- }
-
- *dst = '\0';
-
- if (!info[0])
- strcpy(info, "Unknown");
-
- /*
- * Get the authentication value...
- */
-
- authentication = ippFindAttribute(p->attrs, "uri-authentication-supported",
- IPP_TAG_KEYWORD);
-
- /*
- * Make the SLP attribute string list that conforms to
- * the IANA 'printer:' template.
- */
-
- snprintf(attrs, sizeof(attrs),
- "(printer-uri-supported=%s),"
- "(uri-authentication-supported=%s>),"
-#ifdef HAVE_SSL
- "(uri-security-supported=tls>),"
-#else
- "(uri-security-supported=none>),"
-#endif /* HAVE_SSL */
- "(printer-name=%s),"
- "(printer-location=%s),"
- "(printer-info=%s),"
- "(printer-more-info=%s),"
- "(printer-make-and-model=%s),"
- "(printer-type=%d),"
- "(charset-supported=utf-8),"
- "(natural-language-configured=%s),"
- "(natural-language-supported=de,en,es,fr,it),"
- "(color-supported=%s),"
- "(finishings-supported=%s),"
- "(sides-supported=one-sided%s),"
- "(multiple-document-jobs-supported=true)"
- "(ipp-versions-supported=1.0,1.1)",
- p->uri, authentication->values[0].string.text, p->name, location,
- info, p->uri, make_model, p->type, DefaultLanguage,
- p->type & CUPS_PRINTER_COLOR ? "true" : "false",
- finishings,
- p->type & CUPS_PRINTER_DUPLEX ?
- ",two-sided-long-edge,two-sided-short-edge" : "");
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "Attributes = \"%s\"", attrs);
-
- /*
- * Register the printer with the SLP server...
- */
-
- error = SLPReg(BrowseSLPHandle, srvurl, BrowseTimeout,
- SLP_CUPS_SRVTYPE, attrs, SLP_TRUE, slp_reg_callback, 0);
-
- if (error != SLP_OK)
- cupsdLogMessage(CUPSD_LOG_ERROR, "SLPReg of \"%s\" failed with status %d!", p->name,
- error);
-}
-
-
-/*
- * 'slp_attr_callback()' - SLP attribute callback
- */
-
-static SLPBoolean /* O - SLP_TRUE for success */
-slp_attr_callback(
- SLPHandle hslp, /* I - SLP handle */
- const char *attrlist, /* I - Attribute list */
- SLPError errcode, /* I - Parsing status for this attr */
- void *cookie) /* I - Current printer */
-{
- char *tmp = 0; /* Temporary string */
- cupsd_printer_t *p = (cupsd_printer_t*)cookie;
- /* Current printer */
-
-
- (void)hslp; /* anti-compiler-warning-code */
-
- /*
- * Bail if there was an error
- */
-
- if (errcode != SLP_OK)
- return (SLP_TRUE);
-
- /*
- * Parse the attrlist to obtain things needed to build CUPS browse packet
- */
-
- memset(p, 0, sizeof(cupsd_printer_t));
-
- if (slp_get_attr(attrlist, "(printer-location=", &(p->location)))
- return (SLP_FALSE);
- if (slp_get_attr(attrlist, "(printer-info=", &(p->info)))
- return (SLP_FALSE);
- if (slp_get_attr(attrlist, "(printer-make-and-model=", &(p->make_model)))
- return (SLP_FALSE);
- if (!slp_get_attr(attrlist, "(printer-type=", &tmp))
- p->type = atoi(tmp);
- else
- p->type = CUPS_PRINTER_REMOTE;
-
- cupsdClearString(&tmp);
-
- return (SLP_TRUE);
-}
-
-
-/*
- * 'slp_dereg_printer()' - SLPDereg() the specified printer
- */
-
-static void
-slp_dereg_printer(cupsd_printer_t *p) /* I - Printer */
-{
- char srvurl[HTTP_MAX_URI]; /* Printer service URI */
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG, "slp_dereg_printer: printer=\"%s\"", p->name);
-
- if (!(p->type & CUPS_PRINTER_REMOTE))
- {
- /*
- * Make the SLP service URL that conforms to the IANA
- * 'printer:' template.
- */
-
- snprintf(srvurl, sizeof(srvurl), SLP_CUPS_SRVTYPE ":%s", p->uri);
-
- /*
- * Deregister the printer...
- */
-
- SLPDereg(BrowseSLPHandle, srvurl, slp_reg_callback, 0);
- }
-}
-
-
-/*
- * 'slp_get_attr()' - Get an attribute from an SLP registration.
- */
-
-static int /* O - 0 on success */
-slp_get_attr(const char *attrlist, /* I - Attribute list string */
- const char *tag, /* I - Name of attribute */
- char **valbuf) /* O - Value */
-{
- char *ptr1, /* Pointer into string */
- *ptr2; /* ... */
-
-
- cupsdClearString(valbuf);
-
- if ((ptr1 = strstr(attrlist, tag)) != NULL)
- {
- ptr1 += strlen(tag);
-
- if ((ptr2 = strchr(ptr1,')')) != NULL)
- {
- /*
- * Copy the value...
- */
-
- *valbuf = calloc(ptr2 - ptr1 + 1, 1);
- strncpy(*valbuf, ptr1, ptr2 - ptr1);
-
- /*
- * Dequote the value...
- */
-
- for (ptr1 = *valbuf; *ptr1; ptr1 ++)
- if (*ptr1 == '\\' && ptr1[1])
- _cups_strcpy(ptr1, ptr1 + 1);
-
- return (0);
- }
- }
-
- return (-1);
-}
-
-
-/*
- * 'slp_reg_callback()' - Empty SLPRegReport.
- */
-
-static void
-slp_reg_callback(SLPHandle hslp, /* I - SLP handle */
- SLPError errcode, /* I - Error code, if any */
- void *cookie) /* I - App data */
-{
- (void)hslp;
- (void)errcode;
- (void)cookie;
-
- return;
-}
-
-
-/*
- * 'slp_url_callback()' - SLP service url callback
- */
-
-static SLPBoolean /* O - TRUE = OK, FALSE = error */
-slp_url_callback(
- SLPHandle hslp, /* I - SLP handle */
- const char *srvurl, /* I - URL of service */
- unsigned short lifetime, /* I - Life of service */
- SLPError errcode, /* I - Existing error code */
- void *cookie) /* I - Pointer to service list */
-{
- slpsrvurl_t *s, /* New service entry */
- **head; /* Pointer to head of entry */
-
-
- /*
- * Let the compiler know we won't be using these vars...
- */
-
- (void)hslp;
- (void)lifetime;
-
- /*
- * Bail if there was an error
- */
-
- if (errcode != SLP_OK)
- return (SLP_TRUE);
-
- /*
- * Grab the head of the list...
- */
-
- head = (slpsrvurl_t**)cookie;
-
- /*
- * Allocate a *temporary* slpsrvurl_t to hold this entry.
- */
-
- if ((s = (slpsrvurl_t *)calloc(1, sizeof(slpsrvurl_t))) == NULL)
- return (SLP_FALSE);
-
- /*
- * Copy the SLP service URL...
- */
-
- strlcpy(s->url, srvurl, sizeof(s->url));
-
- /*
- * Link the SLP service URL into the head of the list
- */
-
- if (*head)
- s->next = *head;
-
- *head = s;
-
- return (SLP_TRUE);
-}
-#endif /* HAVE_LIBSLP */
-
-
-/*
- * 'update_cups_browse()' - Update the browse lists using the CUPS protocol.
- */
-
-static void
-update_cups_browse(void)
-{
- int i; /* Looping var */
- int auth; /* Authorization status */
- int len; /* Length of name string */
- int bytes; /* Number of bytes left */
- char packet[1541], /* Broadcast packet */
- *pptr; /* Pointer into packet */
- socklen_t srclen; /* Length of source address */
- http_addr_t srcaddr; /* Source address */
- char srcname[1024]; /* Source hostname */
- unsigned address[4]; /* Source address */
- unsigned type; /* Printer type */
- unsigned state; /* Printer state */
- char uri[HTTP_MAX_URI], /* Printer URI */
- host[HTTP_MAX_URI], /* Host portion of URI */
- resource[HTTP_MAX_URI], /* Resource portion of URI */
- info[IPP_MAX_NAME], /* Information string */
- location[IPP_MAX_NAME], /* Location string */
- make_model[IPP_MAX_NAME];/* Make and model string */
- int num_attrs; /* Number of attributes */
- cups_option_t *attrs; /* Attributes */
-
-
- /*
- * Read a packet from the browse socket...
- */
-
- srclen = sizeof(srcaddr);
- if ((bytes = recvfrom(BrowseSocket, packet, sizeof(packet) - 1, 0,
- (struct sockaddr *)&srcaddr, &srclen)) < 0)
- {
- /*
- * "Connection refused" is returned under Linux if the destination port
- * or address is unreachable from a previous sendto(); check for the
- * error here and ignore it for now...
- */
-
- if (errno != ECONNREFUSED && errno != EAGAIN)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Browse recv failed - %s.",
- strerror(errno));
- cupsdLogMessage(CUPSD_LOG_ERROR, "CUPS browsing turned off.");
-
-#ifdef WIN32
- closesocket(BrowseSocket);
-#else
- close(BrowseSocket);
-#endif /* WIN32 */
-
- cupsdRemoveSelect(BrowseSocket);
- BrowseSocket = -1;
-
- BrowseLocalProtocols &= ~BROWSE_CUPS;
- BrowseRemoteProtocols &= ~BROWSE_CUPS;
- }
-
- return;
- }
-
- packet[bytes] = '\0';
-
- /*
- * If we're about to sleep, ignore incoming browse packets.
- */
-
- if (Sleeping)
- return;
-
- /*
- * Figure out where it came from...
- */
-
-#ifdef AF_INET6
- if (srcaddr.addr.sa_family == AF_INET6)
- {
- address[0] = ntohl(srcaddr.ipv6.sin6_addr.s6_addr32[0]);
- address[1] = ntohl(srcaddr.ipv6.sin6_addr.s6_addr32[1]);
- address[2] = ntohl(srcaddr.ipv6.sin6_addr.s6_addr32[2]);
- address[3] = ntohl(srcaddr.ipv6.sin6_addr.s6_addr32[3]);
- }
- else
-#endif /* AF_INET6 */
- {
- address[0] = 0;
- address[1] = 0;
- address[2] = 0;
- address[3] = ntohl(srcaddr.ipv4.sin_addr.s_addr);
- }
-
- if (HostNameLookups)
- httpAddrLookup(&srcaddr, srcname, sizeof(srcname));
- else
- httpAddrString(&srcaddr, srcname, sizeof(srcname));
-
- len = strlen(srcname);
-
- /*
- * Do ACL stuff...
- */
-
- if (BrowseACL)
- {
- if (httpAddrLocalhost(&srcaddr) || !_cups_strcasecmp(srcname, "localhost"))
- {
- /*
- * Access from localhost (127.0.0.1) is always allowed...
- */
-
- auth = CUPSD_AUTH_ALLOW;
- }
- else
- {
- /*
- * Do authorization checks on the domain/address...
- */
-
- switch (BrowseACL->order_type)
- {
- default :
- auth = CUPSD_AUTH_DENY; /* anti-compiler-warning-code */
- break;
-
- case CUPSD_AUTH_ALLOW : /* Order Deny,Allow */
- auth = CUPSD_AUTH_ALLOW;
-
- if (cupsdCheckAuth(address, srcname, len, BrowseACL->deny))
- auth = CUPSD_AUTH_DENY;
-
- if (cupsdCheckAuth(address, srcname, len, BrowseACL->allow))
- auth = CUPSD_AUTH_ALLOW;
- break;
-
- case CUPSD_AUTH_DENY : /* Order Allow,Deny */
- auth = CUPSD_AUTH_DENY;
-
- if (cupsdCheckAuth(address, srcname, len, BrowseACL->allow))
- auth = CUPSD_AUTH_ALLOW;
-
- if (cupsdCheckAuth(address, srcname, len, BrowseACL->deny))
- auth = CUPSD_AUTH_DENY;
- break;
- }
- }
- }
- else
- auth = CUPSD_AUTH_ALLOW;
-
- if (auth == CUPSD_AUTH_DENY)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "update_cups_browse: Refused %d bytes from %s", bytes,
- srcname);
- return;
- }
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "update_cups_browse: (%d bytes from %s) %s", bytes,
- srcname, packet);
-
- /*
- * Parse packet...
- */
-
- if (sscanf(packet, "%x%x%1023s", &type, &state, uri) < 3)
- {
- cupsdLogMessage(CUPSD_LOG_WARN,
- "update_cups_browse: Garbled browse packet - %s", packet);
- return;
- }
-
- strcpy(location, "Location Unknown");
- strcpy(info, "No Information Available");
- make_model[0] = '\0';
- num_attrs = 0;
- attrs = NULL;
-
- if ((pptr = strchr(packet, '\"')) != NULL)
- {
- /*
- * Have extended information; can't use sscanf for it because not all
- * sscanf's allow empty strings with %[^\"]...
- */
-
- for (i = 0, pptr ++;
- i < (sizeof(location) - 1) && *pptr && *pptr != '\"';
- i ++, pptr ++)
- location[i] = *pptr;
-
- if (i)
- location[i] = '\0';
-
- if (*pptr == '\"')
- pptr ++;
-
- while (*pptr && isspace(*pptr & 255))
- pptr ++;
-
- if (*pptr == '\"')
- {
- for (i = 0, pptr ++;
- i < (sizeof(info) - 1) && *pptr && *pptr != '\"';
- i ++, pptr ++)
- info[i] = *pptr;
-
- info[i] = '\0';
-
- if (*pptr == '\"')
- pptr ++;
-
- while (*pptr && isspace(*pptr & 255))
- pptr ++;
-
- if (*pptr == '\"')
- {
- for (i = 0, pptr ++;
- i < (sizeof(make_model) - 1) && *pptr && *pptr != '\"';
- i ++, pptr ++)
- make_model[i] = *pptr;
-
- if (*pptr == '\"')
- pptr ++;
-
- make_model[i] = '\0';
-
- if (*pptr)
- num_attrs = cupsParseOptions(pptr, num_attrs, &attrs);
- }
- }
- }
-
- DEBUG_puts(packet);
- DEBUG_printf(("type=%x, state=%x, uri=\"%s\"\n"
- "location=\"%s\", info=\"%s\", make_model=\"%s\"\n",
- type, state, uri, location, info, make_model));
-
- /*
- * Pull the URI apart to see if this is a local or remote printer...
- */
-
- if (is_local_queue(uri, host, sizeof(host), resource, sizeof(resource)))
- {
- cupsFreeOptions(num_attrs, attrs);
- return;
- }
-
- /*
- * Do relaying...
- */
-
- for (i = 0; i < NumRelays; i ++)
- if (cupsdCheckAuth(address, srcname, len, Relays[i].from))
- if (sendto(BrowseSocket, packet, bytes, 0,
- (struct sockaddr *)&(Relays[i].to),
- httpAddrLength(&(Relays[i].to))) <= 0)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "update_cups_browse: sendto failed for relay %d - %s.",
- i + 1, strerror(errno));
- cupsFreeOptions(num_attrs, attrs);
- return;
- }
-
- /*
- * Process the browse data...
- */
-
- process_browse_data(uri, host, resource, (cups_ptype_t)type,
- (ipp_pstate_t)state, location, info, make_model,
- num_attrs, attrs);
-}
-
-
-/*
* 'update_lpd()' - Update the LPD configuration as needed.
*/
@@ -5478,41 +1583,6 @@ update_lpd(int onoff) /* - 1 = turn on, 0 = turn off */
/*
- * 'update_polling()' - Read status messages from the poll daemons.
- */
-
-static void
-update_polling(void)
-{
- char *ptr, /* Pointer to end of line in buffer */
- message[1024]; /* Pointer to message text */
- int loglevel; /* Log level for message */
-
-
- while ((ptr = cupsdStatBufUpdate(PollStatusBuffer, &loglevel,
- message, sizeof(message))) != NULL)
- {
- if (loglevel == CUPSD_LOG_INFO)
- cupsdLogMessage(CUPSD_LOG_INFO, "%s", message);
-
- if (!strchr(PollStatusBuffer->buffer, '\n'))
- break;
- }
-
- if (ptr == NULL && !PollStatusBuffer->bufused)
- {
- /*
- * All polling processes have died; stop polling...
- */
-
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "update_polling: all polling processes have exited!");
- cupsdStopPolling();
- }
-}
-
-
-/*
* 'update_smb()' - Update the SMB configuration as needed.
*/
@@ -5580,5 +1650,5 @@ update_smb(int onoff) /* I - 1 = turn on, 0 = turn off */
/*
- * End of "$Id: dirsvc.c 10243 2012-02-11 02:05:21Z mike $".
+ * End of "$Id: dirsvc.c 10472 2012-05-18 02:25:18Z mike $".
*/
diff --git a/scheduler/dirsvc.h b/scheduler/dirsvc.h
index be8774b7..a4ffdbef 100644
--- a/scheduler/dirsvc.h
+++ b/scheduler/dirsvc.h
@@ -1,9 +1,9 @@
/*
- * "$Id: dirsvc.h 9632 2011-03-21 02:12:14Z mike $"
+ * "$Id: dirsvc.h 10415 2012-04-16 23:26:18Z mike $"
*
* Directory services definitions for the CUPS scheduler.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -14,68 +14,13 @@
*/
/*
- * Include necessary headers...
- */
-
-#ifdef HAVE_LIBSLP
-# include <slp.h>
-#endif /* HAVE_LIBSLP */
-
-#ifdef HAVE_LDAP
-# ifdef __sun
-# include <lber.h>
-# endif /* __sun */
-# include <ldap.h>
-# ifdef HAVE_LDAP_SSL_H
-# include <ldap_ssl.h>
-# endif /* HAVE_LDAP_SSL_H */
-#endif /* HAVE_LDAP */
-
-/*
* Browse protocols...
*/
-#define BROWSE_CUPS 1 /* CUPS */
-#define BROWSE_SLP 2 /* SLPv2 */
-#define BROWSE_LDAP 4 /* LDAP */
-#define BROWSE_DNSSD 8 /* DNS Service Discovery (aka Bonjour) */
-#define BROWSE_SMB 16 /* SMB/Samba */
-#define BROWSE_LPD 32 /* LPD via xinetd or launchd */
-#define BROWSE_ALL 63 /* All protocols */
-
-
-/*
- * Browse address...
- */
-
-typedef struct
-{
- char iface[32]; /* Destination interface */
- http_addr_t to; /* Destination address */
-} cupsd_dirsvc_addr_t;
-
-
-/*
- * Relay structure...
- */
-
-typedef struct
-{
- cups_array_t *from; /* Source address/name mask(s) */
- http_addr_t to; /* Destination address */
-} cupsd_dirsvc_relay_t;
-
-
-/*
- * Polling structure...
- */
-
-typedef struct
-{
- char hostname[64]; /* Hostname (actually, IP address) */
- int port; /* Port number */
- int pid; /* Current poll server PID */
-} cupsd_dirsvc_poll_t;
+#define BROWSE_DNSSD 1 /* DNS Service Discovery (aka Bonjour) */
+#define BROWSE_SMB 2 /* SMB/Samba */
+#define BROWSE_LPD 4 /* LPD via xinetd or launchd */
+#define BROWSE_ALL 7 /* All protocols */
/*
@@ -87,98 +32,34 @@ VAR int Browsing VALUE(TRUE),
BrowseWebIF VALUE(FALSE),
/* Whether the web interface is advertised */
BrowseLocalProtocols
- VALUE(BROWSE_ALL),
+ VALUE(BROWSE_ALL);
/* Protocols to support for local printers */
- BrowseRemoteProtocols
- VALUE(BROWSE_ALL),
- /* Protocols to support for remote printers */
- BrowseShortNames VALUE(TRUE),
- /* Short names for remote printers? */
- BrowseSocket VALUE(-1),
- /* Socket for browsing */
- BrowsePort VALUE(IPP_PORT),
- /* Port number for broadcasts */
- BrowseInterval VALUE(DEFAULT_INTERVAL),
- /* Broadcast interval in seconds */
- BrowseTimeout VALUE(DEFAULT_TIMEOUT),
- /* Time out for printers in seconds */
- UseNetworkDefault VALUE(CUPS_DEFAULT_USE_NETWORK_DEFAULT),
- /* Use the network default printer? */
- NumBrowsers VALUE(0);
- /* Number of broadcast addresses */
-VAR char *BrowseLocalOptions
- VALUE(NULL),
- /* Options to add to local printer URIs */
- *BrowseRemoteOptions
- VALUE(NULL);
- /* Options to add to remote printer URIs */
-VAR cupsd_dirsvc_addr_t *Browsers VALUE(NULL);
- /* Broadcast addresses */
-VAR cupsd_location_t *BrowseACL VALUE(NULL);
- /* Browser access control list */
-VAR cupsd_printer_t *BrowseNext VALUE(NULL);
- /* Next class/printer to broadcast */
-VAR int NumRelays VALUE(0);
- /* Number of broadcast relays */
-VAR cupsd_dirsvc_relay_t *Relays VALUE(NULL);
- /* Broadcast relays */
-VAR int NumPolled VALUE(0);
- /* Number of polled servers */
-VAR cupsd_dirsvc_poll_t *Polled VALUE(NULL);
- /* Polled servers */
-VAR int PollPipe VALUE(0);
- /* Status pipe for pollers */
-VAR cupsd_statbuf_t *PollStatusBuffer VALUE(NULL);
- /* Status buffer for pollers */
-
-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
VAR char *DNSSDComputerName VALUE(NULL),
/* Computer/server name */
*DNSSDHostName VALUE(NULL),
/* Hostname */
- *DNSSDRegType VALUE(NULL);
- /* Bonjour registration type */
+ *DNSSDSubTypes VALUE(NULL);
+ /* Bonjour registration subtypes */
VAR cups_array_t *DNSSDAlias VALUE(NULL);
/* List of dynamic ServerAlias's */
VAR int DNSSDPort VALUE(0);
/* Port number to register */
VAR cups_array_t *DNSSDPrinters VALUE(NULL);
/* Printers we have registered */
-VAR DNSServiceRef DNSSDRef VALUE(NULL),
+# ifdef HAVE_DNSSD
+VAR DNSServiceRef DNSSDMaster VALUE(NULL);
/* Master DNS-SD service reference */
- WebIFRef VALUE(NULL),
+# else /* HAVE_AVAHI */
+VAR AvahiThreadedPoll *DNSSDMaster VALUE(NULL);
+ /* Master polling interface for Avahi */
+VAR AvahiClient *DNSSDClient VALUE(NULL);
+ /* Client information */
+# endif /* HAVE_DNSSD */
+VAR cupsd_srv_t WebIFSrv VALUE(NULL);
/* Service reference for the web interface */
- RemoteRef VALUE(NULL);
- /* Remote printer browse reference */
-#endif /* HAVE_DNSSD */
-
-#ifdef HAVE_LIBSLP
-VAR SLPHandle BrowseSLPHandle VALUE(NULL);
- /* SLP API handle */
-VAR time_t BrowseSLPRefresh VALUE(0);
- /* Next SLP refresh time */
-#endif /* HAVE_LIBSLP */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
-#ifdef HAVE_LDAP
-VAR LDAP *BrowseLDAPHandle VALUE(NULL);
- /* Handle to LDAP server */
-VAR time_t BrowseLDAPRefresh VALUE(0);
- /* Next LDAP refresh time */
-VAR char *BrowseLDAPBindDN VALUE(NULL),
- /* LDAP login DN */
- *BrowseLDAPDN VALUE(NULL),
- /* LDAP search DN */
- *BrowseLDAPPassword VALUE(NULL),
- /* LDAP login password */
- *BrowseLDAPServer VALUE(NULL);
- /* LDAP server to use */
-VAR int BrowseLDAPUpdate VALUE(TRUE);
- /* enables LDAP updates */
-# ifdef HAVE_LDAP_SSL
-VAR char *BrowseLDAPCACertFile VALUE(NULL);
- /* LDAP CA CERT file to use */
-# endif /* HAVE_LDAP_SSL */
-#endif /* HAVE_LDAP */
VAR char *LPDConfigFile VALUE(NULL),
/* LPD configuration file */
*SMBConfigFile VALUE(NULL);
@@ -190,24 +71,14 @@ VAR char *LPDConfigFile VALUE(NULL),
*/
extern void cupsdDeregisterPrinter(cupsd_printer_t *p, int removeit);
-extern void cupsdLoadRemoteCache(void);
extern void cupsdRegisterPrinter(cupsd_printer_t *p);
-extern void cupsdRestartPolling(void);
-extern void cupsdSaveRemoteCache(void);
-extern void cupsdSendBrowseList(void);
extern void cupsdStartBrowsing(void);
-extern void cupsdStartPolling(void);
extern void cupsdStopBrowsing(void);
-extern void cupsdStopPolling(void);
-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
extern void cupsdUpdateDNSSDName(void);
-#endif /* HAVE_DNSSD */
-#ifdef HAVE_LDAP
-extern void cupsdUpdateLDAPBrowse(void);
-#endif /* HAVE_LDAP */
-extern void cupsdUpdateSLPBrowse(void);
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
/*
- * End of "$Id: dirsvc.h 9632 2011-03-21 02:12:14Z mike $".
+ * End of "$Id: dirsvc.h 10415 2012-04-16 23:26:18Z mike $".
*/
diff --git a/scheduler/env.c b/scheduler/env.c
index 02c0779a..9ee83bcd 100644
--- a/scheduler/env.c
+++ b/scheduler/env.c
@@ -1,5 +1,5 @@
/*
- * "$Id: env.c 10486 2012-05-18 20:21:41Z mike $"
+ * "$Id: env.c 10485 2012-05-18 20:17:41Z mike $"
*
* Environment management routines for the CUPS scheduler.
*
@@ -269,5 +269,5 @@ find_env(const char *name) /* I - Variable name */
/*
- * End of "$Id: env.c 10486 2012-05-18 20:21:41Z mike $".
+ * End of "$Id: env.c 10485 2012-05-18 20:17:41Z mike $".
*/
diff --git a/scheduler/ipp.c b/scheduler/ipp.c
index fa3d96ea..5139ddc8 100644
--- a/scheduler/ipp.c
+++ b/scheduler/ipp.c
@@ -1,9 +1,9 @@
/*
- * "$Id: ipp.c 10274 2012-02-13 20:42:51Z mike $"
+ * "$Id: ipp.c 10490 2012-05-21 17:40:22Z mike $"
*
* IPP routines for the CUPS scheduler.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* This file contains Kerberos support code, copyright 2006 by
@@ -23,8 +23,6 @@
* add_class() - Add a class to the system.
* add_file() - Add a file to a job.
* add_job() - Add a job to a print queue.
- * add_job_state_reasons() - Add the "job-state-reasons" attribute based
- * upon the job and printer state...
* add_job_subscriptions() - Add any subscriptions for a job.
* add_job_uuid() - Add job-uuid attribute to a job.
* add_printer() - Add a printer to the system.
@@ -32,10 +30,6 @@
* based upon the printer state...
* add_queued_job_count() - Add the "queued-job-count" attribute for the
* specified printer or class.
- * apple_init_profile() - Initialize a color profile.
- * apple_register_profiles() - Register color profiles for a printer.
- * apple_unregister_profiles() - Remove color profiles for the specified
- * printer.
* apply_printer_defaults() - Apply printer default options to a job.
* authenticate_job() - Set job authentication info.
* cancel_all_jobs() - Cancel all or selected print jobs.
@@ -45,7 +39,6 @@
* feed URI.
* check_quotas() - Check quotas for a printer and user.
* close_job() - Close a multi-file job.
- * copy_attribute() - Copy a single attribute.
* copy_attrs() - Copy attributes from one request to another.
* copy_banner() - Copy a banner file to the requests directory
* for the specified job.
@@ -114,11 +107,9 @@
#include <cups/ppd-private.h>
#ifdef __APPLE__
-# include <ApplicationServices/ApplicationServices.h>
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
+/*# include <ApplicationServices/ApplicationServices.h>
extern CFUUIDRef ColorSyncCreateUUIDFromUInt32(unsigned id);
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-# include <CoreFoundation/CoreFoundation.h>
+# include <CoreFoundation/CoreFoundation.h>*/
# ifdef HAVE_MEMBERSHIP_H
# include <membership.h>
# endif /* HAVE_MEMBERSHIP_H */
@@ -142,25 +133,12 @@ static int add_file(cupsd_client_t *con, cupsd_job_t *job,
mime_type_t *filetype, int compression);
static cupsd_job_t *add_job(cupsd_client_t *con, cupsd_printer_t *printer,
mime_type_t *filetype);
-static void add_job_state_reasons(cupsd_client_t *con, cupsd_job_t *job);
static void add_job_subscriptions(cupsd_client_t *con, cupsd_job_t *job);
static void add_job_uuid(cupsd_job_t *job);
static void add_printer(cupsd_client_t *con, ipp_attribute_t *uri);
static void add_printer_state_reasons(cupsd_client_t *con,
cupsd_printer_t *p);
static void add_queued_job_count(cupsd_client_t *con, cupsd_printer_t *p);
-#ifdef __APPLE__
-static void apple_init_profile(ppd_file_t *ppd, cups_array_t *languages,
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- CFMutableDictionaryRef profile,
-# else
- CMDeviceProfileInfo *profile,
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
- unsigned id, const char *name,
- const char *text, const char *iccfile);
-static void apple_register_profiles(cupsd_printer_t *p);
-static void apple_unregister_profiles(cupsd_printer_t *p);
-#endif /* __APPLE__ */
static void apply_printer_defaults(cupsd_printer_t *printer,
cupsd_job_t *job);
static void authenticate_job(cupsd_client_t *con, ipp_attribute_t *uri);
@@ -169,8 +147,6 @@ static void cancel_job(cupsd_client_t *con, ipp_attribute_t *uri);
static void cancel_subscription(cupsd_client_t *con, int id);
static int check_rss_recipient(const char *recipient);
static int check_quotas(cupsd_client_t *con, cupsd_printer_t *p);
-static ipp_attribute_t *copy_attribute(ipp_t *to, ipp_attribute_t *attr,
- int quickcopy);
static void close_job(cupsd_client_t *con, ipp_attribute_t *uri);
static void copy_attrs(ipp_t *to, ipp_t *from, cups_array_t *ra,
ipp_tag_t group, int quickcopy,
@@ -228,10 +204,7 @@ static void send_http_error(cupsd_client_t *con, http_status_t status,
cupsd_printer_t *printer);
static void send_ipp_status(cupsd_client_t *con, ipp_status_t status,
const char *message, ...)
-# ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 3, 4)))
-# endif /* __GNUC__ */
-;
+ __attribute__((__format__(__printf__, 3, 4)));
static void set_default(cupsd_client_t *con, ipp_attribute_t *uri);
static void set_job_attrs(cupsd_client_t *con, ipp_attribute_t *uri);
static void set_printer_attrs(cupsd_client_t *con, ipp_attribute_t *uri);
@@ -853,8 +826,7 @@ cupsdTimeoutJob(cupsd_job_t *job) /* I - Job to timeout */
printer = cupsdFindDest(job->dest);
attr = ippFindAttribute(job->attrs, "job-sheets", IPP_TAG_NAME);
- if (printer &&
- !(printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT)) &&
+ if (printer && !(printer->type & CUPS_PRINTER_REMOTE) &&
attr && attr->num_values > 1)
{
/*
@@ -969,7 +941,6 @@ add_class(cupsd_client_t *con, /* I - Client connection */
cups_ptype_t dtype; /* Destination type */
ipp_attribute_t *attr; /* Printer attribute */
int modify; /* Non-zero if we just modified */
- char newname[IPP_MAX_NAME]; /* New class name */
int need_restart_job; /* Need to restart job? */
@@ -1023,8 +994,7 @@ add_class(cupsd_client_t *con, /* I - Client connection */
* Class doesn't exist; see if we have a printer of the same name...
*/
- if ((pclass = cupsdFindPrinter(resource + 9)) != NULL &&
- !(pclass->type & CUPS_PRINTER_DISCOVERED))
+ if ((pclass = cupsdFindPrinter(resource + 9)) != NULL)
{
/*
* Yes, return an error...
@@ -1049,56 +1019,6 @@ add_class(cupsd_client_t *con, /* I - Client connection */
pclass = cupsdAddClass(resource + 9);
modify = 0;
}
- else if (pclass->type & CUPS_PRINTER_IMPLICIT)
- {
- /*
- * Check the default policy, then rename the implicit class to "AnyClass"
- * or remove it...
- */
-
- if ((status = cupsdCheckPolicy(DefaultPolicyPtr, con, NULL)) != HTTP_OK)
- {
- send_http_error(con, status, NULL);
- return;
- }
-
- if (ImplicitAnyClasses)
- {
- snprintf(newname, sizeof(newname), "Any%s", resource + 9);
- cupsdRenamePrinter(pclass, newname);
- }
- else
- cupsdDeletePrinter(pclass, 1);
-
- /*
- * Add the class as a new local class...
- */
-
- pclass = cupsdAddClass(resource + 9);
- modify = 0;
- }
- else if (pclass->type & CUPS_PRINTER_DISCOVERED)
- {
- /*
- * Check the default policy, then rename the remote class to "Class"...
- */
-
- if ((status = cupsdCheckPolicy(DefaultPolicyPtr, con, NULL)) != HTTP_OK)
- {
- send_http_error(con, status, NULL);
- return;
- }
-
- snprintf(newname, sizeof(newname), "%s@%s", resource + 9, pclass->hostname);
- cupsdRenamePrinter(pclass, newname);
-
- /*
- * Add the class as a new local class...
- */
-
- pclass = cupsdAddClass(resource + 9);
- modify = 0;
- }
else if ((status = cupsdCheckPolicy(pclass->op_policy_ptr, con,
NULL)) != HTTP_OK)
{
@@ -1630,8 +1550,7 @@ add_job(cupsd_client_t *con, /* I - Client connection */
return (NULL);
}
- job->dtype = printer->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT |
- CUPS_PRINTER_REMOTE);
+ job->dtype = printer->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_REMOTE);
job->attrs = con->request;
job->dirty = 1;
con->request = ippNewRequest(job->attrs->request.op.operation_id);
@@ -1720,10 +1639,10 @@ add_job(cupsd_client_t *con, /* I - Client connection */
{
_cupsStrFree(attr->values[i].string.text);
attr->values[i].string.text = NULL;
- if (attr->values[i].string.charset)
+ if (attr->values[i].string.language)
{
- _cupsStrFree(attr->values[i].string.charset);
- attr->values[i].string.charset = NULL;
+ _cupsStrFree(attr->values[i].string.language);
+ attr->values[i].string.language = NULL;
}
}
@@ -1770,6 +1689,8 @@ add_job(cupsd_client_t *con, /* I - Client connection */
job->state = ippAddInteger(job->attrs, IPP_TAG_JOB, IPP_TAG_ENUM,
"job-state", IPP_JOB_STOPPED);
job->state_value = (ipp_jstate_t)job->state->values[0].integer;
+ job->reasons = ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_KEYWORD,
+ "job-state-reasons", NULL, "job-incoming");
job->sheets = ippAddInteger(job->attrs, IPP_TAG_JOB, IPP_TAG_INTEGER,
"job-media-sheets-completed", 0);
ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_URI, "job-printer-uri", NULL,
@@ -1803,6 +1724,8 @@ add_job(cupsd_client_t *con, /* I - Client connection */
job->state->values[0].integer = IPP_JOB_HELD;
job->state_value = IPP_JOB_HELD;
+
+ ippSetString(job->attrs, &job->reasons, 0, "job-hold-until-specified");
}
else if (job->attrs->request.op.operation_id == IPP_CREATE_JOB)
{
@@ -1814,10 +1737,11 @@ add_job(cupsd_client_t *con, /* I - Client connection */
{
job->state->values[0].integer = IPP_JOB_PENDING;
job->state_value = IPP_JOB_PENDING;
+
+ ippSetString(job->attrs, &job->reasons, 0, "none");
}
- if (!(printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT)) ||
- Classification)
+ if (!(printer->type & CUPS_PRINTER_REMOTE) || Classification)
{
/*
* Add job sheets options...
@@ -1950,7 +1874,7 @@ add_job(cupsd_client_t *con, /* I - Client connection */
* See if we need to add the starting sheet...
*/
- if (!(printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT)))
+ if (!(printer->type & CUPS_PRINTER_REMOTE))
{
cupsdLogJob(job, CUPSD_LOG_INFO, "Adding start banner page \"%s\".",
attr->values[0].string.text);
@@ -1983,7 +1907,8 @@ add_job(cupsd_client_t *con, /* I - Client connection */
ippAddInteger(con->response, IPP_TAG_JOB, IPP_TAG_ENUM, "job-state",
job->state_value);
- add_job_state_reasons(con, job);
+ ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD, "job-state-reasons",
+ NULL, job->reasons->values[0].string.text);
con->response->request.status.status_code = IPP_OK;
@@ -2015,76 +1940,6 @@ add_job(cupsd_client_t *con, /* I - Client connection */
/*
- * 'add_job_state_reasons()' - Add the "job-state-reasons" attribute based
- * upon the job and printer state...
- */
-
-static void
-add_job_state_reasons(
- cupsd_client_t *con, /* I - Client connection */
- cupsd_job_t *job) /* I - Job info */
-{
- cupsd_printer_t *dest; /* Destination printer */
- ipp_attribute_t *attr; /* job-hold attribute */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "add_job_state_reasons(%p[%d], %d)",
- con, con->http.fd, job ? job->id : 0);
-
- switch (job ? job->state_value : IPP_JOB_CANCELED)
- {
- case IPP_JOB_PENDING :
- dest = cupsdFindDest(job->dest);
-
- if (dest && dest->state == IPP_PRINTER_STOPPED)
- ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD,
- "job-state-reasons", NULL, "printer-stopped");
- else
- ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD,
- "job-state-reasons", NULL, "none");
- break;
-
- case IPP_JOB_HELD :
- if ((attr = ippFindAttribute(job->attrs, "job-hold-until",
- IPP_TAG_KEYWORD)) == NULL)
- attr = ippFindAttribute(job->attrs, "job-hold-until", IPP_TAG_NAME);
-
- if (!attr || strcmp(attr->values[0].string.text, "no-hold"))
- ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD,
- "job-state-reasons", NULL, "job-hold-until-specified");
- else
- ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD,
- "job-state-reasons", NULL, "job-incoming");
- break;
-
- case IPP_JOB_PROCESSING :
- ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD,
- "job-state-reasons", NULL, "job-printing");
- break;
-
- case IPP_JOB_STOPPED :
- ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD,
- "job-state-reasons", NULL, "job-stopped");
- break;
-
- case IPP_JOB_CANCELED :
- ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD,
- "job-state-reasons", NULL, "job-canceled-by-user");
- break;
-
- case IPP_JOB_ABORTED :
- ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD,
- "job-state-reasons", NULL, "aborted-by-system");
- break;
-
- case IPP_JOB_COMPLETED :
- ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD,
- "job-state-reasons", NULL, "job-completed-successfully");
- break;
- }
-}
-
-
-/*
* 'add_job_subscriptions()' - Add any subscriptions for a job.
*/
@@ -2302,7 +2157,7 @@ add_job_subscriptions(
* Free and remove this attribute...
*/
- _ippFreeAttr(attr);
+ ippDeleteAttribute(NULL, attr);
if (prev)
prev->next = next;
@@ -2363,7 +2218,6 @@ add_printer(cupsd_client_t *con, /* I - Client connection */
char srcfile[1024], /* Source Script/PPD file */
dstfile[1024]; /* Destination Script/PPD file */
int modify; /* Non-zero if we are modifying */
- char newname[IPP_MAX_NAME]; /* New printer name */
int changed_driver, /* Changed the PPD/interface script? */
need_restart_job, /* Need to restart job? */
set_device_uri, /* Did we set the device URI? */
@@ -2419,8 +2273,7 @@ add_printer(cupsd_client_t *con, /* I - Client connection */
* Printer doesn't exist; see if we have a class of the same name...
*/
- if ((printer = cupsdFindClass(resource + 10)) != NULL &&
- !(printer->type & CUPS_PRINTER_DISCOVERED))
+ if ((printer = cupsdFindClass(resource + 10)) != NULL)
{
/*
* Yes, return an error...
@@ -2445,58 +2298,6 @@ add_printer(cupsd_client_t *con, /* I - Client connection */
printer = cupsdAddPrinter(resource + 10);
modify = 0;
}
- else if (printer->type & CUPS_PRINTER_IMPLICIT)
- {
- /*
- * Check the default policy, then rename the implicit printer to
- * "AnyPrinter" or delete it...
- */
-
- if ((status = cupsdCheckPolicy(DefaultPolicyPtr, con, NULL)) != HTTP_OK)
- {
- send_http_error(con, status, NULL);
- return;
- }
-
- if (ImplicitAnyClasses)
- {
- snprintf(newname, sizeof(newname), "Any%s", resource + 10);
- cupsdRenamePrinter(printer, newname);
- }
- else
- cupsdDeletePrinter(printer, 1);
-
- /*
- * Add the printer as a new local printer...
- */
-
- printer = cupsdAddPrinter(resource + 10);
- modify = 0;
- }
- else if (printer->type & CUPS_PRINTER_DISCOVERED)
- {
- /*
- * Check the default policy, then rename the remote printer to
- * "Printer@server"...
- */
-
- if ((status = cupsdCheckPolicy(DefaultPolicyPtr, con, NULL)) != HTTP_OK)
- {
- send_http_error(con, status, NULL);
- return;
- }
-
- snprintf(newname, sizeof(newname), "%s@%s", resource + 10,
- printer->hostname);
- cupsdRenamePrinter(printer, newname);
-
- /*
- * Add the printer as a new local printer...
- */
-
- printer = cupsdAddPrinter(resource + 10);
- modify = 0;
- }
else if ((status = cupsdCheckPolicy(printer->op_policy_ptr, con,
NULL)) != HTTP_OK)
{
@@ -2925,17 +2726,11 @@ add_printer(cupsd_client_t *con, /* I - Client connection */
cupsdSetPrinterReasons(printer, "none");
-#ifdef __APPLE__
/*
* (Re)register color profiles...
*/
- if (!RunUser)
- {
- apple_unregister_profiles(printer);
- apple_register_profiles(printer);
- }
-#endif /* __APPLE__ */
+ cupsdRegisterColor(printer);
}
/*
@@ -2955,7 +2750,7 @@ add_printer(cupsd_client_t *con, /* I - Client connection */
snprintf(srcfile, sizeof(srcfile), "%s/ppd/%s.ppd", ServerRoot,
printer->name);
- if ((ppd = ppdOpenFile(srcfile)) != NULL)
+ if ((ppd = _ppdOpenFile(srcfile, _PPD_LOCALIZATION_NONE)) != NULL)
{
for (ppdattr = ppdFindAttr(ppd, "cupsPortMonitor", NULL);
ppdattr;
@@ -3069,888 +2864,6 @@ add_queued_job_count(
}
-#ifdef __APPLE__
-/*
- * 'apple_init_profile()' - Initialize a color profile.
- */
-
-static void
-apple_init_profile(
- ppd_file_t *ppd, /* I - PPD file */
- cups_array_t *languages, /* I - Languages in the PPD file */
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- CFMutableDictionaryRef profile, /* I - Profile dictionary */
-# else
- CMDeviceProfileInfo *profile, /* I - Profile record */
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
- unsigned id, /* I - Profile ID */
- const char *name, /* I - Profile name */
- const char *text, /* I - Profile UI text */
- const char *iccfile) /* I - ICC filename */
-{
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- CFURLRef url; /* URL for profile filename */
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
- CFMutableDictionaryRef dict; /* Dictionary for name */
- char *language; /* Current language */
- ppd_attr_t *attr; /* Profile attribute */
- CFStringRef cflang, /* Language string */
- cftext; /* Localized text */
-
-
- (void)id;
-
- /*
- * Build the profile name dictionary...
- */
-
- dict = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
- &kCFTypeDictionaryKeyCallBacks,
- &kCFTypeDictionaryValueCallBacks);
- if (!dict)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to initialize profile \"%s\".",
- iccfile);
- return;
- }
-
- cftext = CFStringCreateWithCString(kCFAllocatorDefault, text,
- kCFStringEncodingUTF8);
-
- if (cftext)
- {
- CFDictionarySetValue(dict, CFSTR("en_US"), cftext);
- CFRelease(cftext);
- }
-
- if (languages)
- {
- /*
- * Find localized names for the color profiles...
- */
-
- cupsArraySave(ppd->sorted_attrs);
-
- for (language = (char *)cupsArrayFirst(languages);
- language;
- language = (char *)cupsArrayNext(languages))
- {
- if (iccfile)
- {
- if ((attr = _ppdLocalizedAttr(ppd, "cupsICCProfile", name,
- language)) == NULL)
- attr = _ppdLocalizedAttr(ppd, "APTiogaProfile", name, language);
- }
- else
- attr = _ppdLocalizedAttr(ppd, "ColorModel", name, language);
-
- if (attr && attr->text[0])
- {
- cflang = CFStringCreateWithCString(kCFAllocatorDefault, language,
- kCFStringEncodingUTF8);
- cftext = CFStringCreateWithCString(kCFAllocatorDefault, attr->text,
- kCFStringEncodingUTF8);
-
- if (cflang && cftext)
- CFDictionarySetValue(dict, cflang, cftext);
-
- if (cflang)
- CFRelease(cflang);
-
- if (cftext)
- CFRelease(cftext);
- }
- }
-
- cupsArrayRestore(ppd->sorted_attrs);
- }
-
- /*
- * Fill in the profile data...
- */
-
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- if (iccfile)
- {
- url = CFURLCreateFromFileSystemRepresentation(kCFAllocatorDefault,
- (const UInt8 *)iccfile,
- strlen(iccfile), false);
-
- if (url)
- {
- CFDictionarySetValue(profile, kColorSyncDeviceProfileURL, url);
- CFRelease(url);
- }
- }
-
- CFDictionarySetValue(profile, kColorSyncDeviceModeDescriptions, dict);
- CFRelease(dict);
-
-# else
- profile->dataVersion = cmDeviceProfileInfoVersion1;
- profile->profileID = id;
- profile->profileLoc.locType = iccfile ? cmPathBasedProfile : cmNoProfileBase;
- profile->profileName = dict;
-
- if (iccfile)
- strlcpy(profile->profileLoc.u.pathLoc.path, iccfile,
- sizeof(profile->profileLoc.u.pathLoc.path));
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-}
-
-
-/*
- * 'apple_register_profiles()' - Register color profiles for a printer.
- */
-
-static void
-apple_register_profiles(
- cupsd_printer_t *p) /* I - Printer */
-{
- int i; /* Looping var */
- char ppdfile[1024], /* PPD filename */
- iccfile[1024], /* ICC filename */
- selector[PPD_MAX_NAME];
- /* Profile selection string */
- ppd_file_t *ppd; /* PPD file */
- ppd_attr_t *attr, /* Profile attributes */
- *profileid_attr,/* cupsProfileID attribute */
- *q1_attr, /* ColorModel (or other) qualifier */
- *q2_attr, /* MediaType (or other) qualifier */
- *q3_attr; /* Resolution (or other) qualifier */
- char q_keyword[PPD_MAX_NAME];
- /* Qualifier keyword */
- const char *q1_choice, /* ColorModel (or other) choice */
- *q2_choice, /* MediaType (or other) choice */
- *q3_choice; /* Resolution (or other) choice */
- const char *profile_key; /* Profile keyword */
- ppd_option_t *cm_option; /* Color model option */
- ppd_choice_t *cm_choice; /* Color model choice */
- int num_profiles; /* Number of profiles */
- OSStatus error = 0; /* Last error */
- unsigned device_id, /* Printer device ID */
- profile_id = 0, /* Profile ID */
- default_profile_id = 0;
- /* Default profile ID */
- CFMutableDictionaryRef device_name; /* Printer device name dictionary */
- CFStringRef printer_name; /* Printer name string */
- cups_array_t *languages; /* Languages array */
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- CFMutableDictionaryRef profiles, /* Dictionary of profiles */
- profile; /* Current profile info dictionary */
- CFStringRef dict_key; /* Key in factory profile dictionary */
-# else
- CMDeviceScope scope = /* Scope of the registration */
- {
- kCFPreferencesAnyUser,
- kCFPreferencesCurrentHost
- };
- CMDeviceProfileArrayPtr profiles; /* Profiles */
- CMDeviceProfileInfo *profile; /* Current profile */
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-
-
- /*
- * Make sure ColorSync is available...
- */
-
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- if (ColorSyncRegisterDevice == NULL)
- return;
-
-# else
- if (CMRegisterColorDevice == NULL)
- return;
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-
- /*
- * Try opening the PPD file for this printer...
- */
-
- snprintf(ppdfile, sizeof(ppdfile), "%s/ppd/%s.ppd", ServerRoot, p->name);
- if ((ppd = ppdOpenFile(ppdfile)) == NULL)
- return;
-
- /*
- * See if we have any profiles...
- */
-
- if ((attr = ppdFindAttr(ppd, "APTiogaProfile", NULL)) != NULL)
- profile_key = "APTiogaProfile";
- else
- {
- attr = ppdFindAttr(ppd, "cupsICCProfile", NULL);
- profile_key = "cupsICCProfile";
- }
-
- for (num_profiles = 0; attr; attr = ppdFindNextAttr(ppd, profile_key, NULL))
- if (attr->spec[0] && attr->value && attr->value[0])
- {
- if (attr->value[0] != '/')
- snprintf(iccfile, sizeof(iccfile), "%s/profiles/%s", DataDir,
- attr->value);
- else
- strlcpy(iccfile, attr->value, sizeof(iccfile));
-
- if (access(iccfile, 0))
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "%s: ICC Profile \"%s\" does not exist.", p->name,
- iccfile);
- continue;
- }
-
- num_profiles ++;
- }
-
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- /*
- * Create a dictionary for the factory profiles...
- */
-
- profiles = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
- &kCFTypeDictionaryKeyCallBacks,
- &kCFTypeDictionaryValueCallBacks);
- if (!profiles)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate memory for factory profiles.");
- ppdClose(ppd);
- return;
- }
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-
- /*
- * If we have profiles, add them...
- */
-
- if (num_profiles > 0)
- {
- if (profile_key[0] == 'A')
- {
- /*
- * For Tioga PPDs, get the default profile using the DefaultAPTiogaProfile
- * attribute...
- */
-
- if ((attr = ppdFindAttr(ppd, "DefaultAPTiogaProfile", NULL)) != NULL &&
- attr->value)
- default_profile_id = atoi(attr->value);
-
- q1_choice = q2_choice = q3_choice = NULL;
- }
- else
- {
- /*
- * For CUPS PPDs, figure out the default profile selector values...
- */
-
- if ((attr = ppdFindAttr(ppd, "cupsICCQualifier1", NULL)) != NULL &&
- attr->value && attr->value[0])
- {
- snprintf(q_keyword, sizeof(q_keyword), "Default%s", attr->value);
- q1_attr = ppdFindAttr(ppd, q_keyword, NULL);
- }
- else if ((q1_attr = ppdFindAttr(ppd, "DefaultColorModel", NULL)) == NULL)
- q1_attr = ppdFindAttr(ppd, "DefaultColorSpace", NULL);
-
- if (q1_attr && q1_attr->value && q1_attr->value[0])
- q1_choice = q1_attr->value;
- else
- q1_choice = "";
-
- if ((attr = ppdFindAttr(ppd, "cupsICCQualifier2", NULL)) != NULL &&
- attr->value && attr->value[0])
- {
- snprintf(q_keyword, sizeof(q_keyword), "Default%s", attr->value);
- q2_attr = ppdFindAttr(ppd, q_keyword, NULL);
- }
- else
- q2_attr = ppdFindAttr(ppd, "DefaultMediaType", NULL);
-
- if (q2_attr && q2_attr->value && q2_attr->value[0])
- q2_choice = q2_attr->value;
- else
- q2_choice = NULL;
-
- if ((attr = ppdFindAttr(ppd, "cupsICCQualifier3", NULL)) != NULL &&
- attr->value && attr->value[0])
- {
- snprintf(q_keyword, sizeof(q_keyword), "Default%s", attr->value);
- q3_attr = ppdFindAttr(ppd, q_keyword, NULL);
- }
- else
- q3_attr = ppdFindAttr(ppd, "DefaultResolution", NULL);
-
- if (q3_attr && q3_attr->value && q3_attr->value[0])
- q3_choice = q3_attr->value;
- else
- q3_choice = NULL;
- }
-
-# ifndef HAVE_COLORSYNCREGISTERDEVICE
- /*
- * Build the array of profiles...
- *
- * Note: This calloc actually requests slightly more memory than needed.
- */
-
- if ((profiles = calloc(num_profiles, sizeof(CMDeviceProfileArray))) == NULL)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate memory for factory profiles.");
- ppdClose(ppd);
- return;
- }
-
- profiles->profileCount = num_profiles;
- profile = profiles->profiles;
-# endif /* !HAVE_COLORSYNCREGISTERDEVICE */
-
- /*
- * Loop through the profiles listed in the PPD...
- */
-
- languages = _ppdGetLanguages(ppd);
-
- for (attr = ppdFindAttr(ppd, profile_key, NULL);
- attr;
- attr = ppdFindNextAttr(ppd, profile_key, NULL))
- if (attr->spec[0] && attr->value && attr->value[0])
- {
- /*
- * Add this profile...
- */
-
- if (attr->value[0] != '/')
- snprintf(iccfile, sizeof(iccfile), "%s/profiles/%s", DataDir,
- attr->value);
- else
- strlcpy(iccfile, attr->value, sizeof(iccfile));
-
- if (_cupsFileCheck(iccfile, _CUPS_FILE_CHECK_FILE, !RunUser,
- cupsdLogFCMessage, p))
- continue;
-
- if (profile_key[0] == 'c')
- {
- cupsArraySave(ppd->sorted_attrs);
-
- if ((profileid_attr = ppdFindAttr(ppd, "cupsProfileID",
- attr->spec)) != NULL &&
- profileid_attr->value && isdigit(profileid_attr->value[0] & 255))
- profile_id = (unsigned)strtoul(profileid_attr->value, NULL, 10);
- else
- profile_id = _ppdHashName(attr->spec);
-
- cupsArrayRestore(ppd->sorted_attrs);
- }
- else
- profile_id = atoi(attr->spec);
-
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- profile = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
- &kCFTypeDictionaryKeyCallBacks,
- &kCFTypeDictionaryValueCallBacks);
- if (!profile)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate memory for color profile.");
- CFRelease(profiles);
- ppdClose(ppd);
- return;
- }
-
- apple_init_profile(ppd, languages, profile, profile_id, attr->spec,
- attr->text[0] ? attr->text : attr->spec, iccfile);
-
- dict_key = CFStringCreateWithFormat(kCFAllocatorDefault, NULL,
- CFSTR("%u"), profile_id);
- if (dict_key)
- {
- CFDictionarySetValue(profiles, dict_key, profile);
- CFRelease(dict_key);
- }
-
- CFRelease(profile);
-
-# else
- apple_init_profile(ppd, languages, profile, profile_id, attr->spec,
- attr->text[0] ? attr->text : attr->spec, iccfile);
-
- profile ++;
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-
- /*
- * See if this is the default profile...
- */
-
- if (!default_profile_id && q1_choice && q2_choice && q3_choice)
- {
- snprintf(selector, sizeof(selector), "%s.%s.%s", q1_choice, q2_choice,
- q3_choice);
- if (!strcmp(selector, attr->spec))
- default_profile_id = profile_id;
- }
-
- if (!default_profile_id && q1_choice && q2_choice)
- {
- snprintf(selector, sizeof(selector), "%s.%s.", q1_choice, q2_choice);
- if (!strcmp(selector, attr->spec))
- default_profile_id = profile_id;
- }
-
- if (!default_profile_id && q1_choice && q3_choice)
- {
- snprintf(selector, sizeof(selector), "%s..%s", q1_choice, q3_choice);
- if (!strcmp(selector, attr->spec))
- default_profile_id = profile_id;
- }
-
- if (!default_profile_id && q1_choice)
- {
- snprintf(selector, sizeof(selector), "%s..", q1_choice);
- if (!strcmp(selector, attr->spec))
- default_profile_id = profile_id;
- }
-
- if (!default_profile_id && q2_choice && q3_choice)
- {
- snprintf(selector, sizeof(selector), ".%s.%s", q2_choice, q3_choice);
- if (!strcmp(selector, attr->spec))
- default_profile_id = profile_id;
- }
-
- if (!default_profile_id && q2_choice)
- {
- snprintf(selector, sizeof(selector), ".%s.", q2_choice);
- if (!strcmp(selector, attr->spec))
- default_profile_id = profile_id;
- }
-
- if (!default_profile_id && q3_choice)
- {
- snprintf(selector, sizeof(selector), "..%s", q3_choice);
- if (!strcmp(selector, attr->spec))
- default_profile_id = profile_id;
- }
- }
-
- _ppdFreeLanguages(languages);
- }
- else if ((cm_option = ppdFindOption(ppd, "ColorModel")) != NULL)
- {
- /*
- * Extract profiles from ColorModel option...
- */
-
- const char *profile_name; /* Name of generic profile */
-
-
- num_profiles = cm_option->num_choices;
-
-# ifndef HAVE_COLORSYNCREGISTERDEVICE
- /*
- * Create an array for the factory profiles...
- */
-
- if ((profiles = calloc(num_profiles, sizeof(CMDeviceProfileArray))) == NULL)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate memory for factory profiles.");
- ppdClose(ppd);
- return;
- }
-
- profiles->profileCount = num_profiles;
- profile = profiles->profiles;
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-
- for (i = cm_option->num_choices, cm_choice = cm_option->choices;
- i > 0;
- i --, cm_choice ++)
- {
- if (!strcmp(cm_choice->choice, "Gray") ||
- !strcmp(cm_choice->choice, "Black"))
- profile_name = "Gray";
- else if (!strcmp(cm_choice->choice, "RGB") ||
- !strcmp(cm_choice->choice, "CMY"))
- profile_name = "RGB";
- else if (!strcmp(cm_choice->choice, "CMYK") ||
- !strcmp(cm_choice->choice, "KCMY"))
- profile_name = "CMYK";
- else
- profile_name = "DeviceN";
-
- snprintf(selector, sizeof(selector), "%s..", profile_name);
- profile_id = _ppdHashName(selector);
-
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- profile = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
- &kCFTypeDictionaryKeyCallBacks,
- &kCFTypeDictionaryValueCallBacks);
- if (!profile)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate memory for color profile.");
- CFRelease(profiles);
- ppdClose(ppd);
- return;
- }
-
- apple_init_profile(ppd, NULL, profile, profile_id, cm_choice->choice,
- cm_choice->text, NULL);
-
- dict_key = CFStringCreateWithFormat(kCFAllocatorDefault, NULL,
- CFSTR("%u"), profile_id);
- if (dict_key)
- {
- CFDictionarySetValue(profiles, dict_key, profile);
- CFRelease(dict_key);
- }
-
- CFRelease(profile);
-
-# else
- apple_init_profile(ppd, NULL, profile, profile_id, cm_choice->choice,
- cm_choice->text, NULL);
- profile ++;
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-
- if (cm_choice->marked)
- default_profile_id = profile_id;
- }
- }
- else
- {
- /*
- * Use the default colorspace...
- */
-
- attr = ppdFindAttr(ppd, "DefaultColorSpace", NULL);
-
- num_profiles = (attr && ppd->colorspace == PPD_CS_GRAY) ? 1 : 2;
-
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- /*
- * Add the grayscale profile first. We always have a grayscale profile.
- */
-
- profile = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
- &kCFTypeDictionaryKeyCallBacks,
- &kCFTypeDictionaryValueCallBacks);
-
- if (!profile)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate memory for color profile.");
- CFRelease(profiles);
- ppdClose(ppd);
- return;
- }
-
- profile_id = _ppdHashName("Gray..");
- apple_init_profile(ppd, NULL, profile, profile_id, "Gray", "Gray", NULL);
-
- dict_key = CFStringCreateWithFormat(kCFAllocatorDefault, NULL, CFSTR("%u"),
- profile_id);
- if (dict_key)
- {
- CFDictionarySetValue(profiles, dict_key, profile);
- CFRelease(dict_key);
- }
-
- CFRelease(profile);
-
- /*
- * Then add the RGB/CMYK/DeviceN color profile...
- */
-
- profile = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
- &kCFTypeDictionaryKeyCallBacks,
- &kCFTypeDictionaryValueCallBacks);
-
- if (!profile)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate memory for color profile.");
- CFRelease(profiles);
- ppdClose(ppd);
- return;
- }
-
- switch (ppd->colorspace)
- {
- default :
- case PPD_CS_RGB :
- case PPD_CS_CMY :
- profile_id = _ppdHashName("RGB..");
- apple_init_profile(ppd, NULL, profile, profile_id, "RGB", "RGB",
- NULL);
- break;
-
- case PPD_CS_RGBK :
- case PPD_CS_CMYK :
- profile_id = _ppdHashName("CMYK..");
- apple_init_profile(ppd, NULL, profile, profile_id, "CMYK", "CMYK",
- NULL);
- break;
-
- case PPD_CS_GRAY :
- if (attr)
- break;
-
- case PPD_CS_N :
- profile_id = _ppdHashName("DeviceN..");
- apple_init_profile(ppd, NULL, profile, profile_id, "DeviceN",
- "DeviceN", NULL);
- break;
- }
-
- if (CFDictionaryGetCount(profile) > 0)
- {
- dict_key = CFStringCreateWithFormat(kCFAllocatorDefault, NULL,
- CFSTR("%u"), profile_id);
- if (dict_key)
- {
- CFDictionarySetValue(profiles, dict_key, profile);
- CFRelease(dict_key);
- }
- }
-
- CFRelease(profile);
-
-# else
- /*
- * Create an array for the factory profiles...
- */
-
- if ((profiles = calloc(num_profiles, sizeof(CMDeviceProfileArray))) == NULL)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate memory for factory profiles.");
- ppdClose(ppd);
- return;
- }
-
- profiles->profileCount = num_profiles;
-
- /*
- * Add the grayscale profile first. We always have a grayscale profile.
- */
-
- profile_id = _ppdHashName("Gray..");
- apple_init_profile(ppd, NULL, profiles->profiles, profile_id, "Gray",
- "Gray", NULL);
-
- /*
- * Then add the RGB/CMYK/DeviceN color profile...
- */
-
- switch (ppd->colorspace)
- {
- default :
- case PPD_CS_RGB :
- case PPD_CS_CMY :
- profile_id = _ppdHashName("RGB..");
- apple_init_profile(ppd, NULL, profiles->profiles + 1, profile_id,
- "RGB", "RGB", NULL);
- break;
- case PPD_CS_RGBK :
- case PPD_CS_CMYK :
- profile_id = _ppdHashName("CMYK..");
- apple_init_profile(ppd, NULL, profiles->profiles + 1, profile_id,
- "CMYK", "CMYK", NULL);
- break;
-
- case PPD_CS_GRAY :
- if (attr)
- break;
-
- case PPD_CS_N :
- profile_id = _ppdHashName("DeviceN..");
- apple_init_profile(ppd, NULL, profiles->profiles + 1, profile_id,
- "DeviceN", "DeviceN", NULL);
- break;
- }
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
- }
-
- if (num_profiles > 0)
- {
- /*
- * Make sure we have a default profile ID...
- */
-
- if (!default_profile_id)
- default_profile_id = profile_id; /* Last profile */
-
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- dict_key = CFStringCreateWithFormat(kCFAllocatorDefault, NULL, CFSTR("%u"),
- default_profile_id);
- if (dict_key)
- {
- CFDictionarySetValue(profiles, kColorSyncDeviceDefaultProfileID,
- dict_key);
- CFRelease(dict_key);
- }
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-
- /*
- * Get the device ID hash and pathelogical name dictionary.
- */
-
- cupsdLogMessage(CUPSD_LOG_INFO, "Registering ICC color profiles for \"%s\"",
- p->name);
-
- device_id = _ppdHashName(p->name);
- device_name = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
- &kCFTypeDictionaryKeyCallBacks,
- &kCFTypeDictionaryValueCallBacks);
- printer_name = CFStringCreateWithCString(kCFAllocatorDefault,
- p->name, kCFStringEncodingUTF8);
-
- if (device_name && printer_name)
- {
- CFDictionarySetValue(device_name, CFSTR("en_US"), printer_name);
-
- /*
- * Register the device with ColorSync...
- */
-
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- CFTypeRef deviceDictKeys[] =
- { /* Device keys */
- kColorSyncDeviceDescriptions,
- kColorSyncFactoryProfiles,
- kColorSyncDeviceUserScope,
- kColorSyncDeviceHostScope
- };
- CFTypeRef deviceDictVals[] =
- { /* Device values */
- device_name,
- profiles,
- kCFPreferencesAnyUser,
- kCFPreferencesCurrentHost
- };
- CFDictionaryRef deviceDict; /* Device dictionary */
- CFUUIDRef deviceUUID; /* Device UUID */
-
- deviceDict = CFDictionaryCreate(kCFAllocatorDefault,
- (const void **)deviceDictKeys,
- (const void **)deviceDictVals,
- sizeof(deviceDictKeys) /
- sizeof(deviceDictKeys[0]),
- &kCFTypeDictionaryKeyCallBacks,
- &kCFTypeDictionaryValueCallBacks);
- deviceUUID = ColorSyncCreateUUIDFromUInt32(device_id);
-
- if (!deviceDict || !deviceUUID ||
- !ColorSyncRegisterDevice(kColorSyncPrinterDeviceClass, deviceUUID,
- deviceDict))
- error = 1001;
-
- if (deviceUUID)
- CFRelease(deviceUUID);
-
- if (deviceDict)
- CFRelease(deviceDict);
-
-# else
- error = CMRegisterColorDevice(cmPrinterDeviceClass, device_id,
- device_name, &scope);
-
- /*
- * Register the profiles...
- */
-
- if (error == noErr)
- error = CMSetDeviceFactoryProfiles(cmPrinterDeviceClass, device_id,
- default_profile_id, profiles);
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
- }
- else
- error = 1000;
-
- /*
- * Clean up...
- */
-
- if (error != noErr)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to register ICC color profiles for \"%s\": %d",
- p->name, (int)error);
-
- if (printer_name)
- CFRelease(printer_name);
-
- if (device_name)
- CFRelease(device_name);
- }
-
- /*
- * Free any memory we used...
- */
-
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- CFRelease(profiles);
-
-# else
- if (num_profiles > 0)
- {
- for (profile = profiles->profiles;
- num_profiles > 0;
- profile ++, num_profiles --)
- CFRelease(profile->profileName);
-
- free(profiles);
- }
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-
- ppdClose(ppd);
-}
-
-
-/*
- * 'apple_unregister_profiles()' - Remove color profiles for the specified
- * printer.
- */
-
-static void
-apple_unregister_profiles(
- cupsd_printer_t *p) /* I - Printer */
-{
- /*
- * Make sure ColorSync is available...
- */
-
-# ifdef HAVE_COLORSYNCREGISTERDEVICE
- if (ColorSyncUnregisterDevice != NULL)
- {
- /*
- * Because we may have registered the printer profiles using a prior device
- * ID-based UUID, remove both the old style UUID and current UUID for the
- * printer.
- */
-
- CFUUIDRef deviceUUID; /* Device UUID */
-
- deviceUUID = ColorSyncCreateUUIDFromUInt32(_ppdHashName(p->name));
- if (deviceUUID)
- {
- ColorSyncUnregisterDevice(kColorSyncPrinterDeviceClass, deviceUUID);
- CFRelease(deviceUUID);
- }
- }
-
-# else
- if (CMUnregisterColorDevice != NULL)
- CMUnregisterColorDevice(cmPrinterDeviceClass, _ppdHashName(p->name));
-# endif /* HAVE_COLORSYNCREGISTERDEVICE */
-}
-#endif /* __APPLE__ */
-
-
/*
* 'apply_printer_defaults()' - Apply printer default options to a job.
*/
@@ -5042,8 +3955,6 @@ close_job(cupsd_client_t *con, /* I - Client connection */
ippAddInteger(con->response, IPP_TAG_JOB, IPP_TAG_ENUM, "job-state",
job->state_value);
- add_job_state_reasons(con, job);
-
con->response->request.status.status_code = IPP_OK;
/*
@@ -5055,192 +3966,6 @@ close_job(cupsd_client_t *con, /* I - Client connection */
/*
- * 'copy_attribute()' - Copy a single attribute.
- */
-
-static ipp_attribute_t * /* O - New attribute */
-copy_attribute(
- ipp_t *to, /* O - Destination request/response */
- ipp_attribute_t *attr, /* I - Attribute to copy */
- int quickcopy) /* I - Do a quick copy? */
-{
- int i; /* Looping var */
- ipp_attribute_t *toattr; /* Destination attribute */
-
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "copy_attribute(%p, %p[%s,%x,%x])", to, attr,
- attr->name ? attr->name : "(null)", attr->group_tag,
- attr->value_tag);
-
- switch (attr->value_tag & ~IPP_TAG_COPY)
- {
- case IPP_TAG_ZERO :
- toattr = ippAddSeparator(to);
- break;
-
- case IPP_TAG_INTEGER :
- case IPP_TAG_ENUM :
- toattr = ippAddIntegers(to, attr->group_tag, attr->value_tag,
- attr->name, attr->num_values, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- toattr->values[i].integer = attr->values[i].integer;
- break;
-
- case IPP_TAG_BOOLEAN :
- toattr = ippAddBooleans(to, attr->group_tag, attr->name,
- attr->num_values, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- toattr->values[i].boolean = attr->values[i].boolean;
- break;
-
- case IPP_TAG_STRING :
- case IPP_TAG_TEXT :
- case IPP_TAG_NAME :
- case IPP_TAG_KEYWORD :
- case IPP_TAG_URI :
- case IPP_TAG_URISCHEME :
- case IPP_TAG_CHARSET :
- case IPP_TAG_LANGUAGE :
- case IPP_TAG_MIMETYPE :
- toattr = ippAddStrings(to, attr->group_tag,
- (ipp_tag_t)(attr->value_tag | quickcopy),
- attr->name, attr->num_values, NULL, NULL);
-
- if (quickcopy)
- {
- for (i = 0; i < attr->num_values; i ++)
- toattr->values[i].string.text = attr->values[i].string.text;
- }
- else if (attr->value_tag & IPP_TAG_COPY)
- {
- for (i = 0; i < attr->num_values; i ++)
- toattr->values[i].string.text =
- _cupsStrAlloc(attr->values[i].string.text);
- }
- else
- {
- for (i = 0; i < attr->num_values; i ++)
- toattr->values[i].string.text =
- _cupsStrRetain(attr->values[i].string.text);
- }
- break;
-
- case IPP_TAG_DATE :
- toattr = ippAddDate(to, attr->group_tag, attr->name,
- attr->values[0].date);
- break;
-
- case IPP_TAG_RESOLUTION :
- toattr = ippAddResolutions(to, attr->group_tag, attr->name,
- attr->num_values, IPP_RES_PER_INCH,
- NULL, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- {
- toattr->values[i].resolution.xres = attr->values[i].resolution.xres;
- toattr->values[i].resolution.yres = attr->values[i].resolution.yres;
- toattr->values[i].resolution.units = attr->values[i].resolution.units;
- }
- break;
-
- case IPP_TAG_RANGE :
- toattr = ippAddRanges(to, attr->group_tag, attr->name,
- attr->num_values, NULL, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- {
- toattr->values[i].range.lower = attr->values[i].range.lower;
- toattr->values[i].range.upper = attr->values[i].range.upper;
- }
- break;
-
- case IPP_TAG_TEXTLANG :
- case IPP_TAG_NAMELANG :
- toattr = ippAddStrings(to, attr->group_tag,
- (ipp_tag_t)(attr->value_tag | quickcopy),
- attr->name, attr->num_values, NULL, NULL);
-
- if (quickcopy)
- {
- for (i = 0; i < attr->num_values; i ++)
- {
- toattr->values[i].string.charset = attr->values[i].string.charset;
- toattr->values[i].string.text = attr->values[i].string.text;
- }
- }
- else if (attr->value_tag & IPP_TAG_COPY)
- {
- for (i = 0; i < attr->num_values; i ++)
- {
- if (!i)
- toattr->values[i].string.charset =
- _cupsStrAlloc(attr->values[i].string.charset);
- else
- toattr->values[i].string.charset =
- toattr->values[0].string.charset;
-
- toattr->values[i].string.text =
- _cupsStrAlloc(attr->values[i].string.text);
- }
- }
- else
- {
- for (i = 0; i < attr->num_values; i ++)
- {
- if (!i)
- toattr->values[i].string.charset =
- _cupsStrRetain(attr->values[i].string.charset);
- else
- toattr->values[i].string.charset =
- toattr->values[0].string.charset;
-
- toattr->values[i].string.text =
- _cupsStrRetain(attr->values[i].string.text);
- }
- }
- break;
-
- case IPP_TAG_BEGIN_COLLECTION :
- toattr = ippAddCollections(to, attr->group_tag, attr->name,
- attr->num_values, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- {
- toattr->values[i].collection = attr->values[i].collection;
- attr->values[i].collection->use ++;
- }
- break;
-
- default :
- toattr = ippAddIntegers(to, attr->group_tag, attr->value_tag,
- attr->name, attr->num_values, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- {
- toattr->values[i].unknown.length = attr->values[i].unknown.length;
-
- if (toattr->values[i].unknown.length > 0)
- {
- if ((toattr->values[i].unknown.data =
- malloc(toattr->values[i].unknown.length)) == NULL)
- toattr->values[i].unknown.length = 0;
- else
- memcpy(toattr->values[i].unknown.data,
- attr->values[i].unknown.data,
- toattr->values[i].unknown.length);
- }
- }
- break; /* anti-compiler-warning-code */
- }
-
- return (toattr);
-}
-
-
-/*
* 'copy_attrs()' - Copy attributes from one request to another.
*/
@@ -5307,7 +4032,7 @@ copy_attrs(ipp_t *to, /* I - Destination request */
!strcmp(fromattr->name, "media-col-database")))
continue;
- copy_attribute(to, fromattr, quickcopy);
+ ippCopyAttribute(to, fromattr, quickcopy);
}
}
}
@@ -5528,7 +4253,7 @@ copy_banner(cupsd_client_t *con, /* I - Client connection */
cupsFilePrintf(out, "%dx%d%s", attr->values[i].resolution.xres,
attr->values[i].resolution.yres,
attr->values[i].resolution.units == IPP_RES_PER_INCH ?
- "dpi" : "dpc");
+ "dpi" : "dpcm");
break;
case IPP_TAG_URI :
@@ -5791,11 +4516,22 @@ copy_model(cupsd_client_t *con, /* I - Client connection */
}
/*
+ * Open the source file for a copy...
+ */
+
+ if ((src = cupsFileOpen(tempfile, "rb")) == NULL)
+ {
+ unlink(tempfile);
+ return (-1);
+ }
+
+ /*
* Read the source file and see what page sizes are supported...
*/
- if ((ppd = ppdOpenFile(tempfile)) == NULL)
+ if ((ppd = _ppdOpen(src, _PPD_LOCALIZATION_NONE)) == NULL)
{
+ cupsFileClose(src);
unlink(tempfile);
return (-1);
}
@@ -5863,17 +4599,6 @@ copy_model(cupsd_client_t *con, /* I - Client connection */
ppdClose(ppd);
/*
- * Open the source file for a copy...
- */
-
- if ((src = cupsFileOpen(tempfile, "rb")) == NULL)
- {
- cupsFreeOptions(num_defaults, defaults);
- unlink(tempfile);
- return (-1);
- }
-
- /*
* Open the destination file for a copy...
*/
@@ -5889,6 +4614,8 @@ copy_model(cupsd_client_t *con, /* I - Client connection */
* Copy the source file to the destination...
*/
+ cupsFileRewind(src);
+
while (cupsFileGets(src, buffer, sizeof(buffer)))
{
if (!strncmp(buffer, "*Default", 8))
@@ -5953,10 +4680,10 @@ copy_job_attrs(cupsd_client_t *con, /* I - Client connection */
if (!cupsArrayFind(exclude, "all"))
{
- if ((!exclude || !cupsArrayFind(exclude, "document-count")) &&
- (!ra || cupsArrayFind(ra, "document-count")))
+ if ((!exclude || !cupsArrayFind(exclude, "number-of-documents")) &&
+ (!ra || cupsArrayFind(ra, "number-of-documents")))
ippAddInteger(con->response, IPP_TAG_JOB, IPP_TAG_INTEGER,
- "document-count", job->num_files);
+ "number-of-documents", job->num_files);
if ((!exclude || !cupsArrayFind(exclude, "job-media-progress")) &&
(!ra || cupsArrayFind(ra, "job-media-progress")))
@@ -5989,16 +4716,13 @@ copy_job_attrs(cupsd_client_t *con, /* I - Client connection */
{
httpAssembleURIf(HTTP_URI_CODING_ALL, job_uri, sizeof(job_uri), "ipp", NULL,
con->servername, con->serverport,
- job->dtype & (CUPS_PRINTER_IMPLICIT | CUPS_PRINTER_CLASS) ?
- "/classes/%s" : "/printers/%s",
+ (job->dtype & CUPS_PRINTER_CLASS) ? "/classes/%s" :
+ "/printers/%s",
job->dest);
ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_URI,
"job-printer-uri", NULL, job_uri);
}
- if (!ra || cupsArrayFind(ra, "job-state-reasons"))
- add_job_state_reasons(con, job);
-
if (!ra || cupsArrayFind(ra, "job-uri"))
{
httpAssembleURIf(HTTP_URI_CODING_ALL, job_uri, sizeof(job_uri), "ipp", NULL,
@@ -6115,7 +4839,7 @@ copy_printer_attrs(
"stop-printer"
};
- if (printer->type & (CUPS_PRINTER_IMPLICIT | CUPS_PRINTER_CLASS))
+ if (printer->type & CUPS_PRINTER_CLASS)
ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME | IPP_TAG_COPY,
"printer-error-policy-supported", NULL, "retry-current-job");
else
@@ -6142,8 +4866,7 @@ copy_printer_attrs(
ippAddBoolean(con->response, IPP_TAG_PRINTER, "printer-is-shared",
printer->shared);
- if ((!ra || cupsArrayFind(ra, "printer-more-info")) &&
- !(printer->type & CUPS_PRINTER_DISCOVERED))
+ if (!ra || cupsArrayFind(ra, "printer-more-info"))
{
httpAssembleURIf(HTTP_URI_CODING_ALL, printer_uri, sizeof(printer_uri),
"http", NULL, con->servername, con->serverport,
@@ -6199,8 +4922,7 @@ copy_printer_attrs(
ippAddInteger(con->response, IPP_TAG_PRINTER, IPP_TAG_INTEGER,
"printer-up-time", curtime);
- if ((!ra || cupsArrayFind(ra, "printer-uri-supported")) &&
- !(printer->type & CUPS_PRINTER_DISCOVERED))
+ if (!ra || cupsArrayFind(ra, "printer-uri-supported"))
{
httpAssembleURIf(HTTP_URI_CODING_ALL, printer_uri, sizeof(printer_uri),
"ipp", NULL, con->servername, con->serverport,
@@ -6350,8 +5072,16 @@ static void
create_job(cupsd_client_t *con, /* I - Client connection */
ipp_attribute_t *uri) /* I - Printer URI */
{
+ int i; /* Looping var */
cupsd_printer_t *printer; /* Printer */
cupsd_job_t *job; /* New job */
+ static const char * const forbidden_attrs[] =
+ { /* List of forbidden attributes */
+ "compression",
+ "document-format",
+ "document-name",
+ "document-natural-language"
+ };
cupsdLogMessage(CUPSD_LOG_DEBUG2, "create_job(%p[%d], %s)", con,
@@ -6373,6 +5103,29 @@ create_job(cupsd_client_t *con, /* I - Client connection */
}
/*
+ * Check for invalid Create-Job attributes and log a warning or error depending
+ * on whether cupsd is running in "strict conformance" mode...
+ */
+
+ for (i = 0;
+ i < (int)(sizeof(forbidden_attrs) / sizeof(forbidden_attrs[0]));
+ i ++)
+ if (ippFindAttribute(con->request, forbidden_attrs[i], IPP_TAG_ZERO))
+ {
+ if (StrictConformance)
+ {
+ send_ipp_status(con, IPP_BAD_REQUEST,
+ _("The '%s' operation attribute cannot be supplied in a "
+ "Create-Job request."), forbidden_attrs[i]);
+ return;
+ }
+
+ cupsdLogMessage(CUPSD_LOG_WARN,
+ "Unexpected '%s' operation attribute in a Create-Job "
+ "request.", forbidden_attrs[i]);
+ }
+
+ /*
* Create the job object...
*/
@@ -6432,6 +5185,7 @@ create_requested_array(ipp_t *request) /* I - IPP request */
if (!strcmp(value, "job-template"))
{
+ /* Only includes the set of Job Template attributes supported by CUPS */
cupsArrayAdd(ra, "copies");
cupsArrayAdd(ra, "copies-default");
cupsArrayAdd(ra, "copies-supported");
@@ -6448,6 +5202,8 @@ create_requested_array(ipp_t *request) /* I - IPP request */
cupsArrayAdd(ra, "job-sheets-default");
cupsArrayAdd(ra, "job-sheets-supported");
cupsArrayAdd(ra, "media");
+ cupsArrayAdd(ra, "media-col");
+ cupsArrayAdd(ra, "media-col-default");
cupsArrayAdd(ra, "media-default");
cupsArrayAdd(ra, "media-supported");
cupsArrayAdd(ra, "multiple-document-handling");
@@ -6455,24 +5211,49 @@ create_requested_array(ipp_t *request) /* I - IPP request */
cupsArrayAdd(ra, "multiple-document-handling-supported");
cupsArrayAdd(ra, "number-up");
cupsArrayAdd(ra, "number-up-default");
+ cupsArrayAdd(ra, "number-up-layout");
+ cupsArrayAdd(ra, "number-up-layout-default");
+ cupsArrayAdd(ra, "number-up-layout-supported");
cupsArrayAdd(ra, "number-up-supported");
cupsArrayAdd(ra, "orientation-requested");
cupsArrayAdd(ra, "orientation-requested-default");
cupsArrayAdd(ra, "orientation-requested-supported");
+ cupsArrayAdd(ra, "output-bin");
+ cupsArrayAdd(ra, "output-bin-default");
+ cupsArrayAdd(ra, "output-bin-supported");
+ cupsArrayAdd(ra, "page-delivery");
+ cupsArrayAdd(ra, "page-delivery-default");
+ cupsArrayAdd(ra, "page-delivery-supported");
+ cupsArrayAdd(ra, "page-order-received");
+ cupsArrayAdd(ra, "page-order-received-default");
+ cupsArrayAdd(ra, "page-order-received-supported");
cupsArrayAdd(ra, "page-ranges");
cupsArrayAdd(ra, "page-ranges-supported");
- cupsArrayAdd(ra, "printer-resolution");
- cupsArrayAdd(ra, "printer-resolution-default");
- cupsArrayAdd(ra, "printer-resolution-supported");
+ cupsArrayAdd(ra, "presentation-direction-number-up");
+ cupsArrayAdd(ra, "presentation-direction-number-up-default");
+ cupsArrayAdd(ra, "presentation-direction-number-up-supported");
+ cupsArrayAdd(ra, "print-color-mode");
+ cupsArrayAdd(ra, "print-color-mode-default");
+ cupsArrayAdd(ra, "print-color-mode-supported");
+ cupsArrayAdd(ra, "print-content-optimize");
+ cupsArrayAdd(ra, "print-content-optimize-default");
+ cupsArrayAdd(ra, "print-content-optimize-supported");
cupsArrayAdd(ra, "print-quality");
cupsArrayAdd(ra, "print-quality-default");
cupsArrayAdd(ra, "print-quality-supported");
+ cupsArrayAdd(ra, "printer-resolution");
+ cupsArrayAdd(ra, "printer-resolution-default");
+ cupsArrayAdd(ra, "printer-resolution-supported");
+ cupsArrayAdd(ra, "sheet-collate");
+ cupsArrayAdd(ra, "sheet-collate-default");
+ cupsArrayAdd(ra, "sheet-collate-supported");
cupsArrayAdd(ra, "sides");
cupsArrayAdd(ra, "sides-default");
cupsArrayAdd(ra, "sides-supported");
}
else if (!strcmp(value, "job-description"))
{
+ /* Only includes the set of Job Description attributes supported by CUPS */
cupsArrayAdd(ra, "date-time-at-completed");
cupsArrayAdd(ra, "date-time-at-creation");
cupsArrayAdd(ra, "date-time-at-processing");
@@ -6483,6 +5264,7 @@ create_requested_array(ipp_t *request) /* I - IPP request */
cupsArrayAdd(ra, "job-impressions-completed");
cupsArrayAdd(ra, "job-k-octets");
cupsArrayAdd(ra, "job-k-octets-processed");
+ cupsArrayAdd(ra, "job-mandatory-attributes");
cupsArrayAdd(ra, "job-media-progress");
cupsArrayAdd(ra, "job-media-sheets");
cupsArrayAdd(ra, "job-media-sheets-completed");
@@ -6505,6 +5287,7 @@ create_requested_array(ipp_t *request) /* I - IPP request */
}
else if (!strcmp(value, "printer-description"))
{
+ /* Only includes the set of Printer Description attributes supported by CUPS */
cupsArrayAdd(ra, "charset-configured");
cupsArrayAdd(ra, "charset-supported");
cupsArrayAdd(ra, "color-supported");
@@ -6513,43 +5296,54 @@ create_requested_array(ipp_t *request) /* I - IPP request */
cupsArrayAdd(ra, "document-format-supported");
cupsArrayAdd(ra, "generated-natural-language-supported");
cupsArrayAdd(ra, "ipp-versions-supported");
+ cupsArrayAdd(ra, "job-creation-attributes-supported");
+ cupsArrayAdd(ra, "job-ids-supported");
cupsArrayAdd(ra, "job-impressions-supported");
cupsArrayAdd(ra, "job-k-octets-supported");
cupsArrayAdd(ra, "job-media-sheets-supported");
cupsArrayAdd(ra, "job-settable-attributes-supported");
+ cupsArrayAdd(ra, "jpeg-k-octets-supported");
+ cupsArrayAdd(ra, "jpeg-x-dimension-supported");
+ cupsArrayAdd(ra, "jpeg-y-dimension-supported");
+ cupsArrayAdd(ra, "media-bottom-margin-supported");
+ cupsArrayAdd(ra, "media-col-supported");
+ cupsArrayAdd(ra, "media-key-supported");
+ cupsArrayAdd(ra, "media-left-margin-supported");
+ cupsArrayAdd(ra, "media-right-margin-supported");
+ cupsArrayAdd(ra, "media-size-supported");
+ cupsArrayAdd(ra, "media-source-supported");
+ cupsArrayAdd(ra, "media-top-margin-supported");
+ cupsArrayAdd(ra, "media-type-supported");
cupsArrayAdd(ra, "multiple-document-jobs-supported");
cupsArrayAdd(ra, "multiple-operation-time-out");
cupsArrayAdd(ra, "natural-language-configured");
- cupsArrayAdd(ra, "notify-attributes-supported");
- cupsArrayAdd(ra, "notify-lease-duration-default");
- cupsArrayAdd(ra, "notify-lease-duration-supported");
cupsArrayAdd(ra, "notify-max-events-supported");
- cupsArrayAdd(ra, "notify-events-default");
- cupsArrayAdd(ra, "notify-events-supported");
- cupsArrayAdd(ra, "notify-pull-method-supported");
cupsArrayAdd(ra, "notify-schemes-supported");
cupsArrayAdd(ra, "operations-supported");
cupsArrayAdd(ra, "pages-per-minute");
cupsArrayAdd(ra, "pages-per-minute-color");
+ cupsArrayAdd(ra, "pdf-k-octets-supported");
cupsArrayAdd(ra, "pdl-override-supported");
cupsArrayAdd(ra, "printer-alert");
cupsArrayAdd(ra, "printer-alert-description");
cupsArrayAdd(ra, "printer-commands");
cupsArrayAdd(ra, "printer-current-time");
- cupsArrayAdd(ra, "printer-driver-installer");
cupsArrayAdd(ra, "printer-dns-sd-name");
cupsArrayAdd(ra, "printer-info");
cupsArrayAdd(ra, "printer-is-accepting-jobs");
+ cupsArrayAdd(ra, "printer-is-shared");
cupsArrayAdd(ra, "printer-location");
cupsArrayAdd(ra, "printer-make-and-model");
cupsArrayAdd(ra, "printer-message-from-operator");
cupsArrayAdd(ra, "printer-more-info");
cupsArrayAdd(ra, "printer-more-info-manufacturer");
cupsArrayAdd(ra, "printer-name");
+ cupsArrayAdd(ra, "printer-settable-attributes-supported");
cupsArrayAdd(ra, "printer-state");
+ cupsArrayAdd(ra, "printer-state-change-date-time");
+ cupsArrayAdd(ra, "printer-state-change-time");
cupsArrayAdd(ra, "printer-state-message");
cupsArrayAdd(ra, "printer-state-reasons");
- cupsArrayAdd(ra, "printer-settable-attributes-supported");
cupsArrayAdd(ra, "printer-type");
cupsArrayAdd(ra, "printer-up-time");
cupsArrayAdd(ra, "printer-uri-supported");
@@ -6557,6 +5351,7 @@ create_requested_array(ipp_t *request) /* I - IPP request */
cupsArrayAdd(ra, "reference-uri-schemes-supported");
cupsArrayAdd(ra, "uri-authentication-supported");
cupsArrayAdd(ra, "uri-security-supported");
+ cupsArrayAdd(ra, "which-jobs-supported");
}
else if (!strcmp(value, "printer-defaults"))
{
@@ -6568,14 +5363,32 @@ create_requested_array(ipp_t *request) /* I - IPP request */
name = (char *)cupsArrayNext(CommonDefaults))
cupsArrayAdd(ra, name);
}
+ else if (!strcmp(value, "subscription-description"))
+ {
+ /* Only includes the set of Subscription Description attributes supported by CUPS */
+ cupsArrayAdd(ra, "notify-job-id");
+ cupsArrayAdd(ra, "notify-lease-expiration-time");
+ cupsArrayAdd(ra, "notify-printer-up-time");
+ cupsArrayAdd(ra, "notify-printer-uri");
+ cupsArrayAdd(ra, "notify-sequence-number");
+ cupsArrayAdd(ra, "notify-subscriber-user-name");
+ cupsArrayAdd(ra, "notify-subscription-id");
+ }
else if (!strcmp(value, "subscription-template"))
{
+ /* Only includes the set of Subscription Template attributes supported by CUPS */
cupsArrayAdd(ra, "notify-attributes");
+ cupsArrayAdd(ra, "notify-attributes-supported");
cupsArrayAdd(ra, "notify-charset");
cupsArrayAdd(ra, "notify-events");
+ cupsArrayAdd(ra, "notify-events-default");
+ cupsArrayAdd(ra, "notify-events-supported");
cupsArrayAdd(ra, "notify-lease-duration");
+ cupsArrayAdd(ra, "notify-lease-duration-default");
+ cupsArrayAdd(ra, "notify-lease-duration-supported");
cupsArrayAdd(ra, "notify-natural-language");
cupsArrayAdd(ra, "notify-pull-method");
+ cupsArrayAdd(ra, "notify-pull-method-supported");
cupsArrayAdd(ra, "notify-recipient-uri");
cupsArrayAdd(ra, "notify-time-interval");
cupsArrayAdd(ra, "notify-user-data");
@@ -7034,13 +5847,11 @@ delete_printer(cupsd_client_t *con, /* I - Client connection */
snprintf(filename, sizeof(filename), "%s/%s.data", CacheDir, printer->name);
unlink(filename);
-#ifdef __APPLE__
/*
* Unregister color profiles...
*/
- apple_unregister_profiles(printer);
-#endif /* __APPLE__ */
+ cupsdUnregisterColor(printer);
if (dtype & CUPS_PRINTER_CLASS)
{
@@ -8062,11 +6873,10 @@ get_ppd(cupsd_client_t *con, /* I - Client connection */
"printer-uri", NULL, dest->uri);
return;
}
- else if (dtype & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT))
+ else if (dtype & CUPS_PRINTER_CLASS)
{
for (i = 0; i < dest->num_printers; i ++)
- if (!(dest->printers[i]->type &
- (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT)))
+ if (!(dest->printers[i]->type & CUPS_PRINTER_CLASS))
{
snprintf(filename, sizeof(filename), "%s/ppd/%s.ppd", ServerRoot,
dest->printers[i]->name);
@@ -8514,15 +7324,6 @@ get_printers(cupsd_client_t *con, /* I - Client connection */
(printer->location && !_cups_strcasecmp(printer->location, location))))
{
/*
- * If HideImplicitMembers is enabled, see if this printer or class
- * is a member of an implicit class...
- */
-
- if (ImplicitClasses && HideImplicitMembers &&
- printer->in_implicit_class)
- continue;
-
- /*
* If a username is specified, see if it is allowed or denied
* access...
*/
@@ -9747,14 +8548,14 @@ read_job_ticket(cupsd_client_t *con) /* I - Client connection */
if (con->request->last == attr2)
con->request->last = prev2;
- _ippFreeAttr(attr2);
+ ippDeleteAttribute(NULL, attr2);
}
/*
* Add new option by copying it...
*/
- copy_attribute(con->request, attr, 0);
+ ippCopyAttribute(con->request, attr, 0);
}
/*
@@ -10035,6 +8836,7 @@ release_job(cupsd_client_t *con, /* I - Client connection */
cupsdAddEvent(CUPSD_EVENT_JOB_CONFIG_CHANGED, cupsdFindDest(job->dest), job,
"Job job-hold-until value changed by user.");
+ ippSetString(job->attrs, &job->reasons, 0, "none");
}
/*
@@ -10804,6 +9606,8 @@ send_document(cupsd_client_t *con, /* I - Client connection */
{
job->state->values[0].integer = IPP_JOB_PENDING;
job->state_value = IPP_JOB_PENDING;
+
+ ippSetString(job->attrs, &job->reasons, 0, "none");
}
else if (job->state_value == IPP_JOB_HELD)
{
@@ -10815,7 +9619,11 @@ send_document(cupsd_client_t *con, /* I - Client connection */
{
job->state->values[0].integer = IPP_JOB_PENDING;
job->state_value = IPP_JOB_PENDING;
+
+ ippSetString(job->attrs, &job->reasons, 0, "none");
}
+ else
+ ippSetString(job->attrs, &job->reasons, 0, "job-hold-until-specified");
}
job->dirty = 1;
@@ -10834,8 +9642,10 @@ send_document(cupsd_client_t *con, /* I - Client connection */
job->state->values[0].integer = IPP_JOB_HELD;
job->state_value = IPP_JOB_HELD;
job->hold_until = time(NULL) + MultipleOperationTimeout;
- job->dirty = 1;
+ ippSetString(job->attrs, &job->reasons, 0, "job-incoming");
+
+ job->dirty = 1;
cupsdMarkDirty(CUPSD_DIRTY_JOBS);
}
@@ -10855,7 +9665,8 @@ send_document(cupsd_client_t *con, /* I - Client connection */
ippAddInteger(con->response, IPP_TAG_JOB, IPP_TAG_ENUM, "job-state",
job->state_value);
- add_job_state_reasons(con, job);
+ ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_KEYWORD, "job-state-reasons",
+ NULL, job->reasons->values[0].string.text);
con->response->request.status.status_code = IPP_OK;
@@ -10940,7 +9751,7 @@ send_http_error(
if (auth)
{
if (auth->type == CUPSD_AUTH_DEFAULT)
- auth_type = DefaultAuthType;
+ auth_type = cupsdDefaultAuthType();
else
auth_type = auth->type;
}
@@ -11055,7 +9866,7 @@ set_default(cupsd_client_t *con, /* I - Client connection */
"%s is now the default printer.", printer->name);
cupsdMarkDirty(CUPSD_DIRTY_PRINTERS | CUPSD_DIRTY_CLASSES |
- CUPSD_DIRTY_REMOTE | CUPSD_DIRTY_PRINTCAP);
+ CUPSD_DIRTY_PRINTCAP);
cupsdLogMessage(CUPSD_LOG_INFO,
"Default destination set to \"%s\" by \"%s\".",
@@ -11233,9 +10044,8 @@ set_job_attrs(cupsd_client_t *con, /* I - Client connection */
send_ipp_status(con, IPP_ATTRIBUTES_NOT_SETTABLE,
_("%s cannot be changed."), attr->name);
- if ((attr2 = copy_attribute(con->response, attr, 0)) != NULL)
- attr2->group_tag = IPP_TAG_UNSUPPORTED_GROUP;
-
+ attr2 = ippCopyAttribute(con->response, attr, 0);
+ ippSetGroupTag(con->response, &attr2, IPP_TAG_UNSUPPORTED_GROUP);
continue;
}
@@ -11249,8 +10059,8 @@ set_job_attrs(cupsd_client_t *con, /* I - Client connection */
{
send_ipp_status(con, IPP_REQUEST_VALUE, _("Bad job-priority value."));
- if ((attr2 = copy_attribute(con->response, attr, 0)) != NULL)
- attr2->group_tag = IPP_TAG_UNSUPPORTED_GROUP;
+ attr2 = ippCopyAttribute(con->response, attr, 0);
+ ippSetGroupTag(con->response, &attr2, IPP_TAG_UNSUPPORTED_GROUP);
}
else if (job->state_value >= IPP_JOB_PROCESSING)
{
@@ -11279,8 +10089,8 @@ set_job_attrs(cupsd_client_t *con, /* I - Client connection */
{
send_ipp_status(con, IPP_REQUEST_VALUE, _("Bad job-state value."));
- if ((attr2 = copy_attribute(con->response, attr, 0)) != NULL)
- attr2->group_tag = IPP_TAG_UNSUPPORTED_GROUP;
+ attr2 = ippCopyAttribute(con->response, attr, 0);
+ ippSetGroupTag(con->response, &attr2, IPP_TAG_UNSUPPORTED_GROUP);
}
else
{
@@ -11354,13 +10164,13 @@ set_job_attrs(cupsd_client_t *con, /* I - Client connection */
if (job->attrs->last == attr2)
job->attrs->last = job->attrs->prev;
- _ippFreeAttr(attr2);
+ ippDeleteAttribute(NULL, attr2);
/*
* Then copy the attribute...
*/
- copy_attribute(job->attrs, attr, 0);
+ ippCopyAttribute(job->attrs, attr, 0);
/*
* See if the job-name or job-hold-until is being changed.
@@ -11401,7 +10211,7 @@ set_job_attrs(cupsd_client_t *con, /* I - Client connection */
if (attr2 == job->attrs->last)
job->attrs->last = job->attrs->prev;
- _ippFreeAttr(attr2);
+ ippDeleteAttribute(NULL, attr2);
event |= CUPSD_EVENT_JOB_CONFIG_CHANGED;
}
@@ -11412,7 +10222,7 @@ set_job_attrs(cupsd_client_t *con, /* I - Client connection */
* Add new option by copying it...
*/
- copy_attribute(job->attrs, attr, 0);
+ ippCopyAttribute(job->attrs, attr, 0);
event |= CUPSD_EVENT_JOB_CONFIG_CHANGED;
}
@@ -11677,7 +10487,7 @@ set_printer_defaults(
continue;
if (strcmp(attr->values[0].string.text, "retry-current-job") &&
- ((printer->type & (CUPS_PRINTER_IMPLICIT | CUPS_PRINTER_CLASS)) ||
+ ((printer->type & CUPS_PRINTER_CLASS) ||
(strcmp(attr->values[0].string.text, "abort-job") &&
strcmp(attr->values[0].string.text, "retry-job") &&
strcmp(attr->values[0].string.text, "stop-printer"))))
@@ -11767,7 +10577,7 @@ set_printer_defaults(
sprintf(value, "%dx%d%s", attr->values[0].resolution.xres,
attr->values[0].resolution.yres,
attr->values[0].resolution.units == IPP_RES_PER_INCH ?
- "dpi" : "dpc");
+ "dpi" : "dpcm");
printer->num_options = cupsAddOption(name, value,
printer->num_options,
&(printer->options));
@@ -12299,5 +11109,5 @@ validate_user(cupsd_job_t *job, /* I - Job */
/*
- * End of "$Id: ipp.c 10274 2012-02-13 20:42:51Z mike $".
+ * End of "$Id: ipp.c 10490 2012-05-21 17:40:22Z mike $".
*/
diff --git a/scheduler/job.c b/scheduler/job.c
index 92e19554..73a3a3ab 100644
--- a/scheduler/job.c
+++ b/scheduler/job.c
@@ -1,5 +1,5 @@
/*
- * "$Id: job.c 10420 2012-04-20 03:01:06Z mike $"
+ * "$Id: job.c 10502 2012-05-23 01:36:50Z mike $"
*
* Job management routines for the CUPS scheduler.
*
@@ -14,54 +14,58 @@
*
* Contents:
*
- * cupsdAddJob() - Add a new job to the job queue.
- * cupsdCancelJobs() - Cancel all jobs for the given
- * destination/user.
- * cupsdCheckJobs() - Check the pending jobs and start any if the
- * destination is available.
- * cupsdCleanJobs() - Clean out old jobs.
- * cupsdContinueJob() - Continue printing with the next file in a job.
- * cupsdDeleteJob() - Free all memory used by a job.
- * cupsdFreeAllJobs() - Free all jobs from memory.
- * cupsdFindJob() - Find the specified job.
- * cupsdGetPrinterJobCount() - Get the number of pending, processing, or held
- * jobs in a printer or class.
- * cupsdGetUserJobCount() - Get the number of pending, processing, or held
- * jobs for a user.
- * cupsdLoadAllJobs() - Load all jobs from disk.
- * cupsdLoadJob() - Load a single job.
- * cupsdMoveJob() - Move the specified job to a different
- * destination.
- * cupsdReleaseJob() - Release the specified job.
- * cupsdRestartJob() - Restart the specified job.
- * cupsdSaveAllJobs() - Save a summary of all jobs to disk.
- * cupsdSaveJob() - Save a job to disk.
- * cupsdSetJobHoldUntil() - Set the hold time for a job.
- * cupsdSetJobPriority() - Set the priority of a job, moving it up/down
- * in the list as needed.
- * cupsdSetJobState() - Set the state of the specified print job.
- * cupsdStopAllJobs() - Stop all print jobs.
+ * cupsdAddJob() - Add a new job to the job queue.
+ * cupsdCancelJobs() - Cancel all jobs for the given
+ * destination/user.
+ * cupsdCheckJobs() - Check the pending jobs and start any if the
+ * destination is available.
+ * cupsdCleanJobs() - Clean out old jobs.
+ * cupsdContinueJob() - Continue printing with the next file in a
+ * job.
+ * cupsdDeleteJob() - Free all memory used by a job.
+ * cupsdFreeAllJobs() - Free all jobs from memory.
+ * cupsdFindJob() - Find the specified job.
+ * cupsdGetPrinterJobCount() - Get the number of pending, processing, or
+ * held jobs in a printer or class.
+ * cupsdGetUserJobCount() - Get the number of pending, processing, or
+ * held jobs for a user.
+ * cupsdLoadAllJobs() - Load all jobs from disk.
+ * cupsdLoadJob() - Load a single job.
+ * cupsdMoveJob() - Move the specified job to a different
+ * destination.
+ * cupsdReleaseJob() - Release the specified job.
+ * cupsdRestartJob() - Restart the specified job.
+ * cupsdSaveAllJobs() - Save a summary of all jobs to disk.
+ * cupsdSaveJob() - Save a job to disk.
+ * cupsdSetJobHoldUntil() - Set the hold time for a job.
+ * cupsdSetJobPriority() - Set the priority of a job, moving it up/down
+ * in the list as needed.
+ * cupsdSetJobState() - Set the state of the specified print job.
+ * cupsdStopAllJobs() - Stop all print jobs.
* cupsdUnloadCompletedJobs() - Flush completed job history from memory.
- * compare_active_jobs() - Compare the job IDs and priorities of two
- * jobs.
- * compare_jobs() - Compare the job IDs of two jobs.
- * dump_job_history() - Dump any debug messages for a job.
- * free_job_history() - Free any log history.
- * finalize_job() - Cleanup after job filter processes and support
- * data.
- * get_options() - Get a string containing the job options.
- * ipp_length() - Compute the size of the buffer needed to hold
- * the textual IPP attributes.
- * load_job_cache() - Load jobs from the job.cache file.
- * load_next_job_id() - Load the NextJobId value from the job.cache
- * file.
- * load_request_root() - Load jobs from the RequestRoot directory.
- * set_time() - Set one of the "time-at-xyz" attributes.
- * start_job() - Start a print job.
- * stop_job() - Stop a print job.
- * unload_job() - Unload a job from memory.
- * update_job() - Read a status update from a job's filters.
- * update_job_attrs() - Update the job-printer-* attributes.
+ * cupsdUpdateJobs() - Update the history/file files for all jobs.
+ * compare_active_jobs() - Compare the job IDs and priorities of two
+ * jobs.
+ * compare_jobs() - Compare the job IDs of two jobs.
+ * dump_job_history() - Dump any debug messages for a job.
+ * free_job_history() - Free any log history.
+ * finalize_job() - Cleanup after job filter processes and
+ * support data.
+ * get_options() - Get a string containing the job options.
+ * ipp_length() - Compute the size of the buffer needed to hold
+ * the textual IPP attributes.
+ * load_job_cache() - Load jobs from the job.cache file.
+ * load_next_job_id() - Load the NextJobId value from the job.cache
+ * file.
+ * load_request_root() - Load jobs from the RequestRoot directory.
+ * remove_job_files() - Remove the document files for a job.
+ * remove_job_history() - Remove the control file for a job.
+ * set_time() - Set one of the "time-at-xyz" attributes.
+ * start_job() - Start a print job.
+ * stop_job() - Stop a print job.
+ * unload_job() - Unload a job from memory.
+ * update_job() - Read a status update from a job's filters.
+ * update_job_attrs() - Update the job-printer-* attributes.
*/
/*
@@ -181,6 +185,8 @@ static size_t ipp_length(ipp_t *ipp);
static void load_job_cache(const char *filename);
static void load_next_job_id(const char *filename);
static void load_request_root(void);
+static void remove_job_files(cupsd_job_t *job);
+static void remove_job_history(cupsd_job_t *job);
static void set_time(cupsd_job_t *job, const char *name);
static void start_job(cupsd_job_t *job, cupsd_printer_t *printer);
static void stop_job(cupsd_job_t *job, cupsd_jobaction_t action);
@@ -281,23 +287,32 @@ cupsdCheckJobs(void)
time_t curtime; /* Current time */
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdCheckJobs: %d active jobs, sleeping=%d, reload=%d",
- cupsArrayCount(ActiveJobs), Sleeping, NeedReload);
-
curtime = time(NULL);
+ cupsdLogMessage(CUPSD_LOG_DEBUG2,
+ "cupsdCheckJobs: %d active jobs, sleeping=%d, reload=%d, "
+ "curtime=%ld", cupsArrayCount(ActiveJobs), Sleeping,
+ NeedReload, (long)curtime);
+
for (job = (cupsd_job_t *)cupsArrayFirst(ActiveJobs);
job;
job = (cupsd_job_t *)cupsArrayNext(ActiveJobs))
{
+ cupsdLogMessage(CUPSD_LOG_DEBUG2,
+ "cupsdCheckJobs: Job %d - dest=\"%s\", printer=%p, "
+ "state=%d, cancel_time=%ld, hold_until=%ld, kill_time=%ld, "
+ "pending_cost=%d, pending_timeout=%ld", job->id, job->dest,
+ job->printer, job->state_value, (long)job->cancel_time,
+ (long)job->hold_until, (long)job->kill_time,
+ job->pending_cost, (long)job->pending_timeout);
+
/*
* Kill jobs if they are unresponsive...
*/
if (job->kill_time && job->kill_time <= curtime)
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "[Job %d] Stopping unresponsive job!",
+ cupsdLogMessage(CUPSD_LOG_ERROR, "[Job %d] Stopping unresponsive job.",
job->id);
stop_job(job, CUPSD_JOB_FORCE);
@@ -305,6 +320,17 @@ cupsdCheckJobs(void)
}
/*
+ * Cancel stuck jobs...
+ */
+
+ if (job->cancel_time && job->cancel_time <= curtime)
+ {
+ cupsdSetJobState(job, IPP_JOB_CANCELED, CUPSD_JOB_DEFAULT,
+ "Canceling stuck job after %d seconds.", MaxJobTime);
+ continue;
+ }
+
+ /*
* Start held jobs if they are ready...
*/
@@ -322,7 +348,6 @@ cupsdCheckJobs(void)
cupsd_client_t *con; /* Current client connection */
-
for (con = (cupsd_client_t *)cupsArrayFirst(Clients);
con;
con = (cupsd_client_t *)cupsArrayNext(Clients))
@@ -362,8 +387,7 @@ cupsdCheckJobs(void)
printer = cupsdFindDest(job->dest);
pclass = NULL;
- while (printer &&
- (printer->type & (CUPS_PRINTER_IMPLICIT | CUPS_PRINTER_CLASS)))
+ while (printer && (printer->type & CUPS_PRINTER_CLASS))
{
/*
* If the class is remote, just pass it to the remote server...
@@ -415,10 +439,7 @@ cupsdCheckJobs(void)
cupsdMarkDirty(CUPSD_DIRTY_JOBS);
}
- if ((!(printer->type & CUPS_PRINTER_DISCOVERED) && /* Printer is local */
- printer->state == IPP_PRINTER_IDLE) || /* and idle, OR */
- ((printer->type & CUPS_PRINTER_DISCOVERED) && /* Printer is remote */
- !printer->job)) /* and not printing */
+ if (!printer->job && printer->state == IPP_PRINTER_IDLE)
{
/*
* Start the job...
@@ -440,16 +461,56 @@ void
cupsdCleanJobs(void)
{
cupsd_job_t *job; /* Current job */
+ time_t curtime; /* Current time */
- if (MaxJobs <= 0 && JobHistory)
+ cupsdLogMessage(CUPSD_LOG_DEBUG2,
+ "cupsdCleanJobs: MaxJobs=%d, JobHistory=%d, JobFiles=%d",
+ MaxJobs, JobHistory, JobFiles);
+
+ if (MaxJobs <= 0 && JobHistory == INT_MAX && JobFiles == INT_MAX)
return;
+ curtime = time(NULL);
+ JobHistoryUpdate = 0;
+
for (job = (cupsd_job_t *)cupsArrayFirst(Jobs);
- job && (cupsArrayCount(Jobs) >= MaxJobs || !JobHistory);
+ job;
job = (cupsd_job_t *)cupsArrayNext(Jobs))
+ {
if (job->state_value >= IPP_JOB_CANCELED && !job->printer)
- cupsdDeleteJob(job, CUPSD_JOB_PURGE);
+ {
+ /*
+ * Expire old jobs (or job files)...
+ */
+
+ if ((MaxJobs > 0 && cupsArrayCount(Jobs) >= MaxJobs) ||
+ (job->history_time && job->history_time <= curtime))
+ {
+ cupsdLogJob(job, CUPSD_LOG_DEBUG, "Removing from history.");
+ cupsdDeleteJob(job, CUPSD_JOB_PURGE);
+ }
+ else if (job->file_time && job->file_time <= curtime)
+ {
+ cupsdLogJob(job, CUPSD_LOG_DEBUG, "Removing document files.");
+ remove_job_files(job);
+
+ if (job->history_time < JobHistoryUpdate || !JobHistoryUpdate)
+ JobHistoryUpdate = job->history_time;
+ }
+ else
+ {
+ if (job->history_time < JobHistoryUpdate || !JobHistoryUpdate)
+ JobHistoryUpdate = job->history_time;
+
+ if (job->file_time < JobHistoryUpdate || !JobHistoryUpdate)
+ JobHistoryUpdate = job->file_time;
+ }
+ }
+ }
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdCleanJobs: JobHistoryUpdate=%ld",
+ (long)JobHistoryUpdate);
}
@@ -565,12 +626,13 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */
if (!filters)
{
cupsdLogJob(job, CUPSD_LOG_ERROR,
- "Unable to convert file %d to printable format!",
+ "Unable to convert file %d to printable format.",
job->current_file);
abort_message = "Aborting job because it cannot be printed.";
abort_state = IPP_JOB_ABORTED;
+ ippSetString(job->attrs, &job->reasons, 0, "document-unprintable-error");
goto abort_job;
}
@@ -719,12 +781,14 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */
if (cupsArrayCount(filters) > MAX_FILTERS)
{
cupsdLogJob(job, CUPSD_LOG_DEBUG,
- "Too many filters (%d > %d), unable to print!",
+ "Too many filters (%d > %d), unable to print.",
cupsArrayCount(filters), MAX_FILTERS);
abort_message = "Aborting job because it needs too many filters to print.";
abort_state = IPP_JOB_ABORTED;
+ ippSetString(job->attrs, &job->reasons, 0, "document-unprintable-error");
+
goto abort_job;
}
@@ -738,7 +802,7 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */
if ((job->job_sheets =
ippFindAttribute(job->attrs, "job-sheets", IPP_TAG_ZERO)) != NULL)
cupsdLogJob(job, CUPSD_LOG_DEBUG,
- "... but someone added one without setting job_sheets!");
+ "... but someone added one without setting job_sheets.");
}
else if (job->job_sheets->num_values == 1)
cupsdLogJob(job, CUPSD_LOG_DEBUG, "job-sheets=%s",
@@ -748,7 +812,7 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */
job->job_sheets->values[0].string.text,
job->job_sheets->values[1].string.text);
- if (job->printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT))
+ if (job->printer->type & CUPS_PRINTER_REMOTE)
banner_page = 0;
else if (job->job_sheets == NULL)
banner_page = 0;
@@ -1006,7 +1070,7 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */
envp[envc ++] = classification;
}
- if (job->dtype & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT))
+ if (job->dtype & CUPS_PRINTER_CLASS)
{
snprintf(class_name, sizeof(class_name), "CLASS=%s", job->dest);
envp[envc ++] = class_name;
@@ -1317,25 +1381,13 @@ cupsdDeleteJob(cupsd_job_t *job, /* I - Job */
cupsd_jobaction_t action)/* I - Action */
{
int i; /* Looping var */
- char filename[1024]; /* Job filename */
if (job->printer)
finalize_job(job, 1);
if (action == CUPSD_JOB_PURGE)
- {
- /*
- * Remove the job info file...
- */
-
- snprintf(filename, sizeof(filename), "%s/c%05d", RequestRoot,
- job->id);
- if (Classification)
- cupsdRemoveFile(filename);
- else
- unlink(filename);
- }
+ remove_job_history(job);
cupsdClearString(&job->username);
cupsdClearString(&job->dest);
@@ -1345,27 +1397,14 @@ cupsdDeleteJob(cupsd_job_t *job, /* I - Job */
cupsdClearString(job->auth_env + i);
cupsdClearString(&job->auth_uid);
- if (job->num_files > 0)
+ if (action == CUPSD_JOB_PURGE)
+ remove_job_files(job);
+ else if (job->num_files > 0)
{
free(job->compressions);
free(job->filetypes);
- if (action == CUPSD_JOB_PURGE)
- {
- while (job->num_files > 0)
- {
- snprintf(filename, sizeof(filename), "%s/d%05d-%03d", RequestRoot,
- job->id, job->num_files);
- if (Classification)
- cupsdRemoveFile(filename);
- else
- unlink(filename);
-
- job->num_files --;
- }
- }
- else
- job->num_files = 0;
+ job->num_files = 0;
}
if (job->history)
@@ -1572,7 +1611,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
if ((job->attrs = ippNew()) == NULL)
{
- cupsdLogJob(job, CUPSD_LOG_ERROR, "Ran out of memory for job attributes!");
+ cupsdLogJob(job, CUPSD_LOG_ERROR, "Ran out of memory for job attributes.");
return (0);
}
@@ -1583,22 +1622,8 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] Loading attributes...", job->id);
snprintf(jobfile, sizeof(jobfile), "%s/c%05d", RequestRoot, job->id);
- if ((fp = cupsFileOpen(jobfile, "r")) == NULL)
- {
- char newfile[1024]; /* New job filename */
-
- snprintf(newfile, sizeof(newfile), "%s/c%05d.N", RequestRoot, job->id);
- if ((fp = cupsFileOpen(newfile, "r")) == NULL)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "[Job %d] Unable to open job control file \"%s\": %s",
- job->id, jobfile, strerror(errno));
- goto error;
- }
-
- unlink(jobfile);
- rename(newfile, jobfile);
- }
+ if ((fp = cupsdOpenConfFile(jobfile)) == NULL)
+ goto error;
if (ippReadIO(fp, (ipp_iocb_t)cupsFileRead, 1, NULL, job->attrs) != IPP_DATA)
{
@@ -1619,7 +1644,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
{
cupsdLogMessage(CUPSD_LOG_ERROR,
"[Job %d] Missing or bad time-at-creation attribute in "
- "control file!", job->id);
+ "control file.", job->id);
goto error;
}
@@ -1628,11 +1653,40 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
{
cupsdLogMessage(CUPSD_LOG_ERROR,
"[Job %d] Missing or bad job-state attribute in control "
- "file!", job->id);
+ "file.", job->id);
goto error;
}
- job->state_value = (ipp_jstate_t)job->state->values[0].integer;
+ job->state_value = (ipp_jstate_t)job->state->values[0].integer;
+ job->file_time = 0;
+ job->history_time = 0;
+
+ if (job->state_value >= IPP_JOB_CANCELED &&
+ (attr = ippFindAttribute(job->attrs, "time-at-completed",
+ IPP_TAG_INTEGER)) != NULL)
+ {
+ if (JobHistory < INT_MAX)
+ job->history_time = attr->values[0].integer + JobHistory;
+ else
+ job->history_time = INT_MAX;
+
+ if (job->history_time < time(NULL))
+ goto error; /* Expired, remove from history */
+
+ if (job->history_time < JobHistoryUpdate || !JobHistoryUpdate)
+ JobHistoryUpdate = job->history_time;
+
+ if (JobFiles < INT_MAX)
+ job->file_time = attr->values[0].integer + JobFiles;
+ else
+ job->file_time = INT_MAX;
+
+ if (job->file_time < JobHistoryUpdate || !JobHistoryUpdate)
+ JobHistoryUpdate = job->file_time;
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdLoadJob: JobHistoryUpdate=%ld",
+ (long)JobHistoryUpdate);
+ }
if (!job->dest)
{
@@ -1640,7 +1694,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
IPP_TAG_URI)) == NULL)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "[Job %d] No job-printer-uri attribute in control file!",
+ "[Job %d] No job-printer-uri attribute in control file.",
job->id);
goto error;
}
@@ -1649,7 +1703,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
&destptr)) == NULL)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "[Job %d] Unable to queue job for destination \"%s\"!",
+ "[Job %d] Unable to queue job for destination \"%s\".",
job->id, attr->values[0].string.text);
goto error;
}
@@ -1659,11 +1713,74 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
else if ((destptr = cupsdFindDest(job->dest)) == NULL)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "[Job %d] Unable to queue job for destination \"%s\"!",
+ "[Job %d] Unable to queue job for destination \"%s\".",
job->id, job->dest);
goto error;
}
+ if ((job->reasons = ippFindAttribute(job->attrs, "job-state-reasons",
+ IPP_TAG_KEYWORD)) == NULL)
+ {
+ const char *reason; /* job-state-reason keyword */
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "[Job %d] Adding missing job-state-reasons attribute to "
+ " control file.", job->id);
+
+ switch (job->state_value)
+ {
+ default :
+ case IPP_JOB_PENDING :
+ if (destptr->state == IPP_PRINTER_STOPPED)
+ reason = "printer-stopped";
+ else
+ reason = "none";
+ break;
+
+ case IPP_JOB_HELD :
+ if ((attr = ippFindAttribute(job->attrs, "job-hold-until",
+ IPP_TAG_ZERO)) != NULL &&
+ (attr->value_tag == IPP_TAG_NAME ||
+ attr->value_tag == IPP_TAG_NAMELANG ||
+ attr->value_tag == IPP_TAG_KEYWORD) &&
+ strcmp(attr->values[0].string.text, "no-hold"))
+ reason = "job-hold-until-specified";
+ else
+ reason = "job-incoming";
+ break;
+
+ case IPP_JOB_PROCESSING :
+ reason = "job-printing";
+ break;
+
+ case IPP_JOB_STOPPED :
+ reason = "job-stopped";
+ break;
+
+ case IPP_JOB_CANCELED :
+ reason = "job-canceled-by-user";
+ break;
+
+ case IPP_JOB_ABORTED :
+ reason = "aborted-by-system";
+ break;
+
+ case IPP_JOB_COMPLETED :
+ reason = "job-completed-successfully";
+ break;
+ }
+
+ job->reasons = ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_KEYWORD,
+ "job-state-reasons", NULL, reason);
+ }
+ else if (job->state_value == IPP_JOB_PENDING)
+ {
+ if (destptr->state == IPP_PRINTER_STOPPED)
+ ippSetString(job->attrs, &job->reasons, 0, "printer-stopped");
+ else
+ ippSetString(job->attrs, &job->reasons, 0, "none");
+ }
+
job->sheets = ippFindAttribute(job->attrs, "job-media-sheets-completed",
IPP_TAG_INTEGER);
job->job_sheets = ippFindAttribute(job->attrs, "job-sheets", IPP_TAG_NAME);
@@ -1675,7 +1792,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
{
cupsdLogMessage(CUPSD_LOG_ERROR,
"[Job %d] Missing or bad job-priority attribute in "
- "control file!", job->id);
+ "control file.", job->id);
goto error;
}
@@ -1689,7 +1806,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
{
cupsdLogMessage(CUPSD_LOG_ERROR,
"[Job %d] Missing or bad job-originating-user-name "
- "attribute in control file!", job->id);
+ "attribute in control file.", job->id);
goto error;
}
@@ -1757,7 +1874,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
if (!compressions || !filetypes)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "[Job %d] Ran out of memory for job file types!",
+ "[Job %d] Ran out of memory for job file types.",
job->id);
ippDelete(job->attrs);
@@ -1846,7 +1963,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
}
else if (i >= (int)(sizeof(job->auth_env) / sizeof(job->auth_env[0])))
break;
-
+
if (!strcmp(line, "username"))
cupsdSetStringf(job->auth_env + i, "AUTH_USERNAME=%s", data);
else if (!strcmp(line, "domain"))
@@ -1878,24 +1995,8 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
ippDelete(job->attrs);
job->attrs = NULL;
- if (job->compressions)
- {
- free(job->compressions);
- job->compressions = NULL;
- }
-
- if (job->filetypes)
- {
- free(job->filetypes);
- job->filetypes = NULL;
- }
-
- job->num_files = 0;
-
- if (Classification)
- cupsdRemoveFile(jobfile);
- else
- unlink(jobfile);
+ remove_job_history(job);
+ remove_job_files(job);
return (0);
}
@@ -1945,8 +2046,7 @@ cupsdMoveJob(cupsd_job_t *job, /* I - Job */
p->name);
cupsdSetString(&job->dest, p->name);
- job->dtype = p->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_REMOTE |
- CUPS_PRINTER_IMPLICIT);
+ job->dtype = p->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_REMOTE);
if ((attr = ippFindAttribute(job->attrs, "job-printer-uri",
IPP_TAG_URI)) != NULL)
@@ -2069,8 +2169,7 @@ cupsdSaveAllJobs(void)
void
cupsdSaveJob(cupsd_job_t *job) /* I - Job */
{
- char filename[1024], /* Job control filename */
- newfile[1024]; /* New job control filename */
+ char filename[1024]; /* Job control filename */
cups_file_t *fp; /* Job file */
@@ -2078,17 +2177,10 @@ cupsdSaveJob(cupsd_job_t *job) /* I - Job */
job, job->id, job->attrs);
snprintf(filename, sizeof(filename), "%s/c%05d", RequestRoot, job->id);
- snprintf(newfile, sizeof(newfile), "%s/c%05d.N", RequestRoot, job->id);
- if ((fp = cupsFileOpen(newfile, "w")) == NULL)
- {
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "[Job %d] Unable to create job control file \"%s\": %s",
- job->id, newfile, strerror(errno));
+ if ((fp = cupsdCreateConfFile(filename, ConfigFilePerm & 0600)) == NULL)
return;
- }
- fchmod(cupsFileNumber(fp), 0600);
fchown(cupsFileNumber(fp), RunUser, Group);
job->attrs->state = IPP_IDLE;
@@ -2099,24 +2191,11 @@ cupsdSaveJob(cupsd_job_t *job) /* I - Job */
cupsdLogMessage(CUPSD_LOG_ERROR,
"[Job %d] Unable to write job control file.", job->id);
cupsFileClose(fp);
- unlink(newfile);
return;
}
- if (cupsFileClose(fp))
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "[Job %d] Unable to close job control file: %s",
- job->id, strerror(errno));
- else
- {
- unlink(filename);
- if (rename(newfile, filename))
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "[Job %d] Unable to finalize job control file: %s",
- job->id, strerror(errno));
- else
- job->dirty = 0;
- }
+ if (!cupsdCloseCreatedConfFile(fp, filename))
+ job->dirty = 0;
}
@@ -2168,12 +2247,16 @@ cupsdSetJobHoldUntil(cupsd_job_t *job, /* I - Job */
job->dirty = 1;
cupsdMarkDirty(CUPSD_DIRTY_JOBS);
}
+
+ ippSetString(job->attrs, &job->reasons, 0, "job-hold-until-specified");
}
/*
* Update the hold time...
*/
+ job->cancel_time = 0;
+
if (!strcmp(when, "indefinite") || !strcmp(when, "auth-info-required"))
{
/*
@@ -2181,6 +2264,9 @@ cupsdSetJobHoldUntil(cupsd_job_t *job, /* I - Job */
*/
job->hold_until = 0;
+
+ if (MaxHoldTime > 0)
+ job->cancel_time = time(NULL) + MaxHoldTime;
}
else if (!strcmp(when, "day-time"))
{
@@ -2409,6 +2495,7 @@ cupsdSetJobState(
case IPP_JOB_CANCELED :
case IPP_JOB_COMPLETED :
set_time(job, "time-at-completed");
+ ippSetString(job->attrs, &job->reasons, 0, "processing-to-stop-point");
break;
}
@@ -2537,27 +2624,7 @@ cupsdSetJobState(
*/
if (!JobHistory || !JobFiles || action == CUPSD_JOB_PURGE)
- {
- for (i = 1; i <= job->num_files; i ++)
- {
- snprintf(filename, sizeof(filename), "%s/d%05d-%03d", RequestRoot,
- job->id, i);
- if (Classification)
- cupsdRemoveFile(filename);
- else
- unlink(filename);
- }
-
- if (job->num_files > 0)
- {
- free(job->filetypes);
- free(job->compressions);
-
- job->num_files = 0;
- job->filetypes = NULL;
- job->compressions = NULL;
- }
- }
+ remove_job_files(job);
if (JobHistory && action != CUPSD_JOB_PURGE)
{
@@ -2649,6 +2716,62 @@ cupsdUnloadCompletedJobs(void)
/*
+ * 'cupsdUpdateJobs()' - Update the history/file files for all jobs.
+ */
+
+void
+cupsdUpdateJobs(void)
+{
+ cupsd_job_t *job; /* Current job */
+ time_t curtime; /* Current time */
+ ipp_attribute_t *attr; /* time-at-completed attribute */
+
+
+ curtime = time(NULL);
+ JobHistoryUpdate = 0;
+
+ for (job = (cupsd_job_t *)cupsArrayFirst(Jobs);
+ job;
+ job = (cupsd_job_t *)cupsArrayNext(Jobs))
+ {
+ if (job->state_value >= IPP_JOB_CANCELED &&
+ (attr = ippFindAttribute(job->attrs, "time-at-completed",
+ IPP_TAG_INTEGER)) != NULL)
+ {
+ /*
+ * Update history/file expiration times...
+ */
+
+ if (JobHistory < INT_MAX)
+ job->history_time = attr->values[0].integer + JobHistory;
+ else
+ job->history_time = INT_MAX;
+
+ if (job->history_time < curtime)
+ {
+ cupsdDeleteJob(job, CUPSD_JOB_PURGE);
+ continue;
+ }
+
+ if (job->history_time < JobHistoryUpdate || !JobHistoryUpdate)
+ JobHistoryUpdate = job->history_time;
+
+ if (JobFiles < INT_MAX)
+ job->file_time = attr->values[0].integer + JobFiles;
+ else
+ job->file_time = INT_MAX;
+
+ if (job->file_time < JobHistoryUpdate || !JobHistoryUpdate)
+ JobHistoryUpdate = job->file_time;
+ }
+ }
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdUpdateAllJobs: JobHistoryUpdate=%ld",
+ (long)JobHistoryUpdate);
+}
+
+
+/*
* 'compare_active_jobs()' - Compare the job IDs and priorities of two jobs.
*/
@@ -2907,14 +3030,21 @@ finalize_job(cupsd_job_t *job, /* I - Job */
case IPP_JOB_COMPLETED :
job_state = IPP_JOB_COMPLETED;
message = "Job completed.";
+
+ ippSetString(job->attrs, &job->reasons, 0,
+ "job-completed-successfully");
break;
case IPP_JOB_STOPPED :
message = "Job stopped.";
+
+ ippSetString(job->attrs, &job->reasons, 0, "job-stopped");
break;
case IPP_JOB_CANCELED :
message = "Job canceled.";
+
+ ippSetString(job->attrs, &job->reasons, 0, "job-canceled-by-user");
break;
case IPP_JOB_ABORTED :
@@ -2940,7 +3070,10 @@ finalize_job(cupsd_job_t *job, /* I - Job */
if (WIFEXITED(exit_code))
exit_code = WEXITSTATUS(exit_code);
else
+ {
+ ippSetString(job->attrs, &job->reasons, 0, "cups-backend-crashed");
exit_code = job->status;
+ }
cupsdLogJob(job, CUPSD_LOG_INFO, "Backend returned status %d (%s)",
exit_code,
@@ -2965,7 +3098,7 @@ finalize_job(cupsd_job_t *job, /* I - Job */
* act...
*/
- if (job->dtype & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT))
+ if (job->dtype & CUPS_PRINTER_CLASS)
{
/*
* Queued on a class - mark the job as pending and we'll retry on
@@ -2976,6 +3109,9 @@ finalize_job(cupsd_job_t *job, /* I - Job */
{
job_state = IPP_JOB_PENDING;
message = "Retrying job on another printer.";
+
+ ippSetString(job->attrs, &job->reasons, 0,
+ "resources-are-not-ready");
}
}
else if (!strcmp(job->printer->error_policy, "retry-current-job"))
@@ -2989,6 +3125,8 @@ finalize_job(cupsd_job_t *job, /* I - Job */
{
job_state = IPP_JOB_PENDING;
message = "Retrying job on same printer.";
+
+ ippSetString(job->attrs, &job->reasons, 0, "none");
}
}
else if ((job->printer->type & CUPS_PRINTER_FAX) ||
@@ -3015,6 +3153,8 @@ finalize_job(cupsd_job_t *job, /* I - Job */
JobRetryLimit);
job_state = IPP_JOB_ABORTED;
message = buffer;
+
+ ippSetString(job->attrs, &job->reasons, 0, "aborted-by-system");
}
else
{
@@ -3029,6 +3169,9 @@ finalize_job(cupsd_job_t *job, /* I - Job */
job->hold_until = time(NULL) + JobRetryInterval;
job_state = IPP_JOB_HELD;
message = buffer;
+
+ ippSetString(job->attrs, &job->reasons, 0,
+ "resources-are-not-ready");
}
}
}
@@ -3038,6 +3181,8 @@ finalize_job(cupsd_job_t *job, /* I - Job */
job_state = IPP_JOB_ABORTED;
message = "Job aborted due to backend errors; please consult "
"the error_log file for details.";
+
+ ippSetString(job->attrs, &job->reasons, 0, "aborted-by-system");
}
else if (job->state_value == IPP_JOB_PROCESSING)
{
@@ -3045,19 +3190,22 @@ finalize_job(cupsd_job_t *job, /* I - Job */
printer_state = IPP_PRINTER_STOPPED;
message = "Printer stopped due to backend errors; please "
"consult the error_log file for details.";
+
+ ippSetString(job->attrs, &job->reasons, 0, "none");
}
break;
case CUPS_BACKEND_CANCEL :
/*
- * Abort the job...
+ * Cancel the job...
*/
if (job_state == IPP_JOB_COMPLETED)
{
- job_state = IPP_JOB_ABORTED;
- message = "Job aborted due to backend errors; please consult "
- "the error_log file for details.";
+ job_state = IPP_JOB_CANCELED;
+ message = "Job canceled at printer.";
+
+ ippSetString(job->attrs, &job->reasons, 0, "canceled-at-device");
}
break;
@@ -3069,6 +3217,8 @@ finalize_job(cupsd_job_t *job, /* I - Job */
*/
cupsdSetJobHoldUntil(job, "indefinite", 1);
+ ippSetString(job->attrs, &job->reasons, 0,
+ "job-hold-until-specified");
job_state = IPP_JOB_HELD;
message = "Job held indefinitely due to backend errors; please "
@@ -3086,7 +3236,12 @@ finalize_job(cupsd_job_t *job, /* I - Job */
"consult the error_log file for details.";
if (job_state == IPP_JOB_COMPLETED)
+ {
job_state = IPP_JOB_PENDING;
+
+ ippSetString(job->attrs, &job->reasons, 0,
+ "resources-are-not-ready");
+ }
break;
case CUPS_BACKEND_AUTH_REQUIRED :
@@ -3100,6 +3255,9 @@ finalize_job(cupsd_job_t *job, /* I - Job */
job_state = IPP_JOB_HELD;
message = "Job held for authentication.";
+
+ ippSetString(job->attrs, &job->reasons, 0,
+ "cups-held-for-authentication");
}
break;
@@ -3124,6 +3282,8 @@ finalize_job(cupsd_job_t *job, /* I - Job */
JobRetryLimit);
job_state = IPP_JOB_ABORTED;
message = buffer;
+
+ ippSetString(job->attrs, &job->reasons, 0, "aborted-by-system");
}
else
{
@@ -3138,6 +3298,9 @@ finalize_job(cupsd_job_t *job, /* I - Job */
job->hold_until = time(NULL) + JobRetryInterval;
job_state = IPP_JOB_HELD;
message = buffer;
+
+ ippSetString(job->attrs, &job->reasons, 0,
+ "resources-are-not-ready");
}
}
break;
@@ -3151,6 +3314,8 @@ finalize_job(cupsd_job_t *job, /* I - Job */
{
job_state = IPP_JOB_PENDING;
message = "Retrying job on same printer.";
+
+ ippSetString(job->attrs, &job->reasons, 0, "none");
}
break;
}
@@ -3166,6 +3331,11 @@ finalize_job(cupsd_job_t *job, /* I - Job */
job_state = IPP_JOB_STOPPED;
message = "Job stopped due to filter errors; please consult the "
"error_log file for details.";
+
+ if (WIFSIGNALED(job->status))
+ ippSetString(job->attrs, &job->reasons, 0, "cups-filter-crashed");
+ else
+ ippSetString(job->attrs, &job->reasons, 0, "job-completed-with-errors");
}
}
@@ -3193,6 +3363,21 @@ finalize_job(cupsd_job_t *job, /* I - Job */
cupsArrayRemove(PrintingJobs, job);
/*
+ * Apply any PPD updates...
+ */
+
+ if (job->num_keywords)
+ {
+ if (cupsdUpdatePrinterPPD(job->printer, job->num_keywords, job->keywords))
+ cupsdSetPrinterAttrs(job->printer);
+
+ cupsFreeOptions(job->num_keywords, job->keywords);
+
+ job->num_keywords = 0;
+ job->keywords = NULL;
+ }
+
+ /*
* Clear the printer <-> job association...
*/
@@ -3409,7 +3594,7 @@ get_options(cupsd_job_t *job, /* I - Job */
if (!optptr)
{
cupsdLogJob(job, CUPSD_LOG_CRIT,
- "Unable to allocate " CUPS_LLFMT " bytes for option buffer!",
+ "Unable to allocate " CUPS_LLFMT " bytes for option buffer.",
CUPS_LLCAST newlength);
return (NULL);
}
@@ -3537,7 +3722,7 @@ get_options(cupsd_job_t *job, /* I - Job */
"%dx%d%s", attr->values[i].resolution.xres,
attr->values[i].resolution.yres,
attr->values[i].resolution.units == IPP_RES_PER_INCH ?
- "dpi" : "dpc");
+ "dpi" : "dpcm");
break;
case IPP_TAG_STRING :
@@ -3758,14 +3943,14 @@ load_job_cache(const char *filename) /* I - job.cache filename */
{
if (job)
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Missing </Job> directive on line %d!",
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Missing </Job> directive on line %d.",
linenum);
continue;
}
if (!value)
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Missing job ID on line %d!", linenum);
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Missing job ID on line %d.", linenum);
continue;
}
@@ -3773,7 +3958,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */
if (jobid < 1)
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad job ID %d on line %d!", jobid,
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Bad job ID %d on line %d.", jobid,
linenum);
continue;
}
@@ -3784,7 +3969,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */
snprintf(jobfile, sizeof(jobfile), "%s/c%05d.N", RequestRoot, jobid);
if (access(jobfile, 0))
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "[Job %d] Files have gone away!",
+ cupsdLogMessage(CUPSD_LOG_ERROR, "[Job %d] Files have gone away.",
jobid);
continue;
}
@@ -3794,7 +3979,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */
if (!job)
{
cupsdLogMessage(CUPSD_LOG_EMERG,
- "[Job %d] Unable to allocate memory for job!", jobid);
+ "[Job %d] Unable to allocate memory for job.", jobid);
break;
}
@@ -3814,7 +3999,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */
else if (!job)
{
cupsdLogMessage(CUPSD_LOG_ERROR,
- "Missing <Job #> directive on line %d!", linenum);
+ "Missing <Job #> directive on line %d.", linenum);
continue;
}
else if (!_cups_strcasecmp(line, "</Job>"))
@@ -3828,7 +4013,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */
}
else if (!value)
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Missing value on line %d!", linenum);
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Missing value on line %d.", linenum);
continue;
}
else if (!_cups_strcasecmp(line, "State"))
@@ -3866,7 +4051,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */
if (job->num_files < 0)
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad NumFiles value %d on line %d!",
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Bad NumFiles value %d on line %d.",
job->num_files, linenum);
job->num_files = 0;
continue;
@@ -3878,7 +4063,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */
job->id);
if (access(jobfile, 0))
{
- cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Data files have gone away!",
+ cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Data files have gone away.",
job->id);
job->num_files = 0;
continue;
@@ -3890,7 +4075,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */
if (!job->filetypes || !job->compressions)
{
cupsdLogMessage(CUPSD_LOG_EMERG,
- "[Job %d] Unable to allocate memory for %d files!",
+ "[Job %d] Unable to allocate memory for %d files.",
job->id, job->num_files);
break;
}
@@ -3907,13 +4092,13 @@ load_job_cache(const char *filename) /* I - job.cache filename */
if (sscanf(value, "%d%*[ \t]%15[^/]/%255s%d", &number, super, type,
&compression) != 4)
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad File on line %d!", linenum);
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Bad File on line %d.", linenum);
continue;
}
if (number < 1 || number > job->num_files)
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Bad File number %d on line %d!",
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Bad File number %d on line %d.",
number, linenum);
continue;
}
@@ -3930,7 +4115,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */
*/
cupsdLogMessage(CUPSD_LOG_ERROR,
- "[Job %d] Unknown MIME type %s/%s for file %d!",
+ "[Job %d] Unknown MIME type %s/%s for file %d.",
job->id, super, type, number + 1);
snprintf(jobfile, sizeof(jobfile), "%s/d%05d-%03d", RequestRoot,
@@ -3948,7 +4133,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */
}
}
else
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unknown %s directive on line %d!",
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Unknown %s directive on line %d.",
line, linenum);
}
@@ -4048,7 +4233,7 @@ load_request_root(void)
if ((job = calloc(sizeof(cupsd_job_t), 1)) == NULL)
{
- cupsdLogMessage(CUPSD_LOG_ERROR, "Ran out of memory for jobs!");
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Ran out of memory for jobs.");
cupsDirClose(dir);
return;
}
@@ -4094,6 +4279,67 @@ load_request_root(void)
/*
+ * 'remove_job_files()' - Remove the document files for a job.
+ */
+
+static void
+remove_job_files(cupsd_job_t *job) /* I - Job */
+{
+ int i; /* Looping var */
+ char filename[1024]; /* Document filename */
+
+
+ if (job->num_files <= 0)
+ return;
+
+ for (i = 1; i <= job->num_files; i ++)
+ {
+ snprintf(filename, sizeof(filename), "%s/d%05d-%03d", RequestRoot,
+ job->id, i);
+ if (Classification)
+ cupsdRemoveFile(filename);
+ else
+ unlink(filename);
+ }
+
+ free(job->filetypes);
+ free(job->compressions);
+
+ job->file_time = 0;
+ job->num_files = 0;
+ job->filetypes = NULL;
+ job->compressions = NULL;
+
+ LastEvent |= CUPSD_EVENT_PRINTER_STATE_CHANGED;
+}
+
+
+/*
+ * 'remove_job_history()' - Remove the control file for a job.
+ */
+
+static void
+remove_job_history(cupsd_job_t *job) /* I - Job */
+{
+ char filename[1024]; /* Control filename */
+
+
+ /*
+ * Remove the job info file...
+ */
+
+ snprintf(filename, sizeof(filename), "%s/c%05d", RequestRoot,
+ job->id);
+ if (Classification)
+ cupsdRemoveFile(filename);
+ else
+ unlink(filename);
+
+ LastEvent |= CUPSD_EVENT_PRINTER_STATE_CHANGED;
+}
+
+
+/*
* 'set_time()' - Set one of the "time-at-xyz" attributes.
*/
@@ -4102,12 +4348,39 @@ set_time(cupsd_job_t *job, /* I - Job to update */
const char *name) /* I - Name of attribute */
{
ipp_attribute_t *attr; /* Time attribute */
+ time_t curtime; /* Current time */
+
+
+ curtime = time(NULL);
+ cupsdLogJob(job, CUPSD_LOG_DEBUG, "%s=%ld", name, (long)curtime);
if ((attr = ippFindAttribute(job->attrs, name, IPP_TAG_ZERO)) != NULL)
{
attr->value_tag = IPP_TAG_INTEGER;
- attr->values[0].integer = time(NULL);
+ attr->values[0].integer = curtime;
+ }
+
+ if (!strcmp(name, "time-at-completed"))
+ {
+ if (JobHistory < INT_MAX)
+ job->history_time = attr->values[0].integer + JobHistory;
+ else
+ job->history_time = INT_MAX;
+
+ if (job->history_time < JobHistoryUpdate || !JobHistoryUpdate)
+ JobHistoryUpdate = job->history_time;
+
+ if (JobFiles < INT_MAX)
+ job->file_time = attr->values[0].integer + JobFiles;
+ else
+ job->file_time = INT_MAX;
+
+ if (job->file_time < JobHistoryUpdate || !JobHistoryUpdate)
+ JobHistoryUpdate = job->file_time;
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "set_time: JobHistoryUpdate=%ld",
+ (long)JobHistoryUpdate);
}
}
@@ -4129,6 +4402,7 @@ start_job(cupsd_job_t *job, /* I - Job ID */
if (job->num_files == 0)
{
+ ippSetString(job->attrs, &job->reasons, 0, "aborted-by-system");
cupsdSetJobState(job, IPP_JOB_ABORTED, CUPSD_JOB_DEFAULT,
"Aborting job because it has no files.");
return;
@@ -4148,6 +4422,7 @@ start_job(cupsd_job_t *job, /* I - Job ID */
if (job->printer_message)
cupsdSetString(&(job->printer_message->values[0].string.text), "");
+ ippSetString(job->attrs, &job->reasons, 0, "job-printing");
cupsdSetJobState(job, IPP_JOB_PROCESSING, CUPSD_JOB_DEFAULT, NULL);
cupsdSetPrinterState(printer, IPP_PRINTER_PROCESSING, 0);
cupsdSetPrinterReasons(printer, "-cups-remote-pending,"
@@ -4160,10 +4435,17 @@ start_job(cupsd_job_t *job, /* I - Job ID */
job->cost = 0;
job->current_file = 0;
+ job->file_time = 0;
+ job->history_time = 0;
job->progress = 0;
job->printer = printer;
printer->job = job;
+ if (MaxJobTime > 0)
+ job->cancel_time = time(NULL) + MaxJobTime;
+ else
+ job->cancel_time = 0;
+
/*
* Setup the last exit status and security profiles...
*/
@@ -4327,6 +4609,7 @@ unload_job(cupsd_job_t *job) /* I - Job */
job->attrs = NULL;
job->state = NULL;
+ job->reasons = NULL;
job->sheets = NULL;
job->job_sheets = NULL;
job->printer_message = NULL;
@@ -4421,8 +4704,24 @@ update_job(cupsd_job_t *job) /* I - Job to check */
return;
}
else if (cupsdSetPrinterReasons(job->printer, message))
+ {
event |= CUPSD_EVENT_PRINTER_STATE;
+ if (MaxJobTime > 0 && strstr(message, "connecting-to-device") != NULL)
+ {
+ /*
+ * Reset cancel time after connecting to the device...
+ */
+
+ for (i = 0; i < job->printer->num_reasons; i ++)
+ if (!strcmp(job->printer->reasons[i], "connecting-to-device"))
+ break;
+
+ if (i >= job->printer->num_reasons)
+ job->cancel_time = time(NULL) + MaxJobTime;
+ }
+ }
+
update_job_attrs(job, 0);
}
else if (loglevel == CUPSD_LOG_ATTR)
@@ -4446,10 +4745,7 @@ update_job(cupsd_job_t *job) /* I - Job to check */
cupsdSetAuthInfoRequired(job->printer, attr, NULL);
cupsdSetPrinterAttrs(job->printer);
- if (job->printer->type & CUPS_PRINTER_DISCOVERED)
- cupsdMarkDirty(CUPSD_DIRTY_REMOTE);
- else
- cupsdMarkDirty(CUPSD_DIRTY_PRINTERS);
+ cupsdMarkDirty(CUPSD_DIRTY_PRINTERS);
}
if ((attr = cupsGetOption("job-media-progress", num_attrs,
@@ -4546,18 +4842,10 @@ update_job(cupsd_job_t *job) /* I - Job to check */
* Set attribute(s)...
*/
- int num_keywords; /* Number of keywords */
- cups_option_t *keywords; /* Keywords */
-
-
cupsdLogJob(job, CUPSD_LOG_DEBUG, "PPD: %s", message);
- num_keywords = cupsParseOptions(message, 0, &keywords);
-
- if (cupsdUpdatePrinterPPD(job->printer, num_keywords, keywords))
- cupsdSetPrinterAttrs(job->printer);
-
- cupsFreeOptions(num_keywords, keywords);
+ job->num_keywords = cupsParseOptions(message, job->num_keywords,
+ &job->keywords);
}
else
{
@@ -4580,7 +4868,8 @@ update_job(cupsd_job_t *job) /* I - Job to check */
else
ptr = message;
- cupsdLogJob(job, loglevel, "%s", ptr);
+ if (*ptr)
+ cupsdLogJob(job, loglevel, "%s", ptr);
if (loglevel < CUPSD_LOG_DEBUG &&
strcmp(job->printer->state_message, ptr))
@@ -4708,11 +4997,21 @@ update_job_attrs(cupsd_job_t *job, /* I - Job to update */
if (job->state_value != IPP_JOB_PROCESSING &&
job->status_level == CUPSD_LOG_INFO)
+ {
cupsdSetString(&(job->printer_message->values[0].string.text), "");
+
+ job->dirty = 1;
+ cupsdMarkDirty(CUPSD_DIRTY_JOBS);
+ }
else if (job->printer->state_message[0] && do_message)
+ {
cupsdSetString(&(job->printer_message->values[0].string.text),
job->printer->state_message);
+ job->dirty = 1;
+ cupsdMarkDirty(CUPSD_DIRTY_JOBS);
+ }
+
/*
* ... and the printer-state-reasons value...
*/
@@ -4768,9 +5067,12 @@ update_job_attrs(cupsd_job_t *job, /* I - Job to update */
for (i = 0; i < num_reasons; i ++)
job->printer_reasons->values[i].string.text = _cupsStrAlloc(reasons[i]);
+
+ job->dirty = 1;
+ cupsdMarkDirty(CUPSD_DIRTY_JOBS);
}
/*
- * End of "$Id: job.c 10420 2012-04-20 03:01:06Z mike $".
+ * End of "$Id: job.c 10502 2012-05-23 01:36:50Z mike $".
*/
diff --git a/scheduler/job.h b/scheduler/job.h
index 130326f9..9c5db0c6 100644
--- a/scheduler/job.h
+++ b/scheduler/job.h
@@ -1,5 +1,5 @@
/*
- * "$Id: job.h 9778 2011-05-18 02:27:11Z mike $"
+ * "$Id: job.h 10502 2012-05-23 01:36:50Z mike $"
*
* Print job definitions for the CUPS scheduler.
*
@@ -46,9 +46,13 @@ struct cupsd_job_s /**** Job request ****/
int *compressions; /* Compression status of each file */
ipp_attribute_t *sheets; /* job-media-sheets-completed */
time_t access_time, /* Last access time */
- kill_time, /* When to send SIGKILL */
- hold_until; /* Hold expiration date/time */
+ cancel_time, /* When to cancel/send SIGTERM */
+ file_time, /* Job file retain time */
+ history_time, /* Job history retain time */
+ hold_until, /* Hold expiration date/time */
+ kill_time; /* When to send SIGKILL */
ipp_attribute_t *state; /* Job state */
+ ipp_attribute_t *reasons; /* Job state reasons */
ipp_attribute_t *job_sheets; /* Job sheets (NULL if none) */
ipp_attribute_t *printer_message,
/* job-printer-state-message */
@@ -76,6 +80,8 @@ struct cupsd_job_s /**** Job request ****/
void *profile; /* Security profile */
cups_array_t *history; /* Debug log history */
int progress; /* Printing progress */
+ int num_keywords; /* Number of PPD keywords */
+ cups_option_t *keywords; /* PPD keywords */
};
typedef struct cupsd_joblog_s /**** Job log message ****/
@@ -89,18 +95,24 @@ typedef struct cupsd_joblog_s /**** Job log message ****/
* Globals...
*/
-VAR int JobHistory VALUE(1);
+VAR int JobHistory VALUE(INT_MAX);
/* Preserve job history? */
-VAR int JobFiles VALUE(0);
+VAR int JobFiles VALUE(86400);
/* Preserve job files? */
+VAR time_t JobHistoryUpdate VALUE(0);
+ /* Time for next job history update */
VAR int MaxJobs VALUE(0),
/* Max number of jobs */
MaxActiveJobs VALUE(0),
/* Max number of active jobs */
+ MaxHoldTime VALUE(0),
+ /* Max time for indefinite hold */
MaxJobsPerUser VALUE(0),
/* Max jobs per user */
- MaxJobsPerPrinter VALUE(0);
+ MaxJobsPerPrinter VALUE(0),
/* Max jobs per printer */
+ MaxJobTime VALUE(3 * 60 * 60);
+ /* Max time for a job */
VAR int JobAutoPurge VALUE(0);
/* Automatically purge jobs */
VAR cups_array_t *Jobs VALUE(NULL),
@@ -149,16 +161,15 @@ extern void cupsdSetJobState(cupsd_job_t *job,
ipp_jstate_t newstate,
cupsd_jobaction_t action,
const char *message, ...)
-#ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 4, 5)))
-#endif /* __GNUC__ */
-;
+ __attribute__((__format__(__printf__,
+ 4, 5)));
extern void cupsdStopAllJobs(cupsd_jobaction_t action,
int kill_delay);
extern int cupsdTimeoutJob(cupsd_job_t *job);
extern void cupsdUnloadCompletedJobs(void);
+extern void cupsdUpdateJobs(void);
/*
- * End of "$Id: job.h 9778 2011-05-18 02:27:11Z mike $".
+ * End of "$Id: job.h 10502 2012-05-23 01:36:50Z mike $".
*/
diff --git a/scheduler/log.c b/scheduler/log.c
index 11d180e3..00a0fd95 100644
--- a/scheduler/log.c
+++ b/scheduler/log.c
@@ -1,5 +1,5 @@
/*
- * "$Id: log.c 9949 2011-08-31 04:58:33Z mike $"
+ * "$Id: log.c 10158 2012-01-05 05:50:57Z mike $"
*
* Log file routines for the CUPS scheduler.
*
@@ -379,8 +379,24 @@ cupsdLogGSSMessage(
minor_status_string = GSS_C_EMPTY_BUFFER;
/* Minor status message */
int ret; /* Return value */
+ char buffer[8192]; /* Buffer for vsnprintf */
+ if (strchr(message, '%'))
+ {
+ /*
+ * Format the message string...
+ */
+
+ va_list ap; /* Pointer to arguments */
+
+ va_start(ap, message);
+ vsnprintf(buffer, sizeof(buffer), message, ap);
+ va_end(ap);
+
+ message = buffer;
+ }
+
msg_ctx = 0;
err_major_status = gss_display_status(&err_minor_status,
major_status,
@@ -414,7 +430,7 @@ cupsdLogJob(cupsd_job_t *job, /* I - Job */
const char *message, /* I - Printf-style message string */
...) /* I - Additional arguments as needed */
{
- va_list ap; /* Argument pointer */
+ va_list ap, ap2; /* Argument pointers */
char jobmsg[1024]; /* Format string for job message */
int status; /* Formatting status */
@@ -435,19 +451,27 @@ cupsdLogJob(cupsd_job_t *job, /* I - Job */
* Format and write the log message...
*/
- snprintf(jobmsg, sizeof(jobmsg), "[Job %d] %s", job->id, message);
+ if (job)
+ snprintf(jobmsg, sizeof(jobmsg), "[Job %d] %s", job->id, message);
+ else
+ strlcpy(jobmsg, message, sizeof(jobmsg));
+
+ va_start(ap, message);
do
{
- va_start(ap, message);
- status = format_log_line(jobmsg, ap);
- va_end(ap);
+ va_copy(ap2, ap);
+ status = format_log_line(jobmsg, ap2);
+ va_end(ap2);
}
while (status == 0);
+ va_end(ap);
+
if (status > 0)
{
- if ((level > LogLevel ||
+ if (job &&
+ (level > LogLevel ||
(level == CUPSD_LOG_INFO && LogLevel < CUPSD_LOG_DEBUG)) &&
LogDebugHistory > 0)
{
@@ -508,7 +532,7 @@ cupsdLogMessage(int level, /* I - Log level */
const char *message, /* I - printf-style message string */
...) /* I - Additional args as needed */
{
- va_list ap; /* Argument pointer */
+ va_list ap, ap2; /* Argument pointers */
int status; /* Formatting status */
@@ -533,14 +557,18 @@ cupsdLogMessage(int level, /* I - Log level */
* Format and write the log message...
*/
+ va_start(ap, message);
+
do
{
- va_start(ap, message);
- status = format_log_line(message, ap);
- va_end(ap);
+ va_copy(ap2, ap);
+ status = format_log_line(message, ap2);
+ va_end(ap2);
}
while (status == 0);
+ va_end(ap);
+
if (status > 0)
return (cupsdWriteErrorLog(level, log_line));
else
@@ -1070,5 +1098,5 @@ format_log_line(const char *message, /* I - Printf-style format string */
/*
- * End of "$Id: log.c 9949 2011-08-31 04:58:33Z mike $".
+ * End of "$Id: log.c 10158 2012-01-05 05:50:57Z mike $".
*/
diff --git a/scheduler/main.c b/scheduler/main.c
index c50ce9db..d3b43a05 100644
--- a/scheduler/main.c
+++ b/scheduler/main.c
@@ -1,9 +1,9 @@
/*
- * "$Id: main.c 9783 2011-05-18 20:44:16Z mike $"
+ * "$Id: main.c 10431 2012-04-23 19:19:19Z mike $"
*
* Main loop for the CUPS scheduler.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -84,7 +84,7 @@ static void sigchld_handler(int sig);
static void sighup_handler(int sig);
static void sigterm_handler(int sig);
static long select_timeout(int fds);
-static void usage(int status);
+static void usage(int status) __attribute__((noreturn));
/*
@@ -120,7 +120,6 @@ main(int argc, /* I - Number of command-line args */
cupsd_listener_t *lis; /* Current listener */
time_t current_time, /* Current time */
activity, /* Client activity timer */
- browse_time, /* Next browse send time */
senddoc_time, /* Send-Document time */
expire_time, /* Subscription expire time */
report_time, /* Malloc/client/job report time */
@@ -650,7 +649,6 @@ main(int argc, /* I - Number of command-line args */
*/
current_time = time(NULL);
- browse_time = current_time;
event_time = current_time;
expire_time = current_time;
fds = 1;
@@ -766,11 +764,9 @@ main(int argc, /* I - Number of command-line args */
* inactivity...
*/
- if (timeout == 86400 && Launchd && LaunchdTimeout && !NumPolled &&
+ if (timeout == 86400 && Launchd && LaunchdTimeout &&
!cupsArrayCount(ActiveJobs) &&
- (!Browsing ||
- (!BrowseRemoteProtocols &&
- (!BrowseLocalProtocols || !cupsArrayCount(Printers)))))
+ (!Browsing || !BrowseLocalProtocols || !cupsArrayCount(Printers)))
{
timeout = LaunchdTimeout;
launchd_idle_exit = 1;
@@ -812,8 +808,6 @@ main(int argc, /* I - Number of command-line args */
i ++, lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
cupsdLogMessage(CUPSD_LOG_EMERG, "Listeners[%d] = %d", i, lis->fd);
- cupsdLogMessage(CUPSD_LOG_EMERG, "BrowseSocket = %d", BrowseSocket);
-
cupsdLogMessage(CUPSD_LOG_EMERG, "CGIPipes[0] = %d", CGIPipes[0]);
#ifdef __APPLE__
@@ -914,31 +908,6 @@ main(int argc, /* I - Number of command-line args */
expire_time = current_time;
}
- /*
- * Update the browse list as needed...
- */
-
- if (Browsing)
- {
-#ifdef HAVE_LIBSLP
- if ((BrowseRemoteProtocols & BROWSE_SLP) &&
- BrowseSLPRefresh <= current_time)
- cupsdUpdateSLPBrowse();
-#endif /* HAVE_LIBSLP */
-
-#ifdef HAVE_LDAP
- if ((BrowseRemoteProtocols & BROWSE_LDAP) &&
- BrowseLDAPRefresh <= current_time)
- cupsdUpdateLDAPBrowse();
-#endif /* HAVE_LDAP */
- }
-
- if (Browsing && current_time > browse_time)
- {
- cupsdSendBrowseList();
- browse_time = current_time;
- }
-
#ifndef HAVE_AUTHORIZATION_H
/*
* Update the root certificate once every 5 minutes if we have client
@@ -998,11 +967,17 @@ main(int argc, /* I - Number of command-line args */
if ((current_time - senddoc_time) >= 10)
{
cupsdCheckJobs();
- cupsdCleanJobs();
senddoc_time = current_time;
}
/*
+ * Clean job history...
+ */
+
+ if (JobHistoryUpdate && current_time >= JobHistoryUpdate)
+ cupsdCleanJobs();
+
+ /*
* Log statistics at most once a minute when in debug mode...
*/
@@ -1031,8 +1006,6 @@ main(int argc, /* I - Number of command-line args */
cupsArrayCount(ActiveJobs));
cupsdLogMessage(CUPSD_LOG_DEBUG, "Report: printers=%d",
cupsArrayCount(Printers));
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Report: printers-implicit=%d",
- cupsArrayCount(ImplicitPrinters));
string_count = _cupsStrStatistics(&alloc_bytes, &total_bytes);
cupsdLogMessage(CUPSD_LOG_DEBUG,
@@ -1512,10 +1485,8 @@ launchd_checkout(void)
* shared printers to advertise...
*/
- if (cupsArrayCount(ActiveJobs) || NumPolled ||
- (Browsing &&
- (BrowseRemoteProtocols ||
- (BrowseLocalProtocols && cupsArrayCount(Printers)))))
+ if (cupsArrayCount(ActiveJobs) ||
+ (Browsing && BrowseLocalProtocols && cupsArrayCount(Printers)))
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
"Creating launchd keepalive file \"" CUPS_KEEPALIVE
@@ -1564,6 +1535,7 @@ process_children(void)
cupsd_job_t *job; /* Current job */
int i; /* Looping var */
char name[1024]; /* Process name */
+ const char *type; /* Type of program */
cupsdLogMessage(CUPSD_LOG_DEBUG2, "process_children()");
@@ -1603,7 +1575,12 @@ process_children(void)
* Handle completed job filters...
*/
- if (job_id > 0 && (job = cupsdFindJob(job_id)) != NULL)
+ if (job_id > 0)
+ job = cupsdFindJob(job_id);
+ else
+ job = NULL;
+
+ if (job)
{
for (i = 0; job->filters[i]; i ++)
if (job->filters[i] == pid)
@@ -1616,12 +1593,18 @@ process_children(void)
*/
if (job->filters[i])
+ {
job->filters[i] = -pid;
+ type = "Filter";
+ }
else
+ {
job->backend = -pid;
+ type = "Backend";
+ }
if (status && status != SIGTERM && status != SIGKILL &&
- status != SIGPIPE && job->status >= 0)
+ status != SIGPIPE)
{
/*
* An error occurred; save the exit status so we know to stop
@@ -1629,22 +1612,35 @@ process_children(void)
*
* A negative status indicates that the backend failed and the
* printer needs to be stopped.
+ *
+ * In order to preserve the most serious status, we always log
+ * when a process dies due to a signal (e.g. SIGABRT, SIGSEGV,
+ * and SIGBUS) and prefer to log the backend exit status over a
+ * filter's.
*/
- if (job->filters[i])
- job->status = status; /* Filter failed */
- else
- job->status = -status; /* Backend failed */
+ int old_status = abs(job->status);
+
+ if (WIFSIGNALED(status) || /* This process crashed, or */
+ !job->status || /* No process had a status, or */
+ (!job->filters[i] && WIFEXITED(old_status)))
+ { /* Backend and filter didn't crash */
+ if (job->filters[i])
+ job->status = status; /* Filter failed */
+ else
+ job->status = -status; /* Backend failed */
+ }
if (job->state_value == IPP_JOB_PROCESSING &&
- job->status_level > CUPSD_LOG_ERROR)
+ job->status_level > CUPSD_LOG_ERROR &&
+ (job->filters[i] || !WIFEXITED(status)))
{
char message[1024]; /* New printer-state-message */
job->status_level = CUPSD_LOG_ERROR;
- snprintf(message, sizeof(message), "%s failed", name);
+ snprintf(message, sizeof(message), "%s failed", type);
if (job->printer)
{
@@ -1714,15 +1710,15 @@ process_children(void)
if (status == SIGTERM || status == SIGKILL)
{
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "PID %d (%s) was terminated normally with signal %d.",
- pid, name, status);
+ cupsdLogJob(job, CUPSD_LOG_DEBUG,
+ "PID %d (%s) was terminated normally with signal %d.", pid,
+ name, status);
}
else if (status == SIGPIPE)
{
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "PID %d (%s) did not catch or ignore signal %d.",
- pid, name, status);
+ cupsdLogJob(job, CUPSD_LOG_DEBUG,
+ "PID %d (%s) did not catch or ignore signal %d.", pid, name,
+ status);
}
else if (status)
{
@@ -1731,26 +1727,25 @@ process_children(void)
int code = WEXITSTATUS(status); /* Exit code */
if (code > 100)
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "PID %d (%s) stopped with status %d (%s)", pid, name,
- code, strerror(code - 100));
+ cupsdLogJob(job, CUPSD_LOG_DEBUG,
+ "PID %d (%s) stopped with status %d (%s)", pid, name,
+ code, strerror(code - 100));
else
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "PID %d (%s) stopped with status %d.", pid, name,
- code);
+ cupsdLogJob(job, CUPSD_LOG_DEBUG,
+ "PID %d (%s) stopped with status %d.", pid, name, code);
}
else
- cupsdLogMessage(CUPSD_LOG_ERROR, "PID %d (%s) crashed on signal %d.",
- pid, name, WTERMSIG(status));
+ cupsdLogJob(job, CUPSD_LOG_DEBUG, "PID %d (%s) crashed on signal %d.",
+ pid, name, WTERMSIG(status));
if (LogLevel < CUPSD_LOG_DEBUG)
- cupsdLogMessage(CUPSD_LOG_INFO,
- "Hint: Try setting the LogLevel to \"debug\" to find "
- "out more.");
+ cupsdLogJob(job, CUPSD_LOG_INFO,
+ "Hint: Try setting the LogLevel to \"debug\" to find out "
+ "more.");
}
else
- cupsdLogMessage(CUPSD_LOG_DEBUG, "PID %d (%s) exited with no errors.",
- pid, name);
+ cupsdLogJob(job, CUPSD_LOG_DEBUG, "PID %d (%s) exited with no errors.",
+ pid, name);
}
/*
@@ -1773,12 +1768,14 @@ select_timeout(int fds) /* I - Number of descriptors returned */
long timeout; /* Timeout for select */
time_t now; /* Current time */
cupsd_client_t *con; /* Client information */
- cupsd_printer_t *p; /* Printer information */
cupsd_job_t *job; /* Job information */
cupsd_subscription_t *sub; /* Subscription information */
const char *why; /* Debugging aid */
+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "select_timeout: JobHistoryUpdate=%ld",
+ (long)JobHistoryUpdate);
+
/*
* Check to see if any of the clients have pending data to be
* processed; if so, the timeout should be 0...
@@ -1848,54 +1845,6 @@ select_timeout(int fds) /* I - Number of descriptors returned */
}
/*
- * Update the browse list as needed...
- */
-
- if (Browsing && BrowseLocalProtocols)
- {
-#ifdef HAVE_LIBSLP
- if ((BrowseLocalProtocols & BROWSE_SLP) && (BrowseSLPRefresh < timeout))
- {
- timeout = BrowseSLPRefresh;
- why = "update SLP browsing";
- }
-#endif /* HAVE_LIBSLP */
-
-#ifdef HAVE_LDAP
- if ((BrowseLocalProtocols & BROWSE_LDAP) && (BrowseLDAPRefresh < timeout))
- {
- timeout = BrowseLDAPRefresh;
- why = "update LDAP browsing";
- }
-#endif /* HAVE_LDAP */
-
- if ((BrowseLocalProtocols & BROWSE_CUPS) && NumBrowsers)
- {
- for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
- p;
- p = (cupsd_printer_t *)cupsArrayNext(Printers))
- {
- if (p->type & CUPS_PRINTER_REMOTE)
- {
- if ((p->browse_time + BrowseTimeout) < timeout)
- {
- timeout = p->browse_time + BrowseTimeout;
- why = "browse timeout a printer";
- }
- }
- else if (p->shared && !(p->type & CUPS_PRINTER_IMPLICIT))
- {
- if (BrowseInterval && (p->browse_time + BrowseInterval) < timeout)
- {
- timeout = p->browse_time + BrowseInterval;
- why = "send browse update";
- }
- }
- }
- }
- }
-
- /*
* Write out changes to configuration and state files...
*/
@@ -1906,13 +1855,25 @@ select_timeout(int fds) /* I - Number of descriptors returned */
}
/*
- * Check for any active jobs...
+ * Check for any job activity...
*/
+ if (JobHistoryUpdate && timeout > JobHistoryUpdate)
+ {
+ timeout = JobHistoryUpdate;
+ why = "update job history";
+ }
+
for (job = (cupsd_job_t *)cupsArrayFirst(ActiveJobs);
job;
job = (cupsd_job_t *)cupsArrayNext(ActiveJobs))
{
+ if (job->cancel_time && job->cancel_time < timeout)
+ {
+ timeout = job->cancel_time;
+ why = "cancel stuck jobs";
+ }
+
if (job->kill_time && job->kill_time < timeout)
{
timeout = job->kill_time;
@@ -1924,7 +1885,8 @@ select_timeout(int fds) /* I - Number of descriptors returned */
timeout = job->hold_until;
why = "release held jobs";
}
- else if (job->state_value == IPP_JOB_PENDING && timeout > (now + 10))
+
+ if (job->state_value == IPP_JOB_PENDING && timeout > (now + 10))
{
timeout = now + 10;
why = "start pending jobs";
@@ -1958,11 +1920,9 @@ select_timeout(int fds) /* I - Number of descriptors returned */
}
/*
- * Adjust from absolute to relative time. If p->browse_time above
- * was 0 then we can end up with a negative value here, so check.
- * We add 1 second to the timeout since events occur after the
- * timeout expires, and limit the timeout to 86400 seconds (1 day)
- * to avoid select() timeout limits present on some operating
+ * Adjust from absolute to relative time. We add 1 second to the timeout since
+ * events occur after the timeout expires, and limit the timeout to 86400
+ * seconds (1 day) to avoid select() timeout limits present on some operating
* systems...
*/
@@ -2056,8 +2016,7 @@ usage(int status) /* O - Exit status */
_cupsLangPuts(fp, _("Usage: cupsd [options]"));
_cupsLangPuts(fp, _("Options:"));
- _cupsLangPuts(fp, _(" -c config-file Load alternate configuration "
- "file."));
+ _cupsLangPuts(fp, _(" -c cupsd.conf Set cupsd.conf file to use."));
_cupsLangPuts(fp, _(" -f Run in the foreground."));
_cupsLangPuts(fp, _(" -F Run in the foreground but "
"detach from console."));
@@ -2071,5 +2030,5 @@ usage(int status) /* O - Exit status */
/*
- * End of "$Id: main.c 9783 2011-05-18 20:44:16Z mike $".
+ * End of "$Id: main.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/scheduler/mime-private.h b/scheduler/mime-private.h
index 5891253b..54648847 100644
--- a/scheduler/mime-private.h
+++ b/scheduler/mime-private.h
@@ -1,5 +1,5 @@
/*
- * "$Id: mime-private.h 9750 2011-05-06 22:53:53Z mike $"
+ * "$Id: mime-private.h 9950 2011-09-01 23:02:24Z mike $"
*
* Private MIME type/conversion database definitions for CUPS.
*
@@ -32,10 +32,7 @@ extern "C" {
*/
extern void _mimeError(mime_t *mime, const char *format, ...)
-#ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 2, 3)))
-#endif /* __GNUC__ */
-;
+ __attribute__ ((__format__ (__printf__, 2, 3)));
# ifdef __cplusplus
@@ -44,5 +41,5 @@ __attribute__ ((__format__ (__printf__, 2, 3)))
#endif /* !_CUPS_MIME_PRIVATE_H_ */
/*
- * End of "$Id: mime-private.h 9750 2011-05-06 22:53:53Z mike $".
+ * End of "$Id: mime-private.h 9950 2011-09-01 23:02:24Z mike $".
*/
diff --git a/scheduler/network.c b/scheduler/network.c
index 921ed175..b6eea613 100644
--- a/scheduler/network.c
+++ b/scheduler/network.c
@@ -1,5 +1,5 @@
/*
- * "$Id: network.c 10379 2012-03-23 22:16:22Z mike $"
+ * "$Id: network.c 10378 2012-03-23 21:38:25Z mike $"
*
* Network interface functions for the CUPS scheduler.
*
@@ -296,5 +296,5 @@ compare_netif(cupsd_netif_t *a, /* I - First network interface */
/*
- * End of "$Id: network.c 10379 2012-03-23 22:16:22Z mike $".
+ * End of "$Id: network.c 10378 2012-03-23 21:38:25Z mike $".
*/
diff --git a/scheduler/printers.c b/scheduler/printers.c
index 1220db60..cf9cfee6 100644
--- a/scheduler/printers.c
+++ b/scheduler/printers.c
@@ -1,5 +1,5 @@
/*
- * "$Id: printers.c 10295 2012-02-15 23:21:06Z mike $"
+ * "$Id: printers.c 10501 2012-05-23 01:19:11Z mike $"
*
* Printer routines for the CUPS scheduler.
*
@@ -168,9 +168,6 @@ cupsdAddPrinter(const char *name) /* I - Name of printer */
"cupsdAddPrinter: Adding %s to Printers", p->name);
cupsArrayAdd(Printers, p);
- if (!ImplicitPrinters)
- ImplicitPrinters = cupsArrayNew(compare_printers, NULL);
-
/*
* Return the new printer...
*/
@@ -643,8 +640,7 @@ cupsdCreateCommonData(void)
/* operations-supported */
ippAddIntegers(CommonData, IPP_TAG_PRINTER, IPP_TAG_ENUM,
- "operations-supported",
- sizeof(ops) / sizeof(ops[0]) + JobFiles - 1, ops);
+ "operations-supported", sizeof(ops) / sizeof(ops[0]), ops);
/* orientation-requested-supported */
ippAddIntegers(CommonData, IPP_TAG_PRINTER, IPP_TAG_ENUM,
@@ -752,16 +748,6 @@ cupsdDeletePrinter(
"Job stopped.");
/*
- * If this printer is the next for browsing, point to the next one...
- */
-
- if (p == BrowseNext)
- {
- cupsArrayFind(Printers, p);
- BrowseNext = (cupsd_printer_t *)cupsArrayNext(Printers);
- }
-
- /*
* Remove the printer from the list...
*/
@@ -769,14 +755,6 @@ cupsdDeletePrinter(
"cupsdDeletePrinter: Removing %s from Printers", p->name);
cupsArrayRemove(Printers, p);
- if (p->type & CUPS_PRINTER_IMPLICIT)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdDeletePrinter: Removing %s from ImplicitPrinters",
- p->name);
- cupsArrayRemove(ImplicitPrinters, p);
- }
-
/*
* Remove the dummy interface/icon/option files under IRIX...
*/
@@ -807,43 +785,19 @@ cupsdDeletePrinter(
*/
if (p == DefaultPrinter)
- {
DefaultPrinter = NULL;
- if (UseNetworkDefault)
- {
- /*
- * Find the first network default printer and use it...
- */
-
- cupsd_printer_t *dp; /* New default printer */
-
-
- for (dp = (cupsd_printer_t *)cupsArrayFirst(Printers);
- dp;
- dp = (cupsd_printer_t *)cupsArrayNext(Printers))
- if (dp != p && (dp->type & CUPS_PRINTER_DEFAULT))
- {
- DefaultPrinter = dp;
- break;
- }
- }
- }
-
/*
* Remove this printer from any classes...
*/
- if (!(p->type & CUPS_PRINTER_IMPLICIT))
- {
- changed = cupsdDeletePrinterFromClasses(p);
+ changed = cupsdDeletePrinterFromClasses(p);
- /*
- * Deregister from any browse protocols...
- */
+ /*
+ * Deregister from any browse protocols...
+ */
- cupsdDeregisterPrinter(p, 1);
- }
+ cupsdDeregisterPrinter(p, 1);
/*
* Free all memory used by the printer...
@@ -883,15 +837,13 @@ cupsdDeletePrinter(
cupsdClearString(&p->alert);
cupsdClearString(&p->alert_description);
-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
cupsdClearString(&p->pdl);
-#endif /* HAVE_DNSSD */
+ cupsdClearString(&p->reg_name);
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
cupsArrayDelete(p->filetypes);
- if (p->browse_attrs)
- free(p->browse_attrs);
-
cupsFreeOptions(p->num_options, p->options);
free(p);
@@ -1396,14 +1348,6 @@ cupsdRenamePrinter(
"cupsdRenamePrinter: Removing %s from Printers", p->name);
cupsArrayRemove(Printers, p);
- if (p->type & CUPS_PRINTER_IMPLICIT)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdRenamePrinter: Removing %s from ImplicitPrinters",
- p->name);
- cupsArrayRemove(ImplicitPrinters, p);
- }
-
/*
* Rename the printer type...
*/
@@ -1436,14 +1380,6 @@ cupsdRenamePrinter(
cupsdLogMessage(CUPSD_LOG_DEBUG2,
"cupsdRenamePrinter: Adding %s to Printers", p->name);
cupsArrayAdd(Printers, p);
-
- if (p->type & CUPS_PRINTER_IMPLICIT)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "cupsdRenamePrinter: Adding %s to ImplicitPrinters",
- p->name);
- cupsArrayAdd(ImplicitPrinters, p);
- }
}
@@ -1501,12 +1437,10 @@ cupsdSaveAllPrinters(void)
printer = (cupsd_printer_t *)cupsArrayNext(Printers))
{
/*
- * Skip remote destinations and printer classes...
+ * Skip printer classes...
*/
- if ((printer->type & CUPS_PRINTER_DISCOVERED) ||
- (printer->type & CUPS_PRINTER_CLASS) ||
- (printer->type & CUPS_PRINTER_IMPLICIT))
+ if (printer->type & CUPS_PRINTER_CLASS)
continue;
/*
@@ -2138,8 +2072,7 @@ cupsdSetPrinterAttr(
void
cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
{
- int i, /* Looping var */
- length; /* Length of browse attributes */
+ int i; /* Looping var */
char resource[HTTP_MAX_URI]; /* Resource portion of URI */
int num_air; /* Number of auth-info-required values */
const char * const *air; /* auth-info-required values */
@@ -2147,7 +2080,6 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
const char *auth_supported; /* Authentication supported */
ipp_t *oldattrs; /* Old printer attributes */
ipp_attribute_t *attr; /* Attribute data */
- cups_option_t *option; /* Current printer option */
char *name, /* Current user/group name */
*filter; /* Current filter */
static const char * const air_none[] =
@@ -2190,8 +2122,7 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
num_air = p->num_auth_info_required;
air = p->auth_info_required;
}
- else if ((p->type & CUPS_PRINTER_AUTHENTICATED) &&
- (p->type & CUPS_PRINTER_DISCOVERED))
+ else if (p->type & CUPS_PRINTER_AUTHENTICATED)
{
num_air = 2;
air = air_userpass;
@@ -2212,7 +2143,7 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
if ((auth_type = auth->type) == CUPSD_AUTH_DEFAULT)
- auth_type = DefaultAuthType;
+ auth_type = cupsdDefaultAuthType();
if (auth_type == CUPSD_AUTH_BASIC || auth_type == CUPSD_AUTH_BASICDIGEST)
auth_supported = "basic";
@@ -2223,15 +2154,12 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
auth_supported = "negotiate";
#endif /* HAVE_GSSAPI */
- if (!(p->type & CUPS_PRINTER_DISCOVERED))
- {
- if (auth_type != CUPSD_AUTH_NONE)
- p->type |= CUPS_PRINTER_AUTHENTICATED;
- else
- p->type &= ~CUPS_PRINTER_AUTHENTICATED;
- }
+ if (auth_type != CUPSD_AUTH_NONE)
+ p->type |= CUPS_PRINTER_AUTHENTICATED;
+ else
+ p->type &= ~CUPS_PRINTER_AUTHENTICATED;
}
- else if (!(p->type & CUPS_PRINTER_DISCOVERED))
+ else
p->type &= ~CUPS_PRINTER_AUTHENTICATED;
/*
@@ -2280,7 +2208,7 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
ippAddStrings(p->attrs, IPP_TAG_PRINTER, IPP_TAG_KEYWORD,
"auth-info-required", num_air, NULL, air);
- if (cupsArrayCount(Banners) > 0 && !(p->type & CUPS_PRINTER_DISCOVERED))
+ if (cupsArrayCount(Banners) > 0)
{
/*
* Setup the job-sheets-default attribute...
@@ -2301,164 +2229,117 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
p->raw = 0;
p->remote = 0;
- if (p->type & CUPS_PRINTER_DISCOVERED)
+ /*
+ * Assign additional attributes depending on whether this is a printer
+ * or class...
+ */
+
+ if (p->type & CUPS_PRINTER_CLASS)
{
+ p->raw = 1;
+ p->type &= ~CUPS_PRINTER_OPTIONS;
+
/*
- * Tell the client this is a remote printer of some type...
+ * Add class-specific attributes...
*/
- if (strchr(p->uri, '?'))
+ ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_TEXT,
+ "printer-make-and-model", NULL, "Local Printer Class");
+ ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_URI, "device-uri", NULL,
+ "file:///dev/null");
+
+ if (p->num_printers > 0)
{
/*
- * Strip trailing "?options" from URI...
+ * Add a list of member names; URIs are added in copy_printer_attrs...
*/
- char *ptr; /* Pointer into URI */
+ attr = ippAddStrings(p->attrs, IPP_TAG_PRINTER, IPP_TAG_NAME,
+ "member-names", p->num_printers, NULL, NULL);
+ p->type |= CUPS_PRINTER_OPTIONS;
- strlcpy(resource, p->uri, sizeof(resource));
- if ((ptr = strchr(resource, '?')) != NULL)
- *ptr = '\0';
+ for (i = 0; i < p->num_printers; i ++)
+ {
+ if (attr != NULL)
+ attr->values[i].string.text = _cupsStrRetain(p->printers[i]->name);
- ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_URI,
- "printer-uri-supported", NULL, resource);
+ p->type &= ~CUPS_PRINTER_OPTIONS | p->printers[i]->type;
+ }
}
- else
- ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_URI,
- "printer-uri-supported", NULL, p->uri);
-
- ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_URI, "printer-more-info",
- NULL, p->uri);
-
- if (p->make_model)
- ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_TEXT,
- "printer-make-and-model", NULL, p->make_model);
-
- ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_URI, "device-uri", NULL,
- p->uri);
-
- p->raw = 1;
- p->remote = 1;
}
else
{
/*
- * Assign additional attributes depending on whether this is a printer
- * or class...
+ * Add printer-specific attributes...
*/
- if (p->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT))
- {
- p->raw = 1;
- p->type &= ~CUPS_PRINTER_OPTIONS;
-
- /*
- * Add class-specific attributes...
- */
-
- if ((p->type & CUPS_PRINTER_IMPLICIT) && p->num_printers > 0 &&
- p->printers[0]->make_model)
- ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_TEXT,
- "printer-make-and-model", NULL, p->printers[0]->make_model);
- else
- ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_TEXT,
- "printer-make-and-model", NULL, "Local Printer Class");
+ ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_URI, "device-uri", NULL,
+ p->sanitized_device_uri);
- ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_URI, "device-uri", NULL,
- "file:///dev/null");
+ /*
+ * Assign additional attributes from the PPD file (if any)...
+ */
- if (p->num_printers > 0)
- {
- /*
- * Add a list of member names; URIs are added in copy_printer_attrs...
- */
+ load_ppd(p);
- attr = ippAddStrings(p->attrs, IPP_TAG_PRINTER, IPP_TAG_NAME,
- "member-names", p->num_printers, NULL, NULL);
- p->type |= CUPS_PRINTER_OPTIONS;
+ /*
+ * Add filters for printer...
+ */
- for (i = 0; i < p->num_printers; i ++)
- {
- if (attr != NULL)
- attr->values[i].string.text = _cupsStrRetain(p->printers[i]->name);
+ cupsdSetPrinterReasons(p, "-cups-missing-filter-warning,"
+ "cups-insecure-filter-warning");
- p->type &= ~CUPS_PRINTER_OPTIONS | p->printers[i]->type;
- }
- }
+ if (p->pc && p->pc->filters)
+ {
+ for (filter = (char *)cupsArrayFirst(p->pc->filters);
+ filter;
+ filter = (char *)cupsArrayNext(p->pc->filters))
+ add_printer_filter(p, p->filetype, filter);
}
- else
+ else if (!(p->type & CUPS_PRINTER_REMOTE))
{
- /*
- * Add printer-specific attributes...
- */
-
- ippAddString(p->attrs, IPP_TAG_PRINTER, IPP_TAG_URI, "device-uri", NULL,
- p->sanitized_device_uri);
-
- /*
- * Assign additional attributes from the PPD file (if any)...
- */
-
- load_ppd(p);
+ char interface[1024]; /* Interface script */
- /*
- * Add filters for printer...
- */
- cupsdSetPrinterReasons(p, "-cups-missing-filter-warning,"
- "cups-insecure-filter-warning");
-
- if (p->pc && p->pc->filters)
+ snprintf(interface, sizeof(interface), "%s/interfaces/%s", ServerRoot,
+ p->name);
+ if (!access(interface, X_OK))
{
- for (filter = (char *)cupsArrayFirst(p->pc->filters);
- filter;
- filter = (char *)cupsArrayNext(p->pc->filters))
- add_printer_filter(p, p->filetype, filter);
+ /*
+ * Yes, we have a System V style interface script; use it!
+ */
+
+ snprintf(interface, sizeof(interface), "*/* 0 %s/interfaces/%s",
+ ServerRoot, p->name);
+ add_printer_filter(p, p->filetype, interface);
}
- else if (!(p->type & CUPS_PRINTER_REMOTE))
+ else
{
- char interface[1024]; /* Interface script */
-
-
- snprintf(interface, sizeof(interface), "%s/interfaces/%s", ServerRoot,
- p->name);
- if (!access(interface, X_OK))
- {
- /*
- * Yes, we have a System V style interface script; use it!
- */
-
- snprintf(interface, sizeof(interface), "*/* 0 %s/interfaces/%s",
- ServerRoot, p->name);
- add_printer_filter(p, p->filetype, interface);
- }
- else
- {
- /*
- * Add a filter from application/vnd.cups-raw to printer/name to
- * handle "raw" printing by users.
- */
+ /*
+ * Add a filter from application/vnd.cups-raw to printer/name to
+ * handle "raw" printing by users.
+ */
- add_printer_filter(p, p->filetype, "application/vnd.cups-raw 0 -");
+ add_printer_filter(p, p->filetype, "application/vnd.cups-raw 0 -");
- /*
- * Add a PostScript filter, since this is still possibly PS printer.
- */
+ /*
+ * Add a PostScript filter, since this is still possibly PS printer.
+ */
- add_printer_filter(p, p->filetype,
- "application/vnd.cups-postscript 0 -");
- }
+ add_printer_filter(p, p->filetype,
+ "application/vnd.cups-postscript 0 -");
}
+ }
- if (p->pc && p->pc->prefilters)
- {
- if (!p->prefiltertype)
- p->prefiltertype = mimeAddType(MimeDatabase, "prefilter", p->name);
+ if (p->pc && p->pc->prefilters)
+ {
+ if (!p->prefiltertype)
+ p->prefiltertype = mimeAddType(MimeDatabase, "prefilter", p->name);
- for (filter = (char *)cupsArrayFirst(p->pc->prefilters);
- filter;
- filter = (char *)cupsArrayNext(p->pc->prefilters))
- add_printer_filter(p, p->prefiltertype, filter);
- }
+ for (filter = (char *)cupsArrayFirst(p->pc->prefilters);
+ filter;
+ filter = (char *)cupsArrayNext(p->pc->prefilters))
+ add_printer_filter(p, p->prefiltertype, filter);
}
}
@@ -2558,98 +2439,8 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
* Force sharing off for remote queues...
*/
- if (p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT))
+ if (p->type & CUPS_PRINTER_REMOTE)
p->shared = 0;
- else
- {
- /*
- * Copy the printer options into a browse attributes string we can re-use.
- */
-
- const char *valptr; /* Pointer into value */
- char *attrptr; /* Pointer into attribute string */
-
-
- /*
- * Free the old browse attributes as needed...
- */
-
- if (p->browse_attrs)
- free(p->browse_attrs);
-
- /*
- * Compute the length of all attributes + job-sheets, lease-duration,
- * and BrowseLocalOptions.
- */
-
- for (length = 1, i = p->num_options, option = p->options;
- i > 0;
- i --, option ++)
- {
- length += strlen(option->name) + 2;
-
- if (option->value)
- {
- for (valptr = option->value; *valptr; valptr ++)
- if (strchr(" \"\'\\", *valptr))
- length += 2;
- else
- length ++;
- }
- }
-
- length += 13 + strlen(p->job_sheets[0]) + strlen(p->job_sheets[1]);
- length += 32;
- if (BrowseLocalOptions)
- length += 12 + strlen(BrowseLocalOptions);
-
- /*
- * Allocate the new string...
- */
-
- if ((p->browse_attrs = calloc(1, length)) == NULL)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "Unable to allocate %d bytes for browse data!",
- length);
- else
- {
- /*
- * Got the allocated string, now copy the options and attributes over...
- */
-
- sprintf(p->browse_attrs, "job-sheets=%s,%s lease-duration=%d",
- p->job_sheets[0], p->job_sheets[1], BrowseTimeout);
- attrptr = p->browse_attrs + strlen(p->browse_attrs);
-
- if (BrowseLocalOptions)
- {
- sprintf(attrptr, " ipp-options=%s", BrowseLocalOptions);
- attrptr += strlen(attrptr);
- }
-
- for (i = p->num_options, option = p->options;
- i > 0;
- i --, option ++)
- {
- *attrptr++ = ' ';
- strcpy(attrptr, option->name);
- attrptr += strlen(attrptr);
-
- if (option->value)
- {
- *attrptr++ = '=';
-
- for (valptr = option->value; *valptr; valptr ++)
- {
- if (strchr(" \"\'\\", *valptr))
- *attrptr++ = '\\';
-
- *attrptr++ = *valptr;
- }
- }
- }
- }
- }
/*
* Populate the document-format-supported attribute...
@@ -2832,6 +2623,7 @@ cupsdSetPrinterState(
ipp_pstate_t s, /* I - New state */
int update) /* I - Update printers.conf? */
{
+ cupsd_job_t *job; /* Current job */
ipp_pstate_t old_state; /* Old printer state */
static const char * const printer_states[] =
{ /* State strings */
@@ -2842,13 +2634,6 @@ cupsdSetPrinterState(
/*
- * Can't set status of remote printers...
- */
-
- if (p->type & CUPS_PRINTER_DISCOVERED)
- return;
-
- /*
* Set the new state...
*/
@@ -2867,9 +2652,7 @@ cupsdSetPrinterState(
* Let the browse code know this needs to be updated...
*/
- BrowseNext = p;
- p->state_time = time(NULL);
- p->browse_time = 0;
+ p->state_time = time(NULL);
#ifdef __sgi
write_irix_state(p);
@@ -2885,6 +2668,17 @@ cupsdSetPrinterState(
else
cupsdSetPrinterReasons(p, "-paused");
+ if (old_state != s)
+ {
+ for (job = (cupsd_job_t *)cupsArrayFirst(ActiveJobs);
+ job;
+ job = (cupsd_job_t *)cupsArrayNext(ActiveJobs))
+ if (job->reasons && job->state_value == IPP_JOB_PENDING &&
+ !_cups_strcasecmp(job->dest, p->name))
+ ippSetString(job->attrs, &job->reasons, 0,
+ s == IPP_PRINTER_STOPPED ? "printer-stopped" : "none");
+ }
+
/*
* Clear the message for the queue when going to processing...
*/
@@ -3068,22 +2862,6 @@ cupsdUpdatePrinters(void)
p = (cupsd_printer_t *)cupsArrayNext(Printers))
{
/*
- * Remove remote printers if we are no longer browsing...
- */
-
- if (!Browsing &&
- (p->type & (CUPS_PRINTER_IMPLICIT | CUPS_PRINTER_DISCOVERED)))
- {
- if (p->type & CUPS_PRINTER_IMPLICIT)
- cupsArrayRemove(ImplicitPrinters, p);
-
- cupsArraySave(Printers);
- cupsdDeletePrinter(p, 0);
- cupsArrayRestore(Printers);
- continue;
- }
-
- /*
* Update the operation policy pointer...
*/
@@ -3091,11 +2869,10 @@ cupsdUpdatePrinters(void)
p->op_policy_ptr = DefaultPolicyPtr;
/*
- * Update printer attributes as needed...
+ * Update printer attributes...
*/
- if (!(p->type & CUPS_PRINTER_DISCOVERED))
- cupsdSetPrinterAttrs(p);
+ cupsdSetPrinterAttrs(p);
}
}
@@ -3188,8 +2965,7 @@ cupsdValidateDest(
*printer = p;
if (dtype)
- *dtype = p->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT |
- CUPS_PRINTER_REMOTE | CUPS_PRINTER_DISCOVERED);
+ *dtype = p->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_REMOTE);
return (p->name);
}
@@ -3247,8 +3023,7 @@ cupsdValidateDest(
*printer = p;
if (dtype)
- *dtype = p->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT |
- CUPS_PRINTER_REMOTE | CUPS_PRINTER_DISCOVERED);
+ *dtype = p->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_REMOTE);
return (p->name);
}
@@ -3797,7 +3572,7 @@ add_printer_formats(cupsd_printer_t *p) /* I - Printer */
attr->values[i].string.text = _cupsStrAlloc(mimetype);
}
-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
{
char pdl[1024]; /* Buffer to build pdl list */
mime_filter_t *filter; /* MIME filter looping var */
@@ -3853,7 +3628,7 @@ add_printer_formats(cupsd_printer_t *p) /* I - Printer */
cupsdSetString(&p->pdl, pdl);
}
-#endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
}
@@ -3931,9 +3706,7 @@ delete_printer_filters(
static void
dirty_printer(cupsd_printer_t *p) /* I - Printer */
{
- if (p->type & CUPS_PRINTER_DISCOVERED)
- cupsdMarkDirty(CUPSD_DIRTY_REMOTE);
- else if (p->type & CUPS_PRINTER_CLASS)
+ if (p->type & CUPS_PRINTER_CLASS)
cupsdMarkDirty(CUPSD_DIRTY_CLASSES);
else
cupsdMarkDirty(CUPSD_DIRTY_PRINTERS);
@@ -3973,7 +3746,7 @@ load_ppd(cupsd_printer_t *p) /* I - Printer */
_pwg_map_t *pwgsource, /* Current PWG source */
*pwgtype; /* Current PWG type */
ipp_attribute_t *attr; /* Attribute data */
- ipp_value_t *val; /* Attribute value */
+ _ipp_value_t *val; /* Attribute value */
int num_finishings, /* Number of finishings */
finishings[5]; /* finishings-supported values */
int num_qualities, /* Number of print-quality values */
@@ -4044,7 +3817,7 @@ load_ppd(cupsd_printer_t *p) /* I - Printer */
p->ppd_attrs = ippNew();
- if ((ppd = ppdOpenFile(ppd_name)) != NULL)
+ if ((ppd = _ppdOpenFile(ppd_name, _PPD_LOCALIZATION_NONE)) != NULL)
{
/*
* Add make/model and other various attributes...
@@ -4233,6 +4006,41 @@ load_ppd(cupsd_printer_t *p) /* I - Printer */
}
/*
+ * media-size-supported
+ */
+
+ num_media = p->pc->num_sizes;
+ if (p->pc->custom_min_keyword)
+ num_media ++;
+
+ if ((attr = ippAddCollections(p->ppd_attrs, IPP_TAG_PRINTER,
+ "media-size-supported", num_media,
+ NULL)) != NULL)
+ {
+ val = attr->values;
+
+ for (i = p->pc->num_sizes, pwgsize = p->pc->sizes;
+ i > 0;
+ i --, pwgsize ++, val ++)
+ {
+ val->collection = ippNew();
+ ippAddInteger(val->collection, IPP_TAG_PRINTER, IPP_TAG_INTEGER,
+ "x-dimension", pwgsize->width);
+ ippAddInteger(val->collection, IPP_TAG_PRINTER, IPP_TAG_INTEGER,
+ "y-dimension", pwgsize->length);
+ }
+
+ if (p->pc->custom_min_keyword)
+ {
+ val->collection = ippNew();
+ ippAddRange(val->collection, IPP_TAG_PRINTER, "x-dimension",
+ p->pc->custom_min_width, p->pc->custom_max_width);
+ ippAddRange(val->collection, IPP_TAG_PRINTER, "y-dimension",
+ p->pc->custom_min_length, p->pc->custom_max_length);
+ }
+ }
+
+ /*
* media-source-supported
*/
@@ -5024,7 +4832,8 @@ load_ppd(cupsd_printer_t *p) /* I - Printer */
else if (!strncmp(p->device_uri, "ipp://", 6) &&
(strstr(p->device_uri, "/printers/") != NULL ||
strstr(p->device_uri, "/classes/") != NULL ||
- (strstr(p->device_uri, "._ipp.") != NULL &&
+ ((strstr(p->device_uri, "._ipp.") != NULL ||
+ strstr(p->device_uri, "._ipps.") != NULL) &&
!strcmp(p->device_uri + strlen(p->device_uri) - 5,
"/cups"))))
{
@@ -5145,6 +4954,8 @@ log_ipp_conformance(
message = "Printer does not support REQUIRED Validate-Job operation.";
else if (!strcmp(reason, "missing-get-printer-attributes"))
message = "Printer does not support REQUIRED Get-Printer-Attributes operation.";
+ else if (!strcmp(reason, "missing-send-document"))
+ message = "Printer supports Create-Job but not Send-Document operation.";
else if (!strcmp(reason, "missing-job-history"))
message = "Printer does not provide REQUIRED job history.";
else if (!strcmp(reason, "missing-job-id"))
@@ -5528,5 +5339,5 @@ write_xml_string(cups_file_t *fp, /* I - File to write to */
/*
- * End of "$Id: printers.c 10295 2012-02-15 23:21:06Z mike $".
+ * End of "$Id: printers.c 10501 2012-05-23 01:19:11Z mike $".
*/
diff --git a/scheduler/printers.h b/scheduler/printers.h
index 5a551a46..4a0089a1 100644
--- a/scheduler/printers.h
+++ b/scheduler/printers.h
@@ -1,9 +1,9 @@
/*
- * "$Id: printers.h 9621 2011-03-18 18:42:46Z mike $"
+ * "$Id: printers.h 10467 2012-05-16 03:35:54Z mike $"
*
* Printer definitions for the CUPS scheduler.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -15,6 +15,11 @@
#ifdef HAVE_DNSSD
# include <dns_sd.h>
+#elif defined(HAVE_AVAHI)
+# include <avahi-client/client.h>
+# include <avahi-client/publish.h>
+# include <avahi-common/error.h>
+# include <avahi-common/thread-watch.h>
#endif /* HAVE_DNSSD */
#include <cups/pwg-private.h>
@@ -33,6 +38,20 @@ typedef struct
/*
+ * DNS-SD types to make the code cleaner/clearer...
+ */
+
+#ifdef HAVE_DNSSD
+typedef DNSServiceRef cupsd_srv_t; /* Service reference */
+typedef TXTRecordRef cupsd_txt_t; /* TXT record */
+
+#elif defined(HAVE_AVAHI)
+typedef AvahiEntryGroup *cupsd_srv_t; /* Service reference */
+typedef AvahiStringList *cupsd_txt_t; /* TXT record */
+#endif /* HAVE_DNSSD */
+
+
+/*
* Printer/class information structure...
*/
@@ -61,9 +80,6 @@ struct cupsd_printer_s
time_t state_time; /* Time at this state */
char *job_sheets[2]; /* Banners/job sheets */
cups_ptype_t type; /* Printer type (color, small, etc.) */
- char *browse_attrs; /* Attributes sent with browse data */
- time_t browse_expire; /* Expiration time for printer */
- time_t browse_time; /* Last time update was sent/received */
char *device_uri; /* Device URI */
char *sanitized_device_uri; /* Sanitized device URI */
char *port_monitor; /* Port monitor */
@@ -95,16 +111,17 @@ struct cupsd_printer_s
time_t marker_time; /* Last time marker attributes were updated */
_ppd_cache_t *pc; /* PPD cache and mapping data */
-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
char *reg_name, /* Name used for service registration */
- *pdl, /* pdl value for TXT record */
- *ipp_txt, /* IPP TXT record contents */
- *printer_txt; /* LPD TXT record contents */
- int ipp_len, /* IPP TXT record length */
- printer_len; /* LPD TXT record length */
- DNSServiceRef ipp_ref, /* Reference for _ipp._tcp,_cups */
- printer_ref; /* Reference for _printer._tcp */
-#endif /* HAVE_DNSSD */
+ *pdl; /* pdl value for TXT record */
+ cupsd_srv_t ipp_srv; /* IPP service(s) */
+# ifdef HAVE_DNSSD
+# ifdef HAVE_SSL
+ cupsd_srv_t ipps_srv; /* IPPS service(s) */
+# endif /* HAVE_SSL */
+ cupsd_srv_t printer_srv; /* LPD service */
+# endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
};
@@ -116,10 +133,8 @@ VAR ipp_t *CommonData VALUE(NULL);
/* Common printer object attrs */
VAR cups_array_t *CommonDefaults VALUE(NULL);
/* Common -default option names */
-VAR cups_array_t *Printers VALUE(NULL),
+VAR cups_array_t *Printers VALUE(NULL);
/* Printer list */
- *ImplicitPrinters VALUE(NULL);
- /* Implicit class printers */
VAR cupsd_printer_t *DefaultPrinter VALUE(NULL);
/* Default printer */
VAR char *DefaultPolicy VALUE(NULL);
@@ -157,7 +172,8 @@ extern int cupsdSetPrinterReasons(cupsd_printer_t *p,
const char *s);
extern void cupsdSetPrinterState(cupsd_printer_t *p, ipp_pstate_t s,
int update);
-#define cupsdStartPrinter(p,u) cupsdSetPrinterState((p), IPP_PRINTER_IDLE, (u))
+#define cupsdStartPrinter(p,u) cupsdSetPrinterState((p), \
+ IPP_PRINTER_IDLE, (u))
extern void cupsdStopPrinter(cupsd_printer_t *p, int update);
extern int cupsdUpdatePrinterPPD(cupsd_printer_t *p,
int num_keywords,
@@ -173,5 +189,5 @@ extern void cupsdWritePrintcap(void);
/*
- * End of "$Id: printers.h 9621 2011-03-18 18:42:46Z mike $".
+ * End of "$Id: printers.h 10467 2012-05-16 03:35:54Z mike $".
*/
diff --git a/scheduler/process.c b/scheduler/process.c
index c1ca526f..292a0d9e 100644
--- a/scheduler/process.c
+++ b/scheduler/process.c
@@ -1,9 +1,9 @@
/*
- * "$Id: process.c 9790 2011-05-19 22:40:03Z mike $"
+ * "$Id: process.c 10424 2012-04-23 17:26:57Z mike $"
*
* Process management routines for the CUPS scheduler.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -365,8 +365,8 @@ cupsdStartProcess(
if (envp)
{
/*
- * Add special voodoo magic for Mac OS X - this allows Mac OS X
- * programs to access their bundle resources properly...
+ * Add special voodoo magic for OS X - this allows OS X programs to access
+ * their bundle resources properly...
*/
if ((linkbytes = readlink(command, linkpath, sizeof(linkpath) - 1)) > 0)
@@ -577,7 +577,7 @@ cupsdStartProcess(
{
if (!process_array)
process_array = cupsArrayNew((cups_array_func_t)compare_procs, NULL);
-
+
if (process_array)
{
if ((proc = calloc(1, sizeof(cupsd_proc_t) + strlen(command))) != NULL)
@@ -652,5 +652,5 @@ cupsd_requote(char *dst, /* I - Destination buffer */
/*
- * End of "$Id: process.c 9790 2011-05-19 22:40:03Z mike $".
+ * End of "$Id: process.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/scheduler/select.c b/scheduler/select.c
index 99a2325f..a2bac8a4 100644
--- a/scheduler/select.c
+++ b/scheduler/select.c
@@ -1,5 +1,5 @@
/*
- * "$Id: select.c 9350 2010-11-04 23:23:25Z mike $"
+ * "$Id: select.c 10142 2011-12-02 20:02:15Z mike $"
*
* Select abstraction functions for the CUPS scheduler.
*
@@ -33,12 +33,12 @@
#ifdef HAVE_EPOLL
# include <sys/epoll.h>
-# include <sys/poll.h>
+# include <poll.h>
#elif defined(HAVE_KQUEUE)
# include <sys/event.h>
# include <sys/time.h>
#elif defined(HAVE_POLL)
-# include <sys/poll.h>
+# include <poll.h>
#elif defined(__hpux)
# include <sys/time.h>
#else
@@ -947,5 +947,5 @@ find_fd(int fd) /* I - File descriptor */
/*
- * End of "$Id: select.c 9350 2010-11-04 23:23:25Z mike $".
+ * End of "$Id: select.c 10142 2011-12-02 20:02:15Z mike $".
*/
diff --git a/scheduler/server.c b/scheduler/server.c
index ace9cc92..32ffafef 100644
--- a/scheduler/server.c
+++ b/scheduler/server.c
@@ -1,9 +1,9 @@
/*
- * "$Id: server.c 9632 2011-03-21 02:12:14Z mike $"
+ * "$Id: server.c 10490 2012-05-21 17:40:22Z mike $"
*
* Server start/stop routines for the CUPS scheduler.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -45,6 +45,12 @@ void
cupsdStartServer(void)
{
/*
+ * Start color management (as needed)...
+ */
+
+ cupsdStartColor();
+
+ /*
* Create the default security profile...
*/
@@ -56,7 +62,6 @@ cupsdStartServer(void)
cupsdStartListening();
cupsdStartBrowsing();
- cupsdStartPolling();
/*
* Create a pipe for CGI processes...
@@ -95,12 +100,17 @@ cupsdStopServer(void)
return;
/*
- * Close all network clients and stop all jobs...
+ * Stop color management (as needed)...
+ */
+
+ cupsdStopColor();
+
+ /*
+ * Close all network clients...
*/
cupsdCloseAllClients();
cupsdStopListening();
- cupsdStopPolling();
cupsdStopBrowsing();
cupsdStopAllNotifiers();
cupsdDeleteAllCerts();
@@ -126,16 +136,6 @@ cupsdStopServer(void)
CGIPipes[1] = -1;
}
-#ifdef HAVE_NOTIFY_POST
- /*
- * Send one last notification as the server shuts down.
- */
-
- cupsdLogMessage(CUPSD_LOG_DEBUG2,
- "notify_post(\"com.apple.printerListChange\") last");
- notify_post("com.apple.printerListChange");
-#endif /* HAVE_NOTIFY_POST */
-
/*
* Close all log files...
*/
@@ -180,5 +180,5 @@ cupsdStopServer(void)
/*
- * End of "$Id: server.c 9632 2011-03-21 02:12:14Z mike $".
+ * End of "$Id: server.c 10490 2012-05-21 17:40:22Z mike $".
*/
diff --git a/scheduler/subscriptions.c b/scheduler/subscriptions.c
index e1e82197..b6be4c8f 100644
--- a/scheduler/subscriptions.c
+++ b/scheduler/subscriptions.c
@@ -1,5 +1,5 @@
/*
- * "$Id: subscriptions.c 10262 2012-02-12 05:48:09Z mike $"
+ * "$Id: subscriptions.c 10253 2012-02-11 22:10:54Z mike $"
*
* Subscription routines for the CUPS scheduler.
*
@@ -1638,5 +1638,5 @@ cupsd_update_notifier(void)
/*
- * End of "$Id: subscriptions.c 10262 2012-02-12 05:48:09Z mike $".
+ * End of "$Id: subscriptions.c 10253 2012-02-11 22:10:54Z mike $".
*/
diff --git a/scheduler/sysman.c b/scheduler/sysman.c
index bd7052be..2a7258ab 100644
--- a/scheduler/sysman.c
+++ b/scheduler/sysman.c
@@ -1,9 +1,9 @@
/*
- * "$Id: sysman.c 10273 2012-02-13 20:30:23Z mike $"
+ * "$Id: sysman.c 10471 2012-05-16 22:57:03Z mike $"
*
* System management functions for the CUPS scheduler.
*
- * Copyright 2007-2012 by Apple Inc.
+ * Copyright 2007-2011 by Apple Inc.
* Copyright 2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -87,9 +87,6 @@ cupsdCleanDirty(void)
if (DirtyFiles & CUPSD_DIRTY_CLASSES)
cupsdSaveAllClasses();
- if (DirtyFiles & CUPSD_DIRTY_REMOTE)
- cupsdSaveRemoteCache();
-
if (DirtyFiles & CUPSD_DIRTY_PRINTCAP)
cupsdWritePrintcap();
@@ -123,10 +120,9 @@ cupsdCleanDirty(void)
void
cupsdMarkDirty(int what) /* I - What file(s) are dirty? */
{
- cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdMarkDirty(%c%c%c%c%c%c)",
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdMarkDirty(%c%c%c%c%c)",
(what & CUPSD_DIRTY_PRINTERS) ? 'P' : '-',
(what & CUPSD_DIRTY_CLASSES) ? 'C' : '-',
- (what & CUPSD_DIRTY_REMOTE) ? 'R' : '-',
(what & CUPSD_DIRTY_PRINTCAP) ? 'p' : '-',
(what & CUPSD_DIRTY_JOBS) ? 'J' : '-',
(what & CUPSD_DIRTY_SUBSCRIPTIONS) ? 'S' : '-');
@@ -865,20 +861,9 @@ sysUpdate(void)
p;
p = (cupsd_printer_t *)cupsArrayNext(Printers))
{
- if (p->type & CUPS_PRINTER_DISCOVERED)
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "Deleting remote destination \"%s\"", p->name);
- cupsArraySave(Printers);
- cupsdDeletePrinter(p, 0);
- cupsArrayRestore(Printers);
- }
- else
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG,
- "Deregistering local printer \"%s\"", p->name);
- cupsdDeregisterPrinter(p, 0);
- }
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "Deregistering local printer \"%s\"", p->name);
+ cupsdDeregisterPrinter(p, 0);
}
cupsdCleanDirty();
@@ -965,23 +950,8 @@ sysUpdate(void)
if (sysevent.event & SYSEVENT_NETCHANGED)
{
if (!Sleeping)
- {
cupsdLogMessage(CUPSD_LOG_DEBUG,
"System network configuration changed");
-
- /*
- * Resetting browse_time before calling cupsdSendBrowseList causes
- * browse packets to be sent for local shared printers.
- */
-
- for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
- p;
- p = (cupsd_printer_t *)cupsArrayNext(Printers))
- p->browse_time = 0;
-
- cupsdSendBrowseList();
- cupsdRestartPolling();
- }
else
cupsdLogMessage(CUPSD_LOG_DEBUG,
"System network configuration changed; "
@@ -1004,11 +974,13 @@ sysUpdate(void)
p = (cupsd_printer_t *)cupsArrayNext(Printers))
cupsdDeregisterPrinter(p, 1);
+# if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
/*
* Update the computer name and BTMM domain list...
*/
cupsdUpdateDNSSDName();
+# endif /* HAVE_DNSSD || HAVE_AVAHI */
/*
* Now re-register them...
@@ -1017,10 +989,7 @@ sysUpdate(void)
for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
p;
p = (cupsd_printer_t *)cupsArrayNext(Printers))
- {
- p->browse_time = 0;
cupsdRegisterPrinter(p);
- }
}
else
cupsdLogMessage(CUPSD_LOG_DEBUG,
@@ -1033,5 +1002,5 @@ sysUpdate(void)
/*
- * End of "$Id: sysman.c 10273 2012-02-13 20:30:23Z mike $".
+ * End of "$Id: sysman.c 10471 2012-05-16 22:57:03Z mike $".
*/
diff --git a/scheduler/sysman.h b/scheduler/sysman.h
index b47655f5..18974bb7 100644
--- a/scheduler/sysman.h
+++ b/scheduler/sysman.h
@@ -1,9 +1,9 @@
/*
- * "$Id: sysman.h 9350 2010-11-04 23:23:25Z mike $"
+ * "$Id: sysman.h 10104 2011-11-04 06:37:03Z mike $"
*
* System management definitions for the CUPS scheduler.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2011 by Apple Inc.
* Copyright 2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -20,10 +20,10 @@
#define CUPSD_DIRTY_NONE 0 /* Nothing is dirty */
#define CUPSD_DIRTY_PRINTERS 1 /* printers.conf is dirty */
#define CUPSD_DIRTY_CLASSES 2 /* classes.conf is dirty */
-#define CUPSD_DIRTY_REMOTE 4 /* remote.cache is dirty */
-#define CUPSD_DIRTY_PRINTCAP 8 /* printcap is dirty */
-#define CUPSD_DIRTY_JOBS 16 /* jobs.cache or "c" file(s) are dirty */
-#define CUPSD_DIRTY_SUBSCRIPTIONS 32 /* subscriptions.conf is dirty */
+#define CUPSD_DIRTY_PRINTCAP 4 /* printcap is dirty */
+#define CUPSD_DIRTY_JOBS 8 /* jobs.cache or "c" file(s) are dirty */
+#define CUPSD_DIRTY_SUBSCRIPTIONS 16 /* subscriptions.conf is dirty */
+
/*
* Globals...
@@ -60,5 +60,5 @@ extern void cupsdStopSystemMonitor(void);
/*
- * End of "$Id: sysman.h 9350 2010-11-04 23:23:25Z mike $".
+ * End of "$Id: sysman.h 10104 2011-11-04 06:37:03Z mike $".
*/
diff --git a/scheduler/testdirsvc.c b/scheduler/testdirsvc.c
deleted file mode 100644
index 3ffaf3bf..00000000
--- a/scheduler/testdirsvc.c
+++ /dev/null
@@ -1,324 +0,0 @@
-/*
- * "$Id: testdirsvc.c 9691 2011-04-15 23:38:13Z mike $"
- *
- * Browsing test program for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1997-2007 by Easy Software Products, all rights reserved.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * main() - Simulate one or more remote printers.
- * usage() - Show program usage...
- */
-
-/*
- * Include necessary headers...
- */
-
-#include <cups/cups.h>
-#include <cups/string-private.h>
-
-
-/*
- * Local functions...
- */
-
-static void usage(void);
-
-
-/*
- * 'main()' - Simulate one or more remote printers.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line arguments */
- char *argv[]) /* I - Command-line arguments */
-{
- int i, /* Looping var */
- printer, /* Current printer */
- num_printers, /* Number of printers */
- pclass, /* Current printer class */
- num_pclasses, /* Number of printer classes */
- server, /* Current server */
- num_servers, /* Number of servers */
- count, /* Number of printers sent this cycle */
- interval, /* Browse Interval */
- lease, /* Browse lease-duration */
- continuous, /* Run continuously? */
- port, /* Browse port */
- sock, /* Browse socket */
- val, /* Socket option value */
- seconds, /* Seconds until next cycle */
- verbose; /* Verbose output? */
- const char *options; /* Options for URIs */
- time_t curtime; /* Current UNIX time */
- struct tm *curdate; /* Current date and time */
- struct sockaddr_in addr; /* Broadcast address */
- char packet[1540]; /* Data packet */
- static const char * const names[26] = /* Printer names */
- {
- "alpha",
- "bravo",
- "charlie",
- "delta",
- "echo",
- "foxtrot",
- "golf",
- "hotel",
- "india",
- "juliet",
- "kilo",
- "lima",
- "mike",
- "november",
- "oscar",
- "papa",
- "quebec",
- "romeo",
- "sierra",
- "tango",
- "uniform",
- "victor",
- "wiskey",
- "x-ray",
- "yankee",
- "zulu"
- };
-
-
- /*
- * Process command-line arguments...
- */
-
- num_printers = 10;
- num_pclasses = 5;
- num_servers = 1;
- interval = 30;
- lease = 60;
- port = 0;
- verbose = 0;
- continuous = 0;
- options = NULL;
-
- for (i = 1; i < argc; i ++)
- {
- if (!strcmp(argv[i], "-c"))
- continuous = 1;
- else if (!strcmp(argv[i], "-i"))
- {
- i ++;
- if (i < argc)
- interval = atoi(argv[i]);
- else
- usage();
-
- continuous = 1;
- }
- else if (!strcmp(argv[i], "-l"))
- {
- i ++;
- if (i < argc)
- lease = atoi(argv[i]);
- else
- usage();
- }
- else if (!strcmp(argv[i], "-o"))
- {
- i ++;
- if (i < argc)
- options = argv[i];
- else
- usage();
- }
- else if (!strcmp(argv[i], "-C"))
- {
- i ++;
- if (i < argc)
- num_pclasses = atoi(argv[i]);
- else
- usage();
- }
- else if (!strcmp(argv[i], "-p"))
- {
- i ++;
- if (i < argc)
- num_printers = atoi(argv[i]);
- else
- usage();
- }
- else if (!strcmp(argv[i], "-s"))
- {
- i ++;
- if (i < argc)
- num_servers = atoi(argv[i]);
- else
- usage();
- }
- else if (!strcmp(argv[i], "-v"))
- verbose = 1;
- else if (isdigit(argv[i][0] & 255))
- {
- port = atoi(argv[i]);
- }
- else
- usage();
- }
-
- if ((num_printers <= 0 && num_pclasses <= 0) || num_servers <= 0 ||
- interval <= 0 || lease < 1 || port <= 0)
- usage();
-
- /*
- * Open a broadcast socket...
- */
-
- if ((sock = socket(AF_INET, SOCK_DGRAM, 0)) < 0)
- {
- perror("Unable to open broadcast socket");
- return (1);
- }
-
- /*
- * Set the "broadcast" flag...
- */
-
- val = 1;
- if (setsockopt(sock, SOL_SOCKET, SO_BROADCAST, &val, sizeof(val)))
- {
- perror("Unable to put socket in broadcast mode");
-
- close(sock);
- return (1);
- }
-
- /*
- * Broadcast to 127.0.0.1 (localhost)
- */
-
- memset(&addr, 0, sizeof(addr));
- addr.sin_addr.s_addr = htonl(0x7f000001);
- addr.sin_family = AF_INET;
- addr.sin_port = htons(port);
-
- /*
- * Send virtual printers continuously until we are stopped.
- */
-
- for (;;)
- {
- /*
- * Start a new cycle of N printers...
- */
-
- printf("Sending %d printers from %d servers...\n", num_printers,
- num_servers);
-
- count = num_servers * (num_printers + num_pclasses) / interval + 1;
- curtime = time(NULL);
- curdate = localtime(&curtime);
- seconds = interval;
-
- for (i = 0, printer = 0; printer < num_printers; printer ++)
- {
- for (server = 0; server < num_servers; server ++, i ++)
- {
- if (i == count)
- {
- seconds --;
- i = 0;
- sleep(1);
- curtime = time(NULL);
- curdate = localtime(&curtime);
- }
-
- snprintf(packet, sizeof(packet),
- "%x %x ipp://testserver-%d/printers/%s-%d \"Server Room %d\" "
- "\"Test Printer %d\" \"Acme Blazer 2000\"%s%s "
- "lease-duration=%d\n",
- CUPS_PRINTER_REMOTE, IPP_PRINTER_IDLE, server + 1,
- names[printer % 26], printer / 26 + 1, server + 1,
- printer + 1, options ? " ipp-options=" : "",
- options ? options : "", lease);
-
- if (verbose)
- printf("[%02d:%02d:%02d] %s", curdate->tm_hour, curdate->tm_min,
- curdate->tm_sec, packet);
-
- if (sendto(sock, packet, strlen(packet), 0,
- (struct sockaddr *)&addr, sizeof(addr)) < 0)
- perror("Unabled to send packet");
- }
- }
-
-
- for (i = 0, pclass = 0; pclass < num_pclasses; pclass ++)
- {
- for (server = 0; server < num_servers; server ++, i ++)
- {
- if (i == count)
- {
- seconds --;
- i = 0;
- sleep(1);
- curtime = time(NULL);
- curdate = localtime(&curtime);
- }
-
- snprintf(packet, sizeof(packet),
- "%x %x ipp://testserver-%d/classes/class-%s-%d \"Server Room %d\" "
- "\"Test Class %d\" \"Acme Blazer 2000\"%s%s "
- "lease-duration=%d\n",
- CUPS_PRINTER_REMOTE | CUPS_PRINTER_CLASS, IPP_PRINTER_IDLE,
- server + 1, names[pclass % 26], pclass / 26 + 1, server + 1,
- pclass + 1, options ? " ipp-options=" : "",
- options ? options : "", lease);
-
- if (verbose)
- printf("[%02d:%02d:%02d] %s", curdate->tm_hour, curdate->tm_min,
- curdate->tm_sec, packet);
-
- if (sendto(sock, packet, strlen(packet), 0,
- (struct sockaddr *)&addr, sizeof(addr)) < 0)
- perror("Unabled to send packet");
- }
- }
-
- if (!continuous)
- break;
-
- /*
- * Sleep for any remaining time...
- */
-
- if (seconds > 0)
- sleep(seconds);
- }
-
- return (0);
-}
-
-
-/*
- * 'usage()' - Show program usage...
- */
-
-static void
-usage(void)
-{
- puts("Usage: testdirsvc [-c] [-i interval] [-l lease-duration] "
- "[-o ipp-options] [-p printers] "
- "[-C classes] [-s servers] [-v] port");
- exit(0);
-}
-
-
-/*
- * End of "$Id: testdirsvc.c 9691 2011-04-15 23:38:13Z mike $".
- */
diff --git a/scheduler/testlpd.c b/scheduler/testlpd.c
index a7302ca5..94722d06 100644
--- a/scheduler/testlpd.c
+++ b/scheduler/testlpd.c
@@ -1,5 +1,5 @@
/*
- * "$Id: testlpd.c 9042 2010-03-24 00:45:34Z mike $"
+ * "$Id: testlpd.c 9950 2011-09-01 23:02:24Z mike $"
*
* cups-lpd test program for CUPS.
*
@@ -47,7 +47,7 @@ static int print_waiting(int outfd, int infd, char *dest);
static int remove_job(int outfd, int infd, char *dest, char **args);
static int status_long(int outfd, int infd, char *dest, char **args);
static int status_short(int outfd, int infd, char *dest, char **args);
-static void usage(void);
+static void usage(void) __attribute__((noreturn));
/*
@@ -546,5 +546,5 @@ usage(void)
/*
- * End of "$Id: testlpd.c 9042 2010-03-24 00:45:34Z mike $".
+ * End of "$Id: testlpd.c 9950 2011-09-01 23:02:24Z mike $".
*/
diff --git a/scheduler/testspeed.c b/scheduler/testspeed.c
index 1fe0a330..2b449764 100644
--- a/scheduler/testspeed.c
+++ b/scheduler/testspeed.c
@@ -1,5 +1,5 @@
/*
- * "$Id: testspeed.c 9042 2010-03-24 00:45:34Z mike $"
+ * "$Id: testspeed.c 9950 2011-09-01 23:02:24Z mike $"
*
* Scheduler speed test for CUPS.
*
@@ -40,7 +40,7 @@
static int do_test(const char *server, int port,
http_encryption_t encryption, int requests,
int verbose);
-static void usage(void);
+static void usage(void) __attribute__((noreturn));
/*
@@ -361,5 +361,5 @@ usage(void)
/*
- * End of "$Id: testspeed.c 9042 2010-03-24 00:45:34Z mike $".
+ * End of "$Id: testspeed.c 9950 2011-09-01 23:02:24Z mike $".
*/
diff --git a/scheduler/testsub.c b/scheduler/testsub.c
index bff8e8bc..389b9a44 100644
--- a/scheduler/testsub.c
+++ b/scheduler/testsub.c
@@ -1,9 +1,9 @@
/*
- * "$Id: testsub.c 9042 2010-03-24 00:45:34Z mike $"
+ * "$Id: testsub.c 10299 2012-02-16 00:33:54Z mike $"
*
* Scheduler notification tester for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2006-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -28,6 +28,7 @@
#include <cups/debug-private.h>
#include <cups/string-private.h>
#include <signal.h>
+#include <cups/ipp-private.h> /* TODO: Update so we don't need this */
/*
@@ -43,7 +44,7 @@ static int terminate = 0;
static void print_attributes(ipp_t *ipp, int indent);
static void sigterm_handler(int sig);
-static void usage(void);
+static void usage(void) __attribute__((noreturn));
/*
@@ -302,7 +303,7 @@ print_attributes(ipp_t *ipp, /* I - IPP request */
int i; /* Looping var */
ipp_tag_t group; /* Current group */
ipp_attribute_t *attr; /* Current attribute */
- ipp_value_t *val; /* Current value */
+ _ipp_value_t *val; /* Current value */
static const char * const tags[] = /* Value/group tag strings */
{
"reserved-00",
@@ -452,7 +453,7 @@ print_attributes(ipp_t *ipp, /* I - IPP request */
case IPP_TAG_RESOLUTION :
for (i = 0, val = attr->values; i < attr->num_values; i ++, val ++)
printf(" %dx%d%s", val->resolution.xres, val->resolution.yres,
- val->resolution.units == IPP_RES_PER_INCH ? "dpi" : "dpc");
+ val->resolution.units == IPP_RES_PER_INCH ? "dpi" : "dpcm");
putchar('\n');
break;
@@ -518,5 +519,5 @@ usage(void)
/*
- * End of "$Id: testsub.c 9042 2010-03-24 00:45:34Z mike $".
+ * End of "$Id: testsub.c 10299 2012-02-16 00:33:54Z mike $".
*/
diff --git a/scheduler/tls-darwin.c b/scheduler/tls-darwin.c
new file mode 100644
index 00000000..117213ae
--- /dev/null
+++ b/scheduler/tls-darwin.c
@@ -0,0 +1,570 @@
+/*
+ * "$Id: tls-darwin.c 10471 2012-05-16 22:57:03Z mike $"
+ *
+ * TLS support code for the CUPS scheduler on OS X.
+ *
+ * Copyright 2007-2012 by Apple Inc.
+ * Copyright 1997-2007 by Easy Software Products, all rights reserved.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * Contents:
+ *
+ * cupsdEndTLS() - Shutdown a secure session with the client.
+ * cupsdStartTLS() - Start a secure session with the client.
+ * copy_cdsa_certificate() - Copy a SSL/TLS certificate from the System
+ * keychain.
+ * make_certificate() - Make a self-signed SSL/TLS certificate.
+ */
+
+
+/*
+ * Local functions...
+ */
+
+static CFArrayRef copy_cdsa_certificate(cupsd_client_t *con);
+static int make_certificate(cupsd_client_t *con);
+
+
+/*
+ * 'cupsdEndTLS()' - Shutdown a secure session with the client.
+ */
+
+int /* O - 1 on success, 0 on error */
+cupsdEndTLS(cupsd_client_t *con) /* I - Client connection */
+{
+ while (SSLClose(con->http.tls) == errSSLWouldBlock)
+ usleep(1000);
+
+ SSLDisposeContext(con->http.tls);
+ con->http.tls = NULL;
+
+ if (con->http.tls_credentials)
+ CFRelease(con->http.tls_credentials);
+
+ return (1);
+}
+
+
+/*
+ * 'cupsdStartTLS()' - Start a secure session with the client.
+ */
+
+int /* O - 1 on success, 0 on error */
+cupsdStartTLS(cupsd_client_t *con) /* I - Client connection */
+{
+ OSStatus error = 0; /* Error code */
+ CFArrayRef peerCerts; /* Peer certificates */
+
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] Encrypting connection.",
+ con->http.fd);
+
+ con->http.tls_credentials = copy_cdsa_certificate(con);
+
+ if (!con->http.tls_credentials)
+ {
+ /*
+ * No keychain (yet), make a self-signed certificate...
+ */
+
+ if (make_certificate(con))
+ con->http.tls_credentials = copy_cdsa_certificate(con);
+ }
+
+ if (!con->http.tls_credentials)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Could not find signing key in keychain \"%s\"",
+ ServerCertificate);
+ error = errSSLBadConfiguration;
+ }
+
+ if (!error)
+ error = SSLNewContext(true, &con->http.tls);
+
+ if (!error)
+ error = SSLSetIOFuncs(con->http.tls, _httpReadCDSA, _httpWriteCDSA);
+
+ if (!error)
+ error = SSLSetConnection(con->http.tls, HTTP(con));
+
+ if (!error)
+ error = SSLSetAllowsExpiredCerts(con->http.tls, true);
+
+ if (!error)
+ error = SSLSetAllowsAnyRoot(con->http.tls, true);
+
+ if (!error)
+ error = SSLSetCertificate(con->http.tls, con->http.tls_credentials);
+
+ if (!error)
+ {
+ /*
+ * Perform SSL/TLS handshake
+ */
+
+ while ((error = SSLHandshake(con->http.tls)) == errSSLWouldBlock)
+ usleep(1000);
+ }
+
+ if (error)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to encrypt connection from %s - %s (%d)",
+ con->http.hostname, cssmErrorString(error), (int)error);
+
+ con->http.error = error;
+ con->http.status = HTTP_ERROR;
+
+ if (con->http.tls)
+ {
+ SSLDisposeContext(con->http.tls);
+ con->http.tls = NULL;
+ }
+
+ if (con->http.tls_credentials)
+ {
+ CFRelease(con->http.tls_credentials);
+ con->http.tls_credentials = NULL;
+ }
+
+ return (0);
+ }
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Connection from %s now encrypted.",
+ con->http.hostname);
+
+ if (!SSLCopyPeerCertificates(con->http.tls, &peerCerts) && peerCerts)
+ {
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Received %d peer certificates!",
+ (int)CFArrayGetCount(peerCerts));
+ CFRelease(peerCerts);
+ }
+ else
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Received NO peer certificates!");
+
+ return (1);
+}
+
+
+/*
+ * 'copy_cdsa_certificate()' - Copy a SSL/TLS certificate from the System
+ * keychain.
+ */
+
+static CFArrayRef /* O - Array of certificates */
+copy_cdsa_certificate(
+ cupsd_client_t *con) /* I - Client connection */
+{
+ OSStatus err; /* Error info */
+ SecKeychainRef keychain = NULL;/* Keychain reference */
+ SecIdentitySearchRef search = NULL; /* Search reference */
+ SecIdentityRef identity = NULL;/* Identity */
+ CFArrayRef certificates = NULL;
+ /* Certificate array */
+# if HAVE_SECPOLICYCREATESSL
+ SecPolicyRef policy = NULL; /* Policy ref */
+ CFStringRef servername = NULL;
+ /* Server name */
+ CFMutableDictionaryRef query = NULL; /* Query qualifiers */
+ CFArrayRef list = NULL; /* Keychain list */
+# if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ char localname[1024];/* Local hostname */
+# endif /* HAVE_DNSSD || HAVE_AVAHI */
+# elif defined(HAVE_SECIDENTITYSEARCHCREATEWITHPOLICY)
+ SecPolicyRef policy = NULL; /* Policy ref */
+ SecPolicySearchRef policy_search = NULL;
+ /* Policy search ref */
+ CSSM_DATA options; /* Policy options */
+ CSSM_APPLE_TP_SSL_OPTIONS
+ ssl_options; /* SSL Option for hostname */
+ char localname[1024];/* Local hostname */
+# endif /* HAVE_SECPOLICYCREATESSL */
+
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "copy_cdsa_certificate: Looking for certs for \"%s\"...",
+ con->servername);
+
+ if ((err = SecKeychainOpen(ServerCertificate, &keychain)))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot open keychain \"%s\" - %s (%d)",
+ ServerCertificate, cssmErrorString(err), (int)err);
+ goto cleanup;
+ }
+
+# if HAVE_SECPOLICYCREATESSL
+ servername = CFStringCreateWithCString(kCFAllocatorDefault, con->servername,
+ kCFStringEncodingUTF8);
+
+ policy = SecPolicyCreateSSL(1, servername);
+
+ if (servername)
+ CFRelease(servername);
+
+ if (!policy)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot create ssl policy reference");
+ goto cleanup;
+ }
+
+ if (!(query = CFDictionaryCreateMutable(kCFAllocatorDefault, 0,
+ &kCFTypeDictionaryKeyCallBacks,
+ &kCFTypeDictionaryValueCallBacks)))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot create query dictionary");
+ goto cleanup;
+ }
+
+ list = CFArrayCreate(kCFAllocatorDefault, (const void **)&keychain, 1,
+ &kCFTypeArrayCallBacks);
+
+ CFDictionaryAddValue(query, kSecClass, kSecClassIdentity);
+ CFDictionaryAddValue(query, kSecMatchPolicy, policy);
+ CFDictionaryAddValue(query, kSecReturnRef, kCFBooleanTrue);
+ CFDictionaryAddValue(query, kSecMatchLimit, kSecMatchLimitOne);
+ CFDictionaryAddValue(query, kSecMatchSearchList, list);
+
+ CFRelease(list);
+
+ err = SecItemCopyMatching(query, (CFTypeRef *)&identity);
+
+# if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ if (err && DNSSDHostName)
+ {
+ /*
+ * Search for the connection server name failed; try the DNS-SD .local
+ * hostname instead...
+ */
+
+ snprintf(localname, sizeof(localname), "%s.local", DNSSDHostName);
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "copy_cdsa_certificate: Looking for certs for \"%s\"...",
+ localname);
+
+ servername = CFStringCreateWithCString(kCFAllocatorDefault, localname,
+ kCFStringEncodingUTF8);
+
+ CFRelease(policy);
+
+ policy = SecPolicyCreateSSL(1, servername);
+
+ if (servername)
+ CFRelease(servername);
+
+ if (!policy)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot create ssl policy reference");
+ goto cleanup;
+ }
+
+ CFDictionarySetValue(query, kSecMatchPolicy, policy);
+
+ err = SecItemCopyMatching(query, (CFTypeRef *)&identity);
+ }
+# endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ if (err)
+ {
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "Cannot find signing key in keychain \"%s\": %s (%d)",
+ ServerCertificate, cssmErrorString(err), (int)err);
+ goto cleanup;
+ }
+
+# elif defined(HAVE_SECIDENTITYSEARCHCREATEWITHPOLICY)
+ /*
+ * Use a policy to search for valid certificates whose common name matches the
+ * servername...
+ */
+
+ if (SecPolicySearchCreate(CSSM_CERT_X_509v3, &CSSMOID_APPLE_TP_SSL,
+ NULL, &policy_search))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot create a policy search reference");
+ goto cleanup;
+ }
+
+ if (SecPolicySearchCopyNext(policy_search, &policy))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Cannot find a policy to use for searching");
+ goto cleanup;
+ }
+
+ memset(&ssl_options, 0, sizeof(ssl_options));
+ ssl_options.Version = CSSM_APPLE_TP_SSL_OPTS_VERSION;
+ ssl_options.ServerName = con->servername;
+ ssl_options.ServerNameLen = strlen(con->servername);
+
+ options.Data = (uint8 *)&ssl_options;
+ options.Length = sizeof(ssl_options);
+
+ if (SecPolicySetValue(policy, &options))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Cannot set policy value to use for searching");
+ goto cleanup;
+ }
+
+ if ((err = SecIdentitySearchCreateWithPolicy(policy, NULL, CSSM_KEYUSE_SIGN,
+ keychain, FALSE, &search)))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Cannot create identity search reference: %s (%d)",
+ cssmErrorString(err), (int)err);
+ goto cleanup;
+ }
+
+ err = SecIdentitySearchCopyNext(search, &identity);
+
+# if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ if (err && DNSSDHostName)
+ {
+ /*
+ * Search for the connection server name failed; try the DNS-SD .local
+ * hostname instead...
+ */
+
+ snprintf(localname, sizeof(localname), "%s.local", DNSSDHostName);
+
+ ssl_options.ServerName = localname;
+ ssl_options.ServerNameLen = strlen(localname);
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "copy_cdsa_certificate: Looking for certs for \"%s\"...",
+ localname);
+
+ if (SecPolicySetValue(policy, &options))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Cannot set policy value to use for searching");
+ goto cleanup;
+ }
+
+ CFRelease(search);
+ search = NULL;
+ if ((err = SecIdentitySearchCreateWithPolicy(policy, NULL, CSSM_KEYUSE_SIGN,
+ keychain, FALSE, &search)))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Cannot create identity search reference: %s (%d)",
+ cssmErrorString(err), (int)err);
+ goto cleanup;
+ }
+
+ err = SecIdentitySearchCopyNext(search, &identity);
+
+ }
+# endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ if (err)
+ {
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "Cannot find signing key in keychain \"%s\": %s (%d)",
+ ServerCertificate, cssmErrorString(err), (int)err);
+ goto cleanup;
+ }
+
+# else
+ /*
+ * Assume there is exactly one SecIdentity in the keychain...
+ */
+
+ if ((err = SecIdentitySearchCreate(keychain, CSSM_KEYUSE_SIGN, &search)))
+ {
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "Cannot create identity search reference (%d)", (int)err);
+ goto cleanup;
+ }
+
+ if ((err = SecIdentitySearchCopyNext(search, &identity)))
+ {
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "Cannot find signing key in keychain \"%s\": %s (%d)",
+ ServerCertificate, cssmErrorString(err), (int)err);
+ goto cleanup;
+ }
+# endif /* HAVE_SECPOLICYCREATESSL */
+
+ if (CFGetTypeID(identity) != SecIdentityGetTypeID())
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "SecIdentity CFTypeID failure!");
+ goto cleanup;
+ }
+
+ if ((certificates = CFArrayCreate(NULL, (const void **)&identity,
+ 1, &kCFTypeArrayCallBacks)) == NULL)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Cannot create certificate array");
+ goto cleanup;
+ }
+
+ cleanup :
+
+ if (keychain)
+ CFRelease(keychain);
+ if (search)
+ CFRelease(search);
+ if (identity)
+ CFRelease(identity);
+
+# if HAVE_SECPOLICYCREATESSL
+ if (policy)
+ CFRelease(policy);
+ if (query)
+ CFRelease(query);
+# elif defined(HAVE_SECIDENTITYSEARCHCREATEWITHPOLICY)
+ if (policy)
+ CFRelease(policy);
+ if (policy_search)
+ CFRelease(policy_search);
+# endif /* HAVE_SECPOLICYCREATESSL */
+
+ return (certificates);
+}
+
+
+/*
+ * 'make_certificate()' - Make a self-signed SSL/TLS certificate.
+ */
+
+static int /* O - 1 on success, 0 on failure */
+make_certificate(cupsd_client_t *con) /* I - Client connection */
+{
+ int pid, /* Process ID of command */
+ status; /* Status of command */
+ char command[1024], /* Command */
+ *argv[4], /* Command-line arguments */
+ *envp[MAX_ENV + 1], /* Environment variables */
+ keychain[1024], /* Keychain argument */
+ infofile[1024], /* Type-in information for cert */
+# if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ localname[1024], /* Local hostname */
+# endif /* HAVE_DNSSD || HAVE_AVAHI */
+ *servername; /* Name of server in cert */
+ cups_file_t *fp; /* Seed/info file */
+ int infofd; /* Info file descriptor */
+
+
+# if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ if (con->servername && isdigit(con->servername[0] & 255) && DNSSDHostName)
+ {
+ snprintf(localname, sizeof(localname), "%s.local", DNSSDHostName);
+ servername = localname;
+ }
+ else
+# endif /* HAVE_DNSSD || HAVE_AVAHI */
+ servername = con->servername;
+
+ /*
+ * Run the "certtool" command to generate a self-signed certificate...
+ */
+
+ if (!cupsFileFind("certtool", getenv("PATH"), 1, command, sizeof(command)))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "No SSL certificate and certtool command not found!");
+ return (0);
+ }
+
+ /*
+ * Create a file with the certificate information fields...
+ *
+ * Note: This assumes that the default questions are asked by the certtool
+ * command...
+ */
+
+ if ((fp = cupsTempFile2(infofile, sizeof(infofile))) == NULL)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to create certificate information file %s - %s",
+ infofile, strerror(errno));
+ return (0);
+ }
+
+ cupsFilePrintf(fp,
+ "%s\n" /* Enter key and certificate label */
+ "r\n" /* Generate RSA key pair */
+ "2048\n" /* Key size in bits */
+ "y\n" /* OK (y = yes) */
+ "b\n" /* Usage (b=signing/encryption) */
+ "s\n" /* Sign with SHA1 */
+ "y\n" /* OK (y = yes) */
+ "%s\n" /* Common name */
+ "\n" /* Country (default) */
+ "\n" /* Organization (default) */
+ "\n" /* Organizational unit (default) */
+ "\n" /* State/Province (default) */
+ "%s\n" /* Email address */
+ "y\n", /* OK (y = yes) */
+ servername, servername, ServerAdmin);
+ cupsFileClose(fp);
+
+ cupsdLogMessage(CUPSD_LOG_INFO,
+ "Generating SSL server key and certificate...");
+
+ snprintf(keychain, sizeof(keychain), "k=%s", ServerCertificate);
+
+ argv[0] = "certtool";
+ argv[1] = "c";
+ argv[2] = keychain;
+ argv[3] = NULL;
+
+ cupsdLoadEnv(envp, MAX_ENV);
+
+ infofd = open(infofile, O_RDONLY);
+
+ if (!cupsdStartProcess(command, argv, envp, infofd, -1, -1, -1, -1, 1, NULL,
+ NULL, &pid))
+ {
+ close(infofd);
+ unlink(infofile);
+ return (0);
+ }
+
+ close(infofd);
+ unlink(infofile);
+
+ while (waitpid(pid, &status, 0) < 0)
+ if (errno != EINTR)
+ {
+ status = 1;
+ break;
+ }
+
+ cupsdFinishProcess(pid, command, sizeof(command), NULL);
+
+ if (status)
+ {
+ if (WIFEXITED(status))
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to create SSL server key and certificate - "
+ "the certtool command stopped with status %d!",
+ WEXITSTATUS(status));
+ else
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to create SSL server key and certificate - "
+ "the certtool command crashed on signal %d!",
+ WTERMSIG(status));
+ }
+ else
+ {
+ cupsdLogMessage(CUPSD_LOG_INFO,
+ "Created SSL server certificate file \"%s\"...",
+ ServerCertificate);
+ }
+
+ return (!status);
+}
+
+
+/*
+ * End of "$Id: tls-darwin.c 10471 2012-05-16 22:57:03Z mike $".
+ */
diff --git a/scheduler/tls-gnutls.c b/scheduler/tls-gnutls.c
new file mode 100644
index 00000000..106dc522
--- /dev/null
+++ b/scheduler/tls-gnutls.c
@@ -0,0 +1,292 @@
+/*
+ * "$Id: tls-gnutls.c 10374 2012-03-22 20:30:20Z mike $"
+ *
+ * TLS support code for the CUPS scheduler using GNU TLS.
+ *
+ * Copyright 2007-2012 by Apple Inc.
+ * Copyright 1997-2007 by Easy Software Products, all rights reserved.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * Contents:
+ *
+ * cupsdEndTLS() - Shutdown a secure session with the client.
+ * cupsdStartTLS() - Start a secure session with the client.
+ * make_certificate() - Make a self-signed SSL/TLS certificate.
+ */
+
+
+/*
+ * Local functions...
+ */
+
+static int make_certificate(cupsd_client_t *con);
+
+
+/*
+ * 'cupsdEndTLS()' - Shutdown a secure session with the client.
+ */
+
+int /* O - 1 on success, 0 on error */
+cupsdEndTLS(cupsd_client_t *con) /* I - Client connection */
+{
+ int error; /* Error code */
+ gnutls_certificate_server_credentials *credentials;
+ /* TLS credentials */
+
+
+ credentials = (gnutls_certificate_server_credentials *)
+ (con->http.tls_credentials);
+
+ error = gnutls_bye(con->http.tls, GNUTLS_SHUT_WR);
+ switch (error)
+ {
+ case GNUTLS_E_SUCCESS:
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "SSL shutdown successful!");
+ break;
+ default:
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "SSL shutdown failed: %s", gnutls_strerror(error));
+ break;
+ }
+
+ gnutls_deinit(con->http.tls);
+ con->http.tls = NULL;
+
+ gnutls_certificate_free_credentials(*credentials);
+ free(credentials);
+
+ return (1);
+}
+
+
+/*
+ * 'cupsdStartTLS()' - Start a secure session with the client.
+ */
+
+int /* O - 1 on success, 0 on error */
+cupsdStartTLS(cupsd_client_t *con) /* I - Client connection */
+{
+ int status; /* Error code */
+ gnutls_certificate_server_credentials *credentials;
+ /* TLS credentials */
+
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] Encrypting connection.",
+ con->http.fd);
+
+ /*
+ * Verify that we have a certificate...
+ */
+
+ if (access(ServerKey, 0) || access(ServerCertificate, 0))
+ {
+ /*
+ * Nope, make a self-signed certificate...
+ */
+
+ if (!make_certificate(con))
+ return (0);
+ }
+
+ /*
+ * Create the SSL object and perform the SSL handshake...
+ */
+
+ credentials = (gnutls_certificate_server_credentials *)
+ malloc(sizeof(gnutls_certificate_server_credentials));
+ if (credentials == NULL)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to encrypt connection from %s - %s",
+ con->http.hostname, strerror(errno));
+
+ return (0);
+ }
+
+ gnutls_certificate_allocate_credentials(credentials);
+ gnutls_certificate_set_x509_key_file(*credentials, ServerCertificate,
+ ServerKey, GNUTLS_X509_FMT_PEM);
+
+ gnutls_init(&con->http.tls, GNUTLS_SERVER);
+ gnutls_set_default_priority(con->http.tls);
+
+ gnutls_credentials_set(con->http.tls, GNUTLS_CRD_CERTIFICATE, *credentials);
+ gnutls_transport_set_ptr(con->http.tls, (gnutls_transport_ptr)HTTP(con));
+ gnutls_transport_set_pull_function(con->http.tls, _httpReadGNUTLS);
+ gnutls_transport_set_push_function(con->http.tls, _httpWriteGNUTLS);
+
+ while ((status = gnutls_handshake(con->http.tls)) != GNUTLS_E_SUCCESS)
+ {
+ if (gnutls_error_is_fatal(status))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to encrypt connection from %s - %s",
+ con->http.hostname, gnutls_strerror(status));
+
+ gnutls_deinit(con->http.tls);
+ gnutls_certificate_free_credentials(*credentials);
+ con->http.tls = NULL;
+ free(credentials);
+ return (0);
+ }
+ }
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Connection from %s now encrypted.",
+ con->http.hostname);
+
+ con->http.tls_credentials = credentials;
+ return (1);
+}
+
+
+/*
+ * 'make_certificate()' - Make a self-signed SSL/TLS certificate.
+ */
+
+static int /* O - 1 on success, 0 on failure */
+make_certificate(cupsd_client_t *con) /* I - Client connection */
+{
+ gnutls_x509_crt crt; /* Self-signed certificate */
+ gnutls_x509_privkey key; /* Encryption key */
+ cups_lang_t *language; /* Default language info */
+ cups_file_t *fp; /* Key/cert file */
+ unsigned char buffer[8192]; /* Buffer for x509 data */
+ size_t bytes; /* Number of bytes of data */
+ unsigned char serial[4]; /* Serial number buffer */
+ time_t curtime; /* Current time */
+ int result; /* Result of GNU TLS calls */
+
+
+ /*
+ * Create the encryption key...
+ */
+
+ cupsdLogMessage(CUPSD_LOG_INFO, "Generating SSL server key...");
+
+ gnutls_x509_privkey_init(&key);
+ gnutls_x509_privkey_generate(key, GNUTLS_PK_RSA, 2048, 0);
+
+ /*
+ * Save it...
+ */
+
+ bytes = sizeof(buffer);
+
+ if ((result = gnutls_x509_privkey_export(key, GNUTLS_X509_FMT_PEM,
+ buffer, &bytes)) < 0)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to export SSL server key - %s",
+ gnutls_strerror(result));
+ gnutls_x509_privkey_deinit(key);
+ return (0);
+ }
+ else if ((fp = cupsFileOpen(ServerKey, "w")) != NULL)
+ {
+ cupsFileWrite(fp, (char *)buffer, bytes);
+ cupsFileClose(fp);
+
+ cupsdLogMessage(CUPSD_LOG_INFO, "Created SSL server key file \"%s\"...",
+ ServerKey);
+ }
+ else
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to create SSL server key file \"%s\" - %s",
+ ServerKey, strerror(errno));
+ gnutls_x509_privkey_deinit(key);
+ return (0);
+ }
+
+ /*
+ * Create the self-signed certificate...
+ */
+
+ cupsdLogMessage(CUPSD_LOG_INFO, "Generating self-signed SSL certificate...");
+
+ language = cupsLangDefault();
+ curtime = time(NULL);
+ serial[0] = curtime >> 24;
+ serial[1] = curtime >> 16;
+ serial[2] = curtime >> 8;
+ serial[3] = curtime;
+
+ gnutls_x509_crt_init(&crt);
+ if (strlen(language->language) == 5)
+ gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_COUNTRY_NAME, 0,
+ language->language + 3, 2);
+ else
+ gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_COUNTRY_NAME, 0,
+ "US", 2);
+ gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_COMMON_NAME, 0,
+ ServerName, strlen(ServerName));
+ gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_ORGANIZATION_NAME, 0,
+ ServerName, strlen(ServerName));
+ gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME,
+ 0, "Unknown", 7);
+ gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, 0,
+ "Unknown", 7);
+ gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_X520_LOCALITY_NAME, 0,
+ "Unknown", 7);
+ gnutls_x509_crt_set_dn_by_oid(crt, GNUTLS_OID_PKCS9_EMAIL, 0,
+ ServerAdmin, strlen(ServerAdmin));
+ gnutls_x509_crt_set_key(crt, key);
+ gnutls_x509_crt_set_serial(crt, serial, sizeof(serial));
+ gnutls_x509_crt_set_activation_time(crt, curtime);
+ gnutls_x509_crt_set_expiration_time(crt, curtime + 10 * 365 * 86400);
+ gnutls_x509_crt_set_ca_status(crt, 0);
+ gnutls_x509_crt_set_subject_alternative_name(crt, GNUTLS_SAN_DNSNAME,
+ ServerName);
+ gnutls_x509_crt_set_key_purpose_oid(crt, GNUTLS_KP_TLS_WWW_SERVER, 0);
+ gnutls_x509_crt_set_key_usage(crt, GNUTLS_KEY_KEY_ENCIPHERMENT);
+ gnutls_x509_crt_set_version(crt, 3);
+
+ bytes = sizeof(buffer);
+ if (gnutls_x509_crt_get_key_id(crt, 0, buffer, &bytes) >= 0)
+ gnutls_x509_crt_set_subject_key_id(crt, buffer, bytes);
+
+ gnutls_x509_crt_sign(crt, crt, key);
+
+ /*
+ * Save it...
+ */
+
+ bytes = sizeof(buffer);
+ if ((result = gnutls_x509_crt_export(crt, GNUTLS_X509_FMT_PEM,
+ buffer, &bytes)) < 0)
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to export SSL server certificate - %s",
+ gnutls_strerror(result));
+ else if ((fp = cupsFileOpen(ServerCertificate, "w")) != NULL)
+ {
+ cupsFileWrite(fp, (char *)buffer, bytes);
+ cupsFileClose(fp);
+
+ cupsdLogMessage(CUPSD_LOG_INFO,
+ "Created SSL server certificate file \"%s\"...",
+ ServerCertificate);
+ }
+ else
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to create SSL server certificate file \"%s\" - %s",
+ ServerCertificate, strerror(errno));
+
+ /*
+ * Cleanup...
+ */
+
+ gnutls_x509_crt_deinit(crt);
+ gnutls_x509_privkey_deinit(key);
+
+ return (1);
+}
+
+
+/*
+ * End of "$Id: tls-gnutls.c 10374 2012-03-22 20:30:20Z mike $".
+ */
diff --git a/scheduler/tls-openssl.c b/scheduler/tls-openssl.c
new file mode 100644
index 00000000..f19d28ae
--- /dev/null
+++ b/scheduler/tls-openssl.c
@@ -0,0 +1,353 @@
+/*
+ * "$Id: tls-openssl.c 10374 2012-03-22 20:30:20Z mike $"
+ *
+ * TLS support code for the CUPS scheduler using OpenSSL.
+ *
+ * Copyright 2007-2012 by Apple Inc.
+ * Copyright 1997-2007 by Easy Software Products, all rights reserved.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * Contents:
+ *
+ * cupsdEndTLS() - Shutdown a secure session with the client.
+ * cupsdStartTLS() - Start a secure session with the client.
+ * make_certificate() - Make a self-signed SSL/TLS certificate.
+ */
+
+
+/*
+ * Local functions...
+ */
+
+static int make_certificate(cupsd_client_t *con);
+
+
+/*
+ * 'cupsdEndTLS()' - Shutdown a secure session with the client.
+ */
+
+int /* O - 1 on success, 0 on error */
+cupsdEndTLS(cupsd_client_t *con) /* I - Client connection */
+{
+ SSL_CTX *context; /* Context for encryption */
+ unsigned long error; /* Error code */
+ int status; /* Return status */
+
+
+ context = SSL_get_SSL_CTX(con->http.tls);
+
+ switch (SSL_shutdown(con->http.tls))
+ {
+ case 1 :
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
+ "SSL shutdown successful!");
+ status = 1;
+ break;
+
+ case -1 :
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Fatal error during SSL shutdown!");
+
+ default :
+ while ((error = ERR_get_error()) != 0)
+ cupsdLogMessage(CUPSD_LOG_ERROR, "SSL shutdown failed: %s",
+ ERR_error_string(error, NULL));
+ status = 0;
+ break;
+ }
+
+ SSL_CTX_free(context);
+ SSL_free(con->http.tls);
+ con->http.tls = NULL;
+
+ return (status);
+}
+
+
+/*
+ * 'cupsdStartTLS()' - Start a secure session with the client.
+ */
+
+int /* O - 1 on success, 0 on error */
+cupsdStartTLS(cupsd_client_t *con) /* I - Client connection */
+{
+ SSL_CTX *context; /* Context for encryption */
+ BIO *bio; /* BIO data */
+ unsigned long error; /* Error code */
+
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "[Client %d] Encrypting connection.",
+ con->http.fd);
+
+ /*
+ * Verify that we have a certificate...
+ */
+
+ if (access(ServerKey, 0) || access(ServerCertificate, 0))
+ {
+ /*
+ * Nope, make a self-signed certificate...
+ */
+
+ if (!make_certificate(con))
+ return (0);
+ }
+
+ /*
+ * Create the SSL context and accept the connection...
+ */
+
+ context = SSL_CTX_new(SSLv23_server_method());
+
+ SSL_CTX_set_options(context, SSL_OP_NO_SSLv2); /* Only use SSLv3 or TLS */
+ if (SSLOptions & CUPSD_SSL_NOEMPTY)
+ SSL_CTX_set_options(context, SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS);
+ SSL_CTX_use_PrivateKey_file(context, ServerKey, SSL_FILETYPE_PEM);
+ SSL_CTX_use_certificate_chain_file(context, ServerCertificate);
+
+ bio = BIO_new(_httpBIOMethods());
+ BIO_ctrl(bio, BIO_C_SET_FILE_PTR, 0, (char *)HTTP(con));
+
+ con->http.tls = SSL_new(context);
+ SSL_set_bio(con->http.tls, bio, bio);
+
+ if (SSL_accept(con->http.tls) != 1)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to encrypt connection from %s.",
+ con->http.hostname);
+
+ while ((error = ERR_get_error()) != 0)
+ cupsdLogMessage(CUPSD_LOG_ERROR, "%s", ERR_error_string(error, NULL));
+
+ SSL_CTX_free(context);
+ SSL_free(con->http.tls);
+ con->http.tls = NULL;
+ return (0);
+ }
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Connection from %s now encrypted.",
+ con->http.hostname);
+
+ return (1);
+}
+
+
+/*
+ * 'make_certificate()' - Make a self-signed SSL/TLS certificate.
+ */
+
+static int /* O - 1 on success, 0 on failure */
+make_certificate(cupsd_client_t *con) /* I - Client connection */
+{
+#ifdef HAVE_WAITPID
+ int pid, /* Process ID of command */
+ status; /* Status of command */
+ char command[1024], /* Command */
+ *argv[12], /* Command-line arguments */
+ *envp[MAX_ENV + 1], /* Environment variables */
+ infofile[1024], /* Type-in information for cert */
+ seedfile[1024]; /* Random number seed file */
+ int envc, /* Number of environment variables */
+ bytes; /* Bytes written */
+ cups_file_t *fp; /* Seed/info file */
+ int infofd; /* Info file descriptor */
+
+
+ /*
+ * Run the "openssl" command to seed the random number generator and
+ * generate a self-signed certificate that is good for 10 years:
+ *
+ * openssl rand -rand seedfile 1
+ *
+ * openssl req -new -x509 -keyout ServerKey \
+ * -out ServerCertificate -days 3650 -nodes
+ *
+ * The seeding step is crucial in ensuring that the openssl command
+ * does not block on systems without sufficient entropy...
+ */
+
+ if (!cupsFileFind("openssl", getenv("PATH"), 1, command, sizeof(command)))
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "No SSL certificate and openssl command not found!");
+ return (0);
+ }
+
+ if (access("/dev/urandom", 0))
+ {
+ /*
+ * If the system doesn't provide /dev/urandom, then any random source
+ * will probably be blocking-style, so generate some random data to
+ * use as a seed for the certificate. Note that we have already
+ * seeded the random number generator in cupsdInitCerts()...
+ */
+
+ cupsdLogMessage(CUPSD_LOG_INFO,
+ "Seeding the random number generator...");
+
+ /*
+ * Write the seed file...
+ */
+
+ if ((fp = cupsTempFile2(seedfile, sizeof(seedfile))) == NULL)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to create seed file %s - %s",
+ seedfile, strerror(errno));
+ return (0);
+ }
+
+ for (bytes = 0; bytes < 262144; bytes ++)
+ cupsFilePutChar(fp, CUPS_RAND());
+
+ cupsFileClose(fp);
+
+ /*
+ * Run the openssl command to seed its random number generator...
+ */
+
+ argv[0] = "openssl";
+ argv[1] = "rand";
+ argv[2] = "-rand";
+ argv[3] = seedfile;
+ argv[4] = "1";
+ argv[5] = NULL;
+
+ envc = cupsdLoadEnv(envp, MAX_ENV);
+ envp[envc] = NULL;
+
+ if (!cupsdStartProcess(command, argv, envp, -1, -1, -1, -1, -1, 1, NULL,
+ NULL, &pid))
+ {
+ unlink(seedfile);
+ return (0);
+ }
+
+ while (waitpid(pid, &status, 0) < 0)
+ if (errno != EINTR)
+ {
+ status = 1;
+ break;
+ }
+
+ cupsdFinishProcess(pid, command, sizeof(command), NULL);
+
+ /*
+ * Remove the seed file, as it is no longer needed...
+ */
+
+ unlink(seedfile);
+
+ if (status)
+ {
+ if (WIFEXITED(status))
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to seed random number generator - "
+ "the openssl command stopped with status %d!",
+ WEXITSTATUS(status));
+ else
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to seed random number generator - "
+ "the openssl command crashed on signal %d!",
+ WTERMSIG(status));
+
+ return (0);
+ }
+ }
+
+ /*
+ * Create a file with the certificate information fields...
+ *
+ * Note: This assumes that the default questions are asked by the openssl
+ * command...
+ */
+
+ if ((fp = cupsTempFile2(infofile, sizeof(infofile))) == NULL)
+ {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to create certificate information file %s - %s",
+ infofile, strerror(errno));
+ return (0);
+ }
+
+ cupsFilePrintf(fp, ".\n.\n.\n%s\n.\n%s\n%s\n",
+ ServerName, ServerName, ServerAdmin);
+ cupsFileClose(fp);
+
+ cupsdLogMessage(CUPSD_LOG_INFO,
+ "Generating SSL server key and certificate...");
+
+ argv[0] = "openssl";
+ argv[1] = "req";
+ argv[2] = "-new";
+ argv[3] = "-x509";
+ argv[4] = "-keyout";
+ argv[5] = ServerKey;
+ argv[6] = "-out";
+ argv[7] = ServerCertificate;
+ argv[8] = "-days";
+ argv[9] = "3650";
+ argv[10] = "-nodes";
+ argv[11] = NULL;
+
+ cupsdLoadEnv(envp, MAX_ENV);
+
+ infofd = open(infofile, O_RDONLY);
+
+ if (!cupsdStartProcess(command, argv, envp, infofd, -1, -1, -1, -1, 1, NULL,
+ NULL, &pid))
+ {
+ close(infofd);
+ unlink(infofile);
+ return (0);
+ }
+
+ close(infofd);
+ unlink(infofile);
+
+ while (waitpid(pid, &status, 0) < 0)
+ if (errno != EINTR)
+ {
+ status = 1;
+ break;
+ }
+
+ cupsdFinishProcess(pid, command, sizeof(command), NULL);
+
+ if (status)
+ {
+ if (WIFEXITED(status))
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to create SSL server key and certificate - "
+ "the openssl command stopped with status %d!",
+ WEXITSTATUS(status));
+ else
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "Unable to create SSL server key and certificate - "
+ "the openssl command crashed on signal %d!",
+ WTERMSIG(status));
+ }
+ else
+ {
+ cupsdLogMessage(CUPSD_LOG_INFO, "Created SSL server key file \"%s\"...",
+ ServerKey);
+ cupsdLogMessage(CUPSD_LOG_INFO,
+ "Created SSL server certificate file \"%s\"...",
+ ServerCertificate);
+ }
+
+ return (!status);
+
+#else
+ return (0);
+#endif /* HAVE_WAITPID */
+}
+
+
+/*
+ * End of "$Id: tls-openssl.c 10374 2012-03-22 20:30:20Z mike $".
+ */
diff --git a/scheduler/tls.c b/scheduler/tls.c
new file mode 100644
index 00000000..357af741
--- /dev/null
+++ b/scheduler/tls.c
@@ -0,0 +1,30 @@
+/*
+ * "$Id: tls.c 10377 2012-03-22 21:14:02Z mike $"
+ *
+ * TLS support code for the CUPS scheduler.
+ *
+ * Copyright 2012 by Apple Inc.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ */
+
+#include "cupsd.h"
+
+#ifdef HAVE_SSL
+# ifdef HAVE_CDSASSL
+# include "tls-darwin.c"
+# elif defined(HAVE_GNUTLS)
+# include "tls-gnutls.c"
+# elif defined(HAVE_LIBSSL)
+# include "tls-openssl.c"
+# endif /* HAVE_CDSASSL */
+#endif /* HAVE_SSL */
+
+
+/*
+ * End of "$Id: tls.c 10377 2012-03-22 21:14:02Z mike $".
+ */
diff --git a/scheduler/util.c b/scheduler/util.c
index 9bc80779..281c1e3c 100644
--- a/scheduler/util.c
+++ b/scheduler/util.c
@@ -1,5 +1,5 @@
/*
- * "$Id: util.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: util.c 10424 2012-04-23 17:26:57Z mike $"
*
* Mini-daemon utility functions for CUPS.
*
@@ -170,7 +170,7 @@ cupsdCreateStringsArray(const char *s) /* I - Comma-delimited strings */
/*
* 'cupsdExec()' - Run a program with the correct environment.
*
- * On Mac OS X, we need to update the CFProcessPath environment variable that
+ * On OS X, we need to update the CFProcessPath environment variable that
* is passed in the environment so the child can access its bundled resources.
*/
@@ -187,7 +187,7 @@ cupsdExec(const char *command, /* I - Full path to program */
/*
- * Some Mac OS X programs are bundled and need the CFProcessPath environment
+ * Some OS X programs are bundled and need the CFProcessPath environment
* variable defined. If the command is a symlink, resolve the link and point
* to the resolved location, otherwise, use the command path itself.
*/
@@ -467,5 +467,5 @@ cupsdSendIPPTrailer(void)
/*
- * End of "$Id: util.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: util.c 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/scripting/perl/CUPS.pm b/scripting/perl/CUPS.pm
deleted file mode 100644
index 5f2ed5f1..00000000
--- a/scripting/perl/CUPS.pm
+++ /dev/null
@@ -1,144 +0,0 @@
-package CUPS;
-
-use 5.006;
-use strict;
-use warnings;
-use Carp;
-
-require Exporter;
-require DynaLoader;
-use AutoLoader;
-
-our @ISA = qw(Exporter DynaLoader);
-
-# Items to export into callers namespace by default. Note: do not export
-# names by default without a very good reason. Use EXPORT_OK instead.
-# Do not simply export all your public functions/methods/constants.
-
-# This allows declaration use CUPS ':all';
-# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK
-# will save memory.
-our %EXPORT_TAGS = ( 'all' => [ qw(
- CUPS_DATE_ANY
- CUPS_VERSION
- HTTP_MAX_BUFFER
- HTTP_MAX_HOST
- HTTP_MAX_URI
- HTTP_MAX_VALUE
- IPP_MAX_NAME
- IPP_MAX_VALUES
- IPP_PORT
- PPD_MAX_LINE
- PPD_MAX_NAME
- PPD_MAX_TEXT
- PPD_VERSION
-) ] );
-
-our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
-
-our @EXPORT = qw(
- CUPS_DATE_ANY
- CUPS_VERSION
- HTTP_MAX_BUFFER
- HTTP_MAX_HOST
- HTTP_MAX_URI
- HTTP_MAX_VALUE
- IPP_MAX_NAME
- IPP_MAX_VALUES
- IPP_PORT
- PPD_MAX_LINE
- PPD_MAX_NAME
- PPD_MAX_TEXT
- PPD_VERSION
-);
-our $VERSION = '1.2';
-
-sub AUTOLOAD {
- # This AUTOLOAD is used to 'autoload' constants from the constant()
- # XS function. If a constant is not found then control is passed
- # to the AUTOLOAD in AutoLoader.
-
- my $constname;
- our $AUTOLOAD;
- ($constname = $AUTOLOAD) =~ s/.*:://;
- croak "& not defined" if $constname eq 'constant';
- my $val = constant($constname, @_ ? $_[0] : 0);
- if ($! != 0) {
- if ($! =~ /Invalid/ || $!{EINVAL}) {
- $AutoLoader::AUTOLOAD = $AUTOLOAD;
- goto &AutoLoader::AUTOLOAD;
- }
- else {
- croak "Your vendor has not defined CUPS macro $constname";
- }
- }
- {
- no strict 'refs';
- # Fixed between 5.005_53 and 5.005_61
- if ($] >= 5.00561) {
- *$AUTOLOAD = sub () { $val };
- }
- else {
- *$AUTOLOAD = sub { $val };
- }
- }
- goto &$AUTOLOAD;
-}
-
-bootstrap CUPS $VERSION;
-
-# Preloaded methods go here.
-
-# Autoload methods go after =cut, and are processed by the autosplit program.
-
-1;
-__END__
-# Below is stub documentation for your module. You better edit it!
-
-=head1 NAME
-
-CUPS - Perl extension for blah blah blah
-
-=head1 SYNOPSIS
-
- use CUPS;
- blah blah blah
-
-=head1 DESCRIPTION
-
-Stub documentation for CUPS, created by h2xs. It looks like the
-author of the extension was negligent enough to leave the stub
-unedited.
-
-Blah blah blah.
-
-=head2 EXPORT
-
-None by default.
-
-=head2 Exportable constants
-
- CUPS_DATE_ANY
- CUPS_VERSION
- HTTP_MAX_BUFFER
- HTTP_MAX_HOST
- HTTP_MAX_URI
- HTTP_MAX_VALUE
- IPP_MAX_NAME
- IPP_MAX_VALUES
- IPP_PORT
- PPD_MAX_LINE
- PPD_MAX_NAME
- PPD_MAX_TEXT
- PPD_VERSION
-
-
-=head1 AUTHOR
-
-A. U. Thor, E<lt>a.u.thor@a.galaxy.far.far.awayE<gt>
-
-=head1 SEE ALSO
-
-L<perl>.
-
-=cut
diff --git a/scripting/perl/CUPS.xs b/scripting/perl/CUPS.xs
deleted file mode 100644
index efaf6dc7..00000000
--- a/scripting/perl/CUPS.xs
+++ /dev/null
@@ -1,270 +0,0 @@
-#include "EXTERN.h"
-#include "perl.h"
-#include "XSUB.h"
-
-#include <cups/cups.h>
-#include <cups/http.h>
-#include <cups/ipp.h>
-#include <cups/language.h>
-#include <cups/ppd.h>
-
-static int
-not_here(char *s)
-{
- croak("%s not implemented on this architecture", s);
- return -1;
-}
-
-static double
-constant_PPD_M(char *name, int len, int arg)
-{
- if (5 + 3 >= len ) {
- errno = EINVAL;
- return 0;
- }
- switch (name[5 + 3]) {
- case 'L':
- if (strEQ(name + 5, "AX_LINE")) { /* PPD_M removed */
-#ifdef PPD_MAX_LINE
- return PPD_MAX_LINE;
-#else
- goto not_there;
-#endif
- }
- case 'N':
- if (strEQ(name + 5, "AX_NAME")) { /* PPD_M removed */
-#ifdef PPD_MAX_NAME
- return PPD_MAX_NAME;
-#else
- goto not_there;
-#endif
- }
- case 'T':
- if (strEQ(name + 5, "AX_TEXT")) { /* PPD_M removed */
-#ifdef PPD_MAX_TEXT
- return PPD_MAX_TEXT;
-#else
- goto not_there;
-#endif
- }
- }
- errno = EINVAL;
- return 0;
-
-not_there:
- errno = ENOENT;
- return 0;
-}
-
-static double
-constant_P(char *name, int len, int arg)
-{
- if (1 + 3 >= len ) {
- errno = EINVAL;
- return 0;
- }
- switch (name[1 + 3]) {
- case 'M':
- if (!strnEQ(name + 1,"PD_", 3))
- break;
- return constant_PPD_M(name, len, arg);
- case 'V':
- if (strEQ(name + 1, "PD_VERSION")) { /* P removed */
-#ifdef PPD_VERSION
- return PPD_VERSION;
-#else
- goto not_there;
-#endif
- }
- }
- errno = EINVAL;
- return 0;
-
-not_there:
- errno = ENOENT;
- return 0;
-}
-
-static double
-constant_H(char *name, int len, int arg)
-{
- if (1 + 8 >= len ) {
- errno = EINVAL;
- return 0;
- }
- switch (name[1 + 8]) {
- case 'B':
- if (strEQ(name + 1, "TTP_MAX_BUFFER")) { /* H removed */
-#ifdef HTTP_MAX_BUFFER
- return HTTP_MAX_BUFFER;
-#else
- goto not_there;
-#endif
- }
- case 'H':
- if (strEQ(name + 1, "TTP_MAX_HOST")) { /* H removed */
-#ifdef HTTP_MAX_HOST
- return HTTP_MAX_HOST;
-#else
- goto not_there;
-#endif
- }
- case 'U':
- if (strEQ(name + 1, "TTP_MAX_URI")) { /* H removed */
-#ifdef HTTP_MAX_URI
- return HTTP_MAX_URI;
-#else
- goto not_there;
-#endif
- }
- case 'V':
- if (strEQ(name + 1, "TTP_MAX_VALUE")) { /* H removed */
-#ifdef HTTP_MAX_VALUE
- return HTTP_MAX_VALUE;
-#else
- goto not_there;
-#endif
- }
- }
- errno = EINVAL;
- return 0;
-
-not_there:
- errno = ENOENT;
- return 0;
-}
-
-static double
-constant_IPP_M(char *name, int len, int arg)
-{
- if (5 + 3 >= len ) {
- errno = EINVAL;
- return 0;
- }
- switch (name[5 + 3]) {
- case 'N':
- if (strEQ(name + 5, "AX_NAME")) { /* IPP_M removed */
-#ifdef IPP_MAX_NAME
- return IPP_MAX_NAME;
-#else
- goto not_there;
-#endif
- }
- case 'V':
- if (strEQ(name + 5, "AX_VALUES")) { /* IPP_M removed */
-#ifdef IPP_MAX_VALUES
- return IPP_MAX_VALUES;
-#else
- goto not_there;
-#endif
- }
- }
- errno = EINVAL;
- return 0;
-
-not_there:
- errno = ENOENT;
- return 0;
-}
-
-static double
-constant_I(char *name, int len, int arg)
-{
- if (1 + 3 >= len ) {
- errno = EINVAL;
- return 0;
- }
- switch (name[1 + 3]) {
- case 'M':
- if (!strnEQ(name + 1,"PP_", 3))
- break;
- return constant_IPP_M(name, len, arg);
- case 'P':
- if (strEQ(name + 1, "PP_PORT")) { /* I removed */
-#ifdef IPP_PORT
- return IPP_PORT;
-#else
- goto not_there;
-#endif
- }
- }
- errno = EINVAL;
- return 0;
-
-not_there:
- errno = ENOENT;
- return 0;
-}
-
-static double
-constant_C(char *name, int len, int arg)
-{
- if (1 + 4 >= len ) {
- errno = EINVAL;
- return 0;
- }
- switch (name[1 + 4]) {
- case 'D':
- if (strEQ(name + 1, "UPS_DATE_ANY")) { /* C removed */
-#ifdef CUPS_DATE_ANY
- return CUPS_DATE_ANY;
-#else
- goto not_there;
-#endif
- }
- case 'V':
- if (strEQ(name + 1, "UPS_VERSION")) { /* C removed */
-#ifdef CUPS_VERSION
- return CUPS_VERSION;
-#else
- goto not_there;
-#endif
- }
- }
- errno = EINVAL;
- return 0;
-
-not_there:
- errno = ENOENT;
- return 0;
-}
-
-static double
-constant(char *name, int len, int arg)
-{
- errno = 0;
- switch (name[0 + 0]) {
- case 'C':
- return constant_C(name, len, arg);
- case 'H':
- return constant_H(name, len, arg);
- case 'I':
- return constant_I(name, len, arg);
- case 'P':
- return constant_P(name, len, arg);
- }
- errno = EINVAL;
- return 0;
-
-not_there:
- errno = ENOENT;
- return 0;
-}
-
-
-MODULE = CUPS PACKAGE = CUPS
-
-
-double
-constant(sv,arg)
- PREINIT:
- STRLEN len;
- INPUT:
- SV * sv
- char * s = SvPV(sv, len);
- int arg
- CODE:
- RETVAL = constant(s,len,arg);
- OUTPUT:
- RETVAL
-
diff --git a/scripting/perl/Makefile.PL b/scripting/perl/Makefile.PL
deleted file mode 100644
index f5e4bdd2..00000000
--- a/scripting/perl/Makefile.PL
+++ /dev/null
@@ -1,17 +0,0 @@
-use ExtUtils::MakeMaker;
-# See lib/ExtUtils/MakeMaker.pm for details of how to influence
-# the contents of the Makefile that is written.
-WriteMakefile(
- 'NAME' => 'CUPS',
- 'VERSION_FROM' => 'CUPS.pm', # finds $VERSION
- 'PREREQ_PM' => {}, # e.g., Module::Name => 1.1
- ($] >= 5.005 ? ## Add these new keywords supported since 5.005
- (ABSTRACT_FROM => 'CUPS.pm', # retrieve abstract from module
- AUTHOR => 'A. U. Thor <a.u.thor@a.galaxy.far.far.away>') : ()),
- 'LIBS' => ['-lcups '], # e.g., '-lm'
- 'DEFINE' => '', # e.g., '-DHAVE_SOMETHING'
- # Insert -I. if you add *.h files later:
- 'INC' => '', # e.g., '-I/usr/include/other'
- # Un-comment this if you add C files to link with later:
- # 'OBJECT' => '$(O_FILES)', # link all the C files too
-);
diff --git a/scripting/perl/README b/scripting/perl/README
deleted file mode 100644
index 1605c779..00000000
--- a/scripting/perl/README
+++ /dev/null
@@ -1,35 +0,0 @@
-CUPS version 1.2
-================
-
-The README is used to introduce the module and provide instructions on
-how to install the module, any machine dependencies it may have (for
-example C compilers and installed libraries) and any other information
-that should be provided before the module is installed.
-
-A README file is required for CPAN modules since CPAN extracts the
-README file from a module distribution so that people browsing the
-archive can use it get an idea of the modules uses. It is usually a
-good idea to provide version information here so that people can
-decide whether fixes for the module are worth downloading.
-
-INSTALLATION
-
-To install this module type the following:
-
- perl Makefile.PL
- make
- make test
- make install
-
-DEPENDENCIES
-
-This module requires these other modules and libraries:
-
- blah blah blah
-
-COPYRIGHT AND LICENCE
-
-Put the correct copyright and licence information here.
-
-Copyright (C) 2002 A. U. Thor blah blah blah
-
diff --git a/scripting/perl/test.pl b/scripting/perl/test.pl
deleted file mode 100644
index acf31916..00000000
--- a/scripting/perl/test.pl
+++ /dev/null
@@ -1,17 +0,0 @@
-# Before `make install' is performed this script should be runnable with
-# `make test'. After `make install' it should work as `perl test.pl'
-
-#########################
-
-# change 'tests => 1' to 'tests => last_test_to_print';
-
-use Test;
-BEGIN { plan tests => 1 };
-use CUPS;
-ok(1); # If we made it this far, we're ok.
-
-#########################
-
-# Insert your test code below, the Test module is use()ed here so read
-# its man page ( perldoc Test ) for help writing this test script.
-
diff --git a/scripting/php/Dependencies b/scripting/php/Dependencies
deleted file mode 100644
index d48a560c..00000000
--- a/scripting/php/Dependencies
+++ /dev/null
@@ -1,7 +0,0 @@
-# DO NOT DELETE THIS LINE -- make depend depends on it.
-
-phpcups.o: ../../cups/string-private.h ../../config.h phpcups.h
-phpcups.o: ../../cups/cups.h ../../cups/file.h ../../cups/versioning.h
-phpcups.o: ../../cups/ipp.h ../../cups/http.h ../../cups/array.h
-phpcups.o: ../../cups/language.h ../../cups/language.h
-phpcups.o: ../../cups/debug-private.h ../../cups/versioning.h
diff --git a/scripting/php/Makefile b/scripting/php/Makefile
deleted file mode 100644
index a10f4f49..00000000
--- a/scripting/php/Makefile
+++ /dev/null
@@ -1,153 +0,0 @@
-#
-# "$Id: Makefile 3572 2003-04-08 19:56:25Z mike $"
-#
-# PHP Makefile for CUPS.
-#
-# Copyright 2007-2011 by Apple Inc.
-# Copyright 1997-2007 by Easy Software Products, all rights reserved.
-#
-# These coded instructions, statements, and computer programs are the
-# property of Apple Inc. and are protected by Federal copyright
-# law. Distribution and use rights are outlined in the file "LICENSE.txt"
-# which should have been included with this file. If this file is
-# file is missing or damaged, see the license at "http://www.cups.org/".
-#
-
-include ../../Makedefs
-
-
-#
-# Where to install and how to compile the PHP module...
-#
-
-PHPDIR = $(BUILDROOT)`$(PHPCONFIG) --extension-dir`
-OPTIONS = $(PHPOPTIONS)
-
-
-#
-# Object files...
-#
-
-OBJS = phpcups.o
-
-
-#
-# Targets in this directory...
-#
-
-PHPCUPS = phpcups.so
-
-
-#
-# Make all targets...
-#
-
-all: $(PHPCUPS)
-
-
-#
-# Make library targets...
-#
-
-libs:
-
-
-#
-# Make unit tests...
-#
-
-unittests:
-
-
-#
-# Remove object and target files...
-#
-
-clean:
- $(RM) $(OBJS) $(PHPCUPS)
-
-
-#
-# Update dependencies (without system header dependencies...)
-#
-
-depend:
- makedepend -Y -I../.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
-
-
-#
-# Install all targets...
-#
-
-install: all install-data install-headers install-libs install-exec
-
-
-#
-# Install data files...
-#
-
-install-data:
-
-
-#
-# Install programs...
-#
-
-install-exec:
- echo Installing $(PHPCUPS) in $(PHPDIR)
- $(INSTALL_DIR) $(PHPDIR)
- $(INSTALL_LIB) $(PHPCUPS) $(PHPDIR)
- if test "x$(SYMROOT)" != x; then \
- $(INSTALL_DIR) $(SYMROOT); \
- cp $(PHPCUPS) $(SYMROOT); \
- fi
-
-
-#
-# Install headers...
-#
-
-install-headers:
-
-
-#
-# Install libraries...
-#
-
-install-libs:
-
-
-#
-# Uninstall object and target files...
-#
-
-uninstall:
- $(RM) $(PHPDIR)/$(PHPCUPS)
- -$(RMDIR) $(PHPDIR)
-
-
-#
-# phpcups.so
-#
-
-phpcups.so: $(OBJS) ../../Makedefs
- echo Linking $@...
- if test `uname` = Darwin; then \
- DSOFLAGS="-bundle -flat_namespace -undefined suppress $(RC_CFLAGS)"; \
- else \
- DSOFLAGS="$(DSOFLAGS)"; \
- fi; \
- echo $(DSO) $$DSOFLAGS $(ARCHFLAGS) -o $@ $(OBJS) -L../../cups $(LIBS); \
- $(DSO) $$DSOFLAGS $(ARCHFLAGS) -o $@ $(OBJS) -L../../cups $(LIBS)
-
-
-#
-# Dependencies...
-#
-
-include Dependencies
-
-
-#
-# End of "$Id: Makefile 3572 2003-04-08 19:56:25Z mike $".
-#
diff --git a/scripting/php/README b/scripting/php/README
deleted file mode 100644
index e4ab27d8..00000000
--- a/scripting/php/README
+++ /dev/null
@@ -1,157 +0,0 @@
-README - 02/25/2006
--------------------
-
-INTRODUCTION
-
- This directory contains a dynamically loadable CUPS extension
- module for PHP 4 and 5. The CUPS 1.2 module has been
- substantially updated to provide an API more consistent with
- the C API and is NOT compatible with the CUPS 1.1 module.
-
-
-COMPILING AND INSTALLING
-
- Run "make" to compile the PHP CUPS extension:
-
- make
-
- To install it, type:
-
- make install
-
-
-RESOURCES AND SUPPORT
-
- Questions should be reported to the CUPS newsgroups/mailing
- lists at:
-
- http://www.cups.org/newsgroups.php
-
- Bug reports and enhancement requests can be submitted via the
- form at:
-
- http://www.cups.org/str.php
-
-
-QUICK REFERENCE DOCUMENTATION
-
- In lieu of actual documentation, the following definitions
- can be used as a quick reference to the supported functions:
-
-
- CUPS_CANCEL_JOB
-
- Cancels a job on the named destination:
-
- bool cups_cancel_job(string dest, int id)
-
- The return value is TRUE on success and FALSE on failure.
-
- Example:
-
- if (!cups_cancel_job("myprinter", 123))
- print("Unable to cancel job: " . cups_last_error_string() . "\n");
-
-
- CUPS_GET_DESTS
-
- Gets a list of available destinations:
-
- array cups_get_dests()
-
- The return value is an array of objects with the following
- properties:
-
- name The name of the printer or class
- instance The instance of the printer or class
- is_default TRUE if the printer or class is the default destination
- options Associative array of options and their values
-
- Example:
-
- $dest = cups_get_dests();
-
-
- CUPS_GET_JOBS
-
- Gets a list of jobs:
-
- array cups_get_jobs(string dest, bool myjobs, int completed)
-
- The "dest" string can be blank for jobs on all destinations.
- Pass TRUE for "myjobs" to only get jobs for the current user.
- The "completed" argument can be 0 for pending jobs, 1 for
- completed jobs, and -1 for all jobs.
-
- The return value is an array of objects with the following
- properties:
-
- id The job ID
- dest Printer or class name
- title Title/job name
- user User the submitted the job
- format Document format
- state Job state
- size Size in kilobytes
- priority Priority (1-100)
- completed_time Time the job was completed
- creation_time Time the job was created
- processing_time Time the job was processed
-
- Example:
-
- $jobs = cups_get_jobs("", FALSE, -1);
-
-
- CUPS_LAST_ERROR
-
- Returns the IPP status code for the most recent request:
-
- int cups_last_error()
-
- Example:
-
- $error = cups_last_error();
-
-
- CUPS_LAST_ERROR_STRING
-
- Returns the IPP status-message string for the most recent request:
-
- string cups_last_error_string()
-
- Example:
-
- $message = cups_last_error_string();
-
-
- CUPS_PRINT_FILE
-
- Prints a single file to a printer or class:
-
- int cups_print_file(string dest, string filename, string title,
- array options)
-
- The return value is the job ID or 0 if there was an error.
-
- Example:
-
- $options = array("name" => "value", "name2" => "value2");
- $id = cups_print_file("dest", "filename", "title", $options);
-
-
- CUPS_PRINT_FILES
-
- Prints one or more files to a printer or class:
-
- int cups_print_files(string dest, array files, string title,
- array options);
-
- The return value is the job ID or 0 if there was an error.
-
- Example:
-
- $files = array("file1", "file2", "file3");
- $options = array("name" => "value", "name2" => "value2");
- $id = cups_print_file("dest", $files, "title", $options);
-
diff --git a/scripting/php/phpcups.c b/scripting/php/phpcups.c
deleted file mode 100644
index dbd1f262..00000000
--- a/scripting/php/phpcups.c
+++ /dev/null
@@ -1,487 +0,0 @@
-/*
- * "$Id: phpcups.c 10197 2012-01-27 16:34:04Z mike $"
- *
- * Printing utilities for CUPS.
- *
- * Copyright 2007-2012 by Apple Inc.
- * Copyright 1997-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- *
- * Contents:
- *
- * cups_convert_options() - Convert a PHP options array to a CUPS options array.
- * zm_startup_phpcups() - Initialize the CUPS module.
- * zif_cups_cancel_job() - Cancel a job.
- * zif_cups_get_dests() - Get a list of printers and classes.
- * zif_cups_get_jobs() - Get a list of jobs.
- * zif_cups_last_error() - Return the last IPP status code.
- * zif_cups_last_error_string() - Return the last IPP status
- * zif_cups_print_file() - Print a single file.
- * zif_cups_print_files() - Print multiple files.
- */
-
-/*
- * Include necessary headers...
- */
-
-#include <cups/string-private.h>
-#include "php.h"
-#include "php_ini.h"
-#include "ext/standard/info.h"
-#include "phpcups.h"
-
-
-/*
- * PHP function list...
- */
-
-zend_function_entry phpcups_functions[] =
-{
- PHP_FE(cups_cancel_job, NULL)
- PHP_FE(cups_get_dests, NULL)
- PHP_FE(cups_get_jobs, NULL)
- PHP_FE(cups_last_error, NULL)
- PHP_FE(cups_last_error_string, NULL)
- PHP_FE(cups_print_file, NULL)
- PHP_FE(cups_print_files, NULL)
- {NULL, NULL, NULL}
-};
-
-
-/*
- * PHP module info...
- */
-
-zend_module_entry phpcups_module_entry =
-{
- STANDARD_MODULE_HEADER,
- "phpcups",
- phpcups_functions,
- PHP_MINIT(phpcups),
- NULL,
- NULL,
- NULL,
- NULL,
- CUPS_SVERSION,
- STANDARD_MODULE_PROPERTIES
-};
-
-
-ZEND_GET_MODULE(phpcups)
-
-
-/*
- * 'cups_convert_options()' - Convert a PHP options array to a CUPS options array.
- */
-
-static int /* O - Number of options */
-cups_convert_options(
- zval *optionsobj, /* I - Options array object */
- cups_option_t **options) /* O - Options */
-{
- int num_options; /* Number of options */
- HashTable *ht; /* Option array hash table */
- Bucket *current; /* Current element in array */
- zval *value; /* Current value in array */
- char temp[255]; /* String value for numbers */
-
-
- ht = Z_ARRVAL_P(optionsobj);
- num_options = 0;
-
- for (current = ht->pListHead; current; current = current->pListNext)
- {
- value = (zval *)current->pDataPtr;
-
- switch (Z_TYPE_P(value))
- {
- case IS_LONG :
- sprintf(temp, "%ld", Z_LVAL_P(value));
- num_options = cupsAddOption(current->arKey, temp, num_options,
- options);
- break;
-
- case IS_DOUBLE :
- sprintf(temp, "%g", Z_DVAL_P(value));
- num_options = cupsAddOption(current->arKey, temp, num_options,
- options);
- break;
-
- case IS_BOOL :
- num_options = cupsAddOption(current->arKey,
- Z_BVAL_P(value) ? "true" : "false",
- num_options, options);
- break;
-
- case IS_STRING :
- num_options = cupsAddOption(current->arKey, Z_STRVAL_P(value),
- num_options, options);
- break;
- }
- }
-
- return (num_options);
-}
-
-
-/*
- * 'zm_startup_phpcups()' - Initialize the CUPS module.
- */
-
-PHP_MINIT_FUNCTION(phpcups)
-{
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_LOCAL", CUPS_PRINTER_LOCAL, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_CLASS", CUPS_PRINTER_CLASS, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_REMOTE", CUPS_PRINTER_REMOTE, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_BW", CUPS_PRINTER_BW, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_COLOR", CUPS_PRINTER_COLOR, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_DUPLEX", CUPS_PRINTER_DUPLEX, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_STAPLE", CUPS_PRINTER_STAPLE, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_COPIES", CUPS_PRINTER_COPIES, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_COLLATE", CUPS_PRINTER_COLLATE, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_PUNCH", CUPS_PRINTER_PUNCH, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_COVER", CUPS_PRINTER_COVER, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_BIND", CUPS_PRINTER_BIND, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_SORT", CUPS_PRINTER_SORT, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_SMALL", CUPS_PRINTER_SMALL, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_MEDIUM", CUPS_PRINTER_MEDIUM, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_LARGE", CUPS_PRINTER_LARGE, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_VARIABLE", CUPS_PRINTER_VARIABLE, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_IMPLICIT", CUPS_PRINTER_IMPLICIT, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_DEFAULT", CUPS_PRINTER_DEFAULT, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_FAX", CUPS_PRINTER_FAX, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_REJECTING", CUPS_PRINTER_REJECTING, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_DELETE", CUPS_PRINTER_DELETE, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_NOT_SHARED", CUPS_PRINTER_NOT_SHARED, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_AUTHENTICATED", CUPS_PRINTER_AUTHENTICATED, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_COMMANDS", CUPS_PRINTER_COMMANDS, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_DISCOVERED", CUPS_PRINTER_DISCOVERED, CONST_CS);
- REGISTER_LONG_CONSTANT("CUPS_PRINTER_OPTIONS", CUPS_PRINTER_OPTIONS, CONST_CS);
-
- REGISTER_LONG_CONSTANT("IPP_OK", IPP_OK, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_OK_SUBST", IPP_OK_SUBST, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_OK_CONFLICT", IPP_OK_CONFLICT, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_OK_IGNORED_SUBSCRIPTIONS", IPP_OK_IGNORED_SUBSCRIPTIONS, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_OK_IGNORED_NOTIFICATIONS", IPP_OK_IGNORED_NOTIFICATIONS, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_OK_TOO_MANY_EVENTS", IPP_OK_TOO_MANY_EVENTS, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_OK_BUT_CANCEL_SUBSCRIPTION", IPP_OK_BUT_CANCEL_SUBSCRIPTION, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_OK_EVENTS_COMPLETE", IPP_OK_EVENTS_COMPLETE, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_REDIRECTION_OTHER_SITE", IPP_REDIRECTION_OTHER_SITE, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_BAD_REQUEST", IPP_BAD_REQUEST, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_FORBIDDEN", IPP_FORBIDDEN, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_NOT_AUTHENTICATED", IPP_NOT_AUTHENTICATED, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_NOT_AUTHORIZED", IPP_NOT_AUTHORIZED, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_NOT_POSSIBLE", IPP_NOT_POSSIBLE, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_TIMEOUT", IPP_TIMEOUT, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_NOT_FOUND", IPP_NOT_FOUND, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_GONE", IPP_GONE, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_REQUEST_ENTITY", IPP_REQUEST_ENTITY, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_REQUEST_VALUE", IPP_REQUEST_VALUE, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_DOCUMENT_FORMAT", IPP_DOCUMENT_FORMAT, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_ATTRIBUTES", IPP_ATTRIBUTES, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_URI_SCHEME", IPP_URI_SCHEME, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_CHARSET", IPP_CHARSET, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_CONFLICT", IPP_CONFLICT, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_COMPRESSION_NOT_SUPPORTED", IPP_COMPRESSION_NOT_SUPPORTED, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_COMPRESSION_ERROR", IPP_COMPRESSION_ERROR, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_DOCUMENT_FORMAT_ERROR", IPP_DOCUMENT_FORMAT_ERROR, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_DOCUMENT_ACCESS_ERROR", IPP_DOCUMENT_ACCESS_ERROR, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_ATTRIBUTES_NOT_SETTABLE", IPP_ATTRIBUTES_NOT_SETTABLE, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_IGNORED_ALL_SUBSCRIPTIONS", IPP_IGNORED_ALL_SUBSCRIPTIONS, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_TOO_MANY_SUBSCRIPTIONS", IPP_TOO_MANY_SUBSCRIPTIONS, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_IGNORED_ALL_NOTIFICATIONS", IPP_IGNORED_ALL_NOTIFICATIONS, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_PRINT_SUPPORT_FILE_NOT_FOUND", IPP_PRINT_SUPPORT_FILE_NOT_FOUND, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_INTERNAL_ERROR", IPP_INTERNAL_ERROR, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_OPERATION_NOT_SUPPORTED", IPP_OPERATION_NOT_SUPPORTED, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_SERVICE_UNAVAILABLE", IPP_SERVICE_UNAVAILABLE, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_VERSION_NOT_SUPPORTED", IPP_VERSION_NOT_SUPPORTED, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_DEVICE_ERROR", IPP_DEVICE_ERROR, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_TEMPORARY_ERROR", IPP_TEMPORARY_ERROR, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_NOT_ACCEPTING", IPP_NOT_ACCEPTING, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_PRINTER_BUSY", IPP_PRINTER_BUSY, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_ERROR_JOB_CANCELLED", IPP_ERROR_JOB_CANCELLED, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_MULTIPLE_JOBS_NOT_SUPPORTED", IPP_MULTIPLE_JOBS_NOT_SUPPORTED, CONST_CS);
- REGISTER_LONG_CONSTANT("IPP_PRINTER_IS_DEACTIVATED", IPP_PRINTER_IS_DEACTIVATED, CONST_CS);
-
- return (SUCCESS);
-}
-
-/*
- * 'zif_cups_cancel_job()' - Cancel a job.
- */
-
-PHP_FUNCTION(cups_cancel_job)
-{
- char *dest; /* Destination */
- int dest_len, /* Length of destination */
- id; /* Job ID */
-
-
- if (ZEND_NUM_ARGS() != 2 ||
- zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sl", &dest, &dest_len, &id))
- {
- WRONG_PARAM_COUNT;
- }
-
- RETURN_LONG(cupsCancelJob(dest, id));
-}
-
-
-/*
- * 'zif_cups_get_dests()' - Get a list of printers and classes.
- */
-
-PHP_FUNCTION(cups_get_dests)
-{
- int i, j, /* Looping vars */
- num_dests; /* Number of destinations */
- cups_dest_t *dests, /* Destinations */
- *dest; /* Current destination */
- cups_option_t *option; /* Current option */
- zval *destobj, /* Destination object */
- *optionsobj; /* Options object */
-
-
- if (ZEND_NUM_ARGS() != 0)
- {
- WRONG_PARAM_COUNT;
- }
-
- if ((num_dests = cupsGetDests(&dests)) <= 0)
- {
- RETURN_NULL();
- }
-
- if (array_init(return_value) == SUCCESS)
- {
- for (i = 0, dest = dests; i < num_dests; i ++, dest ++)
- {
- MAKE_STD_ZVAL(destobj);
-
- if (object_init(destobj) == SUCCESS)
- {
- /*
- * Add properties to the destination for each of the cups_dest_t
- * members...
- */
-
- add_property_string(destobj, "name", dest->name, 1);
- add_property_string(destobj, "instance",
- dest->instance ? dest->instance : "", 1);
- add_property_long(destobj, "is_default", dest->is_default);
-
- /*
- * Create an associative array for the options...
- */
-
- MAKE_STD_ZVAL(optionsobj);
-
- if (array_init(optionsobj) == SUCCESS)
- {
- for (j = 0, option = dest->options;
- j < dest->num_options;
- j ++, option ++)
- add_assoc_string(optionsobj, option->name, option->value, 1);
-
- add_property_zval(destobj, "options", optionsobj);
- }
-
- add_index_zval(return_value, i, destobj);
- }
- }
- }
-
- cupsFreeDests(num_dests, dests);
-}
-
-
-/*
- * 'zif_cups_get_jobs()' - Get a list of jobs.
- */
-
-PHP_FUNCTION(cups_get_jobs)
-{
- char *dest; /* Destination */
- int dest_len, /* Length of destination */
- myjobs, /* Only show my jobs? */
- completed; /* Show completed jobs? */
- int i, /* Looping var */
- num_jobs; /* Number of jobs */
- cups_job_t *jobs, /* Jobs */
- *job; /* Current job */
- zval *jobobj; /* Job object */
-
-
-
-
- if (ZEND_NUM_ARGS() != 3 ||
- zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sll", &dest, &dest_len, &myjobs, &completed))
- {
- WRONG_PARAM_COUNT;
- }
-
- if (!*dest)
- dest = NULL;
-
- if ((num_jobs = cupsGetJobs(&jobs, dest, myjobs, completed)) <= 0)
- {
- RETURN_NULL();
- }
-
- if (array_init(return_value) == SUCCESS)
- {
- for (i = 0, job = jobs; i < num_jobs; i ++, job ++)
- {
- MAKE_STD_ZVAL(jobobj);
-
- if (object_init(jobobj) == SUCCESS)
- {
- /*
- * Add properties to the job for each of the cups_job_t
- * members...
- */
-
- add_property_long(jobobj, "id", job->id);
- add_property_string(jobobj, "dest", job->dest, 1);
- add_property_string(jobobj, "title", job->title, 1);
- add_property_string(jobobj, "user", job->user, 1);
- add_property_string(jobobj, "format", job->format, 1);
- add_property_long(jobobj, "state", job->state);
- add_property_long(jobobj, "size", job->size);
- add_property_long(jobobj, "priority", job->priority);
- add_property_long(jobobj, "completed_time", job->completed_time);
- add_property_long(jobobj, "creation_time", job->creation_time);
- add_property_long(jobobj, "processing_time", job->processing_time);
-
- add_index_zval(return_value, i, jobobj);
- }
- }
- }
-
- cupsFreeJobs(num_jobs, jobs);
-}
-
-
-/*
- * 'zif_cups_last_error()' - Return the last IPP status code.
- */
-
-PHP_FUNCTION(cups_last_error)
-{
- if (ZEND_NUM_ARGS() != 0)
- {
- WRONG_PARAM_COUNT;
- }
-
- RETURN_LONG(cupsLastError());
-}
-
-
-/*
- * 'zif_cups_last_error_string()' - Return the last IPP status-message.
- */
-
-PHP_FUNCTION(cups_last_error_string)
-{
- if (ZEND_NUM_ARGS() != 0)
- {
- WRONG_PARAM_COUNT;
- }
-
- RETURN_STRING((char *)cupsLastErrorString(), 1);
-}
-
-
-/*
- * 'zif_cups_print_file()' - Print a single file.
- */
-
-PHP_FUNCTION(cups_print_file)
-{
- char *dest; /* Destination */
- int dest_len; /* Length of destination */
- char *filename; /* Filename */
- int filename_len; /* Length of filename */
- char *title; /* Title */
- int title_len; /* Length of title */
- zval *optionsobj; /* Array of options */
- int num_options; /* Number of options */
- cups_option_t *options; /* Options */
- int id; /* Job ID */
-
-
- if (ZEND_NUM_ARGS() != 4 ||
- zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sssa", &dest, &dest_len,
- &filename, &filename_len,
- &title, &title_len, &optionsobj))
- {
- WRONG_PARAM_COUNT;
- }
-
- num_options = cups_convert_options(optionsobj, &options);
-
- id = cupsPrintFile(dest, filename, title, num_options, options);
-
- cupsFreeOptions(num_options, options);
-
- RETURN_LONG(id);
-}
-
-
-/*
- * 'zif_cups_print_files()' - Print multiple files.
- */
-
-PHP_FUNCTION(cups_print_files)
-{
- char *dest; /* Destination */
- int dest_len; /* Length of destination */
- zval *filesobj; /* Files array */
- int num_files; /* Number of files */
- const char *files[1000]; /* Files */
- char *title; /* Title */
- int title_len; /* Length of title */
- zval *optionsobj; /* Array of options */
- int num_options; /* Number of options */
- cups_option_t *options; /* Options */
- HashTable *ht2; /* Option array hash table */
- Bucket *current; /* Current element in array */
- int id; /* Job ID */
-
-
- if (ZEND_NUM_ARGS() != 4 ||
- zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sasa", &dest, &dest_len, &filesobj,
- &title, &title_len, &optionsobj))
- {
- WRONG_PARAM_COUNT;
- }
-
- ht2 = Z_ARRVAL_P(filesobj);
- num_files = 0;
-
- for (current = ht2->pListHead; current; current = current->pListNext)
- {
- files[num_files ++] = Z_STRVAL_P(((zval *)current->pDataPtr));
-
- if (num_files >= (int)(sizeof(files) / sizeof(files[0])))
- break;
- }
-
- num_options = cups_convert_options(optionsobj, &options);
-
- id = cupsPrintFiles(dest, num_files, files, title, num_options, options);
-
- cupsFreeOptions(num_options, options);
-
- RETURN_LONG(id);
-}
-
-
-/*
- * End of "$Id: phpcups.c 10197 2012-01-27 16:34:04Z mike $".
- */
diff --git a/scripting/php/phpcups.h b/scripting/php/phpcups.h
deleted file mode 100644
index 9cd9f88e..00000000
--- a/scripting/php/phpcups.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * "$Id: phpcups.h 9771 2011-05-12 05:21:56Z mike $"
- *
- * PHP module include file for CUPS.
- *
- * Copyright 2007-2011 by Apple Inc.
- * Copyright 1997-2006 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
- */
-
-#ifndef PHPCUPS_H
-# define PHPCUPS_H
-
-/*
- * Include necessary headers...
- */
-
-# include <cups/cups.h>
-# include <cups/language.h>
-# include <cups/debug-private.h>
-# include <fcntl.h>
-# include <sys/stat.h>
-# if defined(WIN32) || defined(__EMX__)
-# include <io.h>
-# else
-# include <unistd.h>
-# endif /* WIN32 || __EMX__ */
-
-
-/*
- * Zend definitions...
- */
-
-extern zend_module_entry phpcups_module_entry;
-# define phpext_phpcups_ptr &phpcups_module_entry
-
-# ifdef PHP_WIN32
-# define PHP_PHPCUPS_API __declspec(dllexport)
-# else
-# define PHP_PHPCUPS_API
-# endif
-
-# ifdef ZTS
-# include "TSRM.h"
-# endif
-
-PHP_MINIT_FUNCTION(phpcups);
-
-PHP_FUNCTION(cups_cancel_job);
-PHP_FUNCTION(cups_get_dests);
-PHP_FUNCTION(cups_get_jobs);
-PHP_FUNCTION(cups_last_error);
-PHP_FUNCTION(cups_last_error_string);
-PHP_FUNCTION(cups_print_file);
-PHP_FUNCTION(cups_print_files);
-
-#endif /* !PHPCUPS_H */
-
-
-/*
- * End of "$Id: phpcups.h 9771 2011-05-12 05:21:56Z mike $".
- */
diff --git a/scripting/php/phpcups.php b/scripting/php/phpcups.php
deleted file mode 100755
index 0fe57190..00000000
--- a/scripting/php/phpcups.php
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/usr/bin/php -f
-<?
-//
-// "$Id: phpcups.php 3603 2003-04-11 18:42:52Z mike $"
-//
-// PHP test script for CUPS.
-//
-// Copyright 2007-2011 by Apple Inc.
-// Copyright 1997-2006 by Easy Software Products, all rights reserved.
-//
-// These coded instructions, statements, and computer programs are the
-// property of Apple Inc. and are protected by Federal copyright
-// law. Distribution and use rights are outlined in the file "LICENSE.txt"
-// which should have been included with this file. If this file is
-// file is missing or damaged, see the license at "http://www.cups.org/".
-//
-
-// Make sure the module is loaded...
-if(!extension_loaded("phpcups"))
-{
- dl("phpcups.so");
-}
-
-// Get the list of functions in the module...
-$module = "phpcups";
-$functions = get_extension_funcs($module);
-
-print("Functions available in the $module extension:\n");
-
-foreach ($functions as $func)
-{
- print("$func\n");
-}
-
-print("\n");
-
-print("cups_get_dests:\n");
-print_r(cups_get_dests());
-
-print("cups_get_jobs(\"\", 0, -1):\n");
-print_r(cups_get_jobs("", 0, -1));
-
-print("cups_print_file(\"test\", \"../../test/testfile.jpg\", "
- ."\"testfile.jpg\", ...):\n");
-print_r(cups_print_file("test", "../../test/testfile.jpg", "testfile.jpg",
- array("scaling" => "100",
- "page-label" => "testfile.jpg")));
-
-print("cups_print_files(\"test\", array(\"../../test/testfile.jpg\", "
- ."\"../../test/testfile.ps\"), \"testfiles\", ...):\n");
-print_r(cups_print_files("test", array("../../test/testfile.jpg",
- "../../test/testfile.ps"),
- "testfiles",
- array("scaling" => "100",
- "page-label" => "testfile.jpg")));
-
-//
-// End of "$Id: phpcups.php 3603 2003-04-11 18:42:52Z mike $".
-//
-?>
diff --git a/systemv/Dependencies b/systemv/Dependencies
index f40f77b8..84fc07b4 100644
--- a/systemv/Dependencies
+++ b/systemv/Dependencies
@@ -1,113 +1,93 @@
-# DO NOT DELETE THIS LINE -- make depend depends on it.
-
-cancel.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-cancel.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-cancel.o: ../cups/language.h ../cups/string-private.h ../config.h
-cancel.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-cancel.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-cancel.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-cancel.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-cancel.o: ../cups/transcode.h ../cups/thread-private.h
-cupsaccept.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-cupsaccept.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-cupsaccept.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-cupsaccept.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-cupsaccept.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-cupsaccept.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-cupsaccept.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-cupsaccept.o: ../cups/language-private.h ../cups/transcode.h
-cupsaccept.o: ../cups/thread-private.h
-cupsaddsmb.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-cupsaddsmb.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-cupsaddsmb.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-cupsaddsmb.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-cupsaddsmb.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-cupsaddsmb.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-cupsaddsmb.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-cupsaddsmb.o: ../cups/language-private.h ../cups/transcode.h
-cupsaddsmb.o: ../cups/thread-private.h ../cups/adminutil.h
-cupsctl.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-cupsctl.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-cupsctl.o: ../cups/language.h ../cups/string-private.h ../config.h
-cupsctl.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-cupsctl.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-cupsctl.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-cupsctl.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-cupsctl.o: ../cups/transcode.h ../cups/thread-private.h ../cups/adminutil.h
-cupstestdsc.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-cupstestdsc.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-cupstestdsc.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-cupstestdsc.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-cupstestdsc.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-cupstestdsc.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-cupstestdsc.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-cupstestdsc.o: ../cups/language-private.h ../cups/transcode.h
-cupstestdsc.o: ../cups/thread-private.h
-cupstestppd.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-cupstestppd.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-cupstestppd.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-cupstestppd.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-cupstestppd.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-cupstestppd.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-cupstestppd.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-cupstestppd.o: ../cups/language-private.h ../cups/transcode.h
-cupstestppd.o: ../cups/thread-private.h ../cups/dir.h ../cups/ppd-private.h
-cupstestppd.o: ../cups/raster.h ../cups/ppd.h
-lp.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lp.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lp.o: ../cups/language.h ../cups/string-private.h ../config.h
-lp.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-lp.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-lp.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-lp.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-lp.o: ../cups/transcode.h ../cups/thread-private.h
-lpadmin.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lpadmin.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lpadmin.o: ../cups/language.h ../cups/string-private.h ../config.h
-lpadmin.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-lpadmin.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-lpadmin.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-lpadmin.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-lpadmin.o: ../cups/transcode.h ../cups/thread-private.h
-lpinfo.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lpinfo.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lpinfo.o: ../cups/language.h ../cups/string-private.h ../config.h
-lpinfo.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-lpinfo.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-lpinfo.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-lpinfo.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-lpinfo.o: ../cups/transcode.h ../cups/thread-private.h
-lpmove.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lpmove.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lpmove.o: ../cups/language.h ../cups/string-private.h ../config.h
-lpmove.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-lpmove.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-lpmove.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-lpmove.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-lpmove.o: ../cups/transcode.h ../cups/thread-private.h
-lpoptions.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lpoptions.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-lpoptions.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-lpoptions.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-lpoptions.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-lpoptions.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-lpoptions.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-lpoptions.o: ../cups/language-private.h ../cups/transcode.h
-lpoptions.o: ../cups/thread-private.h
-lppasswd.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lppasswd.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lppasswd.o: ../cups/language.h ../cups/string-private.h ../config.h
-lppasswd.o: ../cups/debug-private.h ../cups/versioning.h
-lppasswd.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-lppasswd.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-lppasswd.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-lppasswd.o: ../cups/language-private.h ../cups/transcode.h
-lppasswd.o: ../cups/thread-private.h ../cups/md5-private.h
-lpstat.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-lpstat.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-lpstat.o: ../cups/language.h ../cups/string-private.h ../config.h
-lpstat.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-lpstat.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-lpstat.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-lpstat.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-lpstat.o: ../cups/transcode.h ../cups/thread-private.h
+cancel.o: cancel.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+cupsaccept.o: cupsaccept.c ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+cupsaddsmb.o: cupsaddsmb.c ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/adminutil.h
+cupsctl.o: cupsctl.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/adminutil.h
+cupstestdsc.o: cupstestdsc.c ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+cupstestppd.o: cupstestppd.c ../cups/cups-private.h \
+ ../cups/string-private.h ../config.h ../cups/debug-private.h \
+ ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \
+ ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/dir.h ../cups/raster.h
+lp.o: lp.c ../cups/cups-private.h ../cups/string-private.h ../config.h \
+ ../cups/debug-private.h ../cups/versioning.h ../cups/ipp-private.h \
+ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \
+ ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \
+ ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+lpadmin.o: lpadmin.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+lpinfo.o: lpinfo.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+lpmove.o: lpmove.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+lpoptions.o: lpoptions.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+lppasswd.o: lppasswd.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+lpstat.o: lpstat.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
diff --git a/systemv/Makefile b/systemv/Makefile
index f218d03f..de6273f0 100644
--- a/systemv/Makefile
+++ b/systemv/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 8983 2010-02-13 02:20:23Z mike $"
+# "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $"
#
# System V commands makefile for CUPS.
#
-# Copyright 2007-2010 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2006 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -57,7 +57,7 @@ clean:
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
@@ -289,5 +289,5 @@ include Dependencies
#
-# End of "$Id: Makefile 8983 2010-02-13 02:20:23Z mike $".
+# End of "$Id: Makefile 10191 2012-01-20 19:00:32Z mike $".
#
diff --git a/systemv/cupsaddsmb.c b/systemv/cupsaddsmb.c
index 959e8ac3..c307eb2c 100644
--- a/systemv/cupsaddsmb.c
+++ b/systemv/cupsaddsmb.c
@@ -1,9 +1,9 @@
/*
- * "$Id: cupsaddsmb.c 9636 2011-03-21 22:02:00Z mike $"
+ * "$Id: cupsaddsmb.c 10431 2012-04-23 19:19:19Z mike $"
*
* "cupsaddsmb" command for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2001-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -45,7 +45,7 @@ const char *SAMBAUser,
*/
int export_dest(http_t *http, const char *dest);
-void usage(void);
+void usage(void) __attribute__((noreturn));
/*
@@ -282,22 +282,18 @@ usage(void)
_cupsLangPuts(stdout, _(" cupsaddsmb [options] -a"));
_cupsLangPuts(stdout, "");
_cupsLangPuts(stdout, _("Options:"));
- _cupsLangPuts(stdout, _(" -E Encrypt the connection to "
- "the server."));
+ _cupsLangPuts(stdout, _(" -E Encrypt the connection."));
_cupsLangPuts(stdout, _(" -H samba-server Use the named SAMBA "
"server."));
- _cupsLangPuts(stdout, _(" -U samba-user Authenticate using the "
- "named SAMBA user."));
+ _cupsLangPuts(stdout, _(" -U username Specify username."));
_cupsLangPuts(stdout, _(" -a Export all printers."));
- _cupsLangPuts(stdout, _(" -h cups-server Use the named CUPS "
- "server."));
- _cupsLangPuts(stdout, _(" -v Be verbose (show "
- "commands)."));
+ _cupsLangPuts(stdout, _(" -h server[:port] Specify server address."));
+ _cupsLangPuts(stdout, _(" -v Be verbose."));
exit(1);
}
/*
- * End of "$Id: cupsaddsmb.c 9636 2011-03-21 22:02:00Z mike $".
+ * End of "$Id: cupsaddsmb.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/systemv/cupsctl.c b/systemv/cupsctl.c
index 2f28bc43..ef1e2565 100644
--- a/systemv/cupsctl.c
+++ b/systemv/cupsctl.c
@@ -1,9 +1,9 @@
/*
- * "$Id: cupsctl.c 9636 2011-03-21 22:02:00Z mike $"
+ * "$Id: cupsctl.c 10431 2012-04-23 19:19:19Z mike $"
*
* Scheduler control program for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 2006-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -32,7 +32,7 @@
* Local functions...
*/
-static void usage(const char *opt);
+static void usage(const char *opt) __attribute__((noreturn));
/*
@@ -83,12 +83,6 @@ main(int argc, /* I - Number of command-line args */
else if (!strcmp(argv[i], "--no-remote-any"))
num_settings = cupsAddOption(CUPS_SERVER_REMOTE_ANY, "0",
num_settings, &settings);
- else if (!strcmp(argv[i], "--remote-printers"))
- num_settings = cupsAddOption(CUPS_SERVER_REMOTE_PRINTERS, "1",
- num_settings, &settings);
- else if (!strcmp(argv[i], "--no-remote-printers"))
- num_settings = cupsAddOption(CUPS_SERVER_REMOTE_PRINTERS, "0",
- num_settings, &settings);
else if (!strcmp(argv[i], "--share-printers"))
num_settings = cupsAddOption(CUPS_SERVER_SHARE_PRINTERS, "1",
num_settings, &settings);
@@ -208,7 +202,7 @@ usage(const char *opt) /* I - Option character/string */
_cupsLangPuts(stdout, "");
_cupsLangPuts(stdout, _("Options:"));
_cupsLangPuts(stdout, "");
- _cupsLangPuts(stdout, _(" -E Enable encryption."));
+ _cupsLangPuts(stdout, _(" -E Encrypt the connection."));
_cupsLangPuts(stdout, _(" -U username Specify username."));
_cupsLangPuts(stdout, _(" -h server[:port] Specify server "
"address."));
@@ -219,8 +213,6 @@ usage(const char *opt) /* I - Option character/string */
"administration on/off."));
_cupsLangPuts(stdout, _(" --[no-]remote-any Allow/prevent access "
"from the Internet."));
- _cupsLangPuts(stdout, _(" --[no-]remote-printers Show/hide remote "
- "printers."));
_cupsLangPuts(stdout, _(" --[no-]share-printers Turn printer sharing "
"on/off."));
_cupsLangPuts(stdout, _(" --[no-]user-cancel-any Allow/prevent users to "
@@ -231,5 +223,5 @@ usage(const char *opt) /* I - Option character/string */
/*
- * End of "$Id: cupsctl.c 9636 2011-03-21 22:02:00Z mike $".
+ * End of "$Id: cupsctl.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/systemv/cupstestdsc.c b/systemv/cupstestdsc.c
index f773f1f6..748cc924 100644
--- a/systemv/cupstestdsc.c
+++ b/systemv/cupstestdsc.c
@@ -1,5 +1,5 @@
/*
- * "$Id: cupstestdsc.c 9384 2010-11-22 07:06:39Z mike $"
+ * "$Id: cupstestdsc.c 9950 2011-09-01 23:02:24Z mike $"
*
* DSC test program for CUPS.
*
@@ -35,7 +35,7 @@
*/
static int check_file(const char *filename);
-static void usage(void);
+static void usage(void) __attribute__((noreturn));
/*
@@ -438,5 +438,5 @@ usage(void)
/*
- * End of "$Id: cupstestdsc.c 9384 2010-11-22 07:06:39Z mike $".
+ * End of "$Id: cupstestdsc.c 9950 2011-09-01 23:02:24Z mike $".
*/
diff --git a/systemv/cupstestppd.c b/systemv/cupstestppd.c
index 10555c81..141790f5 100644
--- a/systemv/cupstestppd.c
+++ b/systemv/cupstestppd.c
@@ -1,5 +1,5 @@
/*
- * "$Id: cupstestppd.c 10362 2012-03-19 15:31:53Z mike $"
+ * "$Id: cupstestppd.c 10431 2012-04-23 19:19:19Z mike $"
*
* PPD test program for CUPS.
*
@@ -129,7 +129,7 @@ static int check_translations(ppd_file_t *ppd, int errors, int verbose,
int warn);
static void show_conflicts(ppd_file_t *ppd, const char *prefix);
static int test_raster(ppd_file_t *ppd, int verbose);
-static void usage(void);
+static void usage(void) __attribute__((noreturn));
static int valid_path(const char *keyword, const char *path, int errors,
int verbose, int warn);
static int valid_utf8(const char *s);
@@ -147,6 +147,7 @@ main(int argc, /* I - Number of command-line args */
int len; /* Length of option name */
char *opt; /* Option character */
const char *ptr; /* Pointer into string */
+ cups_file_t *fp; /* PPD file */
int files; /* Number of files */
int verbose; /* Want verbose output? */
int warn; /* Which errors to just warn about */
@@ -303,7 +304,7 @@ main(int argc, /* I - Number of command-line args */
* Read from stdin...
*/
- ppd = ppdOpen(stdin);
+ ppd = _ppdOpen(cupsFileStdin(), _PPD_LOCALIZATION_ALL);
if (verbose >= 0)
printf("%s:", (ppd && ppd->pcfilename) ? ppd->pcfilename : "(stdin)");
@@ -317,7 +318,24 @@ main(int argc, /* I - Number of command-line args */
if (verbose >= 0)
printf("%s:", argv[i]);
- ppd = ppdOpenFile(argv[i]);
+ if ((fp = cupsFileOpen(argv[i], "r")) != NULL)
+ {
+ ppd = _ppdOpen(fp, _PPD_LOCALIZATION_ALL);
+ cupsFileClose(fp);
+ }
+ else
+ {
+ status = ERROR_FILE_OPEN;
+
+ if (verbose >= 0)
+ {
+ _cupsLangPuts(stdout, _(" FAIL"));
+ _cupsLangPrintf(stdout,
+ _(" **FAIL** Unable to open PPD file - %s on "
+ "line %d."), strerror(errno), 0);
+ continue;
+ }
+ }
}
if (ppd == NULL)
@@ -332,8 +350,8 @@ main(int argc, /* I - Number of command-line args */
{
_cupsLangPuts(stdout, _(" FAIL"));
_cupsLangPrintf(stdout,
- _(" **FAIL** Unable to open PPD file - %s"),
- strerror(errno));
+ _(" **FAIL** Unable to open PPD file - %s on "
+ "line %d."), strerror(errno), 0);
}
}
else
@@ -493,7 +511,7 @@ main(int argc, /* I - Number of command-line args */
_cupsLangPuts(stdout, _(" FAIL"));
_cupsLangPrintf(stdout,
- _(" **FAIL** BAD DefaultImageableArea %s\n"
+ _(" **FAIL** Bad DefaultImageableArea %s\n"
" REF: Page 102, section 5.15."),
attr->value);
}
@@ -529,7 +547,7 @@ main(int argc, /* I - Number of command-line args */
_cupsLangPuts(stdout, _(" FAIL"));
_cupsLangPrintf(stdout,
- _(" **FAIL** BAD DefaultPaperDimension %s\n"
+ _(" **FAIL** Bad DefaultPaperDimension %s\n"
" REF: Page 103, section 5.15."),
attr->value);
}
@@ -559,7 +577,7 @@ main(int argc, /* I - Number of command-line args */
_cupsLangPuts(stdout, _(" FAIL"));
_cupsLangPrintf(stdout,
- _(" **FAIL** BAD Default%s %s\n"
+ _(" **FAIL** Bad Default%s %s\n"
" REF: Page 40, section 4.5."),
option->keyword, option->defchoice);
}
@@ -721,10 +739,11 @@ main(int argc, /* I - Number of command-line args */
if (!errors && !verbose)
_cupsLangPuts(stdout, _(" FAIL"));
- _cupsLangPuts(stdout,
- _(" **FAIL** BAD Manufacturer (should be "
- "\"HP\")\n"
- " REF: Page 211, table D.1."));
+ _cupsLangPrintf(stdout,
+ _(" **FAIL** Bad Manufacturer (should be "
+ "\"%s\")\n"
+ " REF: Page 211, table D.1."),
+ "HP");
}
errors ++;
@@ -737,10 +756,11 @@ main(int argc, /* I - Number of command-line args */
if (!errors && !verbose)
_cupsLangPuts(stdout, _(" FAIL"));
- _cupsLangPuts(stdout,
- _(" **FAIL** BAD Manufacturer (should be "
- "\"Oki\")\n"
- " REF: Page 211, table D.1."));
+ _cupsLangPrintf(stdout,
+ _(" **FAIL** Bad Manufacturer (should be "
+ "\"%s\")\n"
+ " REF: Page 211, table D.1."),
+ "Oki");
}
errors ++;
@@ -777,7 +797,7 @@ main(int argc, /* I - Number of command-line args */
_cupsLangPuts(stdout, _(" FAIL"));
_cupsLangPrintf(stdout,
- _(" **FAIL** BAD ModelName - \"%c\" not "
+ _(" **FAIL** Bad ModelName - \"%c\" not "
"allowed in string.\n"
" REF: Pages 59-60, section 5.3."),
*ptr);
@@ -894,7 +914,7 @@ main(int argc, /* I - Number of command-line args */
_cupsLangPuts(stdout, _(" FAIL"));
_cupsLangPuts(stdout,
- _(" **FAIL** BAD Product - not \"(string)\".\n"
+ _(" **FAIL** Bad Product - not \"(string)\".\n"
" REF: Page 62, section 5.3."));
}
@@ -933,7 +953,7 @@ main(int argc, /* I - Number of command-line args */
_cupsLangPuts(stdout, _(" FAIL"));
_cupsLangPuts(stdout,
- _(" **FAIL** BAD PSVersion - not \"(string) "
+ _(" **FAIL** Bad PSVersion - not \"(string) "
"int\".\n"
" REF: Pages 62-64, section 5.3."));
}
@@ -968,7 +988,7 @@ main(int argc, /* I - Number of command-line args */
_cupsLangPuts(stdout, _(" FAIL"));
_cupsLangPuts(stdout,
- _(" **FAIL** BAD ShortNickName - longer "
+ _(" **FAIL** Bad ShortNickName - longer "
"than 31 chars.\n"
" REF: Pages 64-65, section 5.3."));
}
@@ -1002,7 +1022,7 @@ main(int argc, /* I - Number of command-line args */
_cupsLangPuts(stdout, _(" FAIL"));
_cupsLangPuts(stdout,
- _(" **FAIL** BAD JobPatchFile attribute in file\n"
+ _(" **FAIL** Bad JobPatchFile attribute in file\n"
" REF: Page 24, section 3.4."));
}
@@ -1126,7 +1146,7 @@ main(int argc, /* I - Number of command-line args */
_cupsLangPuts(stdout, _(" FAIL"));
_cupsLangPrintf(stdout,
- _(" **FAIL** Bad %s choice %s\n"
+ _(" **FAIL** Bad option %s choice %s\n"
" REF: Page 84, section 5.9"),
option->keyword, choice->choice);
}
@@ -2123,8 +2143,8 @@ check_case(ppd_file_t *ppd, /* I - PPD file */
if (verbose >= 0)
_cupsLangPrintf(stdout,
- _(" **FAIL** Multiple occurrences of %s "
- "choice name %s."),
+ _(" **FAIL** Multiple occurrences of "
+ "option %s choice name %s."),
optiona->keyword, choicea->choice);
errors ++;
@@ -2140,8 +2160,8 @@ check_case(ppd_file_t *ppd, /* I - PPD file */
if (verbose >= 0)
_cupsLangPrintf(stdout,
- _(" **FAIL** %s choice names %s and %s "
- "differ only by case."),
+ _(" **FAIL** Option %s choice names %s and "
+ "%s differ only by case."),
optiona->keyword, choicea->choice, choiceb->choice);
errors ++;
@@ -3197,17 +3217,27 @@ check_sizes(ppd_file_t *ppd, /* I - PPD file */
_PWG_FROMPTS(size->width);
pwg_media = _pwgMediaForSize(width_2540ths, length_2540ths);
- if (pwg_media && pwg_media->ppd)
+ if (pwg_media && pwg_media->ppd && (pwg_media->ppd[0] < 'a' || pwg_media->ppd[0] > 'z'))
{
size_t ppdlen = strlen(pwg_media->ppd);
/* Length of standard PPD name */
strlcpy(buf, pwg_media->ppd, sizeof(buf));
+ if (strcmp(size->name, buf) && size->width > size->length)
+ {
+ if (!strcmp(pwg_media->ppd, "DoublePostcardRotated"))
+ strlcpy(buf, "DoublePostcard", sizeof(buf));
+ else if (strstr(size->name, ".Transverse"))
+ snprintf(buf, sizeof(buf), "%s.Transverse", pwg_media->ppd);
+ else
+ snprintf(buf, sizeof(buf), "%sRotated", pwg_media->ppd);
+ }
+
if (size->left == 0 && size->bottom == 0 &&
size->right == size->width && size->top == size->length)
{
- snprintf(buf, sizeof(buf), "%s.Fullbleed", pwg_media->ppd);
+ strlcat(buf, ".Fullbleed", sizeof(buf) - strlen(buf));
if (_cups_strcasecmp(size->name, buf))
{
/*
@@ -3221,20 +3251,6 @@ check_sizes(ppd_file_t *ppd, /* I - PPD file */
is_ok = 0;
}
}
- else if (strcmp(size->name, buf) && size->width > size->length)
- {
- if (!strcmp(pwg_media->ppd, "DoublePostcardRotated"))
- strlcpy(buf, "DoublePostcard", sizeof(buf));
- else
- snprintf(buf, sizeof(buf), "%sRotated", pwg_media->ppd);
-
- if (strcmp(size->name, buf))
- {
- snprintf(buf, sizeof(buf), "%s.Transverse", pwg_media->ppd);
- if (strcmp(size->name, buf))
- is_ok = 0;
- }
- }
else if (!strncmp(size->name, pwg_media->ppd, ppdlen))
{
/*
@@ -3263,7 +3279,8 @@ check_sizes(ppd_file_t *ppd, /* I - PPD file */
* Check for EnvSizeName as well...
*/
- if (strncmp(pwg_media->ppd, "Env", 3))
+ if (strncmp(pwg_media->ppd, "Env", 3) &&
+ !strncmp(size->name, "Env", 3))
snprintf(buf, sizeof(buf), "Env%s", pwg_media->ppd);
if (strcmp(size->name, buf))
@@ -3309,7 +3326,8 @@ check_sizes(ppd_file_t *ppd, /* I - PPD file */
size_t buflen = strlen(buf); /* Length of proposed name */
if (_cups_strncasecmp(size->name, buf, buflen) ||
- strcmp(size->name + buflen, "in"))
+ (strcmp(size->name + buflen, "in") &&
+ size->name[buflen] != '.'))
_cupsLangPrintf(stdout,
_(" %s Size \"%s\" should be \"%s\"."),
prefix, size->name, buf);
@@ -3787,7 +3805,7 @@ usage(void)
"errors."));
_cupsLangPuts(stdout, _(" -q Run silently."));
_cupsLangPuts(stdout, _(" -r Use 'relaxed' open mode."));
- _cupsLangPuts(stdout, _(" -v Be slightly verbose."));
+ _cupsLangPuts(stdout, _(" -v Be verbose."));
_cupsLangPuts(stdout, _(" -vv Be very verbose."));
exit(ERROR_USAGE);
@@ -3954,5 +3972,5 @@ valid_utf8(const char *s) /* I - String to check */
/*
- * End of "$Id: cupstestppd.c 10362 2012-03-19 15:31:53Z mike $".
+ * End of "$Id: cupstestppd.c 10431 2012-04-23 19:19:19Z mike $".
*/
diff --git a/systemv/lp.c b/systemv/lp.c
index 5f48d5d2..3ef59bab 100644
--- a/systemv/lp.c
+++ b/systemv/lp.c
@@ -1,5 +1,5 @@
/*
- * "$Id: lp.c 10495 2012-05-21 22:40:33Z mike $"
+ * "$Id: lp.c 10494 2012-05-21 22:39:01Z mike $"
*
* "lp" command for CUPS.
*
@@ -724,5 +724,5 @@ set_job_attrs(const char *command, /* I - Command name */
/*
- * End of "$Id: lp.c 10495 2012-05-21 22:40:33Z mike $".
+ * End of "$Id: lp.c 10494 2012-05-21 22:39:01Z mike $".
*/
diff --git a/systemv/lpadmin.c b/systemv/lpadmin.c
index f51ec1e3..19664206 100644
--- a/systemv/lpadmin.c
+++ b/systemv/lpadmin.c
@@ -1,5 +1,5 @@
/*
- * "$Id: lpadmin.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: lpadmin.c 10104 2011-11-04 06:37:03Z mike $"
*
* "lpadmin" command for CUPS.
*
@@ -1090,8 +1090,7 @@ delete_printer_option(http_t *http, /* I - Server connection */
* option with deleteAttr tag
*/
- if (get_printer_type(http, printer, uri, sizeof(uri)) &
- (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT))
+ if (get_printer_type(http, printer, uri, sizeof(uri)) & CUPS_PRINTER_CLASS)
request = ippNewRequest(CUPS_ADD_MODIFY_CLASS);
else
request = ippNewRequest(CUPS_ADD_MODIFY_PRINTER);
@@ -1145,8 +1144,7 @@ enable_printer(http_t *http, /* I - Server connection */
* printer-is-accepting-jobs
*/
- if (get_printer_type(http, printer, uri, sizeof(uri)) &
- (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT))
+ if (get_printer_type(http, printer, uri, sizeof(uri)) & CUPS_PRINTER_CLASS)
request = ippNewRequest(CUPS_ADD_MODIFY_CLASS);
else
request = ippNewRequest(CUPS_ADD_MODIFY_PRINTER);
@@ -1224,7 +1222,7 @@ get_printer_type(http_t *http, /* I - Server connection */
{
type = (cups_ptype_t)attr->values[0].integer;
- if (type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT))
+ if (type & CUPS_PRINTER_CLASS)
httpAssembleURIf(HTTP_URI_CODING_ALL, uri, urisize, "ipp", NULL,
"localhost", ippPort(), "/classes/%s", printer);
}
@@ -1283,8 +1281,7 @@ set_printer_options(
* other options
*/
- if (get_printer_type(http, printer, uri, sizeof(uri)) &
- (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT))
+ if (get_printer_type(http, printer, uri, sizeof(uri)) & CUPS_PRINTER_CLASS)
request = ippNewRequest(CUPS_ADD_MODIFY_CLASS);
else
request = ippNewRequest(CUPS_ADD_MODIFY_PRINTER);
@@ -1517,5 +1514,5 @@ validate_name(const char *name) /* I - Name to check */
/*
- * End of "$Id: lpadmin.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: lpadmin.c 10104 2011-11-04 06:37:03Z mike $".
*/
diff --git a/systemv/lpoptions.c b/systemv/lpoptions.c
index 438fcf2a..6b938245 100644
--- a/systemv/lpoptions.c
+++ b/systemv/lpoptions.c
@@ -1,5 +1,5 @@
/*
- * "$Id: lpoptions.c 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: lpoptions.c 9950 2011-09-01 23:02:24Z mike $"
*
* Printer option program for CUPS.
*
@@ -33,7 +33,7 @@
static void list_group(ppd_file_t *ppd, ppd_group_t *group);
static void list_options(cups_dest_t *dest);
-static void usage(void);
+static void usage(void) __attribute__((noreturn));
/*
@@ -561,5 +561,5 @@ usage(void)
/*
- * End of "$Id: lpoptions.c 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: lpoptions.c 9950 2011-09-01 23:02:24Z mike $".
*/
diff --git a/systemv/lppasswd.c b/systemv/lppasswd.c
index 32dc950a..efea0212 100644
--- a/systemv/lppasswd.c
+++ b/systemv/lppasswd.c
@@ -1,9 +1,9 @@
/*
- * "$Id: lppasswd.c 9384 2010-11-22 07:06:39Z mike $"
+ * "$Id: lppasswd.c 9950 2011-09-01 23:02:24Z mike $"
*
* MD5 password program for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2011 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -48,7 +48,7 @@
* Local functions...
*/
-static void usage(FILE *fp);
+static void usage(FILE *fp) __attribute__((noreturn));
/*
@@ -429,7 +429,7 @@ main(int argc, /* I - Number of command-line arguments */
if (error)
{
_cupsLangPuts(stderr, _("lppasswd: Password file not updated."));
-
+
unlink(passwdnew);
return (1);
@@ -475,7 +475,7 @@ usage(FILE *fp) /* I - File to send usage to */
if (getuid())
_cupsLangPuts(fp, _("Usage: lppasswd [-g groupname]"));
else
- _cupsLangPuts(fp,
+ _cupsLangPuts(fp,
_("Usage: lppasswd [-g groupname] [username]\n"
" lppasswd [-g groupname] -a [username]\n"
" lppasswd [-g groupname] -x [username]"));
@@ -485,5 +485,5 @@ usage(FILE *fp) /* I - File to send usage to */
/*
- * End of "$Id: lppasswd.c 9384 2010-11-22 07:06:39Z mike $".
+ * End of "$Id: lppasswd.c 9950 2011-09-01 23:02:24Z mike $".
*/
diff --git a/systemv/lpstat.c b/systemv/lpstat.c
index 534be069..1513e70f 100644
--- a/systemv/lpstat.c
+++ b/systemv/lpstat.c
@@ -1,5 +1,5 @@
/*
- * "$Id: lpstat.c 10064 2011-10-07 21:41:07Z mike $"
+ * "$Id: lpstat.c 10062 2011-10-07 21:05:19Z mike $"
*
* "lpstat" command for CUPS.
*
@@ -2050,5 +2050,5 @@ show_scheduler(void)
/*
- * End of "$Id: lpstat.c 10064 2011-10-07 21:41:07Z mike $".
+ * End of "$Id: lpstat.c 10062 2011-10-07 21:05:19Z mike $".
*/
diff --git a/templates/admin.tmpl b/templates/admin.tmpl
index 477da139..ee6b5af9 100644
--- a/templates/admin.tmpl
+++ b/templates/admin.tmpl
@@ -45,28 +45,21 @@
<P><A HREF="/admin/">Advanced <SMALL>&#x25bc;</SMALL></A><BR>
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Show printers shared by other systems<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protocols\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Share printers connected to this system<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Max clients\:
<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protocols\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Allow printing from the Internet<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> Advertise web interface<BR>
<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Allow remote administration<BR>
{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Use Kerberos authentication (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Allow users to cancel any job (not just their own)<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY" {?preserve_job_history}> Preserve job history<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Number of jobs\:
+<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOBS" {?preserve_jobs}> Preserve job history<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Maximum jobs (0 for no limit)\:
<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES" {?preserve_job_files}> Preserve job print files<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Retain Metadata\:
+<INPUT TYPE="TEXT" NAME="PRESERVE_JOB_HISTORY" VALUE="{?preserve_job_history}" SIZE="6"><BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Retain Documents\:
+<INPUT TYPE="TEXT" NAME="PRESERVE_JOB_FILES" VALUE="{?preserve_job_files}" SIZE="6"><BR>
<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Save debugging information for troubleshooting<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Max log file size\:
<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
@@ -75,7 +68,6 @@
<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Advanced <SMALL>&#x25b6;</SMALL></A><BR>
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Show printers shared by other systems<BR>
<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Share printers connected to this system<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Allow printing from the Internet<BR>
<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Allow remote administration<BR>
diff --git a/templates/fr/add-class.tmpl b/templates/ca/add-class.tmpl
index 7cde5fb9..8af7a7d0 100644
--- a/templates/fr/add-class.tmpl
+++ b/templates/ca/add-class.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">Ajouter une classe</H2>
+<H2 CLASS="title">Afegeix una classe</H2>
<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -10,17 +10,17 @@
<TR>
<TH CLASS="label">Nom:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Peux contenir n'importe quel caract&egrave;re sauf "/", "#", et espace)</SMALL></TD>
+<SMALL>(Pot contenir qualsevol car&agrave;cter excepte &laquo;/&raquo;, &laquo;#&raquo;, i espai)</SMALL></TD>
</TR>
<TR>
-<TH CLASS="label">Description:</TH>
+<TH CLASS="label">Descripci&oacute;:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Description compr&eacute;hensible comme "HP LaserJet Recto/Verso")</SMALL></TD>
+<SMALL>(Una descripci&oacute; com ara &laquo;HP LaserJet de doble cara&raquo;)</SMALL></TD>
</TR>
<TR>
-<TH CLASS="label">Emplacement:</TH>
+<TH CLASS="label">Ubicaci&oacute;:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Emplacement compr&eacute;hensible comme "Lab 1")</SMALL></TD>
+<SMALL>(Una ubicaci&oacute; com ara &laquo;Laboratori 1&raquo;)</SMALL></TD>
</TR>
<TR>
<TH CLASS="label">Membres:</TH>
@@ -32,7 +32,7 @@
</TR>
<TR>
<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Ajouter la classe"></TD>
+<TD><INPUT TYPE="SUBMIT" VALUE="Afegeix"></TD>
</TR>
</TABLE>
diff --git a/templates/fr/add-printer.tmpl b/templates/ca/add-printer.tmpl
index 2dc87be3..f266a0be 100644
--- a/templates/fr/add-printer.tmpl
+++ b/templates/ca/add-printer.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">Ajouter une imprimante</H2>
+<H2 CLASS="title">Afegir una impressora</H2>
<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -16,30 +16,30 @@
<TR>
<TH CLASS="label">Nom:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?template_name}"><BR>
-<SMALL>(Peux contenir n'importe quel caract&egrave;re sauf "/", "#", et espace)</SMALL></TD>
+<SMALL>(Pot contenir qualsevol car&agrave;cter excepte &laquo;/&raquo;, &laquo;#&raquo;, i espai)</SMALL></TD>
</TR>
<TR>
-<TH CLASS="label">Description:</TH>
+<TH CLASS="label">Descripci&oacute;:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_INFO}"><BR>
-<SMALL>(Description compr&eacute;hensible comme "HP LaserJet Recto/Verso")</SMALL></TD>
+<SMALL>(Una descripci&oacute; com ara &laquo;HP LaserJet de doble cara&raquo;)</SMALL></TD>
</TR>
<TR>
-<TH CLASS="label">Emplacement:</TH>
+<TH CLASS="label">Ubicaci&oacute;:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_LOCATION}"><BR>
-<SMALL>(Emplacement compr&eacute;hensible comme "Lab 1")</SMALL></TD>
+<SMALL>(Una ubicaci&oacute; com ara &laquo;Laboratori 1&raquo;)</SMALL></TD>
</TR>
<TR>
-<TH CLASS="label">Connexion:</TH>
+<TH CLASS="label">Connexi&oacute;:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
</TR>
<TR>
-<TH CLASS="label">Partage:</TH>
+<TH CLASS="label">Compartir:</TH>
<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Partager cette imprimante</TD>
+Comparteix aquesta impressora</TD>
</TR>
<TR>
<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Continuer"></TD>
+<TD><INPUT TYPE="SUBMIT" VALUE="Continua"></TD>
</TR>
</TABLE>
diff --git a/templates/id/add-rss-subscription.tmpl b/templates/ca/add-rss-subscription.tmpl
index bf8f9644..b195ac69 100644
--- a/templates/id/add-rss-subscription.tmpl
+++ b/templates/ca/add-rss-subscription.tmpl
@@ -2,42 +2,42 @@
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription">
-<H2 CLASS="title">Tambah Subskripsi RSS</H2>
+<H2 CLASS="title">Afegir una subscripci&oacute; RSS</H2>
<TABLE SUMMARY="Add RSS Subscription form">
<TR>
-<TH CLASS="label">Nama:</TH>
+<TH CLASS="label">Nom:</TH>
<TD COLSPAN="5"><INPUT TYPE="TEXT" NAME="SUBSCRIPTION_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?SUBSCRIPTION_NAME}"><BR>
-<SMALL>(Karakter apa saja yang dapat dicetak, kecuali "/", "#", dan spasi)</SMALL></TD>
+<SMALL>(Pot contenir qualsevol car&agrave;cter excepte espai &laquo;/&raquo;, &laquo;?&raquo; i &laquo;#&raquo;)</SMALL></TD>
</TR>
<TR>
-<TH CLASS="label">Antrian:</TH>
-<TD COLSPAN="5"><SELECT NAME="PRINTER_URI" SIZE="10"><OPTION VALUE="#ALL#"{?PRINTER_URI=#ALL#? SELECTED:}>Semua Antrian</OPTION>{[printer_name]<OPTION VALUE="{printer_uri_supported}"{?PRINTER_URI={printer_uri_supported}? SELECTED:}>{printer_name}</OPTION>}</SELECT></TD>
+<TH CLASS="label">Cua:</TH>
+<TD COLSPAN="5"><SELECT NAME="PRINTER_URI" SIZE="10"><OPTION VALUE="#ALL#"{?PRINTER_URI=#ALL#? SELECTED:}>Totes</OPTION>{[printer_name]<OPTION VALUE="{printer_uri_supported}"{?PRINTER_URI={printer_uri_supported}? SELECTED:}>{printer_name}</OPTION>}</SELECT></TD>
</TR>
<TR VALIGN="TOP">
-<TH CLASS="label">Kejadian:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CREATED" {?EVENT_JOB_CREATED}>Tugas Dibuat<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_COMPLETED" {?EVENT_JOB_COMPLETED}>Tugas Selesai<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_STOPPED" {?EVENT_JOB_STOPPED}>Tugas Berhenti<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CONFIG_CHANGED" {?EVENT_JOB_CONFIG_CHANGED}>Opsi Tugas Berubah</TD>
+<TH CLASS="label">Esdeveniments:</TH>
+<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CREATED" {?EVENT_JOB_CREATED}>Creaci&oacute; de tasca<BR>
+<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_COMPLETED" {?EVENT_JOB_COMPLETED}>Tasca completada<BR>
+<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_STOPPED" {?EVENT_JOB_STOPPED}>Tasca aturada<BR>
+<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CONFIG_CHANGED" {?EVENT_JOB_CONFIG_CHANGED}>Modificaci&oacute; de les opcions de la tasca</TD>
<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_STOPPED" {?EVENT_PRINTER_STOPPED}>Antrian Berhenti<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_ADDED" {?EVENT_PRINTER_ADDED}>Antrian Ditambah<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_MODIFIED" {?EVENT_PRINTER_MODIFIED}>Antrian Berubah<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_DELETED" {?EVENT_PRINTER_DELETED}>Antrian Dihapus</TD>
+<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_STOPPED" {?EVENT_PRINTER_STOPPED}>Cua aturada<BR>
+<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_ADDED" {?EVENT_PRINTER_ADDED}>Cua afegida<BR>
+<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_MODIFIED" {?EVENT_PRINTER_MODIFIED}>Modificaci&oacute; de la cua<BR>
+<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_DELETED" {?EVENT_PRINTER_DELETED}>Eliminaci&oacute; de la cua</TD>
<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STARTED" {?EVENT_SERVER_STARTED}>Server Dimulai<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STOPPED" {?EVENT_SERVER_STOPPED}>Server Berhenti<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_RESTARTED" {?EVENT_SERVER_RESTARTED}>Server Dijalankan Ulang<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_AUDIT" {?EVENT_SERVER_AUDIT}>Audit Keamanan Server</TD>
+<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STARTED" {?EVENT_SERVER_STARTED}>Inicialitzaci&oacute; del servidor<BR>
+<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STOPPED" {?EVENT_SERVER_STOPPED}>Aturada del servidor<BR>
+<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_RESTARTED" {?EVENT_SERVER_RESTARTED}>Servidor iniciat de nou<BR>
+<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_AUDIT" {?EVENT_SERVER_AUDIT}>Auditoria de seguretat del servidor</TD>
</TR>
<TR>
-<TH CLASS="label">Maksimal Kejadian dalam Berita:</TH>
+<TH CLASS="label">Nombre m&agrave;xims d'esdeveniments al canal:</TH>
<TD COLSPAN="5"><INPUT TYPE="NUMBER" NAME="MAX_EVENTS" SIZE="4" MAXLENGTH="4" VALUE="{MAX_EVENTS?{MAX_EVENTS}:20}"></TD>
</TR>
<TR>
<TD></TD>
-<TD COLSPAN="5"><INPUT TYPE="SUBMIT" VALUE="Tambah Subskripsi RSS"></TD>
+<TD COLSPAN="5"><INPUT TYPE="SUBMIT" VALUE="Afegeix"></TD>
</TR>
</TABLE>
diff --git a/templates/ca/admin.tmpl b/templates/ca/admin.tmpl
new file mode 100644
index 00000000..ea3fc1ec
--- /dev/null
+++ b/templates/ca/admin.tmpl
@@ -0,0 +1,102 @@
+<TABLE CLASS="indent" SUMMARY="Administration Tasks">
+<TR><TD VALIGN="TOP">
+
+<H2 CLASS="title">Impressores</H2>
+
+<P>
+<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="SUBMIT" VALUE="Afegeix una impressora"></FORM>
+<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="find-new-printers"><INPUT TYPE="SUBMIT" VALUE="Busca m&eacute;s impressores"></FORM>
+<FORM ACTION="/printers/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Gestiona les impressores"></FORM>
+{have_samba?<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba"><INPUT TYPE="SUBMIT" VALUE="Exporta les impressores al Samba"></FORM>:}
+</P>
+
+<H2 CLASS="title">Classes</H2>
+
+<P>
+<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-class"><INPUT TYPE="SUBMIT" VALUE="Afegeix una classe"></FORM>
+<FORM ACTION="/classes/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Gestiona les classes"></FORM>
+</P>
+
+<H2 CLASS="title">Tasques</H2>
+
+<P>
+<FORM ACTION="/jobs/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Gestiona les tasques"></FORM>
+</P>
+
+</TD><TD>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD><TD VALIGN="TOP">
+
+<H2 CLASS="title">Servidor</H2>
+
+<P>
+<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server"><INPUT TYPE="SUBMIT" VALUE="Edita el fitxer de configuraci&oacute;"></FORM>
+<FORM ACTION="/admin/log/access_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Mostra el registre d'acc&eacute;s"></FORM>
+<FORM ACTION="/admin/log/error_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Mostra el registre d'errors"></FORM>
+<FORM ACTION="/admin/log/page_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Mostra la p&agrave;gina de registres"></FORM>
+</P>
+
+{SETTINGS_ERROR?<P>{SETTINGS_MESSAGE}</P>
+<BLOCKQUOTE>{SETTINGS_ERROR}</BLOCKQUOTE>:
+
+<FORM METHOD="POST" ACTION="/admin">
+<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
+
+{ADVANCEDSETTINGS?<P><B>Configuraci&oacute; del servidor\:</B></P>
+
+<P><A HREF="/admin/">Avan&ccedil;at <SMALL>&#x25bc;</SMALL></A><BR>
+<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
+<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
+<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Comparteix les impressores connectades a aquest sistema<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Nombre m&agrave;xim de clients\:
+<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Permet imprimir des d'Internet<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> Anuncia la interf&iacute;cie web<BR>
+<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Permet l'administraci&oacute; remota<BR>
+{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Fes servir l'autenticaci&oacute; Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">PMF</A>)<BR>:}
+<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Permet als usuaris cancel&middot;lar qualsevol tasca (no nom&eacute;s les pr&ograve;pies)<BR>
+<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOBS" {?preserve_jobs}> Conserva l'historial de tasques<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Nombre màxim de tasques (0 per ilimitat)\:
+<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Conserva les metadades\:
+<INPUT TYPE="TEXT" NAME="PRESERVE_JOB_HISTORY" VALUE="{?preserve_job_history}" SIZE="6"><BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Conserva els documents\:
+<INPUT TYPE="TEXT" NAME="PRESERVE_JOB_FILES" VALUE="{?preserve_job_files}" SIZE="6"><BR>
+<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Desa la informaci&oacute; de depuraci&oacute; per la resoluci&oacute; de problemes<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mida m&agrave;xima de fitxer de registre\:
+<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
+
+:<P><B>Configuraci&oacute; del servidor:</B></P>
+
+<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Avan&ccedil;at <SMALL>&#x25b6;</SMALL></A><BR>
+<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
+<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Comparteix les impressores connectades a aquest sistema<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Permet imprimir des d'Internet<BR>
+<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Permet l'administraci&oacute; remota<BR>
+{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Fes servir l'autenticaci&oacute; Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">PMF</A>)<BR>:}
+<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Permet als usuaris cancel&middot;lar qualsevol tasca (no nom&eacute;s les pr&ograve;pies)<BR>
+<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Desa la informaci&oacute; de depuraci&oacute; per la resoluci&oacute; de problemes<BR>
+
+}
+<P><INPUT TYPE="SUBMIT" NAME="CHANGESETTINGS" VALUE="Envia els canvis"></P>
+
+</FORM>}
+
+</TD></TR>
+</TABLE>
+
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Subscripcions RSS</H2>
+
+<P>
+<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Afegeix una subscripci&oacute; RSS"></FORM>
+</P>
+
+</DIV>
+
+{notify_subscription_id?<TABLE CLASS="list" SUMMARY="RSS Subscriptions">
+<THEAD><TR><TH>Nom</TH><TH>Esdeveniments</TH><TH>Nom de la cua</TH></TR></THEAD>
+<TBODY>{[notify_subscription_id]
+<TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
+<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Cancel&middot;la la subscripci&oacute; RSS"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:All Queues}</TD></TR>}
+</TBODY>
+</TABLE>:}
diff --git a/templates/hu/choose-device.tmpl b/templates/ca/choose-device.tmpl
index 2491e04e..a28cc92d 100644
--- a/templates/hu/choose-device.tmpl
+++ b/templates/ca/choose-device.tmpl
@@ -1,7 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{op=modify-printer?{printer_name} módosítása:Nyomtató
-hozzáadása}</H2>
+<H2 CLASS="title">{op=modify-printer?Modifica {printer_name}:Add Printer}</H2>
{CUPS_GET_DEVICES_DONE?<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -10,12 +9,12 @@ hozzáadása}</H2>
<TABLE>
{op=add-printer?:<TR>
-<TH CLASS="label">Jelenlegi kapcsolat\:</TH>
+<TH CLASS="label">Connexi&oacute; actual\:</TH>
<TD><INPUT TYPE="RADIO" NAME="DEVICE_URI" VALUE="{current_device_uri}" CHECKED>
{current_device_uri}</TD>
</TR>}
<TR>
-<TH CLASS="label">Helyi nyomtatók\:</TH>
+<TH CLASS="label">Impressores locals\:</TH>
<TD>
{[device_uri]{device_class!network?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
@@ -24,7 +23,7 @@ VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
</TD>
</TR>
<TR>
-<TH CLASS="label">Feltérképezett hálózati nyomtatók\:</TH>
+<TH CLASS="label">Impressores de xarxa descobertes\:</TH>
<TD>
{[device_uri]{device_class=network?{device_uri~[a-z]+://?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
@@ -34,7 +33,7 @@ VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
</TR>
<TR>
<TR>
-<TH CLASS="label">Egyéb hálózati nyomtatók\:</TH>
+<TH CLASS="label">Altres impressores de xarxa\:</TH>
<TD>
{[device_uri]{device_class=network?{device_uri~[a-z]+://?:<INPUT TYPE="RADIO" NAME="DEVICE_URI"
VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
@@ -44,11 +43,11 @@ VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
</TR>
<TR>
<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Folytatás"></TD>
+<TD><INPUT TYPE="SUBMIT" VALUE="Continua"></TD>
</TR>
</TABLE>
</FORM>:<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Elfoglalt"> Nyomtatók keresése...</P>}
+ALT="Busy Indicator"> Buscant impressores...</P>}
</DIV>
diff --git a/templates/it/choose-make.tmpl b/templates/ca/choose-make.tmpl
index 3bb4c78c..01bc6540 100644
--- a/templates/it/choose-make.tmpl
+++ b/templates/ca/choose-make.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{op=modify-printer?Modify {printer_name}:Aggiungi stampante}</H2>
+<H2 CLASS="title">{op=modify-printer?Modifica {printer_name}:Add Printer}</H2>
<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -13,28 +13,28 @@
<TABLE>
{op=modify-printer?:<TR>
-<TH CLASS="label">Nome:</TH>
+<TH CLASS="label">Nom:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
</TR>}
<TR>
-<TH CLASS="label">Descrizione:</TH>
+<TH CLASS="label">Descripci&oacute;:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
</TR>
<TR>
-<TH CLASS="label">Posizione:</TH>
+<TH CLASS="label">Ubicaci&oacute;:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
</TR>
<TR>
-<TH CLASS="label">Connessione:</TH>
+<TH CLASS="label">Connecci&oacute;:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
</TR>
<TR>
-<TH CLASS="label">Condivisione:</TH>
+<TH CLASS="label">Compartida:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Do Not:{?printer_is_shared=0?Do Not:}} Condividi questa stampante</TD>
+{?printer_is_shared=?Do Not:{?printer_is_shared=0?Do Not:}} Comparteix aquesta impressora</TD>
</TR>
<TR>
-<TH CLASS="label">Crea:</TH>
+<TH CLASS="label">Fabricant:</TH>
<TD>
<SELECT NAME="PPD_MAKE" SIZE="10">
{[ppd_make]<OPTION VALUE="{ppd_make}" {?current_make={ppd_make}?SELECTED:}>{ppd_make}}
@@ -50,13 +50,13 @@
<TD>&nbsp;</TD>
</TR>
<TR>
-<TH CLASS="label">Or Provide a PPD File:</TH>
+<TH CLASS="label">O indica un fitxer PPD:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
TYPE="FILE" NAME="PPD_FILE"></TD>
</TR>
<TR>
<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Add Printer:Modify Printer}"></TD>
+<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Add Printer:Modifica la impressora}"></TD>
</TR>
</TABLE>
diff --git a/templates/it/choose-model.tmpl b/templates/ca/choose-model.tmpl
index d7e93576..d2adeb87 100644
--- a/templates/it/choose-model.tmpl
+++ b/templates/ca/choose-model.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{op=modify-printer?Modify {printer_name}:Aggiungi stampante}</H2>
+<H2 CLASS="title">{op=modify-printer?Modifica {printer_name}:Add Printer}</H2>
<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -12,47 +12,47 @@
<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
<TABLE>
{op=modify-printer?:<TR>
-<TH CLASS="label">Nome:</TH>
+<TH CLASS="label">Nom:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
</TR>}
<TR>
-<TH CLASS="label">Descrizione:</TH>
+<TH CLASS="label">Descripci&oacute;:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
</TR>
<TR>
-<TH CLASS="label">Posizione:</TH>
+<TH CLASS="label">Ubicaci&oacute;:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
</TR>
<TR>
-<TH CLASS="label">Connessione:</TH>
+<TH CLASS="label">Connecci&oacute;:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
</TR>
<TR>
-<TH CLASS="label">Condivisione:</TH>
+<TH CLASS="label">Compartida:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Do Not:{?printer_is_shared=0?Do Not:}} Condividi stampante</TD>
+{?printer_is_shared=?Do Not:{?printer_is_shared=0?Do Not:}} Comparteix aquesta impressora</TD>
</TR>
<TR>
-<TH CLASS="label">Crea:</TH>
-<TD>{PPD_MAKE} <INPUT TYPE="SUBMIT" NAME="SELECT_MAKE" VALUE="Select Another Make/Manufacturer"></TD>
+<TH CLASS="label">Fabricant:</TH>
+<TD>{PPD_MAKE} <INPUT TYPE="SUBMIT" NAME="SELECT_MAKE" VALUE="Seleccioneu un altre fabricant"></TD>
</TR>
<TR>
-<TH CLASS="label">Modello:</TH>
+<TH CLASS="label">Model:</TH>
<TD>
<SELECT NAME="PPD_NAME" SIZE="10">
-{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Driver corrente - {current_make_and_model}</OPTION>:}
+{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Current Driver - {current_make_and_model}</OPTION>:}
{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
}</SELECT>
</TD>
</TR>
<TR>
-<TH CLASS="label">O fornisci un file PPD:</TH>
+<TH CLASS="label">O indica un fitxer PPD:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
TYPE="FILE" NAME="PPD_FILE"></TD>
</TR>
<TR>
<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Add Printer:Modifica stampante}"></TD>
+<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Add Printer:Modifica la impressora}"></TD>
</TR>
</TABLE>
diff --git a/templates/it/choose-serial.tmpl b/templates/ca/choose-serial.tmpl
index 106393ad..e86f5a88 100644
--- a/templates/it/choose-serial.tmpl
+++ b/templates/ca/choose-serial.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{op=modify-printer?Modifica {printer_name}:Aggiungi stampante}</H2>
+<H2 CLASS="title">{op=modify-printer?Modifica {printer_name}:Add Printer}</H2>
<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -9,42 +9,42 @@
<TABLE>
<TR>
-<TH CLASS="label">Connessione:</TH>
+<TH CLASS="label">Connexi&oacute;:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
</TR>
<TR>
-<TH CLASS="label">Velocit&agrave;:</TH>
+<TH CLASS="label">Velocitat:</TH>
<TD><SELECT NAME="BAUDRATE">
{[baudrates]<OPTION {?baudrate={baudrates}?SELECTED:}>{baudrates}}
</SELECT></TD>
</TR>
<TR>
-<TH CLASS="label">Parit&agrave;:</TH>
+<TH CLASS="label">Paritat:</TH>
<TD><SELECT NAME="PARITY">
-<OPTION VALUE="none" {?parity=none?SELECTED:}>Ne
-<OPTION VALUE="even" {?parity=even?SELECTED:}>Even
-<OPTION VALUE="odd" {?parity=odd?SELECTED:}>Odd
+<OPTION VALUE="none" {?parity=none?SELECTED:}>Cap
+<OPTION VALUE="even" {?parity=even?SELECTED:}>Parell
+<OPTION VALUE="odd" {?parity=odd?SELECTED:}>Senar
</SELECT></TD>
</TR>
<TR>
-<TH CLASS="label">Data Bits:</TH>
+<TH CLASS="label">Bits de dades:</TH>
<TD><SELECT NAME="BITS">
<OPTION {?bits=8?SELECTED:}>8
<OPTION {?bits=7?SELECTED:}>7
</SELECT></TD>
</TR>
<TR>
-<TH CLASS="label">Flow Control:</TH>
+<TH CLASS="label">Control de flux:</TH>
<TD><SELECT NAME="FLOW">
-<OPTION VALUE="none" {?flow=none?SELECTED:}>None
-<OPTION VALUE="soft" {?flow=soft?SELECTED:}>XON/XOFF (Software)
-<OPTION VALUE="hard" {?flow=hard?SELECTED:}>RTS/CTS (Hardware)
-<OPTION VALUE="dtrdsr" {?flow=dtrdsr?SELECTED:}>DTR/DSR (Hardware)
+<OPTION VALUE="none" {?flow=none?SELECTED:}>Cap
+<OPTION VALUE="soft" {?flow=soft?SELECTED:}>XON/XOFF (Programari)
+<OPTION VALUE="hard" {?flow=hard?SELECTED:}>RTS/CTS (Maquinari)
+<OPTION VALUE="dtrdsr" {?flow=dtrdsr?SELECTED:}>DTR/DSR (Maquinari)
</SELECT></TD>
</TR>
<TR>
<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Continue"></TD>
+<TD><INPUT TYPE="SUBMIT" VALUE="Continua"></TD>
</TR>
</TABLE>
diff --git a/templates/it/choose-uri.tmpl b/templates/ca/choose-uri.tmpl
index 81b153a0..630b1d3d 100644
--- a/templates/it/choose-uri.tmpl
+++ b/templates/ca/choose-uri.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{op=modify-printer?Modifica {printer_name}:Aggiungi stampante}</H2>
+<H2 CLASS="title">{op=modify-printer?Modifica {printer_name}:Add Printer}</H2>
<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -10,12 +10,12 @@
<TABLE>
<TR>
-<TH CLASS="label">Connection:</TH>
+<TH CLASS="label">Connexi&oacute;:</TH>
<TD><INPUT TYPE="URL" SIZE="60" MAXLENGTH="1023" NAME="DEVICE_URI" VALUE="{current_device_uri?{current_device_uri}:{device_uri}}"></TD>
</TR>
<TR>
<TD></TD>
-<TD>Esempi:
+<TD>Exemples:
<PRE>
http://hostname:631/ipp/
http://hostname:631/ipp/port1
@@ -29,8 +29,7 @@
socket://hostname:9100
</PRE>
-<P>Vedere <A HREF="/help/network.html" TARGET="_blank">"Stampanti di
-rete"</A> per l'URI corretto da utilizzare la stampante.</P>
+<P>Llegiu <A HREF="/help/network.html" TARGET="_blank">"Impressores de xarxa"</A> per saber quin URI heu de fer servir amb la vostre impressora.</P>
</TD>
</TR>
diff --git a/templates/ca/class-added.tmpl b/templates/ca/class-added.tmpl
new file mode 100644
index 00000000..8e8347cb
--- /dev/null
+++ b/templates/ca/class-added.tmpl
@@ -0,0 +1,7 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Afegeix una classe</H2>
+
+<P>La classe <A HREF="/classes/{printer_name}">{printer_name}</A> s'ha afegit correctament.
+
+</DIV>
diff --git a/templates/pl/class-confirm.tmpl b/templates/ca/class-confirm.tmpl
index 55cb5ed4..905ac6f0 100644
--- a/templates/pl/class-confirm.tmpl
+++ b/templates/ca/class-confirm.tmpl
@@ -1,10 +1,10 @@
<DIV CLASS="indent">
-<H2 CLASS="title">Usuwanie klasy {printer_name}</H2>
+<H2 CLASS="title">Esborra la classe {printer_name}</H2>
-<P><B>Ostrzeżenie:</B> Usunąć klasę
+<P><B>Av&iacute;s:</B> Esteu segur que voleu esborrar la classe
{printer_name}?</P>
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="op" VALUE="delete-class"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Usuń klasę"></FORM></P>
+<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="op" VALUE="delete-class"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Esborra la classe"></FORM></P>
</DIV>
diff --git a/templates/ca/class-deleted.tmpl b/templates/ca/class-deleted.tmpl
new file mode 100644
index 00000000..3f0035f8
--- /dev/null
+++ b/templates/ca/class-deleted.tmpl
@@ -0,0 +1,7 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Esborra la classe {printer_name}</H2>
+
+<P>La classe {printer_name} s'ha esborrat correctament.
+
+</DIV>
diff --git a/templates/ca/class-jobs-header.tmpl b/templates/ca/class-jobs-header.tmpl
new file mode 100644
index 00000000..90e640e4
--- /dev/null
+++ b/templates/ca/class-jobs-header.tmpl
@@ -0,0 +1,3 @@
+<DIV CLASS="indent">
+<H3 CLASS="title">Tasques</H3>
+</DIV>
diff --git a/templates/it/class-modified.tmpl b/templates/ca/class-modified.tmpl
index 04d4c849..6152ffa9 100644
--- a/templates/it/class-modified.tmpl
+++ b/templates/ca/class-modified.tmpl
@@ -1,8 +1,7 @@
<DIV CLASS="indent">
-<H2 CLASS="title">Modifica classe {printer_name}</H2>
+<H2 CLASS="title">Modifica la classe {printer_name}</H2>
-<P>La classe <A HREF="/classes/{printer_name}">{printer_name}</A> è stata
-modificata correttamente.
+<P>La classe <A HREF="/classes/{printer_name}">{printer_name}</A> s'ha modificat correctament.
</DIV>
diff --git a/templates/ca/class.tmpl b/templates/ca/class.tmpl
new file mode 100644
index 00000000..6b39168b
--- /dev/null
+++ b/templates/ca/class.tmpl
@@ -0,0 +1,44 @@
+<DIV CLASS="indent">
+<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
+({printer_state=3?Inactiva:{printer_state=4?Processing:Paused}},
+{printer_is_accepting_jobs=0?No accepta tasques:Accepta tasques},
+{server_is_sharing_printers=0?No:{printer_is_shared=0?Not:}} Compartida{default_name={printer_name}?, Servidor per defecte:})</H2>
+
+<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
+<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
+<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
+<OPTION VALUE="">Manteniment</OPTION>
+<OPTION VALUE="print-test-page">Imprimeix una p&agrave;gina de prova</OPTION>
+{printer_state=5?<OPTION VALUE="start-class">Resume Class</OPTION>:<OPTION VALUE="stop-class">Pausa la classe</OPTION>}
+{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Accepta Tasques</OPTION>:<OPTION VALUE="reject-jobs">No acceptis tasques</OPTION>}
+<OPTION VALUE="move-jobs">Mou totes les tasques</OPTION>
+<OPTION VALUE="purge-jobs">Cancel&middot;a totes les tasques</OPTION>
+</SELECT>
+<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
+</FORM>
+
+<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
+<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
+<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
+<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="1">
+<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
+<OPTION VALUE="">Administraci&oacute;</OPTION>
+<OPTION VALUE="modify-class">Modifica la classe</OPTION>
+<OPTION VALUE="delete-class">Esborra la classe</OPTION>
+<OPTION VALUE="set-class-options">Aplica les opcions per defecte</OPTION>
+<OPTION VALUE="set-as-default">Configura com a servidor per defecte</OPTION>
+<OPTION VALUE="set-allowed-users">Gestiona els permisos dels usuaris</OPTION>
+</SELECT>
+<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
+</FORM>
+
+<TABLE SUMMARY="{printer_name}">
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">Descripci&oacute;:</TH><TD>{printer_info}</TD></TR>
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">Ubicaci&oacute:</TH><TD>{printer_location}</TD></TR>
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">Membres:</TH><TD>{?member_uris=?None:{member_uris}}</TD></TR>
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">Per defecte:</TH><TD>plantilles={job_sheets_default}
+mitj&agrave;={media_default?{media_default}:unknown}
+{sides_default?laterals={sides_default}:}</TD></TR>
+</TABLE>
+
+</DIV>
diff --git a/templates/ca/classes-header.tmpl b/templates/ca/classes-header.tmpl
new file mode 100644
index 00000000..47ad5ce9
--- /dev/null
+++ b/templates/ca/classes-header.tmpl
@@ -0,0 +1 @@
+<P ALIGN="CENTER">{total=0?No hi ha cap classe:Es mostr{total=1?a:en} {#printer_name} classe{total=1?:s} de {total}}.</P>
diff --git a/templates/de/classes.tmpl b/templates/ca/classes.tmpl
index 1a919a80..bb5acf50 100644
--- a/templates/de/classes.tmpl
+++ b/templates/ca/classes.tmpl
@@ -1,11 +1,11 @@
{#printer_name=0?:
<TABLE CLASS="list" SUMMARY="Class List">
<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Wartweschlange <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Warteschlange <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Beschreibung</TH><TH>Ort</TH><TH>Mitglieder</TH><TH>Status</TH></TR>
+<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Nom de la cua <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Nom de la cua <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Descripci&oacute;</TH><TH>Ubicaci&oacute;</TH><TH>Membres</TH><TH>Estat</TH></TR>
</THEAD>
<TBODY>
{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?Keine:{member_uris}}</TD><TD>{printer_state=3?Frei:{printer_state=4?Besch&auml;ftigt:Angehalten}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
+<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?None:{member_uris}}</TD><TD>{printer_state=3?Idle:{printer_state=4?Processing:Paused}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
}
</TBODY>
</TABLE></DIV>}
diff --git a/templates/ca/command.tmpl b/templates/ca/command.tmpl
new file mode 100644
index 00000000..5cfd89f1
--- /dev/null
+++ b/templates/ca/command.tmpl
@@ -0,0 +1,12 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">{title} a {printer_name}</H2>
+
+<P>{job_state>5?:<IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16"
+ALIGN="ABSMIDDLE" ALT="Busy Indicator"> }Comanda de tasca de la impressora
+{job_state=3?pendent:{job_state=4?pausat:
+{job_state=5?processant:{job_state=6?aturat:
+{job_state=7?cancel·lat:{job_state=8?abortat:completat}}}}}}{job_state=9?:{job_printer_state_message?,
+<EM>"{job_printer_state_message}"</EM>:}}</P>
+
+</DIV>
diff --git a/templates/de/edit-config.tmpl b/templates/ca/edit-config.tmpl
index f2913138..e6e08f12 100644
--- a/templates/de/edit-config.tmpl
+++ b/templates/ca/edit-config.tmpl
@@ -7,7 +7,7 @@ function reset_config()
<DIV CLASS="indent">
-<H2 CLASS="title">Konfigurationsdatei &auml;ndern</H2>
+<H2 CLASS="title">Edita el fitxer de configuraci&oacute;</H2>
<FORM NAME="cups" METHOD="POST" ACTION="/admin/">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -15,8 +15,8 @@ function reset_config()
<TEXTAREA NAME="CUPSDCONF" COLS="80" ROWS="25">{CUPSDCONF}</TEXTAREA>
-<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="&Auml;nderungen speichern">
-<INPUT TYPE="BUTTON" VALUE="Standard Konfigurationsdatei verwenden"
+<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="Desa els canvis">
+<INPUT TYPE="BUTTON" VALUE="Fes servir el fitxer de configuaci&oacute; per defecte"
onClick="reset_config();"></P>
</FORM>
diff --git a/templates/de/error-op.tmpl b/templates/ca/error-op.tmpl
index d47e7308..064e8b4c 100644
--- a/templates/de/error-op.tmpl
+++ b/templates/ca/error-op.tmpl
@@ -2,8 +2,8 @@
<H2 CLASS="title">{?title} {?printer_name} Error</H2>
-<P>Fehler:</P>
+<P>Error:</P>
-<BLOCKQUOTE>Unbekannte Operation "{op}"!</BLOCKQUOTE>
+<BLOCKQUOTE>Operaci&oacute; desconeguda "{op}"!</BLOCKQUOTE>
</DIV>
diff --git a/templates/de/error.tmpl b/templates/ca/error.tmpl
index 1a7f6503..f04f03af 100644
--- a/templates/de/error.tmpl
+++ b/templates/ca/error.tmpl
@@ -2,7 +2,7 @@
<H2 CLASS="title">{?title} {?printer_name} Error</H2>
-<P>{?message?{message}:Fehler:}</P>
+<P>{?message?{message}:Error}</P>
<BLOCKQUOTE>{error}</BLOCKQUOTE>
diff --git a/templates/fr/header.tmpl.in b/templates/ca/header.tmpl.in
index 7b12eea9..988d6bf7 100644
--- a/templates/fr/header.tmpl.in
+++ b/templates/ca/header.tmpl.in
@@ -14,12 +14,12 @@
<TR HEIGHT="36">
<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;Accueil&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=admin?:un}sel"><A HREF="/admin">&nbsp;&nbsp;Administration&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;Inici&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=admin?:un}sel"><A HREF="/admin">&nbsp;&nbsp;Administraci&oacute;&nbsp;&nbsp;</A></TD>
<TD CLASS="{SECTION=classes?:un}sel"><A HREF="/classes/">&nbsp;&nbsp;Classes&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=help?:un}sel"><A HREF="/help/">&nbsp;&nbsp;Aide&nbsp;En&nbsp;Ligne&nbsp;</A></TD>
-<TD CLASS="{SECTION=jobs?:un}sel"><A HREF="/jobs/">&nbsp;&nbsp;T&acirc;ches&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=printers?:un}sel"><A HREF="/printers/">&nbsp;&nbsp;Imprimantes&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=help?:un}sel"><A HREF="/help/">&nbsp;&nbsp;Ajuda&nbsp;en&nbsp;l&iacute;nia&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=jobs?:un}sel"><A HREF="/jobs/">&nbsp;&nbsp;Tasques&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=printers?:un}sel"><A HREF="/printers/">&nbsp;&nbsp;Impressores&nbsp;&nbsp;</A></TD>
<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
VALUE="{SECTION=help?{?QUERY}:}" AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
diff --git a/templates/ca/help-header.tmpl b/templates/ca/help-header.tmpl
new file mode 100644
index 00000000..54f2d228
--- /dev/null
+++ b/templates/ca/help-header.tmpl
@@ -0,0 +1,52 @@
+<DIV CLASS="indent">
+<FORM ACTION="/help/{?HELPFILE}" METHOD="GET">
+{TOPIC?<INPUT TYPE="HIDDEN" NAME="TOPIC" VALUE="{TOPIC}">:}
+
+<P ALIGN="CENTER"><B>Cerca a
+{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:tots els documents}}:</B> <INPUT
+TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER=""
+AUTOSAVE="org.cups.help" RESULTS="20">
+<INPUT TYPE="SUBMIT" NAME="SEARCH" VALUE="Cerca">
+<INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Esborra"></P>
+
+</FORM>
+
+<!-- Bookmarks -->
+<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="Contents">
+<TR><TD>
+
+<H3 CLASS="title">Documents d'ajuda en l&iacute;nia</H3>
+
+<P CLASS="l0"><A HREF="/help/{QUERY??QUERY={QUERY}:}">Tots els documents</A></P>
+<HR>
+
+{[BMTEXT]<P CLASS="l{BMINDENT}"><A HREF="{BMLINK}">{BMTEXT}</A></P>
+}
+</TD></TR>
+</TABLE></DIV>
+
+{QUERY?<P>Resultats de la cerca a {HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:tots els documents}}\:</P>
+{QTEXT?<UL>
+{[QTEXT]<LI><A HREF="{QLINK}">{QTEXT}</A>{QPTEXT? (in <I><A HREF="{QPLINK}">{QPTEXT}</A></I>):}</LI>}
+{QTEXT?</UL>:}
+:<P>No s'ha trobat cap coincid&egrave;ncia.</P>}
+<HR NOSHADE>:}
+{HELPTITLE?<H1>{HELPTITLE}</H1>
+<FORM ACTION="/help/{?HELPFILE}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="PRINTABLE" VALUE="YES"><INPUT TYPE="SUBMIT" VALUE="Mostra una versi&oacute; per imprimir"></FORM>:
+
+<H1>Ajuda en l&iacute;nia</H1>
+
+<P>Aquesta &eacute;s la interf&iacute;cie d'ajuda en l&iacute;nia de CUPS.
+Introdu&iuml;u les paraules que vulgueu cercar aqu&iacute; dalt o feu clic als
+enlla&ccedil;os de la documentaci&oacute; per mostrar la informaci&oacute; de
+l'ajuda en l&iacute;nia.</P>
+
+<P>Si sou nou a CUPS, llegiu la p&agrave;gina &laquo;<a
+href="/help/overview.html">Descripci&oacute; general de CUPS</a>&raquo;. Els
+usuaris veterans haurien de llegir la p&agrave;gina &laquo;<a
+href="/help/whatsnew.html">Que hi ha de nou a CUPS 1.6</a>&raquo;.</P>
+
+<P>La <A HREF="http://www.cups.org/">p&agrave;gina web de CUPS</A> tamb&eacute;
+dona cont&eacute; molts recursos que inclouen f&ograve;rums, respostes a les preguntes m&eacute;s
+freq&uuml;ents, i un formulari per enviar informes d'errors i demanar noves
+caracter&iacute;stiques.</P>}
diff --git a/templates/de/help-printable.tmpl b/templates/ca/help-printable.tmpl
index 2463c163..2463c163 100644
--- a/templates/de/help-printable.tmpl
+++ b/templates/ca/help-printable.tmpl
diff --git a/templates/de/help-trailer.tmpl b/templates/ca/help-trailer.tmpl
index 4c1ebed8..4c1ebed8 100644
--- a/templates/de/help-trailer.tmpl
+++ b/templates/ca/help-trailer.tmpl
diff --git a/templates/ca/job-cancel.tmpl b/templates/ca/job-cancel.tmpl
new file mode 100644
index 00000000..a53ca2f6
--- /dev/null
+++ b/templates/ca/job-cancel.tmpl
@@ -0,0 +1,7 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Cancel&middot;la la tasca {job_id}</H2>
+
+<P><A HREF="{job_printer_uri}">La tasca {job_id}</A> s'ha cancel&middot;lat.
+
+</DIV>
diff --git a/templates/ca/job-hold.tmpl b/templates/ca/job-hold.tmpl
new file mode 100644
index 00000000..e89b97f4
--- /dev/null
+++ b/templates/ca/job-hold.tmpl
@@ -0,0 +1,7 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Pausa la tasca {job_id}</H2>
+
+<P><A HREF="{job_printer_uri}">La tasca {job_id}</A> s'ha posat en pausa.
+
+</DIV>
diff --git a/templates/it/job-move.tmpl b/templates/ca/job-move.tmpl
index 0a52ba2f..1bca2822 100644
--- a/templates/it/job-move.tmpl
+++ b/templates/ca/job-move.tmpl
@@ -5,11 +5,11 @@
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
{job_id?<INPUT TYPE="HIDDEN" NAME="JOB_ID" VALUE="{job_id}">:}
-<H2 CLASS="title">{job_id?Sposta la stampa {job_id}:Sposta tutte le stampe}</H2>
+<H2 CLASS="title">{job_id?Mou la tasca {job_id}:Mou totes les tasques}</H2>
<TABLE>
<TR>
-<TH CLASS="label">Nuova destinazione:</TH>
+<TH CLASS="label">Nova destinaci&oacute;:</TH>
<TD>
<SELECT NAME="JOB_PRINTER_URI" SIZE="10">
{[job_printer_uri]<OPTION VALUE="{job_printer_uri}">{job_printer_name}}
@@ -18,7 +18,7 @@
</TR>
<TR>
<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{job_id?Sposta stampa:Sposta stampe}"></TD>
+<TD><INPUT TYPE="SUBMIT" VALUE="{job_id?Mou la tasca:Mou les tasques}"></TD>
</TR>
</TABLE>
diff --git a/templates/ca/job-moved.tmpl b/templates/ca/job-moved.tmpl
new file mode 100644
index 00000000..1e538f9a
--- /dev/null
+++ b/templates/ca/job-moved.tmpl
@@ -0,0 +1,8 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">{job_id?Mou la tasca {job_id}:Mou totes les tasques}</H2>
+
+<P>{job_id?<A HREF="/jobs/{job_id}">La tasca s'ha {job_id}</A>:Totes les tasques s'han} mogut a
+<A HREF="/{is_class?classes:printers}/{job_printer_name}">{job_printer_name}</A>.</P>
+
+</DIV>
diff --git a/templates/ca/job-release.tmpl b/templates/ca/job-release.tmpl
new file mode 100644
index 00000000..db13e1d5
--- /dev/null
+++ b/templates/ca/job-release.tmpl
@@ -0,0 +1,7 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Allibera la tasca {job_id}</H2>
+
+<P><A HREF="{job_printer_uri}">La tasca {job_id}</A> s'ha alliberat.
+
+</DIV>
diff --git a/templates/ca/job-restart.tmpl b/templates/ca/job-restart.tmpl
new file mode 100644
index 00000000..d40c1c23
--- /dev/null
+++ b/templates/ca/job-restart.tmpl
@@ -0,0 +1,7 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Torna a imprimir la tasca {job_id}</H2>
+
+<P><A HREF="{job_printer_uri}">La tasca {job_id}</A> s'ha tornat a imprimir.
+
+</DIV>
diff --git a/templates/it/jobs-header.tmpl b/templates/ca/jobs-header.tmpl
index 38538d12..3f785d5f 100644
--- a/templates/it/jobs-header.tmpl
+++ b/templates/ca/jobs-header.tmpl
@@ -1,5 +1,5 @@
-<DIV CLASS="indent">{?which_jobs=?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Mostra stampe attive"></FORM>}
-{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="Mostra stampe completate"></FORM>}
-{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="Mostra tutte le stampe"></FORM>}</DIV>
+<DIV CLASS="indent">{?which_jobs=?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Mostra les tasques actives"></FORM>}
+{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="Mostra les tasques completades"></FORM>}
+{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="Mostra totes les tasques"></FORM>}</DIV>
-<P ALIGN="CENTER">{total=0?Nessuna stampa:Mostrat{total=1?a:e} {#job_id} di {total} stamp{total=1?a:e} {?which_jobs=?attiva:{which_jobs=all?:completata}} }.</P>
+<P ALIGN="CENTER">{total=0?No hi ha cap tasca:Es mostren {#job_id} tas{total=1?ca:ques} de {total} {?which_jobs=?active:{which_jobs=all?:completed}}}.</P>
diff --git a/templates/id/jobs.tmpl b/templates/ca/jobs.tmpl
index 1cd13a0e..2ec88e12 100644
--- a/templates/id/jobs.tmpl
+++ b/templates/ca/jobs.tmpl
@@ -1,33 +1,33 @@
{#job_id=0?:
<TABLE CLASS="list" SUMMARY="Job List">
<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> ID <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> ID <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Nama</TH><TH>Pengguna</TH><TH>Ukuran</TH><TH>Halaman</TH><TH>Status</TH><TH>Kontrol</TH></TR>
+<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> ID <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> ID <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Nom</TH><TH>Usuari</TH><TH>Mida</TH><TH>P&agrave;gines</TH><TH>Estat</TH><TH>Control</TH></TR>
</THEAD>
<TBODY>
{[job_id]
<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
-<TD>{?job_name=?Tak Dikenal:{job_name}}&nbsp;</TD>
-<TD>{job_originating_user_name}&nbsp;</TD>
+<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}{?phone? ({phone}):}&nbsp;</TD>
+<TD>{?job_name=?Desconegut:{job_name}}&nbsp;</TD>
+<TD>{?job_originating_user_name=?Withheld:{job_originating_user_name}}&nbsp;</TD>
<TD>{job_k_octets}k&nbsp;</TD>
-<TD>{job_media_sheets_completed=0?Tak Dikenal:{?job_media_sheets_completed}}&nbsp;</TD>
-<TD>{job_state=3?ditunda sejak<BR>{time_at_creation}:{job_state=4?ditahan sejak<BR>{time_at_creation}:
-{job_state=5?diproses sejak<BR>{time_at_processing}:{job_state=6?dihentikan:
-{job_state=7?dibatalkan pada<BR>{time_at_completed}:{job_state=8?dibatalkan:diselesaikan pada<BR>{time_at_completed}}}}}}}&nbsp;{job_printer_state_message?<BR>
+<TD>{job_media_sheets_completed=0?Desconegudes:{?job_media_sheets_completed}}&nbsp;</TD>
+<TD>{job_state=3?pendent des de<BR>{time_at_creation}:{job_state=4?pausada des de<BR>{time_at_creation}:
+{job_state=5?processant des de<BR>{time_at_processing}:{job_state=6?aturada:
+{job_state=7?cancel&middot;lada el<BR>{time_at_completed}:{job_state=8?avortada:completada el<BR>{time_at_completed}}}}}}}&nbsp;{job_printer_state_message?<BR>
<EM>"{job_printer_state_message}"</EM>:}</TD>
<TD>
{job_preserved>0?{job_state>5?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}"><INPUT TYPE="SUBMIT" VALUE="Reprint Job"></FORM>:}:}
+<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}"><INPUT TYPE="SUBMIT" VALUE="Torna a imprimir"></FORM>:}:}
{job_state=4?
<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="release-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Release Job"></FORM>:}
+<INPUT TYPE="SUBMIT" VALUE="Allibera"></FORM>:}
{job_state=3?
<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="hold-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Hold Job"></FORM>:}
+<INPUT TYPE="SUBMIT" VALUE="Pausa"></FORM>:}
{job_state<7?
<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Cancel Job"></FORM>
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="move-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="SUBMIT" VALUE="Move Job"></FORM>:}
+<INPUT TYPE="SUBMIT" VALUE="Cancel&middot;la"></FORM>
+<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="move-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="SUBMIT" VALUE="Mou"></FORM>:}
&nbsp;</TD>
</TR>
}
diff --git a/templates/de/list-available-printers.tmpl b/templates/ca/list-available-printers.tmpl
index 08a04522..b771b5b6 100644
--- a/templates/de/list-available-printers.tmpl
+++ b/templates/ca/list-available-printers.tmpl
@@ -1,10 +1,10 @@
<DIV CLASS="indent">
-<H2 CLASS="title">Verf&uuml;gbare Drucker</H2>
+<H2 CLASS="title">Impressores disponibles</H2>
-{#device_uri=0?<P>Keine Drucker gefunden.</P>
+{#device_uri=0?<P>No s'ha trobat cap impressora.</P>
:<UL>{[device_uri]
-<LI><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="HIDDEN" NAME="TEMPLATE_NAME" VALUE="{template_name}"><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="Local Printer"><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{device_make_and_model}"><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}"><INPUT TYPE="SUBMIT" VALUE="Diesen Drucker hinzuf&uuml;gen"></FORM>
+<LI><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="HIDDEN" NAME="TEMPLATE_NAME" VALUE="{template_name}"><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="Local Printer"><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{device_make_and_model}"><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}"><INPUT TYPE="SUBMIT" VALUE="Afegeix aquesta impressora"></FORM>
{device_make_and_model} ({device_info})</LI>
}</UL>}
diff --git a/templates/fr/modify-class.tmpl b/templates/ca/modify-class.tmpl
index e01b9b42..26a6284b 100644
--- a/templates/fr/modify-class.tmpl
+++ b/templates/ca/modify-class.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">Modifier la Classe {printer_name}</H2>
+<H2 CLASS="title">Modifica la classe {printer_name}</H2>
<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -9,11 +9,11 @@
<TABLE>
<TR>
-<TH CLASS="label">Description:</TH>
+<TH CLASS="label">Descripci&oacute;:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"></TD>
</TR>
<TR>
-<TH CLASS="label">Emplacement:</TH>
+<TH CLASS="label">Ubicaci&oacute;:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"></TD>
</TR>
<TR>
@@ -26,7 +26,7 @@
</TR>
<TR>
<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Modifier la classe"></TD>
+<TD><INPUT TYPE="SUBMIT" VALUE="Modifica la classe"></TD>
</TR>
</TABLE>
diff --git a/templates/de/modify-printer.tmpl b/templates/ca/modify-printer.tmpl
index d128471d..3843016f 100644
--- a/templates/de/modify-printer.tmpl
+++ b/templates/ca/modify-printer.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{printer_name} &auml;ndern</H2>
+<H2 CLASS="title">Modifica {printer_name}</H2>
<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -13,28 +13,28 @@
<TABLE>
<TR>
-<TH CLASS="label">Beschreibung:</TH>
+<TH CLASS="label">Descripci&oacute;:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(F&uuml;r Menschen lesbare Beschreibung wie "HP LaserJet with Duplexer")</SMALL></TD>
+<SMALL>(Una descripci&oacute; com ara &laquo;HP LaserJet de doble cara&raquo;)</SMALL></TD>
</TR>
<TR>
-<TH CLASS="label">Ort:</TH>
+<TH CLASS="label">Ubicaci&oacute;:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(F&uuml;r Menschen lesbarer Ort wie "Lab 1")</SMALL></TD>
+<SMALL>(Una ubicaci&oacute; com ara &laquo;Laboratori 1&raquo;)</SMALL></TD>
</TR>
<TR>
-<TH CLASS="label">Verbindung:</TH>
+<TH CLASS="label">Connexi&oacute;:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
</TR>
<TR>
-<TH CLASS="label">Freigabe:</TH>
+<TH CLASS="label">Compartir:</TH>
<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Diesen Drucker freigeben</TD>
+Comparteix aquesta impressora</TD>
</TR>
<TR>
<TR>
<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Weiter"></TD>
+<TD><INPUT TYPE="SUBMIT" VALUE="Continua"></TD>
</TR>
</TABLE>
diff --git a/templates/ca/norestart.tmpl b/templates/ca/norestart.tmpl
new file mode 100644
index 00000000..5cdb7c4d
--- /dev/null
+++ b/templates/ca/norestart.tmpl
@@ -0,0 +1,8 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Canvis en la configuraci&oacute;</H2>
+
+<P>El servidor no s'ha tornat a iniciar per que no hi ha canvis
+a la configuraci&oacute;...</P>
+
+</DIV>
diff --git a/templates/de/option-boolean.tmpl b/templates/ca/option-boolean.tmpl
index e832ee10..e832ee10 100644
--- a/templates/de/option-boolean.tmpl
+++ b/templates/ca/option-boolean.tmpl
diff --git a/templates/ca/option-conflict.tmpl b/templates/ca/option-conflict.tmpl
new file mode 100644
index 00000000..59b63e9f
--- /dev/null
+++ b/templates/ca/option-conflict.tmpl
@@ -0,0 +1,7 @@
+<P><B>Error:</B> Les seg&uuml;ents opcions entren en conflicte:</P>
+
+<UL>
+{[ckeyword]<LI><A HREF="#{ckeyword}">{ckeytext}</A>: {cchoice}</LI>
+}</UL>
+
+<P>Canvieu algunes de les opcions per resoldre els conflictes.</P>
diff --git a/templates/de/option-header.tmpl b/templates/ca/option-header.tmpl
index 464726a5..464726a5 100644
--- a/templates/de/option-header.tmpl
+++ b/templates/ca/option-header.tmpl
diff --git a/templates/de/option-pickmany.tmpl b/templates/ca/option-pickmany.tmpl
index 0da75e5d..0da75e5d 100644
--- a/templates/de/option-pickmany.tmpl
+++ b/templates/ca/option-pickmany.tmpl
diff --git a/templates/eu/option-pickone.tmpl b/templates/ca/option-pickone.tmpl
index 0e57a509..1b3c271c 100644
--- a/templates/eu/option-pickone.tmpl
+++ b/templates/ca/option-pickone.tmpl
@@ -6,12 +6,12 @@
{iscustom=1?<TABLE NAME="paramtable" id="{keyword}-params">{[params]
<TR><TH CLASS="sublabel">{paramtext}:</TH>
<TD>{params=Units?<SELECT NAME="{keyword-1}.{params}">
-<OPTION VALUE="pt"{paramvalue=pt? SELECTED:}>Puntuak</OPTION>
-<OPTION VALUE="mm"{paramvalue=mm? SELECTED:}>Milimetroak</OPTION>
-<OPTION VALUE="cm"{paramvalue=cm? SELECTED:}>Zentimetroak</OPTION>
-<OPTION VALUE="in"{paramvalue=in? SELECTED:}>Hatzak</OPTION>
-<OPTION VALUE="ft"{paramvalue=ft? SELECTED:}>Oinak</OPTION>
-<OPTION VALUE="m"{paramvalue=m? SELECTED:}>Metroak</OPTION>
+<OPTION VALUE="pt"{paramvalue=pt? SELECTED:}>Punts</OPTION>
+<OPTION VALUE="mm"{paramvalue=mm? SELECTED:}>Mil&middot;l&iacute;metres</OPTION>
+<OPTION VALUE="cm"{paramvalue=cm? SELECTED:}>Cent&iacute;metres</OPTION>
+<OPTION VALUE="in"{paramvalue=in? SELECTED:}>Polzades</OPTION>
+<OPTION VALUE="ft"{paramvalue=ft? SELECTED:}>Peus</OPTION>
+<OPTION VALUE="m"{paramvalue=m? SELECTED:}>Metres</OPTION>
</SELECT>:<INPUT TYPE="{inputtype}" NAME="{keyword-1}.{params}" VALUE="{paramvalue}">}</TD></TR>
}</TABLE>
</TD>:}
diff --git a/templates/ca/option-trailer.tmpl b/templates/ca/option-trailer.tmpl
new file mode 100644
index 00000000..11c40113
--- /dev/null
+++ b/templates/ca/option-trailer.tmpl
@@ -0,0 +1,5 @@
+</TABLE>
+
+<P ALIGN="CENTER"><INPUT TYPE="SUBMIT" VALUE="Configura els par&agrave;metres per defecte"></P>
+
+</DIV>
diff --git a/templates/id/pager.tmpl b/templates/ca/pager.tmpl
index 00b6340c..ab134f1d 100644
--- a/templates/id/pager.tmpl
+++ b/templates/ca/pager.tmpl
@@ -1,6 +1,6 @@
<TABLE CLASS="inset" SUMMARY="Paging Bar">
<TR>
- <TD WIDTH="50%">{PREV?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{PREV}"><INPUT TYPE="SUBMIT" VALUE="&#x25c0; Sebelumnya"></FORM>:&nbsp;}</TD>
- <TD WIDTH="50%" ALIGN="RIGHT">{NEXT?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{NEXT}"><INPUT TYPE="SUBMIT" VALUE="Selanjutnya &#x25b6;"></FORM>:&nbsp;}</TD>
+ <TD WIDTH="50%">{PREV?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{PREV}"><INPUT TYPE="SUBMIT" VALUE="&#x25c0; Anterior"></FORM>:&nbsp;}</TD>
+ <TD WIDTH="50%" ALIGN="RIGHT">{NEXT?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{NEXT}"><INPUT TYPE="SUBMIT" VALUE="Seg&uuml;ent &#x25b6;"></FORM>:&nbsp;}</TD>
</TR>
</TABLE>
diff --git a/templates/ca/printer-accept.tmpl b/templates/ca/printer-accept.tmpl
new file mode 100644
index 00000000..0bd2a57f
--- /dev/null
+++ b/templates/ca/printer-accept.tmpl
@@ -0,0 +1,9 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Accepta tasques a {is_class?la classe: la impressora} {printer_name}</H2>
+
+<P>{is_class?La classe:La impressora} <A
+HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
+ara accepta tasques.</P>
+
+</DIV>
diff --git a/templates/ca/printer-added.tmpl b/templates/ca/printer-added.tmpl
new file mode 100644
index 00000000..b5850aa2
--- /dev/null
+++ b/templates/ca/printer-added.tmpl
@@ -0,0 +1,8 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Afegeix una impressora</H2>
+
+<P>La impressora <A HREF="/printers/{printer_name}">{printer_name}</A> s'ha afegit
+correctament.
+
+</DIV>
diff --git a/templates/ca/printer-configured.tmpl b/templates/ca/printer-configured.tmpl
new file mode 100644
index 00000000..20880da9
--- /dev/null
+++ b/templates/ca/printer-configured.tmpl
@@ -0,0 +1,6 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">S'ha aplicat la configuraci&oacute; per defecte a {printer_name}</H2>
+
+<P>Les opcions per defecte de la {OP=set-class-options?classe <A HREF="/classes/{printer_name}">:impressora <A HREF="/printers/{printer_name}">}{printer_name}</A> s'han establert correctament.
+</DIV>
diff --git a/templates/id/printer-confirm.tmpl b/templates/ca/printer-confirm.tmpl
index e6d89d61..916bc309 100644
--- a/templates/id/printer-confirm.tmpl
+++ b/templates/ca/printer-confirm.tmpl
@@ -1,10 +1,10 @@
<DIV CLASS="indent">
-<H2 CLASS="title">Hapus Pencetak {printer_name}</H2>
+<H2 CLASS="title">Elimina la impressora {printer_name}</H2>
-<P><B>Peringatan:</B> Anda yakin untuk menghapus
+<P><B>Av&iacute;s:</B> Esteu segur que voleu eliminar la impressora
{printer_name}?</P>
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="delete-printer"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Hapus Pencetak"></FORM></P>
+<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="delete-printer"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Elimina la impressora"></FORM></P>
</DIV>
diff --git a/templates/ca/printer-default.tmpl b/templates/ca/printer-default.tmpl
new file mode 100644
index 00000000..76f7ddf6
--- /dev/null
+++ b/templates/ca/printer-default.tmpl
@@ -0,0 +1,12 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Estableix {is_class?Class:Printer} {printer_name} com a predeterminada</H2>
+
+<P>{is_class?Class:Printer} <A
+HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
+s'ha establert com a impressora predeterminada.</P>
+
+<BLOCKQUOTE><B>Nota:</B> Qualsevol usuari que hagi estat establert mitjan&ccedil;ant
+la comanda <TT>lpoptions</TT> sobreescriur&agrave; aquesta configuraci&oacute; predeterminada.</BLOCKQUOTE>
+
+</DIV>
diff --git a/templates/ca/printer-deleted.tmpl b/templates/ca/printer-deleted.tmpl
new file mode 100644
index 00000000..695ab673
--- /dev/null
+++ b/templates/ca/printer-deleted.tmpl
@@ -0,0 +1,7 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Elimina la impressora {printer_name}</H2>
+
+<P>La impressora {printer_name} s'ha eliminat correctament.
+
+</DIV>
diff --git a/templates/ca/printer-jobs-header.tmpl b/templates/ca/printer-jobs-header.tmpl
new file mode 100644
index 00000000..90e640e4
--- /dev/null
+++ b/templates/ca/printer-jobs-header.tmpl
@@ -0,0 +1,3 @@
+<DIV CLASS="indent">
+<H3 CLASS="title">Tasques</H3>
+</DIV>
diff --git a/templates/ca/printer-modified.tmpl b/templates/ca/printer-modified.tmpl
new file mode 100644
index 00000000..efbbc3b9
--- /dev/null
+++ b/templates/ca/printer-modified.tmpl
@@ -0,0 +1,8 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Modifica la impressora {printer_name}</H2>
+
+<P>La impressora <A HREF="/printers/{printer_name}">{printer_name}</A> s'ha
+modificat correctament.
+
+</DIV>
diff --git a/templates/ca/printer-purge.tmpl b/templates/ca/printer-purge.tmpl
new file mode 100644
index 00000000..980d883e
--- /dev/null
+++ b/templates/ca/printer-purge.tmpl
@@ -0,0 +1,8 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Cancel&middot;la les tasques de {is_class?la classe:la impressora} {printer_name}</H2>
+
+<P>S'han cancel&middot;lat totes les tasques de{is_class?la classe:la impressora} <A
+HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>.</P>
+
+</DIV>
diff --git a/templates/ca/printer-reject.tmpl b/templates/ca/printer-reject.tmpl
new file mode 100644
index 00000000..6269cf2c
--- /dev/null
+++ b/templates/ca/printer-reject.tmpl
@@ -0,0 +1,9 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Refusa les tasques a {is_class?la classe:la impressora} {printer_name}</H2>
+
+<P>{is_class?La classe:la impressora} <A
+HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
+no accepta tasques a partir d'ara.</P>
+
+</DIV>
diff --git a/templates/ca/printer-start.tmpl b/templates/ca/printer-start.tmpl
new file mode 100644
index 00000000..6986fd4b
--- /dev/null
+++ b/templates/ca/printer-start.tmpl
@@ -0,0 +1,9 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Repr&egrave;n {is_class?la classe:la impressora} {printer_name}</H2>
+
+<P>{is_class?La classe:La impressora} <A
+HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
+ha repr&egrave;s les tasques.</P>
+
+</DIV>
diff --git a/templates/ca/printer-stop.tmpl b/templates/ca/printer-stop.tmpl
new file mode 100644
index 00000000..af89331b
--- /dev/null
+++ b/templates/ca/printer-stop.tmpl
@@ -0,0 +1,9 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Pausa {is_class?la classe:la impressora} {printer_name}</H2>
+
+<P>{is_class?La classe:La impressora} <A
+HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
+s'ha posat en pausa.</P>
+
+</DIV>
diff --git a/templates/ca/printer.tmpl b/templates/ca/printer.tmpl
new file mode 100644
index 00000000..2500001a
--- /dev/null
+++ b/templates/ca/printer.tmpl
@@ -0,0 +1,47 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
+({printer_state=3?Inactiva:{printer_state=4?Processant:En pausa}},
+{printer_is_accepting_jobs=0?Refusa les tasques:Accepta tasques},
+{server_is_sharing_printers=0?No:{printer_is_shared=0?No:}} Compartida{default_name={printer_name}?, Servidor per defecte:})</H2>
+
+<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
+<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
+<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
+<OPTION VALUE="">Manteniment</OPTION>
+<OPTION VALUE="print-test-page">Imprimeix una p&agrave;gina de prova</OPTION>
+{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">Neteja els cap&ccedil;als</OPTION>:}
+{printer_commands~.*PrintSelfTestPage.*?<OPTION VALUE="print-self-test-page">Imprimeix la p&agrave;gina de prova pr&ograve;pia</OPTION>:}
+{printer_state=5?<OPTION VALUE="start-printer">Repr&egrave;n la impressora</OPTION>:<OPTION VALUE="stop-printer">Pausa la impressora</OPTION>}
+{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Accepta tasques</OPTION>:<OPTION VALUE="reject-jobs">Refusa les tasques</OPTION>}
+<OPTION VALUE="move-jobs">Mou totes les tasques</OPTION>
+<OPTION VALUE="purge-jobs">Cancel&middot;la totes les tasques</OPTION>
+</SELECT>
+<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
+</FORM>
+
+<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
+<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
+<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
+<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
+<OPTION VALUE="">Administraci&oacute;</OPTION>
+<OPTION VALUE="modify-printer">Modifica la impressora</OPTION>
+<OPTION VALUE="delete-printer">Elimina la impressora</OPTION>
+<OPTION VALUE="set-printer-options">Torna a les opcions per defecte</OPTION>
+<OPTION VALUE="set-as-default">Configura com a servidor per defecte</OPTION>
+<OPTION VALUE="set-allowed-users">Configura els permisos dels usuaris</OPTION>
+</SELECT>
+<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
+</FORM>
+
+<TABLE SUMMARY="{printer_name}">
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">Descripci&oacute;:</TH><TD>{printer_info}</TD></TR>
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">Ubicaci&oacute;:</TH><TD>{printer_location}</TD></TR>
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">Controlador:</TH><TD>{printer_make_and_model} ({color_supported=1?color:escala de grisos}{sides_supported?, impressió a doble cara:})<BR>
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">Connexi&oacute;:</TH><TD>{device_uri}</TD></TR>
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">Configuraci&oacute; per defecte:</TH><TD>Fulls de tasques={job_sheets_default}
+safata={media_default?{media_default}:desconeguda}
+{sides_default?cares={sides_default}:}</TD></TR>
+</TABLE>
+
+</DIV>
diff --git a/templates/ca/printers-header.tmpl b/templates/ca/printers-header.tmpl
new file mode 100644
index 00000000..52eaa2ff
--- /dev/null
+++ b/templates/ca/printers-header.tmpl
@@ -0,0 +1 @@
+<P ALIGN="CENTER">{total=0?Cap impressora:Es mostr{#printer_name=1?a:en} {#printer_name} de {total} impressor{total=1?a:es}}.</P>
diff --git a/templates/id/printers.tmpl b/templates/ca/printers.tmpl
index 3aa4d0da..d978c17b 100644
--- a/templates/id/printers.tmpl
+++ b/templates/ca/printers.tmpl
@@ -1,11 +1,11 @@
{#printer_name=0?:
<TABLE CLASS="list" SUMMARY="Printer List">
<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Nama Antrian <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Nama Antrian <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Deskripsi</TH><TH>Lokasi</TH><TH>Pembuat dan Model</TH><TH>Status</TH></TR>
+<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Nom <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Nom <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Descripci&oacute;</TH><TH>Ubicaci&oacute</TH><TH>Marca i model</TH><TH>Estat</TH></TR>
</THEAD>
<TBODY>
{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>{printer_state=3?Menganggur:{printer_state=4?Memproses:Berhenti}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
+<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>{printer_state=3?Preparada:{printer_state=4?Processant:En pausa}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
}
</TBODY>
</TABLE></DIV>}
diff --git a/templates/ca/restart.tmpl b/templates/ca/restart.tmpl
new file mode 100644
index 00000000..4e3983f7
--- /dev/null
+++ b/templates/ca/restart.tmpl
@@ -0,0 +1,8 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Canvis en la configuraci&oacute;</H2>
+
+<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
+ALT="Busy Indicator"> Espereu mentre es torna a iniciar el servidor...</P>
+
+</DIV>
diff --git a/templates/ca/samba-export.tmpl b/templates/ca/samba-export.tmpl
new file mode 100644
index 00000000..2b16e1ee
--- /dev/null
+++ b/templates/ca/samba-export.tmpl
@@ -0,0 +1,55 @@
+<SCRIPT TYPE="text/javascript"><!--
+function select_printers() {
+ var list = document.export_samba.EXPORT_NAME;
+ var sel = document.export_samba.EXPORT_ALL.checked;
+
+ for (i = 0; i < list.length; i ++) {
+ list.options[i].selected = sel;
+ }
+}
+--></SCRIPT>
+
+<FORM METHOD="POST" ACTION="/admin/" NAME="export_samba">
+<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
+<INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba">
+
+<H2 CLASS="title">Exporta les impressores al Samba</H2>
+
+{error?<P>No es pot exportar les impressores al Samba\:</P>
+<BLOCKQUOTE>{error}</BLOCKQUOTE>
+<P>Consulteu el fitxer <A HREF="/admin/log/error_log"
+TARGET="_blank">error_log</A> per obtenir m&eacute;s informaci&oacute;.</P>:
+<P>Aquesta p&agrave;gina us permet exportar les impressores al Samba per tal que
+els clients de Windows puguin accedir-hi a trav&eacute;s de les icones <VAR>Xarxa
+ve&iuml;na</VAR> o <VAR>Llocs de la xarxa</VAR> del seu
+escriptori. Abans heu d'instal&middot;lar el controlador d'impressores Windows PostScript
+tal i com s'explica a la p&agrave;gina del manual <A
+HREF="/help/man-cupsaddsmb.html"
+TARGET="_blank">cupsaddsmb(8)</A>.</P>}
+
+<TABLE>
+<TR>
+<TH CLASS="label">Impressores:</TH>
+<TD>
+<SELECT NAME="EXPORT_NAME" SIZE="10" MULTIPLE>
+{[printer_name]<OPTION VALUE="{printer_name}"{export_all? SELECTED:{printer_export? SELECTED:}}>{printer_name}}
+</SELECT><BR>
+<INPUT TYPE="CHECKBOX" NAME="EXPORT_ALL"{export_all? CHECKED:}
+onChange="select_printers()"> Exporta totes les impressores
+</TD>
+</TR>
+<TR>
+<TH CLASS="label">Nom de l'usuari del Samba:</TH>
+<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (necessari)</TD>
+</TR>
+<TR>
+<TH CLASS="label">Contrasenya del Samba:</TH>
+<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (necess&agrave;ria)</TD>
+</TR>
+<TR>
+<TD></TD>
+<TD><INPUT TYPE="SUBMIT" VALUE="Exporta les impressores al Samba"></TD>
+</TR>
+</TABLE>
+
+</FORM>
diff --git a/templates/ca/samba-exported.tmpl b/templates/ca/samba-exported.tmpl
new file mode 100644
index 00000000..7ea98570
--- /dev/null
+++ b/templates/ca/samba-exported.tmpl
@@ -0,0 +1 @@
+<P>Les impressores s'han exportat correctament al Samba.</P>
diff --git a/templates/it/search.tmpl b/templates/ca/search.tmpl
index c71a9dd7..b76afaa2 100644
--- a/templates/it/search.tmpl
+++ b/templates/ca/search.tmpl
@@ -2,9 +2,9 @@
{WHICH_JOBS?<INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{WHICH_JOBS}">:}
{ORDER?<INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{ORDER}">:}
-<P ALIGN="CENTER"><B>Cerca in
-{SEARCH_DEST?{SEARCH_DEST}:{SECTION=classes?Classi:{SECTION=jobs?Stampe:Stampanti}}}:</B>
+<P ALIGN="CENTER"><B>Cerca a les
+{SEARCH_DEST?{SEARCH_DEST}:{SECTION=classes?classes:{SECTION=jobs?tasques:impressores}}}:</B>
<INPUT TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER="" AUTOSAVE="org.cups.{SECTION}" RESULTS="20"> <INPUT
-TYPE="SUBMIT" VALUE="Cerca"> <INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Cancella"></P>
+TYPE="SUBMIT" VALUE="Cerca"> <INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Neteja"></P>
</FORM>
diff --git a/templates/pl/set-printer-options-header.tmpl b/templates/ca/set-printer-options-header.tmpl
index 58e5b85d..b4a4a4e5 100644
--- a/templates/pl/set-printer-options-header.tmpl
+++ b/templates/ca/set-printer-options-header.tmpl
@@ -1,12 +1,12 @@
<DIV CLASS="indent">
-<H2 CLASS="title">Ustawianie domyślnych opcji dla {printer_name}</H2>
+<H2 CLASS="title">Aplica les opcions per defecte a {printer_name}</H2>
<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{HAVE_AUTOCONFIGURE?<INPUT TYPE="SUBMIT" NAME="AUTOCONFIGURE" VALUE="Pobierz domyślne ustawienia drukarki">:}
+{HAVE_AUTOCONFIGURE?<INPUT TYPE="SUBMIT" NAME="AUTOCONFIGURE" VALUE="Demana a la impressora les opcions per defecte">:}
<SCRIPT TYPE="text/javascript"><!--
function update_paramtable(option)
diff --git a/templates/de/set-printer-options-trailer.tmpl b/templates/ca/set-printer-options-trailer.tmpl
index 11adc701..11adc701 100644
--- a/templates/de/set-printer-options-trailer.tmpl
+++ b/templates/ca/set-printer-options-trailer.tmpl
diff --git a/templates/ca/subscription-added.tmpl b/templates/ca/subscription-added.tmpl
new file mode 100644
index 00000000..067132fe
--- /dev/null
+++ b/templates/ca/subscription-added.tmpl
@@ -0,0 +1,5 @@
+<DIV CLASS="indent">
+
+<P>La subscripci&oacute; {subscription_name} s'ha afegit correctament.</P>
+
+</DIV>
diff --git a/templates/ca/subscription-canceled.tmpl b/templates/ca/subscription-canceled.tmpl
new file mode 100644
index 00000000..8a93b4cd
--- /dev/null
+++ b/templates/ca/subscription-canceled.tmpl
@@ -0,0 +1,5 @@
+<DIV CLASS="indent">
+
+<P>La subscripci&oacute; #{notify_subscription_id} s'ha cancel&middot;lat.</P>
+
+</DIV>
diff --git a/templates/ca/test-page.tmpl b/templates/ca/test-page.tmpl
new file mode 100644
index 00000000..2a4b7760
--- /dev/null
+++ b/templates/ca/test-page.tmpl
@@ -0,0 +1,8 @@
+<DIV CLASS="indent">
+
+<H2 CLASS="title">Imprimeix una p&agrave;gina de prova a {printer_name}</H2>
+
+<P>S'ha enviat la p&agrave;gina de prova; l'ID de la tasca &eacute;s <A HREF="/{SECTION}/{printer_name}">
+{printer_name}-{job_id}</A>.</P>
+
+</DIV>
diff --git a/templates/ca/trailer.tmpl b/templates/ca/trailer.tmpl
new file mode 100644
index 00000000..f16123f7
--- /dev/null
+++ b/templates/ca/trailer.tmpl
@@ -0,0 +1,8 @@
+</TD></TR>
+<TR><TD>&nbsp;</TD></TR>
+<TR><TD CLASS="trailer">CUPS i el logotip de CUPS s&oacute;n marques registrades per
+<A HREF="http://www.apple.com">Apple Inc.</A> CUPS t&eacute; copyright 2007-2012 Apple
+Inc. Tots els drets reservats.</TD></TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/templates/it/users.tmpl b/templates/ca/users.tmpl
index 34d8adb1..cceeb024 100644
--- a/templates/it/users.tmpl
+++ b/templates/ca/users.tmpl
@@ -6,22 +6,22 @@
<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
{IS_CLASS?<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="{IS_CLASS}">:}
-<H2 CLASS="title">Utenti autorizzati per {printer_name}</H2>
+<H2 CLASS="title">Usuaris amb permisos per {printer_name}</H2>
<TABLE>
<TR>
-<TH CLASS="label">Utenti:</TH>
+<TH CLASS="label">Usuaris:</TH>
<TD>
<INPUT TYPE='TEXT' NAME='users' SIZE='60' VALUE='{?requesting_user_name_allowed}{?requesting_user_name_denied}'>
<BR>
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-allowed' {requesting_user_name_allowed?checked:}>Consenti a questi utenti di stampare
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-denied' {requesting_user_name_denied?checked:}>Vieta a questi utenti di stampare
+<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-allowed' {requesting_user_name_allowed?checked:}>Permet imprimir a aquests usuaris
+<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-denied' {requesting_user_name_denied?checked:}>No permetis imprimir a aquests usuaris
</TD>
</TR>
<TR>
<TD></TD>
<TD>
-<INPUT TYPE="SUBMIT" VALUE="Imposta utenti autorizzati">
+<INPUT TYPE="SUBMIT" VALUE="Aplica els permisos">
</TD>
</TR>
</TABLE>
diff --git a/templates/de/add-class.tmpl b/templates/de/add-class.tmpl
deleted file mode 100644
index 2753bb91..00000000
--- a/templates/de/add-class.tmpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Klasse hinzuf&uuml;gen</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Name:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Darf alle druckbaren Zeichen au&szlig;er "/", "#", und Leerzeichen enthalten)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Beschreibung:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(F&uuml;r Menschen lesbare Beschreibung wie "HP LaserJet with Duplexer")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Ort:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(F&uuml;r Menschen lesbarer Ort wie "Lab 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Mitglieder:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Klasse hinzuf&uuml;gen"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/de/add-printer.tmpl b/templates/de/add-printer.tmpl
deleted file mode 100644
index 15380b97..00000000
--- a/templates/de/add-printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Drucker hinzuf&uuml;gen</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-{?current_make!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE" VALUE="{current_make}">:}
-{?current_make_and_model!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{current_make_and_model}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Name:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?template_name}"><BR>
-<SMALL>(Darf alle druckbaren Zeichen au&szlig;er "/", "#", und Leerzeichen enthalten)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Beschreibung:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_INFO}"><BR>
-<SMALL>(F&uuml;r Menschen lesbare Beschreibung wie "HP LaserJet with Duplexer")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Ort:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_LOCATION}"><BR>
-<SMALL>(F&uuml;r Menschen lesbarer Ort wie "Lab 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Verbindung:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Freigabe:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Diesen Drucker freigeben</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Weiter"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/de/add-rss-subscription.tmpl b/templates/de/add-rss-subscription.tmpl
deleted file mode 100644
index 6b92facb..00000000
--- a/templates/de/add-rss-subscription.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription">
-
-<H2 CLASS="title">RSS Subskription hinzuf&uuml;gen</H2>
-
-<TABLE SUMMARY="Forumlar zum Hinzufügen einer RSS Subskription">
-<TR>
-<TH CLASS="label">Name:</TH>
-<TD COLSPAN="5"><INPUT TYPE="TEXT" NAME="SUBSCRIPTION_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?SUBSCRIPTION_NAME}"><BR>
-<SMALL>(Darf alle druckbaren Zeichen au&szlig;er Leerzeichen, "/", "?", und "#" enthalten)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Warteschlange:</TH>
-<TD COLSPAN="5"><SELECT NAME="PRINTER_URI" SIZE="10"><OPTION VALUE="#ALL#"{?PRINTER_URI=#ALL#? SELECTED:}>Alle Warteschlangen</OPTION>{[printer_name]<OPTION VALUE="{printer_uri_supported}"{?PRINTER_URI={printer_uri_supported}? SELECTED:}>{printer_name}</OPTION>}</SELECT></TD>
-</TR>
-<TR VALIGN="TOP">
-<TH CLASS="label">Ereignisse:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CREATED" {?EVENT_JOB_CREATED}>Auftrag Erstellt<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_COMPLETED" {?EVENT_JOB_COMPLETED}>Auftrag Abgeschlossen<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_STOPPED" {?EVENT_JOB_STOPPED}>Auftrag Gestoppt<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CONFIG_CHANGED" {?EVENT_JOB_CONFIG_CHANGED}>Auftrags Parameter Ge&auml;ndert</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_STOPPED" {?EVENT_PRINTER_STOPPED}>Warteschlange Gestoppt<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_ADDED" {?EVENT_PRINTER_ADDED}>Warteschlange Hinzugef&uuml;gt<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_MODIFIED" {?EVENT_PRINTER_MODIFIED}>Warteschlange Ge&auml;ndert<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_DELETED" {?EVENT_PRINTER_DELETED}>Warteschlange Gel&ouml;scht</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STARTED" {?EVENT_SERVER_STARTED}>Server Gestartet<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STOPPED" {?EVENT_SERVER_STOPPED}>Server Gestoppt<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_RESTARTED" {?EVENT_SERVER_RESTARTED}>Server Neu Gestartet<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_AUDIT" {?EVENT_SERVER_AUDIT}>Server Sicherheits Pr&uuml;fung</TD>
-</TR>
-<TR>
-<TH CLASS="label">Maximale Ereignisse in Durchf&uuml;hrung:</TH>
-<TD COLSPAN="5"><INPUT TYPE="NUMBER" NAME="MAX_EVENTS" SIZE="4" MAXLENGTH="4" VALUE="{MAX_EVENTS?{MAX_EVENTS}:20}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD COLSPAN="5"><INPUT TYPE="SUBMIT" VALUE="RSS Subskription hinzuf&uuml;gen"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/de/admin.tmpl b/templates/de/admin.tmpl
deleted file mode 100644
index 1ad13269..00000000
--- a/templates/de/admin.tmpl
+++ /dev/null
@@ -1,110 +0,0 @@
-<TABLE CLASS="indent" SUMMARY="Administrative T&auml;tigkeiten">
-<TR><TD VALIGN="TOP">
-
-<H2 CLASS="title">Drucker</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="SUBMIT" VALUE="Drucker hinzuf&uuml;gen"></FORM>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="find-new-printers"><INPUT TYPE="SUBMIT" VALUE="Verf&uuml;gbare Drucker auflisten"></FORM>
-<FORM ACTION="/printers/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Drucker verwalten"></FORM>
-{have_samba?<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba"><INPUT TYPE="SUBMIT" VALUE="Drucker f&uuml;r Samba freigeben"></FORM>:}
-</P>
-
-<H2 CLASS="title">Klassen</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-class"><INPUT TYPE="SUBMIT" VALUE="Klasse hinzuf&uuml;gen"></FORM>
-<FORM ACTION="/classes/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Klassen verwalten"></FORM>
-</P>
-
-<H2 CLASS="title">Druckauftr&auml;ge</H2>
-
-<P>
-<FORM ACTION="/jobs/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Auftr&auml;ge verwalten"></FORM>
-</P>
-
-</TD><TD>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD><TD VALIGN="TOP">
-
-<H2 CLASS="title">Server</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server"><INPUT TYPE="SUBMIT" VALUE="Konfigurationsdatei bearbeiten"></FORM>
-<FORM ACTION="/admin/log/access_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Zugriffsprotokoll betrachten"></FORM>
-<FORM ACTION="/admin/log/error_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Fehlerprotokoll betrachten"></FORM>
-<FORM ACTION="/admin/log/page_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Seitenprotokoll betrachten"></FORM>
-</P>
-
-{SETTINGS_ERROR?<P>{SETTINGS_MESSAGE}</P>
-<BLOCKQUOTE>{SETTINGS_ERROR}</BLOCKQUOTE>:
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-
-{ADVANCEDSETTINGS?<P><B>Erweiterte Servereinstellungen\:</B></P>
-
-<P><A HREF="/admin/">Erweitert <SMALL>&#x25bc;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Zeige freigegebene Drucker von anderen Systemen<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protokolle\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Freigeben von Druckern welche mit diesem System verbunden sind<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Klienten maximal\:
-<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protokolle\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Erlaube Drucken vom Internet aus<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> Ver&ouml;ffentliche Webinterface<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Erlaube entfernte Verwaltung<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Benutze Kerberos Authentifizierung (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Erlaube Benutzern jeden Auftrag abzubrechen (nicht nur die Eigenen)<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY" {?preserve_job_history}> Auftragsverlauf aufbewahren<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Anzahl der Auftr&auml;ge\:
-<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES" {?preserve_job_files}> Dateien von Druckauftr&auml;gen aufbewahren<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Speichere Fehlerinformationen f&uuml;r Fehlersuche<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Maximale Gr&ouml;&szlig;e der Protokolldatei\:
-<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
-
-:<P><B>Grundlegende Servereinstellungen:</B></P>
-
-<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Erweitert <SMALL>&#x25b6;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Zeige freigegebene Drucker von anderen Systemen<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Freigeben von Druckern welche mit diesem System verbunden sind<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Erlaube Drucken vom Internet aus<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Erlaube entfernte Verwaltung<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Benutze Kerberos Authentifizierung (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Erlaube Benutzern jeden Auftrag abzubrechen (nicht nur die Eigenen)<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Speichere Fehlerinformationen f&uuml;r Fehlersuche</P>
-
-}
-<P><INPUT TYPE="SUBMIT" NAME="CHANGESETTINGS" VALUE="Einstellungen &auml;ndern"></P>
-
-</FORM>}
-
-</TD></TR>
-</TABLE>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">RSS Subskriptionen</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="RSS Subskription hinzuf&uuml;gen"></FORM>
-</P>
-
-</DIV>
-
-{notify_subscription_id?<TABLE CLASS="list" SUMMARY=">RSS Subskriptionen">
-<THEAD><TR><TH>Name</TH><TH>Ereignis</TH><TH>Warteschlange</TH></TR></THEAD>
-<TBODY>{[notify_subscription_id]
-<TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="RSS Subskription k&uuml;ndigen"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Alle Warteschlangen}</TD></TR>}
-</TBODY>
-</TABLE>:}
diff --git a/templates/de/choose-device.tmpl b/templates/de/choose-device.tmpl
deleted file mode 100644
index 3be8a350..00000000
--- a/templates/de/choose-device.tmpl
+++ /dev/null
@@ -1,54 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?{printer_name} &auml;ndern:Drucker hinzuf&uuml;gen}</H2>
-
-{CUPS_GET_DEVICES_DONE?:<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Busy Indicator"> Suche nach Druckern...</P>}
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-{op=add-printer?:<TR>
-<TH CLASS="label">Aktuelle Verbindung:</TH>
-<TD><INPUT TYPE="RADIO" NAME="DEVICE_URI" VALUE="{current_device_uri}" CHECKED>
-{current_device_uri}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Lokale Drucker:</TH>
-<TD>
-{[device_uri]{device_class!network?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unbekannt?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unbekannt?({device_make_and_model}):}<BR>
-:}}
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Entdeckte Netzwerkdrucker:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unbekannt?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unbekannt?({device_make_and_model}):}<BR>
-:}:}}
-</TD>
-</TR>
-<TR>
-<TR>
-<TH CLASS="label">Andere Netzwerkdrucker:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?:<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unbekannt?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unbekannt?({device_make_and_model}):}<BR>
-}:}}
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Weiter"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/de/choose-make.tmpl b/templates/de/choose-make.tmpl
deleted file mode 100644
index 6d572a6b..00000000
--- a/templates/de/choose-make.tmpl
+++ /dev/null
@@ -1,64 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?{printer_name} &auml;ndern:Drucker hinzuf&uuml;gen}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Name:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Beschreibung:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Ort:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Verbindung:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Freigabe:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-Diesen Drucker {?printer_is_shared=?nicht:{?printer_is_shared=0?nicht:}} freigeben</TD>
-</TR>
-<TR>
-<TH CLASS="label">Marke:</TH>
-<TD>
-<SELECT NAME="PPD_MAKE" SIZE="10">
-{[ppd_make]<OPTION VALUE="{ppd_make}" {?current_make={ppd_make}?SELECTED:}>{ppd_make}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Weiter"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR>
-<TH CLASS="label">Oder stellen Sie eine PPD Datei bereit:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Drucker hinzuf&uuml;gen:Drucker &auml;ndern}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/de/choose-model.tmpl b/templates/de/choose-model.tmpl
deleted file mode 100644
index 2f5bb18d..00000000
--- a/templates/de/choose-model.tmpl
+++ /dev/null
@@ -1,60 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?{printer_name} &auml;ndern:Drucker hinzuf&uuml;gen}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Name:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Beschreibung:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Ort:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Verbindung:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Freigabe:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-Diesen Drucker {?printer_is_shared=?nicht:{?printer_is_shared=0?nicht:}} freigeben</TD>
-</TR>
-<TR>
-<TH CLASS="label">Marke:</TH>
-<TD>{PPD_MAKE} <INPUT TYPE="SUBMIT" NAME="SELECT_MAKE" VALUE="Andere(n) Marke/Hersteller ausw&auml;hlen"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Modell:</TH>
-<TD>
-<SELECT NAME="PPD_NAME" SIZE="10">
-{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Aktueller Treiber - {current_make_and_model}</OPTION>:}
-{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
-}</SELECT>
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Oder stellen Sie eine PPD Datei bereit:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Drucker hinzuf&uuml;gen:Drucker &auml;ndern}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/de/choose-serial.tmpl b/templates/de/choose-serial.tmpl
deleted file mode 100644
index a6f0044b..00000000
--- a/templates/de/choose-serial.tmpl
+++ /dev/null
@@ -1,52 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?{printer_name} &auml;ndern:Drucker hinzuf&uuml;gen}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Verbindung:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Baud Rate:</TH>
-<TD><SELECT NAME="BAUDRATE">
-{[baudrates]<OPTION {?baudrate={baudrates}?SELECTED:}>{baudrates}}
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Parit&auml;t:</TH>
-<TD><SELECT NAME="PARITY">
-<OPTION VALUE="none" {?parity=none?SELECTED:}>Keine
-<OPTION VALUE="even" {?parity=even?SELECTED:}>Gerade
-<OPTION VALUE="odd" {?parity=odd?SELECTED:}>Ungerade
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Daten Bits:</TH>
-<TD><SELECT NAME="BITS">
-<OPTION {?bits=8?SELECTED:}>8
-<OPTION {?bits=7?SELECTED:}>7
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Flu&szlig;kontrolle:</TH>
-<TD><SELECT NAME="FLOW">
-<OPTION VALUE="none" {?flow=none?SELECTED:}>None
-<OPTION VALUE="soft" {?flow=soft?SELECTED:}>XON/XOFF (Software)
-<OPTION VALUE="hard" {?flow=hard?SELECTED:}>RTS/CTS (Hardware)
-<OPTION VALUE="dtrdsr" {?flow=dtrdsr?SELECTED:}>DTR/DSR (Hardware)
-</SELECT></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Weiter"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/de/choose-uri.tmpl b/templates/de/choose-uri.tmpl
deleted file mode 100644
index 0633fd6c..00000000
--- a/templates/de/choose-uri.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?{printer_name} &auml;ndern:Drucker hinzuf&uuml;gen}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{?current_make_and_model}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Verbindung:</TH>
-<TD><INPUT TYPE="URL" SIZE="60" MAXLENGTH="1024" NAME="DEVICE_URI" VALUE="{current_device_uri?{current_device_uri}:{device_uri}}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>Beispiele:
-<PRE>
- http://Hostname:631/ipp/
- http://Hostname:631/ipp/Anschluss1
-
- ipp://Hostname/ipp/
- ipp://Hostname/ipp/Anschluss1
-
- lpd://Hostname/Warteschlange
-
- socket://Hostname
- socket://Hostname:9100
-</PRE>
-
-<P>Bitte lesen Sie <A HREF="/help/network.html" TARGET="_blank">"Netzwerk
-Drucker"</A> um die korrekte URI f&uuml;r Ihren Drucker zu benutzen.</P>
-
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Weiter"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/de/class-added.tmpl b/templates/de/class-added.tmpl
deleted file mode 100644
index 3b05769a..00000000
--- a/templates/de/class-added.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Klasse hinzuf&uuml;gen</H2>
-
-<P>Die Klasse <A HREF="/classes/{printer_name}">{printer_name}</A> wurde erfolgreich
-hinzugef&uuml;gt.
-
-</DIV>
diff --git a/templates/de/class-confirm.tmpl b/templates/de/class-confirm.tmpl
deleted file mode 100644
index 5e0223cf..00000000
--- a/templates/de/class-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Klasse {printer_name} l&ouml;schen</H2>
-
-<P><B>Warnung:</B> Sind Sie sicher, dass Sie die Klasse
-{printer_name} l&ouml;schen wollen?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="op" VALUE="delete-class"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Klasse l&ouml;schen"></FORM></P>
-
-</DIV>
diff --git a/templates/de/class-deleted.tmpl b/templates/de/class-deleted.tmpl
deleted file mode 100644
index 9357924c..00000000
--- a/templates/de/class-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Klasse {printer_name} l&ouml;schen</H2>
-
-<P>Die Klasse {printer_name} wurde erfolgreich gel&ouml;scht.
-
-</DIV>
diff --git a/templates/de/class-jobs-header.tmpl b/templates/de/class-jobs-header.tmpl
deleted file mode 100644
index 4f3de934..00000000
--- a/templates/de/class-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Auftr&auml;ge</H3>
-</DIV>
diff --git a/templates/de/class-modified.tmpl b/templates/de/class-modified.tmpl
deleted file mode 100644
index b5ad0dae..00000000
--- a/templates/de/class-modified.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Klasse {printer_name} &auml;ndern</H2>
-
-<P>Die Klasse <A HREF="/classes/{printer_name}">{printer_name}</A> wurde
-erfolgreich ge&auml;ndert.
-
-</DIV>
diff --git a/templates/de/class.tmpl b/templates/de/class.tmpl
deleted file mode 100644
index 61a89dc7..00000000
--- a/templates/de/class.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<DIV CLASS="indent">
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Frei:{printer_state=4?Besch&auml;ftigt:Angehalten}},
-{printer_is_accepting_jobs=0?Auftr&auml;ge werden ablehnt:Auftr&auml;ge werden akzeptiert},
-{server_is_sharing_printers=0?Nicht:{printer_is_shared=0?Nicht:}} Freigegeben{default_name={printer_name}?, Standarddrucker:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Wartung</OPTION>
-<OPTION VALUE="print-test-page">Drucke Testseite</OPTION>
-{printer_state=5?<OPTION VALUE="start-class">Klasse starten</OPTION>:<OPTION VALUE="stop-class">Klasse stoppen</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Auftr&auml;ge akzeptieren</OPTION>:<OPTION VALUE="reject-jobs">Auftr&auml;ge ablehnen</OPTION>}
-<OPTION VALUE="move-jobs">Alle Auftr&auml;ge verschieben</OPTION>
-<OPTION VALUE="purge-jobs">Alle Auftr&auml;ge abbrechen</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="1">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administration</OPTION>
-<OPTION VALUE="modify-class">Klasse &auml;ndern</OPTION>
-<OPTION VALUE="delete-class">Klasse l&ouml;schen</OPTION>
-<OPTION VALUE="set-class-options">Standardeinstellungen festlegen</OPTION>
-<OPTION VALUE="set-as-default">Als Standard festlegen</OPTION>
-<OPTION VALUE="set-allowed-users">Erlaubte Benutzer festlegen</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Beschreibung:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Ort:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Mitglieder:</TH><TD>{?member_uris=?None:{member_uris}}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Standardeinstellungen:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:unbekannt}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/de/classes-header.tmpl b/templates/de/classes-header.tmpl
deleted file mode 100644
index 5fa4d4ae..00000000
--- a/templates/de/classes-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Keine Klassen:Zeige {#printer_name} von {total} Klasse{total=1?:n}}.</P>
diff --git a/templates/de/command.tmpl b/templates/de/command.tmpl
deleted file mode 100644
index 45e8dce5..00000000
--- a/templates/de/command.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{title} auf {printer_name}</H2>
-
-<P>{job_state>5?:<IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16"
-ALIGN="ABSMIDDLE" ALT="Busy Indicator"> }Drucker Befehlsauftrag
-{job_state=3?unerledigt:{job_state=4?gehalten:
-{job_state=5?verarbeite:{job_state=6?gestoppt:
-{job_state=7?gel&ouml;scht:{job_state=8?abgebrochen:beendet}}}}}}{job_state=9?:{job_printer_state_message?,
-<EM>"{job_printer_state_message}"</EM>:}}</P>
-
-</DIV>
diff --git a/templates/de/header.tmpl.in b/templates/de/header.tmpl.in
deleted file mode 100644
index 09a48164..00000000
--- a/templates/de/header.tmpl.in
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{title} - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
- {refresh_page?<META HTTP-EQUIV="Refresh" CONTENT="{refresh_page}">:}
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;Startseite&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=admin?:un}sel"><A HREF="/admin">&nbsp;&nbsp;Verwaltung&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=classes?:un}sel"><A HREF="/classes/">&nbsp;&nbsp;Klassen&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=help?:un}sel"><A HREF="/help/">&nbsp;&nbsp;Online-Hilfe&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=jobs?:un}sel"><A HREF="/jobs/">&nbsp;&nbsp;Auftr&auml;ge&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=printers?:un}sel"><A HREF="/printers/">&nbsp;&nbsp;Drucker&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
-VALUE="{SECTION=help?{?QUERY}:}" AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-<TR><TD COLSPAN="9">&nbsp;</TD></TR>
-</TABLE>
diff --git a/templates/de/help-header.tmpl b/templates/de/help-header.tmpl
deleted file mode 100644
index a2d68a58..00000000
--- a/templates/de/help-header.tmpl
+++ /dev/null
@@ -1,51 +0,0 @@
-<DIV CLASS="indent">
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET">
-{TOPIC?<INPUT TYPE="HIDDEN" NAME="TOPIC" VALUE="{TOPIC}">:}
-
-<P ALIGN="CENTER"><B>Suche in
-{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:allen Dokumenten}}:</B> <INPUT
-TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER=""
-AUTOSAVE="org.cups.help" RESULTS="20">
-<INPUT TYPE="SUBMIT" NAME="SEARCH" VALUE="Suchen">
-<INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Leeren"></P>
-
-</FORM>
-
-<!-- Bookmarks -->
-<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="Inhalt">
-<TR><TD>
-
-<H3 CLASS="title">Online Hilfe Dokumente</H3>
-
-<P CLASS="l0"><A HREF="/help/{QUERY??QUERY={QUERY}:}">Alle Dokumente</A></P>
-<HR>
-
-{[BMTEXT]<P CLASS="l{BMINDENT}"><A HREF="{BMLINK}">{BMTEXT}</A></P>
-}
-</TD></TR>
-</TABLE></DIV>
-
-{QUERY?<P>Suchergebnisse in {HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:allen Dokumenten}}\:</P>
-{QTEXT?<UL>
-{[QTEXT]<LI><A HREF="{QLINK}">{QTEXT}</A>{QPTEXT? (in <I><A HREF="{QPLINK}">{QPTEXT}</A></I>):}</LI>}
-{QTEXT?</UL>:}
-:<P>Keine &Uuml;bereinstimmung gefunden.</P>}
-<HR NOSHADE>:}
-{HELPTITLE?<H1>{HELPTITLE}</H1>
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="PRINTABLE" VALUE="YES"><INPUT TYPE="SUBMIT" VALUE="Druckversion anzeigen"></FORM>:
-
-<H1>CUPS Hilfeseiten</H1>
-
-<P>Dies ist das CUPS online Hilfesystem. Geben Sie Ihren Suchbegriff
-oben ein oder klicken Sie auf einen der Dokumentationslinks
-um sich die Online Hilfe Informationen anzeigen zu lassen.</P>
-
-<P>Wenn Sie noch unerfahren im Umgang mit CUPS sind, lesen Sie die "<a
-href="/help/overview.html">CUPS &Uuml;bersicht</a>".
-Erfahrene Benutzer sollten "<a href="/help/whatsnew.html">Was ist neu in CUPS
-1.4</a>" lesen.</P>
-
-<P>Die <A HREF="http://www.cups.org/">CUPS Webseite</A> bietet
-ebenfalls viele Angebote inklusive Diskussionsforen f&uuml; Benutzer,
-Antworten auf h&auml;ufig gestellte Fragen, und ein Formular für
-Fehlerberichte und W&uuml;nsche.</P>}
diff --git a/templates/de/job-cancel.tmpl b/templates/de/job-cancel.tmpl
deleted file mode 100644
index 9bf6f388..00000000
--- a/templates/de/job-cancel.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Auftrag {job_id} l&ouml;schen</H2>
-
-<P><A HREF="{job_printer_uri}">Auftrag {job_id}</A> wurde gel&ouml;scht.
-
-</DIV>
diff --git a/templates/de/job-hold.tmpl b/templates/de/job-hold.tmpl
deleted file mode 100644
index aaddb20b..00000000
--- a/templates/de/job-hold.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Auftrag {job_id} anhalten</H2>
-
-<P><A HREF="{job_printer_uri}">Auftrag {job_id}</A> wurde vom Drucken abgehalten.
-
-</DIV>
diff --git a/templates/de/job-move.tmpl b/templates/de/job-move.tmpl
deleted file mode 100644
index 67c57dd3..00000000
--- a/templates/de/job-move.tmpl
+++ /dev/null
@@ -1,27 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/{SECTION}/{job_id?:{printer_name}}">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{job_id?<INPUT TYPE="HIDDEN" NAME="JOB_ID" VALUE="{job_id}">:}
-
-<H2 CLASS="title">{job_id?Auftrag {job_id} verschieben:Alle Auftr&auml;ge verschieben}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Neues Ziel:</TH>
-<TD>
-<SELECT NAME="JOB_PRINTER_URI" SIZE="10">
-{[job_printer_uri]<OPTION VALUE="{job_printer_uri}">{job_printer_name}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{job_id?Auftrag verschieben:Auftr&auml;ge verschieben}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-
-</DIV>
diff --git a/templates/de/job-moved.tmpl b/templates/de/job-moved.tmpl
deleted file mode 100644
index ad9624ea..00000000
--- a/templates/de/job-moved.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id?Auftrag {job_id} verschieben:Alle Auftr&auml;ge verschieben}</H2>
-
-<P>{job_id?<A HREF="/jobs/{job_id}">Auftrag {job_id}</A>:Alle Auftr&auml;ge} nach
-<A HREF="{job_printer_uri}">{job_printer_name}</A> verschoben.</P>
-
-</DIV>
diff --git a/templates/de/job-release.tmpl b/templates/de/job-release.tmpl
deleted file mode 100644
index e1d4227f..00000000
--- a/templates/de/job-release.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Auftrag {job_id} freigeben</H2>
-
-<P><A HREF="{job_printer_uri}">Auftrag {job_id}</A> wurde zum Drucken freigegeben.
-
-</DIV>
diff --git a/templates/de/job-restart.tmpl b/templates/de/job-restart.tmpl
deleted file mode 100644
index b4876978..00000000
--- a/templates/de/job-restart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Auftrag {job_id} neu starten</H2>
-
-<P><A HREF="{job_printer_uri}">Auftrag {job_id}</A> wurde neu gestartet.
-
-</DIV>
diff --git a/templates/de/jobs-header.tmpl b/templates/de/jobs-header.tmpl
deleted file mode 100644
index 6565af41..00000000
--- a/templates/de/jobs-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">{?which_jobs=?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Aktive Auftr&auml;ge anzeigen"></FORM>}
-{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="Fertige Auftr&auml;ge anzeigen"></FORM>}
-{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="Alle Auftr&auml;ge anzeigen"></FORM>}</DIV>
-
-<P ALIGN="CENTER">{total=0?Keine Auftr&auml;ge:Zeige {#job_id} von {total} {?which_jobs=?aktiven:{which_jobs=all?:beendeten}} {total=1?Auftrag:Auftr&auml;gen}}.</P>
diff --git a/templates/de/jobs.tmpl b/templates/de/jobs.tmpl
deleted file mode 100644
index 94a60b0a..00000000
--- a/templates/de/jobs.tmpl
+++ /dev/null
@@ -1,37 +0,0 @@
-{#job_id=0?:
-<TABLE CLASS="list" SUMMARY="Auftragsliste">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> ID <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> ID <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Name</TH><TH>Benutzer</TH><TH>Gr&ouml;&szlig;e</TH><TH>Seiten</TH><TH>Status</TH><TH>Kontrolle</TH></TR>
-</THEAD>
-<TBODY>
-{[job_id]
-<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
-<TD>{?job_name=?Unbekannt:{job_name}}&nbsp;</TD>
-<TD>{job_originating_user_name}&nbsp;</TD>
-<TD>{job_k_octets}k&nbsp;</TD>
-<TD>{job_media_sheets_completed=0?Unbekannt:{?job_media_sheets_completed}}&nbsp;</TD>
-<TD>{job_state=3?unerledigt seit<BR>{time_at_creation}:{job_state=4?angehalten seit<BR>{time_at_creation}:
-{job_state=5?verarbeitet seit<BR>{time_at_processing}:{job_state=6?gestoppt:
-{job_state=7?gel&ouml;scht am<BR>{time_at_completed}:{job_state=8?abgebrochen:beendet am<BR>{time_at_completed}}}}}}}&nbsp;{job_printer_state_message?<BR>
-<EM>"{job_printer_state_message}"</EM>:}</TD>
-<TD>
-{job_preserved>0?{job_state>5?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Auftrag neu drucken"></FORM>:}:}
-{job_state=4?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="release-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Auftrag freigeben"></FORM>:}
-{job_state=3?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="hold-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Auftrag anhalten"></FORM>:}
-{job_state<7?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Auftrag l&ouml;schen"></FORM>
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="move-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="SUBMIT" VALUE="Auftrag verschieben"></FORM>:}
-&nbsp;</TD>
-</TR>
-}
-</TBODY>
-</TABLE>
-}
diff --git a/templates/de/modify-class.tmpl b/templates/de/modify-class.tmpl
deleted file mode 100644
index 2e0bae80..00000000
--- a/templates/de/modify-class.tmpl
+++ /dev/null
@@ -1,34 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Klasse {printer_name} &auml;ndern</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Beschreibung:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Ort:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Mitglieder:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Klasse &auml;ndern"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/de/norestart.tmpl b/templates/de/norestart.tmpl
deleted file mode 100644
index fb22b154..00000000
--- a/templates/de/norestart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Change Settings</H2>
-
-<P>Der Server wurde nicht neu gestartet, da die Konfiguration
-nicht ge&auml;ndert wurde...</P>
-
-</DIV>
diff --git a/templates/de/option-conflict.tmpl b/templates/de/option-conflict.tmpl
deleted file mode 100644
index eac3c0de..00000000
--- a/templates/de/option-conflict.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<P><B>Error:</B> The following options are conflicting:</P>
-
-<UL>
-{[ckeyword]<LI><A HREF="#{ckeyword}">{ckeytext}</A>: {cchoice}</LI>
-}</UL>
-
-<P>Bitte &auml;ndern sie eine oder mehrere Einstellungen um die Konflikte zu l&ouml;sen.</P>
diff --git a/templates/de/option-pickone.tmpl b/templates/de/option-pickone.tmpl
deleted file mode 100644
index 111397ce..00000000
--- a/templates/de/option-pickone.tmpl
+++ /dev/null
@@ -1,18 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" ID="select-{keyword}" ONCHANGE="update_paramtable('{keyword}')">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT>
-{iscustom=1?<TABLE NAME="paramtable" id="{keyword}-params">{[params]
-<TR><TH CLASS="sublabel">{paramtext}:</TH>
-<TD>{params=Units?<SELECT NAME="{keyword-1}.{params}">
-<OPTION VALUE="pt"{paramvalue=pt? SELECTED:}>Punkte</OPTION>
-<OPTION VALUE="mm"{paramvalue=mm? SELECTED:}>Millimeter</OPTION>
-<OPTION VALUE="cm"{paramvalue=cm? SELECTED:}>Zentimeter</OPTION>
-<OPTION VALUE="in"{paramvalue=in? SELECTED:}>Zoll</OPTION>
-<OPTION VALUE="ft"{paramvalue=ft? SELECTED:}>Fu&szlig;</OPTION>
-<OPTION VALUE="m"{paramvalue=m? SELECTED:}>Meter</OPTION>
-</SELECT>:<INPUT TYPE="{inputtype}" NAME="{keyword-1}.{params}" VALUE="{paramvalue}">}</TD></TR>
-}</TABLE>
-</TD>:}
-</TR>
diff --git a/templates/de/option-trailer.tmpl b/templates/de/option-trailer.tmpl
deleted file mode 100644
index 87adedb4..00000000
--- a/templates/de/option-trailer.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-</TABLE>
-
-<P ALIGN="CENTER"><INPUT TYPE="SUBMIT" VALUE="Standardeinstellungen festlegen"></P>
-
-</DIV>
diff --git a/templates/de/pager.tmpl b/templates/de/pager.tmpl
deleted file mode 100644
index 6bc63d67..00000000
--- a/templates/de/pager.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TABLE CLASS="inset" SUMMARY="Seitenverwaltung">
-<TR>
- <TD WIDTH="50%">{PREV?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{PREV}"><INPUT TYPE="SUBMIT" VALUE="&#x25c0; Vorherige anzeigen"></FORM>:&nbsp;}</TD>
- <TD WIDTH="50%" ALIGN="RIGHT">{NEXT?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{NEXT}"><INPUT TYPE="SUBMIT" VALUE="N&auml;chste anzeigen &#x25b6;"></FORM>:&nbsp;}</TD>
-</TR>
-</TABLE>
diff --git a/templates/de/printer-accept.tmpl b/templates/de/printer-accept.tmpl
deleted file mode 100644
index 25045fa0..00000000
--- a/templates/de/printer-accept.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Auftr&auml;ge von {is_class?Klasse:Drucker} {printer_name} akzeptieren</H2>
-
-<P>{is_class?Klasse:Drucker} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-aktzeptiert jetzt Auftr&auml;ge.</P>
-
-</DIV>
diff --git a/templates/de/printer-added.tmpl b/templates/de/printer-added.tmpl
deleted file mode 100644
index fe712bea..00000000
--- a/templates/de/printer-added.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Drucker hinzuf&uuml;gen</H2>
-
-<P>Drucker <A HREF="/printers/{printer_name}">{printer_name}</A> wurde erfolgreich
-hinzuf&uuml;gt.
-
-</DIV>
diff --git a/templates/de/printer-configured.tmpl b/templates/de/printer-configured.tmpl
deleted file mode 100644
index 60e27c2a..00000000
--- a/templates/de/printer-configured.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Standardeinstellungen f&uuml;r {printer_name} festlegen</H2>
-
-<P>Standardeinstellungen f&uuml;r {OP=set-class-options?Klasse <A HREF="/classes/{printer_name}">:Drucker <A HREF="/printers/{printer_name}">}{printer_name}</A>
-wurden erfolgreich gesetzt.
-
-</DIV>
diff --git a/templates/de/printer-confirm.tmpl b/templates/de/printer-confirm.tmpl
deleted file mode 100644
index 030f6524..00000000
--- a/templates/de/printer-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Drucker {printer_name} l&ouml;schen</H2>
-
-<P><B>Warnung:</B> Sind Sie sicher, dass Sie den Drucker
-{printer_name} l&ouml;schen wollen?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="delete-printer"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Drucker l&ouml;schen"></FORM></P>
-
-</DIV>
diff --git a/templates/de/printer-default.tmpl b/templates/de/printer-default.tmpl
deleted file mode 100644
index ac2221f6..00000000
--- a/templates/de/printer-default.tmpl
+++ /dev/null
@@ -1,13 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{is_class?Klasse:Drucker} {printer_name} als Standard festlegen</H2>
-
-<P>{is_class?Klasse:Drucker} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-wurde zum Standarddrucker für diesen Server gemacht.</P>
-
-<BLOCKQUOTE><B>Notiz:</B> Die Einstellungen des Standarddruckers
-welche von Benutzern mittels dem <TT>lpoptions</TT> Befehl gesetzt wurden,
-&uuml;berschreiben diese Einstellung.</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/de/printer-deleted.tmpl b/templates/de/printer-deleted.tmpl
deleted file mode 100644
index 60461130..00000000
--- a/templates/de/printer-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Drucker {printer_name} l&ouml;schen</H2>
-
-<P>Drucker {printer_name} wurde erfolgreich gel&ouml;scht.
-
-</DIV>
diff --git a/templates/de/printer-jobs-header.tmpl b/templates/de/printer-jobs-header.tmpl
deleted file mode 100644
index 4f3de934..00000000
--- a/templates/de/printer-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Auftr&auml;ge</H3>
-</DIV>
diff --git a/templates/de/printer-modified.tmpl b/templates/de/printer-modified.tmpl
deleted file mode 100644
index b6e10bd4..00000000
--- a/templates/de/printer-modified.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Drucker {printer_name} &auml;ndern</H2>
-
-<P>Drucker <A HREF="/printers/{printer_name}">{printer_name}</A> wurde
-erfolgreich ge&auml;ndert.
-
-</DIV>
diff --git a/templates/de/printer-purge.tmpl b/templates/de/printer-purge.tmpl
deleted file mode 100644
index 1ff63ac0..00000000
--- a/templates/de/printer-purge.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Auftr&auml;ge f&uuml;r {is_class?die Klasse:den Drucker} {printer_name} verwerfen</H2>
-
-<P>Auftr&auml;ge f&uuml;r {is_class?die Klasse:den Drucker} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-wurden verworfen.</P>
-
-</DIV>
diff --git a/templates/de/printer-reject.tmpl b/templates/de/printer-reject.tmpl
deleted file mode 100644
index 1a5de730..00000000
--- a/templates/de/printer-reject.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Auftr&auml;ge f&uuml;r {is_class?die Klasse:den Drucker} {printer_name} ablehnen</H2>
-
-<P>{is_class?Die Klasse:Der Drucker} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-akzeptiert keine weiteren Auftr&auml;ge.</P>
-
-</DIV>
diff --git a/templates/de/printer-start.tmpl b/templates/de/printer-start.tmpl
deleted file mode 100644
index 7a78568e..00000000
--- a/templates/de/printer-start.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{is_class?Die Klasse:Den Drucker} {printer_name} fortfahren</H2>
-
-<P>{is_class?Die Klassen:Der Drucker} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-wird fortgesetzt.</P>
-
-</DIV>
diff --git a/templates/de/printer-stop.tmpl b/templates/de/printer-stop.tmpl
deleted file mode 100644
index b304bd92..00000000
--- a/templates/de/printer-stop.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{is_class?Die Klasse:Den Drucker} {printer_name} anhalten</H2>
-
-<P>{is_class?Die Klasse:Der Drucker} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-wurde angehalten.</P>
-
-</DIV>
diff --git a/templates/de/printer.tmpl b/templates/de/printer.tmpl
deleted file mode 100644
index ffc58e91..00000000
--- a/templates/de/printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Frei:{printer_state=4?Besch&auml;ftigt:Angehalten}},
-{printer_is_accepting_jobs=0?Auftr&auml;ge werden ablehnt:Auftr&auml;ge werden akzeptiert},
-{server_is_sharing_printers=0?Nicht:{printer_is_shared=0?Nicht:}} freigegeben{default_name={printer_name}?, Standarddrucker:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Wartung</OPTION>
-<OPTION VALUE="print-test-page">Testseite drucken</OPTION>
-{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">Druckk&ouml;pfe reinigen</OPTION>:}
-{printer_commands~.*PrintSelfTestPage.*?<OPTION VALUE="print-self-test-page">Selbsttest-Seite drucken</OPTION>:}
-{printer_state=5?<OPTION VALUE="start-printer">Drucker starten</OPTION>:<OPTION VALUE="stop-printer">Drucker stoppen</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Auftr&auml;ge akzeptieren</OPTION>:<OPTION VALUE="reject-jobs">Auftr&auml;ge ablehnen</OPTION>}
-<OPTION VALUE="move-jobs">Alle Auftr&auml;ge verschieben</OPTION>
-<OPTION VALUE="purge-jobs">Alle Auftr&auml;ge abbrechen</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administration</OPTION>
-<OPTION VALUE="modify-printer">Drucker &auml;ndern</OPTION>
-<OPTION VALUE="delete-printer">Drucker l&ouml;schen</OPTION>
-<OPTION VALUE="set-printer-options">Standardeinstellungen festlegen</OPTION>
-<OPTION VALUE="set-as-default">Als Standard festlegen</OPTION>
-<OPTION VALUE="set-allowed-users">Erlaubte Benutzer festlegen</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Beschreibung:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Ort:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Treiber:</TH><TD>{printer_make_and_model} ({color_supported=1?color:grayscale}{sides_supported?, 2-sided printing:})<BR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Verbindung:</TH><TD>{device_uri}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Einstellungen:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:unknown}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/de/printers-header.tmpl b/templates/de/printers-header.tmpl
deleted file mode 100644
index d07f783f..00000000
--- a/templates/de/printers-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Keine Drucker:Zeige {#printer_name} von {total} Drucker}.</P>
diff --git a/templates/de/printers.tmpl b/templates/de/printers.tmpl
deleted file mode 100644
index 2180a081..00000000
--- a/templates/de/printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Druckerliste">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Queue Name <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Queue Name <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Beschreibung</TH><TH>Ort</TH><TH>Marke und Modell</TH><TH>Status</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>{printer_state=3?Frei:{printer_state=4?Besch&auml;ftigt:Angehalten}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/de/restart.tmpl b/templates/de/restart.tmpl
deleted file mode 100644
index 245300f9..00000000
--- a/templates/de/restart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Einstellungen &auml;ndern</H2>
-
-<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Busy Indicator"> Bitte warten Sie w&auml;hrend der Server neu startet...</P>
-
-</DIV>
diff --git a/templates/de/samba-export.tmpl b/templates/de/samba-export.tmpl
deleted file mode 100644
index ab2b0c60..00000000
--- a/templates/de/samba-export.tmpl
+++ /dev/null
@@ -1,55 +0,0 @@
-<SCRIPT TYPE="text/javascript"><!--
-function select_printers() {
- var list = document.export_samba.EXPORT_NAME;
- var sel = document.export_samba.EXPORT_ALL.checked;
-
- for (i = 0; i < list.length; i ++) {
- list.options[i].selected = sel;
- }
-}
---></SCRIPT>
-
-<FORM METHOD="POST" ACTION="/admin/" NAME="export_samba">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba">
-
-<H2 CLASS="title">Drucker f&uuml;r Samba freigeben</H2>
-
-{error?<P>Kann Drucker nicht f&uuml;r Samba freigeben\:</P>
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-<P>Consult the <A HREF="/admin/log/error_log"
-TARGET="_blank">Fehlerprotokoll</A> Datei um mehr Informationen zu erhalten.</P>:
-<P>Diese Seite erlaubt es Ihnen Drucker f&uuml;r Samba bereitzustellen
-damit auf diese mittels Windows Clients &uuml;ber die Desktopsymbole
-<VAR>Netzwerk Nachbarn</VAR> oder <VAR>Netzwerkumgebung</VAR>
-zugegriffen werden kann. Sie müssen zuerst einen
-Windows PostScript Druckerteiber installieren wie diese in der Hilfe f&uuml;r <A
-HREF="/help/man-cupsaddsmb.html"
-TARGET="_blank">cupsaddsmb(8)</A> beschrieben ist.</P>}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Drucker:</TH>
-<TD>
-<SELECT NAME="EXPORT_NAME" SIZE="10" MULTIPLE>
-{[printer_name]<OPTION VALUE="{printer_name}"{export_all? SELECTED:{printer_export? SELECTED:}}>{printer_name}}
-</SELECT><BR>
-<INPUT TYPE="CHECKBOX" NAME="EXPORT_ALL"{export_all? CHECKED:}
-onChange="select_printers()"> Alle Drucker freigeben
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Samba Benutzername:</TH>
-<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (ben&ouml;tigt)</TD>
-</TR>
-<TR>
-<TH CLASS="label">Samba Passwort:</TH>
-<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (ben&ouml;tigt)</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Drucker f&uuml;r Samba freigeben"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/de/samba-exported.tmpl b/templates/de/samba-exported.tmpl
deleted file mode 100644
index cf5db889..00000000
--- a/templates/de/samba-exported.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P>Drucker wurden erfolgreich f&uuml;r Samba freigegeben.</P>
diff --git a/templates/de/search.tmpl b/templates/de/search.tmpl
deleted file mode 100644
index a462ae0b..00000000
--- a/templates/de/search.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<FORM ACTION="/{SECTION}/{?SEARCH_DEST}" METHOD="GET">
-{WHICH_JOBS?<INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{WHICH_JOBS}">:}
-{ORDER?<INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{ORDER}">:}
-
-<P ALIGN="CENTER"><B>Suche in
-{SEARCH_DEST?{SEARCH_DEST}:{SECTION=classes?Klassen:{SECTION=jobs?Auftr&auml;gen:Drucker}}}:</B>
-<INPUT TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER="" AUTOSAVE="org.cups.{SECTION}" RESULTS="20"> <INPUT
-TYPE="SUBMIT" VALUE="Suchen"> <INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Leeren"></P>
-
-</FORM>
diff --git a/templates/de/set-printer-options-header.tmpl b/templates/de/set-printer-options-header.tmpl
deleted file mode 100644
index 75f9f4ff..00000000
--- a/templates/de/set-printer-options-header.tmpl
+++ /dev/null
@@ -1,26 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Standardeinstellungen f&uuml;r {printer_name} festlegen</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{HAVE_AUTOCONFIGURE?<INPUT TYPE="SUBMIT" NAME="AUTOCONFIGURE" VALUE="Drucker nach Standardeinstellungen fragen">:}
-
-<SCRIPT TYPE="text/javascript"><!--
-function update_paramtable(option)
-{
- var cb = document.getElementById("select-" + option)
- var paramstable = document.getElementById(option + "-params");
- if (cb.value == "Custom")
- paramstable.style.display = "table";
- else
- paramstable.style.display = "none";
-}
---></SCRIPT>
-
-<H3 CLASS="title">{[group_id]
-<A HREF="#{group_id}">{group}</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</H3>
-
-<DIV CLASS="tabs">
diff --git a/templates/de/subscription-added.tmpl b/templates/de/subscription-added.tmpl
deleted file mode 100644
index fe4f1cd4..00000000
--- a/templates/de/subscription-added.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>Subskription {subscription_name} wurde erfolgreich hinzugef&uuml;gt.</P>
-
-</DIV>
diff --git a/templates/de/subscription-canceled.tmpl b/templates/de/subscription-canceled.tmpl
deleted file mode 100644
index 56f7a977..00000000
--- a/templates/de/subscription-canceled.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>Subskription #{notify_subscription_id} wurde gek&uuml;ndigt.</P>
-
-</DIV>
diff --git a/templates/de/test-page.tmpl b/templates/de/test-page.tmpl
deleted file mode 100644
index 82ce9716..00000000
--- a/templates/de/test-page.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Print Test Page On {printer_name}</H2>
-
-<P>Testseite gesendet; Auftrags ID ist <A HREF="/{SECTION}/{printer_name}">
-{printer_name}-{job_id}</A>.</P>
-
-</DIV>
diff --git a/templates/de/trailer.tmpl b/templates/de/trailer.tmpl
deleted file mode 100644
index 7a9e847e..00000000
--- a/templates/de/trailer.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS und das CUPS Logo sind
-eingetragene Warenzeichen der <A HREF="http://www.apple.com">Apple Inc.</A> CUPS
-ist urheberrechtlich gesch&uuml;tzt 2007-2012 von Apple Inc, alle Rechte vorbehalten.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/templates/de/users.tmpl b/templates/de/users.tmpl
deleted file mode 100644
index 0704e875..00000000
--- a/templates/de/users.tmpl
+++ /dev/null
@@ -1,30 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{OP}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-{IS_CLASS?<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="{IS_CLASS}">:}
-
-<H2 CLASS="title">Erlaubte Benutzer f&uuml;r {printer_name}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Benutzer:</TH>
-<TD>
-<INPUT TYPE='TEXT' NAME='users' SIZE='60' VALUE='{?requesting_user_name_allowed}{?requesting_user_name_denied}'>
-<BR>
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-allowed' {requesting_user_name_allowed?checked:}>Erlaube diesen Benutzern zu drucken
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-denied' {requesting_user_name_denied?checked:}>Verweigere diesen Benutzern zu drucken
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>
-<INPUT TYPE="SUBMIT" VALUE="Erlaubte Benutzer festlegen">
-</TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/error.tmpl b/templates/error.tmpl
index ff30a4c6..86235732 100644
--- a/templates/error.tmpl
+++ b/templates/error.tmpl
@@ -2,7 +2,7 @@
<H2 CLASS="title">{?title} {?printer_name} Error</H2>
-<P>{?message?{message}:Error:}</P>
+<P>{?message?{message}:Error}:</P>
<BLOCKQUOTE>{error}</BLOCKQUOTE>
diff --git a/templates/es/add-class.tmpl b/templates/es/add-class.tmpl
index f7e79fa8..6d61ebe3 100644
--- a/templates/es/add-class.tmpl
+++ b/templates/es/add-class.tmpl
@@ -37,4 +37,4 @@
</TABLE>
</FORM>
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/es/admin.tmpl b/templates/es/admin.tmpl
index 53e5d34d..cce1f147 100644
--- a/templates/es/admin.tmpl
+++ b/templates/es/admin.tmpl
@@ -45,28 +45,21 @@
<P><A HREF="/admin/">Avanzada <SMALL>&#x25bc;</SMALL></A><BR>
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Mostrar impresoras compartidas por otros sistemas<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protocolos\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Compartir impresoras conectadas a este sistema<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;N&uacute;mero m&aacute;ximo de clientes\:
<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protocolos\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Permitir la impresi&oacute;n desde Internet<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> Anunciar la interfaz web<BR>
<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Permitir administraci&oacute;n remota<BR>
{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Usar autentificaci&oacute;n Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Permitir a los usuarios cancelar cualquier trabajo (no s&oacute;lo los suyos propios)<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY" {?preserve_job_history}> Preservar el historial de trabajos<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;N&uacute;mero de trabajos\:
+<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOBS" {?preserve_jobs}> Preservar el historial de trabajos<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;N&uacute;mero m&aacute;ximo de trabajos (0 sin l&iacute;mite)\:
<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES" {?preserve_job_files}> Preservar los archivos de impresi&oacute;n de trabajos<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Retener metadatos\:
+<INPUT TYPE="TEXT" NAME="PRESERVE_JOB_HISTORY" VALUE="{?preserve_job_history}" SIZE="6"><BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Retener documentos\:
+<INPUT TYPE="TEXT" NAME="PRESERVE_JOB_FILES" VALUE="{?preserve_job_files}" SIZE="6"><BR>
<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Guardar informaci&oacute;n de depuraci&oacute;n para b&uacute;squeda de problemas<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tama&ntilde;o m&aacute;ximo del archivo de registro\:
<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
@@ -75,7 +68,6 @@
<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Avanzada <SMALL>&#x25b6;</SMALL></A><BR>
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Mostrar impresoras compartidas por otros sistemas<BR>
<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Compartir impresoras conectadas a este sistema<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Permitir la impresi&oacute;n desde Internet<BR>
<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Permitir administraci&oacute;n remota<BR>
diff --git a/templates/es/error.tmpl b/templates/es/error.tmpl
index 650bc326..f652ea2c 100644
--- a/templates/es/error.tmpl
+++ b/templates/es/error.tmpl
@@ -2,7 +2,7 @@
<H2 CLASS="title">Error en {?printer_name}: {?title}</H2>
-<P>{?message?{message}:Error:}</P>
+<P>{?message?{message}:Error}:</P>
<BLOCKQUOTE>{error}</BLOCKQUOTE>
diff --git a/templates/es/help-header.tmpl b/templates/es/help-header.tmpl
index d513ca31..3e7fef92 100644
--- a/templates/es/help-header.tmpl
+++ b/templates/es/help-header.tmpl
@@ -43,7 +43,7 @@ documentaci&oacute;n para visualizar la informaci&oacute;n de ayuda en l&iacute;
<P>Si es nuevo en CUPS, lea la p&aacute;gina "<a
href="/help/overview.html">Informaci&oacute;n general de CUPS</a>". Los usuarios veteranos
deber&iacute;an leer la p&aacute;gina "<a href="/help/whatsnew.html">Qu&eacute; hay de nuevo en CUPS
-1.4</a>".</P>
+1.6</a>".</P>
<P>La <A HREF="http://www.cups.org/">p&aacute;gina de inicio de CUPS</A> tambi&eacute;n
proporciona muchos recursos, incluyendo foros de discusi&oacute;n de usuarios, respuestas
diff --git a/templates/es/jobs.tmpl b/templates/es/jobs.tmpl
index e1bc195b..1187513c 100644
--- a/templates/es/jobs.tmpl
+++ b/templates/es/jobs.tmpl
@@ -6,7 +6,7 @@
<TBODY>
{[job_id]
<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
+<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}{?phone? ({phone}):}&nbsp;</TD>
<TD>{?job_name=?Desconocido:{job_name}}&nbsp;</TD>
<TD>{job_originating_user_name}&nbsp;</TD>
<TD>{job_k_octets}k&nbsp;</TD>
diff --git a/templates/eu/add-class.tmpl b/templates/eu/add-class.tmpl
deleted file mode 100644
index bd7436ae..00000000
--- a/templates/eu/add-class.tmpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Gehitu klasea</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Izena:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Inprimatu daitekeen edozein karaktere eduki dezake, "/", "#" eta zuriunea izan ezik)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Deskripzioa:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Gizakiek irakurtzeko deskripzioa, adibidez "HP LaserJet Duplexatzailearekin")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kokalekua:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Gizakiek irakurtzeko kokalekua, adibidez "Lab 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kideak:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Gehitu klasea"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/eu/add-printer.tmpl b/templates/eu/add-printer.tmpl
deleted file mode 100644
index d4bf8b25..00000000
--- a/templates/eu/add-printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Gehitu inprimagailua</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-{?current_make!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE" VALUE="{current_make}">:}
-{?current_make_and_model!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{current_make_and_model}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Izena:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?template_name}"><BR>
-<SMALL>(Inprimatu daitekeen edozein karaktere eduki dezake, "/", "#" eta zuriunea izan ezik)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Deskripzioa:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_INFO}"><BR>
-<SMALL>(izakiek irakurtzeko deskripzioa, adibidez "HP LaserJet Duplexatzailearekin")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kokalekua:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_LOCATION}"><BR>
-<SMALL>(izakiek irakurtzeko kokalekua, adibidez "Lab 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Konexioa:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Partekatzea:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Partekatu inprimagailu hau</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Jarraitu"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/eu/add-rss-subscription.tmpl b/templates/eu/add-rss-subscription.tmpl
deleted file mode 100644
index 86025a2d..00000000
--- a/templates/eu/add-rss-subscription.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription">
-
-<H2 CLASS="title">Gehitu RSS harpidetza</H2>
-
-<TABLE SUMMARY="RSS harpidetza gehitzeko inprimakia">
-<TR>
-<TH CLASS="label">Izena:</TH>
-<TD COLSPAN="5"><INPUT TYPE="TEXT" NAME="SUBSCRIPTION_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?SUBSCRIPTION_NAME}"><BR>
-<SMALL>(Inprimatu daitekeen edozein karaktere eduki dezake, "/", "#" eta zuriunea izan ezik)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Ilara:</TH>
-<TD COLSPAN="5"><SELECT NAME="PRINTER_URI" SIZE="10"><OPTION VALUE="#ALL#"{?PRINTER_URI=#ALL#? SELECTED:}>Ilara guztiak</OPTION>{[printer_name]<OPTION VALUE="{printer_uri_supported}"{?PRINTER_URI={printer_uri_supported}? SELECTED:}>{printer_name}</OPTION>}</SELECT></TD>
-</TR>
-<TR VALIGN="TOP">
-<TH CLASS="label">Gertaerak:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CREATED" {?EVENT_JOB_CREATED}>Lana sortuta<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_COMPLETED" {?EVENT_JOB_COMPLETED}>Lana burututa<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_STOPPED" {?EVENT_JOB_STOPPED}>Lana geldituta<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CONFIG_CHANGED" {?EVENT_JOB_CONFIG_CHANGED}>Lanaren aukerak aldatuta</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_STOPPED" {?EVENT_PRINTER_STOPPED}>Ilara geldituta<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_ADDED" {?EVENT_PRINTER_ADDED}>Ilara gehituta<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_MODIFIED" {?EVENT_PRINTER_MODIFIED}>Ilara aldatuta<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_DELETED" {?EVENT_PRINTER_DELETED}>Ilara ezabatuta</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STARTED" {?EVENT_SERVER_STARTED}>Zerbitzaria abiarazita<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STOPPED" {?EVENT_SERVER_STOPPED}>Zerbitzaria geldituta<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_RESTARTED" {?EVENT_SERVER_RESTARTED}>Zerbitzaria berrabiarazita<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_AUDIT" {?EVENT_SERVER_AUDIT}>Zerbitzariko segurtasun auditoretza</TD>
-</TR>
-<TR>
-<TH CLASS="label">Gehienezko gertaerak iturrian:</TH>
-<TD COLSPAN="5"><INPUT TYPE="NUMBER" NAME="MAX_EVENTS" SIZE="4" MAXLENGTH="4" VALUE="{MAX_EVENTS?{MAX_EVENTS}:20}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD COLSPAN="5"><INPUT TYPE="SUBMIT" VALUE="Gehitu RSS harpidetza"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/eu/admin.tmpl b/templates/eu/admin.tmpl
deleted file mode 100644
index 8b5ecddc..00000000
--- a/templates/eu/admin.tmpl
+++ /dev/null
@@ -1,110 +0,0 @@
-<TABLE CLASS="indent" SUMMARY="Administrazioko atazak">
-<TR><TD VALIGN="TOP">
-
-<H2 CLASS="title">Inprimagailuak</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="SUBMIT" VALUE="Gehitu inprimagailua"></FORM>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="find-new-printers"><INPUT TYPE="SUBMIT" VALUE="Bilatu inprimagailu berriak"></FORM>
-<FORM ACTION="/printers/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Kudeatu inprimagailuak"></FORM>
-{have_samba?<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba"><INPUT TYPE="SUBMIT" VALUE="Esportatu inprimagailuak Samba-ra"></FORM>:}
-</P>
-
-<H2 CLASS="title">Klaseak</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-class"><INPUT TYPE="SUBMIT" VALUE="Gehitu klasea"></FORM>
-<FORM ACTION="/classes/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Kudeatu klaseak"></FORM>
-</P>
-
-<H2 CLASS="title">Lanak</H2>
-
-<P>
-<FORM ACTION="/jobs/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Kudeatu lanak"></FORM>
-</P>
-
-</TD><TD>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD><TD VALIGN="TOP">
-
-<H2 CLASS="title">Zerbitzaria</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server"><INPUT TYPE="SUBMIT" VALUE="Editatu konfigurazioko fitxategia"></FORM>
-<FORM ACTION="/admin/log/access_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Ikusi atzipenen egunkaria"></FORM>
-<FORM ACTION="/admin/log/error_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Ikusi erroreen egunkaria"></FORM>
-<FORM ACTION="/admin/log/page_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Ikusi orrialdeen egunkaria"></FORM>
-</P>
-
-{SETTINGS_ERROR?<P>{SETTINGS_MESSAGE}</P>
-<BLOCKQUOTE>{SETTINGS_ERROR}</BLOCKQUOTE>:
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-
-{ADVANCEDSETTINGS?<P><B>Zerbitzariaren ezarpenak\:</B></P>
-
-<P><A HREF="/admin/">Aurreratua <SMALL>&#x25bc;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Erakutsi beste sistemekin partekatutako inprimagailuak<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protokoloak\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Partekatu sistema honekin konektatutako inprimagailuak<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gehienezko bezeroak\:
-<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protokoloak\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Baimendu Internetetik inprimatzea<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> Jakinarazi web interfazea<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Baimendu urruneko administrazioa<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Erabili Kerberos autentifikazioa (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">MEG</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Baimendu erabiltzaileek edozein lan bertan uztea (beraien lanetaz gain)<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY" {?preserve_job_history}> Mantendu lanen historia<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lan kopurua\:
-<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES" {?preserve_job_files}> Mantendu lanen inprimatzeko fitxategiak<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Gorde arazketako informazioa arazoak konpontzeko<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Egunkari fitxategiaren gehienezko tamaina\:
-<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
-
-:<P><B>Zerbitzariaren ezarpenak:</B></P>
-
-<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Aurreratua <SMALL>&#x25b6;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Erakutsi beste sistemekin partekatutako inprimagailuak<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Partekatu sistema honekin konektatutako inprimagailuak<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Baimendu Internetetik inprimatzea<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Baimendu urruneko administrazioa<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Erabili Kerberos autentifikazioa (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">MEG</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Baimendu erabiltzaileek edozein lan bertan uztea (beraien lanetaz gain)<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Gorde arazketako informazioa arazoak konpontzeko</P>
-
-}
-<P><INPUT TYPE="SUBMIT" NAME="CHANGESETTINGS" VALUE="Aldatu ezarpenak"></P>
-
-</FORM>}
-
-</TD></TR>
-</TABLE>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">RSS harpidetzak</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Gehitu RSS harpidetza"></FORM>
-</P>
-
-</DIV>
-
-{notify_subscription_id?<TABLE CLASS="list" SUMMARY="RSS harpidetzak">
-<THEAD><TR><TH>Izena</TH><TH>Gertaerak</TH><TH>Ilararen izena</TH></TR></THEAD>
-<TBODY>{[notify_subscription_id]
-<TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Utzi RSS harpidetza"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Ilara guztiak}</TD></TR>}
-</TBODY>
-</TABLE>:}
diff --git a/templates/eu/choose-device.tmpl b/templates/eu/choose-device.tmpl
deleted file mode 100644
index 36b7b86b..00000000
--- a/templates/eu/choose-device.tmpl
+++ /dev/null
@@ -1,54 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Aldatu {printer_name}:Gehitu inprimagailua}</H2>
-
-{CUPS_GET_DEVICES_DONE?:<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Busy Indicator"> Inprimagailuak bilatzen...</P>}
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-{op=add-printer?:<TR>
-<TH CLASS="label">Uneko konexioa:</TH>
-<TD><INPUT TYPE="RADIO" NAME="DEVICE_URI" VALUE="{current_device_uri}" CHECKED>
-{current_device_uri}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Inprimagailu lokalak:</TH>
-<TD>
-{[device_uri]{device_class!network?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}}
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Aurkitutako sareko inprimagailuak:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}:}}
-</TD>
-</TR>
-<TR>
-<TR>
-<TH CLASS="label">Beste sareko inprimagailuak:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?:<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-}:}}
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Jarraitu"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/eu/choose-make.tmpl b/templates/eu/choose-make.tmpl
deleted file mode 100644
index 9fb38976..00000000
--- a/templates/eu/choose-make.tmpl
+++ /dev/null
@@ -1,64 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Aldatu {printer_name}:Gehitu inprimagailua}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Izena:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Deskripzioa:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Kokalekua:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Konexioa:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Partekatzea:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Ez:{?printer_is_shared=0?Ez:}} partekatu inprimagailu hau</TD>
-</TR>
-<TR>
-<TH CLASS="label">Marka:</TH>
-<TD>
-<SELECT NAME="PPD_MAKE" SIZE="10">
-{[ppd_make]<OPTION VALUE="{ppd_make}" {?current_make={ppd_make}?SELECTED:}>{ppd_make}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Jarraitu"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR>
-<TH CLASS="label">edo eman PPD fitxategia:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Gehitu inprimagailua:Aldatu inprimagailua}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/eu/choose-model.tmpl b/templates/eu/choose-model.tmpl
deleted file mode 100644
index 5824932b..00000000
--- a/templates/eu/choose-model.tmpl
+++ /dev/null
@@ -1,60 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Aldatu {printer_name}:Gehitu inprimagailua}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Izena:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Deskripzioa:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Kokalekua:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Konexioa:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Partekatzea:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Ez:{?printer_is_shared=0?Ez:}} partekatu inprimagailu hau</TD>
-</TR>
-<TR>
-<TH CLASS="label">Marka:</TH>
-<TD>{PPD_MAKE} <INPUT TYPE="SUBMIT" NAME="SELECT_MAKE" VALUE="Hautatu beste marka/hornitzailea"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Modeloa:</TH>
-<TD>
-<SELECT NAME="PPD_NAME" SIZE="10">
-{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Uneko kontrolatzailea - {current_make_and_model}</OPTION>:}
-{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
-}</SELECT>
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">edo eman PPD fitxategia:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Gehitu inprimagailua:Aldatu inprimagailua}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/eu/choose-serial.tmpl b/templates/eu/choose-serial.tmpl
deleted file mode 100644
index a4dbba2e..00000000
--- a/templates/eu/choose-serial.tmpl
+++ /dev/null
@@ -1,52 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Aldatu {printer_name}:Gehitu inprimagailua}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Konexioa:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Baudio-emaria:</TH>
-<TD><SELECT NAME="BAUDRATE">
-{[baudrates]<OPTION {?baudrate={baudrates}?SELECTED:}>{baudrates}}
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Paritatea:</TH>
-<TD><SELECT NAME="PARITY">
-<OPTION VALUE="none" {?parity=none?SELECTED:}>Bat ere ez
-<OPTION VALUE="even" {?parity=even?SELECTED:}>Bikoitia
-<OPTION VALUE="odd" {?parity=odd?SELECTED:}>Bakoitia
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Datuen bit-ak:</TH>
-<TD><SELECT NAME="BITS">
-<OPTION {?bits=8?SELECTED:}>8
-<OPTION {?bits=7?SELECTED:}>7
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Fluxu-kontrola:</TH>
-<TD><SELECT NAME="FLOW">
-<OPTION VALUE="none" {?flow=none?SELECTED:}>Bat ere ez
-<OPTION VALUE="soft" {?flow=soft?SELECTED:}>XON/XOFF (Ssftwarea)
-<OPTION VALUE="hard" {?flow=hard?SELECTED:}>RTS/CTS (hardwarea)
-<OPTION VALUE="dtrdsr" {?flow=dtrdsr?SELECTED:}>DTR/DSR (hardwarea)
-</SELECT></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Jarraitu"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/eu/choose-uri.tmpl b/templates/eu/choose-uri.tmpl
deleted file mode 100644
index 4b1fd677..00000000
--- a/templates/eu/choose-uri.tmpl
+++ /dev/null
@@ -1,43 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Aldatu {printer_name}:Gehitu inprimagailua}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{?current_make_and_model}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Konexioa:</TH>
-<TD><INPUT TYPE="URL" SIZE="60" MAXLENGTH="1023" NAME="DEVICE_URI" VALUE="{current_device_uri?{current_device_uri}:{device_uri}}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>Adibideak:
-<PRE>
- http://ostalari_izena:631/ipp/
- http://ostalari_izena:631/ipp/ataka1
-
- ipp://ostalari_izena/ipp/
- ipp://ostalari_izena/ipp/ataka1
-
- lpd://ostalari_izena/ilara
-
- socket://ostalari_izena
- socket://ostalari_izena:9100
-</PRE>
-
-<P>Ikusi <A HREF="/help/network.html" TARGET="_blank">"Sareko inprimagailuak"</A> URI zuzena erabiltzeko inprimagailuarekin.</P>
-
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Jarraitu"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/eu/class-added.tmpl b/templates/eu/class-added.tmpl
deleted file mode 100644
index e0dfa891..00000000
--- a/templates/eu/class-added.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Gehitu klasea</H2>
-
-<P><A HREF="/classes/{printer_name}">{printer_name}</A> klasea ongi gehitu da.
-
-</DIV>
diff --git a/templates/eu/class-confirm.tmpl b/templates/eu/class-confirm.tmpl
deleted file mode 100644
index f4a1a6f4..00000000
--- a/templates/eu/class-confirm.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ezabatu {printer_name} klasea</H2>
-
-<P><B>Abisua:</B> ziur zaude {printer_name} klasea ezabatu nahi duzula?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="op" VALUE="delete-class"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Ezabatu klasea"></FORM></P>
-
-</DIV>
diff --git a/templates/eu/class-deleted.tmpl b/templates/eu/class-deleted.tmpl
deleted file mode 100644
index 5e39282a..00000000
--- a/templates/eu/class-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ezabatu {printer_name} klasea</H2>
-
-<P>{printer_name} klasea ongi ezabatu da.
-
-</DIV>
diff --git a/templates/eu/class-jobs-header.tmpl b/templates/eu/class-jobs-header.tmpl
deleted file mode 100644
index 89144751..00000000
--- a/templates/eu/class-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Lanak</H3>
-</DIV>
diff --git a/templates/eu/class-modified.tmpl b/templates/eu/class-modified.tmpl
deleted file mode 100644
index 9397bcc8..00000000
--- a/templates/eu/class-modified.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Aldatu {printer_name} klasea</H2>
-
-<P><A HREF="/classes/{printer_name}">{printer_name}</A> klasea ongi aldatu da.
-
-</DIV>
diff --git a/templates/eu/class.tmpl b/templates/eu/class.tmpl
deleted file mode 100644
index b3c68ca8..00000000
--- a/templates/eu/class.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<DIV CLASS="indent">
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Inaktiboa:{printer_state=4?Prozesatzen:Pausatuta}},
-{printer_is_accepting_jobs=0?Lanak ukatzen:Lanak onartzen},
-{default_name={printer_name}?, zerbitzariaren lehenetsiak:} partekatuta {server_is_sharing_printers=0?ez:{printer_is_shared=0?ez:}} daude)</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Mantenimendua</OPTION>
-<OPTION VALUE="print-test-page">Inprimatu probako orrialdea</OPTION>
-{printer_state=5?<OPTION VALUE="start-class">Jarraitu klasea</OPTION>:<OPTION VALUE="stop-class">Pausatu klasea</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Onartu lanak</OPTION>:<OPTION VALUE="reject-jobs">Ukatu lanak</OPTION>}
-<OPTION VALUE="move-jobs">Aldatu lan guztiak lekuz</OPTION>
-<OPTION VALUE="purge-jobs">Bertan behera utzi lan guztiak</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="1">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administrazioa</OPTION>
-<OPTION VALUE="modify-class">Aldatu klasea</OPTION>
-<OPTION VALUE="delete-class">Ezabatu klasea</OPTION>
-<OPTION VALUE="set-class-options">Ezarri aukera lehenetsiak</OPTION>
-<OPTION VALUE="set-as-default">Ezarri zerbitzari lehenetsi gisa</OPTION>
-<OPTION VALUE="set-allowed-users">Ezarri baimendutako erabiltzaileak</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Deskripzioa:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Kokalekua:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Kideak:</TH><TD>{?member_uris=?Bat ere ez:{member_uris}}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Aukera lehenetsiak:</TH><TD>job-sheets={job_sheets_default}
-papera={media_default?{media_default}:ezezaguna}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/eu/classes-header.tmpl b/templates/eu/classes-header.tmpl
deleted file mode 100644
index a8e24b4b..00000000
--- a/templates/eu/classes-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Klaserik ez:{#printer_name}/{total} klase erakusten}.</P>
diff --git a/templates/eu/classes.tmpl b/templates/eu/classes.tmpl
deleted file mode 100644
index 4cab5992..00000000
--- a/templates/eu/classes.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Klaseen zerrenda">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Ilararen izena <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Ilararen izena <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Deskripzioa</TH><TH>Kokalekua</TH><TH>Kideak</TH><TH>Egoera</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?Bat ere ez:{member_uris}}</TD><TD>{printer_state=3?Inaktibo:{printer_state=4?Prozesatzen:Pausatuta}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/eu/command.tmpl b/templates/eu/command.tmpl
deleted file mode 100644
index 0157b34b..00000000
--- a/templates/eu/command.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{title} {printer_name} inprimagailuan</H2>
-
-<P>{job_state>5?:<IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16"
-ALIGN="ABSMIDDLE" ALT="Lanpetuta egoeraren adierazlea"> }Inprimagailuaren lanaren komandoa
-{job_state=3?zain:{job_state=4?eutsita:
-{job_state=5?processing:{job_state=6?geldituta:
-{job_state=7?bertan behera utzita:{job_state=8?abortatuta:burututa}}}}}}{job_state=9?:{job_printer_state_message?,
-<EM>"{job_printer_state_message}"</EM>:}}</P>
-
-</DIV>
diff --git a/templates/eu/edit-config.tmpl b/templates/eu/edit-config.tmpl
deleted file mode 100644
index 4b2ba7bc..00000000
--- a/templates/eu/edit-config.tmpl
+++ /dev/null
@@ -1,24 +0,0 @@
-<SCRIPT TYPE="text/javascript">
-function reset_config()
-{
- document.cups.CUPSDCONF.value = "{?cupsdconf_default}";
-}
-</SCRIPT>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Editatu konfigurazioko fitxategia</H2>
-
-<FORM NAME="cups" METHOD="POST" ACTION="/admin/">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-
-<TEXTAREA NAME="CUPSDCONF" COLS="80" ROWS="25">{CUPSDCONF}</TEXTAREA>
-
-<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="Gorde aldaketak">
-<INPUT TYPE="BUTTON" VALUE="Erabili konfigurazioko fitxategi lehenetsia"
-onClick="reset_config();"></P>
-
-</FORM>
-
-</DIV>
diff --git a/templates/eu/error-op.tmpl b/templates/eu/error-op.tmpl
deleted file mode 100644
index 605cc63f..00000000
--- a/templates/eu/error-op.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?printer_name} errorea: {?title}</H2>
-
-<P>Errorea:</P>
-
-<BLOCKQUOTE>"{op}" eragiketa ezezaguna.</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/eu/error.tmpl b/templates/eu/error.tmpl
deleted file mode 100644
index 76dc6a0a..00000000
--- a/templates/eu/error.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?printer_name} errorea: {?title}</H2>
-
-<P>{?message?{message}:Errorea:}</P>
-
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/eu/header.tmpl.in b/templates/eu/header.tmpl.in
deleted file mode 100644
index 19a04e04..00000000
--- a/templates/eu/header.tmpl.in
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{title} - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
- {refresh_page?<META HTTP-EQUIV="Refresh" CONTENT="{refresh_page}">:}
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;Hasiera&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=admin?:un}sel"><A HREF="/admin">&nbsp;&nbsp;Administrazioa&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=classes?:un}sel"><A HREF="/classes/">&nbsp;&nbsp;Klaseak&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=help?:un}sel"><A HREF="/help/">&nbsp;&nbsp;Lineako&nbsp;laguntza&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=jobs?:un}sel"><A HREF="/jobs/">&nbsp;&nbsp;Lanak&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=printers?:un}sel"><A HREF="/printers/">&nbsp;&nbsp;Inprimagailuak&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Bilatu laguntzan"
-VALUE="{SECTION=help?{?QUERY}:}" AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-<TR><TD COLSPAN="9">&nbsp;</TD></TR>
-</TABLE>
diff --git a/templates/eu/help-header.tmpl b/templates/eu/help-header.tmpl
deleted file mode 100644
index c87c7674..00000000
--- a/templates/eu/help-header.tmpl
+++ /dev/null
@@ -1,49 +0,0 @@
-<DIV CLASS="indent">
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET">
-{TOPIC?<INPUT TYPE="HIDDEN" NAME="TOPIC" VALUE="{TOPIC}">:}
-
-<P ALIGN="CENTER"><B>Bilatu
-{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:dokumentu guztietan}}:</B> <INPUT
-TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER=""
-AUTOSAVE="org.cups.help" RESULTS="20">
-<INPUT TYPE="SUBMIT" NAME="SEARCH" VALUE="Bilatu">
-<INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Garbitu"></P>
-
-</FORM>
-
-<!-- Bookmarks -->
-<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="Edukia">
-<TR><TD>
-
-<H3 CLASS="title">Lineako laguntzaren dokumentuak</H3>
-
-<P CLASS="l0"><A HREF="/help/{QUERY??QUERY={QUERY}:}">Dokumentu guztiak</A></P>
-<HR>
-
-{[BMTEXT]<P CLASS="l{BMINDENT}"><A HREF="{BMLINK}">{BMTEXT}</A></P>
-}
-</TD></TR>
-</TABLE></DIV>
-
-{QUERY?<P>Bilaketaren emaitzak {HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:dokumentu guztietan}}\:</P>
-{QTEXT?<UL>
-{[QTEXT]<LI><A HREF="{QLINK}">{QTEXT}</A>{QPTEXT? (in <I><A HREF="{QPLINK}">{QPTEXT}</A></I>):}</LI>}
-{QTEXT?</UL>:}
-:<P>Ez da bat datorrenik aurkitu.</P>}
-<HR NOSHADE>:}
-{HELPTITLE?<H1>{HELPTITLE}</H1>
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="PRINTABLE" VALUE="YES"><INPUT TYPE="SUBMIT" VALUE="Ikusi bertsio inprimagarria"></FORM>:
-
-<H1>Lineako laguntza</H1>
-
-<P>Hau CUPSen lineako laguntzaren interfazea da. Sartu bilatzeko hitzak gainean
-edo klik egin dokumentazioaren edozein esteketan lineako laguntzaren informazioa bistaratzeko.</P>
-
-<P>CUPSekin hasiberria bazara, irakurri "<a
-href="/help/overview.html">CUPSen gainbegiraketa</a>" orrialdea. Erabiltzaile adituek
- "<a href="/help/whatsnew.html">CUPS 1.4 bertsioko berrikuntzak</a>" orrialdea irakurri beharko lukete.</P>
-
-<P><A HREF="http://www.cups.org/">CUPSen webgune nagusia</A>k
-hainbat baliabide eskaintzen ditu: erabiltzaileek eztabaidatzeko foruak, maiz egindako
-galderei (MEG edo FAQ) erantzunak, eta akatsei buruz berri emateko edo eginbideak eskatzeko
-inprimakia.</P>}
diff --git a/templates/eu/help-printable.tmpl b/templates/eu/help-printable.tmpl
deleted file mode 100644
index 2463c163..00000000
--- a/templates/eu/help-printable.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{HELPTITLE}</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups-printable.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
diff --git a/templates/eu/help-trailer.tmpl b/templates/eu/help-trailer.tmpl
deleted file mode 100644
index 4c1ebed8..00000000
--- a/templates/eu/help-trailer.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-</DIV>
diff --git a/templates/eu/job-cancel.tmpl b/templates/eu/job-cancel.tmpl
deleted file mode 100644
index ec432ebb..00000000
--- a/templates/eu/job-cancel.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Utzi {job_id} lana</H2>
-
-<P><A HREF="{job_printer_uri}">{job_id} lana</A> bertan behera utzi da.
-
-</DIV>
diff --git a/templates/eu/job-hold.tmpl b/templates/eu/job-hold.tmpl
deleted file mode 100644
index 177ac160..00000000
--- a/templates/eu/job-hold.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Eutsi {job_id} lana</H2>
-
-<P><A HREF="{job_printer_uri}">{job_id} lana</A> inprimatzetik eutsi da.
-
-</DIV>
diff --git a/templates/eu/job-move.tmpl b/templates/eu/job-move.tmpl
deleted file mode 100644
index f337353b..00000000
--- a/templates/eu/job-move.tmpl
+++ /dev/null
@@ -1,27 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/{SECTION}/{job_id?:{printer_name}}">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{job_id?<INPUT TYPE="HIDDEN" NAME="JOB_ID" VALUE="{job_id}">:}
-
-<H2 CLASS="title">{job_id?Aldatu {job_id} lana lekuz:Aldatu lan guztiak lekuz}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Helburu berria:</TH>
-<TD>
-<SELECT NAME="JOB_PRINTER_URI" SIZE="10">
-{[job_printer_uri]<OPTION VALUE="{job_printer_uri}">{job_printer_name}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{job_id?Aldatu lana lekuz:Aldatu lanak lekuz}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-
-</DIV>
diff --git a/templates/eu/job-moved.tmpl b/templates/eu/job-moved.tmpl
deleted file mode 100644
index 47f31caf..00000000
--- a/templates/eu/job-moved.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id?Aldatu {job_id} lana lekuz:Aldatu lan guztiak lekuz}</H2>
-
-<P>{job_id?<A HREF="/jobs/{job_id}">{job_id} lana</A> hona eraman da:Lan guztiak hona eraman dira}:
-<A HREF="/{is_class?classes:printers}/{job_printer_name}">{job_printer_name}</A>.</P>
-
-</DIV>
diff --git a/templates/eu/job-release.tmpl b/templates/eu/job-release.tmpl
deleted file mode 100644
index 40f7f2b3..00000000
--- a/templates/eu/job-release.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Askatu {job_id} lana</H2>
-
-<P><A HREF="{job_printer_uri}">{job_id} lana</A> inprimatzetik askatu egin da.
-
-</DIV>
diff --git a/templates/eu/job-restart.tmpl b/templates/eu/job-restart.tmpl
deleted file mode 100644
index 5868c50d..00000000
--- a/templates/eu/job-restart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Inprimatu berriro {job_id} lana</H2>
-
-<P><A HREF="{job_printer_uri}">{job_id} lana</A> berriro hasi da.
-
-</DIV>
diff --git a/templates/eu/jobs-header.tmpl b/templates/eu/jobs-header.tmpl
deleted file mode 100644
index 664f0ebf..00000000
--- a/templates/eu/jobs-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">{?which_jobs=?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Erakutsi lan aktiboak"></FORM>}
-{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="Erakutsi burututako lanak"></FORM>}
-{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="Erakutsi lan guztiak"></FORM>}</DIV>
-
-<P ALIGN="CENTER">{total=0?Lanik ez: {#job_id}/{total} lan {?which_jobs=?aktiboak:{which_jobs=all?:burututakoak}} erakusten}.</P>
diff --git a/templates/eu/jobs.tmpl b/templates/eu/jobs.tmpl
deleted file mode 100644
index 3071f6d4..00000000
--- a/templates/eu/jobs.tmpl
+++ /dev/null
@@ -1,37 +0,0 @@
-{#job_id=0?:
-<TABLE CLASS="list" SUMMARY="Lanen zerrenda">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> ID <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> ID <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Izena</TH><TH>Erabiltzailea</TH><TH>Tamaina</TH><TH>Orrialdeak</TH><TH>Egoera</TH><TH>Kontrola</TH></TR>
-</THEAD>
-<TBODY>
-{[job_id]
-<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
-<TD>{?job_name=?Ezezaguna:{job_name}}&nbsp;</TD>
-<TD>{job_originating_user_name}&nbsp;</TD>
-<TD>{job_k_octets}k&nbsp;</TD>
-<TD>{job_media_sheets_completed=0?Ezezaguna:{?job_media_sheets_completed}}&nbsp;</TD>
-<TD>{job_state=3?noiztik zain<BR>{time_at_creation}:{job_state=4?noiztik eutsita<BR>{time_at_creation}:
-{job_state=5?noiztik prozesatzen<BR>{time_at_processing}:{job_state=6?geldituta:
-{job_state=7?bertan behera utzita<BR>{time_at_completed}:{job_state=8?abortatuta:burututa<BR>{time_at_completed}}}}}}}&nbsp;{job_printer_state_message?<BR>
-<EM>"{job_printer_state_message}"</EM>:}</TD>
-<TD>
-{job_preserved>0?{job_state>5?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Inprimatu berriro lana"></FORM>:}:}
-{job_state=4?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="release-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Askatu lana"></FORM>:}
-{job_state=3?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="hold-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Eutsi lana"></FORM>:}
-{job_state<7?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Utzi lana"></FORM>
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="move-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="SUBMIT" VALUE="Aldatu lana lekuz"></FORM>:}
-&nbsp;</TD>
-</TR>
-}
-</TBODY>
-</TABLE>
-}
diff --git a/templates/eu/list-available-printers.tmpl b/templates/eu/list-available-printers.tmpl
deleted file mode 100644
index c8a397f3..00000000
--- a/templates/eu/list-available-printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Inprimagailu erabilgarriak</H2>
-
-{#device_uri=0?<P>Ez da inprimagailurik aurkitu.</P>
-:<UL>{[device_uri]
-<LI><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="HIDDEN" NAME="TEMPLATE_NAME" VALUE="{template_name}"><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="Local Printer"><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{device_make_and_model}"><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}"><INPUT TYPE="SUBMIT" VALUE="Gehitu inprimagailu hau"></FORM>
-{device_make_and_model} ({device_info})</LI>
-}</UL>}
-
-</DIV>
diff --git a/templates/eu/modify-class.tmpl b/templates/eu/modify-class.tmpl
deleted file mode 100644
index bce65034..00000000
--- a/templates/eu/modify-class.tmpl
+++ /dev/null
@@ -1,34 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Aldatu {printer_name} klasea</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Deskripzioa:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kokalekua:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kideak:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Aldatu klasea"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/eu/modify-printer.tmpl b/templates/eu/modify-printer.tmpl
deleted file mode 100644
index 33a350d2..00000000
--- a/templates/eu/modify-printer.tmpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Aldatu {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Deskripzioa:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Gizakiek irakurtzeko deskripzioa, adibidez "HP LaserJet duplexatzailearekin")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kokalekua:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Gizakiek irakurtzeko kokalekua, adibidez "Lab 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Konexioa:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Partekatzea:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Partekatu inprimagailu hau</TD>
-</TR>
-<TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Jarraitu"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/eu/norestart.tmpl b/templates/eu/norestart.tmpl
deleted file mode 100644
index 5ed12b6b..00000000
--- a/templates/eu/norestart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Aldatu ezarpenak</H2>
-
-<P>Zerbitzaria ez da berrabiarazi konfigurazioaren aldaketarik ez delako egin...</P>
-
-</DIV>
diff --git a/templates/eu/option-boolean.tmpl b/templates/eu/option-boolean.tmpl
deleted file mode 100644
index e832ee10..00000000
--- a/templates/eu/option-boolean.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD>
-{[choices]<INPUT TYPE="RADIO" NAME="{keyword-1}" {choices={defchoice-1}?CHECKED:} VALUE="{choices}">{text}}
-</TD>
-</TR>
diff --git a/templates/eu/option-conflict.tmpl b/templates/eu/option-conflict.tmpl
deleted file mode 100644
index 617858cc..00000000
--- a/templates/eu/option-conflict.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<P><B>Errorea:</B> honako aukerak gatazkan daude:</P>
-
-<UL>
-{[ckeyword]<LI><A HREF="#{ckeyword}">{ckeytext}</A>: {cchoice}</LI>
-}</UL>
-
-<P>Aldatu aukera bat edo gehiago gatazkak ebazteko.</P>
diff --git a/templates/eu/option-header.tmpl b/templates/eu/option-header.tmpl
deleted file mode 100644
index 464726a5..00000000
--- a/templates/eu/option-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="tab" ID="{group_id}">
-
-<H3 ALIGN="CENTER">{group}</H3>
-
-<TABLE WIDTH="100%">
diff --git a/templates/eu/option-pickmany.tmpl b/templates/eu/option-pickmany.tmpl
deleted file mode 100644
index 0da75e5d..00000000
--- a/templates/eu/option-pickmany.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" MULTIPLE SIZE="10">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT></TD>
-</TR>
diff --git a/templates/eu/option-trailer.tmpl b/templates/eu/option-trailer.tmpl
deleted file mode 100644
index d80296a5..00000000
--- a/templates/eu/option-trailer.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-</TABLE>
-
-<P ALIGN="CENTER"><INPUT TYPE="SUBMIT" VALUE="Ezarri aukera lehenetsiak"></P>
-
-</DIV>
diff --git a/templates/eu/pager.tmpl b/templates/eu/pager.tmpl
deleted file mode 100644
index 901b0ff0..00000000
--- a/templates/eu/pager.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TABLE CLASS="inset" SUMMARY="Orrikatzeko barra">
-<TR>
- <TD WIDTH="50%">{PREV?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{PREV}"><INPUT TYPE="SUBMIT" VALUE="&#x25c0; Erakutsi aurrekoak"></FORM>:&nbsp;}</TD>
- <TD WIDTH="50%" ALIGN="RIGHT">{NEXT?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{NEXT}"><INPUT TYPE="SUBMIT" VALUE="Erakutsi hurrengoa &#x25b6;"></FORM>:&nbsp;}</TD>
-</TR>
-</TABLE>
diff --git a/templates/eu/printer-accept.tmpl b/templates/eu/printer-accept.tmpl
deleted file mode 100644
index 5bc9da68..00000000
--- a/templates/eu/printer-accept.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Onartu lanak {printer_name} {is_class?klasean:inprimagailuan} </H2>
-
-<P><A HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A> {is_class?klasea:inprimagailua}
-lanak onartzen ari da orain.</P>
-
-</DIV>
diff --git a/templates/eu/printer-added.tmpl b/templates/eu/printer-added.tmpl
deleted file mode 100644
index 17e9c02b..00000000
--- a/templates/eu/printer-added.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Gehitu inprimagailua</H2>
-
-<P><A HREF="/printers/{printer_name}">{printer_name}</A> inprimagailua ongi gehitu da.
-
-</DIV>
diff --git a/templates/eu/printer-configured.tmpl b/templates/eu/printer-configured.tmpl
deleted file mode 100644
index 66e6f41d..00000000
--- a/templates/eu/printer-configured.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ezarri {printer_name}(r)en aukera lehenetsiak</H2>
-
-<P>{OP=set-class-options?<A HREF="/classes/{printer_name}">{printer_name} klasea:<A HREF="/printers/{printer_name}">{printer_name} inprimagailua}</A>ren
-aukera lehenetsiak ongi ezarri dira.
-
-</DIV>
diff --git a/templates/eu/printer-confirm.tmpl b/templates/eu/printer-confirm.tmpl
deleted file mode 100644
index d72d2401..00000000
--- a/templates/eu/printer-confirm.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ezabatu {printer_name} inprimagailua</H2>
-
-<P><B>Abisua:</B> ziur zaude {printer_name} inprimagailua ezabatzea nahi duzula?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="delete-printer"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Ezabatu inprimagailua"></FORM></P>
-
-</DIV>
diff --git a/templates/eu/printer-default.tmpl b/templates/eu/printer-default.tmpl
deleted file mode 100644
index 0834a3ab..00000000
--- a/templates/eu/printer-default.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ezarri {printer_name} {is_class?klasea:inprimagailua} lehenetsi gisa</H2>
-
-<P><A HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?klasea:inprimagailua} zerbitzarian inprimagailu lehenetsi gisa ezarri da.</P>
-
-<BLOCKQUOTE><B>Oharra:</B> <TT>lpoptions</TT> komandoaren bidez ezarritako edozein
-erabiltzailek ezarpen lehenetsi hau gainidatz dezake.</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/eu/printer-deleted.tmpl b/templates/eu/printer-deleted.tmpl
deleted file mode 100644
index b2b72075..00000000
--- a/templates/eu/printer-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ezabatu {printer_name} inprimagailua</H2>
-
-<P>{printer_name} inprimagailua ongi ezabatu da.
-
-</DIV>
diff --git a/templates/eu/printer-jobs-header.tmpl b/templates/eu/printer-jobs-header.tmpl
deleted file mode 100644
index 89144751..00000000
--- a/templates/eu/printer-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Lanak</H3>
-</DIV>
diff --git a/templates/eu/printer-modified.tmpl b/templates/eu/printer-modified.tmpl
deleted file mode 100644
index 80aa65be..00000000
--- a/templates/eu/printer-modified.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Aldatu {printer_name} inprimagailua</H2>
-
-<P><A HREF="/printers/{printer_name}">{printer_name}</A> inprimagailua
-ongi aldatu da.
-
-</DIV>
diff --git a/templates/eu/printer-purge.tmpl b/templates/eu/printer-purge.tmpl
deleted file mode 100644
index 0977c8b0..00000000
--- a/templates/eu/printer-purge.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Kendu lanak {printer_name} {is_class?klasetik:inprimagailutik}</H2>
-
-<P><A HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?klaseko:inprimagailuko} lan guztiak kendu dira.</P>
-
-</DIV>
diff --git a/templates/eu/printer-reject.tmpl b/templates/eu/printer-reject.tmpl
deleted file mode 100644
index 178ef8b8..00000000
--- a/templates/eu/printer-reject.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ukatu lanak {printer_name} {is_class?klasean:inprimagailuan} </H2>
-
-<P><A HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?klaseak:inprimagailuak} ez du lan gehiago onartuko.</P>
-
-</DIV>
diff --git a/templates/eu/printer-start.tmpl b/templates/eu/printer-start.tmpl
deleted file mode 100644
index 4403344e..00000000
--- a/templates/eu/printer-start.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Jarraitu {printer_name} {is_class?klasea:inprimagailua}</H2>
-
-<P><A HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?klaseak:inprimagailuak} jarraitu egin du.</P>
-
-</DIV>
diff --git a/templates/eu/printer-stop.tmpl b/templates/eu/printer-stop.tmpl
deleted file mode 100644
index 2338e87b..00000000
--- a/templates/eu/printer-stop.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Pausatu {printer_name} {is_class?klasea:inprimagailua}</H2>
-
-<P><A HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?klasea:inprimagailua} pausatu egin da.</P>
-
-</DIV>
diff --git a/templates/eu/printer.tmpl b/templates/eu/printer.tmpl
deleted file mode 100644
index ac984ebd..00000000
--- a/templates/eu/printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?inaktibo:{printer_state=4?prozesatzen:pausatuta}},
-{printer_is_accepting_jobs=0?lanak ukatzen:lanak onartzen},
-{default_name={printer_name}?, Zerbitzariaren lehenetsia:} partekatuta {server_is_sharing_printers=0?ez:{printer_is_shared=0?ez:}} dago)</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Mantenimendua</OPTION>
-<OPTION VALUE="print-test-page">Inprimatu probako orrialdea</OPTION>
-{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">Garbitu inprimagailuaren buruak</OPTION>:}
-{printer_commands~.*PrintSelfTestPage.*?<OPTION VALUE="print-self-test-page">Inprimatu auto-probako orrialdea</OPTION>:}
-{printer_state=5?<OPTION VALUE="start-printer">Jarraitu inprimagailua</OPTION>:<OPTION VALUE="stop-printer">Pausatu inprimagailua</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Onartu lanak</OPTION>:<OPTION VALUE="reject-jobs">Ukatu lanak</OPTION>}
-<OPTION VALUE="move-jobs">Aldatu lan guztiak lekuz</OPTION>
-<OPTION VALUE="purge-jobs">Utzi lan guztiak</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administrazioa</OPTION>
-<OPTION VALUE="modify-printer">Aldatu inprimagailua</OPTION>
-<OPTION VALUE="delete-printer">Ezabatu inprimagailua</OPTION>
-<OPTION VALUE="set-printer-options">Ezarri aukera lehenetsiak</OPTION>
-<OPTION VALUE="set-as-default">Ezarri zerbitzari lehenetsi gisa</OPTION>
-<OPTION VALUE="set-allowed-users">Ezarri baimendutako erabiltzaileak</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Deskripzioa:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Kokalekua:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Kontrolatzailea:</TH><TD>{printer_make_and_model} ({color_supported=1?kolorea:gris-eskala}{sides_supported?, 2 aldeetan inprimatzea:})<BR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Konexioa:</TH><TD>{device_uri}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Lehenetsiak:</TH><TD>lanen orriak={job_sheets_default}
-euskarria={media_default?{media_default}:ezezaguna}
-{sides_default?aldeak={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/eu/printers-header.tmpl b/templates/eu/printers-header.tmpl
deleted file mode 100644
index ba6d22fc..00000000
--- a/templates/eu/printers-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Inprimagailurik ez:{#printer_name}/{total} inprimagailu erakusten}.</P>
diff --git a/templates/eu/printers.tmpl b/templates/eu/printers.tmpl
deleted file mode 100644
index 54158910..00000000
--- a/templates/eu/printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Inprimagailuen zerrenda">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Ilararen izena <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Ilararen izena <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Deskripzioa</TH><TH>Kokalekua</TH><TH>Marka eta modeloa</TH><TH>Egoera</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>{printer_state=3?Inaktibo:{printer_state=4?Prozesatzen:Pausatuta}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/eu/restart.tmpl b/templates/eu/restart.tmpl
deleted file mode 100644
index d599c228..00000000
--- a/templates/eu/restart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Aldatu ezarpenak</H2>
-
-<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Lanpetutako egoeraren adierazlea"> Itxaron zerbitzaria berrabiatzen den bitartean...</P>
-
-</DIV>
diff --git a/templates/eu/samba-export.tmpl b/templates/eu/samba-export.tmpl
deleted file mode 100644
index b6851f86..00000000
--- a/templates/eu/samba-export.tmpl
+++ /dev/null
@@ -1,54 +0,0 @@
-<SCRIPT TYPE="text/javascript"><!--
-function select_printers() {
- var list = document.export_samba.EXPORT_NAME;
- var sel = document.export_samba.EXPORT_ALL.checked;
-
- for (i = 0; i < list.length; i ++) {
- list.options[i].selected = sel;
- }
-}
---></SCRIPT>
-
-<FORM METHOD="POST" ACTION="/admin/" NAME="export_samba">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba">
-
-<H2 CLASS="title">Esportatu inprimagailuak Samba-ra</H2>
-
-{error?<P>Ezin dira inprimagailuak Samba-ra esportatu\:</P>
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-<P>Begiratu <A HREF="/admin/log/error_log"
-TARGET="_blank">error_log</A> fitxategia informazio gehiagorako.</P>:
-<P>
-Orrialde honek inprimagailuak Samba-ra esportatzea baimentzen du, horrela
-Windows sistemako bezeroek inprimagailu horiek atzi daitezke haien
-mahaigaineko <VAR>Auzoko sareak</VAR> edo <VAR>Sareko lekuak</VAR> ikonoen bidez.
-Aurrenik Windows-eko inprimagailuen PostScript kontrolatzaileak instalatu
-behar dira, <A HREF="/help/man-cupsaddsmb.html" TARGET="_blank">cupsaddsmb(8)</A> eskuliburuko orrialdean
-azaltzen den bezala.</P>}
-<TABLE>
-<TR>
-<TH CLASS="label">Inprimagailuak:</TH>
-<TD>
-<SELECT NAME="EXPORT_NAME" SIZE="10" MULTIPLE>
-{[printer_name]<OPTION VALUE="{printer_name}"{export_all? SELECTED:{printer_export? SELECTED:}}>{printer_name}}
-</SELECT><BR>
-<INPUT TYPE="CHECKBOX" NAME="EXPORT_ALL"{export_all? CHECKED:}
-onChange="select_printers()"> Esportatu inprimagailu guztiak
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Samba-ko erabiltzaile-izena:</TH>
-<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (beharrezkoa)</TD>
-</TR>
-<TR>
-<TH CLASS="label">Samba-ko pasahitza:</TH>
-<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (beharrezkoa)</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Esportatu inprimagailuak Samba-ra"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/eu/samba-exported.tmpl b/templates/eu/samba-exported.tmpl
deleted file mode 100644
index 3a8f6584..00000000
--- a/templates/eu/samba-exported.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P>Inprimagailuak ongi esportatu dira Samba-ra.</P>
diff --git a/templates/eu/search.tmpl b/templates/eu/search.tmpl
deleted file mode 100644
index 42117356..00000000
--- a/templates/eu/search.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<FORM ACTION="/{SECTION}/{?SEARCH_DEST}" METHOD="GET">
-{WHICH_JOBS?<INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{WHICH_JOBS}">:}
-{ORDER?<INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{ORDER}">:}
-
-<P ALIGN="CENTER"><B>Bilatu
-{SEARCH_DEST?{SEARCH_DEST}:{SECTION=classes?klasetan:{SECTION=jobs?lanetan:inprimgailuetan}}}:</B>
-<INPUT TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER="" AUTOSAVE="org.cups.{SECTION}" RESULTS="20"> <INPUT
-TYPE="SUBMIT" VALUE="Bilatu"> <INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Garbitu"></P>
-
-</FORM>
diff --git a/templates/eu/set-printer-options-header.tmpl b/templates/eu/set-printer-options-header.tmpl
deleted file mode 100644
index 89b548b2..00000000
--- a/templates/eu/set-printer-options-header.tmpl
+++ /dev/null
@@ -1,26 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ezarri {printer_name}(r)en aukera lehenetsiak</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{HAVE_AUTOCONFIGURE?<INPUT TYPE="SUBMIT" NAME="AUTOCONFIGURE" VALUE="Kontsultatu inprimagailuaren aukera lehenetsiei buruz">:}
-
-<SCRIPT TYPE="text/javascript"><!--
-function update_paramtable(option)
-{
- var cb = document.getElementById("select-" + option)
- var paramstable = document.getElementById(option + "-params");
- if (cb.value == "Custom")
- paramstable.style.display = "table";
- else
- paramstable.style.display = "none";
-}
---></SCRIPT>
-
-<H3 CLASS="title">{[group_id]
-<A HREF="#{group_id}">{group}</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</H3>
-
-<DIV CLASS="tabs">
diff --git a/templates/eu/set-printer-options-trailer.tmpl b/templates/eu/set-printer-options-trailer.tmpl
deleted file mode 100644
index 11adc701..00000000
--- a/templates/eu/set-printer-options-trailer.tmpl
+++ /dev/null
@@ -1,16 +0,0 @@
-</DIV>
-
-<SCRIPT TYPE="text/javascript"><!--
-// Hide custom options parameters for browsers that understand Javascript
-var paramtables = document.getElementsByName("paramtable");
-for (var i = 0; i < paramtables.length; i++)
-{
- var opt = paramtables[i].id.substr(0, paramtables[i].id.lastIndexOf("-"));
- var cb = document.getElementById("select-" + opt);
- if (cb.value != "Custom")
- paramtables[i].style.display = "none";
-}
---></SCRIPT>
-</FORM>
-
-</DIV>
diff --git a/templates/eu/subscription-added.tmpl b/templates/eu/subscription-added.tmpl
deleted file mode 100644
index 43ee5fcb..00000000
--- a/templates/eu/subscription-added.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P> {subscription_name} harpidetza ongi landu da.</P>
-
-</DIV>
diff --git a/templates/eu/subscription-canceled.tmpl b/templates/eu/subscription-canceled.tmpl
deleted file mode 100644
index 71b0dbd0..00000000
--- a/templates/eu/subscription-canceled.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>{notify_subscription_id}. harpidetza bertan behera utzi da.</P>
-
-</DIV>
diff --git a/templates/eu/test-page.tmpl b/templates/eu/test-page.tmpl
deleted file mode 100644
index bf5c77a6..00000000
--- a/templates/eu/test-page.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Inprimatu probako orrialdea hemen: {printer_name}</H2>
-
-<P>Probako orrialdea bidalita; lanaren IDa <A HREF="/{SECTION}/{printer_name}">{printer_name}-{job_id}</A> da.</P>
-
-</DIV>
diff --git a/templates/eu/trailer.tmpl b/templates/eu/trailer.tmpl
deleted file mode 100644
index 381e2fec..00000000
--- a/templates/eu/trailer.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS eta CUPSen logotipoa <A HREF="http://www.apple.com">Apple Inc.</A>en
-marka errejistratuak dira. CUPSen copyright-a: 2007-2012 Apple
-Inc. eskubide guztiak gordeta.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/templates/eu/users.tmpl b/templates/eu/users.tmpl
deleted file mode 100644
index ba0ee968..00000000
--- a/templates/eu/users.tmpl
+++ /dev/null
@@ -1,30 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{OP}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-{IS_CLASS?<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="{IS_CLASS}">:}
-
-<H2 CLASS="title"> {printer_name}(e)n baimendutako erabiltzaile guztiak</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Erabiltzaileak:</TH>
-<TD>
-<INPUT TYPE='TEXT' NAME='users' SIZE='60' VALUE='{?requesting_user_name_allowed}{?requesting_user_name_denied}'>
-<BR>
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-allowed' {requesting_user_name_allowed?checked:}>Baimendu erabiltzaileak inprimatzea
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-denied' {requesting_user_name_denied?checked:}>Saihestu erabiltzaile hauek inprimatzetik
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>
-<INPUT TYPE="SUBMIT" VALUE="Ezarri baimendutako erabiltzaileak">
-</TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/fr/add-rss-subscription.tmpl b/templates/fr/add-rss-subscription.tmpl
deleted file mode 100644
index 99969b01..00000000
--- a/templates/fr/add-rss-subscription.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription">
-
-<H2 CLASS="title">S'abonner &agrave; un flux RSS</H2>
-
-<TABLE SUMMARY="S'abonner &agrave; un flux RSS">
-<TR>
-<TH CLASS="label">Nom:</TH>
-<TD COLSPAN="5"><INPUT TYPE="TEXT" NAME="SUBSCRIPTION_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?SUBSCRIPTION_NAME}"><BR>
-<SMALL>(Peux contenir n'importe quel caract&egrave;re sauf "/", "#", et espace)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">File:</TH>
-<TD COLSPAN="5"><SELECT NAME="PRINTER_URI" SIZE="10"><OPTION VALUE="#ALL#"{?PRINTER_URI=#ALL#? SELECTED:}>Toutes les files</OPTION>{[printer_name]<OPTION VALUE="{printer_uri_supported}"{?PRINTER_URI={printer_uri_supported}? SELECTED:}>{printer_name}</OPTION>}</SELECT></TD>
-</TR>
-<TR VALIGN="TOP">
-<TH CLASS="label">Ev&eacute;nements:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CREATED" {?EVENT_JOB_CREATED}>T&acirc;ches cr&eacute;es<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_COMPLETED" {?EVENT_JOB_COMPLETED}>T&acirc;ches finies<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_STOPPED" {?EVENT_JOB_STOPPED}>T&acirc;ches stopp&eacute;es<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CONFIG_CHANGED" {?EVENT_JOB_CONFIG_CHANGED}>Options de t&acirc;che modifi&eacute;es</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_STOPPED" {?EVENT_PRINTER_STOPPED}>Files arr&ecirc;t&eacute;es<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_ADDED" {?EVENT_PRINTER_ADDED}>File ajout&eacute;e<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_MODIFIED" {?EVENT_PRINTER_MODIFIED}>File modifi&eacute;e<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_DELETED" {?EVENT_PRINTER_DELETED}>File supprim&eacute;e</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STARTED" {?EVENT_SERVER_STARTED}>Serveur d&eacute;marr&eacute;<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STOPPED" {?EVENT_SERVER_STOPPED}>Serveur arr&ecirc;t&eacute;<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_RESTARTED" {?EVENT_SERVER_RESTARTED}>Serveur red&eacute;marr&eacute;<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_AUDIT" {?EVENT_SERVER_AUDIT}>Audit de s&eacute;curit&eacute; du serveur</TD>
-</TR>
-<TR>
-<TH CLASS="label">Nombre maximum d'&eacute;v&eacute;nements:</TH>
-<TD COLSPAN="5"><INPUT TYPE="TEXT" NAME="MAX_EVENTS" SIZE="4" MAXLENGTH="4" VALUE="{MAX_EVENTS?{MAX_EVENTS}:20}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD COLSPAN="5"><INPUT TYPE="SUBMIT" VALUE="S'abonner &agrave; un flux RSS"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/fr/admin.tmpl b/templates/fr/admin.tmpl
deleted file mode 100644
index e681022e..00000000
--- a/templates/fr/admin.tmpl
+++ /dev/null
@@ -1,110 +0,0 @@
-<TABLE CLASS="indent" SUMMARY="T&acirc;ches d'Administration">
-<TR><TD VALIGN="TOP">
-
-<H2 CLASS="title">Imprimantes</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="SUBMIT" VALUE="Ajouter une imprimante"></FORM>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="find-new-printers"><INPUT TYPE="SUBMIT" VALUE="Trouver de nouvelles imprimantes"></FORM>
-<FORM ACTION="/printers/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="G&eacute;rer les Imprimantes"></FORM>
-{have_samba?<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba"><INPUT TYPE="SUBMIT" VALUE="Exporter les imprimantes vers Samba"></FORM>:}
-</P>
-
-<H2 CLASS="title">Classes</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-class"><INPUT TYPE="SUBMIT" VALUE="Ajouter une classe"></FORM>
-<FORM ACTION="/classes/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="G&eacute;rer les Classes"></FORM>
-</P>
-
-<H2 CLASS="title">T&acirc;ches</H2>
-
-<P>
-<FORM ACTION="/jobs/" METHDO="GET"><INPUT TYPE="SUBMIT" VALUE="G&eacute;rer les T&acirc;ches"></FORM>
-</P>
-
-</TD><TD>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD><TD VALIGN="TOP">
-
-<H2 CLASS="title">Serveur</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server"><INPUT TYPE="SUBMIT" VALUE="Editer le Fichier de Configuration"></FORM>
-<FORM ACTION="/admin/log/access_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Visualiser Access Log"></FORM>
-<FORM ACTION="/admin/log/error_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Visualiser Error Log"></FORM>
-<FORM ACTION="/admin/log/page_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Visualiser Page Log"></FORM>
-</P>
-
-{SETTINGS_ERROR?<P>{SETTINGS_MESSAGE}</P>
-<BLOCKQUOTE>{SETTINGS_ERROR}</BLOCKQUOTE>:
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-
-{ADVANCEDSETTINGS?<P><B>Param&egrave;tres du serveur\:</B></P>
-
-<P><A HREF="/admin/">Avanc&eacute; <SMALL>&#x25bc;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Afficher les imprimantes partag&eacute;es par d'autres syst&egrave;mes<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protocoles\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Partager les imprimantes connect&eacute;es &agrave; ce syst&egrave;me<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Nombre maximum de clients\:
-<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protocoles\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Autoriser l'impression depuis Internet<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> Annoncer l'interface Web<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Autoriser l'administration &agrave; distance<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Utiliser l'authentification Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Autoriser les utilisateurs &agrave; annuler n'importe quelle t&acirc;che (Pas seulement les leurs)<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY" {?preserve_job_history}> Conserver l'historique des t&acirc;ches<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Nombre de t&acirc;ches\:
-<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES" {?preserve_job_files}> Conserver les fichiers d'impression des t&acirc;ches<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Enregistrer les informations de debug pour la r&eacute;solution de probl&egrave;mes<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Taille maximum du fichier de log\:
-<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
-
-:<P><B>Param&egrave;tres du Serveur:</B></P>
-
-<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Avanc&eacute; <SMALL>&#x25b6;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Afficher les imprimantes partag&eacute;es par d'autres syst&egrave;mes<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Partager les imprimantes connect&eacute;es &agrave; ce syst&egrave;me<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Autoriser l'impression depuis Internet<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Autoriser l'administration &agrave; distance<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Utiliser l'authentification Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Autoriser les utilisateurs &agrave; annuler n'importe quelle t&acirc;che (Pas seulement les leurs)<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Enregistrer les informations de debug pour la r&eacute;solution de probl&egrave;mes</P>
-
-}
-<P><INPUT TYPE="SUBMIT" NAME="CHANGESETTINGS" VALUE="Modifier les param&egrave;tres"></P>
-
-</FORM>}
-
-</TD></TR>
-</TABLE>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Abonnements RSS</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Ajouter un abonnement RSS"></FORM>
-</P>
-
-</DIV>
-
-{notify_subscription_id?<TABLE CLASS="list" SUMMARY="Abonnements RSS">
-<THEAD><TR><TH>Nom</TH><TH>Ev&eacute;nements</TH><TH>Nom de la File</TH></TR></THEAD>
-<TBODY>{[notify_subscription_id]
-<TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Annuler l'abonnement RSS"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Toutes les Files}</TD></TR>}
-</TBODY>
-</TABLE>:}
diff --git a/templates/fr/choose-device.tmpl b/templates/fr/choose-device.tmpl
deleted file mode 100644
index 2bcb430c..00000000
--- a/templates/fr/choose-device.tmpl
+++ /dev/null
@@ -1,53 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modifier {printer_name}:Ajouter une imprimante}</H2>
-
-{CUPS_GET_DEVICES_DONE?<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-{op=add-printer?:<TR>
-<TH CLASS="label">Connexion courante\:</TH>
-<TD><INPUT TYPE="RADIO" NAME="DEVICE_URI" VALUE="{current_device_uri}" CHECKED>
-{current_device_uri}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Imprimantes locales\:</TH>
-<TD>
-{[device_uri]{device_class!network?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}}
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Imprimantes R&eacute;seaux D&eacute;couvertes\:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}:}}
-</TD>
-</TR>
-<TR>
-<TR>
-<TH CLASS="label">Autres Imprimantes R&eacute;seaux\:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?:<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-}:}}
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Continuer"></TD>
-</TR>
-</TABLE>
-
-</FORM>:<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Indicateur d'occupation"> Recherche en cours...</P>}
-
-</DIV>
diff --git a/templates/fr/choose-make.tmpl b/templates/fr/choose-make.tmpl
deleted file mode 100644
index 5f979382..00000000
--- a/templates/fr/choose-make.tmpl
+++ /dev/null
@@ -1,64 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modifier {printer_name}:Ajouter une imprimante}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Nom:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Description:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Emplacement:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Connexion:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Partage:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Ne pas:{?printer_is_shared=0?Ne pas:}} Partager cette Imprimante</TD>
-</TR>
-<TR>
-<TH CLASS="label">Marque:</TH>
-<TD>
-<SELECT NAME="PPD_MAKE" SIZE="10">
-{[ppd_make]<OPTION VALUE="{ppd_make}" {?current_make={ppd_make}?SELECTED:}>{ppd_make}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Continuer"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR>
-<TH CLASS="label">Ou donner un fichier PPD:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Ajouter une imprimante:Modifier l'imprimante}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/fr/choose-model.tmpl b/templates/fr/choose-model.tmpl
deleted file mode 100644
index 7a2ce539..00000000
--- a/templates/fr/choose-model.tmpl
+++ /dev/null
@@ -1,60 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modifier {printer_name}:Ajouter une imprimante}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Nom:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Description:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Emplacement:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Connexion:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Partage:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Ne pas:{?printer_is_shared=0?Ne pas:}} Partager cette imprimante</TD>
-</TR>
-<TR>
-<TH CLASS="label">Marque:</TH>
-<TD>{PPD_MAKE} <INPUT TYPE="SUBMIT" NAME="SELECT_MAKE" VALUE="Choisir un autre fabriquant"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Mod&egrave;le:</TH>
-<TD>
-<SELECT NAME="PPD_NAME" SIZE="10">
-{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Pilote courrant - {current_make_and_model}</OPTION>:}
-{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
-}</SELECT>
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Ou donner un fichier PPD:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Ajouter une imprimante:Modifier une imprimante}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/fr/choose-serial.tmpl b/templates/fr/choose-serial.tmpl
deleted file mode 100644
index 8d5d67de..00000000
--- a/templates/fr/choose-serial.tmpl
+++ /dev/null
@@ -1,52 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modifier {printer_name}:Ajouter une imprimante}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Connexion:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Baud/s:</TH>
-<TD><SELECT NAME="BAUDRATE">
-{[baudrates]<OPTION {?baudrate={baudrates}?SELECTED:}>{baudrates}}
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Parit&eacute;:</TH>
-<TD><SELECT NAME="PARITY">
-<OPTION VALUE="none" {?parity=none?SELECTED:}>Aucune
-<OPTION VALUE="even" {?parity=even?SELECTED:}>Paire
-<OPTION VALUE="odd" {?parity=odd?SELECTED:}>Impaire
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Bits de donn&eacute;es:</TH>
-<TD><SELECT NAME="BITS">
-<OPTION {?bits=8?SELECTED:}>8
-<OPTION {?bits=7?SELECTED:}>7
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Contr&ocirc;le de flux:</TH>
-<TD><SELECT NAME="FLOW">
-<OPTION VALUE="none" {?flow=none?SELECTED:}>Aucun
-<OPTION VALUE="soft" {?flow=soft?SELECTED:}>XON/XOFF (Logiciel)
-<OPTION VALUE="hard" {?flow=hard?SELECTED:}>RTS/CTS (Mat&egrave;riel)
-<OPTION VALUE="dtrdsr" {?flow=dtrdsr?SELECTED:}>DTR/DSR (Mat&egrave;riel)
-</SELECT></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Continuer"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/fr/choose-uri.tmpl b/templates/fr/choose-uri.tmpl
deleted file mode 100644
index 2abe5f40..00000000
--- a/templates/fr/choose-uri.tmpl
+++ /dev/null
@@ -1,43 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modifier {printer_name}:Ajouter une imprimante}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{?current_make_and_model}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Connexion:</TH>
-<TD><INPUT TYPE="TEXT" SIZE="60" MAXLENGTH="1024" NAME="DEVICE_URI" VALUE="{current_device_uri?{current_device_uri}:{device_uri}}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>Exemples:
-<PRE>
- http://hostname:631/ipp/
- http://hostname:631/ipp/port1
-
- ipp://hostname/ipp/
- ipp://hostname/ipp/port1
-
- lpd://hostname/queue
-
- socket://hostname
- socket://hostname:9100
-</PRE>
-
-<P>Cf. <A HREF="/help/network.html" TARGET="_blank">"Imprimantes R&eacute;seaux"</A> pour construire l'URI &agrave; employ&eacute;e avec votre imprimante.</P>
-
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Continuer"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/fr/class-added.tmpl b/templates/fr/class-added.tmpl
deleted file mode 100644
index c961a557..00000000
--- a/templates/fr/class-added.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ajouter une Classe</H2>
-
-<P>La classe <A HREF="/classes/{printer_name}">{printer_name}</A> a &eacute;t&eacute; ajout&eacute;e avec succ&egrave;s.
-
-</DIV>
diff --git a/templates/fr/class-confirm.tmpl b/templates/fr/class-confirm.tmpl
deleted file mode 100644
index 276ec34f..00000000
--- a/templates/fr/class-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Supprimer la classe {printer_name}</H2>
-
-<P><B>Attention:</B> Etes-vous sur(e) de vouloir supprimer la classe
-{printer_name}?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="op" VALUE="delete-class"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Supprimer la classe"></FORM></P>
-
-</DIV>
diff --git a/templates/fr/class-deleted.tmpl b/templates/fr/class-deleted.tmpl
deleted file mode 100644
index 297ecc1d..00000000
--- a/templates/fr/class-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Supprimer la classe {printer_name}</H2>
-
-<P>La classe {printer_name} a &eacute;t&eacute; supprim&eacute;e avec succ&egrave;s.
-
-</DIV>
diff --git a/templates/fr/class-jobs-header.tmpl b/templates/fr/class-jobs-header.tmpl
deleted file mode 100644
index 551f47e4..00000000
--- a/templates/fr/class-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">T&acirc;ches</H3>
-</DIV>
diff --git a/templates/fr/class-modified.tmpl b/templates/fr/class-modified.tmpl
deleted file mode 100644
index 49ec8d0f..00000000
--- a/templates/fr/class-modified.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modifier la Classe {printer_name}</H2>
-
-<P>La classe <A HREF="/classes/{printer_name}">{printer_name}</A> a &eacute;t&eacute; modifi&eacute;e avec succ&egrave;s.
-
-</DIV>
diff --git a/templates/fr/class.tmpl b/templates/fr/class.tmpl
deleted file mode 100644
index 0d6d891f..00000000
--- a/templates/fr/class.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<DIV CLASS="indent">
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?En attente:{printer_state=4?En cours d'impression:Arr&ecirc;t&eacute;}},
-{printer_is_accepting_jobs=0?Rejette les t&acirc;ches:Accepte les t&acirc;ches},
-{server_is_sharing_printers=0?Non:{printer_is_shared=0?Non:}} Partag&eacute;e{default_name={printer_name}?, Imprimante par d&eacute;faut:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Maintenance</OPTION>
-<OPTION VALUE="print-test-page">Imprimer une page de test</OPTION>
-{printer_state=5?<OPTION VALUE="start-class">D&eacute;marrer la classe</OPTION>:<OPTION VALUE="stop-class">Arr&ecirc;ter la classe</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Accepter les t&acirc;ches</OPTION>:<OPTION VALUE="reject-jobs">Rejeter les t&acirc;ches</OPTION>}
-<OPTION VALUE="move-jobs">Transf&eacute;rer toutes les t&acirc;ches</OPTION>
-<OPTION VALUE="purge-jobs">Annuler toutes les t&acirc;ches</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="1">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administration</OPTION>
-<OPTION VALUE="modify-class">Modifier la classe</OPTION>
-<OPTION VALUE="delete-class">Supprimer la classe</OPTION>
-<OPTION VALUE="set-class-options">R&eacute;initialiser les options</OPTION>
-<OPTION VALUE="set-as-default">D&eacute;finir par d&eacute;faut</OPTION>
-<OPTION VALUE="set-allowed-users">D&eacute;finir les autorisations</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Description:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Emplacement:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Membres:</TH><TD>{?member_uris=?None:{member_uris}}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">D&eacute;fauts:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:inconnu}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/fr/classes-header.tmpl b/templates/fr/classes-header.tmpl
deleted file mode 100644
index ddeb7a58..00000000
--- a/templates/fr/classes-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Pas de classes:Affichage de {#printer_name} classe{total>1?s:}} sur {total}.</P>
diff --git a/templates/fr/classes.tmpl b/templates/fr/classes.tmpl
deleted file mode 100644
index 0a04ebe5..00000000
--- a/templates/fr/classes.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Liste des Classes">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Nom de la file <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Nom de la file <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Description</TH><TH>Emplacement</TH><TH>Membres</TH><TH>&Eacute;tat</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?Aucun:{member_uris}}</TD><TD>{printer_state=3?Inoccup&eacute;:{printer_state=4?En cours d'impression:En pause}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/fr/command.tmpl b/templates/fr/command.tmpl
deleted file mode 100644
index bcd0f905..00000000
--- a/templates/fr/command.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{title} sur {printer_name}</H2>
-
-<P>{job_state>5?:<IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16"
-ALIGN="ABSMIDDLE" ALT="Busy Indicator"> }Commandes de t&acirc;che d'impression
-{job_state=3?en attente:{job_state=4?retenu:
-{job_state=5?en cours d'impression:{job_state=6?arr&ecirc;t&eacute;:
-{job_state=7?annul&eacute;:{job_state=8?annul&eacute;:termin&eacute;}}}}}}{job_state=9?:{job_printer_state_message?,
-<EM>"{job_printer_state_message}"</EM>:}}</P>
-
-</DIV>
diff --git a/templates/fr/edit-config.tmpl b/templates/fr/edit-config.tmpl
deleted file mode 100644
index 62d1414a..00000000
--- a/templates/fr/edit-config.tmpl
+++ /dev/null
@@ -1,24 +0,0 @@
-<SCRIPT TYPE="text/javascript">
-function reset_config()
-{
- document.cups.CUPSDCONF.value = "{?cupsdconf_default}";
-}
-</SCRIPT>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Edition du Fichier de Configuration</H2>
-
-<FORM NAME="cups" METHOD="POST" ACTION="/admin/">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-
-<TEXTAREA NAME="CUPSDCONF" COLS="80" ROWS="25">{CUPSDCONF}</TEXTAREA>
-
-<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="Enregistrer les modifications">
-<INPUT TYPE="BUTTON" VALUE="Utiliser le fichier de configuration par d&eacute;faut"
-onClick="reset_config();"></P>
-
-</FORM>
-
-</DIV>
diff --git a/templates/fr/error-op.tmpl b/templates/fr/error-op.tmpl
deleted file mode 100644
index ba5c91cd..00000000
--- a/templates/fr/error-op.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?title} {?printer_name} Erreur</H2>
-
-<P>Erreur:</P>
-
-<BLOCKQUOTE>Op&eacute;ration inconnue "{op}"!</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/fr/error.tmpl b/templates/fr/error.tmpl
deleted file mode 100644
index 23e85090..00000000
--- a/templates/fr/error.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?title} {?printer_name} Erreur</H2>
-
-<P>{?message?{message}:Erreur:}</P>
-
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/fr/help-header.tmpl b/templates/fr/help-header.tmpl
deleted file mode 100644
index b86150a9..00000000
--- a/templates/fr/help-header.tmpl
+++ /dev/null
@@ -1,51 +0,0 @@
-<DIV CLASS="indent">
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET">
-{TOPIC?<INPUT TYPE="HIDDEN" NAME="TOPIC" VALUE="{TOPIC}">:}
-
-<P ALIGN="CENTER"><B>Rechercher dans
-{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:tous les documents}}:</B> <INPUT
-TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER=""
-AUTOSAVE="org.cups.help" RESULTS="20">
-<INPUT TYPE="SUBMIT" NAME="SEARCH" VALUE="Rechercher">
-<INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Vider"></P>
-
-</FORM>
-
-<!-- Bookmarks -->
-<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="Contenus">
-<TR><TD>
-
-<H3 CLASS="title">Documents d'aide en ligne</H3>
-
-<P CLASS="l0"><A HREF="/help/{QUERY??QUERY={QUERY}:}">Tous les documents</A></P>
-<HR>
-
-{[BMTEXT]<P CLASS="l{BMINDENT}"><A HREF="{BMLINK}">{BMTEXT}</A></P>
-}
-</TD></TR>
-</TABLE></DIV>
-
-{QUERY?<P>R&eacute;sultats de la recherche dans {HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:tous les documents}}\:</P>
-{QTEXT?<UL>
-{[QTEXT]<LI><A HREF="{QLINK}">{QTEXT}</A>{QPTEXT? (in <I><A HREF="{QPLINK}">{QPTEXT}</A></I>):}</LI>}
-{QTEXT?</UL>:}
-:<P>Aucun r&eacute;sultat trouv&eacute;.</P>}
-<HR NOSHADE>:}
-{HELPTITLE?<H1>{HELPTITLE}</H1>
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="PRINTABLE" VALUE="YES"><INPUT TYPE="SUBMIT" VALUE="Voir la version imprimable"></FORM>:
-
-<H1>Aide en ligne</H1>
-
-<P>Voici l'interface d'aide en ligne de CUPS. Entrez ci-dessus les mots &agrave; rechercher
-ou cliquez sur un lien ci-contre pour afficher l'aide en ligne du document.</P>
-
-
-<P>Si vous &ecirc;tes un nouvel utilisateur de CUPS, lisez la page "<a
-href="/help/overview.html">Pr&eacute;sentation de CUPS</a>". Il est conseill&eacute; aux utilisateurs
-habitu&eacute;s de lire la page "<a href="/help/whatsnew.html">Quoi de neuf dans CUPS
-1.5</a>" page.</P>
-
-<P>La <A HREF="http://www.cups.org/">page d'accueil de CUPS</A> donne aussi
-acc&egrave;s &agrave; de nombreuses ressources, comme des forums de discussion pour les
-utilisateurs, des r&eacute;ponses aux questions fr&eacute;quentes, et un formulaire pour
-soumettre des rapports de bug ou des demandes pour de nouvelles fonctionnalit&eacute;s.</P>}
diff --git a/templates/fr/help-printable.tmpl b/templates/fr/help-printable.tmpl
deleted file mode 100644
index 2463c163..00000000
--- a/templates/fr/help-printable.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{HELPTITLE}</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups-printable.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
diff --git a/templates/fr/help-trailer.tmpl b/templates/fr/help-trailer.tmpl
deleted file mode 100644
index 4c1ebed8..00000000
--- a/templates/fr/help-trailer.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-</DIV>
diff --git a/templates/fr/job-cancel.tmpl b/templates/fr/job-cancel.tmpl
deleted file mode 100644
index ab54269e..00000000
--- a/templates/fr/job-cancel.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Annuler la T&acirc;che {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">La t&acirc;che {job_id}</A> a &eacute;t&eacute; annul&eacute;e.
-
-</DIV>
diff --git a/templates/fr/job-hold.tmpl b/templates/fr/job-hold.tmpl
deleted file mode 100644
index 7c85916b..00000000
--- a/templates/fr/job-hold.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Retenir la t&acirc;che {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">La t&acirc;che {job_id}</A> a &eacute;t&eacute; retenue.
-
-</DIV>
diff --git a/templates/fr/job-move.tmpl b/templates/fr/job-move.tmpl
deleted file mode 100644
index 4cca760b..00000000
--- a/templates/fr/job-move.tmpl
+++ /dev/null
@@ -1,27 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/{SECTION}/{job_id?:{printer_name}}">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{job_id?<INPUT TYPE="HIDDEN" NAME="JOB_ID" VALUE="{job_id}">:}
-
-<H2 CLASS="title">{job_id?Transf&eacute;rer la t&acirc;che {job_id}:Transf&eacute;rer toutes les t&acirc;ches}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Nouvelle destination:</TH>
-<TD>
-<SELECT NAME="JOB_PRINTER_URI" SIZE="10">
-{[job_printer_uri]<OPTION VALUE="{job_printer_uri}">{job_printer_name}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{job_id?Transf&eacute;rer la t&acirc;che:Transf&eacute;rer les t&acirc;ches}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-
-</DIV>
diff --git a/templates/fr/job-moved.tmpl b/templates/fr/job-moved.tmpl
deleted file mode 100644
index ba28d334..00000000
--- a/templates/fr/job-moved.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id?Transf&eacute;rer la t&acirc;che {job_id}:Transf&eacute;rer toutes les t&acirc;ches}</H2>
-
-<P>{job_id?<A HREF="/jobs/{job_id}">Job {job_id}</A>:Toutes les t&acirc;ches} transf&eacute;r&eacute;e(s) vers
-<A HREF="/{is_class?classes:printers}/{job_printer_name}">{job_printer_name}</A>.</P>
-
-</DIV>
diff --git a/templates/fr/job-release.tmpl b/templates/fr/job-release.tmpl
deleted file mode 100644
index 4bfc1b91..00000000
--- a/templates/fr/job-release.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Lib&eacute;rer la T&acirc;che {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">La t&acirc;che {job_id}</A> a &eacute;t&eacute; lib&eacute;r&eacute;e.
-
-</DIV>
diff --git a/templates/fr/job-restart.tmpl b/templates/fr/job-restart.tmpl
deleted file mode 100644
index 08588402..00000000
--- a/templates/fr/job-restart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">R&eacute;imprimer la T&acirc;che {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">La t&acirc;che {job_id}</A> a &eacute;t&eacute; relanc&eacute;e.
-
-</DIV>
diff --git a/templates/fr/jobs-header.tmpl b/templates/fr/jobs-header.tmpl
deleted file mode 100644
index c8630059..00000000
--- a/templates/fr/jobs-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">{?which_jobs=?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Affichage des t&acirc;ches actives"></FORM>}
-{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="Affichage des t&acirc;ches termin&eacute;es"></FORM>}
-{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="Affichage de toutes les t&acirc;ches"></FORM>}</DIV>
-
-<P ALIGN="CENTER">{total=0?Pas de t&acirc;che:Affichage de {#job_id} t&acirc;che{total>1?s:}} {?which_jobs=?active{total>1?s:}:{which_jobs=all?:termin&eacute;e{total>1?s:}}} {total=0?:sur {total}} .</P>
diff --git a/templates/fr/jobs.tmpl b/templates/fr/jobs.tmpl
deleted file mode 100644
index 4ac09346..00000000
--- a/templates/fr/jobs.tmpl
+++ /dev/null
@@ -1,37 +0,0 @@
-{#job_id=0?:
-<TABLE CLASS="list" SUMMARY="Listes des t&acirc;ches">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> ID <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> ID <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Nom</TH><TH>Utilisateur</TH><TH>Taille</TH><TH>Pages</TH><TH>&Eacute;tat</TH><TH>Contr&ocirc;le</TH></TR>
-</THEAD>
-<TBODY>
-{[job_id]
-<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
-<TD>{?job_name=?Inconnu:{job_name}}&nbsp;</TD>
-<TD>{?job_originating_user_name=?Withheld:{job_originating_user_name}}&nbsp;</TD>
-<TD>{job_k_octets}k&nbsp;</TD>
-<TD>{job_media_sheets_completed=0?Inconnu:{?job_media_sheets_completed}}&nbsp;</TD>
-<TD>{job_state=3?en attente depuis<BR>{time_at_creation}:{job_state=4?retenu depuis<BR>{time_at_creation}:
-{job_state=5?en cours d'impression depuis<BR>{time_at_processing}:{job_state=6?arr&ecirc;t&eacute;:
-{job_state=7?annul&eacute; &acirc;<BR>{time_at_completed}:{job_state=8?annul&eacute;:termin&eacute; &agrave;<BR>{time_at_completed}}}}}}}&nbsp;{job_printer_state_message?<BR>
-<EM>"{job_printer_state_message}"</EM>:}</TD>
-<TD>
-{job_preserved>0?{job_state>5?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="R&eacute;imprimer la t&acirc;che"></FORM>:}:}
-{job_state=4?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="release-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Lib&eacute;rer la t&acirc;che"></FORM>:}
-{job_state=3?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="hold-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Retenir la t&acirc;che"></FORM>:}
-{job_state<7?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Annuler la t&acirc;che"></FORM>
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="move-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="SUBMIT" VALUE="Transf&eacute;rer la t&acirc;che"></FORM>:}
-&nbsp;</TD>
-</TR>
-}
-</TBODY>
-</TABLE>
-}
diff --git a/templates/fr/list-available-printers.tmpl b/templates/fr/list-available-printers.tmpl
deleted file mode 100644
index dcc9937b..00000000
--- a/templates/fr/list-available-printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Imprimantes Disponibles</H2>
-
-{#device_uri=0?<P>Aucune imprimante trouv&eacute;e.</P>
-:<UL>{[device_uri]
-<LI><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="HIDDEN" NAME="TEMPLATE_NAME" VALUE="{template_name}"><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="Local Printer"><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{device_make_and_model}"><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}"><INPUT TYPE="SUBMIT" VALUE="Ajouter cette imprimante"></FORM>
-{device_make_and_model} ({device_info})</LI>
-}</UL>}
-
-</DIV>
diff --git a/templates/fr/modify-printer.tmpl b/templates/fr/modify-printer.tmpl
deleted file mode 100644
index 03e1b66d..00000000
--- a/templates/fr/modify-printer.tmpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modifier {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Description:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Description compr&eacute;hensible comme "HP LaserJet Recto/Verso")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Emplacement:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Emplacement compr&eacute;hensible comme "Lab 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Connexion:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Partage:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Partager cette imprimante</TD>
-</TR>
-<TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Continuer"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/fr/norestart.tmpl b/templates/fr/norestart.tmpl
deleted file mode 100644
index 95965c6f..00000000
--- a/templates/fr/norestart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modifier les Param&egrave;tres</H2>
-
-<P>Le serveur n'a pas &eacute;t&eacute; red&eacute;marr&eacute; car la configuration
-n'a pas &eacute;t&eacute; modifi&eacute;e...</P>
-
-</DIV>
diff --git a/templates/fr/option-boolean.tmpl b/templates/fr/option-boolean.tmpl
deleted file mode 100644
index e832ee10..00000000
--- a/templates/fr/option-boolean.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD>
-{[choices]<INPUT TYPE="RADIO" NAME="{keyword-1}" {choices={defchoice-1}?CHECKED:} VALUE="{choices}">{text}}
-</TD>
-</TR>
diff --git a/templates/fr/option-conflict.tmpl b/templates/fr/option-conflict.tmpl
deleted file mode 100644
index 7077aac5..00000000
--- a/templates/fr/option-conflict.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<P><B>Erreur:</B> Les options suivantes sont incompatibles entre elles:</P>
-
-<UL>
-{[ckeyword]<LI><A HREF="#{ckeyword}">{ckeytext}</A>: {cchoice}</LI>
-}</UL>
-
-<P>Veuillez modifier une ou plusieurs de ces options pour r&eacute;soudre les conflits.</P>
diff --git a/templates/fr/option-header.tmpl b/templates/fr/option-header.tmpl
deleted file mode 100644
index 464726a5..00000000
--- a/templates/fr/option-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="tab" ID="{group_id}">
-
-<H3 ALIGN="CENTER">{group}</H3>
-
-<TABLE WIDTH="100%">
diff --git a/templates/fr/option-pickmany.tmpl b/templates/fr/option-pickmany.tmpl
deleted file mode 100644
index 0da75e5d..00000000
--- a/templates/fr/option-pickmany.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" MULTIPLE SIZE="10">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT></TD>
-</TR>
diff --git a/templates/fr/option-pickone.tmpl b/templates/fr/option-pickone.tmpl
deleted file mode 100644
index 74901c31..00000000
--- a/templates/fr/option-pickone.tmpl
+++ /dev/null
@@ -1,18 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" ID="select-{keyword}" ONCHANGE="update_paramtable('{keyword}')">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT>
-{iscustom=1?<TABLE NAME="paramtable" id="{keyword}-params">{[params]
-<TR><TH CLASS="sublabel">{paramtext}:</TH>
-<TD>{params=Units?<SELECT NAME="{keyword}.{params}">
-<OPTION VALUE="pt"{paramvalue=pt? SELECTED:}>Points</OPTION>
-<OPTION VALUE="mm"{paramvalue=mm? SELECTED:}>Millim&eagrave;tres</OPTION>
-<OPTION VALUE="cm"{paramvalue=cm? SELECTED:}>Centim&eagrave;tres</OPTION>
-<OPTION VALUE="in"{paramvalue=in? SELECTED:}>Pouces</OPTION>
-<OPTION VALUE="ft"{paramvalue=ft? SELECTED:}>Pieds</OPTION>
-<OPTION VALUE="m"{paramvalue=m? SELECTED:}>M&egrave;tres</OPTION>
-</SELECT>:<INPUT TYPE="{inputtype}" NAME="{keyword}.{params}" VALUE="{paramvalue}">}</TD></TR>
-}</TABLE>
-</TD>:}
-</TR>
diff --git a/templates/fr/option-trailer.tmpl b/templates/fr/option-trailer.tmpl
deleted file mode 100644
index 5dad006c..00000000
--- a/templates/fr/option-trailer.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-</TABLE>
-
-<P ALIGN="CENTER"><INPUT TYPE="SUBMIT" VALUE="D&eacute;finir les options par d&eacute;faut"></P>
-
-</DIV>
diff --git a/templates/fr/pager.tmpl b/templates/fr/pager.tmpl
deleted file mode 100644
index c4e7ba5b..00000000
--- a/templates/fr/pager.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TABLE CLASS="inset" SUMMARY="Mise en Page">
-<TR>
- <TD WIDTH="50%">{PREV?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{PREV}"><INPUT TYPE="SUBMIT" VALUE="&#x25c0; Montrer les pr&eacute;c&eacute;dentes"></FORM>:&nbsp;}</TD>
- <TD WIDTH="50%" ALIGN="RIGHT">{NEXT?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{NEXT}"><INPUT TYPE="SUBMIT" VALUE="Montrer les suivantes &#x25b6;"></FORM>:&nbsp;}</TD>
-</TR>
-</TABLE>
diff --git a/templates/fr/printer-accept.tmpl b/templates/fr/printer-accept.tmpl
deleted file mode 100644
index cc25a09b..00000000
--- a/templates/fr/printer-accept.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Accepte les T&acirc;ches sur {is_class?la classe:l'imprimante} {printer_name}</H2>
-
-<P>{is_class?La classe:L'imprimante} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-accepte d&eacute;sormais les t&acirc;ches d'impression.</P>
-
-</DIV>
diff --git a/templates/fr/printer-added.tmpl b/templates/fr/printer-added.tmpl
deleted file mode 100644
index a5853681..00000000
--- a/templates/fr/printer-added.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ajouter une imprimante</H2>
-
-<P>L'imprimante <A HREF="/printers/{printer_name}">{printer_name}</A> a &eacute;t&eacute; ajout&eacute;e avec succ&egrave;s.
-
-</DIV>
diff --git a/templates/fr/printer-configured.tmpl b/templates/fr/printer-configured.tmpl
deleted file mode 100644
index 79ccb157..00000000
--- a/templates/fr/printer-configured.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">D&eacute;finir les options par d&eacute;faut pour {printer_name}</H2>
-
-<P>{OP=set-class-options?Class <A HREF="/classes/{printer_name}">:l'imprimante <A HREF="/printers/{printer_name}">}{printer_name}</A>
- a &eacute;t&eacute; configur&eacute;e avec succ&egrave;s.
-
-</DIV>
diff --git a/templates/fr/printer-confirm.tmpl b/templates/fr/printer-confirm.tmpl
deleted file mode 100644
index 715ddd11..00000000
--- a/templates/fr/printer-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Supprimer l'imprimante {printer_name}</H2>
-
-<P><B>Warning:</B> Etes-vous s&ucirc;r(e) de vouloir supprimer l'imprimante
-{printer_name}?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="delete-printer"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Supprimer l'imprimante"></FORM></P>
-
-</DIV>
diff --git a/templates/fr/printer-default.tmpl b/templates/fr/printer-default.tmpl
deleted file mode 100644
index c0c16bb8..00000000
--- a/templates/fr/printer-default.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">D&eacute;finir {is_class?la classe:l'imprimante} {printer_name} comme imprimante par d&eacute;faut</H2>
-
-<P>{is_class?La classe:L'imprimante} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-a &eacute;t&eacute; d&eacute;finie comme imprimante par d&eacute;faut du serveur.</P>
-
-<BLOCKQUOTE><B>NB:</B> Tout param&egrave;tre utilisateur d&eacute;fini via la commande <TT>lpoptions</TT> sera prioritaire sur le param&egrave;tre d&eacute;fini i&ccedil;i.</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/fr/printer-deleted.tmpl b/templates/fr/printer-deleted.tmpl
deleted file mode 100644
index 43af955f..00000000
--- a/templates/fr/printer-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Supprimer l'imprimante {printer_name}</H2>
-
-<P>L'imprimante {printer_name} a &eacute;t&eacute; supprim&eacute;e avec succ&egrave;s.
-
-</DIV>
diff --git a/templates/fr/printer-jobs-header.tmpl b/templates/fr/printer-jobs-header.tmpl
deleted file mode 100644
index 551f47e4..00000000
--- a/templates/fr/printer-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">T&acirc;ches</H3>
-</DIV>
diff --git a/templates/fr/printer-modified.tmpl b/templates/fr/printer-modified.tmpl
deleted file mode 100644
index fd40342f..00000000
--- a/templates/fr/printer-modified.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modifier l'Imprimante {printer_name}</H2>
-
-<P>L'imprimante <A HREF="/printers/{printer_name}">{printer_name}</A> a &eacute;t&eacute;
-modifi&eacute;e avec succ&egrave;s.
-
-</DIV>
diff --git a/templates/fr/printer-purge.tmpl b/templates/fr/printer-purge.tmpl
deleted file mode 100644
index 07b0fcd5..00000000
--- a/templates/fr/printer-purge.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Purger les T&acirc;ches sur {is_class?la classe:l'imprimante} {printer_name}</H2>
-
-<P>Toutes les t&acirc;ches de {is_class?la classe:l'imprimante} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-ont &eacute;t&eacute; purg&eacute;es.</P>
-
-</DIV>
diff --git a/templates/fr/printer-reject.tmpl b/templates/fr/printer-reject.tmpl
deleted file mode 100644
index 36edcb81..00000000
--- a/templates/fr/printer-reject.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Rejeter les T&acirc;ches sur {is_class?Classe:Imprimante} {printer_name}</H2>
-
-<P>{is_class?La classe:L'imprimante} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-n'accepte plus les t&acirc;ches d'impression.</P>
-
-</DIV>
diff --git a/templates/fr/printer-start.tmpl b/templates/fr/printer-start.tmpl
deleted file mode 100644
index c1cf7b4a..00000000
--- a/templates/fr/printer-start.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">D&eacute;marrer {is_class?la classe:l'imprimante} {printer_name}</H2>
-
-<P>{is_class?La classe:L'imprimante} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-a &eacute;t&eacute; d&eacute;marr&eacute;e.</P>
-
-</DIV>
diff --git a/templates/fr/printer-stop.tmpl b/templates/fr/printer-stop.tmpl
deleted file mode 100644
index 3226110a..00000000
--- a/templates/fr/printer-stop.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Arr&ecirc;ter {is_class?la classe:l'imprimante} {printer_name}</H2>
-
-<P>{is_class?La classe:L'imprimante} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-a &eacute;t&eacute; arr&ecirc;t&eacute;e.</P>
-
-</DIV>
diff --git a/templates/fr/printer.tmpl b/templates/fr/printer.tmpl
deleted file mode 100644
index 3ea015d8..00000000
--- a/templates/fr/printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title"><A HREF="{printer_uri_supported}?which_jobs=all">{printer_name}</A>
-({printer_state=3?Innocup&eacute;e:{printer_state=4?En cours d'impression:En pause}},
-{printer_is_accepting_jobs=0?Rejette les t&acirc;ches:Accepte les t&acirc;ches},
-{server_is_sharing_printers=0?Non:{printer_is_shared=0?Non:}} Partag&eacute;e{default_name={printer_name}?, Imprimante par d&eacute;faut:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Maintenance</OPTION>
-<OPTION VALUE="print-test-page">Imprimer une page de test</OPTION>
-{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">Nettoyer les t&ecirc;tes d'impression</OPTION>:}
-{printer_commands~.*PrintSelfTestPage.*?<OPTION VALUE="print-self-test-page">Imprimer la page de test de l'imprimante</OPTION>:}
-{printer_state=5?<OPTION VALUE="start-printer">D&eacute;marrer l'imprimante</OPTION>:<OPTION VALUE="stop-printer">Arr&ecirc;ter l'imprimante</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Accepter les t&acirc;ches</OPTION>:<OPTION VALUE="reject-jobs">Rejeter les t&acirc;ches</OPTION>}
-<OPTION VALUE="move-jobs">Transf&eacute;rer toutes les t&acirc;ches</OPTION>
-<OPTION VALUE="purge-jobs">Purger toutes les t&acirc;ches</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administration</OPTION>
-<OPTION VALUE="modify-printer">Modifier l'imprimante</OPTION>
-<OPTION VALUE="delete-printer">Supprimer l'imprimante</OPTION>
-<OPTION VALUE="set-printer-options">D&eacute;finir les options de l'imprimante</OPTION>
-<OPTION VALUE="set-as-default">D&eacute;finir par d&eacute;faut</OPTION>
-<OPTION VALUE="set-allowed-users">D&eacute;finir les autorisations</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Description:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Emplacement:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Pilote:</TH><TD>{printer_make_and_model} ({color_supported=1?color:grayscale}{sides_supported?, 2-sided printing:})<BR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Connexion:</TH><TD>{device_uri}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">D&eacute;fauts:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:inconnu}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/fr/printers-header.tmpl b/templates/fr/printers-header.tmpl
deleted file mode 100644
index fe6753fc..00000000
--- a/templates/fr/printers-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Pas d'imprimante:Affichage de {#printer_name} sur {total} imprimante{total>1?s:}}.</P>
diff --git a/templates/fr/printers.tmpl b/templates/fr/printers.tmpl
deleted file mode 100644
index 2abc59c4..00000000
--- a/templates/fr/printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Liste des Imprimantes">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Nom de la file <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Nom de la file <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Description</TH><TH>Emplacement</TH><TH>Marque et Mod&egrave;le</TH><TH>&Eacute;tat</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>{printer_state=3?Inoccup&eacute;e:{printer_state=4?En cours d'impression:En pause}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/fr/restart.tmpl b/templates/fr/restart.tmpl
deleted file mode 100644
index da164b7e..00000000
--- a/templates/fr/restart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modifier les Param&egrave;tres</H2>
-
-<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Busy Indicator"> Veuillez patienter pendant que le serveur red&eacute;marre...</P>
-
-</DIV>
diff --git a/templates/fr/samba-export.tmpl b/templates/fr/samba-export.tmpl
deleted file mode 100644
index e10e4290..00000000
--- a/templates/fr/samba-export.tmpl
+++ /dev/null
@@ -1,53 +0,0 @@
-<SCRIPT TYPE="text/javascript"><!--
-function select_printers() {
- var list = document.export_samba.EXPORT_NAME;
- var sel = document.export_samba.EXPORT_ALL.checked;
-
- for (i = 0; i < list.length; i ++) {
- list.options[i].selected = sel;
- }
-}
---></SCRIPT>
-
-<FORM METHOD="POST" ACTION="/admin/" NAME="export_samba">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba">
-
-<H2 CLASS="title">Exporter les Imprimantes vers Samba</H2>
-
-{error?<P>Impossible d'exporter les imprimantes vers Samba\:</P>
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-<P>Consulter le fichier <A HREF="/admin/log/error_log"
-TARGET="_blank">error_log</A> pour plus d'informations.</P>:
-<P>Cette page vous permet d'exporter des imprimantes vers Samba de sorte que des
-clients Windows puissent y acc&eacute;der via l'ic&oacirc;ne <VAR>Voisinage r&eacute;seau</VAR> ou
-<VAR>Favoris r&eacute;seau</VAR> du bureau. Vous devez au pr&eacute;alable installer les
-pilotes Windows d'imprimante PostScript : cf. la page <i>man</i> <A
-HREF="/help/man-cupsaddsmb.html" TARGET="_blank">cupsaddsmb(8)</A>.</P>}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Imprimantes:</TH>
-<TD>
-<SELECT NAME="EXPORT_NAME" SIZE="10" MULTIPLE>
-{[printer_name]<OPTION VALUE="{printer_name}"{export_all? SELECTED:{printer_export? SELECTED:}}>{printer_name}}
-</SELECT><BR>
-<INPUT TYPE="CHECKBOX" NAME="EXPORT_ALL"{export_all? CHECKED:}
-onChange="select_printers()"> Exporter toutes les imprimantes
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Utilisateur Samba:</TH>
-<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (required)</TD>
-</TR>
-<TR>
-<TH CLASS="label">Mot de passe Samba:</TH>
-<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (required)</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Exporter les imprimantes vers Samba"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/fr/samba-exported.tmpl b/templates/fr/samba-exported.tmpl
deleted file mode 100644
index d4ad778d..00000000
--- a/templates/fr/samba-exported.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P>Les imprimantes ont &eacute;t&eacute; export&eacute;es vers Samba avec succ&egrave;s.</P>
diff --git a/templates/fr/search.tmpl b/templates/fr/search.tmpl
deleted file mode 100644
index 50b1b4e7..00000000
--- a/templates/fr/search.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<FORM ACTION="/{SECTION}/{?SEARCH_DEST}" METHOD="GET">
-{WHICH_JOBS?<INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{WHICH_JOBS}">:}
-{ORDER?<INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{ORDER}">:}
-
-<P ALIGN="CENTER"><B>Rechercher dans
-{SEARCH_DEST?{SEARCH_DEST}:{SECTION=classes?les classes:{SECTION=jobs?les t&acirc;ches:les imprimantes}}}:</B>
-<INPUT TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER="" AUTOSAVE="org.cups.{SECTION}" RESULTS="20"> <INPUT
-TYPE="SUBMIT" VALUE="Rechercher"> <INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Vider"></P>
-
-</FORM>
diff --git a/templates/fr/set-printer-options-header.tmpl b/templates/fr/set-printer-options-header.tmpl
deleted file mode 100644
index 12e0b1d1..00000000
--- a/templates/fr/set-printer-options-header.tmpl
+++ /dev/null
@@ -1,26 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">D&eacute;finir les Options pour {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{HAVE_AUTOCONFIGURE?<INPUT TYPE="SUBMIT" NAME="AUTOCONFIGURE" VALUE="Interroger l'imprimante pour les options par d&eacute;faut">:}
-
-<SCRIPT TYPE="text/javascript"><!--
-function update_paramtable(option)
-{
- var cb = document.getElementById("select-" + option)
- var paramstable = document.getElementById(option + "-params");
- if (cb.value == "Custom")
- paramstable.style.display = "table";
- else
- paramstable.style.display = "none";
-}
---></SCRIPT>
-
-<H3 CLASS="title">{[group_id]
-<A HREF="#{group_id}">{group}</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</H3>
-
-<DIV CLASS="tabs">
diff --git a/templates/fr/set-printer-options-trailer.tmpl b/templates/fr/set-printer-options-trailer.tmpl
deleted file mode 100644
index 11adc701..00000000
--- a/templates/fr/set-printer-options-trailer.tmpl
+++ /dev/null
@@ -1,16 +0,0 @@
-</DIV>
-
-<SCRIPT TYPE="text/javascript"><!--
-// Hide custom options parameters for browsers that understand Javascript
-var paramtables = document.getElementsByName("paramtable");
-for (var i = 0; i < paramtables.length; i++)
-{
- var opt = paramtables[i].id.substr(0, paramtables[i].id.lastIndexOf("-"));
- var cb = document.getElementById("select-" + opt);
- if (cb.value != "Custom")
- paramtables[i].style.display = "none";
-}
---></SCRIPT>
-</FORM>
-
-</DIV>
diff --git a/templates/fr/subscription-added.tmpl b/templates/fr/subscription-added.tmpl
deleted file mode 100644
index 54ffe8fb..00000000
--- a/templates/fr/subscription-added.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>L'abonnement au flux RSS {subscription_name} a &eacute;t&eacute; ajout&eacute; avec succ&egrave;s.</P>
-
-</DIV>
diff --git a/templates/fr/subscription-canceled.tmpl b/templates/fr/subscription-canceled.tmpl
deleted file mode 100644
index d453611b..00000000
--- a/templates/fr/subscription-canceled.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>L'abonnement #{notify_subscription_id}au flux RSS a &eacute;t&eacute; annul&eacute;.</P>
-
-</DIV>
diff --git a/templates/fr/test-page.tmpl b/templates/fr/test-page.tmpl
deleted file mode 100644
index 8be7c6f7..00000000
--- a/templates/fr/test-page.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Imprimer une Page de Test sur {printer_name}</H2>
-
-<P>La page de test a &eacute;t&eacute; envoy&eacute;e; l'identifiant de la t&acirc;che est <A HREF="/{SECTION}/{printer_name}">
-{printer_name}-{job_id}</A>.</P>
-
-</DIV>
diff --git a/templates/fr/trailer.tmpl b/templates/fr/trailer.tmpl
deleted file mode 100644
index c92c9dc6..00000000
--- a/templates/fr/trailer.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS et le logo CUPS sont des marques d&eacute;pos&eacute;es de
-<A HREF="http://www.apple.com">Apple Inc.</A> CUPS est sous copyright 2007-2012 Apple
-Inc. Tous droits r&eacute;serv&eacute;s.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/templates/fr/users.tmpl b/templates/fr/users.tmpl
deleted file mode 100644
index cb9a0527..00000000
--- a/templates/fr/users.tmpl
+++ /dev/null
@@ -1,30 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{OP}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-{IS_CLASS?<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="{IS_CLASS}">:}
-
-<H2 CLASS="title">Utilisateurs autoris&eacute;s &agrave; utiliser {printer_name}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Utilisateurs:</TH>
-<TD>
-<INPUT TYPE='TEXT' NAME='users' SIZE='60' VALUE='{?requesting_user_name_allowed}{?requesting_user_name_denied}'>
-<BR>
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-allowed' {requesting_user_name_allowed?checked:}>Autoriser ces utilisateurs &agrave; imprimer
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-denied' {requesting_user_name_denied?checked:}>Emp&ecirc;cher ces utilisateurs d'imprimer
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>
-<INPUT TYPE="SUBMIT" VALUE="D&eacute;finir les autorisations">
-</TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/header.tmpl.in b/templates/header.tmpl.in
index a383725c..71a39f10 100644
--- a/templates/header.tmpl.in
+++ b/templates/header.tmpl.in
@@ -14,12 +14,12 @@
<TR HEIGHT="36">
<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;Home&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=admin?:un}sel"><A HREF="/admin">&nbsp;&nbsp;Administration&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=classes?:un}sel"><A HREF="/classes/">&nbsp;&nbsp;Classes&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=help?:un}sel"><A HREF="/help/">&nbsp;&nbsp;Online&nbsp;Help&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=jobs?:un}sel"><A HREF="/jobs/">&nbsp;&nbsp;Jobs&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=printers?:un}sel"><A HREF="/printers/">&nbsp;&nbsp;Printers&nbsp;&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;ホーム&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=admin?:un}sel"><A HREF="/admin">&nbsp;&nbsp;管ç†&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=classes?:un}sel"><A HREF="/classes/">&nbsp;&nbsp;クラス&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=help?:un}sel"><A HREF="/help/">&nbsp;&nbsp;ヘルプ&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=jobs?:un}sel"><A HREF="/jobs/">&nbsp;&nbsp;ジョブ&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=printers?:un}sel"><A HREF="/printers/">&nbsp;&nbsp;プリンター&nbsp;&nbsp;</A></TD>
<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
VALUE="{SECTION=help?{?QUERY}:}" AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
diff --git a/templates/help-header.tmpl b/templates/help-header.tmpl
index 70d8d501..09741b54 100644
--- a/templates/help-header.tmpl
+++ b/templates/help-header.tmpl
@@ -43,7 +43,7 @@ online help information.</P>
<P>If you are new to CUPS, read the "<a
href="/help/overview.html">Overview of CUPS</a>" page. Veteran users
should read the "<a href="/help/whatsnew.html">What's New in CUPS
-1.5</a>" page.</P>
+1.6</a>" page.</P>
<P>The <A HREF="http://www.cups.org/">CUPS home page</A> also
provides many resources including user discussion forums, answers
diff --git a/templates/hu/add-class.tmpl b/templates/hu/add-class.tmpl
deleted file mode 100644
index fcfec00a..00000000
--- a/templates/hu/add-class.tmpl
+++ /dev/null
@@ -1,41 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Osztály hozzáadása</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Név:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(TetszÅ‘leges nyomtatható karaktert tartalmazhat, kivéve a „/â€, „#†és szóköz karaktereket)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Leírás:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(KözérthetÅ‘ leírás, mint például „HP LaserJet duplexerrelâ€)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Hely:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(KözérthetÅ‘ hely, mint például „1-es laborâ€)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Tagok:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>
-<INPUT TYPE="SUBMIT" VALUE="Osztály hozzáadása"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/hu/add-printer.tmpl b/templates/hu/add-printer.tmpl
deleted file mode 100644
index 64006995..00000000
--- a/templates/hu/add-printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Nyomtató hozzáadása</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-{?current_make!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE" VALUE="{current_make}">:}
-{?current_make_and_model!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{current_make_and_model}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Név:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?template_name}"><BR>
-<SMALL>(TetszÅ‘leges nyomtatható karaktert tartalmazhat, kivéve a „/â€, „#†és szóköz karaktereket)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Leírás:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_INFO}"><BR>
-<SMALL>(KözérthetÅ‘ leírás, mint például „HP LaserJet duplexerrelâ€)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Hely:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_LOCATION}"><BR>
-<SMALL>(KözérthetÅ‘ hely, mint például „1-es laborâ€)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kapcsolat:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Megosztás:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED"
-{PRINTER_IS_SHARED=1?CHECKED:}> Nyomtató megosztása</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Folytatás"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/hu/add-rss-subscription.tmpl b/templates/hu/add-rss-subscription.tmpl
deleted file mode 100644
index 7d66a29f..00000000
--- a/templates/hu/add-rss-subscription.tmpl
+++ /dev/null
@@ -1,58 +0,0 @@
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription">
-
-<H2 CLASS="title">RSS-hírforrás hozzáadása</H2>
-
-<TABLE SUMMARY="RSS-feliratkozás hozzáadása űrlap">
-<TR>
-<TH CLASS="label">Név:</TH>
-<TD COLSPAN="5"><INPUT TYPE="TEXT" NAME="SUBSCRIPTION_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?SUBSCRIPTION_NAME}"><BR>
-<SMALL>(Tetszőleges nyomtatható karaktert tartalmazhat, kivéve a szóközt,
-a „/â€, „?â€, és „#†karaktereket)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Sor:</TH>
-<TD COLSPAN="5"><SELECT NAME="PRINTER_URI" SIZE="10"><OPTION VALUE="#ALL#"{?PRINTER_URI=#ALL#? SELECTED:}>Minden
-sor</OPTION>{[printer_name]<OPTION VALUE="{printer_uri_supported}"{?PRINTER_URI={printer_uri_supported}? SELECTED:}>{printer_name}</OPTION>}</SELECT></TD>
-</TR>
-<TR VALIGN="TOP">
-<TH CLASS="label">Események:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CREATED"
-{?EVENT_JOB_CREATED}>Feladat létrehozva<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_COMPLETED"
-{?EVENT_JOB_COMPLETED}>Feladat befejeződött<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_STOPPED"
-{?EVENT_JOB_STOPPED}>Feladat leállítva<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CONFIG_CHANGED"
-{?EVENT_JOB_CONFIG_CHANGED}>Feladat beállításai módosítva</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_STOPPED"
-{?EVENT_PRINTER_STOPPED}>Sor leállítva<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_ADDED"
-{?EVENT_PRINTER_ADDED}>Sor hozzáadva<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_MODIFIED"
-{?EVENT_PRINTER_MODIFIED}>Sor módosítva<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_DELETED"
-{?EVENT_PRINTER_DELETED}>Sor törölve</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STARTED"
-{?EVENT_SERVER_STARTED}>Kiszolgáló elindítva<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STOPPED"
-{?EVENT_SERVER_STOPPED}>Kiszolgáló leállítva<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_RESTARTED"
-{?EVENT_SERVER_RESTARTED}>Kiszolgáló újraindítva<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_AUDIT"
-{?EVENT_SERVER_AUDIT}>Kiszolgáló biztonsági megfigyelése</TD>
-</TR>
-<TR>
-<TH CLASS="label">Események maximális száma a hírforrásban:</TH>
-<TD COLSPAN="5"><INPUT TYPE="NUMBER" NAME="MAX_EVENTS" SIZE="4" MAXLENGTH="4" VALUE="{MAX_EVENTS?{MAX_EVENTS}:20}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD COLSPAN="5"><INPUT TYPE="SUBMIT" VALUE="RSS-hírforrás hozzáadása"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/hu/admin.tmpl b/templates/hu/admin.tmpl
deleted file mode 100644
index 6e495a0c..00000000
--- a/templates/hu/admin.tmpl
+++ /dev/null
@@ -1,134 +0,0 @@
-<TABLE CLASS="indent" SUMMARY="Adminisztrációs feladatok">
-<TR><TD VALIGN="TOP">
-
-<H2 CLASS="title">Nyomtatók</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer">
-<INPUT TYPE="SUBMIT" VALUE="Nyomtató hozzáadása"></FORM>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="find-new-printers">
-<INPUT TYPE="SUBMIT" VALUE="Új nyomtatók keresése"></FORM>
-<FORM ACTION="/printers/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Nyomtatók kezelése"></FORM>
-{have_samba?<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba"><INPUT TYPE="SUBMIT" VALUE="Nyomtatók
-exportálása Samba megosztáshoz"></FORM>:}
-</P>
-
-<H2 CLASS="title">Osztályok</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-class">
-<INPUT TYPE="SUBMIT" VALUE="Osztály hozzáadása"></FORM>
-<FORM ACTION="/classes/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Osztályok kezelése"></FORM>
-</P>
-
-<H2 CLASS="title">Feladatok</H2>
-
-<P>
-<FORM ACTION="/jobs/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Feladatok kezelése"></FORM>
-</P>
-
-</TD><TD>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD><TD VALIGN="TOP">
-
-<H2 CLASS="title">Kiszolgáló</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server"><INPUT TYPE="SUBMIT" VALUE="Konfigurációs fájl szerkesztése"></FORM>
-<FORM ACTION="/admin/log/access_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Hozzáférési napló megjelenítése"></FORM>
-<FORM ACTION="/admin/log/error_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Hibanapló megjelenítése"></FORM>
-<FORM ACTION="/admin/log/page_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Oldalnapló megjelenítése"></FORM>
-</P>
-
-{SETTINGS_ERROR?<P>{SETTINGS_MESSAGE}</P>
-<BLOCKQUOTE>{SETTINGS_ERROR}</BLOCKQUOTE>:
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-
-{ADVANCEDSETTINGS?<P><B>Kiszolgálóbeállítások\:</B></P>
-
-<P><A HREF="/admin/">Speciális <SMALL>&#x25bc;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Más
-rendszerek által megosztott nyomtatók megjelenítése<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protokollok\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> A
-rendszerhez csatlakozó nyomtatók megosztása<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Kliensek max.\:
-<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protokollok\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY"
-{?remote_any}> Nyomtatás engedélyezése az internetről<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF"
-{?browse_web_if}> Webes felület hirdetése<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Távoli
-adminisztráció engedélyezése<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Kerberos
-hitelesítés használata (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> A
-felhasználók bármely feladatot megszakíthatják (nem csak a sajátjukat)<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY"
-{?preserve_job_history}> Feladatelőzmények megőrzése<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Feladatok száma\:
-<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES"
-{?preserve_job_files}> Feladatok nyomtatási fájljainak megőrzése<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Hibakeresési
-információk mentése hibaelhárításhoz<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Naplófájlméret max.\:
-<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
-
-:<P><B>Kiszolgálóbeállítások:</B></P>
-
-<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Speciális
-<SMALL>&#x25b6;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Más
-rendszerek által megosztott nyomtatók megjelenítése<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> A
-rendszerhez csatlakozó nyomtatók megosztása<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY"
-{?remote_any}> Nyomtatás engedélyezése az internetről<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Távoli
-adminisztráció engedélyezése<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Kerberos
-hitelesítés használata (<A
-HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> A
-felhasználók bármely feladatot megszakíthatják (nem csak a sajátjukat)<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Hibakeresési
-információk mentése hibaelhárításhoz</P>
-
-}
-<P><INPUT TYPE="SUBMIT" NAME="CHANGESETTINGS" VALUE="Beállítások módosítása"></P>
-
-</FORM>}
-
-</TD></TR>
-</TABLE>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">RSS-hírforrások</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="RSS-hírforrás hozzáadása"></FORM>
-</P>
-
-</DIV>
-
-{notify_subscription_id?<TABLE CLASS="list" SUMMARY="RSS-feliratkozások">
-<THEAD><TR><TH>Név</TH><TH>Események</TH><TH>Sor neve</TH></TR></THEAD>
-<TBODY>{[notify_subscription_id]
-<TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="RSS-hírforrás törlése"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Minden
-sor}</TD></TR>}
-</TBODY>
-</TABLE>:}
diff --git a/templates/hu/choose-make.tmpl b/templates/hu/choose-make.tmpl
deleted file mode 100644
index e554a6db..00000000
--- a/templates/hu/choose-make.tmpl
+++ /dev/null
@@ -1,65 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?{printer_name} módosítása:Nyomtató
-hozzáadása}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Név:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Leírás:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Hely:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Kapcsolat:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Megosztás:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Nincs megosztva:{?printer_is_shared=0?:Nyomtató megosztása}}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Gyártó:</TH>
-<TD>
-<SELECT NAME="PPD_MAKE" SIZE="10">
-{[ppd_make]<OPTION VALUE="{ppd_make}" {?current_make={ppd_make}?SELECTED:}>{ppd_make}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Folytatás"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR>
-<TH CLASS="label">Vagy adjon meg egy PPD-fájlt:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Nyomtató hozzáadása:Nyomtató módosítása}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/hu/choose-model.tmpl b/templates/hu/choose-model.tmpl
deleted file mode 100644
index 34a455da..00000000
--- a/templates/hu/choose-model.tmpl
+++ /dev/null
@@ -1,61 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?{printer_name} módosítása:Nyomtató hozzáadása}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Név:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Leírás:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Hely:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Kapcsolat:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Megosztás:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Nincs megosztva:{?printer_is_shared=0?:Nyomtató
-megosztása}}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Gyártó:</TH>
-<TD>{PPD_MAKE} <INPUT TYPE="SUBMIT" NAME="SELECT_MAKE" VALUE="Másik gyártó választása"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Modell:</TH>
-<TD>
-<SELECT NAME="PPD_NAME" SIZE="10">
-{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Jelenlegi illesztőprogram - {current_make_and_model}</OPTION>:}
-{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
-}</SELECT>
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Vagy adjon meg egy PPD-fájlt:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Nyomtató hozzáadása:Nyomtató módosítása}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/hu/choose-serial.tmpl b/templates/hu/choose-serial.tmpl
deleted file mode 100644
index a661cfd2..00000000
--- a/templates/hu/choose-serial.tmpl
+++ /dev/null
@@ -1,53 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?{printer_name} módosítása:Nyomtató
-hozzáadása}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Kapcsolat:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Adatátviteli sebesség:</TH>
-<TD><SELECT NAME="BAUDRATE">
-{[baudrates]<OPTION {?baudrate={baudrates}?SELECTED:}>{baudrates}}
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Paritás:</TH>
-<TD><SELECT NAME="PARITY">
-<OPTION VALUE="none" {?parity=none?SELECTED:}>Nincs
-<OPTION VALUE="even" {?parity=even?SELECTED:}>Páros
-<OPTION VALUE="odd" {?parity=odd?SELECTED:}>Páratlan
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Adatbitek:</TH>
-<TD><SELECT NAME="BITS">
-<OPTION {?bits=8?SELECTED:}>8
-<OPTION {?bits=7?SELECTED:}>7
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Folyamvezérlés:</TH>
-<TD><SELECT NAME="FLOW">
-<OPTION VALUE="none" {?flow=none?SELECTED:}>Nincs
-<OPTION VALUE="soft" {?flow=soft?SELECTED:}>XON/XOFF (szoftveres)
-<OPTION VALUE="hard" {?flow=hard?SELECTED:}>RTS/CTS (hardveres)
-<OPTION VALUE="dtrdsr" {?flow=dtrdsr?SELECTED:}>DTR/DSR (hardveres)
-</SELECT></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Folytatás"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/hu/choose-uri.tmpl b/templates/hu/choose-uri.tmpl
deleted file mode 100644
index 687c744b..00000000
--- a/templates/hu/choose-uri.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?{printer_name} módosítása:Nyomtató
-hozzáadása}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{?current_make_and_model}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Kapcsolat:</TH>
-<TD><INPUT TYPE="URL" SIZE="60" MAXLENGTH="1023" NAME="DEVICE_URI" VALUE="{current_device_uri?{current_device_uri}:{device_uri}}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>Példák:
-<PRE>
- http://gépnév:631/ipp/
- http://gépnév:631/ipp/port1
-
- ipp://gépnév/ipp/
- ipp://gépnév/ipp/port1
-
- lpd://gépnév/nyomtatásisor
-
- socket://gépnév
- socket://gépnév:9100
-</PRE>
-
-<P>A nyomtatóval használandó helyes URI-címért nézze meg a „<A HREF="/help/network.html" TARGET="_blank">Hálózati nyomtatók</A>†oldalt.</P>
-
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Folytatás"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/hu/class-added.tmpl b/templates/hu/class-added.tmpl
deleted file mode 100644
index a313c426..00000000
--- a/templates/hu/class-added.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Osztály hozzáadása</H2>
-
-<P>A(z) <A HREF="/classes/{printer_name}">{printer_name}</A> osztály
-sikeresen hozzáadva.
-</DIV>
diff --git a/templates/hu/class-confirm.tmpl b/templates/hu/class-confirm.tmpl
deleted file mode 100644
index 89b5b7c9..00000000
--- a/templates/hu/class-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} osztály törlése</H2>
-
-<P><B>Figyelmeztetés:</B> Biztosan törli a következő osztályt:
-{printer_name}?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="op" VALUE="delete-class"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Osztály törlése"></FORM></P>
-
-</DIV>
diff --git a/templates/hu/class-deleted.tmpl b/templates/hu/class-deleted.tmpl
deleted file mode 100644
index b6743c79..00000000
--- a/templates/hu/class-deleted.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} osztály törlése</H2>
-
-<P>A(z) {printer_name} osztály sikeresen törölve.
-</DIV> \ No newline at end of file
diff --git a/templates/hu/class-jobs-header.tmpl b/templates/hu/class-jobs-header.tmpl
deleted file mode 100644
index 0ed221c2..00000000
--- a/templates/hu/class-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Feladatok</H3>
-</DIV>
diff --git a/templates/hu/class-modified.tmpl b/templates/hu/class-modified.tmpl
deleted file mode 100644
index b344c926..00000000
--- a/templates/hu/class-modified.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} osztály módosítása</H2>
-
-<P>A(z) <A HREF="/classes/{printer_name}">{printer_name}</A> osztály
-sikeresen módosítva.
-</DIV> \ No newline at end of file
diff --git a/templates/hu/class.tmpl b/templates/hu/class.tmpl
deleted file mode 100644
index 92f2ac1e..00000000
--- a/templates/hu/class.tmpl
+++ /dev/null
@@ -1,48 +0,0 @@
-<DIV CLASS="indent">
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Tétlen:{printer_state=4?Feldolgozás:Szüneteltetve}},
-{printer_is_accepting_jobs=0?visszautasítja a feladatokat:elfogad
-feladatokat},
-{server_is_sharing_printers=0?nem:{printer_is_shared=0?nem:}}
-megosztott{default_name={printer_name}?, kiszolgáló alapértelmezettje:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Karbantartás</OPTION>
-<OPTION VALUE="print-test-page">Tesztoldal nyomtatása</OPTION>
-{printer_state=5?<OPTION VALUE="start-class">Osztály folytatása</OPTION>:<OPTION VALUE="stop-class">
-Osztály szüneteltetése</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Feladatok
-elfogadása</OPTION>:<OPTION VALUE="reject-jobs">Feladatok visszautasítása</OPTION>}
-<OPTION VALUE="move-jobs">Minden feladat mozgatása</OPTION>
-<OPTION VALUE="purge-jobs">Minden feladat megszakítása</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Ugrás" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="1">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Adminisztráció</OPTION>
-<OPTION VALUE="modify-class">Osztály módosítása</OPTION>
-<OPTION VALUE="delete-class">Osztály törlése</OPTION>
-<OPTION VALUE="set-class-options">Alapértelmezett beállítások megadása</OPTION>
-<OPTION VALUE="set-as-default">Beállítás a kiszolgáló alapértelmezettjeként</OPTION>
-<OPTION VALUE="set-allowed-users">Engedélyezett felhasználók megadása</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Ugrás" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Leírás:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Hely:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Tagok:</TH><TD>{?member_uris=?Nincs:{member_uris}}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Alapértelmezések:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:ismeretlen}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/hu/classes-header.tmpl b/templates/hu/classes-header.tmpl
deleted file mode 100644
index 7ed2742a..00000000
--- a/templates/hu/classes-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Nincsenek osztályok:{total} osztályból {#printer_name} megjelenítve.</P>
diff --git a/templates/hu/classes.tmpl b/templates/hu/classes.tmpl
deleted file mode 100644
index 86c6fbc7..00000000
--- a/templates/hu/classes.tmpl
+++ /dev/null
@@ -1,15 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Osztálylista">
-<THEAD>
-<TR><TH><A
-HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL>
-Sor neve <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Sor neve
-<SMALL>&#x25bc;</SMALL>}</A></TH><TH>
-Leírás</TH><TH>Hely</TH><TH>Tagok</TH><TH>Ãllapot</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?Nincs:{member_uris}}</TD><TD>{printer_state=3?Tétlen:{printer_state=4?Feldolgozás:Szüneteltetve}}{printer_state_message?
-- "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/hu/command.tmpl b/templates/hu/command.tmpl
deleted file mode 100644
index 4d198ba8..00000000
--- a/templates/hu/command.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{title} ezen: {printer_name}</H2>
-
-<P>{job_state>5?:<IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16"
-ALIGN="ABSMIDDLE" ALT="Foglalt jelzés"> }Nyomtató parancs feladat
-{job_state=3?függőben:{job_state=4?felfüggesztve:
-{job_state=5?feldolgozás:{job_state=6?leállítva:
-{job_state=7?megszakítva:{job_state=8?félbeszakítva:befejeződött}}}}}}{job_state=9?:{job_printer_state_message?,
-<EM>"{job_printer_state_message}"</EM>:}}</P>
-
-</DIV>
diff --git a/templates/hu/edit-config.tmpl b/templates/hu/edit-config.tmpl
deleted file mode 100644
index 430ef343..00000000
--- a/templates/hu/edit-config.tmpl
+++ /dev/null
@@ -1,24 +0,0 @@
-<SCRIPT TYPE="text/javascript">
-function reset_config()
-{
- document.cups.CUPSDCONF.value = "{?cupsdconf_default}";
-}
-</SCRIPT>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Konfigurációs fájl szerkesztése</H2>
-
-<FORM NAME="cups" METHOD="POST" ACTION="/admin/">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-
-<TEXTAREA NAME="CUPSDCONF" COLS="80" ROWS="25">{CUPSDCONF}</TEXTAREA>
-
-<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="Módosítások mentése">
-<INPUT TYPE="BUTTON" VALUE="Alapértelmezett konfigurációs fájl
-használata" onClick="reset_config();"></P>
-
-</FORM>
-
-</DIV>
diff --git a/templates/hu/error-op.tmpl b/templates/hu/error-op.tmpl
deleted file mode 100644
index bbd267aa..00000000
--- a/templates/hu/error-op.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?title} {?printer_name} hiba</H2>
-
-<P>Hiba:</P>
-
-<BLOCKQUOTE>Ismeretlen művelet: "{op}"!</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/hu/error.tmpl b/templates/hu/error.tmpl
deleted file mode 100644
index 7366c86c..00000000
--- a/templates/hu/error.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?title} {?printer_name} hiba</H2>
-
-<P>{?message?{message}:Hiba:}</P>
-
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/hu/header.tmpl.in b/templates/hu/header.tmpl.in
deleted file mode 100644
index 6d123f33..00000000
--- a/templates/hu/header.tmpl.in
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{title} - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
- {refresh_page?<META HTTP-EQUIV="Refresh" CONTENT="{refresh_page}">:}
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;Kezdőoldal&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=admin?:un}sel"><A
-HREF="/admin">&nbsp;&nbsp;Adminisztráció&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=classes?:un}sel"><A
-HREF="/classes/">&nbsp;&nbsp;Osztályok&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=help?:un}sel"><A
-HREF="/help/">&nbsp;&nbsp;Online&nbsp;súgó&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=jobs?:un}sel"><A
-HREF="/jobs/">&nbsp;&nbsp;Feladatok&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=printers?:un}sel"><A
-HREF="/printers/">&nbsp;&nbsp;Nyomtatók&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Keresés a súgóban"
-VALUE="{SECTION=help?{?QUERY}:}" AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-<TR><TD COLSPAN="9">&nbsp;</TD></TR>
-</TABLE>
diff --git a/templates/hu/help-header.tmpl b/templates/hu/help-header.tmpl
deleted file mode 100755
index 4cd362f0..00000000
--- a/templates/hu/help-header.tmpl
+++ /dev/null
@@ -1,52 +0,0 @@
-<DIV CLASS="indent">
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET">
-{TOPIC?<INPUT TYPE="HIDDEN" NAME="TOPIC" VALUE="{TOPIC}">:}
-
-<P ALIGN="CENTER"><B>Keresés itt\:
-{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:minden dokumentáció}}:</B> <INPUT
-TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER=""
-AUTOSAVE="org.cups.help" RESULTS="20">
-<INPUT TYPE="SUBMIT" NAME="SEARCH" VALUE="Keresés">
-<INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Törlés"></P>
-
-</FORM>
-
-<!-- Bookmarks -->
-<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="Tartalom">
-<TR><TD>
-
-<H3 CLASS="title">Online súgódokumentumok</H3>
-
-<P CLASS="l0"><A HREF="/help/{QUERY??QUERY={QUERY}:}">Minden dokumentáció</A></P>
-<HR>
-
-{[BMTEXT]<P CLASS="l{BMINDENT}"><A HREF="{BMLINK}">{BMTEXT}</A></P>
-}
-</TD></TR>
-</TABLE></DIV>
-
-{QUERY?<P>Találatok itt\: {HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:minden
-dokumentáció}}\:</P>
-{QTEXT?<UL>
-{[QTEXT]<LI><A HREF="{QLINK}">{QTEXT}</A>{QPTEXT? (itt\: <I><A
-HREF="{QPLINK}">{QPTEXT}</A></I>):}</LI>}
-{QTEXT?</UL>:}
-:<P>Nincs találat.</P>}
-<HR NOSHADE>:}
-{HELPTITLE?<H1>{HELPTITLE}</H1>
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="PRINTABLE" VALUE="YES"><INPUT TYPE="SUBMIT" VALUE="Nyomtatható változat megjelenítése"></FORM>:
-
-<H1>Online súgó</H1>
-
-<P>Ez a CUPS online súgófelülete. Adja meg fentebb a keresőkifejezéseket,
-vagy kattintson a dokumentációs linkekre az online súgóinformációk
-megjelenítéséhez.</P>
-
-<P>Ha új CUPS felhasználó, olvassa el a „<a href="/help/overview.html">CUPS bemutatása</a>†oldalt. A tapasztalt
-felhasználóknak „<a href="/help/whatsnew.html">A CUPS 1.5 újdonságai</a>â€
-oldal elolvasását ajánljuk.</P>
-
-<P>A <A HREF="http://www.cups.org/">CUPS honlapja</A> is számos (angol
-nyelvű) információforrást biztosít, beleértve a felhasználói fórumokat,
-válaszokat a gyakran feltett kérdésekre és egy űrlapot hibajelentések és
-szolgáltatáskérések beküldéséhez.</P>}
diff --git a/templates/hu/help-printable.tmpl b/templates/hu/help-printable.tmpl
deleted file mode 100644
index 2463c163..00000000
--- a/templates/hu/help-printable.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{HELPTITLE}</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups-printable.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
diff --git a/templates/hu/help-trailer.tmpl b/templates/hu/help-trailer.tmpl
deleted file mode 100644
index 4c1ebed8..00000000
--- a/templates/hu/help-trailer.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-</DIV>
diff --git a/templates/hu/job-cancel.tmpl b/templates/hu/job-cancel.tmpl
deleted file mode 100644
index 45346413..00000000
--- a/templates/hu/job-cancel.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id}. feladat megszakítása</H2>
-
-<P>A(z) <A HREF="{job_printer_uri}">{job_id}. feladat</A> megszakítva.
-</DIV>
diff --git a/templates/hu/job-hold.tmpl b/templates/hu/job-hold.tmpl
deleted file mode 100644
index 78e15a13..00000000
--- a/templates/hu/job-hold.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id}. feladat felfüggesztése</H2>
-
-<P>A(z) <A HREF="{job_printer_uri}">{job_id}. feladat</A>
-nyomtatása felfüggesztve.
-</DIV>
diff --git a/templates/hu/job-move.tmpl b/templates/hu/job-move.tmpl
deleted file mode 100644
index 7a822c3e..00000000
--- a/templates/hu/job-move.tmpl
+++ /dev/null
@@ -1,27 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/{SECTION}/{job_id?:{printer_name}}">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{job_id?<INPUT TYPE="HIDDEN" NAME="JOB_ID" VALUE="{job_id}">:}
-
-<H2 CLASS="title">{job_id?Feladat mozgatása {job_id}:Minden feladat mozgatása}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Új cél:</TH>
-<TD>
-<SELECT NAME="JOB_PRINTER_URI" SIZE="10">
-{[job_printer_uri]<OPTION VALUE="{job_printer_uri}">{job_printer_name}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{job_id?Feladat mozgatása:Feladatok mozgatása}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-
-</DIV>
diff --git a/templates/hu/job-moved.tmpl b/templates/hu/job-moved.tmpl
deleted file mode 100644
index 0d4fc32f..00000000
--- a/templates/hu/job-moved.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id?Feladat mozgatása {job_id}:Minden feladat
-mozgatása}</H2>
-
-<P>{job_id?<A HREF="/jobs/{job_id}">A(z) {job_id}. feladat</A>:Minden
-feladat} átmozgatva ide: <A
-HREF="/{is_class?classes:printers}/{job_printer_name}">{job_printer_name}</A>.</P>
-
-</DIV>
diff --git a/templates/hu/job-release.tmpl b/templates/hu/job-release.tmpl
deleted file mode 100644
index 6e788af3..00000000
--- a/templates/hu/job-release.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id}. feladat kiadása</H2>
-
-<P>A(z) <A HREF="{job_printer_uri}">{job_id}. feladat</A> nyomtatásra
-kiadva.
-</DIV>
diff --git a/templates/hu/job-restart.tmpl b/templates/hu/job-restart.tmpl
deleted file mode 100644
index c0fee697..00000000
--- a/templates/hu/job-restart.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id}. feladat újranyomtatása</H2>
-
-<P>A(z) <A HREF="{job_printer_uri}">{job_id}. feladat</A> újraindítva.
-</DIV>
diff --git a/templates/hu/jobs-header.tmpl b/templates/hu/jobs-header.tmpl
deleted file mode 100644
index 21d46470..00000000
--- a/templates/hu/jobs-header.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">{?which_jobs=?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Aktív feladatok megjelenítése"></FORM>}
-{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="Befejezett feladatok megjelenítése"></FORM>}
-{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="Minden feladat megjelenítése"></FORM>}</DIV>
-
-<P ALIGN="CENTER">{total=0?Nincsenek feladatok:{total}
-{?which_jobs=?aktív:{which_jobs=all?:befejezett}} feladatból {#job_id}
-megjelenítve.</P>
diff --git a/templates/hu/jobs.tmpl b/templates/hu/jobs.tmpl
deleted file mode 100644
index 4cc60a25..00000000
--- a/templates/hu/jobs.tmpl
+++ /dev/null
@@ -1,40 +0,0 @@
-{#job_id=0?:
-<TABLE CLASS="list" SUMMARY="Job List">
-<THEAD>
-<TR><TH><A
-HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL>
-Azonosító <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Azonosító
-<SMALL>&#x25bc;</SMALL>}</A></TH><TH>
-Név</TH><TH>Felhasználó</TH><TH>Méret</TH><TH>Oldalak</TH><TH>Ãllapot</TH><TH>Vezérlés</TH></TR>
-</THEAD>
-<TBODY>
-{[job_id]
-<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
-<TD>{?job_name=?Ismeretlen:{job_name}}&nbsp;</TD>
-<TD>{?job_originating_user_name=?Visszatartott:{job_originating_user_name}}&nbsp;</TD>
-<TD>{job_k_octets}k&nbsp;</TD>
-<TD>{job_media_sheets_completed=0?Ismeretlen:{?job_media_sheets_completed}}&nbsp;</TD>
-<TD>{job_state=3?függőben ezóta<BR>{time_at_creation}:{job_state=4?felfüggesztve ezóta<BR>{time_at_creation}: {job_state=5?feldolgozás ezóta<BR>{time_at_processing}:{job_state=6?megállítva:
-{job_state=7?megszakítva<BR>{time_at_completed}:{job_state=8?félbeszakítva:befejezve<BR>{time_at_completed}}}}}}}&nbsp;{job_printer_state_message?<BR>
-<EM>"{job_printer_state_message}"</EM>:}</TD>
-<TD>
-{job_preserved>0?{job_state>5?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Feladat újranyomtatása"></FORM>:}:}
-{job_state=4?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="release-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Feladat kiadása"></FORM>:}
-{job_state=3?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="hold-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Feladat felfüggesztése"></FORM>:}
-{job_state<7?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Feladat megszakítása"></FORM>
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="move-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="SUBMIT" VALUE="Feladat áthelyezése"></FORM>:}
-&nbsp;</TD>
-</TR>
-}
-</TBODY>
-</TABLE>
-}
diff --git a/templates/hu/list-available-printers.tmpl b/templates/hu/list-available-printers.tmpl
deleted file mode 100644
index b7f32a3a..00000000
--- a/templates/hu/list-available-printers.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Elérhető nyomtatók</H2>
-
-{#device_uri=0?<P>Nem találhatók nyomtatók.</P>
-:<UL>{[device_uri]
-<LI><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="HIDDEN" NAME="TEMPLATE_NAME" VALUE="{template_name}"><INPUT
-TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="Helyi nyomtató"><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{device_make_and_model}"><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}"><INPUT TYPE="SUBMIT" VALUE="Nyomtató hozzáadása"></FORM>
-{device_make_and_model} ({device_info})</LI>
-}</UL>}
-
-</DIV>
diff --git a/templates/hu/modify-class.tmpl b/templates/hu/modify-class.tmpl
deleted file mode 100644
index a687f999..00000000
--- a/templates/hu/modify-class.tmpl
+++ /dev/null
@@ -1,34 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} osztály módosítása</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Leírás:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Hely:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Tagok:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Osztály módosítása"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/hu/modify-printer.tmpl b/templates/hu/modify-printer.tmpl
deleted file mode 100644
index 76c2b7f0..00000000
--- a/templates/hu/modify-printer.tmpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} módosítása</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Leírás:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(KözérthetÅ‘ leírás, mint például „HP LaserJet duplexerrelâ€)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Hely:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(KözérthetÅ‘ hely, mint például „1-es laborâ€)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kapcsolat:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Megosztás:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED"
-{PRINTER_IS_SHARED=1?CHECKED:}> Nyomtató megosztása</TD>
-</TR>
-<TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Folytatás"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/hu/norestart.tmpl b/templates/hu/norestart.tmpl
deleted file mode 100644
index 7f7849dd..00000000
--- a/templates/hu/norestart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Beállítások módosítása</H2>
-
-<P>A kiszolgáló nem lett újraindítva, mivel a beállításokat nem
-módosította...</P>
-
-</DIV>
diff --git a/templates/hu/option-boolean.tmpl b/templates/hu/option-boolean.tmpl
deleted file mode 100644
index e832ee10..00000000
--- a/templates/hu/option-boolean.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD>
-{[choices]<INPUT TYPE="RADIO" NAME="{keyword-1}" {choices={defchoice-1}?CHECKED:} VALUE="{choices}">{text}}
-</TD>
-</TR>
diff --git a/templates/hu/option-conflict.tmpl b/templates/hu/option-conflict.tmpl
deleted file mode 100644
index 4a540ee1..00000000
--- a/templates/hu/option-conflict.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<P><B>Hiba:</B> A következő beállítások ütköznek:</P>
-
-<UL>
-{[ckeyword]<LI><A HREF="#{ckeyword}">{ckeytext}</A>: {cchoice}</LI>
-}</UL>
-
-<P>Az ütközés feloldása érdekében módosítsa legalább az egyik beállítást.</P>
diff --git a/templates/hu/option-header.tmpl b/templates/hu/option-header.tmpl
deleted file mode 100644
index 464726a5..00000000
--- a/templates/hu/option-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="tab" ID="{group_id}">
-
-<H3 ALIGN="CENTER">{group}</H3>
-
-<TABLE WIDTH="100%">
diff --git a/templates/hu/option-pickmany.tmpl b/templates/hu/option-pickmany.tmpl
deleted file mode 100644
index 0da75e5d..00000000
--- a/templates/hu/option-pickmany.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" MULTIPLE SIZE="10">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT></TD>
-</TR>
diff --git a/templates/hu/option-pickone.tmpl b/templates/hu/option-pickone.tmpl
deleted file mode 100644
index 31f46166..00000000
--- a/templates/hu/option-pickone.tmpl
+++ /dev/null
@@ -1,18 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" ID="select-{keyword}" ONCHANGE="update_paramtable('{keyword}')">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT>
-{iscustom=1?<TABLE NAME="paramtable" id="{keyword}-params">{[params]
-<TR><TH CLASS="sublabel">{paramtext}:</TH>
-<TD>{params=Units?<SELECT NAME="{keyword-1}.{params}">
-<OPTION VALUE="pt"{paramvalue=pt? SELECTED:}>Pont</OPTION>
-<OPTION VALUE="mm"{paramvalue=mm? SELECTED:}>Milliméter</OPTION>
-<OPTION VALUE="cm"{paramvalue=cm? SELECTED:}>Centiméter</OPTION>
-<OPTION VALUE="in"{paramvalue=in? SELECTED:}>Hüvelyk</OPTION>
-<OPTION VALUE="ft"{paramvalue=ft? SELECTED:}>Láb</OPTION>
-<OPTION VALUE="m"{paramvalue=m? SELECTED:}>Méter</OPTION>
-</SELECT>:<INPUT TYPE="{inputtype}" NAME="{keyword-1}.{params}" VALUE="{paramvalue}">}</TD></TR>
-}</TABLE>
-</TD>:}
-</TR>
diff --git a/templates/hu/option-trailer.tmpl b/templates/hu/option-trailer.tmpl
deleted file mode 100644
index f6e32319..00000000
--- a/templates/hu/option-trailer.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-</TABLE>
-
-<P ALIGN="CENTER"><INPUT TYPE="SUBMIT" VALUE="Alapértelmezett beállítások megadása"></P>
-
-</DIV> \ No newline at end of file
diff --git a/templates/hu/pager.tmpl b/templates/hu/pager.tmpl
deleted file mode 100644
index 6f0cca8a..00000000
--- a/templates/hu/pager.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TABLE CLASS="inset" SUMMARY="Lapozósáv">
-<TR>
- <TD WIDTH="50%">{PREV?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{PREV}"><INPUT TYPE="SUBMIT" VALUE="&#x25c0; Előző megjelenítése"></FORM>:&nbsp;}</TD>
- <TD WIDTH="50%" ALIGN="RIGHT">{NEXT?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{NEXT}"><INPUT TYPE="SUBMIT" VALUE="Következő megjelenítése &#x25b6;"></FORM>:&nbsp;}</TD>
-</TR>
-</TABLE>
diff --git a/templates/hu/printer-accept.tmpl b/templates/hu/printer-accept.tmpl
deleted file mode 100644
index 5a44e9dc..00000000
--- a/templates/hu/printer-accept.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Feladatok elfogadása a(z) {printer_name}
-{is_class?osztályban:nyomtatón}</H2>
-
-<P>A(z) <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?osztály:nyomtató} már elfogadja a feladatokat.</P>
-
-</DIV>
diff --git a/templates/hu/printer-added.tmpl b/templates/hu/printer-added.tmpl
deleted file mode 100644
index 93548ebc..00000000
--- a/templates/hu/printer-added.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Nyomtató hozzáadása</H2>
-
-<P>A(z) <A HREF="/printers/{printer_name}">{printer_name}</A> nyomtató
-sikeresen hozzáadva.
-</DIV>
diff --git a/templates/hu/printer-configured.tmpl b/templates/hu/printer-configured.tmpl
deleted file mode 100644
index e7a0b50c..00000000
--- a/templates/hu/printer-configured.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} alapértelmezett beállításainak megadása</H2>
-
-<P>{OP=set-class-options?A(z) <A HREF="/classes/{printer_name}">
-osztály:A(z) <A HREF="/printers/{printer_name}">}{printer_name}</A>
-nyomtató alapértelmezett beállításai sikeresen megadva.
-</DIV>
diff --git a/templates/hu/printer-confirm.tmpl b/templates/hu/printer-confirm.tmpl
deleted file mode 100644
index f8f7992a..00000000
--- a/templates/hu/printer-confirm.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} törlése</H2>
-
-<P><B>Figyelmeztetés:</B> Biztosan törli a következő nyomtatót: {printer_name}?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="delete-printer"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Nyomtató törlése"></FORM></P>
-
-</DIV>
diff --git a/templates/hu/printer-default.tmpl b/templates/hu/printer-default.tmpl
deleted file mode 100644
index 95a5fc1f..00000000
--- a/templates/hu/printer-default.tmpl
+++ /dev/null
@@ -1,13 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} {is_class?osztály:nyomtató} beállítása alapértelmezettként</H2>
-
-<P>A(z) <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?osztály:nyomtató} alapértelmezett nyomtatóvá téve a kiszolgálón.</P>
-
-<BLOCKQUOTE><B>Megjegyzés:</B> Az <TT>lpoptions</TT> parancs segítségével
-beállított felhasználói alapértelmezések felülbírálják ezt az
-alapértelmezett beállítást.</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/hu/printer-deleted.tmpl b/templates/hu/printer-deleted.tmpl
deleted file mode 100644
index 54419c1c..00000000
--- a/templates/hu/printer-deleted.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} törlése</H2>
-
-<P>A(z) {printer_name} nyomtató sikeresen törölve.
-</DIV>
diff --git a/templates/hu/printer-jobs-header.tmpl b/templates/hu/printer-jobs-header.tmpl
deleted file mode 100644
index 0ed221c2..00000000
--- a/templates/hu/printer-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Feladatok</H3>
-</DIV>
diff --git a/templates/hu/printer-modified.tmpl b/templates/hu/printer-modified.tmpl
deleted file mode 100644
index 7152c0fa..00000000
--- a/templates/hu/printer-modified.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} nyomtató módosítása</H2>
-
-<P>A(z) <A HREF="/printers/{printer_name}">{printer_name}</A> nyomtató
-sikeresen módosítva.
-
-</DIV> \ No newline at end of file
diff --git a/templates/hu/printer-purge.tmpl b/templates/hu/printer-purge.tmpl
deleted file mode 100644
index c9dd670e..00000000
--- a/templates/hu/printer-purge.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Feladatok eltávolítása a(z) {printer_name} {is_class?osztályból:nyomtatóról}</H2>
-
-<P>A(z) <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?osztály:nyomtató} összes feladata eltávolítva.</P>
-
-</DIV> \ No newline at end of file
diff --git a/templates/hu/printer-reject.tmpl b/templates/hu/printer-reject.tmpl
deleted file mode 100644
index cf5bf1e2..00000000
--- a/templates/hu/printer-reject.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Feladatok visszautasítása a(z) {printer_name} {is_class?osztályban:nyomtatón}</H2>
-
-<P>A(z) <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?osztály:nyomtató} már nem fogad el feladatokat.</P>
-
-</DIV>
diff --git a/templates/hu/printer-start.tmpl b/templates/hu/printer-start.tmpl
deleted file mode 100644
index 3a23c6bd..00000000
--- a/templates/hu/printer-start.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} {is_class?osztály:nyomtató} folytatása</H2>
-
-<P>A(z) <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?osztály:nyomtató} működése folytatódik.</P>
-
-</DIV> \ No newline at end of file
diff --git a/templates/hu/printer-stop.tmpl b/templates/hu/printer-stop.tmpl
deleted file mode 100644
index 7f95e72f..00000000
--- a/templates/hu/printer-stop.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} {is_class?osztály:nyomtató} szüneteltetése</H2>
-
-<P>A(z) <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-{is_class?osztály:nyomtató} működése szünetel.</P>
-
-</DIV> \ No newline at end of file
diff --git a/templates/hu/printer.tmpl b/templates/hu/printer.tmpl
deleted file mode 100644
index c4a4dceb..00000000
--- a/templates/hu/printer.tmpl
+++ /dev/null
@@ -1,52 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Tétlen:{printer_state=4?Feldolgozás:Szüneteltetve}},
-{printer_is_accepting_jobs=0?visszautasítja a feladatokat:elfogad
-feladatokat},
-{server_is_sharing_printers=0?nem:{printer_is_shared=0?nem:}}
-megosztott{default_name={printer_name}?, kiszolgáló alapértelmezettje:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Karbantartás</OPTION>
-<OPTION VALUE="print-test-page">Tesztoldal nyomtatása</OPTION>
-{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">Nyomtatófejek
-tisztítása</OPTION>:}
-{printer_commands~.*PrintSelfTestPage.*?<OPTION VALUE="print-self-test-page">Öntesztoldal nyomtatása</OPTION>:}
-{printer_state=5?<OPTION VALUE="start-printer">Nyomtató folytatása</OPTION>:<OPTION VALUE="stop-printer">Nyomtató
-szüneteltetése</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Feladatok
-elfogadása</OPTION>:<OPTION VALUE="reject-jobs">Feladatok visszautasítása</OPTION>}
-<OPTION VALUE="move-jobs">Minden feladat mozgatása</OPTION>
-<OPTION VALUE="purge-jobs">Minden feladat megszakítása</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Ugrás" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Adminisztráció</OPTION>
-<OPTION VALUE="modify-printer">Nyomtató módosítása</OPTION>
-<OPTION VALUE="delete-printer">Nyomtató törlése</OPTION>
-<OPTION VALUE="set-printer-options">Alapértelmezett beállítások megadása</OPTION>
-<OPTION VALUE="set-as-default">Beállítás a kiszolgáló alapértelmezettjeként</OPTION>
-<OPTION VALUE="set-allowed-users">Engedélyezett felhasználók megadása</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Ugrás" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Leírás:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Hely:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Illesztőprogram:</TH><TD>{printer_make_and_model} ({color_supported=1?color:grayscale}{sides_supported?, 2-sided printing:})<BR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Kapcsolat:</TH><TD>{device_uri}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Alapértelmezések:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:unknown}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV> \ No newline at end of file
diff --git a/templates/hu/printers-header.tmpl b/templates/hu/printers-header.tmpl
deleted file mode 100644
index c6f4bb75..00000000
--- a/templates/hu/printers-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Nincsenek nyomtatók:{total} nyomtatóból {#printer_name} megjelenítve.</P>
diff --git a/templates/hu/printers.tmpl b/templates/hu/printers.tmpl
deleted file mode 100644
index 9f2b4c4a..00000000
--- a/templates/hu/printers.tmpl
+++ /dev/null
@@ -1,16 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Nyomtatók listája">
-<THEAD>
-<TR><TH><A
-HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL>
-Sor neve <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Sor neve
-<SMALL>&#x25bc;</SMALL>}</A></TH><TH>
-Leírás</TH><TH>Hely</TH><TH>Gyártó és típus</TH><TH>Ãllapot</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>
-{printer_state=3?Tétlen:{printer_state=4?Feldolgozás:Szüneteltetve}}{printer_state_message?
-- "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/hu/restart.tmpl b/templates/hu/restart.tmpl
deleted file mode 100644
index ab02d616..00000000
--- a/templates/hu/restart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Beállítások módosítása</H2>
-
-<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Foglalt jelzés"> Kis türelmet a kiszolgáló újraindulásáig...</P>
-
-</DIV>
diff --git a/templates/hu/samba-export.tmpl b/templates/hu/samba-export.tmpl
deleted file mode 100644
index c7dd1158..00000000
--- a/templates/hu/samba-export.tmpl
+++ /dev/null
@@ -1,55 +0,0 @@
-<SCRIPT TYPE="text/javascript"><!--
-function select_printers() {
- var list = document.export_samba.EXPORT_NAME;
- var sel = document.export_samba.EXPORT_ALL.checked;
-
- for (i = 0; i < list.length; i ++) {
- list.options[i].selected = sel;
- }
-}
---></SCRIPT>
-
-<FORM METHOD="POST" ACTION="/admin/" NAME="export_samba">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba">
-
-<H2 CLASS="title">Nyomtatók exportálása Samba megosztáshoz</H2>
-
-{error?<P>Nem lehet exportálni a nyomtatókat a Samba megosztáshoz\:</P>
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-<P>További információkért lásd az
-<A HREF="/admin/log/error_log" TARGET="_blank">error_log</A> fájlt.</P>:
-<P>Ezen az oldalon exportálhatja nyomtatóit a Samba rendszerbe, így a
-Windows kliensek elérhetik azokat az asztaluk <VAR>Hálózatok</VAR>
-vagy <VAR>Hálózati helyek</VAR> ikonjai segítségével. Ehhez elsőként
-telepítenie kell a Windows PostScript nyomtató-illesztőprogramokat, a
-<A HREF="/help/man-cupsaddsmb.html" TARGET="_blank">cupsaddsmb(8)</A>
-kézikönyvoldal által leírt módon.</P>}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Nyomtatók:</TH>
-<TD>
-<SELECT NAME="EXPORT_NAME" SIZE="10" MULTIPLE>
-{[printer_name]<OPTION VALUE="{printer_name}"{export_all? SELECTED:{printer_export? SELECTED:}}>{printer_name}}
-</SELECT><BR>
-<INPUT TYPE="CHECKBOX" NAME="EXPORT_ALL"{export_all? CHECKED:}
-onChange="select_printers()"> Minden nyomtató exportálása
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Samba felhasználónév:</TH>
-<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (szükséges)</TD>
-</TR>
-<TR>
-<TH CLASS="label">Samba jelszó:</TH>
-<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (szükséges)</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Nyomtatók
-exportálása Samba megosztáshoz"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/hu/samba-exported.tmpl b/templates/hu/samba-exported.tmpl
deleted file mode 100644
index a488dec9..00000000
--- a/templates/hu/samba-exported.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P>A nyomtatók sikeresen exportálva a Samba rendszerbe.</P>
diff --git a/templates/hu/search.tmpl b/templates/hu/search.tmpl
deleted file mode 100644
index 50d498ed..00000000
--- a/templates/hu/search.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-<FORM ACTION="/{SECTION}/{?SEARCH_DEST}" METHOD="GET">
-{WHICH_JOBS?<INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{WHICH_JOBS}">:}
-{ORDER?<INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{ORDER}">:}
-
-<P ALIGN="CENTER"><B>Keresés
-{SEARCH_DEST?itt\: {SEARCH_DEST}:{SECTION=classes?osztályok
-között:{SECTION=jobs?feladatok között:nyomtatók között}}}:</B>
-<INPUT TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER="" AUTOSAVE="org.cups.{SECTION}" RESULTS="20"> <INPUT
-TYPE="SUBMIT" VALUE="Keresés"> <INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Törlés"></P>
-
-</FORM>
diff --git a/templates/hu/set-printer-options-header.tmpl b/templates/hu/set-printer-options-header.tmpl
deleted file mode 100644
index 6964bfc0..00000000
--- a/templates/hu/set-printer-options-header.tmpl
+++ /dev/null
@@ -1,26 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{printer_name} alapértelmezett beállításainak megadása</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{HAVE_AUTOCONFIGURE?<INPUT TYPE="SUBMIT" NAME="AUTOCONFIGURE" VALUE="Nyomtató alapértelmezett beállításainak lekérdezése">:}
-
-<SCRIPT TYPE="text/javascript"><!--
-function update_paramtable(option)
-{
- var cb = document.getElementById("select-" + option)
- var paramstable = document.getElementById(option + "-params");
- if (cb.value == "Custom")
- paramstable.style.display = "table";
- else
- paramstable.style.display = "none";
-}
---></SCRIPT>
-
-<H3 CLASS="title">{[group_id]
-<A HREF="#{group_id}">{group}</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</H3>
-
-<DIV CLASS="tabs">
diff --git a/templates/hu/set-printer-options-trailer.tmpl b/templates/hu/set-printer-options-trailer.tmpl
deleted file mode 100644
index 11adc701..00000000
--- a/templates/hu/set-printer-options-trailer.tmpl
+++ /dev/null
@@ -1,16 +0,0 @@
-</DIV>
-
-<SCRIPT TYPE="text/javascript"><!--
-// Hide custom options parameters for browsers that understand Javascript
-var paramtables = document.getElementsByName("paramtable");
-for (var i = 0; i < paramtables.length; i++)
-{
- var opt = paramtables[i].id.substr(0, paramtables[i].id.lastIndexOf("-"));
- var cb = document.getElementById("select-" + opt);
- if (cb.value != "Custom")
- paramtables[i].style.display = "none";
-}
---></SCRIPT>
-</FORM>
-
-</DIV>
diff --git a/templates/hu/subscription-added.tmpl b/templates/hu/subscription-added.tmpl
deleted file mode 100644
index 8bc8891b..00000000
--- a/templates/hu/subscription-added.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>A(z) {subscription_name} hírforrás sikeresen felvéve.</P>
-
-</DIV>
diff --git a/templates/hu/subscription-canceled.tmpl b/templates/hu/subscription-canceled.tmpl
deleted file mode 100644
index 0e13c9db..00000000
--- a/templates/hu/subscription-canceled.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>A(z) {notify_subscription_id}. hírforrás törölve.</P>
-
-</DIV>
diff --git a/templates/hu/test-page.tmpl b/templates/hu/test-page.tmpl
deleted file mode 100644
index 1f440a77..00000000
--- a/templates/hu/test-page.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Tesztoldal nyomtatása a következőn: {printer_name}</H2>
-
-<P>Tesztoldal elküldve; a feladatazonosító: <A
-HREF="/{SECTION}/{printer_name}"> {printer_name}-{job_id}</A>.</P>
-
-</DIV>
diff --git a/templates/hu/trailer.tmpl b/templates/hu/trailer.tmpl
deleted file mode 100644
index 8ab73c3d..00000000
--- a/templates/hu/trailer.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">A CUPS és a CUPS logó az <A
-HREF="http://www.apple.com">Apple Inc.</A> védjegyei. CUPS copyright
-2007-2012 Apple Inc. Minden jog fenntartva.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/templates/hu/users.tmpl b/templates/hu/users.tmpl
deleted file mode 100644
index 846f4923..00000000
--- a/templates/hu/users.tmpl
+++ /dev/null
@@ -1,34 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{OP}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-{IS_CLASS?<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="{IS_CLASS}">:}
-
-<H2 CLASS="title">Engedélyezett felhasználók ehhez: {printer_name}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Felhasználók:</TH>
-<TD>
-<INPUT TYPE='TEXT' NAME='users' SIZE='60' VALUE='{?requesting_user_name_allowed}{?requesting_user_name_denied}'>
-<BR>
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-allowed'
-{requesting_user_name_allowed?checked:}>Nyomtatás engedélyezése ezen
-felhasználóknak
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-denied'
-{requesting_user_name_denied?checked:}>Nyomtatás megtiltása ezen
-felhasználóknak
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>
-<INPUT TYPE="SUBMIT" VALUE="Engedélyezett felhasználók beállítása">
-</TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/id/add-class.tmpl b/templates/id/add-class.tmpl
deleted file mode 100644
index 55f90ad2..00000000
--- a/templates/id/add-class.tmpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Tambah Kelas</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Nama:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Karakter apa saja yang dapat dicetak, kecuali "/", "#", dan spasi)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Deskripsi:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Deskripsi yang mudah dibaca, seperti "HP LaserJet dengan Duplexer")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Lokasi:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Lokasi yang mudah dibaca, seperti "Lab 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Anggota:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Tambah Kelas"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/id/add-printer.tmpl b/templates/id/add-printer.tmpl
deleted file mode 100644
index 5c7c7ccd..00000000
--- a/templates/id/add-printer.tmpl
+++ /dev/null
@@ -1,43 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Add Printer</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{?current_make!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE" VALUE="{current_make}">:}
-{?current_make_and_model!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{current_make_and_model}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Nama:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?template_name}"><BR>
-<SMALL>(Karakter apa saja yang dapat dicetak, kecuali "/", "#", dan spasi)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Deskripsi:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_INFO}"><BR>
-<SMALL>(Deskripsi yang mudah dibaca, seperti "HP LaserJet dengan Duplexer")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Location:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_LOCATION}"><BR>
-<SMALL>(Lokasi yang mudah dibaca, seperti "Lab 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Koneksi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Berbagi:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Berbagi Pencetak Ini</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Lanjut"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/id/admin.tmpl b/templates/id/admin.tmpl
deleted file mode 100644
index a19a00a9..00000000
--- a/templates/id/admin.tmpl
+++ /dev/null
@@ -1,110 +0,0 @@
-<TABLE CLASS="indent" SUMMARY="Administration Tasks">
-<TR><TD VALIGN="TOP">
-
-<H2 CLASS="title">Pencetak</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="SUBMIT" VALUE="Tambah Pencetak"></FORM>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="find-new-printers"><INPUT TYPE="SUBMIT" VALUE="Cari Pencetak Baru"></FORM>
-<FORM ACTION="/printers/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Atur Pencetak"></FORM>
-{have_samba?<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba"><INPUT TYPE="SUBMIT" VALUE="Ekspor Pencetak ke Samba"></FORM>:}
-</P>
-
-<H2 CLASS="title">Kelas</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-class"><INPUT TYPE="SUBMIT" VALUE="Tambah Kelas"></FORM>
-<FORM ACTION="/classes/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Atur Kelas"></FORM>
-</P>
-
-<H2 CLASS="title">Tugas</H2>
-
-<P>
-<FORM ACTION="/jobs/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Atur Tugas"></FORM>
-</P>
-
-</TD><TD>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD><TD VALIGN="TOP">
-
-<H2 CLASS="title">Server</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server"><INPUT TYPE="SUBMIT" VALUE="Sunting Berkas Konfigurasi"></FORM>
-<FORM ACTION="/admin/log/access_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Lihat Log Akses"></FORM>
-<FORM ACTION="/admin/log/error_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Lihat Log Kesalahan"></FORM>
-<FORM ACTION="/admin/log/page_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Lihat Log Halaman"></FORM>
-</P>
-
-{SETTINGS_ERROR?<P>{SETTINGS_MESSAGE}</P>
-<BLOCKQUOTE>{SETTINGS_ERROR}</BLOCKQUOTE>:
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-
-{ADVANCEDSETTINGS?<P><B>Pengaturan Server\:</B></P>
-
-<P><A HREF="/admin/">Lanjutan <SMALL>&#x25bc;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Lihat pencetak yang dibagikan oleh sistem lain<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protokol\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Bagikan pencetak yang terhubung ke sistem ini<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Klien maks.\:
-<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protokol\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Perbolehkan mencetak dari Internet<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> Advertise web interface<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Perbolehkan administrasi dari jarak jauh<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Gunakan otentikasi Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Perbolehkan pengguna biasa untuk membatalkan semua tugas (termasuk tugas orang lain)<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY" {?preserve_job_history}> Catat histori tugas<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Banyaknya tugas\:
-<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES" {?preserve_job_files}> Catat berkas tugas cetak<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Simpan informasi kesalahan untuk mencari dan memecahkan masalah<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ukuran maks. berkas log\:
-<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
-
-:<P><B>Pengaturan Server:</B></P>
-
-<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Lanjutan <SMALL>&#x25b6;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Lihat pencetak yang dibagikan oleh sistem lain<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Bagikan pencetak yang terhubung ke sistem ini<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Perbolehkan mencetak dari Internet<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Perbolehkan administrasi dari jarak jauh<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Gunakan otentikasi Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Perbolehkan pengguna biasa untuk membatalkan semua tugas (termasuk tugas orang lain)<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Save debugging information for troubleshooting</P>
-
-}
-<P><INPUT TYPE="SUBMIT" NAME="CHANGESETTINGS" VALUE="Ubah Pengaturan"></P>
-
-</FORM>}
-
-</TD></TR>
-</TABLE>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Subskripsi RSS</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Tambah Subskripsi RSS"></FORM>
-</P>
-
-</DIV>
-
-{notify_subscription_id?<TABLE CLASS="list" SUMMARY="RSS Subscriptions">
-<THEAD><TR><TH>Nama</TH><TH>Kejadian</TH><TH>Nama Antrian</TH></TR></THEAD>
-<TBODY>{[notify_subscription_id]
-<TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Cancel RSS Subscription"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Semua Antrian}</TD></TR>}
-</TBODY>
-</TABLE>:}
diff --git a/templates/id/choose-device.tmpl b/templates/id/choose-device.tmpl
deleted file mode 100644
index 8f812a5e..00000000
--- a/templates/id/choose-device.tmpl
+++ /dev/null
@@ -1,54 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Ubah {printer_name}:Tambah Pencetak}</H2>
-
-{CUPS_GET_DEVICES_DONE?:<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Busy Indicator"> Mencari pencetak...</P>}
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-{op=add-printer?:<TR>
-<TH CLASS="label">Koneksi yang Ada:</TH>
-<TD><INPUT TYPE="RADIO" NAME="DEVICE_URI" VALUE="{current_device_uri}" CHECKED>
-{current_device_uri}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Pencetak Lokal:</TH>
-<TD>
-{[device_uri]{device_class!network?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}}
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Pencetak Jaringan yang Ditemukan:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}:}}
-</TD>
-</TR>
-<TR>
-<TR>
-<TH CLASS="label">Pencetak Jaringan Lainnya:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?:<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-}:}}
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Lanjut"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/id/choose-make.tmpl b/templates/id/choose-make.tmpl
deleted file mode 100644
index d04338fc..00000000
--- a/templates/id/choose-make.tmpl
+++ /dev/null
@@ -1,64 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Ubah {printer_name}:Tambah Pencetak}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Nama:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Deskripsi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Lokasi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Koneksi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Berbagi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Do Not:{?printer_is_shared=0?Do Not:}} Share This Printer</TD>
-</TR>
-<TR>
-<TH CLASS="label">Buatan:</TH>
-<TD>
-<SELECT NAME="PPD_MAKE" SIZE="10">
-{[ppd_make]<OPTION VALUE="{ppd_make}" {?current_make={ppd_make}?SELECTED:}>{ppd_make}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Lanjut"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR>
-<TH CLASS="label">Atau, Sediakan Berkas PPD:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Tambah Pencetak:Ubah Pencetak}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/id/choose-model.tmpl b/templates/id/choose-model.tmpl
deleted file mode 100644
index c4cfdb9d..00000000
--- a/templates/id/choose-model.tmpl
+++ /dev/null
@@ -1,60 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modify {printer_name}:Tambah Pencetak}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Nama:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Deskripsi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Lokasi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Koneksi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Berbagi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Jangan:{?printer_is_shared=0?Jangan:}} Berbagi Pencetak Ini</TD>
-</TR>
-<TR>
-<TH CLASS="label">Pembuat:</TH>
-<TD>{PPD_MAKE} <INPUT TYPE="SUBMIT" NAME="SELECT_MAKE" VALUE="Pilih Manufaktur/Pembuat Lainnya"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Model:</TH>
-<TD>
-<SELECT NAME="PPD_NAME" SIZE="10">
-{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Penggerak Saat Ini - {current_make_and_model}</OPTION>:}
-{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
-}</SELECT>
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Atau Sediakan Berkas PPD:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Tambah Pencetak:Ubah Pencetak}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/id/choose-serial.tmpl b/templates/id/choose-serial.tmpl
deleted file mode 100644
index 19de16c4..00000000
--- a/templates/id/choose-serial.tmpl
+++ /dev/null
@@ -1,52 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modify {printer_name}:Tambah Pencetak}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Koneksi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Kecepatan Data:</TH>
-<TD><SELECT NAME="BAUDRATE">
-{[baudrates]<OPTION {?baudrate={baudrates}?SELECTED:}>{baudrates}}
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Paritas:</TH>
-<TD><SELECT NAME="PARITY">
-<OPTION VALUE="none" {?parity=none?SELECTED:}>Nihil
-<OPTION VALUE="even" {?parity=even?SELECTED:}>Genap
-<OPTION VALUE="odd" {?parity=odd?SELECTED:}>Ganjil
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Bit Data:</TH>
-<TD><SELECT NAME="BITS">
-<OPTION {?bits=8?SELECTED:}>8
-<OPTION {?bits=7?SELECTED:}>7
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kendali Aliran Data:</TH>
-<TD><SELECT NAME="FLOW">
-<OPTION VALUE="none" {?flow=none?SELECTED:}>Nihil
-<OPTION VALUE="soft" {?flow=soft?SELECTED:}>XON/XOFF (Peranti Lunak)
-<OPTION VALUE="hard" {?flow=hard?SELECTED:}>RTS/CTS (Peranti Keras)
-<OPTION VALUE="dtrdsr" {?flow=dtrdsr?SELECTED:}>DTR/DSR (Peranti Keras)
-</SELECT></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Lanjut"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/id/choose-uri.tmpl b/templates/id/choose-uri.tmpl
deleted file mode 100644
index 4391b911..00000000
--- a/templates/id/choose-uri.tmpl
+++ /dev/null
@@ -1,43 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modify {printer_name}:Tambah Pencetak}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{?current_make_and_model}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Koneksi:</TH>
-<TD><INPUT TYPE="URL" SIZE="60" MAXLENGTH="1023" NAME="DEVICE_URI" VALUE="{current_device_uri?{current_device_uri}:{device_uri}}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>Contoh:
-<PRE>
- http://hostname:631/ipp/
- http://hostname:631/ipp/port1
-
- ipp://hostname/ipp/
- ipp://hostname/ipp/port1
-
- lpd://hostname/queue
-
- socket://hostname
- socket://hostname:9100
-</PRE>
-
-<P>Lihat <A HREF="/help/network.html" TARGET="_blank">"Pencetak Jaringan"</A> untuk URI yang tepat bagi pencetak Anda.</P>
-
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Lanjut"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/id/class-added.tmpl b/templates/id/class-added.tmpl
deleted file mode 100644
index 12c408f8..00000000
--- a/templates/id/class-added.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Tambah Kelas</H2>
-
-<P>Kelas <A HREF="/classes/{printer_name}">{printer_name}</A> telah berhasil ditambahkan.
-
-</DIV>
diff --git a/templates/id/class-confirm.tmpl b/templates/id/class-confirm.tmpl
deleted file mode 100644
index 3805b917..00000000
--- a/templates/id/class-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Hapus Kelas {printer_name}</H2>
-
-<P><B>Peringatan:</B> Anda yakin untuk menghapus kelas
-{printer_name}?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="op" VALUE="delete-class"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Hapus Kelas"></FORM></P>
-
-</DIV>
diff --git a/templates/id/class-deleted.tmpl b/templates/id/class-deleted.tmpl
deleted file mode 100644
index 30320cbe..00000000
--- a/templates/id/class-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Hapus Kelas {printer_name}</H2>
-
-<P>Kelas {printer_name} telah berhasil dihapus.
-
-</DIV>
diff --git a/templates/id/class-jobs-header.tmpl b/templates/id/class-jobs-header.tmpl
deleted file mode 100644
index e6ca4471..00000000
--- a/templates/id/class-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Tugas</H3>
-</DIV>
diff --git a/templates/id/class-modified.tmpl b/templates/id/class-modified.tmpl
deleted file mode 100644
index d2fdded3..00000000
--- a/templates/id/class-modified.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ubah Kelas {printer_name}</H2>
-
-<P>Kelas <A HREF="/classes/{printer_name}">{printer_name}</A> telah berhasil diubah.
-
-</DIV>
diff --git a/templates/id/class.tmpl b/templates/id/class.tmpl
deleted file mode 100644
index af217873..00000000
--- a/templates/id/class.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<DIV CLASS="indent">
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Idle:{printer_state=4?Memproses:Ditahan}},
-{printer_is_accepting_jobs=0?Menolak Tugas:Menerima Tugas},
-{server_is_sharing_printers=0?Jangan:{printer_is_shared=0?Jangan:}} Berbagi{default_name={printer_name}?, Server Baku:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Perawatan</OPTION>
-<OPTION VALUE="print-test-page">Halaman Uji Cetak</OPTION>
-{printer_state=5?<OPTION VALUE="start-class">Resume Kelas</OPTION>:<OPTION VALUE="stop-class">Tahan Kelas</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Terima Tugas</OPTION>:<OPTION VALUE="reject-jobs">Tolak Tugas</OPTION>}
-<OPTION VALUE="move-jobs">Pindahkan Semua Tugas</OPTION>
-<OPTION VALUE="purge-jobs">Batalkan Semua Tugas</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Lakukan!" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="1">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administrasi</OPTION>
-<OPTION VALUE="modify-class">Ubah Kelas</OPTION>
-<OPTION VALUE="delete-class">Hapus Kelas</OPTION>
-<OPTION VALUE="set-class-options">Atur Opsi Baku</OPTION>
-<OPTION VALUE="set-as-default">Atur Sebagai Server Baku</OPTION>
-<OPTION VALUE="set-allowed-users">Atur Pengguna yang Diperbolehkan</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Lakukan!" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Deskripsi:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Lokasi:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Anggota:</TH><TD>{?member_uris=?None:{member_uris}}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Baku:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:unknown}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/id/classes-header.tmpl b/templates/id/classes-header.tmpl
deleted file mode 100644
index da891a3c..00000000
--- a/templates/id/classes-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Tidak ada kelas:Menampilkan {#printer_name} dari {total} kelas{total=1?:}}.</P>
diff --git a/templates/id/classes.tmpl b/templates/id/classes.tmpl
deleted file mode 100644
index c8e9b5f2..00000000
--- a/templates/id/classes.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Class List">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Nama Antrian <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Nama Antrian <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Deskripsi</TH><TH>Lokasi</TH><TH>Anggota</TH><TH>Status</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?Nihil:{member_uris}}</TD><TD>{printer_state=3?Idle:{printer_state=4?Memproses:Ditahan}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/id/command.tmpl b/templates/id/command.tmpl
deleted file mode 100644
index b38d2c98..00000000
--- a/templates/id/command.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{title} Pada {printer_name}</H2>
-
-<P>{job_state>5?:<IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16"
-ALIGN="ABSMIDDLE" ALT="Indikator Kesibukan"> }Perintah tugas pencetak
-{job_state=3?pending:{job_state=4?held:
-{job_state=5?processing:{job_state=6?stopped:
-{job_state=7?canceled:{job_state=8?aborted:completed}}}}}}{job_state=9?:{job_printer_state_message?,
-<EM>"{job_printer_state_message}"</EM>:}}</P>
-
-</DIV>
diff --git a/templates/id/edit-config.tmpl b/templates/id/edit-config.tmpl
deleted file mode 100644
index 6701f84a..00000000
--- a/templates/id/edit-config.tmpl
+++ /dev/null
@@ -1,24 +0,0 @@
-<SCRIPT TYPE="text/javascript">
-function reset_config()
-{
- document.cups.CUPSDCONF.value = "{?cupsdconf_default}";
-}
-</SCRIPT>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Sunting Berkas Konfigurasi</H2>
-
-<FORM NAME="cups" METHOD="POST" ACTION="/admin/">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-
-<TEXTAREA NAME="CUPSDCONF" COLS="80" ROWS="25">{CUPSDCONF}</TEXTAREA>
-
-<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="Simpan Perubahan">
-<INPUT TYPE="BUTTON" VALUE="Gunakan Konfigurasi Baku"
-onClick="reset_config();"></P>
-
-</FORM>
-
-</DIV>
diff --git a/templates/id/error-op.tmpl b/templates/id/error-op.tmpl
deleted file mode 100644
index 2611c5de..00000000
--- a/templates/id/error-op.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Kesalahan {?title} {?printer_name}</H2>
-
-<P>Kesalahan:</P>
-
-<BLOCKQUOTE>Operasi tak dikenal "{op}"!</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/id/error.tmpl b/templates/id/error.tmpl
deleted file mode 100644
index c74bd709..00000000
--- a/templates/id/error.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Kesalahan {?title} {?printer_name}</H2>
-
-<P>{?message?{message}:Kesalahan:}</P>
-
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/id/header.tmpl.in b/templates/id/header.tmpl.in
deleted file mode 100644
index b45d870c..00000000
--- a/templates/id/header.tmpl.in
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{title} - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
- {refresh_page?<META HTTP-EQUIV="Refresh" CONTENT="{refresh_page}">:}
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;Home&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=admin?:un}sel"><A HREF="/admin">&nbsp;&nbsp;Administrasi&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=classes?:un}sel"><A HREF="/classes/">&nbsp;&nbsp;Kelas&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=help?:un}sel"><A HREF="/help/">&nbsp;&nbsp;Bantuan&nbsp;Langsung&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=jobs?:un}sel"><A HREF="/jobs/">&nbsp;&nbsp;Tugas&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=printers?:un}sel"><A HREF="/printers/">&nbsp;&nbsp;Pencetak&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
-VALUE="{SECTION=help?{?QUERY}:}" AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-<TR><TD COLSPAN="9">&nbsp;</TD></TR>
-</TABLE>
diff --git a/templates/id/help-header.tmpl b/templates/id/help-header.tmpl
deleted file mode 100644
index e28b5278..00000000
--- a/templates/id/help-header.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET">
-{TOPIC?<INPUT TYPE="HIDDEN" NAME="TOPIC" VALUE="{TOPIC}">:}
-
-<P ALIGN="CENTER"><B>Mencari di
-{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:Semua Dokumen}}:</B> <INPUT
-TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER=""
-AUTOSAVE="org.cups.help" RESULTS="20">
-<INPUT TYPE="SUBMIT" NAME="SEARCH" VALUE="Cari">
-<INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Bersihkan"></P>
-
-</FORM>
-
-<!-- Bookmarks -->
-<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="Contents">
-<TR><TD>
-
-<H3 CLASS="title">Dokumen Bantuan Langsung</H3>
-
-<P CLASS="l0"><A HREF="/help/{QUERY??QUERY={QUERY}:}">Semua Dokumen</A></P>
-<HR>
-
-{[BMTEXT]<P CLASS="l{BMINDENT}"><A HREF="{BMLINK}">{BMTEXT}</A></P>
-}
-</TD></TR>
-</TABLE></DIV>
-
-{QUERY?<P>Hasil Pencarian di {HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:Semua Dokumen}}\:</P>
-{QTEXT?<UL>
-{[QTEXT]<LI><A HREF="{QLINK}">{QTEXT}</A>{QPTEXT? (di <I><A HREF="{QPLINK}">{QPTEXT}</A></I>):}</LI>}
-{QTEXT?</UL>:}
-:<P>Tidak ada yang cocok.</P>}
-<HR NOSHADE>:}
-{HELPTITLE?<H1>{HELPTITLE}</H1>
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="PRINTABLE" VALUE="YES"><INPUT TYPE="SUBMIT" VALUE="Lihat Versi Cetak"></FORM>:
-
-<H1>Bantuan Langsung</H1>
-
-<P>Ini adalah antarmuka bantuan langsung milik CUPS. Masukkan kata yang hendak dicari pada kotak
-di atas atau klik salah satu taut dokumen untuk melihat informasi bantuan langsung tersebut.</P>
-
-<P>Apabila Anda adalah pengguna baru CUPS, bacalah halaman "<a
-href="/help/overview.html">Ikhtisar CUPS</a>". Bagi yang sudah berpengalaman, dapat
-membaca halaman "<a href="/help/whatsnew.html">Apa yang Baru di CUPS
-1.4</a>".</P>
-
-<P><A HREF="http://www.cups.org/">Laman CUPS</A> juga menyediakan berbagai sumber termasuk forum, jawaban untuk pertanyaan-pertanyaan yang sering diajukan, serta formulir untuk mengirim laporan kode hama dan permintaan fitur baru.</P>}
diff --git a/templates/id/help-printable.tmpl b/templates/id/help-printable.tmpl
deleted file mode 100644
index 2463c163..00000000
--- a/templates/id/help-printable.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{HELPTITLE}</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups-printable.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
diff --git a/templates/id/help-trailer.tmpl b/templates/id/help-trailer.tmpl
deleted file mode 100644
index 4c1ebed8..00000000
--- a/templates/id/help-trailer.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-</DIV>
diff --git a/templates/id/job-cancel.tmpl b/templates/id/job-cancel.tmpl
deleted file mode 100644
index d3d60471..00000000
--- a/templates/id/job-cancel.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Batalkan Tugas {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Tugas {job_id}</A> telah dibatalkan.
-
-</DIV>
diff --git a/templates/id/job-hold.tmpl b/templates/id/job-hold.tmpl
deleted file mode 100644
index ab2dd593..00000000
--- a/templates/id/job-hold.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Tahan Tugas {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Tugas {job_id}</A> telah ditahan untuk dicetak.
-
-</DIV>
diff --git a/templates/id/job-move.tmpl b/templates/id/job-move.tmpl
deleted file mode 100644
index 9ec881a0..00000000
--- a/templates/id/job-move.tmpl
+++ /dev/null
@@ -1,27 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/{SECTION}/{job_id?:{printer_name}}">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{job_id?<INPUT TYPE="HIDDEN" NAME="JOB_ID" VALUE="{job_id}">:}
-
-<H2 CLASS="title">{job_id?Pindahkan Tugas {job_id}:Pindahkan Semua Tugas}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Tujuan Baru:</TH>
-<TD>
-<SELECT NAME="JOB_PRINTER_URI" SIZE="10">
-{[job_printer_uri]<OPTION VALUE="{job_printer_uri}">{job_printer_name}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{job_id?Pindahkan Tugas:Pindahkan Tugas}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-
-</DIV>
diff --git a/templates/id/job-moved.tmpl b/templates/id/job-moved.tmpl
deleted file mode 100644
index c52c3129..00000000
--- a/templates/id/job-moved.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id?Pindahkan Tugas {job_id}:Pindahkan Semua Tugas}</H2>
-
-<P>{job_id?<A HREF="/jobs/{job_id}">Tugas {job_id}</A>:Semua tugas} dipindahkan ke
-<A HREF="/{is_class?classes:printers}/{job_printer_name}">{job_printer_name}</A>.</P>
-
-</DIV>
diff --git a/templates/id/job-release.tmpl b/templates/id/job-release.tmpl
deleted file mode 100644
index a447ae19..00000000
--- a/templates/id/job-release.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Lepaskan Tugas {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Tugas {job_id}</A> telah dilepas untuk dicetak.
-
-</DIV>
diff --git a/templates/id/job-restart.tmpl b/templates/id/job-restart.tmpl
deleted file mode 100644
index c54601c8..00000000
--- a/templates/id/job-restart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Cetak Ulang Tugas {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Tugas {job_id}</A> telah dilaksanakan ulang.
-
-</DIV>
diff --git a/templates/id/jobs-header.tmpl b/templates/id/jobs-header.tmpl
deleted file mode 100644
index 3cba80c5..00000000
--- a/templates/id/jobs-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">{?which_jobs=?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Lihat Tugas yang Aktif"></FORM>}
-{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="Lihat Tugas yang Diselesaikan"></FORM>}
-{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="Lihat Semua Tugas"></FORM>}</DIV>
-
-<P ALIGN="CENTER">{total=0?Tidak ada tugas:Menampilkan {#job_id} dari {total} tugas {?which_jobs=?yang aktif:{which_jobs=all?:yang diselesaikan}} {total=1?:}}.</P>
diff --git a/templates/id/list-available-printers.tmpl b/templates/id/list-available-printers.tmpl
deleted file mode 100644
index f3ca39fd..00000000
--- a/templates/id/list-available-printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Pencetak yang Ada</H2>
-
-{#device_uri=0?<P>Tidak ada pencetak.</P>
-:<UL>{[device_uri]
-<LI><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="HIDDEN" NAME="TEMPLATE_NAME" VALUE="{template_name}"><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="Local Printer"><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{device_make_and_model}"><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}"><INPUT TYPE="SUBMIT" VALUE="Tambah Pencetak Ini"></FORM>
-{device_make_and_model} ({device_info})</LI>
-}</UL>}
-
-</DIV>
diff --git a/templates/id/modify-class.tmpl b/templates/id/modify-class.tmpl
deleted file mode 100644
index db2d65e2..00000000
--- a/templates/id/modify-class.tmpl
+++ /dev/null
@@ -1,34 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ubah Kelas {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Deskripsi:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Lokasi:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Anggota:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Ubah Kelas"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/id/modify-printer.tmpl b/templates/id/modify-printer.tmpl
deleted file mode 100644
index 9bdb0c4f..00000000
--- a/templates/id/modify-printer.tmpl
+++ /dev/null
@@ -1,38 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ubah {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Deskripsi:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Deskripsi yang mudah dibaca, seperti "HP LaserJet dengan Pendupleks")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Lokasi:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Deskripsi yang mudah dibaca, seperti "Lab 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Koneksi:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Berbagi:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Berbagi Pencetak Ini</TD>
-</TR>
-<TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Lanjut"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/id/norestart.tmpl b/templates/id/norestart.tmpl
deleted file mode 100644
index f39d9f25..00000000
--- a/templates/id/norestart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ubah Pengaturan</H2>
-
-<P>Server tidak dijalankan ulang karena tidak ada perubahan yang terjadi...</P>
-
-</DIV>
diff --git a/templates/id/option-boolean.tmpl b/templates/id/option-boolean.tmpl
deleted file mode 100644
index e832ee10..00000000
--- a/templates/id/option-boolean.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD>
-{[choices]<INPUT TYPE="RADIO" NAME="{keyword-1}" {choices={defchoice-1}?CHECKED:} VALUE="{choices}">{text}}
-</TD>
-</TR>
diff --git a/templates/id/option-conflict.tmpl b/templates/id/option-conflict.tmpl
deleted file mode 100644
index 71e2bcca..00000000
--- a/templates/id/option-conflict.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<P><B>Kesalahan:</B> Opsi berikut ini konflik:</P>
-
-<UL>
-{[ckeyword]<LI><A HREF="#{ckeyword}">{ckeytext}</A>: {cchoice}</LI>
-}</UL>
-
-<P>Silakan ubah satu atau lebih opsi yang ada untuk memperbaiki masalah ini.</P>
diff --git a/templates/id/option-header.tmpl b/templates/id/option-header.tmpl
deleted file mode 100644
index 464726a5..00000000
--- a/templates/id/option-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="tab" ID="{group_id}">
-
-<H3 ALIGN="CENTER">{group}</H3>
-
-<TABLE WIDTH="100%">
diff --git a/templates/id/option-pickmany.tmpl b/templates/id/option-pickmany.tmpl
deleted file mode 100644
index 0da75e5d..00000000
--- a/templates/id/option-pickmany.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" MULTIPLE SIZE="10">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT></TD>
-</TR>
diff --git a/templates/id/option-pickone.tmpl b/templates/id/option-pickone.tmpl
deleted file mode 100644
index 8ee71b31..00000000
--- a/templates/id/option-pickone.tmpl
+++ /dev/null
@@ -1,18 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" ID="select-{keyword}" ONCHANGE="update_paramtable('{keyword}')">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT>
-{iscustom=1?<TABLE NAME="paramtable" id="{keyword}-params">{[params]
-<TR><TH CLASS="sublabel">{paramtext}:</TH>
-<TD>{params=Units?<SELECT NAME="{keyword-1}.{params}">
-<OPTION VALUE="pt"{paramvalue=pt? SELECTED:}>Poin</OPTION>
-<OPTION VALUE="mm"{paramvalue=mm? SELECTED:}>Milimeter</OPTION>
-<OPTION VALUE="cm"{paramvalue=cm? SELECTED:}>Sentimeter</OPTION>
-<OPTION VALUE="in"{paramvalue=in? SELECTED:}>Inci</OPTION>
-<OPTION VALUE="ft"{paramvalue=ft? SELECTED:}>Kaki</OPTION>
-<OPTION VALUE="m"{paramvalue=m? SELECTED:}>Meter</OPTION>
-</SELECT>:<INPUT TYPE="{inputtype}" NAME="{keyword-1}.{params}" VALUE="{paramvalue}">}</TD></TR>
-}</TABLE>
-</TD>:}
-</TR>
diff --git a/templates/id/option-trailer.tmpl b/templates/id/option-trailer.tmpl
deleted file mode 100644
index a403a981..00000000
--- a/templates/id/option-trailer.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-</TABLE>
-
-<P ALIGN="CENTER"><INPUT TYPE="SUBMIT" VALUE="Atur Opsi Baku"></P>
-
-</DIV>
diff --git a/templates/id/printer-accept.tmpl b/templates/id/printer-accept.tmpl
deleted file mode 100644
index bba229a8..00000000
--- a/templates/id/printer-accept.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Terima Tugas dari {is_class?Kelas:Pencetak} {printer_name}</H2>
-
-<P>{is_class?Kelas:Pencetak} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-kini menerima tugas.</P>
-
-</DIV>
diff --git a/templates/id/printer-added.tmpl b/templates/id/printer-added.tmpl
deleted file mode 100644
index 636496a9..00000000
--- a/templates/id/printer-added.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Tambah Pencetak</H2>
-
-<P>Pencetak <A HREF="/printers/{printer_name}">{printer_name}</A> telah berhasil ditambahkan.
-
-</DIV>
diff --git a/templates/id/printer-configured.tmpl b/templates/id/printer-configured.tmpl
deleted file mode 100644
index c2c81792..00000000
--- a/templates/id/printer-configured.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Atur Opsi Baku untuk {printer_name}</H2>
-
-<P>Opsi baku {OP=set-class-options?kelas <A HREF="/classes/{printer_name}">:pencetak <A HREF="/printers/{printer_name}">}{printer_name}</A>
-telah berhasil ditetapkan.
-
-</DIV>
diff --git a/templates/id/printer-default.tmpl b/templates/id/printer-default.tmpl
deleted file mode 100644
index 2bbedae0..00000000
--- a/templates/id/printer-default.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Atur {is_class?Kelas:Pencetak} {printer_name} sebagai Baku</H2>
-
-<P>{is_class?Kelas:Pencetak} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-telah dijadikan pencetak utama pada server.</P>
-
-<BLOCKQUOTE><B>Catatan:</B> Semua pengguna yang diatur melalui perintah <TT>lpoptions</TT> akan ditimpa oleh pengaturan ini.</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/id/printer-deleted.tmpl b/templates/id/printer-deleted.tmpl
deleted file mode 100644
index e4492ea2..00000000
--- a/templates/id/printer-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Hapus Pencetak {printer_name}</H2>
-
-<P>Pencetak {printer_name} telah berhasil dihapus.
-
-</DIV>
diff --git a/templates/id/printer-jobs-header.tmpl b/templates/id/printer-jobs-header.tmpl
deleted file mode 100644
index e6ca4471..00000000
--- a/templates/id/printer-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Tugas</H3>
-</DIV>
diff --git a/templates/id/printer-modified.tmpl b/templates/id/printer-modified.tmpl
deleted file mode 100644
index 16a7ad34..00000000
--- a/templates/id/printer-modified.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ubah Pencetak {printer_name}</H2>
-
-<P>Pencetak <A HREF="/printers/{printer_name}">{printer_name}</A> telah berhasil diubah.
-
-</DIV>
diff --git a/templates/id/printer-purge.tmpl b/templates/id/printer-purge.tmpl
deleted file mode 100644
index 5dff3ef1..00000000
--- a/templates/id/printer-purge.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Bersihkan Tugas untuk {is_class?Kelas:Pencetak} {printer_name}</H2>
-
-<P>{is_class?Kelas:Pencetak} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-telah dibersihkan dari semua tugas.</P>
-
-</DIV>
diff --git a/templates/id/printer-reject.tmpl b/templates/id/printer-reject.tmpl
deleted file mode 100644
index 616dbf00..00000000
--- a/templates/id/printer-reject.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Tolak Tugas untuk {is_class?Kelas:Pencetak} {printer_name}</H2>
-
-<P>{is_class?Kelas:Pencetak} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-tidak lagi menerima tugas.</P>
-
-</DIV>
diff --git a/templates/id/printer-start.tmpl b/templates/id/printer-start.tmpl
deleted file mode 100644
index ca3d95a5..00000000
--- a/templates/id/printer-start.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Menjalankan Ulang {is_class?Kelas:Pencetak} {printer_name}</H2>
-
-<P>{is_class?Kelas:Pencetak} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-telah dijalankan lagi.</P>
-
-</DIV>
diff --git a/templates/id/printer-stop.tmpl b/templates/id/printer-stop.tmpl
deleted file mode 100644
index ca022e00..00000000
--- a/templates/id/printer-stop.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Menghentikan {is_class?Kelas:Pencetak} {printer_name}</H2>
-
-<P>{is_class?Kelas:Pencetak} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-telah dihentikan.</P>
-
-</DIV>
diff --git a/templates/id/printer.tmpl b/templates/id/printer.tmpl
deleted file mode 100644
index 4c56b676..00000000
--- a/templates/id/printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Menganggur:{printer_state=4?Memproses:Berhenti}},
-{printer_is_accepting_jobs=0?Menolak Tugas:Menerima Tugas},
-{server_is_sharing_printers=0?Tidak:{printer_is_shared=0?Tidak:}} Berbagi{default_name={printer_name}?, Server Baku:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Perawatan</OPTION>
-<OPTION VALUE="print-test-page">Cetak Halaman Uji</OPTION>
-{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">Bersihkan Kepala Pencetak</OPTION>:}
-{printer_commands~.*PrintSelfTestPage.*?<OPTION VALUE="print-self-test-page">Cetak Halaman Uji-Sendiri</OPTION>:}
-{printer_state=5?<OPTION VALUE="start-printer">Resume Pencetak</OPTION>:<OPTION VALUE="stop-printer">Tahan Pencetak</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Terima Tugas</OPTION>:<OPTION VALUE="reject-jobs">Tolak Tugas</OPTION>}
-<OPTION VALUE="move-jobs">Pindahkan Semua TUgas</OPTION>
-<OPTION VALUE="purge-jobs">Batalkan Semua Tugas</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Lakukan!" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administrasi</OPTION>
-<OPTION VALUE="modify-printer">Ubah Pencetak</OPTION>
-<OPTION VALUE="delete-printer">Hapus Pencetak</OPTION>
-<OPTION VALUE="set-printer-options">Atur Opsi Baku</OPTION>
-<OPTION VALUE="set-as-default">Atus Sebagai Server Baku</OPTION>
-<OPTION VALUE="set-allowed-users">Atur Pengguna yang Diperbolehkan</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Lakukan!" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Deskripsi:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Lokasi:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Penggerak:</TH><TD>{printer_make_and_model} ({color_supported=1?warna:skala abu-abu}{sides_supported?, cetak 2-sisi:})<BR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Koneksi:</TH><TD>{device_uri}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Baku:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:tak dikenal}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/id/printers-header.tmpl b/templates/id/printers-header.tmpl
deleted file mode 100644
index b1a00fcd..00000000
--- a/templates/id/printers-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Tidak ada pencetak:Menampilkan {#printer_name} dari {total} pencetak{total=1?:}}.</P>
diff --git a/templates/id/restart.tmpl b/templates/id/restart.tmpl
deleted file mode 100644
index fde1b06b..00000000
--- a/templates/id/restart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ubah Pengaturan</H2>
-
-<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Indikator Kesibukan"> Silakan tunggu selagi server dijalankan ulang...</P>
-
-</DIV>
diff --git a/templates/id/samba-export.tmpl b/templates/id/samba-export.tmpl
deleted file mode 100644
index 4d9e1751..00000000
--- a/templates/id/samba-export.tmpl
+++ /dev/null
@@ -1,55 +0,0 @@
-<SCRIPT TYPE="text/javascript"><!--
-function select_printers() {
- var list = document.export_samba.EXPORT_NAME;
- var sel = document.export_samba.EXPORT_ALL.checked;
-
- for (i = 0; i < list.length; i ++) {
- list.options[i].selected = sel;
- }
-}
---></SCRIPT>
-
-<FORM METHOD="POST" ACTION="/admin/" NAME="export_samba">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba">
-
-<H2 CLASS="title">Ekspor Pencetak ke Samba</H2>
-
-{error?<P>Tak dapat mengekspor pencetak ke Samba\:</P>
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-<P>Rujuklah berkas <A HREF="/admin/log/error_log"
-TARGET="_blank">error_log</A> untuk informasi lebih lanjut.</P>:
-<P>Di halaman ini, Anda dapat mengekspor pencetak untuk Samba, sehingga
-klien Windows dapat mengakses pencetak-pencetak tersebut melalui ikon
-<VAR>Network Neighborhood</VAR> atau <VAR>Network Places</VAR> yang ada
-di desktop mereka. Namun, sebelumnya Anda harus memasang penggerak
-pencetak PostScript Windows seperti yang dijelaskan pada halaman
-manual <A HREF="/help/man-cupsaddsmb.html"
-TARGET="_blank">cupsaddsmb(8)</A>.</P>}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Pencetak:</TH>
-<TD>
-<SELECT NAME="EXPORT_NAME" SIZE="10" MULTIPLE>
-{[printer_name]<OPTION VALUE="{printer_name}"{export_all? SELECTED:{printer_export? SELECTED:}}>{printer_name}}
-</SELECT><BR>
-<INPUT TYPE="CHECKBOX" NAME="EXPORT_ALL"{export_all? CHECKED:}
-onChange="select_printers()"> Ekspor Semua Pencetak
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Nama Pengguna Samba:</TH>
-<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (diperlukan)</TD>
-</TR>
-<TR>
-<TH CLASS="label">Sandi Samba:</TH>
-<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (diperlukan)</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Ekspor Pencetak ke Samba"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/id/samba-exported.tmpl b/templates/id/samba-exported.tmpl
deleted file mode 100644
index 8fa81110..00000000
--- a/templates/id/samba-exported.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P>Pencetak berhasil diekspor ke Samba.</P>
diff --git a/templates/id/search.tmpl b/templates/id/search.tmpl
deleted file mode 100644
index 9dc2e5d5..00000000
--- a/templates/id/search.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<FORM ACTION="/{SECTION}/{?SEARCH_DEST}" METHOD="GET">
-{WHICH_JOBS?<INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{WHICH_JOBS}">:}
-{ORDER?<INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{ORDER}">:}
-
-<P ALIGN="CENTER"><B>Cari di
-{SEARCH_DEST?{SEARCH_DEST}:{SECTION=classes?Kelas:{SECTION=jobs?Tugas:Pencetak}}}:</B>
-<INPUT TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER="" AUTOSAVE="org.cups.{SECTION}" RESULTS="20"> <INPUT
-TYPE="SUBMIT" VALUE="Cari"> <INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Bersihkan"></P>
-
-</FORM>
diff --git a/templates/id/set-printer-options-header.tmpl b/templates/id/set-printer-options-header.tmpl
deleted file mode 100644
index 017e2c47..00000000
--- a/templates/id/set-printer-options-header.tmpl
+++ /dev/null
@@ -1,26 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Atur Opsi Baku untuk {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{HAVE_AUTOCONFIGURE?<INPUT TYPE="SUBMIT" NAME="AUTOCONFIGURE" VALUE="Kuiri Pencetak untuk Opsi Baku">:}
-
-<SCRIPT TYPE="text/javascript"><!--
-function update_paramtable(option)
-{
- var cb = document.getElementById("select-" + option)
- var paramstable = document.getElementById(option + "-params");
- if (cb.value == "Custom")
- paramstable.style.display = "table";
- else
- paramstable.style.display = "none";
-}
---></SCRIPT>
-
-<H3 CLASS="title">{[group_id]
-<A HREF="#{group_id}">{group}</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</H3>
-
-<DIV CLASS="tabs">
diff --git a/templates/id/set-printer-options-trailer.tmpl b/templates/id/set-printer-options-trailer.tmpl
deleted file mode 100644
index 11adc701..00000000
--- a/templates/id/set-printer-options-trailer.tmpl
+++ /dev/null
@@ -1,16 +0,0 @@
-</DIV>
-
-<SCRIPT TYPE="text/javascript"><!--
-// Hide custom options parameters for browsers that understand Javascript
-var paramtables = document.getElementsByName("paramtable");
-for (var i = 0; i < paramtables.length; i++)
-{
- var opt = paramtables[i].id.substr(0, paramtables[i].id.lastIndexOf("-"));
- var cb = document.getElementById("select-" + opt);
- if (cb.value != "Custom")
- paramtables[i].style.display = "none";
-}
---></SCRIPT>
-</FORM>
-
-</DIV>
diff --git a/templates/id/subscription-added.tmpl b/templates/id/subscription-added.tmpl
deleted file mode 100644
index 70abc79f..00000000
--- a/templates/id/subscription-added.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>Subskripsi {subscription_name} telah berhasil ditambahkan.</P>
-
-</DIV>
diff --git a/templates/id/subscription-canceled.tmpl b/templates/id/subscription-canceled.tmpl
deleted file mode 100644
index ba7b0e15..00000000
--- a/templates/id/subscription-canceled.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>Subskripsi #{notify_subscription_id} telah dibatalkan.</P>
-
-</DIV>
diff --git a/templates/id/test-page.tmpl b/templates/id/test-page.tmpl
deleted file mode 100644
index 5b1492ea..00000000
--- a/templates/id/test-page.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Cetak Halaman Uji pada {printer_name}</H2>
-
-<P>Halaman uji telah dikirim; ID tugas adalah <A HREF="/{SECTION}/{printer_name}">
-{printer_name}-{job_id}</A>.</P>
-
-</DIV>
diff --git a/templates/id/trailer.tmpl b/templates/id/trailer.tmpl
deleted file mode 100644
index c604f349..00000000
--- a/templates/id/trailer.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS dan logo CUPS adalah merek dagang dari
-<A HREF="http://www.apple.com">Apple Inc.</A> Hak Cipta CUPS adalah 2007-2012 Apple
-Inc. Semua hak terpelihara.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/templates/id/users.tmpl b/templates/id/users.tmpl
deleted file mode 100644
index fe910705..00000000
--- a/templates/id/users.tmpl
+++ /dev/null
@@ -1,30 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{OP}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-{IS_CLASS?<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="{IS_CLASS}">:}
-
-<H2 CLASS="title">Pengguna yang Diperbolehkan Bagi {printer_name}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Pengguna:</TH>
-<TD>
-<INPUT TYPE='TEXT' NAME='users' SIZE='60' VALUE='{?requesting_user_name_allowed}{?requesting_user_name_denied}'>
-<BR>
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-allowed' {requesting_user_name_allowed?checked:}>Perbolehkan pengguna ini untuk mencetak
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-denied' {requesting_user_name_denied?checked:}>Larang pengguna ini untuk mencetak
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>
-<INPUT TYPE="SUBMIT" VALUE="Atur Pengguna yang Diperbolehkan">
-</TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/it/add-class.tmpl b/templates/it/add-class.tmpl
deleted file mode 100644
index cff0d45b..00000000
--- a/templates/it/add-class.tmpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Aggiungi classe</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Nome:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Può contenere qualsiasi carattere stampabile eccetto "/", "#", e spazio)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Descrizione:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Descrizione esplicativa del tipo "HP LaserJet con Duplexer")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Posizione:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Posizione esplicativa del tipo "Laboratorio 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Membri:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Aggiungi classe"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/it/add-printer.tmpl b/templates/it/add-printer.tmpl
deleted file mode 100644
index 3bf0906f..00000000
--- a/templates/it/add-printer.tmpl
+++ /dev/null
@@ -1,43 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Aggiungi stampante</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{?current_make!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE" VALUE="{current_make}">:}
-{?current_make_and_model!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{current_make_and_model}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Nome:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?template_name}"><BR>
-<SMALL>(Può contenere qualsiasi carattere stampabile eccetto "/", "#", e spazio)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Descrizione:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_INFO}"><BR>
-<SMALL>(Descrizione esplicativa del tipo "HP LaserJet con Duplexer")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Posizione:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_LOCATION}"><BR>
-<SMALL>(Posizione esplicativa del tipo "Laboratorio 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Connessione:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Condivisione:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Condividi la stampante</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Continua"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/it/add-rss-subscription.tmpl b/templates/it/add-rss-subscription.tmpl
deleted file mode 100644
index c85e45f0..00000000
--- a/templates/it/add-rss-subscription.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription">
-
-<H2 CLASS="title">Aggiungi iscrizione RSS</H2>
-
-<TABLE SUMMARY="Aggiungi modulo d'iscrizione RSS">
-<TR>
-<TH CLASS="label">Nome:</TH>
-<TD COLSPAN="5"><INPUT TYPE="TEXT" NAME="SUBSCRIPTION_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?SUBSCRIPTION_NAME}"><BR>
-<SMALL>(Può contenere qualsiasi carattere eccetto spazio, "/", "?", e "#")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Coda:</TH>
-<TD COLSPAN="5"><SELECT NAME="PRINTER_URI" SIZE="10"><OPTION VALUE="#ALL#"{?PRINTER_URI=#ALL#? SELECTED:}>Tutte le code</OPTION>{[printer_name]<OPTION VALUE="{printer_uri_supported}"{?PRINTER_URI={printer_uri_supported}? SELECTED:}>{printer_name}</OPTION>}</SELECT></TD>
-</TR>
-<TR VALIGN="TOP">
-<TH CLASS="label">Eventi:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CREATED" {?EVENT_JOB_CREATED}>Stampa creata<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_COMPLETED" {?EVENT_JOB_COMPLETED}>Stampa completata<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_STOPPED" {?EVENT_JOB_STOPPED}>Stampa fermata<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CONFIG_CHANGED" {?EVENT_JOB_CONFIG_CHANGED}>Opzioni di stampa modificate</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_STOPPED" {?EVENT_PRINTER_STOPPED}>Coda fermata<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_ADDED" {?EVENT_PRINTER_ADDED}>Coda aggiunta<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_MODIFIED" {?EVENT_PRINTER_MODIFIED}>Coda modificata<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_DELETED" {?EVENT_PRINTER_DELETED}>Coda eliminata</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STARTED" {?EVENT_SERVER_STARTED}>Server avviato<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STOPPED" {?EVENT_SERVER_STOPPED}>Server fermato<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_RESTARTED" {?EVENT_SERVER_RESTARTED}>Server riavviato<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_AUDIT" {?EVENT_SERVER_AUDIT}>Controllo di sicurezza del server</TD>
-</TR>
-<TR>
-<TH CLASS="label">N. massimo di eventi nella fonte:</TH>
-<TD COLSPAN="5"><INPUT TYPE="NUMBER" NAME="MAX_EVENTS" SIZE="4" MAXLENGTH="4" VALUE="{MAX_EVENTS?{MAX_EVENTS}:20}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD COLSPAN="5"><INPUT TYPE="SUBMIT" VALUE="Aggiungi iscrizione RSS"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/it/admin.tmpl b/templates/it/admin.tmpl
deleted file mode 100644
index 7f7e44bb..00000000
--- a/templates/it/admin.tmpl
+++ /dev/null
@@ -1,110 +0,0 @@
-<TABLE CLASS="indent" SUMMARY="Operazioni di amministrazione">
-<TR><TD VALIGN="TOP">
-
-<H2 CLASS="title">Stampanti</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="SUBMIT" VALUE="Aggiungi stampante"></FORM>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="find-new-printers"><INPUT TYPE="SUBMIT" VALUE="Trova nuove stampanti"></FORM>
-<FORM ACTION="/printers/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Gestisci stampanti"></FORM>
-{have_samba?<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba"><INPUT TYPE="SUBMIT" VALUE="Esporta stampanti a Samba"></FORM>:}
-</P>
-
-<H2 CLASS="title">Classi</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-class"><INPUT TYPE="SUBMIT" VALUE="Aggiungi classe"></FORM>
-<FORM ACTION="/classes/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Gestisci classi"></FORM>
-</P>
-
-<H2 CLASS="title">Stampe</H2>
-
-<P>
-<FORM ACTION="/jobs/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Gestisci stampe"></FORM>
-</P>
-
-</TD><TD>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD><TD VALIGN="TOP">
-
-<H2 CLASS="title">Server</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server"><INPUT TYPE="SUBMIT" VALUE="Modifica file di configurazione"></FORM>
-<FORM ACTION="/admin/log/access_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Mostra registro degli accessi"></FORM>
-<FORM ACTION="/admin/log/error_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Visualizza registro di errore"></FORM>
-<FORM ACTION="/admin/log/page_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Visualizza registro delle pagine"></FORM>
-</P>
-
-{SETTINGS_ERROR?<P>{SETTINGS_MESSAGE}</P>
-<BLOCKQUOTE>{SETTINGS_ERROR}</BLOCKQUOTE>:
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-
-{ADVANCEDSETTINGS?<P><B>Impostazioni del server\:</B></P>
-
-<P><A HREF="/admin/">Avanzate <SMALL>&#x25bc;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Mostra stampanti condivise da altri sistemi<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protocolli\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Condividi le stampanti connesse al sistema<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;N. massimo di client\:
-<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protocolli\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Consenti stampa da Internet<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> Pubblica l'interfaccia web<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Consenti amministrazione remota<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Usa autenticazione Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Consenti agli utenti di annullare ogni stampa (non solo le proprie)<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY" {?preserve_job_history}> Mantieni lo storico delle stampe<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Numero di stampe\:
-<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES" {?preserve_job_files}> Conserva i file di stampa<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Salva informazioni di debug per la risoluzione di problemi<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dim. massima file di registro\:
-<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
-
-:<P><B>Impostazioni server:</B></P>
-
-<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Avanzate <SMALL>&#x25b6;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Mostra stampanti condivise da altri sistemi<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Condividi stampanti connesse al sistema<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Consenti la stampa da Internet<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Consenti amministrazione remota<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Utilizza autenticazione Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Consenti agli utenti di annullare ogni stampa (non solo le proprie)<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Salva le informazioni di debug per la risoluzione di problemi</P>
-
-}
-<P><INPUT TYPE="SUBMIT" NAME="CHANGESETTINGS" VALUE="Cambia impostazioni"></P>
-
-</FORM>}
-
-</TD></TR>
-</TABLE>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Iscrizioni RSS</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Aggiungi iscrizione RSS"></FORM>
-</P>
-
-</DIV>
-
-{notify_subscription_id?<TABLE CLASS="list" SUMMARY="Iscrizioni RSS">
-<THEAD><TR><TH>Nome</TH><TH>Eventi</TH><TH>Nome coda</TH></TR></THEAD>
-<TBODY>{[notify_subscription_id]
-<TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Annulla iscrizione RSS"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Tutte le code}</TD></TR>}
-</TBODY>
-</TABLE>:}
diff --git a/templates/it/choose-device.tmpl b/templates/it/choose-device.tmpl
deleted file mode 100644
index 3420fdfe..00000000
--- a/templates/it/choose-device.tmpl
+++ /dev/null
@@ -1,54 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modifica {printer_name}:Aggiungi stampante}</H2>
-
-{CUPS_GET_DEVICES_DONE?:<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Busy Indicator"> Ricerca stampanti...</P>}
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-{op=add-printer?:<TR>
-<TH CLASS="label">Connessione attuale:</TH>
-<TD><INPUT TYPE="RADIO" NAME="DEVICE_URI" VALUE="{current_device_uri}" CHECKED>
-{current_device_uri}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Stampanti locali:</TH>
-<TD>
-{[device_uri]{device_class!network?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}}
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Stampanti di rete rilevate:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}:}}
-</TD>
-</TR>
-<TR>
-<TR>
-<TH CLASS="label">Altre stampante di reti:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?:<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-}:}}
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Continua"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/it/class-added.tmpl b/templates/it/class-added.tmpl
deleted file mode 100644
index fcccaa32..00000000
--- a/templates/it/class-added.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Aggiungi classe</H2>
-
-<P>Class <A HREF="/classes/{printer_name}">{printer_name}</A> è stata aggiunta
-correttamente.
-
-</DIV>
diff --git a/templates/it/class-confirm.tmpl b/templates/it/class-confirm.tmpl
deleted file mode 100644
index 4e99f457..00000000
--- a/templates/it/class-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Elimina classe {printer_name}</H2>
-
-<P><B>Warning:</B> Sei sicuro di voler eliminare la classe
-{printer_name}?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="op" VALUE="delete-class"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Elimina classe"></FORM></P>
-
-</DIV>
diff --git a/templates/it/class-deleted.tmpl b/templates/it/class-deleted.tmpl
deleted file mode 100644
index ce236543..00000000
--- a/templates/it/class-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Elimina classe {printer_name}</H2>
-
-<P>La classe {printer_name} è stata eliminata correttamente.
-
-</DIV>
diff --git a/templates/it/class-jobs-header.tmpl b/templates/it/class-jobs-header.tmpl
deleted file mode 100644
index 12a936ea..00000000
--- a/templates/it/class-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Stampe</H3>
-</DIV>
diff --git a/templates/it/class.tmpl b/templates/it/class.tmpl
deleted file mode 100644
index 0089c934..00000000
--- a/templates/it/class.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<DIV CLASS="indent">
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Idle:{printer_state=4?Processing:Paused}},
-{printer_is_accepting_jobs=0?Rejecting Jobs:Accepting Jobs},
-{server_is_sharing_printers=0?Not:{printer_is_shared=0?Not:}} Shared{default_name={printer_name}?, Server Default:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Manutenzione</OPTION>
-<OPTION VALUE="print-test-page">Stampa pagina di prova</OPTION>
-{printer_state=5?<OPTION VALUE="start-class">Ripristina classe</OPTION>:<OPTION VALUE="stop-class">Sospendi classe</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Accetta stampe</OPTION>:<OPTION VALUE="reject-jobs">Rifiuta stampe</OPTION>}
-<OPTION VALUE="move-jobs">Sposta tutte le stampe</OPTION>
-<OPTION VALUE="purge-jobs">Annulla tuttte le stampe</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Vai" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="1">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Amministrazione</OPTION>
-<OPTION VALUE="modify-class">Modifica classe</OPTION>
-<OPTION VALUE="delete-class">Elimina classe</OPTION>
-<OPTION VALUE="set-class-options">Imposta opzioni predefinite</OPTION>
-<OPTION VALUE="set-as-default">Imposta come predefiniti del server</OPTION>
-<OPTION VALUE="set-allowed-users">Imposta utenti autorizzati</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Vai" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Descrizione:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Posizione:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Membri:</TH><TD>{?member_uris=?None:{member_uris}}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Predefiniti:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:unknown}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/it/classes-header.tmpl b/templates/it/classes-header.tmpl
deleted file mode 100644
index 943537f8..00000000
--- a/templates/it/classes-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Nessuna classe:Mostrat{total=1?a:e} {#printer_name} di {total} class{total=1?e:i}}.</P> \ No newline at end of file
diff --git a/templates/it/classes.tmpl b/templates/it/classes.tmpl
deleted file mode 100644
index bfa5bdf2..00000000
--- a/templates/it/classes.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Elenco classi">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Nome coda <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Nome coda <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Descrizione</TH><TH>Posizione</TH><TH>Membri</TH><TH>Stato</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?None:{member_uris}}</TD><TD>{printer_state=3?In attesa:{printer_state=4?Elaborazion in corso:Sospesa}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/it/command.tmpl b/templates/it/command.tmpl
deleted file mode 100644
index 80d44f63..00000000
--- a/templates/it/command.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{title} su {printer_name}</H2>
-
-<P>{job_state>5?:<IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16"
-ALIGN="ABSMIDDLE" ALT="Indicatore di occupato"> }Printer command job
-{job_state=3?pendente:{job_state=4?held:
-{job_state=5?elaborazione in corso:{job_state=6?fermata:
-{job_state=7?annullata:{job_state=8?aborted:completed}}}}}}{job_state=9?:{job_printer_state_message?,
-<EM>"{job_printer_state_message}"</EM>:}}</P>
-
-</DIV>
diff --git a/templates/it/edit-config.tmpl b/templates/it/edit-config.tmpl
deleted file mode 100644
index c8d8ea8a..00000000
--- a/templates/it/edit-config.tmpl
+++ /dev/null
@@ -1,24 +0,0 @@
-<SCRIPT TYPE="text/javascript">
-function reset_config()
-{
- document.cups.CUPSDCONF.value = "{?cupsdconf_default}";
-}
-</SCRIPT>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modifica file di configurazione</H2>
-
-<FORM NAME="cups" METHOD="POST" ACTION="/admin/">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-
-<TEXTAREA NAME="CUPSDCONF" COLS="80" ROWS="25">{CUPSDCONF}</TEXTAREA>
-
-<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="Salva modifiche">
-<INPUT TYPE="BUTTON" VALUE="Utilizza file di configurazione predefinito"
-onClick="reset_config();"></P>
-
-</FORM>
-
-</DIV>
diff --git a/templates/it/error-op.tmpl b/templates/it/error-op.tmpl
deleted file mode 100644
index c6cdfa80..00000000
--- a/templates/it/error-op.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?title} {?printer_name} Errore</H2>
-
-<P>Errore:</P>
-
-<BLOCKQUOTE>Operazione sconosciuta "{op}"!</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/it/error.tmpl b/templates/it/error.tmpl
deleted file mode 100644
index b0e7a4b3..00000000
--- a/templates/it/error.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?title} {?printer_name} Errore</H2>
-
-<P>{?message?{message}:Error:}</P>
-
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/it/help-header.tmpl b/templates/it/help-header.tmpl
deleted file mode 100644
index 39c39e53..00000000
--- a/templates/it/help-header.tmpl
+++ /dev/null
@@ -1,50 +0,0 @@
-<DIV CLASS="indent">
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET">
-{TOPIC?<INPUT TYPE="HIDDEN" NAME="TOPIC" VALUE="{TOPIC}">:}
-
-<P ALIGN="CENTER"><B>Cerca in
-{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:Tutti i documenti}}:</B> <INPUT
-TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER=""
-AUTOSAVE="org.cups.help" RESULTS="20">
-<INPUT TYPE="SUBMIT" NAME="SEARCH" VALUE="Cerca">
-<INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Cancella"></P>
-
-</FORM>
-
-<!-- Bookmarks -->
-<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="Contenuti">
-<TR><TD>
-
-<H3 CLASS="title">Documenti di guida in linea</H3>
-
-<P CLASS="l0"><A HREF="/help/{QUERY??QUERY={QUERY}:}">Tutti i documenti</A></P>
-<HR>
-
-{[BMTEXT]<P CLASS="l{BMINDENT}"><A HREF="{BMLINK}">{BMTEXT}</A></P>
-}
-</TD></TR>
-</TABLE></DIV>
-
-{QUERY?<P>Cerca risultati in {HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:Tutti i documenti}}\:</P>
-{QTEXT?<UL>
-{[QTEXT]<LI><A HREF="{QLINK}">{QTEXT}</A>{QPTEXT? (in <I><A HREF="{QPLINK}">{QPTEXT}</A></I>):}</LI>}
-{QTEXT?</UL>:}
-:<P>Nessuna corrispondenza trovata.</P>}
-<HR NOSHADE>:}
-{HELPTITLE?<H1>{HELPTITLE}</H1>
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="PRINTABLE" VALUE="YES"><INPUT TYPE="SUBMIT" VALUE="Visualizza versione stampabile"></FORM>:
-
-<H1>Guida in linea</H1>
-
-<P>Questa è l'interfaccia di guida in linea di CUPS. Inserisci in alto i termini da ricercare
-o fai clic su qualsiasi collegamento della documentazione per visualizzare
-informazioni della guida in linea.</P>
-
-<P>Se sei nuovo di CUPS, leggi la pagina "<a
-href="/help/overview.html">Panoramica di CUPS</a>". Gli utenti esperti
-dovrebbero leggere la pagina "<a href="/help/whatsnew.html">Cosa c'è di nuovo in CUPS
-1.4</a>".</P>
-
-<P>La <A HREF="http://www.cups.org/">pagina principale di CUPS</A> fornisce
-inoltre molte risorse tra le quali forum di discussione per gli utenti, risposte
-alle domande frequenti, e un modulo per segnalare bug e richiede nuove funzionalità.</P>}
diff --git a/templates/it/help-printable.tmpl b/templates/it/help-printable.tmpl
deleted file mode 100644
index 2463c163..00000000
--- a/templates/it/help-printable.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{HELPTITLE}</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups-printable.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
diff --git a/templates/it/help-trailer.tmpl b/templates/it/help-trailer.tmpl
deleted file mode 100644
index 4c1ebed8..00000000
--- a/templates/it/help-trailer.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-</DIV>
diff --git a/templates/it/job-cancel.tmpl b/templates/it/job-cancel.tmpl
deleted file mode 100644
index 766881ea..00000000
--- a/templates/it/job-cancel.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Annulla la stampa {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">La stampa {job_id}</A> è stata annullata.
-
-</DIV>
diff --git a/templates/it/job-hold.tmpl b/templates/it/job-hold.tmpl
deleted file mode 100644
index ac2d8199..00000000
--- a/templates/it/job-hold.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Blocca la stampa {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">La stampa {job_id}</A> è stata bloccata.
-
-</DIV>
diff --git a/templates/it/job-moved.tmpl b/templates/it/job-moved.tmpl
deleted file mode 100644
index 98be4fe7..00000000
--- a/templates/it/job-moved.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id?Sposta stampa {job_id}:Sposta tutte le stampe}</H2>
-
-<P>{job_id?<A HREF="/jobs/{job_id}">La stampa {job_id}</A>:Tutte le stampe} {job_id?è stata:sono state} spostat{job_id?a:e} su
-<A HREF="/{is_class?classes:printers}/{job_printer_name}">{job_printer_name}</A>.</P>
-
-</DIV>
diff --git a/templates/it/job-release.tmpl b/templates/it/job-release.tmpl
deleted file mode 100644
index c6520fdd..00000000
--- a/templates/it/job-release.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Rilascia la stampa {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">La stampa {job_id}</A> è stata rilasciata.
-
-</DIV>
diff --git a/templates/it/job-restart.tmpl b/templates/it/job-restart.tmpl
deleted file mode 100644
index 59d9aa6b..00000000
--- a/templates/it/job-restart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ripeti la stampa {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">La stampa {job_id}</A> è stata riavviata.
-
-</DIV>
diff --git a/templates/it/jobs.tmpl b/templates/it/jobs.tmpl
deleted file mode 100644
index 494c1eeb..00000000
--- a/templates/it/jobs.tmpl
+++ /dev/null
@@ -1,37 +0,0 @@
-{#job_id=0?:
-<TABLE CLASS="list" SUMMARY="Elenco stampe">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> ID <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> ID <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Nome</TH><TH>Utente</TH><TH>Dimensione</TH><TH>Pagine</TH><TH>Stato</TH><TH>Controllo</TH></TR>
-</THEAD>
-<TBODY>
-{[job_id]
-<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
-<TD>{?job_name=?Unknown:{job_name}}&nbsp;</TD>
-<TD>{job_originating_user_name}&nbsp;</TD>
-<TD>{job_k_octets}k&nbsp;</TD>
-<TD>{job_media_sheets_completed=0?Unknown:{?job_media_sheets_completed}}&nbsp;</TD>
-<TD>{job_state=3?pending since<BR>{time_at_creation}:{job_state=4?held since<BR>{time_at_creation}:
-{job_state=5?processing since<BR>{time_at_processing}:{job_state=6?stopped:
-{job_state=7?canceled at<BR>{time_at_completed}:{job_state=8?aborted:completed at<BR>{time_at_completed}}}}}}}&nbsp;{job_printer_state_message?<BR>
-<EM>"{job_printer_state_message}"</EM>:}</TD>
-<TD>
-{job_preserved>0?{job_state>5?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Ripeti stampa"></FORM>:}:}
-{job_state=4?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="release-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Release Job"></FORM>:}
-{job_state=3?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="hold-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Hold Job"></FORM>:}
-{job_state<7?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Annulla stampa"></FORM>
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="move-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="SUBMIT" VALUE="Sposta stampa"></FORM>:}
-&nbsp;</TD>
-</TR>
-}
-</TBODY>
-</TABLE>
-}
diff --git a/templates/it/list-available-printers.tmpl b/templates/it/list-available-printers.tmpl
deleted file mode 100644
index 147d6103..00000000
--- a/templates/it/list-available-printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Stampanti disponibili</H2>
-
-{#device_uri=0?<P>Nessuna stampante trovata.</P>
-:<UL>{[device_uri]
-<LI><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="HIDDEN" NAME="TEMPLATE_NAME" VALUE="{template_name}"><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="Stampante locale"><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{device_make_and_model}"><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}"><INPUT TYPE="SUBMIT" VALUE="Aggiungi stampante"></FORM>
-{device_make_and_model} ({device_info})</LI>
-}</UL>}
-
-</DIV>
diff --git a/templates/it/modify-class.tmpl b/templates/it/modify-class.tmpl
deleted file mode 100644
index 065f2b91..00000000
--- a/templates/it/modify-class.tmpl
+++ /dev/null
@@ -1,34 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modifica classe {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Descrizione:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Posizione:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Membri:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Modifica classe"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/it/modify-printer.tmpl b/templates/it/modify-printer.tmpl
deleted file mode 100644
index a6303f29..00000000
--- a/templates/it/modify-printer.tmpl
+++ /dev/null
@@ -1,38 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modifica {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Descrizione:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Descrizione esplicativa del tipo "HP LaserJet con Duplexer")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Posizione:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Posizione esplicativa del tipo "Laboratorio 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Connessione:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Condivisione:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Condividi stampante</TD>
-</TR>
-<TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Continua"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/it/norestart.tmpl b/templates/it/norestart.tmpl
deleted file mode 100644
index 924d533f..00000000
--- a/templates/it/norestart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Cambia impostazioni</H2>
-
-<P>Il server non è stato riavviato poiché nessuna modifica è stata apportata alla configurazione...</P>
-
-</DIV>
diff --git a/templates/it/option-boolean.tmpl b/templates/it/option-boolean.tmpl
deleted file mode 100644
index e832ee10..00000000
--- a/templates/it/option-boolean.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD>
-{[choices]<INPUT TYPE="RADIO" NAME="{keyword-1}" {choices={defchoice-1}?CHECKED:} VALUE="{choices}">{text}}
-</TD>
-</TR>
diff --git a/templates/it/option-conflict.tmpl b/templates/it/option-conflict.tmpl
deleted file mode 100644
index 6d3b9753..00000000
--- a/templates/it/option-conflict.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<P><B>Errore:</B> Le seguenti opzioni sono in conflitto:</P>
-
-<UL>
-{[ckeyword]<LI><A HREF="#{ckeyword}">{ckeytext}</A></LI>
-}</UL>
-
-<P>Cambia una o più opzioni per risolvere i conflitti.</P>
diff --git a/templates/it/option-header.tmpl b/templates/it/option-header.tmpl
deleted file mode 100644
index 464726a5..00000000
--- a/templates/it/option-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="tab" ID="{group_id}">
-
-<H3 ALIGN="CENTER">{group}</H3>
-
-<TABLE WIDTH="100%">
diff --git a/templates/it/option-pickmany.tmpl b/templates/it/option-pickmany.tmpl
deleted file mode 100644
index 0da75e5d..00000000
--- a/templates/it/option-pickmany.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" MULTIPLE SIZE="10">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT></TD>
-</TR>
diff --git a/templates/it/option-pickone.tmpl b/templates/it/option-pickone.tmpl
deleted file mode 100644
index c21fc71b..00000000
--- a/templates/it/option-pickone.tmpl
+++ /dev/null
@@ -1,18 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" ID="select-{keyword}" ONCHANGE="update_paramtable('{keyword}')">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT>
-{iscustom=1?<TABLE NAME="paramtable" id="{keyword}-params">{[params]
-<TR><TH CLASS="sublabel">{paramtext}:</TH>
-<TD>{params=Units?<SELECT NAME="{keyword-1}.{params}">
-<OPTION VALUE="pt"{paramvalue=pt? SELECTED:}>Punti</OPTION>
-<OPTION VALUE="mm"{paramvalue=mm? SELECTED:}>Millimetri</OPTION>
-<OPTION VALUE="cm"{paramvalue=cm? SELECTED:}>Centimetri</OPTION>
-<OPTION VALUE="in"{paramvalue=in? SELECTED:}>Pollici</OPTION>
-<OPTION VALUE="ft"{paramvalue=ft? SELECTED:}>Piedi</OPTION>
-<OPTION VALUE="m"{paramvalue=m? SELECTED:}>Metri</OPTION>
-</SELECT>:<INPUT TYPE="{inputtype}" NAME="{keyword-1}.{params}" VALUE="{paramvalue}">}</TD></TR>
-}</TABLE>
-</TD>:}
-</TR>
diff --git a/templates/it/option-trailer.tmpl b/templates/it/option-trailer.tmpl
deleted file mode 100644
index ddbde0bc..00000000
--- a/templates/it/option-trailer.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-</TABLE>
-
-<P ALIGN="CENTER"><INPUT TYPE="SUBMIT" VALUE="Imposta opzioni predefinite"></P>
-
-</DIV> \ No newline at end of file
diff --git a/templates/it/pager.tmpl b/templates/it/pager.tmpl
deleted file mode 100644
index 019646f9..00000000
--- a/templates/it/pager.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TABLE CLASS="inset" SUMMARY="Barra di paginazione">
-<TR>
- <TD WIDTH="50%">{PREV?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{PREV}"><INPUT TYPE="SUBMIT" VALUE="&#x25c0; Mostra precedente"></FORM>:&nbsp;}</TD>
- <TD WIDTH="50%" ALIGN="RIGHT">{NEXT?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{NEXT}"><INPUT TYPE="SUBMIT" VALUE="Mostra successiva &#x25b6;"></FORM>:&nbsp;}</TD>
-</TR>
-</TABLE>
diff --git a/templates/it/printer-accept.tmpl b/templates/it/printer-accept.tmpl
deleted file mode 100644
index bbf718ae..00000000
--- a/templates/it/printer-accept.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Accetta stampe su {is_class?Class:Printer} {printer_name}</H2>
-
-<P>{is_class?Class:Printer} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-accetta stampe.</P>
-
-</DIV>
diff --git a/templates/it/printer-added.tmpl b/templates/it/printer-added.tmpl
deleted file mode 100644
index 682dfa7e..00000000
--- a/templates/it/printer-added.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Aggiungi stampante</H2>
-
-<P>Printer <A HREF="/printers/{printer_name}">{printer_name}</A> è stata aggiunta correttamente.
-
-</DIV>
diff --git a/templates/it/printer-configured.tmpl b/templates/it/printer-configured.tmpl
deleted file mode 100644
index cfcbf650..00000000
--- a/templates/it/printer-configured.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Imposta le opzioni predefinite per {printer_name}</H2>
-
-<P>{OP=set-class-options?Class <A HREF="/classes/{printer_name}">:Printer <A HREF="/printers/{printer_name}">}{printer_name}</A>
-default options have been set successfully.
-
-</DIV>
diff --git a/templates/it/printer-confirm.tmpl b/templates/it/printer-confirm.tmpl
deleted file mode 100644
index e23071c9..00000000
--- a/templates/it/printer-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Elimina stampante {printer_name}</H2>
-
-<P><B>Avviso:</B> Sei sicuro di voler eliminare la stampante
-{printer_name}?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="delete-printer"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Elimina stampante"></FORM></P>
-
-</DIV>
diff --git a/templates/it/printer-default.tmpl b/templates/it/printer-default.tmpl
deleted file mode 100644
index fe44138f..00000000
--- a/templates/it/printer-default.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Imposta {is_class?Class:Printer} {printer_name} come predefinita</H2>
-
-<P>{is_class?Class:Printer} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-è la stampante predefinita su questo server.</P>
-
-<BLOCKQUOTE><B>Note:</B> Qualsiasi utente predefinito impostato attraverso
-il comando <TT>lpoptions</TT> scavalcherà questa impostazione predefinita.</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/it/printer-deleted.tmpl b/templates/it/printer-deleted.tmpl
deleted file mode 100644
index 4698805d..00000000
--- a/templates/it/printer-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Elimina la stampante {printer_name}</H2>
-
-<P>La stampante {printer_name} è stata eliminata correttamente.
-
-</DIV>
diff --git a/templates/it/printer-jobs-header.tmpl b/templates/it/printer-jobs-header.tmpl
deleted file mode 100644
index 12a936ea..00000000
--- a/templates/it/printer-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Stampe</H3>
-</DIV>
diff --git a/templates/it/printer-modified.tmpl b/templates/it/printer-modified.tmpl
deleted file mode 100644
index 2a34e89d..00000000
--- a/templates/it/printer-modified.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modifica la stampante {printer_name}</H2>
-
-<P>La stampante <A HREF="/printers/{printer_name}">{printer_name}</A> è stata
-modificata correttamente.
-
-</DIV> \ No newline at end of file
diff --git a/templates/it/printer-purge.tmpl b/templates/it/printer-purge.tmpl
deleted file mode 100644
index 8cf7c146..00000000
--- a/templates/it/printer-purge.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Purge Jobs On {is_class?Class:Printer} {printer_name}</H2>
-
-<P>{is_class?Class:Printer} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-has been purged of all jobs.</P>
-
-</DIV> \ No newline at end of file
diff --git a/templates/it/printer-reject.tmpl b/templates/it/printer-reject.tmpl
deleted file mode 100644
index 02f4ce95..00000000
--- a/templates/it/printer-reject.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Rifiuta stampe su {is_class?Class:Printer} {printer_name}</H2>
-
-<P>{is_class?Class:Printer} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-non accetta alcuna stampa.</P>
-
-</DIV>
diff --git a/templates/it/printer-start.tmpl b/templates/it/printer-start.tmpl
deleted file mode 100644
index b7f2edc5..00000000
--- a/templates/it/printer-start.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ripristina {is_class?Class:Printer} {printer_name}</H2>
-
-<P>{is_class?Class:Printer} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-è stata ripristinata.</P>
-
-</DIV> \ No newline at end of file
diff --git a/templates/it/printer-stop.tmpl b/templates/it/printer-stop.tmpl
deleted file mode 100644
index ef091180..00000000
--- a/templates/it/printer-stop.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Sospendi {is_class?Class:Printer} {printer_name}</H2>
-
-<P>{is_class?Class:Printer} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-è stata sospesa.</P>
-
-</DIV> \ No newline at end of file
diff --git a/templates/it/printer.tmpl b/templates/it/printer.tmpl
deleted file mode 100644
index 78fc08be..00000000
--- a/templates/it/printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Idle:{printer_state=4?Processing:Paused}},
-{printer_is_accepting_jobs=0?Rejecting Jobs:Accepting Jobs},
-{server_is_sharing_printers=0?Not:{printer_is_shared=0?Not:}} Shared{default_name={printer_name}?, Server Default:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Maintenance</OPTION>
-<OPTION VALUE="print-test-page">Print Test Page</OPTION>
-{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">Clean Print Heads</OPTION>:}
-{printer_commands~.*PrintSelfTestPage.*?<OPTION VALUE="print-self-test-page">Print Self Test Page</OPTION>:}
-{printer_state=5?<OPTION VALUE="start-printer">Resume Printer</OPTION>:<OPTION VALUE="stop-printer">Pause Printer</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Accept Jobs</OPTION>:<OPTION VALUE="reject-jobs">Reject Jobs</OPTION>}
-<OPTION VALUE="move-jobs">Move All Jobs</OPTION>
-<OPTION VALUE="purge-jobs">Cancel All Jobs</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administration</OPTION>
-<OPTION VALUE="modify-printer">Modify Printer</OPTION>
-<OPTION VALUE="delete-printer">Delete Printer</OPTION>
-<OPTION VALUE="set-printer-options">Set Default Options</OPTION>
-<OPTION VALUE="set-as-default">Set As Server Default</OPTION>
-<OPTION VALUE="set-allowed-users">Set Allowed Users</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Description:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Location:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Driver:</TH><TD>{printer_make_and_model} ({color_supported=1?color:grayscale}{sides_supported?, 2-sided printing:})<BR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Connection:</TH><TD>{device_uri}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Defaults:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:unknown}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV> \ No newline at end of file
diff --git a/templates/it/printers-header.tmpl b/templates/it/printers-header.tmpl
deleted file mode 100644
index e10112df..00000000
--- a/templates/it/printers-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Nessuna stampante:Mostrat{total=1?a:e} {#printer_name} di {total} stampant{total=1?e:i}}.</P>
diff --git a/templates/it/printers.tmpl b/templates/it/printers.tmpl
deleted file mode 100644
index 87efb6d9..00000000
--- a/templates/it/printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Elenco stampanti">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Nome coda <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Nome coda <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Descrizione</TH><TH>Posizione</TH><TH>Marca e modello</TH><TH>Stato</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>{printer_state=3?Idle:{printer_state=4?Processing:Paused}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/it/restart.tmpl b/templates/it/restart.tmpl
deleted file mode 100644
index 3d642486..00000000
--- a/templates/it/restart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Cambia impostazioni</H2>
-
-<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Indicatore di occupato"> Attendi il riavvio del server...</P>
-
-</DIV>
diff --git a/templates/it/samba-export.tmpl b/templates/it/samba-export.tmpl
deleted file mode 100644
index bce7469d..00000000
--- a/templates/it/samba-export.tmpl
+++ /dev/null
@@ -1,54 +0,0 @@
-<SCRIPT TYPE="text/javascript"><!--
-function select_printers() {
- var list = document.export_samba.EXPORT_NAME;
- var sel = document.export_samba.EXPORT_ALL.checked;
-
- for (i = 0; i < list.length; i ++) {
- list.options[i].selected = sel;
- }
-}
---></SCRIPT>
-
-<FORM METHOD="POST" ACTION="/admin/" NAME="export_samba">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba">
-
-<H2 CLASS="title">Esporta stampanti a Samba</H2>
-
-{error?<P>Impossibile esportare stampanti a Samba\:</P>
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-<P>Consulta il file <A HREF="/admin/log/error_log"
-TARGET="_blank">error_log</A> per ulteriori informazioni.</P>:
-<P>Questa pagina ti consente di esportare stampanti a Samba in modo che
-i client Windows possano accedervi dalle icone <VAR>Risorse di rete</VAR>
-sui loro desktop. Devi installare preventivamente i driver per stampanti
-Windows PostScript come descritto nella pagina di manuale <A
-HREF="/help/man-cupsaddsmb.html"
-TARGET="_blank">cupsaddsmb(8)</A>.</P>}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Stampanti:</TH>
-<TD>
-<SELECT NAME="EXPORT_NAME" SIZE="10" MULTIPLE>
-{[printer_name]<OPTION VALUE="{printer_name}"{export_all? SELECTED:{printer_export? SELECTED:}}>{printer_name}}
-</SELECT><BR>
-<INPUT TYPE="CHECKBOX" NAME="EXPORT_ALL"{export_all? CHECKED:}
-onChange="select_printers()"> Esporta tutte le stampanti
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Nome utente Samba:</TH>
-<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (richiesto)</TD>
-</TR>
-<TR>
-<TH CLASS="label">Password Samba:</TH>
-<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (richiesto)</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Esporta stampanti a Samba"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/it/samba-exported.tmpl b/templates/it/samba-exported.tmpl
deleted file mode 100644
index d75f2d82..00000000
--- a/templates/it/samba-exported.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P>Stampanti esportate a samba correttamente.</P>
diff --git a/templates/it/set-printer-options-header.tmpl b/templates/it/set-printer-options-header.tmpl
deleted file mode 100644
index b0867ced..00000000
--- a/templates/it/set-printer-options-header.tmpl
+++ /dev/null
@@ -1,26 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Imposta opzioni predefinite per {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{HAVE_AUTOCONFIGURE?<INPUT TYPE="SUBMIT" NAME="AUTOCONFIGURE" VALUE="Interroga stampante per opzioni predefinite">:}
-
-<SCRIPT TYPE="text/javascript"><!--
-function update_paramtable(option)
-{
- var cb = document.getElementById("select-" + option)
- var paramstable = document.getElementById(option + "-params");
- if (cb.value == "Custom")
- paramstable.style.display = "table";
- else
- paramstable.style.display = "none";
-}
---></SCRIPT>
-
-<H3 CLASS="title">{[group_id]
-<A HREF="#{group_id}">{group}</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</H3>
-
-<DIV CLASS="tabs">
diff --git a/templates/it/set-printer-options-trailer.tmpl b/templates/it/set-printer-options-trailer.tmpl
deleted file mode 100644
index 11adc701..00000000
--- a/templates/it/set-printer-options-trailer.tmpl
+++ /dev/null
@@ -1,16 +0,0 @@
-</DIV>
-
-<SCRIPT TYPE="text/javascript"><!--
-// Hide custom options parameters for browsers that understand Javascript
-var paramtables = document.getElementsByName("paramtable");
-for (var i = 0; i < paramtables.length; i++)
-{
- var opt = paramtables[i].id.substr(0, paramtables[i].id.lastIndexOf("-"));
- var cb = document.getElementById("select-" + opt);
- if (cb.value != "Custom")
- paramtables[i].style.display = "none";
-}
---></SCRIPT>
-</FORM>
-
-</DIV>
diff --git a/templates/it/subscription-added.tmpl b/templates/it/subscription-added.tmpl
deleted file mode 100644
index baec73de..00000000
--- a/templates/it/subscription-added.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>L'iscrizione {subscription_name} è stata aggiunta correttamente.</P>
-
-</DIV>
diff --git a/templates/it/subscription-canceled.tmpl b/templates/it/subscription-canceled.tmpl
deleted file mode 100644
index b8a94aa1..00000000
--- a/templates/it/subscription-canceled.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>L'iscrizione #{notify_subscription_id} è stata annullata.</P>
-
-</DIV>
diff --git a/templates/it/test-page.tmpl b/templates/it/test-page.tmpl
deleted file mode 100644
index 409ebf61..00000000
--- a/templates/it/test-page.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Stampa pagina di prova su {printer_name}</H2>
-
-<P>Pagina di prova inviata; l'ID della stampa è <A HREF="/{SECTION}/{printer_name}">
-{printer_name}-{job_id}</A>.</P>
-
-</DIV>
diff --git a/templates/it/trailer.tmpl b/templates/it/trailer.tmpl
deleted file mode 100644
index 100c3a17..00000000
--- a/templates/it/trailer.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS e il logo CUPS sono marchi di
-<A HREF="http://www.apple.com">Apple Inc.</A> CUPS è un copyright 2007-2012 Apple
-Inc. Tutti i diritti sono riservati.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/templates/ja/add-class.tmpl b/templates/ja/add-class.tmpl
index 11108ccf..b4e91668 100644
--- a/templates/ja/add-class.tmpl
+++ b/templates/ja/add-class.tmpl
@@ -10,7 +10,7 @@
<TR>
<TH CLASS="label">åå‰:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>("/"ã€"#"ã€ã‚¹ãƒšãƒ¼ã‚¹ã‚’é™¤ãæ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™)</SMALL></TD>
+<SMALL("/"ã€"#"ã€ã‚¹ãƒšãƒ¼ã‚¹ã‚’除ã表示å¯èƒ½æ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™)</SMALL></TD>
</TR>
<TR>
<TH CLASS="label">説明:</TH>
@@ -37,4 +37,4 @@
</TABLE>
</FORM>
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/ja/add-printer.tmpl b/templates/ja/add-printer.tmpl
index f054254a..00fab5ca 100644
--- a/templates/ja/add-printer.tmpl
+++ b/templates/ja/add-printer.tmpl
@@ -16,7 +16,7 @@
<TR>
<TH CLASS="label">åå‰:</TH>
<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?template_name}"><BR>
-<SMALL>("/"ã€"#"ã€ã‚¹ãƒšãƒ¼ã‚¹ã‚’é™¤ãæ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™)</SMALL></TD>
+<SMALL>("/"ã€"#"ã€ã‚¹ãƒšãƒ¼ã‚¹ã‚’除ã表示å¯èƒ½æ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™)</SMALL></TD>
</TR>
<TR>
<TH CLASS="label">説明:</TH>
@@ -44,4 +44,4 @@
</TABLE>
</FORM>
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/ja/admin.tmpl b/templates/ja/admin.tmpl
index e1e02295..53cb2da5 100644
--- a/templates/ja/admin.tmpl
+++ b/templates/ja/admin.tmpl
@@ -45,37 +45,29 @@
<P><A HREF="/admin/">詳細 <SMALL>&#x25bc;</SMALL></A><BR>
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> ã»ã‹ã®ã‚·ã‚¹ãƒ†ãƒ ã§å…±æœ‰ã•れã¦ã„るプリンターを表示<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;プロトコル\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> ã“ã®ã‚·ã‚¹ãƒ†ãƒ ã«æŽ¥ç¶šã•れã¦ã„るプリンターを共有<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;最大クライアント数\:
<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;プロトコル\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> インターãƒãƒƒãƒˆã‹ã‚‰ã®å°åˆ·ã‚’許å¯<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> ウェブインターフェイスを公開<BR>
<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> リモート管ç†ã‚’許å¯<BR>
{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Kerberos èªè¨¼ã‚’使用 (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> 所有者以外ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ã‚‚ジョブã®ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã‚’許å¯<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY" {?preserve_job_history}> ジョブã®å±¥æ­´ã‚’ä¿å­˜<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;最大ジョブ数\:
+<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOBS" {?preserve_jobs}> ジョブã®å±¥æ­´ã‚’ä¿å­˜<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;最大ジョブ数 (0 ã¯ç„¡åˆ¶é™)\:
<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES" {?preserve_job_files}> ジョブã®å°åˆ·ãƒ•ァイルをä¿å­˜<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿ã‚’ä¿æŒ\:
+<INPUT TYPE="TEXT" NAME="PRESERVE_JOB_HISTORY" VALUE="{?preserve_job_history}" SIZE="6"><BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’ä¿æŒ\:
+<INPUT TYPE="TEXT" NAME="PRESERVE_JOB_FILES" VALUE="{?preserve_job_files}" SIZE="6"><BR>
<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> トラブルシューティングã®ãŸã‚ã«ãƒ‡ãƒãƒƒã‚°æƒ…報をä¿å­˜<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;最大ログファイルサイズ\:
<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
-:<P><B>サーãƒãƒ¼è¨­å®š\:</B></P>
+:<P><B>サーãƒãƒ¼è¨­å®š:</B></P>
<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">詳細 <SMALL>&#x25b6;</SMALL></A><BR>
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> ã»ã‹ã®ã‚·ã‚¹ãƒ†ãƒ ã§å…±æœ‰ã•れã¦ã„るプリンターを表示<BR>
<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> ã“ã®ã‚·ã‚¹ãƒ†ãƒ ã«æŽ¥ç¶šã•れã¦ã„るプリンターを共有<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> インターãƒãƒƒãƒˆã‹ã‚‰ã®å°åˆ·ã‚’許å¯<BR>
<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> リモート管ç†ã‚’許å¯<BR>
diff --git a/templates/ja/choose-device.tmpl b/templates/ja/choose-device.tmpl
index 05700c3c..83b1c6a6 100644
--- a/templates/ja/choose-device.tmpl
+++ b/templates/ja/choose-device.tmpl
@@ -1,23 +1,20 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{op=modify-printer?{printer_name}ã®å¤‰æ›´:プリンターã®è¿½åŠ }</H2>
+<H2 CLASS="title">{op=modify-printer?{printer_name} ã®å¤‰æ›´:プリンターã®è¿½åŠ }</H2>
-{CUPS_GET_DEVICES_DONE?:<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Busy Indicator"> プリンターを探ã—ã¦ã„ã¾ã™...</P>}
-
-<FORM METHOD="POST" ACTION="/admin">
+{CUPS_GET_DEVICES_DONE?<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
<TABLE>
{op=add-printer?:<TR>
-<TH CLASS="label">ç¾åœ¨ã®æŽ¥ç¶š:</TH>
+<TH CLASS="label">ç¾åœ¨ã®æŽ¥ç¶š\:</TH>
<TD><INPUT TYPE="RADIO" NAME="DEVICE_URI" VALUE="{current_device_uri}" CHECKED>
{current_device_uri}</TD>
</TR>}
<TR>
-<TH CLASS="label">ローカルプリンター:</TH>
+<TH CLASS="label">ローカルプリンター\:</TH>
<TD>
{[device_uri]{device_class!network?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
@@ -26,7 +23,7 @@ VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
</TD>
</TR>
<TR>
-<TH CLASS="label">発見ã•れãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ—リンター:</TH>
+<TH CLASS="label">発見ã•れãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ—リンター\:</TH>
<TD>
{[device_uri]{device_class=network?{device_uri~[a-z]+://?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
@@ -36,7 +33,7 @@ VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
</TR>
<TR>
<TR>
-<TH CLASS="label">ãã®ä»–ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ—リンター:</TH>
+<TH CLASS="label">ãã®ä»–ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ—リンター\:</TH>
<TD>
{[device_uri]{device_class=network?{device_uri~[a-z]+://?:<INPUT TYPE="RADIO" NAME="DEVICE_URI"
VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
@@ -50,5 +47,7 @@ VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
</TR>
</TABLE>
-</FORM>
-</DIV> \ No newline at end of file
+</FORM>:<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
+ALT="Busy Indicator"> プリンターを探ã—ã¦ã„ã¾ã™...</P>}
+
+</DIV>
diff --git a/templates/ja/choose-make.tmpl b/templates/ja/choose-make.tmpl
index c800d981..7d2d9234 100644
--- a/templates/ja/choose-make.tmpl
+++ b/templates/ja/choose-make.tmpl
@@ -31,7 +31,7 @@
<TR>
<TH CLASS="label">共有:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-ã“ã®ãƒ—リンターを共有{?printer_is_shared=?ã—ãªã„:{?printer_is_shared=0?ã—ãªã„:ã™ã‚‹}} </TD>
+ã“ã®ãƒ—リンターを共有{?printer_is_shared=?ã—ãªã„:{?printer_is_shared=0?ã—ãªã„:ã™ã‚‹}}</TD>
</TR>
<TR>
<TH CLASS="label">メーカー:</TH>
@@ -61,4 +61,4 @@ TYPE="FILE" NAME="PPD_FILE"></TD>
</TABLE>
</FORM>
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/ja/choose-model.tmpl b/templates/ja/choose-model.tmpl
index 20011b4d..e82cece9 100644
--- a/templates/ja/choose-model.tmpl
+++ b/templates/ja/choose-model.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{op=modify-printer?{printer_name}ã®è¿½åŠ :プリンターã®è¿½åŠ }</H2>
+<H2 CLASS="title">{op=modify-printer?{printer_name}ã®å¤‰æ›´:プリンターã®è¿½åŠ }</H2>
<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
@@ -30,7 +30,7 @@
<TR>
<TH CLASS="label">共有:</TH>
<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-ã“ã®ãƒ—リンターを共有{?printer_is_shared=?ã—ãªã„:{?printer_is_shared=0?ã—ãªã„:ã™ã‚‹}} </TD>
+ã“ã®ãƒ—リンターを共有{?printer_is_shared=?ã—ãªã„:{?printer_is_shared=0?ã—ãªã„:ã™ã‚‹}}</TD>
</TR>
<TR>
<TH CLASS="label">メーカー:</TH>
@@ -57,4 +57,4 @@ TYPE="FILE" NAME="PPD_FILE"></TD>
</TABLE>
</FORM>
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/ja/choose-uri.tmpl b/templates/ja/choose-uri.tmpl
index 48978edf..2c687bef 100644
--- a/templates/ja/choose-uri.tmpl
+++ b/templates/ja/choose-uri.tmpl
@@ -11,7 +11,7 @@
<TABLE>
<TR>
<TH CLASS="label">接続:</TH>
-<TD><INPUT TYPE="URL" SIZE="60" MAXLENGTH="1024" NAME="DEVICE_URI" VALUE="{current_device_uri?{current_device_uri}:{device_uri}}"></TD>
+<TD><INPUT TYPE="URL" SIZE="60" MAXLENGTH="1023" NAME="DEVICE_URI" VALUE="{current_device_uri?{current_device_uri}:{device_uri}}"></TD>
</TR>
<TR>
<TD></TD>
diff --git a/templates/ja/class-confirm.tmpl b/templates/ja/class-confirm.tmpl
index e50b6a90..6ab315de 100644
--- a/templates/ja/class-confirm.tmpl
+++ b/templates/ja/class-confirm.tmpl
@@ -3,7 +3,7 @@
<H2 CLASS="title">クラス {printer_name} ã®å‰Šé™¤</H2>
<P><B>警告:</B> 本当ã«ã‚¯ãƒ©ã‚¹
-{printer_name} を削除ã—ã¦ã‚‚良ã„ã§ã™ã‹ï¼Ÿ</P>
+{printer_name} を削除ã—ã¦ã‚‚よã„ã§ã™ã‹ï¼Ÿ</P>
<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="op" VALUE="delete-class"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="クラスã®å‰Šé™¤"></FORM></P>
diff --git a/templates/ja/class-deleted.tmpl b/templates/ja/class-deleted.tmpl
index 41569379..69413217 100644
--- a/templates/ja/class-deleted.tmpl
+++ b/templates/ja/class-deleted.tmpl
@@ -4,4 +4,4 @@
<P>クラス {printer_name} ã¯æ­£ã—ã削除ã•れã¾ã—ãŸã€‚
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/ja/class-modified.tmpl b/templates/ja/class-modified.tmpl
index ef14ee4e..be65f13b 100644
--- a/templates/ja/class-modified.tmpl
+++ b/templates/ja/class-modified.tmpl
@@ -2,6 +2,6 @@
<H2 CLASS="title">クラス {printer_name} ã®å¤‰æ›´</H2>
-<P>Class <A HREF="/classes/{printer_name}">{printer_name}</A> ã¯æ­£ã—ã変更ã•れã¾ã—ãŸã€‚
+<P>クラス <A HREF="/classes/{printer_name}">{printer_name}</A> ã¯æ­£ã—ã変更ã•れã¾ã—ãŸã€‚
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/ja/class.tmpl b/templates/ja/class.tmpl
index c2840764..b71ea7ee 100644
--- a/templates/ja/class.tmpl
+++ b/templates/ja/class.tmpl
@@ -2,14 +2,14 @@
<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
({printer_state=3?待機中:{printer_state=4?処ç†ä¸­:åœæ­¢}},
{printer_is_accepting_jobs=0?ジョブを拒å¦ä¸­:ジョブをå—ã‘付ã‘中},
-{server_is_sharing_printers=0?éž:{printer_is_shared=0?éž:}}共有{default_name={printer_name}?, デフォルトプリンター:})</H2>
+{server_is_sharing_printers=0?éž:{printer_is_shared=0?éž:}} 共有{default_name={printer_name}?, サーãƒãƒ¼ã®ãƒ‡ãƒ•ォルト:})</H2>
<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
<OPTION VALUE="">メンテナンス</OPTION>
<OPTION VALUE="print-test-page">テストページã®å°åˆ·</OPTION>
-{printer_state=5?<OPTION VALUE="start-class">クラスã®é–‹å§‹</OPTION>:<OPTION VALUE="stop-class">クラスã®åœæ­¢</OPTION>}
+{printer_state=5?<OPTION VALUE="start-class">クラスã®å†é–‹</OPTION>:<OPTION VALUE="stop-class">クラスã®åœæ­¢</OPTION>}
{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">ジョブをå—ã‘付ã‘</OPTION>:<OPTION VALUE="reject-jobs">ジョブを拒å¦</OPTION>}
<OPTION VALUE="move-jobs">ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–ã®ç§»å‹•</OPTION>
<OPTION VALUE="purge-jobs">ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–をキャンセル</OPTION>
@@ -26,16 +26,16 @@
<OPTION VALUE="modify-class">クラスã®å¤‰æ›´</OPTION>
<OPTION VALUE="delete-class">クラスã®å‰Šé™¤</OPTION>
<OPTION VALUE="set-class-options">デフォルトオプションã®è¨­å®š</OPTION>
-<OPTION VALUE="set-as-default">デフォルトプリンターã®è¨­å®š</OPTION>
+<OPTION VALUE="set-as-default">サーãƒãƒ¼ã®ãƒ‡ãƒ•ォルトã®è¨­å®š</OPTION>
<OPTION VALUE="set-allowed-users">許å¯ã™ã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®è¨­å®š</OPTION>
</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
+<INPUT TYPE="SUBMIT" VALUE="進む" STYLE="display: none;">
</FORM>
<TABLE SUMMARY="{printer_name}">
<TR><TH ALIGN="RIGHT" VALIGN="TOP">説明:</TH><TD>{printer_info}</TD></TR>
<TR><TH ALIGN="RIGHT" VALIGN="TOP">場所:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">メンãƒãƒ¼:</TH><TD>{?member_uris=?None:{member_uris}}</TD></TR>
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">メンãƒãƒ¼:</TH><TD>{?member_uris=?ãªã—:{member_uris}}</TD></TR>
<TR><TH ALIGN="RIGHT" VALIGN="TOP">デフォルト:</TH><TD>job-sheets={job_sheets_default}
media={media_default?{media_default}:unknown}
{sides_default?sides={sides_default}:}</TD></TR>
diff --git a/templates/ja/classes.tmpl b/templates/ja/classes.tmpl
index 82d13d66..823a832a 100644
--- a/templates/ja/classes.tmpl
+++ b/templates/ja/classes.tmpl
@@ -1,11 +1,11 @@
{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="クラスã®ãƒªã‚¹ãƒˆ">
+<TABLE CLASS="list" SUMMARY="クラスã®ä¸€è¦§">
<THEAD>
<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> キューå <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> キューå <SMALL>&#x25bc;</SMALL>}</A></TH><TH>説明</TH><TH>場所</TH><TH>メンãƒãƒ¼</TH><TH>状態</TH></TR>
</THEAD>
<TBODY>
{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?None:{member_uris}}</TD><TD>{printer_state=3?待機中:{printer_state=4?処ç†ä¸­:åœæ­¢}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
+<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?ãªã—:{member_uris}}</TD><TD>{printer_state=3?待機中:{printer_state=4?処ç†ä¸­:åœæ­¢}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
}
</TBODY>
</TABLE></DIV>}
diff --git a/templates/ja/command.tmpl b/templates/ja/command.tmpl
index 3b8afbf2..f892335e 100644
--- a/templates/ja/command.tmpl
+++ b/templates/ja/command.tmpl
@@ -3,7 +3,7 @@
<H2 CLASS="title">{printer_name} ã® {title}</H2>
<P>{job_state>5?:<IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16"
-ALIGN="ABSMIDDLE" ALT="Busy Indicator"> }プリンタージョブ
+ALIGN="ABSMIDDLE" ALT="Busy Indicator"> }プリンターコマンドジョブ
{job_state=3?ペンディング中:{job_state=4?ホールド中:
{job_state=5?処ç†ä¸­:{job_state=6?åœæ­¢ä¸­:
{job_state=7?キャンセル:{job_state=8?破棄:完了}}}}}}{job_state=9?:{job_printer_state_message?,
diff --git a/templates/ja/edit-config.tmpl b/templates/ja/edit-config.tmpl
index a05a5547..dfd7dc95 100644
--- a/templates/ja/edit-config.tmpl
+++ b/templates/ja/edit-config.tmpl
@@ -15,7 +15,7 @@ function reset_config()
<TEXTAREA NAME="CUPSDCONF" COLS="80" ROWS="25">{CUPSDCONF}</TEXTAREA>
-<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="設定ã®ä¿å­˜">
+<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="変更ã®ä¿å­˜">
<INPUT TYPE="BUTTON" VALUE="デフォルトã®è¨­å®šãƒ•ァイルを使用"
onClick="reset_config();"></P>
diff --git a/templates/ja/error-op.tmpl b/templates/ja/error-op.tmpl
index 81c8fbbd..89ffbaec 100644
--- a/templates/ja/error-op.tmpl
+++ b/templates/ja/error-op.tmpl
@@ -1,9 +1,9 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{?title} {?printer_name} エラー</H2>
+<H2 CLASS="title">{?title} {?printer_name} ã®ã‚¨ãƒ©ãƒ¼</H2>
<P>エラー:</P>
-<BLOCKQUOTE>"{op}" ã¯æœªçŸ¥ã®æ“作ã§ã™ï¼</BLOCKQUOTE>
+<BLOCKQUOTE>"{op}" ã¯æœªçŸ¥ã®æ“作ã§ã™!</BLOCKQUOTE>
</DIV>
diff --git a/templates/ja/error.tmpl b/templates/ja/error.tmpl
index f10c3887..d67ce366 100644
--- a/templates/ja/error.tmpl
+++ b/templates/ja/error.tmpl
@@ -1,8 +1,8 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{?title} {?printer_name} エラー</H2>
+<H2 CLASS="title">{?title} {?printer_name} ã®ã‚¨ãƒ©ãƒ¼</H2>
-<P>{?message?{message}:エラー:}</P>
+<P>{?message?{message}:エラー}:</P>
<BLOCKQUOTE>{error}</BLOCKQUOTE>
diff --git a/templates/ja/header.tmpl.in b/templates/ja/header.tmpl.in
index ec64a744..a383725c 100644
--- a/templates/ja/header.tmpl.in
+++ b/templates/ja/header.tmpl.in
@@ -14,12 +14,12 @@
<TR HEIGHT="36">
<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="unsel" NOWRAP><A HREF="/">&nbsp;&nbsp;ホーム&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=admin?:un}sel" NOWRAP><A HREF="/admin">&nbsp;&nbsp;管ç†&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=classes?:un}sel" NOWRAP><A HREF="/classes/">&nbsp;&nbsp;クラス&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=help?:un}sel" NOWRAP><A HREF="/help/">&nbsp;&nbsp;ヘルプ&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=jobs?:un}sel" NOWRAP><A HREF="/jobs/">&nbsp;&nbsp;ジョブ&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=printers?:un}sel" NOWRAP><A HREF="/printers/">&nbsp;プリンター&nbsp;</A></TD>
+<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;Home&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=admin?:un}sel"><A HREF="/admin">&nbsp;&nbsp;Administration&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=classes?:un}sel"><A HREF="/classes/">&nbsp;&nbsp;Classes&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=help?:un}sel"><A HREF="/help/">&nbsp;&nbsp;Online&nbsp;Help&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=jobs?:un}sel"><A HREF="/jobs/">&nbsp;&nbsp;Jobs&nbsp;&nbsp;</A></TD>
+<TD CLASS="{SECTION=printers?:un}sel"><A HREF="/printers/">&nbsp;&nbsp;Printers&nbsp;&nbsp;</A></TD>
<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
VALUE="{SECTION=help?{?QUERY}:}" AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
diff --git a/templates/ja/help-header.tmpl b/templates/ja/help-header.tmpl
index ee0e5f01..4a1f0ffb 100644
--- a/templates/ja/help-header.tmpl
+++ b/templates/ja/help-header.tmpl
@@ -3,7 +3,7 @@
{TOPIC?<INPUT TYPE="HIDDEN" NAME="TOPIC" VALUE="{TOPIC}">:}
<P ALIGN="CENTER"><B>
-{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆ}内を検索:</B> <INPUT
+{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆ}}内を検索:</B> <INPUT
TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER=""
AUTOSAVE="org.cups.help" RESULTS="20">
<INPUT TYPE="SUBMIT" NAME="SEARCH" VALUE="検索">
@@ -12,7 +12,7 @@ AUTOSAVE="org.cups.help" RESULTS="20">
</FORM>
<!-- Bookmarks -->
-<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="Contents">
+<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="目次">
<TR><TD>
<H3 CLASS="title">オンラインヘルプドキュメント</H3>
@@ -25,7 +25,7 @@ AUTOSAVE="org.cups.help" RESULTS="20">
</TD></TR>
</TABLE></DIV>
-{QUERY?<P>{HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®æ¤œç´¢çµæžœ}}\:</P>
+{QUERY?<P>{HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆ}}ã®æ¤œç´¢çµæžœ\:</P>
{QTEXT?<UL>
{[QTEXT]<LI><A HREF="{QLINK}">{QTEXT}</A>{QPTEXT? (in <I><A HREF="{QPLINK}">{QPTEXT}</A></I>):}</LI>}
{QTEXT?</UL>:}
@@ -41,11 +41,11 @@ AUTOSAVE="org.cups.help" RESULTS="20">
ドキュメントリンクã®ã„ãšã‚Œã‹ã‚’クリックã—ã¦ãã ã•ã„。</P>
<P>ã‚ãªãŸãŒ CUPS ã«ã¤ã„ã¦åˆå¿ƒè€…ãªã‚‰ã€ "<a
-href="/help/overview.html">CUPS ã®æ¦‚è¦</a>" を読んã§ãã ã•ã„。
-上級ユーザーã¯ã€ "<a href="/help/whatsnew.html">CUPS 1.4 ã®æ–°æ©Ÿèƒ½</a>"
-を読むã¹ãã§ã™ã€‚</P>
-
-<P><A HREF="http://www.cups.org/">CUPS ホームページ</A> ã§ã‚‚ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼
-ディスカッションフォーラムã€FAQã€ãƒã‚°å ±å‘Šã‚„機能リクエストを申請ã™ã‚‹
-フォームã¨ã„ã£ãŸã€å¤šãã®ãƒªã‚½ãƒ¼ã‚¹ã‚’æä¾›ã—ã¦ã„ã¾ã™ã€‚</P>}
-
+href="/help/overview.html">CUPS ã®æ¦‚è¦</a>" ページを読んã§ãã ã•ã„。
+上級ユーザーã¯ã€ "<a href="/help/whatsnew.html">CUPS 1.6 ã®æ–°æ©Ÿèƒ½</a>"
+ページを読むã¹ãã§ã™ã€‚</P>
+
+<P><A HREF="http://www.cups.org/">CUPS ホームページ</A> ã§ã‚‚ã€
+ユーザーディスカッションフォーラムã€FAQã€
+ãƒã‚°å ±å‘Šã‚„機能リクエストを申請ã™ã‚‹ãƒ•ォームã¨ã„ã£ãŸã€
+多ãã®ãƒªã‚½ãƒ¼ã‚¹ã‚’æä¾›ã—ã¦ã„ã¾ã™ã€‚</P>}
diff --git a/templates/ja/job-cancel.tmpl b/templates/ja/job-cancel.tmpl
index 16e44d82..aa102953 100644
--- a/templates/ja/job-cancel.tmpl
+++ b/templates/ja/job-cancel.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">ジョブ {job_id}ã®ã‚­ãƒ£ãƒ³ã‚»ãƒ«</H2>
+<H2 CLASS="title">ジョブ {job_id} ã®ã‚­ãƒ£ãƒ³ã‚»ãƒ«</H2>
<P><A HREF="{job_printer_uri}">ジョブ {job_id}</A> ã¯ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã•れã¾ã—ãŸã€‚
diff --git a/templates/ja/job-hold.tmpl b/templates/ja/job-hold.tmpl
index 4aec1b22..baae237f 100644
--- a/templates/ja/job-hold.tmpl
+++ b/templates/ja/job-hold.tmpl
@@ -3,4 +3,5 @@
<H2 CLASS="title">ジョブ {job_id} ã®ä¿ç•™</H2>
<P><A HREF="{job_printer_uri}">ジョブ {job_id}</A> ã¯å°åˆ·ã‚’ä¿ç•™ã•れã¾ã—ãŸã€‚
+
</DIV>
diff --git a/templates/ja/job-moved.tmpl b/templates/ja/job-moved.tmpl
index d6b3445c..c4153597 100644
--- a/templates/ja/job-moved.tmpl
+++ b/templates/ja/job-moved.tmpl
@@ -3,6 +3,6 @@
<H2 CLASS="title">{job_id?ジョブ {job_id} ã®ç§»å‹•:ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–ã®ç§»å‹•}</H2>
<P>{job_id?<A HREF="/jobs/{job_id}">ジョブ {job_id}</A>:ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–} ã¯
-<A HREF="/{is_class?classes:printers}/{job_printer_name}">{job_printer_name}</A>ã«ç§»å‹•ã—ã¾ã—ãŸã€‚</P>
+<A HREF="/{is_class?classes:printers}/{job_printer_name}">{job_printer_name}</A> ã«ç§»å‹•ã—ã¾ã—ãŸã€‚</P>
</DIV>
diff --git a/templates/ja/jobs-header.tmpl b/templates/ja/jobs-header.tmpl
index 76095b4e..8c1c3a58 100644
--- a/templates/ja/jobs-header.tmpl
+++ b/templates/ja/jobs-header.tmpl
@@ -2,4 +2,4 @@
{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="完了ã—ãŸã‚¸ãƒ§ãƒ–を表示"></FORM>}
{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–を表示"></FORM>}</DIV>
-<P ALIGN="CENTER">{total=0?ジョブã¯ã‚りã¾ã›ã‚“:{total} 個ã®{?which_jobs=?アクティブãª:{which_jobs=all?:完了ã—ãŸ}}ジョブã®ã†ã¡ {#job_id} 個を表示中}。</P>
+<P ALIGN="CENTER">{total=0?ジョブã¯ã‚りã¾ã›ã‚“:{total} 個ã®{?which_jobs=?アクティブãª:{which_jobs=all?:完了ã—ãŸ}}ジョブã®ã†ã¡ {#job_id} 個を表示中}}。</P>
diff --git a/templates/ja/jobs.tmpl b/templates/ja/jobs.tmpl
index bff543ae..220c950a 100644
--- a/templates/ja/jobs.tmpl
+++ b/templates/ja/jobs.tmpl
@@ -1,24 +1,23 @@
{#job_id=0?:
-<TABLE CLASS="list" SUMMARY="ジョブã®ãƒªã‚¹ãƒˆ">
+<TABLE CLASS="list" SUMMARY="ジョブã®ä¸€è¦§">
<THEAD>
<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> ID <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> ID <SMALL>&#x25bc;</SMALL>}</A></TH><TH>åå‰</TH><TH>ユーザー</TH><TH>サイズ</TH><TH>ページ</TH><TH>状態</TH><TH>制御</TH></TR>
</THEAD>
<TBODY>
{[job_id]
<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
+<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}{?phone? ({phone}):}&nbsp;</TD>
<TD>{?job_name=?未知:{job_name}}&nbsp;</TD>
-<TD>{job_originating_user_name}&nbsp;</TD>
+<TD>{?job_originating_user_name=?隠匿:{job_originating_user_name}}&nbsp;</TD>
<TD>{job_k_octets}k&nbsp;</TD>
<TD>{job_media_sheets_completed=0?䏿˜Ž:{?job_media_sheets_completed}}&nbsp;</TD>
-<TD>{job_state=3?{time_at_creation}<BR>ã‹ã‚‰ä¿ç•™ä¸­:{job_state=4?held since<BR>{time_at_creation}:
-{job_state=5?{time_at_processing}<BR>ã‹ã‚‰å‡¦ç†ä¸­:{job_state=6?stopped:
-{job_state=7?{time_at_completed}<BR>ã«ã‚­ãƒ£ãƒ³ã‚»ãƒ«:{job_state=8?{time_at_completed}ã«ä¸­æ–­:ã«å®Œäº†}}}}}}&nbsp;{job_printer_state_message?<BR>
+<TD>{job_state=3?{time_at_creation}<BR>ã‹ã‚‰ä¿ç•™ä¸­:{job_state=4?{time_at_creation}<BR>ã‹ã‚‰ä¿ç•™ä¸­:
+{job_state=5?{time_at_processing}<BR>ã‹ã‚‰å‡¦ç†ä¸­:{job_state=6?ã«åœæ­¢:
+{job_state=7?{time_at_completed}<BR>ã«ã‚­ãƒ£ãƒ³ã‚»ãƒ«:{job_state=8?ã«ä¸­æ–­:{time_at_completed}<BR>ã«å®Œäº†}}}}}}&nbsp;{job_printer_state_message?<BR>
<EM>"{job_printer_state_message}"</EM>:}</TD>
<TD>
{job_preserved>0?{job_state>5?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="ジョブã®å†å°åˆ·"></FORM>:}:}
+<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}"><INPUT TYPE="SUBMIT" VALUE="ジョブã®å†å°åˆ·"></FORM>:}:}
{job_state=4?
<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="release-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
<INPUT TYPE="SUBMIT" VALUE="ジョブを解放"></FORM>:}
diff --git a/templates/ja/modify-printer.tmpl b/templates/ja/modify-printer.tmpl
index d8ef5f04..009af6d6 100644
--- a/templates/ja/modify-printer.tmpl
+++ b/templates/ja/modify-printer.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">プリンター {printer_name} ã®å¤‰æ›´</H2>
+<H2 CLASS="title">{printer_name} ã®å¤‰æ›´</H2>
<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
diff --git a/templates/ja/printer-configured.tmpl b/templates/ja/printer-configured.tmpl
index d6b2bf1a..10459431 100644
--- a/templates/ja/printer-configured.tmpl
+++ b/templates/ja/printer-configured.tmpl
@@ -2,6 +2,7 @@
<H2 CLASS="title">{printer_name} ã®ãƒ‡ãƒ•ォルトオプションã®è¨­å®š</H2>
-<P>{OP=set-class-options?クラス <A HREF="/classes/{printer_name}">:プリンター <A HREF="/printers/{printer_name}">}{printer_name}</A> ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚ªãƒ—ã‚·ãƒ§ãƒ³ã¯æ­£ã—ã設定ã•れã¾ã—ãŸã€‚
+<P>{OP=set-class-options?クラス <A HREF="/classes/{printer_name}">:プリンター <A HREF="/printers/{printer_name}">}{printer_name}</A>
+ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚ªãƒ—ã‚·ãƒ§ãƒ³ã¯æ­£ã—ã設定ã•れã¾ã—ãŸã€‚
</DIV>
diff --git a/templates/ja/printer-default.tmpl b/templates/ja/printer-default.tmpl
index aa04c2ee..fccfc0de 100644
--- a/templates/ja/printer-default.tmpl
+++ b/templates/ja/printer-default.tmpl
@@ -6,7 +6,7 @@
HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
をサーãƒãƒ¼ã®ãƒ‡ãƒ•ォルトプリンターã«è¨­å®šã—ã¾ã—ãŸã€‚</P>
-<BLOCKQUOTE><B>注æ„:</B> <TT>lpoptions</TT> コマンドã§è¨­å®šã•れãŸãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ‡ãƒ•ォルトã¯ã€ã“ã®ã‚µãƒ¼ãƒãƒ¼ã®ãƒ‡ãƒ•ォルト設定を上書ãã—ã¾ã™ã€‚
-</BLOCKQUOTE>
+<BLOCKQUOTE><B>注æ„:</B> <TT>lpoptions</TT> コマンドã§è¨­å®šã•れãŸãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ‡ãƒ•ォルトã¯ã€
+ã“ã®ã‚µãƒ¼ãƒãƒ¼ã®ãƒ‡ãƒ•ォルト設定を上書ãã—ã¾ã™ã€‚</BLOCKQUOTE>
</DIV>
diff --git a/templates/ja/printer-deleted.tmpl b/templates/ja/printer-deleted.tmpl
index 17cf44c1..2f2759b2 100644
--- a/templates/ja/printer-deleted.tmpl
+++ b/templates/ja/printer-deleted.tmpl
@@ -3,4 +3,5 @@
<H2 CLASS="title">プリンター {printer_name} ã®å‰Šé™¤</H2>
<P>プリンター {printer_name} ã¯æ­£ã—ã削除ã•れã¾ã—ãŸã€‚
+
</DIV>
diff --git a/templates/ja/printer-modified.tmpl b/templates/ja/printer-modified.tmpl
index 63997bb4..a22e7da3 100644
--- a/templates/ja/printer-modified.tmpl
+++ b/templates/ja/printer-modified.tmpl
@@ -2,6 +2,7 @@
<H2 CLASS="title">プリンター {printer_name} ã®å¤‰æ›´</H2>
-<P>プリンター <A HREF="/printers/{printer_name}">{printer_name}</A> ã¯æ­£ã—ã変更ã•れã¾ã—ãŸã€‚
+<P>プリンター <A HREF="/printers/{printer_name}">{printer_name}</A>
+ã¯æ­£ã—ã変更ã•れã¾ã—ãŸã€‚
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/ja/printer-purge.tmpl b/templates/ja/printer-purge.tmpl
index 0546412a..4ba6cbcd 100644
--- a/templates/ja/printer-purge.tmpl
+++ b/templates/ja/printer-purge.tmpl
@@ -1,9 +1,9 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{is_class?クラス:プリンター} {printer_name} ジョブã®å…¨å‰Šé™¤</H2>
+<H2 CLASS="title">{is_class?クラス:プリンター} {printer_name} ã®ã‚¸ãƒ§ãƒ–ã®å…¨å‰Šé™¤</H2>
<P>{is_class?クラス:プリンター} <A
HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-ã¯ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–を削除ã—ã¾ã—ãŸã€‚</P>
+ã‹ã‚‰ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–を削除ã—ã¾ã—ãŸã€‚</P>
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/ja/printer-start.tmpl b/templates/ja/printer-start.tmpl
index 5c0eea19..138829d0 100644
--- a/templates/ja/printer-start.tmpl
+++ b/templates/ja/printer-start.tmpl
@@ -6,4 +6,4 @@
HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
ã¯å†é–‹ã—ã¾ã—ãŸã€‚</P>
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/ja/printer-stop.tmpl b/templates/ja/printer-stop.tmpl
index 8499b2ea..cc74c1b5 100644
--- a/templates/ja/printer-stop.tmpl
+++ b/templates/ja/printer-stop.tmpl
@@ -5,4 +5,5 @@
<P>{is_class?クラス:プリンター} <A
HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
ã¯åœæ­¢ã—ã¾ã—ãŸã€‚</P>
-</DIV>
+
+</DIV> \ No newline at end of file
diff --git a/templates/ja/printer.tmpl b/templates/ja/printer.tmpl
index fbd9c5ad..a95b71e4 100644
--- a/templates/ja/printer.tmpl
+++ b/templates/ja/printer.tmpl
@@ -3,18 +3,18 @@
<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
({printer_state=3?待機中:{printer_state=4?処ç†ä¸­:ä¸€æ™‚åœæ­¢ä¸­}},
{printer_is_accepting_jobs=0?ジョブを拒å¦ä¸­:ジョブをå—ã‘付ã‘中},
-{server_is_sharing_printers=0?éž:{printer_is_shared=0?éž:}}共有{default_name={printer_name}?, デフォルトプリンター:})</H2>
+{server_is_sharing_printers=0?éž:{printer_is_shared=0?éž:}} 共有{default_name={printer_name}?, サーãƒãƒ¼ã®ãƒ‡ãƒ•ォルト:})</H2>
<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
<OPTION VALUE="">メンテナンス</OPTION>
<OPTION VALUE="print-test-page">テストページã®å°åˆ·</OPTION>
-{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">ヘッドクリーニング</OPTION>:}
+{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">プリンターヘッドã®ã‚¯ãƒªãƒ¼ãƒ‹ãƒ³ã‚°</OPTION>:}
{printer_commands~.*PrintSelfTestPage.*?<OPTION VALUE="print-self-test-page">自己テストページã®å°åˆ·</OPTION>:}
{printer_state=5?<OPTION VALUE="start-printer">プリンターを開始</OPTION>:<OPTION VALUE="stop-printer">プリンターã®åœæ­¢</OPTION>}
{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">ジョブをå—ã‘付ã‘</OPTION>:<OPTION VALUE="reject-jobs">ジョブを拒å¦</OPTION>}
-<OPTION VALUE="move-jobs">ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–を移動</OPTION>
+<OPTION VALUE="move-jobs">ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–ã®ç§»å‹•</OPTION>
<OPTION VALUE="purge-jobs">ã™ã¹ã¦ã®ã‚¸ãƒ§ãƒ–をキャンセル</OPTION>
</SELECT>
<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
@@ -27,21 +27,21 @@
<OPTION VALUE="">管ç†</OPTION>
<OPTION VALUE="modify-printer">プリンターã®å¤‰æ›´</OPTION>
<OPTION VALUE="delete-printer">プリンターã®å‰Šé™¤</OPTION>
-<OPTION VALUE="set-printer-options">プリンターオプションã®å¤‰æ›´</OPTION>
-<OPTION VALUE="set-as-default">デフォルトプリンターã«è¨­å®š</OPTION>
+<OPTION VALUE="set-printer-options">デフォルトオプションã®è¨­å®š</OPTION>
+<OPTION VALUE="set-as-default">サーãƒãƒ¼ã®ãƒ‡ãƒ•ォルトã®è¨­å®š</OPTION>
<OPTION VALUE="set-allowed-users">許å¯ã™ã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®è¨­å®š</OPTION>
</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
+<INPUT TYPE="SUBMIT" VALUE="進む" STYLE="display: none;">
</FORM>
<TABLE SUMMARY="{printer_name}">
<TR><TH ALIGN="RIGHT" VALIGN="TOP">説明:</TH><TD>{printer_info}</TD></TR>
<TR><TH ALIGN="RIGHT" VALIGN="TOP">場所:</TH><TD>{printer_location}</TD></TR>
<TR><TH ALIGN="RIGHT" VALIGN="TOP">プリンタードライãƒãƒ¼:</TH><TD>{printer_make_and_model} ({color_supported=1?カラー:白黒}{sides_supported?, 両é¢å¯:})<BR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">接続先:</TH><TD>{device_uri}</TD></TR>
+<TR><TH ALIGN="RIGHT" VALIGN="TOP">接続:</TH><TD>{device_uri}</TD></TR>
<TR><TH ALIGN="RIGHT" VALIGN="TOP">デフォルト設定:</TH><TD>ãƒãƒŠãƒ¼={job_sheets_default}
用紙サイズ={media_default?{media_default}:unknown}
{sides_default?䏡颿Œ‡å®š={sides_default}:}</TD></TR>
</TABLE>
-</DIV>
+</DIV> \ No newline at end of file
diff --git a/templates/ja/printers.tmpl b/templates/ja/printers.tmpl
index 3fb9a37e..a8caaffd 100644
--- a/templates/ja/printers.tmpl
+++ b/templates/ja/printers.tmpl
@@ -1,11 +1,11 @@
{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Printer List">
+<TABLE CLASS="list" SUMMARY="プリンターã®ä¸€è¦§">
<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> キューå<SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL>キューå<SMALL>&#x25bc;</SMALL>}</A></TH><TH>説明</TH><TH>場所</TH><TH>メーカーã¨ãƒ¢ãƒ‡ãƒ«</TH><TH>状態</TH></TR>
+<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> キューå <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> キューå <SMALL>&#x25bc;</SMALL>}</A></TH><TH>説明</TH><TH>場所</TH><TH>メーカーã¨ãƒ¢ãƒ‡ãƒ«</TH><TH>状態</TH></TR>
</THEAD>
<TBODY>
{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>{printer_state=3?待機:{printer_state=4?Processing:åœæ­¢ä¸­}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
+<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>{printer_state=3?待機中:{printer_state=4?処ç†ä¸­:åœæ­¢}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
}
</TBODY>
</TABLE></DIV>}
diff --git a/templates/ja/restart.tmpl b/templates/ja/restart.tmpl
index ec74fac8..d8504efb 100644
--- a/templates/ja/restart.tmpl
+++ b/templates/ja/restart.tmpl
@@ -3,6 +3,6 @@
<H2 CLASS="title">設定ã®å¤‰æ›´</H2>
<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Busy Indicator"> サーãƒãƒ¼ãŒå†èµ·å‹•ã™ã‚‹ã‚ã„ã ã€ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„...</P>
+ALT="Busy Indicator"> サーãƒãƒ¼ãŒå†èµ·å‹•ã™ã‚‹é–“ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„...</P>
</DIV>
diff --git a/templates/ja/samba-export.tmpl b/templates/ja/samba-export.tmpl
index 74b7991e..b1d5050a 100644
--- a/templates/ja/samba-export.tmpl
+++ b/templates/ja/samba-export.tmpl
@@ -25,8 +25,7 @@ TARGET="_blank">error_log</A> ファイルをå‚ç…§ã—ã¦ãã ã•ã„。</P>:
ã¸ã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã‚’許å¯ã—ã¾ã™ã€‚<A
HREF="/help/man-cupsaddsmb.html"
TARGET="_blank">cupsaddsmb(8)</A> man ãƒšãƒ¼ã‚¸ã«æ›¸ã‹ã‚Œã¦ã„るよã†ã«ã€
-事å‰ã« Windows PostScript ドライãƒãƒ¼ã‚’インストールã—ã¦ãŠãå¿…è¦ãŒã‚りã¾ã™ã€‚
-</P>}
+事å‰ã« Windows PostScript ドライãƒãƒ¼ã‚’インストールã—ã¦ãŠãå¿…è¦ãŒã‚りã¾ã™ã€‚</P>}
<TABLE>
<TR>
@@ -41,11 +40,11 @@ onChange="select_printers()"> ã™ã¹ã¦ã®ãƒ—リンターをエクスãƒãƒ¼ãƒˆ
</TR>
<TR>
<TH CLASS="label">Samba ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼å:</TH>
-<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (required)</TD>
+<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (å¿…é ˆ)</TD>
</TR>
<TR>
<TH CLASS="label">Samba ã®ãƒ‘スワード:</TH>
-<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (required)</TD>
+<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (å¿…é ˆ)</TD>
</TR>
<TR>
<TD></TD>
diff --git a/templates/ja/set-printer-options-header.tmpl b/templates/ja/set-printer-options-header.tmpl
index b5896f07..cd8df916 100644
--- a/templates/ja/set-printer-options-header.tmpl
+++ b/templates/ja/set-printer-options-header.tmpl
@@ -1,6 +1,6 @@
<DIV CLASS="indent">
-<H2 CLASS="title">{printer_name} ã®ãƒ‡ãƒ•ォルトオプション変更</H2>
+<H2 CLASS="title">{printer_name} ã®ãƒ‡ãƒ•ォルトオプションã®å¤‰æ›´</H2>
<FORM METHOD="POST" ACTION="/admin">
<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
diff --git a/templates/jobs.tmpl b/templates/jobs.tmpl
index 625059f6..541e786a 100644
--- a/templates/jobs.tmpl
+++ b/templates/jobs.tmpl
@@ -6,7 +6,7 @@
<TBODY>
{[job_id]
<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
+<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}{?phone? ({phone}):}&nbsp;</TD>
<TD>{?job_name=?Unknown:{job_name}}&nbsp;</TD>
<TD>{?job_originating_user_name=?Withheld:{job_originating_user_name}}&nbsp;</TD>
<TD>{job_k_octets}k&nbsp;</TD>
diff --git a/templates/pl/add-class.tmpl b/templates/pl/add-class.tmpl
deleted file mode 100644
index d1f4b66b..00000000
--- a/templates/pl/add-class.tmpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Dodawanie klasy</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Nazwa:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Może zawierać wszystkie drukowalne znaki, oprócz "/", "#" i spacji)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Opis:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Opis czytelny dla człowieka, taki jak "HP LaserJet z dupleksem")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Położenie:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Położenie czytelne dla człowieka, takie jak "Laboratorium 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Członkowie:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Dodaj klasÄ™"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/pl/add-printer.tmpl b/templates/pl/add-printer.tmpl
deleted file mode 100644
index 45b50a0d..00000000
--- a/templates/pl/add-printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Dodawanie drukarki</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-{?current_make!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE" VALUE="{current_make}">:}
-{?current_make_and_model!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{current_make_and_model}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Nazwa:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?template_name}"><BR>
-<SMALL>(Może zawierać wszystkie drukowalne znaki, oprócz "/", "#" i spacji)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Opis:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_INFO}"><BR>
-<SMALL>(Opis czytelny dla człowieka, taki jak "HP LaserJet z dupleksem")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Położenie:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127" VALUE="{?PRINTER_LOCATION}"><BR>
-<SMALL>(Położenie czytelne dla człowieka, takie jak "Laboratorium 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Połączenie:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Współdzielenie:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Współdzielenie tej drukarki</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Kontynuuj"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/pl/add-rss-subscription.tmpl b/templates/pl/add-rss-subscription.tmpl
deleted file mode 100644
index f11ba610..00000000
--- a/templates/pl/add-rss-subscription.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription">
-
-<H2 CLASS="title">Dodawanie subskrypcji RSS</H2>
-
-<TABLE SUMMARY="Formularz dodawania subskrypcji RSS">
-<TR>
-<TH CLASS="label">Nazwa:</TH>
-<TD COLSPAN="5"><INPUT TYPE="TEXT" NAME="SUBSCRIPTION_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?SUBSCRIPTION_NAME}"><BR>
-<SMALL>(Może zawierać wszystkie drukowalne znaki, oprócz spacji, "/", "?" i "#")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kolejka:</TH>
-<TD COLSPAN="5"><SELECT NAME="PRINTER_URI" SIZE="10"><OPTION VALUE="#ALL#"{?PRINTER_URI=#ALL#? SELECTED:}>Wszystkie kolejki</OPTION>{[printer_name]<OPTION VALUE="{printer_uri_supported}"{?PRINTER_URI={printer_uri_supported}? SELECTED:}>{printer_name}</OPTION>}</SELECT></TD>
-</TR>
-<TR VALIGN="TOP">
-<TH CLASS="label">Zdarzenia:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CREATED" {?EVENT_JOB_CREATED}>Utworzono zadanie<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_COMPLETED" {?EVENT_JOB_COMPLETED}>Ukończono zadanie<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_STOPPED" {?EVENT_JOB_STOPPED}>Zatrzymano zadanie<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CONFIG_CHANGED" {?EVENT_JOB_CONFIG_CHANGED}>Zmieniono opcje zadania</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_STOPPED" {?EVENT_PRINTER_STOPPED}>Zatrzymano kolejkÄ™<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_ADDED" {?EVENT_PRINTER_ADDED}>Dodano kolejkÄ™<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_MODIFIED" {?EVENT_PRINTER_MODIFIED}>Zmodyfikowano kolejkÄ™<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_DELETED" {?EVENT_PRINTER_DELETED}>Usunięto kolejkę</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STARTED" {?EVENT_SERVER_STARTED}>Uruchomiono serwer<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STOPPED" {?EVENT_SERVER_STOPPED}>Zatrzymano serwer<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_RESTARTED" {?EVENT_SERVER_RESTARTED}>Ponownie uruchomiono serwer<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_AUDIT" {?EVENT_SERVER_AUDIT}>Audytowanie bezpieczeństwa serwera</TD>
-</TR>
-<TR>
-<TH CLASS="label">Maksymalna liczba zdarzeń w kanale:</TH>
-<TD COLSPAN="5"><INPUT TYPE="NUMBER" NAME="MAX_EVENTS" SIZE="4" MAXLENGTH="4" VALUE="{MAX_EVENTS?{MAX_EVENTS}:20}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD COLSPAN="5"><INPUT TYPE="SUBMIT" VALUE="Dodaj subskrypcjÄ™ RSS"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/pl/admin.tmpl b/templates/pl/admin.tmpl
deleted file mode 100644
index b997357b..00000000
--- a/templates/pl/admin.tmpl
+++ /dev/null
@@ -1,110 +0,0 @@
-<TABLE CLASS="indent" SUMMARY="Zadania administracji">
-<TR><TD VALIGN="TOP">
-
-<H2 CLASS="title">Drukarki</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="SUBMIT" VALUE="Dodawanie drukarki"></FORM>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="find-new-printers"><INPUT TYPE="SUBMIT" VALUE="Wyszukiwanie nowych drukarek"></FORM>
-<FORM ACTION="/printers/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="ZarzÄ…dzanie drukarkami"></FORM>
-{have_samba?<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba"><INPUT TYPE="SUBMIT" VALUE="Eksportowanie drukarek do Samby"></FORM>:}
-</P>
-
-<H2 CLASS="title">Klasy</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-class"><INPUT TYPE="SUBMIT" VALUE="Dodawanie klasy"></FORM>
-<FORM ACTION="/classes/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="ZarzÄ…dzanie klasami"></FORM>
-</P>
-
-<H2 CLASS="title">Zadania</H2>
-
-<P>
-<FORM ACTION="/jobs/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="ZarzÄ…dzanie zadaniami"></FORM>
-</P>
-
-</TD><TD>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD><TD VALIGN="TOP">
-
-<H2 CLASS="title">Serwery</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server"><INPUT TYPE="SUBMIT" VALUE="Modyfikowanie pliku konfiguracji"></FORM>
-<FORM ACTION="/admin/log/access_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Przeglądanie dziennika dostępu"></FORM>
-<FORM ACTION="/admin/log/error_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Przeglądanie dziennika błędów"></FORM>
-<FORM ACTION="/admin/log/page_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="PrzeglÄ…danie dziennika stron"></FORM>
-</P>
-
-{SETTINGS_ERROR?<P>{SETTINGS_MESSAGE}</P>
-<BLOCKQUOTE>{SETTINGS_ERROR}</BLOCKQUOTE>:
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-
-{ADVANCEDSETTINGS?<P><B>Ustawienia serwera\:</B></P>
-
-<P><A HREF="/admin/">Zaawansowane <SMALL>&#x25bc;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Wyświetlanie drukarek współdzielonych przez inne systemy<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protokoły\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Współdzielenie drukarek podłączonych do tego systemu<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Maksymalna liczba klientów\:
-<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Protokoły\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Zezwolenie na drukowanie z Internetu<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> Rozgłaszanie interfejsu WWW<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Zezwolenie na zdalnÄ… administracjÄ™<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Używanie uwierzytelniania Kerberosa (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Zezwolenie użytkownikom na anulowanie każdego zadania (nie tylko ich własnego)<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY" {?preserve_job_history}> Przechowywanie plików zadań<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Liczba zadań\:
-<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES" {?preserve_job_files}> Przechowywanie plików wydruków zadań<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Zapisywanie informacji debugowania do naprawiania problemów<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Maksymalny rozmiar pliku dziennika\:
-<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
-
-:<P><B>Ustawienia serwera:</B></P>
-
-<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Zaawansowane <SMALL>&#x25b6;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Wyświetlanie drukarek współdzielonych przez inne systemy<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Współdzielenie drukarek połączonych do tego systemu<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Zezwolenie na drukowanie z Internetu<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Zezwolenie na zdalnÄ… administracjÄ™<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Używanie uwierzytelniania Kerberosa (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Zezwolenie użytkownikom na anulowanie każdego zadania (nie tylko ich własnego)<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> Zapisywanie informacji debugowania do naprawiania problemów</P>
-
-}
-<P><INPUT TYPE="SUBMIT" NAME="CHANGESETTINGS" VALUE="Zmień ustawienia"></P>
-
-</FORM>}
-
-</TD></TR>
-</TABLE>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Subskrypcje RSS</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Dodawanie subskrypcji RSS"></FORM>
-</P>
-
-</DIV>
-
-{notify_subscription_id?<TABLE CLASS="list" SUMMARY="Subskrypcje RSS">
-<THEAD><TR><TH>Name</TH><TH>Zdarzenia</TH><TH>Nazwa kolejki</TH></TR></THEAD>
-<TBODY>{[notify_subscription_id]
-<TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Anuluj subskrypcjÄ™ RSS"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Wszystkie kolejki}</TD></TR>}
-</TBODY>
-</TABLE>:}
diff --git a/templates/pl/choose-device.tmpl b/templates/pl/choose-device.tmpl
deleted file mode 100644
index 44574562..00000000
--- a/templates/pl/choose-device.tmpl
+++ /dev/null
@@ -1,54 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modyfikowanie {printer_name}:Dodawanie drukarki}</H2>
-
-{CUPS_GET_DEVICES_DONE?:<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Busy Indicator"> Wyszukiwanie drukarek...</P>}
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-{op=add-printer?:<TR>
-<TH CLASS="label">Bieżące połączenie:</TH>
-<TD><INPUT TYPE="RADIO" NAME="DEVICE_URI" VALUE="{current_device_uri}" CHECKED>
-{current_device_uri}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Lokalne drukarki:</TH>
-<TD>
-{[device_uri]{device_class!network?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}}
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Wykryte drukarki sieciowe:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}:}}
-</TD>
-</TR>
-<TR>
-<TR>
-<TH CLASS="label">Inne drukarki sieciowe:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?:<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-}:}}
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Kontynuuj"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/pl/choose-make.tmpl b/templates/pl/choose-make.tmpl
deleted file mode 100644
index c0ec622a..00000000
--- a/templates/pl/choose-make.tmpl
+++ /dev/null
@@ -1,64 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modify {printer_name}:Dodawanie drukarki}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Nazwa:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Opis:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Położenie:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Połączenie:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Współdzielenie:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Do Not:{?printer_is_shared=0?Do Not:}} Współdzielenie tej drukarki</TD>
-</TR>
-<TR>
-<TH CLASS="label">Producent:</TH>
-<TD>
-<SELECT NAME="PPD_MAKE" SIZE="10">
-{[ppd_make]<OPTION VALUE="{ppd_make}" {?current_make={ppd_make}?SELECTED:}>{ppd_make}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Kontynuuj"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR>
-<TH CLASS="label">Lub podaj plik PPD:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Dodaj drukarkÄ™:Zmodyfikuj drukarkÄ™}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/pl/choose-model.tmpl b/templates/pl/choose-model.tmpl
deleted file mode 100644
index 9438cee5..00000000
--- a/templates/pl/choose-model.tmpl
+++ /dev/null
@@ -1,60 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modyfikowanie {printer_name}:Dodawanie drukarki}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Nazwa:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Opis:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Położenie:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Połączenie:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Współdzielenie:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Nie:{?printer_is_shared=0?Nie:}} współdziel tej drukarki</TD>
-</TR>
-<TR>
-<TH CLASS="label">Producent:</TH>
-<TD>{PPD_MAKE} <INPUT TYPE="SUBMIT" NAME="SELECT_MAKE" VALUE="Wybierz innego producenta"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Model:</TH>
-<TD>
-<SELECT NAME="PPD_NAME" SIZE="10">
-{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Bieżący sterownik - {current_make_and_model}</OPTION>:}
-{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
-}</SELECT>
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Lub podaj plik PPD:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Dodaj drukarkÄ™:Zmodyfikuj drukarkÄ™}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/pl/choose-serial.tmpl b/templates/pl/choose-serial.tmpl
deleted file mode 100644
index 8bbf8c8c..00000000
--- a/templates/pl/choose-serial.tmpl
+++ /dev/null
@@ -1,52 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modyfikowanie {printer_name}:Dodawanie drukarki}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Połączenie:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Prędkość w baudach:</TH>
-<TD><SELECT NAME="BAUDRATE">
-{[baudrates]<OPTION {?baudrate={baudrates}?SELECTED:}>{baudrates}}
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Równorzędność:</TH>
-<TD><SELECT NAME="PARITY">
-<OPTION VALUE="none" {?parity=none?SELECTED:}>None
-<OPTION VALUE="even" {?parity=even?SELECTED:}>Even
-<OPTION VALUE="odd" {?parity=odd?SELECTED:}>Odd
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Bity danych:</TH>
-<TD><SELECT NAME="BITS">
-<OPTION {?bits=8?SELECTED:}>8
-<OPTION {?bits=7?SELECTED:}>7
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Kontrola przepływu:</TH>
-<TD><SELECT NAME="FLOW">
-<OPTION VALUE="none" {?flow=none?SELECTED:}>Brak
-<OPTION VALUE="soft" {?flow=soft?SELECTED:}>XON/XOFF (programowa)
-<OPTION VALUE="hard" {?flow=hard?SELECTED:}>RTS/CTS (sprzętowa)
-<OPTION VALUE="dtrdsr" {?flow=dtrdsr?SELECTED:}>DTR/DSR (sprzętowa)
-</SELECT></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Kontynuuj"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/pl/choose-uri.tmpl b/templates/pl/choose-uri.tmpl
deleted file mode 100644
index 88201b92..00000000
--- a/templates/pl/choose-uri.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Modyfikowanie {printer_name}:Dodawanie drukarki}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{?current_make_and_model}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Połączenie:</TH>
-<TD><INPUT TYPE="URL" SIZE="60" MAXLENGTH="1024" NAME="DEVICE_URI" VALUE="{current_device_uri?{current_device_uri}:{device_uri}}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>Przykłady:
-<PRE>
- http://nazwakomputera:631/ipp/
- http://nazwakomputera:631/ipp/port1
-
- ipp://nazwakomputera/ipp/
- ipp://nazwakomputera/ipp/port1
-
- lpd://nazwakomputera/kolejka
-
- socket://nazwakomputera
- socket://nazwakomputera:9100
-</PRE>
-
-<P>Proszę zobaczyć <A HREF="/help/network.html" TARGET="_blank">"Drukarki
-sieciowe"</A>, aby uzyskać poprawne URI dla drukarki.</P>
-
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Kontynuuj"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/pl/class-added.tmpl b/templates/pl/class-added.tmpl
deleted file mode 100644
index 2bee7d8c..00000000
--- a/templates/pl/class-added.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Dodawanie klasy</H2>
-
-<P>Klasa <A HREF="/classes/{printer_name}">{printer_name}</A> została pomyślnie
-dodana.
-
-</DIV>
diff --git a/templates/pl/class-deleted.tmpl b/templates/pl/class-deleted.tmpl
deleted file mode 100644
index 1a78c903..00000000
--- a/templates/pl/class-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Usuwanie klasy {printer_name}</H2>
-
-<P>Klasa {printer_name} została pomyślnie usunięta.
-
-</DIV>
diff --git a/templates/pl/class-jobs-header.tmpl b/templates/pl/class-jobs-header.tmpl
deleted file mode 100644
index 83dcfbcd..00000000
--- a/templates/pl/class-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Zadania</H3>
-</DIV>
diff --git a/templates/pl/class-modified.tmpl b/templates/pl/class-modified.tmpl
deleted file mode 100644
index be91caae..00000000
--- a/templates/pl/class-modified.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modyfikowanie klasy {printer_name}</H2>
-
-<P>Klasa <A HREF="/classes/{printer_name}">{printer_name}</A> została
-pomyślnie zmodyfikowana.
-
-</DIV>
diff --git a/templates/pl/class.tmpl b/templates/pl/class.tmpl
deleted file mode 100644
index 5c015ac5..00000000
--- a/templates/pl/class.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<DIV CLASS="indent">
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Bezczynna:{printer_state=4?Przetwarzanie:Wstrzymane}},
-{printer_is_accepting_jobs=0?Odrzucanie zadań:Akceptowanie zadań},
-{server_is_sharing_printers=0?Nie:{printer_is_shared=0?Nie:}} Współdzielona{default_name={printer_name}?, Domyślne serwera:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Konserwacja</OPTION>
-<OPTION VALUE="print-test-page">Drukowanie strony próbnej</OPTION>
-{printer_state=5?<OPTION VALUE="start-class">Wznów klasę</OPTION>:<OPTION VALUE="stop-class">Wstrzymaj klasę</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Akceptuj zadania</OPTION>:<OPTION VALUE="reject-jobs">Odrzucaj zadania</OPTION>}
-<OPTION VALUE="move-jobs">PrzenieÅ› wszystkie zadania</OPTION>
-<OPTION VALUE="purge-jobs">Anuluj wszystkie zadania</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Przejdź" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="1">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administracja</OPTION>
-<OPTION VALUE="modify-class">Zmodyfikuj klasÄ™</OPTION>
-<OPTION VALUE="delete-class">Usuń klasę</OPTION>
-<OPTION VALUE="set-class-options">Ustaw domyślne opcje</OPTION>
-<OPTION VALUE="set-as-default">Ustaw jako domyślne serwera</OPTION>
-<OPTION VALUE="set-allowed-users">Ustaw zezwolonych użytkowników</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Przejdź" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Opis:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Położenie:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Członkowie:</TH><TD>{?member_uris=?None:{member_uris}}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Domyślne:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:unknown}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/pl/classes-header.tmpl b/templates/pl/classes-header.tmpl
deleted file mode 100644
index 8482fd19..00000000
--- a/templates/pl/classes-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Brak klas:Wyświetlanie {#printer_name} z {total} klas{total=1?:es}}.</P>
diff --git a/templates/pl/classes.tmpl b/templates/pl/classes.tmpl
deleted file mode 100644
index 1d8c766d..00000000
--- a/templates/pl/classes.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Lista klas">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Nazwa kolejki <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Nazwa kolejki <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Opis</TH><TH>Położenie</TH><TH>Members</TH><TH>Stan</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?Brak:{member_uris}}</TD><TD>{printer_state=3?Idle:{printer_state=4?Przetwarzanie:Wstrzymane}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/pl/command.tmpl b/templates/pl/command.tmpl
deleted file mode 100644
index 9a87439c..00000000
--- a/templates/pl/command.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{title} On {printer_name}</H2>
-
-<P>{job_state>5?:<IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16"
-ALIGN="ABSMIDDLE" ALT="Busy Indicator"> }Printer command job
-{job_state=3?pending:{job_state=4?held:
-{job_state=5?processing:{job_state=6?stopped:
-{job_state=7?canceled:{job_state=8?aborted:completed}}}}}}{job_state=9?:{job_printer_state_message?,
-<EM>"{job_printer_state_message}"</EM>:}}</P>
-
-</DIV>
diff --git a/templates/pl/edit-config.tmpl b/templates/pl/edit-config.tmpl
deleted file mode 100644
index 3688ee24..00000000
--- a/templates/pl/edit-config.tmpl
+++ /dev/null
@@ -1,24 +0,0 @@
-<SCRIPT TYPE="text/javascript">
-function reset_config()
-{
- document.cups.CUPSDCONF.value = "{?cupsdconf_default}";
-}
-</SCRIPT>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modyfikowanie pliku konfiguracji</H2>
-
-<FORM NAME="cups" METHOD="POST" ACTION="/admin/">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-
-<TEXTAREA NAME="CUPSDCONF" COLS="80" ROWS="25">{CUPSDCONF}</TEXTAREA>
-
-<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="Zapisz zmiany">
-<INPUT TYPE="BUTTON" VALUE="Użyj domyślnego pliku konfiguracji"
-onClick="reset_config();"></P>
-
-</FORM>
-
-</DIV>
diff --git a/templates/pl/error-op.tmpl b/templates/pl/error-op.tmpl
deleted file mode 100644
index b9e5f719..00000000
--- a/templates/pl/error-op.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?title} {?printer_name} Błąd</H2>
-
-<P>Błąd:</P>
-
-<BLOCKQUOTE>Nieznana operacja "{op}"!</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/pl/error.tmpl b/templates/pl/error.tmpl
deleted file mode 100644
index f9992930..00000000
--- a/templates/pl/error.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?title} {?printer_name} Błąd</H2>
-
-<P>{?message?{message}:Błąd:}</P>
-
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/pl/header.tmpl.in b/templates/pl/header.tmpl.in
deleted file mode 100644
index ca1774b8..00000000
--- a/templates/pl/header.tmpl.in
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{title} - CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
- {refresh_page?<META HTTP-EQUIV="Refresh" CONTENT="{refresh_page}">:}
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;Strona domowa&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=admin?:un}sel"><A HREF="/admin">&nbsp;&nbsp;Administracja&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=classes?:un}sel"><A HREF="/classes/">&nbsp;&nbsp;Klasy&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=help?:un}sel"><A HREF="/help/">&nbsp;&nbsp;Pomoc&nbsp;online&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=jobs?:un}sel"><A HREF="/jobs/">&nbsp;&nbsp;Zadania&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=printers?:un}sel"><A HREF="/printers/">&nbsp;&nbsp;Drukarki&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="Search Help"
-VALUE="{SECTION=help?{?QUERY}:}" AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-<TR><TD COLSPAN="9">&nbsp;</TD></TR>
-</TABLE>
diff --git a/templates/pl/help-header.tmpl b/templates/pl/help-header.tmpl
deleted file mode 100644
index 98b21676..00000000
--- a/templates/pl/help-header.tmpl
+++ /dev/null
@@ -1,51 +0,0 @@
-<DIV CLASS="indent">
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET">
-{TOPIC?<INPUT TYPE="HIDDEN" NAME="TOPIC" VALUE="{TOPIC}">:}
-
-<P ALIGN="CENTER"><B>Wyszukaj w
-{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:Wszystkie dokumenty}}:</B> <INPUT
-TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER=""
-AUTOSAVE="org.cups.help" RESULTS="20">
-<INPUT TYPE="SUBMIT" NAME="SEARCH" VALUE="Znajdź">
-<INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Wyczyść"></P>
-
-</FORM>
-
-<!-- Zakładki -->
-<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="Zawartość">
-<TR><TD>
-
-<H3 CLASS="title">Dokumenty pomocy online</H3>
-
-<P CLASS="l0"><A HREF="/help/{QUERY??QUERY={QUERY}:}">Wszystkie dokumenty</A></P>
-<HR>
-
-{[BMTEXT]<P CLASS="l{BMINDENT}"><A HREF="{BMLINK}">{BMTEXT}</A></P>
-}
-</TD></TR>
-</TABLE></DIV>
-
-{QUERY?<P>Wyniki wyszukiwania w {HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:Wszystkie dokumenty}}\:</P>
-{QTEXT?<UL>
-{[QTEXT]<LI><A HREF="{QLINK}">{QTEXT}</A>{QPTEXT? (in <I><A HREF="{QPLINK}">{QPTEXT}</A></I>):}</LI>}
-{QTEXT?</UL>:}
-:<P>Nie znaleziono.</P>}
-<HR NOSHADE>:}
-{HELPTITLE?<H1>{HELPTITLE}</H1>
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="PRINTABLE" VALUE="YES"><INPUT TYPE="SUBMIT" VALUE="Wyświetl wersję do druku"></FORM>:
-
-<H1>Pomoc online</H1>
-
-<P>To jest interfejs pomocy online CUPS. Należy podać wyszukiwane słowa
-powyżej lub kliknąć jeden z odnośników do dokumentacji, aby wyświetlić
-informacje o pomocy online.</P>
-
-<P>Nowi użytkownicy CUPS powinni przeczytać stronę "<a
-href="/help/overview.html">Przegląd CUPS</a>". Zaawansowani użytkownicy
-powinni przeczytać stronę "<a href="/help/whatsnew.html">Co nowego w CUPS
-1.4</a>".</P>
-
-<P><A HREF="http://www.cups.org/">Strona domowa CUPS</A> także
-dostarcza wiele zasobów, w tym fora dyskusyjne użytkowników, odpowiedzi
-na najczęściej zadawane pytania oraz formularz do wysyłania raportów
-błędów i próśb o nowe funkcje.</P>}
diff --git a/templates/pl/help-printable.tmpl b/templates/pl/help-printable.tmpl
deleted file mode 100644
index 2463c163..00000000
--- a/templates/pl/help-printable.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{HELPTITLE}</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups-printable.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
diff --git a/templates/pl/help-trailer.tmpl b/templates/pl/help-trailer.tmpl
deleted file mode 100644
index 4c1ebed8..00000000
--- a/templates/pl/help-trailer.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-</DIV>
diff --git a/templates/pl/job-cancel.tmpl b/templates/pl/job-cancel.tmpl
deleted file mode 100644
index bcfffcf0..00000000
--- a/templates/pl/job-cancel.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Anulowanie zadania {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Zadanie {job_id}</A> zostało anulowane.
-
-</DIV>
diff --git a/templates/pl/job-hold.tmpl b/templates/pl/job-hold.tmpl
deleted file mode 100644
index 8827d9e2..00000000
--- a/templates/pl/job-hold.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Wstrzymywanie zadania {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Drukowanie zadania {job_id}</A> zostało wstrzymane.
-
-</DIV>
diff --git a/templates/pl/job-move.tmpl b/templates/pl/job-move.tmpl
deleted file mode 100644
index bd77beeb..00000000
--- a/templates/pl/job-move.tmpl
+++ /dev/null
@@ -1,27 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/{SECTION}/{job_id?:{printer_name}}">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{job_id?<INPUT TYPE="HIDDEN" NAME="JOB_ID" VALUE="{job_id}">:}
-
-<H2 CLASS="title">{job_id?Przenoszenie zadanie {job_id}:Przenoszenie wszystkich zadań}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Nowe miejsce docelowe:</TH>
-<TD>
-<SELECT NAME="JOB_PRINTER_URI" SIZE="10">
-{[job_printer_uri]<OPTION VALUE="{job_printer_uri}">{job_printer_name}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{job_id?PrzenieÅ› zadanie:PrzenieÅ› zadania}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-
-</DIV>
diff --git a/templates/pl/job-moved.tmpl b/templates/pl/job-moved.tmpl
deleted file mode 100644
index bd3db768..00000000
--- a/templates/pl/job-moved.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id?Przenoszenie zadania {job_id}:Przenoszenie wszystkich zadań}</H2>
-
-<P>{job_id?<A HREF="/jobs/{job_id}">Zadanie {job_id}</A>:Wszystkie zadania} zostało przeniesione do
-<A HREF="{job_printer_uri}">{job_printer_name}</A>.</P>
-
-</DIV>
diff --git a/templates/pl/job-release.tmpl b/templates/pl/job-release.tmpl
deleted file mode 100644
index 09bffda0..00000000
--- a/templates/pl/job-release.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Zwalnianie zadania {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Drukowanie zadania {job_id}</A> zostało zwolnione.
-
-</DIV>
diff --git a/templates/pl/job-restart.tmpl b/templates/pl/job-restart.tmpl
deleted file mode 100644
index 6edf8b24..00000000
--- a/templates/pl/job-restart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ponowne drukowanie zadania {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Zadanie {job_id}</A> zostało ponownie uruchomione.
-
-</DIV>
diff --git a/templates/pl/jobs-header.tmpl b/templates/pl/jobs-header.tmpl
deleted file mode 100644
index ea8718d1..00000000
--- a/templates/pl/jobs-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">{?which_jobs=?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Wyświetl aktywne zadania"></FORM>}
-{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="Wyświetl zakończone zadania"></FORM>}
-{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="Wyświetl wszystkie zadania"></FORM>}</DIV>
-
-<P ALIGN="CENTER">{total=0?Brak zadań:Wyświetlanie {#job_id} z {total} {?which_jobs=?aktywnych:{which_jobs=all?:zakończonych}} zadań{total=1?:s}}.</P>
diff --git a/templates/pl/jobs.tmpl b/templates/pl/jobs.tmpl
deleted file mode 100644
index 665bdffb..00000000
--- a/templates/pl/jobs.tmpl
+++ /dev/null
@@ -1,37 +0,0 @@
-{#job_id=0?:
-<TABLE CLASS="list" SUMMARY="Lista zadań">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Identyfikator <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Identyfikator <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Nazwa</TH><TH>Użytkownik</TH><TH>Rozmiar</TH><TH>Strony</TH><TH>Stan</TH><TH>Kontrola</TH></TR>
-</THEAD>
-<TBODY>
-{[job_id]
-<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
-<TD>{?job_name=?Unknown:{job_name}}&nbsp;</TD>
-<TD>{job_originating_user_name}&nbsp;</TD>
-<TD>{job_k_octets}k&nbsp;</TD>
-<TD>{job_media_sheets_completed=0?Unknown:{?job_media_sheets_completed}}&nbsp;</TD>
-<TD>{job_state=3?oczekiwanie od<BR>{time_at_creation}:{job_state=4?wstrzymane od<BR>{time_at_creation}:
-{job_state=5?przetwarzanie od<BR>{time_at_processing}:{job_state=6?zatrzymano:
-{job_state=7?anulowano o<BR>{time_at_completed}:{job_state=8?przerwano:zakończono o<BR>{time_at_completed}}}}}}}&nbsp;{job_printer_state_message?<BR>
-<EM>"{job_printer_state_message}"</EM>:}</TD>
-<TD>
-{job_preserved>0?{job_state>5?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Ponownie wydrukuj zadanie"></FORM>:}:}
-{job_state=4?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="release-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Zwolnij zadanie"></FORM>:}
-{job_state=3?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="hold-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Wstrzymaj zadanie"></FORM>:}
-{job_state<7?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Anuluj zadanie"></FORM>
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="move-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="SUBMIT" VALUE="PrzenieÅ› zadanie"></FORM>:}
-&nbsp;</TD>
-</TR>
-}
-</TBODY>
-</TABLE>
-}
diff --git a/templates/pl/list-available-printers.tmpl b/templates/pl/list-available-printers.tmpl
deleted file mode 100644
index aad6a49f..00000000
--- a/templates/pl/list-available-printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Dostępne drukarki</H2>
-
-{#device_uri=0?<P>Nie znaleziono drukarek.</P>
-:<UL>{[device_uri]
-<LI><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="HIDDEN" NAME="TEMPLATE_NAME" VALUE="{template_name}"><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="Lokalna drukarka"><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{device_make_and_model}"><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}"><INPUT TYPE="SUBMIT" VALUE="Dodaj tÄ™ drukarkÄ™"></FORM>
-{device_make_and_model} ({device_info})</LI>
-}</UL>}
-
-</DIV>
diff --git a/templates/pl/modify-class.tmpl b/templates/pl/modify-class.tmpl
deleted file mode 100644
index b8a21307..00000000
--- a/templates/pl/modify-class.tmpl
+++ /dev/null
@@ -1,34 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modyfikowanie klasy {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Opis:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Położenie:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Członkowie:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Zmodyfikuj klasÄ™"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/pl/modify-printer.tmpl b/templates/pl/modify-printer.tmpl
deleted file mode 100644
index a63f4781..00000000
--- a/templates/pl/modify-printer.tmpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modyfikowanie {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Opis:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Opis czytelny dla człowieka, taki jak "HP LaserJet z dupleksem")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Położenie:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(Położenie czytelne dla człowieka, takie jak "Laboratorium 1")</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Połączenie:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Współdzielenie:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Share This Printer</TD>
-</TR>
-<TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Kontynuuj"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/pl/norestart.tmpl b/templates/pl/norestart.tmpl
deleted file mode 100644
index d29b0f4c..00000000
--- a/templates/pl/norestart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Zmienianie ustawień</H2>
-
-<P>Serwer nie został ponownie uruchomiony, ponieważ nie wprowadzono żadnych zmian do
-konfiguracji...</P>
-
-</DIV>
diff --git a/templates/pl/option-boolean.tmpl b/templates/pl/option-boolean.tmpl
deleted file mode 100644
index e832ee10..00000000
--- a/templates/pl/option-boolean.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD>
-{[choices]<INPUT TYPE="RADIO" NAME="{keyword-1}" {choices={defchoice-1}?CHECKED:} VALUE="{choices}">{text}}
-</TD>
-</TR>
diff --git a/templates/pl/option-conflict.tmpl b/templates/pl/option-conflict.tmpl
deleted file mode 100644
index 708ba4c2..00000000
--- a/templates/pl/option-conflict.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<P><B>Błąd:</B> następujące opcje są w konflikcie ze sobą:</P>
-
-<UL>
-{[ckeyword]<LI><A HREF="#{ckeyword}">{ckeytext}</A>: {cchoice}</LI>
-}</UL>
-
-<P>Proszę zmienić jedną lub więcej opcji, aby rozwiązać konflikt.</P>
diff --git a/templates/pl/option-header.tmpl b/templates/pl/option-header.tmpl
deleted file mode 100644
index 464726a5..00000000
--- a/templates/pl/option-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="tab" ID="{group_id}">
-
-<H3 ALIGN="CENTER">{group}</H3>
-
-<TABLE WIDTH="100%">
diff --git a/templates/pl/option-pickmany.tmpl b/templates/pl/option-pickmany.tmpl
deleted file mode 100644
index 0da75e5d..00000000
--- a/templates/pl/option-pickmany.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" MULTIPLE SIZE="10">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT></TD>
-</TR>
diff --git a/templates/pl/option-pickone.tmpl b/templates/pl/option-pickone.tmpl
deleted file mode 100644
index 598fe100..00000000
--- a/templates/pl/option-pickone.tmpl
+++ /dev/null
@@ -1,18 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" ID="select-{keyword}" ONCHANGE="update_paramtable('{keyword}')">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT>
-{iscustom=1?<TABLE NAME="paramtable" id="{keyword}-params">{[params]
-<TR><TH CLASS="sublabel">{paramtext}:</TH>
-<TD>{params=Units?<SELECT NAME="{keyword-1}.{params}">
-<OPTION VALUE="pt"{paramvalue=pt? SELECTED:}>Punkty</OPTION>
-<OPTION VALUE="mm"{paramvalue=mm? SELECTED:}>Milimetry</OPTION>
-<OPTION VALUE="cm"{paramvalue=cm? SELECTED:}>Centymetry</OPTION>
-<OPTION VALUE="in"{paramvalue=in? SELECTED:}>Cale</OPTION>
-<OPTION VALUE="ft"{paramvalue=ft? SELECTED:}>Stopy</OPTION>
-<OPTION VALUE="m"{paramvalue=m? SELECTED:}>Metry</OPTION>
-</SELECT>:<INPUT TYPE="{inputtype}" NAME="{keyword-1}.{params}" VALUE="{paramvalue}">}</TD></TR>
-}</TABLE>
-</TD>:}
-</TR>
diff --git a/templates/pl/option-trailer.tmpl b/templates/pl/option-trailer.tmpl
deleted file mode 100644
index 21eec567..00000000
--- a/templates/pl/option-trailer.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-</TABLE>
-
-<P ALIGN="CENTER"><INPUT TYPE="SUBMIT" VALUE="Ustaw domyślne opcje"></P>
-
-</DIV>
diff --git a/templates/pl/pager.tmpl b/templates/pl/pager.tmpl
deleted file mode 100644
index ce3515e5..00000000
--- a/templates/pl/pager.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TABLE CLASS="inset" SUMMARY="Pasek stron">
-<TR>
- <TD WIDTH="50%">{PREV?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{PREV}"><INPUT TYPE="SUBMIT" VALUE="&#x25c0; Wyświetl poprzednie"></FORM>:&nbsp;}</TD>
- <TD WIDTH="50%" ALIGN="RIGHT">{NEXT?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{NEXT}"><INPUT TYPE="SUBMIT" VALUE="Wyświetl następne &#x25b6;"></FORM>:&nbsp;}</TD>
-</TR>
-</TABLE>
diff --git a/templates/pl/printer-accept.tmpl b/templates/pl/printer-accept.tmpl
deleted file mode 100644
index 6589b60f..00000000
--- a/templates/pl/printer-accept.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Akceptowanie zadań na {is_class?klasie:drukarce} {printer_name}</H2>
-
-<P>{is_class?Klasa:Drukarka} <A
-HREF="/{is_class?klasy:drukarki}/{printer_name}">{printer_name}</A>
-akceptujÄ… zadania.</P>
-
-</DIV>
diff --git a/templates/pl/printer-added.tmpl b/templates/pl/printer-added.tmpl
deleted file mode 100644
index e217ee4f..00000000
--- a/templates/pl/printer-added.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Dodawanie drukarki</H2>
-
-<P>Drukarka <A HREF="/printers/{printer_name}">{printer_name}</A> została
-pomyślnie dodana.
-
-</DIV>
diff --git a/templates/pl/printer-configured.tmpl b/templates/pl/printer-configured.tmpl
deleted file mode 100644
index 994ed346..00000000
--- a/templates/pl/printer-configured.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ustawianie domyślnych opcji dla {printer_name}</H2>
-
-<P>Domyślne opcje {OP=set-class-options?klasy <A HREF="/classes/{printer_name}">:drukarki <A HREF="/printers/{printer_name}">}{printer_name}</A>
-zostały pomyślnie ustawione.
-
-</DIV>
diff --git a/templates/pl/printer-confirm.tmpl b/templates/pl/printer-confirm.tmpl
deleted file mode 100644
index 73f86012..00000000
--- a/templates/pl/printer-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Usuwanie drukarki {printer_name}</H2>
-
-<P><B>Ostrzeżenie:</B> usunąć drukarkę
-{printer_name}?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="delete-printer"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Usuń drukarkę"></FORM></P>
-
-</DIV>
diff --git a/templates/pl/printer-default.tmpl b/templates/pl/printer-default.tmpl
deleted file mode 100644
index 541de9d9..00000000
--- a/templates/pl/printer-default.tmpl
+++ /dev/null
@@ -1,13 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Ustawianie {is_class?klasy:drukarki} {printer_name} jako domyślnej</H2>
-
-<P>{is_class?Klasa:Drukarka} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-została ustawiona jako domyślna drukarka serwera.</P>
-
-<BLOCKQUOTE><B>Uwaga:</B> każda domyśla opcja użytkownika ustawiona przez
-polecenie <TT>lpoptions</TT> zostanie zastąpiona tym domyślnym
-ustawieniem.</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/pl/printer-deleted.tmpl b/templates/pl/printer-deleted.tmpl
deleted file mode 100644
index 26e170b1..00000000
--- a/templates/pl/printer-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Usuwanie drukarki {printer_name}</H2>
-
-<P>Drukarka {printer_name} została pomyślnie usunięta.
-
-</DIV>
diff --git a/templates/pl/printer-jobs-header.tmpl b/templates/pl/printer-jobs-header.tmpl
deleted file mode 100644
index 83dcfbcd..00000000
--- a/templates/pl/printer-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">Zadania</H3>
-</DIV>
diff --git a/templates/pl/printer-modified.tmpl b/templates/pl/printer-modified.tmpl
deleted file mode 100644
index 9bf074db..00000000
--- a/templates/pl/printer-modified.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Modyfikowanie drukarki {printer_name}</H2>
-
-<P>Drukarka <A HREF="/printers/{printer_name}">{printer_name}</A> została
-pomyślnie zmodyfikowana.
-
-</DIV>
diff --git a/templates/pl/printer-purge.tmpl b/templates/pl/printer-purge.tmpl
deleted file mode 100644
index 06521751..00000000
--- a/templates/pl/printer-purge.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Czyszczenie zadań na {is_class?klasie:drukarce} {printer_name}</H2>
-
-<P>{is_class?Klasa:Drukarka} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-została wyczyszczona ze wszystkich zadań.</P>
-
-</DIV>
diff --git a/templates/pl/printer-reject.tmpl b/templates/pl/printer-reject.tmpl
deleted file mode 100644
index 038f8bab..00000000
--- a/templates/pl/printer-reject.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Odrzucanie zadań na {is_class?klasie:drukarce} {printer_name}</H2>
-
-<P>{is_class?Klasa:Drukarka} <A
-HREF="/{is_class?Klasy:Drukarki}/{printer_name}">{printer_name}</A>
-nie akceptuje zadań.</P>
-
-</DIV>
diff --git a/templates/pl/printer-start.tmpl b/templates/pl/printer-start.tmpl
deleted file mode 100644
index e291f49d..00000000
--- a/templates/pl/printer-start.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Wznawianie {is_class?klasy:drukarki} {printer_name}</H2>
-
-<P>{is_class?Klasa:Drukarka} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-została wznowiona.</P>
-
-</DIV>
diff --git a/templates/pl/printer-stop.tmpl b/templates/pl/printer-stop.tmpl
deleted file mode 100644
index 06f94f69..00000000
--- a/templates/pl/printer-stop.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Wstrzymywanie {is_class?klasy:drukarki} {printer_name}</H2>
-
-<P>{is_class?Klasa:Drukarka} <A
-HREF="/{is_class?Klasy:Drukarki}/{printer_name}">{printer_name}</A>
-została wstrzymana.</P>
-
-</DIV>
diff --git a/templates/pl/printer.tmpl b/templates/pl/printer.tmpl
deleted file mode 100644
index c62b857a..00000000
--- a/templates/pl/printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?Bezczynna:{printer_state=4?Przetwarzanie:Wstrzymana}},
-{printer_is_accepting_jobs=0?Odrzucanie zadań:Akceptowanie zadań},
-{server_is_sharing_printers=0?Nie:{printer_is_shared=0?Nie:}} Współdzielona{default_name={printer_name}?, Domyślne serwera:})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">Konserwacja</OPTION>
-<OPTION VALUE="print-test-page">Wydrukuj stronę próbną</OPTION>
-{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">Wyczyść głowice drukujące</OPTION>:}
-{printer_commands~.*PrintSelfTestPage.*?<OPTION VALUE="print-self-test-page">Wydrukuj własną stronę próbną</OPTION>:}
-{printer_state=5?<OPTION VALUE="start-printer">Wznów drukarkę</OPTION>:<OPTION VALUE="stop-printer">Wstrzymaj drukarkę</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Akceptuj zadania</OPTION>:<OPTION VALUE="reject-jobs">Odrzucaj zadania</OPTION>}
-<OPTION VALUE="move-jobs">PrzenieÅ› wszystkie zadania</OPTION>
-<OPTION VALUE="purge-jobs">Anuluj wszystkie zadania</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Przejdź" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">Administracja</OPTION>
-<OPTION VALUE="modify-printer">Zmodyfikuj drukarkÄ™</OPTION>
-<OPTION VALUE="delete-printer">Usuń drukarkę</OPTION>
-<OPTION VALUE="set-printer-options">Ustaw domyślne opcje</OPTION>
-<OPTION VALUE="set-as-default">Ustaw jako domyślne serwera</OPTION>
-<OPTION VALUE="set-allowed-users">Ustaw zezwolonych użytkowników</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Przejdź" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Opis:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Położenie:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Sterownik:</TH><TD>{printer_make_and_model} ({color_supported=1?color:grayscale}{sides_supported?, 2-sided printing:})<BR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Połączenie:</TH><TD>{device_uri}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Domyślne:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:unknown}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/pl/printers-header.tmpl b/templates/pl/printers-header.tmpl
deleted file mode 100644
index 6a06c7f5..00000000
--- a/templates/pl/printers-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Brak drukarek:Wyświetlanie {#printer_name} z {total} drukarek{total=1?:s}}.</P>
diff --git a/templates/pl/printers.tmpl b/templates/pl/printers.tmpl
deleted file mode 100644
index 810ecb4a..00000000
--- a/templates/pl/printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="Lista drukarek">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Nazwa kolejki <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Nazwa kolejki <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Opis</TH><TH>Położenie</TH><TH>Producent i model</TH><TH>Stan</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>{printer_state=3?Bezczynna:{printer_state=4?Przetwarzanie:Wstrzymana}}{printer_state_message? - "{printer_state_message}":}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/pl/restart.tmpl b/templates/pl/restart.tmpl
deleted file mode 100644
index 6965e6b5..00000000
--- a/templates/pl/restart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Zmienianie ustawień</H2>
-
-<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Wskaźnik zajętości"> Proszę czekać, trwa ponowne uruchamianie serwera...</P>
-
-</DIV>
diff --git a/templates/pl/samba-export.tmpl b/templates/pl/samba-export.tmpl
deleted file mode 100644
index 691a30bb..00000000
--- a/templates/pl/samba-export.tmpl
+++ /dev/null
@@ -1,55 +0,0 @@
-<SCRIPT TYPE="text/javascript"><!--
-function select_printers() {
- var list = document.export_samba.EXPORT_NAME;
- var sel = document.export_samba.EXPORT_ALL.checked;
-
- for (i = 0; i < list.length; i ++) {
- list.options[i].selected = sel;
- }
-}
---></SCRIPT>
-
-<FORM METHOD="POST" ACTION="/admin/" NAME="export_samba">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba">
-
-<H2 CLASS="title">Eksportowanie drukarek do Samby</H2>
-
-{error?<P>Nie można wyeksportować drukarek do Samby\:</P>
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-<P>Proszę zobaczyć plik <A HREF="/admin/log/error_log"
-TARGET="_blank">error_log</A>, aby uzyskać więcej informacji.</P>:
-<P>Ta strona umożliwia wyeksportowanie drukarek do Samby, aby
-klienci Windows mogli mieć do nich dostęp przez ikonę <VAR>Otoczenie
-sieciowe</VAR> lub <VAR>Miejsca sieciowe</VAR> na pulpitach.
-Należy wcześniej zainstalować sterowniki drukarki Windows PostScript,
-tak jak opisano na stronie podręcznika <A
-HREF="/help/man-cupsaddsmb.html"
-TARGET="_blank">cupsaddsmb(8)</A>.</P>}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Drukarki:</TH>
-<TD>
-<SELECT NAME="EXPORT_NAME" SIZE="10" MULTIPLE>
-{[printer_name]<OPTION VALUE="{printer_name}"{export_all? SELECTED:{printer_export? SELECTED:}}>{printer_name}}
-</SELECT><BR>
-<INPUT TYPE="CHECKBOX" NAME="EXPORT_ALL"{export_all? CHECKED:}
-onChange="select_printers()"> Wyeksportuj wszystkie drukarki
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Nazwa użytkownika Samby:</TH>
-<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (wymagana)</TD>
-</TR>
-<TR>
-<TH CLASS="label">Hasło Samby:</TH>
-<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (wymagane)</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Wyeksportuj drukarki do Samby"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/pl/samba-exported.tmpl b/templates/pl/samba-exported.tmpl
deleted file mode 100644
index 55ba0286..00000000
--- a/templates/pl/samba-exported.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P>Pomyślnie wyeksportowano drukarki do Samby.</P>
diff --git a/templates/pl/search.tmpl b/templates/pl/search.tmpl
deleted file mode 100644
index 0851d851..00000000
--- a/templates/pl/search.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<FORM ACTION="/{SECTION}/{?SEARCH_DEST}" METHOD="GET">
-{WHICH_JOBS?<INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{WHICH_JOBS}">:}
-{ORDER?<INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{ORDER}">:}
-
-<P ALIGN="CENTER"><B>Znajdź w
-{SEARCH_DEST?{SEARCH_DEST}:{SECTION=classes?klasach:{SECTION=jobs?zadaniach:drukarkach}}}:</B>
-<INPUT TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER="" AUTOSAVE="org.cups.{SECTION}" RESULTS="20"> <INPUT
-TYPE="SUBMIT" VALUE="Znajdź"> <INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="Wyczyść"></P>
-
-</FORM>
diff --git a/templates/pl/set-printer-options-trailer.tmpl b/templates/pl/set-printer-options-trailer.tmpl
deleted file mode 100644
index c1183e18..00000000
--- a/templates/pl/set-printer-options-trailer.tmpl
+++ /dev/null
@@ -1,16 +0,0 @@
-</DIV>
-
-<SCRIPT TYPE="text/javascript"><!--
-// Ukryj własne parametry opcji dla przeglądarek rozumiejących JavaScript
-var paramtables = document.getElementsByName("paramtable");
-for (var i = 0; i < paramtables.length; i++)
-{
- var opt = paramtables[i].id.substr(0, paramtables[i].id.lastIndexOf("-"));
- var cb = document.getElementById("select-" + opt);
- if (cb.value != "Custom")
- paramtables[i].style.display = "none";
-}
---></SCRIPT>
-</FORM>
-
-</DIV>
diff --git a/templates/pl/subscription-added.tmpl b/templates/pl/subscription-added.tmpl
deleted file mode 100644
index af87082b..00000000
--- a/templates/pl/subscription-added.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>Subskrypcja {subscription_name} została pomyślnie dodana.</P>
-
-</DIV>
diff --git a/templates/pl/subscription-canceled.tmpl b/templates/pl/subscription-canceled.tmpl
deleted file mode 100644
index 58ce44c7..00000000
--- a/templates/pl/subscription-canceled.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>Subskrypcja #{notify_subscription_id} została usunięta.</P>
-
-</DIV>
diff --git a/templates/pl/test-page.tmpl b/templates/pl/test-page.tmpl
deleted file mode 100644
index 346a6d2f..00000000
--- a/templates/pl/test-page.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Drukowanie strony próbnej na {printer_name}</H2>
-
-<P>Wysłano stronę próbną; identyfikator zadania to <A HREF="/{SECTION}/{printer_name}">
-{printer_name}-{job_id}</A>.</P>
-
-</DIV>
diff --git a/templates/pl/trailer.tmpl b/templates/pl/trailer.tmpl
deleted file mode 100644
index 63c69a77..00000000
--- a/templates/pl/trailer.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS i logo CUPS
-sÄ… znakami handlowymi <A HREF="http://www.apple.com">Apple Inc.</A> CUPS
-copyright 2007-2012 Apple Inc. Wszystkie prawa zastrzeżone.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/templates/pl/users.tmpl b/templates/pl/users.tmpl
deleted file mode 100644
index 5cb75495..00000000
--- a/templates/pl/users.tmpl
+++ /dev/null
@@ -1,30 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{OP}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-{IS_CLASS?<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="{IS_CLASS}">:}
-
-<H2 CLASS="title">Zezwoleni użytkownicy dla {printer_name}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Użytkownicy:</TH>
-<TD>
-<INPUT TYPE='TEXT' NAME='users' SIZE='60' VALUE='{?requesting_user_name_allowed}{?requesting_user_name_denied}'>
-<BR>
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-allowed' {requesting_user_name_allowed?checked:}>Pozwól tym użytkownikom drukować
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-denied' {requesting_user_name_denied?checked:}>Nie pozwalaj tym użytkownikom drukować
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>
-<INPUT TYPE="SUBMIT" VALUE="Ustaw zezwolonych użytkowników">
-</TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/ru/Makefile b/templates/ru/Makefile
deleted file mode 100644
index 4a80de1e..00000000
--- a/templates/ru/Makefile
+++ /dev/null
@@ -1,201 +0,0 @@
-#
-# "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $"
-#
-# Template makefile for CUPS.
-#
-# Copyright 2007-2011 by Apple Inc.
-# Copyright 1993-2007 by Easy Software Products.
-#
-# These coded instructions, statements, and computer programs are the
-# property of Apple Inc. and are protected by Federal copyright
-# law. Distribution and use rights are outlined in the file "LICENSE.txt"
-# which should have been included with this file. If this file is
-# file is missing or damaged, see the license at "http://www.cups.org/".
-#
-
-include ../Makedefs
-
-#
-# Template files...
-#
-
-FILES = \
- add-class.tmpl \
- add-printer.tmpl \
- add-rss-subscription.tmpl \
- admin.tmpl \
- choose-device.tmpl \
- choose-make.tmpl \
- choose-model.tmpl \
- choose-serial.tmpl \
- choose-uri.tmpl \
- class.tmpl \
- class-added.tmpl \
- class-confirm.tmpl \
- class-deleted.tmpl \
- class-jobs-header.tmpl \
- class-modified.tmpl \
- classes.tmpl \
- classes-header.tmpl \
- command.tmpl \
- edit-config.tmpl \
- error.tmpl \
- error-op.tmpl \
- header.tmpl \
- help-header.tmpl \
- help-trailer.tmpl \
- help-printable.tmpl \
- job-cancel.tmpl \
- job-hold.tmpl \
- job-move.tmpl \
- job-moved.tmpl \
- job-release.tmpl \
- job-restart.tmpl \
- jobs.tmpl \
- jobs-header.tmpl \
- list-available-printers.tmpl \
- modify-class.tmpl \
- modify-printer.tmpl \
- norestart.tmpl \
- option-boolean.tmpl \
- option-conflict.tmpl \
- option-header.tmpl \
- option-pickmany.tmpl \
- option-pickone.tmpl \
- option-trailer.tmpl \
- pager.tmpl \
- printer.tmpl \
- printer-accept.tmpl \
- printer-added.tmpl \
- printer-configured.tmpl \
- printer-confirm.tmpl \
- printer-default.tmpl \
- printer-deleted.tmpl \
- printer-jobs-header.tmpl \
- printer-modified.tmpl \
- printer-purge.tmpl \
- printer-reject.tmpl \
- printer-start.tmpl \
- printer-stop.tmpl \
- printers.tmpl \
- printers-header.tmpl \
- restart.tmpl \
- samba-export.tmpl \
- samba-exported.tmpl \
- search.tmpl \
- set-printer-options-header.tmpl \
- set-printer-options-trailer.tmpl \
- subscription-added.tmpl \
- subscription-canceled.tmpl \
- test-page.tmpl \
- trailer.tmpl \
- users.tmpl
-
-
-#
-# Make everything...
-#
-
-all:
-
-
-#
-# Make library targets...
-#
-
-libs:
-
-
-#
-# Make unit tests...
-#
-
-unittests:
-
-
-#
-# Clean all config and object files...
-#
-
-clean:
-
-
-#
-# Dummy depend...
-#
-
-depend:
-
-
-#
-# Install all targets...
-#
-
-install: all install-data install-headers install-libs install-exec
-
-
-#
-# Install data files...
-#
-
-install-data: $(INSTALL_LANGUAGES)
- $(INSTALL_DIR) -m 755 $(DATADIR)/templates
- for file in $(FILES); do \
- $(INSTALL_DATA) $$file $(DATADIR)/templates; \
- done
-
-install-languages:
- for lang in $(LANGUAGES); do \
- if test -d $$lang; then \
- $(INSTALL_DIR) -m 755 $(DATADIR)/templates/$$lang; \
- for file in $(FILES); do \
- $(INSTALL_DATA) $$lang/$$file $(DATADIR)/templates/$$lang 2>/dev/null || true; \
- done \
- fi \
- done
-
-
-
-#
-# Install programs...
-#
-
-install-exec:
-
-
-#
-# Install headers...
-#
-
-install-headers:
-
-
-#
-# Install libraries...
-#
-
-install-libs:
-
-
-#
-# Uninstall files...
-#
-
-uninstall: $(UNINSTALL_LANGUAGES)
- for file in $(FILES); do \
- $(RM) $(DATADIR)/templates/$$file; \
- done
- -$(RMDIR) $(DATADIR)/templates
-
-uninstall-languages:
- for lang in $(LANGUAGES); do \
- for file in $(FILES); do \
- $(RM) $(DATADIR)/templates/$$lang/$$file; \
- done \
- $(RMDIR) $(DATADIR)/templates/$$lang; \
- done
-
-
-#
-# End of "$Id: Makefile 9771 2011-05-12 05:21:56Z mike $".
-#
diff --git a/templates/ru/add-class.tmpl b/templates/ru/add-class.tmpl
deleted file mode 100644
index 41a7f986..00000000
--- a/templates/ru/add-class.tmpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">ÐÐ¾Ð²Ð°Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ð°</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Ðазвание:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(может Ñодержать любые Ñимволы кроме «/», «#» и пробела)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">ОпиÑание:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(раÑширенное опиÑание группы, например, «ДуплекÑный принтер»)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">РаÑположение:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(меÑтоположение группы, например, «Кабинет 55»)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">СоÑтав группы:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Добавить группу"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/ru/add-printer.tmpl b/templates/ru/add-printer.tmpl
deleted file mode 100644
index 2d040189..00000000
--- a/templates/ru/add-printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Добавление принтера</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-{?current_make!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE" VALUE="{current_make}">:}
-{?current_make_and_model!?<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{current_make_and_model}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Ðазвание:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?template_name}"><BR>
-<SMALL>(может Ñодержать любые Ñимволы кроме «/», «#» и пробела)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">ОпиÑание:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(раÑширенное опиÑание принтера, например, «HP LaserJet Ñ Ð´ÑƒÐ¿Ð»ÐµÐºÑной печатью»)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">РаÑположение:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(меÑтоположение принтера, например, «Кабинет 55»)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Подключение:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">СовмеÑтный доÑтуп:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Разрешить ÑовмеÑтный доÑтуп к Ñтому принтеру</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Продолжить"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/ru/add-rss-subscription.tmpl b/templates/ru/add-rss-subscription.tmpl
deleted file mode 100644
index 6ff4ff2c..00000000
--- a/templates/ru/add-rss-subscription.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription">
-
-<H2 CLASS="title">Добавление подпиÑки по RSS</H2>
-
-<TABLE SUMMARY="Добавление подпиÑки по RSS">
-<TR>
-<TH CLASS="label">Ðазвание:</TH>
-<TD COLSPAN="5"><INPUT TYPE="TEXT" NAME="SUBSCRIPTION_NAME" SIZE="40" MAXLENGTH="127" VALUE="{?SUBSCRIPTION_NAME}"><BR>
-<SMALL>(может Ñодержать любые Ñимволы кроме «/», «#» и пробела)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Очередь:</TH>
-<TD COLSPAN="5"><SELECT NAME="PRINTER_URI" SIZE="10"><OPTION VALUE="#ALL#"{?PRINTER_URI=#ALL#? SELECTED:}>Ð’Ñе очереди</OPTION>{[printer_name]<OPTION VALUE="{printer_uri_supported}"{?PRINTER_URI={printer_uri_supported}? SELECTED:}>{printer_name}</OPTION>}</SELECT></TD>
-</TR>
-<TR VALIGN="TOP">
-<TH CLASS="label">СобытиÑ:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CREATED" {?EVENT_JOB_CREATED}>Ðовое задание<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_COMPLETED" {?EVENT_JOB_COMPLETED}>Задание напечатано<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_STOPPED" {?EVENT_JOB_STOPPED}>Задание оÑтановлено<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_JOB_CONFIG_CHANGED" {?EVENT_JOB_CONFIG_CHANGED}>Изменены параметров заданиÑ</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_STOPPED" {?EVENT_PRINTER_STOPPED}>Очередь оÑтановлена<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_ADDED" {?EVENT_PRINTER_ADDED}>Очередь добавлена<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_MODIFIED" {?EVENT_PRINTER_MODIFIED}>Очередь изменена<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_PRINTER_DELETED" {?EVENT_PRINTER_DELETED}>Очередь удалена</TD>
-<TD>&nbsp;&nbsp;&nbsp;&nbsp;</TD>
-<TD><INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STARTED" {?EVENT_SERVER_STARTED}>Сервер запущен<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_STOPPED" {?EVENT_SERVER_STOPPED}>Сервер оÑтановлен<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_RESTARTED" {?EVENT_SERVER_RESTARTED}>Сервер перезапущен<BR>
-<INPUT TYPE="CHECKBOX" NAME="EVENT_SERVER_AUDIT" {?EVENT_SERVER_AUDIT}>Проверка безопаÑноÑти Ñервера</TD>
-</TR>
-<TR>
-<TH CLASS="label">КоличеÑтво Ñобытий в ленте:</TH>
-<TD COLSPAN="5"><INPUT TYPE="NUMBER" NAME="MAX_EVENTS" SIZE="4" MAXLENGTH="4" VALUE="{MAX_EVENTS?{MAX_EVENTS}:20}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD COLSPAN="5"><INPUT TYPE="SUBMIT" VALUE="Добавить подпиÑку по RSS"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/ru/admin.tmpl b/templates/ru/admin.tmpl
deleted file mode 100644
index 22d9de06..00000000
--- a/templates/ru/admin.tmpl
+++ /dev/null
@@ -1,110 +0,0 @@
-<TABLE CLASS="indent" SUMMARY="ÐдминиÑтрирование">
-<TR><TD VALIGN="TOP">
-
-<H2 CLASS="title">Принтеры</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="SUBMIT" VALUE="Добавить принтер"></FORM>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="find-new-printers"><INPUT TYPE="SUBMIT" VALUE="Ðайти новый принтер"></FORM>
-<FORM ACTION="/printers/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Управление принтерами"></FORM>
-{have_samba?<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba"><INPUT TYPE="SUBMIT" VALUE="ЭкÑпортировать принтер в Samba"></FORM>:}
-</P>
-
-<H2 CLASS="title">Группы</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-class"><INPUT TYPE="SUBMIT" VALUE="Добавить группу"></FORM>
-<FORM ACTION="/classes/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Управление группами"></FORM>
-</P>
-
-<H2 CLASS="title">ЗаданиÑ</H2>
-
-<P>
-<FORM ACTION="/jobs/" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Управление заданиÑми"></FORM>
-</P>
-
-</TD><TD>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD><TD VALIGN="TOP">
-
-<H2 CLASS="title">Сервер</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server"><INPUT TYPE="SUBMIT" VALUE="Редактировать конфигурационный файл"></FORM>
-<FORM ACTION="/admin/log/access_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Показать журнал заданий"></FORM>
-<FORM ACTION="/admin/log/error_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Показать журнал ошибок"></FORM>
-<FORM ACTION="/admin/log/page_log" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Показать журнал Ñтраниц"></FORM>
-</P>
-
-{SETTINGS_ERROR?<P>{SETTINGS_MESSAGE}</P>
-<BLOCKQUOTE>{SETTINGS_ERROR}</BLOCKQUOTE>:
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-
-{ADVANCEDSETTINGS?<P><B>Параметры Ñервера\:</B></P>
-
-<P><A HREF="/admin/">Дополнительные параметры <SMALL>&#x25bc;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="HIDDEN" NAME="ADVANCEDSETTINGS" VALUE="YES">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Показать принтеры, иÑпользующиеÑÑ Ð² других ÑиÑтемах<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Протоколы\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_CUPS" {?browse_remote_cups}> CUPS
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_LDAP" {?browse_remote_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_REMOTE_SLP" {?browse_remote_slp}> SLP:}<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Разрешить ÑовмеÑтный доÑтуп к принтерам, подключенным к Ñтой ÑиÑтеме<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;МакÑимальное количеÑтво клиентов\:
-<INPUT TYPE="TEXT" NAME="MAX_CLIENTS" VALUE="{?max_clients}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Протоколы\:
-<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_CUPS" {?browse_local_cups}> CUPS
-{HAVE_DNSSD?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_DNSSD" {?browse_local_dnssd}> DNS-SD:}
-{HAVE_LDAP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_LDAP" {?browse_local_ldap}> LDAP:}
-{HAVE_LIBSLP?<INPUT TYPE="CHECKBOX" NAME="BROWSE_LOCAL_SLP" {?browse_local_slp}> SLP:}<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Разрешить печать из Интернета<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="BROWSE_WEB_IF" {?browse_web_if}> ÐнонÑировать веб-интерфейÑ<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Разрешить удаленное админиÑтрирование<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Разрешить аунтентификацию Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Разрешить пользователÑм отменÑть любое задание (не только их ÑобÑтвенное)<BR>
-<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_HISTORY" {?preserve_job_history}> ВеÑти журнал заданий<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;КоличеÑтво заданий\:
-<INPUT TYPE="TEXT" NAME="MAX_JOBS" VALUE="{?max_jobs}" SIZE="6"><BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="PRESERVE_JOB_FILES" {?preserve_job_files}> СохранÑть Ñодержимое заданий<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}>СохранÑть отладочную информацию в журнале<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;МакÑимальный размер журнала ошибок\:
-<INPUT TYPE="TEXT" NAME="MAX_LOG_SIZE" VALUE="{?max_log_size}" SIZE="6"></P>
-
-:<P><B>Параметры Ñервера:</B></P>
-
-<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Дополнительные параметры <SMALL>&#x25b6;</SMALL></A><BR>
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_PRINTERS" {?remote_printers}> Показать принтеры, иÑпользующиеÑÑ Ð² других ÑиÑтемах<BR>
-<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Разрешить ÑовмеÑтный доÑтуп к принтерам, подключенным к Ñтой ÑиÑтеме<BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Разрешить печать из Интернета<BR>
-<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Разрешить удаленное админиÑтрирование<BR>
-{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Разрешить аунтентификацию Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
-<INPUT TYPE="CHECKBOX" NAME="USER_CANCEL_ANY" {?user_cancel_any}> Разрешить пользователÑм отменÑть любое задание (не только их ÑобÑтвенное)<BR>
-<INPUT TYPE="CHECKBOX" NAME="DEBUG_LOGGING" {?debug_logging}> СохранÑть отладочную информацию в журнале</P>
-
-}
-<P><INPUT TYPE="SUBMIT" NAME="CHANGESETTINGS" VALUE="Сохранить"></P>
-
-</FORM>}
-
-</TD></TR>
-</TABLE>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">ПодпиÑка по RSS</H2>
-
-<P>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Добавить подпиÑку по RSS"></FORM>
-</P>
-
-</DIV>
-
-{notify_subscription_id?<TABLE CLASS="list" SUMMARY="ПодпиÑки по RSS">
-<THEAD><TR><TH>Ðазвание</TH><TH>СобытиÑ</TH><TH>Очередь</TH></TR></THEAD>
-<TBODY>{[notify_subscription_id]
-<TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
-<FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Отменить подпиÑку по RSS"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Ð’Ñе очереди}</TD></TR>}
-</TBODY>
-</TABLE>:}
diff --git a/templates/ru/choose-device.tmpl b/templates/ru/choose-device.tmpl
deleted file mode 100644
index 3df36db8..00000000
--- a/templates/ru/choose-device.tmpl
+++ /dev/null
@@ -1,54 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Изменение {printer_name}:Добавление принтера}</H2>
-
-{CUPS_GET_DEVICES_DONE?:<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Busy Indicator"> ПоиÑк принтеров...</P>}
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-{op=add-printer?:<TR>
-<TH CLASS="label">Текущее подключение:</TH>
-<TD><INPUT TYPE="RADIO" NAME="DEVICE_URI" VALUE="{current_device_uri}" CHECKED>
-{current_device_uri}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">Локальные принтеры:</TH>
-<TD>
-{[device_uri]{device_class!network?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}}
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Обнаруженные Ñетевые принтеры:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-:}:}}
-</TD>
-</TR>
-<TR>
-<TR>
-<TH CLASS="label">Другие Ñетевые принтеры:</TH>
-<TD>
-{[device_uri]{device_class=network?{device_uri~[a-z]+://?:<INPUT TYPE="RADIO" NAME="DEVICE_URI"
-VALUE="{device_uri}{?device_make_and_model!Unknown?|{device_make_and_model}:}">
-{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}<BR>
-}:}}
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Продолжить"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/ru/choose-make.tmpl b/templates/ru/choose-make.tmpl
deleted file mode 100644
index a87d6bf2..00000000
--- a/templates/ru/choose-make.tmpl
+++ /dev/null
@@ -1,64 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Изменение {printer_name}:Добавление принтера}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Ðазвание:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">ОпиÑание:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">РаÑположение:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Подключение:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">СовмеÑтный доÑтуп:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Ðет ÑовмеÑтного доÑтупа:{?printer_is_shared=0?Ðет ÑовмеÑтного доÑтупа:Разрешен ÑовмеÑтный доÑтуп}} к Ñтому принтеру</TD>
-</TR>
-<TR>
-<TH CLASS="label">Создать:</TH>
-<TD>
-<SELECT NAME="PPD_MAKE" SIZE="10">
-{[ppd_make]<OPTION VALUE="{ppd_make}" {?current_make={ppd_make}?SELECTED:}>{ppd_make}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Продолжить"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>&nbsp;</TD>
-</TR>
-<TR>
-<TH CLASS="label">или иÑпользовать файл PPD:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Добавить принтер:Сохранить}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/ru/choose-model.tmpl b/templates/ru/choose-model.tmpl
deleted file mode 100644
index 9d434f1c..00000000
--- a/templates/ru/choose-model.tmpl
+++ /dev/null
@@ -1,59 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Изменение {printer_name}:Добавление принтера}</H2>
-
-<FORM METHOD="POST" ACTION="/admin" ENCTYPE="multipart/form-data">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<TABLE>
-{op=modify-printer?:<TR>
-<TH CLASS="label">Ðазвание:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">{printer_name}</TD>
-</TR>}
-<TR>
-<TH CLASS="label">ОпиÑание:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{printer_info}">{printer_info}</TD>
-</TR>
-<TR>
-<TH CLASS="label">РаÑположение:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="{printer_location}">{printer_location}</TD>
-</TR>
-<TR>
-<TH CLASS="label">Подключение:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">СовмеÑтный доÑтуп:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="PRINTER_IS_SHARED" VALUE="{?printer_is_shared}">
-{?printer_is_shared=?Ðет ÑовмеÑтного доÑтупа:{?printer_is_shared=0?Ðет ÑовмеÑтного доÑтупа:Разрешен ÑовмеÑтный доÑтуп}} к Ñтому принтеру</TD></TR>
-<TR>
-<TH CLASS="label">Создать:</TH>
-<TD>{PPD_MAKE} <INPUT TYPE="SUBMIT" NAME="SELECT_MAKE" VALUE="Выбрать модель"></TD>
-</TR>
-<TR>
-<TH CLASS="label">Модель:</TH>
-<TD>
-<SELECT NAME="PPD_NAME" SIZE="10">
-{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Текущий драйвер — {current_make_and_model}</OPTION>:}
-{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
-}</SELECT>
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">или иÑпользовать файл PPD:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="262144"><INPUT
-TYPE="FILE" NAME="PPD_FILE"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{op=add-printer?Добавить принтер:Сохранить}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/ru/choose-serial.tmpl b/templates/ru/choose-serial.tmpl
deleted file mode 100644
index 21e4bf87..00000000
--- a/templates/ru/choose-serial.tmpl
+++ /dev/null
@@ -1,52 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Изменение {printer_name}:Добавление принтера}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Подключение:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">СкороÑть передачи:</TH>
-<TD><SELECT NAME="BAUDRATE">
-{[baudrates]<OPTION {?baudrate={baudrates}?SELECTED:}>{baudrates}}
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Печать Ñтраниц:</TH>
-<TD><SELECT NAME="PARITY">
-<OPTION VALUE="none" {?parity=none?SELECTED:}>Ð’Ñе
-<OPTION VALUE="even" {?parity=even?SELECTED:}>Только четные
-<OPTION VALUE="odd" {?parity=odd?SELECTED:}>Только нечетные
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Биты данных:</TH>
-<TD><SELECT NAME="BITS">
-<OPTION {?bits=8?SELECTED:}>8
-<OPTION {?bits=7?SELECTED:}>7
-</SELECT></TD>
-</TR>
-<TR>
-<TH CLASS="label">Управление:</TH>
-<TD><SELECT NAME="FLOW">
-<OPTION VALUE="none" {?flow=none?SELECTED:}>Ðет
-<OPTION VALUE="soft" {?flow=soft?SELECTED:}>XON/XOFF (программное)
-<OPTION VALUE="hard" {?flow=hard?SELECTED:}>RTS/CTS (аппаратное)
-<OPTION VALUE="dtrdsr" {?flow=dtrdsr?SELECTED:}>DTR/DSR (аппаратное)
-</SELECT></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Продолжить"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/ru/choose-uri.tmpl b/templates/ru/choose-uri.tmpl
deleted file mode 100644
index 17e5e94f..00000000
--- a/templates/ru/choose-uri.tmpl
+++ /dev/null
@@ -1,43 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{op=modify-printer?Изменение {printer_name}:Добавление принтера}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{printer_name?<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">:}
-<INPUT TYPE="HIDDEN" NAME="CURRENT_MAKE_AND_MODEL" VALUE="{?current_make_and_model}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">Подключение:</TH>
-<TD><INPUT TYPE="URL" SIZE="60" MAXLENGTH="1024" NAME="DEVICE_URI" VALUE="{current_device_uri?{current_device_uri}:{device_uri}}"></TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>Примеры:
-<PRE>
- http://hostname:631/ipp/
- http://hostname:631/ipp/port1
-
- ipp://hostname/ipp/
- ipp://hostname/ipp/port1
-
- lpd://hostname/queue
-
- socket://hostname
- socket://hostname:9100
-</PRE>
-
-<P>Смотрите раздел «<A HREF="/help/network.html" TARGET="_blank">Сетевые принтеры</A>» Ð´Ð»Ñ Ð²Ñ‹ÑÑÐ½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð¾Ð³Ð¾ адреÑа вашего принтера.</P>
-
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Продолжить"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/ru/class-added.tmpl b/templates/ru/class-added.tmpl
deleted file mode 100644
index 298dfb92..00000000
--- a/templates/ru/class-added.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">ÐÐ¾Ð²Ð°Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ð°</H2>
-
-<P>Группа «<A HREF="/classes/{printer_name}">{printer_name}</A>» уÑпешно добавлена.
-
-</DIV>
diff --git a/templates/ru/class-confirm.tmpl b/templates/ru/class-confirm.tmpl
deleted file mode 100644
index 5bef5bf0..00000000
--- a/templates/ru/class-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Удаление группы {printer_name}</H2>
-
-<P><B>Предупреждение:</B> вы дейÑтвительно хотите удалить группу
-«{printer_name}»?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="op" VALUE="delete-class"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Удалить группу"></FORM></P>
-
-</DIV>
diff --git a/templates/ru/class-deleted.tmpl b/templates/ru/class-deleted.tmpl
deleted file mode 100644
index 0ddd4d54..00000000
--- a/templates/ru/class-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Удаление группы {printer_name}</H2>
-
-<P>Группа «{printer_name}» уÑпешно удалена.
-
-</DIV> \ No newline at end of file
diff --git a/templates/ru/class-jobs-header.tmpl b/templates/ru/class-jobs-header.tmpl
deleted file mode 100644
index 8487cbbd..00000000
--- a/templates/ru/class-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">ЗаданиÑ</H3>
-</DIV>
diff --git a/templates/ru/class-modified.tmpl b/templates/ru/class-modified.tmpl
deleted file mode 100644
index 94df570f..00000000
--- a/templates/ru/class-modified.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Изменение группы {printer_name}</H2>
-
-<P>Группа «<A HREF="/classes/{printer_name}">{printer_name}</A>» уÑпешно изменена.
-
-</DIV> \ No newline at end of file
diff --git a/templates/ru/class.tmpl b/templates/ru/class.tmpl
deleted file mode 100644
index 47891ced..00000000
--- a/templates/ru/class.tmpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<DIV CLASS="indent">
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?в ожидании:{printer_state=4?печать:приоÑтановлен}},
-{printer_is_accepting_jobs=0?не принимает заданиÑ:принимает заданиÑ},
-{server_is_sharing_printers=0?нет ÑовмеÑтного доÑтупа:{printer_is_shared=0?нет ÑовмеÑтного доÑтупа:разрешен ÑовмеÑтный доÑтуп}})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">ОбÑлуживание</OPTION>
-<OPTION VALUE="print-test-page">Печать пробной Ñтраницы</OPTION>
-{printer_state=5?<OPTION VALUE="start-class">Данные группы</OPTION>:<OPTION VALUE="stop-class">ПриоÑтановить группу</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Принимать заданиÑ</OPTION>:<OPTION VALUE="reject-jobs">Ðе принимать заданиÑ</OPTION>}
-<OPTION VALUE="move-jobs">ПеремеÑтить вÑе заданиÑ</OPTION>
-<OPTION VALUE="purge-jobs">Отменить вÑе заданиÑ</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Сохранить" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="1">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">ÐдминиÑтрирование</OPTION>
-<OPTION VALUE="modify-class">Изменить группу</OPTION>
-<OPTION VALUE="delete-class">Удалить группу</OPTION>
-<OPTION VALUE="set-class-options">УÑтановить параметры по умолчанию</OPTION>
-<OPTION VALUE="set-as-default">УÑтановить как принтер по умолчанию</OPTION>
-<OPTION VALUE="set-allowed-users">СпиÑок разрешенных пользователей</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Сохранить" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">ОпиÑание:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">РаÑположение:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">СоÑтав:</TH><TD>{?member_uris=?Ðет принтеров:{member_uris}}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">По умолчанию:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:неизвеÑтный}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/ru/classes-header.tmpl b/templates/ru/classes-header.tmpl
deleted file mode 100644
index 53b3db32..00000000
--- a/templates/ru/classes-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Ðет групп:Группа {#printer_name} из {total}.</P>
diff --git a/templates/ru/classes.tmpl b/templates/ru/classes.tmpl
deleted file mode 100644
index 151ccad7..00000000
--- a/templates/ru/classes.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="СпиÑок групп">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Очередь <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Очередь <SMALL>&#x25bc;</SMALL>}</A></TH><TH>ОпиÑание</TH><TH>РаÑположение</TH><TH>СоÑтав</TH><TH>СтатуÑ</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{?member_uris=?Ðет принтеров:{member_uris}}</TD><TD>{printer_state=3?Ð’ ожидании:{printer_state=4?Печатает:ПриоÑтановлена}}{printer_state_message?: {printer_state_message}:}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/ru/command.tmpl b/templates/ru/command.tmpl
deleted file mode 100644
index 4dc7b4e6..00000000
--- a/templates/ru/command.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{title} Ð´Ð»Ñ {printer_name}</H2>
-
-<P>{job_state>5?:<IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16"
-ALIGN="ABSMIDDLE" ALT="Индикатор занÑтоÑти"> }Обработка заданиÑ
-{job_state=3?в очереди:{job_state=4?удерживаетÑÑ:
-{job_state=5?обрабатываетÑÑ:{job_state=6?оÑтановлено:
-{job_state=7?отменено:{job_state=8?прервано:завершено}}}}}}{job_state=9?:{job_printer_state_message?,
-<EM>"{job_printer_state_message}"</EM>:}}</P>
-
-</DIV>
diff --git a/templates/ru/edit-config.tmpl b/templates/ru/edit-config.tmpl
deleted file mode 100644
index d194059d..00000000
--- a/templates/ru/edit-config.tmpl
+++ /dev/null
@@ -1,24 +0,0 @@
-<SCRIPT TYPE="text/javascript">
-function reset_config()
-{
- document.cups.CUPSDCONF.value = "{?cupsdconf_default}";
-}
-</SCRIPT>
-
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Редактирование конфигурационного файла</H2>
-
-<FORM NAME="cups" METHOD="POST" ACTION="/admin/">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
-
-<TEXTAREA NAME="CUPSDCONF" COLS="80" ROWS="25">{CUPSDCONF}</TEXTAREA>
-
-<P><INPUT TYPE="SUBMIT" NAME="SAVECHANGES" VALUE="Сохранить изменениÑ">
-<INPUT TYPE="BUTTON" VALUE="СброÑить вÑе изменениÑ"
-onClick="reset_config();"></P>
-
-</FORM>
-
-</DIV>
diff --git a/templates/ru/error-op.tmpl b/templates/ru/error-op.tmpl
deleted file mode 100644
index 29fce86b..00000000
--- a/templates/ru/error-op.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?title} {?printer_name} — ошибка</H2>
-
-<P>Ошибка:</P>
-
-<BLOCKQUOTE>ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾Ð¿ÐµÑ€Ð°Ñ†Ð¸Ñ Â«{op}»!</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/ru/error.tmpl b/templates/ru/error.tmpl
deleted file mode 100644
index 9a780b19..00000000
--- a/templates/ru/error.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{?title} {?printer_name} — ошибка</H2>
-
-<P>{?message?{message}:Ошибка:}</P>
-
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/ru/header.tmpl.in b/templates/ru/header.tmpl.in
deleted file mode 100644
index 4fbdbe03..00000000
--- a/templates/ru/header.tmpl.in
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{title} — CUPS @CUPS_VERSION@@CUPS_REVISION@</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
- {refresh_page?<META HTTP-EQUIV="Refresh" CONTENT="{refresh_page}">:}
-</HEAD>
-<BODY>
-<TABLE CLASS="page" SUMMARY="{title}">
-<TR><TD CLASS="body">
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
-<TR HEIGHT="36">
-<TD><A HREF="http://www.cups.org/" TARGET="_blank"><IMG
-SRC="/images/left.gif" WIDTH="64" HEIGHT="36" BORDER="0" ALT=""></A></TD>
-<TD CLASS="unsel"><A HREF="/">&nbsp;&nbsp;Ðачало&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=admin?:un}sel"><A HREF="/admin">&nbsp;&nbsp;ÐдминиÑтрирование&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=classes?:un}sel"><A HREF="/classes/">&nbsp;&nbsp;Группы&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=help?:un}sel"><A HREF="/help/">&nbsp;&nbsp;Справка&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=jobs?:un}sel"><A HREF="/jobs/">&nbsp;&nbsp;ЗаданиÑ&nbsp;&nbsp;</A></TD>
-<TD CLASS="{SECTION=printers?:un}sel"><A HREF="/printers/">&nbsp;&nbsp;Принтеры&nbsp;&nbsp;</A></TD>
-<TD CLASS="unsel" WIDTH="100%"><FORM ACTION="/help/" METHOD="GET"><INPUT
-TYPE="SEARCH" NAME="QUERY" SIZE="20" PLACEHOLDER="ПоиÑк по Ñправке"
-VALUE="{SECTION=help?{?QUERY}:}" AUTOSAVE="org.cups.help" RESULTS="20"></FORM></TD>
-<TD><IMG SRC="/images/right.gif" WIDTH="4" HEIGHT="36" ALT=""></TD>
-</TR>
-<TR><TD COLSPAN="9">&nbsp;</TD></TR>
-</TABLE>
diff --git a/templates/ru/help-header.tmpl b/templates/ru/help-header.tmpl
deleted file mode 100644
index 6adbae38..00000000
--- a/templates/ru/help-header.tmpl
+++ /dev/null
@@ -1,46 +0,0 @@
-<DIV CLASS="indent">
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET">
-{TOPIC?<INPUT TYPE="HIDDEN" NAME="TOPIC" VALUE="{TOPIC}">:}
-
-<P ALIGN="CENTER"><B>ПоиÑк
-{HELPTITLE?в {HELPTITLE}:{TOPIC?в {TOPIC}:по Ñправке}}:</B> <INPUT
-TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER=""
-AUTOSAVE="org.cups.help" RESULTS="20">
-<INPUT TYPE="SUBMIT" NAME="SEARCH" VALUE="ПоиÑк">
-<INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="ОчиÑтить"></P>
-
-</FORM>
-
-<!-- Bookmarks -->
-<DIV CLASS="sidebar"><TABLE CLASS="inset" SUMMARY="Содержание">
-<TR><TD>
-
-<H3 CLASS="title">ДокументациÑ</H3>
-
-<P CLASS="l0"><A HREF="/help/{QUERY??QUERY={QUERY}:}">Ð’Ñе разделы</A></P>
-<HR>
-
-{[BMTEXT]<P CLASS="l{BMINDENT}"><A HREF="{BMLINK}">{BMTEXT}</A></P>
-}
-</TD></TR>
-</TABLE></DIV>
-
-{QUERY?<P>Результаты поиÑка в {HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:вÑей Ñправке}}\:</P>
-{QTEXT?<UL>
-{[QTEXT]<LI><A HREF="{QLINK}">{QTEXT}</A>{QPTEXT? (in <I><A HREF="{QPLINK}">{QPTEXT}</A></I>):}</LI>}
-{QTEXT?</UL>:}
-:<P>Ðе найдено Ñовпадений.</P>}
-<HR NOSHADE>:}
-{HELPTITLE?<H1>{HELPTITLE}</H1>
-<FORM ACTION="/help/{?HELPFILE}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="PRINTABLE" VALUE="YES"><INPUT TYPE="SUBMIT" VALUE="Показать верÑию Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸"></FORM>:
-
-<H1>Справка</H1>
-
-<P>Это Ñправка CUPS. Введите выше Ñлова Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка в Ñправке и нажмите «ПоиÑк», чтобы показать результаты поиÑка.</P>
-
-<P>ЕÑли вы пока мало знакомы Ñ CUPS, прочтите раздел «<a
-href="/help/overview.html">Введение в CUPS</a>». Опытные пользователи
-могут обратитьÑÑ Ðº разделу <nobr>«<a href="/help/whatsnew.html">Что нового в CUPS 1.4</a>»</nobr>.</P>
-
-<P><A HREF="http://www.cups.org/">Веб-Ñайт CUPS</A> Ñодержит большое количеÑтво реÑурÑов Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÐµÐ¹, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ Ñ„Ð¾Ñ€ÑƒÐ¼, ответы
-на чаÑто задаваемые вопроÑÑ‹ и форму Ð´Ð»Ñ Ñ€ÐµÐ³Ð¸Ñтрации ошибок и пожеланий.</P>}
diff --git a/templates/ru/help-printable.tmpl b/templates/ru/help-printable.tmpl
deleted file mode 100644
index 2463c163..00000000
--- a/templates/ru/help-printable.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
- <TITLE>{HELPTITLE}</TITLE>
- <LINK REL="STYLESHEET" TYPE="text/css" HREF="/cups-printable.css">
- <LINK REL="SHORTCUT ICON" HREF="/images/cups-icon.png" TYPE="image/png">
-</HEAD>
-<BODY>
diff --git a/templates/ru/help-trailer.tmpl b/templates/ru/help-trailer.tmpl
deleted file mode 100644
index 4c1ebed8..00000000
--- a/templates/ru/help-trailer.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-</DIV>
diff --git a/templates/ru/job-cancel.tmpl b/templates/ru/job-cancel.tmpl
deleted file mode 100644
index cba56446..00000000
--- a/templates/ru/job-cancel.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Отмена Ð·Ð°Ð´Ð°Ð½Ð¸Ñ {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Задание {job_id}</A> отменено.
-
-</DIV>
diff --git a/templates/ru/job-hold.tmpl b/templates/ru/job-hold.tmpl
deleted file mode 100644
index 162e4a46..00000000
--- a/templates/ru/job-hold.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">ПриоÑтановка Ð·Ð°Ð´Ð°Ð½Ð¸Ñ {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Задание {job_id}</A> приоÑтановлено.
-
-</DIV>
diff --git a/templates/ru/job-move.tmpl b/templates/ru/job-move.tmpl
deleted file mode 100644
index 598e4db7..00000000
--- a/templates/ru/job-move.tmpl
+++ /dev/null
@@ -1,27 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/{SECTION}/{job_id?:{printer_name}}">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{job_id?<INPUT TYPE="HIDDEN" NAME="JOB_ID" VALUE="{job_id}">:}
-
-<H2 CLASS="title">{job_id?Перемещение Ð·Ð°Ð´Ð°Ð½Ð¸Ñ {job_id}:Перемещение вÑех заданий}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">ПеремеÑтить на принтер:</TH>
-<TD>
-<SELECT NAME="JOB_PRINTER_URI" SIZE="10">
-{[job_printer_uri]<OPTION VALUE="{job_printer_uri}">{job_printer_name}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="{job_id?ПеремеÑтить задание:ПеремеÑтить вÑе заданиÑ}"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-
-</DIV>
diff --git a/templates/ru/job-moved.tmpl b/templates/ru/job-moved.tmpl
deleted file mode 100644
index 1755491d..00000000
--- a/templates/ru/job-moved.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">{job_id?Перемещение Ð·Ð°Ð´Ð°Ð½Ð¸Ñ {job_id}:Перемещение вÑех заданий}</H2>
-
-<P>{job_id?<A HREF="/jobs/{job_id}">Задание {job_id}</A>:Ð’Ñе заданиÑ} перемещены на принтер «<A HREF="{job_printer_uri}">{job_printer_name}</A>».</P>
-
-</DIV>
diff --git a/templates/ru/job-release.tmpl b/templates/ru/job-release.tmpl
deleted file mode 100644
index 876c85ba..00000000
--- a/templates/ru/job-release.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Разблокирование Ð·Ð°Ð´Ð°Ð½Ð¸Ñ {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Ð—Ð°Ð´Ð°Ð½Ð¸Ñ {job_id}</A> разблокировано.
-
-</DIV>
diff --git a/templates/ru/job-restart.tmpl b/templates/ru/job-restart.tmpl
deleted file mode 100644
index 490fc3a3..00000000
--- a/templates/ru/job-restart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">ПерезапуÑк Ð·Ð°Ð´Ð°Ð½Ð¸Ñ {job_id}</H2>
-
-<P><A HREF="{job_printer_uri}">Задание {job_id}</A> запущено заново.
-
-</DIV>
diff --git a/templates/ru/jobs-header.tmpl b/templates/ru/jobs-header.tmpl
deleted file mode 100644
index d9ee9604..00000000
--- a/templates/ru/jobs-header.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<DIV CLASS="indent">{?which_jobs=?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Показать активные заданиÑ"></FORM>}
-{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="Показать завершенные заданиÑ"></FORM>}
-{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="Показать вÑе заданиÑ"></FORM>}</DIV>
-
-<P ALIGN="CENTER">{total=0?Ðет заданий:Задание {#job_id} из {total} {?which_jobs=?активных:{which_jobs=all?:завершенных}}.</P>
-
diff --git a/templates/ru/jobs.tmpl b/templates/ru/jobs.tmpl
deleted file mode 100644
index c2226f67..00000000
--- a/templates/ru/jobs.tmpl
+++ /dev/null
@@ -1,37 +0,0 @@
-{#job_id=0?:
-<TABLE CLASS="list" SUMMARY="ЗаданиÑ">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Ðомер <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> ID <SMALL>&#x25bc;</SMALL>}</A></TH><TH>Ðазвание</TH><TH>Пользователь</TH><TH>Размер</TH><TH>Страниц</TH><TH>СтатуÑ</TH><TH>Управление</TH></TR>
-</THEAD>
-<TBODY>
-{[job_id]
-<TR VALIGN="TOP">
-<TD><A HREF="{job_printer_uri}">{job_printer_name}</A>-{job_id}&nbsp;</TD>
-<TD>{?job_name=?ÐеизвеÑтное:{job_name}}&nbsp;</TD>
-<TD>{job_originating_user_name}&nbsp;</TD>
-<TD>{job_k_octets}k&nbsp;</TD>
-<TD>{job_media_sheets_completed=0?ÐеизвеÑтно:{?job_media_sheets_completed}}&nbsp;</TD>
-<TD>{job_state=3?Ð’ очереди<BR>{time_at_creation}:{job_state=4?ПриоÑтановлено Ñ<BR>{time_at_creation}:
-{job_state=5?Создано<BR>{time_at_processing}:{job_state=6?ОÑтановлено:
-{job_state=7?Отменено<BR>{time_at_completed}:{job_state=8?Прервано:Завершено<BR>{time_at_completed}}}}}}}&nbsp;{job_printer_state_message?<BR>
-<EM>"{job_printer_state_message}"</EM>:}</TD>
-<TD>
-{job_preserved>0?{job_state>5?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="restart-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="ПерезапуÑтить"></FORM>:}:}
-{job_state=4?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="release-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Продолжить"></FORM>:}
-{job_state=3?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="hold-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="ПриоÑтановить"></FORM>:}
-{job_state<7?
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="HIDDEN" NAME="job_printer_uri" VALUE="{job_printer_uri}">
-<INPUT TYPE="SUBMIT" VALUE="Отменить"></FORM>
-<FORM ACTION="/jobs/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="move-job"><INPUT TYPE="HIDDEN" NAME="job_id" VALUE="{job_id}"><INPUT TYPE="SUBMIT" VALUE="ПеремеÑтить"></FORM>:}
-&nbsp;</TD>
-</TR>
-}
-</TBODY>
-</TABLE>
-}
diff --git a/templates/ru/list-available-printers.tmpl b/templates/ru/list-available-printers.tmpl
deleted file mode 100644
index 16156284..00000000
--- a/templates/ru/list-available-printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">ДоÑтупные принтеры</H2>
-
-{#device_uri=0?<P>Ðе обнаружено ни одного принтера.</P>
-:<UL>{[device_uri]
-<LI><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-printer"><INPUT TYPE="HIDDEN" NAME="TEMPLATE_NAME" VALUE="{template_name}"><INPUT TYPE="HIDDEN" NAME="PRINTER_LOCATION" VALUE="Сетевой принтер"><INPUT TYPE="HIDDEN" NAME="PRINTER_INFO" VALUE="{device_make_and_model}"><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}"><INPUT TYPE="SUBMIT" VALUE="Добавить Ñтот принтер"></FORM>
-{device_make_and_model} ({device_info})</LI>
-}</UL>}
-
-</DIV>
diff --git a/templates/ru/modify-class.tmpl b/templates/ru/modify-class.tmpl
deleted file mode 100644
index a85698a5..00000000
--- a/templates/ru/modify-class.tmpl
+++ /dev/null
@@ -1,34 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Изменение группы {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">ОпиÑание:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">РаÑположение:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"></TD>
-</TR>
-<TR>
-<TH CLASS="label">СоÑтав группы:</TH>
-<TD>
-<SELECT NAME="MEMBER_URIS" SIZE="10" MULTIPLE>
-{[member_uris]<OPTION VALUE="{member_uris}" {?member_selected}>{member_names}}
-</SELECT>
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Изменить группу"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV> \ No newline at end of file
diff --git a/templates/ru/modify-printer.tmpl b/templates/ru/modify-printer.tmpl
deleted file mode 100644
index 6277b5d6..00000000
--- a/templates/ru/modify-printer.tmpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Изменение принтера {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-<INPUT TYPE="HIDDEN" NAME="BAUDRATE" VALUE="{?baudrate}">
-<INPUT TYPE="HIDDEN" NAME="BITS" VALUE="{?bits}">
-<INPUT TYPE="HIDDEN" NAME="PARITY" VALUE="{?parity}">
-<INPUT TYPE="HIDDEN" NAME="FLOW" VALUE="{?flow}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-
-<TABLE>
-<TR>
-<TH CLASS="label">ОпиÑание:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_INFO" VALUE="{?printer_info}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(раÑширенное опиÑание принтера, например, «HP LaserJet Ñ Ð´ÑƒÐ¿Ð»ÐµÐºÑной печатью»)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">РаÑположение:</TH>
-<TD><INPUT TYPE="TEXT" NAME="PRINTER_LOCATION" VALUE="{?printer_location}" SIZE="40" MAXLENGTH="127"><BR>
-<SMALL>(меÑтоположение принтера, например, «Кабинет 55»)</SMALL></TD>
-</TR>
-<TR>
-<TH CLASS="label">Подключение:</TH>
-<TD><INPUT TYPE="HIDDEN" NAME="DEVICE_URI" VALUE="{device_uri}">{device_uri}</TD>
-</TR>
-<TR>
-<TH CLASS="label">СовмеÑтный доÑтуп:</TH>
-<TD><INPUT TYPE="CHECKBOX" NAME="PRINTER_IS_SHARED" {PRINTER_IS_SHARED=1?CHECKED:}>
-Разрешить ÑовмеÑтный доÑтуп к Ñтому принтеру</TD>
-</TR>
-<TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="Продолжить"></TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/templates/ru/norestart.tmpl b/templates/ru/norestart.tmpl
deleted file mode 100644
index 0b74c036..00000000
--- a/templates/ru/norestart.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Применение изменений</H2>
-
-<P>Сервер не был перезапущен, поÑкольку не произошло изменений в конфигурации...</P>
-
-</DIV>
diff --git a/templates/ru/option-boolean.tmpl b/templates/ru/option-boolean.tmpl
deleted file mode 100644
index e832ee10..00000000
--- a/templates/ru/option-boolean.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD>
-{[choices]<INPUT TYPE="RADIO" NAME="{keyword-1}" {choices={defchoice-1}?CHECKED:} VALUE="{choices}">{text}}
-</TD>
-</TR>
diff --git a/templates/ru/option-conflict.tmpl b/templates/ru/option-conflict.tmpl
deleted file mode 100644
index 9497fb77..00000000
--- a/templates/ru/option-conflict.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<P><B>Ошибка:</B> Ñледующие параметры конфликтуют:</P>
-
-<UL>
-{[ckeyword]<LI><A HREF="#{ckeyword}">{ckeytext}</A>: {cchoice}</LI>
-}</UL>
-
-<P>Измените один или неÑколько параметров Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾, чтобы избежать конфликта.</P>
diff --git a/templates/ru/option-header.tmpl b/templates/ru/option-header.tmpl
deleted file mode 100644
index 464726a5..00000000
--- a/templates/ru/option-header.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="tab" ID="{group_id}">
-
-<H3 ALIGN="CENTER">{group}</H3>
-
-<TABLE WIDTH="100%">
diff --git a/templates/ru/option-pickmany.tmpl b/templates/ru/option-pickmany.tmpl
deleted file mode 100644
index 0da75e5d..00000000
--- a/templates/ru/option-pickmany.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" MULTIPLE SIZE="10">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT></TD>
-</TR>
diff --git a/templates/ru/option-pickone.tmpl b/templates/ru/option-pickone.tmpl
deleted file mode 100644
index 49a9929a..00000000
--- a/templates/ru/option-pickone.tmpl
+++ /dev/null
@@ -1,18 +0,0 @@
-<TR>
-<TH {conflicted=1?CLASS="conflict":CLASS="label"} WIDTH="50%"><A NAME="{keyword}">{keytext}</A>:</TH>
-<TD><SELECT NAME="{keyword}" ID="select-{keyword}" ONCHANGE="update_paramtable('{keyword}')">
-{[choices]<OPTION {choices={defchoice-1}?SELECTED:} VALUE="{choices}">{text}}
-</SELECT>
-{iscustom=1?<TABLE NAME="paramtable" id="{keyword}-params">{[params]
-<TR><TH CLASS="sublabel">{paramtext}:</TH>
-<TD>{params=Units?<SELECT NAME="{keyword-1}.{params}">
-<OPTION VALUE="pt"{paramvalue=pt? SELECTED:}>Пункты</OPTION>
-<OPTION VALUE="mm"{paramvalue=mm? SELECTED:}>Миллиметры</OPTION>
-<OPTION VALUE="cm"{paramvalue=cm? SELECTED:}>Сантиметры</OPTION>
-<OPTION VALUE="in"{paramvalue=in? SELECTED:}>Дюймы</OPTION>
-<OPTION VALUE="ft"{paramvalue=ft? SELECTED:}>Футы</OPTION>
-<OPTION VALUE="m"{paramvalue=m? SELECTED:}>Метры</OPTION>
-</SELECT>:<INPUT TYPE="{inputtype}" NAME="{keyword-1}.{params}" VALUE="{paramvalue}">}</TD></TR>
-}</TABLE>
-</TD>:}
-</TR>
diff --git a/templates/ru/option-trailer.tmpl b/templates/ru/option-trailer.tmpl
deleted file mode 100644
index 15a31427..00000000
--- a/templates/ru/option-trailer.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-</TABLE>
-
-<P ALIGN="CENTER"><INPUT TYPE="SUBMIT" VALUE="Сохранить параметры по умолчанию"></P>
-
-</DIV>
diff --git a/templates/ru/pager.tmpl b/templates/ru/pager.tmpl
deleted file mode 100644
index fb1d2fae..00000000
--- a/templates/ru/pager.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-<TABLE CLASS="inset" SUMMARY="ПроÑмотр по Ñтраницам">
-<TR>
- <TD WIDTH="50%">{PREV?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{PREV}"><INPUT TYPE="SUBMIT" VALUE="&#x25c0; Предворительный проÑмотр"></FORM>:&nbsp;}</TD>
- <TD WIDTH="50%" ALIGN="RIGHT">{NEXT?<FORM ACTION="{THISURL}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="QUERY" VALUE="{?QUERY}"><INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{?ORDER}"><INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{?WHICH_JOBS}"><INPUT TYPE="HIDDEN" NAME="FIRST" VALUE="{NEXT}"><INPUT TYPE="SUBMIT" VALUE="Показать Ñледующую &#x25b6;"></FORM>:&nbsp;}</TD>
-</TR>
-</TABLE>
diff --git a/templates/ru/printer-accept.tmpl b/templates/ru/printer-accept.tmpl
deleted file mode 100644
index 24d100d4..00000000
--- a/templates/ru/printer-accept.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Прием заданий {is_class?в группу:на принтер} {printer_name}</H2>
-
-<P>{is_class?Группа:Принтер} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-теперь принимает заданиÑ.</P>
-
-</DIV>
diff --git a/templates/ru/printer-added.tmpl b/templates/ru/printer-added.tmpl
deleted file mode 100644
index eda0748c..00000000
--- a/templates/ru/printer-added.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Добавление принтера</H2>
-
-<P>Принтер «<A HREF="/printers/{printer_name}">{printer_name}</A>» уÑпешно
-добавлен.
-
-</DIV>
diff --git a/templates/ru/printer-configured.tmpl b/templates/ru/printer-configured.tmpl
deleted file mode 100644
index 33c4c143..00000000
--- a/templates/ru/printer-configured.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">ÐаÑтройки по умолчанию Ð´Ð»Ñ {printer_name}</H2>
-
-<P>{OP=set-class-options?Группа <A HREF="/classes/{printer_name}">:Принтер <A HREF="/printers/{printer_name}">}{printer_name}</A>
-теперь иÑпользуют параметры по умолчанию.
-
-</DIV>
diff --git a/templates/ru/printer-confirm.tmpl b/templates/ru/printer-confirm.tmpl
deleted file mode 100644
index c57356d0..00000000
--- a/templates/ru/printer-confirm.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Удаление принтера {printer_name}</H2>
-
-<P><B>Предупреждение:</B> вы дейÑтвительно хотите удалить принтер
-«{printer_name}»?</P>
-
-<P ALIGN="CENTER"><FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="delete-printer"><INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}"><INPUT TYPE="SUBMIT" NAME="confirm" VALUE="Удалить принтер"></FORM></P>
-
-</DIV>
diff --git a/templates/ru/printer-default.tmpl b/templates/ru/printer-default.tmpl
deleted file mode 100644
index 6297d79e..00000000
--- a/templates/ru/printer-default.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">УÑтановка {is_class?группы:принтера} {printer_name} по умолчанию</H2>
-
-<P>{is_class?Группа:Принтер} <A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>
-уÑтановлены на Ñервере по умолчанию Ð´Ð»Ñ Ð½Ð¾Ð²Ñ‹Ñ… заданий.</P>
-
-<BLOCKQUOTE><B>Примечание:</B> вы можете переопределить Ñто поведение Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ команды
- <TT>lpoptions</TT>.</BLOCKQUOTE>
-
-</DIV>
diff --git a/templates/ru/printer-deleted.tmpl b/templates/ru/printer-deleted.tmpl
deleted file mode 100644
index 97fd8bd8..00000000
--- a/templates/ru/printer-deleted.tmpl
+++ /dev/null
@@ -1,7 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Удаление принтера {printer_name}</H2>
-
-<P>Принтер «{printer_name}» уÑпешно удален.
-
-</DIV>
diff --git a/templates/ru/printer-jobs-header.tmpl b/templates/ru/printer-jobs-header.tmpl
deleted file mode 100644
index 8487cbbd..00000000
--- a/templates/ru/printer-jobs-header.tmpl
+++ /dev/null
@@ -1,3 +0,0 @@
-<DIV CLASS="indent">
-<H3 CLASS="title">ЗаданиÑ</H3>
-</DIV>
diff --git a/templates/ru/printer-modified.tmpl b/templates/ru/printer-modified.tmpl
deleted file mode 100644
index be27e5e7..00000000
--- a/templates/ru/printer-modified.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Изменение принтера {printer_name}</H2>
-
-<P>Параметры принтера «<A HREF="/printers/{printer_name}">{printer_name}</A>» уÑпешно
-изменены.
-
-</DIV> \ No newline at end of file
diff --git a/templates/ru/printer-purge.tmpl b/templates/ru/printer-purge.tmpl
deleted file mode 100644
index 44fda0d1..00000000
--- a/templates/ru/printer-purge.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">ОчиÑтка вÑех заданий Ð´Ð»Ñ {is_class?группы:принтера} {printer_name}</H2>
-
-<P>Ð’Ñе Ð·Ð°Ð´Ð°Ð½Ð¸Ñ Ð´Ð»Ñ {is_class?группы:принтера} «<A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>»
-очищены.</P>
-
-</DIV>
diff --git a/templates/ru/printer-reject.tmpl b/templates/ru/printer-reject.tmpl
deleted file mode 100644
index 488203c9..00000000
--- a/templates/ru/printer-reject.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Отмена заданий Ð´Ð»Ñ {is_class?группы:принтера} {printer_name}</H2>
-
-<P>{is_class?Группа:Принтер} «<A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>»
-больше не принимает заданиÑ.</P>
-
-</DIV>
diff --git a/templates/ru/printer-start.tmpl b/templates/ru/printer-start.tmpl
deleted file mode 100644
index 69ffa7ef..00000000
--- a/templates/ru/printer-start.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Возобновить работу {is_class?группы:принтера} {printer_name}</H2>
-
-<P>{is_class?Группа:Принтер} «<A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>»
-теперь принимают заданиÑ.</P>
-
-</DIV>
diff --git a/templates/ru/printer-stop.tmpl b/templates/ru/printer-stop.tmpl
deleted file mode 100644
index 3fecd1e7..00000000
--- a/templates/ru/printer-stop.tmpl
+++ /dev/null
@@ -1,9 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">ПриоÑтановить {is_class?группу:принтер} {printer_name}</H2>
-
-<P>{is_class?Группа:Принтер} «<A
-HREF="/{is_class?classes:printers}/{printer_name}">{printer_name}</A>»
-{is_class?была приоÑтановлена:был приоÑтановлен}.</P>
-
-</DIV>
diff --git a/templates/ru/printer.tmpl b/templates/ru/printer.tmpl
deleted file mode 100644
index 5128d004..00000000
--- a/templates/ru/printer.tmpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title"><A HREF="{printer_uri_supported}">{printer_name}</A>
-({printer_state=3?в ожидании:{printer_state=4?печать:приоÑтановлен}},
-{printer_is_accepting_jobs=0?не принимает заданиÑ:принимает заданиÑ},
-{server_is_sharing_printers=0?нет ÑовмеÑтного доÑтупа:{printer_is_shared=0?нет ÑовмеÑтного доÑтупа:разрешен ÑовмеÑтный доÑтуп}})</H2>
-
-<FORM METHOD="POST" ACTION="{printer_uri_supported}" NAME="maintenance">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<SELECT NAME="OP" ONCHANGE="document.maintenance.submit();">
-<OPTION VALUE="">ОбÑлуживание</OPTION>
-<OPTION VALUE="print-test-page">Печать пробной Ñтраницы</OPTION>
-{printer_commands~.*Clean.*?<OPTION VALUE="clean-print-heads">ОчиÑтить головки</OPTION>:}
-{printer_commands~.*PrintSelfTestPage.*?<OPTION VALUE="print-self-test-page">Печать пробной Ñтраницы принтера</OPTION>:}
-{printer_state=5?<OPTION VALUE="start-printer">Возобновить печать</OPTION>:<OPTION VALUE="stop-printer">ПриоÑтановить принтер</OPTION>}
-{printer_is_accepting_jobs=0?<OPTION VALUE="accept-jobs">Принимать заданиÑ</OPTION>:<OPTION VALUE="reject-jobs">Ðе принимать заданиÑ</OPTION>}
-<OPTION VALUE="move-jobs">ПеремеÑтить вÑе заданиÑ</OPTION>
-<OPTION VALUE="purge-jobs">Закрыть вÑе заданиÑ</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<FORM METHOD="POST" ACTION="{admin_uri}" NAME="administration">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
-<SELECT NAME="OP" ONCHANGE="document.administration.submit();">
-<OPTION VALUE="">ÐдминиÑтрирование</OPTION>
-<OPTION VALUE="modify-printer">Изменить принтер</OPTION>
-<OPTION VALUE="delete-printer">Удалить принтер</OPTION>
-<OPTION VALUE="set-printer-options">УÑтановить параметры по умолчанию</OPTION>
-<OPTION VALUE="set-as-default">УÑтановить как принтер по умолчанию</OPTION>
-<OPTION VALUE="set-allowed-users">СпиÑок разрешенных пользователей</OPTION>
-</SELECT>
-<INPUT TYPE="SUBMIT" VALUE="Go" STYLE="display: none;">
-</FORM>
-
-<TABLE SUMMARY="{printer_name}">
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">ОпиÑание:</TH><TD>{printer_info}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">РаÑположение:</TH><TD>{printer_location}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Драйвер:</TH><TD>{printer_make_and_model} ({color_supported=1?цветной:черно-белый}{sides_supported?, дуплекÑÐ½Ð°Ñ Ð¿ÐµÑ‡Ð°Ñ‚ÑŒ:})<BR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">Подключение:</TH><TD>{device_uri}</TD></TR>
-<TR><TH ALIGN="RIGHT" VALIGN="TOP">По умолчанию:</TH><TD>job-sheets={job_sheets_default}
-media={media_default?{media_default}:неизвеÑтный}
-{sides_default?sides={sides_default}:}</TD></TR>
-</TABLE>
-
-</DIV>
diff --git a/templates/ru/printers-header.tmpl b/templates/ru/printers-header.tmpl
deleted file mode 100644
index 86624591..00000000
--- a/templates/ru/printers-header.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P ALIGN="CENTER">{total=0?Ðет принтеров:Принтер {#printer_name} из {total}.</P>
diff --git a/templates/ru/printers.tmpl b/templates/ru/printers.tmpl
deleted file mode 100644
index 69465867..00000000
--- a/templates/ru/printers.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-{#printer_name=0?:
-<TABLE CLASS="list" SUMMARY="СпиÑок принтеров">
-<THEAD>
-<TR><TH><A HREF="{THISURL}?QUERY={?QUERY}&amp;WHICH_JOBS={?WHICH_JOBS}&amp;FIRST={FIRST}&amp;ORDER={ORDER=dec?asc:dec}">{ORDER=dec?<SMALL>&#x25b2;</SMALL> Очередь <SMALL>&#x25b2;</SMALL>:<SMALL>&#x25bc;</SMALL> Очередь <SMALL>&#x25bc;</SMALL>}</A></TH><TH>ОпиÑание</TH><TH>РаÑположение</TH><TH>Драйвер</TH><TH>СтатуÑ</TH></TR>
-</THEAD>
-<TBODY>
-{[printer_name]
-<TR><TD><A HREF="{printer_uri_supported}">{printer_name}</A></TD><TD>{printer_info}</TD><TD>{printer_location}</TD><TD>{printer_make_and_model}</TD><TD>{printer_state=3?Ð’ ожидании:{printer_state=4?Печатает:ПриоÑтановлен}}{printer_state_message?: {printer_state_message}:}</TD></TR>
-}
-</TBODY>
-</TABLE></DIV>}
diff --git a/templates/ru/restart.tmpl b/templates/ru/restart.tmpl
deleted file mode 100644
index 1b8132dd..00000000
--- a/templates/ru/restart.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Применение изменений параметров</H2>
-
-<P><IMG SRC="/images/wait.gif" WIDTH="16" HEIGHT="16" ALIGN="ABSMIDDLE"
-ALT="Ожидание">ДождитеÑÑŒ перезагрузки Ñервера...</P>
-
-</DIV>
diff --git a/templates/ru/samba-export.tmpl b/templates/ru/samba-export.tmpl
deleted file mode 100644
index 22a3acb1..00000000
--- a/templates/ru/samba-export.tmpl
+++ /dev/null
@@ -1,54 +0,0 @@
-<SCRIPT TYPE="text/javascript"><!--
-function select_printers() {
- var list = document.export_samba.EXPORT_NAME;
- var sel = document.export_samba.EXPORT_ALL.checked;
-
- for (i = 0; i < list.length; i ++) {
- list.options[i].selected = sel;
- }
-}
---></SCRIPT>
-
-<FORM METHOD="POST" ACTION="/admin/" NAME="export_samba">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="export-samba">
-
-<H2 CLASS="title">ЭкÑпорт принтеров в Samba</H2>
-
-{error?<P>Ðевозможно ÑкÑпортировать принтеры в Samba\:</P>
-<BLOCKQUOTE>{error}</BLOCKQUOTE>
-<P>ПоÑмотрите файл «<A HREF="/admin/log/error_log"
-TARGET="_blank">error_log</A>».</P>:
-<P>Эта Ñтраница позволÑет добавить принтеры в Samba так, чтобы
-клиенты Windows могли получить доÑтуп к ним через значок <VAR>Сетевое окружение</VAR> на их
-рабочем Ñтоле. Ð’Ñ‹ должны уÑтановить на Windows драйвер принтера PostScript
-как опиÑано на Ñтранице руководÑтва <A
-HREF="/help/man-cupsaddsmb.html"
-TARGET="_blank">cupsaddsmb(8)</A>.</P>}
-
-<TABLE>
-<TR>
-<TH CLASS="label">Принтеры:</TH>
-<TD>
-<SELECT NAME="EXPORT_NAME" SIZE="10" MULTIPLE>
-{[printer_name]<OPTION VALUE="{printer_name}"{export_all? SELECTED:{printer_export? SELECTED:}}>{printer_name}}
-</SELECT><BR>
-<INPUT TYPE="CHECKBOX" NAME="EXPORT_ALL"{export_all? CHECKED:}
-onChange="select_printers()"> ЭкÑпортировать вÑе принтеры
-</TD>
-</TR>
-<TR>
-<TH CLASS="label">Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Samba:</TH>
-<TD><INPUT TYPE="TEXT" NAME="USERNAME" VALUE="{?USERNAME}"> (обÑзательный параметр)</TD>
-</TR>
-<TR>
-<TH CLASS="label">Пароль Samba:</TH>
-<TD><INPUT TYPE="PASSWORD" NAME="PASSWORD" VALUE=""> (обÑзательный параметр)</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD><INPUT TYPE="SUBMIT" VALUE="ЭкÑпортировать принтеры в Samba"></TD>
-</TR>
-</TABLE>
-
-</FORM>
diff --git a/templates/ru/samba-exported.tmpl b/templates/ru/samba-exported.tmpl
deleted file mode 100644
index 179b2ad8..00000000
--- a/templates/ru/samba-exported.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-<P>Принтеры уÑпешно ÑкÑпортированы в Samba.</P>
diff --git a/templates/ru/search.tmpl b/templates/ru/search.tmpl
deleted file mode 100644
index 64266599..00000000
--- a/templates/ru/search.tmpl
+++ /dev/null
@@ -1,10 +0,0 @@
-<FORM ACTION="/{SECTION}/{?SEARCH_DEST}" METHOD="GET">
-{WHICH_JOBS?<INPUT TYPE="HIDDEN" NAME="WHICH_JOBS" VALUE="{WHICH_JOBS}">:}
-{ORDER?<INPUT TYPE="HIDDEN" NAME="ORDER" VALUE="{ORDER}">:}
-
-<P ALIGN="CENTER"><B>ПоиÑк
-{SEARCH_DEST?на {SEARCH_DEST}:{SECTION=classes?группы:{SECTION=jobs?заданиÑ:принтера}}}:</B>
-<INPUT TYPE="SEARCH" NAME="QUERY" VALUE="{?QUERY}" SIZE="40" PLACEHOLDER="" AUTOSAVE="org.cups.{SECTION}" RESULTS="20"> <INPUT
-TYPE="SUBMIT" VALUE="ПоиÑк"> <INPUT TYPE="SUBMIT" NAME="CLEAR" VALUE="ОчиÑтить"></P>
-
-</FORM>
diff --git a/templates/ru/set-printer-options-header.tmpl b/templates/ru/set-printer-options-header.tmpl
deleted file mode 100644
index e5c79dd4..00000000
--- a/templates/ru/set-printer-options-header.tmpl
+++ /dev/null
@@ -1,26 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">УÑтановить параметры по умолчанию Ð´Ð»Ñ {printer_name}</H2>
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{op}">
-{HAVE_AUTOCONFIGURE?<INPUT TYPE="SUBMIT" NAME="AUTOCONFIGURE" VALUE="Ð—Ð°Ð¿Ñ€Ð¾Ñ Ð¿Ñ€Ð¸Ð½Ñ‚ÐµÑ€Ð° Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð² по умолчанию">:}
-
-<SCRIPT TYPE="text/javascript"><!--
-function update_paramtable(option)
-{
- var cb = document.getElementById("select-" + option)
- var paramstable = document.getElementById(option + "-params");
- if (cb.value == "Custom")
- paramstable.style.display = "table";
- else
- paramstable.style.display = "none";
-}
---></SCRIPT>
-
-<H3 CLASS="title">{[group_id]
-<A HREF="#{group_id}">{group}</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</H3>
-
-<DIV CLASS="tabs">
diff --git a/templates/ru/set-printer-options-trailer.tmpl b/templates/ru/set-printer-options-trailer.tmpl
deleted file mode 100644
index 11adc701..00000000
--- a/templates/ru/set-printer-options-trailer.tmpl
+++ /dev/null
@@ -1,16 +0,0 @@
-</DIV>
-
-<SCRIPT TYPE="text/javascript"><!--
-// Hide custom options parameters for browsers that understand Javascript
-var paramtables = document.getElementsByName("paramtable");
-for (var i = 0; i < paramtables.length; i++)
-{
- var opt = paramtables[i].id.substr(0, paramtables[i].id.lastIndexOf("-"));
- var cb = document.getElementById("select-" + opt);
- if (cb.value != "Custom")
- paramtables[i].style.display = "none";
-}
---></SCRIPT>
-</FORM>
-
-</DIV>
diff --git a/templates/ru/subscription-added.tmpl b/templates/ru/subscription-added.tmpl
deleted file mode 100644
index 6727217b..00000000
--- a/templates/ru/subscription-added.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>ПодпиÑка «{subscription_name}» была уÑпешно добавлена.</P>
-
-</DIV>
diff --git a/templates/ru/subscription-canceled.tmpl b/templates/ru/subscription-canceled.tmpl
deleted file mode 100644
index 205f993e..00000000
--- a/templates/ru/subscription-canceled.tmpl
+++ /dev/null
@@ -1,5 +0,0 @@
-<DIV CLASS="indent">
-
-<P>ПодпиÑка «#{notify_subscription_id}» была отменена.</P>
-
-</DIV>
diff --git a/templates/ru/test-page.tmpl b/templates/ru/test-page.tmpl
deleted file mode 100644
index 7330b80f..00000000
--- a/templates/ru/test-page.tmpl
+++ /dev/null
@@ -1,8 +0,0 @@
-<DIV CLASS="indent">
-
-<H2 CLASS="title">Печать пробной Ñтраницы на {printer_name}</H2>
-
-<P>ÐŸÑ€Ð¾Ð±Ð½Ð°Ñ Ñтраница отправлена на печать. Ðомер Ð·Ð°Ð´Ð°Ð½Ð¸Ñ Â«<A HREF="/{SECTION}/{printer_name}">
-{printer_name}-{job_id}</A>».</P>
-
-</DIV>
diff --git a/templates/ru/trailer.tmpl b/templates/ru/trailer.tmpl
deleted file mode 100644
index b8bd4685..00000000
--- a/templates/ru/trailer.tmpl
+++ /dev/null
@@ -1,6 +0,0 @@
-</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR><TD CLASS="trailer">CUPS а также логотип CUPS ÑвлÑÑŽÑ‚ÑÑ Ð·Ð°Ñ€ÐµÐ³Ð¸Ñтрированными торговыми марками <A HREF="http://www.apple.com">Apple Inc.</A> ÐвторÑкие права на CUPS принадлежат (2007-2012) компании Apple Inc. Ð’Ñе права защищены.</TD></TR>
-</TABLE>
-</BODY>
-</HTML>
diff --git a/templates/ru/users.tmpl b/templates/ru/users.tmpl
deleted file mode 100644
index c5b35750..00000000
--- a/templates/ru/users.tmpl
+++ /dev/null
@@ -1,30 +0,0 @@
-<DIV CLASS="indent">
-
-<FORM METHOD="POST" ACTION="/admin">
-<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
-<INPUT TYPE="HIDDEN" NAME="OP" VALUE="{OP}">
-<INPUT TYPE="HIDDEN" NAME="PRINTER_NAME" VALUE="{printer_name}">
-{IS_CLASS?<INPUT TYPE="HIDDEN" NAME="IS_CLASS" VALUE="{IS_CLASS}">:}
-
-<H2 CLASS="title">ДоÑтуп пользователей на {printer_name}</H2>
-
-<TABLE>
-<TR>
-<TH CLASS="label">Пользователи:</TH>
-<TD>
-<INPUT TYPE='TEXT' NAME='users' SIZE='60' VALUE='{?requesting_user_name_allowed}{?requesting_user_name_denied}'>
-<BR>
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-allowed' {requesting_user_name_allowed?checked:}>Разрешить Ñтим пользователÑм печать
-<INPUT TYPE='RADIO' NAME='type' VALUE='requesting-user-name-denied' {requesting_user_name_denied?checked:}>Запретить Ñтим пользователÑм печать
-</TD>
-</TR>
-<TR>
-<TD></TD>
-<TD>
-<INPUT TYPE="SUBMIT" VALUE="Сохранить">
-</TD>
-</TR>
-</TABLE>
-
-</FORM>
-</DIV>
diff --git a/test/5.1-lpadmin.sh b/test/5.1-lpadmin.sh
index f1699616..545d7365 100644
--- a/test/5.1-lpadmin.sh
+++ b/test/5.1-lpadmin.sh
@@ -1,10 +1,10 @@
#!/bin/sh
#
-# "$Id: 5.1-lpadmin.sh 8266 2009-01-19 23:10:15Z mike $"
+# "$Id: 5.1-lpadmin.sh 10448 2012-05-04 18:34:39Z mike $"
#
# Test the lpadmin command.
#
-# Copyright 2007-2009 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2005 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -17,7 +17,7 @@
echo "Add Printer Test"
echo ""
echo " lpadmin -p Test3 -v file:/dev/null -E -m drv:///sample.drv/deskjet.ppd"
-../systemv/lpadmin -p Test3 -v file:/dev/null -E -m drv:///sample.drv/deskjet.ppd 2>&1
+$VALGRIND ../systemv/lpadmin -p Test3 -v file:/dev/null -E -m drv:///sample.drv/deskjet.ppd 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -29,7 +29,7 @@ echo ""
echo "Modify Printer Test"
echo ""
echo " lpadmin -p Test3 -v file:/tmp/Test3 -o PageSize=A4"
-../systemv/lpadmin -p Test3 -v file:/tmp/Test3 -o PageSize=A4 2>&1
+$VALGRIND ../systemv/lpadmin -p Test3 -v file:/tmp/Test3 -o PageSize=A4 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -41,7 +41,19 @@ echo ""
echo "Delete Printer Test"
echo ""
echo " lpadmin -x Test3"
-../systemv/lpadmin -x Test3 2>&1
+$VALGRIND ../systemv/lpadmin -x Test3 2>&1
+if test $? != 0; then
+ echo " FAILED"
+ exit 1
+else
+ echo " PASSED"
+fi
+echo ""
+
+echo "Add Shared Printer Test"
+echo ""
+echo " lpadmin -p Test3 -E -v ipp://localhost:8631/printers/Test2 -m raw"
+$VALGRIND ../systemv/lpadmin -p Test3 -E -v ipp://localhost:8631/printers/Test2 -m raw 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -51,5 +63,5 @@ fi
echo ""
#
-# End of "$Id: 5.1-lpadmin.sh 8266 2009-01-19 23:10:15Z mike $".
+# End of "$Id: 5.1-lpadmin.sh 10448 2012-05-04 18:34:39Z mike $".
#
diff --git a/test/5.2-lpc.sh b/test/5.2-lpc.sh
index b6908052..1079900b 100644
--- a/test/5.2-lpc.sh
+++ b/test/5.2-lpc.sh
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# "$Id: 5.2-lpc.sh 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: 5.2-lpc.sh 10097 2011-11-02 05:35:38Z mike $"
#
# Test the lpc command.
#
@@ -17,7 +17,7 @@
echo "LPC Test"
echo ""
echo " lpc status"
-../berkeley/lpc status 2>&1
+$VALGRIND ../berkeley/lpc status 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -27,5 +27,5 @@ fi
echo ""
#
-# End of "$Id: 5.2-lpc.sh 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: 5.2-lpc.sh 10097 2011-11-02 05:35:38Z mike $".
#
diff --git a/test/5.3-lpq.sh b/test/5.3-lpq.sh
index 05f66a99..24f2a24a 100644
--- a/test/5.3-lpq.sh
+++ b/test/5.3-lpq.sh
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# "$Id: 5.3-lpq.sh 8144 2008-11-19 19:23:12Z mike $"
+# "$Id: 5.3-lpq.sh 10097 2011-11-02 05:35:38Z mike $"
#
# Test the lpq command.
#
@@ -17,7 +17,7 @@
echo "LPQ Test"
echo ""
echo " lpq -P Test1"
-../berkeley/lpq -P Test1 2>&1
+$VALGRIND ../berkeley/lpq -P Test1 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -27,5 +27,5 @@ fi
echo ""
#
-# End of "$Id: 5.3-lpq.sh 8144 2008-11-19 19:23:12Z mike $".
+# End of "$Id: 5.3-lpq.sh 10097 2011-11-02 05:35:38Z mike $".
#
diff --git a/test/5.4-lpstat.sh b/test/5.4-lpstat.sh
index 31818919..3d5d956e 100644
--- a/test/5.4-lpstat.sh
+++ b/test/5.4-lpstat.sh
@@ -1,10 +1,10 @@
#!/bin/sh
#
-# "$Id: 5.4-lpstat.sh 8498 2009-04-13 17:03:15Z mike $"
+# "$Id: 5.4-lpstat.sh 10097 2011-11-02 05:35:38Z mike $"
#
# Test the lpstat command.
#
-# Copyright 2007-2009 by Apple Inc.
+# Copyright 2007-2011 by Apple Inc.
# Copyright 1997-2005 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -17,7 +17,7 @@
echo "LPSTAT Test"
echo ""
echo " lpstat -t"
-../systemv/lpstat -t 2>&1
+$VALGRIND ../systemv/lpstat -t 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -29,7 +29,7 @@ echo ""
echo "LPSTAT Test"
echo ""
echo " lpstat -H"
-server="`../systemv/lpstat -H 2>&1`"
+server="`$VALGRIND ../systemv/lpstat -H 2>&1`"
if test $? != 0 -o "x$server" != xlocalhost:8631; then
echo " FAILED ($server)"
exit 1
@@ -39,5 +39,5 @@ fi
echo ""
#
-# End of "$Id: 5.4-lpstat.sh 8498 2009-04-13 17:03:15Z mike $".
+# End of "$Id: 5.4-lpstat.sh 10097 2011-11-02 05:35:38Z mike $".
#
diff --git a/test/5.5-lp.sh b/test/5.5-lp.sh
index 942d11ba..c8834ca9 100644
--- a/test/5.5-lp.sh
+++ b/test/5.5-lp.sh
@@ -1,10 +1,10 @@
#!/bin/sh
#
-# "$Id: 5.5-lp.sh 10090 2011-10-25 22:39:56Z mike $"
+# "$Id: 5.5-lp.sh 10448 2012-05-04 18:34:39Z mike $"
#
# Test the lp command.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2005 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -17,7 +17,7 @@
echo "LP Default Test"
echo ""
echo " lp testfile.pdf"
-../systemv/lp testfile.pdf 2>&1
+$VALGRIND ../systemv/lp testfile.pdf 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -28,8 +28,8 @@ echo ""
echo "LP Destination Test"
echo ""
-echo " lp -d Test2 testfile.jpg"
-../systemv/lp -d Test2 testfile.jpg 2>&1
+echo " lp -d Test3 -o fit-to-page testfile.jpg"
+$VALGRIND ../systemv/lp -d Test3 -o fit-to-page testfile.jpg 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -41,7 +41,7 @@ echo ""
echo "LP Options Test"
echo ""
echo " lp -d Test1 -P 1-4 -o job-sheets=classified,classified testfile.pdf"
-../systemv/lp -d Test1 -P 1-4 -o job-sheets=classified,classified testfile.pdf 2>&1
+$VALGRIND ../systemv/lp -d Test1 -P 1-4 -o job-sheets=classified,classified testfile.pdf 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -58,12 +58,12 @@ i=0
while test $i -lt $1; do
j=1
while test $j -le $2; do
- ../systemv/lp -d test-$j testfile.jpg 2>&1
+ $VALGRIND ../systemv/lp -d test-$j testfile.jpg 2>&1
j=`expr $j + 1`
done
- ../systemv/lp -d Test1 testfile.jpg 2>&1 &
- ../systemv/lp -d Test2 testfile.jpg 2>&1 &
+ $VALGRIND ../systemv/lp -d Test1 testfile.jpg 2>&1 &
+ $VALGRIND ../systemv/lp -d Test2 testfile.jpg 2>&1 &
lppid=$!
i=`expr $i + 1`
@@ -80,5 +80,5 @@ echo ""
./waitjobs.sh
#
-# End of "$Id: 5.5-lp.sh 10090 2011-10-25 22:39:56Z mike $".
+# End of "$Id: 5.5-lp.sh 10448 2012-05-04 18:34:39Z mike $".
#
diff --git a/test/5.6-lpr.sh b/test/5.6-lpr.sh
index b49e5dc9..fa40b740 100644
--- a/test/5.6-lpr.sh
+++ b/test/5.6-lpr.sh
@@ -1,10 +1,10 @@
#!/bin/sh
#
-# "$Id: 5.6-lpr.sh 10090 2011-10-25 22:39:56Z mike $"
+# "$Id: 5.6-lpr.sh 10448 2012-05-04 18:34:39Z mike $"
#
# Test the lpr command.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2005 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -17,7 +17,7 @@
echo "LPR Default Test"
echo ""
echo " lpr testfile.pdf"
-../berkeley/lpr testfile.pdf 2>&1
+$VALGRIND ../berkeley/lpr testfile.pdf 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -28,8 +28,8 @@ echo ""
echo "LPR Destination Test"
echo ""
-echo " lpr -P Test2 testfile.jpg"
-../berkeley/lpr -P Test2 testfile.jpg 2>&1
+echo " lpr -P Test3 -o fit-to-page testfile.jpg"
+$VALGRIND ../berkeley/lpr -P Test3 -o fit-to-page testfile.jpg 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -41,7 +41,7 @@ echo ""
echo "LPR Options Test"
echo ""
echo " lpr -P Test1 -o number-up=4 -o job-sheets=standard,none testfile.pdf"
-../berkeley/lpr -P Test1 -o number-up=4 -o job-sheets=standard,none testfile.pdf 2>&1
+$VALGRIND ../berkeley/lpr -P Test1 -o number-up=4 -o job-sheets=standard,none testfile.pdf 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -58,12 +58,12 @@ i=0
while test $i -lt $1; do
j=1
while test $j -le $2; do
- ../berkeley/lpr -P test-$j testfile.jpg 2>&1
+ $VALGRIND ../berkeley/lpr -P test-$j testfile.jpg 2>&1
j=`expr $j + 1`
done
- ../berkeley/lpr -P Test1 testfile.jpg 2>&1 &
- ../berkeley/lpr -P Test2 testfile.jpg 2>&1 &
+ $VALGRIND ../berkeley/lpr -P Test1 testfile.jpg 2>&1 &
+ $VALGRIND ../berkeley/lpr -P Test2 testfile.jpg 2>&1 &
lprpid=$!
i=`expr $i + 1`
@@ -80,5 +80,5 @@ echo ""
./waitjobs.sh
#
-# End of "$Id: 5.6-lpr.sh 10090 2011-10-25 22:39:56Z mike $".
+# End of "$Id: 5.6-lpr.sh 10448 2012-05-04 18:34:39Z mike $".
#
diff --git a/test/5.7-lprm.sh b/test/5.7-lprm.sh
index bcb72116..acaaca99 100644
--- a/test/5.7-lprm.sh
+++ b/test/5.7-lprm.sh
@@ -1,10 +1,10 @@
#!/bin/sh
#
-# "$Id: 5.7-lprm.sh 7409 2008-03-29 00:26:03Z mike $"
+# "$Id: 5.7-lprm.sh 10097 2011-11-02 05:35:38Z mike $"
#
# Test the lprm command.
#
-# Copyright 2007 by Apple Inc.
+# Copyright 2007-2011 by Apple Inc.
# Copyright 1997-2005 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -17,9 +17,9 @@
echo "LPRM Current Test"
echo ""
echo " lpr -o job-hold-until=indefinite testfile.jpg"
-../berkeley/lpr -o job-hold-until=indefinite testfile.jpg 2>&1
+$VALGRIND ../berkeley/lpr -o job-hold-until=indefinite testfile.jpg 2>&1
echo " lprm"
-../berkeley/lprm 2>&1
+$VALGRIND ../berkeley/lprm 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -31,9 +31,9 @@ echo ""
echo "LPRM Destination Test"
echo ""
echo " lpr -P Test1 -o job-hold-until=indefinite testfile.jpg"
-../berkeley/lpr -P Test1 -o job-hold-until=indefinite testfile.jpg 2>&1
+$VALGRIND ../berkeley/lpr -P Test1 -o job-hold-until=indefinite testfile.jpg 2>&1
echo " lprm Test1"
-../berkeley/lprm Test1 2>&1
+$VALGRIND ../berkeley/lprm Test1 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -43,5 +43,5 @@ fi
echo ""
#
-# End of "$Id: 5.7-lprm.sh 7409 2008-03-29 00:26:03Z mike $".
+# End of "$Id: 5.7-lprm.sh 10097 2011-11-02 05:35:38Z mike $".
#
diff --git a/test/5.8-cancel.sh b/test/5.8-cancel.sh
index 7cf31b0d..4b4a08d1 100644
--- a/test/5.8-cancel.sh
+++ b/test/5.8-cancel.sh
@@ -1,10 +1,10 @@
#!/bin/sh
#
-# "$Id: 5.8-cancel.sh 7409 2008-03-29 00:26:03Z mike $"
+# "$Id: 5.8-cancel.sh 10097 2011-11-02 05:35:38Z mike $"
#
# Test the cancel command.
#
-# Copyright 2007-2008 by Apple Inc.
+# Copyright 2007-2011 by Apple Inc.
# Copyright 1997-2006 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -17,9 +17,9 @@
echo "Cancel Destination Test"
echo ""
echo " lp -d Test1 -o job-hold-until=indefinite testfile.jpg"
-../systemv/lp -d Test1 -o job-hold-until=indefinite testfile.jpg 2>&1
+$VALGRIND ../systemv/lp -d Test1 -o job-hold-until=indefinite testfile.jpg 2>&1
echo " cancel Test1"
-../systemv/cancel Test1 2>&1
+$VALGRIND ../systemv/cancel Test1 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -31,7 +31,7 @@ echo ""
echo "Cancel All Test"
echo ""
echo " cancel -a"
-../systemv/cancel -a 2>&1
+$VALGRIND ../systemv/cancel -a 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -41,5 +41,5 @@ fi
echo ""
#
-# End of "$Id: 5.8-cancel.sh 7409 2008-03-29 00:26:03Z mike $".
+# End of "$Id: 5.8-cancel.sh 10097 2011-11-02 05:35:38Z mike $".
#
diff --git a/test/5.9-lpinfo.sh b/test/5.9-lpinfo.sh
index 1902aeb9..3ecaf254 100644
--- a/test/5.9-lpinfo.sh
+++ b/test/5.9-lpinfo.sh
@@ -1,10 +1,10 @@
#!/bin/sh
#
-# "$Id: 5.9-lpinfo.sh 7711 2008-07-02 04:39:27Z mike $"
+# "$Id: 5.9-lpinfo.sh 10097 2011-11-02 05:35:38Z mike $"
#
# Test the lpinfo command.
#
-# Copyright 2007-2008 by Apple Inc.
+# Copyright 2007-2011 by Apple Inc.
# Copyright 1997-2005 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -17,7 +17,7 @@
echo "LPINFO Devices Test"
echo ""
echo " lpinfo -v"
-../systemv/lpinfo -v 2>&1
+$VALGRIND ../systemv/lpinfo -v 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -29,7 +29,7 @@ echo ""
echo "LPINFO Drivers Test"
echo ""
echo " lpinfo -m"
-../systemv/lpinfo -m 2>&1
+$VALGRIND ../systemv/lpinfo -m 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -41,7 +41,7 @@ echo ""
echo "LPINFO Drivers Test"
echo ""
echo " lpinfo -m | grep -q sample.drv"
-../systemv/lpinfo -m | grep -q sample.drv 2>&1
+$VALGRIND ../systemv/lpinfo -m | grep -q sample.drv 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -51,5 +51,5 @@ fi
echo ""
#
-# End of "$Id: 5.9-lpinfo.sh 7711 2008-07-02 04:39:27Z mike $".
+# End of "$Id: 5.9-lpinfo.sh 10097 2011-11-02 05:35:38Z mike $".
#
diff --git a/test/Dependencies b/test/Dependencies
index 32891447..69b96a6f 100644
--- a/test/Dependencies
+++ b/test/Dependencies
@@ -1,20 +1,18 @@
-# DO NOT DELETE THIS LINE -- make depend depends on it.
-
-ippserver.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ippserver.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h
-ippserver.o: ../cups/array.h ../cups/language.h ../cups/string-private.h
-ippserver.o: ../config.h ../cups/debug-private.h ../cups/versioning.h
-ippserver.o: ../cups/ppd-private.h ../cups/ppd.h ../cups/cups.h
-ippserver.o: ../cups/pwg-private.h ../cups/http-private.h ../cups/http.h
-ippserver.o: ../cups/md5-private.h ../cups/ipp-private.h ../cups/ipp.h
-ippserver.o: ../cups/language-private.h ../cups/transcode.h
-ippserver.o: ../cups/thread-private.h
-ipptool.o: ../cups/cups-private.h ../cups/cups.h ../cups/file.h
-ipptool.o: ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h
-ipptool.o: ../cups/language.h ../cups/string-private.h ../config.h
-ipptool.o: ../cups/debug-private.h ../cups/versioning.h ../cups/ppd-private.h
-ipptool.o: ../cups/ppd.h ../cups/cups.h ../cups/pwg-private.h
-ipptool.o: ../cups/http-private.h ../cups/http.h ../cups/md5-private.h
-ipptool.o: ../cups/ipp-private.h ../cups/ipp.h ../cups/language-private.h
-ipptool.o: ../cups/transcode.h ../cups/thread-private.h
-ipptool.o: ../cups/file-private.h ../cups/cups-private.h
+ippserver.o: ippserver.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h
+ipptool.o: ipptool.c ../cups/cups-private.h ../cups/string-private.h \
+ ../config.h ../cups/debug-private.h ../cups/versioning.h \
+ ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/http-private.h ../cups/md5-private.h \
+ ../cups/language-private.h ../cups/transcode.h ../cups/language.h \
+ ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \
+ ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \
+ ../cups/file-private.h
+xmltotest.o: xmltotest.c ../config.h ../cups/cups.h ../cups/file.h \
+ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \
+ ../cups/language.h
diff --git a/test/Makefile b/test/Makefile
index 0acc0b4c..e6a5ec1d 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -1,9 +1,9 @@
#
-# "$Id: Makefile 10317 2012-03-01 00:05:55Z mike $"
+# "$Id: Makefile 10456 2012-05-07 22:41:42Z mike $"
#
# IPP test makefile for CUPS.
#
-# Copyright 2007-2010 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2006 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -32,6 +32,7 @@ DATAFILES = \
onepage-letter.pdf \
onepage-letter.ps \
testfile.jpg \
+ testfile.pcl \
testfile.pdf \
testfile.ps \
testfile.txt
@@ -46,7 +47,8 @@ TESTFILES = \
ipp-2.2.test
OBJS = \
ippserver.o \
- ipptool.o
+ ipptool.o \
+ xmltotest.o
TARGETS = \
ippserver \
ipptool \
@@ -87,7 +89,7 @@ clean:
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
@@ -194,6 +196,17 @@ ipptool-static: ipptool.o ../cups/$(LIBCUPSSTATIC)
#
+# xmltotest
+#
+
+xmltotest: xmltotest.o ../cups/$(LIBUPSSTATIC)
+ echo Linking $@...
+ $(CC) $(LDFLAGS) -o $@ xmltotest.o ../cups/$(LIBCUPSSTATIC) \
+ $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) \
+ $(LIBMXML)
+
+
+#
# Dependencies...
#
@@ -201,5 +214,5 @@ include Dependencies
#
-# End of "$Id: Makefile 10317 2012-03-01 00:05:55Z mike $".
+# End of "$Id: Makefile 10456 2012-05-07 22:41:42Z mike $".
#
diff --git a/test/cancel-current-job.test b/test/cancel-current-job.test
new file mode 100644
index 00000000..cb37f220
--- /dev/null
+++ b/test/cancel-current-job.test
@@ -0,0 +1,65 @@
+#
+# "$Id: get-jobs.test 9702 2011-04-20 21:16:08Z mike $"
+#
+# Cancel the currently printing job.
+#
+# Copyright 2007-2012 by Apple Inc.
+# Copyright 2001-2006 by Easy Software Products. All rights reserved.
+#
+# These coded instructions, statements, and computer programs are the
+# property of Apple Inc. and are protected by Federal copyright
+# law. Distribution and use rights are outlined in the file "LICENSE.txt"
+# which should have been included with this file. If this file is
+# file is missing or damaged, see the license at "http://www.cups.org/".
+#
+# Usage:
+#
+# ./ipptool printer-uri cancel-current-jobs.test
+#
+
+
+{
+ # The name of the test...
+ NAME "Get current job"
+
+ # The operation to use
+ OPERATION Get-Jobs
+
+ # Attributes, starting in the operation group...
+ GROUP operation-attributes-tag
+ ATTR charset attributes-charset utf-8
+ ATTR language attributes-natural-language en
+ ATTR uri printer-uri $uri
+ ATTR integer limit 1
+ ATTR name requesting-user-name $user
+ ATTR keyword requested-attributes job-id,job-state
+
+ # What statuses are OK?
+ STATUS successful-ok
+
+ EXPECT job-id OF-TYPE integer COUNT 1
+
+ # What attributes to display
+ DISPLAY job-id
+ DISPLAY job-state
+}
+
+{
+ SKIP-IF-NOT-DEFINED job-id
+ NAME "Cancel current job"
+ OPERATION Cancel-Job
+ GROUP operation-attributes-tag
+ ATTR charset attributes-charset utf-8
+ ATTR language attributes-natural-language en
+ ATTR uri printer-uri $uri
+ ATTR integer job-id $job-id
+ ATTR name requesting-user-name $user
+
+ # What statuses are OK?
+ STATUS successful-ok
+}
+
+
+#
+# End of "$Id: get-jobs.test 9702 2011-04-20 21:16:08Z mike $".
+#
diff --git a/test/document-a4.ps b/test/document-a4.ps
index e3db4b99..a9794591 100644
--- a/test/document-a4.ps
+++ b/test/document-a4.ps
@@ -1,7 +1,7 @@
%!PS-Adobe-3.0
%XpdfVersion: 3.03
%%Creator: Scribus 1.4.0.rc5
-%%Title:
+%%Title:
%%LanguageLevel: 3
%%DocumentSuppliedResources: (atend)
%%DocumentMedia: plain 595 842 0 () ()
diff --git a/test/document-letter.ps b/test/document-letter.ps
index 29b15856..7f627f43 100644
--- a/test/document-letter.ps
+++ b/test/document-letter.ps
@@ -1,7 +1,7 @@
%!PS-Adobe-3.0
%XpdfVersion: 3.03
%%Creator: Scribus 1.4.0.rc5
-%%Title:
+%%Title:
%%LanguageLevel: 3
%%DocumentSuppliedResources: (atend)
%%DocumentMedia: plain 612 792 0 () ()
diff --git a/test/get-completed-jobs.test b/test/get-completed-jobs.test
index 7b5696c4..07311364 100644
--- a/test/get-completed-jobs.test
+++ b/test/get-completed-jobs.test
@@ -1,9 +1,9 @@
#
-# "$Id: get-completed-jobs.test 9086 2010-04-07 18:46:04Z mike $"
+# "$Id: get-completed-jobs.test 10286 2012-02-15 05:04:50Z mike $"
#
# Get list of completed jobs.
#
-# Copyright 2007-2010 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 2001-2006 by Easy Software Products. All rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -32,7 +32,7 @@
ATTR uri printer-uri $uri
ATTR keyword which-jobs completed
ATTR keyword requested-attributes
- job-id,job-state,job-name,job-originating-user-name,job-media-sheets-completed
+ job-id,job-state,job-state-reasons,job-name,job-originating-user-name,job-media-sheets-completed
# What statuses are OK?
STATUS successful-ok
@@ -47,5 +47,5 @@
#
-# End of "$Id: get-completed-jobs.test 9086 2010-04-07 18:46:04Z mike $".
+# End of "$Id: get-completed-jobs.test 10286 2012-02-15 05:04:50Z mike $".
#
diff --git a/test/get-jobs.test b/test/get-jobs.test
index c7a07f6e..7c2353b5 100644
--- a/test/get-jobs.test
+++ b/test/get-jobs.test
@@ -1,5 +1,5 @@
#
-# "$Id: get-jobs.test 10233 2012-02-06 18:55:39Z mike $"
+# "$Id: get-jobs.test 10286 2012-02-15 05:04:50Z mike $"
#
# Get list of not-completed jobs.
#
@@ -31,8 +31,7 @@
ATTR language attributes-natural-language en
ATTR uri printer-uri $uri
ATTR keyword requested-attributes
- job-id,job-state,job-name,job-originating-user-name,job-media-sheets,job-media-sheets-completed,job-impressions,job-impressions-completed
- ATTR name requesting-user-name $user
+ job-id,job-state,job-state-reasons,job-name,job-originating-user-name,job-media-sheets,job-media-sheets-completed,job-impressions,job-impressions-completed
# What statuses are OK?
STATUS successful-ok
@@ -50,5 +49,5 @@
#
-# End of "$Id: get-jobs.test 10233 2012-02-06 18:55:39Z mike $".
+# End of "$Id: get-jobs.test 10286 2012-02-15 05:04:50Z mike $".
#
diff --git a/test/ipp-1.1.test b/test/ipp-1.1.test
index c9444a41..e89a275e 100644
--- a/test/ipp-1.1.test
+++ b/test/ipp-1.1.test
@@ -1,9 +1,9 @@
#
-# "$Id: ipp-1.1.test 10058 2011-10-05 15:03:34Z mike $"
+# "$Id: ipp-1.1.test 10461 2012-05-11 23:01:21Z mike $"
#
# IPP/1.1 test suite.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 2001-2006 by Easy Software Products. All rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -15,6 +15,9 @@
# Usage:
#
# ./ipptool -f filename [-d document-uri=SOMEURI] -t printer-uri ipp-1.1.test
+# ./ipptool -f filename -d NOPRINT=1 -t printer-uri ipp-1.1.test
+#
+# The latter form disables all but the basic file printing.
#
# Regular expressions for URI schemes:
@@ -95,7 +98,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR uri printer-uri $uri
STATUS successful-ok
- EXPECT printer-uri-supported OF-TYPE uri WITH-VALUE "$IPP_URI_SCHEME"
+ EXPECT printer-uri-supported OF-TYPE uri WITH-ALL-VALUES "$IPP_URI_SCHEME"
}
@@ -153,7 +156,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS client-error-document-format-not-supported
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -325,7 +328,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
EXPECT printer-state OF-TYPE enum IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE 3,4,5
EXPECT printer-state-reasons OF-TYPE keyword IN-GROUP printer-attributes-tag
EXPECT printer-up-time OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >0
- EXPECT printer-uri-supported OF-TYPE uri IN-GROUP printer-attributes-tag SAME-COUNT-AS uri-security-supported WITH-VALUE "$IPP_URI_SCHEME"
+ EXPECT printer-uri-supported OF-TYPE uri IN-GROUP printer-attributes-tag SAME-COUNT-AS uri-security-supported WITH-ALL-VALUES "$IPP_URI_SCHEME"
EXPECT queued-job-count OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1
EXPECT uri-authentication-supported OF-TYPE keyword IN-GROUP printer-attributes-tag
EXPECT uri-security-supported OF-TYPE keyword IN-GROUP printer-attributes-tag SAME-COUNT-AS uri-authentication-supported
@@ -348,7 +351,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
- EXPECT printer-uri-supported OF-TYPE uri IN-GROUP printer-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
+ EXPECT printer-uri-supported OF-TYPE uri IN-GROUP printer-attributes-tag WITH-ALL-VALUES "$IPP_URI_SCHEME"
EXPECT !printer-name
}
@@ -668,7 +671,8 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR name requesting-user-name $user
STATUS successful-ok
- EXPECT job-state OF-TYPE unknown|enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >6,<10 REPEAT-NO-MATCH
+ EXPECT job-state OF-TYPE unknown|enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >6 REPEAT-NO-MATCH REPEAT-LIMIT 30
+ DISPLAY job-state
}
@@ -829,7 +833,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS client-error-document-format-not-supported
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -941,7 +945,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1258,7 +1262,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS client-error-document-format-not-supported
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1274,6 +1278,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
# Test PDF output
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_PDF
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
@@ -1295,7 +1300,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1309,6 +1314,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_PDF
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX
@@ -1332,7 +1338,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1346,6 +1352,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_PDF
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
@@ -1367,7 +1374,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1381,6 +1388,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_PDF
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX
@@ -1404,7 +1412,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1420,6 +1428,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
# Test PostScript output
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
@@ -1441,7 +1450,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1455,6 +1464,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX
@@ -1478,7 +1488,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1492,6 +1502,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
@@ -1513,7 +1524,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1527,6 +1538,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX
@@ -1550,7 +1562,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1566,6 +1578,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
# Test JPEG output
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
@@ -1587,7 +1600,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1601,6 +1614,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
@@ -1622,7 +1636,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1636,6 +1650,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA
@@ -1657,7 +1672,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1671,6 +1686,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
@@ -1692,7 +1708,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1706,6 +1722,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
@@ -1727,7 +1744,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1741,6 +1758,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA
@@ -1762,7 +1780,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1778,6 +1796,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
# Print-Job with job-sheets
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_PDF
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET
@@ -1801,7 +1820,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1815,6 +1834,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_PDF
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET
@@ -1838,7 +1858,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1852,6 +1872,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET
@@ -1875,7 +1896,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1889,6 +1910,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET
@@ -1912,7 +1934,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1928,6 +1950,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
# Test number-up output
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_PDF
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_2UP
@@ -1939,7 +1962,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR naturalLanguage attributes-natural-language en
ATTR uri printer-uri $uri
ATTR name requesting-user-name $user
- ATTR name job-name "A4 Test Document, 2-Up"
+ ATTR name job-name "A4 Test Document; 2-Up"
ATTR boolean ipp-attribute-fidelity false
ATTR name document-name document-a4.pdf
ATTR keyword compression none
@@ -1951,7 +1974,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -1965,6 +1988,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_PDF
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_2UP
@@ -1976,7 +2000,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR naturalLanguage attributes-natural-language en
ATTR uri printer-uri $uri
ATTR name requesting-user-name $user
- ATTR name job-name "US Letter Test Document, 2-Up"
+ ATTR name job-name "US Letter Test Document; 2-Up"
ATTR boolean ipp-attribute-fidelity false
ATTR name document-name document-letter.pdf
ATTR keyword compression none
@@ -1988,7 +2012,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -2002,6 +2026,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_2UP
@@ -2013,7 +2038,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR naturalLanguage attributes-natural-language en
ATTR uri printer-uri $uri
ATTR name requesting-user-name $user
- ATTR name job-name "A4 Test Document, 2-Up"
+ ATTR name job-name "A4 Test Document; 2-Up"
ATTR boolean ipp-attribute-fidelity false
ATTR name document-name document-a4.ps
ATTR keyword compression none
@@ -2025,7 +2050,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -2039,6 +2064,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_2UP
@@ -2050,7 +2076,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR naturalLanguage attributes-natural-language en
ATTR uri printer-uri $uri
ATTR name requesting-user-name $user
- ATTR name job-name "US Letter Test Document, 2-Up"
+ ATTR name job-name "US Letter Test Document; 2-Up"
ATTR boolean ipp-attribute-fidelity false
ATTR name document-name document-letter.ps
ATTR keyword compression none
@@ -2062,7 +2088,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -2078,6 +2104,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
# Test output with print-quality...
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_DRAFT_QUALITY
@@ -2089,7 +2116,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR naturalLanguage attributes-natural-language en
ATTR uri printer-uri $uri
ATTR name requesting-user-name $user
- ATTR name job-name "4x6 Color JPEG, Draft Quality"
+ ATTR name job-name "4x6 Color JPEG; Draft Quality"
ATTR boolean ipp-attribute-fidelity false
ATTR name document-name color.jpg
ATTR keyword compression none
@@ -2101,7 +2128,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -2115,6 +2142,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_NORMAL_QUALITY
@@ -2126,7 +2154,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR naturalLanguage attributes-natural-language en
ATTR uri printer-uri $uri
ATTR name requesting-user-name $user
- ATTR name job-name "4x6 Color JPEG, Normal Quality"
+ ATTR name job-name "4x6 Color JPEG; Normal Quality"
ATTR boolean ipp-attribute-fidelity false
ATTR name document-name color.jpg
ATTR keyword compression none
@@ -2138,7 +2166,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -2152,6 +2180,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_HIGH_QUALITY
@@ -2163,7 +2192,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR naturalLanguage attributes-natural-language en
ATTR uri printer-uri $uri
ATTR name requesting-user-name $user
- ATTR name job-name "4x6 Color JPEG, High Quality"
+ ATTR name job-name "4x6 Color JPEG; High Quality"
ATTR boolean ipp-attribute-fidelity false
ATTR name document-name color.jpg
ATTR keyword compression none
@@ -2175,7 +2204,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -2189,6 +2218,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_PDF
SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_DRAFT_QUALITY
@@ -2200,7 +2230,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR naturalLanguage attributes-natural-language en
ATTR uri printer-uri $uri
ATTR name requesting-user-name $user
- ATTR name job-name "A4 Test Document, 2-Up"
+ ATTR name job-name "A4 Test Document; 2-Up"
ATTR boolean ipp-attribute-fidelity false
ATTR name document-name document-a4.pdf
ATTR keyword compression none
@@ -2212,7 +2242,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -2226,6 +2256,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
}
{
+ SKIP-IF-DEFINED NOPRINT
SKIP-IF-NOT-DEFINED OPTIONAL_PDF
SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
SKIP-IF-NOT-DEFINED OPTIONAL_DRAFT_QUALITY
@@ -2237,7 +2268,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
ATTR naturalLanguage attributes-natural-language en
ATTR uri printer-uri $uri
ATTR name requesting-user-name $user
- ATTR name job-name "US Letter Test Document, 2-Up"
+ ATTR name job-name "US Letter Test Document; 2-Up"
ATTR boolean ipp-attribute-fidelity false
ATTR name document-name document-letter.pdf
ATTR keyword compression none
@@ -2249,7 +2280,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -2284,7 +2315,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
@@ -2315,5 +2346,5 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
#
-# End of "$Id: ipp-1.1.test 10058 2011-10-05 15:03:34Z mike $".
+# End of "$Id: ipp-1.1.test 10461 2012-05-11 23:01:21Z mike $".
#
diff --git a/test/ipp-2.0.test b/test/ipp-2.0.test
index 441796a7..cb7fb66f 100644
--- a/test/ipp-2.0.test
+++ b/test/ipp-2.0.test
@@ -1,9 +1,9 @@
#
-# "$Id: ipp-2.0.test 10046 2011-10-03 21:14:02Z mike $"
+# "$Id: ipp-2.0.test 10314 2012-02-29 04:27:56Z mike $"
#
# IPP/2.0 test suite.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 2001-2006 by Easy Software Products. All rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -24,7 +24,7 @@ INCLUDE "ipp-1.1.test"
# Regular expression for PWG media size names (eek!)
-DEFINE MEDIA_REGEX "/^((custom|na|asme|roc|oe)_[a-z0-9][-a-z0-9]*_([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])x([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])in|(custom|iso|jis|jpn|prc|om)_[a-z0-9][-a-z0-9]*_([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])x([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])mm)$$/"
+DEFINE MEDIA_REGEX "/^(choice(_((custom|na|asme|roc|oe|roll)_[a-z0-9][-a-z0-9]*_([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])x([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])in|(custom|iso|jis|jpn|prc|om|roll)_[a-z0-9][-a-z0-9]*_([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])x([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])mm)){2,}|(custom|na|asme|roc|oe|roll)_[a-z0-9][-a-z0-9]*_([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])x([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])in|(custom|iso|jis|jpn|prc|om|roll)_[a-z0-9][-a-z0-9]*_([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])x([1-9][0-9]*(\.[0-9]*[1-9])?|0\.[0-9]*[1-9])mm)$$/"
# Test required printer description attribute support.
@@ -50,10 +50,10 @@ DEFINE MEDIA_REGEX "/^((custom|na|asme|roc|oe)_[a-z0-9][-a-z0-9]*_([1-9][0-9]*(\
EXPECT copies-supported OF-TYPE rangeOfInteger IN-GROUP printer-attributes-tag
EXPECT finishings-default OF-TYPE enum IN-GROUP printer-attributes-tag
EXPECT finishings-supported OF-TYPE enum IN-GROUP printer-attributes-tag WITH-VALUE 3
- EXPECT media-default OF-TYPE no-value|keyword|name IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "no-value,$MEDIA_REGEX"
- EXPECT ?media-ready OF-TYPE keyword|name IN-GROUP printer-attributes-tag WITH-VALUE "$MEDIA_REGEX"
- EXPECT media-supported OF-TYPE keyword|name IN-GROUP printer-attributes-tag WITH-VALUE "$MEDIA_REGEX"
- EXPECT orientation-requested-default OF-TYPE no-value|enum IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE no-value,3,4,5,6
+ EXPECT media-default OF-TYPE no-value|keyword|name IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "$MEDIA_REGEX"
+ EXPECT ?media-ready OF-TYPE keyword|name IN-GROUP printer-attributes-tag WITH-ALL-VALUES "$MEDIA_REGEX"
+ EXPECT media-supported OF-TYPE keyword|name IN-GROUP printer-attributes-tag WITH-ALL-VALUES "$MEDIA_REGEX"
+ EXPECT orientation-requested-default OF-TYPE no-value|enum IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE 3,4,5,6
EXPECT orientation-requested-supported OF-TYPE enum IN-GROUP printer-attributes-tag WITH-VALUE 3,4,5,6
EXPECT output-bin-default OF-TYPE keyword|name IN-GROUP printer-attributes-tag COUNT 1
EXPECT output-bin-supported OF-TYPE keyword|name IN-GROUP printer-attributes-tag
@@ -61,8 +61,8 @@ DEFINE MEDIA_REGEX "/^((custom|na|asme|roc|oe)_[a-z0-9][-a-z0-9]*_([1-9][0-9]*(\
EXPECT print-quality-supported OF-TYPE enum IN-GROUP printer-attributes-tag WITH-VALUE 3,4,5
EXPECT printer-resolution-default OF-TYPE resolution IN-GROUP printer-attributes-tag COUNT 1
EXPECT printer-resolution-supported OF-TYPE resolution IN-GROUP printer-attributes-tag
- EXPECT sides-default OF-TYPE keyword IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^(one-sided|two-sided-long-edge|two-sided-short-edge)$$/"
- EXPECT sides-supported OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-VALUE "/^(one-sided|two-sided-long-edge|two-sided-short-edge)$$/"
+ EXPECT sides-default OF-TYPE keyword IN-GROUP printer-attributes-tag COUNT 1 WITH-ALL-VALUES "/^(one-sided|two-sided-long-edge|two-sided-short-edge)$$/"
+ EXPECT sides-supported OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-ALL-VALUES "/^(one-sided|two-sided-long-edge|two-sided-short-edge)$$/"
# Optional media-col support
EXPECT ?media-col-default OF-TYPE collection IN-GROUP printer-attributes-tag COUNT 1
@@ -111,5 +111,5 @@ DEFINE MEDIA_REGEX "/^((custom|na|asme|roc|oe)_[a-z0-9][-a-z0-9]*_([1-9][0-9]*(\
#
-# End of "$Id: ipp-2.0.test 10046 2011-10-03 21:14:02Z mike $".
+# End of "$Id: ipp-2.0.test 10314 2012-02-29 04:27:56Z mike $".
#
diff --git a/test/ipp-2.1.test b/test/ipp-2.1.test
index 87a86e4e..738aefab 100644
--- a/test/ipp-2.1.test
+++ b/test/ipp-2.1.test
@@ -1,5 +1,5 @@
#
-# "$Id: ipp-2.1.test 10011 2011-09-21 06:01:35Z mike $"
+# "$Id: ipp-2.1.test 10010 2011-09-21 06:01:12Z mike $"
#
# IPP/2.1 test suite.
#
@@ -92,5 +92,5 @@ INCLUDE "ipp-2.0.test"
#
-# End of "$Id: ipp-2.1.test 10011 2011-09-21 06:01:35Z mike $".
+# End of "$Id: ipp-2.1.test 10010 2011-09-21 06:01:12Z mike $".
#
diff --git a/test/ipp-2.2.test b/test/ipp-2.2.test
index 3042ec24..1586dc17 100644
--- a/test/ipp-2.2.test
+++ b/test/ipp-2.2.test
@@ -1,5 +1,5 @@
#
-# "$Id$"
+# "$Id: ipp-2.2.test 10029 2011-09-29 23:49:56Z mike $"
#
# IPP/2.2 test suite.
#
@@ -82,5 +82,5 @@ INCLUDE "ipp-2.1.test"
#
-# End of "$Id$".
+# End of "$Id: ipp-2.2.test 10029 2011-09-29 23:49:56Z mike $".
#
diff --git a/test/ippserver.c b/test/ippserver.c
index 23880a14..ef084e37 100644
--- a/test/ippserver.c
+++ b/test/ippserver.c
@@ -1,9 +1,9 @@
/*
- * "$Id: ippserver.c 10031 2011-09-30 05:24:10Z mike $"
+ * "$Id: ippserver.c 10165 2012-01-06 20:42:45Z mike $"
*
* Sample IPP/2.0 server for CUPS.
*
- * Copyright 2010-2011 by Apple Inc.
+ * Copyright 2010-2012 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -18,7 +18,6 @@
* main() - Main entry to the sample server.
* clean_jobs() - Clean out old (completed) jobs.
* compare_jobs() - Compare two jobs.
- * copy_attribute() - Copy a single attribute.
* copy_attributes() - Copy attributes from one request to
* another.
* copy_job_attrs() - Copy job attributes to the response.
@@ -254,8 +253,6 @@ typedef struct _ipp_client_s /**** Client data ****/
static void clean_jobs(_ipp_printer_t *printer);
static int compare_jobs(_ipp_job_t *a, _ipp_job_t *b);
-static ipp_attribute_t *copy_attribute(ipp_t *to, ipp_attribute_t *attr,
- ipp_tag_t group_tag, int quickcopy);
static void copy_attributes(ipp_t *to, ipp_t *from, cups_array_t *ra,
ipp_tag_t group_tag, int quickcopy);
static void copy_job_attributes(_ipp_client_t *client,
@@ -577,191 +574,6 @@ compare_jobs(_ipp_job_t *a, /* I - First job */
/*
- * 'copy_attribute()' - Copy a single attribute.
- */
-
-static ipp_attribute_t * /* O - New attribute */
-copy_attribute(
- ipp_t *to, /* O - Destination request/response */
- ipp_attribute_t *attr, /* I - Attribute to copy */
- ipp_tag_t group_tag, /* I - Group to put the copy in */
- int quickcopy) /* I - Do a quick copy? */
-{
- int i; /* Looping var */
- ipp_attribute_t *toattr; /* Destination attribute */
-
-
- if (Verbosity && attr->name)
- {
- char buffer[2048]; /* Attribute value */
-
- _ippAttrString(attr, buffer, sizeof(buffer));
-
- fprintf(stderr, "Copying %s (%s%s) %s\n", attr->name,
- attr->num_values > 1 ? "1setOf " : "",
- ippTagString(attr->value_tag & ~IPP_TAG_COPY), buffer);
- }
-
- switch (attr->value_tag & ~IPP_TAG_COPY)
- {
- case IPP_TAG_ZERO :
- toattr = ippAddSeparator(to);
- break;
-
- case IPP_TAG_INTEGER :
- case IPP_TAG_ENUM :
- toattr = ippAddIntegers(to, group_tag, attr->value_tag,
- attr->name, attr->num_values, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- toattr->values[i].integer = attr->values[i].integer;
- break;
-
- case IPP_TAG_BOOLEAN :
- toattr = ippAddBooleans(to, group_tag, attr->name,
- attr->num_values, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- toattr->values[i].boolean = attr->values[i].boolean;
- break;
-
- case IPP_TAG_TEXT :
- case IPP_TAG_NAME :
- case IPP_TAG_KEYWORD :
- case IPP_TAG_URI :
- case IPP_TAG_URISCHEME :
- case IPP_TAG_CHARSET :
- case IPP_TAG_LANGUAGE :
- case IPP_TAG_MIMETYPE :
- toattr = ippAddStrings(to, group_tag,
- (ipp_tag_t)(attr->value_tag | quickcopy),
- attr->name, attr->num_values, NULL, NULL);
-
- if (quickcopy)
- {
- for (i = 0; i < attr->num_values; i ++)
- toattr->values[i].string.text = attr->values[i].string.text;
- }
- else
- {
- for (i = 0; i < attr->num_values; i ++)
- toattr->values[i].string.text =
- _cupsStrAlloc(attr->values[i].string.text);
- }
- break;
-
- case IPP_TAG_DATE :
- toattr = ippAddDate(to, group_tag, attr->name,
- attr->values[0].date);
- break;
-
- case IPP_TAG_RESOLUTION :
- toattr = ippAddResolutions(to, group_tag, attr->name,
- attr->num_values, IPP_RES_PER_INCH,
- NULL, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- {
- toattr->values[i].resolution.xres = attr->values[i].resolution.xres;
- toattr->values[i].resolution.yres = attr->values[i].resolution.yres;
- toattr->values[i].resolution.units = attr->values[i].resolution.units;
- }
- break;
-
- case IPP_TAG_RANGE :
- toattr = ippAddRanges(to, group_tag, attr->name,
- attr->num_values, NULL, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- {
- toattr->values[i].range.lower = attr->values[i].range.lower;
- toattr->values[i].range.upper = attr->values[i].range.upper;
- }
- break;
-
- case IPP_TAG_TEXTLANG :
- case IPP_TAG_NAMELANG :
- toattr = ippAddStrings(to, group_tag,
- (ipp_tag_t)(attr->value_tag | quickcopy),
- attr->name, attr->num_values, NULL, NULL);
-
- if (quickcopy)
- {
- for (i = 0; i < attr->num_values; i ++)
- {
- toattr->values[i].string.charset = attr->values[i].string.charset;
- toattr->values[i].string.text = attr->values[i].string.text;
- }
- }
- else
- {
- for (i = 0; i < attr->num_values; i ++)
- {
- if (!i)
- toattr->values[i].string.charset =
- _cupsStrAlloc(attr->values[i].string.charset);
- else
- toattr->values[i].string.charset =
- toattr->values[0].string.charset;
-
- toattr->values[i].string.text =
- _cupsStrAlloc(attr->values[i].string.text);
- }
- }
- break;
-
- case IPP_TAG_BEGIN_COLLECTION :
- toattr = ippAddCollections(to, group_tag, attr->name,
- attr->num_values, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- {
- toattr->values[i].collection = attr->values[i].collection;
- attr->values[i].collection->use ++;
- }
- break;
-
- case IPP_TAG_STRING :
- if (quickcopy)
- {
- toattr = ippAddOctetString(to, group_tag, attr->name, NULL, 0);
- toattr->value_tag |= quickcopy;
- toattr->values[0].unknown.data = attr->values[0].unknown.data;
- toattr->values[0].unknown.length = attr->values[0].unknown.length;
- }
- else
- toattr = ippAddOctetString(to, attr->group_tag, attr->name,
- attr->values[0].unknown.data,
- attr->values[0].unknown.length);
- break;
-
- default :
- toattr = ippAddIntegers(to, group_tag, attr->value_tag,
- attr->name, attr->num_values, NULL);
-
- for (i = 0; i < attr->num_values; i ++)
- {
- toattr->values[i].unknown.length = attr->values[i].unknown.length;
-
- if (toattr->values[i].unknown.length > 0)
- {
- if ((toattr->values[i].unknown.data =
- malloc(toattr->values[i].unknown.length)) == NULL)
- toattr->values[i].unknown.length = 0;
- else
- memcpy(toattr->values[i].unknown.data,
- attr->values[i].unknown.data,
- toattr->values[i].unknown.length);
- }
- }
- break; /* anti-compiler-warning-code */
- }
-
- return (toattr);
-}
-
-
-/*
* 'copy_attributes()' - Copy attributes from one request to another.
*/
@@ -789,7 +601,7 @@ copy_attributes(ipp_t *to, /* I - Destination request */
continue;
if (!ra || cupsArrayFind(ra, fromattr->name))
- copy_attribute(to, fromattr, fromattr->group_tag, quickcopy);
+ ippCopyAttribute(to, fromattr, quickcopy);
}
}
@@ -1215,7 +1027,7 @@ create_printer(const char *servername, /* I - Server hostname (NULL for default)
/* media-size-supported value */
ipp_t *media_col_default;
/* media-col-default value */
- ipp_value_t *media_col_value;
+ _ipp_value_t *media_col_value;
/* Current media-col-database value */
int k_supported; /* Maximum file size supported */
#ifdef HAVE_STATVFS
@@ -2084,7 +1896,7 @@ debug_attributes(const char *title, /* I - Title */
if (attr->name)
{
- _ippAttrString(attr, buffer, sizeof(buffer));
+ ippAttributeString(attr, buffer, sizeof(buffer));
fprintf(stderr, " %s (%s%s) %s\n", attr->name,
attr->num_values > 1 ? "1setOf " : "",
ippTagString(attr->value_tag), buffer);
@@ -3587,7 +3399,7 @@ ipp_send_document(_ipp_client_t *client)/* I - Client */
if (close(job->fd))
{
- int error = errno; /* Write error */
+ int error = errno; /* Write error */
job->state = IPP_JOB_ABORTED;
job->fd = -1;
@@ -4978,12 +4790,18 @@ respond_unsupported(
_ipp_client_t *client, /* I - Client */
ipp_attribute_t *attr) /* I - Atribute */
{
+ ipp_attribute_t *temp; /* Copy of attribute */
+
+
if (!client->response->attrs)
respond_ipp(client, IPP_ATTRIBUTES, "Unsupported %s %s%s value.",
attr->name, attr->num_values > 1 ? "1setOf " : "",
ippTagString(attr->value_tag));
+ else
+ ippSetStatusCode(client->response, IPP_ATTRIBUTES);
- copy_attribute(client->response, attr, IPP_TAG_UNSUPPORTED_GROUP, 0);
+ temp = ippCopyAttribute(client->response, attr, 0);
+ ippSetGroupTag(client->response, &temp, IPP_TAG_UNSUPPORTED_GROUP);
}
@@ -5433,5 +5251,5 @@ valid_job_attributes(
/*
- * End of "$Id: ippserver.c 10031 2011-09-30 05:24:10Z mike $".
+ * End of "$Id: ippserver.c 10165 2012-01-06 20:42:45Z mike $".
*/
diff --git a/test/ipptool.c b/test/ipptool.c
index 23270ee5..dac5541c 100644
--- a/test/ipptool.c
+++ b/test/ipptool.c
@@ -1,9 +1,9 @@
/*
- * "$Id: ipptool.c 10090 2011-10-25 22:39:56Z mike $"
+ * "$Id: ipptool.c 10461 2012-05-11 23:01:21Z mike $"
*
* ipptool command for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -17,6 +17,7 @@
* Contents:
*
* main() - Parse options and do tests.
+ * add_stringf() - Add a formatted string to an array.
* compare_vars() - Compare two variables.
* do_tests() - Do tests as specified in the test file.
* expand_variables() - Expand variables in a string.
@@ -33,7 +34,6 @@
* print_csv() - Print a line of CSV text.
* print_fatal_error() - Print a fatal error message.
* print_line() - Print a line of formatted or CSV text.
- * print_test_error() - Print a test error message.
* print_xml_header() - Print a standard XML plist header.
* print_xml_string() - Print an XML string with escaping.
* print_xml_trailer() - Print the XML trailer with success/fail value.
@@ -81,6 +81,13 @@ typedef enum _cups_output_e /**** Output mode ****/
_CUPS_OUTPUT_CSV /* Comma-separated values output */
} _cups_output_t;
+typedef enum _cups_with_e /**** WITH flags ****/
+{
+ _CUPS_WITH_LITERAL = 0, /* Match string is a literal value */
+ _CUPS_WITH_ALL = 1, /* Must match all values */
+ _CUPS_WITH_REGEX = 2 /* Match string is a regular expression */
+} _cups_with_t;
+
typedef struct _cups_expect_s /**** Expected attribute info ****/
{
int optional, /* Optional attribute? */
@@ -94,9 +101,10 @@ typedef struct _cups_expect_s /**** Expected attribute info ****/
*define_match, /* Variable to define on match */
*define_no_match, /* Variable to define on no-match */
*define_value; /* Variable to define with value */
- int repeat_match, /* Repeat test on match */
+ int repeat_limit, /* Maximum number of times to repeat */
+ repeat_match, /* Repeat test on match */
repeat_no_match, /* Repeat test on no match */
- with_regex, /* WITH-VALUE is a regular expression */
+ with_flags, /* WITH flags */
count; /* Expected count if > 0 */
ipp_tag_t in_group; /* IN-GROUP value */
} _cups_expect_t;
@@ -106,7 +114,8 @@ typedef struct _cups_status_s /**** Status info ****/
ipp_status_t status; /* Expected status code */
char *if_defined, /* Only if variable is defined */
*if_not_defined; /* Only if variable is not defined */
- int repeat_match, /* Repeat the test when it does not match */
+ int repeat_limit, /* Maximum number of times to repeat */
+ repeat_match, /* Repeat the test when it does not match */
repeat_no_match; /* Repeat the test when it matches */
} _cups_status_t;
@@ -171,14 +180,12 @@ const char * const URIStatusStrings[] = /* URI status strings */
* Local functions...
*/
+static void add_stringf(cups_array_t *a, const char *s, ...)
+ __attribute__ ((__format__ (__printf__, 2, 3)));
static int compare_vars(_cups_var_t *a, _cups_var_t *b);
static int do_tests(_cups_vars_t *vars, const char *testfile);
static void expand_variables(_cups_vars_t *vars, char *dst, const char *src,
- size_t dstsize)
-#ifdef __GNUC__
-__attribute((nonnull(1,2,3)))
-#endif /* __GNUC__ */
-;
+ size_t dstsize) __attribute__((nonnull(1,2,3)));
static int expect_matches(_cups_expect_t *expect, ipp_tag_t value_tag);
static ipp_t *get_collection(_cups_vars_t *vars, FILE *fp, int *linenum);
static char *get_filename(const char *testfile, char *dst, const char *src,
@@ -193,17 +200,9 @@ static void print_col(ipp_t *col);
static void print_csv(ipp_attribute_t *attr, int num_displayed,
char **displayed, size_t *widths);
static void print_fatal_error(const char *s, ...)
-#ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 1, 2)))
-#endif /* __GNUC__ */
-;
+ __attribute__ ((__format__ (__printf__, 1, 2)));
static void print_line(ipp_attribute_t *attr, int num_displayed,
char **displayed, size_t *widths);
-static void print_test_error(const char *s, ...)
-#ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 1, 2)))
-#endif /* __GNUC__ */
-;
static void print_xml_header(void);
static void print_xml_string(const char *element, const char *s);
static void print_xml_trailer(int success, const char *message);
@@ -213,10 +212,11 @@ static void set_variable(_cups_vars_t *vars, const char *name,
static void sigterm_handler(int sig);
#endif /* WIN32 */
static int timeout_cb(http_t *http, void *user_data);
-static void usage(void);
-static int validate_attr(ipp_attribute_t *attr, int print);
-static int with_value(char *value, int regex, ipp_attribute_t *attr,
- int report, char *matchbuf, size_t matchlen);
+static void usage(void) __attribute__((noreturn));
+static int validate_attr(cups_array_t *errors, ipp_attribute_t *attr);
+static int with_value(cups_array_t *errors, char *value, int flags,
+ ipp_attribute_t *attr, char *matchbuf,
+ size_t matchlen);
/*
@@ -419,7 +419,11 @@ main(int argc, /* I - Number of command-line args */
*/
snprintf(filename, sizeof(filename), "%s.gz", argv[i]);
- if (access(filename, 0) && filename[0] != '/')
+ if (access(filename, 0) && filename[0] != '/'
+#ifdef WIN32
+ && (!isalpha(filename[0] & 255) || filename[1] != ':')
+#endif /* WIN32 */
+ )
{
snprintf(filename, sizeof(filename), "%s/ipptool/%s",
cg->cups_datadir, argv[i]);
@@ -454,6 +458,9 @@ main(int argc, /* I - Number of command-line args */
set_variable(&vars, "filetype", "text/html");
else if (!_cups_strcasecmp(ext, ".jpg"))
set_variable(&vars, "filetype", "image/jpeg");
+ else if (!_cups_strcasecmp(ext, ".pcl") ||
+ !_cups_strcasecmp(ext, ".pcl.gz"))
+ set_variable(&vars, "filetype", "application/vnd.hp-PCL");
else if (!_cups_strcasecmp(ext, ".pdf"))
set_variable(&vars, "filetype", "application/pdf");
else if (!_cups_strcasecmp(ext, ".png"))
@@ -505,8 +512,8 @@ main(int argc, /* I - Number of command-line args */
if (Output == _CUPS_OUTPUT_PLIST && interval)
{
- _cupsLangPuts(stderr, _("ipptool: \"-i\" is incompatible with "
- "\"-X\"."));
+ _cupsLangPuts(stderr, _("ipptool: \"-i\" and \"-n\" are "
+ "incompatible with -X\"."));
usage();
}
break;
@@ -529,8 +536,8 @@ main(int argc, /* I - Number of command-line args */
if (Output == _CUPS_OUTPUT_PLIST && repeat)
{
- _cupsLangPuts(stderr, _("ipptool: \"-n\" is incompatible with "
- "\"-X\"."));
+ _cupsLangPuts(stderr, _("ipptool: \"-i\" and \"-n\" are "
+ "incompatible with -X\"."));
usage();
}
break;
@@ -618,7 +625,11 @@ main(int argc, /* I - Number of command-line args */
usage();
}
- if (access(argv[i], 0) && argv[i][0] != '/')
+ if (access(argv[i], 0) && argv[i][0] != '/'
+#ifdef WIN32
+ && (!isalpha(argv[i][0] & 255) || argv[i][1] != ':')
+#endif /* WIN32 */
+ )
{
snprintf(testname, sizeof(testname), "%s/ipptool/%s", cg->cups_datadir,
argv[i]);
@@ -681,6 +692,42 @@ main(int argc, /* I - Number of command-line args */
/*
+ * 'add_stringf()' - Add a formatted string to an array.
+ */
+
+static void
+add_stringf(cups_array_t *a, /* I - Array */
+ const char *s, /* I - Printf-style format string */
+ ...) /* I - Additional args as needed */
+{
+ char buffer[10240]; /* Format buffer */
+ va_list ap; /* Argument pointer */
+
+
+ /*
+ * Don't bother is the array is NULL...
+ */
+
+ if (!a)
+ return;
+
+ /*
+ * Format the message...
+ */
+
+ va_start(ap, s);
+ vsnprintf(buffer, sizeof(buffer), s, ap);
+ va_end(ap);
+
+ /*
+ * Add it to the array...
+ */
+
+ cupsArrayAdd(a, buffer);
+}
+
+
+/*
* 'compare_vars()' - Compare two variables.
*/
@@ -708,6 +755,9 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
show_header = 1, /* Show the test header? */
ignore_errors, /* Ignore test failures? */
skip_previous = 0, /* Skip on previous test failure? */
+ repeat_count, /* Repeat count */
+ repeat_interval, /* Repeat interval */
+ repeat_prev, /* Previous repeat interval */
repeat_test; /* Repeat a test? */
http_t *http = NULL; /* HTTP connection to server */
FILE *fp = NULL; /* Test file */
@@ -744,7 +794,9 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
int num_displayed = 0; /* Number of displayed attributes */
char *displayed[200]; /* Displayed attributes */
size_t widths[200]; /* Width of columns */
- cups_array_t *a; /* Duplicate attribute array */
+ cups_array_t *a, /* Duplicate attribute array */
+ *errors = NULL; /* Errors array */
+ const char *error; /* Current error */
/*
@@ -789,6 +841,8 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
CUPS_SRAND(time(NULL));
+ errors = cupsArrayNew3(NULL, NULL, NULL, 0, (cups_acopy_func_t)strdup,
+ (cups_afree_func_t)free);
pass = 1;
linenum = 1;
request_id = (CUPS_RAND() % 1000) * 137 + 1;
@@ -1122,14 +1176,17 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
_cups_strcasecmp(token, "IF-NOT-DEFINED") &&
_cups_strcasecmp(token, "IN-GROUP") &&
_cups_strcasecmp(token, "OF-TYPE") &&
+ _cups_strcasecmp(token, "REPEAT-LIMIT") &&
_cups_strcasecmp(token, "REPEAT-MATCH") &&
_cups_strcasecmp(token, "REPEAT-NO-MATCH") &&
_cups_strcasecmp(token, "SAME-COUNT-AS") &&
+ _cups_strcasecmp(token, "WITH-ALL-VALUES") &&
_cups_strcasecmp(token, "WITH-VALUE"))
last_expect = NULL;
if (_cups_strcasecmp(token, "IF-DEFINED") &&
_cups_strcasecmp(token, "IF-NOT-DEFINED") &&
+ _cups_strcasecmp(token, "REPEAT-LIMIT") &&
_cups_strcasecmp(token, "REPEAT-MATCH") &&
_cups_strcasecmp(token, "REPEAT-NO-MATCH"))
last_status = NULL;
@@ -1156,7 +1213,7 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
if ((tempcol = realloc(lastcol, sizeof(ipp_attribute_t) +
(lastcol->num_values + 1) *
- sizeof(ipp_value_t))) == NULL)
+ sizeof(_ipp_value_t))) == NULL)
{
print_fatal_error("Unable to allocate memory on line %d.", linenum);
pass = 0;
@@ -1509,21 +1566,22 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
}
expand_variables(vars, token, temp, sizeof(token));
+ attrptr = NULL;
switch (value)
{
case IPP_TAG_BOOLEAN :
if (!_cups_strcasecmp(token, "true"))
- ippAddBoolean(request, group, attr, 1);
+ attrptr = ippAddBoolean(request, group, attr, 1);
else
- ippAddBoolean(request, group, attr, atoi(token));
+ attrptr = ippAddBoolean(request, group, attr, atoi(token));
break;
case IPP_TAG_INTEGER :
case IPP_TAG_ENUM :
if (!strchr(token, ','))
- ippAddInteger(request, group, value, attr,
- strtol(token, &tokenptr, 0));
+ attrptr = ippAddInteger(request, group, value, attr,
+ strtol(token, &tokenptr, 0));
else
{
int values[100], /* Values */
@@ -1542,7 +1600,7 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
num_values ++;
}
- ippAddIntegers(request, group, value, attr, num_values, values);
+ attrptr = ippAddIntegers(request, group, value, attr, num_values, values);
}
if (!tokenptr || *tokenptr)
@@ -1568,7 +1626,9 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
}
if (ptr <= token || xres <= 0 || yres <= 0 || !ptr ||
- (_cups_strcasecmp(ptr, "dpi") && _cups_strcasecmp(ptr, "dpc") &&
+ (_cups_strcasecmp(ptr, "dpi") &&
+ _cups_strcasecmp(ptr, "dpc") &&
+ _cups_strcasecmp(ptr, "dpcm") &&
_cups_strcasecmp(ptr, "other")))
{
print_fatal_error("Bad resolution value \"%s\" on line %d.",
@@ -1578,14 +1638,15 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
}
if (!_cups_strcasecmp(ptr, "dpi"))
- ippAddResolution(request, group, attr, IPP_RES_PER_INCH,
- xres, yres);
- else if (!_cups_strcasecmp(ptr, "dpc"))
- ippAddResolution(request, group, attr, IPP_RES_PER_CM,
- xres, yres);
+ attrptr = ippAddResolution(request, group, attr, IPP_RES_PER_INCH,
+ xres, yres);
+ else if (!_cups_strcasecmp(ptr, "dpc") ||
+ !_cups_strcasecmp(ptr, "dpcm"))
+ attrptr = ippAddResolution(request, group, attr, IPP_RES_PER_CM,
+ xres, yres);
else
- ippAddResolution(request, group, attr, (ipp_res_t)0,
- xres, yres);
+ attrptr = ippAddResolution(request, group, attr, (ipp_res_t)0,
+ xres, yres);
}
break;
@@ -1610,8 +1671,8 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
goto test_exit;
}
- ippAddRanges(request, group, attr, num_vals / 2, lowers,
- uppers);
+ attrptr = ippAddRanges(request, group, attr, num_vals / 2, lowers,
+ uppers);
}
break;
@@ -1623,7 +1684,7 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
if (col)
{
- lastcol = ippAddCollection(request, group, attr, col);
+ attrptr = lastcol = ippAddCollection(request, group, attr, col);
ippDelete(col);
}
else
@@ -1658,7 +1719,7 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
case IPP_TAG_LANGUAGE :
case IPP_TAG_MIMETYPE :
if (!strchr(token, ','))
- ippAddString(request, group, value, attr, NULL, token);
+ attrptr = ippAddString(request, group, value, attr, NULL, token);
else
{
/*
@@ -1680,11 +1741,19 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
num_values ++;
}
- ippAddStrings(request, group, value, attr, num_values,
- NULL, (const char **)values);
+ attrptr = ippAddStrings(request, group, value, attr, num_values,
+ NULL, (const char **)values);
}
break;
}
+
+ if (!attrptr)
+ {
+ print_fatal_error("Unable to add attribute on line %d: %s", linenum,
+ cupsLastErrorString());
+ pass = 0;
+ goto test_exit;
+ }
}
else if (!_cups_strcasecmp(token, "FILE"))
{
@@ -1737,6 +1806,7 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
last_status->if_defined = NULL;
last_status->if_not_defined = NULL;
+ last_status->repeat_limit = 1000;
last_status->repeat_match = 0;
last_status->repeat_no_match = 0;
}
@@ -1764,6 +1834,7 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
num_expects ++;
memset(last_expect, 0, sizeof(_cups_expect_t));
+ last_expect->repeat_limit = 1000;
if (token[0] == '!')
{
@@ -1909,6 +1980,33 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
goto test_exit;
}
}
+ else if (!_cups_strcasecmp(token, "REPEAT-LIMIT"))
+ {
+ if (!get_token(fp, token, sizeof(token), &linenum))
+ {
+ print_fatal_error("Missing REPEAT-LIMIT value on line %d.", linenum);
+ pass = 0;
+ goto test_exit;
+ }
+ else if (atoi(token) <= 0)
+ {
+ print_fatal_error("Bad REPEAT-LIMIT value on line %d.", linenum);
+ pass = 0;
+ goto test_exit;
+ }
+
+ if (last_status)
+ last_status->repeat_limit = atoi(token);
+ else if (last_expect)
+ last_expect->repeat_limit = atoi(token);
+ else
+ {
+ print_fatal_error("REPEAT-LIMIT without a preceding EXPECT or STATUS "
+ "on line %d.", linenum);
+ pass = 0;
+ goto test_exit;
+ }
+ }
else if (!_cups_strcasecmp(token, "REPEAT-MATCH"))
{
if (last_status)
@@ -1998,11 +2096,15 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
goto test_exit;
}
}
- else if (!_cups_strcasecmp(token, "WITH-VALUE"))
+ else if (!_cups_strcasecmp(token, "WITH-ALL-VALUES") ||
+ !_cups_strcasecmp(token, "WITH-VALUE"))
{
+ if (!_cups_strcasecmp(token, "WITH-ALL-VALUES") && last_expect)
+ last_expect->with_flags = _CUPS_WITH_ALL;
+
if (!get_token(fp, temp, sizeof(temp), &linenum))
{
- print_fatal_error("Missing WITH-VALUE value on line %d.", linenum);
+ print_fatal_error("Missing %s value on line %d.", token, linenum);
pass = 0;
goto test_exit;
}
@@ -2024,7 +2126,7 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
*/
last_expect->with_value = calloc(1, tokenptr - token);
- last_expect->with_regex = 1;
+ last_expect->with_flags |= _CUPS_WITH_REGEX;
if (last_expect->with_value)
memcpy(last_expect->with_value, token + 1, tokenptr - token - 1);
@@ -2036,11 +2138,12 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
*/
last_expect->with_value = strdup(token);
+ last_expect->with_flags |= _CUPS_WITH_LITERAL;
}
}
else
{
- print_fatal_error("WITH-VALUE without a preceding EXPECT on line %d.",
+ print_fatal_error("%s without a preceding EXPECT on line %d.", token,
linenum);
pass = 0;
goto test_exit;
@@ -2146,8 +2249,14 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
goto skip_error;
}
+ repeat_count = 0;
+ repeat_interval = 1;
+ repeat_prev = 1;
+
do
{
+ repeat_count ++;
+
status = HTTP_OK;
if (transfer == _CUPS_TRANSFER_CHUNKED ||
@@ -2228,7 +2337,7 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
status = httpGetStatus(http);
}
- if (!Cancel && status == HTTP_ERROR &&
+ if (!Cancel && status == HTTP_ERROR && http->error != EINVAL &&
#ifdef WIN32
http->error != WSAETIMEDOUT)
#else
@@ -2240,35 +2349,65 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
}
else if (status == HTTP_ERROR)
{
- if (!Cancel)
- httpReconnect(http);
-
prev_pass = 0;
+ break;
+ }
+ else if (status != HTTP_OK)
+ {
+ httpFlush(http);
+ break;
}
}
}
+ if (!Cancel && status == HTTP_ERROR && http->error != EINVAL &&
+#ifdef WIN32
+ http->error != WSAETIMEDOUT)
+#else
+ http->error != ETIMEDOUT)
+#endif /* WIN32 */
+ {
+ if (httpReconnect(http))
+ prev_pass = 0;
+ }
+ else if (status == HTTP_ERROR)
+ {
+ if (!Cancel)
+ httpReconnect(http);
+
+ prev_pass = 0;
+ }
+ else if (status != HTTP_OK)
+ {
+ httpFlush(http);
+ prev_pass = 0;
+ }
+
/*
* Check results of request...
*/
- if (!response)
- prev_pass = pass = 0;
- else
- {
- if (http->version != HTTP_1_1)
- prev_pass = pass = 0;
+ cupsArrayClear(errors);
- if (response->state != IPP_DATA)
- prev_pass = pass = 0;
+ if (http->version != HTTP_1_1)
+ add_stringf(errors, "Bad HTTP version (%d.%d)", http->version / 100,
+ http->version % 100);
- if (response->request.status.request_id != request_id)
- prev_pass = pass = 0;
+ if (!response)
+ {
+ /*
+ * No response, log error...
+ */
- if (version &&
- (response->request.status.version[0] != (version / 10) ||
- response->request.status.version[1] != (version % 10)))
- prev_pass = pass = 0;
+ add_stringf(errors, "IPP request failed with status %s (%s)",
+ ippErrorString(cupsLastError()),
+ cupsLastErrorString());
+ }
+ else
+ {
+ /*
+ * Collect common attribute values...
+ */
if ((attrptr = ippFindAttribute(response, "job-id",
IPP_TAG_INTEGER)) != NULL)
@@ -2288,42 +2427,130 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
set_variable(vars, "notify-subscription-id", temp);
}
- attrptr = response->attrs;
- if (!attrptr || !attrptr->name ||
- attrptr->value_tag != IPP_TAG_CHARSET ||
- attrptr->group_tag != IPP_TAG_OPERATION ||
- attrptr->num_values != 1 ||
- strcmp(attrptr->name, "attributes-charset"))
- prev_pass = pass = 0;
+ /*
+ * Check response, validating groups and attributes and logging errors
+ * as needed...
+ */
- if (attrptr)
+ if (response->state != IPP_DATA)
+ add_stringf(errors,
+ "Missing end-of-attributes-tag in response "
+ "(RFC 2910 section 3.5.1)");
+
+ if (version &&
+ (response->request.status.version[0] != (version / 10) ||
+ response->request.status.version[1] != (version % 10)))
+ add_stringf(errors,
+ "Bad version %d.%d in response - expected %d.%d "
+ "(RFC 2911 section 3.1.8).",
+ response->request.status.version[0],
+ response->request.status.version[1],
+ version / 10, version % 10);
+
+ if (response->request.status.request_id != request_id)
+ add_stringf(errors,
+ "Bad request ID %d in response - expected %d "
+ "(RFC 2911 section 3.1.1)",
+ response->request.status.request_id, request_id);
+
+ attrptr = response->attrs;
+ if (!attrptr)
+ add_stringf(errors,
+ "Missing first attribute \"attributes-charset "
+ "(charset)\" in group operation-attributes-tag "
+ "(RFC 2911 section 3.1.4).");
+ else
{
- attrptr = attrptr->next;
- if (!attrptr || !attrptr->name ||
- attrptr->value_tag != IPP_TAG_LANGUAGE ||
+ if (!attrptr->name ||
+ attrptr->value_tag != IPP_TAG_CHARSET ||
attrptr->group_tag != IPP_TAG_OPERATION ||
attrptr->num_values != 1 ||
- strcmp(attrptr->name, "attributes-natural-language"))
- prev_pass = pass = 0;
- }
+ strcmp(attrptr->name, "attributes-charset"))
+ add_stringf(errors,
+ "Bad first attribute \"%s (%s%s)\" in group %s, "
+ "expected \"attributes-charset (charset)\" in "
+ "group operation-attributes-tag (RFC 2911 section "
+ "3.1.4).",
+ attrptr->name ? attrptr->name : "(null)",
+ attrptr->num_values > 1 ? "1setOf " : "",
+ ippTagString(attrptr->value_tag),
+ ippTagString(attrptr->group_tag));
+
+ attrptr = attrptr->next;
+ if (!attrptr)
+ add_stringf(errors,
+ "Missing second attribute \"attributes-natural-"
+ "language (naturalLanguage)\" in group "
+ "operation-attributes-tag (RFC 2911 section "
+ "3.1.4).");
+ else if (!attrptr->name ||
+ attrptr->value_tag != IPP_TAG_LANGUAGE ||
+ attrptr->group_tag != IPP_TAG_OPERATION ||
+ attrptr->num_values != 1 ||
+ strcmp(attrptr->name, "attributes-natural-language"))
+ add_stringf(errors,
+ "Bad first attribute \"%s (%s%s)\" in group %s, "
+ "expected \"attributes-natural-language "
+ "(naturalLanguage)\" in group "
+ "operation-attributes-tag (RFC 2911 section "
+ "3.1.4).",
+ attrptr->name ? attrptr->name : "(null)",
+ attrptr->num_values > 1 ? "1setOf " : "",
+ ippTagString(attrptr->value_tag),
+ ippTagString(attrptr->group_tag));
+ }
if ((attrptr = ippFindAttribute(response, "status-message",
- IPP_TAG_ZERO)) != NULL &&
- (attrptr->value_tag != IPP_TAG_TEXT ||
- attrptr->group_tag != IPP_TAG_OPERATION ||
- attrptr->num_values != 1 ||
- (attrptr->value_tag == IPP_TAG_TEXT &&
- strlen(attrptr->values[0].string.text) > 255)))
- prev_pass = pass = 0;
+ IPP_TAG_ZERO)) != NULL)
+ {
+ if (attrptr->value_tag != IPP_TAG_TEXT)
+ add_stringf(errors,
+ "status-message (text(255)) has wrong value tag "
+ "%s (RFC 2911 section 3.1.6.2).",
+ ippTagString(attrptr->value_tag));
+ if (attrptr->group_tag != IPP_TAG_OPERATION)
+ add_stringf(errors,
+ "status-message (text(255)) has wrong group tag "
+ "%s (RFC 2911 section 3.1.6.2).",
+ ippTagString(attrptr->group_tag));
+ if (attrptr->num_values != 1)
+ add_stringf(errors,
+ "status-message (text(255)) has %d values "
+ "(RFC 2911 section 3.1.6.2).",
+ attrptr->num_values);
+ if (attrptr->value_tag == IPP_TAG_TEXT &&
+ strlen(attrptr->values[0].string.text) > 255)
+ add_stringf(errors,
+ "status-message (text(255)) has bad length %d"
+ " (RFC 2911 section 3.1.6.2).",
+ (int)strlen(attrptr->values[0].string.text));
+ }
if ((attrptr = ippFindAttribute(response, "detailed-status-message",
- IPP_TAG_ZERO)) != NULL &&
- (attrptr->value_tag != IPP_TAG_TEXT ||
- attrptr->group_tag != IPP_TAG_OPERATION ||
- attrptr->num_values != 1 ||
- (attrptr->value_tag == IPP_TAG_TEXT &&
- strlen(attrptr->values[0].string.text) > 1023)))
- prev_pass = pass = 0;
+ IPP_TAG_ZERO)) != NULL)
+ {
+ if (attrptr->value_tag != IPP_TAG_TEXT)
+ add_stringf(errors,
+ "detailed-status-message (text(MAX)) has wrong "
+ "value tag %s (RFC 2911 section 3.1.6.3).",
+ ippTagString(attrptr->value_tag));
+ if (attrptr->group_tag != IPP_TAG_OPERATION)
+ add_stringf(errors,
+ "detailed-status-message (text(MAX)) has wrong "
+ "group tag %s (RFC 2911 section 3.1.6.3).",
+ ippTagString(attrptr->group_tag));
+ if (attrptr->num_values != 1)
+ add_stringf(errors,
+ "detailed-status-message (text(MAX)) has %d values"
+ " (RFC 2911 section 3.1.6.3).",
+ attrptr->num_values);
+ if (attrptr->value_tag == IPP_TAG_TEXT &&
+ strlen(attrptr->values[0].string.text) > 1023)
+ add_stringf(errors,
+ "detailed-status-message (text(MAX)) has bad "
+ "length %d (RFC 2911 section 3.1.6.3).",
+ (int)strlen(attrptr->values[0].string.text));
+ }
a = cupsArrayNew((cups_array_func_t)strcmp, NULL);
@@ -2333,61 +2560,59 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
{
if (attrptr->group_tag != group)
{
+ int out_of_order = 0; /* Are attribute groups out-of-order? */
cupsArrayClear(a);
+
switch (attrptr->group_tag)
{
case IPP_TAG_ZERO :
break;
case IPP_TAG_OPERATION :
- prev_pass = pass = 0;
+ out_of_order = 1;
break;
case IPP_TAG_UNSUPPORTED_GROUP :
if (group != IPP_TAG_OPERATION)
- prev_pass = pass = 0;
+ out_of_order = 1;
break;
case IPP_TAG_JOB :
case IPP_TAG_PRINTER :
if (group != IPP_TAG_OPERATION &&
group != IPP_TAG_UNSUPPORTED_GROUP)
- prev_pass = pass = 0;
+ out_of_order = 1;
break;
case IPP_TAG_SUBSCRIPTION :
if (group > attrptr->group_tag &&
group != IPP_TAG_DOCUMENT)
- prev_pass = pass = 0;
+ out_of_order = 1;
break;
default :
if (group > attrptr->group_tag)
- prev_pass = pass = 0;
+ out_of_order = 1;
break;
}
- if (!pass)
- break;
+ if (out_of_order)
+ add_stringf(errors, "Attribute groups out of order (%s < %s)",
+ ippTagString(attrptr->group_tag),
+ ippTagString(group));
if (attrptr->group_tag != IPP_TAG_ZERO)
group = attrptr->group_tag;
}
- if (!validate_attr(attrptr, 0))
- {
- prev_pass = pass = 0;
- break;
- }
+ validate_attr(errors, attrptr);
if (attrptr->name)
{
if (cupsArrayFind(a, attrptr->name))
- {
- prev_pass = pass = 0;
- break;
- }
+ add_stringf(errors, "Duplicate \"%s\" attribute in %s group",
+ attrptr->name, ippTagString(group));
cupsArrayAdd(a, attrptr->name);
}
@@ -2395,6 +2620,11 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
cupsArrayDelete(a);
+ /*
+ * Now check the test-defined expected status-code and attribute
+ * values...
+ */
+
for (i = 0; i < num_statuses; i ++)
{
if (statuses[i].if_defined &&
@@ -2407,17 +2637,39 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
if (response->request.status.status_code == statuses[i].status)
{
- if (statuses[i].repeat_match)
+ if (statuses[i].repeat_match &&
+ repeat_count < statuses[i].repeat_limit)
repeat_test = 1;
break;
}
- else if (statuses[i].repeat_no_match)
+ else if (statuses[i].repeat_no_match &&
+ repeat_count < statuses[i].repeat_limit)
repeat_test = 1;
}
if (i == num_statuses && num_statuses > 0)
- prev_pass = pass = 0;
+ {
+ for (i = 0; i < num_statuses; i ++)
+ {
+ if (statuses[i].if_defined &&
+ !get_variable(vars, statuses[i].if_defined))
+ continue;
+
+ if (statuses[i].if_not_defined &&
+ get_variable(vars, statuses[i].if_not_defined))
+ continue;
+
+ add_stringf(errors, "EXPECTED: STATUS %s (got %s)",
+ ippErrorString(statuses[i].status),
+ ippErrorString(cupsLastError()));
+ }
+
+ if ((attrptr = ippFindAttribute(response, "status-message",
+ IPP_TAG_TEXT)) != NULL)
+ add_stringf(errors, "status-message=\"%s\"",
+ attrptr->values[0].string.text);
+ }
for (i = num_expects, expect = expects; i > 0; i --, expect ++)
{
@@ -2439,27 +2691,62 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
if (expect->define_no_match)
set_variable(vars, expect->define_no_match, "1");
else if (!expect->define_match && !expect->define_value)
- prev_pass = pass = 0;
+ {
+ if (found && expect->not_expect)
+ add_stringf(errors, "NOT EXPECTED: %s", expect->name);
+ else if (!found && !(expect->not_expect || expect->optional))
+ add_stringf(errors, "EXPECTED: %s", expect->name);
+ else if (found)
+ {
+ if (!expect_matches(expect, found->value_tag))
+ add_stringf(errors, "EXPECTED: %s OF-TYPE %s (got %s)",
+ expect->name, expect->of_type,
+ ippTagString(found->value_tag));
+
+ if (expect->in_group && found->group_tag != expect->in_group)
+ add_stringf(errors, "EXPECTED: %s IN-GROUP %s (got %s).",
+ expect->name, ippTagString(expect->in_group),
+ ippTagString(found->group_tag));
+ }
+ }
- if (expect->repeat_no_match)
+ if (expect->repeat_no_match &&
+ repeat_count < expect->repeat_limit)
repeat_test = 1;
continue;
}
if (found)
- _ippAttrString(found, buffer, sizeof(buffer));
+ ippAttributeString(found, buffer, sizeof(buffer));
if (found &&
- !with_value(expect->with_value, expect->with_regex, found, 0,
+ !with_value(NULL, expect->with_value, expect->with_flags, found,
buffer, sizeof(buffer)))
{
if (expect->define_no_match)
set_variable(vars, expect->define_no_match, "1");
else if (!expect->define_match && !expect->define_value)
- prev_pass = pass = 0;
+ {
+ if (expect->with_flags & _CUPS_WITH_REGEX)
+ add_stringf(errors, "EXPECTED: %s %s /%s/",
+ expect->name,
+ (expect->with_flags & _CUPS_WITH_ALL) ?
+ "WITH-ALL-VALUES" : "WITH-VALUE",
+ expect->with_value);
+ else
+ add_stringf(errors, "EXPECTED: %s %s \"%s\"",
+ expect->name,
+ (expect->with_flags & _CUPS_WITH_ALL) ?
+ "WITH-ALL-VALUES" : "WITH-VALUE",
+ expect->with_value);
+
+ with_value(errors, expect->with_value, expect->with_flags, found,
+ buffer, sizeof(buffer));
+ }
- if (expect->repeat_no_match)
+ if (expect->repeat_no_match &&
+ repeat_count < expect->repeat_limit)
repeat_test = 1;
continue;
@@ -2471,9 +2758,13 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
if (expect->define_no_match)
set_variable(vars, expect->define_no_match, "1");
else if (!expect->define_match && !expect->define_value)
- prev_pass = pass = 0;
+ {
+ add_stringf(errors, "EXPECTED: %s COUNT %d (got %d)", expect->name,
+ expect->count, found->num_values);
+ }
- if (expect->repeat_no_match)
+ if (expect->repeat_no_match &&
+ repeat_count < expect->repeat_limit)
repeat_test = 1;
continue;
@@ -2489,9 +2780,21 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
if (expect->define_no_match)
set_variable(vars, expect->define_no_match, "1");
else if (!expect->define_match && !expect->define_value)
- prev_pass = pass = 0;
+ {
+ if (!attrptr)
+ add_stringf(errors,
+ "EXPECTED: %s (%d values) SAME-COUNT-AS %s "
+ "(not returned)", expect->name,
+ found->num_values, expect->same_count_as);
+ else if (attrptr->num_values != found->num_values)
+ add_stringf(errors,
+ "EXPECTED: %s (%d values) SAME-COUNT-AS %s "
+ "(%d values)", expect->name, found->num_values,
+ expect->same_count_as, attrptr->num_values);
+ }
- if (expect->repeat_no_match)
+ if (expect->repeat_no_match &&
+ repeat_count < expect->repeat_limit)
repeat_test = 1;
continue;
@@ -2504,7 +2807,8 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
if (found && expect->define_value)
set_variable(vars, expect->define_value, buffer);
- if (found && expect->repeat_match)
+ if (found && expect->repeat_match &&
+ repeat_count < expect->repeat_limit)
repeat_test = 1;
}
}
@@ -2515,7 +2819,22 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
*/
if (repeat_test)
- sleep(1);
+ {
+ if (Output == _CUPS_OUTPUT_TEST)
+ {
+ printf("%04d]\n", repeat_count);
+ fflush(stdout);
+ }
+
+ sleep(repeat_interval);
+ repeat_interval = _cupsNextDelay(repeat_interval, &repeat_prev);
+
+ if (Output == _CUPS_OUTPUT_TEST)
+ {
+ printf(" %-68.68s [", name);
+ fflush(stdout);
+ }
+ }
}
while (repeat_test);
@@ -2523,6 +2842,9 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
request = NULL;
+ if (cupsArrayCount(errors) > 0)
+ prev_pass = pass = 0;
+
if (prev_pass)
PassCount ++;
else
@@ -2582,7 +2904,7 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
attrptr = ippFindNextAttribute(response, displayed[i],
IPP_TAG_ZERO))
{
- width = _ippAttrString(attrptr, NULL, 0);
+ width = ippAttributeString(attrptr, NULL, 0);
if (width > widths[i])
widths[i] = width;
}
@@ -2618,303 +2940,24 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
{
puts("<key>Errors</key>");
puts("<array>");
- }
- if (http->version != HTTP_1_1)
- print_test_error("Bad HTTP version (%d.%d)", http->version / 100,
- http->version % 100);
+ for (error = (char *)cupsArrayFirst(errors);
+ error;
+ error = (char *)cupsArrayNext(errors))
+ print_xml_string("string", error);
- if (!response)
- print_test_error("IPP request failed with status %s (%s)",
- ippErrorString(cupsLastError()),
- cupsLastErrorString());
+ puts("</array>");
+ }
else
{
- if (response->state != IPP_DATA)
- print_test_error("Missing end-of-attributes-tag in response "
- "(RFC 2910 section 3.5.1)");
-
- if (version &&
- (response->request.status.version[0] != (version / 10) ||
- response->request.status.version[1] != (version % 10)))
- print_test_error("Bad version %d.%d in response - expected %d.%d "
- "(RFC 2911 section 3.1.8).",
- response->request.status.version[0],
- response->request.status.version[1],
- version / 10, version % 10);
-
- if (response->request.status.request_id != request_id)
- print_test_error("Bad request ID %d in response - expected %d "
- "(RFC 2911 section 3.1.1)",
- response->request.status.request_id, request_id);
-
- attrptr = response->attrs;
- if (!attrptr)
- print_test_error("Missing first attribute \"attributes-charset "
- "(charset)\" in group operation-attributes-tag "
- "(RFC 2911 section 3.1.4).");
- else
- {
- if (!attrptr->name ||
- attrptr->value_tag != IPP_TAG_CHARSET ||
- attrptr->group_tag != IPP_TAG_OPERATION ||
- attrptr->num_values != 1 ||
- strcmp(attrptr->name, "attributes-charset"))
- print_test_error("Bad first attribute \"%s (%s%s)\" in group %s, "
- "expected \"attributes-charset (charset)\" in "
- "group operation-attributes-tag (RFC 2911 section "
- "3.1.4).",
- attrptr->name ? attrptr->name : "(null)",
- attrptr->num_values > 1 ? "1setOf " : "",
- ippTagString(attrptr->value_tag),
- ippTagString(attrptr->group_tag));
-
- attrptr = attrptr->next;
- if (!attrptr)
- print_test_error("Missing second attribute \"attributes-natural-"
- "language (naturalLanguage)\" in group "
- "operation-attributes-tag (RFC 2911 section "
- "3.1.4).");
- else if (!attrptr->name ||
- attrptr->value_tag != IPP_TAG_LANGUAGE ||
- attrptr->group_tag != IPP_TAG_OPERATION ||
- attrptr->num_values != 1 ||
- strcmp(attrptr->name, "attributes-natural-language"))
- print_test_error("Bad first attribute \"%s (%s%s)\" in group %s, "
- "expected \"attributes-natural-language "
- "(naturalLanguage)\" in group "
- "operation-attributes-tag (RFC 2911 section "
- "3.1.4).",
- attrptr->name ? attrptr->name : "(null)",
- attrptr->num_values > 1 ? "1setOf " : "",
- ippTagString(attrptr->value_tag),
- ippTagString(attrptr->group_tag));
- }
-
- if ((attrptr = ippFindAttribute(response, "status-message",
- IPP_TAG_ZERO)) != NULL)
- {
- if (attrptr->value_tag != IPP_TAG_TEXT)
- print_test_error("status-message (text(255)) has wrong value tag "
- "%s (RFC 2911 section 3.1.6.2).",
- ippTagString(attrptr->value_tag));
- if (attrptr->group_tag != IPP_TAG_OPERATION)
- print_test_error("status-message (text(255)) has wrong group tag "
- "%s (RFC 2911 section 3.1.6.2).",
- ippTagString(attrptr->group_tag));
- if (attrptr->num_values != 1)
- print_test_error("status-message (text(255)) has %d values "
- "(RFC 2911 section 3.1.6.2).",
- attrptr->num_values);
- if (attrptr->value_tag == IPP_TAG_TEXT &&
- strlen(attrptr->values[0].string.text) > 255)
- print_test_error("status-message (text(255)) has bad length %d"
- " (RFC 2911 section 3.1.6.2).",
- (int)strlen(attrptr->values[0].string.text));
- }
-
- if ((attrptr = ippFindAttribute(response, "detailed-status-message",
- IPP_TAG_ZERO)) != NULL)
- {
- if (attrptr->value_tag != IPP_TAG_TEXT)
- print_test_error("detailed-status-message (text(MAX)) has wrong "
- "value tag %s (RFC 2911 section 3.1.6.3).",
- ippTagString(attrptr->value_tag));
- if (attrptr->group_tag != IPP_TAG_OPERATION)
- print_test_error("detailed-status-message (text(MAX)) has wrong "
- "group tag %s (RFC 2911 section 3.1.6.3).",
- ippTagString(attrptr->group_tag));
- if (attrptr->num_values != 1)
- print_test_error("detailed-status-message (text(MAX)) has %d values"
- " (RFC 2911 section 3.1.6.3).",
- attrptr->num_values);
- if (attrptr->value_tag == IPP_TAG_TEXT &&
- strlen(attrptr->values[0].string.text) > 1023)
- print_test_error("detailed-status-message (text(MAX)) has bad "
- "length %d (RFC 2911 section 3.1.6.3).",
- (int)strlen(attrptr->values[0].string.text));
- }
-
- a = cupsArrayNew((cups_array_func_t)strcmp, NULL);
-
- for (attrptr = response->attrs, group = attrptr->group_tag;
- attrptr;
- attrptr = attrptr->next)
- {
- if (attrptr->group_tag != group)
- {
- cupsArrayClear(a);
-
- switch (attrptr->group_tag)
- {
- case IPP_TAG_ZERO :
- break;
-
- case IPP_TAG_OPERATION :
- prev_pass = pass = 0;
- break;
-
- case IPP_TAG_UNSUPPORTED_GROUP :
- if (group != IPP_TAG_OPERATION)
- print_test_error("Attribute groups out of order (%s < %s)",
- ippTagString(attrptr->group_tag),
- ippTagString(group));
- break;
-
- case IPP_TAG_JOB :
- case IPP_TAG_PRINTER :
- if (group != IPP_TAG_OPERATION &&
- group != IPP_TAG_UNSUPPORTED_GROUP)
- print_test_error("Attribute groups out of order (%s < %s)",
- ippTagString(attrptr->group_tag),
- ippTagString(group));
- break;
-
- case IPP_TAG_SUBSCRIPTION :
- if (group > attrptr->group_tag &&
- group != IPP_TAG_DOCUMENT)
- print_test_error("Attribute groups out of order (%s < %s)",
- ippTagString(attrptr->group_tag),
- ippTagString(group));
- break;
-
- default :
- if (group > attrptr->group_tag)
- print_test_error("Attribute groups out of order (%s < %s)",
- ippTagString(attrptr->group_tag),
- ippTagString(group));
- break;
- }
-
- if (attrptr->group_tag != IPP_TAG_ZERO)
- group = attrptr->group_tag;
- }
-
- validate_attr(attrptr, 1);
-
- if (attrptr->name)
- {
- if (cupsArrayFind(a, attrptr->name))
- print_test_error("Duplicate \"%s\" attribute in %s group",
- attrptr->name, ippTagString(group));
-
- cupsArrayAdd(a, attrptr->name);
- }
- }
-
- cupsArrayDelete(a);
-
- for (i = 0; i < num_statuses; i ++)
- {
- if (statuses[i].if_defined &&
- !get_variable(vars, statuses[i].if_defined))
- continue;
-
- if (statuses[i].if_not_defined &&
- get_variable(vars, statuses[i].if_not_defined))
- continue;
-
- if (response->request.status.status_code == statuses[i].status)
- break;
- }
-
- if (i == num_statuses && num_statuses > 0)
- {
- for (i = 0; i < num_statuses; i ++)
- {
- if (statuses[i].if_defined &&
- !get_variable(vars, statuses[i].if_defined))
- continue;
-
- if (statuses[i].if_not_defined &&
- get_variable(vars, statuses[i].if_not_defined))
- continue;
-
- print_test_error("EXPECTED: STATUS %s (got %s)",
- ippErrorString(statuses[i].status),
- ippErrorString(cupsLastError()));
- }
-
- if ((attrptr = ippFindAttribute(response, "status-message",
- IPP_TAG_TEXT)) != NULL)
- print_test_error("status-message=\"%s\"",
- attrptr->values[0].string.text);
- }
-
- for (i = num_expects, expect = expects; i > 0; i --, expect ++)
- {
- if (expect->define_match || expect->define_no_match ||
- expect->define_value)
- continue;
-
- if (expect->if_defined && !get_variable(vars, expect->if_defined))
- continue;
-
- if (expect->if_not_defined &&
- get_variable(vars, expect->if_not_defined))
- continue;
-
- found = ippFindAttribute(response, expect->name, IPP_TAG_ZERO);
-
- if (found && expect->not_expect)
- print_test_error("NOT EXPECTED: %s", expect->name);
- else if (!found && !(expect->not_expect || expect->optional))
- print_test_error("EXPECTED: %s", expect->name);
- else if (found)
- {
- if (!expect_matches(expect, found->value_tag))
- print_test_error("EXPECTED: %s OF-TYPE %s (got %s)",
- expect->name, expect->of_type,
- ippTagString(found->value_tag));
-
- if (expect->in_group && found->group_tag != expect->in_group)
- print_test_error("EXPECTED: %s IN-GROUP %s (got %s).",
- expect->name, ippTagString(expect->in_group),
- ippTagString(found->group_tag));
-
- if (!with_value(expect->with_value, expect->with_regex, found, 0,
- buffer, sizeof(buffer)))
- {
- if (expect->with_regex)
- print_test_error("EXPECTED: %s WITH-VALUE /%s/",
- expect->name, expect->with_value);
- else
- print_test_error("EXPECTED: %s WITH-VALUE \"%s\"",
- expect->name, expect->with_value);
-
- with_value(expect->with_value, expect->with_regex, found, 1,
- buffer, sizeof(buffer));
- }
-
- if (expect->count > 0 && found->num_values != expect->count)
- {
- print_test_error("EXPECTED: %s COUNT %d (got %d)", expect->name,
- expect->count, found->num_values);
- }
-
- if (expect->same_count_as)
- {
- attrptr = ippFindAttribute(response, expect->same_count_as,
- IPP_TAG_ZERO);
-
- if (!attrptr)
- print_test_error("EXPECTED: %s (%d values) SAME-COUNT-AS %s "
- "(not returned)", expect->name,
- found->num_values, expect->same_count_as);
- else if (attrptr->num_values != found->num_values)
- print_test_error("EXPECTED: %s (%d values) SAME-COUNT-AS %s "
- "(%d values)", expect->name, found->num_values,
- expect->same_count_as, attrptr->num_values);
- }
- }
- }
+ for (error = (char *)cupsArrayFirst(errors);
+ error;
+ error = (char *)cupsArrayNext(errors))
+ printf(" %s\n", error);
}
-
- if (Output == _CUPS_OUTPUT_PLIST)
- puts("</array>");
}
- if (num_displayed > 0 && !Verbosity &&
+ if (num_displayed > 0 && !Verbosity && response &&
(Output == _CUPS_OUTPUT_TEST || Output == _CUPS_OUTPUT_PLIST))
{
for (attrptr = response->attrs;
@@ -2986,6 +3029,8 @@ do_tests(_cups_vars_t *vars, /* I - Variables */
test_exit:
+ cupsArrayDelete(errors);
+
if (fp)
fclose(fp);
@@ -3235,7 +3280,7 @@ get_collection(_cups_vars_t *vars, /* I - Variables */
if ((tempcol = realloc(lastcol, sizeof(ipp_attribute_t) +
(lastcol->num_values + 1) *
- sizeof(ipp_value_t))) == NULL)
+ sizeof(_ipp_value_t))) == NULL)
{
print_fatal_error("Unable to allocate memory on line %d.", *linenum);
goto col_error;
@@ -3317,7 +3362,9 @@ get_collection(_cups_vars_t *vars, /* I - Variables */
char units[6]; /* Units */
if (sscanf(token, "%dx%d%5s", &xres, &yres, units) != 3 ||
- (_cups_strcasecmp(units, "dpi") && _cups_strcasecmp(units, "dpc") &&
+ (_cups_strcasecmp(units, "dpi") &&
+ _cups_strcasecmp(units, "dpc") &&
+ _cups_strcasecmp(units, "dpcm") &&
_cups_strcasecmp(units, "other")))
{
print_fatal_error("Bad resolution value \"%s\" on line %d.",
@@ -3328,7 +3375,8 @@ get_collection(_cups_vars_t *vars, /* I - Variables */
if (!_cups_strcasecmp(units, "dpi"))
ippAddResolution(col, IPP_TAG_ZERO, attr, xres, yres,
IPP_RES_PER_INCH);
- else if (!_cups_strcasecmp(units, "dpc"))
+ else if (!_cups_strcasecmp(units, "dpc") ||
+ !_cups_strcasecmp(units, "dpcm"))
ippAddResolution(col, IPP_TAG_ZERO, attr, xres, yres,
IPP_RES_PER_CM);
else
@@ -3455,7 +3503,11 @@ get_filename(const char *testfile, /* I - Current test file */
if (*dstptr == '>')
*dstptr = '\0';
}
- else if (*src == '/' || !strchr(testfile, '/'))
+ else if (*src == '/' || !strchr(testfile, '/')
+#ifdef WIN32
+ || (isalpha(*src & 255) && src[1] == ':')
+#endif /* WIN32 */
+ )
{
/*
* Use the path as-is...
@@ -3719,12 +3771,12 @@ print_attr(ipp_attribute_t *attr, /* I - Attribute to print */
attr->values[i].resolution.xres,
attr->values[i].resolution.yres,
attr->values[i].resolution.units == IPP_RES_PER_INCH ?
- "dpi" : "dpc");
+ "dpi" : "dpcm");
else
printf("%dx%d%s ", attr->values[i].resolution.xres,
attr->values[i].resolution.yres,
attr->values[i].resolution.units == IPP_RES_PER_INCH ?
- "dpi" : "dpc");
+ "dpi" : "dpcm");
break;
case IPP_TAG_DATE :
@@ -3756,14 +3808,14 @@ print_attr(ipp_attribute_t *attr, /* I - Attribute to print */
if (Output == _CUPS_OUTPUT_PLIST)
{
fputs("<dict><key>language</key><string>", stdout);
- print_xml_string(NULL, attr->values[i].string.charset);
+ print_xml_string(NULL, attr->values[i].string.language);
fputs("</string><key>string</key><string>", stdout);
print_xml_string(NULL, attr->values[i].string.text);
puts("</string></dict>");
}
else
- printf("\"%s\"(%s) ", attr->values[i].string.text,
- attr->values[i].string.charset);
+ printf("\"%s\"[%s] ", attr->values[i].string.text,
+ attr->values[i].string.language);
break;
case IPP_TAG_BEGIN_COLLECTION :
@@ -3817,7 +3869,7 @@ print_attr(ipp_attribute_t *attr, /* I - Attribute to print */
ippTagString(attr->value_tag));
}
- _ippAttrString(attr, buffer, sizeof(buffer));
+ ippAttributeString(attr, buffer, sizeof(buffer));
puts(buffer);
}
}
@@ -3871,7 +3923,7 @@ print_col(ipp_t *col) /* I - Collection attribute to print */
printf("%dx%d%s ", attr->values[i].resolution.xres,
attr->values[i].resolution.yres,
attr->values[i].resolution.units == IPP_RES_PER_INCH ?
- "dpi" : "dpc");
+ "dpi" : "dpcm");
break;
case IPP_TAG_STRING :
@@ -3889,8 +3941,8 @@ print_col(ipp_t *col) /* I - Collection attribute to print */
case IPP_TAG_TEXTLANG :
case IPP_TAG_NAMELANG :
for (i = 0; i < attr->num_values; i ++)
- printf("\"%s\",%s ", attr->values[i].string.text,
- attr->values[i].string.charset);
+ printf("\"%s\"[%s] ", attr->values[i].string.text,
+ attr->values[i].string.language);
break;
case IPP_TAG_BEGIN_COLLECTION :
@@ -3960,7 +4012,7 @@ print_csv(
break;
else if (!strcmp(current->name, displayed[i]))
{
- _ippAttrString(current, buffer, maxlength);
+ ippAttributeString(current, buffer, maxlength);
break;
}
}
@@ -4081,7 +4133,7 @@ print_line(
break;
else if (!strcmp(current->name, displayed[i]))
{
- _ippAttrString(current, buffer, maxlength);
+ ippAttributeString(current, buffer, maxlength);
break;
}
}
@@ -4118,37 +4170,6 @@ print_line(
/*
- * 'print_test_error()' - Print a test error message.
- */
-
-static void
-print_test_error(const char *s, /* I - Printf-style format string */
- ...) /* I - Additional arguments as needed */
-{
- char buffer[10240]; /* Format buffer */
- va_list ap; /* Pointer to arguments */
-
-
- /*
- * Format the error message...
- */
-
- va_start(ap, s);
- vsnprintf(buffer, sizeof(buffer), s, ap);
- va_end(ap);
-
- /*
- * Then output it...
- */
-
- if (Output == _CUPS_OUTPUT_PLIST)
- print_xml_string("string", buffer);
- else
- printf(" %s\n", buffer);
-}
-
-
-/*
* 'print_xml_header()' - Print a standard XML plist header.
*/
@@ -4384,14 +4405,14 @@ usage(void)
_cupsLangPuts(stderr, _(" -6 Connect using IPv6."));
_cupsLangPuts(stderr, _(" -C Send requests using "
"chunking (default)."));
- _cupsLangPuts(stderr, _(" -E Test with TLS "
- "encryption."));
+ _cupsLangPuts(stdout, _(" -E Test with HTTP Upgrade to "
+ "TLS."));
_cupsLangPuts(stderr, _(" -I Ignore errors."));
_cupsLangPuts(stderr, _(" -L Send requests using "
"content-length."));
_cupsLangPuts(stderr, _(" -S Test with SSL "
"encryption."));
- _cupsLangPuts(stderr, _(" -T Set the receive/send "
+ _cupsLangPuts(stderr, _(" -T seconds Set the receive/send "
"timeout in seconds."));
_cupsLangPuts(stderr, _(" -V version Set default IPP "
"version."));
@@ -4405,11 +4426,9 @@ usage(void)
"the given time interval."));
_cupsLangPuts(stderr, _(" -n count Repeat the last file the "
"given number of times."));
- _cupsLangPuts(stderr, _(" -q Be quiet - no output "
- "except errors."));
+ _cupsLangPuts(stderr, _(" -q Run silently."));
_cupsLangPuts(stderr, _(" -t Produce a test report."));
- _cupsLangPuts(stderr, _(" -v Show all attributes sent "
- "and received."));
+ _cupsLangPuts(stderr, _(" -v Be verbose."));
exit(1);
}
@@ -4420,8 +4439,8 @@ usage(void)
*/
static int /* O - 1 if valid, 0 otherwise */
-validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
- int print) /* I - 1 = report issues to stdout */
+validate_attr(cups_array_t *errors, /* I - Errors array */
+ ipp_attribute_t *attr) /* I - Attribute to validate */
{
int i; /* Looping var */
char scheme[64], /* Scheme from URI */
@@ -4456,18 +4475,18 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad attribute name - invalid character (RFC "
- "2911 section 4.1.3).", attr->name);
+ add_stringf(errors,
+ "\"%s\": Bad attribute name - invalid character "
+ "(RFC 2911 section 4.1.3).", attr->name);
}
if ((ptr - attr->name) > 255)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad attribute name - bad length (RFC 2911 "
- "section 4.1.3).", attr->name);
+ add_stringf(errors,
+ "\"%s\": Bad attribute name - bad length "
+ "(RFC 2911 section 4.1.3).", attr->name);
}
switch (attr->value_tag)
@@ -4483,11 +4502,10 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad boolen value %d (RFC 2911 section "
- "4.1.10).", attr->name, attr->values[i].boolean);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad boolen value %d "
+ "(RFC 2911 section 4.1.10).", attr->name,
+ attr->values[i].boolean);
}
}
break;
@@ -4499,12 +4517,10 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad enum value %d - out of range "
- "(RFC 2911 section 4.1.4).", attr->name,
- attr->values[i].integer);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad enum value %d - out of range "
+ "(RFC 2911 section 4.1.4).", attr->name,
+ attr->values[i].integer);
}
}
break;
@@ -4516,12 +4532,10 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad octetString value - bad length %d "
- "(RFC 2911 section 4.1.10).", attr->name,
- attr->values[i].unknown.length);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad octetString value - bad length %d "
+ "(RFC 2911 section 4.1.10).", attr->name,
+ attr->values[i].unknown.length);
}
}
break;
@@ -4535,99 +4549,81 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad dateTime month %u (RFC 2911 "
- "section 4.1.13).", attr->name, date[2]);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad dateTime month %u "
+ "(RFC 2911 section 4.1.13).", attr->name, date[2]);
}
if (date[3] < 1 || date[3] > 31)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad dateTime day %u (RFC 2911 "
- "section 4.1.13).", attr->name, date[3]);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad dateTime day %u "
+ "(RFC 2911 section 4.1.13).", attr->name, date[3]);
}
if (date[4] > 23)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad dateTime hours %u (RFC 2911 "
- "section 4.1.13).", attr->name, date[4]);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad dateTime hours %u "
+ "(RFC 2911 section 4.1.13).", attr->name, date[4]);
}
if (date[5] > 59)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad dateTime minutes %u (RFC 2911 "
- "section 4.1.13).", attr->name, date[5]);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad dateTime minutes %u "
+ "(RFC 2911 section 4.1.13).", attr->name, date[5]);
}
if (date[6] > 60)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad dateTime seconds %u (RFC 2911 "
- "section 4.1.13).", attr->name, date[6]);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad dateTime seconds %u "
+ "(RFC 2911 section 4.1.13).", attr->name, date[6]);
}
if (date[7] > 9)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad dateTime deciseconds %u (RFC 2911 "
- "section 4.1.13).", attr->name, date[7]);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad dateTime deciseconds %u "
+ "(RFC 2911 section 4.1.13).", attr->name, date[7]);
}
if (date[8] != '-' && date[8] != '+')
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad dateTime UTC sign '%c' (RFC 2911 "
- "section 4.1.13).", attr->name, date[8]);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad dateTime UTC sign '%c' "
+ "(RFC 2911 section 4.1.13).", attr->name, date[8]);
}
if (date[9] > 11)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad dateTime UTC hours %u (RFC 2911 "
- "section 4.1.13).", attr->name, date[9]);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad dateTime UTC hours %u "
+ "(RFC 2911 section 4.1.13).", attr->name, date[9]);
}
if (date[10] > 59)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad dateTime UTC minutes %u (RFC 2911 "
- "section 4.1.13).", attr->name, date[10]);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad dateTime UTC minutes %u "
+ "(RFC 2911 section 4.1.13).", attr->name, date[10]);
}
}
break;
@@ -4639,36 +4635,32 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad resolution value %dx%d%s - cross "
- "feed resolution must be positive (RFC 2911 "
- "section 4.1.13).", attr->name,
- attr->values[i].resolution.xres,
- attr->values[i].resolution.yres,
- attr->values[i].resolution.units ==
- IPP_RES_PER_INCH ? "dpi" :
- attr->values[i].resolution.units ==
- IPP_RES_PER_CM ? "dpc" : "unknown");
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad resolution value %dx%d%s - cross "
+ "feed resolution must be positive "
+ "(RFC 2911 section 4.1.13).", attr->name,
+ attr->values[i].resolution.xres,
+ attr->values[i].resolution.yres,
+ attr->values[i].resolution.units ==
+ IPP_RES_PER_INCH ? "dpi" :
+ attr->values[i].resolution.units ==
+ IPP_RES_PER_CM ? "dpcm" : "unknown");
}
if (attr->values[i].resolution.yres <= 0)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad resolution value %dx%d%s - feed "
- "resolution must be positive (RFC 2911 section "
- "4.1.13).", attr->name,
- attr->values[i].resolution.xres,
- attr->values[i].resolution.yres,
- attr->values[i].resolution.units ==
- IPP_RES_PER_INCH ? "dpi" :
- attr->values[i].resolution.units ==
- IPP_RES_PER_CM ? "dpc" : "unknown");
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad resolution value %dx%d%s - feed "
+ "resolution must be positive "
+ "(RFC 2911 section 4.1.13).", attr->name,
+ attr->values[i].resolution.xres,
+ attr->values[i].resolution.yres,
+ attr->values[i].resolution.units ==
+ IPP_RES_PER_INCH ? "dpi" :
+ attr->values[i].resolution.units ==
+ IPP_RES_PER_CM ? "dpcm" : "unknown");
}
if (attr->values[i].resolution.units != IPP_RES_PER_INCH &&
@@ -4676,17 +4668,15 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad resolution value %dx%d%s - bad "
- "units value (RFC 2911 section 4.1.13).",
- attr->name, attr->values[i].resolution.xres,
- attr->values[i].resolution.yres,
- attr->values[i].resolution.units ==
- IPP_RES_PER_INCH ? "dpi" :
- attr->values[i].resolution.units ==
- IPP_RES_PER_CM ? "dpc" : "unknown");
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad resolution value %dx%d%s - bad "
+ "units value (RFC 2911 section 4.1.13).",
+ attr->name, attr->values[i].resolution.xres,
+ attr->values[i].resolution.yres,
+ attr->values[i].resolution.units ==
+ IPP_RES_PER_INCH ? "dpi" :
+ attr->values[i].resolution.units ==
+ IPP_RES_PER_CM ? "dpcm" : "unknown");
}
}
break;
@@ -4698,13 +4688,11 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad rangeOfInteger value %d-%d - lower "
- "greater than upper (RFC 2911 section 4.1.13).",
- attr->name, attr->values[i].range.lower,
- attr->values[i].range.upper);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad rangeOfInteger value %d-%d - lower "
+ "greater than upper (RFC 2911 section 4.1.13).",
+ attr->name, attr->values[i].range.lower,
+ attr->values[i].range.upper);
}
}
break;
@@ -4716,20 +4704,20 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
colattr;
colattr = colattr->next)
{
- if (!validate_attr(colattr, 0))
+ if (!validate_attr(NULL, colattr))
{
valid = 0;
break;
}
}
- if (colattr && print)
+ if (colattr && errors)
{
- print_test_error("\"%s\": Bad collection value.", attr->name);
+ add_stringf(errors, "\"%s\": Bad collection value.", attr->name);
while (colattr)
{
- validate_attr(colattr, print);
+ validate_attr(errors, colattr);
colattr = colattr->next;
}
}
@@ -4777,25 +4765,21 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad text value \"%s\" - bad UTF-8 "
- "sequence (RFC 2911 section 4.1.1).", attr->name,
- attr->values[i].string.text);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad text value \"%s\" - bad UTF-8 "
+ "sequence (RFC 2911 section 4.1.1).", attr->name,
+ attr->values[i].string.text);
}
if ((ptr - attr->values[i].string.text) > 1023)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad text value \"%s\" - bad length %d "
- "(RFC 2911 section 4.1.1).", attr->name,
- attr->values[i].string.text,
- (int)strlen(attr->values[i].string.text));
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad text value \"%s\" - bad length %d "
+ "(RFC 2911 section 4.1.1).", attr->name,
+ attr->values[i].string.text,
+ (int)strlen(attr->values[i].string.text));
}
}
break;
@@ -4841,25 +4825,21 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad name value \"%s\" - bad UTF-8 "
- "sequence (RFC 2911 section 4.1.2).", attr->name,
- attr->values[i].string.text);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad name value \"%s\" - bad UTF-8 "
+ "sequence (RFC 2911 section 4.1.2).", attr->name,
+ attr->values[i].string.text);
}
if ((ptr - attr->values[i].string.text) > 1023)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad name value \"%s\" - bad length %d "
- "(RFC 2911 section 4.1.2).", attr->name,
- attr->values[i].string.text,
- (int)strlen(attr->values[i].string.text));
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad name value \"%s\" - bad length %d "
+ "(RFC 2911 section 4.1.2).", attr->name,
+ attr->values[i].string.text,
+ (int)strlen(attr->values[i].string.text));
}
}
break;
@@ -4876,25 +4856,21 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad keyword value \"%s\" - invalid "
- "character (RFC 2911 section 4.1.3).",
- attr->name, attr->values[i].string.text);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad keyword value \"%s\" - invalid "
+ "character (RFC 2911 section 4.1.3).",
+ attr->name, attr->values[i].string.text);
}
if ((ptr - attr->values[i].string.text) > 255)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad keyword value \"%s\" - bad "
- "length %d (RFC 2911 section 4.1.3).",
- attr->name, attr->values[i].string.text,
- (int)strlen(attr->values[i].string.text));
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad keyword value \"%s\" - bad "
+ "length %d (RFC 2911 section 4.1.3).",
+ attr->name, attr->values[i].string.text,
+ (int)strlen(attr->values[i].string.text));
}
}
break;
@@ -4913,27 +4889,23 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad URI value \"%s\" - %s "
- "(RFC 2911 section 4.1.5).", attr->name,
- attr->values[i].string.text,
- URIStatusStrings[uri_status -
- HTTP_URI_OVERFLOW]);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad URI value \"%s\" - %s "
+ "(RFC 2911 section 4.1.5).", attr->name,
+ attr->values[i].string.text,
+ URIStatusStrings[uri_status -
+ HTTP_URI_OVERFLOW]);
}
if (strlen(attr->values[i].string.text) > 1023)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad URI value \"%s\" - bad length %d "
- "(RFC 2911 section 4.1.5).", attr->name,
- attr->values[i].string.text,
- (int)strlen(attr->values[i].string.text));
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad URI value \"%s\" - bad length %d "
+ "(RFC 2911 section 4.1.5).", attr->name,
+ attr->values[i].string.text,
+ (int)strlen(attr->values[i].string.text));
}
}
break;
@@ -4954,25 +4926,21 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad uriScheme value \"%s\" - bad "
- "characters (RFC 2911 section 4.1.6).",
- attr->name, attr->values[i].string.text);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad uriScheme value \"%s\" - bad "
+ "characters (RFC 2911 section 4.1.6).",
+ attr->name, attr->values[i].string.text);
}
if ((ptr - attr->values[i].string.text) > 63)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad uriScheme value \"%s\" - bad "
- "length %d (RFC 2911 section 4.1.6).",
- attr->name, attr->values[i].string.text,
- (int)strlen(attr->values[i].string.text));
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad uriScheme value \"%s\" - bad "
+ "length %d (RFC 2911 section 4.1.6).",
+ attr->name, attr->values[i].string.text,
+ (int)strlen(attr->values[i].string.text));
}
}
break;
@@ -4989,25 +4957,21 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad charset value \"%s\" - bad "
- "characters (RFC 2911 section 4.1.7).",
- attr->name, attr->values[i].string.text);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad charset value \"%s\" - bad "
+ "characters (RFC 2911 section 4.1.7).",
+ attr->name, attr->values[i].string.text);
}
if ((ptr - attr->values[i].string.text) > 40)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad charset value \"%s\" - bad "
- "length %d (RFC 2911 section 4.1.7).",
- attr->name, attr->values[i].string.text,
- (int)strlen(attr->values[i].string.text));
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad charset value \"%s\" - bad "
+ "length %d (RFC 2911 section 4.1.7).",
+ attr->name, attr->values[i].string.text,
+ (int)strlen(attr->values[i].string.text));
}
}
break;
@@ -5040,6 +5004,7 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
regerror(i, &re, temp, sizeof(temp));
print_fatal_error("Unable to compile naturalLanguage regular "
"expression: %s.", temp);
+ break;
}
for (i = 0; i < attr->num_values; i ++)
@@ -5048,25 +5013,21 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad naturalLanguage value \"%s\" - bad "
- "characters (RFC 2911 section 4.1.8).",
- attr->name, attr->values[i].string.text);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad naturalLanguage value \"%s\" - bad "
+ "characters (RFC 2911 section 4.1.8).",
+ attr->name, attr->values[i].string.text);
}
if (strlen(attr->values[i].string.text) > 63)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad naturalLanguage value \"%s\" - bad "
- "length %d (RFC 2911 section 4.1.8).",
- attr->name, attr->values[i].string.text,
- (int)strlen(attr->values[i].string.text));
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad naturalLanguage value \"%s\" - bad "
+ "length %d (RFC 2911 section 4.1.8).",
+ attr->name, attr->values[i].string.text,
+ (int)strlen(attr->values[i].string.text));
}
}
@@ -5096,6 +5057,7 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
regerror(i, &re, temp, sizeof(temp));
print_fatal_error("Unable to compile mimeMediaType regular "
"expression: %s.", temp);
+ break;
}
for (i = 0; i < attr->num_values; i ++)
@@ -5104,27 +5066,25 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad mimeMediaType value \"%s\" - bad "
- "characters (RFC 2911 section 4.1.9).",
- attr->name, attr->values[i].string.text);
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad mimeMediaType value \"%s\" - bad "
+ "characters (RFC 2911 section 4.1.9).",
+ attr->name, attr->values[i].string.text);
}
if (strlen(attr->values[i].string.text) > 255)
{
valid = 0;
- if (print)
- print_test_error("\"%s\": Bad mimeMediaType value \"%s\" - bad "
- "length %d (RFC 2911 section 4.1.9).",
- attr->name, attr->values[i].string.text,
- (int)strlen(attr->values[i].string.text));
- else
- break;
+ add_stringf(errors,
+ "\"%s\": Bad mimeMediaType value \"%s\" - bad "
+ "length %d (RFC 2911 section 4.1.9).",
+ attr->name, attr->values[i].string.text,
+ (int)strlen(attr->values[i].string.text));
}
}
+
+ regfree(&re);
break;
default :
@@ -5140,18 +5100,20 @@ validate_attr(ipp_attribute_t *attr, /* I - Attribute to validate */
*/
static int /* O - 1 on match, 0 on non-match */
-with_value(char *value, /* I - Value string */
- int regex, /* I - Value is a regular expression */
+with_value(cups_array_t *errors, /* I - Errors array */
+ char *value, /* I - Value string */
+ int flags, /* I - Flags for match */
ipp_attribute_t *attr, /* I - Attribute to compare */
- int report, /* I - 1 = report failures */
char *matchbuf, /* I - Buffer to hold matching value */
size_t matchlen) /* I - Length of match buffer */
{
- int i; /* Looping var */
+ int i, /* Looping var */
+ match; /* Match? */
char *valptr; /* Pointer into value */
*matchbuf = '\0';
+ match = (flags & _CUPS_WITH_ALL) ? 1 : 0;
/*
* NULL matches everything.
@@ -5172,8 +5134,8 @@ with_value(char *value, /* I - Value string */
{
char op, /* Comparison operator */
*nextptr; /* Next pointer */
- int intvalue; /* Integer value */
-
+ int intvalue, /* Integer value */
+ valmatch = 0; /* Does the current value match? */
valptr = value;
@@ -5197,37 +5159,39 @@ with_value(char *value, /* I - Value string */
break;
valptr = nextptr;
- switch (op)
+ if ((op == '=' && attr->values[i].integer == intvalue) ||
+ (op == '<' && attr->values[i].integer < intvalue) ||
+ (op == '>' && attr->values[i].integer > intvalue))
{
- case '=' :
- if (attr->values[i].integer == intvalue)
- {
- snprintf(matchbuf, matchlen, "%d", attr->values[i].integer);
- return (1);
- }
- break;
- case '<' :
- if (attr->values[i].integer < intvalue)
- {
- snprintf(matchbuf, matchlen, "%d", attr->values[i].integer);
- return (1);
- }
- break;
- case '>' :
- if (attr->values[i].integer > intvalue)
- {
- snprintf(matchbuf, matchlen, "%d", attr->values[i].integer);
- return (1);
- }
- break;
+ if (!matchbuf[0])
+ snprintf(matchbuf, matchlen, "%d",
+ attr->values[i].integer);
+
+ valmatch = 1;
+ break;
}
}
+
+ if (flags & _CUPS_WITH_ALL)
+ {
+ if (!valmatch)
+ {
+ match = 0;
+ break;
+ }
+ }
+ else if (valmatch)
+ {
+ match = 1;
+ break;
+ }
}
- if (report)
+ if (!match && errors)
{
for (i = 0; i < attr->num_values; i ++)
- print_test_error("GOT: %s=%d", attr->name, attr->values[i].integer);
+ add_stringf(errors, "GOT: %s=%d", attr->name,
+ attr->values[i].integer);
}
break;
@@ -5236,8 +5200,8 @@ with_value(char *value, /* I - Value string */
{
char op, /* Comparison operator */
*nextptr; /* Next pointer */
- int intvalue; /* Integer value */
-
+ int intvalue, /* Integer value */
+ valmatch = 0; /* Does the current value match? */
valptr = value;
@@ -5261,44 +5225,40 @@ with_value(char *value, /* I - Value string */
break;
valptr = nextptr;
- switch (op)
+ if ((op == '=' && (attr->values[i].range.lower == intvalue ||
+ attr->values[i].range.upper == intvalue)) ||
+ (op == '<' && attr->values[i].range.upper < intvalue) ||
+ (op == '>' && attr->values[i].range.upper > intvalue))
{
- case '=' :
- if (attr->values[i].range.lower == intvalue ||
- attr->values[i].range.upper == intvalue)
- {
- snprintf(matchbuf, matchlen, "%d-%d",
- attr->values[i].range.lower,
- attr->values[i].range.upper);
- return (1);
- }
- break;
- case '<' :
- if (attr->values[i].range.upper < intvalue)
- {
- snprintf(matchbuf, matchlen, "%d-%d",
- attr->values[i].range.lower,
- attr->values[i].range.upper);
- return (1);
- }
- break;
- case '>' :
- if (attr->values[i].range.upper > intvalue)
- {
- snprintf(matchbuf, matchlen, "%d-%d",
- attr->values[i].range.lower,
- attr->values[i].range.upper);
- return (1);
- }
- break;
+ if (!matchbuf[0])
+ snprintf(matchbuf, matchlen, "%d-%d",
+ attr->values[0].range.lower,
+ attr->values[0].range.upper);
+
+ valmatch = 1;
+ break;
}
}
+
+ if (flags & _CUPS_WITH_ALL)
+ {
+ if (!valmatch)
+ {
+ match = 0;
+ break;
+ }
+ }
+ else if (valmatch)
+ {
+ match = 1;
+ break;
+ }
}
- if (report)
+ if (!match && errors)
{
for (i = 0; i < attr->num_values; i ++)
- print_test_error("GOT: %s=%d-%d", attr->name,
+ add_stringf(errors, "GOT: %s=%d-%d", attr->name,
attr->values[i].range.lower,
attr->values[i].range.upper);
}
@@ -5309,15 +5269,26 @@ with_value(char *value, /* I - Value string */
{
if (!strcmp(value, "true") == attr->values[i].boolean)
{
- strlcpy(matchbuf, value, matchlen);
- return (1);
+ if (!matchbuf[0])
+ strlcpy(matchbuf, value, matchlen);
+
+ if (!(flags & _CUPS_WITH_ALL))
+ {
+ match = 1;
+ break;
+ }
+ }
+ else if (flags & _CUPS_WITH_ALL)
+ {
+ match = 0;
+ break;
}
}
- if (report)
+ if (!match && errors)
{
for (i = 0; i < attr->num_values; i ++)
- print_test_error("GOT: %s=%s", attr->name,
+ add_stringf(errors, "GOT: %s=%s", attr->name,
attr->values[i].boolean ? "true" : "false");
}
break;
@@ -5336,7 +5307,7 @@ with_value(char *value, /* I - Value string */
case IPP_TAG_TEXTLANG :
case IPP_TAG_URI :
case IPP_TAG_URISCHEME :
- if (regex)
+ if (flags & _CUPS_WITH_REGEX)
{
/*
* Value is an extended, case-sensitive POSIX regular expression...
@@ -5361,56 +5332,69 @@ with_value(char *value, /* I - Value string */
for (i = 0; i < attr->num_values; i ++)
{
- if (regexec(&re, attr->values[i].string.text, 0, NULL, 0))
+ if (!regexec(&re, attr->values[i].string.text, 0, NULL, 0))
{
- if (report)
- print_test_error("GOT: %s=\"%s\"", attr->name,
- attr->values[i].string.text);
- else
+ if (!matchbuf[0])
+ strlcpy(matchbuf, attr->values[i].string.text, matchlen);
+
+ if (!(flags & _CUPS_WITH_ALL))
+ {
+ match = 1;
break;
+ }
+ }
+ else if (flags & _CUPS_WITH_ALL)
+ {
+ match = 0;
+ break;
}
}
regfree(&re);
-
- if (i == attr->num_values)
- strlcpy(matchbuf, attr->values[0].string.text, matchlen);
-
- return (i == attr->num_values);
}
else
{
/*
- * Value is a literal string, see if at least one value matches the
- * literal string...
+ * Value is a literal string, see if the value(s) match...
*/
for (i = 0; i < attr->num_values; i ++)
{
if (!strcmp(value, attr->values[i].string.text))
{
- strlcpy(matchbuf, attr->values[i].string.text, matchlen);
- return (1);
- }
- }
+ if (!matchbuf[0])
+ strlcpy(matchbuf, attr->values[i].string.text, matchlen);
- if (report)
- {
- for (i = 0; i < attr->num_values; i ++)
- print_test_error("GOT: %s=\"%s\"", attr->name,
- attr->values[i].string.text);
+ if (!(flags & _CUPS_WITH_ALL))
+ {
+ match = 1;
+ break;
+ }
+ }
+ else if (flags & _CUPS_WITH_ALL)
+ {
+ match = 0;
+ break;
+ }
}
}
+
+ if (!match && errors)
+ {
+ for (i = 0; i < attr->num_values; i ++)
+ add_stringf(errors, "GOT: %s=\"%s\"", attr->name,
+ attr->values[i].string.text);
+ }
break;
default :
break;
}
- return (0);
+ return (match);
}
/*
- * End of "$Id: ipptool.c 10090 2011-10-25 22:39:56Z mike $".
+ * End of "$Id: ipptool.c 10461 2012-05-11 23:01:21Z mike $".
*/
diff --git a/test/onepage-a4.ps b/test/onepage-a4.ps
index bfefc7ad..9397b89a 100644
--- a/test/onepage-a4.ps
+++ b/test/onepage-a4.ps
@@ -1,7 +1,7 @@
%!PS-Adobe-3.0
%XpdfVersion: 3.03
%%Creator: Scribus 1.4.0.rc5
-%%Title:
+%%Title:
%%LanguageLevel: 3
%%DocumentSuppliedResources: (atend)
%%DocumentMedia: plain 595 842 0 () ()
diff --git a/test/onepage-letter.ps b/test/onepage-letter.ps
index 7a00ce71..dfedeb47 100644
--- a/test/onepage-letter.ps
+++ b/test/onepage-letter.ps
@@ -1,7 +1,7 @@
%!PS-Adobe-3.0
%XpdfVersion: 3.03
%%Creator: Scribus 1.4.0.rc5
-%%Title:
+%%Title:
%%LanguageLevel: 3
%%DocumentSuppliedResources: (atend)
%%DocumentMedia: plain 612 792 0 () ()
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
index 7b6d1b72..ca3e51f7 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
@@ -1,11 +1,11 @@
#!/bin/sh
#
-# "$Id: run-stp-tests.sh 10464 2012-05-15 14:04:18Z mike $"
+# "$Id: run-stp-tests.sh 10488 2012-05-21 15:35:25Z mike $"
#
# Perform the complete set of IPP compliance tests specified in the
# CUPS Software Test Plan.
#
-# Copyright 2007-2011 by Apple Inc.
+# Copyright 2007-2012 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -18,6 +18,21 @@
argcount=$#
#
+# Don't allow "make check" or "make test" to be run by root...
+#
+
+if test "x`id -u`" = x0; then
+ echo Please run this as a normal user. Not supported when run as root.
+ exit 1
+fi
+
+#
+# Force the permissions of the files we create...
+#
+
+umask 022
+
+#
# Make the IPP test program...
#
@@ -203,12 +218,54 @@ echo ""
case "$usevalgrind" in
Y* | y*)
- valgrind="valgrind --tool=memcheck --log-file=/tmp/cups-$user/log/valgrind.%p --error-limit=no --leak-check=yes --trace-children=yes --read-var-info=yes"
+ VALGRIND="valgrind --tool=memcheck --log-file=/tmp/cups-$user/log/valgrind.%p --error-limit=no --leak-check=yes --trace-children=yes --read-var-info=yes"
+ if test `uname` = Darwin; then
+ VALGRIND="$VALGRIND --dsymutil=yes"
+ fi
+ export VALGRIND
echo "Using Valgrind; log files can be found in /tmp/cups-$user/log..."
;;
*)
- valgrind=""
+ VALGRIND=""
+ export VALGRIND
+ ;;
+esac
+
+#
+# See if we want to do debug logging of the libraries...
+#
+
+echo ""
+echo "If CUPS was built with the --enable-debug-printfs configure option, you"
+echo "can enable debug logging of the libraries."
+echo ""
+echo $ac_n "Enter Y or a number from 0 to 9 to enable debug logging or N to not: [N] $ac_c"
+
+if test $# -gt 0; then
+ usedebugprintfs=$1
+ shift
+else
+ read usedebugprintfs
+fi
+echo ""
+
+case "$usedebugprintfs" in
+ Y* | y*)
+ echo "Enabling debug printfs; log files can be found in /tmp/cups-$user/log..."
+ CUPS_DEBUG_LOG="/tmp/cups-$user/log/debug_printfs.%d"; export CUPS_DEBUG_LOG
+ CUPS_DEBUG_LEVEL=5; export CUPS_DEBUG_LEVEL
+ CUPS_DEBUG_FILTER='^(http|_http|ipp|_ipp|cups.*Request|cupsGetResponse|cupsSend).*$'; export CUPS_DEBUG_FILTER
+ ;;
+
+ 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9)
+ echo "Enabling debug printfs; log files can be found in /tmp/cups-$user/log..."
+ CUPS_DEBUG_LOG="/tmp/cups-$user/log/debug_printfs.%d"; export CUPS_DEBUG_LOG
+ CUPS_DEBUG_LEVEL=$usedebugprintf; export CUPS_DEBUG_LEVEL
+ CUPS_DEBUG_FILTER='^(http|_http|ipp|_ipp|cups.*Request|cupsGetResponse|cupsSend).*$'; export CUPS_DEBUG_FILTER
+ ;;
+
+ *)
;;
esac
@@ -250,9 +307,7 @@ ln -s $root/backend/http /tmp/cups-$user/bin/backend
ln -s $root/backend/ipp /tmp/cups-$user/bin/backend
ln -s $root/backend/lpd /tmp/cups-$user/bin/backend
ln -s $root/backend/mdns /tmp/cups-$user/bin/backend
-ln -s $root/backend/parallel /tmp/cups-$user/bin/backend
ln -s $root/backend/pseudo /tmp/cups-$user/bin/backend
-ln -s $root/backend/serial /tmp/cups-$user/bin/backend
ln -s $root/backend/snmp /tmp/cups-$user/bin/backend
ln -s $root/backend/socket /tmp/cups-$user/bin/backend
ln -s $root/backend/usb /tmp/cups-$user/bin/backend
@@ -260,16 +315,13 @@ ln -s $root/cgi-bin /tmp/cups-$user/bin
ln -s $root/monitor /tmp/cups-$user/bin
ln -s $root/notifier /tmp/cups-$user/bin
ln -s $root/scheduler /tmp/cups-$user/bin/daemon
-ln -s $root/filter/bannertops /tmp/cups-$user/bin/filter
ln -s $root/filter/commandtops /tmp/cups-$user/bin/filter
ln -s $root/filter/gziptoany /tmp/cups-$user/bin/filter
-ln -s $root/filter/hpgltops /tmp/cups-$user/bin/filter
ln -s $root/filter/pstops /tmp/cups-$user/bin/filter
ln -s $root/filter/rastertoepson /tmp/cups-$user/bin/filter
ln -s $root/filter/rastertohp /tmp/cups-$user/bin/filter
ln -s $root/filter/rastertolabel /tmp/cups-$user/bin/filter
ln -s $root/filter/rastertopwg /tmp/cups-$user/bin/filter
-ln -s $root/filter/texttops /tmp/cups-$user/bin/filter
ln -s $root/data/classified /tmp/cups-$user/share/banners
ln -s $root/data/confidential /tmp/cups-$user/share/banners
@@ -277,10 +329,7 @@ ln -s $root/data/secret /tmp/cups-$user/share/banners
ln -s $root/data/standard /tmp/cups-$user/share/banners
ln -s $root/data/topsecret /tmp/cups-$user/share/banners
ln -s $root/data/unclassified /tmp/cups-$user/share/banners
-ln -s $root/data /tmp/cups-$user/share/charmaps
-ln -s $root/data /tmp/cups-$user/share/charsets
ln -s $root/data /tmp/cups-$user/share
-ln -s $root/fonts /tmp/cups-$user/share
ln -s $root/ppdc/sample.drv /tmp/cups-$user/share/drv
ln -s $root/conf/mime.types /tmp/cups-$user/share/mime
ln -s $root/conf/mime.convs /tmp/cups-$user/share/mime
@@ -288,16 +337,8 @@ ln -s $root/data/*.h /tmp/cups-$user/share/ppdc
ln -s $root/data/*.defs /tmp/cups-$user/share/ppdc
ln -s $root/templates /tmp/cups-$user/share
-if test -f $root/filter/imagetops; then
- ln -s $root/filter/imagetops /tmp/cups-$user/bin/filter
-fi
-
-if test -f $root/filter/imagetoraster; then
- ln -s $root/filter/imagetoraster /tmp/cups-$user/bin/filter
-fi
-
#
-# Mac OS X filters and configuration files...
+# Local filters and configuration files...
#
if test `uname` = Darwin; then
@@ -320,7 +361,13 @@ if test `uname` = Darwin; then
ln -s /usr/share/cups/mime/apple.* /tmp/cups-$user/share/mime
fi
else
- ln -s $root/filter/pdftops /tmp/cups-$user/bin/filter
+ ln -s /usr/lib/cups/filter/bannertops /tmp/cups-$user/bin/filter
+ ln -s /usr/lib/cups/filter/imagetops /tmp/cups-$user/bin/filter
+ ln -s /usr/lib/cups/filter/imagetoraster /tmp/cups-$user/bin/filter
+ ln -s /usr/lib/cups/filter/pdftops /tmp/cups-$user/bin/filter
+ ln -s /usr/lib/cups/filter/texttops /tmp/cups-$user/bin/filter
+
+ ln -s /usr/share/cups/mime/legacy.convs /tmp/cups-$user/share/mime
fi
#
@@ -336,10 +383,11 @@ else
fi
cat >/tmp/cups-$user/cupsd.conf <<EOF
+StrictConformance Yes
Browsing Off
FileDevice yes
Printcap
-Listen 127.0.0.1:$port
+Listen localhost:$port
User $user
ServerRoot /tmp/cups-$user
StateDir /tmp/cups-$user
@@ -348,6 +396,7 @@ CacheDir /tmp/cups-$user/share
DataDir /tmp/cups-$user/share
FontPath /tmp/cups-$user/share/fonts
PassEnv LOCALEDIR
+PassEnv DYLD_INSERT_LIBRARIES
DocumentRoot $root/doc
RequestRoot /tmp/cups-$user/spool
TempDir /tmp/cups-$user/spool/temp
@@ -362,9 +411,7 @@ LogTimeFormat usecs
PreserveJobHistory Yes
<Policy default>
<Limit All>
-Order Deny,Allow
-Deny from all
-Allow from 127.0.0.1
+Order Allow,Deny
$encryption
</Limit>
</Policy>
@@ -424,31 +471,31 @@ fi
echo "Setting up environment variables for test..."
if test "x$LD_LIBRARY_PATH" = x; then
- LD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/driver:$root/ppdc"
+ LD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc"
else
- LD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/driver:$root/ppdc:$LD_LIBRARY_PATH"
+ LD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc:$LD_LIBRARY_PATH"
fi
export LD_LIBRARY_PATH
-LD_PRELOAD="$root/cups/libcups.so.2:$root/filter/libcupsimage.so.2:$root/cgi-bin/libcupscgi.so.1:$root/scheduler/libcupsmime.so.1:$root/driver/libcupsdriver.so.1:$root/ppdc/libcupsppdc.so.1"
+LD_PRELOAD="$root/cups/libcups.so.2:$root/filter/libcupsimage.so.2:$root/cgi-bin/libcupscgi.so.1:$root/scheduler/libcupsmime.so.1:$root/ppdc/libcupsppdc.so.1"
if test `uname` = SunOS -a -r /usr/lib/libCrun.so.1; then
LD_PRELOAD="/usr/lib/libCrun.so.1:$LD_PRELOAD"
fi
export LD_PRELOAD
if test "x$DYLD_LIBRARY_PATH" = x; then
- DYLD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/driver:$root/ppdc"
+ DYLD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc"
else
- DYLD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/driver:$root/ppdc:$DYLD_LIBRARY_PATH"
+ DYLD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc:$DYLD_LIBRARY_PATH"
fi
export DYLD_LIBRARY_PATH
if test "x$SHLIB_PATH" = x; then
- SHLIB_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/driver:$root/ppdc"
+ SHLIB_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc"
else
- SHLIB_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/driver:$root/ppdc:$SHLIB_PATH"
+ SHLIB_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc:$SHLIB_PATH"
fi
export SHLIB_PATH
@@ -482,14 +529,14 @@ export LC_MESSAGES
#
echo "Starting scheduler:"
-echo " $valgrind ../scheduler/cupsd -c /tmp/cups-$user/cupsd.conf -f >/tmp/cups-$user/log/debug_log 2>&1 &"
+echo " $VALGRIND ../scheduler/cupsd -c /tmp/cups-$user/cupsd.conf -f >/tmp/cups-$user/log/debug_log 2>&1 &"
echo ""
-if test `uname` = Darwin -a "x$valgrind" = x -a -f /usr/lib/libgmalloc.dylib; then
- DYLD_INSERT_LIBRARIES=/usr/lib/libgmalloc.dylib \
- $valgrind ../scheduler/cupsd -c /tmp/cups-$user/cupsd.conf -f >/tmp/cups-$user/log/debug_log 2>&1 &
+if test `uname` = Darwin -a "x$VALGRIND" = x; then
+ DYLD_INSERT_LIBRARIES=/usr/lib/libgmalloc.dylib
+ ../scheduler/cupsd -c /tmp/cups-$user/cupsd.conf -f >/tmp/cups-$user/log/debug_log 2>&1 &
else
- $valgrind ../scheduler/cupsd -c /tmp/cups-$user/cupsd.conf -f >/tmp/cups-$user/log/debug_log 2>&1 &
+ $VALGRIND ../scheduler/cupsd -c /tmp/cups-$user/cupsd.conf -f >/tmp/cups-$user/log/debug_log 2>&1 &
fi
cupsd=$!
@@ -553,7 +600,7 @@ done
#
date=`date "+%Y-%m-%d"`
-strfile=/tmp/cups-$user/cups-str-1.5-$date-$user.html
+strfile=/tmp/cups-$user/cups-str-1.6-$date-$user.html
rm -f $strfile
cat str-header.html >$strfile
@@ -572,11 +619,18 @@ echo `date "+%Y-%m-%d"` by $user on `hostname`. >>$strfile
echo "<PRE>" >>$strfile
fail=0
-for file in 4*.test; do
+for file in 4*.test ipp-2.1.test; do
echo $ac_n "Performing $file: $ac_c"
echo "" >>$strfile
- ./ipptool -tI ipp://localhost:$port/printers $file >> $strfile
+ if test $file = ipp-2.1.test; then
+ uri="ipp://localhost:$port/printers/Test1"
+ options="-V 2.1 -d NOPRINT=1 -f testfile.ps"
+ else
+ uri="ipp://localhost:$port/printers"
+ options=""
+ fi
+ $VALGRIND ./ipptool -tI $options $uri $file >> $strfile
status=$?
if test $status != 0; then
@@ -677,9 +731,21 @@ else
echo "<P>PASS: Printer 'Test2' correctly produced $count page(s).</P>" >>$strfile
fi
+# Paged printed on Test3
+count=`$GREP '^Test3 ' /tmp/cups-$user/log/page_log | grep -v total | awk 'BEGIN{count=0}{count=count+$7}END{print count}'`
+expected=2
+if test $count != $expected; then
+ echo "FAIL: Printer 'Test3' produced $count page(s), expected $expected."
+ echo "<P>FAIL: Printer 'Test3' produced $count page(s), expected $expected.</P>" >>$strfile
+ fail=`expr $fail + 1`
+else
+ echo "PASS: Printer 'Test3' correctly produced $count page(s)."
+ echo "<P>PASS: Printer 'Test3' correctly produced $count page(s).</P>" >>$strfile
+fi
+
# Requests logged
count=`wc -l /tmp/cups-$user/log/access_log | awk '{print $1}'`
-expected=`expr 37 + 18 + $pjobs \* 8 + $pprinters \* $pjobs \* 4`
+expected=`expr 37 + 18 + 28 + $pjobs \* 8 + $pprinters \* $pjobs \* 4`
if test $count != $expected; then
echo "FAIL: $count requests logged, expected $expected."
echo "<P>FAIL: $count requests logged, expected $expected.</P>" >>$strfile
@@ -749,10 +815,10 @@ fi
# Error log messages
count=`$GREP '^E ' /tmp/cups-$user/log/error_log | wc -l | awk '{print $1}'`
-if test $count != 18; then
- echo "FAIL: $count error messages, expected 18."
+if test $count != 33; then
+ echo "FAIL: $count error messages, expected 33."
$GREP '^E ' /tmp/cups-$user/log/error_log
- echo "<P>FAIL: $count error messages, expected 18.</P>" >>$strfile
+ echo "<P>FAIL: $count error messages, expected 33.</P>" >>$strfile
echo "<PRE>" >>$strfile
$GREP '^E ' /tmp/cups-$user/log/error_log | sed -e '1,$s/&/&amp;/g' -e '1,$s/</&lt;/g' >>$strfile
echo "</PRE>" >>$strfile
@@ -870,5 +936,5 @@ if test $fail != 0; then
fi
#
-# End of "$Id: run-stp-tests.sh 10464 2012-05-15 14:04:18Z mike $"
+# End of "$Id: run-stp-tests.sh 10488 2012-05-21 15:35:25Z mike $"
#
diff --git a/test/str-header.html b/test/str-header.html
index 84f0d9b7..f9204bbe 100644
--- a/test/str-header.html
+++ b/test/str-header.html
@@ -1,8 +1,8 @@
<HTML>
<HEAD>
<META NAME="Description" CONTENT="CUPS Test Report">
- <META NAME="COPYRIGHT" CONTENT="Copyright 2007-2010, All Rights Reserved">
- <META NAME="DOCNUMBER" CONTENT="CUPS-STR-1.5">
+ <META NAME="COPYRIGHT" CONTENT="Copyright 2007-2011, All Rights Reserved">
+ <META NAME="DOCNUMBER" CONTENT="CUPS-STR-1.6">
<META NAME="Author" CONTENT="Apple Inc.">
<TITLE>CUPS 1.5 Software Test Report</TITLE>
<STYLE TYPE="text/css"><!--
@@ -14,10 +14,10 @@
</HEAD>
<BODY>
-<H1>CUPS 1.5 Software Test Report</H1>
+<H1>CUPS 1.6 Software Test Report</H1>
<P>This software test report provides detailed test results that
-are used to evaluate the stability and compliance of CUPS Version 1.5.
+are used to evaluate the stability and compliance of CUPS Version 1.6.
<H2>Document Overview</H2>
diff --git a/test/testfile.pcl b/test/testfile.pcl
new file mode 100644
index 00000000..4b865976
--- /dev/null
+++ b/test/testfile.pcl
@@ -0,0 +1,60 @@
+EAll work and no play makes Johhny a dull boy. All work and no
+play makes Johhny a dull boy. All work and no play makes Johhny
+a dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. E
diff --git a/test/testfile.txt b/test/testfile.txt
index 46bbf084..bad0a31e 100644
--- a/test/testfile.txt
+++ b/test/testfile.txt
@@ -1,60 +1,60 @@
-All work and no play makes Johhny a dull boy. All work and no
-play makes Johhny a dull boy. All work and no play makes Johhny
-a dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy. All
-work and no play makes Johhny a dull boy. All work and no play
-makes Johhny a dull boy. All work and no play makes Johhny a
-dull boy. All work and no play makes Johhny a dull boy.
+All work and no play makes Johhny a dull boy. All work and no
+play makes Johhny a dull boy. All work and no play makes Johhny
+a dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy. All
+work and no play makes Johhny a dull boy. All work and no play
+makes Johhny a dull boy. All work and no play makes Johhny a
+dull boy. All work and no play makes Johhny a dull boy.
diff --git a/test/xmltotest.c b/test/xmltotest.c
new file mode 100644
index 00000000..efe04553
--- /dev/null
+++ b/test/xmltotest.c
@@ -0,0 +1,529 @@
+/*
+ * "$Id: xmltotest.c 10192 2012-01-20 21:49:02Z mike $"
+ *
+ * IANA XML registration to test file generator for CUPS.
+ *
+ * Copyright 2011-2012 by Apple Inc.
+ *
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
+ *
+ * This file is subject to the Apple OS-Developed Software exception.
+ *
+ * Usage:
+ *
+ * ./xmltotest [--ref standard] {--job|--printer} [XML file/URL] >file.test
+ *
+ * If not specified, loads the XML registrations from:
+ *
+ * http://www.iana.org/assignments/ipp-registrations/ipp-registrations.xml
+ *
+ * "Standard" is of the form "rfcNNNN" or "pwgNNNN.N".
+ *
+ * Contents:
+ *
+ * main() - Process command-line arguments.
+ * compare_reg() - Compare two registrations.
+ * load_xml() - Load the XML registration file or URL.
+ * match_xref() - Compare the xref against the named standard.
+ * new_reg() - Create a new registration record.
+ * usage() - Show usage message.
+ * write_expect() - Write an EXPECT test for an attribute.
+ */
+
+
+#include <config.h>
+#include <cups/cups.h>
+#include <unistd.h>
+#include <fcntl.h>
+
+#ifdef HAVE_MXML_H
+# include <mxml.h>
+/*
+ * Local types...
+ */
+
+typedef struct _cups_reg_s /**** Registration data ****/
+{
+ char *name, /* Attribute name */
+ *member, /* Member attribute name */
+ *sub_member, /* Sub-member attribute name */
+ *syntax; /* Attribute syntax */
+} _cups_reg_t;
+
+
+/*
+ * Local functions...
+ */
+
+static int compare_reg(_cups_reg_t *a, _cups_reg_t *b);
+static mxml_node_t *load_xml(const char *reg_file);
+static int match_xref(mxml_node_t *xref, const char *standard);
+static _cups_reg_t *new_reg(mxml_node_t *name, mxml_node_t *member,
+ mxml_node_t *sub_member, mxml_node_t *syntax);
+static int usage(void);
+static void write_expect(_cups_reg_t *reg, ipp_tag_t group);
+
+
+/*
+ * 'main()' - Process command-line arguments.
+ */
+
+int
+main(int argc, /* I - Number of command-line args */
+ char *argv[]) /* I - Command-line arguments */
+{
+ int i; /* Looping var */
+ const char *reg_file = NULL, /* Registration file/URL to use */
+ *reg_standard = NULL; /* Which standard to extract */
+ mxml_node_t *reg_xml, /* Registration XML data */
+ *reg_2, /* ipp-registrations-2 */
+ *reg_record, /* <record> */
+ *reg_collection, /* <collection> */
+ *reg_name, /* <name> */
+ *reg_member, /* <member_attribute> */
+ *reg_sub_member, /* <sub-member_attribute> */
+ *reg_syntax, /* <syntax> */
+ *reg_xref; /* <xref> */
+ cups_array_t *attrs; /* Attribute registrations */
+ _cups_reg_t *current; /* Current attribute registration */
+ ipp_tag_t group = IPP_TAG_ZERO, /* Which attributes to test */
+ reg_group; /* Group for registration */
+
+
+ /*
+ * Parse command-line...
+ */
+
+ for (i = 1; i < argc; i ++)
+ {
+ if (!strcmp(argv[i], "--job") && group == IPP_TAG_ZERO)
+ group = IPP_TAG_JOB;
+ else if (!strcmp(argv[i], "--ref"))
+ {
+ i ++;
+ if (i >= argc)
+ return (usage());
+
+ reg_standard = argv[i];
+ }
+ else if (!strcmp(argv[i], "--printer") && group == IPP_TAG_ZERO)
+ group = IPP_TAG_PRINTER;
+ else if (argv[i][0] == '-' || reg_file)
+ return (usage());
+ else
+ reg_file = argv[i];
+ }
+
+ if (group == IPP_TAG_ZERO)
+ return (usage());
+
+ /*
+ * Read registrations...
+ */
+
+ if (!reg_file)
+ reg_file = "http://www.iana.org/assignments/ipp-registrations/"
+ "ipp-registrations.xml";
+
+ if ((reg_xml = load_xml(reg_file)) == NULL)
+ return (1);
+
+ /*
+ * Scan registrations for attributes...
+ */
+
+ if ((reg_2 = mxmlFindElement(reg_xml, reg_xml, "registry", "id",
+ "ipp-registrations-2",
+ MXML_DESCEND)) == NULL)
+ {
+ fprintf(stderr, "xmltotest: No IPP attribute registrations in \"%s\".\n",
+ reg_file);
+ return (1);
+ }
+
+ attrs = cupsArrayNew((cups_array_func_t)compare_reg, NULL);
+
+ for (reg_record = mxmlFindElement(reg_2, reg_2, "record", NULL, NULL,
+ MXML_DESCEND);
+ reg_record;
+ reg_record = mxmlFindElement(reg_record, reg_2, "record", NULL, NULL,
+ MXML_NO_DESCEND))
+ {
+ /*
+ * Get the values from the current record...
+ */
+
+ reg_collection = mxmlFindElement(reg_record, reg_record, "collection",
+ NULL, NULL, MXML_DESCEND);
+ reg_name = mxmlFindElement(reg_record, reg_record, "name", NULL, NULL,
+ MXML_DESCEND);
+ reg_member = mxmlFindElement(reg_record, reg_record, "member_attribute",
+ NULL, NULL, MXML_DESCEND);
+ reg_sub_member = mxmlFindElement(reg_record, reg_record,
+ "sub-member_attribute", NULL, NULL,
+ MXML_DESCEND);
+ reg_syntax = mxmlFindElement(reg_record, reg_record, "syntax", NULL,
+ NULL, MXML_DESCEND);
+ reg_xref = mxmlFindElement(reg_record, reg_record, "xref", NULL, NULL,
+ MXML_DESCEND);
+
+ if (!reg_collection || !reg_name || !reg_syntax || !reg_xref)
+ continue;
+
+ /*
+ * Filter based on group and standard...
+ */
+
+ if (!strcmp(reg_collection->child->value.opaque, "Printer Description"))
+ reg_group = IPP_TAG_PRINTER;
+ else if (!strcmp(reg_collection->child->value.opaque, "Job Description"))
+ reg_group = IPP_TAG_JOB;
+ else if (!strcmp(reg_collection->child->value.opaque, "Job Template"))
+ {
+ if (strstr(reg_name->child->value.opaque, "-default") ||
+ strstr(reg_name->child->value.opaque, "-supported"))
+ reg_group = IPP_TAG_PRINTER;
+ else
+ reg_group = IPP_TAG_JOB;
+ }
+ else
+ reg_group = IPP_TAG_ZERO;
+
+ if (reg_group != group)
+ continue;
+
+ if (reg_standard && !match_xref(reg_xref, reg_standard))
+ continue;
+
+ /*
+ * Add the record to the array...
+ */
+
+ if ((current = new_reg(reg_name, reg_member, reg_sub_member,
+ reg_syntax)) != NULL)
+ cupsArrayAdd(attrs, current);
+ }
+
+ /*
+ * Write out a test for all of the selected attributes...
+ */
+
+ puts("{");
+
+ if (group == IPP_TAG_PRINTER)
+ {
+ puts("\tOPERATION Get-Printer-Attributes");
+ puts("\tGROUP operation-attributes-tag");
+ puts("\tATTR charset attributes-charset utf-8");
+ puts("\tATTR naturalLanguage attributes-natural-language en");
+ puts("\tATTR uri printer-uri $uri");
+ puts("\tATTR name requesting-user-name $user");
+ puts("\tATTR keyword requested-attributes all,media-col-database");
+ puts("");
+ puts("\tSTATUS successful-ok");
+ puts("\tSTATUS successful-ok-ignored-or-substituted-attributes");
+ puts("");
+ }
+ else
+ {
+ puts("\tOPERATION Get-Job-Attributes");
+ puts("\tGROUP operation-attributes-tag");
+ puts("\tATTR charset attributes-charset utf-8");
+ puts("\tATTR naturalLanguage attributes-natural-language en");
+ puts("\tATTR uri printer-uri $uri");
+ puts("\tATTR integer job-id $job-id");
+ puts("\tATTR name requesting-user-name $user");
+ puts("");
+ puts("\tSTATUS successful-ok");
+ puts("");
+ }
+
+ for (current = cupsArrayFirst(attrs);
+ current;
+ current = cupsArrayNext(attrs))
+ write_expect(current, group);
+
+ puts("}");
+
+ return (0);
+}
+
+
+/*
+ * 'compare_reg()' - Compare two registrations.
+ */
+
+static int /* O - Result of comparison */
+compare_reg(_cups_reg_t *a, /* I - First registration */
+ _cups_reg_t *b) /* I - Second registration */
+{
+ int retval; /* Return value */
+
+
+ if ((retval = strcmp(a->name, b->name)) != 0)
+ return (retval);
+
+ if (a->member && b->member)
+ retval = strcmp(a->member, b->member);
+ else if (a->member)
+ retval = 1;
+ else if (b->member)
+ retval = -1;
+
+ if (retval)
+ return (retval);
+
+ if (a->sub_member && b->sub_member)
+ retval = strcmp(a->sub_member, b->sub_member);
+ else if (a->sub_member)
+ retval = 1;
+ else if (b->sub_member)
+ retval = -1;
+
+ return (retval);
+}
+
+
+/*
+ * 'load_xml()' - Load the XML registration file or URL.
+ */
+
+static mxml_node_t * /* O - XML file or NULL */
+load_xml(const char *reg_file) /* I - Filename or URL */
+{
+ mxml_node_t *xml; /* XML file */
+ char scheme[256], /* Scheme */
+ userpass[256], /* Username and password */
+ hostname[256], /* Hostname */
+ resource[1024], /* Resource path */
+ filename[1024]; /* Temporary file */
+ int port, /* Port number */
+ fd; /* File descriptor */
+
+
+ if (httpSeparateURI(HTTP_URI_CODING_ALL, reg_file, scheme, sizeof(scheme),
+ userpass, sizeof(userpass), hostname, sizeof(hostname),
+ &port, resource, sizeof(resource)) < HTTP_URI_OK)
+ {
+ fprintf(stderr, "xmltotest: Bad URI or filename \"%s\".\n", reg_file);
+ return (NULL);
+ }
+
+ if (!strcmp(scheme, "file"))
+ {
+ /*
+ * Local file...
+ */
+
+ if ((fd = open(resource, O_RDONLY)) < 0)
+ {
+ fprintf(stderr, "xmltotest: Unable to open \"%s\": %s\n", resource,
+ strerror(errno));
+ return (NULL);
+ }
+
+ filename[0] = '\0';
+ }
+ else if (strcmp(scheme, "http") && strcmp(scheme, "https"))
+ {
+ fprintf(stderr, "xmltotest: Unsupported URI scheme \"%s\".\n", scheme);
+ return (NULL);
+ }
+ else
+ {
+ http_t *http; /* HTTP connection */
+ http_encryption_t encryption; /* Encryption to use */
+ http_status_t status; /* Status of HTTP GET */
+
+ if (!strcmp(scheme, "https") || port == 443)
+ encryption = HTTP_ENCRYPT_ALWAYS;
+ else
+ encryption = HTTP_ENCRYPT_IF_REQUESTED;
+
+ if ((http = httpConnectEncrypt(hostname, port, encryption)) == NULL)
+ {
+ fprintf(stderr, "xmltotest: Unable to connect to \"%s\": %s\n", hostname,
+ cupsLastErrorString());
+ return (NULL);
+ }
+
+ if ((fd = cupsTempFd(filename, sizeof(filename))) < 0)
+ {
+ fprintf(stderr, "xmltotest: Unable to create temporary file: %s\n",
+ strerror(errno));
+ httpClose(http);
+ return (NULL);
+ }
+
+ status = cupsGetFd(http, resource, fd);
+ httpClose(http);
+
+ if (status != HTTP_OK)
+ {
+ fprintf(stderr, "mxmltotest: Unable to get \"%s\": %d\n", reg_file,
+ status);
+ close(fd);
+ unlink(filename);
+ return (NULL);
+ }
+
+ lseek(fd, 0, SEEK_SET);
+ }
+
+ /*
+ * Load the XML file...
+ */
+
+ xml = mxmlLoadFd(NULL, fd, MXML_OPAQUE_CALLBACK);
+
+ close(fd);
+
+ if (filename[0])
+ unlink(filename);
+
+ return (xml);
+}
+
+
+/*
+ * 'match_xref()' - Compare the xref against the named standard.
+ */
+
+static int /* O - 1 if match, 0 if not */
+match_xref(mxml_node_t *xref, /* I - <xref> node */
+ const char *standard) /* I - Name of standard */
+{
+ const char *data; /* "data" attribute */
+ char s[256]; /* String to look for */
+
+
+ if ((data = mxmlElementGetAttr(xref, "data")) == NULL)
+ return (1);
+
+ if (!strcmp(data, standard))
+ return (1);
+
+ if (!strncmp(standard, "pwg", 3))
+ {
+ snprintf(s, sizeof(s), "-%s.pdf", standard + 3);
+ return (strstr(data, s) != NULL);
+ }
+ else
+ return (0);
+}
+
+
+/*
+ * 'new_reg()' - Create a new registration record.
+ */
+
+static _cups_reg_t * /* O - New record */
+new_reg(mxml_node_t *name, /* I - Attribute name */
+ mxml_node_t *member, /* I - Member attribute, if any */
+ mxml_node_t *sub_member, /* I - Sub-member attribute, if any */
+ mxml_node_t *syntax) /* I - Syntax */
+{
+ _cups_reg_t *reg; /* New record */
+
+
+ if ((reg = calloc(1, sizeof(_cups_reg_t))) != NULL)
+ {
+ reg->name = name->child->value.opaque;
+ reg->syntax = syntax->child->value.opaque;
+
+ if (member)
+ reg->member = member->child->value.opaque;
+
+ if (sub_member)
+ reg->sub_member = sub_member->child->value.opaque;
+ }
+
+ return (reg);
+}
+
+
+/*
+ * 'usage()' - Show usage message.
+ */
+
+static int /* O - Exit status */
+usage(void)
+{
+ puts("Usage ./xmltotest [--ref standard] {--job|--printer} [XML file/URL] "
+ ">file.test");
+ return (1);
+}
+
+
+/*
+ * 'write_expect()' - Write an EXPECT test for an attribute.
+ */
+
+static void
+write_expect(_cups_reg_t *reg, /* I - Registration information */
+ ipp_tag_t group) /* I - Attribute group tag */
+{
+ const char *syntax; /* Pointer into syntax string */
+ int single = 1, /* Single valued? */
+ skip = 0; /* Skip characters? */
+
+
+ printf("\tEXPECT ?%s OF-TYPE ", reg->name);
+
+ syntax = reg->syntax;
+
+ while (*syntax)
+ {
+ if (!strncmp(syntax, "1setOf", 6))
+ {
+ single = 0;
+ syntax += 6;
+
+ while (isspace(*syntax & 255))
+ syntax ++;
+
+ if (*syntax == '(')
+ syntax ++;
+ }
+ else if (!strncmp(syntax, "type1", 5) || !strncmp(syntax, "type2", 5) ||
+ !strncmp(syntax, "type3", 5))
+ syntax += 5;
+ else if (*syntax == '(')
+ {
+ skip = 1;
+ syntax ++;
+ }
+ else if (*syntax == ')')
+ {
+ skip = 0;
+ syntax ++;
+ }
+ else if (!skip && (*syntax == '|' || isalpha(*syntax & 255)))
+ putchar(*syntax++);
+ else
+ syntax ++;
+ }
+
+ if (single)
+ printf(" IN-GROUP %s COUNT 1\n", ippTagString(group));
+ else
+ printf(" IN-GROUP %s\n", ippTagString(group));
+}
+
+
+#else /* !HAVE_MXML */
+int
+main(void)
+{
+ return (1);
+}
+#endif /* HAVE_MXML */
+
+
+/*
+ * End of "$Id: xmltotest.c 10192 2012-01-20 21:49:02Z mike $".
+ */
diff --git a/vcnet/config.h b/vcnet/config.h
index 4d4f8ce8..f23f4f61 100644
--- a/vcnet/config.h
+++ b/vcnet/config.h
@@ -1,5 +1,5 @@
/*
- * "$Id: config.h 10466 2012-05-15 14:21:57Z mike $"
+ * "$Id: config.h 10424 2012-04-23 17:26:57Z mike $"
*
* Configuration file for CUPS on Windows.
*
@@ -86,8 +86,8 @@
* Version of software...
*/
-#define CUPS_SVERSION "CUPS v1.5.3"
-#define CUPS_MINIMAL "CUPS/1.5.3"
+#define CUPS_SVERSION "CUPS v1.6.0"
+#define CUPS_MINIMAL "CUPS/1.6.0"
/*
@@ -599,7 +599,7 @@
/*
- * Do we have Mac OS X 10.4's mbr_XXX functions?
+ * Do we have OS X 10.4's mbr_XXX functions?
*/
/* #undef HAVE_MEMBERSHIP_H */
@@ -761,7 +761,7 @@
/*
- * Location of Mac OS X localization bundle, if any.
+ * Location of OS X localization bundle, if any.
*/
/* #undef CUPS_BUNDLEDIR */
@@ -784,5 +784,5 @@
#endif /* !_CUPS_CONFIG_H_ */
/*
- * End of "$Id: config.h 10466 2012-05-15 14:21:57Z mike $".
+ * End of "$Id: config.h 10424 2012-04-23 17:26:57Z mike $".
*/
diff --git a/vcnet/cups.sln b/vcnet/cups.sln
index 9dabb892..5fede836 100644
--- a/vcnet/cups.sln
+++ b/vcnet/cups.sln
@@ -1,6 +1,9 @@
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcups2", "libcups2.vcproj", "{CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}"
+ ProjectSection(ProjectDependencies) = postProject
+ {18950A1B-D37A-40C7-B2DF-C12986C0526E} = {18950A1B-D37A-40C7-B2DF-C12986C0526E}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcupsimage2", "libcupsimage2.vcproj", "{CB4AA6F2-3E84-45BE-B505-95CD375E1234}"
ProjectSection(ProjectDependencies) = postProject
@@ -25,9 +28,16 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cupstestppd", "cupstestppd.
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ipptool", "ipptool.vcproj", "{B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}"
ProjectSection(ProjectDependencies) = postProject
+ {18950A1B-D37A-40C7-B2DF-C12986C0526E} = {18950A1B-D37A-40C7-B2DF-C12986C0526E}
{CB4AA6F2-3E84-45BE-B505-95CD375E8BE3} = {CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}
EndProjectSection
EndProject
+Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "ipptool-installer", "ipptool-installer.vdproj", "{6AEA263B-92C0-426F-B5FF-F7F5917B704A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "regex", "regex.vcproj", "{18950A1B-D37A-40C7-B2DF-C12986C0526E}"
+EndProject
+Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "ipptool-installer", "libcups2-installer.vdproj", "{03CF67C2-3FF5-44EA-B3AF-FB62D3BED961}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -84,6 +94,28 @@ Global
{B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Release|Win32.Build.0 = Release|Win32
{B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Release|x64.ActiveCfg = Release|x64
{B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Release|x64.Build.0 = Release|x64
+ {6AEA263B-92C0-426F-B5FF-F7F5917B704A}.Debug|Win32.ActiveCfg = Debug
+ {6AEA263B-92C0-426F-B5FF-F7F5917B704A}.Debug|Win32.Build.0 = Debug
+ {6AEA263B-92C0-426F-B5FF-F7F5917B704A}.Debug|x64.ActiveCfg = Debug
+ {6AEA263B-92C0-426F-B5FF-F7F5917B704A}.Debug|x64.Build.0 = Debug
+ {6AEA263B-92C0-426F-B5FF-F7F5917B704A}.Release|Win32.ActiveCfg = Release
+ {6AEA263B-92C0-426F-B5FF-F7F5917B704A}.Release|Win32.Build.0 = Release
+ {6AEA263B-92C0-426F-B5FF-F7F5917B704A}.Release|x64.ActiveCfg = Release
+ {6AEA263B-92C0-426F-B5FF-F7F5917B704A}.Release|x64.Build.0 = Release
+ {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Debug|Win32.ActiveCfg = Debug|Win32
+ {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Debug|Win32.Build.0 = Debug|Win32
+ {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Debug|x64.ActiveCfg = Debug|Win32
+ {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Release|Win32.ActiveCfg = Release|Win32
+ {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Release|Win32.Build.0 = Release|Win32
+ {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Release|x64.ActiveCfg = Release|Win32
+ {03CF67C2-3FF5-44EA-B3AF-FB62D3BED961}.Debug|Win32.ActiveCfg = Debug
+ {03CF67C2-3FF5-44EA-B3AF-FB62D3BED961}.Debug|Win32.Build.0 = Debug
+ {03CF67C2-3FF5-44EA-B3AF-FB62D3BED961}.Debug|x64.ActiveCfg = Debug
+ {03CF67C2-3FF5-44EA-B3AF-FB62D3BED961}.Debug|x64.Build.0 = Debug
+ {03CF67C2-3FF5-44EA-B3AF-FB62D3BED961}.Release|Win32.ActiveCfg = Release
+ {03CF67C2-3FF5-44EA-B3AF-FB62D3BED961}.Release|Win32.Build.0 = Release
+ {03CF67C2-3FF5-44EA-B3AF-FB62D3BED961}.Release|x64.ActiveCfg = Release
+ {03CF67C2-3FF5-44EA-B3AF-FB62D3BED961}.Release|x64.Build.0 = Release
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/vcnet/cupstestppd.vcproj b/vcnet/cupstestppd.vcproj
index 8c341696..4739f371 100644
--- a/vcnet/cupstestppd.vcproj
+++ b/vcnet/cupstestppd.vcproj
@@ -21,8 +21,8 @@
<Configurations>
<Configuration
Name="Debug|Win32"
- OutputDirectory="$(SolutionDir)$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
>
@@ -95,12 +95,11 @@
/>
</Configuration>
<Configuration
- Name="Release|Win32"
- OutputDirectory="$(SolutionDir)$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
+ Name="Debug|x64"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
- WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
@@ -116,12 +115,16 @@
/>
<Tool
Name="VCMIDLTool"
+ TargetEnvironment="3"
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="0"
AdditionalIncludeDirectories="..;..\vcnet"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE"
- RuntimeLibrary="2"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="1"
Detect64BitPortabilityProblems="false"
@@ -138,14 +141,12 @@
/>
<Tool
Name="VCLinkerTool"
- LinkIncremental="1"
+ LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
- TargetMachine="1"
+ TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
@@ -170,11 +171,12 @@
/>
</Configuration>
<Configuration
- Name="Debug|x64"
- OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"
+ Name="Release|Win32"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
+ WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
@@ -190,16 +192,12 @@
/>
<Tool
Name="VCMIDLTool"
- TargetEnvironment="3"
/>
<Tool
Name="VCCLCompilerTool"
- Optimization="0"
AdditionalIncludeDirectories="..;..\vcnet"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="1"
Detect64BitPortabilityProblems="false"
@@ -216,12 +214,14 @@
/>
<Tool
Name="VCLinkerTool"
- LinkIncremental="2"
+ LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
- TargetMachine="17"
+ TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
@@ -247,7 +247,7 @@
</Configuration>
<Configuration
Name="Release|x64"
- OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
diff --git a/vcnet/ipptool-installer.vdproj b/vcnet/ipptool-installer.vdproj
new file mode 100644
index 00000000..948299e8
--- /dev/null
+++ b/vcnet/ipptool-installer.vdproj
@@ -0,0 +1,1669 @@
+"DeployProject"
+{
+"VSVersion" = "3:800"
+"ProjectType" = "8:{978C614F-708E-4E1A-B201-565925725DBA}"
+"IsWebType" = "8:FALSE"
+"ProjectName" = "8:ipptool-installer"
+"LanguageId" = "3:1033"
+"CodePage" = "3:1252"
+"UILanguageId" = "3:1033"
+"SccProjectName" = "8:"
+"SccLocalPath" = "8:"
+"SccAuxPath" = "8:"
+"SccProvider" = "8:"
+ "Hierarchy"
+ {
+ "Entry"
+ {
+ "MsmKey" = "8:_009DC3ED78164048934ED35E89A0A1C5"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_1A1324305D78463BBFC62269C56DCF0B"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_1E4B2A9BD6A44926B719E0D7E8FC0952"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_290B9B52C4784AED94FA6B87CAB18D10"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_40C483299484486C9416B704F0EF4A6C"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_41260853156249FDB39A8E386F935492"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_425F2537D86148B9A4233AD27D426738"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_65CBD149C9DA448FBACE2B02766A6537"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_6F893B2A3B7048CBA39359FC368BCA27"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_7AFD2BBA568D45F5B1E871E2B93892BC"
+ "OwnerKey" = "8:_D02EB13951314EFD9C539150EF8E53B8"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_7AFD2BBA568D45F5B1E871E2B93892BC"
+ "OwnerKey" = "8:_EA282F32A10B4ED1A81AA6133B997C6A"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_7AFD2BBA568D45F5B1E871E2B93892BC"
+ "OwnerKey" = "8:_E97571D3FBE048DABDC59B37762D800F"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_80DBA85C961E447CB92C95CE1F38C56B"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_842C04D73EBC4F5DBC2FD58D5B98D5D1"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_8AC6B9D7EF6B4C7A8C7B5AD85AA397C3"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_8CC3562BCDED4676A672115D19D898B5"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_9967519E7058965D4C7DEF47EB39CC50"
+ "OwnerKey" = "8:_EA282F32A10B4ED1A81AA6133B997C6A"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_9FBF78D7B89EEA843380D5F10E1954D7"
+ "OwnerKey" = "8:_EA282F32A10B4ED1A81AA6133B997C6A"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_AF057921D20E4520A3C6420F0729A744"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_B9E79062FEF64745915546DDD5BF8D85"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_BD5B70C103EF41D9A30CF249D2B93CEB"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_C430646D6E7C4CBDA84F951AE95EB76F"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_D02EB13951314EFD9C539150EF8E53B8"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_D4BEA026ABFB46DD960AD8EFCAE45E31"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_D5CD9D9AB1644688A1D54B1589BDF724"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_E30823E684384F4DB7385B14F714AD95"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_E3C6C5A7FDD94965B68960844461D5EA"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_E4C0F67094B94E05AB69787080727089"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_E50F2FB950DD47D993DC8FB577266549"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_E7DD6A8D195B4752B0525628FF9586E4"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_E97571D3FBE048DABDC59B37762D800F"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_E9CA670571B5447682529CDB7BC3C100"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_EA282F32A10B4ED1A81AA6133B997C6A"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_EA9CE1B09EF1442BAA3C3F5AE7865ABF"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_EC7FE3265BDB4C52B5B87A8AC56AFDDD"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_F0AA062C769A4867B5C302491CA4F2D3"
+ "OwnerKey" = "8:_7AFD2BBA568D45F5B1E871E2B93892BC"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_F16FA7F9826E461E955A95B2EEABA975"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_F22F5380A6E14A43A15A452C7C6F6C07"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ }
+ "Configurations"
+ {
+ "Debug"
+ {
+ "DisplayName" = "8:Debug"
+ "IsDebugOnly" = "11:TRUE"
+ "IsReleaseOnly" = "11:FALSE"
+ "OutputFilename" = "8:ipptool-windows.msi"
+ "PackageFilesAs" = "3:2"
+ "PackageFileSize" = "3:-2147483648"
+ "CabType" = "3:1"
+ "Compression" = "3:3"
+ "SignOutput" = "11:FALSE"
+ "CertificateFile" = "8:"
+ "PrivateKeyFile" = "8:"
+ "TimeStampServer" = "8:"
+ "InstallerBootstrapper" = "3:2"
+ "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}"
+ {
+ "Enabled" = "11:TRUE"
+ "PromptEnabled" = "11:TRUE"
+ "PrerequisitesLocation" = "2:1"
+ "Url" = "8:"
+ "ComponentsUrl" = "8:"
+ "Items"
+ {
+ "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.3.5.SP1"
+ {
+ "Name" = "8:.NET Framework 3.5 SP1"
+ "ProductCode" = "8:Microsoft.Net.Framework.3.5.SP1"
+ }
+ "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1"
+ {
+ "Name" = "8:Windows Installer 3.1"
+ "ProductCode" = "8:Microsoft.Windows.Installer.3.1"
+ }
+ }
+ }
+ }
+ "Release"
+ {
+ "DisplayName" = "8:Release"
+ "IsDebugOnly" = "11:FALSE"
+ "IsReleaseOnly" = "11:TRUE"
+ "OutputFilename" = "8:ipptool-windows.msi"
+ "PackageFilesAs" = "3:2"
+ "PackageFileSize" = "3:-2147483648"
+ "CabType" = "3:1"
+ "Compression" = "3:3"
+ "SignOutput" = "11:FALSE"
+ "CertificateFile" = "8:"
+ "PrivateKeyFile" = "8:"
+ "TimeStampServer" = "8:"
+ "InstallerBootstrapper" = "3:2"
+ "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}"
+ {
+ "Enabled" = "11:TRUE"
+ "PromptEnabled" = "11:TRUE"
+ "PrerequisitesLocation" = "2:1"
+ "Url" = "8:"
+ "ComponentsUrl" = "8:"
+ "Items"
+ {
+ "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.3.5.SP1"
+ {
+ "Name" = "8:.NET Framework 3.5 SP1"
+ "ProductCode" = "8:Microsoft.Net.Framework.3.5.SP1"
+ }
+ "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1"
+ {
+ "Name" = "8:Windows Installer 3.1"
+ "ProductCode" = "8:Microsoft.Windows.Installer.3.1"
+ }
+ }
+ }
+ }
+ }
+ "Deployable"
+ {
+ "CustomAction"
+ {
+ }
+ "DefaultFeature"
+ {
+ "Name" = "8:DefaultFeature"
+ "Title" = "8:"
+ "Description" = "8:"
+ }
+ "ExternalPersistence"
+ {
+ "LaunchCondition"
+ {
+ }
+ }
+ "File"
+ {
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_009DC3ED78164048934ED35E89A0A1C5"
+ {
+ "SourcePath" = "8:..\\test\\document-a4.ps"
+ "TargetName" = "8:document-a4.ps"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1A1324305D78463BBFC62269C56DCF0B"
+ {
+ "SourcePath" = "8:..\\doc\\help\\man-ipptoolfile.html"
+ "TargetName" = "8:man-ipptoolfile.html"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1E4B2A9BD6A44926B719E0D7E8FC0952"
+ {
+ "SourcePath" = "8:..\\test\\get-printer-attributes.test"
+ "TargetName" = "8:get-printer-attributes.test"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_290B9B52C4784AED94FA6B87CAB18D10"
+ {
+ "SourcePath" = "8:..\\test\\print-job.test"
+ "TargetName" = "8:print-job.test"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_40C483299484486C9416B704F0EF4A6C"
+ {
+ "SourcePath" = "8:..\\test\\testfile.pdf"
+ "TargetName" = "8:testfile.pdf"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_41260853156249FDB39A8E386F935492"
+ {
+ "SourcePath" = "8:..\\test\\ipp-1.1.test"
+ "TargetName" = "8:ipp-1.1.test"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_425F2537D86148B9A4233AD27D426738"
+ {
+ "SourcePath" = "8:..\\test\\ipp-2.0.test"
+ "TargetName" = "8:ipp-2.0.test"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_65CBD149C9DA448FBACE2B02766A6537"
+ {
+ "SourcePath" = "8:..\\test\\testfile.ps"
+ "TargetName" = "8:testfile.ps"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_6F893B2A3B7048CBA39359FC368BCA27"
+ {
+ "SourcePath" = "8:..\\test\\onepage-letter.ps"
+ "TargetName" = "8:onepage-letter.ps"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_80DBA85C961E447CB92C95CE1F38C56B"
+ {
+ "SourcePath" = "8:..\\test\\ipp-2.2.test"
+ "TargetName" = "8:ipp-2.2.test"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_842C04D73EBC4F5DBC2FD58D5B98D5D1"
+ {
+ "SourcePath" = "8:..\\test\\document-a4.pdf"
+ "TargetName" = "8:document-a4.pdf"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_8AC6B9D7EF6B4C7A8C7B5AD85AA397C3"
+ {
+ "SourcePath" = "8:..\\test\\get-jobs.test"
+ "TargetName" = "8:get-jobs.test"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_8CC3562BCDED4676A672115D19D898B5"
+ {
+ "SourcePath" = "8:..\\test\\testfile.jpg"
+ "TargetName" = "8:testfile.jpg"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_9967519E7058965D4C7DEF47EB39CC50"
+ {
+ "SourcePath" = "8:CRYPT32.dll"
+ "TargetName" = "8:CRYPT32.dll"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:TRUE"
+ "IsDependency" = "11:TRUE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_9FBF78D7B89EEA843380D5F10E1954D7"
+ {
+ "SourcePath" = "8:Secur32.dll"
+ "TargetName" = "8:Secur32.dll"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:TRUE"
+ "IsDependency" = "11:TRUE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_AF057921D20E4520A3C6420F0729A744"
+ {
+ "SourcePath" = "8:..\\IPPTOOL.txt"
+ "TargetName" = "8:IPPTOOL.txt"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B9E79062FEF64745915546DDD5BF8D85"
+ {
+ "SourcePath" = "8:..\\CHANGES-IPPTOOL.txt"
+ "TargetName" = "8:CHANGES-IPPTOOL.txt"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_BD5B70C103EF41D9A30CF249D2B93CEB"
+ {
+ "SourcePath" = "8:setdebug.bat"
+ "TargetName" = "8:setdebug.bat"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_C430646D6E7C4CBDA84F951AE95EB76F"
+ {
+ "SourcePath" = "8:..\\test\\color.jpg"
+ "TargetName" = "8:color.jpg"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_D4BEA026ABFB46DD960AD8EFCAE45E31"
+ {
+ "SourcePath" = "8:..\\test\\onepage-letter.pdf"
+ "TargetName" = "8:onepage-letter.pdf"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_D5CD9D9AB1644688A1D54B1589BDF724"
+ {
+ "SourcePath" = "8:..\\doc\\help\\man-ipptool.html"
+ "TargetName" = "8:man-ipptool.html"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_E30823E684384F4DB7385B14F714AD95"
+ {
+ "SourcePath" = "8:..\\test\\ipp-2.1.test"
+ "TargetName" = "8:ipp-2.1.test"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_E3C6C5A7FDD94965B68960844461D5EA"
+ {
+ "SourcePath" = "8:..\\LICENSE.txt"
+ "TargetName" = "8:LICENSE.txt"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_E4C0F67094B94E05AB69787080727089"
+ {
+ "SourcePath" = "8:..\\test\\create-printer-subscription.test"
+ "TargetName" = "8:create-printer-subscription.test"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_E50F2FB950DD47D993DC8FB577266549"
+ {
+ "SourcePath" = "8:..\\test\\document-letter.ps"
+ "TargetName" = "8:document-letter.ps"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_E7DD6A8D195B4752B0525628FF9586E4"
+ {
+ "SourcePath" = "8:..\\test\\onepage-a4.ps"
+ "TargetName" = "8:onepage-a4.ps"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_E9CA670571B5447682529CDB7BC3C100"
+ {
+ "SourcePath" = "8:..\\test\\gray.jpg"
+ "TargetName" = "8:gray.jpg"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_EA9CE1B09EF1442BAA3C3F5AE7865ABF"
+ {
+ "SourcePath" = "8:..\\test\\testfile.txt"
+ "TargetName" = "8:testfile.txt"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_EC7FE3265BDB4C52B5B87A8AC56AFDDD"
+ {
+ "SourcePath" = "8:..\\test\\get-completed-jobs.test"
+ "TargetName" = "8:get-completed-jobs.test"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_F16FA7F9826E461E955A95B2EEABA975"
+ {
+ "SourcePath" = "8:..\\test\\onepage-a4.pdf"
+ "TargetName" = "8:onepage-a4.pdf"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_F22F5380A6E14A43A15A452C7C6F6C07"
+ {
+ "SourcePath" = "8:..\\test\\document-letter.pdf"
+ "TargetName" = "8:document-letter.pdf"
+ "Tag" = "8:"
+ "Folder" = "8:_EB00D0298C7E441EBD0257AC04FB3560"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ }
+ "FileType"
+ {
+ }
+ "Folder"
+ {
+ "{1525181F-901A-416C-8A58-119130FE478E}:_BEC0EAE20C954C78B294B83E6696156E"
+ {
+ "Name" = "8:#1919"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:ProgramMenuFolder"
+ "Folders"
+ {
+ }
+ }
+ "{1525181F-901A-416C-8A58-119130FE478E}:_D02CDADE99F344CF92CA1A8D0278861F"
+ {
+ "Name" = "8:#1916"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:DesktopFolder"
+ "Folders"
+ {
+ }
+ }
+ "{3C67513D-01DD-4637-8A68-80971EB9504F}:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ {
+ "DefaultLocation" = "8:[ProgramFilesFolder]\\ipptool"
+ "Name" = "8:#1925"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:TARGETDIR"
+ "Folders"
+ {
+ "{9EF0B969-E518-4E46-987F-47570745A589}:_EB00D0298C7E441EBD0257AC04FB3560"
+ {
+ "Name" = "8:ipptool"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:_6F223FB51798428A9F2D64A5A7F2B49C"
+ "Folders"
+ {
+ }
+ }
+ }
+ }
+ }
+ "LaunchCondition"
+ {
+ }
+ "Locator"
+ {
+ }
+ "MsiBootstrapper"
+ {
+ "LangId" = "3:1033"
+ "RequiresElevation" = "11:FALSE"
+ }
+ "Product"
+ {
+ "Name" = "8:Microsoft Visual Studio"
+ "ProductName" = "8:ipptool for Windows"
+ "ProductCode" = "8:{8220ED6C-8FAC-4E28-8589-867295E2A23D}"
+ "PackageCode" = "8:{B78F9AC6-92F9-48FF-AA11-ECD929442B4A}"
+ "UpgradeCode" = "8:{BAB6EBBB-515D-4155-9FEF-D98DA76814CA}"
+ "RestartWWWService" = "11:FALSE"
+ "RemovePreviousVersions" = "11:TRUE"
+ "DetectNewerInstalledVersion" = "11:TRUE"
+ "InstallAllUsers" = "11:TRUE"
+ "ProductVersion" = "8:12.02.0600"
+ "Manufacturer" = "8:Apple Inc."
+ "ARPHELPTELEPHONE" = "8:"
+ "ARPHELPLINK" = "8:http://www.cups.org/str.php"
+ "Title" = "8:ipptool"
+ "Subject" = "8:"
+ "ARPCONTACT" = "8:Apple Inc."
+ "Keywords" = "8:IPP, Internet Printing Protocol"
+ "ARPCOMMENTS" = "8:ipptool for Windows"
+ "ARPURLINFOABOUT" = "8:http://www.cups.org/"
+ "ARPPRODUCTICON" = "8:"
+ "ARPIconIndex" = "3:0"
+ "SearchPath" = "8:"
+ "UseSystemSearchPath" = "11:TRUE"
+ "TargetPlatform" = "3:0"
+ "PreBuildEvent" = "8:"
+ "PostBuildEvent" = "8:"
+ "RunPostBuildEvent" = "3:0"
+ }
+ "Registry"
+ {
+ "HKLM"
+ {
+ "Keys"
+ {
+ "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_BC4E66686BCA4F9A8B24B6CF2728DACD"
+ {
+ "Name" = "8:Software"
+ "Condition" = "8:"
+ "AlwaysCreate" = "11:FALSE"
+ "DeleteAtUninstall" = "11:FALSE"
+ "Transitive" = "11:FALSE"
+ "Keys"
+ {
+ "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_F9AB9B310C7545D993D690F529048AA2"
+ {
+ "Name" = "8:cups.org"
+ "Condition" = "8:"
+ "AlwaysCreate" = "11:FALSE"
+ "DeleteAtUninstall" = "11:FALSE"
+ "Transitive" = "11:FALSE"
+ "Keys"
+ {
+ }
+ "Values"
+ {
+ "{ADCFDA98-8FDD-45E4-90BC-E3D20B029870}:_4E5BAC705A1D44E78C90C6D2A4A7BE20"
+ {
+ "Name" = "8:installdir"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "ValueTypes" = "3:2"
+ "Value" = "8:[TARGETDIR]"
+ }
+ }
+ }
+ }
+ "Values"
+ {
+ }
+ }
+ }
+ }
+ "HKCU"
+ {
+ "Keys"
+ {
+ "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_A4C9879F42874B6B92960A55F2D98922"
+ {
+ "Name" = "8:Software"
+ "Condition" = "8:"
+ "AlwaysCreate" = "11:FALSE"
+ "DeleteAtUninstall" = "11:FALSE"
+ "Transitive" = "11:FALSE"
+ "Keys"
+ {
+ "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_1ACB03C307FB4B85BB27C9913FB58B09"
+ {
+ "Name" = "8:[Manufacturer]"
+ "Condition" = "8:"
+ "AlwaysCreate" = "11:FALSE"
+ "DeleteAtUninstall" = "11:FALSE"
+ "Transitive" = "11:FALSE"
+ "Keys"
+ {
+ }
+ "Values"
+ {
+ }
+ }
+ }
+ "Values"
+ {
+ }
+ }
+ }
+ }
+ "HKCR"
+ {
+ "Keys"
+ {
+ }
+ }
+ "HKU"
+ {
+ "Keys"
+ {
+ }
+ }
+ "HKPU"
+ {
+ "Keys"
+ {
+ }
+ }
+ }
+ "Sequences"
+ {
+ }
+ "Shortcut"
+ {
+ }
+ "UserInterface"
+ {
+ "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_045DF90B1FF941A9BA7A742CFC0A6C00"
+ {
+ "UseDynamicProperties" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdUserInterface.wim"
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_345BD86390E841A98B74ED3E07945F8C"
+ {
+ "Name" = "8:#1900"
+ "Sequence" = "3:2"
+ "Attributes" = "3:1"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_067C143A8731427180B1568AF8C07375"
+ {
+ "Sequence" = "3:200"
+ "DisplayName" = "8:Installation Folder"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminFolderDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_A2F2CC6EB9D7453599E7598D4D0629A5"
+ {
+ "Sequence" = "3:300"
+ "DisplayName" = "8:Confirm Installation"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminConfirmDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_C2B41369B7334F419318792EBA031412"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Welcome"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminWelcomeDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "CopyrightWarning"
+ {
+ "Name" = "8:CopyrightWarning"
+ "DisplayName" = "8:#1002"
+ "Description" = "8:#1102"
+ "Type" = "3:3"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:2"
+ "Value" = "8:This computer program is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License version 2."
+ "DefaultValue" = "8:#1202"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "Welcome"
+ {
+ "Name" = "8:Welcome"
+ "DisplayName" = "8:#1003"
+ "Description" = "8:#1103"
+ "Type" = "3:3"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:1"
+ "Value" = "8:#1203"
+ "DefaultValue" = "8:#1203"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_6B654A06090344BA9AA443E0D0296737"
+ {
+ "Name" = "8:#1902"
+ "Sequence" = "3:1"
+ "Attributes" = "3:3"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_FB4E7BBC3DA242309FFB58F9A6194A93"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Finished"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdFinishedDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "UpdateText"
+ {
+ "Name" = "8:UpdateText"
+ "DisplayName" = "8:#1058"
+ "Description" = "8:#1158"
+ "Type" = "3:15"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:1"
+ "Value" = "8:#1258"
+ "DefaultValue" = "8:#1258"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_712819C7C4F042ABB708949BD4426628"
+ {
+ "Name" = "8:#1900"
+ "Sequence" = "3:1"
+ "Attributes" = "3:1"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_2F49D4FACB954AF2B786D2AD9206D053"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Welcome"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdWelcomeDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "CopyrightWarning"
+ {
+ "Name" = "8:CopyrightWarning"
+ "DisplayName" = "8:#1002"
+ "Description" = "8:#1102"
+ "Type" = "3:3"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:2"
+ "Value" = "8:This computer program is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License version 2."
+ "DefaultValue" = "8:#1202"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "Welcome"
+ {
+ "Name" = "8:Welcome"
+ "DisplayName" = "8:#1003"
+ "Description" = "8:#1103"
+ "Type" = "3:3"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:1"
+ "Value" = "8:#1203"
+ "DefaultValue" = "8:#1203"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_770E25BC453A464EA8CD51381FDDDD9F"
+ {
+ "Sequence" = "3:300"
+ "DisplayName" = "8:Confirm Installation"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdConfirmDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_9534A64B629F4F868D6D7A384C76DCB2"
+ {
+ "Sequence" = "3:200"
+ "DisplayName" = "8:Installation Folder"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdFolderDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "InstallAllUsersVisible"
+ {
+ "Name" = "8:InstallAllUsersVisible"
+ "DisplayName" = "8:#1059"
+ "Description" = "8:#1159"
+ "Type" = "3:5"
+ "ContextData" = "8:1;True=1;False=0"
+ "Attributes" = "3:0"
+ "Setting" = "3:0"
+ "Value" = "3:1"
+ "DefaultValue" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_770CCEFF81BD46A182A6E816A41A0E81"
+ {
+ "Name" = "8:#1901"
+ "Sequence" = "3:2"
+ "Attributes" = "3:2"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_75E0C1FD245D493DA0D7E3E0BC0C365F"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Progress"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminProgressDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "ShowProgress"
+ {
+ "Name" = "8:ShowProgress"
+ "DisplayName" = "8:#1009"
+ "Description" = "8:#1109"
+ "Type" = "3:5"
+ "ContextData" = "8:1;True=1;False=0"
+ "Attributes" = "3:0"
+ "Setting" = "3:0"
+ "Value" = "3:1"
+ "DefaultValue" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_933B15E9A383418F8ADF3B13F68458F3"
+ {
+ "UseDynamicProperties" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdBasicDialogs.wim"
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_E310DA8CED734E00950A3C5D630CE987"
+ {
+ "Name" = "8:#1902"
+ "Sequence" = "3:2"
+ "Attributes" = "3:3"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_CB172E69F9C74901BE1040336CFD4F72"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Finished"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminFinishedDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_F44F9BE9B54940848289669635E4A5A2"
+ {
+ "Name" = "8:#1901"
+ "Sequence" = "3:1"
+ "Attributes" = "3:2"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_14751F327A634B989283C8F28CFB6DFC"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Progress"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdProgressDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "ShowProgress"
+ {
+ "Name" = "8:ShowProgress"
+ "DisplayName" = "8:#1009"
+ "Description" = "8:#1109"
+ "Type" = "3:5"
+ "ContextData" = "8:1;True=1;False=0"
+ "Attributes" = "3:0"
+ "Setting" = "3:0"
+ "Value" = "3:1"
+ "DefaultValue" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ }
+ "MergeModule"
+ {
+ "{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_7AFD2BBA568D45F5B1E871E2B93892BC"
+ {
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:TRUE"
+ "SourcePath" = "8:policy_9_0_Microsoft_VC90_DebugCRT_x86.msm"
+ "Properties"
+ {
+ }
+ "LanguageId" = "3:0"
+ "Exclude" = "11:FALSE"
+ "Folder" = "8:"
+ "Feature" = "8:"
+ "IsolateTo" = "8:"
+ }
+ "{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_F0AA062C769A4867B5C302491CA4F2D3"
+ {
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:TRUE"
+ "SourcePath" = "8:microsoft_vc90_debugcrt_x86.msm"
+ "Properties"
+ {
+ }
+ "LanguageId" = "3:0"
+ "Exclude" = "11:FALSE"
+ "Folder" = "8:"
+ "Feature" = "8:"
+ "IsolateTo" = "8:"
+ }
+ }
+ "ProjectOutput"
+ {
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_D02EB13951314EFD9C539150EF8E53B8"
+ {
+ "SourcePath" = "8:Win32\\Debug\\regex.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{18950A1B-D37A-40C7-B2DF-C12986C0526E}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_E97571D3FBE048DABDC59B37762D800F"
+ {
+ "SourcePath" = "8:Win32\\Debug\\ipptool.exe"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_EA282F32A10B4ED1A81AA6133B997C6A"
+ {
+ "SourcePath" = "8:Win32\\Debug\\libcups2.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ }
+ }
+}
diff --git a/vcnet/ipptool.vcproj b/vcnet/ipptool.vcproj
index 6c59af17..d29d73d9 100644
--- a/vcnet/ipptool.vcproj
+++ b/vcnet/ipptool.vcproj
@@ -21,8 +21,8 @@
<Configurations>
<Configuration
Name="Debug|Win32"
- OutputDirectory="$(SolutionDir)$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
>
@@ -95,12 +95,11 @@
/>
</Configuration>
<Configuration
- Name="Release|Win32"
- OutputDirectory="$(SolutionDir)$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
+ Name="Debug|x64"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
- WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
@@ -116,12 +115,16 @@
/>
<Tool
Name="VCMIDLTool"
+ TargetEnvironment="3"
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="0"
AdditionalIncludeDirectories="..\vcnet;..;..\vcnet\regex"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE"
- RuntimeLibrary="2"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="1"
Detect64BitPortabilityProblems="false"
@@ -138,14 +141,12 @@
/>
<Tool
Name="VCLinkerTool"
- LinkIncremental="1"
+ LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
- TargetMachine="1"
+ TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
@@ -170,11 +171,12 @@
/>
</Configuration>
<Configuration
- Name="Debug|x64"
- OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"
+ Name="Release|Win32"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
+ WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
@@ -190,16 +192,12 @@
/>
<Tool
Name="VCMIDLTool"
- TargetEnvironment="3"
/>
<Tool
Name="VCCLCompilerTool"
- Optimization="0"
AdditionalIncludeDirectories="..\vcnet;..;..\vcnet\regex"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE"
+ RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="1"
Detect64BitPortabilityProblems="false"
@@ -216,12 +214,14 @@
/>
<Tool
Name="VCLinkerTool"
- LinkIncremental="2"
+ LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
- TargetMachine="17"
+ TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
@@ -247,7 +247,7 @@
</Configuration>
<Configuration
Name="Release|x64"
- OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="1"
@@ -331,47 +331,15 @@
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File
- RelativePath=".\regex\debug.c"
- >
- </File>
- <File
RelativePath="..\test\ipptool.c"
>
</File>
- <File
- RelativePath=".\regex\regcomp.c"
- >
- </File>
- <File
- RelativePath=".\regex\regerror.c"
- >
- </File>
- <File
- RelativePath=".\regex\regexec.c"
- >
- </File>
- <File
- RelativePath=".\regex\regfree.c"
- >
- </File>
- <File
- RelativePath=".\regex\split.c"
- >
- </File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
- <File
- RelativePath=".\regex\regex.h"
- >
- </File>
- <File
- RelativePath=".\regex\regex2.h"
- >
- </File>
</Filter>
<Filter
Name="Resource Files"
diff --git a/vcnet/libcups2-installer.vdproj b/vcnet/libcups2-installer.vdproj
new file mode 100644
index 00000000..75d6dd8c
--- /dev/null
+++ b/vcnet/libcups2-installer.vdproj
@@ -0,0 +1,2194 @@
+"DeployProject"
+{
+"VSVersion" = "3:800"
+"ProjectType" = "8:{978C614F-708E-4E1A-B201-565925725DBA}"
+"IsWebType" = "8:FALSE"
+"ProjectName" = "8:libcups2-installer"
+"LanguageId" = "3:1033"
+"CodePage" = "3:1252"
+"UILanguageId" = "3:1033"
+"SccProjectName" = "8:"
+"SccLocalPath" = "8:"
+"SccAuxPath" = "8:"
+"SccProvider" = "8:"
+ "Hierarchy"
+ {
+ "Entry"
+ {
+ "MsmKey" = "8:_00BDFF08E6DA434981F5C1F879B3EF6C"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_0299839A2CCC4F908C5D3A8F465F3FFE"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_06B57E1C99D0410EB9C8DC4D66C73FC5"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_0DDD4CA1EEBE4AB69CC694DDF483D146"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_16A59C6F3F9940288A7D26B6CA80608F"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_1AF767BD52F94DC08C2CBE11DA41E95A"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_1DFD9AECD1AD4B2291DD52028E866569"
+ "OwnerKey" = "8:_62CA00B1E5E4460CA93EE7E2B8FE878B"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_1ED4FB1CE10D4805981844ABC56602F6"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_22CD325A4F5141D6B5FACD713F5FD4F9"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_24E7DBA1F5964574A8251258BCDC935D"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_260594D75E4B4764BBAFE25C15E4F273"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_262BA608F9ED4BB5870E3F6C6EEA0820"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_285F62B042274099A6FD88C531DAA341"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_340E6094BE6F4BCF8350280DC8B37900"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_364DCCAFF25145BCBE75FFEEDCC75B3A"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_3697A58F04D14955AA428E89771E7BA3"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_380124B8E57C4956A73E042735724DB7"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_3CFC5A9B09ED4916A350B88FEF4662CC"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_4879AF80C19D4ED9A3758DCC412190FB"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_574EE5A852D3434987B58E3B8118C1C2"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_5ED87BAE980C4992A4C74AEAEC4A57CF"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_62CA00B1E5E4460CA93EE7E2B8FE878B"
+ "OwnerKey" = "8:_0299839A2CCC4F908C5D3A8F465F3FFE"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_62CA00B1E5E4460CA93EE7E2B8FE878B"
+ "OwnerKey" = "8:_B20638175CCB42398417E0683A12469C"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_62CA00B1E5E4460CA93EE7E2B8FE878B"
+ "OwnerKey" = "8:_364DCCAFF25145BCBE75FFEEDCC75B3A"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_62CA00B1E5E4460CA93EE7E2B8FE878B"
+ "OwnerKey" = "8:_EA282F32A10B4ED1A81AA6133B997C6A"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_62CA00B1E5E4460CA93EE7E2B8FE878B"
+ "OwnerKey" = "8:_D02EB13951314EFD9C539150EF8E53B8"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_65560B58BEBF468C9D06493456A17DEC"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_6BD69E32EE9A4D2B9ECC40558A68FCD8"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_6E847FCD9C014B7E81FB859A0D2D2590"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_72A7EBE64092496AA67AB2DD00C0804B"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_747C33B5F41F498ABCAE119B532F6485"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_7FC58520B0F44E3E95A207905CABFED4"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_860678A628E34D219950C2E2B1BE6A89"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_8CCA95F5402D439B9B9CAC6F0FC1A443"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_9967519E7058965D4C7DEF47EB39CC50"
+ "OwnerKey" = "8:_EA282F32A10B4ED1A81AA6133B997C6A"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_9D69B0FC2413407BA24D88B73EF456AA"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_9FBF78D7B89EEA843380D5F10E1954D7"
+ "OwnerKey" = "8:_EA282F32A10B4ED1A81AA6133B997C6A"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_A271CCE042C14DDF8F0F1A1B16584F17"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_A513FBE6CC6247C19AF06829E5470D01"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_A833908023464B61A160E0323C8E9606"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_B20638175CCB42398417E0683A12469C"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_C1FCE2FAE4714A719B7B430E2BE93CBB"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_C494B5675E2F4B1E9301627B19CF8A52"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_C6AA56CC25F14D6582803347599840BB"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_CD0CFE42ED2D4416A01253E12A0082A8"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_CDBB327B06484A60AD16B999D88A10F5"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_D02EB13951314EFD9C539150EF8E53B8"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_D3B3B266E0FC45DD9B7EEBCC3AC52965"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_D4EC471BF98C4F8FA7A927B95CB69013"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_DA4E31E0503E4EAFA1E4BAEE05144618"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_E3C6C5A7FDD94965B68960844461D5EA"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_E47BCB853AC74A81BC61E878BFCEF5DC"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_EA282F32A10B4ED1A81AA6133B997C6A"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_EA287095645D4A7BA58A530186317895"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_EB7A2E97695F4964B4AF0560A258A14A"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_F77CB9E0AE78446481BD8BFD680F548E"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_FA604C5C4FDD4D7B8110AFC6B603FBAF"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ }
+ "Configurations"
+ {
+ "Debug"
+ {
+ "DisplayName" = "8:Debug"
+ "IsDebugOnly" = "11:TRUE"
+ "IsReleaseOnly" = "11:FALSE"
+ "OutputFilename" = "8:libcups2-windows.msi"
+ "PackageFilesAs" = "3:2"
+ "PackageFileSize" = "3:-2147483648"
+ "CabType" = "3:1"
+ "Compression" = "3:3"
+ "SignOutput" = "11:FALSE"
+ "CertificateFile" = "8:"
+ "PrivateKeyFile" = "8:"
+ "TimeStampServer" = "8:"
+ "InstallerBootstrapper" = "3:2"
+ "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}"
+ {
+ "Enabled" = "11:TRUE"
+ "PromptEnabled" = "11:TRUE"
+ "PrerequisitesLocation" = "2:1"
+ "Url" = "8:"
+ "ComponentsUrl" = "8:"
+ "Items"
+ {
+ "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.3.5.SP1"
+ {
+ "Name" = "8:.NET Framework 3.5 SP1"
+ "ProductCode" = "8:Microsoft.Net.Framework.3.5.SP1"
+ }
+ "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1"
+ {
+ "Name" = "8:Windows Installer 3.1"
+ "ProductCode" = "8:Microsoft.Windows.Installer.3.1"
+ }
+ }
+ }
+ }
+ "Release"
+ {
+ "DisplayName" = "8:Release"
+ "IsDebugOnly" = "11:FALSE"
+ "IsReleaseOnly" = "11:TRUE"
+ "OutputFilename" = "8:libcups2-windows.msi"
+ "PackageFilesAs" = "3:2"
+ "PackageFileSize" = "3:-2147483648"
+ "CabType" = "3:1"
+ "Compression" = "3:3"
+ "SignOutput" = "11:FALSE"
+ "CertificateFile" = "8:"
+ "PrivateKeyFile" = "8:"
+ "TimeStampServer" = "8:"
+ "InstallerBootstrapper" = "3:2"
+ "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}"
+ {
+ "Enabled" = "11:TRUE"
+ "PromptEnabled" = "11:TRUE"
+ "PrerequisitesLocation" = "2:1"
+ "Url" = "8:"
+ "ComponentsUrl" = "8:"
+ "Items"
+ {
+ "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.3.5.SP1"
+ {
+ "Name" = "8:.NET Framework 3.5 SP1"
+ "ProductCode" = "8:Microsoft.Net.Framework.3.5.SP1"
+ }
+ "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1"
+ {
+ "Name" = "8:Windows Installer 3.1"
+ "ProductCode" = "8:Microsoft.Windows.Installer.3.1"
+ }
+ }
+ }
+ }
+ }
+ "Deployable"
+ {
+ "CustomAction"
+ {
+ }
+ "DefaultFeature"
+ {
+ "Name" = "8:DefaultFeature"
+ "Title" = "8:"
+ "Description" = "8:"
+ }
+ "ExternalPersistence"
+ {
+ "LaunchCondition"
+ {
+ }
+ }
+ "File"
+ {
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_00BDFF08E6DA434981F5C1F879B3EF6C"
+ {
+ "SourcePath" = "8:..\\test\\document-a4.ps"
+ "TargetName" = "8:document-a4.ps"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_06B57E1C99D0410EB9C8DC4D66C73FC5"
+ {
+ "SourcePath" = "8:..\\test\\create-printer-subscription.test"
+ "TargetName" = "8:create-printer-subscription.test"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_0DDD4CA1EEBE4AB69CC694DDF483D146"
+ {
+ "SourcePath" = "8:..\\test\\get-completed-jobs.test"
+ "TargetName" = "8:get-completed-jobs.test"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_16A59C6F3F9940288A7D26B6CA80608F"
+ {
+ "SourcePath" = "8:..\\test\\onepage-a4.ps"
+ "TargetName" = "8:onepage-a4.ps"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1AF767BD52F94DC08C2CBE11DA41E95A"
+ {
+ "SourcePath" = "8:..\\doc\\images\\raster.png"
+ "TargetName" = "8:raster.png"
+ "Tag" = "8:"
+ "Folder" = "8:_A4CDED7951A44EF794E1E1EE9F73F240"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1ED4FB1CE10D4805981844ABC56602F6"
+ {
+ "SourcePath" = "8:..\\test\\testfile.jpg"
+ "TargetName" = "8:testfile.jpg"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_22CD325A4F5141D6B5FACD713F5FD4F9"
+ {
+ "SourcePath" = "8:..\\cups\\adminutil.h"
+ "TargetName" = "8:adminutil.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_24E7DBA1F5964574A8251258BCDC935D"
+ {
+ "SourcePath" = "8:..\\cups\\http.h"
+ "TargetName" = "8:http.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_260594D75E4B4764BBAFE25C15E4F273"
+ {
+ "SourcePath" = "8:..\\test\\print-job.test"
+ "TargetName" = "8:print-job.test"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_262BA608F9ED4BB5870E3F6C6EEA0820"
+ {
+ "SourcePath" = "8:..\\test\\ipp-1.1.test"
+ "TargetName" = "8:ipp-1.1.test"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_285F62B042274099A6FD88C531DAA341"
+ {
+ "SourcePath" = "8:..\\cups\\ipp.h"
+ "TargetName" = "8:ipp.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_340E6094BE6F4BCF8350280DC8B37900"
+ {
+ "SourcePath" = "8:..\\doc\\help\\api-httpipp.html"
+ "TargetName" = "8:api-httpipp.html"
+ "Tag" = "8:"
+ "Folder" = "8:_24DE31CE70694FD2977B5FB38F24D77F"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_3697A58F04D14955AA428E89771E7BA3"
+ {
+ "SourcePath" = "8:..\\test\\ipp-2.0.test"
+ "TargetName" = "8:ipp-2.0.test"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_380124B8E57C4956A73E042735724DB7"
+ {
+ "SourcePath" = "8:Win32\\Release\\libcups2.lib"
+ "TargetName" = "8:libcups2.lib"
+ "Tag" = "8:"
+ "Folder" = "8:_2927DAE23F604CF9B8B4D1EC01A6F158"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_3CFC5A9B09ED4916A350B88FEF4662CC"
+ {
+ "SourcePath" = "8:..\\cups\\transcode.h"
+ "TargetName" = "8:transcode.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_4879AF80C19D4ED9A3758DCC412190FB"
+ {
+ "SourcePath" = "8:..\\cups\\raster.h"
+ "TargetName" = "8:raster.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_574EE5A852D3434987B58E3B8118C1C2"
+ {
+ "SourcePath" = "8:..\\cups\\array.h"
+ "TargetName" = "8:array.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_5ED87BAE980C4992A4C74AEAEC4A57CF"
+ {
+ "SourcePath" = "8:..\\cups\\ppd.h"
+ "TargetName" = "8:ppd.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_65560B58BEBF468C9D06493456A17DEC"
+ {
+ "SourcePath" = "8:..\\cups\\language.h"
+ "TargetName" = "8:language.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_6BD69E32EE9A4D2B9ECC40558A68FCD8"
+ {
+ "SourcePath" = "8:Win32\\Release\\libcupsimage2.lib"
+ "TargetName" = "8:libcupsimage2.lib"
+ "Tag" = "8:"
+ "Folder" = "8:_2927DAE23F604CF9B8B4D1EC01A6F158"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_6E847FCD9C014B7E81FB859A0D2D2590"
+ {
+ "SourcePath" = "8:..\\test\\ipp-2.2.test"
+ "TargetName" = "8:ipp-2.2.test"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_72A7EBE64092496AA67AB2DD00C0804B"
+ {
+ "SourcePath" = "8:..\\cups\\versioning.h"
+ "TargetName" = "8:versioning.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_747C33B5F41F498ABCAE119B532F6485"
+ {
+ "SourcePath" = "8:..\\cups\\dir.h"
+ "TargetName" = "8:dir.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_7FC58520B0F44E3E95A207905CABFED4"
+ {
+ "SourcePath" = "8:..\\test\\gray.jpg"
+ "TargetName" = "8:gray.jpg"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_860678A628E34D219950C2E2B1BE6A89"
+ {
+ "SourcePath" = "8:..\\doc\\help\\api-raster.html"
+ "TargetName" = "8:api-raster.html"
+ "Tag" = "8:"
+ "Folder" = "8:_24DE31CE70694FD2977B5FB38F24D77F"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_8CCA95F5402D439B9B9CAC6F0FC1A443"
+ {
+ "SourcePath" = "8:..\\doc\\help\\api-array.html"
+ "TargetName" = "8:api-array.html"
+ "Tag" = "8:"
+ "Folder" = "8:_24DE31CE70694FD2977B5FB38F24D77F"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_9967519E7058965D4C7DEF47EB39CC50"
+ {
+ "SourcePath" = "8:CRYPT32.dll"
+ "TargetName" = "8:CRYPT32.dll"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:TRUE"
+ "IsDependency" = "11:TRUE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_9D69B0FC2413407BA24D88B73EF456AA"
+ {
+ "SourcePath" = "8:..\\doc\\images\\sample-image.png"
+ "TargetName" = "8:sample-image.png"
+ "Tag" = "8:"
+ "Folder" = "8:_A4CDED7951A44EF794E1E1EE9F73F240"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_9FBF78D7B89EEA843380D5F10E1954D7"
+ {
+ "SourcePath" = "8:Secur32.dll"
+ "TargetName" = "8:Secur32.dll"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:TRUE"
+ "IsDependency" = "11:TRUE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_A271CCE042C14DDF8F0F1A1B16584F17"
+ {
+ "SourcePath" = "8:..\\doc\\help\\api-filedir.html"
+ "TargetName" = "8:api-filedir.html"
+ "Tag" = "8:"
+ "Folder" = "8:_24DE31CE70694FD2977B5FB38F24D77F"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_A513FBE6CC6247C19AF06829E5470D01"
+ {
+ "SourcePath" = "8:..\\test\\document-a4.pdf"
+ "TargetName" = "8:document-a4.pdf"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_A833908023464B61A160E0323C8E9606"
+ {
+ "SourcePath" = "8:..\\test\\document-letter.pdf"
+ "TargetName" = "8:document-letter.pdf"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_C1FCE2FAE4714A719B7B430E2BE93CBB"
+ {
+ "SourcePath" = "8:..\\test\\testfile.ps"
+ "TargetName" = "8:testfile.ps"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_C494B5675E2F4B1E9301627B19CF8A52"
+ {
+ "SourcePath" = "8:..\\test\\document-letter.ps"
+ "TargetName" = "8:document-letter.ps"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_C6AA56CC25F14D6582803347599840BB"
+ {
+ "SourcePath" = "8:..\\test\\color.jpg"
+ "TargetName" = "8:color.jpg"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_CD0CFE42ED2D4416A01253E12A0082A8"
+ {
+ "SourcePath" = "8:..\\test\\testfile.pdf"
+ "TargetName" = "8:testfile.pdf"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_CDBB327B06484A60AD16B999D88A10F5"
+ {
+ "SourcePath" = "8:..\\test\\ipp-2.1.test"
+ "TargetName" = "8:ipp-2.1.test"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_D3B3B266E0FC45DD9B7EEBCC3AC52965"
+ {
+ "SourcePath" = "8:..\\test\\get-printer-attributes.test"
+ "TargetName" = "8:get-printer-attributes.test"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_D4EC471BF98C4F8FA7A927B95CB69013"
+ {
+ "SourcePath" = "8:..\\doc\\help\\api-overview.html"
+ "TargetName" = "8:api-overview.html"
+ "Tag" = "8:"
+ "Folder" = "8:_24DE31CE70694FD2977B5FB38F24D77F"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_DA4E31E0503E4EAFA1E4BAEE05144618"
+ {
+ "SourcePath" = "8:..\\doc\\help\\api-cups.html"
+ "TargetName" = "8:api-cups.html"
+ "Tag" = "8:"
+ "Folder" = "8:_24DE31CE70694FD2977B5FB38F24D77F"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_E3C6C5A7FDD94965B68960844461D5EA"
+ {
+ "SourcePath" = "8:..\\LICENSE.txt"
+ "TargetName" = "8:LICENSE.txt"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_E47BCB853AC74A81BC61E878BFCEF5DC"
+ {
+ "SourcePath" = "8:..\\cups\\cups.h"
+ "TargetName" = "8:cups.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_EA287095645D4A7BA58A530186317895"
+ {
+ "SourcePath" = "8:..\\doc\\images\\raster-organization.png"
+ "TargetName" = "8:raster-organization.png"
+ "Tag" = "8:"
+ "Folder" = "8:_A4CDED7951A44EF794E1E1EE9F73F240"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_EB7A2E97695F4964B4AF0560A258A14A"
+ {
+ "SourcePath" = "8:..\\cups\\file.h"
+ "TargetName" = "8:file.h"
+ "Tag" = "8:"
+ "Folder" = "8:_121A70CA434045EDB010E7480AFCEF18"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_F77CB9E0AE78446481BD8BFD680F548E"
+ {
+ "SourcePath" = "8:..\\doc\\help\\api-ppd.html"
+ "TargetName" = "8:api-ppd.html"
+ "Tag" = "8:"
+ "Folder" = "8:_24DE31CE70694FD2977B5FB38F24D77F"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_FA604C5C4FDD4D7B8110AFC6B603FBAF"
+ {
+ "SourcePath" = "8:..\\test\\onepage-letter.ps"
+ "TargetName" = "8:onepage-letter.ps"
+ "Tag" = "8:"
+ "Folder" = "8:_9DFBB4777E594B0F8884792467931241"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ }
+ "FileType"
+ {
+ }
+ "Folder"
+ {
+ "{1525181F-901A-416C-8A58-119130FE478E}:_BEC0EAE20C954C78B294B83E6696156E"
+ {
+ "Name" = "8:#1919"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:ProgramMenuFolder"
+ "Folders"
+ {
+ }
+ }
+ "{1525181F-901A-416C-8A58-119130FE478E}:_C8D931ADC425446B916E9711B929659F"
+ {
+ "Name" = "8:#1914"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:SystemFolder"
+ "Folders"
+ {
+ }
+ }
+ "{1525181F-901A-416C-8A58-119130FE478E}:_D02CDADE99F344CF92CA1A8D0278861F"
+ {
+ "Name" = "8:#1916"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:DesktopFolder"
+ "Folders"
+ {
+ }
+ }
+ "{3C67513D-01DD-4637-8A68-80971EB9504F}:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ {
+ "DefaultLocation" = "8:[ProgramFilesFolder]\\ipptool"
+ "Name" = "8:#1925"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:TARGETDIR"
+ "Folders"
+ {
+ "{9EF0B969-E518-4E46-987F-47570745A589}:_121A70CA434045EDB010E7480AFCEF18"
+ {
+ "Name" = "8:include"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:_23D8BBBA9DEE4C8E88C9D1624DEAFB81"
+ "Folders"
+ {
+ }
+ }
+ "{9EF0B969-E518-4E46-987F-47570745A589}:_24DE31CE70694FD2977B5FB38F24D77F"
+ {
+ "Name" = "8:doc"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:_4C3C248E2B3E4CB0AE8A9DF8D97AB433"
+ "Folders"
+ {
+ "{9EF0B969-E518-4E46-987F-47570745A589}:_A4CDED7951A44EF794E1E1EE9F73F240"
+ {
+ "Name" = "8:images"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:_7ECE25C7A13C410AA18E0529C8998EB7"
+ "Folders"
+ {
+ }
+ }
+ }
+ }
+ "{9EF0B969-E518-4E46-987F-47570745A589}:_2927DAE23F604CF9B8B4D1EC01A6F158"
+ {
+ "Name" = "8:lib"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:_927C9760A02446EBB2AEDE6BCCFDE29F"
+ "Folders"
+ {
+ }
+ }
+ "{9EF0B969-E518-4E46-987F-47570745A589}:_9DFBB4777E594B0F8884792467931241"
+ {
+ "Name" = "8:ipptool"
+ "AlwaysCreate" = "11:FALSE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:_77AF2E5323304714AF58A3F662F6051B"
+ "Folders"
+ {
+ }
+ }
+ }
+ }
+ }
+ "LaunchCondition"
+ {
+ }
+ "Locator"
+ {
+ }
+ "MsiBootstrapper"
+ {
+ "LangId" = "3:1033"
+ "RequiresElevation" = "11:FALSE"
+ }
+ "Product"
+ {
+ "Name" = "8:Microsoft Visual Studio"
+ "ProductName" = "8:CUPS SDK for Windows"
+ "ProductCode" = "8:{4E0D1662-B032-4CAD-8DBD-5302ADCE1C6F}"
+ "PackageCode" = "8:{00298F12-01DD-4785-9402-7A1E694F9577}"
+ "UpgradeCode" = "8:{BAB6EBBB-515D-4155-9FEF-D98DA76814CA}"
+ "RestartWWWService" = "11:FALSE"
+ "RemovePreviousVersions" = "11:TRUE"
+ "DetectNewerInstalledVersion" = "11:TRUE"
+ "InstallAllUsers" = "11:TRUE"
+ "ProductVersion" = "8:12.03.2600"
+ "Manufacturer" = "8:Apple Inc."
+ "ARPHELPTELEPHONE" = "8:"
+ "ARPHELPLINK" = "8:http://www.cups.org/str.php"
+ "Title" = "8:CUPS"
+ "Subject" = "8:"
+ "ARPCONTACT" = "8:Apple Inc."
+ "Keywords" = "8:IPP, Internet Printing Protocol"
+ "ARPCOMMENTS" = "8:CUPS SDK for Windows"
+ "ARPURLINFOABOUT" = "8:http://www.cups.org/"
+ "ARPPRODUCTICON" = "8:"
+ "ARPIconIndex" = "3:0"
+ "SearchPath" = "8:"
+ "UseSystemSearchPath" = "11:TRUE"
+ "TargetPlatform" = "3:0"
+ "PreBuildEvent" = "8:"
+ "PostBuildEvent" = "8:"
+ "RunPostBuildEvent" = "3:0"
+ }
+ "Registry"
+ {
+ "HKLM"
+ {
+ "Keys"
+ {
+ "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_BC4E66686BCA4F9A8B24B6CF2728DACD"
+ {
+ "Name" = "8:Software"
+ "Condition" = "8:"
+ "AlwaysCreate" = "11:FALSE"
+ "DeleteAtUninstall" = "11:FALSE"
+ "Transitive" = "11:FALSE"
+ "Keys"
+ {
+ "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_F9AB9B310C7545D993D690F529048AA2"
+ {
+ "Name" = "8:cups.org"
+ "Condition" = "8:"
+ "AlwaysCreate" = "11:FALSE"
+ "DeleteAtUninstall" = "11:FALSE"
+ "Transitive" = "11:FALSE"
+ "Keys"
+ {
+ }
+ "Values"
+ {
+ "{ADCFDA98-8FDD-45E4-90BC-E3D20B029870}:_4E5BAC705A1D44E78C90C6D2A4A7BE20"
+ {
+ "Name" = "8:installdir"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "ValueTypes" = "3:2"
+ "Value" = "8:[TARGETDIR]"
+ }
+ }
+ }
+ }
+ "Values"
+ {
+ }
+ }
+ }
+ }
+ "HKCU"
+ {
+ "Keys"
+ {
+ "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_A4C9879F42874B6B92960A55F2D98922"
+ {
+ "Name" = "8:Software"
+ "Condition" = "8:"
+ "AlwaysCreate" = "11:FALSE"
+ "DeleteAtUninstall" = "11:FALSE"
+ "Transitive" = "11:FALSE"
+ "Keys"
+ {
+ "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_1ACB03C307FB4B85BB27C9913FB58B09"
+ {
+ "Name" = "8:[Manufacturer]"
+ "Condition" = "8:"
+ "AlwaysCreate" = "11:FALSE"
+ "DeleteAtUninstall" = "11:FALSE"
+ "Transitive" = "11:FALSE"
+ "Keys"
+ {
+ }
+ "Values"
+ {
+ }
+ }
+ }
+ "Values"
+ {
+ }
+ }
+ }
+ }
+ "HKCR"
+ {
+ "Keys"
+ {
+ }
+ }
+ "HKU"
+ {
+ "Keys"
+ {
+ }
+ }
+ "HKPU"
+ {
+ "Keys"
+ {
+ }
+ }
+ }
+ "Sequences"
+ {
+ }
+ "Shortcut"
+ {
+ }
+ "UserInterface"
+ {
+ "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_045DF90B1FF941A9BA7A742CFC0A6C00"
+ {
+ "UseDynamicProperties" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdUserInterface.wim"
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_345BD86390E841A98B74ED3E07945F8C"
+ {
+ "Name" = "8:#1900"
+ "Sequence" = "3:2"
+ "Attributes" = "3:1"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_067C143A8731427180B1568AF8C07375"
+ {
+ "Sequence" = "3:200"
+ "DisplayName" = "8:Installation Folder"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminFolderDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_A2F2CC6EB9D7453599E7598D4D0629A5"
+ {
+ "Sequence" = "3:300"
+ "DisplayName" = "8:Confirm Installation"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminConfirmDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_C2B41369B7334F419318792EBA031412"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Welcome"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminWelcomeDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "CopyrightWarning"
+ {
+ "Name" = "8:CopyrightWarning"
+ "DisplayName" = "8:#1002"
+ "Description" = "8:#1102"
+ "Type" = "3:3"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:2"
+ "Value" = "8:This computer program is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License version 2."
+ "DefaultValue" = "8:#1202"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "Welcome"
+ {
+ "Name" = "8:Welcome"
+ "DisplayName" = "8:#1003"
+ "Description" = "8:#1103"
+ "Type" = "3:3"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:1"
+ "Value" = "8:#1203"
+ "DefaultValue" = "8:#1203"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_6B654A06090344BA9AA443E0D0296737"
+ {
+ "Name" = "8:#1902"
+ "Sequence" = "3:1"
+ "Attributes" = "3:3"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_FB4E7BBC3DA242309FFB58F9A6194A93"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Finished"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdFinishedDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "UpdateText"
+ {
+ "Name" = "8:UpdateText"
+ "DisplayName" = "8:#1058"
+ "Description" = "8:#1158"
+ "Type" = "3:15"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:1"
+ "Value" = "8:#1258"
+ "DefaultValue" = "8:#1258"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_712819C7C4F042ABB708949BD4426628"
+ {
+ "Name" = "8:#1900"
+ "Sequence" = "3:1"
+ "Attributes" = "3:1"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_2F49D4FACB954AF2B786D2AD9206D053"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Welcome"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdWelcomeDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "CopyrightWarning"
+ {
+ "Name" = "8:CopyrightWarning"
+ "DisplayName" = "8:#1002"
+ "Description" = "8:#1102"
+ "Type" = "3:3"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:2"
+ "Value" = "8:This computer program is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License version 2."
+ "DefaultValue" = "8:#1202"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "Welcome"
+ {
+ "Name" = "8:Welcome"
+ "DisplayName" = "8:#1003"
+ "Description" = "8:#1103"
+ "Type" = "3:3"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:1"
+ "Value" = "8:#1203"
+ "DefaultValue" = "8:#1203"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_770E25BC453A464EA8CD51381FDDDD9F"
+ {
+ "Sequence" = "3:300"
+ "DisplayName" = "8:Confirm Installation"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdConfirmDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_9534A64B629F4F868D6D7A384C76DCB2"
+ {
+ "Sequence" = "3:200"
+ "DisplayName" = "8:Installation Folder"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdFolderDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "InstallAllUsersVisible"
+ {
+ "Name" = "8:InstallAllUsersVisible"
+ "DisplayName" = "8:#1059"
+ "Description" = "8:#1159"
+ "Type" = "3:5"
+ "ContextData" = "8:1;True=1;False=0"
+ "Attributes" = "3:0"
+ "Setting" = "3:0"
+ "Value" = "3:1"
+ "DefaultValue" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_770CCEFF81BD46A182A6E816A41A0E81"
+ {
+ "Name" = "8:#1901"
+ "Sequence" = "3:2"
+ "Attributes" = "3:2"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_75E0C1FD245D493DA0D7E3E0BC0C365F"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Progress"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminProgressDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "ShowProgress"
+ {
+ "Name" = "8:ShowProgress"
+ "DisplayName" = "8:#1009"
+ "Description" = "8:#1109"
+ "Type" = "3:5"
+ "ContextData" = "8:1;True=1;False=0"
+ "Attributes" = "3:0"
+ "Setting" = "3:0"
+ "Value" = "3:1"
+ "DefaultValue" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_933B15E9A383418F8ADF3B13F68458F3"
+ {
+ "UseDynamicProperties" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdBasicDialogs.wim"
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_E310DA8CED734E00950A3C5D630CE987"
+ {
+ "Name" = "8:#1902"
+ "Sequence" = "3:2"
+ "Attributes" = "3:3"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_CB172E69F9C74901BE1040336CFD4F72"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Finished"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminFinishedDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_F44F9BE9B54940848289669635E4A5A2"
+ {
+ "Name" = "8:#1901"
+ "Sequence" = "3:1"
+ "Attributes" = "3:2"
+ "Dialogs"
+ {
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_14751F327A634B989283C8F28CFB6DFC"
+ {
+ "Sequence" = "3:100"
+ "DisplayName" = "8:Progress"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdProgressDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "ShowProgress"
+ {
+ "Name" = "8:ShowProgress"
+ "DisplayName" = "8:#1009"
+ "Description" = "8:#1109"
+ "Type" = "3:5"
+ "ContextData" = "8:1;True=1;False=0"
+ "Attributes" = "3:0"
+ "Setting" = "3:0"
+ "Value" = "3:1"
+ "DefaultValue" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ }
+ }
+ }
+ "MergeModule"
+ {
+ "{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_1DFD9AECD1AD4B2291DD52028E866569"
+ {
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:TRUE"
+ "SourcePath" = "8:microsoft_vc90_crt_x86.msm"
+ "Properties"
+ {
+ }
+ "LanguageId" = "3:0"
+ "Exclude" = "11:FALSE"
+ "Folder" = "8:"
+ "Feature" = "8:"
+ "IsolateTo" = "8:"
+ }
+ "{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_62CA00B1E5E4460CA93EE7E2B8FE878B"
+ {
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:TRUE"
+ "SourcePath" = "8:policy_9_0_Microsoft_VC90_CRT_x86.msm"
+ "Properties"
+ {
+ }
+ "LanguageId" = "3:0"
+ "Exclude" = "11:FALSE"
+ "Folder" = "8:"
+ "Feature" = "8:"
+ "IsolateTo" = "8:"
+ }
+ }
+ "ProjectOutput"
+ {
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_0299839A2CCC4F908C5D3A8F465F3FFE"
+ {
+ "SourcePath" = "8:Win32\\Release\\libcupsimage2.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_C8D931ADC425446B916E9711B929659F"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{CB4AA6F2-3E84-45BE-B505-95CD375E1234}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_364DCCAFF25145BCBE75FFEEDCC75B3A"
+ {
+ "SourcePath" = "8:Win32\\Release\\cupstestppd.exe"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_B20638175CCB42398417E0683A12469C"
+ {
+ "SourcePath" = "8:Win32\\Release\\ipptool.exe"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_FFAEDEA1D38D4088A03FDD6F17E2CA5D"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_D02EB13951314EFD9C539150EF8E53B8"
+ {
+ "SourcePath" = "8:Win32\\Release\\regex.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_C8D931ADC425446B916E9711B929659F"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{18950A1B-D37A-40C7-B2DF-C12986C0526E}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_EA282F32A10B4ED1A81AA6133B997C6A"
+ {
+ "SourcePath" = "8:Win32\\Release\\libcups2.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_C8D931ADC425446B916E9711B929659F"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ }
+ }
+}
diff --git a/vcnet/libcups2.vcproj b/vcnet/libcups2.vcproj
index 2fc8c5f8..6e12bdad 100644
--- a/vcnet/libcups2.vcproj
+++ b/vcnet/libcups2.vcproj
@@ -44,8 +44,8 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories="..\vcnet,.."
- PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS"
+ AdditionalIncludeDirectories="..\vcnet;..;..\vcnet\regex"
+ PreprocessorDefinitions="WIN32;DEBUG;_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@@ -66,6 +66,7 @@
/>
<Tool
Name="VCLinkerTool"
+ AdditionalOptions="/NODEFAULTLIB:libcmt"
AdditionalDependencies="ws2_32.lib advapi32.lib"
OutputFile="$(OutDir)\libcups2.dll"
LinkIncremental="2"
@@ -128,7 +129,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\vcnet,.."
- PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS"
+ PreprocessorDefinitions="WIN32;DEBUG;_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@@ -207,8 +208,8 @@
<Tool
Name="VCCLCompilerTool"
Optimization="1"
- AdditionalIncludeDirectories="..\vcnet,.."
- PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS"
+ AdditionalIncludeDirectories="..\vcnet;..;..\vcnet\regex"
+ PreprocessorDefinitions="WIN32;DEBUG;NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -226,6 +227,7 @@
/>
<Tool
Name="VCLinkerTool"
+ AdditionalOptions="/NODEFAULTLIB:libcmt"
AdditionalDependencies="ws2_32.lib advapi32.lib"
OutputFile="$(OutDir)\libcups2.dll"
LinkIncremental="1"
@@ -291,7 +293,7 @@
Name="VCCLCompilerTool"
Optimization="1"
AdditionalIncludeDirectories="..\vcnet,.."
- PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS"
+ PreprocessorDefinitions="WIN32;DEBUG;NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
@@ -478,6 +480,10 @@
>
</File>
<File
+ RelativePath="..\cups\debug.c"
+ >
+ </File>
+ <File
RelativePath="..\cups\dest.c"
>
<FileConfiguration
@@ -1512,7 +1518,7 @@
>
</File>
<File
- RelativePath="..\cups\debug.h"
+ RelativePath="..\cups\debug-private.h"
>
</File>
<File
diff --git a/vcnet/regex.vcproj b/vcnet/regex.vcproj
new file mode 100644
index 00000000..8b13f6fd
--- /dev/null
+++ b/vcnet/regex.vcproj
@@ -0,0 +1,225 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="regex"
+ ProjectGUID="{18950A1B-D37A-40C7-B2DF-C12986C0526E}"
+ RootNamespace="regex"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="196613"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="regex"
+ PreprocessorDefinitions="_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_WINDOWS;_USRDLL;REGEX_EXPORTS"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ LinkIncremental="2"
+ ModuleDefinitionFile="regex/regex.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="1"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="2"
+ EnableIntrinsicFunctions="true"
+ AdditionalIncludeDirectories="regex"
+ PreprocessorDefinitions="_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_WINDOWS;_USRDLL;REGEX_EXPORTS"
+ RuntimeLibrary="2"
+ EnableFunctionLevelLinking="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ LinkIncremental="1"
+ ModuleDefinitionFile="regex/regex.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\regex\regcomp.c"
+ >
+ </File>
+ <File
+ RelativePath=".\regex\regerror.c"
+ >
+ </File>
+ <File
+ RelativePath=".\regex\regex.def"
+ >
+ </File>
+ <File
+ RelativePath=".\regex\regexec.c"
+ >
+ </File>
+ <File
+ RelativePath=".\regex\regfree.c"
+ >
+ </File>
+ <File
+ RelativePath=".\regex\split.c"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+ >
+ <File
+ RelativePath=".\regex\regex.h"
+ >
+ </File>
+ <File
+ RelativePath=".\regex\regex2.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Resource Files"
+ Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+ UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+ >
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
diff --git a/vcnet/regex/regex.def b/vcnet/regex/regex.def
new file mode 100644
index 00000000..440f3482
--- /dev/null
+++ b/vcnet/regex/regex.def
@@ -0,0 +1,7 @@
+LIBRARY regex
+VERSION 1.0
+EXPORTS
+regcomp
+regerror
+regexec
+regfree
diff --git a/vcnet/setdebug.bat b/vcnet/setdebug.bat
new file mode 100644
index 00000000..dd1afa69
--- /dev/null
+++ b/vcnet/setdebug.bat
@@ -0,0 +1,5 @@
+@rem Script to enable debug logging for IPPTOOL
+set CUPS_DEBUG_LOG=ipptool.log
+set CUPS_DEBUG_LEVEL=6
+set "CUPS_DEBUG_FILTER=^(http|_http|ipp|_ipp|cupsDo|cupsGetResponse|cupsSend|cupsWrite)"
+
diff --git a/vcnet/testfile.vcproj b/vcnet/testfile.vcproj
index 070dd6b1..41772193 100644
--- a/vcnet/testfile.vcproj
+++ b/vcnet/testfile.vcproj
@@ -17,8 +17,8 @@
<Configurations>
<Configuration
Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
CharacterSet="2"
@@ -62,7 +62,7 @@
/>
<Tool
Name="VCLinkerTool"
- OutputFile="Debug\testfile.exe"
+ OutputFile="$(OutDir)\testfile.exe"
LinkIncremental="2"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(OutDir)/testfile.pdb"
@@ -95,8 +95,8 @@
</Configuration>
<Configuration
Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
CharacterSet="2"
@@ -137,7 +137,7 @@
/>
<Tool
Name="VCLinkerTool"
- OutputFile="testfile.exe"
+ OutputFile="$(OutDir)\testfile.exe"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
diff --git a/vcnet/testhttp.vcproj b/vcnet/testhttp.vcproj
index c041ebb7..49df7226 100755
--- a/vcnet/testhttp.vcproj
+++ b/vcnet/testhttp.vcproj
@@ -17,8 +17,8 @@
<Configurations>
<Configuration
Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
CharacterSet="2"
@@ -62,7 +62,7 @@
/>
<Tool
Name="VCLinkerTool"
- OutputFile="Debug\testhttp.exe"
+ OutputFile="$(OutDir)\testhttp.exe"
LinkIncremental="2"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(OutDir)/testhttp.pdb"
@@ -95,8 +95,8 @@
</Configuration>
<Configuration
Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
CharacterSet="2"
@@ -137,7 +137,7 @@
/>
<Tool
Name="VCLinkerTool"
- OutputFile="testhttp.exe"
+ OutputFile="$(OutDir)\testhttp.exe"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
diff --git a/xcode/CUPS.xcodeproj/project.pbxproj b/xcode/CUPS.xcodeproj/project.pbxproj
index 5cc40ed7..c1a32a00 100644
--- a/xcode/CUPS.xcodeproj/project.pbxproj
+++ b/xcode/CUPS.xcodeproj/project.pbxproj
@@ -40,7 +40,6 @@
274FF5E913332D4300317ECB /* PBXTargetDependency */,
274FF648133335A300317ECB /* PBXTargetDependency */,
274FF65E13333A3400317ECB /* PBXTargetDependency */,
- 274FF67213333AE400317ECB /* PBXTargetDependency */,
724379531333FECE009631B9 /* PBXTargetDependency */,
724379111333E4EA009631B9 /* PBXTargetDependency */,
276683FF1337F7C5000D33D0 /* PBXTargetDependency */,
@@ -61,17 +60,9 @@
/* End PBXAggregateTarget section */
/* Begin PBXBuildFile section */
- 270CCDB9135E3D0900007BE2 /* libcups_static.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F75A4C1336F31B004BB496 /* libcups_static.a */; };
270CCDBA135E3D0900007BE2 /* libcupsmime.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220FAC13330B2200FCA411 /* libcupsmime.dylib */; };
270CCDBC135E3D3E00007BE2 /* testmime.c in Sources */ = {isa = PBXBuildFile; fileRef = 270CCDBB135E3D3E00007BE2 /* testmime.c */; };
273BF6C71333B5370022CAAB /* testcups.c in Sources */ = {isa = PBXBuildFile; fileRef = 273BF6C61333B5370022CAAB /* testcups.c */; };
- 273BF6CE1333B5950022CAAB /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6CB1333B5950022CAAB /* CoreFoundation.framework */; };
- 273BF6CF1333B5950022CAAB /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6CC1333B5950022CAAB /* libiconv.dylib */; };
- 273BF6D01333B5950022CAAB /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6CD1333B5950022CAAB /* libz.dylib */; };
- 273BF6D31333B5C30022CAAB /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6D11333B5C30022CAAB /* Kerberos.framework */; };
- 273BF6D41333B5C30022CAAB /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6D21333B5C30022CAAB /* Security.framework */; };
- 273BF6D71333B5F60022CAAB /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6D51333B5F60022CAAB /* libresolv.dylib */; };
- 273BF6D81333B5F60022CAAB /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6D61333B5F60022CAAB /* SystemConfiguration.framework */; };
274FF5D913332CC700317ECB /* cups-driverd.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 274FF5D613332CC700317ECB /* cups-driverd.cxx */; };
274FF5DA13332CC700317ECB /* util.c in Sources */ = {isa = PBXBuildFile; fileRef = 274FF5D713332CC700317ECB /* util.c */; };
274FF5DD13332D0600317ECB /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
@@ -104,8 +95,6 @@
274FF64A1333398D00317ECB /* cups-exec.c in Sources */ = {isa = PBXBuildFile; fileRef = 274FF6491333398D00317ECB /* cups-exec.c */; };
274FF658133339D300317ECB /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
274FF65C133339FC00317ECB /* cups-lpd.c in Sources */ = {isa = PBXBuildFile; fileRef = 274FF65B133339FC00317ECB /* cups-lpd.c */; };
- 274FF66E13333AB500317ECB /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
- 274FF67013333ACF00317ECB /* cups-polld.c in Sources */ = {isa = PBXBuildFile; fileRef = 274FF66F13333ACF00317ECB /* cups-polld.c */; };
274FF68513333B4300317ECB /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
274FF68613333B4300317ECB /* libcupsmime.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220FAC13330B2200FCA411 /* libcupsmime.dylib */; };
274FF68813333B6E00317ECB /* cupsfilter.c in Sources */ = {isa = PBXBuildFile; fileRef = 274FF68713333B6E00317ECB /* cupsfilter.c */; };
@@ -155,13 +144,6 @@
274FF6B61333B1C400317ECB /* transcode.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F06133305BB00FCA411 /* transcode.c */; };
274FF6B71333B1C400317ECB /* usersys.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F08133305BB00FCA411 /* usersys.c */; };
274FF6B81333B1C400317ECB /* util.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F09133305BB00FCA411 /* util.c */; };
- 274FF6BA1333B1C400317ECB /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F49133306BB00FCA411 /* CoreFoundation.framework */; };
- 274FF6BB1333B1C400317ECB /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F55133308EA00FCA411 /* Kerberos.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
- 274FF6BC1333B1C400317ECB /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4B133306BB00FCA411 /* Security.framework */; };
- 274FF6BD1333B1C400317ECB /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4C133306BB00FCA411 /* SystemConfiguration.framework */; };
- 274FF6BE1333B1C400317ECB /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F51133308C100FCA411 /* libiconv.dylib */; };
- 274FF6BF1333B1C400317ECB /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F53133308CB00FCA411 /* libresolv.dylib */; };
- 274FF6C01333B1C400317ECB /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4A133306BB00FCA411 /* libz.dylib */; };
274FF6C21333B1C400317ECB /* adminutil.h in Headers */ = {isa = PBXBuildFile; fileRef = 72220EB71333056300FCA411 /* adminutil.h */; settings = {ATTRIBUTES = (); }; };
274FF6C31333B1C400317ECB /* array.h in Headers */ = {isa = PBXBuildFile; fileRef = 72220EB91333056300FCA411 /* array.h */; settings = {ATTRIBUTES = (); }; };
274FF6C41333B1C400317ECB /* backend.h in Headers */ = {isa = PBXBuildFile; fileRef = 72220EBE1333056300FCA411 /* backend.h */; settings = {ATTRIBUTES = (); }; };
@@ -211,17 +193,11 @@
276683FD1337F7B8000D33D0 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
2766840F1337FA38000D33D0 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
276684111337FA7C000D33D0 /* cupsaddsmb.c in Sources */ = {isa = PBXBuildFile; fileRef = 276684101337FA7C000D33D0 /* cupsaddsmb.c */; };
- 278C58D9136B645C00836530 /* libcups_static.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F75A4C1336F31B004BB496 /* libcups_static.a */; };
- 278C58DE136B645C00836530 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58DA136B645C00836530 /* CoreFoundation.framework */; };
- 278C58DF136B645C00836530 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58DB136B645C00836530 /* Kerberos.framework */; };
- 278C58E1136B645C00836530 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58DD136B645C00836530 /* SystemConfiguration.framework */; };
278C58E3136B647200836530 /* testhttp.c in Sources */ = {isa = PBXBuildFile; fileRef = 278C58E2136B647200836530 /* testhttp.c */; };
- 278C58E4136B649200836530 /* libcups_static.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F75A4C1336F31B004BB496 /* libcups_static.a */; };
278C58E9136B64B000836530 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E5136B64AF00836530 /* CoreFoundation.framework */; };
278C58EA136B64B000836530 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E6136B64B000836530 /* Kerberos.framework */; };
278C58EB136B64B000836530 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E7136B64B000836530 /* Security.framework */; };
278C58EC136B64B000836530 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E8136B64B000836530 /* SystemConfiguration.framework */; };
- 278C58F6136B652300836530 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58F4136B652300836530 /* Security.framework */; };
720DD6CD1358FD720064AA82 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
720DD6D31358FDDE0064AA82 /* snmp.c in Sources */ = {isa = PBXBuildFile; fileRef = 720DD6D21358FDDE0064AA82 /* snmp.c */; };
720DD6D413590AB90064AA82 /* ieee1284.c in Sources */ = {isa = PBXBuildFile; fileRef = 724379CA1334000E009631B9 /* ieee1284.c */; };
@@ -297,15 +273,7 @@
72220F43133305BB00FCA411 /* util.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F09133305BB00FCA411 /* util.c */; };
72220F44133305BB00FCA411 /* versioning.h in Headers */ = {isa = PBXBuildFile; fileRef = 72220F0A133305BB00FCA411 /* versioning.h */; settings = {ATTRIBUTES = (Public, ); }; };
72220F481333063D00FCA411 /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 72220F471333063D00FCA411 /* config.h */; settings = {ATTRIBUTES = (Private, ); }; };
- 72220F4D133306BB00FCA411 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F49133306BB00FCA411 /* CoreFoundation.framework */; };
- 72220F4E133306BB00FCA411 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4A133306BB00FCA411 /* libz.dylib */; };
- 72220F4F133306BB00FCA411 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4B133306BB00FCA411 /* Security.framework */; };
- 72220F50133306BB00FCA411 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4C133306BB00FCA411 /* SystemConfiguration.framework */; };
- 72220F52133308C100FCA411 /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F51133308C100FCA411 /* libiconv.dylib */; };
- 72220F54133308CB00FCA411 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F53133308CB00FCA411 /* libresolv.dylib */; };
- 72220F56133308EA00FCA411 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F55133308EA00FCA411 /* Kerberos.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
72220F6613330A7000FCA411 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
- 72220F6813330A8500FCA411 /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F6713330A8500FCA411 /* ApplicationServices.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
72220F9013330B0C00FCA411 /* auth.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F6913330B0C00FCA411 /* auth.c */; };
72220F9113330B0C00FCA411 /* banners.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F6B13330B0C00FCA411 /* banners.c */; };
72220F9213330B0C00FCA411 /* cert.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F6D13330B0C00FCA411 /* cert.c */; };
@@ -354,34 +322,35 @@
724379511333FEBB009631B9 /* dnssd.c in Sources */ = {isa = PBXBuildFile; fileRef = 724379501333FEBB009631B9 /* dnssd.c */; };
724379561333FF04009631B9 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
724379661333FF3B009631B9 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
- 724379681333FF3B009631B9 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 724379671333FF3B009631B9 /* IOKit.framework */; };
724379C71333FFC7009631B9 /* usb.c in Sources */ = {isa = PBXBuildFile; fileRef = 724379C51333FFC7009631B9 /* usb.c */; };
- 724379C91333FFF3009631B9 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 724379C81333FFF3009631B9 /* CoreFoundation.framework */; };
724379CB1334000E009631B9 /* ieee1284.c in Sources */ = {isa = PBXBuildFile; fileRef = 724379CA1334000E009631B9 /* ieee1284.c */; };
7258EAED134594EB009286F1 /* rastertopwg.c in Sources */ = {isa = PBXBuildFile; fileRef = 7258EAEC134594EB009286F1 /* rastertopwg.c */; };
7258EAF413459B6D009286F1 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
7258EAF513459B6D009286F1 /* libcupsimage.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F75A611336F9A3004BB496 /* libcupsimage.dylib */; };
- 7263EE2713330D2800BA4D44 /* libpam.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE2613330D2800BA4D44 /* libpam.dylib */; };
- 7263EE2C13330D5C00BA4D44 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE2913330D5C00BA4D44 /* Kerberos.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
- 7263EE2D13330D5C00BA4D44 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE2A13330D5C00BA4D44 /* Security.framework */; };
- 7263EE2E13330D5C00BA4D44 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE2B13330D5C00BA4D44 /* SystemConfiguration.framework */; };
- 7263EE3013330DC100BA4D44 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE2F13330DC100BA4D44 /* IOKit.framework */; };
- 7263EE3213330E1E00BA4D44 /* libpthread.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE3113330E1E00BA4D44 /* libpthread.dylib */; };
- 7263EE3413330E3C00BA4D44 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE3313330E3C00BA4D44 /* libresolv.dylib */; };
- 7263EE3613330E4E00BA4D44 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE3513330E4E00BA4D44 /* CoreFoundation.framework */; };
- 7263EE3813330E7500BA4D44 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE3713330E7500BA4D44 /* libz.dylib */; };
- 7263EE3A13330EC500BA4D44 /* libldap.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE3913330EC500BA4D44 /* libldap.dylib */; };
726AD702135E8A90002C930D /* ippserver.c in Sources */ = {isa = PBXBuildFile; fileRef = 726AD701135E8A90002C930D /* ippserver.c */; };
- 726AD707135E8B11002C930D /* libcups_static.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F75A4C1336F31B004BB496 /* libcups_static.a */; };
- 726AD708135E8B11002C930D /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F49133306BB00FCA411 /* CoreFoundation.framework */; };
- 726AD709135E8B11002C930D /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F55133308EA00FCA411 /* Kerberos.framework */; };
- 726AD70A135E8B11002C930D /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F53133308CB00FCA411 /* libresolv.dylib */; };
- 726AD70B135E8B11002C930D /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4A133306BB00FCA411 /* libz.dylib */; };
- 726AD70C135E8B11002C930D /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4B133306BB00FCA411 /* Security.framework */; };
- 726AD70D135E8B11002C930D /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4C133306BB00FCA411 /* SystemConfiguration.framework */; };
- 726AD70E135E8B5E002C930D /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F51133308C100FCA411 /* libiconv.dylib */; };
7271883D1374AB14001A2036 /* mime-private.h in Headers */ = {isa = PBXBuildFile; fileRef = 7271883C1374AB14001A2036 /* mime-private.h */; };
+ 728FB7E8153600FA005426E1 /* tls.c in Sources */ = {isa = PBXBuildFile; fileRef = 728FB7E3153600FA005426E1 /* tls.c */; };
+ 728FB7E91536161C005426E1 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E5136B64AF00836530 /* CoreFoundation.framework */; };
+ 728FB7EA1536161C005426E1 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E6136B64B000836530 /* Kerberos.framework */; };
+ 728FB7EB1536161C005426E1 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E7136B64B000836530 /* Security.framework */; };
+ 728FB7ED1536161C005426E1 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 728FB7EC1536161C005426E1 /* libz.dylib */; };
+ 728FB7EE15361642005426E1 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E8136B64B000836530 /* SystemConfiguration.framework */; };
+ 728FB7F11536167A005426E1 /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 728FB7EF1536167A005426E1 /* libiconv.dylib */; };
+ 728FB7F21536167A005426E1 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 728FB7F01536167A005426E1 /* libresolv.dylib */; };
72C16CB9137B195D007E4BF4 /* file.c in Sources */ = {isa = PBXBuildFile; fileRef = 72C16CB8137B195D007E4BF4 /* file.c */; };
+ 72D53A2A15B49110003F877F /* GSS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72D53A2915B49110003F877F /* GSS.framework */; };
+ 72D53A2D15B4913D003F877F /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72D53A2C15B4913D003F877F /* IOKit.framework */; };
+ 72D53A2E15B4915B003F877F /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E8136B64B000836530 /* SystemConfiguration.framework */; };
+ 72D53A2F15B49174003F877F /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E5136B64AF00836530 /* CoreFoundation.framework */; };
+ 72D53A3015B4923F003F877F /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E5136B64AF00836530 /* CoreFoundation.framework */; };
+ 72D53A3115B4923F003F877F /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E7136B64B000836530 /* Security.framework */; };
+ 72D53A3215B4923F003F877F /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E8136B64B000836530 /* SystemConfiguration.framework */; };
+ 72D53A3415B4925B003F877F /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72D53A3315B4925B003F877F /* ApplicationServices.framework */; };
+ 72D53A3515B49270003F877F /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72D53A2C15B4913D003F877F /* IOKit.framework */; };
+ 72D53A3815B4929D003F877F /* colorman.c in Sources */ = {isa = PBXBuildFile; fileRef = 72D53A3615B4929D003F877F /* colorman.c */; };
+ 72D53A3A15B492FA003F877F /* libpam.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72D53A3915B492FA003F877F /* libpam.dylib */; };
+ 72D53A3B15B4930A003F877F /* GSS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72D53A2915B49110003F877F /* GSS.framework */; };
+ 72D53A3C15B4930A003F877F /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E6136B64B000836530 /* Kerberos.framework */; };
72F75A5C1336F988004BB496 /* cupstestppd.c in Sources */ = {isa = PBXBuildFile; fileRef = 72F75A5B1336F988004BB496 /* cupstestppd.c */; };
72F75A671336FA38004BB496 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; };
72F75A6C1336FA8A004BB496 /* error.c in Sources */ = {isa = PBXBuildFile; fileRef = 72F75A691336FA8A004BB496 /* error.c */; };
@@ -517,20 +486,6 @@
remoteGlobalIDString = 274FF64E133339C400317ECB;
remoteInfo = "cups-lpd";
};
- 274FF66C13333AAD00317ECB /* PBXContainerItemProxy */ = {
- isa = PBXContainerItemProxy;
- containerPortal = 72BF96371333042100B1EAD7 /* Project object */;
- proxyType = 1;
- remoteGlobalIDString = 72220EAD1333047D00FCA411;
- remoteInfo = libcups;
- };
- 274FF67113333AE400317ECB /* PBXContainerItemProxy */ = {
- isa = PBXContainerItemProxy;
- containerPortal = 72BF96371333042100B1EAD7 /* Project object */;
- proxyType = 1;
- remoteGlobalIDString = 274FF66213333A9B00317ECB;
- remoteInfo = "cups-polld";
- };
274FF68113333B3C00317ECB /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 72BF96371333042100B1EAD7 /* Project object */;
@@ -945,15 +900,6 @@
);
runOnlyForDeploymentPostprocessing = 1;
};
- 274FF66113333A9B00317ECB /* CopyFiles */ = {
- isa = PBXCopyFilesBuildPhase;
- buildActionMask = 2147483647;
- dstPath = /usr/share/man/man1/;
- dstSubfolderSpec = 0;
- files = (
- );
- runOnlyForDeploymentPostprocessing = 1;
- };
274FF67613333B2F00317ECB /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
@@ -1151,13 +1097,6 @@
2732E092137A3F5200FAFEF6 /* lpstat.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = lpstat.c; path = ../systemv/lpstat.c; sourceTree = "<group>"; };
273BF6BD1333B5000022CAAB /* testcups */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = testcups; sourceTree = BUILT_PRODUCTS_DIR; };
273BF6C61333B5370022CAAB /* testcups.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testcups.c; path = ../cups/testcups.c; sourceTree = "<group>"; };
- 273BF6CB1333B5950022CAAB /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; };
- 273BF6CC1333B5950022CAAB /* libiconv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libiconv.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libiconv.dylib; sourceTree = DEVELOPER_DIR; };
- 273BF6CD1333B5950022CAAB /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libz.dylib; sourceTree = DEVELOPER_DIR; };
- 273BF6D11333B5C30022CAAB /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Kerberos.framework; sourceTree = DEVELOPER_DIR; };
- 273BF6D21333B5C30022CAAB /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; };
- 273BF6D51333B5F60022CAAB /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libresolv.dylib; sourceTree = DEVELOPER_DIR; };
- 273BF6D61333B5F60022CAAB /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; };
274FF5CC13332B1F00317ECB /* cups-driverd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "cups-driverd"; sourceTree = BUILT_PRODUCTS_DIR; };
274FF5D613332CC700317ECB /* cups-driverd.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "cups-driverd.cxx"; path = "../scheduler/cups-driverd.cxx"; sourceTree = "<group>"; };
274FF5D713332CC700317ECB /* util.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = util.c; path = ../scheduler/util.c; sourceTree = "<group>"; };
@@ -1190,8 +1129,6 @@
274FF6491333398D00317ECB /* cups-exec.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "cups-exec.c"; path = "../scheduler/cups-exec.c"; sourceTree = "<group>"; };
274FF64F133339C400317ECB /* cups-lpd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "cups-lpd"; sourceTree = BUILT_PRODUCTS_DIR; };
274FF65B133339FC00317ECB /* cups-lpd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "cups-lpd.c"; path = "../scheduler/cups-lpd.c"; sourceTree = "<group>"; };
- 274FF66313333A9B00317ECB /* cups-polld */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "cups-polld"; sourceTree = BUILT_PRODUCTS_DIR; };
- 274FF66F13333ACF00317ECB /* cups-polld.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "cups-polld.c"; path = "../scheduler/cups-polld.c"; sourceTree = "<group>"; };
274FF67813333B2F00317ECB /* cupsfilter */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = cupsfilter; sourceTree = BUILT_PRODUCTS_DIR; };
274FF68713333B6E00317ECB /* cupsfilter.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = cupsfilter.c; path = ../scheduler/cupsfilter.c; sourceTree = "<group>"; };
276683561337A8C5000D33D0 /* cups.strings */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = cups.strings; path = ../locale/cups.strings; sourceTree = "<group>"; };
@@ -1212,15 +1149,11 @@
276684041337FA1D000D33D0 /* cupsaddsmb */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = cupsaddsmb; sourceTree = BUILT_PRODUCTS_DIR; };
276684101337FA7C000D33D0 /* cupsaddsmb.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = cupsaddsmb.c; path = ../systemv/cupsaddsmb.c; sourceTree = "<group>"; };
278C58CB136B640300836530 /* testhttp */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = testhttp; sourceTree = BUILT_PRODUCTS_DIR; };
- 278C58DA136B645C00836530 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; };
- 278C58DB136B645C00836530 /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Kerberos.framework; sourceTree = DEVELOPER_DIR; };
- 278C58DD136B645C00836530 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; };
278C58E2136B647200836530 /* testhttp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testhttp.c; path = ../cups/testhttp.c; sourceTree = "<group>"; };
278C58E5136B64AF00836530 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = "<absolute>"; };
278C58E6136B64B000836530 /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = /System/Library/Frameworks/Kerberos.framework; sourceTree = "<absolute>"; };
278C58E7136B64B000836530 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = /System/Library/Frameworks/Security.framework; sourceTree = "<absolute>"; };
278C58E8136B64B000836530 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = /System/Library/Frameworks/SystemConfiguration.framework; sourceTree = "<absolute>"; };
- 278C58F4136B652300836530 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; };
27D3037C134148CB00F022B1 /* libcups_s.exp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.exports; name = libcups_s.exp; path = ../cups/libcups_s.exp; sourceTree = "<group>"; };
27D3037D134148CB00F022B1 /* libcups2.def */ = {isa = PBXFileReference; lastKnownFileType = text; name = libcups2.def; path = ../cups/libcups2.def; sourceTree = "<group>"; };
720DD6C21358FD5F0064AA82 /* snmp */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = snmp; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -1299,15 +1232,7 @@
72220F09133305BB00FCA411 /* util.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = util.c; path = ../cups/util.c; sourceTree = "<group>"; };
72220F0A133305BB00FCA411 /* versioning.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = versioning.h; path = ../cups/versioning.h; sourceTree = "<group>"; };
72220F471333063D00FCA411 /* config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = "<group>"; };
- 72220F49133306BB00FCA411 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; };
- 72220F4A133306BB00FCA411 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libz.dylib; sourceTree = DEVELOPER_DIR; };
- 72220F4B133306BB00FCA411 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; };
- 72220F4C133306BB00FCA411 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; };
- 72220F51133308C100FCA411 /* libiconv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libiconv.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libiconv.dylib; sourceTree = DEVELOPER_DIR; };
- 72220F53133308CB00FCA411 /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libresolv.dylib; sourceTree = DEVELOPER_DIR; };
- 72220F55133308EA00FCA411 /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Kerberos.framework; sourceTree = DEVELOPER_DIR; };
72220F5B13330A5A00FCA411 /* cupsd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = cupsd; sourceTree = BUILT_PRODUCTS_DIR; };
- 72220F6713330A8500FCA411 /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/ApplicationServices.framework; sourceTree = DEVELOPER_DIR; };
72220F6913330B0C00FCA411 /* auth.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = auth.c; path = ../scheduler/auth.c; sourceTree = SOURCE_ROOT; };
72220F6A13330B0C00FCA411 /* auth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = auth.h; path = ../scheduler/auth.h; sourceTree = SOURCE_ROOT; };
72220F6B13330B0C00FCA411 /* banners.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = banners.c; path = ../scheduler/banners.c; sourceTree = SOURCE_ROOT; };
@@ -1365,62 +1290,37 @@
724379471333FEA9009631B9 /* dnssd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = dnssd; sourceTree = BUILT_PRODUCTS_DIR; };
724379501333FEBB009631B9 /* dnssd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = dnssd.c; path = ../backend/dnssd.c; sourceTree = "<group>"; };
7243795B1333FF1D009631B9 /* usb */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = usb; sourceTree = BUILT_PRODUCTS_DIR; };
- 724379671333FF3B009631B9 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = SDKs/MacOSX10.7.sdk/System/Library/Frameworks/IOKit.framework; sourceTree = DEVELOPER_DIR; };
724379C41333FFC7009631B9 /* usb-darwin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "usb-darwin.c"; path = "../backend/usb-darwin.c"; sourceTree = "<group>"; };
724379C51333FFC7009631B9 /* usb.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = usb.c; path = ../backend/usb.c; sourceTree = "<group>"; };
- 724379C81333FFF3009631B9 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = SDKs/MacOSX10.7.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; };
724379CA1334000E009631B9 /* ieee1284.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ieee1284.c; path = ../backend/ieee1284.c; sourceTree = "<group>"; };
7258EAE2134594C4009286F1 /* rastertopwg */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = rastertopwg; sourceTree = BUILT_PRODUCTS_DIR; };
7258EAEC134594EB009286F1 /* rastertopwg.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rastertopwg.c; path = ../filter/rastertopwg.c; sourceTree = "<group>"; };
- 7263EE2613330D2800BA4D44 /* libpam.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libpam.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libpam.dylib; sourceTree = DEVELOPER_DIR; };
- 7263EE2913330D5C00BA4D44 /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Kerberos.framework; sourceTree = DEVELOPER_DIR; };
- 7263EE2A13330D5C00BA4D44 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; };
- 7263EE2B13330D5C00BA4D44 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; };
- 7263EE2F13330DC100BA4D44 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/IOKit.framework; sourceTree = DEVELOPER_DIR; };
- 7263EE3113330E1E00BA4D44 /* libpthread.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libpthread.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libpthread.dylib; sourceTree = DEVELOPER_DIR; };
- 7263EE3313330E3C00BA4D44 /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libresolv.dylib; sourceTree = DEVELOPER_DIR; };
- 7263EE3513330E4E00BA4D44 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; };
- 7263EE3713330E7500BA4D44 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libz.dylib; sourceTree = DEVELOPER_DIR; };
- 7263EE3913330EC500BA4D44 /* libldap.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libldap.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libldap.dylib; sourceTree = DEVELOPER_DIR; };
726AD6F7135E88F0002C930D /* ippserver */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = ippserver; sourceTree = BUILT_PRODUCTS_DIR; };
726AD701135E8A90002C930D /* ippserver.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ippserver.c; path = ../test/ippserver.c; sourceTree = "<group>"; };
- 7271881613746EA8001A2036 /* bannertops.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = bannertops.c; path = ../filter/bannertops.c; sourceTree = "<group>"; };
7271881713746EA8001A2036 /* commandtops.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = commandtops.c; path = ../filter/commandtops.c; sourceTree = "<group>"; };
7271881813746EA8001A2036 /* common.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = common.c; path = ../filter/common.c; sourceTree = "<group>"; };
7271881913746EA8001A2036 /* common.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = common.h; path = ../filter/common.h; sourceTree = "<group>"; };
7271881A13746EA8001A2036 /* gziptoany.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = gziptoany.c; path = ../filter/gziptoany.c; sourceTree = "<group>"; };
- 7271881B13746EA8001A2036 /* imagetops.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = imagetops.c; path = ../filter/imagetops.c; sourceTree = "<group>"; };
- 7271881C13746EA8001A2036 /* imagetoraster.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = imagetoraster.c; path = ../filter/imagetoraster.c; sourceTree = "<group>"; };
- 7271881D13746EA8001A2036 /* pdftops.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = pdftops.c; path = ../filter/pdftops.c; sourceTree = "<group>"; };
- 7271881E13746EA8001A2036 /* pstext.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = pstext.c; path = ../filter/pstext.c; sourceTree = "<group>"; };
- 7271881F13746EA8001A2036 /* pstext.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = pstext.h; path = ../filter/pstext.h; sourceTree = "<group>"; };
7271882013746EA8001A2036 /* pstops.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = pstops.c; path = ../filter/pstops.c; sourceTree = "<group>"; };
7271882113746EA8001A2036 /* rastertoepson.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = rastertoepson.c; path = ../filter/rastertoepson.c; sourceTree = "<group>"; };
7271882213746EA8001A2036 /* rastertohp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = rastertohp.c; path = ../filter/rastertohp.c; sourceTree = "<group>"; };
7271882313746EA8001A2036 /* rastertolabel.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = rastertolabel.c; path = ../filter/rastertolabel.c; sourceTree = "<group>"; };
- 7271882413746EA8001A2036 /* textcommon.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = textcommon.c; path = ../filter/textcommon.c; sourceTree = "<group>"; };
- 7271882513746EA8001A2036 /* textcommon.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = textcommon.h; path = ../filter/textcommon.h; sourceTree = "<group>"; };
- 7271882613746EA8001A2036 /* texttops.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = texttops.c; path = ../filter/texttops.c; sourceTree = "<group>"; };
- 7271882B137498E4001A2036 /* image-bmp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-bmp.c"; path = "../filter/image-bmp.c"; sourceTree = "<group>"; };
- 7271882C137498E4001A2036 /* image-colorspace.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-colorspace.c"; path = "../filter/image-colorspace.c"; sourceTree = "<group>"; };
- 7271882D137498E4001A2036 /* image-gif.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-gif.c"; path = "../filter/image-gif.c"; sourceTree = "<group>"; };
- 7271882E137498E4001A2036 /* image-jpeg.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-jpeg.c"; path = "../filter/image-jpeg.c"; sourceTree = "<group>"; };
- 7271882F137498E4001A2036 /* image-photocd.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-photocd.c"; path = "../filter/image-photocd.c"; sourceTree = "<group>"; };
- 72718830137498E4001A2036 /* image-pix.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-pix.c"; path = "../filter/image-pix.c"; sourceTree = "<group>"; };
- 72718831137498E4001A2036 /* image-png.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-png.c"; path = "../filter/image-png.c"; sourceTree = "<group>"; };
- 72718832137498E4001A2036 /* image-pnm.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-pnm.c"; path = "../filter/image-pnm.c"; sourceTree = "<group>"; };
- 72718833137498E4001A2036 /* image-private.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "image-private.h"; path = "../filter/image-private.h"; sourceTree = "<group>"; };
- 72718834137498E4001A2036 /* image-sgi.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-sgi.c"; path = "../filter/image-sgi.c"; sourceTree = "<group>"; };
- 72718835137498E4001A2036 /* image-sgi.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "image-sgi.h"; path = "../filter/image-sgi.h"; sourceTree = "<group>"; };
- 72718836137498E4001A2036 /* image-sgilib.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-sgilib.c"; path = "../filter/image-sgilib.c"; sourceTree = "<group>"; };
- 72718837137498E4001A2036 /* image-sun.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-sun.c"; path = "../filter/image-sun.c"; sourceTree = "<group>"; };
- 72718838137498E4001A2036 /* image-tiff.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-tiff.c"; path = "../filter/image-tiff.c"; sourceTree = "<group>"; };
- 72718839137498E4001A2036 /* image-zoom.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "image-zoom.c"; path = "../filter/image-zoom.c"; sourceTree = "<group>"; };
- 7271883A137498E4001A2036 /* image.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = image.c; path = ../filter/image.c; sourceTree = "<group>"; };
- 7271883B137498E4001A2036 /* image.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = image.h; path = ../filter/image.h; sourceTree = "<group>"; };
7271883C1374AB14001A2036 /* mime-private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "mime-private.h"; path = "../scheduler/mime-private.h"; sourceTree = "<group>"; };
+ 728FB7E0153600FA005426E1 /* tls-darwin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "tls-darwin.c"; path = "../scheduler/tls-darwin.c"; sourceTree = "<group>"; };
+ 728FB7E1153600FA005426E1 /* tls-gnutls.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "tls-gnutls.c"; path = "../scheduler/tls-gnutls.c"; sourceTree = "<group>"; };
+ 728FB7E2153600FA005426E1 /* tls-openssl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "tls-openssl.c"; path = "../scheduler/tls-openssl.c"; sourceTree = "<group>"; };
+ 728FB7E3153600FA005426E1 /* tls.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = tls.c; path = ../scheduler/tls.c; sourceTree = "<group>"; };
+ 728FB7EC1536161C005426E1 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = ../../../../../usr/lib/libz.dylib; sourceTree = "<group>"; };
+ 728FB7EF1536167A005426E1 /* libiconv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libiconv.dylib; path = ../../../../../usr/lib/libiconv.dylib; sourceTree = "<group>"; };
+ 728FB7F01536167A005426E1 /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = ../../../../../usr/lib/libresolv.dylib; sourceTree = "<group>"; };
+ 72A4332F155844CF002E172D /* libcups_static.a */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libcups_static.a; sourceTree = BUILT_PRODUCTS_DIR; };
72C16CB8137B195D007E4BF4 /* file.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = file.c; path = ../scheduler/file.c; sourceTree = SOURCE_ROOT; };
- 72F75A4C1336F31B004BB496 /* libcups_static.a */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libcups_static.a; sourceTree = BUILT_PRODUCTS_DIR; };
+ 72D53A2915B49110003F877F /* GSS.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GSS.framework; path = ../../../../../System/Library/Frameworks/GSS.framework; sourceTree = "<group>"; };
+ 72D53A2C15B4913D003F877F /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = ../../../../../System/Library/Frameworks/IOKit.framework; sourceTree = "<group>"; };
+ 72D53A3315B4925B003F877F /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = ../../../../../System/Library/Frameworks/ApplicationServices.framework; sourceTree = "<group>"; };
+ 72D53A3615B4929D003F877F /* colorman.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = colorman.c; path = ../scheduler/colorman.c; sourceTree = "<group>"; };
+ 72D53A3715B4929D003F877F /* colorman.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = colorman.h; path = ../scheduler/colorman.h; sourceTree = "<group>"; };
+ 72D53A3915B492FA003F877F /* libpam.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libpam.dylib; path = ../../../../../usr/lib/libpam.dylib; sourceTree = "<group>"; };
72F75A521336F950004BB496 /* cupstestppd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = cupstestppd; sourceTree = BUILT_PRODUCTS_DIR; };
72F75A5B1336F988004BB496 /* cupstestppd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = cupstestppd.c; path = ../systemv/cupstestppd.c; sourceTree = "<group>"; };
72F75A611336F9A3004BB496 /* libcupsimage.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libcupsimage.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -1438,7 +1338,6 @@
278C58EA136B64B000836530 /* Kerberos.framework in Frameworks */,
278C58EB136B64B000836530 /* Security.framework in Frameworks */,
278C58EC136B64B000836530 /* SystemConfiguration.framework in Frameworks */,
- 270CCDB9135E3D0900007BE2 /* libcups_static.a in Frameworks */,
270CCDBA135E3D0900007BE2 /* libcupsmime.dylib in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -1447,14 +1346,6 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 278C58E4136B649200836530 /* libcups_static.a in Frameworks */,
- 273BF6CE1333B5950022CAAB /* CoreFoundation.framework in Frameworks */,
- 273BF6D31333B5C30022CAAB /* Kerberos.framework in Frameworks */,
- 273BF6D41333B5C30022CAAB /* Security.framework in Frameworks */,
- 273BF6D81333B5F60022CAAB /* SystemConfiguration.framework in Frameworks */,
- 273BF6CF1333B5950022CAAB /* libiconv.dylib in Frameworks */,
- 273BF6D71333B5F60022CAAB /* libresolv.dylib in Frameworks */,
- 273BF6D01333B5950022CAAB /* libz.dylib in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1498,14 +1389,6 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
- 274FF66013333A9B00317ECB /* Frameworks */ = {
- isa = PBXFrameworksBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 274FF66E13333AB500317ECB /* libcups.dylib in Frameworks */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
274FF67513333B2F00317ECB /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@@ -1519,13 +1402,6 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 274FF6BA1333B1C400317ECB /* CoreFoundation.framework in Frameworks */,
- 274FF6BB1333B1C400317ECB /* Kerberos.framework in Frameworks */,
- 274FF6BC1333B1C400317ECB /* Security.framework in Frameworks */,
- 274FF6BD1333B1C400317ECB /* SystemConfiguration.framework in Frameworks */,
- 274FF6BE1333B1C400317ECB /* libiconv.dylib in Frameworks */,
- 274FF6BF1333B1C400317ECB /* libresolv.dylib in Frameworks */,
- 274FF6C01333B1C400317ECB /* libz.dylib in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1602,11 +1478,6 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 278C58DE136B645C00836530 /* CoreFoundation.framework in Frameworks */,
- 278C58DF136B645C00836530 /* Kerberos.framework in Frameworks */,
- 278C58F6136B652300836530 /* Security.framework in Frameworks */,
- 278C58E1136B645C00836530 /* SystemConfiguration.framework in Frameworks */,
- 278C58D9136B645C00836530 /* libcups_static.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1622,13 +1493,14 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 72220F4D133306BB00FCA411 /* CoreFoundation.framework in Frameworks */,
- 72220F56133308EA00FCA411 /* Kerberos.framework in Frameworks */,
- 72220F4F133306BB00FCA411 /* Security.framework in Frameworks */,
- 72220F50133306BB00FCA411 /* SystemConfiguration.framework in Frameworks */,
- 72220F52133308C100FCA411 /* libiconv.dylib in Frameworks */,
- 72220F54133308CB00FCA411 /* libresolv.dylib in Frameworks */,
- 72220F4E133306BB00FCA411 /* libz.dylib in Frameworks */,
+ 728FB7F11536167A005426E1 /* libiconv.dylib in Frameworks */,
+ 728FB7F21536167A005426E1 /* libresolv.dylib in Frameworks */,
+ 728FB7ED1536161C005426E1 /* libz.dylib in Frameworks */,
+ 728FB7E91536161C005426E1 /* CoreFoundation.framework in Frameworks */,
+ 72D53A2A15B49110003F877F /* GSS.framework in Frameworks */,
+ 728FB7EA1536161C005426E1 /* Kerberos.framework in Frameworks */,
+ 728FB7EB1536161C005426E1 /* Security.framework in Frameworks */,
+ 728FB7EE15361642005426E1 /* SystemConfiguration.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1636,19 +1508,16 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 72220F6813330A8500FCA411 /* ApplicationServices.framework in Frameworks */,
- 7263EE3613330E4E00BA4D44 /* CoreFoundation.framework in Frameworks */,
- 7263EE3013330DC100BA4D44 /* IOKit.framework in Frameworks */,
- 7263EE2C13330D5C00BA4D44 /* Kerberos.framework in Frameworks */,
- 7263EE2D13330D5C00BA4D44 /* Security.framework in Frameworks */,
- 7263EE2E13330D5C00BA4D44 /* SystemConfiguration.framework in Frameworks */,
+ 72D53A3A15B492FA003F877F /* libpam.dylib in Frameworks */,
72220F6613330A7000FCA411 /* libcups.dylib in Frameworks */,
72220FBF13330C1000FCA411 /* libcupsmime.dylib in Frameworks */,
- 7263EE3A13330EC500BA4D44 /* libldap.dylib in Frameworks */,
- 7263EE2713330D2800BA4D44 /* libpam.dylib in Frameworks */,
- 7263EE3213330E1E00BA4D44 /* libpthread.dylib in Frameworks */,
- 7263EE3413330E3C00BA4D44 /* libresolv.dylib in Frameworks */,
- 7263EE3813330E7500BA4D44 /* libz.dylib in Frameworks */,
+ 72D53A3415B4925B003F877F /* ApplicationServices.framework in Frameworks */,
+ 72D53A3015B4923F003F877F /* CoreFoundation.framework in Frameworks */,
+ 72D53A3B15B4930A003F877F /* GSS.framework in Frameworks */,
+ 72D53A3515B49270003F877F /* IOKit.framework in Frameworks */,
+ 72D53A3C15B4930A003F877F /* Kerberos.framework in Frameworks */,
+ 72D53A3115B4923F003F877F /* Security.framework in Frameworks */,
+ 72D53A3215B4923F003F877F /* SystemConfiguration.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1696,9 +1565,10 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 724379C91333FFF3009631B9 /* CoreFoundation.framework in Frameworks */,
- 724379681333FF3B009631B9 /* IOKit.framework in Frameworks */,
724379661333FF3B009631B9 /* libcups.dylib in Frameworks */,
+ 72D53A2F15B49174003F877F /* CoreFoundation.framework in Frameworks */,
+ 72D53A2D15B4913D003F877F /* IOKit.framework in Frameworks */,
+ 72D53A2E15B4915B003F877F /* SystemConfiguration.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1715,14 +1585,6 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 726AD70E135E8B5E002C930D /* libiconv.dylib in Frameworks */,
- 726AD707135E8B11002C930D /* libcups_static.a in Frameworks */,
- 726AD708135E8B11002C930D /* CoreFoundation.framework in Frameworks */,
- 726AD709135E8B11002C930D /* Kerberos.framework in Frameworks */,
- 726AD70A135E8B11002C930D /* libresolv.dylib in Frameworks */,
- 726AD70B135E8B11002C930D /* libz.dylib in Frameworks */,
- 726AD70C135E8B11002C930D /* Security.framework in Frameworks */,
- 726AD70D135E8B11002C930D /* SystemConfiguration.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1759,7 +1621,6 @@
274FF5D513332C2C00317ECB /* daemon */ = {
isa = PBXGroup;
children = (
- 274FF66F13333ACF00317ECB /* cups-polld.c */,
274FF6351333344400317ECB /* cups-deviced.c */,
274FF5D613332CC700317ECB /* cups-driverd.cxx */,
274FF6491333398D00317ECB /* cups-exec.c */,
@@ -1840,7 +1701,6 @@
274FF6291333333600317ECB /* cups-deviced */,
274FF63E1333358B00317ECB /* cups-exec */,
274FF64F133339C400317ECB /* cups-lpd */,
- 274FF66313333A9B00317ECB /* cups-polld */,
274FF67813333B2F00317ECB /* cupsfilter */,
273BF6BD1333B5000022CAAB /* testcups */,
724378FD1333E43E009631B9 /* ipp */,
@@ -1862,6 +1722,7 @@
270CCDA7135E3C9E00007BE2 /* testmime */,
726AD6F7135E88F0002C930D /* ippserver */,
278C58CB136B640300836530 /* testhttp */,
+ 72A4332F155844CF002E172D /* libcups_static.a */,
);
name = Products;
sourceTree = "<group>";
@@ -1970,6 +1831,8 @@
72220F5D13330A5A00FCA411 /* cupsd */ = {
isa = PBXGroup;
children = (
+ 72D53A3615B4929D003F877F /* colorman.c */,
+ 72D53A3715B4929D003F877F /* colorman.h */,
72220F6913330B0C00FCA411 /* auth.c */,
72220F6A13330B0C00FCA411 /* auth.h */,
72220F6B13330B0C00FCA411 /* banners.c */,
@@ -2009,6 +1872,10 @@
72220F8D13330B0C00FCA411 /* subscriptions.h */,
72220F8E13330B0C00FCA411 /* sysman.c */,
72220F8F13330B0C00FCA411 /* sysman.h */,
+ 728FB7E3153600FA005426E1 /* tls.c */,
+ 728FB7E0153600FA005426E1 /* tls-darwin.c */,
+ 728FB7E1153600FA005426E1 /* tls-gnutls.c */,
+ 728FB7E2153600FA005426E1 /* tls-openssl.c */,
);
name = cupsd;
path = .;
@@ -2027,45 +1894,14 @@
72220FB113330B4A00FCA411 /* Frameworks */ = {
isa = PBXGroup;
children = (
- 278C58F4136B652300836530 /* Security.framework */,
278C58E5136B64AF00836530 /* CoreFoundation.framework */,
278C58E6136B64B000836530 /* Kerberos.framework */,
278C58E7136B64B000836530 /* Security.framework */,
278C58E8136B64B000836530 /* SystemConfiguration.framework */,
- 278C58DA136B645C00836530 /* CoreFoundation.framework */,
- 278C58DB136B645C00836530 /* Kerberos.framework */,
- 278C58DD136B645C00836530 /* SystemConfiguration.framework */,
- 72220FAC13330B2200FCA411 /* libcupsmime.dylib */,
72220EAE1333047D00FCA411 /* libcups.dylib */,
72F75A611336F9A3004BB496 /* libcupsimage.dylib */,
+ 72220FAC13330B2200FCA411 /* libcupsmime.dylib */,
274FF5EE133330C800317ECB /* libcupsppdc.dylib */,
- 724379C81333FFF3009631B9 /* CoreFoundation.framework */,
- 724379671333FF3B009631B9 /* IOKit.framework */,
- 273BF6D51333B5F60022CAAB /* libresolv.dylib */,
- 273BF6D61333B5F60022CAAB /* SystemConfiguration.framework */,
- 273BF6D11333B5C30022CAAB /* Kerberos.framework */,
- 273BF6D21333B5C30022CAAB /* Security.framework */,
- 273BF6CB1333B5950022CAAB /* CoreFoundation.framework */,
- 273BF6CC1333B5950022CAAB /* libiconv.dylib */,
- 273BF6CD1333B5950022CAAB /* libz.dylib */,
- 7263EE3913330EC500BA4D44 /* libldap.dylib */,
- 7263EE3713330E7500BA4D44 /* libz.dylib */,
- 7263EE3513330E4E00BA4D44 /* CoreFoundation.framework */,
- 7263EE3313330E3C00BA4D44 /* libresolv.dylib */,
- 7263EE3113330E1E00BA4D44 /* libpthread.dylib */,
- 7263EE2F13330DC100BA4D44 /* IOKit.framework */,
- 7263EE2913330D5C00BA4D44 /* Kerberos.framework */,
- 7263EE2A13330D5C00BA4D44 /* Security.framework */,
- 7263EE2B13330D5C00BA4D44 /* SystemConfiguration.framework */,
- 7263EE2613330D2800BA4D44 /* libpam.dylib */,
- 72220F6713330A8500FCA411 /* ApplicationServices.framework */,
- 72220F49133306BB00FCA411 /* CoreFoundation.framework */,
- 72220F55133308EA00FCA411 /* Kerberos.framework */,
- 72220F4B133306BB00FCA411 /* Security.framework */,
- 72220F4C133306BB00FCA411 /* SystemConfiguration.framework */,
- 72220F51133308C100FCA411 /* libiconv.dylib */,
- 72220F53133308CB00FCA411 /* libresolv.dylib */,
- 72220F4A133306BB00FCA411 /* libz.dylib */,
);
name = Frameworks;
sourceTree = "<group>";
@@ -2092,56 +1928,29 @@
7258EADC134594A8009286F1 /* filters */ = {
isa = PBXGroup;
children = (
- 7271881613746EA8001A2036 /* bannertops.c */,
7271881713746EA8001A2036 /* commandtops.c */,
7271881813746EA8001A2036 /* common.c */,
7271881913746EA8001A2036 /* common.h */,
7271881A13746EA8001A2036 /* gziptoany.c */,
- 7271881B13746EA8001A2036 /* imagetops.c */,
- 7271881C13746EA8001A2036 /* imagetoraster.c */,
- 7271881D13746EA8001A2036 /* pdftops.c */,
- 7271881E13746EA8001A2036 /* pstext.c */,
- 7271881F13746EA8001A2036 /* pstext.h */,
7271882013746EA8001A2036 /* pstops.c */,
7271882113746EA8001A2036 /* rastertoepson.c */,
7271882213746EA8001A2036 /* rastertohp.c */,
7271882313746EA8001A2036 /* rastertolabel.c */,
7258EAEC134594EB009286F1 /* rastertopwg.c */,
- 7271882413746EA8001A2036 /* textcommon.c */,
- 7271882513746EA8001A2036 /* textcommon.h */,
- 7271882613746EA8001A2036 /* texttops.c */,
);
name = filters;
sourceTree = "<group>";
};
- 7271882A1374988C001A2036 /* Unused */ = {
- isa = PBXGroup;
- children = (
- 7271882B137498E4001A2036 /* image-bmp.c */,
- 7271882C137498E4001A2036 /* image-colorspace.c */,
- 7271882D137498E4001A2036 /* image-gif.c */,
- 7271882E137498E4001A2036 /* image-jpeg.c */,
- 7271882F137498E4001A2036 /* image-photocd.c */,
- 72718830137498E4001A2036 /* image-pix.c */,
- 72718831137498E4001A2036 /* image-png.c */,
- 72718832137498E4001A2036 /* image-pnm.c */,
- 72718833137498E4001A2036 /* image-private.h */,
- 72718834137498E4001A2036 /* image-sgi.c */,
- 72718835137498E4001A2036 /* image-sgi.h */,
- 72718836137498E4001A2036 /* image-sgilib.c */,
- 72718837137498E4001A2036 /* image-sun.c */,
- 72718838137498E4001A2036 /* image-tiff.c */,
- 72718839137498E4001A2036 /* image-zoom.c */,
- 7271883A137498E4001A2036 /* image.c */,
- 7271883B137498E4001A2036 /* image.h */,
- );
- name = Unused;
- sourceTree = "<group>";
- };
72BF96351333042100B1EAD7 = {
isa = PBXGroup;
children = (
- 72F75A4C1336F31B004BB496 /* libcups_static.a */,
+ 72D53A3915B492FA003F877F /* libpam.dylib */,
+ 72D53A3315B4925B003F877F /* ApplicationServices.framework */,
+ 72D53A2C15B4913D003F877F /* IOKit.framework */,
+ 72D53A2915B49110003F877F /* GSS.framework */,
+ 728FB7EF1536167A005426E1 /* libiconv.dylib */,
+ 728FB7F01536167A005426E1 /* libresolv.dylib */,
+ 728FB7EC1536161C005426E1 /* libz.dylib */,
72220FB113330B4A00FCA411 /* Frameworks */,
72220F45133305D000FCA411 /* Public Headers */,
72220F461333060C00FCA411 /* Private Headers */,
@@ -2163,7 +1972,6 @@
72F75A681336FA42004BB496 /* libcupsimage */ = {
isa = PBXGroup;
children = (
- 7271882A1374988C001A2036 /* Unused */,
72F75A691336FA8A004BB496 /* error.c */,
72F75A6A1336FA8A004BB496 /* interpret.c */,
72F75A6B1336FA8A004BB496 /* raster.c */,
@@ -2397,24 +2205,6 @@
productReference = 274FF64F133339C400317ECB /* cups-lpd */;
productType = "com.apple.product-type.tool";
};
- 274FF66213333A9B00317ECB /* cups-polld */ = {
- isa = PBXNativeTarget;
- buildConfigurationList = 274FF66913333A9B00317ECB /* Build configuration list for PBXNativeTarget "cups-polld" */;
- buildPhases = (
- 274FF65F13333A9B00317ECB /* Sources */,
- 274FF66013333A9B00317ECB /* Frameworks */,
- 274FF66113333A9B00317ECB /* CopyFiles */,
- );
- buildRules = (
- );
- dependencies = (
- 274FF66D13333AAD00317ECB /* PBXTargetDependency */,
- );
- name = "cups-polld";
- productName = "cups-polld";
- productReference = 274FF66313333A9B00317ECB /* cups-polld */;
- productType = "com.apple.product-type.tool";
- };
274FF67713333B2F00317ECB /* cupsfilter */ = {
isa = PBXNativeTarget;
buildConfigurationList = 274FF67E13333B2F00317ECB /* Build configuration list for PBXNativeTarget "cupsfilter" */;
@@ -2448,7 +2238,7 @@
);
name = libcups_static;
productName = libcups;
- productReference = 72F75A4C1336F31B004BB496 /* libcups_static.a */;
+ productReference = 72A4332F155844CF002E172D /* libcups_static.a */;
productType = "com.apple.product-type.library.dynamic";
};
2766835B1337A9B6000D33D0 /* cupsctl */ = {
@@ -2860,7 +2650,7 @@
72BF96371333042100B1EAD7 /* Project object */ = {
isa = PBXProject;
attributes = {
- LastUpgradeCheck = 0410;
+ LastUpgradeCheck = 0440;
ORGANIZATIONNAME = "Apple Inc.";
};
buildConfigurationList = 72BF963A1333042100B1EAD7 /* Build configuration list for PBXProject "CUPS" */;
@@ -2889,7 +2679,6 @@
274FF6281333333600317ECB /* cups-deviced */,
274FF63D1333358B00317ECB /* cups-exec */,
274FF64E133339C400317ECB /* cups-lpd */,
- 274FF66213333A9B00317ECB /* cups-polld */,
274FF67713333B2F00317ECB /* cupsfilter */,
72F75A511336F950004BB496 /* cupstestppd */,
724379461333FEA9009631B9 /* dnssd */,
@@ -2990,14 +2779,6 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
- 274FF65F13333A9B00317ECB /* Sources */ = {
- isa = PBXSourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 274FF67013333ACF00317ECB /* cups-polld.c in Sources */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
274FF67413333B2F00317ECB /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
@@ -3221,6 +3002,8 @@
72220FA613330B0C00FCA411 /* subscriptions.c in Sources */,
72220FA713330B0C00FCA411 /* sysman.c in Sources */,
72C16CB9137B195D007E4BF4 /* file.c in Sources */,
+ 728FB7E8153600FA005426E1 /* tls.c in Sources */,
+ 72D53A3815B4929D003F877F /* colorman.c in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -3411,16 +3194,6 @@
target = 274FF64E133339C400317ECB /* cups-lpd */;
targetProxy = 274FF65D13333A3400317ECB /* PBXContainerItemProxy */;
};
- 274FF66D13333AAD00317ECB /* PBXTargetDependency */ = {
- isa = PBXTargetDependency;
- target = 72220EAD1333047D00FCA411 /* libcups */;
- targetProxy = 274FF66C13333AAD00317ECB /* PBXContainerItemProxy */;
- };
- 274FF67213333AE400317ECB /* PBXTargetDependency */ = {
- isa = PBXTargetDependency;
- target = 274FF66213333A9B00317ECB /* cups-polld */;
- targetProxy = 274FF67113333AE400317ECB /* PBXContainerItemProxy */;
- };
274FF68213333B3C00317ECB /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 72220EAD1333047D00FCA411 /* libcups */;
@@ -3821,22 +3594,6 @@
};
name = Release;
};
- 274FF66A13333A9B00317ECB /* Debug */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- INSTALL_PATH = /usr/libexec/cups/daemon;
- PRODUCT_NAME = "$(TARGET_NAME)";
- };
- name = Debug;
- };
- 274FF66B13333A9B00317ECB /* Release */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- INSTALL_PATH = /usr/libexec/cups/daemon;
- PRODUCT_NAME = "$(TARGET_NAME)";
- };
- name = Release;
- };
274FF67F13333B2F00317ECB /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
@@ -4374,15 +4131,6 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
- 274FF66913333A9B00317ECB /* Build configuration list for PBXNativeTarget "cups-polld" */ = {
- isa = XCConfigurationList;
- buildConfigurations = (
- 274FF66A13333A9B00317ECB /* Debug */,
- 274FF66B13333A9B00317ECB /* Release */,
- );
- defaultConfigurationIsVisible = 0;
- defaultConfigurationName = Release;
- };
274FF67E13333B2F00317ECB /* Build configuration list for PBXNativeTarget "cupsfilter" */ = {
isa = XCConfigurationList;
buildConfigurations = (
diff --git a/xcode/config.h b/xcode/config.h
index 80960528..5b21b19a 100644
--- a/xcode/config.h
+++ b/xcode/config.h
@@ -1,10 +1,10 @@
/* config.h. Generated from config.h.in by configure. */
/*
- * "$Id: config.h 9793 2011-05-20 03:49:49Z mike $"
+ * "$Id: config.h 10548 2012-07-16 18:21:43Z mike $"
*
* Configuration file for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -21,8 +21,8 @@
* Version of software...
*/
-#define CUPS_SVERSION "CUPS v1.5.0"
-#define CUPS_MINIMAL "CUPS/1.5.0"
+#define CUPS_SVERSION "CUPS v1.6.0"
+#define CUPS_MINIMAL "CUPS/1.6.0"
/*
@@ -63,12 +63,8 @@
*/
#define CUPS_DEFAULT_BROWSING 1
-#define CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS "CUPS dnssd"
-#define CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS ""
-#define CUPS_DEFAULT_BROWSE_SHORT_NAMES 1
+#define CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS "dnssd"
#define CUPS_DEFAULT_DEFAULT_SHARED 1
-#define CUPS_DEFAULT_IMPLICIT_CLASSES 1
-#define CUPS_DEFAULT_USE_NETWORK_DEFAULT 0
/*
@@ -187,6 +183,7 @@
#define HAVE_STRINGS_H 1
/* #undef HAVE_BSTRING_H */
+
/*
* Do we have the long long type?
*/
@@ -201,6 +198,7 @@
# define CUPS_LLCAST (long)
#endif /* HAVE_LONG_LONG */
+
/*
* Do we have the strtoll() function?
*/
@@ -211,6 +209,7 @@
# define strtoll(nptr,endptr,base) strtol((nptr), (endptr), (base))
#endif /* !HAVE_STRTOLL */
+
/*
* Do we have the strXXX() functions?
*/
@@ -298,17 +297,25 @@
/*
+ * Do we have the SSL_set_tlsext_host_name function?
+ */
+
+/* #undef HAVE_SSL_SET_TLSEXT_HOST_NAME */
+
+
+/*
* What Security framework headers do we have?
*/
#define HAVE_AUTHORIZATION_H 1
+#define HAVE_SECBASEPRIV_H 1
#define HAVE_SECCERTIFICATE_H 1
+#define HAVE_SECIDENTITYSEARCHPRIV_H 1
#define HAVE_SECITEM_H 1
-/* #undef HAVE_SECITEMPRIV_H */
+#define HAVE_SECITEMPRIV_H 1
#define HAVE_SECPOLICY_H 1
-/* #undef HAVE_SECPOLICYPRIV_H */
-/* #undef HAVE_SECBASEPRIV_H */
-/* #undef HAVE_SECIDENTITYSEARCHPRIV_H */
+#define HAVE_SECPOLICYPRIV_H 1
+#define HAVE_SECURETRANSPORTPRIV_H 1
/*
@@ -347,36 +354,24 @@
/*
- * Do we have the SLP library?
- */
-
-/* #undef HAVE_LIBSLP */
-
-
-/*
- * Do we have an LDAP library?
+ * Do we have libpaper?
*/
-#define HAVE_LDAP 1
-#define HAVE_OPENLDAP 1
-/* #undef HAVE_MOZILLA_LDAP */
-/* #undef HAVE_LDAP_SSL_H */
-/* #undef HAVE_LDAP_SSL */
-#define HAVE_LDAP_REBIND_PROC 1
+/* #undef HAVE_LIBPAPER */
/*
- * Do we have libpaper?
+ * Do we have mDNSResponder for DNS Service Discovery (aka Bonjour)?
*/
-/* #undef HAVE_LIBPAPER */
+#define HAVE_DNSSD 1
/*
- * Do we have DNS Service Discovery (aka Bonjour)?
+ * Do we have Avahi for DNS Service Discovery (aka Bonjour)?
*/
-#define HAVE_DNSSD 1
+/* #undef HAVE_AVAHI */
/*
@@ -504,7 +499,8 @@
*/
/* #undef HAVE_PDFTOPS */
-#define CUPS_PDFTOPS ""
+/* #undef HAVE_PDFTOPS_WITH_ORIGPAGESIZES */
+#define CUPS_PDFTOPS "/usr/bin/pdftops"
/*
@@ -512,15 +508,8 @@
*/
/* #undef HAVE_GHOSTSCRIPT */
-#define CUPS_GHOSTSCRIPT ""
-
-
-/*
- * Do we have Darwin's CoreFoundation and SystemConfiguration frameworks?
- */
-
-#define HAVE_COREFOUNDATION 1
-#define HAVE_SYSTEMCONFIGURATION 1
+/* #undef HAVE_GHOSTSCRIPT_PS2WRITE */
+#define CUPS_GHOSTSCRIPT "/usr/bin/gs"
/*
@@ -528,8 +517,8 @@
*/
#define HAVE_COREFOUNDATION_H 1
-/* #undef HAVE_CFPRIV_H */
-/* #undef HAVE_CFBUNDLEPRIV_H */
+#define HAVE_CFPRIV_H 1
+#define HAVE_CFBUNDLEPRIV_H 1
/*
@@ -547,11 +536,11 @@
/*
- * Do we have MacOSX 10.4's mbr_XXX functions?
+ * Do we have OS X 10.4's mbr_XXX functions?
*/
#define HAVE_MEMBERSHIP_H 1
-/* #undef HAVE_MEMBERSHIPPRIV_H */
+#define HAVE_MEMBERSHIPPRIV_H 1
#define HAVE_MBR_UID_TO_UUID 1
@@ -564,33 +553,33 @@
/*
- * Do we have DBUS?
+ * Do we have Darwin's IOKit private headers?
*/
-/* #undef HAVE_DBUS */
-/* #undef HAVE_DBUS_MESSAGE_ITER_INIT_APPEND */
+#define HAVE_IOKIT_PWR_MGT_IOPMLIBPRIVATE_H 1
/*
- * Do we have the AppleTalk/at_proto.h header?
+ * Do we have DBUS?
*/
-/* #undef HAVE_APPLETALK_AT_PROTO_H */
+/* #undef HAVE_DBUS */
+/* #undef HAVE_DBUS_MESSAGE_ITER_INIT_APPEND */
/*
* Do we have the GSSAPI support library (for Kerberos support)?
*/
-/* #undef HAVE_GSS_ACQUIRE_CRED_EX_F */
+#define HAVE_GSS_ACQUIRE_CRED_EX_F 1
#define HAVE_GSS_C_NT_HOSTBASED_SERVICE 1
-/* #undef HAVE_GSS_GSSAPI_H */
-/* #undef HAVE_GSS_GSSAPI_SPI_H */
+#define HAVE_GSS_GSSAPI_H 1
+#define HAVE_GSS_GSSAPI_SPI_H 1
#define HAVE_GSSAPI 1
-#define HAVE_GSSAPI_H 1
-#define HAVE_GSSAPI_GSSAPI_H 1
-#define HAVE_GSSAPI_GSSAPI_GENERIC_H 1
-#define HAVE_GSSAPI_GSSAPI_KRB5_H 1
+/* #undef HAVE_GSSAPI_GENERIC_H */
+/* #undef HAVE_GSSAPI_GSSAPI_H */
+/* #undef HAVE_GSSAPI_H */
+#define HAVE_GSSAPI_KRB5_H 1
#define HAVE_KRB5_H 1
@@ -679,7 +668,7 @@
* Do we have libusb?
*/
-/* #undef HAVE_USB_H */
+/* #undef HAVE_LIBUSB */
/*
@@ -709,28 +698,46 @@
/*
- * Location of Mac OS X localization bundle, if any.
+ * Location of OS X localization bundle, if any.
*/
#define CUPS_BUNDLEDIR "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A"
/*
- * Do we have the ColorSyncRegisterDevice function?
+ * Do we have XPC?
*/
-#define HAVE_COLORSYNCREGISTERDEVICE 1
+#define HAVE_XPC 1
+#define HAVE_XPC_PRIVATE_H 1
/*
- * Do we have XPC?
+ * Do we have Mini-XML?
*/
-/* #undef HAVE_XPC */
+/* #undef HAVE_MXML_H */
+
+
+/*
+ * Do we have the C99 abs() function?
+ */
+#define HAVE_ABS 1
+#if !defined(HAVE_ABS) && !defined(abs)
+# if defined(__GNUC__) || __STDC_VERSION__ >= 199901L
+# define abs(x) _cups_abs(x)
+static inline int _cups_abs(int i) { return (i < 0 ? -i : i); }
+# elif defined(_MSC_VER)
+# define abs(x) _cups_abs(x)
+static __inline int _cups_abs(int i) { return (i < 0 ? -i : i); }
+# else
+# define abs(x) ((x) < 0 ? -(x) : (x))
+# endif /* __GNUC__ || __STDC_VERSION__ */
+#endif /* !HAVE_ABS && !abs */
#endif /* !_CUPS_CONFIG_H_ */
/*
- * End of "$Id: config.h 9793 2011-05-20 03:49:49Z mike $".
+ * End of "$Id: config.h 10548 2012-07-16 18:21:43Z mike $".
*/